@govbr-ds/webcomponents 2.1.0 → 2.1.1

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 (858) hide show
  1. package/cem/custom-elements.json +63 -63
  2. package/dist/cjs/app-globals-DcqHuMBv.js +9 -0
  3. package/dist/cjs/br-avatar.cjs.entry.js +248 -0
  4. package/dist/cjs/br-breadcrumb-item.cjs.entry.js +45 -0
  5. package/dist/cjs/br-breadcrumb.cjs.entry.js +443 -0
  6. package/dist/cjs/br-button_2.cjs.entry.js +280 -0
  7. package/dist/cjs/br-card.cjs.entry.js +111 -0
  8. package/dist/cjs/br-carousel-page.cjs.entry.js +80 -0
  9. package/dist/cjs/br-carousel.cjs.entry.js +565 -0
  10. package/dist/cjs/br-checkbox-group.cjs.entry.js +118 -0
  11. package/dist/cjs/br-checkbox.cjs.entry.js +288 -0
  12. package/dist/cjs/br-checkgroup.cjs.entry.js +20 -0
  13. package/dist/cjs/br-collapse_2.cjs.entry.js +683 -0
  14. package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +83 -0
  15. package/dist/cjs/br-cookiebar-group.cjs.entry.js +309 -0
  16. package/dist/cjs/br-cookiebar-header.cjs.entry.js +39 -0
  17. package/dist/cjs/br-cookiebar-link.cjs.entry.js +54 -0
  18. package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +70 -0
  19. package/dist/cjs/br-cookiebar-note.cjs.entry.js +25 -0
  20. package/dist/cjs/br-cookiebar.cjs.entry.js +758 -0
  21. package/dist/cjs/br-crumb.cjs.entry.js +51 -0
  22. package/dist/cjs/br-date-picker_3.cjs.entry.js +2446 -0
  23. package/dist/cjs/br-datetime-picker.cjs.entry.js +1887 -0
  24. package/dist/cjs/br-divider.cjs.entry.js +225 -0
  25. package/dist/cjs/br-dropdown_2.cjs.entry.js +1856 -0
  26. package/dist/cjs/br-footer-category.cjs.entry.js +102 -0
  27. package/dist/cjs/br-footer-item.cjs.entry.js +52 -0
  28. package/dist/cjs/br-footer-legal.cjs.entry.js +41 -0
  29. package/dist/cjs/br-footer-logo.cjs.entry.js +104 -0
  30. package/dist/cjs/br-footer-social.cjs.entry.js +71 -0
  31. package/dist/cjs/br-footer.cjs.entry.js +92 -0
  32. package/dist/cjs/br-header-function.cjs.entry.js +142 -0
  33. package/dist/cjs/br-header-link.cjs.entry.js +60 -0
  34. package/dist/cjs/br-header-list.cjs.entry.js +279 -0
  35. package/dist/cjs/br-header-logo.cjs.entry.js +177 -0
  36. package/dist/cjs/br-header.cjs.entry.js +642 -0
  37. package/dist/cjs/br-icon.cjs.entry.js +485 -0
  38. package/dist/cjs/br-input.cjs.entry.js +599 -0
  39. package/dist/cjs/br-item.cjs.entry.js +356 -0
  40. package/dist/cjs/br-link.cjs.entry.js +132 -0
  41. package/dist/cjs/br-loading.cjs.entry.js +505 -0
  42. package/dist/cjs/br-magic-button.cjs.entry.js +92 -0
  43. package/dist/cjs/br-menu-group.cjs.entry.js +23 -0
  44. package/dist/cjs/br-menu-header.cjs.entry.js +47 -0
  45. package/dist/cjs/br-menu-info.cjs.entry.js +38 -0
  46. package/dist/cjs/br-menu-item.cjs.entry.js +79 -0
  47. package/dist/cjs/br-menu-link.cjs.entry.js +55 -0
  48. package/dist/cjs/br-menu-list.cjs.entry.js +149 -0
  49. package/dist/cjs/br-menu-logo.cjs.entry.js +75 -0
  50. package/dist/cjs/br-menu-social.cjs.entry.js +65 -0
  51. package/dist/cjs/br-menu.cjs.entry.js +993 -0
  52. package/dist/cjs/br-modal.cjs.entry.js +496 -0
  53. package/dist/cjs/br-notification-body.cjs.entry.js +71 -0
  54. package/dist/cjs/br-notification-header.cjs.entry.js +48 -0
  55. package/dist/cjs/br-notification-item.cjs.entry.js +110 -0
  56. package/dist/cjs/br-notification.cjs.entry.js +334 -0
  57. package/dist/cjs/br-pagination.cjs.entry.js +884 -0
  58. package/dist/cjs/br-radio-group.cjs.entry.js +428 -0
  59. package/dist/cjs/br-radio.cjs.entry.js +357 -0
  60. package/dist/cjs/br-scrim.cjs.entry.js +1336 -0
  61. package/dist/cjs/br-select-input_3.cjs.entry.js +954 -0
  62. package/dist/cjs/br-sign-in.cjs.entry.js +125 -0
  63. package/dist/cjs/br-skip-link-item.cjs.entry.js +20 -0
  64. package/dist/cjs/br-skip-link.cjs.entry.js +362 -0
  65. package/dist/cjs/br-skiplink-item.cjs.entry.js +192 -0
  66. package/dist/cjs/br-slider.cjs.entry.js +688 -0
  67. package/dist/cjs/br-step_2.cjs.entry.js +628 -0
  68. package/dist/cjs/br-switch.cjs.entry.js +245 -0
  69. package/dist/cjs/br-tab-item.cjs.entry.js +185 -0
  70. package/dist/cjs/br-tab.cjs.entry.js +397 -0
  71. package/dist/cjs/br-table-body.cjs.entry.js +37 -0
  72. package/dist/cjs/br-table-cell.cjs.entry.js +184 -0
  73. package/dist/cjs/br-table-header-cell.cjs.entry.js +173 -0
  74. package/dist/cjs/br-table-header.cjs.entry.js +37 -0
  75. package/dist/cjs/br-table-row.cjs.entry.js +81 -0
  76. package/dist/cjs/br-table.cjs.entry.js +680 -0
  77. package/dist/cjs/br-tag.cjs.entry.js +494 -0
  78. package/dist/cjs/br-textarea.cjs.entry.js +306 -0
  79. package/dist/cjs/br-tooltip.cjs.entry.js +627 -0
  80. package/dist/cjs/br-upload.cjs.entry.js +582 -0
  81. package/dist/cjs/br-wizard-panel.cjs.entry.js +54 -0
  82. package/dist/cjs/br-wizard.cjs.entry.js +708 -0
  83. package/dist/cjs/breakpoint-observer-P8veqXg7.js +144 -0
  84. package/dist/cjs/clamp-Co_hWptd.js +25 -0
  85. package/dist/cjs/cookiebar.utils-CB1gQwZ4.js +18 -0
  86. package/dist/cjs/datetime-picker-constants-B5pWeOn1.js +3827 -0
  87. package/dist/cjs/event-CmVdNHxl.js +56 -0
  88. package/dist/cjs/floating-surface-dismiss-ccdiD0KF.js +63 -0
  89. package/dist/cjs/floating-ui-MBI1osio.js +136 -0
  90. package/dist/cjs/floating-ui.dom-BUSTaaxR.js +1715 -0
  91. package/dist/cjs/focus-DuywwJPR.js +30 -0
  92. package/dist/cjs/getNextElement-R9l3JtM9.js +31 -0
  93. package/dist/cjs/iconify-icon-DfODV9bf.js +2307 -0
  94. package/dist/cjs/id-CjRFMzf6.js +20 -0
  95. package/dist/cjs/index-C92n55ch.js +678 -0
  96. package/dist/cjs/index-CRdcutym.js +3287 -0
  97. package/dist/cjs/index.cjs.js +12 -0
  98. package/dist/cjs/isNil-DO5zWc3l.js +19 -0
  99. package/dist/cjs/isValid-Fu3kaWNn.js +3694 -0
  100. package/dist/cjs/loader.cjs.js +17 -0
  101. package/dist/cjs/native-dialog--Ewqm4w0.js +49 -0
  102. package/dist/cjs/navigation-AbzwcRCU.js +25 -0
  103. package/dist/cjs/parts-D5K3ae2C.js +19 -0
  104. package/dist/cjs/props-CScmBvKd.js +24 -0
  105. package/dist/cjs/raf-batcher-yc87a4dS.js +55 -0
  106. package/dist/cjs/slot-DAllytTj.js +48 -0
  107. package/dist/cjs/swipe-BU8_XE9f.js +345 -0
  108. package/dist/cjs/table-constants-BOPSay0B.js +183 -0
  109. package/dist/cjs/validator-CTCajtT9.js +123 -0
  110. package/dist/cjs/webcomponents.cjs.js +50 -0
  111. package/dist/collection/assets/icon-search.svg +6 -0
  112. package/dist/collection/assets/logo-negative.svg +1 -0
  113. package/dist/collection/assets/logo-positive.svg +1 -0
  114. package/dist/collection/assets/wc.svg +1 -0
  115. package/dist/collection/collection-manifest.json +113 -0
  116. package/dist/collection/components/avatar/avatar.css +1 -0
  117. package/dist/collection/components/avatar/avatar.js +589 -0
  118. package/dist/collection/components/avatar/avatar.types.js +1 -0
  119. package/dist/collection/components/breadcrumb/breadcrumb-item/breadcrumb-item.js +166 -0
  120. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -0
  121. package/dist/collection/components/breadcrumb/breadcrumb.js +619 -0
  122. package/dist/collection/components/breadcrumb/breadcrumb.types.js +1 -0
  123. package/dist/collection/components/breadcrumb/crumb/crumb.js +175 -0
  124. package/dist/collection/components/button/button.css +1 -0
  125. package/dist/collection/components/button/button.js +546 -0
  126. package/dist/collection/components/button/button.types.js +1 -0
  127. package/dist/collection/components/card/card.css +1 -0
  128. package/dist/collection/components/card/card.js +225 -0
  129. package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -0
  130. package/dist/collection/components/carousel/carousel-page/carousel-page.js +195 -0
  131. package/dist/collection/components/carousel/carousel.css +1 -0
  132. package/dist/collection/components/carousel/carousel.js +1217 -0
  133. package/dist/collection/components/carousel/carousel.types.js +1 -0
  134. package/dist/collection/components/checkbox/checkbox.css +1 -0
  135. package/dist/collection/components/checkbox/checkbox.js +823 -0
  136. package/dist/collection/components/checkbox/checkbox.types.js +1 -0
  137. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -0
  138. package/dist/collection/components/checkbox-group/checkbox-group.js +268 -0
  139. package/dist/collection/components/checkgroup/checkgroup.js +166 -0
  140. package/dist/collection/components/collapse/collapse.css +1 -0
  141. package/dist/collection/components/collapse/collapse.js +642 -0
  142. package/dist/collection/components/collapse/collapse.types.js +1 -0
  143. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -0
  144. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.js +529 -0
  145. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -0
  146. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.js +628 -0
  147. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -0
  148. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.js +165 -0
  149. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -0
  150. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.js +200 -0
  151. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -0
  152. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.js +100 -0
  153. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -0
  154. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.js +172 -0
  155. package/dist/collection/components/cookiebar/cookiebar.css +1 -0
  156. package/dist/collection/components/cookiebar/cookiebar.js +1419 -0
  157. package/dist/collection/components/cookiebar/cookiebar.types.js +1 -0
  158. package/dist/collection/components/cookiebar/cookiebar.utils.js +14 -0
  159. package/dist/collection/components/datetime-picker/date-picker/date-picker-locale.js +94 -0
  160. package/dist/collection/components/datetime-picker/date-picker/date-picker-props-validation.js +57 -0
  161. package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -0
  162. package/dist/collection/components/datetime-picker/date-picker/date-picker.js +913 -0
  163. package/dist/collection/components/datetime-picker/datetime-input/datetime-input-props-validation.js +65 -0
  164. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -0
  165. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +825 -0
  166. package/dist/collection/components/datetime-picker/datetime-picker-constants.js +36 -0
  167. package/dist/collection/components/datetime-picker/datetime-picker-form-associated.js +112 -0
  168. package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +202 -0
  169. package/dist/collection/components/datetime-picker/datetime-picker.css +1 -0
  170. package/dist/collection/components/datetime-picker/datetime-picker.js +1925 -0
  171. package/dist/collection/components/datetime-picker/datetime-picker.types.js +1 -0
  172. package/dist/collection/components/datetime-picker/datetime-picker.utils.js +250 -0
  173. package/dist/collection/components/datetime-picker/time-picker/time-picker-constants.js +13 -0
  174. package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -0
  175. package/dist/collection/components/datetime-picker/time-picker/time-picker.js +456 -0
  176. package/dist/collection/components/divider/divider.css +1 -0
  177. package/dist/collection/components/divider/divider.js +537 -0
  178. package/dist/collection/components/divider/divider.types.js +1 -0
  179. package/dist/collection/components/dropdown/dropdown.css +1 -0
  180. package/dist/collection/components/dropdown/dropdown.js +939 -0
  181. package/dist/collection/components/dropdown/dropdown.types.js +1 -0
  182. package/dist/collection/components/footer/footer-category/footer-category.css +1 -0
  183. package/dist/collection/components/footer/footer-category/footer-category.js +160 -0
  184. package/dist/collection/components/footer/footer-item/footer-item.css +1 -0
  185. package/dist/collection/components/footer/footer-item/footer-item.js +154 -0
  186. package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -0
  187. package/dist/collection/components/footer/footer-legal/footer-legal.js +75 -0
  188. package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -0
  189. package/dist/collection/components/footer/footer-logo/footer-logo.js +342 -0
  190. package/dist/collection/components/footer/footer-logo/footer-logo.types.js +1 -0
  191. package/dist/collection/components/footer/footer-social/footer-social.css +1 -0
  192. package/dist/collection/components/footer/footer-social/footer-social.js +239 -0
  193. package/dist/collection/components/footer/footer.css +1 -0
  194. package/dist/collection/components/footer/footer.js +245 -0
  195. package/dist/collection/components/footer/footer.types.js +1 -0
  196. package/dist/collection/components/global.types.js +1 -0
  197. package/dist/collection/components/header/header-function/header-function.css +1 -0
  198. package/dist/collection/components/header/header-function/header-function.js +311 -0
  199. package/dist/collection/components/header/header-link/header-link.css +1 -0
  200. package/dist/collection/components/header/header-link/header-link.js +189 -0
  201. package/dist/collection/components/header/header-list/header-list.css +1 -0
  202. package/dist/collection/components/header/header-list/header-list.js +452 -0
  203. package/dist/collection/components/header/header-logo/header-logo.css +1 -0
  204. package/dist/collection/components/header/header-logo/header-logo.js +420 -0
  205. package/dist/collection/components/header/header.css +1 -0
  206. package/dist/collection/components/header/header.js +1131 -0
  207. package/dist/collection/components/header/header.types.js +1 -0
  208. package/dist/collection/components/icon/default-icons-cache.js +233 -0
  209. package/dist/collection/components/icon/icon.css +1 -0
  210. package/dist/collection/components/icon/icon.js +598 -0
  211. package/dist/collection/components/icon/icon.types.js +1 -0
  212. package/dist/collection/components/icon/icon.utils.js +33 -0
  213. package/dist/collection/components/input/input.css +1 -0
  214. package/dist/collection/components/input/input.js +1642 -0
  215. package/dist/collection/components/input/input.types.js +1 -0
  216. package/dist/collection/components/item/item.css +1 -0
  217. package/dist/collection/components/item/item.js +906 -0
  218. package/dist/collection/components/item/item.types.js +1 -0
  219. package/dist/collection/components/link/link.css +1 -0
  220. package/dist/collection/components/link/link.js +698 -0
  221. package/dist/collection/components/list/list.css +1 -0
  222. package/dist/collection/components/list/list.js +728 -0
  223. package/dist/collection/components/loading/loading.css +1 -0
  224. package/dist/collection/components/loading/loading.js +1169 -0
  225. package/dist/collection/components/loading/loading.types.js +1 -0
  226. package/dist/collection/components/magic-button/magic-button.css +1 -0
  227. package/dist/collection/components/magic-button/magic-button.js +237 -0
  228. package/dist/collection/components/menu/menu-group/menu-group.css +1 -0
  229. package/dist/collection/components/menu/menu-group/menu-group.js +77 -0
  230. package/dist/collection/components/menu/menu-header/menu-header.css +1 -0
  231. package/dist/collection/components/menu/menu-header/menu-header.js +161 -0
  232. package/dist/collection/components/menu/menu-info/menu-info.css +1 -0
  233. package/dist/collection/components/menu/menu-info/menu-info.js +94 -0
  234. package/dist/collection/components/menu/menu-item/menu-item.css +1 -0
  235. package/dist/collection/components/menu/menu-item/menu-item.js +306 -0
  236. package/dist/collection/components/menu/menu-item/menu-item.types.js +1 -0
  237. package/dist/collection/components/menu/menu-link/menu-link.css +1 -0
  238. package/dist/collection/components/menu/menu-link/menu-link.js +259 -0
  239. package/dist/collection/components/menu/menu-list/menu-list.css +1 -0
  240. package/dist/collection/components/menu/menu-list/menu-list.js +311 -0
  241. package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -0
  242. package/dist/collection/components/menu/menu-logo/menu-logo.js +230 -0
  243. package/dist/collection/components/menu/menu-social/menu-social.css +1 -0
  244. package/dist/collection/components/menu/menu-social/menu-social.js +263 -0
  245. package/dist/collection/components/menu/menu.css +1 -0
  246. package/dist/collection/components/menu/menu.js +1372 -0
  247. package/dist/collection/components/menu/menu.types.js +1 -0
  248. package/dist/collection/components/menu/menu.utils.js +279 -0
  249. package/dist/collection/components/message/message.css +1 -0
  250. package/dist/collection/components/message/message.js +508 -0
  251. package/dist/collection/components/modal/modal.css +1 -0
  252. package/dist/collection/components/modal/modal.js +842 -0
  253. package/dist/collection/components/modal/modal.types.js +1 -0
  254. package/dist/collection/components/notification/notification-body/notification-body.css +1 -0
  255. package/dist/collection/components/notification/notification-body/notification-body.js +153 -0
  256. package/dist/collection/components/notification/notification-header/notification-header.css +1 -0
  257. package/dist/collection/components/notification/notification-header/notification-header.js +181 -0
  258. package/dist/collection/components/notification/notification-item/notification-item.css +1 -0
  259. package/dist/collection/components/notification/notification-item/notification-item.js +351 -0
  260. package/dist/collection/components/notification/notification-item/notification-item.types.js +1 -0
  261. package/dist/collection/components/notification/notification.css +1 -0
  262. package/dist/collection/components/notification/notification.js +838 -0
  263. package/dist/collection/components/notification/notification.types.js +1 -0
  264. package/dist/collection/components/pagination/pagination.css +1 -0
  265. package/dist/collection/components/pagination/pagination.js +1470 -0
  266. package/dist/collection/components/pagination/pagination.types.js +1 -0
  267. package/dist/collection/components/radio/radio.css +1 -0
  268. package/dist/collection/components/radio/radio.js +847 -0
  269. package/dist/collection/components/radio/radio.types.js +1 -0
  270. package/dist/collection/components/radio-group/radio-group.css +1 -0
  271. package/dist/collection/components/radio-group/radio-group.js +862 -0
  272. package/dist/collection/components/radio-group/radio-group.types.js +1 -0
  273. package/dist/collection/components/scrim/scrim.css +1 -0
  274. package/dist/collection/components/scrim/scrim.js +1825 -0
  275. package/dist/collection/components/scrim/scrim.types.js +1 -0
  276. package/dist/collection/components/scrim/scrim.utils.js +132 -0
  277. package/dist/collection/components/select/select-input/select-input.css +1 -0
  278. package/dist/collection/components/select/select-input/select-input.js +585 -0
  279. package/dist/collection/components/select/select-list/select-list.css +1 -0
  280. package/dist/collection/components/select/select-list/select-list.js +1147 -0
  281. package/dist/collection/components/select/select-option/select-option.css +1 -0
  282. package/dist/collection/components/select/select-option/select-option.js +543 -0
  283. package/dist/collection/components/select/select.constants.js +6 -0
  284. package/dist/collection/components/select/select.css +1 -0
  285. package/dist/collection/components/select/select.js +2575 -0
  286. package/dist/collection/components/select/select.types.js +1 -0
  287. package/dist/collection/components/sign-in/sign-in.css +1 -0
  288. package/dist/collection/components/sign-in/sign-in.js +400 -0
  289. package/dist/collection/components/sign-in/sign-in.types.js +1 -0
  290. package/dist/collection/components/skip-link/skip-link-item/skip-link-item-alias.js +103 -0
  291. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -0
  292. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js +450 -0
  293. package/dist/collection/components/skip-link/skip-link.css +1 -0
  294. package/dist/collection/components/skip-link/skip-link.js +699 -0
  295. package/dist/collection/components/skip-link/skip-link.types.js +1 -0
  296. package/dist/collection/components/slider/slider.css +1 -0
  297. package/dist/collection/components/slider/slider.js +1325 -0
  298. package/dist/collection/components/slider/slider.types.js +1 -0
  299. package/dist/collection/components/step/step-item/step-item.css +1 -0
  300. package/dist/collection/components/step/step-item/step-item.js +604 -0
  301. package/dist/collection/components/step/step-item/step-item.types.js +1 -0
  302. package/dist/collection/components/step/step.css +1 -0
  303. package/dist/collection/components/step/step.js +896 -0
  304. package/dist/collection/components/step/step.types.js +1 -0
  305. package/dist/collection/components/switch/switch.css +1 -0
  306. package/dist/collection/components/switch/switch.js +715 -0
  307. package/dist/collection/components/switch/switch.types.js +1 -0
  308. package/dist/collection/components/tab/tab-item/tab-item.css +1 -0
  309. package/dist/collection/components/tab/tab-item/tab-item.js +425 -0
  310. package/dist/collection/components/tab/tab.css +1 -0
  311. package/dist/collection/components/tab/tab.js +724 -0
  312. package/dist/collection/components/tab/tab.types.js +1 -0
  313. package/dist/collection/components/table/table-body/table-body.css +1 -0
  314. package/dist/collection/components/table/table-body/table-body.js +51 -0
  315. package/dist/collection/components/table/table-cell/table-cell.css +1 -0
  316. package/dist/collection/components/table/table-cell/table-cell.js +373 -0
  317. package/dist/collection/components/table/table-constants.js +171 -0
  318. package/dist/collection/components/table/table-header/table-header.css +1 -0
  319. package/dist/collection/components/table/table-header/table-header.js +51 -0
  320. package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -0
  321. package/dist/collection/components/table/table-header-cell/table-header-cell.js +402 -0
  322. package/dist/collection/components/table/table-row/table-row.css +1 -0
  323. package/dist/collection/components/table/table-row/table-row.js +261 -0
  324. package/dist/collection/components/table/table-tokens.js +50 -0
  325. package/dist/collection/components/table/table-types.js +1 -0
  326. package/dist/collection/components/table/table-utils.js +44 -0
  327. package/dist/collection/components/table/table.css +1 -0
  328. package/dist/collection/components/table/table.js +1030 -0
  329. package/dist/collection/components/tag/tag.css +1 -0
  330. package/dist/collection/components/tag/tag.js +1153 -0
  331. package/dist/collection/components/tag/tag.types.js +1 -0
  332. package/dist/collection/components/textarea/textarea.css +1 -0
  333. package/dist/collection/components/textarea/textarea.js +985 -0
  334. package/dist/collection/components/textarea/textarea.types.js +1 -0
  335. package/dist/collection/components/tooltip/tooltip.css +1 -0
  336. package/dist/collection/components/tooltip/tooltip.js +1024 -0
  337. package/dist/collection/components/tooltip/tooltip.types.js +1 -0
  338. package/dist/collection/components/upload/upload.css +1 -0
  339. package/dist/collection/components/upload/upload.js +1315 -0
  340. package/dist/collection/components/upload/upload.types.js +1 -0
  341. package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -0
  342. package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +167 -0
  343. package/dist/collection/components/wizard/wizard.css +1 -0
  344. package/dist/collection/components/wizard/wizard.js +1228 -0
  345. package/dist/collection/index.js +14 -0
  346. package/dist/collection/pages/components/cookiebar/index.js +26 -0
  347. package/dist/collection/pages/components/link/index.js +29 -0
  348. package/dist/collection/pages/components/pagination/index.js +12 -0
  349. package/dist/collection/pages/components/slider/index.js +18 -0
  350. package/dist/collection/pages/scripts/code-editor.js +101 -0
  351. package/dist/collection/pages/scripts/component-controls.js +591 -0
  352. package/dist/collection/pages/scripts/dev-event-console.js +47 -0
  353. package/dist/collection/pages/scripts/menu.js +183 -0
  354. package/dist/collection/pages/scripts/pageLoader.js +1420 -0
  355. package/dist/collection/shared/utils/assetsPath.js +75 -0
  356. package/dist/collection/shared/utils/breakpoint-observer.js +139 -0
  357. package/dist/collection/shared/utils/clamp.js +21 -0
  358. package/dist/collection/shared/utils/css-variables.js +12 -0
  359. package/dist/collection/shared/utils/cssVariables.js +37 -0
  360. package/dist/collection/shared/utils/date.js +405 -0
  361. package/dist/collection/shared/utils/debounce.js +39 -0
  362. package/dist/collection/shared/utils/event.js +55 -0
  363. package/dist/collection/shared/utils/floating-surface-dismiss.js +59 -0
  364. package/dist/collection/shared/utils/floating-ui.js +131 -0
  365. package/dist/collection/shared/utils/focus.js +24 -0
  366. package/dist/collection/shared/utils/form.js +82 -0
  367. package/dist/collection/shared/utils/format-bytes.js +20 -0
  368. package/dist/collection/shared/utils/getNextElement.js +30 -0
  369. package/dist/collection/shared/utils/getRandom.js +27 -0
  370. package/dist/collection/shared/utils/helpers.js +31 -0
  371. package/dist/collection/shared/utils/id.js +16 -0
  372. package/dist/collection/shared/utils/index.js +60 -0
  373. package/dist/collection/shared/utils/interfaces.js +1 -0
  374. package/dist/collection/shared/utils/isClient.js +14 -0
  375. package/dist/collection/shared/utils/isDefined.js +19 -0
  376. package/dist/collection/shared/utils/isEmpty.js +30 -0
  377. package/dist/collection/shared/utils/isHTMLElement.js +16 -0
  378. package/dist/collection/shared/utils/isNil.js +15 -0
  379. package/dist/collection/shared/utils/isString.js +20 -0
  380. package/dist/collection/shared/utils/native-dialog.js +44 -0
  381. package/dist/collection/shared/utils/navigation.js +21 -0
  382. package/dist/collection/shared/utils/parts.js +15 -0
  383. package/dist/collection/shared/utils/prop-warning.js +7 -0
  384. package/dist/collection/shared/utils/props.js +37 -0
  385. package/dist/collection/shared/utils/raf-batcher.js +51 -0
  386. package/dist/collection/shared/utils/scrollLock.js +141 -0
  387. package/dist/collection/shared/utils/setRafTimeout.js +38 -0
  388. package/dist/collection/shared/utils/slot.js +113 -0
  389. package/dist/collection/shared/utils/ssr-date.js +33 -0
  390. package/dist/collection/shared/utils/stringToArray.js +29 -0
  391. package/dist/collection/shared/utils/swipe.js +342 -0
  392. package/dist/collection/shared/utils/transition.js +127 -0
  393. package/dist/collection/shared/utils/types.js +1 -0
  394. package/dist/collection/shared/utils/validator.js +51 -0
  395. package/dist/collection/value-accessors/angular-value-accessor-config.js +41 -0
  396. package/dist/collection/value-accessors/index.js +6 -0
  397. package/dist/collection/value-accessors/vue-model-config.js +43 -0
  398. package/dist/components/br-avatar.d.ts +11 -0
  399. package/dist/components/br-avatar.js +5 -0
  400. package/dist/components/br-breadcrumb-item.d.ts +11 -0
  401. package/dist/components/br-breadcrumb-item.js +5 -0
  402. package/dist/components/br-breadcrumb.d.ts +11 -0
  403. package/dist/components/br-breadcrumb.js +5 -0
  404. package/dist/components/br-button.d.ts +11 -0
  405. package/dist/components/br-button.js +5 -0
  406. package/dist/components/br-card.d.ts +11 -0
  407. package/dist/components/br-card.js +5 -0
  408. package/dist/components/br-carousel-page.d.ts +11 -0
  409. package/dist/components/br-carousel-page.js +5 -0
  410. package/dist/components/br-carousel.d.ts +11 -0
  411. package/dist/components/br-carousel.js +5 -0
  412. package/dist/components/br-checkbox-group.d.ts +11 -0
  413. package/dist/components/br-checkbox-group.js +5 -0
  414. package/dist/components/br-checkbox.d.ts +11 -0
  415. package/dist/components/br-checkbox.js +5 -0
  416. package/dist/components/br-checkgroup.d.ts +11 -0
  417. package/dist/components/br-checkgroup.js +5 -0
  418. package/dist/components/br-collapse.d.ts +11 -0
  419. package/dist/components/br-collapse.js +5 -0
  420. package/dist/components/br-cookiebar-cookie.d.ts +11 -0
  421. package/dist/components/br-cookiebar-cookie.js +5 -0
  422. package/dist/components/br-cookiebar-group.d.ts +11 -0
  423. package/dist/components/br-cookiebar-group.js +5 -0
  424. package/dist/components/br-cookiebar-header.d.ts +11 -0
  425. package/dist/components/br-cookiebar-header.js +5 -0
  426. package/dist/components/br-cookiebar-link.d.ts +11 -0
  427. package/dist/components/br-cookiebar-link.js +5 -0
  428. package/dist/components/br-cookiebar-note-group.d.ts +11 -0
  429. package/dist/components/br-cookiebar-note-group.js +5 -0
  430. package/dist/components/br-cookiebar-note.d.ts +11 -0
  431. package/dist/components/br-cookiebar-note.js +5 -0
  432. package/dist/components/br-cookiebar.d.ts +11 -0
  433. package/dist/components/br-cookiebar.js +5 -0
  434. package/dist/components/br-crumb.d.ts +11 -0
  435. package/dist/components/br-crumb.js +5 -0
  436. package/dist/components/br-date-picker.d.ts +11 -0
  437. package/dist/components/br-date-picker.js +5 -0
  438. package/dist/components/br-datetime-input.d.ts +11 -0
  439. package/dist/components/br-datetime-input.js +5 -0
  440. package/dist/components/br-datetime-picker.d.ts +11 -0
  441. package/dist/components/br-datetime-picker.js +5 -0
  442. package/dist/components/br-divider.d.ts +11 -0
  443. package/dist/components/br-divider.js +5 -0
  444. package/dist/components/br-dropdown.d.ts +11 -0
  445. package/dist/components/br-dropdown.js +5 -0
  446. package/dist/components/br-footer-category.d.ts +11 -0
  447. package/dist/components/br-footer-category.js +5 -0
  448. package/dist/components/br-footer-item.d.ts +11 -0
  449. package/dist/components/br-footer-item.js +5 -0
  450. package/dist/components/br-footer-legal.d.ts +11 -0
  451. package/dist/components/br-footer-legal.js +5 -0
  452. package/dist/components/br-footer-logo.d.ts +11 -0
  453. package/dist/components/br-footer-logo.js +5 -0
  454. package/dist/components/br-footer-social.d.ts +11 -0
  455. package/dist/components/br-footer-social.js +5 -0
  456. package/dist/components/br-footer.d.ts +11 -0
  457. package/dist/components/br-footer.js +5 -0
  458. package/dist/components/br-header-function.d.ts +11 -0
  459. package/dist/components/br-header-function.js +5 -0
  460. package/dist/components/br-header-link.d.ts +11 -0
  461. package/dist/components/br-header-link.js +5 -0
  462. package/dist/components/br-header-list.d.ts +11 -0
  463. package/dist/components/br-header-list.js +5 -0
  464. package/dist/components/br-header-logo.d.ts +11 -0
  465. package/dist/components/br-header-logo.js +5 -0
  466. package/dist/components/br-header.d.ts +11 -0
  467. package/dist/components/br-header.js +5 -0
  468. package/dist/components/br-icon.d.ts +11 -0
  469. package/dist/components/br-icon.js +5 -0
  470. package/dist/components/br-input.d.ts +11 -0
  471. package/dist/components/br-input.js +5 -0
  472. package/dist/components/br-item.d.ts +11 -0
  473. package/dist/components/br-item.js +5 -0
  474. package/dist/components/br-link.d.ts +11 -0
  475. package/dist/components/br-link.js +5 -0
  476. package/dist/components/br-list.d.ts +11 -0
  477. package/dist/components/br-list.js +5 -0
  478. package/dist/components/br-loading.d.ts +11 -0
  479. package/dist/components/br-loading.js +5 -0
  480. package/dist/components/br-magic-button.d.ts +11 -0
  481. package/dist/components/br-magic-button.js +5 -0
  482. package/dist/components/br-menu-group.d.ts +11 -0
  483. package/dist/components/br-menu-group.js +5 -0
  484. package/dist/components/br-menu-header.d.ts +11 -0
  485. package/dist/components/br-menu-header.js +5 -0
  486. package/dist/components/br-menu-info.d.ts +11 -0
  487. package/dist/components/br-menu-info.js +5 -0
  488. package/dist/components/br-menu-item.d.ts +11 -0
  489. package/dist/components/br-menu-item.js +5 -0
  490. package/dist/components/br-menu-link.d.ts +11 -0
  491. package/dist/components/br-menu-link.js +5 -0
  492. package/dist/components/br-menu-list.d.ts +11 -0
  493. package/dist/components/br-menu-list.js +5 -0
  494. package/dist/components/br-menu-logo.d.ts +11 -0
  495. package/dist/components/br-menu-logo.js +5 -0
  496. package/dist/components/br-menu-social.d.ts +11 -0
  497. package/dist/components/br-menu-social.js +5 -0
  498. package/dist/components/br-menu.d.ts +11 -0
  499. package/dist/components/br-menu.js +5 -0
  500. package/dist/components/br-message.d.ts +11 -0
  501. package/dist/components/br-message.js +5 -0
  502. package/dist/components/br-modal.d.ts +11 -0
  503. package/dist/components/br-modal.js +5 -0
  504. package/dist/components/br-notification-body.d.ts +11 -0
  505. package/dist/components/br-notification-body.js +5 -0
  506. package/dist/components/br-notification-header.d.ts +11 -0
  507. package/dist/components/br-notification-header.js +5 -0
  508. package/dist/components/br-notification-item.d.ts +11 -0
  509. package/dist/components/br-notification-item.js +5 -0
  510. package/dist/components/br-notification.d.ts +11 -0
  511. package/dist/components/br-notification.js +5 -0
  512. package/dist/components/br-pagination.d.ts +11 -0
  513. package/dist/components/br-pagination.js +5 -0
  514. package/dist/components/br-radio-group.d.ts +11 -0
  515. package/dist/components/br-radio-group.js +5 -0
  516. package/dist/components/br-radio.d.ts +11 -0
  517. package/dist/components/br-radio.js +5 -0
  518. package/dist/components/br-scrim.d.ts +11 -0
  519. package/dist/components/br-scrim.js +5 -0
  520. package/dist/components/br-select-input.d.ts +11 -0
  521. package/dist/components/br-select-input.js +5 -0
  522. package/dist/components/br-select-list.d.ts +11 -0
  523. package/dist/components/br-select-list.js +5 -0
  524. package/dist/components/br-select-option.d.ts +11 -0
  525. package/dist/components/br-select-option.js +5 -0
  526. package/dist/components/br-select.d.ts +11 -0
  527. package/dist/components/br-select.js +5 -0
  528. package/dist/components/br-sign-in.d.ts +11 -0
  529. package/dist/components/br-sign-in.js +5 -0
  530. package/dist/components/br-skip-link-item.d.ts +11 -0
  531. package/dist/components/br-skip-link-item.js +5 -0
  532. package/dist/components/br-skip-link.d.ts +11 -0
  533. package/dist/components/br-skip-link.js +5 -0
  534. package/dist/components/br-skiplink-item.d.ts +11 -0
  535. package/dist/components/br-skiplink-item.js +5 -0
  536. package/dist/components/br-slider.d.ts +11 -0
  537. package/dist/components/br-slider.js +5 -0
  538. package/dist/components/br-step-item.d.ts +11 -0
  539. package/dist/components/br-step-item.js +5 -0
  540. package/dist/components/br-step.d.ts +11 -0
  541. package/dist/components/br-step.js +5 -0
  542. package/dist/components/br-switch.d.ts +11 -0
  543. package/dist/components/br-switch.js +5 -0
  544. package/dist/components/br-tab-item.d.ts +11 -0
  545. package/dist/components/br-tab-item.js +5 -0
  546. package/dist/components/br-tab.d.ts +11 -0
  547. package/dist/components/br-tab.js +5 -0
  548. package/dist/components/br-table-body.d.ts +11 -0
  549. package/dist/components/br-table-body.js +5 -0
  550. package/dist/components/br-table-cell.d.ts +11 -0
  551. package/dist/components/br-table-cell.js +5 -0
  552. package/dist/components/br-table-header-cell.d.ts +11 -0
  553. package/dist/components/br-table-header-cell.js +5 -0
  554. package/dist/components/br-table-header.d.ts +11 -0
  555. package/dist/components/br-table-header.js +5 -0
  556. package/dist/components/br-table-row.d.ts +11 -0
  557. package/dist/components/br-table-row.js +5 -0
  558. package/dist/components/br-table.d.ts +11 -0
  559. package/dist/components/br-table.js +5 -0
  560. package/dist/components/br-tag.d.ts +11 -0
  561. package/dist/components/br-tag.js +5 -0
  562. package/dist/components/br-textarea.d.ts +11 -0
  563. package/dist/components/br-textarea.js +5 -0
  564. package/dist/components/br-time-picker.d.ts +11 -0
  565. package/dist/components/br-time-picker.js +5 -0
  566. package/dist/components/br-tooltip.d.ts +11 -0
  567. package/dist/components/br-tooltip.js +5 -0
  568. package/dist/components/br-upload.d.ts +11 -0
  569. package/dist/components/br-upload.js +5 -0
  570. package/dist/components/br-wizard-panel.d.ts +11 -0
  571. package/dist/components/br-wizard-panel.js +5 -0
  572. package/dist/components/br-wizard.d.ts +11 -0
  573. package/dist/components/br-wizard.js +5 -0
  574. package/dist/components/index.d.ts +213 -0
  575. package/dist/components/index.js +5 -0
  576. package/dist/components/p-0IYmyaTi.js +5 -0
  577. package/dist/components/p-41XwlWiS.js +5 -0
  578. package/dist/components/p-5z6jgH1D.js +5 -0
  579. package/dist/components/p-6OdfnwnK.js +5 -0
  580. package/dist/components/p-9S9bgUT0.js +5 -0
  581. package/dist/components/p-B-qLmYZC.js +5 -0
  582. package/dist/components/p-B-sbd1_h.js +5 -0
  583. package/dist/components/p-B55qsau4.js +5 -0
  584. package/dist/components/p-BC7f6MK8.js +5 -0
  585. package/dist/components/p-BPJpHGOW.js +5 -0
  586. package/dist/components/p-BW0_ORNA.js +5 -0
  587. package/dist/components/p-BWXfdbQH.js +5 -0
  588. package/dist/components/p-Bb-nLtTG.js +5 -0
  589. package/dist/components/p-BkS6ujyf.js +5 -0
  590. package/dist/components/p-Bm0ECvfB.js +5 -0
  591. package/dist/components/p-C1yRmdso.js +5 -0
  592. package/dist/components/p-C3LQSQpc.js +5 -0
  593. package/dist/components/p-C98-mHmV.js +5 -0
  594. package/dist/components/p-CDZFuUlU.js +5 -0
  595. package/dist/components/p-CRfi23Rd.js +5 -0
  596. package/dist/components/p-CUI5zWGf.js +5 -0
  597. package/dist/components/p-CXMwM9m4.js +5 -0
  598. package/dist/components/p-CdDwqbBv.js +5 -0
  599. package/dist/components/p-CxviDiCr.js +5 -0
  600. package/dist/components/p-D3usVJE2.js +16 -0
  601. package/dist/components/p-D6zroLx5.js +5 -0
  602. package/dist/components/p-D9SpD3Ay.js +5 -0
  603. package/dist/components/p-DA5GS53D.js +5 -0
  604. package/dist/components/p-DBP6K_aq.js +5 -0
  605. package/dist/components/p-DBmwzG9E.js +5 -0
  606. package/dist/components/p-DCrVo-8T.js +5 -0
  607. package/dist/components/p-DIK54tTj.js +5 -0
  608. package/dist/components/p-DQRSHR-D.js +5 -0
  609. package/dist/components/p-DRVMm1Py.js +5 -0
  610. package/dist/components/p-DWPmUV72.js +5 -0
  611. package/dist/components/p-DYA74R1r.js +5 -0
  612. package/dist/components/p-DYnkGWii.js +5 -0
  613. package/dist/components/p-D_CSvOY9.js +5 -0
  614. package/dist/components/p-DaeGwqw0.js +5 -0
  615. package/dist/components/p-Dkg2scYZ.js +5 -0
  616. package/dist/components/p-Dmfk7eEe.js +5 -0
  617. package/dist/components/p-DoXNfcTT.js +5 -0
  618. package/dist/components/p-DvrdmqoQ.js +5 -0
  619. package/dist/components/p-DxZJrIyL.js +5 -0
  620. package/dist/components/p-LmeJrLxH.js +5 -0
  621. package/dist/components/p-TFWd_UBV.js +5 -0
  622. package/dist/components/p-aF8bGN3t.js +5 -0
  623. package/dist/components/p-bhULC15U.js +5 -0
  624. package/dist/components/p-cF3ia5e9.js +5 -0
  625. package/dist/components/p-cfPt-vKA.js +5 -0
  626. package/dist/components/p-gvnfuTjd.js +5 -0
  627. package/dist/components/p-nJOJGpyl.js +5 -0
  628. package/dist/components/p-ttI0nvv_.js +5 -0
  629. package/dist/esm/app-globals-DVjNHTTs.js +7 -0
  630. package/dist/esm/br-avatar.entry.js +246 -0
  631. package/dist/esm/br-breadcrumb-item.entry.js +43 -0
  632. package/dist/esm/br-breadcrumb.entry.js +441 -0
  633. package/dist/esm/br-button_2.entry.js +277 -0
  634. package/dist/esm/br-card.entry.js +109 -0
  635. package/dist/esm/br-carousel-page.entry.js +78 -0
  636. package/dist/esm/br-carousel.entry.js +563 -0
  637. package/dist/esm/br-checkbox-group.entry.js +116 -0
  638. package/dist/esm/br-checkbox.entry.js +286 -0
  639. package/dist/esm/br-checkgroup.entry.js +18 -0
  640. package/dist/esm/br-collapse_2.entry.js +680 -0
  641. package/dist/esm/br-cookiebar-cookie.entry.js +81 -0
  642. package/dist/esm/br-cookiebar-group.entry.js +307 -0
  643. package/dist/esm/br-cookiebar-header.entry.js +37 -0
  644. package/dist/esm/br-cookiebar-link.entry.js +52 -0
  645. package/dist/esm/br-cookiebar-note-group.entry.js +68 -0
  646. package/dist/esm/br-cookiebar-note.entry.js +23 -0
  647. package/dist/esm/br-cookiebar.entry.js +756 -0
  648. package/dist/esm/br-crumb.entry.js +49 -0
  649. package/dist/esm/br-date-picker_3.entry.js +2442 -0
  650. package/dist/esm/br-datetime-picker.entry.js +1885 -0
  651. package/dist/esm/br-divider.entry.js +223 -0
  652. package/dist/esm/br-dropdown_2.entry.js +1853 -0
  653. package/dist/esm/br-footer-category.entry.js +100 -0
  654. package/dist/esm/br-footer-item.entry.js +50 -0
  655. package/dist/esm/br-footer-legal.entry.js +39 -0
  656. package/dist/esm/br-footer-logo.entry.js +102 -0
  657. package/dist/esm/br-footer-social.entry.js +69 -0
  658. package/dist/esm/br-footer.entry.js +90 -0
  659. package/dist/esm/br-header-function.entry.js +140 -0
  660. package/dist/esm/br-header-link.entry.js +58 -0
  661. package/dist/esm/br-header-list.entry.js +277 -0
  662. package/dist/esm/br-header-logo.entry.js +175 -0
  663. package/dist/esm/br-header.entry.js +640 -0
  664. package/dist/esm/br-icon.entry.js +483 -0
  665. package/dist/esm/br-input.entry.js +597 -0
  666. package/dist/esm/br-item.entry.js +354 -0
  667. package/dist/esm/br-link.entry.js +130 -0
  668. package/dist/esm/br-loading.entry.js +503 -0
  669. package/dist/esm/br-magic-button.entry.js +90 -0
  670. package/dist/esm/br-menu-group.entry.js +21 -0
  671. package/dist/esm/br-menu-header.entry.js +45 -0
  672. package/dist/esm/br-menu-info.entry.js +36 -0
  673. package/dist/esm/br-menu-item.entry.js +77 -0
  674. package/dist/esm/br-menu-link.entry.js +53 -0
  675. package/dist/esm/br-menu-list.entry.js +147 -0
  676. package/dist/esm/br-menu-logo.entry.js +73 -0
  677. package/dist/esm/br-menu-social.entry.js +63 -0
  678. package/dist/esm/br-menu.entry.js +991 -0
  679. package/dist/esm/br-modal.entry.js +494 -0
  680. package/dist/esm/br-notification-body.entry.js +69 -0
  681. package/dist/esm/br-notification-header.entry.js +46 -0
  682. package/dist/esm/br-notification-item.entry.js +108 -0
  683. package/dist/esm/br-notification.entry.js +332 -0
  684. package/dist/esm/br-pagination.entry.js +882 -0
  685. package/dist/esm/br-radio-group.entry.js +426 -0
  686. package/dist/esm/br-radio.entry.js +355 -0
  687. package/dist/esm/br-scrim.entry.js +1334 -0
  688. package/dist/esm/br-select-input_3.entry.js +950 -0
  689. package/dist/esm/br-sign-in.entry.js +123 -0
  690. package/dist/esm/br-skip-link-item.entry.js +18 -0
  691. package/dist/esm/br-skip-link.entry.js +360 -0
  692. package/dist/esm/br-skiplink-item.entry.js +190 -0
  693. package/dist/esm/br-slider.entry.js +686 -0
  694. package/dist/esm/br-step_2.entry.js +625 -0
  695. package/dist/esm/br-switch.entry.js +243 -0
  696. package/dist/esm/br-tab-item.entry.js +183 -0
  697. package/dist/esm/br-tab.entry.js +395 -0
  698. package/dist/esm/br-table-body.entry.js +35 -0
  699. package/dist/esm/br-table-cell.entry.js +182 -0
  700. package/dist/esm/br-table-header-cell.entry.js +171 -0
  701. package/dist/esm/br-table-header.entry.js +35 -0
  702. package/dist/esm/br-table-row.entry.js +79 -0
  703. package/dist/esm/br-table.entry.js +678 -0
  704. package/dist/esm/br-tag.entry.js +492 -0
  705. package/dist/esm/br-textarea.entry.js +304 -0
  706. package/dist/esm/br-tooltip.entry.js +625 -0
  707. package/dist/esm/br-upload.entry.js +580 -0
  708. package/dist/esm/br-wizard-panel.entry.js +52 -0
  709. package/dist/esm/br-wizard.entry.js +706 -0
  710. package/dist/esm/breakpoint-observer-DBmwzG9E.js +141 -0
  711. package/dist/esm/clamp-gvnfuTjd.js +23 -0
  712. package/dist/esm/cookiebar.utils-DYA74R1r.js +16 -0
  713. package/dist/esm/datetime-picker-constants-Bfm58jO6.js +3798 -0
  714. package/dist/esm/event-DFN_so7I.js +48 -0
  715. package/dist/esm/floating-surface-dismiss-BWXfdbQH.js +61 -0
  716. package/dist/esm/floating-ui-BavFwMnx.js +134 -0
  717. package/dist/esm/floating-ui.dom-DIK54tTj.js +1707 -0
  718. package/dist/esm/focus-DxZJrIyL.js +26 -0
  719. package/dist/esm/getNextElement-9S9bgUT0.js +28 -0
  720. package/dist/esm/iconify-icon-D3usVJE2.js +2303 -0
  721. package/dist/esm/id-BkS6ujyf.js +18 -0
  722. package/dist/esm/index-Bo-2igoO.js +671 -0
  723. package/dist/esm/index-C2RBydfd.js +3258 -0
  724. package/dist/esm/index.js +6 -0
  725. package/dist/esm/isNil-B-qLmYZC.js +17 -0
  726. package/dist/esm/isValid-DIUZX1qS.js +3684 -0
  727. package/dist/esm/loader.js +15 -0
  728. package/dist/esm/native-dialog-B55qsau4.js +46 -0
  729. package/dist/esm/navigation-bhULC15U.js +23 -0
  730. package/dist/esm/parts-Bb5vVlCC.js +17 -0
  731. package/dist/esm/props-DRVMm1Py.js +22 -0
  732. package/dist/esm/raf-batcher-cF3ia5e9.js +53 -0
  733. package/dist/esm/slot-BIG-yees.js +44 -0
  734. package/dist/esm/swipe-Dmfk7eEe.js +343 -0
  735. package/dist/esm/table-constants-CXMwM9m4.js +170 -0
  736. package/dist/esm/validator-D3tVP32U.js +113 -0
  737. package/dist/esm/webcomponents.js +46 -0
  738. package/dist/hydrate/index.d.ts +287 -0
  739. package/dist/hydrate/index.js +67323 -0
  740. package/dist/hydrate/index.mjs +67313 -0
  741. package/dist/hydrate/package.json +12 -0
  742. package/dist/index.cjs.js +1 -0
  743. package/dist/index.js +1 -0
  744. package/dist/loader/cdn.js +5 -0
  745. package/dist/loader/index.cjs.js +5 -0
  746. package/dist/loader/index.d.ts +24 -0
  747. package/dist/loader/index.es2017.js +5 -0
  748. package/dist/loader/index.js +6 -0
  749. package/dist/webcomponents/index.esm.js +5 -0
  750. package/dist/webcomponents/p-0196804a.entry.js +5 -0
  751. package/dist/webcomponents/p-0410186a.entry.js +5 -0
  752. package/dist/webcomponents/p-0415ef22.entry.js +5 -0
  753. package/dist/webcomponents/p-059c3d6c.entry.js +5 -0
  754. package/dist/webcomponents/p-0b8f39bc.entry.js +5 -0
  755. package/dist/webcomponents/p-0caa4d12.entry.js +5 -0
  756. package/dist/webcomponents/p-0d4f718d.entry.js +5 -0
  757. package/dist/webcomponents/p-0e84c9e8.entry.js +5 -0
  758. package/dist/webcomponents/p-12286e73.entry.js +5 -0
  759. package/dist/webcomponents/p-147ac8d3.entry.js +5 -0
  760. package/dist/webcomponents/p-1580beee.entry.js +5 -0
  761. package/dist/webcomponents/p-1b138f1c.entry.js +5 -0
  762. package/dist/webcomponents/p-1bca4499.entry.js +5 -0
  763. package/dist/webcomponents/p-1d6b0b6f.entry.js +5 -0
  764. package/dist/webcomponents/p-1d8cb8fd.entry.js +5 -0
  765. package/dist/webcomponents/p-22443c08.entry.js +5 -0
  766. package/dist/webcomponents/p-224daaac.entry.js +5 -0
  767. package/dist/webcomponents/p-28426d2a.entry.js +5 -0
  768. package/dist/webcomponents/p-2abd2da0.entry.js +5 -0
  769. package/dist/webcomponents/p-2fdc51ae.entry.js +5 -0
  770. package/dist/webcomponents/p-30c428b6.entry.js +5 -0
  771. package/dist/webcomponents/p-36bbea4e.entry.js +5 -0
  772. package/dist/webcomponents/p-3907ebfa.entry.js +5 -0
  773. package/dist/webcomponents/p-39a16f9d.entry.js +5 -0
  774. package/dist/webcomponents/p-3ebbd2f5.entry.js +5 -0
  775. package/dist/webcomponents/p-3ef7eac8.entry.js +5 -0
  776. package/dist/webcomponents/p-45356e9a.entry.js +5 -0
  777. package/dist/webcomponents/p-46513db4.entry.js +5 -0
  778. package/dist/webcomponents/p-4fe12a72.entry.js +5 -0
  779. package/dist/webcomponents/p-52df61cb.entry.js +5 -0
  780. package/dist/webcomponents/p-569134cf.entry.js +5 -0
  781. package/dist/webcomponents/p-5b257a4b.entry.js +5 -0
  782. package/dist/webcomponents/p-5ce7db4a.entry.js +5 -0
  783. package/dist/webcomponents/p-5f373708.entry.js +5 -0
  784. package/dist/webcomponents/p-5f6afb79.entry.js +5 -0
  785. package/dist/webcomponents/p-5fc7ba4c.entry.js +5 -0
  786. package/dist/webcomponents/p-60cc820c.entry.js +5 -0
  787. package/dist/webcomponents/p-66006312.entry.js +5 -0
  788. package/dist/webcomponents/p-66b13fd9.entry.js +5 -0
  789. package/dist/webcomponents/p-6OdfnwnK.js +5 -0
  790. package/dist/webcomponents/p-6c5f6cb6.entry.js +5 -0
  791. package/dist/webcomponents/p-6f1c4425.entry.js +5 -0
  792. package/dist/webcomponents/p-750799b7.entry.js +5 -0
  793. package/dist/webcomponents/p-756ff2ad.entry.js +5 -0
  794. package/dist/webcomponents/p-765bfe27.entry.js +5 -0
  795. package/dist/webcomponents/p-7ab96c11.entry.js +5 -0
  796. package/dist/webcomponents/p-7c2ff8b4.entry.js +5 -0
  797. package/dist/webcomponents/p-7cf9f4e5.entry.js +5 -0
  798. package/dist/webcomponents/p-7e1856e4.entry.js +5 -0
  799. package/dist/webcomponents/p-7f7506f0.entry.js +5 -0
  800. package/dist/webcomponents/p-7fb03a49.entry.js +5 -0
  801. package/dist/webcomponents/p-82200563.entry.js +5 -0
  802. package/dist/webcomponents/p-85f8063b.entry.js +5 -0
  803. package/dist/webcomponents/p-8b558233.entry.js +5 -0
  804. package/dist/webcomponents/p-8e6c2767.entry.js +5 -0
  805. package/dist/webcomponents/p-966ad32f.entry.js +5 -0
  806. package/dist/webcomponents/p-9679d230.entry.js +5 -0
  807. package/dist/webcomponents/p-96dd663b.entry.js +5 -0
  808. package/dist/webcomponents/p-98843fa3.entry.js +5 -0
  809. package/dist/webcomponents/p-9S9bgUT0.js +5 -0
  810. package/dist/webcomponents/p-9a375eff.entry.js +5 -0
  811. package/dist/webcomponents/p-9b358cff.entry.js +5 -0
  812. package/dist/webcomponents/p-9f7558c7.entry.js +5 -0
  813. package/dist/webcomponents/p-B-qLmYZC.js +5 -0
  814. package/dist/webcomponents/p-B55qsau4.js +5 -0
  815. package/dist/webcomponents/p-BIG-yees.js +5 -0
  816. package/dist/webcomponents/p-BWXfdbQH.js +5 -0
  817. package/dist/webcomponents/p-Bb5vVlCC.js +5 -0
  818. package/dist/webcomponents/p-Bfm58jO6.js +5 -0
  819. package/dist/webcomponents/p-BhMVJQ4-.js +5 -0
  820. package/dist/webcomponents/p-BkS6ujyf.js +5 -0
  821. package/dist/webcomponents/p-C2RBydfd.js +6 -0
  822. package/dist/webcomponents/p-CO5cOQQU.js +5 -0
  823. package/dist/webcomponents/p-CXMwM9m4.js +5 -0
  824. package/dist/webcomponents/p-D3tVP32U.js +5 -0
  825. package/dist/webcomponents/p-D3usVJE2.js +16 -0
  826. package/dist/webcomponents/p-DBmwzG9E.js +5 -0
  827. package/dist/webcomponents/p-DFN_so7I.js +5 -0
  828. package/dist/webcomponents/p-DIK54tTj.js +5 -0
  829. package/dist/webcomponents/p-DRVMm1Py.js +5 -0
  830. package/dist/webcomponents/p-DVjNHTTs.js +5 -0
  831. package/dist/webcomponents/p-DYA74R1r.js +5 -0
  832. package/dist/webcomponents/p-Dmfk7eEe.js +5 -0
  833. package/dist/webcomponents/p-DxZJrIyL.js +5 -0
  834. package/dist/webcomponents/p-a382e115.entry.js +5 -0
  835. package/dist/webcomponents/p-a9ff7c25.entry.js +5 -0
  836. package/dist/webcomponents/p-bba9fc09.entry.js +5 -0
  837. package/dist/webcomponents/p-bhULC15U.js +5 -0
  838. package/dist/webcomponents/p-c0b0f531.entry.js +5 -0
  839. package/dist/webcomponents/p-c211af17.entry.js +5 -0
  840. package/dist/webcomponents/p-c492d926.entry.js +5 -0
  841. package/dist/webcomponents/p-c4cfe599.entry.js +5 -0
  842. package/dist/webcomponents/p-c846e784.entry.js +5 -0
  843. package/dist/webcomponents/p-cF3ia5e9.js +5 -0
  844. package/dist/webcomponents/p-cedb8eea.entry.js +5 -0
  845. package/dist/webcomponents/p-d1e899cd.entry.js +5 -0
  846. package/dist/webcomponents/p-d38d82cc.entry.js +5 -0
  847. package/dist/webcomponents/p-dba376cb.entry.js +5 -0
  848. package/dist/webcomponents/p-e0ce536a.entry.js +5 -0
  849. package/dist/webcomponents/p-e1331288.entry.js +5 -0
  850. package/dist/webcomponents/p-e360a463.entry.js +5 -0
  851. package/dist/webcomponents/p-e80a1eb0.entry.js +5 -0
  852. package/dist/webcomponents/p-f078f972.entry.js +5 -0
  853. package/dist/webcomponents/p-f6318e94.entry.js +5 -0
  854. package/dist/webcomponents/p-fcd4ae48.entry.js +5 -0
  855. package/dist/webcomponents/p-gvnfuTjd.js +5 -0
  856. package/dist/webcomponents/webcomponents.esm.js +5 -0
  857. package/package.json +1 -1
  858. package/cem/.gitkeep +0 -0
