@govbr-ds/webcomponents 2.0.0-next.18 → 2.0.0-next.19

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 (369) hide show
  1. package/README.md +43 -11
  2. package/dist/cjs/app-globals-77a217c6.js +11 -0
  3. package/dist/cjs/app-globals-77a217c6.js.map +1 -0
  4. package/dist/cjs/br-avatar.cjs.entry.js +18 -68
  5. package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
  6. package/dist/cjs/br-button_2.cjs.entry.js +13 -93
  7. package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
  8. package/dist/cjs/br-checkbox.cjs.entry.js +11 -61
  9. package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
  10. package/dist/cjs/br-dropdown.cjs.entry.js +8 -50
  11. package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
  12. package/dist/cjs/br-input.cjs.entry.js +18 -67
  13. package/dist/cjs/br-input.cjs.entry.js.map +1 -1
  14. package/dist/cjs/br-item.cjs.entry.js +9 -53
  15. package/dist/cjs/br-item.cjs.entry.js.map +1 -1
  16. package/dist/cjs/br-list.cjs.entry.js +12 -56
  17. package/dist/cjs/br-list.cjs.entry.js.map +1 -1
  18. package/dist/cjs/br-loading.cjs.entry.js +10 -40
  19. package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
  20. package/dist/cjs/br-message.cjs.entry.js +10 -40
  21. package/dist/cjs/br-message.cjs.entry.js.map +1 -1
  22. package/dist/cjs/br-radio.cjs.entry.js +13 -88
  23. package/dist/cjs/br-radio.cjs.entry.js.map +1 -1
  24. package/dist/cjs/br-switch.cjs.entry.js +13 -68
  25. package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
  26. package/dist/cjs/br-textarea.cjs.entry.js +41 -97
  27. package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
  28. package/dist/cjs/br-upload.cjs.entry.js +7 -3
  29. package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
  30. package/dist/cjs/{index-a1cc4aa4.js → index-81c11ce2.js} +145 -5
  31. package/dist/cjs/index-81c11ce2.js.map +1 -0
  32. package/dist/cjs/index.cjs.js +4 -0
  33. package/dist/cjs/index.cjs.js.map +1 -1
  34. package/dist/cjs/{inherited-attributes-61a2aff9.js → inherited-attributes-16f7d388.js} +5 -1
  35. package/dist/cjs/inherited-attributes-16f7d388.js.map +1 -0
  36. package/dist/cjs/loader.cjs.js +7 -3
  37. package/dist/cjs/loader.cjs.js.map +1 -1
  38. package/dist/cjs/{v4-c23234d2.js → v4-2a0fe526.js} +5 -1
  39. package/dist/cjs/v4-2a0fe526.js.map +1 -0
  40. package/dist/cjs/webcomponents.cjs.js +29 -4
  41. package/dist/cjs/webcomponents.cjs.js.map +1 -1
  42. package/dist/collection/collection-manifest.json +2 -2
  43. package/dist/collection/components/avatar/avatar.js +53 -187
  44. package/dist/collection/components/avatar/avatar.js.map +1 -1
  45. package/dist/collection/components/button/button.css +0 -35
  46. package/dist/collection/components/button/button.js +10 -257
  47. package/dist/collection/components/button/button.js.map +1 -1
  48. package/dist/collection/components/checkbox/checkbox.js +13 -262
  49. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  50. package/dist/collection/components/dropdown/dropdown.js +5 -246
  51. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  52. package/dist/collection/components/icon/icon.js +9 -168
  53. package/dist/collection/components/icon/icon.js.map +1 -1
  54. package/dist/collection/components/input/input.js +24 -327
  55. package/dist/collection/components/input/input.js.map +1 -1
  56. package/dist/collection/components/item/item.js +11 -253
  57. package/dist/collection/components/item/item.js.map +1 -1
  58. package/dist/collection/components/list/list.js +12 -258
  59. package/dist/collection/components/list/list.js.map +1 -1
  60. package/dist/collection/components/loading/loading.css +0 -35
  61. package/dist/collection/components/loading/loading.js +9 -170
  62. package/dist/collection/components/loading/loading.js.map +1 -1
  63. package/dist/collection/components/message/message.js +12 -170
  64. package/dist/collection/components/message/message.js.map +1 -1
  65. package/dist/collection/components/radio/radio.js +15 -289
  66. package/dist/collection/components/radio/radio.js.map +1 -1
  67. package/dist/collection/components/switch/switch.js +15 -270
  68. package/dist/collection/components/switch/switch.js.map +1 -1
  69. package/dist/collection/components/textarea/textarea.js +55 -323
  70. package/dist/collection/components/textarea/textarea.js.map +1 -1
  71. package/dist/collection/components/upload/upload.js +4 -0
  72. package/dist/collection/index.js +1 -1
  73. package/dist/collection/index.js.map +1 -1
  74. package/dist/collection/pages/{upload/upload.js → components/upload/index.js} +7 -7
  75. package/dist/collection/pages/scripts/menu.js +221 -0
  76. package/dist/collection/pages/scripts/pageLoader.js +180 -0
  77. package/dist/collection/utils/inherited-attributes.js +4 -0
  78. package/dist/collection/utils/unique-id-generator.js +4 -0
  79. package/dist/components/br-avatar.js +5 -154
  80. package/dist/components/br-avatar.js.map +1 -1
  81. package/dist/components/br-button.js +5 -7
  82. package/dist/components/br-button.js.map +1 -1
  83. package/dist/components/br-checkbox.js +5 -145
  84. package/dist/components/br-checkbox.js.map +1 -1
  85. package/dist/components/br-dropdown.js +5 -155
  86. package/dist/components/br-dropdown.js.map +1 -1
  87. package/dist/components/br-icon.js +5 -7
  88. package/dist/components/br-icon.js.map +1 -1
  89. package/dist/components/br-input.js +5 -236
  90. package/dist/components/br-input.js.map +1 -1
  91. package/dist/components/br-item.js +5 -212
  92. package/dist/components/br-item.js.map +1 -1
  93. package/dist/components/br-list.js +5 -137
  94. package/dist/components/br-list.js.map +1 -1
  95. package/dist/components/br-loading.js +5 -91
  96. package/dist/components/br-loading.js.map +1 -1
  97. package/dist/components/br-message.js +5 -125
  98. package/dist/components/br-message.js.map +1 -1
  99. package/dist/components/br-radio.js +5 -173
  100. package/dist/components/br-radio.js.map +1 -1
  101. package/dist/components/br-switch.js +5 -158
  102. package/dist/components/br-switch.js.map +1 -1
  103. package/dist/components/br-textarea.js +5 -180
  104. package/dist/components/br-textarea.js.map +1 -1
  105. package/dist/components/br-upload.js +5 -191
  106. package/dist/components/br-upload.js.map +1 -1
  107. package/dist/components/index.d.ts +0 -31
  108. package/dist/components/index.js +5 -16
  109. package/dist/components/index.js.map +1 -1
  110. package/dist/components/p-2d8e59f6.js +7 -0
  111. package/dist/components/p-2d8e59f6.js.map +1 -0
  112. package/dist/{webcomponents/p-ee6f4f3f.js → components/p-74a4eb38.js} +5 -1
  113. package/dist/{webcomponents/p-ee6f4f3f.js.map → components/p-74a4eb38.js.map} +1 -1
  114. package/dist/components/p-a23c3f6b.js +17 -0
  115. package/dist/components/p-a23c3f6b.js.map +1 -0
  116. package/dist/{webcomponents/p-14616bce.js → components/p-d5a8d30c.js} +5 -1
  117. package/dist/{webcomponents/p-14616bce.js.map → components/p-d5a8d30c.js.map} +1 -1
  118. package/dist/components/p-e4af8eac.js +6 -0
  119. package/dist/components/p-e4af8eac.js.map +1 -0
  120. package/dist/esm/app-globals-72548b13.js +9 -0
  121. package/dist/esm/app-globals-72548b13.js.map +1 -0
  122. package/dist/esm/br-avatar.entry.js +18 -68
  123. package/dist/esm/br-avatar.entry.js.map +1 -1
  124. package/dist/esm/br-button_2.entry.js +13 -93
  125. package/dist/esm/br-button_2.entry.js.map +1 -1
  126. package/dist/esm/br-checkbox.entry.js +11 -61
  127. package/dist/esm/br-checkbox.entry.js.map +1 -1
  128. package/dist/esm/br-dropdown.entry.js +8 -50
  129. package/dist/esm/br-dropdown.entry.js.map +1 -1
  130. package/dist/esm/br-input.entry.js +18 -67
  131. package/dist/esm/br-input.entry.js.map +1 -1
  132. package/dist/esm/br-item.entry.js +9 -53
  133. package/dist/esm/br-item.entry.js.map +1 -1
  134. package/dist/esm/br-list.entry.js +12 -56
  135. package/dist/esm/br-list.entry.js.map +1 -1
  136. package/dist/esm/br-loading.entry.js +10 -40
  137. package/dist/esm/br-loading.entry.js.map +1 -1
  138. package/dist/esm/br-message.entry.js +10 -40
  139. package/dist/esm/br-message.entry.js.map +1 -1
  140. package/dist/esm/br-radio.entry.js +13 -88
  141. package/dist/esm/br-radio.entry.js.map +1 -1
  142. package/dist/esm/br-switch.entry.js +13 -68
  143. package/dist/esm/br-switch.entry.js.map +1 -1
  144. package/dist/esm/br-textarea.entry.js +41 -97
  145. package/dist/esm/br-textarea.entry.js.map +1 -1
  146. package/dist/esm/br-upload.entry.js +7 -3
  147. package/dist/esm/br-upload.entry.js.map +1 -1
  148. package/dist/esm/{index-cad6e6c3.js → index-aab4a630.js} +145 -6
  149. package/dist/esm/index-aab4a630.js.map +1 -0
  150. package/dist/esm/index.js +4 -1
  151. package/dist/esm/index.js.map +1 -1
  152. package/dist/esm/{inherited-attributes-c856c729.js → inherited-attributes-553a7c36.js} +5 -1
  153. package/dist/esm/inherited-attributes-553a7c36.js.map +1 -0
  154. package/dist/esm/loader.js +8 -4
  155. package/dist/esm/loader.js.map +1 -1
  156. package/dist/esm/polyfills/core-js.js +11 -0
  157. package/dist/esm/polyfills/dom.js +79 -0
  158. package/dist/esm/polyfills/es5-html-element.js +1 -0
  159. package/dist/esm/polyfills/index.js +34 -0
  160. package/dist/esm/polyfills/system.js +6 -0
  161. package/dist/esm/{v4-23648a96.js → v4-c99c1585.js} +5 -1
  162. package/dist/esm/v4-c99c1585.js.map +1 -0
  163. package/dist/esm/webcomponents.js +30 -5
  164. package/dist/esm/webcomponents.js.map +1 -1
  165. package/dist/esm-es5/app-globals-72548b13.js +6 -0
  166. package/dist/esm-es5/app-globals-72548b13.js.map +1 -0
  167. package/dist/esm-es5/br-avatar.entry.js +6 -0
  168. package/dist/esm-es5/br-avatar.entry.js.map +1 -0
  169. package/dist/esm-es5/br-button_2.entry.js +17 -0
  170. package/dist/esm-es5/br-button_2.entry.js.map +1 -0
  171. package/dist/esm-es5/br-checkbox.entry.js +6 -0
  172. package/dist/esm-es5/br-checkbox.entry.js.map +1 -0
  173. package/dist/esm-es5/br-dropdown.entry.js +6 -0
  174. package/dist/esm-es5/br-dropdown.entry.js.map +1 -0
  175. package/dist/esm-es5/br-input.entry.js +6 -0
  176. package/dist/esm-es5/br-input.entry.js.map +1 -0
  177. package/dist/esm-es5/br-item.entry.js +6 -0
  178. package/dist/esm-es5/br-item.entry.js.map +1 -0
  179. package/dist/esm-es5/br-list.entry.js +6 -0
  180. package/dist/esm-es5/br-list.entry.js.map +1 -0
  181. package/dist/esm-es5/br-loading.entry.js +6 -0
  182. package/dist/esm-es5/br-loading.entry.js.map +1 -0
  183. package/dist/esm-es5/br-message.entry.js +6 -0
  184. package/dist/esm-es5/br-message.entry.js.map +1 -0
  185. package/dist/esm-es5/br-radio.entry.js +6 -0
  186. package/dist/esm-es5/br-radio.entry.js.map +1 -0
  187. package/dist/esm-es5/br-switch.entry.js +6 -0
  188. package/dist/esm-es5/br-switch.entry.js.map +1 -0
  189. package/dist/esm-es5/br-textarea.entry.js +6 -0
  190. package/dist/esm-es5/br-textarea.entry.js.map +1 -0
  191. package/dist/esm-es5/br-upload.entry.js +6 -0
  192. package/dist/esm-es5/br-upload.entry.js.map +1 -0
  193. package/dist/esm-es5/index-aab4a630.js +6 -0
  194. package/dist/esm-es5/index-aab4a630.js.map +1 -0
  195. package/dist/esm-es5/index.js +5 -0
  196. package/dist/esm-es5/index.js.map +1 -0
  197. package/dist/esm-es5/inherited-attributes-553a7c36.js +6 -0
  198. package/dist/esm-es5/inherited-attributes-553a7c36.js.map +1 -0
  199. package/dist/esm-es5/loader.js +6 -0
  200. package/dist/esm-es5/loader.js.map +1 -0
  201. package/dist/esm-es5/v4-c99c1585.js +6 -0
  202. package/dist/esm-es5/v4-c99c1585.js.map +1 -0
  203. package/dist/esm-es5/webcomponents.js +6 -0
  204. package/dist/esm-es5/webcomponents.js.map +1 -0
  205. package/dist/index.js +1 -1
  206. package/dist/playwright.config.js +4 -0
  207. package/dist/types/components/avatar/avatar.d.ts +8 -65
  208. package/dist/types/components/button/button.d.ts +1 -94
  209. package/dist/types/components/checkbox/checkbox.d.ts +4 -97
  210. package/dist/types/components/dropdown/dropdown.d.ts +0 -90
  211. package/dist/types/components/icon/icon.d.ts +2 -64
  212. package/dist/types/components/input/input.d.ts +10 -108
  213. package/dist/types/components/item/item.d.ts +1 -92
  214. package/dist/types/components/list/list.d.ts +2 -94
  215. package/dist/types/components/loading/loading.d.ts +0 -62
  216. package/dist/types/components/message/message.d.ts +2 -63
  217. package/dist/types/components/radio/radio.d.ts +4 -105
  218. package/dist/types/components/switch/switch.d.ts +2 -100
  219. package/dist/types/components/textarea/textarea.d.ts +9 -100
  220. package/dist/types/components.d.ts +79 -968
  221. package/dist/types/index.d.ts +10 -1
  222. package/dist/types/stencil-public-runtime.d.ts +6 -0
  223. package/dist/webcomponents/index.esm.js +4 -0
  224. package/dist/webcomponents/p-05343155.system.entry.js +6 -0
  225. package/dist/webcomponents/p-05343155.system.entry.js.map +1 -0
  226. package/dist/webcomponents/p-155191ea.entry.js +6 -0
  227. package/dist/webcomponents/{p-db9737b1.entry.js.map → p-155191ea.entry.js.map} +1 -1
  228. package/dist/webcomponents/p-183614c8.system.entry.js +6 -0
  229. package/dist/webcomponents/p-183614c8.system.entry.js.map +1 -0
  230. package/dist/webcomponents/p-2083ff7b.entry.js +6 -0
  231. package/dist/webcomponents/p-2083ff7b.entry.js.map +1 -0
  232. package/dist/webcomponents/p-24da392a.entry.js +6 -0
  233. package/dist/webcomponents/p-24da392a.entry.js.map +1 -0
  234. package/dist/webcomponents/p-254a2b7c.js +6 -0
  235. package/dist/webcomponents/{p-e1255160.js.map → p-254a2b7c.js.map} +1 -1
  236. package/dist/webcomponents/p-28aa7e4d.system.entry.js +6 -0
  237. package/dist/webcomponents/p-28aa7e4d.system.entry.js.map +1 -0
  238. package/dist/webcomponents/p-2c2c8629.js +7 -0
  239. package/dist/webcomponents/p-2c2c8629.js.map +1 -0
  240. package/dist/webcomponents/p-2cc63872.system.entry.js +6 -0
  241. package/dist/webcomponents/p-2cc63872.system.entry.js.map +1 -0
  242. package/dist/webcomponents/p-2cef0b07.system.entry.js +17 -0
  243. package/dist/webcomponents/p-2cef0b07.system.entry.js.map +1 -0
  244. package/dist/webcomponents/p-34cec0b3.system.entry.js +6 -0
  245. package/dist/webcomponents/p-34cec0b3.system.entry.js.map +1 -0
  246. package/dist/webcomponents/p-3c4dea67.entry.js +6 -0
  247. package/dist/webcomponents/p-3c4dea67.entry.js.map +1 -0
  248. package/dist/webcomponents/p-3f00a196.entry.js +6 -0
  249. package/dist/webcomponents/p-3f00a196.entry.js.map +1 -0
  250. package/dist/webcomponents/p-430afeb5.system.js +7 -0
  251. package/dist/webcomponents/p-430afeb5.system.js.map +1 -0
  252. package/dist/webcomponents/p-5539ffa8.entry.js +6 -0
  253. package/dist/webcomponents/p-5539ffa8.entry.js.map +1 -0
  254. package/dist/webcomponents/p-626fe2cb.entry.js +6 -0
  255. package/dist/webcomponents/p-626fe2cb.entry.js.map +1 -0
  256. package/dist/webcomponents/p-66b81760.entry.js +17 -0
  257. package/dist/webcomponents/p-66b81760.entry.js.map +1 -0
  258. package/dist/webcomponents/p-6a8226b3.system.entry.js +6 -0
  259. package/dist/webcomponents/p-6a8226b3.system.entry.js.map +1 -0
  260. package/dist/webcomponents/p-6e286eba.system.js +6 -0
  261. package/dist/webcomponents/p-6e286eba.system.js.map +1 -0
  262. package/dist/webcomponents/p-71be2e3f.system.entry.js +6 -0
  263. package/dist/webcomponents/p-71be2e3f.system.entry.js.map +1 -0
  264. package/dist/webcomponents/p-74a4eb38.js +6 -0
  265. package/dist/webcomponents/p-74a4eb38.js.map +1 -0
  266. package/dist/webcomponents/p-7a4e1265.system.entry.js +6 -0
  267. package/dist/webcomponents/p-7a4e1265.system.entry.js.map +1 -0
  268. package/dist/webcomponents/p-8039a644.system.entry.js +6 -0
  269. package/dist/webcomponents/p-8039a644.system.entry.js.map +1 -0
  270. package/dist/webcomponents/p-842b2513.entry.js +6 -0
  271. package/dist/webcomponents/p-842b2513.entry.js.map +1 -0
  272. package/dist/webcomponents/p-90e2e623.system.js +6 -0
  273. package/dist/webcomponents/p-90e2e623.system.js.map +1 -0
  274. package/dist/webcomponents/p-a71689a5.system.js +6 -0
  275. package/dist/webcomponents/p-a71689a5.system.js.map +1 -0
  276. package/dist/webcomponents/p-ae629243.system.entry.js +6 -0
  277. package/dist/webcomponents/p-ae629243.system.entry.js.map +1 -0
  278. package/dist/webcomponents/p-b88a5d9a.system.js +6 -0
  279. package/dist/webcomponents/p-b88a5d9a.system.js.map +1 -0
  280. package/dist/webcomponents/p-b9fd2bc0.system.entry.js +6 -0
  281. package/dist/webcomponents/p-b9fd2bc0.system.entry.js.map +1 -0
  282. package/dist/webcomponents/p-d5a8d30c.js +6 -0
  283. package/dist/webcomponents/p-d5a8d30c.js.map +1 -0
  284. package/dist/webcomponents/p-dcf41d91.entry.js +6 -0
  285. package/dist/webcomponents/p-dcf41d91.entry.js.map +1 -0
  286. package/dist/webcomponents/p-e027fca2.entry.js +6 -0
  287. package/dist/webcomponents/p-e027fca2.entry.js.map +1 -0
  288. package/dist/webcomponents/p-e751c991.system.js +6 -0
  289. package/dist/webcomponents/p-e751c991.system.js.map +1 -0
  290. package/dist/webcomponents/p-e8b5b14f.entry.js +6 -0
  291. package/dist/webcomponents/p-e8b5b14f.entry.js.map +1 -0
  292. package/dist/webcomponents/p-f5e674ba.system.entry.js +6 -0
  293. package/dist/webcomponents/p-f5e674ba.system.entry.js.map +1 -0
  294. package/dist/webcomponents/p-fd6c166e.entry.js +6 -0
  295. package/dist/webcomponents/p-fd6c166e.entry.js.map +1 -0
  296. package/dist/webcomponents/webcomponents.esm.js +5 -1
  297. package/dist/webcomponents/webcomponents.esm.js.map +1 -1
  298. package/dist/webcomponents/webcomponents.js +127 -0
  299. package/hydrate/index.d.ts +6 -0
  300. package/hydrate/index.js +677 -1100
  301. package/hydrate/index.mjs +677 -1100
  302. package/loader/cdn.js +6 -1
  303. package/loader/index.cjs.js +6 -1
  304. package/loader/index.es2017.js +5 -0
  305. package/loader/index.js +6 -1
  306. package/package.json +21 -24
  307. package/vscode-data.json +87 -44
  308. package/dist/cjs/app-globals-3a1e7e63.js +0 -7
  309. package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
  310. package/dist/cjs/index-a1cc4aa4.js.map +0 -1
  311. package/dist/cjs/inherited-attributes-61a2aff9.js.map +0 -1
  312. package/dist/cjs/v4-c23234d2.js.map +0 -1
  313. package/dist/collection/scripts/menu.js +0 -137
  314. package/dist/collection/scripts/pageLoader.js +0 -64
  315. package/dist/collection/scripts/utils.js +0 -16
  316. package/dist/components/p-14616bce.js +0 -68
  317. package/dist/components/p-14616bce.js.map +0 -1
  318. package/dist/components/p-62a01df5.js +0 -1518
  319. package/dist/components/p-62a01df5.js.map +0 -1
  320. package/dist/components/p-a56c657d.js +0 -2476
  321. package/dist/components/p-a56c657d.js.map +0 -1
  322. package/dist/components/p-beaf8009.js +0 -138
  323. package/dist/components/p-beaf8009.js.map +0 -1
  324. package/dist/components/p-ee6f4f3f.js +0 -101
  325. package/dist/components/p-ee6f4f3f.js.map +0 -1
  326. package/dist/esm/app-globals-0f993ce5.js +0 -5
  327. package/dist/esm/app-globals-0f993ce5.js.map +0 -1
  328. package/dist/esm/index-cad6e6c3.js.map +0 -1
  329. package/dist/esm/inherited-attributes-c856c729.js.map +0 -1
  330. package/dist/esm/v4-23648a96.js.map +0 -1
  331. package/dist/webcomponents/p-25712f0a.entry.js +0 -2
  332. package/dist/webcomponents/p-25712f0a.entry.js.map +0 -1
  333. package/dist/webcomponents/p-2a3b2fe1.entry.js +0 -2
  334. package/dist/webcomponents/p-2a3b2fe1.entry.js.map +0 -1
  335. package/dist/webcomponents/p-3448c201.entry.js +0 -2
  336. package/dist/webcomponents/p-3448c201.entry.js.map +0 -1
  337. package/dist/webcomponents/p-3cfb219d.entry.js +0 -2
  338. package/dist/webcomponents/p-3cfb219d.entry.js.map +0 -1
  339. package/dist/webcomponents/p-3e61ae83.entry.js +0 -2
  340. package/dist/webcomponents/p-3e61ae83.entry.js.map +0 -1
  341. package/dist/webcomponents/p-458544c2.entry.js +0 -2
  342. package/dist/webcomponents/p-458544c2.entry.js.map +0 -1
  343. package/dist/webcomponents/p-4b1451e2.entry.js +0 -2
  344. package/dist/webcomponents/p-4b1451e2.entry.js.map +0 -1
  345. package/dist/webcomponents/p-50a0b445.entry.js +0 -2
  346. package/dist/webcomponents/p-50a0b445.entry.js.map +0 -1
  347. package/dist/webcomponents/p-5a1212cc.entry.js +0 -2
  348. package/dist/webcomponents/p-5a1212cc.entry.js.map +0 -1
  349. package/dist/webcomponents/p-8dfeb926.js +0 -3
  350. package/dist/webcomponents/p-8dfeb926.js.map +0 -1
  351. package/dist/webcomponents/p-9c47096a.entry.js +0 -2
  352. package/dist/webcomponents/p-9c47096a.entry.js.map +0 -1
  353. package/dist/webcomponents/p-ae190c60.entry.js +0 -2
  354. package/dist/webcomponents/p-ae190c60.entry.js.map +0 -1
  355. package/dist/webcomponents/p-db9737b1.entry.js +0 -2
  356. package/dist/webcomponents/p-e1255160.js +0 -2
  357. package/dist/webcomponents/p-fa595e69.entry.js +0 -13
  358. package/dist/webcomponents/p-fa595e69.entry.js.map +0 -1
  359. /package/dist/collection/pages/{button/button.js → components/button/index.js} +0 -0
  360. /package/dist/collection/pages/{checkbox/checkbox.js → components/checkbox/index.js} +0 -0
  361. /package/dist/collection/pages/{dropdown/dropdown.js → components/dropdown/index.js} +0 -0
  362. /package/dist/collection/pages/{icon/icon.js → components/icon/index.js} +0 -0
  363. /package/dist/collection/pages/{input/input.js → components/input/index.js} +0 -0
  364. /package/dist/collection/pages/{item/item.js → components/item/index.js} +0 -0
  365. /package/dist/collection/pages/{list/list.js → components/list/index.js} +0 -0
  366. /package/dist/collection/pages/{message/message.js → components/message/index.js} +0 -0
  367. /package/dist/collection/pages/{radio/radio.js → components/radio/index.js} +0 -0
  368. /package/dist/collection/pages/{switch/switch.js → components/switch/index.js} +0 -0
  369. /package/dist/collection/pages/{textarea/textarea.js → components/textarea/index.js} +0 -0
