@govbr-ds/webcomponents 2.0.0-next.62 → 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 (274) 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 +8 -13
  18. package/dist/cjs/br-modal.entry.cjs.js.map +1 -1
  19. package/dist/cjs/br-scrim.cjs.entry.js +40 -51
  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 +8 -13
  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 +40 -51
  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/utils/floating-ui.js +9 -12
  82. package/dist/collection/utils/floating-ui.js.map +1 -1
  83. package/dist/components/br-breadcrumb.js +3 -3
  84. package/dist/components/br-checkbox.js +4 -4
  85. package/dist/components/br-checkgroup.js +1 -1
  86. package/dist/components/br-collapse.js +4 -4
  87. package/dist/components/br-datetime-picker.js +1981 -1995
  88. package/dist/components/br-datetime-picker.js.map +1 -1
  89. package/dist/components/br-dropdown.js +1 -1
  90. package/dist/components/br-footer-category.js +3 -3
  91. package/dist/components/br-footer-item.js +1 -1
  92. package/dist/components/br-header-function.js +1 -1
  93. package/dist/components/br-header-link.js +1 -1
  94. package/dist/components/br-header-list.js +31 -39
  95. package/dist/components/br-header-list.js.map +1 -1
  96. package/dist/components/br-header.js +63 -67
  97. package/dist/components/br-header.js.map +1 -1
  98. package/dist/components/br-item.js +1 -1
  99. package/dist/components/br-list.js +3 -3
  100. package/dist/components/br-message.js +28 -32
  101. package/dist/components/br-message.js.map +1 -1
  102. package/dist/components/br-modal.js +21 -27
  103. package/dist/components/br-modal.js.map +1 -1
  104. package/dist/components/br-pagination.js +7 -7
  105. package/dist/components/br-radio.js +1 -1
  106. package/dist/components/br-scrim.js +49 -61
  107. package/dist/components/br-scrim.js.map +1 -1
  108. package/dist/components/br-select.js +3 -3
  109. package/dist/components/br-skip-link.js +38 -44
  110. package/dist/components/br-skip-link.js.map +1 -1
  111. package/dist/components/br-skiplink-item.js +55 -61
  112. package/dist/components/br-skiplink-item.js.map +1 -1
  113. package/dist/components/br-step-item.js +4 -4
  114. package/dist/components/br-step.js +4 -4
  115. package/dist/components/br-switch.js +12 -16
  116. package/dist/components/br-switch.js.map +1 -1
  117. package/dist/components/br-textarea.js +14 -18
  118. package/dist/components/br-textarea.js.map +1 -1
  119. package/dist/components/br-tooltip.js +1 -1
  120. package/dist/components/br-wizard-panel.js +13 -21
  121. package/dist/components/br-wizard-panel.js.map +1 -1
  122. package/dist/components/br-wizard.js +190 -228
  123. package/dist/components/br-wizard.js.map +1 -1
  124. package/dist/components/{p-Cc75U9ZX.js → p-B_YesJM8.js} +26 -34
  125. package/dist/components/{p-Cc75U9ZX.js.map → p-B_YesJM8.js.map} +1 -1
  126. package/dist/components/{p-xFn46pdm.js → p-Bc03PTAW.js} +27 -39
  127. package/dist/components/{p-xFn46pdm.js.map → p-Bc03PTAW.js.map} +1 -1
  128. package/dist/components/{p-DzKEfDGA.js → p-Bri6ECVa.js} +27 -33
  129. package/dist/components/{p-DzKEfDGA.js.map → p-Bri6ECVa.js.map} +1 -1
  130. package/dist/components/{p-BZ8BetvD.js → p-CJSXIVVe.js} +17 -23
  131. package/dist/components/{p-BZ8BetvD.js.map → p-CJSXIVVe.js.map} +1 -1
  132. package/dist/components/{p-D9c7NikS.js → p-CWRBs6PD.js} +24 -38
  133. package/dist/components/{p-D9c7NikS.js.map → p-CWRBs6PD.js.map} +1 -1
  134. package/dist/components/{p-D0dPo1K5.js → p-CwtLw60M.js} +12 -16
  135. package/dist/components/{p-D0dPo1K5.js.map → p-CwtLw60M.js.map} +1 -1
  136. package/dist/components/{p-z1PVVVFI.js → p-DW63EY0U.js} +27 -35
  137. package/dist/components/{p-z1PVVVFI.js.map → p-DW63EY0U.js.map} +1 -1
  138. package/dist/components/{p-7kxAU6Gr.js → p-DdjKNpU3.js} +92 -72
  139. package/dist/components/p-DdjKNpU3.js.map +1 -0
  140. package/dist/{webcomponents/p-B4au_byv.js → components/p-k0WZfTfL.js} +121 -124
  141. package/dist/components/{p-B4au_byv.js.map → p-k0WZfTfL.js.map} +1 -1
  142. package/dist/components/{p-OKkBxn1z.js → p-lIb35q2K.js} +3 -3
  143. package/dist/custom-elements.json +19459 -0
  144. package/dist/esm/br-checkbox.br-input.br-radio.entry.js.map +1 -1
  145. package/dist/esm/br-checkbox_3.entry.js +17 -28
  146. package/dist/esm/br-collapse.br-list.entry.js.map +1 -1
  147. package/dist/esm/br-collapse_2.entry.js +10 -15
  148. package/dist/esm/br-datetime-picker.entry.js +18 -31
  149. package/dist/esm/br-datetime-picker.entry.js.map +1 -1
  150. package/dist/esm/br-dropdown.br-select.entry.js.map +1 -1
  151. package/dist/esm/br-dropdown_2.entry.js +73 -56
  152. package/dist/esm/br-header-list.entry.js +6 -13
  153. package/dist/esm/br-header-list.entry.js.map +1 -1
  154. package/dist/esm/br-header.entry.js +2 -5
  155. package/dist/esm/br-header.entry.js.map +1 -1
  156. package/dist/esm/br-item.entry.js +3 -6
  157. package/dist/esm/br-item.entry.js.map +1 -1
  158. package/dist/esm/br-message.entry.js +13 -16
  159. package/dist/esm/br-message.entry.js.map +1 -1
  160. package/dist/esm/br-modal.entry.js +8 -13
  161. package/dist/esm/br-modal.entry.js.map +1 -1
  162. package/dist/esm/br-scrim.entry.js +40 -51
  163. package/dist/esm/br-scrim.entry.js.map +1 -1
  164. package/dist/esm/br-skip-link.entry.js +24 -29
  165. package/dist/esm/br-skip-link.entry.js.map +1 -1
  166. package/dist/esm/br-skiplink-item.entry.js +32 -37
  167. package/dist/esm/br-skiplink-item.entry.js.map +1 -1
  168. package/dist/esm/br-step.br-step-item.entry.js.map +1 -1
  169. package/dist/esm/br-step_2.entry.js +33 -56
  170. package/dist/esm/br-switch.entry.js +3 -6
  171. package/dist/esm/br-switch.entry.js.map +1 -1
  172. package/dist/esm/br-textarea.entry.js +5 -8
  173. package/dist/esm/br-textarea.entry.js.map +1 -1
  174. package/dist/esm/br-tooltip.entry.js +1 -2
  175. package/dist/esm/br-tooltip.entry.js.map +1 -1
  176. package/dist/esm/br-wizard-panel.entry.js +6 -13
  177. package/dist/esm/br-wizard-panel.entry.js.map +1 -1
  178. package/dist/esm/br-wizard.entry.js +147 -182
  179. package/dist/esm/br-wizard.entry.js.map +1 -1
  180. package/dist/esm/{floating-ui-DBIzWbO2.js → floating-ui-k0WZfTfL.js} +11 -15
  181. package/dist/{cjs/floating-ui-D_WzFT9x.js.map → esm/floating-ui-k0WZfTfL.js.map} +1 -1
  182. package/dist/esm/loader.js +1 -1
  183. package/dist/esm/webcomponents.js +1 -1
  184. package/dist/hydrate/index.js +450 -591
  185. package/dist/hydrate/index.mjs +450 -591
  186. package/dist/types/components/select/select.d.ts +5 -0
  187. package/dist/types/components.d.ts +10 -0
  188. package/dist/webcomponents/br-checkbox.br-input.br-radio.entry.esm.js.map +1 -1
  189. package/dist/webcomponents/br-collapse.br-list.entry.esm.js.map +1 -1
  190. package/dist/webcomponents/br-datetime-picker.entry.esm.js.map +1 -1
  191. package/dist/webcomponents/br-dropdown.br-select.entry.esm.js.map +1 -1
  192. package/dist/webcomponents/br-header-list.entry.esm.js.map +1 -1
  193. package/dist/webcomponents/br-header.entry.esm.js.map +1 -1
  194. package/dist/webcomponents/br-item.entry.esm.js.map +1 -1
  195. package/dist/webcomponents/br-message.entry.esm.js.map +1 -1
  196. package/dist/webcomponents/br-modal.entry.esm.js.map +1 -1
  197. package/dist/webcomponents/br-scrim.entry.esm.js.map +1 -1
  198. package/dist/webcomponents/br-skip-link.entry.esm.js.map +1 -1
  199. package/dist/webcomponents/br-skiplink-item.entry.esm.js.map +1 -1
  200. package/dist/webcomponents/br-step.br-step-item.entry.esm.js.map +1 -1
  201. package/dist/webcomponents/br-switch.entry.esm.js.map +1 -1
  202. package/dist/webcomponents/br-textarea.entry.esm.js.map +1 -1
  203. package/dist/webcomponents/br-tooltip.entry.esm.js.map +1 -1
  204. package/dist/webcomponents/br-wizard-panel.entry.esm.js.map +1 -1
  205. package/dist/webcomponents/br-wizard.entry.esm.js.map +1 -1
  206. package/dist/webcomponents/{p-2fe329d6.entry.js → p-10e25a32.entry.js} +28 -34
  207. package/dist/webcomponents/p-10e25a32.entry.js.map +1 -0
  208. package/dist/webcomponents/{p-097912c2.entry.js → p-1991135d.entry.js} +30 -36
  209. package/dist/webcomponents/p-1991135d.entry.js.map +1 -0
  210. package/dist/webcomponents/{p-61e5421b.entry.js → p-27eb10f9.entry.js} +57 -61
  211. package/dist/webcomponents/p-27eb10f9.entry.js.map +1 -0
  212. package/dist/webcomponents/{p-5070161f.entry.js → p-30af66b3.entry.js} +45 -51
  213. package/dist/webcomponents/p-30af66b3.entry.js.map +1 -0
  214. package/dist/webcomponents/{p-9464b692.entry.js → p-336071a5.entry.js} +2 -4
  215. package/dist/webcomponents/p-336071a5.entry.js.map +1 -0
  216. package/dist/webcomponents/{p-8a034433.entry.js → p-462c5647.entry.js} +20 -24
  217. package/dist/webcomponents/p-462c5647.entry.js.map +1 -0
  218. package/dist/webcomponents/{p-d674cee3.entry.js → p-46dfc3ee.entry.js} +12 -16
  219. package/dist/webcomponents/p-46dfc3ee.entry.js.map +1 -0
  220. package/dist/webcomponents/{p-821b896c.entry.js → p-56aabe89.entry.js} +36 -44
  221. package/dist/webcomponents/p-56aabe89.entry.js.map +1 -0
  222. package/dist/webcomponents/{p-a615baaa.entry.js → p-5710a3e9.entry.js} +41 -65
  223. package/dist/webcomponents/p-5710a3e9.entry.js.map +1 -0
  224. package/dist/webcomponents/{p-1799a082.entry.js → p-6a9d2a0b.entry.js} +1996 -2010
  225. package/dist/webcomponents/p-6a9d2a0b.entry.js.map +1 -0
  226. package/dist/webcomponents/{p-8ad1f003.entry.js → p-83001853.entry.js} +175 -213
  227. package/dist/webcomponents/p-83001853.entry.js.map +1 -0
  228. package/dist/webcomponents/{p-463b06a4.entry.js → p-90401ecd.entry.js} +32 -38
  229. package/dist/webcomponents/p-90401ecd.entry.js.map +1 -0
  230. package/dist/webcomponents/{p-216dc111.entry.js → p-a2eec4fb.entry.js} +49 -61
  231. package/dist/webcomponents/p-a2eec4fb.entry.js.map +1 -0
  232. package/dist/webcomponents/{p-d6475852.entry.js → p-c1b0a116.entry.js} +11 -19
  233. package/dist/webcomponents/p-c1b0a116.entry.js.map +1 -0
  234. package/dist/webcomponents/{p-c90a089a.entry.js → p-ca2d95f7.entry.js} +96 -83
  235. package/dist/webcomponents/p-ca2d95f7.entry.js.map +1 -0
  236. package/dist/webcomponents/{p-7ff6698f.entry.js → p-cfa86a23.entry.js} +10 -14
  237. package/dist/webcomponents/p-cfa86a23.entry.js.map +1 -0
  238. package/dist/webcomponents/{p-abc0ecbe.entry.js → p-e5875d3d.entry.js} +10 -14
  239. package/dist/webcomponents/p-e5875d3d.entry.js.map +1 -0
  240. package/dist/webcomponents/{p-0bfb0edf.entry.js → p-f2ea0d7e.entry.js} +133 -145
  241. package/dist/webcomponents/p-f2ea0d7e.entry.js.map +1 -0
  242. package/dist/{components/p-B4au_byv.js → webcomponents/p-k0WZfTfL.js} +121 -124
  243. package/dist/webcomponents/{p-B4au_byv.js.map → p-k0WZfTfL.js.map} +1 -1
  244. package/dist/webcomponents/webcomponents.esm.js +1 -1
  245. package/dist/webcomponents.html-custom-data.json +2573 -0
  246. package/package.json +1 -1
  247. package/dist/cjs/tslib.es6-CF44W9Bn.js +0 -42
  248. package/dist/cjs/tslib.es6-CF44W9Bn.js.map +0 -1
  249. package/dist/components/p-7kxAU6Gr.js.map +0 -1
  250. package/dist/components/p-DIPMDb5E.js +0 -55
  251. package/dist/components/p-DIPMDb5E.js.map +0 -1
  252. package/dist/esm/tslib.es6-DIPMDb5E.js +0 -40
  253. package/dist/esm/tslib.es6-DIPMDb5E.js.map +0 -1
  254. package/dist/webcomponents/p-097912c2.entry.js.map +0 -1
  255. package/dist/webcomponents/p-0bfb0edf.entry.js.map +0 -1
  256. package/dist/webcomponents/p-1799a082.entry.js.map +0 -1
  257. package/dist/webcomponents/p-216dc111.entry.js.map +0 -1
  258. package/dist/webcomponents/p-2fe329d6.entry.js.map +0 -1
  259. package/dist/webcomponents/p-463b06a4.entry.js.map +0 -1
  260. package/dist/webcomponents/p-5070161f.entry.js.map +0 -1
  261. package/dist/webcomponents/p-61e5421b.entry.js.map +0 -1
  262. package/dist/webcomponents/p-7ff6698f.entry.js.map +0 -1
  263. package/dist/webcomponents/p-821b896c.entry.js.map +0 -1
  264. package/dist/webcomponents/p-8a034433.entry.js.map +0 -1
  265. package/dist/webcomponents/p-8ad1f003.entry.js.map +0 -1
  266. package/dist/webcomponents/p-9464b692.entry.js.map +0 -1
  267. package/dist/webcomponents/p-DIPMDb5E.js +0 -55
  268. package/dist/webcomponents/p-DIPMDb5E.js.map +0 -1
  269. package/dist/webcomponents/p-a615baaa.entry.js.map +0 -1
  270. package/dist/webcomponents/p-abc0ecbe.entry.js.map +0 -1
  271. package/dist/webcomponents/p-c90a089a.entry.js.map +0 -1
  272. package/dist/webcomponents/p-d6475852.entry.js.map +0 -1
  273. package/dist/webcomponents/p-d674cee3.entry.js.map +0 -1
  274. /package/dist/components/{p-OKkBxn1z.js.map → p-lIb35q2K.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"br-skiplink-item.entry.js","sources":["../../packages/webcomponents/src/components/skip-link/skip-link-item/skip-link-item.scss?tag=br-skiplink-item&encapsulation=shadow","../../packages/webcomponents/src/components/skip-link/skip-link-item/skip-link-item.tsx"],"sourcesContent":[":host {\n display: contents;\n\n br-item {\n box-shadow: var(--skiplink-shadow);\n display: inline-flex;\n min-width: var(--skiplink-min-width);\n position: absolute;\n top: -100vh;\n transition: top var(--skiplink-duration) var(--skiplink-timing-function);\n white-space: nowrap;\n width: auto;\n\n &:focus-within {\n top: 0;\n }\n }\n}\n\n:host(.compound-mode) {\n br-item {\n box-shadow: none;\n min-width: 0;\n position: relative;\n top: 0;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core'\n\nimport Helpers from '../../../utils/helpers'\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/skip-link?tab=designer).\n *\n * @slot default - Slot para o texto do link de navegação rápida.\n * @slot tag - Slot para personalizar a tag numérica do atalho de teclado, exibindo o valor de key-number por padrão.\n */\n@Component({\n tag: 'br-skiplink-item',\n styleUrl: 'skip-link-item.scss',\n shadow: true,\n})\nexport class SkipLinkItem {\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: HTMLBrSkiplinkItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * ID do elemento de destino ou seletor CSS.\n * Este é o elemento para o qual o usuário será levado ao ativar este item.\n */\n @Prop({ reflect: true }) readonly target!: string\n\n /**\n * Número da tecla para acesso rápido.\n * Permite que o usuário ative este item pressionando Alt+[keyNumber].\n * Aceita valores de 1 a 9.\n * Esta propriedade implementa uma alternativa ao accessKey nativa,\n * fornecendo um atalho de teclado consistente e acessível.\n */\n @Prop({ reflect: true }) readonly keyNumber?: number\n\n /**\n * ID personalizado.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = Helpers.generateUniqueId()\n\n /**\n * Controla a visibilidade da tag numérica.\n * Quando `true`, a tag numérica não será exibida, mesmo que `keyNumber` esteja definido.\n * O atalho de teclado continua funcionando, apenas a indicação visual é ocultada.\n */\n @Prop({ reflect: true }) readonly hideTag: boolean = false\n\n /**\n * Estado interno que armazena o índice do item (1, 2, 3...).\n * Definido automaticamente pelo componente pai.\n */\n @State() private itemIndex: number | null = null\n\n /**\n * Estado interno que armazena o total de itens.\n * Definido automaticamente pelo componente pai.\n */\n @State() private itemTotal: number | null = null\n\n /**\n * MutationObserver para monitorar mudanças nos atributos de contagem.\n * Observa quando o componente pai define data-item-index e data-item-total.\n */\n private mutationObserver: MutationObserver | null = null\n\n /**\n * Evento emitido quando o item é clicado/ativado.\n * O evento contém informações sobre o item e o target.\n */\n @Event() brSkiplinkItemClick: EventEmitter<{ itemId: string; target: string }>\n\n /**\n * Evento emitido quando o item recebe foco.\n */\n @Event() brSkiplinkItemFocus: EventEmitter<{ itemId: string }>\n\n /**\n * Move o foco para este item.\n */\n @Method()\n async itemFocus(): Promise<void> {\n const brItemElement = this.el.shadowRoot?.querySelector('br-item') as HTMLElement | null\n\n if (brItemElement !== null) {\n await new Promise((resolve) => requestAnimationFrame(resolve))\n\n const brItemShadowRoot = brItemElement.shadowRoot\n if (brItemShadowRoot !== null) {\n const focusableElement = brItemShadowRoot.querySelector('a, button') as HTMLElement | null\n if (focusableElement !== null) {\n focusableElement.focus()\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n return\n }\n }\n\n brItemElement.focus()\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n }\n }\n\n /**\n * Navega para o target definido.\n * Move o foco para o elemento alvo e ajusta a rolagem da página se necessário.\n */\n @Method()\n async navigateToTarget(): Promise<void> {\n try {\n const targetElement = document.querySelector(this.target) as HTMLElement | null\n\n if (targetElement !== null) {\n targetElement.setAttribute('tabindex', '-1')\n targetElement.focus()\n\n targetElement.scrollIntoView({ behavior: 'smooth', block: 'start' })\n\n this.brSkiplinkItemClick.emit({\n itemId: this.customId,\n target: this.target,\n })\n } else {\n console.warn(`Skip Link: Target element \"${this.target}\" not found`)\n }\n } catch (error) {\n console.error('Skip Link: Error navigating to target', error)\n }\n }\n\n /**\n * Listener para cliques no item.\n */\n @Listen('click')\n handleClick(_event: MouseEvent) {\n this.navigateToTarget()\n }\n\n /**\n * Listener para teclas Enter, Space e atalho Alt+[keyNumber].\n */\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n const skipLink = this.el.closest('br-skip-link') as HTMLBrSkipLinkElement\n if (skipLink !== null && typeof skipLink.hide === 'function') {\n event.preventDefault()\n skipLink.hide()\n }\n return\n }\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n this.navigateToTarget()\n return\n }\n\n // atalho Alt+[keyNumber]\n if (event.altKey && this.keyNumber && event.key === this.keyNumber.toString()) {\n event.preventDefault()\n this.navigateToTarget()\n return\n }\n }\n\n /**\n * Listener para foco no item.\n */\n @Listen('focus')\n handleFocus() {\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n }\n\n componentWillLoad() {\n this.updateItemCount()\n }\n\n componentDidLoad() {\n this.mutationObserver = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (\n mutation.type === 'attributes' &&\n (mutation.attributeName === 'data-item-index' || mutation.attributeName === 'data-item-total')\n ) {\n this.updateItemCount()\n }\n })\n })\n\n this.mutationObserver.observe(this.el, {\n attributes: true,\n attributeFilter: ['data-item-index', 'data-item-total'],\n })\n }\n\n disconnectedCallback() {\n if (this.mutationObserver !== null && this.mutationObserver !== undefined) {\n this.mutationObserver.disconnect()\n this.mutationObserver = null\n }\n }\n\n /**\n * Atualiza a contagem de itens lendo os atributos definidos pelo componente pai.\n */\n private updateItemCount() {\n const indexAttr = this.el.getAttribute('data-item-index')\n const totalAttr = this.el.getAttribute('data-item-total')\n\n if (indexAttr !== null && totalAttr !== null) {\n this.itemIndex = parseInt(indexAttr, 10)\n this.itemTotal = parseInt(totalAttr, 10)\n } else {\n this.itemIndex = null\n this.itemTotal = null\n }\n }\n\n /**\n * Retorna a string de contagem no formato (X/Y) se disponível.\n */\n private getItemCountText(): string | null {\n if (this.itemIndex !== null && this.itemTotal !== null) {\n return ` (${this.itemIndex}/${this.itemTotal})`\n }\n return null\n }\n\n render() {\n const itemCountText = this.getItemCountText()\n\n return (\n <Host>\n <br-item\n href={this.target}\n id={this.customId}\n density=\"large\"\n aria-keyshortcuts={this.keyNumber !== undefined ? `Alt+${this.keyNumber}` : undefined}\n >\n <slot></slot>\n {itemCountText && <span aria-hidden=\"true\">{itemCountText}</span>}\n {this.keyNumber && !this.hideTag && (\n <slot name=\"tag\" slot=\"end\">\n <br-tag class=\"ml-1 text\" color=\"bg-interactive\">\n {this.keyNumber}\n </br-tag>\n </slot>\n )}\n </br-item>\n </Host>\n )\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"br-skiplink-item.entry.js","sources":["../../packages/webcomponents/src/components/skip-link/skip-link-item/skip-link-item.scss?tag=br-skiplink-item&encapsulation=shadow","../../packages/webcomponents/src/components/skip-link/skip-link-item/skip-link-item.tsx"],"sourcesContent":[":host {\n display: contents;\n\n br-item {\n box-shadow: var(--skiplink-shadow);\n display: inline-flex;\n min-width: var(--skiplink-min-width);\n position: absolute;\n top: -100vh;\n transition: top var(--skiplink-duration) var(--skiplink-timing-function);\n white-space: nowrap;\n width: auto;\n\n &:focus-within {\n top: 0;\n }\n }\n}\n\n:host(.compound-mode) {\n br-item {\n box-shadow: none;\n min-width: 0;\n position: relative;\n top: 0;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core'\n\nimport Helpers from '../../../utils/helpers'\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/skip-link?tab=designer).\n *\n * @slot default - Slot para o texto do link de navegação rápida.\n * @slot tag - Slot para personalizar a tag numérica do atalho de teclado, exibindo o valor de key-number por padrão.\n */\n@Component({\n tag: 'br-skiplink-item',\n styleUrl: 'skip-link-item.scss',\n shadow: true,\n})\nexport class SkipLinkItem {\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: HTMLBrSkiplinkItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * ID do elemento de destino ou seletor CSS.\n * Este é o elemento para o qual o usuário será levado ao ativar este item.\n */\n @Prop({ reflect: true }) readonly target!: string\n\n /**\n * Número da tecla para acesso rápido.\n * Permite que o usuário ative este item pressionando Alt+[keyNumber].\n * Aceita valores de 1 a 9.\n * Esta propriedade implementa uma alternativa ao accessKey nativa,\n * fornecendo um atalho de teclado consistente e acessível.\n */\n @Prop({ reflect: true }) readonly keyNumber?: number\n\n /**\n * ID personalizado.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = Helpers.generateUniqueId()\n\n /**\n * Controla a visibilidade da tag numérica.\n * Quando `true`, a tag numérica não será exibida, mesmo que `keyNumber` esteja definido.\n * O atalho de teclado continua funcionando, apenas a indicação visual é ocultada.\n */\n @Prop({ reflect: true }) readonly hideTag: boolean = false\n\n /**\n * Estado interno que armazena o índice do item (1, 2, 3...).\n * Definido automaticamente pelo componente pai.\n */\n @State() private itemIndex: number | null = null\n\n /**\n * Estado interno que armazena o total de itens.\n * Definido automaticamente pelo componente pai.\n */\n @State() private itemTotal: number | null = null\n\n /**\n * MutationObserver para monitorar mudanças nos atributos de contagem.\n * Observa quando o componente pai define data-item-index e data-item-total.\n */\n private mutationObserver: MutationObserver | null = null\n\n /**\n * Evento emitido quando o item é clicado/ativado.\n * O evento contém informações sobre o item e o target.\n */\n @Event() brSkiplinkItemClick: EventEmitter<{ itemId: string; target: string }>\n\n /**\n * Evento emitido quando o item recebe foco.\n */\n @Event() brSkiplinkItemFocus: EventEmitter<{ itemId: string }>\n\n /**\n * Move o foco para este item.\n */\n @Method()\n async itemFocus(): Promise<void> {\n const brItemElement = this.el.shadowRoot?.querySelector('br-item') as HTMLElement | null\n\n if (brItemElement !== null) {\n await new Promise((resolve) => requestAnimationFrame(resolve))\n\n const brItemShadowRoot = brItemElement.shadowRoot\n if (brItemShadowRoot !== null) {\n const focusableElement = brItemShadowRoot.querySelector('a, button') as HTMLElement | null\n if (focusableElement !== null) {\n focusableElement.focus()\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n return\n }\n }\n\n brItemElement.focus()\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n }\n }\n\n /**\n * Navega para o target definido.\n * Move o foco para o elemento alvo e ajusta a rolagem da página se necessário.\n */\n @Method()\n async navigateToTarget(): Promise<void> {\n try {\n const targetElement = document.querySelector(this.target) as HTMLElement | null\n\n if (targetElement !== null) {\n targetElement.setAttribute('tabindex', '-1')\n targetElement.focus()\n\n targetElement.scrollIntoView({ behavior: 'smooth', block: 'start' })\n\n this.brSkiplinkItemClick.emit({\n itemId: this.customId,\n target: this.target,\n })\n } else {\n console.warn(`Skip Link: Target element \"${this.target}\" not found`)\n }\n } catch (error) {\n console.error('Skip Link: Error navigating to target', error)\n }\n }\n\n /**\n * Listener para cliques no item.\n */\n @Listen('click')\n handleClick(_event: MouseEvent) {\n this.navigateToTarget()\n }\n\n /**\n * Listener para teclas Enter, Space e atalho Alt+[keyNumber].\n */\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n const skipLink = this.el.closest('br-skip-link') as HTMLBrSkipLinkElement\n if (skipLink !== null && typeof skipLink.hide === 'function') {\n event.preventDefault()\n skipLink.hide()\n }\n return\n }\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n this.navigateToTarget()\n return\n }\n\n // atalho Alt+[keyNumber]\n if (event.altKey && this.keyNumber && event.key === this.keyNumber.toString()) {\n event.preventDefault()\n this.navigateToTarget()\n return\n }\n }\n\n /**\n * Listener para foco no item.\n */\n @Listen('focus')\n handleFocus() {\n this.brSkiplinkItemFocus.emit({ itemId: this.customId })\n }\n\n componentWillLoad() {\n this.updateItemCount()\n }\n\n componentDidLoad() {\n this.mutationObserver = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (\n mutation.type === 'attributes' &&\n (mutation.attributeName === 'data-item-index' || mutation.attributeName === 'data-item-total')\n ) {\n this.updateItemCount()\n }\n })\n })\n\n this.mutationObserver.observe(this.el, {\n attributes: true,\n attributeFilter: ['data-item-index', 'data-item-total'],\n })\n }\n\n disconnectedCallback() {\n if (this.mutationObserver !== null && this.mutationObserver !== undefined) {\n this.mutationObserver.disconnect()\n this.mutationObserver = null\n }\n }\n\n /**\n * Atualiza a contagem de itens lendo os atributos definidos pelo componente pai.\n */\n private updateItemCount() {\n const indexAttr = this.el.getAttribute('data-item-index')\n const totalAttr = this.el.getAttribute('data-item-total')\n\n if (indexAttr !== null && totalAttr !== null) {\n this.itemIndex = parseInt(indexAttr, 10)\n this.itemTotal = parseInt(totalAttr, 10)\n } else {\n this.itemIndex = null\n this.itemTotal = null\n }\n }\n\n /**\n * Retorna a string de contagem no formato (X/Y) se disponível.\n */\n private getItemCountText(): string | null {\n if (this.itemIndex !== null && this.itemTotal !== null) {\n return ` (${this.itemIndex}/${this.itemTotal})`\n }\n return null\n }\n\n render() {\n const itemCountText = this.getItemCountText()\n\n return (\n <Host>\n <br-item\n href={this.target}\n id={this.customId}\n density=\"large\"\n aria-keyshortcuts={this.keyNumber !== undefined ? `Alt+${this.keyNumber}` : undefined}\n >\n <slot></slot>\n {itemCountText && <span aria-hidden=\"true\">{itemCountText}</span>}\n {this.keyNumber && !this.hideTag && (\n <slot name=\"tag\" slot=\"end\">\n <br-tag class=\"ml-1 text\" color=\"bg-interactive\">\n {this.keyNumber}\n </br-tag>\n </slot>\n )}\n </br-item>\n </Host>\n )\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"br-step.br-step-item.entry.js","sources":["../../packages/webcomponents/src/components/step/step.scss?tag=br-step&encapsulation=shadow","../../packages/webcomponents/src/components/step/step.tsx","../../packages/webcomponents/src/components/step/step-item/step-item.scss?tag=br-step-item&encapsulation=shadow","../../packages/webcomponents/src/components/step/step-item/step-item.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/step/step\";\n\n:host {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n\n .step-container {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n overflow: auto;\n flex-grow: 1;\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus) var(--focus-offset);\n }\n }\n\n .horizontal {\n flex-direction: row;\n }\n\n .vertical {\n flex-direction: column;\n justify-content: center;\n\n &.label-right {\n align-items: start;\n padding-left: 20px;\n }\n\n &.label-left {\n align-items: start;\n padding-right: 20px;\n }\n }\n}\n\n::slotted([disabled]) {\n opacity: 1 !important;\n}\n\n::slotted(.linha) {\n width: 100px;\n height: 2px;\n display: flex;\n align-items: center;\n background-color: var(--interactive);\n}\n\n::slotted(*) {\n flex: 1;\n min-width: 0;\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\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/step?tab=designer).\n *\n * @slot default - Slot para os itens do step (br-step-item), aceitando apenas esse componente.\n *\n * @part container - Parte para o contêiner principal envolvendo todos os step-items, usada para estilizar layout geral via ::part().\n *\n */\n@Component({\n tag: 'br-step',\n styleUrl: 'step.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Step {\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: HTMLBrStepElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * propriedade responsável por definir a orientação do componente Step\n */\n @Prop({ reflect: true }) layout: 'horizontal' | 'vertical' = 'horizontal'\n /**\n *\n * define o passo que começará destacado\n */\n @Prop({ reflect: true }) initialStep: string = '0'\n /**\n *\n * Propriedade que define a posição onde o texto de destaque,label, ficará localizado no stepItem\n */\n @Prop({ reflect: true }) labelPosition?: 'top' | 'right' | 'bottom' | 'left' = 'bottom'\n /**\n *\n * Propriedade que define o tipo de conteúdo a ser exibido dentro do componente step e stepItem\n */\n @Prop({ reflect: true }) contentType: 'default' | 'br-icon' | 'no-content' | 'slotted' = 'default'\n /**\n *\n * Propriedade que define o tipo de comportamento que o componente Step deverá seguir\n */\n @Prop({ reflect: true }) mode: 'controller' | 'step' = 'step'\n\n /**\n *\n * Propriedade que define o tipo de progressão de etapas que o step vai executar\n */\n @Prop({ reflect: true }) progressionType: 'linear' | 'nonlinear' = 'nonlinear'\n\n @State() activeStep: number = 0\n @State() stepItems: Element[] = []\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.setStepItemsLabelPosition()\n this.setStepItemsContentType()\n this.setStepItemsDefaultContent()\n this.setStepItemsMode(this.mode)\n if (this.mode === 'step') {\n this.configureTimeLine()\n }\n if (this.progressionType === 'linear') {\n this.configureLinearProgression()\n }\n if (this.activeStep <= this.stepItems.length - 1) {\n this.stepItems[this.activeStep].setAttribute('active', 'true')\n } else {\n console.warn('br-step initial-step attribute has value more than number of step-items provided')\n }\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado pela primeira vez, permitindo a preparação de dados ou inicializações necessárias.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdwillLoad) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.activeStep = Number(this.initialStep)\n this.getStepItemsElements()\n this.brWillLoad.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n\n /**\n * Emite um evento quando o step ativo muda.\n * O evento carrega o índice do novo step ativo (0-based).\n */\n @Event() brStepChange: EventEmitter<{ activeStep: number }>\n\n /** Controla atualizações pendentes para evitar race conditions */\n private updateScheduled = false\n\n componentShouldUpdate(newValue: number, oldValue: number, stateName: string) {\n if (stateName === 'activeStep' && oldValue !== newValue) {\n if (!this.updateScheduled) {\n this.updateScheduled = true\n requestAnimationFrame(() => {\n this.updateScheduled = false\n this.updateStepItemsActiveState(oldValue)\n })\n }\n this.brShouldUpdate.emit()\n this.brStepChange.emit({ activeStep: this.activeStep })\n }\n }\n\n /**\n * Atualiza os atributos 'active' dos step-items de forma segura\n * Chamado via requestAnimationFrame para garantir que o DOM é atualizado após batched state changes\n */\n private updateStepItemsActiveState(previousActiveStep: number) {\n const outOfRange = previousActiveStep > this.stepItems.length - 1\n\n if (!outOfRange) {\n this.stepItems[previousActiveStep].removeAttribute('active')\n }\n\n this.stepItems[this.activeStep].setAttribute('active', 'true')\n }\n\n /**\n * listener para ouvir o evento de click no componente step\n * Através desse listener o componente define qual será o proximo passo do step que terá o estado ativo\n */\n\n @Listen('click', { capture: true })\n handleClick(event) {\n const targetElement = event.target as Element\n if (targetElement.getAttribute('slot') !== null) {\n const slotItem = this.stepItems.findIndex((element) => element.lastElementChild === targetElement)\n this.activeStep = slotItem\n return\n }\n const item = this.stepItems.findIndex((element) => element === targetElement)\n this.activeStep = item\n }\n\n private getStepItemsElements() {\n const slotItems = Array.from(this.el.children)\n const firstChildrenContentTypeValue = slotItems[0].getAttribute('content-type')\n const childrenHaveConsistentContentType = slotItems.every(\n (item) => item.getAttribute('content-type') === firstChildrenContentTypeValue\n )\n const childrenHaveConsistentTagName = slotItems.every((item) => item.tagName.toLowerCase() === 'br-step-item')\n if (childrenHaveConsistentContentType && childrenHaveConsistentTagName) {\n this.stepItems = slotItems\n return\n }\n if (!childrenHaveConsistentTagName) {\n throw new Error('br-step component must have as child elements only br-step-items components')\n }\n if (!childrenHaveConsistentContentType) {\n throw new Error('br-step must have all child elements with same content type attribute value')\n }\n }\n\n private setStepItemsLabelPosition() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements) => {\n if (this.labelPosition !== undefined) {\n elements.setLabelPosition(this.labelPosition)\n }\n })\n }\n\n private setStepItemsDefaultContent() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n const indicatorContent = index + 1\n elements.setContent(indicatorContent.toString())\n })\n }\n\n private async setStepItemsContentType() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n await Promise.all(slotItems.map((element) => element.setContentType(this.contentType)))\n slotItems.forEach((elements, index) => {\n elements.setAttribute('aria-posinset', `${index + 1}`)\n elements.setAttribute('aria-setsize', `${slotItems.length}`)\n })\n }\n\n private setStepItemsMode(mode: 'controller' | 'step') {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements) => {\n if (mode === 'controller') {\n elements.setMode(this.mode)\n elements.setContentType('no-content')\n if (this.layout !== 'horizontal') {\n this.layout = 'horizontal'\n }\n elements.handleShowTimeLine(false, this.layout)\n elements.removeAttribute('label')\n }\n })\n }\n\n private getStepItemPosition(stepItemsElements: HTMLBrStepItemElement[], index) {\n if (index === 0) {\n return 'first'\n }\n if (index > 0 && index < stepItemsElements.length - 1) {\n return 'middle'\n }\n return 'last'\n }\n\n private configureTimeLine() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n const elementPosition = this.getStepItemPosition(slotItems, index)\n elements.setStepItemPositionStatus(elementPosition)\n elements.handleShowTimeLine(true, this.layout)\n })\n }\n\n private configureLinearProgression() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n if (index > 0) {\n elements.setAttribute('disabled', 'true')\n }\n })\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que controla o componente Step, responsável por avançar para o próximo passo e atualizar o valor do estado activeStep\n */\n @Method()\n async ProceedToNextStep() {\n if (this.activeStep + 1 < this.stepItems.length) {\n this.activeStep = this.activeStep + 1\n if (this.progressionType === 'linear') {\n this.stepItems[this.activeStep].removeAttribute('disabled')\n }\n }\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que controla o componente Step, responsável por retornar ao passo anterior e atualizar o valor do estado activeStep\n */\n @Method()\n async BackToPreviousStep() {\n if (this.activeStep - 1 >= 0) {\n this.activeStep = this.activeStep - 1\n }\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que integra um componente externo ao componente Step, permitindo sinalizar validações ou destacar a etapa com estado ativo.\n */\n @Method()\n async StepValidation(validationStatus: 'success' | 'info' | 'danger' | 'warning') {\n this.stepItems[this.activeStep].setAttribute('highlight', validationStatus)\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que permite a um componente externo obter a etapa com o estado ativo do componente Step.\n */\n @Method()\n async GetActiveStep() {\n return this.activeStep\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-step': true,\n 'step-container': true,\n horizontal: this.layout === 'horizontal',\n vertical: this.layout === 'vertical',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n }\n }\n\n private AriaObjectContent = {\n step: 'Modo etapas ',\n controller: 'Modo controle ',\n default: 'passos com conteúdo numérico ',\n 'br-icon': 'passos com conteúdo que possuem icones ',\n slotted: 'passos com conteúdo customizados ',\n 'no-content': 'passos que apresentam conteúdo por meio de tooltip ',\n linear: 'progressão linear ',\n nonlinear: 'progressão não linear ',\n vertical: 'com layout vertical ',\n horizontal: 'com layout horizontal ',\n }\n\n private getAreaLabel(): string {\n let ariaLabel = ' Lista de Opções '\n if (this.mode !== 'controller') {\n ariaLabel +=\n this.AriaObjectContent[this.mode] +\n this.AriaObjectContent[this.contentType] +\n this.AriaObjectContent[this.progressionType] +\n this.AriaObjectContent[this.layout]\n } else {\n ariaLabel += this.AriaObjectContent[this.mode]\n }\n return ariaLabel\n }\n\n render() {\n return (\n <Host>\n {this.stepItems.length > 0 && (\n <div\n part=\"container\"\n role=\"listbox\"\n tabIndex={0}\n aria-orientation={this.layout}\n aria-label={this.getAreaLabel()}\n class={this.getCssClassMap()}\n >\n <slot></slot>\n </div>\n )}\n </Host>\n )\n }\n}\n",":host {\n display: flex;\n}\n\n.disabled-host {\n pointer-events: none;\n}\n\n.step-button {\n position: relative;\n z-index: 2;\n}\n\n.mode-controller {\n border: 1px solid var(--gray-20);\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n background-color: var(--gray-20);\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus) var(--focus-offset);\n }\n\n &:hover {\n background-image: linear-gradient(\n rgb(var(--interactive-rgb), var(--hover)),\n rgb(var(--interactive-rgb), var(--hover))\n );\n }\n}\n\n[data-active].mode-controller {\n border: 1px solid var(--gray-20);\n background-color: var(--active);\n}\n\n.step-item-container-horizontal {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n\n &.label-top::after {\n content: \"\";\n left: 0;\n bottom: 50%;\n }\n\n &.label-bottom::after {\n content: \"\";\n left: 0;\n bottom: 86%;\n }\n\n &.label-left::after {\n bottom: 68%;\n width: 70%;\n left: 26%;\n }\n\n &.label-right::after {\n bottom: 68%;\n width: 58%;\n left: 42%;\n }\n}\n\n.step-item-container-vertical {\n display: flex;\n flex-direction: row;\n max-width: max-content;\n\n &::after {\n content: \"\";\n position: relative;\n height: 100%;\n background-color: var(--interactive);\n display: block;\n transform: translate(50%, 20px);\n z-index: -1;\n width: 2px;\n right: 50%;\n }\n\n &.label-bottom::after {\n top: 50%;\n height: 70%;\n }\n\n &.label-top::after {\n top: 50%;\n height: 70%;\n }\n\n &.label-left::after {\n right: 16%;\n top: 12%;\n }\n\n &.label-right::after {\n top: 12%;\n right: 86%;\n }\n}\n\n.step-item-content {\n display: flex;\n position: relative;\n flex-grow: 1;\n margin: auto;\n min-height: 100px;\n min-width: 80px;\n justify-content: center;\n\n &.label-top {\n flex-direction: column-reverse;\n align-items: center;\n }\n\n &.label-bottom {\n flex-direction: column;\n align-items: center;\n }\n\n &.label-left {\n flex-direction: row-reverse;\n align-items: center;\n background-color: #fff;\n }\n\n &.label-right {\n flex-direction: row;\n align-items: center;\n background-color: #fff;\n }\n}\n\n.controller {\n display: flex;\n position: relative;\n flex-grow: 1;\n margin: 0 5px;\n min-height: unset;\n min-width: unset;\n}\n\n.step-item-container-vertical .step-item-content.label-right,\n.step-item-container-vertical .step-item-content.label-left {\n background-color: transparent;\n}\n\n.step-item-indicator-area {\n display: inline-block;\n position: relative;\n z-index: 1;\n\n .icon {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n z-index: 4;\n border-radius: 50%;\n transform: translate(25px, -5px);\n color: white;\n font-size: 16px;\n font-weight: 900;\n width: 29px;\n height: 29px;\n }\n\n .icon.no-content {\n transform: translate(0, 0);\n width: 41px;\n height: 41px;\n }\n}\n\n[data-active].step-item-indicator-area .icon.no-content {\n transform: translate(5px, 5px);\n width: 30px;\n height: 30px;\n}\n\n.success {\n background-color: var(--success);\n}\n\n.info {\n background-color: var(--info);\n}\n\n.danger {\n background-color: var(--danger);\n}\n\n.warning {\n background-color: var(--warning);\n}\n\n.step-item-label-area {\n padding: 0;\n display: flex;\n\n &.label-left {\n padding: 0 14px;\n }\n\n &.label-right {\n padding: 0 14px;\n }\n}\n\n.step-item-label-area > span {\n font-size: var(--font-size-scale-up-01);\n // Permite que o wizard customize font-weight e color via CSS Custom Properties\n font-weight: var(--step-label-font-weight, var(--font-weight-medium));\n color: var(--step-label-color, var(--interactive));\n}\n\n.vertical.step-item-label-area {\n &.label-top {\n padding-top: 14px;\n }\n\n &.label-bottom {\n padding-bottom: 14px;\n }\n}\n\n.horizontal.step-item-label-area {\n &.label-top {\n padding-bottom: 14px;\n }\n\n &.label-bottom {\n padding-top: 14px;\n }\n}\n\n.step-item-container-vertical .step-item-content.label-right.last .step-item-indicator-area::after,\n.step-item-container-vertical .step-item-content.label-left.last .step-item-indicator-area::after,\n.step-item-container-horizontal .step-item-content.label-bottom.last .step-item-indicator-area::after {\n display: none;\n}\n\n.step-item-container-vertical .step-item-content.label-top .step-item-label-area,\n.step-item-container-vertical .step-item-content.label-bottom .step-item-label-area {\n flex-direction: column;\n align-items: center;\n}\n\n.step-item-container-horizontal::after {\n content: \"\";\n position: relative;\n height: 2px;\n background-color: var(--interactive);\n display: block;\n transform: translate(50%, 20px);\n z-index: -1;\n width: 100%;\n left: 0;\n bottom: 75%;\n}\n\n.step-item-container-horizontal.last::after,\n.step-item-container-horizontal.controller::after,\n.step-item-container-vertical.last::after {\n content: \"\";\n height: 0;\n display: none;\n}\n\n.step-item-container-horizontal .step-item-content.label-left.timeline.last::after {\n content: \"\";\n position: absolute;\n width: 160px;\n height: 2px;\n background-color: var(--interactive);\n display: inline-block;\n right: calc(100% - 80px);\n bottom: 50%;\n z-index: -1;\n}\n\n.content-type-br-icon {\n color: var(--interactive);\n font-size: 16px;\n font-weight: 900;\n}\n\n[data-active] .content-type-br-icon {\n color: var(--interactive);\n color: #fff;\n}\n\n.button-controller {\n width: 15px;\n height: 15px;\n}\n\n/* Desktops grandes (até 1440px) */\n@media (width <= 1440px) {\n .step-item-container-horizontal.label-left::after {\n width: 50%;\n left: 48%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 58%;\n left: 48%;\n }\n}\n\n/* Laptops (até 1024px) */\n@media (width <= 1024px) {\n .step-item-container-horizontal.label-left::after {\n width: 34%;\n left: 58%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Tablets (até 768px) */\n@media (width <= 768px) {\n .step-item-container-horizontal.label-left::after {\n width: 22%;\n left: 76%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares grandes (até 425px) */\n@media (width <= 425px) {\n .step-item-container-horizontal.label-left::after {\n width: 20%;\n left: 80%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares médios (até 375px) */\n@media (width <= 375px) {\n .step-item-container-horizontal.label-left::after {\n width: 18%;\n left: 82%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares pequenos (até 320px) */\n@media (width <= 320px) {\n .step-item-container-horizontal.label-left::after {\n width: 16%;\n left: 85%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport { CssClassMap } from '../../../utils/interfaces'\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/step?tab=designer).\n *\n * @slot label-area - Slot para conteúdo customizado dentro do botão do item do step.\n *\n * @part item-container - Parte para o contêiner externo do item do step, usada para estilizar posicionamento e espaçamento via ::part().\n * @part item-content - Parte para o contêiner interno com indicador visual e label, usada para estilizar conteúdo via ::part().\n * @part label - Parte para o contêiner do texto da etapa, usada para estilizar tipografia e cor via ::part().\n *\n */\n@Component({\n tag: 'br-step-item',\n styleUrl: 'step-item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class StepItem {\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: HTMLBrStepItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Propriedade que define o conteúdo do texto auxiliar de realce do item de Step.\n */\n @Prop({ reflect: true }) label: string = ''\n\n /**\n * Propriedade que define o tipo de ícone de destaque exibido pelo item Step, com quatro opções disponíveis: \"success\", \"info\", \"danger\" e \"warning\".\n */\n @Prop({ reflect: true }) highlight?: 'success' | 'info' | 'danger' | 'warning'\n\n /**\n * Propriedade que define se o item Step está com estado ativo.\n */\n @Prop({ reflect: true }) active: boolean = false\n\n /**\n * Propriedade que define se o item Step está com estado desativado..\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Propriedade Define o nome do ícone do componente BRIcon que será exibido como conteúdo do step item, propriedade funciona apenas quando o state contentType assume o valor br-icon.\n */\n @Prop({ reflect: true }) brIconName?: string = ''\n /**\n * Propriedade Define o nome do ícone o texto de acessibilidade apresentando quando o tipo de conteúdo for o br-icon\n */\n\n @Prop({ reflect: true }) brIconAria: string = ''\n\n @State() showTimeLine: boolean = false\n @State() stepItemPositionStatus: 'first' | 'middle' | 'last' = 'first'\n @State() stepLayout: 'horizontal' | 'vertical' = 'horizontal'\n @State() labelPosition: 'top' | 'right' | 'bottom' | 'left' = 'bottom'\n @State() contentType: 'default' | 'br-icon' | 'no-content' | 'slotted' = 'default'\n @State() mode: 'controller' | 'step' = 'step'\n @State() content: string = ''\n @State() ariaLabelContent: string = ''\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer antes que o componente seja renderizado ou atualizado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n let accessibilityContent = ''\n let activeItem = ''\n if (this.contentType === 'slotted') {\n const slotedContent = this.el.lastElementChild\n accessibilityContent =\n this.label !== ''\n ? `passo ${this.content} ${slotedContent.textContent} ${this.label} ${this.highLightAriaLabel[this.highlight]}`\n : `passo ${this.content} ${slotedContent.textContent} ${this.highLightAriaLabel[this.highlight]}`\n this.ariaLabelContent = accessibilityContent\n return\n }\n if (this.contentType === 'br-icon') {\n accessibilityContent =\n `passo ${this.content} ` + this.brIconAria + this.label + this.highLightAriaLabel[this.highlight]\n activeItem = this.active === true ? accessibilityContent + ' selecionado' : accessibilityContent\n this.ariaLabelContent = activeItem\n return\n } else {\n accessibilityContent =\n this.label !== ''\n ? `passo ${this.content} ${this.label} ${this.highLightAriaLabel[this.highlight]}`\n : `passo ${this.content} ${this.highLightAriaLabel[this.highlight]}`\n activeItem = this.active === true ? accessibilityContent + ' selecionado' : accessibilityContent\n this.ariaLabelContent = activeItem\n }\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer antes que o componente seja renderizado ou atualizado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n const button = this.el.shadowRoot.getElementById('indicator-area').lastElementChild.shadowRoot\n if (button !== null) {\n button.lastElementChild.setAttribute('role', 'option')\n button.lastElementChild.setAttribute('aria-selected', `${this.active}`)\n button.lastElementChild.setAttribute('aria-label', this.ariaLabelContent)\n }\n }\n\n /**\n * Watch que observa o valor da propriedade active, e ao alterar seu valor este método altera o valor do campo de acessibilidade aria-selected\n */\n @Watch('active')\n watchItemIsActive(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n const button = this.el.shadowRoot.getElementById('indicator-area').lastElementChild.shadowRoot\n if (button !== null) {\n button.lastElementChild.setAttribute('aria-selected', `${this.active}`)\n }\n }\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que indica a posição do step item, ele serve para setar o state stepItemPositionStatus do componente\n */\n @Method()\n async setStepItemPositionStatus(value: 'first' | 'middle' | 'last') {\n this.stepItemPositionStatus = value\n }\n\n /**\n * Método que define a orientação do stepItem e controla a exibição da linha do tempo após o componente.\n */\n @Method()\n async handleShowTimeLine(value: boolean, layout) {\n this.showTimeLine = value\n this.stepLayout = layout\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor ao estado que define onde o label, o texto de destaque, irá ficar localizado\n */\n @Method()\n async setLabelPosition(value: 'top' | 'right' | 'bottom' | 'left') {\n this.labelPosition = value\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá definir o tipo de conteúdo apresentado dentro do componente stepItem\n */\n @Method()\n async setContentType(value: 'default' | 'br-icon' | 'no-content' | 'slotted') {\n this.contentType = value\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá definir o modo como o componente irá se comportar e exibir seu estilo.\n */\n @Method()\n async setMode(value: 'controller' | 'step') {\n this.mode = value\n }\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá ser exibido dentro do componente stepItem\n */\n @Method()\n async setContent(value: string) {\n this.content = value\n }\n\n private getStepContainerClassMap(): CssClassMap {\n return {\n 'step-item-container-horizontal': this.stepLayout === 'horizontal',\n 'step-item-container-vertical': this.stepLayout === 'vertical',\n last: this.stepItemPositionStatus == 'last',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n 'label-bottom': this.labelPosition === 'bottom' && this.label !== '',\n controller: this.mode === 'controller',\n 'disabled-div': true,\n }\n }\n\n private getStepItemContentClassMap(): CssClassMap {\n return {\n 'step-item-content': true,\n 'label-bottom': this.labelPosition === 'bottom',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n timeline: this.showTimeLine === true,\n middle: this.stepItemPositionStatus === 'middle',\n first: this.stepItemPositionStatus === 'first',\n controller: this.mode === 'controller',\n }\n }\n\n private getStepItemIndicatorAreaClassMap(): CssClassMap {\n return {\n 'step-item-indicator-area': true,\n }\n }\n\n private getStepItemLabelAreaClassMap(): CssClassMap {\n return {\n 'step-item-label-area': true,\n vertical: this.stepLayout === 'vertical',\n horizontal: this.stepLayout === 'horizontal',\n 'label-bottom': this.labelPosition === 'bottom',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n 'no-label': this.label === '',\n }\n }\n\n private getHighlightClass(): CssClassMap {\n return {\n icon: true,\n success: this.highlight === 'success',\n info: this.highlight === 'info',\n warning: this.highlight === 'warning',\n danger: this.highlight === 'danger',\n 'no-content': this.contentType === 'no-content',\n }\n }\n\n private getStepItemIndicatorClass(): CssClassMap {\n return {\n 'step-button': true,\n controller: this.mode === 'controller',\n 'disabled-host': this.disabled,\n }\n }\n\n private highLightAriaLabel = {\n success: 'passo completo',\n info: 'passo com item informativo',\n warning: 'passo com alerta',\n danger: 'passo com erro',\n undefined: '',\n }\n\n private IconsName = {\n success: 'fa-check',\n info: 'fa-info-circle',\n warning: 'fa-exclamation-triangle',\n danger: 'fa-times',\n }\n\n render() {\n return (\n <Host>\n <div id=\"item-container\" part=\"item-container\" class={this.getStepContainerClassMap()}>\n <div id=\"item-content\" part=\"item-content\" class={this.getStepItemContentClassMap()}>\n <div id=\"indicator-area\" data-active={this.active} class={this.getStepItemIndicatorAreaClassMap()}>\n {this.mode === 'step' && this.highlight && (\n <div class={this.getHighlightClass()}>\n <br-icon\n icon-name={this.IconsName[this.highlight]}\n class={`${this.highlight === 'warning' && 'warning-color'}`}\n ></br-icon>\n </div>\n )}\n\n {this.mode === 'step' && (\n <br-button\n shape=\"circle\"\n emphasis=\"secondary\"\n isActive={this.active}\n aria-label={`Passo ${this.content || 'sem número'}`}\n class={this.getStepItemIndicatorClass()}\n >\n {this.contentType === 'no-content' && ''}\n {this.contentType === 'default' && this.content}\n {this.contentType === 'br-icon' && (\n <br-icon icon-name={this.brIconName} class={'content-type-br-icon'}></br-icon>\n )}\n {this.contentType === 'slotted' && <slot name={'content-area'}></slot>}\n </br-button>\n )}\n\n {this.mode === 'controller' && (\n <button\n data-active={this.active}\n class={'mode-controller'}\n aria-label={`Controlador do passo ${this.content || 'sem número'}`}\n ></button>\n )}\n </div>\n <div id=\"label-area\" part=\"label\" class={this.getStepItemLabelAreaClassMap()}>\n <span> {this.label} </span>\n </div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"br-step.br-step-item.entry.js","sources":["../../packages/webcomponents/src/components/step/step.scss?tag=br-step&encapsulation=shadow","../../packages/webcomponents/src/components/step/step.tsx","../../packages/webcomponents/src/components/step/step-item/step-item.scss?tag=br-step-item&encapsulation=shadow","../../packages/webcomponents/src/components/step/step-item/step-item.tsx"],"sourcesContent":["@import \"../../../../../node_modules/@govbr-ds/core/src/components/step/step\";\n\n:host {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n\n .step-container {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n overflow: auto;\n flex-grow: 1;\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus) var(--focus-offset);\n }\n }\n\n .horizontal {\n flex-direction: row;\n }\n\n .vertical {\n flex-direction: column;\n justify-content: center;\n\n &.label-right {\n align-items: start;\n padding-left: 20px;\n }\n\n &.label-left {\n align-items: start;\n padding-right: 20px;\n }\n }\n}\n\n::slotted([disabled]) {\n opacity: 1 !important;\n}\n\n::slotted(.linha) {\n width: 100px;\n height: 2px;\n display: flex;\n align-items: center;\n background-color: var(--interactive);\n}\n\n::slotted(*) {\n flex: 1;\n min-width: 0;\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\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/step?tab=designer).\n *\n * @slot default - Slot para os itens do step (br-step-item), aceitando apenas esse componente.\n *\n * @part container - Parte para o contêiner principal envolvendo todos os step-items, usada para estilizar layout geral via ::part().\n *\n */\n@Component({\n tag: 'br-step',\n styleUrl: 'step.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Step {\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: HTMLBrStepElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * propriedade responsável por definir a orientação do componente Step\n */\n @Prop({ reflect: true }) layout: 'horizontal' | 'vertical' = 'horizontal'\n /**\n *\n * define o passo que começará destacado\n */\n @Prop({ reflect: true }) initialStep: string = '0'\n /**\n *\n * Propriedade que define a posição onde o texto de destaque,label, ficará localizado no stepItem\n */\n @Prop({ reflect: true }) labelPosition?: 'top' | 'right' | 'bottom' | 'left' = 'bottom'\n /**\n *\n * Propriedade que define o tipo de conteúdo a ser exibido dentro do componente step e stepItem\n */\n @Prop({ reflect: true }) contentType: 'default' | 'br-icon' | 'no-content' | 'slotted' = 'default'\n /**\n *\n * Propriedade que define o tipo de comportamento que o componente Step deverá seguir\n */\n @Prop({ reflect: true }) mode: 'controller' | 'step' = 'step'\n\n /**\n *\n * Propriedade que define o tipo de progressão de etapas que o step vai executar\n */\n @Prop({ reflect: true }) progressionType: 'linear' | 'nonlinear' = 'nonlinear'\n\n @State() activeStep: number = 0\n @State() stepItems: Element[] = []\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidLoad: EventEmitter<void>\n componentDidLoad() {\n this.setStepItemsLabelPosition()\n this.setStepItemsContentType()\n this.setStepItemsDefaultContent()\n this.setStepItemsMode(this.mode)\n if (this.mode === 'step') {\n this.configureTimeLine()\n }\n if (this.progressionType === 'linear') {\n this.configureLinearProgression()\n }\n if (this.activeStep <= this.stepItems.length - 1) {\n this.stepItems[this.activeStep].setAttribute('active', 'true')\n } else {\n console.warn('br-step initial-step attribute has value more than number of step-items provided')\n }\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado pela primeira vez, permitindo a preparação de dados ou inicializações necessárias.\n * Utilize este evento para realizar ações que devem ocorrer depois que o componente foi totalmente carregado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdwillLoad) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.activeStep = Number(this.initialStep)\n this.getStepItemsElements()\n this.brWillLoad.emit()\n }\n\n /**\n * Emite um evento para indicar se o componente deve ser atualizado ou não.\n * Este evento é chamado antes de qualquer atualização do componente para decidir se a atualização deve prosseguir.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes.\n */\n @Event() brShouldUpdate: EventEmitter<void>\n\n /**\n * Emite um evento quando o step ativo muda.\n * O evento carrega o índice do novo step ativo (0-based).\n */\n @Event() brStepChange: EventEmitter<{ activeStep: number }>\n\n /** Controla atualizações pendentes para evitar race conditions */\n private updateScheduled = false\n\n componentShouldUpdate(newValue: number, oldValue: number, stateName: string) {\n if (stateName === 'activeStep' && oldValue !== newValue) {\n if (!this.updateScheduled) {\n this.updateScheduled = true\n requestAnimationFrame(() => {\n this.updateScheduled = false\n this.updateStepItemsActiveState(oldValue)\n })\n }\n this.brShouldUpdate.emit()\n this.brStepChange.emit({ activeStep: this.activeStep })\n }\n }\n\n /**\n * Atualiza os atributos 'active' dos step-items de forma segura\n * Chamado via requestAnimationFrame para garantir que o DOM é atualizado após batched state changes\n */\n private updateStepItemsActiveState(previousActiveStep: number) {\n const outOfRange = previousActiveStep > this.stepItems.length - 1\n\n if (!outOfRange) {\n this.stepItems[previousActiveStep].removeAttribute('active')\n }\n\n this.stepItems[this.activeStep].setAttribute('active', 'true')\n }\n\n /**\n * listener para ouvir o evento de click no componente step\n * Através desse listener o componente define qual será o proximo passo do step que terá o estado ativo\n */\n\n @Listen('click', { capture: true })\n handleClick(event) {\n const targetElement = event.target as Element\n if (targetElement.getAttribute('slot') !== null) {\n const slotItem = this.stepItems.findIndex((element) => element.lastElementChild === targetElement)\n this.activeStep = slotItem\n return\n }\n const item = this.stepItems.findIndex((element) => element === targetElement)\n this.activeStep = item\n }\n\n private getStepItemsElements() {\n const slotItems = Array.from(this.el.children)\n const firstChildrenContentTypeValue = slotItems[0].getAttribute('content-type')\n const childrenHaveConsistentContentType = slotItems.every(\n (item) => item.getAttribute('content-type') === firstChildrenContentTypeValue\n )\n const childrenHaveConsistentTagName = slotItems.every((item) => item.tagName.toLowerCase() === 'br-step-item')\n if (childrenHaveConsistentContentType && childrenHaveConsistentTagName) {\n this.stepItems = slotItems\n return\n }\n if (!childrenHaveConsistentTagName) {\n throw new Error('br-step component must have as child elements only br-step-items components')\n }\n if (!childrenHaveConsistentContentType) {\n throw new Error('br-step must have all child elements with same content type attribute value')\n }\n }\n\n private setStepItemsLabelPosition() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements) => {\n if (this.labelPosition !== undefined) {\n elements.setLabelPosition(this.labelPosition)\n }\n })\n }\n\n private setStepItemsDefaultContent() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n const indicatorContent = index + 1\n elements.setContent(indicatorContent.toString())\n })\n }\n\n private async setStepItemsContentType() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n await Promise.all(slotItems.map((element) => element.setContentType(this.contentType)))\n slotItems.forEach((elements, index) => {\n elements.setAttribute('aria-posinset', `${index + 1}`)\n elements.setAttribute('aria-setsize', `${slotItems.length}`)\n })\n }\n\n private setStepItemsMode(mode: 'controller' | 'step') {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements) => {\n if (mode === 'controller') {\n elements.setMode(this.mode)\n elements.setContentType('no-content')\n if (this.layout !== 'horizontal') {\n this.layout = 'horizontal'\n }\n elements.handleShowTimeLine(false, this.layout)\n elements.removeAttribute('label')\n }\n })\n }\n\n private getStepItemPosition(stepItemsElements: HTMLBrStepItemElement[], index) {\n if (index === 0) {\n return 'first'\n }\n if (index > 0 && index < stepItemsElements.length - 1) {\n return 'middle'\n }\n return 'last'\n }\n\n private configureTimeLine() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n const elementPosition = this.getStepItemPosition(slotItems, index)\n elements.setStepItemPositionStatus(elementPosition)\n elements.handleShowTimeLine(true, this.layout)\n })\n }\n\n private configureLinearProgression() {\n const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'))\n slotItems.forEach((elements, index) => {\n if (index > 0) {\n elements.setAttribute('disabled', 'true')\n }\n })\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que controla o componente Step, responsável por avançar para o próximo passo e atualizar o valor do estado activeStep\n */\n @Method()\n async ProceedToNextStep() {\n if (this.activeStep + 1 < this.stepItems.length) {\n this.activeStep = this.activeStep + 1\n if (this.progressionType === 'linear') {\n this.stepItems[this.activeStep].removeAttribute('disabled')\n }\n }\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que controla o componente Step, responsável por retornar ao passo anterior e atualizar o valor do estado activeStep\n */\n @Method()\n async BackToPreviousStep() {\n if (this.activeStep - 1 >= 0) {\n this.activeStep = this.activeStep - 1\n }\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que integra um componente externo ao componente Step, permitindo sinalizar validações ou destacar a etapa com estado ativo.\n */\n @Method()\n async StepValidation(validationStatus: 'success' | 'info' | 'danger' | 'warning') {\n this.stepItems[this.activeStep].setAttribute('highlight', validationStatus)\n }\n\n /**\n *\n * Método disponibilizado via API do elemento que permite a um componente externo obter a etapa com o estado ativo do componente Step.\n */\n @Method()\n async GetActiveStep() {\n return this.activeStep\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-step': true,\n 'step-container': true,\n horizontal: this.layout === 'horizontal',\n vertical: this.layout === 'vertical',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n }\n }\n\n private AriaObjectContent = {\n step: 'Modo etapas ',\n controller: 'Modo controle ',\n default: 'passos com conteúdo numérico ',\n 'br-icon': 'passos com conteúdo que possuem icones ',\n slotted: 'passos com conteúdo customizados ',\n 'no-content': 'passos que apresentam conteúdo por meio de tooltip ',\n linear: 'progressão linear ',\n nonlinear: 'progressão não linear ',\n vertical: 'com layout vertical ',\n horizontal: 'com layout horizontal ',\n }\n\n private getAreaLabel(): string {\n let ariaLabel = ' Lista de Opções '\n if (this.mode !== 'controller') {\n ariaLabel +=\n this.AriaObjectContent[this.mode] +\n this.AriaObjectContent[this.contentType] +\n this.AriaObjectContent[this.progressionType] +\n this.AriaObjectContent[this.layout]\n } else {\n ariaLabel += this.AriaObjectContent[this.mode]\n }\n return ariaLabel\n }\n\n render() {\n return (\n <Host>\n {this.stepItems.length > 0 && (\n <div\n part=\"container\"\n role=\"listbox\"\n tabIndex={0}\n aria-orientation={this.layout}\n aria-label={this.getAreaLabel()}\n class={this.getCssClassMap()}\n >\n <slot></slot>\n </div>\n )}\n </Host>\n )\n }\n}\n",":host {\n display: flex;\n}\n\n.disabled-host {\n pointer-events: none;\n}\n\n.step-button {\n position: relative;\n z-index: 2;\n}\n\n.mode-controller {\n border: 1px solid var(--gray-20);\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n background-color: var(--gray-20);\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus) var(--focus-offset);\n }\n\n &:hover {\n background-image: linear-gradient(\n rgb(var(--interactive-rgb), var(--hover)),\n rgb(var(--interactive-rgb), var(--hover))\n );\n }\n}\n\n[data-active].mode-controller {\n border: 1px solid var(--gray-20);\n background-color: var(--active);\n}\n\n.step-item-container-horizontal {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n\n &.label-top::after {\n content: \"\";\n left: 0;\n bottom: 50%;\n }\n\n &.label-bottom::after {\n content: \"\";\n left: 0;\n bottom: 86%;\n }\n\n &.label-left::after {\n bottom: 68%;\n width: 70%;\n left: 26%;\n }\n\n &.label-right::after {\n bottom: 68%;\n width: 58%;\n left: 42%;\n }\n}\n\n.step-item-container-vertical {\n display: flex;\n flex-direction: row;\n max-width: max-content;\n\n &::after {\n content: \"\";\n position: relative;\n height: 100%;\n background-color: var(--interactive);\n display: block;\n transform: translate(50%, 20px);\n z-index: -1;\n width: 2px;\n right: 50%;\n }\n\n &.label-bottom::after {\n top: 50%;\n height: 70%;\n }\n\n &.label-top::after {\n top: 50%;\n height: 70%;\n }\n\n &.label-left::after {\n right: 16%;\n top: 12%;\n }\n\n &.label-right::after {\n top: 12%;\n right: 86%;\n }\n}\n\n.step-item-content {\n display: flex;\n position: relative;\n flex-grow: 1;\n margin: auto;\n min-height: 100px;\n min-width: 80px;\n justify-content: center;\n\n &.label-top {\n flex-direction: column-reverse;\n align-items: center;\n }\n\n &.label-bottom {\n flex-direction: column;\n align-items: center;\n }\n\n &.label-left {\n flex-direction: row-reverse;\n align-items: center;\n background-color: #fff;\n }\n\n &.label-right {\n flex-direction: row;\n align-items: center;\n background-color: #fff;\n }\n}\n\n.controller {\n display: flex;\n position: relative;\n flex-grow: 1;\n margin: 0 5px;\n min-height: unset;\n min-width: unset;\n}\n\n.step-item-container-vertical .step-item-content.label-right,\n.step-item-container-vertical .step-item-content.label-left {\n background-color: transparent;\n}\n\n.step-item-indicator-area {\n display: inline-block;\n position: relative;\n z-index: 1;\n\n .icon {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n z-index: 4;\n border-radius: 50%;\n transform: translate(25px, -5px);\n color: white;\n font-size: 16px;\n font-weight: 900;\n width: 29px;\n height: 29px;\n }\n\n .icon.no-content {\n transform: translate(0, 0);\n width: 41px;\n height: 41px;\n }\n}\n\n[data-active].step-item-indicator-area .icon.no-content {\n transform: translate(5px, 5px);\n width: 30px;\n height: 30px;\n}\n\n.success {\n background-color: var(--success);\n}\n\n.info {\n background-color: var(--info);\n}\n\n.danger {\n background-color: var(--danger);\n}\n\n.warning {\n background-color: var(--warning);\n}\n\n.step-item-label-area {\n padding: 0;\n display: flex;\n\n &.label-left {\n padding: 0 14px;\n }\n\n &.label-right {\n padding: 0 14px;\n }\n}\n\n.step-item-label-area > span {\n font-size: var(--font-size-scale-up-01);\n // Permite que o wizard customize font-weight e color via CSS Custom Properties\n font-weight: var(--step-label-font-weight, var(--font-weight-medium));\n color: var(--step-label-color, var(--interactive));\n}\n\n.vertical.step-item-label-area {\n &.label-top {\n padding-top: 14px;\n }\n\n &.label-bottom {\n padding-bottom: 14px;\n }\n}\n\n.horizontal.step-item-label-area {\n &.label-top {\n padding-bottom: 14px;\n }\n\n &.label-bottom {\n padding-top: 14px;\n }\n}\n\n.step-item-container-vertical .step-item-content.label-right.last .step-item-indicator-area::after,\n.step-item-container-vertical .step-item-content.label-left.last .step-item-indicator-area::after,\n.step-item-container-horizontal .step-item-content.label-bottom.last .step-item-indicator-area::after {\n display: none;\n}\n\n.step-item-container-vertical .step-item-content.label-top .step-item-label-area,\n.step-item-container-vertical .step-item-content.label-bottom .step-item-label-area {\n flex-direction: column;\n align-items: center;\n}\n\n.step-item-container-horizontal::after {\n content: \"\";\n position: relative;\n height: 2px;\n background-color: var(--interactive);\n display: block;\n transform: translate(50%, 20px);\n z-index: -1;\n width: 100%;\n left: 0;\n bottom: 75%;\n}\n\n.step-item-container-horizontal.last::after,\n.step-item-container-horizontal.controller::after,\n.step-item-container-vertical.last::after {\n content: \"\";\n height: 0;\n display: none;\n}\n\n.step-item-container-horizontal .step-item-content.label-left.timeline.last::after {\n content: \"\";\n position: absolute;\n width: 160px;\n height: 2px;\n background-color: var(--interactive);\n display: inline-block;\n right: calc(100% - 80px);\n bottom: 50%;\n z-index: -1;\n}\n\n.content-type-br-icon {\n color: var(--interactive);\n font-size: 16px;\n font-weight: 900;\n}\n\n[data-active] .content-type-br-icon {\n color: var(--interactive);\n color: #fff;\n}\n\n.button-controller {\n width: 15px;\n height: 15px;\n}\n\n/* Desktops grandes (até 1440px) */\n@media (width <= 1440px) {\n .step-item-container-horizontal.label-left::after {\n width: 50%;\n left: 48%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 58%;\n left: 48%;\n }\n}\n\n/* Laptops (até 1024px) */\n@media (width <= 1024px) {\n .step-item-container-horizontal.label-left::after {\n width: 34%;\n left: 58%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Tablets (até 768px) */\n@media (width <= 768px) {\n .step-item-container-horizontal.label-left::after {\n width: 22%;\n left: 76%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares grandes (até 425px) */\n@media (width <= 425px) {\n .step-item-container-horizontal.label-left::after {\n width: 20%;\n left: 80%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares médios (até 375px) */\n@media (width <= 375px) {\n .step-item-container-horizontal.label-left::after {\n width: 18%;\n left: 82%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n\n/* Celulares pequenos (até 320px) */\n@media (width <= 320px) {\n .step-item-container-horizontal.label-left::after {\n width: 16%;\n left: 85%;\n bottom: 68%;\n }\n\n .step-item-container-horizontal.label-right::after {\n bottom: 68%;\n width: 36%;\n left: 72%;\n }\n\n .step-item-container-vertical.label-top::after {\n top: 50%;\n height: 50%;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport { CssClassMap } from '../../../utils/interfaces'\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/step?tab=designer).\n *\n * @slot label-area - Slot para conteúdo customizado dentro do botão do item do step.\n *\n * @part item-container - Parte para o contêiner externo do item do step, usada para estilizar posicionamento e espaçamento via ::part().\n * @part item-content - Parte para o contêiner interno com indicador visual e label, usada para estilizar conteúdo via ::part().\n * @part label - Parte para o contêiner do texto da etapa, usada para estilizar tipografia e cor via ::part().\n *\n */\n@Component({\n tag: 'br-step-item',\n styleUrl: 'step-item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class StepItem {\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: HTMLBrStepItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Propriedade que define o conteúdo do texto auxiliar de realce do item de Step.\n */\n @Prop({ reflect: true }) label: string = ''\n\n /**\n * Propriedade que define o tipo de ícone de destaque exibido pelo item Step, com quatro opções disponíveis: \"success\", \"info\", \"danger\" e \"warning\".\n */\n @Prop({ reflect: true }) highlight?: 'success' | 'info' | 'danger' | 'warning'\n\n /**\n * Propriedade que define se o item Step está com estado ativo.\n */\n @Prop({ reflect: true }) active: boolean = false\n\n /**\n * Propriedade que define se o item Step está com estado desativado..\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Propriedade Define o nome do ícone do componente BRIcon que será exibido como conteúdo do step item, propriedade funciona apenas quando o state contentType assume o valor br-icon.\n */\n @Prop({ reflect: true }) brIconName?: string = ''\n /**\n * Propriedade Define o nome do ícone o texto de acessibilidade apresentando quando o tipo de conteúdo for o br-icon\n */\n\n @Prop({ reflect: true }) brIconAria: string = ''\n\n @State() showTimeLine: boolean = false\n @State() stepItemPositionStatus: 'first' | 'middle' | 'last' = 'first'\n @State() stepLayout: 'horizontal' | 'vertical' = 'horizontal'\n @State() labelPosition: 'top' | 'right' | 'bottom' | 'left' = 'bottom'\n @State() contentType: 'default' | 'br-icon' | 'no-content' | 'slotted' = 'default'\n @State() mode: 'controller' | 'step' = 'step'\n @State() content: string = ''\n @State() ariaLabelContent: string = ''\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer antes que o componente seja renderizado ou atualizado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n let accessibilityContent = ''\n let activeItem = ''\n if (this.contentType === 'slotted') {\n const slotedContent = this.el.lastElementChild\n accessibilityContent =\n this.label !== ''\n ? `passo ${this.content} ${slotedContent.textContent} ${this.label} ${this.highLightAriaLabel[this.highlight]}`\n : `passo ${this.content} ${slotedContent.textContent} ${this.highLightAriaLabel[this.highlight]}`\n this.ariaLabelContent = accessibilityContent\n return\n }\n if (this.contentType === 'br-icon') {\n accessibilityContent =\n `passo ${this.content} ` + this.brIconAria + this.label + this.highLightAriaLabel[this.highlight]\n activeItem = this.active === true ? accessibilityContent + ' selecionado' : accessibilityContent\n this.ariaLabelContent = activeItem\n return\n } else {\n accessibilityContent =\n this.label !== ''\n ? `passo ${this.content} ${this.label} ${this.highLightAriaLabel[this.highlight]}`\n : `passo ${this.content} ${this.highLightAriaLabel[this.highlight]}`\n activeItem = this.active === true ? accessibilityContent + ' selecionado' : accessibilityContent\n this.ariaLabelContent = activeItem\n }\n }\n\n /**\n * Emite um evento após o componente ter sido carregado pela primeira vez.\n * Utilize este evento para realizar ações que devem ocorrer antes que o componente seja renderizado ou atualizado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n const button = this.el.shadowRoot.getElementById('indicator-area').lastElementChild.shadowRoot\n if (button !== null) {\n button.lastElementChild.setAttribute('role', 'option')\n button.lastElementChild.setAttribute('aria-selected', `${this.active}`)\n button.lastElementChild.setAttribute('aria-label', this.ariaLabelContent)\n }\n }\n\n /**\n * Watch que observa o valor da propriedade active, e ao alterar seu valor este método altera o valor do campo de acessibilidade aria-selected\n */\n @Watch('active')\n watchItemIsActive(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n const button = this.el.shadowRoot.getElementById('indicator-area').lastElementChild.shadowRoot\n if (button !== null) {\n button.lastElementChild.setAttribute('aria-selected', `${this.active}`)\n }\n }\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que indica a posição do step item, ele serve para setar o state stepItemPositionStatus do componente\n */\n @Method()\n async setStepItemPositionStatus(value: 'first' | 'middle' | 'last') {\n this.stepItemPositionStatus = value\n }\n\n /**\n * Método que define a orientação do stepItem e controla a exibição da linha do tempo após o componente.\n */\n @Method()\n async handleShowTimeLine(value: boolean, layout) {\n this.showTimeLine = value\n this.stepLayout = layout\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor ao estado que define onde o label, o texto de destaque, irá ficar localizado\n */\n @Method()\n async setLabelPosition(value: 'top' | 'right' | 'bottom' | 'left') {\n this.labelPosition = value\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá definir o tipo de conteúdo apresentado dentro do componente stepItem\n */\n @Method()\n async setContentType(value: 'default' | 'br-icon' | 'no-content' | 'slotted') {\n this.contentType = value\n }\n\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá definir o modo como o componente irá se comportar e exibir seu estilo.\n */\n @Method()\n async setMode(value: 'controller' | 'step') {\n this.mode = value\n }\n /**\n *\n * Método disponibilizado via api do elemento que atribui o valor que irá ser exibido dentro do componente stepItem\n */\n @Method()\n async setContent(value: string) {\n this.content = value\n }\n\n private getStepContainerClassMap(): CssClassMap {\n return {\n 'step-item-container-horizontal': this.stepLayout === 'horizontal',\n 'step-item-container-vertical': this.stepLayout === 'vertical',\n last: this.stepItemPositionStatus == 'last',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n 'label-bottom': this.labelPosition === 'bottom' && this.label !== '',\n controller: this.mode === 'controller',\n 'disabled-div': true,\n }\n }\n\n private getStepItemContentClassMap(): CssClassMap {\n return {\n 'step-item-content': true,\n 'label-bottom': this.labelPosition === 'bottom',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n timeline: this.showTimeLine === true,\n middle: this.stepItemPositionStatus === 'middle',\n first: this.stepItemPositionStatus === 'first',\n controller: this.mode === 'controller',\n }\n }\n\n private getStepItemIndicatorAreaClassMap(): CssClassMap {\n return {\n 'step-item-indicator-area': true,\n }\n }\n\n private getStepItemLabelAreaClassMap(): CssClassMap {\n return {\n 'step-item-label-area': true,\n vertical: this.stepLayout === 'vertical',\n horizontal: this.stepLayout === 'horizontal',\n 'label-bottom': this.labelPosition === 'bottom',\n 'label-top': this.labelPosition === 'top',\n 'label-left': this.labelPosition === 'left',\n 'label-right': this.labelPosition === 'right',\n 'no-label': this.label === '',\n }\n }\n\n private getHighlightClass(): CssClassMap {\n return {\n icon: true,\n success: this.highlight === 'success',\n info: this.highlight === 'info',\n warning: this.highlight === 'warning',\n danger: this.highlight === 'danger',\n 'no-content': this.contentType === 'no-content',\n }\n }\n\n private getStepItemIndicatorClass(): CssClassMap {\n return {\n 'step-button': true,\n controller: this.mode === 'controller',\n 'disabled-host': this.disabled,\n }\n }\n\n private highLightAriaLabel = {\n success: 'passo completo',\n info: 'passo com item informativo',\n warning: 'passo com alerta',\n danger: 'passo com erro',\n undefined: '',\n }\n\n private IconsName = {\n success: 'fa-check',\n info: 'fa-info-circle',\n warning: 'fa-exclamation-triangle',\n danger: 'fa-times',\n }\n\n render() {\n return (\n <Host>\n <div id=\"item-container\" part=\"item-container\" class={this.getStepContainerClassMap()}>\n <div id=\"item-content\" part=\"item-content\" class={this.getStepItemContentClassMap()}>\n <div id=\"indicator-area\" data-active={this.active} class={this.getStepItemIndicatorAreaClassMap()}>\n {this.mode === 'step' && this.highlight && (\n <div class={this.getHighlightClass()}>\n <br-icon\n icon-name={this.IconsName[this.highlight]}\n class={`${this.highlight === 'warning' && 'warning-color'}`}\n ></br-icon>\n </div>\n )}\n\n {this.mode === 'step' && (\n <br-button\n shape=\"circle\"\n emphasis=\"secondary\"\n isActive={this.active}\n aria-label={`Passo ${this.content || 'sem número'}`}\n class={this.getStepItemIndicatorClass()}\n >\n {this.contentType === 'no-content' && ''}\n {this.contentType === 'default' && this.content}\n {this.contentType === 'br-icon' && (\n <br-icon icon-name={this.brIconName} class={'content-type-br-icon'}></br-icon>\n )}\n {this.contentType === 'slotted' && <slot name={'content-area'}></slot>}\n </br-button>\n )}\n\n {this.mode === 'controller' && (\n <button\n data-active={this.active}\n class={'mode-controller'}\n aria-label={`Controlador do passo ${this.content || 'sem número'}`}\n ></button>\n )}\n </div>\n <div id=\"label-area\" part=\"label\" class={this.getStepItemLabelAreaClassMap()}>\n <span> {this.label} </span>\n </div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
5
  import { r as registerInstance, c as createEvent, h, a as Host, g as getElement } from './index-ByGJPTh2.js';
6
- import { _ as __awaiter } from './tslib.es6-DIPMDb5E.js';
7
6
 
8
7
  const stepCss = "*,*::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-step{--step-empty:16px;--step-empty-border:4px;--step-line:1px;--step-size:var(--step-medium);--step-small:32px;--step-medium:40px;--step-large:48px;--step-simple-size:var(--step-simple-medium);--step-simple-medium:8px;--step-simple-large:12px;--step-alert-success-icon:\"\\f00c\";--step-alert-warning-icon:\"\\f071\";--step-alert-info-icon:\"\\f12a\";--step-alert-danger-icon:\"\\f00d\";display:-webkit-box;display:-ms-flexbox;display:flex;padding:var(--spacing-scale-base)}.br-step.vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.br-step[scroll]{overflow-x:auto;overflow-y:hidden}.br-step[scroll]::-webkit-scrollbar{height:var(--spacing-scale-base);width:var(--spacing-scale-base)}.br-step[scroll]::-webkit-scrollbar-track{background:var(--gray-10)}.br-step[scroll]::-webkit-scrollbar-thumb{background:var(--gray-30)}.br-step[scroll]:hover::-webkit-scrollbar-thumb{background:var(--gray-40)}.br-step[scroll].vertical{overflow-x:hidden;overflow-y:auto}.br-step.inverted,.br-step.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)}:host{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}:host .step-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;overflow:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}:host .step-container:focus-visible{outline:var(--focus-width) var(--focus-style) var(--focus) var(--focus-offset)}:host .horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}:host .vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}:host .vertical.label-right{-webkit-box-align:start;-ms-flex-align:start;align-items:start;padding-left:20px}:host .vertical.label-left{-webkit-box-align:start;-ms-flex-align:start;align-items:start;padding-right:20px}::slotted([disabled]){opacity:1 !important}::slotted(.linha){width:100px;height:2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--interactive)}::slotted(*){-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}";
9
8
 
@@ -160,14 +159,12 @@ const Step = class {
160
159
  elements.setContent(indicatorContent.toString());
161
160
  });
162
161
  }
163
- setStepItemsContentType() {
164
- return __awaiter(this, void 0, void 0, function* () {
165
- const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'));
166
- yield Promise.all(slotItems.map((element) => element.setContentType(this.contentType)));
167
- slotItems.forEach((elements, index) => {
168
- elements.setAttribute('aria-posinset', `${index + 1}`);
169
- elements.setAttribute('aria-setsize', `${slotItems.length}`);
170
- });
162
+ async setStepItemsContentType() {
163
+ const slotItems = Array.from(this.el.getElementsByTagName('br-step-item'));
164
+ await Promise.all(slotItems.map((element) => element.setContentType(this.contentType)));
165
+ slotItems.forEach((elements, index) => {
166
+ elements.setAttribute('aria-posinset', `${index + 1}`);
167
+ elements.setAttribute('aria-setsize', `${slotItems.length}`);
171
168
  });
172
169
  }
173
170
  setStepItemsMode(mode) {
@@ -213,44 +210,36 @@ const Step = class {
213
210
  *
214
211
  * Método disponibilizado via API do elemento que controla o componente Step, responsável por avançar para o próximo passo e atualizar o valor do estado activeStep
215
212
  */
216
- ProceedToNextStep() {
217
- return __awaiter(this, void 0, void 0, function* () {
218
- if (this.activeStep + 1 < this.stepItems.length) {
219
- this.activeStep = this.activeStep + 1;
220
- if (this.progressionType === 'linear') {
221
- this.stepItems[this.activeStep].removeAttribute('disabled');
222
- }
213
+ async ProceedToNextStep() {
214
+ if (this.activeStep + 1 < this.stepItems.length) {
215
+ this.activeStep = this.activeStep + 1;
216
+ if (this.progressionType === 'linear') {
217
+ this.stepItems[this.activeStep].removeAttribute('disabled');
223
218
  }
224
- });
219
+ }
225
220
  }
226
221
  /**
227
222
  *
228
223
  * Método disponibilizado via API do elemento que controla o componente Step, responsável por retornar ao passo anterior e atualizar o valor do estado activeStep
229
224
  */
230
- BackToPreviousStep() {
231
- return __awaiter(this, void 0, void 0, function* () {
232
- if (this.activeStep - 1 >= 0) {
233
- this.activeStep = this.activeStep - 1;
234
- }
235
- });
225
+ async BackToPreviousStep() {
226
+ if (this.activeStep - 1 >= 0) {
227
+ this.activeStep = this.activeStep - 1;
228
+ }
236
229
  }
237
230
  /**
238
231
  *
239
232
  * Método disponibilizado via API do elemento que integra um componente externo ao componente Step, permitindo sinalizar validações ou destacar a etapa com estado ativo.
240
233
  */
241
- StepValidation(validationStatus) {
242
- return __awaiter(this, void 0, void 0, function* () {
243
- this.stepItems[this.activeStep].setAttribute('highlight', validationStatus);
244
- });
234
+ async StepValidation(validationStatus) {
235
+ this.stepItems[this.activeStep].setAttribute('highlight', validationStatus);
245
236
  }
246
237
  /**
247
238
  *
248
239
  * Método disponibilizado via API do elemento que permite a um componente externo obter a etapa com o estado ativo do componente Step.
249
240
  */
250
- GetActiveStep() {
251
- return __awaiter(this, void 0, void 0, function* () {
252
- return this.activeStep;
253
- });
241
+ async GetActiveStep() {
242
+ return this.activeStep;
254
243
  }
255
244
  getCssClassMap() {
256
245
  return {
@@ -391,55 +380,43 @@ const StepItem = class {
391
380
  *
392
381
  * Método disponibilizado via api do elemento que indica a posição do step item, ele serve para setar o state stepItemPositionStatus do componente
393
382
  */
394
- setStepItemPositionStatus(value) {
395
- return __awaiter(this, void 0, void 0, function* () {
396
- this.stepItemPositionStatus = value;
397
- });
383
+ async setStepItemPositionStatus(value) {
384
+ this.stepItemPositionStatus = value;
398
385
  }
399
386
  /**
400
387
  * Método que define a orientação do stepItem e controla a exibição da linha do tempo após o componente.
401
388
  */
402
- handleShowTimeLine(value, layout) {
403
- return __awaiter(this, void 0, void 0, function* () {
404
- this.showTimeLine = value;
405
- this.stepLayout = layout;
406
- });
389
+ async handleShowTimeLine(value, layout) {
390
+ this.showTimeLine = value;
391
+ this.stepLayout = layout;
407
392
  }
408
393
  /**
409
394
  *
410
395
  * Método disponibilizado via api do elemento que atribui o valor ao estado que define onde o label, o texto de destaque, irá ficar localizado
411
396
  */
412
- setLabelPosition(value) {
413
- return __awaiter(this, void 0, void 0, function* () {
414
- this.labelPosition = value;
415
- });
397
+ async setLabelPosition(value) {
398
+ this.labelPosition = value;
416
399
  }
417
400
  /**
418
401
  *
419
402
  * Método disponibilizado via api do elemento que atribui o valor que irá definir o tipo de conteúdo apresentado dentro do componente stepItem
420
403
  */
421
- setContentType(value) {
422
- return __awaiter(this, void 0, void 0, function* () {
423
- this.contentType = value;
424
- });
404
+ async setContentType(value) {
405
+ this.contentType = value;
425
406
  }
426
407
  /**
427
408
  *
428
409
  * Método disponibilizado via api do elemento que atribui o valor que irá definir o modo como o componente irá se comportar e exibir seu estilo.
429
410
  */
430
- setMode(value) {
431
- return __awaiter(this, void 0, void 0, function* () {
432
- this.mode = value;
433
- });
411
+ async setMode(value) {
412
+ this.mode = value;
434
413
  }
435
414
  /**
436
415
  *
437
416
  * Método disponibilizado via api do elemento que atribui o valor que irá ser exibido dentro do componente stepItem
438
417
  */
439
- setContent(value) {
440
- return __awaiter(this, void 0, void 0, function* () {
441
- this.content = value;
442
- });
418
+ async setContent(value) {
419
+ this.content = value;
443
420
  }
444
421
  getStepContainerClassMap() {
445
422
  return {
@@ -3,7 +3,6 @@
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
5
  import { r as registerInstance, c as createEvent, h, a as Host, g as getElement } from './index-ByGJPTh2.js';
6
- import { _ as __awaiter } from './tslib.es6-DIPMDb5E.js';
7
6
  import { H as Helpers } from './helpers-D4N4PPot.js';
8
7
 
9
8
  const switchCss = "*,*::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-switch{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium);--switch-height-small:24px;--switch-height-medium:30px;--switch-height-large:36px;--switch-width-small:40px;--switch-width-medium:52px;--switch-width-large:64px;--switch-toggle-small:16px;--switch-toggle-medium:22px;--switch-toggle-large:28px;--switch-icon-small:var(--icon-size-xs);--switch-icon-medium:var(--icon-size-sm);--switch-icon-large:var(--icon-size-base);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;min-height:var(--switch-height)}.br-switch input{opacity:0;position:absolute}.br-switch input+label{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--color);cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:var(--font-size-scale-base);margin-bottom:0;position:relative}.br-switch input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:100em;content:\"\";height:var(--switch-height);position:absolute;width:var(--switch-width)}.br-switch input+label::after{background-color:var(--off);border-radius:50%;content:\"\";height:var(--switch-toggle-size);position:absolute;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;width:var(--switch-toggle-size)}.br-switch input:checked+label::after{background-color:var(--on)}.br-switch input+label{padding-right:calc(var(--spacing-scale-2x) + var(--switch-width))}.br-switch input+label:empty{padding-right:var(--switch-width)}.br-switch input+label::before{right:0}.br-switch input+label::after{right:calc(4px + var(--switch-toggle-size))}.br-switch input:checked+label::after{right:4px}.br-switch.right input+label{padding-left:calc(var(--spacing-scale-2x) + var(--switch-width));padding-right:0}.br-switch.right input+label::before{left:0}.br-switch.right input+label::after{left:4px}.br-switch.right input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.top{min-height:calc(var(--switch-height)*2)}.br-switch.top input+label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;padding-right:0}.br-switch.top input+label::before{bottom:0;left:0}.br-switch.top input+label::after{bottom:4px;left:4px}.br-switch.top input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.small{--switch-height:var(--switch-height-small);--switch-width:var(--switch-width-small);--switch-toggle-size:var(--switch-toggle-small);--switch-icon-size:var(--switch-icon-small)}.br-switch.medium{--switch-height:var(--switch-height-medium);--switch-width:var(--switch-width-medium);--switch-toggle-size:var(--switch-toggle-medium);--switch-icon-size:var(--switch-icon-medium)}.br-switch.large{--switch-height:var(--switch-height-large);--switch-width:var(--switch-width-large);--switch-toggle-size:var(--switch-toggle-large);--switch-icon-size:var(--switch-icon-large)}.br-switch input~.switch-data{-ms-flex-item-align:center;align-self:center;color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);margin-left:8px}.br-switch input~.switch-data::before{content:attr(data-disabled)}.br-switch input:checked~.switch-data{color:var(--color)}.br-switch input:checked~.switch-data::before{content:attr(data-enabled)}.br-switch.icon input+label::after{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--color-dark);content:\"\";display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:\"Font Awesome 5 Free\",sans-serif;font-size:var(--switch-icon-size);font-weight:var(--font-weight-black);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.br-switch.icon input:checked+label::after{content:\"\"}.br-switch 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-switch input:hover:not([disabled]):checked+label::before{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--on-rgb), var(--hover))), to(rgba(var(--on-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--on-rgb), var(--hover)), rgba(var(--on-rgb), var(--hover)))}.br-switch input:hover:not([disabled]):not(:checked)+label::before{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--off-rgb), var(--hover))), to(rgba(var(--off-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--off-rgb), var(--hover)), rgba(var(--off-rgb), var(--hover)))}.br-switch input:active:not([disabled]):checked+label::before{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--on-rgb), var(--pressed))), to(rgba(var(--on-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--on-rgb), var(--pressed)), rgba(var(--on-rgb), var(--pressed)))}.br-switch input:active:not([disabled]):not(:checked)+label::before{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--off-rgb), var(--pressed))), to(rgba(var(--off-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--off-rgb), var(--pressed)), rgba(var(--off-rgb), var(--pressed)))}.br-switch.inverted,.br-switch.inverted label,.br-switch.dark-mode,.br-switch.dark-mode label{color:var(--color-dark)}:host{display:inline-block}:host([disabled]) .br-switch,:host([disabled]) .br-switch label,:host([disabled]) .br-switch input{cursor:not-allowed}";
@@ -80,11 +79,9 @@ const Switch = class {
80
79
  /**
81
80
  * Inverte o valor da prop `checked`
82
81
  */
83
- toggleChecked() {
84
- return __awaiter(this, void 0, void 0, function* () {
85
- this.checked = !this.checked;
86
- this.checkedChange.emit(this.checked);
87
- });
82
+ async toggleChecked() {
83
+ this.checked = !this.checked;
84
+ this.checkedChange.emit(this.checked);
88
85
  }
89
86
  /**
90
87
  * Verifica se o componente tem texto visível (via slot ou label)