@@ -0,0 +1,75 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Utilitários para definição e recuperação do caminho base de assets dos componentes.
7
+ *
8
+ * Permite customizar o path de SVGs e outros recursos estáticos em runtime.
9
+ */
10
+ import { isClient } from "./isClient";
11
+ /**
12
+ * Implementação inspirada nas utilidades de base path do Shoelace.
13
+ * Referência: https://github.com/shoelace-style/shoelace/blob/next/src/utilities/base-path.ts
14
+ */
15
+ let wbcBasePath;
16
+ const DATA_WBC_ATTRIBUTE = 'data-wbc';
17
+ const DEFAULT_SVG_PATH = 'svg';
18
+ /**
19
+ * Define o caminho base dos assets utilizados pelos componentes.
20
+ *
21
+ * @param path Caminho base a ser utilizado.
22
+ */
23
+ export const setBasePath = (path) => {
24
+ wbcBasePath = path;
25
+ };
26
+ /**
27
+ * Recupera o caminho base dos assets, com fallback automático quando necessário.
28
+ *
29
+ * Ordem de resolução:
30
+ * 1. valor definido por `setBasePath`
31
+ * 2. script com atributo `data-wbc`
32
+ * 3. caminho derivado de um script que contenha `wbc` no `src` + `/svg`
33
+ *
34
+ * @param subpath Subcaminho opcional para concatenar ao base path.
35
+ * @returns Caminho base normalizado (sem `/` final) com subpath opcional.
36
+ */
37
+ export const getBasePath = (subpath = '') => {
38
+ if (!wbcBasePath) {
39
+ const configScript = findConfigScript();
40
+ const configPath = configScript?.getAttribute(DATA_WBC_ATTRIBUTE);
41
+ const fallbackScript = findFallbackScript();
42
+ const fallbackPath = fallbackScript ? `${getScriptPath(fallbackScript)}/${DEFAULT_SVG_PATH}` : '';
43
+ setBasePath(configPath || fallbackPath);
44
+ }
45
+ const formattedSubpath = subpath ? `/${subpath.replace(/^\//, '')}` : '';
46
+ return wbcBasePath.replace(/\/$/, '') + formattedSubpath;
47
+ };
48
+ /**
49
+ * Busca o script de configuração por `data-wbc`.
50
+ */
51
+ const findConfigScript = () => {
52
+ if (!isClient())
53
+ return null;
54
+ return document.querySelector(`script[${DATA_WBC_ATTRIBUTE}]`);
55
+ };
56
+ /**
57
+ * Busca um script de fallback cujo `src` contenha `wbc`.
58
+ */
59
+ const findFallbackScript = () => {
60
+ if (!isClient())
61
+ return null;
62
+ return document.querySelector('script[src*="wbc"]');
63
+ };
64
+ /**
65
+ * Extrai o diretório base do `src` de um script.
66
+ *
67
+ * @param script Script alvo.
68
+ * @returns Diretório do script sem o nome do arquivo.
69
+ */
70
+ const getScriptPath = (script) => {
71
+ if (!isClient())
72
+ return '';
73
+ const src = script.getAttribute('src');
74
+ return src ? src.substring(0, src.lastIndexOf('/')) : '';
75
+ };
@@ -0,0 +1,139 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Utilitários para detecção e manipulação de breakpoints responsivos.
7
+ *
8
+ * As media queries são compartilhadas por janela para que várias instâncias de
9
+ * headers e subcomponentes não instalem o mesmo conjunto de listeners.
10
+ */
11
+ export const BREAKPOINTS = {
12
+ X_SMALL: 'x-small',
13
+ SMALL: 'small',
14
+ MEDIUM: 'medium',
15
+ LARGE: 'large',
16
+ X_LARGE: 'x-large',
17
+ };
18
+ const BREAKPOINT_SETTINGS = {
19
+ [BREAKPOINTS.X_SMALL]: { name: BREAKPOINTS.X_SMALL, query: '(max-width: 575px)', minWidth: 0, maxWidth: 575 },
20
+ [BREAKPOINTS.SMALL]: {
21
+ name: BREAKPOINTS.SMALL,
22
+ query: '(min-width: 576px) and (max-width: 991px)',
23
+ minWidth: 576,
24
+ maxWidth: 991,
25
+ },
26
+ [BREAKPOINTS.MEDIUM]: {
27
+ name: BREAKPOINTS.MEDIUM,
28
+ query: '(min-width: 992px) and (max-width: 1279px)',
29
+ minWidth: 992,
30
+ maxWidth: 1279,
31
+ },
32
+ [BREAKPOINTS.LARGE]: {
33
+ name: BREAKPOINTS.LARGE,
34
+ query: '(min-width: 1280px) and (max-width: 1599px)',
35
+ minWidth: 1280,
36
+ maxWidth: 1599,
37
+ },
38
+ [BREAKPOINTS.X_LARGE]: { name: BREAKPOINTS.X_LARGE, query: '(min-width: 1600px)', minWidth: 1600 },
39
+ };
40
+ const sharedStates = new WeakMap();
41
+ function createSharedState(ownerWindow) {
42
+ const state = {};
43
+ state.currentBreakpoint = null;
44
+ state.mediaQueries = [];
45
+ state.subscriptions = new Set();
46
+ state.handleChange = () => {
47
+ for (const { config, mql } of state.mediaQueries) {
48
+ if (mql.matches && state.currentBreakpoint !== config.name) {
49
+ state.currentBreakpoint = config.name;
50
+ for (const subscription of [...state.subscriptions])
51
+ subscription.callback(config.name);
52
+ break;
53
+ }
54
+ }
55
+ };
56
+ for (const breakpointName of Object.values(BREAKPOINTS)) {
57
+ const config = BREAKPOINT_SETTINGS[breakpointName];
58
+ const mql = ownerWindow.matchMedia(config.query);
59
+ state.mediaQueries.push({ config, mql });
60
+ if (mql.matches)
61
+ state.currentBreakpoint = config.name;
62
+ mql.addEventListener('change', state.handleChange);
63
+ }
64
+ sharedStates.set(ownerWindow, state);
65
+ return state;
66
+ }
67
+ function releaseSharedState(ownerWindow, state) {
68
+ if (state.subscriptions.size > 0)
69
+ return;
70
+ for (const { mql } of state.mediaQueries)
71
+ mql.removeEventListener('change', state.handleChange);
72
+ sharedStates.delete(ownerWindow);
73
+ }
74
+ export class BreakpointObserver {
75
+ constructor() {
76
+ this.ownerWindow = typeof window === 'undefined' ? null : window;
77
+ this.shared = this.ownerWindow === null ? null : (sharedStates.get(this.ownerWindow) ?? createSharedState(this.ownerWindow));
78
+ this.subscriptions = new Set();
79
+ }
80
+ getCurrentBreakpoint() {
81
+ return this.shared?.currentBreakpoint ?? null;
82
+ }
83
+ getBreakpointSettings(breakpoint) {
84
+ return BREAKPOINT_SETTINGS[breakpoint];
85
+ }
86
+ getBreakpointQuery(breakpoint) {
87
+ return BREAKPOINT_SETTINGS[breakpoint]?.query;
88
+ }
89
+ getAllBreakpoints() {
90
+ return Object.values(BREAKPOINTS);
91
+ }
92
+ static getBreakpoints(type, breakpoint) {
93
+ const breakpointOrder = Object.values(BREAKPOINTS);
94
+ const index = breakpointOrder.indexOf(breakpoint);
95
+ if (index === -1)
96
+ return [];
97
+ switch (type) {
98
+ case 'above':
99
+ return breakpointOrder.slice(index + 1);
100
+ case 'below':
101
+ return breakpointOrder.slice(0, index);
102
+ case 'from':
103
+ return breakpointOrder.slice(index);
104
+ case 'until':
105
+ return breakpointOrder.slice(0, index + 1);
106
+ case 'only':
107
+ return [breakpoint];
108
+ }
109
+ }
110
+ subscribe(callback) {
111
+ if (this.shared === null ||
112
+ (this.subscriptions.size > 0 && [...this.subscriptions].some((item) => item.callback === callback))) {
113
+ return;
114
+ }
115
+ const subscription = { owner: this, callback };
116
+ this.subscriptions.add(subscription);
117
+ this.shared.subscriptions.add(subscription);
118
+ const current = this.shared.currentBreakpoint;
119
+ if (current !== null)
120
+ callback(current);
121
+ }
122
+ unsubscribe(callback) {
123
+ for (const subscription of [...this.subscriptions]) {
124
+ if (subscription.callback !== callback)
125
+ continue;
126
+ this.subscriptions.delete(subscription);
127
+ this.shared?.subscriptions.delete(subscription);
128
+ }
129
+ if (this.shared !== null && this.ownerWindow !== null)
130
+ releaseSharedState(this.ownerWindow, this.shared);
131
+ }
132
+ destroy() {
133
+ for (const subscription of this.subscriptions)
134
+ this.shared?.subscriptions.delete(subscription);
135
+ this.subscriptions.clear();
136
+ if (this.shared !== null && this.ownerWindow !== null)
137
+ releaseSharedState(this.ownerWindow, this.shared);
138
+ }
139
+ }
@@ -0,0 +1,21 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Utilitário para limitar valores numéricos a um intervalo.
7
+ *
8
+ * Restringe um número ao intervalo `[min, max]`.
9
+ *
10
+ * @param value Valor de entrada.
11
+ * @param min Limite inferior.
12
+ * @param max Limite superior.
13
+ * @returns Valor limitado ao intervalo informado.
14
+ */
15
+ export const clamp = (value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) => {
16
+ return Math.min(Math.max(min, value), max);
17
+ };
18
+ export const clampNumber = (value, min, max, fallback = min) => {
19
+ const numeric = typeof value === 'number' ? value : Number(value);
20
+ return Number.isFinite(numeric) ? clamp(numeric, min, max) : fallback;
21
+ };
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Mapa centralizado de variáveis CSS compartilhadas entre componentes.
7
+ */
8
+ export const CssVariables = {
9
+ ALIGN: {
10
+ HORIZONTAL: '--horizontal-align',
11
+ },
12
+ };
@@ -0,0 +1,37 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Utilitários para manipulação de custom properties CSS (variáveis CSS).
7
+ *
8
+ * Permite obter referências e valores computados de tokens de cor e variáveis CSS.
9
+ */
10
+ import { isClient } from "./isClient";
11
+ const CSS_VALUE_PREFIX = '--bq-';
12
+ /**
13
+ * Retorna a referência CSS (`var(--token)`) de um token de cor, quando o token existe.
14
+ *
15
+ * @param colorName Nome lógico do token (ex.: `ui--primary`).
16
+ * @returns String no formato `var(--bq-...)` ou `undefined` quando inexistente.
17
+ */
18
+ export const getColorCSSVariable = (colorName) => {
19
+ if (!isClient())
20
+ return undefined;
21
+ const token = `${CSS_VALUE_PREFIX}${colorName}`;
22
+ const value = getComputedStyle(document.documentElement).getPropertyValue(token);
23
+ if (!value)
24
+ return undefined;
25
+ return `var(${token})`;
26
+ };
27
+ /**
28
+ * Retorna o valor computado de uma custom property CSS em um elemento.
29
+ *
30
+ * @param variable Nome da variável sem prefixo `--`.
31
+ * @param component Elemento no qual o valor será resolvido.
32
+ * @returns Valor computado sem espaços extras.
33
+ */
34
+ export const getCSSVariableValue = (variable, component) => {
35
+ const styles = getComputedStyle(component);
36
+ return String(styles.getPropertyValue(`--${variable}`)).trim();
37
+ };
@@ -0,0 +1,405 @@
1
+ /*!
2
+ * Construído por SERPRO
3
+ * © https://serpro.gov.br/ - MIT License.
4
+ */
5
+ /**
6
+ * Utilitários de datas para os componentes GovBR-DS.
7
+ *
8
+ * Funções puramente nativas (sem dependências externas) para:
9
+ * - Validação de strings ISO
10
+ * - Parsing de entradas de data em múltiplos formatos e localidades
11
+ * - Formatação de datas para exibição usando `Intl.DateTimeFormat`
12
+ * - Extração e clamp de valores ISO dentro de intervalos
13
+ *
14
+ * Todos os formatos ISO utilizados seguem o padrão `YYYY-MM-DD`.
15
+ */
16
+ // ─── Constantes e cache ───────────────────────────────────────────────────────
17
+ /** Regex que valida o formato ISO `YYYY-MM-DD`. */
18
+ const ISO_REGEX = /^\d{4}-\d{2}-\d{2}$/;
19
+ /**
20
+ * Cache de `Intl.DateTimeFormat` para evitar recriação a cada chamada.
21
+ * Limitado a 50 entradas; quando excedido, remove a entrada mais antiga (FIFO).
22
+ */
23
+ const formatterCache = new Map();
24
+ const FORMATTER_CACHE_MAX = 50;
25
+ // ─── Funções privadas ─────────────────────────────────────────────────────────
26
+ /**
27
+ * Verifica se a data representada pelas partes `year`, `month` e `day` existe
28
+ * no calendário gregoriano.
29
+ *
30
+ * @param year Ano (inteiro positivo).
31
+ * @param month Mês de 1 a 12.
32
+ * @param day Dia de 1 a 31.
33
+ * @returns `true` quando a data é válida no calendário.
34
+ */
35
+ function isCalendarDateValid(year, month, day) {
36
+ if (month < 1 || month > 12 || day < 1 || day > 31)
37
+ return false;
38
+ // O construtor de Date normaliza datas inválidas (ex.: 30/02 vira 01/03).
39
+ // Verificar se o dia/mês não mudou garante que a data existe no calendário.
40
+ const d = new Date(year, month - 1, day);
41
+ return d.getFullYear() === year && d.getMonth() === month - 1 && d.getDate() === day;
42
+ }
43
+ /**
44
+ * Tenta obter os nomes de meses completos e abreviados para uma localidade,
45
+ * retornando um mapa de nome (normalizado em minúsculo) → índice de mês (1–12).
46
+ *
47
+ * @param locale Código BCP 47 da localidade (ex.: `'pt-BR'`, `'en-US'`).
48
+ * @returns Mapa de nome de mês (lower) para índice 1–12.
49
+ */
50
+ function getMonthNameMap(locale) {
51
+ const map = new Map();
52
+ const date = new Date(2000, 0, 15);
53
+ for (let i = 0; i < 12; i++) {
54
+ date.setMonth(i);
55
+ const fullName = new Intl.DateTimeFormat(locale, { month: 'long' }).format(date).toLowerCase();
56
+ const shortName = new Intl.DateTimeFormat(locale, { month: 'short' }).format(date).toLowerCase().replace(/\.$/, '');
57
+ map.set(fullName, i + 1);
58
+ if (!map.has(shortName))
59
+ map.set(shortName, i + 1);
60
+ }
61
+ // Também registra os nomes em inglês quando a localidade não é `en-*`,
62
+ // pois muitas APIs e textos de interface ainda usam inglês.
63
+ if (!locale.startsWith('en')) {
64
+ const enDate = new Date(2000, 0, 15);
65
+ for (let i = 0; i < 12; i++) {
66
+ enDate.setMonth(i);
67
+ const fullEn = new Intl.DateTimeFormat('en', { month: 'long' }).format(enDate).toLowerCase();
68
+ const shortEn = new Intl.DateTimeFormat('en', { month: 'short' }).format(enDate).toLowerCase();
69
+ if (!map.has(fullEn))
70
+ map.set(fullEn, i + 1);
71
+ if (!map.has(shortEn))
72
+ map.set(shortEn, i + 1);
73
+ }
74
+ }
75
+ return map;
76
+ }
77
+ /**
78
+ * Tenta interpretar uma string com nome de mês (DD MMM YYYY ou MMM DD YYYY).
79
+ *
80
+ * @param input String de data a ser analisada.
81
+ * @param locale Localidade para obter nomes de meses.
82
+ * @returns Data interpretada ou `null`.
83
+ */
84
+ function parseTextDate(input, locale) {
85
+ const monthNames = getMonthNameMap(locale);
86
+ const normalized = input.toLowerCase().trim();
87
+ // Formato: DD MMM YYYY ou DD MMMM YYYY (ex.: "30 May 2024", "30 janeiro 2024")
88
+ const dmyMatch = normalized.match(/^(\d{1,2})\s+([a-záàâãäåæçèéêëìíîïðñòóôõöùúûüý\w]+)(?:,?\s*)(\d{4})$/);
89
+ if (dmyMatch) {
90
+ const day = parseInt(dmyMatch[1], 10);
91
+ const monthName = dmyMatch[2].replace(/\.$/, '');
92
+ const year = parseInt(dmyMatch[3], 10);
93
+ const month = monthNames.get(monthName);
94
+ if (month && isCalendarDateValid(year, month, day)) {
95
+ return new Date(year, month - 1, day);
96
+ }
97
+ }
98
+ // Formato: MMM DD, YYYY ou MMM DD YYYY (ex.: "May 30, 2024", "January 1 1970")
99
+ const mdyMatch = normalized.match(/^([a-záàâãäåæçèéêëìíîïðñòóôõöùúûüý\w]+)\s+(\d{1,2}),?\s*(\d{4})$/);
100
+ if (mdyMatch) {
101
+ const monthName = mdyMatch[1].replace(/\.$/, '');
102
+ const day = parseInt(mdyMatch[2], 10);
103
+ const year = parseInt(mdyMatch[3], 10);
104
+ const month = monthNames.get(monthName);
105
+ if (month && isCalendarDateValid(year, month, day)) {
106
+ return new Date(year, month - 1, day);
107
+ }
108
+ }
109
+ return null;
110
+ }
111
+ /**
112
+ * Tenta interpretar uma string numérica de data nos formatos
113
+ * `DD/MM/YYYY`, `MM/DD/YYYY`, `DD-MM-YYYY`, `DD.MM.YYYY`, etc.
114
+ *
115
+ * Heurística de localidade:
116
+ * - Localidades `en-US` / `en` usam `MM/DD/YYYY` por padrão.
117
+ * - Demais localidades assumem `DD/MM/YYYY`.
118
+ * - Quando o primeiro número é > 12, não pode ser mês → usa como dia.
119
+ * - Quando o segundo número é > 12, não pode ser dia no formato MDY → usa como dia.
120
+ *
121
+ * @param input String de data a ser analisada.
122
+ * @param locale Localidade usada como dica de formato.
123
+ * @returns Data interpretada ou `null`.
124
+ */
125
+ function parseNumericDate(input, locale) {
126
+ // Extrai os três componentes numéricos separados por `/`, `-`, `.` ou espaço.
127
+ const parts = input.trim().split(/[/\-.\s]+/);
128
+ if (parts.length !== 3)
129
+ return null;
130
+ const [a, b, c] = parts.map((p) => parseInt(p, 10));
131
+ // O último componente deve ser o ano (4 dígitos).
132
+ if (c < 100)
133
+ return null;
134
+ // Detecta formato ISO-like numérico: primeiro número ≥ 1000 → YYYY-MM-DD
135
+ if (a >= 1000) {
136
+ // Formato YYYY-MM-DD numérico (já coberto pelo parseISO, mas como fallback)
137
+ const [year, month, day] = [a, b, c];
138
+ if (isCalendarDateValid(year, month, day))
139
+ return new Date(year, month - 1, day);
140
+ return null;
141
+ }
142
+ const isUSLocale = locale === 'en' || locale === 'en-US';
143
+ let day;
144
+ let month;
145
+ if (a > 12) {
146
+ // `a` não pode ser mês → DD/MM/YYYY
147
+ day = a;
148
+ month = b;
149
+ }
150
+ else if (b > 12) {
151
+ // `b` não pode ser dia → MM/DD/YYYY
152
+ month = a;
153
+ day = b;
154
+ }
155
+ else {
156
+ // Ambíguo: usa a localidade como dica
157
+ if (isUSLocale) {
158
+ month = a;
159
+ day = b;
160
+ }
161
+ else {
162
+ day = a;
163
+ month = b;
164
+ }
165
+ }
166
+ const year = c;
167
+ if (isCalendarDateValid(year, month, day))
168
+ return new Date(year, month - 1, day);
169
+ // Tenta a interpretação inversa quando a primeira falhou
170
+ const [dayAlt, monthAlt] = [b, a];
171
+ if (isCalendarDateValid(year, monthAlt, dayAlt))
172
+ return new Date(year, monthAlt - 1, dayAlt);
173
+ return null;
174
+ }
175
+ /**
176
+ * Obtém um `Intl.DateTimeFormat` do cache (ou cria e armazena um novo).
177
+ *
178
+ * Quando o cache excede `FORMATTER_CACHE_MAX` entradas, a entrada mais antiga
179
+ * é removida para evitar crescimento ilimitado de memória.
180
+ *
181
+ * @param locale Localidade BCP 47.
182
+ * @param options Opções de formatação.
183
+ * @returns Instância de `Intl.DateTimeFormat`.
184
+ */
185
+ function getDateFormatter(locale, options) {
186
+ const key = `${locale}:${JSON.stringify(options)}`;
187
+ if (formatterCache.has(key))
188
+ return formatterCache.get(key);
189
+ if (formatterCache.size >= FORMATTER_CACHE_MAX) {
190
+ // Remove a entrada mais antiga (primeira inserida no Map).
191
+ const oldestKey = formatterCache.keys().next().value;
192
+ formatterCache.delete(oldestKey);
193
+ }
194
+ const formatter = new Intl.DateTimeFormat(locale, options);
195
+ formatterCache.set(key, formatter);
196
+ return formatter;
197
+ }
198
+ // ─── API pública ──────────────────────────────────────────────────────────────
199
+ /**
200
+ * Verifica se uma string está no formato ISO `YYYY-MM-DD` e representa
201
+ * uma data válida no calendário gregoriano.
202
+ *
203
+ * @param dateStr String a ser validada.
204
+ * @returns `true` quando a string é uma data ISO válida.
205
+ *
206
+ * @example
207
+ * isValidISODate('2024-05-30') // true
208
+ * isValidISODate('2024-02-30') // false (30/fev não existe)
209
+ * isValidISODate('30/05/2024') // false (formato incorreto)
210
+ */
211
+ export function isValidISODate(dateStr) {
212
+ if (!ISO_REGEX.test(dateStr))
213
+ return false;
214
+ const [year, month, day] = dateStr.split('-').map(Number);
215
+ return isCalendarDateValid(year, month, day);
216
+ }
217
+ /**
218
+ * Interpreta uma string de data em múltiplos formatos e retorna um objeto `Date`.
219
+ *
220
+ * Formatos suportados (em ordem de tentativa):
221
+ * 1. ISO `YYYY-MM-DD`
222
+ * 2. Texto com nome de mês: `DD MMM YYYY`, `MMM DD YYYY`, `MMM DD, YYYY`
223
+ * 3. Numérico: `DD/MM/YYYY`, `MM/DD/YYYY`, `DD-MM-YYYY`, `DD.MM.YYYY`, etc.
224
+ *
225
+ * A localidade é utilizada como dica para desambiguar formatos numéricos
226
+ * (`en-US` presume `MM/DD`; demais presumem `DD/MM`) e para identificar
227
+ * nomes de meses em outros idiomas.
228
+ *
229
+ * @param input String de data de entrada.
230
+ * @param locale Código BCP 47 de localidade (padrão `'pt-BR'`).
231
+ * @returns Objeto `Date` sem componente de horário, ou `null` quando a entrada
232
+ * é inválida, vazia ou não reconhecida.
233
+ *
234
+ * @example
235
+ * parseDateInput('2024-05-30') // new Date(2024, 4, 30)
236
+ * parseDateInput('30 May 2024', 'en-GB') // new Date(2024, 4, 30)
237
+ * parseDateInput('05/30/2024', 'en-US') // new Date(2024, 4, 30)
238
+ * parseDateInput('') // null
239
+ */
240
+ export function parseDateInput(input, locale = 'pt-BR') {
241
+ if (!input?.trim())
242
+ return null;
243
+ const trimmed = input.trim();
244
+ // 1. Formato ISO YYYY-MM-DD
245
+ if (ISO_REGEX.test(trimmed)) {
246
+ const [year, month, day] = trimmed.split('-').map(Number);
247
+ if (!isCalendarDateValid(year, month, day))
248
+ return null;
249
+ return new Date(year, month - 1, day);
250
+ }
251
+ // 2. Formato com nome de mês (texto)
252
+ // Verifica se há pelo menos uma letra para identificar como formato textual.
253
+ if (/[a-záàâãäåæçèéêëìíîïðñòóôõöùúûüý]/i.test(trimmed)) {
254
+ return parseTextDate(trimmed, locale);
255
+ }
256
+ // 3. Formato numérico
257
+ if (/\d/.test(trimmed)) {
258
+ return parseNumericDate(trimmed, locale);
259
+ }
260
+ return null;
261
+ }
262
+ /**
263
+ * Converte um objeto `Date` para uma string no formato ISO `YYYY-MM-DD`.
264
+ *
265
+ * Utiliza os componentes locais da data (sem conversão para UTC), garantindo
266
+ * consistência com datas criadas via `new Date(year, month, day)`.
267
+ *
268
+ * @param date Data a ser convertida.
269
+ * @returns String no formato `YYYY-MM-DD`.
270
+ *
271
+ * @example
272
+ * toISODateString(new Date(2024, 4, 30)) // '2024-05-30'
273
+ * toISODateString(new Date(2024, 0, 5)) // '2024-01-05'
274
+ */
275
+ export function toISODateString(date) {
276
+ const year = date.getFullYear();
277
+ const month = String(date.getMonth() + 1).padStart(2, '0');
278
+ const day = String(date.getDate()).padStart(2, '0');
279
+ return `${year}-${month}-${day}`;
280
+ }
281
+ /**
282
+ * Retorna a data de hoje como string ISO `YYYY-MM-DD`.
283
+ *
284
+ * @returns Data atual no formato `YYYY-MM-DD`.
285
+ *
286
+ * @example
287
+ * getTodayISO() // ex.: '2024-05-30'
288
+ */
289
+ export function getTodayISO() {
290
+ return toISODateString(new Date());
291
+ }
292
+ /**
293
+ * Formata um valor de data (ou intervalo/lista de datas) para exibição,
294
+ * usando `Intl.DateTimeFormat` para localização.
295
+ *
296
+ * Modos suportados:
297
+ * - `'single'`: formata uma única data ISO.
298
+ * - `'multi'`: formata múltiplas datas ISO separadas por espaço.
299
+ * - `'range'`: formata um intervalo `YYYY-MM-DD/YYYY-MM-DD`.
300
+ *
301
+ * Retorna `undefined` quando o valor está vazio ou contém datas inválidas.
302
+ *
303
+ * @param value String de valor de data conforme o modo.
304
+ * @param mode Modo de formatação (`'single'`, `'multi'` ou `'range'`).
305
+ * @param locale Código BCP 47 de localidade.
306
+ * @param options Opções de formatação para `Intl.DateTimeFormat`.
307
+ * @returns String formatada ou `undefined`.
308
+ *
309
+ * @example
310
+ * formatDisplayValue('2024-05-30', 'single', 'en-US', { month: 'long', day: 'numeric', year: 'numeric' })
311
+ * // 'May 30, 2024'
312
+ *
313
+ * formatDisplayValue('2024-05-30 2024-06-15', 'multi', 'en-US', { month: 'long', day: 'numeric', year: 'numeric' })
314
+ * // 'May 30, 2024, June 15, 2024'
315
+ *
316
+ * formatDisplayValue('2024-05-01/2024-05-31', 'range', 'en-US', { month: 'long', day: 'numeric', year: 'numeric' })
317
+ * // 'May 1 – May 31, 2024' (formato pode variar por localidade)
318
+ */
319
+ export function formatDisplayValue(value, mode, locale, options) {
320
+ if (!value?.trim())
321
+ return undefined;
322
+ const formatter = getDateFormatter(locale, options);
323
+ if (mode === 'single') {
324
+ if (!isValidISODate(value.trim()))
325
+ return undefined;
326
+ const [year, month, day] = value.trim().split('-').map(Number);
327
+ return formatter.format(new Date(year, month - 1, day));
328
+ }
329
+ if (mode === 'multi') {
330
+ const parts = value.trim().split(/\s+/);
331
+ const formatted = [];
332
+ for (const part of parts) {
333
+ if (!isValidISODate(part))
334
+ return undefined;
335
+ const [year, month, day] = part.split('-').map(Number);
336
+ formatted.push(formatter.format(new Date(year, month - 1, day)));
337
+ }
338
+ return formatted.join(', ');
339
+ }
340
+ if (mode === 'range') {
341
+ const [startStr, endStr] = value.trim().split('/');
342
+ if (!isValidISODate(startStr) || !isValidISODate(endStr))
343
+ return undefined;
344
+ const [sy, sm, sd] = startStr.split('-').map(Number);
345
+ const [ey, em, ed] = endStr.split('-').map(Number);
346
+ const start = new Date(sy, sm - 1, sd);
347
+ const end = new Date(ey, em - 1, ed);
348
+ return formatRangeWithFormatter(formatter, start, end);
349
+ }
350
+ return undefined;
351
+ }
352
+ /**
353
+ * Extrai a primeira data ISO `YYYY-MM-DD` encontrada em uma string de valor.
354
+ *
355
+ * Funciona com strings de data única, intervalos (`YYYY-MM-DD/YYYY-MM-DD`)
356
+ * e listas de datas separadas por espaço.
357
+ *
358
+ * @param value String de valor de data.
359
+ * @returns Primeira data ISO encontrada, ou `undefined` quando não há nenhuma.
360
+ *
361
+ * @example
362
+ * extractFocusedDate('2024-05-30') // '2024-05-30'
363
+ * extractFocusedDate('2024-05-01/2024-05-31') // '2024-05-01'
364
+ * extractFocusedDate('2024-05-30 2024-06-15') // '2024-05-30'
365
+ * extractFocusedDate('') // undefined
366
+ */
367
+ export function extractFocusedDate(value) {
368
+ if (!value?.trim())
369
+ return undefined;
370
+ const match = value.match(/\d{4}-\d{2}-\d{2}/);
371
+ return match ? match[0] : undefined;
372
+ }
373
+ /**
374
+ * Restringe uma data ISO ao intervalo `[min, max]` (string comparison ISO).
375
+ *
376
+ * A comparação utiliza a ordenação lexicográfica das strings ISO, que coincide
377
+ * com a ordem cronológica para o formato `YYYY-MM-DD`.
378
+ *
379
+ * @param date Data ISO a ser limitada.
380
+ * @param min Data mínima ISO (opcional).
381
+ * @param max Data máxima ISO (opcional).
382
+ * @returns Data ISO resultante (dentro do intervalo ou a própria data quando
383
+ * nenhum limite foi informado).
384
+ *
385
+ * @example
386
+ * clampDateToRange('2024-01-01', '2024-03-01') // '2024-03-01'
387
+ * clampDateToRange('2024-12-31', undefined, '2024-06-30') // '2024-06-30'
388
+ * clampDateToRange('2024-05-15', '2024-01-01', '2024-12-31') // '2024-05-15'
389
+ */
390
+ export function clampDateToRange(date, min, max) {
391
+ let result = date;
392
+ if (min && result < min)
393
+ result = min;
394
+ if (max && result > max)
395
+ result = max;
396
+ return result;
397
+ }
398
+ // Helper para formatar intervalo usando Intl.DateTimeFormat quando disponível
399
+ function formatRangeWithFormatter(formatter, start, end) {
400
+ const anyFormatter = formatter;
401
+ if (typeof anyFormatter.formatRange === 'function') {
402
+ return anyFormatter.formatRange(start, end);
403
+ }
404
+ return `${formatter.format(start)} – ${formatter.format(end)}`;
405
+ }