@@ -1,3 +1,7 @@
1
+ /*!
2
+ * Construído com @govbr-ds/webcomponents
3
+ * Padrão Digital de Governo.
4
+ */
1
5
  import { Host, h } from "@stencil/core";
2
6
  /**
3
7
  * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/item?tab=designer).
@@ -36,7 +40,7 @@ export class Item {
36
40
  this.isButton = false;
37
41
  this.type = undefined;
38
42
  this.value = undefined;
39
- this.density = undefined;
43
+ this.density = 'medium';
40
44
  this.hasSlotDefault = false;
41
45
  this.hasSlotStart = false;
42
46
  this.hasSlotEnd = false;
@@ -48,9 +52,6 @@ export class Item {
48
52
  this.updateItemSelectionState();
49
53
  }
50
54
  }
51
- connectedCallback() {
52
- this.brDidConnect.emit();
53
- }
54
55
  componentWillLoad() {
55
56
  this.hasSlotContentDefault();
56
57
  this.hasSlotStart = this.hasSlotContent('start');
@@ -60,41 +61,9 @@ export class Item {
60
61
  this.type = this.type || 'button';
61
62
  }
62
63
  this.updateItemSelectionState();
63
- this.brWillLoad.emit();
64
64
  }
65
65
  componentDidLoad() {
66
66
  this.updateCheckboxes();
67
- this.brDidLoad.emit();
68
- }
69
- componentWillRender() {
70
- this.brWillRender.emit();
71
- }
72
- componentDidRender() {
73
- this.brDidRender.emit();
74
- }
75
- componentShouldUpdate() {
76
- this.brShouldUpdate.emit();
77
- }
78
- componentWillUpdate() {
79
- this.brWillUpdate.emit();
80
- }
81
- componentDidUpdate() {
82
- this.brDidUpdate.emit();
83
- }
84
- disconnectedCallback() {
85
- this.brDidDisconnect.emit();
86
- }
87
- formAssociatedCallback(form) {
88
- this.brFormAssociatedCallback.emit(form);
89
- }
90
- formDisabledCallback(disabled) {
91
- this.brFormDisabledCallback.emit(disabled);
92
- }
93
- formResetCallback() {
94
- this.brFormResetCallback.emit();
95
- }
96
- formStateRestoreCallback(state, _mode) {
97
- this.brFormStateRestoreCallback.emit([state, _mode]);
98
67
  }
99
68
  hasSlotContentDefault() {
100
69
  this.hasSlotDefault = this.el.innerHTML !== '';
@@ -108,7 +77,7 @@ export class Item {
108
77
  disabled: this.disabled,
109
78
  active: this.isActive,
110
79
  selected: this.selectedValue,
111
- 'py-3': this.density === 'middle',
80
+ 'py-3': this.density === 'medium',
112
81
  'py-4': this.density === 'small',
113
82
  };
114
83
  }
@@ -156,7 +125,7 @@ export class Item {
156
125
  const TagType = this.getTagType();
157
126
  const attributes = this.getAttributes();
158
127
  const classList = this.getCssClassMap();
159
- return (h(Host, { key: 'f81b3dfcc8a48125bad6cf90e3afed1cb1ba608d' }, h(TagType, Object.assign({ key: 'cfee9c8bdeee487a334dde46f0683f2399266ecb', class: classList }, attributes, { onClick: this.handleClick }), this.hasSlotStart || this.hasSlotEnd ? (h("div", { class: "row align-items-center" }, this.hasSlotStart && (h("div", { class: "col-auto" }, h("slot", { name: "start" }))), h("div", { class: "col" }, h("slot", null)), this.hasSlotEnd && (h("div", { class: "col-auto" }, h("slot", { name: "end" }))))) : (h("slot", null)))));
128
+ return (h(Host, { key: 'cd5aaacd053d2a3dcce81f2be4948a499b8165a2' }, h(TagType, Object.assign({ key: 'f6987c1b45458255f4008568cbeececc8d2f5548', class: classList }, attributes, { onClick: this.handleClick }), this.hasSlotStart || this.hasSlotEnd ? (h("div", { class: "row align-items-center" }, this.hasSlotStart && (h("div", { class: "col-auto" }, h("slot", { name: "start" }))), h("div", { class: "col" }, h("slot", null)), this.hasSlotEnd && (h("div", { class: "col-auto" }, h("slot", { name: "end" }))))) : (h("slot", null)))));
160
129
  }
161
130
  static get is() { return "br-item"; }
162
131
  static get encapsulation() { return "shadow"; }
@@ -335,8 +304,8 @@ export class Item {
335
304
  "type": "string",
336
305
  "mutable": false,
337
306
  "complexType": {
338
- "original": "'large' | 'middle' | 'small'",
339
- "resolved": "\"large\" | \"middle\" | \"small\"",
307
+ "original": "'large' | 'medium' | 'small'",
308
+ "resolved": "\"large\" | \"medium\" | \"small\"",
340
309
  "references": {}
341
310
  },
342
311
  "required": false,
@@ -346,7 +315,8 @@ export class Item {
346
315
  "text": "Ajusta a densidade, alterando o espa\u00E7amento interno para um visual mais compacto ou mais expandido."
347
316
  },
348
317
  "attribute": "density",
349
- "reflect": true
318
+ "reflect": true,
319
+ "defaultValue": "'medium'"
350
320
  }
351
321
  };
352
322
  }
@@ -389,218 +359,6 @@ export class Item {
389
359
  "resolved": "{ selected: boolean; }",
390
360
  "references": {}
391
361
  }
392
- }, {
393
- "method": "brDidConnect",
394
- "name": "brDidConnect",
395
- "bubbles": true,
396
- "cancelable": true,
397
- "composed": true,
398
- "docs": {
399
- "tags": [],
400
- "text": "Emite um evento quando o componente \u00E9 conectado ao DOM.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes."
401
- },
402
- "complexType": {
403
- "original": "void",
404
- "resolved": "void",
405
- "references": {}
406
- }
407
- }, {
408
- "method": "brWillLoad",
409
- "name": "brWillLoad",
410
- "bubbles": true,
411
- "cancelable": true,
412
- "composed": true,
413
- "docs": {
414
- "tags": [],
415
- "text": "Emite um evento antes que o componente seja carregado pela primeira vez.\nUtilize este evento para realizar tarefas de inicializa\u00E7\u00E3o antes do componente ser exibido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes."
416
- },
417
- "complexType": {
418
- "original": "void",
419
- "resolved": "void",
420
- "references": {}
421
- }
422
- }, {
423
- "method": "brDidLoad",
424
- "name": "brDidLoad",
425
- "bubbles": true,
426
- "cancelable": true,
427
- "composed": true,
428
- "docs": {
429
- "tags": [],
430
- "text": "Emite um evento ap\u00F3s o componente ter sido carregado pela primeira vez.\nUtilize este evento para realizar a\u00E7\u00F5es que devem ocorrer depois que o componente foi totalmente carregado.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidload) para mais detalhes."
431
- },
432
- "complexType": {
433
- "original": "void",
434
- "resolved": "void",
435
- "references": {}
436
- }
437
- }, {
438
- "method": "brWillRender",
439
- "name": "brWillRender",
440
- "bubbles": true,
441
- "cancelable": true,
442
- "composed": true,
443
- "docs": {
444
- "tags": [],
445
- "text": "Emite um evento antes do componente ser renderizado.\nUtilize este evento para preparar o componente antes de sua renderiza\u00E7\u00E3o.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes."
446
- },
447
- "complexType": {
448
- "original": "void",
449
- "resolved": "void",
450
- "references": {}
451
- }
452
- }, {
453
- "method": "brDidRender",
454
- "name": "brDidRender",
455
- "bubbles": true,
456
- "cancelable": true,
457
- "composed": true,
458
- "docs": {
459
- "tags": [],
460
- "text": "Emite um evento ap\u00F3s o componente ter sido renderizado.\nUtilize este evento para executar a\u00E7\u00F5es que devem ocorrer ap\u00F3s a renderiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes."
461
- },
462
- "complexType": {
463
- "original": "void",
464
- "resolved": "void",
465
- "references": {}
466
- }
467
- }, {
468
- "method": "brShouldUpdate",
469
- "name": "brShouldUpdate",
470
- "bubbles": true,
471
- "cancelable": true,
472
- "composed": true,
473
- "docs": {
474
- "tags": [],
475
- "text": "Emite um evento para indicar se o componente deve ser atualizado ou n\u00E3o.\nEste evento \u00E9 chamado antes de qualquer atualiza\u00E7\u00E3o do componente para decidir se a atualiza\u00E7\u00E3o deve prosseguir.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentshouldupdate) para mais detalhes."
476
- },
477
- "complexType": {
478
- "original": "void",
479
- "resolved": "void",
480
- "references": {}
481
- }
482
- }, {
483
- "method": "brWillUpdate",
484
- "name": "brWillUpdate",
485
- "bubbles": true,
486
- "cancelable": true,
487
- "composed": true,
488
- "docs": {
489
- "tags": [],
490
- "text": "Emite um evento antes de o componente ser atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es preparat\u00F3rias antes da atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes."
491
- },
492
- "complexType": {
493
- "original": "void",
494
- "resolved": "void",
495
- "references": {}
496
- }
497
- }, {
498
- "method": "brDidUpdate",
499
- "name": "brDidUpdate",
500
- "bubbles": true,
501
- "cancelable": true,
502
- "composed": true,
503
- "docs": {
504
- "tags": [],
505
- "text": "Emite um evento ap\u00F3s o componente ter sido atualizado.\nUtilize este evento para realizar a\u00E7\u00F5es ap\u00F3s a atualiza\u00E7\u00E3o do componente.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes."
506
- },
507
- "complexType": {
508
- "original": "void",
509
- "resolved": "void",
510
- "references": {}
511
- }
512
- }, {
513
- "method": "brDidDisconnect",
514
- "name": "brDidDisconnect",
515
- "bubbles": true,
516
- "cancelable": true,
517
- "composed": true,
518
- "docs": {
519
- "tags": [],
520
- "text": "Emite um evento quando o componente \u00E9 desconectado do DOM.\nUtilize este evento para realizar a limpeza ou outras a\u00E7\u00F5es necess\u00E1rias quando o componente \u00E9 removido.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes."
521
- },
522
- "complexType": {
523
- "original": "void",
524
- "resolved": "void",
525
- "references": {}
526
- }
527
- }, {
528
- "method": "brFormAssociatedCallback",
529
- "name": "brFormAssociatedCallback",
530
- "bubbles": true,
531
- "cancelable": true,
532
- "composed": true,
533
- "docs": {
534
- "tags": [{
535
- "name": "param",
536
- "text": "form - Dados do formul\u00E1rio associado."
537
- }],
538
- "text": "Emite um evento quando o componente \u00E9 associado ou removido de um `<form>`.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes."
539
- },
540
- "complexType": {
541
- "original": "FormData",
542
- "resolved": "FormData",
543
- "references": {
544
- "FormData": {
545
- "location": "global",
546
- "id": "global::FormData"
547
- }
548
- }
549
- }
550
- }, {
551
- "method": "brFormDisabledCallback",
552
- "name": "brFormDisabledCallback",
553
- "bubbles": true,
554
- "cancelable": true,
555
- "composed": true,
556
- "docs": {
557
- "tags": [{
558
- "name": "param",
559
- "text": "disabled - Novo estado `disabled` do componente dentro do formul\u00E1rio."
560
- }],
561
- "text": "Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informa\u00E7\u00F5es."
562
- },
563
- "complexType": {
564
- "original": "boolean",
565
- "resolved": "boolean",
566
- "references": {}
567
- }
568
- }, {
569
- "method": "brFormResetCallback",
570
- "name": "brFormResetCallback",
571
- "bubbles": true,
572
- "cancelable": true,
573
- "composed": true,
574
- "docs": {
575
- "tags": [],
576
- "text": "Emite um evento quando um `<form>` \u00E9 resetado.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes."
577
- },
578
- "complexType": {
579
- "original": "void",
580
- "resolved": "void",
581
- "references": {}
582
- }
583
- }, {
584
- "method": "brFormStateRestoreCallback",
585
- "name": "brFormStateRestoreCallback",
586
- "bubbles": true,
587
- "cancelable": true,
588
- "composed": true,
589
- "docs": {
590
- "tags": [{
591
- "name": "param",
592
- "text": "state - Estado restaurado do formul\u00E1rio."
593
- }, {
594
- "name": "param",
595
- "text": "_mode - Modo de preenchimento autom\u00E1tico do navegador."
596
- }],
597
- "text": "Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\nConsulte a documenta\u00E7\u00E3o do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informa\u00E7\u00F5es."
598
- },
599
- "complexType": {
600
- "original": "[state: string, _mode: string]",
601
- "resolved": "[state: string, _mode: string]",
602
- "references": {}
603
- }
604
362
  }];
605
363
  }
606
364
  static get elementRef() { return "el"; }
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/item/item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, h } from '@stencil/core'\nimport { Attributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/item?tab=designer).\n *\n * @slot default - Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).\n *\n * @slot start - Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.\n *\n * @slot end - Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.\n */\n@Component({\n tag: 'br-item',\n styleUrl: 'item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Item {\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: HTMLBrItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o item, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica se o item está no estado ativo.\n * Se definido como verdadeiro, o item será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Indica se o item está no estado selecionado.\n * Se definido como verdadeiro, o item será exibido como selecionado.\n */\n @Prop({ reflect: true }) isSelected: boolean = false\n\n /**\n * Marca o item como interativo, permitindo que toda a superfície do item seja clicável.\n */\n @Prop({ reflect: true }) isInteractive: boolean = false\n\n /**\n * URL ou caminho para o qual o usuário será direcionado ao clicar no item. Quando definido, o item será renderizado como um link.\n */\n @Prop({ reflect: true }) href?: string\n\n /**\n * Define o alvo do link quando `href` está presente. Pode ser:\n * - `_blank` para abrir em uma nova aba,\n * - `_self` para abrir na mesma aba,\n * - `_parent` para abrir na aba pai,\n * - `_top` para abrir na aba superior.\n */\n @Prop({ reflect: true }) target?: '_blank' | '_self' | '_parent' | '_top'\n\n /**\n * Quando definido como `true`, o item será tratado como um botão.\n */\n @Prop({ reflect: true }) isButton: boolean = false\n\n /**\n * Tipo do botão, aplicável apenas se `isButton` for `true`. Pode ser:\n * - `'submit'` para enviar um formulário,\n * - `'reset'` para redefinir um formulário,\n * - `'button'` para um botão padrão.\n */\n @Prop({ reflect: true, mutable: true }) type: 'submit' | 'reset' | 'button'\n\n /**\n * Define um valor associado ao br-item quando renderizado como um botão, utilizado em contextos de formulário.\n */\n @Prop({ reflect: true }) value?: string\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'middle' | 'small'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() hasSlotDefault: boolean = false\n\n @State() hasSlotStart: boolean = false\n\n @State() hasSlotEnd: boolean = false\n\n // Propriedade interna para armazenar o valor selecionado\n @State() selectedValue: boolean = false\n\n @Listen('brDidCheckedChange', { target: 'document' })\n handleChange(event: Event) {\n const target = event.target as HTMLElement\n\n if (this.el.contains(target)) {\n this.updateItemSelectionState()\n }\n }\n\n /**\n * Evento customizado emitido quando o item é clicado, aplicável apenas se o item for um botão (`<button>`).\n * Pode ser utilizado para ações personalizadas, exceto quando o item está desativado.\n */\n @Event({ composed: true, cancelable: true, bubbles: true }) brDidClick: EventEmitter\n\n /**\n * Evento customizado aplicável para todos os tipos de elementos (`div`, `button`, `a`), emitido quando o item é selecionado e desde que a propriedade `isInteractive` esteja presente.\n */\n @Event({ bubbles: true, composed: true }) brDidSelect: EventEmitter<{ selected: boolean }>\n\n /**\n * Emite um evento quando o componente é conectado ao DOM.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#connectedcallback) para mais detalhes.\n */\n @Event() brDidConnect: EventEmitter<void>\n connectedCallback() {\n this.brDidConnect.emit()\n }\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.hasSlotStart = this.hasSlotContent('start')\n this.hasSlotEnd = this.hasSlotContent('end')\n this.selectedValue = this.isSelected\n if (this.isButton) {\n this.type = this.type || 'button'\n }\n this.updateItemSelectionState()\n this.brWillLoad.emit()\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 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.updateCheckboxes()\n this.brDidLoad.emit()\n }\n\n /**\n * Emite um evento antes do componente ser renderizado.\n * Utilize este evento para preparar o componente antes de sua renderização.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillrender) para mais detalhes.\n */\n @Event() brWillRender: EventEmitter<void>\n componentWillRender() {\n this.brWillRender.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido renderizado.\n * Utilize este evento para executar ações que devem ocorrer após a renderização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidrender) para mais detalhes.\n */\n @Event() brDidRender: EventEmitter<void>\n componentDidRender() {\n this.brDidRender.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 componentShouldUpdate() {\n this.brShouldUpdate.emit()\n }\n\n /**\n * Emite um evento antes de o componente ser atualizado.\n * Utilize este evento para realizar ações preparatórias antes da atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillupdate) para mais detalhes.\n */\n @Event() brWillUpdate: EventEmitter<void>\n componentWillUpdate() {\n this.brWillUpdate.emit()\n }\n\n /**\n * Emite um evento após o componente ter sido atualizado.\n * Utilize este evento para realizar ações após a atualização do componente.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentdidupdate) para mais detalhes.\n */\n @Event() brDidUpdate: EventEmitter<void>\n componentDidUpdate() {\n this.brDidUpdate.emit()\n }\n\n /**\n * Emite um evento quando o componente é desconectado do DOM.\n * Utilize este evento para realizar a limpeza ou outras ações necessárias quando o componente é removido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#disconnectedcallback) para mais detalhes.\n */\n @Event() brDidDisconnect: EventEmitter<void>\n disconnectedCallback() {\n this.brDidDisconnect.emit()\n }\n\n /**\n * Emite um evento quando o componente é associado ou removido de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formassociatedcallback) para mais detalhes.\n *\n * @param form - Dados do formulário associado.\n */\n @Event() brFormAssociatedCallback: EventEmitter<FormData>\n formAssociatedCallback(form: FormData) {\n this.brFormAssociatedCallback.emit(form)\n }\n\n /**\n * Emite um evento quando o estado `disabled` do componente muda dentro de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formdisabledcallback) para mais informações.\n *\n * @param disabled - Novo estado `disabled` do componente dentro do formulário.\n */\n @Event() brFormDisabledCallback: EventEmitter<boolean>\n formDisabledCallback(disabled: boolean) {\n this.brFormDisabledCallback.emit(disabled)\n }\n\n /**\n * Emite um evento quando um `<form>` é resetado.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formresetcallback) para mais detalhes.\n */\n @Event() brFormResetCallback: EventEmitter<void>\n formResetCallback() {\n this.brFormResetCallback.emit()\n }\n\n /**\n * Emite um evento quando o navegador preenche automaticamente os campos de um `<form>`.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/form-associated#formstaterestorecallback) para mais informações.\n *\n * @param state - Estado restaurado do formulário.\n * @param _mode - Modo de preenchimento automático do navegador.\n */\n @Event() brFormStateRestoreCallback: EventEmitter<[state: string, _mode: string]>\n formStateRestoreCallback(state: string, _mode: string) {\n this.brFormStateRestoreCallback.emit([state, _mode])\n }\n\n private hasSlotContentDefault(): any {\n this.hasSlotDefault = this.el.innerHTML !== ''\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-item': true,\n disabled: this.disabled,\n active: this.isActive,\n selected: this.selectedValue,\n 'py-3': this.density === 'middle',\n 'py-4': this.density === 'small',\n }\n }\n\n private readonly inheritedAttributes: Attributes = {}\n\n private getTagType(): string {\n if (this.isButton) {\n return 'button'\n }\n if (this.href?.length > 0) {\n return 'a'\n }\n return 'div'\n }\n\n private getAttributes() {\n const TagType = this.getTagType()\n const baseAttributes =\n TagType === 'button' ? { type: this.type, value: this.value } : { href: this.href, target: this.target }\n\n return {\n ...baseAttributes,\n 'aria-disabled': this.disabled ? 'true' : null,\n 'aria-current': this.isActive ? 'true' : null,\n 'data-toggle': this.isInteractive ? 'selection' : null,\n ...this.inheritedAttributes,\n }\n }\n\n private updateItemSelectionState() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n const radios = Array.from(this.el.querySelectorAll('br-radio'))\n\n let isAnyCheckboxChecked = false\n let isAnyRadioSelected = false\n\n if (checkboxes.length > 0) {\n isAnyCheckboxChecked = checkboxes.some((cb) => cb.checked)\n }\n if (radios.length > 0) {\n isAnyRadioSelected = radios.some((radio) => radio.checked)\n }\n\n this.selectedValue = isAnyCheckboxChecked || isAnyRadioSelected\n }\n\n // Função para verificar se o clique foi dentro do slot do item.\n private isClickInsideInteractiveElement(target: HTMLElement): boolean {\n const interactiveSelectors = 'br-checkbox, br-radio, br-input, br-button, br-select, br-textarea'\n const interactiveElements = this.el.querySelectorAll(interactiveSelectors)\n return Array.from(interactiveElements).some((el) => el.contains(target) || target === el)\n }\n\n private updateCheckboxes() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkboxes.forEach((checkbox) => {\n checkbox.checked = this.selectedValue\n })\n }\n\n private readonly handleClick = (event: MouseEvent) => {\n const clickedElement = event.target as HTMLElement\n\n if (this.disabled) {\n event.preventDefault()\n event.stopPropagation()\n }\n\n if (this.isButton) {\n this.brDidClick.emit()\n } else if (this.isInteractive && !this.isClickInsideInteractiveElement(clickedElement)) {\n this.selectedValue = !this.selectedValue\n this.brDidSelect.emit({ selected: this.selectedValue })\n this.updateCheckboxes()\n }\n event.stopPropagation()\n }\n\n render() {\n const TagType = this.getTagType()\n const attributes = this.getAttributes()\n const classList = this.getCssClassMap()\n return (\n <Host>\n <TagType class={classList} {...attributes} onClick={this.handleClick}>\n {this.hasSlotStart || this.hasSlotEnd ? (\n <div class=\"row align-items-center\">\n {this.hasSlotStart && (\n <div class=\"col-auto\">\n <slot name=\"start\"></slot>\n </div>\n )}\n\n <div class=\"col\">\n <slot></slot>\n </div>\n\n {this.hasSlotEnd && (\n <div class=\"col-auto\">\n <slot name=\"end\"></slot>\n </div>\n )}\n </div>\n ) : (\n <slot></slot>\n )}\n </TagType>\n </Host>\n )\n }\n}\n"]}
1
+ {"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/item/item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Listen, Prop, State, h } from '@stencil/core'\nimport { Attributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/item?tab=designer).\n *\n * @slot default - Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).\n *\n * @slot start - Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.\n *\n * @slot end - Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.\n */\n@Component({\n tag: 'br-item',\n styleUrl: 'item.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Item {\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: HTMLBrItemElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o item, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Indica se o item está no estado ativo.\n * Se definido como verdadeiro, o item será exibido como ativo.\n */\n @Prop({ reflect: true }) isActive: boolean = false\n\n /**\n * Indica se o item está no estado selecionado.\n * Se definido como verdadeiro, o item será exibido como selecionado.\n */\n @Prop({ reflect: true }) isSelected: boolean = false\n\n /**\n * Marca o item como interativo, permitindo que toda a superfície do item seja clicável.\n */\n @Prop({ reflect: true }) isInteractive: boolean = false\n\n /**\n * URL ou caminho para o qual o usuário será direcionado ao clicar no item. Quando definido, o item será renderizado como um link.\n */\n @Prop({ reflect: true }) href?: string\n\n /**\n * Define o alvo do link quando `href` está presente. Pode ser:\n * - `_blank` para abrir em uma nova aba,\n * - `_self` para abrir na mesma aba,\n * - `_parent` para abrir na aba pai,\n * - `_top` para abrir na aba superior.\n */\n @Prop({ reflect: true }) target?: '_blank' | '_self' | '_parent' | '_top'\n\n /**\n * Quando definido como `true`, o item será tratado como um botão.\n */\n @Prop({ reflect: true }) isButton: boolean = false\n\n /**\n * Tipo do botão, aplicável apenas se `isButton` for `true`. Pode ser:\n * - `'submit'` para enviar um formulário,\n * - `'reset'` para redefinir um formulário,\n * - `'button'` para um botão padrão.\n */\n @Prop({ reflect: true, mutable: true }) type: 'submit' | 'reset' | 'button'\n\n /**\n * Define um valor associado ao br-item quando renderizado como um botão, utilizado em contextos de formulário.\n */\n @Prop({ reflect: true }) value?: string\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = 'medium'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() hasSlotDefault: boolean = false\n\n @State() hasSlotStart: boolean = false\n\n @State() hasSlotEnd: boolean = false\n\n // Propriedade interna para armazenar o valor selecionado\n @State() selectedValue: boolean = false\n\n @Listen('brDidCheckedChange', { target: 'document' })\n handleChange(event: Event) {\n const target = event.target as HTMLElement\n\n if (this.el.contains(target)) {\n this.updateItemSelectionState()\n }\n }\n\n /**\n * Evento customizado emitido quando o item é clicado, aplicável apenas se o item for um botão (`<button>`).\n * Pode ser utilizado para ações personalizadas, exceto quando o item está desativado.\n */\n @Event({ composed: true, cancelable: true, bubbles: true }) brDidClick: EventEmitter\n\n /**\n * Evento customizado aplicável para todos os tipos de elementos (`div`, `button`, `a`), emitido quando o item é selecionado e desde que a propriedade `isInteractive` esteja presente.\n */\n @Event({ bubbles: true, composed: true }) brDidSelect: EventEmitter<{ selected: boolean }>\n\n componentWillLoad() {\n this.hasSlotContentDefault()\n this.hasSlotStart = this.hasSlotContent('start')\n this.hasSlotEnd = this.hasSlotContent('end')\n this.selectedValue = this.isSelected\n if (this.isButton) {\n this.type = this.type || 'button'\n }\n this.updateItemSelectionState()\n }\n\n componentDidLoad() {\n this.updateCheckboxes()\n }\n\n private hasSlotContentDefault(): any {\n this.hasSlotDefault = this.el.innerHTML !== ''\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-item': true,\n disabled: this.disabled,\n active: this.isActive,\n selected: this.selectedValue,\n 'py-3': this.density === 'medium',\n 'py-4': this.density === 'small',\n }\n }\n\n private readonly inheritedAttributes: Attributes = {}\n\n private getTagType(): string {\n if (this.isButton) {\n return 'button'\n }\n if (this.href?.length > 0) {\n return 'a'\n }\n return 'div'\n }\n\n private getAttributes() {\n const TagType = this.getTagType()\n const baseAttributes =\n TagType === 'button' ? { type: this.type, value: this.value } : { href: this.href, target: this.target }\n\n return {\n ...baseAttributes,\n 'aria-disabled': this.disabled ? 'true' : null,\n 'aria-current': this.isActive ? 'true' : null,\n 'data-toggle': this.isInteractive ? 'selection' : null,\n ...this.inheritedAttributes,\n }\n }\n\n private updateItemSelectionState() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n const radios = Array.from(this.el.querySelectorAll('br-radio'))\n\n let isAnyCheckboxChecked = false\n let isAnyRadioSelected = false\n\n if (checkboxes.length > 0) {\n isAnyCheckboxChecked = checkboxes.some((cb) => cb.checked)\n }\n if (radios.length > 0) {\n isAnyRadioSelected = radios.some((radio) => radio.checked)\n }\n\n this.selectedValue = isAnyCheckboxChecked || isAnyRadioSelected\n }\n\n // Função para verificar se o clique foi dentro do slot do item.\n private isClickInsideInteractiveElement(target: HTMLElement): boolean {\n const interactiveSelectors = 'br-checkbox, br-radio, br-input, br-button, br-select, br-textarea'\n const interactiveElements = this.el.querySelectorAll(interactiveSelectors)\n return Array.from(interactiveElements).some((el) => el.contains(target) || target === el)\n }\n\n private updateCheckboxes() {\n const checkboxes = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkboxes.forEach((checkbox) => {\n checkbox.checked = this.selectedValue\n })\n }\n\n private readonly handleClick = (event: MouseEvent) => {\n const clickedElement = event.target as HTMLElement\n\n if (this.disabled) {\n event.preventDefault()\n event.stopPropagation()\n }\n\n if (this.isButton) {\n this.brDidClick.emit()\n } else if (this.isInteractive && !this.isClickInsideInteractiveElement(clickedElement)) {\n this.selectedValue = !this.selectedValue\n this.brDidSelect.emit({ selected: this.selectedValue })\n this.updateCheckboxes()\n }\n event.stopPropagation()\n }\n\n render() {\n const TagType = this.getTagType()\n const attributes = this.getAttributes()\n const classList = this.getCssClassMap()\n return (\n <Host>\n <TagType class={classList} {...attributes} onClick={this.handleClick}>\n {this.hasSlotStart || this.hasSlotEnd ? (\n <div class=\"row align-items-center\">\n {this.hasSlotStart && (\n <div class=\"col-auto\">\n <slot name=\"start\"></slot>\n </div>\n )}\n\n <div class=\"col\">\n <slot></slot>\n </div>\n\n {this.hasSlotEnd && (\n <div class=\"col-auto\">\n <slot name=\"end\"></slot>\n </div>\n )}\n </div>\n ) : (\n <slot></slot>\n )}\n </TagType>\n </Host>\n )\n }\n}\n"]}