voa-ds-core 1.0.4

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 (782) hide show
  1. package/dist/cjs/icons-zJ6d3Dsx.js +43 -0
  2. package/dist/cjs/icons-zJ6d3Dsx.js.map +1 -0
  3. package/dist/cjs/index-TzstRlIU.js +1895 -0
  4. package/dist/cjs/index-TzstRlIU.js.map +1 -0
  5. package/dist/cjs/index.cjs.js +3 -0
  6. package/dist/cjs/index.cjs.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +13 -0
  8. package/dist/cjs/loader.cjs.js.map +1 -0
  9. package/dist/cjs/voa-accordion.cjs.entry.js +75 -0
  10. package/dist/cjs/voa-accordion.entry.cjs.js.map +1 -0
  11. package/dist/cjs/voa-alert.cjs.entry.js +73 -0
  12. package/dist/cjs/voa-alert.entry.cjs.js.map +1 -0
  13. package/dist/cjs/voa-avatar.cjs.entry.js +80 -0
  14. package/dist/cjs/voa-avatar.entry.cjs.js.map +1 -0
  15. package/dist/cjs/voa-badge.cjs.entry.js +99 -0
  16. package/dist/cjs/voa-badge.entry.cjs.js.map +1 -0
  17. package/dist/cjs/voa-breadcrumbs-divider.cjs.entry.js +40 -0
  18. package/dist/cjs/voa-breadcrumbs-divider.entry.cjs.js.map +1 -0
  19. package/dist/cjs/voa-breadcrumbs-item.cjs.entry.js +27 -0
  20. package/dist/cjs/voa-breadcrumbs-item.entry.cjs.js.map +1 -0
  21. package/dist/cjs/voa-breadcrumbs.cjs.entry.js +26 -0
  22. package/dist/cjs/voa-breadcrumbs.entry.cjs.js.map +1 -0
  23. package/dist/cjs/voa-button.cjs.entry.js +90 -0
  24. package/dist/cjs/voa-button.entry.cjs.js.map +1 -0
  25. package/dist/cjs/voa-card.cjs.entry.js +18 -0
  26. package/dist/cjs/voa-card.entry.cjs.js.map +1 -0
  27. package/dist/cjs/voa-checkbox.cjs.entry.js +124 -0
  28. package/dist/cjs/voa-checkbox.entry.cjs.js.map +1 -0
  29. package/dist/cjs/voa-container-multi-select.cjs.entry.js +90 -0
  30. package/dist/cjs/voa-container-multi-select.entry.cjs.js.map +1 -0
  31. package/dist/cjs/voa-datepicker.cjs.entry.js +22 -0
  32. package/dist/cjs/voa-datepicker.entry.cjs.js.map +1 -0
  33. package/dist/cjs/voa-drawer.cjs.entry.js +23 -0
  34. package/dist/cjs/voa-drawer.entry.cjs.js.map +1 -0
  35. package/dist/cjs/voa-dropdown.cjs.entry.js +27 -0
  36. package/dist/cjs/voa-dropdown.entry.cjs.js.map +1 -0
  37. package/dist/cjs/voa-input-addon.cjs.entry.js +123 -0
  38. package/dist/cjs/voa-input-addon.entry.cjs.js.map +1 -0
  39. package/dist/cjs/voa-input.cjs.entry.js +191 -0
  40. package/dist/cjs/voa-input.entry.cjs.js.map +1 -0
  41. package/dist/cjs/voa-keybinding.cjs.entry.js +30 -0
  42. package/dist/cjs/voa-keybinding.entry.cjs.js.map +1 -0
  43. package/dist/cjs/voa-link.cjs.entry.js +19 -0
  44. package/dist/cjs/voa-link.entry.cjs.js.map +1 -0
  45. package/dist/cjs/voa-list.cjs.entry.js +19 -0
  46. package/dist/cjs/voa-list.entry.cjs.js.map +1 -0
  47. package/dist/cjs/voa-modal.cjs.entry.js +23 -0
  48. package/dist/cjs/voa-modal.entry.cjs.js.map +1 -0
  49. package/dist/cjs/voa-option.cjs.entry.js +85 -0
  50. package/dist/cjs/voa-option.entry.cjs.js.map +1 -0
  51. package/dist/cjs/voa-pagination-item.cjs.entry.js +53 -0
  52. package/dist/cjs/voa-pagination-item.entry.cjs.js.map +1 -0
  53. package/dist/cjs/voa-pagination.cjs.entry.js +82 -0
  54. package/dist/cjs/voa-pagination.entry.cjs.js.map +1 -0
  55. package/dist/cjs/voa-progress.cjs.entry.js +19 -0
  56. package/dist/cjs/voa-progress.entry.cjs.js.map +1 -0
  57. package/dist/cjs/voa-radio.cjs.entry.js +61 -0
  58. package/dist/cjs/voa-radio.entry.cjs.js.map +1 -0
  59. package/dist/cjs/voa-select-base.cjs.entry.js +177 -0
  60. package/dist/cjs/voa-select-base.entry.cjs.js.map +1 -0
  61. package/dist/cjs/voa-select.cjs.entry.js +142 -0
  62. package/dist/cjs/voa-select.entry.cjs.js.map +1 -0
  63. package/dist/cjs/voa-skeleton.cjs.entry.js +24 -0
  64. package/dist/cjs/voa-skeleton.entry.cjs.js.map +1 -0
  65. package/dist/cjs/voa-stepper.cjs.entry.js +26 -0
  66. package/dist/cjs/voa-stepper.entry.cjs.js.map +1 -0
  67. package/dist/cjs/voa-switch.cjs.entry.js +107 -0
  68. package/dist/cjs/voa-switch.entry.cjs.js.map +1 -0
  69. package/dist/cjs/voa-tab-item.cjs.entry.js +85 -0
  70. package/dist/cjs/voa-tab-item.entry.cjs.js.map +1 -0
  71. package/dist/cjs/voa-tab.cjs.entry.js +129 -0
  72. package/dist/cjs/voa-tab.entry.cjs.js.map +1 -0
  73. package/dist/cjs/voa-table.cjs.entry.js +20 -0
  74. package/dist/cjs/voa-table.entry.cjs.js.map +1 -0
  75. package/dist/cjs/voa-tag.cjs.entry.js +45 -0
  76. package/dist/cjs/voa-tag.entry.cjs.js.map +1 -0
  77. package/dist/cjs/voa-text-area.cjs.entry.js +118 -0
  78. package/dist/cjs/voa-text-area.entry.cjs.js.map +1 -0
  79. package/dist/cjs/voa-timepicker.cjs.entry.js +18 -0
  80. package/dist/cjs/voa-timepicker.entry.cjs.js.map +1 -0
  81. package/dist/cjs/voa-tooltip-arrow.cjs.entry.js +32 -0
  82. package/dist/cjs/voa-tooltip-arrow.entry.cjs.js.map +1 -0
  83. package/dist/cjs/voa-tooltip.cjs.entry.js +78 -0
  84. package/dist/cjs/voa-tooltip.entry.cjs.js.map +1 -0
  85. package/dist/cjs/voa-upload.cjs.entry.js +18 -0
  86. package/dist/cjs/voa-upload.entry.cjs.js.map +1 -0
  87. package/dist/cjs/voa.cjs.js +25 -0
  88. package/dist/cjs/voa.cjs.js.map +1 -0
  89. package/dist/collection/Stories/SaasDashboard.stories.js +527 -0
  90. package/dist/collection/Stories/SaasDashboard.stories.js.map +1 -0
  91. package/dist/collection/Stories/styles/voa-radio.styles.js +155 -0
  92. package/dist/collection/Stories/styles/voa-radio.styles.js.map +1 -0
  93. package/dist/collection/collection-manifest.json +50 -0
  94. package/dist/collection/components/GetStarted/AddingNewBrand.stories.js +214 -0
  95. package/dist/collection/components/GetStarted/AddingNewBrand.stories.js.map +1 -0
  96. package/dist/collection/components/GetStarted/ComoUsar.stories.js +457 -0
  97. package/dist/collection/components/GetStarted/ComoUsar.stories.js.map +1 -0
  98. package/dist/collection/components/GetStarted/GetStarted.stories.js +202 -0
  99. package/dist/collection/components/GetStarted/GetStarted.stories.js.map +1 -0
  100. package/dist/collection/components/SaasDashboard/SaasDashboard.stories.js +693 -0
  101. package/dist/collection/components/SaasDashboard/SaasDashboard.stories.js.map +1 -0
  102. package/dist/collection/components/Theme/ThemeProvider.js +71 -0
  103. package/dist/collection/components/Theme/ThemeProvider.js.map +1 -0
  104. package/dist/collection/components/Theme/generate-css-variables.js +32 -0
  105. package/dist/collection/components/Theme/generate-css-variables.js.map +1 -0
  106. package/dist/collection/components/voa-accordion/voa-accordion.css +75 -0
  107. package/dist/collection/components/voa-accordion/voa-accordion.js +188 -0
  108. package/dist/collection/components/voa-accordion/voa-accordion.js.map +1 -0
  109. package/dist/collection/components/voa-accordion/voa-accordion.stories.js +332 -0
  110. package/dist/collection/components/voa-accordion/voa-accordion.stories.js.map +1 -0
  111. package/dist/collection/components/voa-alert/voa-alert.css +78 -0
  112. package/dist/collection/components/voa-alert/voa-alert.js +342 -0
  113. package/dist/collection/components/voa-alert/voa-alert.js.map +1 -0
  114. package/dist/collection/components/voa-alert/voa-alert.stories.js +495 -0
  115. package/dist/collection/components/voa-alert/voa-alert.stories.js.map +1 -0
  116. package/dist/collection/components/voa-avatar/voa-avatar.css +103 -0
  117. package/dist/collection/components/voa-avatar/voa-avatar.js +221 -0
  118. package/dist/collection/components/voa-avatar/voa-avatar.js.map +1 -0
  119. package/dist/collection/components/voa-avatar/voa-avatar.stories.js +423 -0
  120. package/dist/collection/components/voa-avatar/voa-avatar.stories.js.map +1 -0
  121. package/dist/collection/components/voa-badge/voa-badge.css +59 -0
  122. package/dist/collection/components/voa-badge/voa-badge.js +266 -0
  123. package/dist/collection/components/voa-badge/voa-badge.js.map +1 -0
  124. package/dist/collection/components/voa-badge/voa-badge.stories.js +387 -0
  125. package/dist/collection/components/voa-badge/voa-badge.stories.js.map +1 -0
  126. package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.css +29 -0
  127. package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.js +58 -0
  128. package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.js.map +1 -0
  129. package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.stories.js +410 -0
  130. package/dist/collection/components/voa-breadcrumbs/voa-breadcrumbs.stories.js.map +1 -0
  131. package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.css +39 -0
  132. package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.js +77 -0
  133. package/dist/collection/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.js.map +1 -0
  134. package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.css +62 -0
  135. package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.js +92 -0
  136. package/dist/collection/components/voa-breadcrumbs-item/voa-breadcrumbs-item.js.map +1 -0
  137. package/dist/collection/components/voa-button/voa-button.css +95 -0
  138. package/dist/collection/components/voa-button/voa-button.js +292 -0
  139. package/dist/collection/components/voa-button/voa-button.js.map +1 -0
  140. package/dist/collection/components/voa-button/voa-button.stories.js +435 -0
  141. package/dist/collection/components/voa-button/voa-button.stories.js.map +1 -0
  142. package/dist/collection/components/voa-card/voa-card.css +22 -0
  143. package/dist/collection/components/voa-card/voa-card.js +19 -0
  144. package/dist/collection/components/voa-card/voa-card.js.map +1 -0
  145. package/dist/collection/components/voa-card/voa-card.stories.js +270 -0
  146. package/dist/collection/components/voa-card/voa-card.stories.js.map +1 -0
  147. package/dist/collection/components/voa-checkbox/voa-checkbox.css +75 -0
  148. package/dist/collection/components/voa-checkbox/voa-checkbox.js +275 -0
  149. package/dist/collection/components/voa-checkbox/voa-checkbox.js.map +1 -0
  150. package/dist/collection/components/voa-checkbox/voa-checkbox.stories.js +377 -0
  151. package/dist/collection/components/voa-checkbox/voa-checkbox.stories.js.map +1 -0
  152. package/dist/collection/components/voa-datepicker/datepicker.css +7 -0
  153. package/dist/collection/components/voa-datepicker/datepicker.js +53 -0
  154. package/dist/collection/components/voa-datepicker/datepicker.js.map +1 -0
  155. package/dist/collection/components/voa-datepicker/datepicker.stories.js +23 -0
  156. package/dist/collection/components/voa-datepicker/datepicker.stories.js.map +1 -0
  157. package/dist/collection/components/voa-drawer/drawer.css +16 -0
  158. package/dist/collection/components/voa-drawer/drawer.js +55 -0
  159. package/dist/collection/components/voa-drawer/drawer.js.map +1 -0
  160. package/dist/collection/components/voa-drawer/drawer.stories.js +25 -0
  161. package/dist/collection/components/voa-drawer/drawer.stories.js.map +1 -0
  162. package/dist/collection/components/voa-dropdown/dropdown.css +36 -0
  163. package/dist/collection/components/voa-dropdown/dropdown.js +58 -0
  164. package/dist/collection/components/voa-dropdown/dropdown.js.map +1 -0
  165. package/dist/collection/components/voa-dropdown/dropdown.stories.js +23 -0
  166. package/dist/collection/components/voa-dropdown/dropdown.stories.js.map +1 -0
  167. package/dist/collection/components/voa-input/voa-input.css +90 -0
  168. package/dist/collection/components/voa-input/voa-input.js +640 -0
  169. package/dist/collection/components/voa-input/voa-input.js.map +1 -0
  170. package/dist/collection/components/voa-input/voa-input.stories.js +448 -0
  171. package/dist/collection/components/voa-input/voa-input.stories.js.map +1 -0
  172. package/dist/collection/components/voa-input-addon/voa-input-addon.css +58 -0
  173. package/dist/collection/components/voa-input-addon/voa-input-addon.js +346 -0
  174. package/dist/collection/components/voa-input-addon/voa-input-addon.js.map +1 -0
  175. package/dist/collection/components/voa-input-addon/voa-input-addon.stories.js +380 -0
  176. package/dist/collection/components/voa-input-addon/voa-input-addon.stories.js.map +1 -0
  177. package/dist/collection/components/voa-keybinding/voa-keybinding.css +25 -0
  178. package/dist/collection/components/voa-keybinding/voa-keybinding.js +87 -0
  179. package/dist/collection/components/voa-keybinding/voa-keybinding.js.map +1 -0
  180. package/dist/collection/components/voa-keybinding/voa-keybinding.stories.js +241 -0
  181. package/dist/collection/components/voa-keybinding/voa-keybinding.stories.js.map +1 -0
  182. package/dist/collection/components/voa-link/link.css +9 -0
  183. package/dist/collection/components/voa-link/link.js +65 -0
  184. package/dist/collection/components/voa-link/link.js.map +1 -0
  185. package/dist/collection/components/voa-link/link.stories.js +21 -0
  186. package/dist/collection/components/voa-link/link.stories.js.map +1 -0
  187. package/dist/collection/components/voa-list/list.css +14 -0
  188. package/dist/collection/components/voa-list/list.js +44 -0
  189. package/dist/collection/components/voa-list/list.js.map +1 -0
  190. package/dist/collection/components/voa-list/list.stories.js +16 -0
  191. package/dist/collection/components/voa-list/list.stories.js.map +1 -0
  192. package/dist/collection/components/voa-modal/modal.css +40 -0
  193. package/dist/collection/components/voa-modal/modal.js +55 -0
  194. package/dist/collection/components/voa-modal/modal.js.map +1 -0
  195. package/dist/collection/components/voa-modal/modal.stories.js +18 -0
  196. package/dist/collection/components/voa-modal/modal.stories.js.map +1 -0
  197. package/dist/collection/components/voa-option/voa-option.css +55 -0
  198. package/dist/collection/components/voa-option/voa-option.js +222 -0
  199. package/dist/collection/components/voa-option/voa-option.js.map +1 -0
  200. package/dist/collection/components/voa-option/voa-option.stories.js +581 -0
  201. package/dist/collection/components/voa-option/voa-option.stories.js.map +1 -0
  202. package/dist/collection/components/voa-pagination/voa-pagination-item.css +34 -0
  203. package/dist/collection/components/voa-pagination/voa-pagination-item.js +137 -0
  204. package/dist/collection/components/voa-pagination/voa-pagination-item.js.map +1 -0
  205. package/dist/collection/components/voa-pagination/voa-pagination.css +20 -0
  206. package/dist/collection/components/voa-pagination/voa-pagination.js +174 -0
  207. package/dist/collection/components/voa-pagination/voa-pagination.js.map +1 -0
  208. package/dist/collection/components/voa-pagination/voa-pagination.stories.js +257 -0
  209. package/dist/collection/components/voa-pagination/voa-pagination.stories.js.map +1 -0
  210. package/dist/collection/components/voa-progress/progress.css +12 -0
  211. package/dist/collection/components/voa-progress/progress.js +46 -0
  212. package/dist/collection/components/voa-progress/progress.js.map +1 -0
  213. package/dist/collection/components/voa-progress/progress.stories.js +16 -0
  214. package/dist/collection/components/voa-progress/progress.stories.js.map +1 -0
  215. package/dist/collection/components/voa-radio/voa-radio.css +82 -0
  216. package/dist/collection/components/voa-radio/voa-radio.js +227 -0
  217. package/dist/collection/components/voa-radio/voa-radio.js.map +1 -0
  218. package/dist/collection/components/voa-radio/voa-radio.stories.js +363 -0
  219. package/dist/collection/components/voa-radio/voa-radio.stories.js.map +1 -0
  220. package/dist/collection/components/voa-select/voa-container-multi-select.css +177 -0
  221. package/dist/collection/components/voa-select/voa-container-multi-select.js +192 -0
  222. package/dist/collection/components/voa-select/voa-container-multi-select.js.map +1 -0
  223. package/dist/collection/components/voa-select/voa-container-multi-select.stories.js +218 -0
  224. package/dist/collection/components/voa-select/voa-container-multi-select.stories.js.map +1 -0
  225. package/dist/collection/components/voa-select/voa-select-base.css +170 -0
  226. package/dist/collection/components/voa-select/voa-select-base.js +357 -0
  227. package/dist/collection/components/voa-select/voa-select-base.js.map +1 -0
  228. package/dist/collection/components/voa-select/voa-select.css +109 -0
  229. package/dist/collection/components/voa-select/voa-select.js +449 -0
  230. package/dist/collection/components/voa-select/voa-select.js.map +1 -0
  231. package/dist/collection/components/voa-select/voa-select.stories.js +581 -0
  232. package/dist/collection/components/voa-select/voa-select.stories.js.map +1 -0
  233. package/dist/collection/components/voa-skeleton/skeleton.css +30 -0
  234. package/dist/collection/components/voa-skeleton/skeleton.js +90 -0
  235. package/dist/collection/components/voa-skeleton/skeleton.js.map +1 -0
  236. package/dist/collection/components/voa-skeleton/skeleton.stories.js +36 -0
  237. package/dist/collection/components/voa-skeleton/skeleton.stories.js.map +1 -0
  238. package/dist/collection/components/voa-stepper/stepper.css +23 -0
  239. package/dist/collection/components/voa-stepper/stepper.js +93 -0
  240. package/dist/collection/components/voa-stepper/stepper.js.map +1 -0
  241. package/dist/collection/components/voa-stepper/stepper.stories.js +21 -0
  242. package/dist/collection/components/voa-stepper/stepper.stories.js.map +1 -0
  243. package/dist/collection/components/voa-switch/voa-switch.css +81 -0
  244. package/dist/collection/components/voa-switch/voa-switch.js +232 -0
  245. package/dist/collection/components/voa-switch/voa-switch.js.map +1 -0
  246. package/dist/collection/components/voa-switch/voa-switch.stories.js +359 -0
  247. package/dist/collection/components/voa-switch/voa-switch.stories.js.map +1 -0
  248. package/dist/collection/components/voa-tab/voa-tab.css +32 -0
  249. package/dist/collection/components/voa-tab/voa-tab.js +209 -0
  250. package/dist/collection/components/voa-tab/voa-tab.js.map +1 -0
  251. package/dist/collection/components/voa-tab/voa-tab.stories.js +405 -0
  252. package/dist/collection/components/voa-tab/voa-tab.stories.js.map +1 -0
  253. package/dist/collection/components/voa-tab-item/voa-tab-item.css +52 -0
  254. package/dist/collection/components/voa-tab-item/voa-tab-item.js +261 -0
  255. package/dist/collection/components/voa-tab-item/voa-tab-item.js.map +1 -0
  256. package/dist/collection/components/voa-table/table.css +15 -0
  257. package/dist/collection/components/voa-table/table.js +63 -0
  258. package/dist/collection/components/voa-table/table.js.map +1 -0
  259. package/dist/collection/components/voa-table/table.stories.js +21 -0
  260. package/dist/collection/components/voa-table/table.stories.js.map +1 -0
  261. package/dist/collection/components/voa-tag/voa-tag.css +31 -0
  262. package/dist/collection/components/voa-tag/voa-tag.js +183 -0
  263. package/dist/collection/components/voa-tag/voa-tag.js.map +1 -0
  264. package/dist/collection/components/voa-tag/voa-tag.stories.js +347 -0
  265. package/dist/collection/components/voa-tag/voa-tag.stories.js.map +1 -0
  266. package/dist/collection/components/voa-text-area/voa-text-area.css +68 -0
  267. package/dist/collection/components/voa-text-area/voa-text-area.js +519 -0
  268. package/dist/collection/components/voa-text-area/voa-text-area.js.map +1 -0
  269. package/dist/collection/components/voa-text-area/voa-text-area.stories.js +390 -0
  270. package/dist/collection/components/voa-text-area/voa-text-area.stories.js.map +1 -0
  271. package/dist/collection/components/voa-timepicker/timepicker.css +7 -0
  272. package/dist/collection/components/voa-timepicker/timepicker.js +42 -0
  273. package/dist/collection/components/voa-timepicker/timepicker.js.map +1 -0
  274. package/dist/collection/components/voa-timepicker/timepicker.stories.js +16 -0
  275. package/dist/collection/components/voa-timepicker/timepicker.stories.js.map +1 -0
  276. package/dist/collection/components/voa-tooltip/voa-tooltip.css +283 -0
  277. package/dist/collection/components/voa-tooltip/voa-tooltip.js +230 -0
  278. package/dist/collection/components/voa-tooltip/voa-tooltip.js.map +1 -0
  279. package/dist/collection/components/voa-tooltip/voa-tooltip.stories.js +471 -0
  280. package/dist/collection/components/voa-tooltip/voa-tooltip.stories.js.map +1 -0
  281. package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.css +158 -0
  282. package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.js +89 -0
  283. package/dist/collection/components/voa-tooltip-arrow/voa-tooltip-arrow.js.map +1 -0
  284. package/dist/collection/components/voa-upload/upload.css +28 -0
  285. package/dist/collection/components/voa-upload/upload.js +19 -0
  286. package/dist/collection/components/voa-upload/upload.js.map +1 -0
  287. package/dist/collection/components/voa-upload/upload.stories.js +8 -0
  288. package/dist/collection/components/voa-upload/upload.stories.js.map +1 -0
  289. package/dist/collection/icons/arrow.svg +3 -0
  290. package/dist/collection/icons/bell.svg +1 -0
  291. package/dist/collection/icons/calendar.svg +1 -0
  292. package/dist/collection/icons/check.svg +4 -0
  293. package/dist/collection/icons/chevron-right.svg +3 -0
  294. package/dist/collection/icons/circle.svg +4 -0
  295. package/dist/collection/icons/clear.svg +1 -0
  296. package/dist/collection/icons/close.svg +3 -0
  297. package/dist/collection/icons/error.svg +3 -0
  298. package/dist/collection/icons/eye-off.svg +1 -0
  299. package/dist/collection/icons/eye.svg +1 -0
  300. package/dist/collection/icons/home.svg +3 -0
  301. package/dist/collection/icons/index.js +18 -0
  302. package/dist/collection/icons/index.js.map +1 -0
  303. package/dist/collection/icons/info.svg +3 -0
  304. package/dist/collection/icons/loading.svg +1 -0
  305. package/dist/collection/icons/person.svg +4 -0
  306. package/dist/collection/icons/resize-handle.svg +3 -0
  307. package/dist/collection/icons/search.svg +1 -0
  308. package/dist/collection/icons/settings.svg +1 -0
  309. package/dist/collection/icons/warning.svg +3 -0
  310. package/dist/collection/token/base/colors.js +42 -0
  311. package/dist/collection/token/base/colors.js.map +1 -0
  312. package/dist/collection/token/base/mediaQueries.js +12 -0
  313. package/dist/collection/token/base/mediaQueries.js.map +1 -0
  314. package/dist/collection/token/base/radius.js +8 -0
  315. package/dist/collection/token/base/radius.js.map +1 -0
  316. package/dist/collection/token/base/spacing.js +13 -0
  317. package/dist/collection/token/base/spacing.js.map +1 -0
  318. package/dist/collection/token/branding/coi.js +58 -0
  319. package/dist/collection/token/branding/coi.js.map +1 -0
  320. package/dist/collection/token/branding/devops.js +58 -0
  321. package/dist/collection/token/branding/devops.js.map +1 -0
  322. package/dist/collection/token/branding/godrive.js +58 -0
  323. package/dist/collection/token/branding/godrive.js.map +1 -0
  324. package/dist/collection/token/branding/index.js +9 -0
  325. package/dist/collection/token/branding/index.js.map +1 -0
  326. package/dist/collection/token/branding/type.js +2 -0
  327. package/dist/collection/token/branding/type.js.map +1 -0
  328. package/dist/collection/token/colors.js +84 -0
  329. package/dist/collection/token/colors.js.map +1 -0
  330. package/dist/collection/tokens/global.css +867 -0
  331. package/dist/collection/tokens/voa-tokens.css +776 -0
  332. package/dist/collection/utils/icons.js +35 -0
  333. package/dist/collection/utils/icons.js.map +1 -0
  334. package/dist/collection/utils/utils.js +4 -0
  335. package/dist/collection/utils/utils.js.map +1 -0
  336. package/dist/custom-elements/index.d.ts +33 -0
  337. package/dist/custom-elements/index.js +1463 -0
  338. package/dist/custom-elements/index.js.map +1 -0
  339. package/dist/custom-elements/p-B2P7cgN3.js +125 -0
  340. package/dist/custom-elements/p-B2P7cgN3.js.map +1 -0
  341. package/dist/custom-elements/p-CQr0ZKZZ.js +75 -0
  342. package/dist/custom-elements/p-CQr0ZKZZ.js.map +1 -0
  343. package/dist/custom-elements/p-Cp28eWhS.js +40 -0
  344. package/dist/custom-elements/p-Cp28eWhS.js.map +1 -0
  345. package/dist/custom-elements/p-DKnM_Ozb.js +207 -0
  346. package/dist/custom-elements/p-DKnM_Ozb.js.map +1 -0
  347. package/dist/custom-elements/p-DPyVgztA.js +51 -0
  348. package/dist/custom-elements/p-DPyVgztA.js.map +1 -0
  349. package/dist/custom-elements/p-Dto9R8Te.js +117 -0
  350. package/dist/custom-elements/p-Dto9R8Te.js.map +1 -0
  351. package/dist/custom-elements/voa-accordion.d.ts +11 -0
  352. package/dist/custom-elements/voa-accordion.js +104 -0
  353. package/dist/custom-elements/voa-accordion.js.map +1 -0
  354. package/dist/custom-elements/voa-alert.d.ts +11 -0
  355. package/dist/custom-elements/voa-alert.js +111 -0
  356. package/dist/custom-elements/voa-alert.js.map +1 -0
  357. package/dist/custom-elements/voa-avatar.d.ts +11 -0
  358. package/dist/custom-elements/voa-avatar.js +108 -0
  359. package/dist/custom-elements/voa-avatar.js.map +1 -0
  360. package/dist/custom-elements/voa-badge.d.ts +11 -0
  361. package/dist/custom-elements/voa-badge.js +9 -0
  362. package/dist/custom-elements/voa-badge.js.map +1 -0
  363. package/dist/custom-elements/voa-breadcrumbs-divider.d.ts +11 -0
  364. package/dist/custom-elements/voa-breadcrumbs-divider.js +63 -0
  365. package/dist/custom-elements/voa-breadcrumbs-divider.js.map +1 -0
  366. package/dist/custom-elements/voa-breadcrumbs-item.d.ts +11 -0
  367. package/dist/custom-elements/voa-breadcrumbs-item.js +52 -0
  368. package/dist/custom-elements/voa-breadcrumbs-item.js.map +1 -0
  369. package/dist/custom-elements/voa-breadcrumbs.d.ts +11 -0
  370. package/dist/custom-elements/voa-breadcrumbs.js +49 -0
  371. package/dist/custom-elements/voa-breadcrumbs.js.map +1 -0
  372. package/dist/custom-elements/voa-button.d.ts +11 -0
  373. package/dist/custom-elements/voa-button.js +9 -0
  374. package/dist/custom-elements/voa-button.js.map +1 -0
  375. package/dist/custom-elements/voa-card.d.ts +11 -0
  376. package/dist/custom-elements/voa-card.js +39 -0
  377. package/dist/custom-elements/voa-card.js.map +1 -0
  378. package/dist/custom-elements/voa-checkbox.d.ts +11 -0
  379. package/dist/custom-elements/voa-checkbox.js +149 -0
  380. package/dist/custom-elements/voa-checkbox.js.map +1 -0
  381. package/dist/custom-elements/voa-container-multi-select.d.ts +11 -0
  382. package/dist/custom-elements/voa-container-multi-select.js +122 -0
  383. package/dist/custom-elements/voa-container-multi-select.js.map +1 -0
  384. package/dist/custom-elements/voa-datepicker.d.ts +11 -0
  385. package/dist/custom-elements/voa-datepicker.js +46 -0
  386. package/dist/custom-elements/voa-datepicker.js.map +1 -0
  387. package/dist/custom-elements/voa-drawer.d.ts +11 -0
  388. package/dist/custom-elements/voa-drawer.js +47 -0
  389. package/dist/custom-elements/voa-drawer.js.map +1 -0
  390. package/dist/custom-elements/voa-dropdown.d.ts +11 -0
  391. package/dist/custom-elements/voa-dropdown.js +52 -0
  392. package/dist/custom-elements/voa-dropdown.js.map +1 -0
  393. package/dist/custom-elements/voa-input-addon.d.ts +11 -0
  394. package/dist/custom-elements/voa-input-addon.js +160 -0
  395. package/dist/custom-elements/voa-input-addon.js.map +1 -0
  396. package/dist/custom-elements/voa-input.d.ts +11 -0
  397. package/dist/custom-elements/voa-input.js +237 -0
  398. package/dist/custom-elements/voa-input.js.map +1 -0
  399. package/dist/custom-elements/voa-keybinding.d.ts +11 -0
  400. package/dist/custom-elements/voa-keybinding.js +9 -0
  401. package/dist/custom-elements/voa-keybinding.js.map +1 -0
  402. package/dist/custom-elements/voa-link.d.ts +11 -0
  403. package/dist/custom-elements/voa-link.js +43 -0
  404. package/dist/custom-elements/voa-link.js.map +1 -0
  405. package/dist/custom-elements/voa-list.d.ts +11 -0
  406. package/dist/custom-elements/voa-list.js +42 -0
  407. package/dist/custom-elements/voa-list.js.map +1 -0
  408. package/dist/custom-elements/voa-modal.d.ts +11 -0
  409. package/dist/custom-elements/voa-modal.js +47 -0
  410. package/dist/custom-elements/voa-modal.js.map +1 -0
  411. package/dist/custom-elements/voa-option.d.ts +11 -0
  412. package/dist/custom-elements/voa-option.js +109 -0
  413. package/dist/custom-elements/voa-option.js.map +1 -0
  414. package/dist/custom-elements/voa-pagination-item.d.ts +11 -0
  415. package/dist/custom-elements/voa-pagination-item.js +9 -0
  416. package/dist/custom-elements/voa-pagination-item.js.map +1 -0
  417. package/dist/custom-elements/voa-pagination.d.ts +11 -0
  418. package/dist/custom-elements/voa-pagination.js +116 -0
  419. package/dist/custom-elements/voa-pagination.js.map +1 -0
  420. package/dist/custom-elements/voa-progress.d.ts +11 -0
  421. package/dist/custom-elements/voa-progress.js +42 -0
  422. package/dist/custom-elements/voa-progress.js.map +1 -0
  423. package/dist/custom-elements/voa-radio.d.ts +11 -0
  424. package/dist/custom-elements/voa-radio.js +88 -0
  425. package/dist/custom-elements/voa-radio.js.map +1 -0
  426. package/dist/custom-elements/voa-select-base.d.ts +11 -0
  427. package/dist/custom-elements/voa-select-base.js +9 -0
  428. package/dist/custom-elements/voa-select-base.js.map +1 -0
  429. package/dist/custom-elements/voa-select.d.ts +11 -0
  430. package/dist/custom-elements/voa-select.js +189 -0
  431. package/dist/custom-elements/voa-select.js.map +1 -0
  432. package/dist/custom-elements/voa-skeleton.d.ts +11 -0
  433. package/dist/custom-elements/voa-skeleton.js +48 -0
  434. package/dist/custom-elements/voa-skeleton.js.map +1 -0
  435. package/dist/custom-elements/voa-stepper.d.ts +11 -0
  436. package/dist/custom-elements/voa-stepper.js +51 -0
  437. package/dist/custom-elements/voa-stepper.js.map +1 -0
  438. package/dist/custom-elements/voa-switch.d.ts +11 -0
  439. package/dist/custom-elements/voa-switch.js +131 -0
  440. package/dist/custom-elements/voa-switch.js.map +1 -0
  441. package/dist/custom-elements/voa-tab-item.d.ts +11 -0
  442. package/dist/custom-elements/voa-tab-item.js +114 -0
  443. package/dist/custom-elements/voa-tab-item.js.map +1 -0
  444. package/dist/custom-elements/voa-tab.d.ts +11 -0
  445. package/dist/custom-elements/voa-tab.js +156 -0
  446. package/dist/custom-elements/voa-tab.js.map +1 -0
  447. package/dist/custom-elements/voa-table.d.ts +11 -0
  448. package/dist/custom-elements/voa-table.js +44 -0
  449. package/dist/custom-elements/voa-table.js.map +1 -0
  450. package/dist/custom-elements/voa-tag.d.ts +11 -0
  451. package/dist/custom-elements/voa-tag.js +73 -0
  452. package/dist/custom-elements/voa-tag.js.map +1 -0
  453. package/dist/custom-elements/voa-text-area.d.ts +11 -0
  454. package/dist/custom-elements/voa-text-area.js +155 -0
  455. package/dist/custom-elements/voa-text-area.js.map +1 -0
  456. package/dist/custom-elements/voa-timepicker.d.ts +11 -0
  457. package/dist/custom-elements/voa-timepicker.js +41 -0
  458. package/dist/custom-elements/voa-timepicker.js.map +1 -0
  459. package/dist/custom-elements/voa-tooltip-arrow.d.ts +11 -0
  460. package/dist/custom-elements/voa-tooltip-arrow.js +56 -0
  461. package/dist/custom-elements/voa-tooltip-arrow.js.map +1 -0
  462. package/dist/custom-elements/voa-tooltip.d.ts +11 -0
  463. package/dist/custom-elements/voa-tooltip.js +107 -0
  464. package/dist/custom-elements/voa-tooltip.js.map +1 -0
  465. package/dist/custom-elements/voa-upload.d.ts +11 -0
  466. package/dist/custom-elements/voa-upload.js +39 -0
  467. package/dist/custom-elements/voa-upload.js.map +1 -0
  468. package/dist/esm/icons-Bjdap-bM.js +40 -0
  469. package/dist/esm/icons-Bjdap-bM.js.map +1 -0
  470. package/dist/esm/index-Dh8480Ec.js +1867 -0
  471. package/dist/esm/index-Dh8480Ec.js.map +1 -0
  472. package/dist/esm/index.js +2 -0
  473. package/dist/esm/index.js.map +1 -0
  474. package/dist/esm/loader.js +11 -0
  475. package/dist/esm/loader.js.map +1 -0
  476. package/dist/esm/voa-accordion.entry.js +73 -0
  477. package/dist/esm/voa-accordion.entry.js.map +1 -0
  478. package/dist/esm/voa-alert.entry.js +71 -0
  479. package/dist/esm/voa-alert.entry.js.map +1 -0
  480. package/dist/esm/voa-avatar.entry.js +78 -0
  481. package/dist/esm/voa-avatar.entry.js.map +1 -0
  482. package/dist/esm/voa-badge.entry.js +97 -0
  483. package/dist/esm/voa-badge.entry.js.map +1 -0
  484. package/dist/esm/voa-breadcrumbs-divider.entry.js +38 -0
  485. package/dist/esm/voa-breadcrumbs-divider.entry.js.map +1 -0
  486. package/dist/esm/voa-breadcrumbs-item.entry.js +25 -0
  487. package/dist/esm/voa-breadcrumbs-item.entry.js.map +1 -0
  488. package/dist/esm/voa-breadcrumbs.entry.js +24 -0
  489. package/dist/esm/voa-breadcrumbs.entry.js.map +1 -0
  490. package/dist/esm/voa-button.entry.js +88 -0
  491. package/dist/esm/voa-button.entry.js.map +1 -0
  492. package/dist/esm/voa-card.entry.js +16 -0
  493. package/dist/esm/voa-card.entry.js.map +1 -0
  494. package/dist/esm/voa-checkbox.entry.js +122 -0
  495. package/dist/esm/voa-checkbox.entry.js.map +1 -0
  496. package/dist/esm/voa-container-multi-select.entry.js +88 -0
  497. package/dist/esm/voa-container-multi-select.entry.js.map +1 -0
  498. package/dist/esm/voa-datepicker.entry.js +20 -0
  499. package/dist/esm/voa-datepicker.entry.js.map +1 -0
  500. package/dist/esm/voa-drawer.entry.js +21 -0
  501. package/dist/esm/voa-drawer.entry.js.map +1 -0
  502. package/dist/esm/voa-dropdown.entry.js +25 -0
  503. package/dist/esm/voa-dropdown.entry.js.map +1 -0
  504. package/dist/esm/voa-input-addon.entry.js +121 -0
  505. package/dist/esm/voa-input-addon.entry.js.map +1 -0
  506. package/dist/esm/voa-input.entry.js +189 -0
  507. package/dist/esm/voa-input.entry.js.map +1 -0
  508. package/dist/esm/voa-keybinding.entry.js +28 -0
  509. package/dist/esm/voa-keybinding.entry.js.map +1 -0
  510. package/dist/esm/voa-link.entry.js +17 -0
  511. package/dist/esm/voa-link.entry.js.map +1 -0
  512. package/dist/esm/voa-list.entry.js +17 -0
  513. package/dist/esm/voa-list.entry.js.map +1 -0
  514. package/dist/esm/voa-modal.entry.js +21 -0
  515. package/dist/esm/voa-modal.entry.js.map +1 -0
  516. package/dist/esm/voa-option.entry.js +83 -0
  517. package/dist/esm/voa-option.entry.js.map +1 -0
  518. package/dist/esm/voa-pagination-item.entry.js +51 -0
  519. package/dist/esm/voa-pagination-item.entry.js.map +1 -0
  520. package/dist/esm/voa-pagination.entry.js +80 -0
  521. package/dist/esm/voa-pagination.entry.js.map +1 -0
  522. package/dist/esm/voa-progress.entry.js +17 -0
  523. package/dist/esm/voa-progress.entry.js.map +1 -0
  524. package/dist/esm/voa-radio.entry.js +59 -0
  525. package/dist/esm/voa-radio.entry.js.map +1 -0
  526. package/dist/esm/voa-select-base.entry.js +175 -0
  527. package/dist/esm/voa-select-base.entry.js.map +1 -0
  528. package/dist/esm/voa-select.entry.js +140 -0
  529. package/dist/esm/voa-select.entry.js.map +1 -0
  530. package/dist/esm/voa-skeleton.entry.js +22 -0
  531. package/dist/esm/voa-skeleton.entry.js.map +1 -0
  532. package/dist/esm/voa-stepper.entry.js +24 -0
  533. package/dist/esm/voa-stepper.entry.js.map +1 -0
  534. package/dist/esm/voa-switch.entry.js +105 -0
  535. package/dist/esm/voa-switch.entry.js.map +1 -0
  536. package/dist/esm/voa-tab-item.entry.js +83 -0
  537. package/dist/esm/voa-tab-item.entry.js.map +1 -0
  538. package/dist/esm/voa-tab.entry.js +127 -0
  539. package/dist/esm/voa-tab.entry.js.map +1 -0
  540. package/dist/esm/voa-table.entry.js +18 -0
  541. package/dist/esm/voa-table.entry.js.map +1 -0
  542. package/dist/esm/voa-tag.entry.js +43 -0
  543. package/dist/esm/voa-tag.entry.js.map +1 -0
  544. package/dist/esm/voa-text-area.entry.js +116 -0
  545. package/dist/esm/voa-text-area.entry.js.map +1 -0
  546. package/dist/esm/voa-timepicker.entry.js +16 -0
  547. package/dist/esm/voa-timepicker.entry.js.map +1 -0
  548. package/dist/esm/voa-tooltip-arrow.entry.js +30 -0
  549. package/dist/esm/voa-tooltip-arrow.entry.js.map +1 -0
  550. package/dist/esm/voa-tooltip.entry.js +76 -0
  551. package/dist/esm/voa-tooltip.entry.js.map +1 -0
  552. package/dist/esm/voa-upload.entry.js +16 -0
  553. package/dist/esm/voa-upload.entry.js.map +1 -0
  554. package/dist/esm/voa.js +21 -0
  555. package/dist/esm/voa.js.map +1 -0
  556. package/dist/index.cjs.js +1 -0
  557. package/dist/index.js +1 -0
  558. package/dist/types/Stories/SaasDashboard.stories.d.ts +22 -0
  559. package/dist/types/Stories/styles/voa-radio.styles.d.ts +1 -0
  560. package/dist/types/components/GetStarted/AddingNewBrand.stories.d.ts +4 -0
  561. package/dist/types/components/GetStarted/ComoUsar.stories.d.ts +4 -0
  562. package/dist/types/components/GetStarted/GetStarted.stories.d.ts +4 -0
  563. package/dist/types/components/SaasDashboard/SaasDashboard.stories.d.ts +17 -0
  564. package/dist/types/components/Theme/ThemeProvider.d.ts +26 -0
  565. package/dist/types/components/Theme/generate-css-variables.d.ts +2 -0
  566. package/dist/types/components/voa-accordion/voa-accordion.d.ts +29 -0
  567. package/dist/types/components/voa-accordion/voa-accordion.stories.d.ts +70 -0
  568. package/dist/types/components/voa-alert/voa-alert.d.ts +82 -0
  569. package/dist/types/components/voa-alert/voa-alert.stories.d.ts +88 -0
  570. package/dist/types/components/voa-avatar/voa-avatar.d.ts +48 -0
  571. package/dist/types/components/voa-avatar/voa-avatar.stories.d.ts +73 -0
  572. package/dist/types/components/voa-badge/voa-badge.d.ts +91 -0
  573. package/dist/types/components/voa-badge/voa-badge.stories.d.ts +21 -0
  574. package/dist/types/components/voa-breadcrumbs/voa-breadcrumbs.d.ts +13 -0
  575. package/dist/types/components/voa-breadcrumbs/voa-breadcrumbs.stories.d.ts +57 -0
  576. package/dist/types/components/voa-breadcrumbs-divider/voa-breadcrumbs-divider.d.ts +19 -0
  577. package/dist/types/components/voa-breadcrumbs-item/voa-breadcrumbs-item.d.ts +17 -0
  578. package/dist/types/components/voa-button/voa-button.d.ts +69 -0
  579. package/dist/types/components/voa-button/voa-button.stories.d.ts +78 -0
  580. package/dist/types/components/voa-card/voa-card.d.ts +3 -0
  581. package/dist/types/components/voa-card/voa-card.stories.d.ts +30 -0
  582. package/dist/types/components/voa-checkbox/voa-checkbox.d.ts +73 -0
  583. package/dist/types/components/voa-checkbox/voa-checkbox.stories.d.ts +126 -0
  584. package/dist/types/components/voa-datepicker/datepicker.d.ts +6 -0
  585. package/dist/types/components/voa-datepicker/datepicker.stories.d.ts +4 -0
  586. package/dist/types/components/voa-drawer/drawer.d.ts +6 -0
  587. package/dist/types/components/voa-drawer/drawer.stories.d.ts +4 -0
  588. package/dist/types/components/voa-dropdown/dropdown.d.ts +8 -0
  589. package/dist/types/components/voa-dropdown/dropdown.stories.d.ts +4 -0
  590. package/dist/types/components/voa-input/voa-input.d.ts +153 -0
  591. package/dist/types/components/voa-input/voa-input.stories.d.ts +140 -0
  592. package/dist/types/components/voa-input-addon/voa-input-addon.d.ts +70 -0
  593. package/dist/types/components/voa-input-addon/voa-input-addon.stories.d.ts +139 -0
  594. package/dist/types/components/voa-keybinding/voa-keybinding.d.ts +22 -0
  595. package/dist/types/components/voa-keybinding/voa-keybinding.stories.d.ts +58 -0
  596. package/dist/types/components/voa-link/link.d.ts +5 -0
  597. package/dist/types/components/voa-link/link.stories.d.ts +4 -0
  598. package/dist/types/components/voa-list/list.d.ts +4 -0
  599. package/dist/types/components/voa-list/list.stories.d.ts +4 -0
  600. package/dist/types/components/voa-modal/modal.d.ts +6 -0
  601. package/dist/types/components/voa-modal/modal.stories.d.ts +4 -0
  602. package/dist/types/components/voa-option/voa-option.d.ts +58 -0
  603. package/dist/types/components/voa-option/voa-option.stories.d.ts +114 -0
  604. package/dist/types/components/voa-pagination/voa-pagination-item.d.ts +23 -0
  605. package/dist/types/components/voa-pagination/voa-pagination.d.ts +21 -0
  606. package/dist/types/components/voa-pagination/voa-pagination.stories.d.ts +28 -0
  607. package/dist/types/components/voa-progress/progress.d.ts +4 -0
  608. package/dist/types/components/voa-progress/progress.stories.d.ts +4 -0
  609. package/dist/types/components/voa-radio/voa-radio.d.ts +56 -0
  610. package/dist/types/components/voa-radio/voa-radio.stories.d.ts +42 -0
  611. package/dist/types/components/voa-select/voa-container-multi-select.d.ts +53 -0
  612. package/dist/types/components/voa-select/voa-container-multi-select.stories.d.ts +33 -0
  613. package/dist/types/components/voa-select/voa-select-base.d.ts +76 -0
  614. package/dist/types/components/voa-select/voa-select.d.ts +115 -0
  615. package/dist/types/components/voa-select/voa-select.stories.d.ts +100 -0
  616. package/dist/types/components/voa-skeleton/skeleton.d.ts +7 -0
  617. package/dist/types/components/voa-skeleton/skeleton.stories.d.ts +6 -0
  618. package/dist/types/components/voa-stepper/stepper.d.ts +9 -0
  619. package/dist/types/components/voa-stepper/stepper.stories.d.ts +4 -0
  620. package/dist/types/components/voa-switch/voa-switch.d.ts +28 -0
  621. package/dist/types/components/voa-switch/voa-switch.stories.d.ts +124 -0
  622. package/dist/types/components/voa-tab/voa-tab.d.ts +38 -0
  623. package/dist/types/components/voa-tab/voa-tab.stories.d.ts +81 -0
  624. package/dist/types/components/voa-tab-item/voa-tab-item.d.ts +66 -0
  625. package/dist/types/components/voa-table/table.d.ts +5 -0
  626. package/dist/types/components/voa-table/table.stories.d.ts +4 -0
  627. package/dist/types/components/voa-tag/voa-tag.d.ts +40 -0
  628. package/dist/types/components/voa-tag/voa-tag.stories.d.ts +66 -0
  629. package/dist/types/components/voa-text-area/voa-text-area.d.ts +47 -0
  630. package/dist/types/components/voa-text-area/voa-text-area.stories.d.ts +74 -0
  631. package/dist/types/components/voa-timepicker/timepicker.d.ts +4 -0
  632. package/dist/types/components/voa-timepicker/timepicker.stories.d.ts +4 -0
  633. package/dist/types/components/voa-tooltip/voa-tooltip.d.ts +54 -0
  634. package/dist/types/components/voa-tooltip/voa-tooltip.stories.d.ts +69 -0
  635. package/dist/types/components/voa-tooltip-arrow/voa-tooltip-arrow.d.ts +24 -0
  636. package/dist/types/components/voa-upload/upload.d.ts +3 -0
  637. package/dist/types/components/voa-upload/upload.stories.d.ts +4 -0
  638. package/dist/types/components.d.ts +2731 -0
  639. package/dist/types/icons/index.d.ts +16 -0
  640. package/dist/types/stencil-public-runtime.d.ts +1756 -0
  641. package/dist/types/token/base/colors.d.ts +2 -0
  642. package/dist/types/token/base/mediaQueries.d.ts +11 -0
  643. package/dist/types/token/base/radius.d.ts +7 -0
  644. package/dist/types/token/base/spacing.d.ts +12 -0
  645. package/dist/types/token/branding/coi.d.ts +2 -0
  646. package/dist/types/token/branding/devops.d.ts +2 -0
  647. package/dist/types/token/branding/godrive.d.ts +2 -0
  648. package/dist/types/token/branding/index.d.ts +2 -0
  649. package/dist/types/token/branding/type.d.ts +102 -0
  650. package/dist/types/token/colors.d.ts +16 -0
  651. package/dist/types/utils/icons.d.ts +45 -0
  652. package/dist/types/utils/utils.d.ts +1 -0
  653. package/dist/voa/index.esm.js +2 -0
  654. package/dist/voa/index.esm.js.map +1 -0
  655. package/dist/voa/loader.esm.js.map +1 -0
  656. package/dist/voa/p-01b6b7f5.entry.js +2 -0
  657. package/dist/voa/p-01b6b7f5.entry.js.map +1 -0
  658. package/dist/voa/p-0470367c.entry.js +2 -0
  659. package/dist/voa/p-0470367c.entry.js.map +1 -0
  660. package/dist/voa/p-17dfc5c3.entry.js +2 -0
  661. package/dist/voa/p-17dfc5c3.entry.js.map +1 -0
  662. package/dist/voa/p-19e64a8c.entry.js +2 -0
  663. package/dist/voa/p-19e64a8c.entry.js.map +1 -0
  664. package/dist/voa/p-3830cf95.entry.js +2 -0
  665. package/dist/voa/p-3830cf95.entry.js.map +1 -0
  666. package/dist/voa/p-3a2ad02b.entry.js +2 -0
  667. package/dist/voa/p-3a2ad02b.entry.js.map +1 -0
  668. package/dist/voa/p-41fce5ed.entry.js +2 -0
  669. package/dist/voa/p-41fce5ed.entry.js.map +1 -0
  670. package/dist/voa/p-4fdf73ab.entry.js +2 -0
  671. package/dist/voa/p-4fdf73ab.entry.js.map +1 -0
  672. package/dist/voa/p-52c0c7b6.entry.js +2 -0
  673. package/dist/voa/p-52c0c7b6.entry.js.map +1 -0
  674. package/dist/voa/p-5e5cadf6.entry.js +2 -0
  675. package/dist/voa/p-5e5cadf6.entry.js.map +1 -0
  676. package/dist/voa/p-61ff0737.entry.js +2 -0
  677. package/dist/voa/p-61ff0737.entry.js.map +1 -0
  678. package/dist/voa/p-6216d4ee.entry.js +2 -0
  679. package/dist/voa/p-6216d4ee.entry.js.map +1 -0
  680. package/dist/voa/p-6dbe9bf2.entry.js +2 -0
  681. package/dist/voa/p-6dbe9bf2.entry.js.map +1 -0
  682. package/dist/voa/p-77a4cdda.entry.js +2 -0
  683. package/dist/voa/p-77a4cdda.entry.js.map +1 -0
  684. package/dist/voa/p-788024a5.entry.js +2 -0
  685. package/dist/voa/p-788024a5.entry.js.map +1 -0
  686. package/dist/voa/p-8ba8f569.entry.js +2 -0
  687. package/dist/voa/p-8ba8f569.entry.js.map +1 -0
  688. package/dist/voa/p-8e0271ec.entry.js +2 -0
  689. package/dist/voa/p-8e0271ec.entry.js.map +1 -0
  690. package/dist/voa/p-8e20a0ce.entry.js +2 -0
  691. package/dist/voa/p-8e20a0ce.entry.js.map +1 -0
  692. package/dist/voa/p-9409e8a0.entry.js +2 -0
  693. package/dist/voa/p-9409e8a0.entry.js.map +1 -0
  694. package/dist/voa/p-Dh8480Ec.js +3 -0
  695. package/dist/voa/p-Dh8480Ec.js.map +1 -0
  696. package/dist/voa/p-Du_B3oI3.js +2 -0
  697. package/dist/voa/p-Du_B3oI3.js.map +1 -0
  698. package/dist/voa/p-a9d14872.entry.js +2 -0
  699. package/dist/voa/p-a9d14872.entry.js.map +1 -0
  700. package/dist/voa/p-b305463b.entry.js +2 -0
  701. package/dist/voa/p-b305463b.entry.js.map +1 -0
  702. package/dist/voa/p-b36a6198.entry.js +2 -0
  703. package/dist/voa/p-b36a6198.entry.js.map +1 -0
  704. package/dist/voa/p-b7133c1f.entry.js +2 -0
  705. package/dist/voa/p-b7133c1f.entry.js.map +1 -0
  706. package/dist/voa/p-ba6839f4.entry.js +2 -0
  707. package/dist/voa/p-ba6839f4.entry.js.map +1 -0
  708. package/dist/voa/p-c1226e48.entry.js +2 -0
  709. package/dist/voa/p-c1226e48.entry.js.map +1 -0
  710. package/dist/voa/p-c1481257.entry.js +2 -0
  711. package/dist/voa/p-c1481257.entry.js.map +1 -0
  712. package/dist/voa/p-c3867e8e.entry.js +2 -0
  713. package/dist/voa/p-c3867e8e.entry.js.map +1 -0
  714. package/dist/voa/p-c9b7e0e5.entry.js +2 -0
  715. package/dist/voa/p-c9b7e0e5.entry.js.map +1 -0
  716. package/dist/voa/p-cc7ec720.entry.js +2 -0
  717. package/dist/voa/p-cc7ec720.entry.js.map +1 -0
  718. package/dist/voa/p-d5d426cc.entry.js +2 -0
  719. package/dist/voa/p-d5d426cc.entry.js.map +1 -0
  720. package/dist/voa/p-dce8719e.entry.js +2 -0
  721. package/dist/voa/p-dce8719e.entry.js.map +1 -0
  722. package/dist/voa/p-de0944ab.entry.js +2 -0
  723. package/dist/voa/p-de0944ab.entry.js.map +1 -0
  724. package/dist/voa/p-decd2e4d.entry.js +2 -0
  725. package/dist/voa/p-decd2e4d.entry.js.map +1 -0
  726. package/dist/voa/p-e56f72ee.entry.js +2 -0
  727. package/dist/voa/p-e56f72ee.entry.js.map +1 -0
  728. package/dist/voa/p-f28e13b2.entry.js +2 -0
  729. package/dist/voa/p-f28e13b2.entry.js.map +1 -0
  730. package/dist/voa/p-f432a015.entry.js +2 -0
  731. package/dist/voa/p-f432a015.entry.js.map +1 -0
  732. package/dist/voa/p-f5c3d298.entry.js +2 -0
  733. package/dist/voa/p-f5c3d298.entry.js.map +1 -0
  734. package/dist/voa/p-faec36a5.entry.js +2 -0
  735. package/dist/voa/p-faec36a5.entry.js.map +1 -0
  736. package/dist/voa/p-fd7aa1e3.entry.js +2 -0
  737. package/dist/voa/p-fd7aa1e3.entry.js.map +1 -0
  738. package/dist/voa/tokens/global.css +867 -0
  739. package/dist/voa/tokens/voa-tokens.css +776 -0
  740. package/dist/voa/voa-accordion.entry.esm.js.map +1 -0
  741. package/dist/voa/voa-alert.entry.esm.js.map +1 -0
  742. package/dist/voa/voa-avatar.entry.esm.js.map +1 -0
  743. package/dist/voa/voa-badge.entry.esm.js.map +1 -0
  744. package/dist/voa/voa-breadcrumbs-divider.entry.esm.js.map +1 -0
  745. package/dist/voa/voa-breadcrumbs-item.entry.esm.js.map +1 -0
  746. package/dist/voa/voa-breadcrumbs.entry.esm.js.map +1 -0
  747. package/dist/voa/voa-button.entry.esm.js.map +1 -0
  748. package/dist/voa/voa-card.entry.esm.js.map +1 -0
  749. package/dist/voa/voa-checkbox.entry.esm.js.map +1 -0
  750. package/dist/voa/voa-container-multi-select.entry.esm.js.map +1 -0
  751. package/dist/voa/voa-datepicker.entry.esm.js.map +1 -0
  752. package/dist/voa/voa-drawer.entry.esm.js.map +1 -0
  753. package/dist/voa/voa-dropdown.entry.esm.js.map +1 -0
  754. package/dist/voa/voa-input-addon.entry.esm.js.map +1 -0
  755. package/dist/voa/voa-input.entry.esm.js.map +1 -0
  756. package/dist/voa/voa-keybinding.entry.esm.js.map +1 -0
  757. package/dist/voa/voa-link.entry.esm.js.map +1 -0
  758. package/dist/voa/voa-list.entry.esm.js.map +1 -0
  759. package/dist/voa/voa-modal.entry.esm.js.map +1 -0
  760. package/dist/voa/voa-option.entry.esm.js.map +1 -0
  761. package/dist/voa/voa-pagination-item.entry.esm.js.map +1 -0
  762. package/dist/voa/voa-pagination.entry.esm.js.map +1 -0
  763. package/dist/voa/voa-progress.entry.esm.js.map +1 -0
  764. package/dist/voa/voa-radio.entry.esm.js.map +1 -0
  765. package/dist/voa/voa-select-base.entry.esm.js.map +1 -0
  766. package/dist/voa/voa-select.entry.esm.js.map +1 -0
  767. package/dist/voa/voa-skeleton.entry.esm.js.map +1 -0
  768. package/dist/voa/voa-stepper.entry.esm.js.map +1 -0
  769. package/dist/voa/voa-switch.entry.esm.js.map +1 -0
  770. package/dist/voa/voa-tab-item.entry.esm.js.map +1 -0
  771. package/dist/voa/voa-tab.entry.esm.js.map +1 -0
  772. package/dist/voa/voa-table.entry.esm.js.map +1 -0
  773. package/dist/voa/voa-tag.entry.esm.js.map +1 -0
  774. package/dist/voa/voa-text-area.entry.esm.js.map +1 -0
  775. package/dist/voa/voa-timepicker.entry.esm.js.map +1 -0
  776. package/dist/voa/voa-tooltip-arrow.entry.esm.js.map +1 -0
  777. package/dist/voa/voa-tooltip.entry.esm.js.map +1 -0
  778. package/dist/voa/voa-upload.entry.esm.js.map +1 -0
  779. package/dist/voa/voa.css +1 -0
  780. package/dist/voa/voa.esm.js +2 -0
  781. package/dist/voa/voa.esm.js.map +1 -0
  782. package/package.json +27 -0
@@ -0,0 +1,270 @@
1
+ import { html } from "lit";
2
+ import { unsafeHTML } from "lit/directives/unsafe-html.js";
3
+ import "../../Stories/styles/voa-card.external.css";
4
+ /**
5
+ * Componente Card do Voa Design System.
6
+ *
7
+ * Baseado no design do Figma: https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System
8
+ *
9
+ * O componente segue o padrão "unstyled" (headless), fornecendo apenas estrutura e lógica.
10
+ * Todos os estilos visuais são aplicados externamente via CSS Parts API usando design tokens.
11
+ *
12
+ * ## Slots
13
+ * - \`header\`: Conteúdo do cabeçalho do card.
14
+ * - \`default\`: Conteúdo principal do card.
15
+ * - \`footer\`: Conteúdo do rodapé do card.
16
+ *
17
+ * ## CSS Parts
18
+ * - \`base\`: Container principal.
19
+ * - \`header\`: Container do cabeçalho.
20
+ * - \`body\`: Container do corpo.
21
+ * - \`footer\`: Container do rodapé.
22
+ */
23
+ const meta = {
24
+ title: "Componentes/Layout/Card",
25
+ component: 'voa-card',
26
+ tags: ['autodocs'],
27
+ parameters: {
28
+ design: {
29
+ type: 'figma',
30
+ url: 'https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System',
31
+ },
32
+ },
33
+ argTypes: {
34
+ header: {
35
+ control: 'text',
36
+ description: 'Conteúdo HTML para o slot de cabeçalho'
37
+ },
38
+ content: {
39
+ control: 'text',
40
+ description: 'Conteúdo HTML para o slot principal (body)'
41
+ },
42
+ footer: {
43
+ control: 'text',
44
+ description: 'Conteúdo HTML para o slot de rodapé'
45
+ },
46
+ },
47
+ render: (args) => html `
48
+ <voa-card>
49
+ ${args.header ? html `<div slot="header">${unsafeHTML(args.header)}</div>` : ''}
50
+ ${args.content ? unsafeHTML(args.content) : ''}
51
+ ${args.footer ? html `<div slot="footer">${unsafeHTML(args.footer)}</div>` : ''}
52
+ </voa-card>
53
+ `,
54
+ };
55
+ export default meta;
56
+ export const Default = {
57
+ args: {
58
+ header: '<h3>Card Header</h3>',
59
+ content: '<p>This is the card content. It can contain text, images, or other components.</p>',
60
+ footer: '<button style="padding: 8px 16px; background: #0064cb; color: white; border: none; border-radius: 4px; cursor: pointer;">Action</button>',
61
+ },
62
+ };
63
+ export const Simple = {
64
+ args: {
65
+ header: '',
66
+ content: '<p>This is a simple card with only body content.</p>',
67
+ footer: '',
68
+ },
69
+ };
70
+ export const WithHeaderOnly = {
71
+ args: {
72
+ header: '<h3>Card Title</h3>',
73
+ content: '<p>This card has a header and body, but no footer.</p>',
74
+ footer: '',
75
+ },
76
+ };
77
+ export const WithFooterOnly = {
78
+ args: {
79
+ header: '',
80
+ content: '<p>This card has a body and a footer, but no header.</p>',
81
+ footer: '<div style="display: flex; justify-content: flex-end; gap: 8px;"><button>Cancel</button><button>Save</button></div>',
82
+ },
83
+ };
84
+ export const RichContent = {
85
+ args: {
86
+ header: '<div style="display: flex; align-items: center; gap: 8px;"><span style="font-size: 24px;">👤</span> <span>User Profile</span></div>',
87
+ content: `
88
+ <div style="display: flex; gap: 16px;">
89
+ <div style="width: 64px; height: 64px; background: #eee; border-radius: 50%;"></div>
90
+ <div>
91
+ <h4 style="margin: 0;">John Doe</h4>
92
+ <p style="margin: 4px 0; color: #666;">Software Engineer</p>
93
+ <p style="margin: 4px 0; font-size: 12px;">john.doe@example.com</p>
94
+ </div>
95
+ </div>
96
+ `,
97
+ footer: '<a href="#" style="color: #0064cb; text-decoration: none;">View Full Profile</a>',
98
+ },
99
+ };
100
+ // ============================================
101
+ // Usage - Exemplos de Código
102
+ // ============================================
103
+ export const Usage = {
104
+ parameters: {
105
+ docs: {
106
+ description: {
107
+ story: `
108
+ ## Uso do Componente
109
+
110
+ Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:
111
+
112
+ ### HTML (Web Components)
113
+
114
+ \`\`\`html
115
+ <!-- Card básico -->
116
+ <voa-card>
117
+ <div slot="header"><h3>Card Title</h3></div>
118
+ <p>This is the card content.</p>
119
+ <div slot="footer"><button>Action</button></div>
120
+ </voa-card>
121
+
122
+ <!-- Card simples (apenas body) -->
123
+ <voa-card>
124
+ <p>Simple card with only body content.</p>
125
+ </voa-card>
126
+
127
+ <!-- Card com header e body -->
128
+ <voa-card>
129
+ <div slot="header"><h3>Card Title</h3></div>
130
+ <p>Card with header and body, but no footer.</p>
131
+ </voa-card>
132
+ \`\`\`
133
+
134
+ ### React
135
+
136
+ \`\`\`tsx
137
+ import { VoaCard } from '@voa-ds/react';
138
+
139
+ function MyComponent() {
140
+ return (
141
+ <>
142
+ {/* Card básico */}
143
+ <VoaCard>
144
+ <div slot="header"><h3>Card Title</h3></div>
145
+ <p>This is the card content.</p>
146
+ <div slot="footer"><button>Action</button></div>
147
+ </VoaCard>
148
+
149
+ {/* Card simples (apenas body) */}
150
+ <VoaCard>
151
+ <p>Simple card with only body content.</p>
152
+ </VoaCard>
153
+
154
+ {/* Card com header e body */}
155
+ <VoaCard>
156
+ <div slot="header"><h3>Card Title</h3></div>
157
+ <p>Card with header and body, but no footer.</p>
158
+ </VoaCard>
159
+ </>
160
+ );
161
+ }
162
+ \`\`\`
163
+
164
+ ### Angular
165
+
166
+ \`\`\`typescript
167
+ import { VoaCard } from '@voa-ds/angular';
168
+
169
+ @Component({
170
+ selector: 'app-example',
171
+ template: \`
172
+ <!-- Card básico -->
173
+ <voa-card>
174
+ <div slot="header"><h3>Card Title</h3></div>
175
+ <p>This is the card content.</p>
176
+ <div slot="footer"><button>Action</button></div>
177
+ </voa-card>
178
+
179
+ <!-- Card simples (apenas body) -->
180
+ <voa-card>
181
+ <p>Simple card with only body content.</p>
182
+ </voa-card>
183
+
184
+ <!-- Card com header e body -->
185
+ <voa-card>
186
+ <div slot="header"><h3>Card Title</h3></div>
187
+ <p>Card with header and body, but no footer.</p>
188
+ </voa-card>
189
+ \`
190
+ })
191
+ export class ExampleComponent {}
192
+ \`\`\`
193
+
194
+ ### Vue
195
+
196
+ \`\`\`vue
197
+ <template>
198
+ <div>
199
+ <!-- Card básico -->
200
+ <VoaCard>
201
+ <template #header><h3>Card Title</h3></template>
202
+ <p>This is the card content.</p>
203
+ <template #footer><button>Action</button></template>
204
+ </VoaCard>
205
+
206
+ <!-- Card simples (apenas body) -->
207
+ <VoaCard>
208
+ <p>Simple card with only body content.</p>
209
+ </VoaCard>
210
+
211
+ <!-- Card com header e body -->
212
+ <VoaCard>
213
+ <template #header><h3>Card Title</h3></template>
214
+ <p>Card with header and body, but no footer.</p>
215
+ </VoaCard>
216
+ </div>
217
+ </template>
218
+
219
+ <script setup lang="ts">
220
+ import { VoaCard } from '@voa-ds/vue';
221
+ </script>
222
+ \`\`\`
223
+
224
+ ## Instalação
225
+
226
+ ### HTML
227
+ \`\`\`bash
228
+ # NPM
229
+ npm install @voa-ds/components
230
+
231
+ # Importar no HTML
232
+ <script type="module" src="https://unpkg.com/@voa-ds/components/dist/voa-ds/voa-ds.esm.js"></script>
233
+ \`\`\`
234
+
235
+ ### React
236
+ \`\`\`bash
237
+ npm install @voa-ds/components @voa-ds/react
238
+ \`\`\`
239
+
240
+ ### Angular
241
+ \`\`\`bash
242
+ npm install @voa-ds/components @voa-ds/angular
243
+ \`\`\`
244
+
245
+ ### Vue
246
+ \`\`\`bash
247
+ npm install @voa-ds/components @voa-ds/vue
248
+ \`\`\`
249
+ `
250
+ }
251
+ }
252
+ },
253
+ render: () => html `
254
+ <div style="padding: 2rem; max-width: 100%;">
255
+ <h2 style="margin-top: 0; margin-bottom: 1.5rem; font-size: 1.5rem; font-weight: 600;">Uso do Componente</h2>
256
+ <p style="margin-bottom: 2rem; color: #666;">Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:</p>
257
+ <h3 style="margin-top: 2rem; margin-bottom: 1rem; font-size: 1.25rem; font-weight: 600;">Exemplo Interativo</h3>
258
+ <voa-card style="margin-bottom: 2rem; max-width: 400px;">
259
+ <div slot="header"><h3 style="margin: 0;">Card Title</h3></div>
260
+ <p style="margin: 0;">This is the card content. It can contain text, images, or other components.</p>
261
+ <div slot="footer"><button style="padding: 8px 16px; background: #0064cb; color: white; border: none; border-radius: 4px; cursor: pointer;">Action</button></div>
262
+ </voa-card>
263
+ <div style="margin-top: 2rem; padding: 1rem; background: #f5f5f5; border-radius: 4px; border-left: 4px solid #0064cb;">
264
+ <p style="margin: 0; font-weight: 600; margin-bottom: 0.5rem;">📚 Documentação Completa</p>
265
+ <p style="margin: 0; color: #666; font-size: 0.9rem;">Para ver exemplos de código completos para HTML, React, Angular e Vue, <a href="?path=/docs/components-voacard--docs#usage" style="color: #0064cb; text-decoration: none; font-weight: 600;">clique aqui para ir à página Docs</a>.</p>
266
+ </div>
267
+ </div>
268
+ `
269
+ };
270
+ //# sourceMappingURL=voa-card.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voa-card.stories.js","sourceRoot":"","sources":["../../../src/components/voa-card/voa-card.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,4CAA4C,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,yBAAyB;IAChC,SAAS,EAAE,UAAU;IACrB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,uEAAuE;SAC7E;KACF;IACD,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,wCAAwC;SACtD;QACD,OAAO,EAAE;YACP,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,4CAA4C;SAC1D;QACD,MAAM,EAAE;YACN,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,qCAAqC;SACnD;KACF;IACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;;QAEhB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QAC5E,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5C,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;;GAEjF;CACF,CAAC;AAEF,eAAe,IAAI,CAAC;AAGpB,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE;QACJ,MAAM,EAAE,sBAAsB;QAC9B,OAAO,EAAE,oFAAoF;QAC7F,MAAM,EAAE,0IAA0I;KACnJ;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAU;IAC3B,IAAI,EAAE;QACJ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,sDAAsD;QAC/D,MAAM,EAAE,EAAE;KACX;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAU;IACnC,IAAI,EAAE;QACJ,MAAM,EAAE,qBAAqB;QAC7B,OAAO,EAAE,wDAAwD;QACjE,MAAM,EAAE,EAAE;KACX;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAU;IACnC,IAAI,EAAE;QACJ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,0DAA0D;QACnE,MAAM,EAAE,qHAAqH;KAC9H;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAU;IAChC,IAAI,EAAE;QACJ,MAAM,EAAE,qIAAqI;QAC7I,OAAO,EAAE;;;;;;;;;KASR;QACD,MAAM,EAAE,kFAAkF;KAC3F;CACF,CAAC;AAEF,+CAA+C;AAC/C,6BAA6B;AAC7B,+CAA+C;AAE/C,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA8IN;aACF;SACF;KACF;IACD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;;;;;;;;GAejB;CACF,CAAC","sourcesContent":["import type { Meta, StoryObj } from '@storybook/web-components';\r\nimport { html } from 'lit';\r\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\r\nimport '../../Stories/styles/voa-card.external.css';\r\n\r\n/**\r\n * Componente Card do Voa Design System.\r\n * \r\n * Baseado no design do Figma: https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System\r\n * \r\n * O componente segue o padrão \"unstyled\" (headless), fornecendo apenas estrutura e lógica.\r\n * Todos os estilos visuais são aplicados externamente via CSS Parts API usando design tokens.\r\n * \r\n * ## Slots\r\n * - \\`header\\`: Conteúdo do cabeçalho do card.\r\n * - \\`default\\`: Conteúdo principal do card.\r\n * - \\`footer\\`: Conteúdo do rodapé do card.\r\n * \r\n * ## CSS Parts\r\n * - \\`base\\`: Container principal.\r\n * - \\`header\\`: Container do cabeçalho.\r\n * - \\`body\\`: Container do corpo.\r\n * - \\`footer\\`: Container do rodapé.\r\n */\r\nconst meta: Meta = {\r\n title: \"Componentes/Layout/Card\",\r\n component: 'voa-card',\r\n tags: ['autodocs'],\r\n parameters: {\r\n design: {\r\n type: 'figma',\r\n url: 'https://www.figma.com/design/wDStUEuqpl7Tu1oHpiAml6/Voa-Design-System',\r\n },\r\n },\r\n argTypes: {\r\n header: { \r\n control: 'text',\r\n description: 'Conteúdo HTML para o slot de cabeçalho'\r\n },\r\n content: { \r\n control: 'text',\r\n description: 'Conteúdo HTML para o slot principal (body)'\r\n },\r\n footer: { \r\n control: 'text',\r\n description: 'Conteúdo HTML para o slot de rodapé'\r\n },\r\n },\r\n render: (args) => html`\r\n <voa-card>\r\n ${args.header ? html`<div slot=\"header\">${unsafeHTML(args.header)}</div>` : ''}\r\n ${args.content ? unsafeHTML(args.content) : ''}\r\n ${args.footer ? html`<div slot=\"footer\">${unsafeHTML(args.footer)}</div>` : ''}\r\n </voa-card>\r\n `,\r\n};\r\n\r\nexport default meta;\r\ntype Story = StoryObj;\r\n\r\nexport const Default: Story = {\r\n args: {\r\n header: '<h3>Card Header</h3>',\r\n content: '<p>This is the card content. It can contain text, images, or other components.</p>',\r\n footer: '<button style=\"padding: 8px 16px; background: #0064cb; color: white; border: none; border-radius: 4px; cursor: pointer;\">Action</button>',\r\n },\r\n};\r\n\r\nexport const Simple: Story = {\r\n args: {\r\n header: '',\r\n content: '<p>This is a simple card with only body content.</p>',\r\n footer: '',\r\n },\r\n};\r\n\r\nexport const WithHeaderOnly: Story = {\r\n args: {\r\n header: '<h3>Card Title</h3>',\r\n content: '<p>This card has a header and body, but no footer.</p>',\r\n footer: '',\r\n },\r\n};\r\n\r\nexport const WithFooterOnly: Story = {\r\n args: {\r\n header: '',\r\n content: '<p>This card has a body and a footer, but no header.</p>',\r\n footer: '<div style=\"display: flex; justify-content: flex-end; gap: 8px;\"><button>Cancel</button><button>Save</button></div>',\r\n },\r\n};\r\n\r\nexport const RichContent: Story = {\r\n args: {\r\n header: '<div style=\"display: flex; align-items: center; gap: 8px;\"><span style=\"font-size: 24px;\">👤</span> <span>User Profile</span></div>',\r\n content: `\r\n <div style=\"display: flex; gap: 16px;\">\r\n <div style=\"width: 64px; height: 64px; background: #eee; border-radius: 50%;\"></div>\r\n <div>\r\n <h4 style=\"margin: 0;\">John Doe</h4>\r\n <p style=\"margin: 4px 0; color: #666;\">Software Engineer</p>\r\n <p style=\"margin: 4px 0; font-size: 12px;\">john.doe@example.com</p>\r\n </div>\r\n </div>\r\n `,\r\n footer: '<a href=\"#\" style=\"color: #0064cb; text-decoration: none;\">View Full Profile</a>',\r\n },\r\n};\r\n\r\n// ============================================\r\n// Usage - Exemplos de Código\r\n// ============================================\r\n\r\nexport const Usage: Story = {\r\n parameters: {\r\n docs: {\r\n description: {\r\n story: `\r\n## Uso do Componente\r\n\r\nEste componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:\r\n\r\n### HTML (Web Components)\r\n\r\n\\`\\`\\`html\r\n<!-- Card básico -->\r\n<voa-card>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>This is the card content.</p>\r\n <div slot=\"footer\"><button>Action</button></div>\r\n</voa-card>\r\n\r\n<!-- Card simples (apenas body) -->\r\n<voa-card>\r\n <p>Simple card with only body content.</p>\r\n</voa-card>\r\n\r\n<!-- Card com header e body -->\r\n<voa-card>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>Card with header and body, but no footer.</p>\r\n</voa-card>\r\n\\`\\`\\`\r\n\r\n### React\r\n\r\n\\`\\`\\`tsx\r\nimport { VoaCard } from '@voa-ds/react';\r\n\r\nfunction MyComponent() {\r\n return (\r\n <>\r\n {/* Card básico */}\r\n <VoaCard>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>This is the card content.</p>\r\n <div slot=\"footer\"><button>Action</button></div>\r\n </VoaCard>\r\n\r\n {/* Card simples (apenas body) */}\r\n <VoaCard>\r\n <p>Simple card with only body content.</p>\r\n </VoaCard>\r\n\r\n {/* Card com header e body */}\r\n <VoaCard>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>Card with header and body, but no footer.</p>\r\n </VoaCard>\r\n </>\r\n );\r\n}\r\n\\`\\`\\`\r\n\r\n### Angular\r\n\r\n\\`\\`\\`typescript\r\nimport { VoaCard } from '@voa-ds/angular';\r\n\r\n@Component({\r\n selector: 'app-example',\r\n template: \\`\r\n <!-- Card básico -->\r\n <voa-card>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>This is the card content.</p>\r\n <div slot=\"footer\"><button>Action</button></div>\r\n </voa-card>\r\n\r\n <!-- Card simples (apenas body) -->\r\n <voa-card>\r\n <p>Simple card with only body content.</p>\r\n </voa-card>\r\n\r\n <!-- Card com header e body -->\r\n <voa-card>\r\n <div slot=\"header\"><h3>Card Title</h3></div>\r\n <p>Card with header and body, but no footer.</p>\r\n </voa-card>\r\n \\`\r\n})\r\nexport class ExampleComponent {}\r\n\\`\\`\\`\r\n\r\n### Vue\r\n\r\n\\`\\`\\`vue\r\n<template>\r\n <div>\r\n <!-- Card básico -->\r\n <VoaCard>\r\n <template #header><h3>Card Title</h3></template>\r\n <p>This is the card content.</p>\r\n <template #footer><button>Action</button></template>\r\n </VoaCard>\r\n\r\n <!-- Card simples (apenas body) -->\r\n <VoaCard>\r\n <p>Simple card with only body content.</p>\r\n </VoaCard>\r\n\r\n <!-- Card com header e body -->\r\n <VoaCard>\r\n <template #header><h3>Card Title</h3></template>\r\n <p>Card with header and body, but no footer.</p>\r\n </VoaCard>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { VoaCard } from '@voa-ds/vue';\r\n</script>\r\n\\`\\`\\`\r\n\r\n## Instalação\r\n\r\n### HTML\r\n\\`\\`\\`bash\r\n# NPM\r\nnpm install @voa-ds/components\r\n\r\n# Importar no HTML\r\n<script type=\"module\" src=\"https://unpkg.com/@voa-ds/components/dist/voa-ds/voa-ds.esm.js\"></script>\r\n\\`\\`\\`\r\n\r\n### React\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/react\r\n\\`\\`\\`\r\n\r\n### Angular\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/angular\r\n\\`\\`\\`\r\n\r\n### Vue\r\n\\`\\`\\`bash\r\nnpm install @voa-ds/components @voa-ds/vue\r\n\\`\\`\\`\r\n `\r\n }\r\n }\r\n },\r\n render: () => html`\r\n <div style=\"padding: 2rem; max-width: 100%;\">\r\n <h2 style=\"margin-top: 0; margin-bottom: 1.5rem; font-size: 1.5rem; font-weight: 600;\">Uso do Componente</h2>\r\n <p style=\"margin-bottom: 2rem; color: #666;\">Este componente pode ser usado em diferentes frameworks. Abaixo estão exemplos de código para cada um:</p>\r\n <h3 style=\"margin-top: 2rem; margin-bottom: 1rem; font-size: 1.25rem; font-weight: 600;\">Exemplo Interativo</h3>\r\n <voa-card style=\"margin-bottom: 2rem; max-width: 400px;\">\r\n <div slot=\"header\"><h3 style=\"margin: 0;\">Card Title</h3></div>\r\n <p style=\"margin: 0;\">This is the card content. It can contain text, images, or other components.</p>\r\n <div slot=\"footer\"><button style=\"padding: 8px 16px; background: #0064cb; color: white; border: none; border-radius: 4px; cursor: pointer;\">Action</button></div>\r\n </voa-card>\r\n <div style=\"margin-top: 2rem; padding: 1rem; background: #f5f5f5; border-radius: 4px; border-left: 4px solid #0064cb;\">\r\n <p style=\"margin: 0; font-weight: 600; margin-bottom: 0.5rem;\">📚 Documentação Completa</p>\r\n <p style=\"margin: 0; color: #666; font-size: 0.9rem;\">Para ver exemplos de código completos para HTML, React, Angular e Vue, <a href=\"?path=/docs/components-voacard--docs#usage\" style=\"color: #0064cb; text-decoration: none; font-weight: 600;\">clique aqui para ir à página Docs</a>.</p>\r\n </div>\r\n </div>\r\n `\r\n};\r\n"]}
@@ -0,0 +1,75 @@
1
+ /*
2
+ * UNSTYLED PATTERN: This file contains ONLY structural CSS (layout, positioning).
3
+ * All visual styles (colors, backgrounds, fonts, spacing) must be applied externally
4
+ * via CSS Parts API (::part() selectors) using design tokens.
5
+ *
6
+ * IMPORTANT: NÃO incluir cores, fontes, espaçamentos ou valores hardcoded.
7
+ * Apenas estrutura: display, position, flexbox, grid, box-sizing, cursor, etc.
8
+ */
9
+
10
+ :host {
11
+ display: inline-block;
12
+ box-sizing: border-box;
13
+ contain: content;
14
+ pointer-events: auto;
15
+ }
16
+
17
+ .checkbox-container {
18
+ /* APENAS estilos estruturais */
19
+ display: inline-flex;
20
+ align-items: center;
21
+ position: relative;
22
+ box-sizing: border-box;
23
+ user-select: none;
24
+ /* Gap estrutural - será aplicado via CSS custom property externamente */
25
+ gap: 0; /* Defaults to 0, overridable externally */
26
+ }
27
+
28
+ .checkbox-container.checkbox-disabled {
29
+ cursor: not-allowed;
30
+ pointer-events: none;
31
+ opacity: 0.5; /* Structural indication of disabled state */
32
+ }
33
+
34
+ .checkbox-container.checkbox-no-label {
35
+ gap: 0;
36
+ }
37
+
38
+ /*
39
+ * The visual box of the checkbox.
40
+ * MUST have default dimensions to exist in the layout flow.
41
+ */
42
+ .checkbox-custom {
43
+ /* Improved alignment */
44
+ display: inline-flex;
45
+ align-items: center;
46
+ justify-content: center;
47
+ position: relative;
48
+ flex-shrink: 0;
49
+ box-sizing: border-box;
50
+
51
+ /* DEFAULT STRUCTURAL SIZE - 20px conforme Figma */
52
+ width: 20px;
53
+ height: 20px;
54
+ }
55
+
56
+ /*
57
+ * We leave the ::after content management to the external CSS
58
+ * OR we set basic display properties here so the external CSS
59
+ * just has to toggle opacity/color.
60
+ */
61
+ .checkbox-custom::after {
62
+ content: '';
63
+ display: block;
64
+ position: absolute;
65
+ box-sizing: border-box;
66
+ }
67
+
68
+ .checkbox-label {
69
+ /* APENAS estilos estruturais */
70
+ display: inline-block;
71
+ user-select: none;
72
+ box-sizing: border-box;
73
+ /* Ensure label doesn't collapse if empty slot */
74
+ min-height: 1em;
75
+ }
@@ -0,0 +1,275 @@
1
+ import { Host, h } from "@stencil/core";
2
+ /**
3
+ * Componente de checkbox que segue o design system VOA.
4
+ *
5
+ * O componente segue o padrão "unstyled" (headless), fornecendo apenas estrutura e lógica.
6
+ * Todos os estilos visuais devem ser aplicados externamente via CSS Parts API usando design tokens.
7
+ *
8
+ * @part base - O elemento raiz do checkbox (elemento <div> no container)
9
+ * @part indicator - O indicador visual do checkbox (caixa customizada)
10
+ * @part label - O wrapper do texto do label
11
+ *
12
+ * @slot default - Conteúdo do label do checkbox
13
+ */
14
+ export class VoaCheckbox {
15
+ constructor() {
16
+ /**
17
+ * Internal state to handle "uncontrolled" usage while keeping props immutable
18
+ */
19
+ this.internalState = 'inactive';
20
+ /**
21
+ * State of the checkbox.
22
+ * active = checked
23
+ * inactive = unchecked
24
+ * indeterminate = partial/mixed
25
+ */
26
+ this.state = 'inactive';
27
+ /**
28
+ * Se o checkbox está desabilitado.
29
+ */
30
+ this.disabled = false;
31
+ /**
32
+ * Se o label deve ser exibido.
33
+ */
34
+ this.showLabel = true;
35
+ /**
36
+ * Valor do checkbox para formulários.
37
+ */
38
+ this.value = 'on'; // Default value if none provided
39
+ /**
40
+ * Handler para clique no checkbox.
41
+ */
42
+ this.handleClick = (_ev) => {
43
+ if (this.disabled)
44
+ return;
45
+ // Logic: Indeterminate -> Active. Active -> Inactive. Inactive -> Active.
46
+ if (this.internalState === 'indeterminate' || this.internalState === 'inactive') {
47
+ this.internalState = 'active';
48
+ }
49
+ else {
50
+ this.internalState = 'inactive';
51
+ }
52
+ this.updateFormInternals();
53
+ this.dsChange.emit(this.internalState);
54
+ };
55
+ /**
56
+ * Handler para navegação por teclado (WCAG 2.2 AA).
57
+ * Suporta Space para alternar estado.
58
+ */
59
+ this.handleKeyDown = (event) => {
60
+ if (this.disabled)
61
+ return;
62
+ // Native checkbox activates on Space
63
+ if (event.key === ' ') {
64
+ event.preventDefault();
65
+ this.handleClick(event);
66
+ }
67
+ };
68
+ }
69
+ componentWillLoad() {
70
+ this.internalState = this.state;
71
+ this.updateFormInternals();
72
+ }
73
+ /**
74
+ * Atualiza o estado interno e sincroniza com o Form Internals API
75
+ */
76
+ stateChanged(newValue) {
77
+ this.internalState = newValue;
78
+ this.updateFormInternals();
79
+ }
80
+ /**
81
+ * Watch changes to internal state and update the reflected prop for CSS selectors
82
+ */
83
+ internalStateChanged() {
84
+ // Update the reflected state prop so CSS selectors work
85
+ this.state = this.internalState;
86
+ }
87
+ /**
88
+ * Syncs with the native Form API and Accessibility Tree
89
+ */
90
+ updateFormInternals() {
91
+ const isChecked = this.internalState === 'active';
92
+ // 1. Form Value: Only 'active' submits the value by default in standard HTML
93
+ this.internals.setFormValue(isChecked ? this.value : null);
94
+ // 2. Accessibility State
95
+ let ariaChecked = 'false';
96
+ if (this.internalState === 'active')
97
+ ariaChecked = 'true';
98
+ if (this.internalState === 'indeterminate')
99
+ ariaChecked = 'mixed';
100
+ this.internals.ariaChecked = ariaChecked;
101
+ this.internals.ariaDisabled = this.disabled ? 'true' : 'false';
102
+ }
103
+ render() {
104
+ return (h(Host, { key: '8a0a61a4ff3fefeaeecb5dc10c520ac16e554dfa', onClick: this.handleClick, onKeyDown: this.handleKeyDown, tabIndex: this.disabled ? -1 : 0, style: { cursor: this.disabled ? 'not-allowed' : 'pointer' } }, h("div", { key: '6d94fbb1d50c87aad42a7501d1da7557200923c1', part: "base", class: {
105
+ 'checkbox-container': true,
106
+ 'checkbox-disabled': this.disabled,
107
+ [`checkbox-${this.internalState}`]: true,
108
+ 'checkbox-no-label': !this.showLabel,
109
+ } }, h("div", { key: '9f6e83ccd3e3fee7195172dcc41d4ae1c47a39df', class: "checkbox-custom", part: "indicator" }), this.showLabel && (h("span", { key: '5d29b9332ac3aec5abc4fc05585a165ff9a365da', class: "checkbox-label", part: "label" }, h("slot", { key: '0e10eebc77109b5400f9332e6e25e0f19cb773bc' }))))));
110
+ }
111
+ static get is() { return "voa-checkbox"; }
112
+ static get encapsulation() { return "shadow"; }
113
+ static get delegatesFocus() { return true; }
114
+ static get formAssociated() { return true; }
115
+ static get originalStyleUrls() {
116
+ return {
117
+ "$": ["voa-checkbox.css"]
118
+ };
119
+ }
120
+ static get styleUrls() {
121
+ return {
122
+ "$": ["voa-checkbox.css"]
123
+ };
124
+ }
125
+ static get properties() {
126
+ return {
127
+ "state": {
128
+ "type": "string",
129
+ "mutable": false,
130
+ "complexType": {
131
+ "original": "CheckboxState",
132
+ "resolved": "\"active\" | \"inactive\" | \"indeterminate\"",
133
+ "references": {
134
+ "CheckboxState": {
135
+ "location": "local",
136
+ "path": "C:/Users/samuelv/WebstormProjects/ds-gab/packages/core/src/components/voa-checkbox/voa-checkbox.tsx",
137
+ "id": "src/components/voa-checkbox/voa-checkbox.tsx::CheckboxState"
138
+ }
139
+ }
140
+ },
141
+ "required": false,
142
+ "optional": false,
143
+ "docs": {
144
+ "tags": [],
145
+ "text": "State of the checkbox.\r\nactive = checked\r\ninactive = unchecked\r\nindeterminate = partial/mixed"
146
+ },
147
+ "getter": false,
148
+ "setter": false,
149
+ "reflect": true,
150
+ "attribute": "state",
151
+ "defaultValue": "'inactive'"
152
+ },
153
+ "disabled": {
154
+ "type": "boolean",
155
+ "mutable": false,
156
+ "complexType": {
157
+ "original": "boolean",
158
+ "resolved": "boolean",
159
+ "references": {}
160
+ },
161
+ "required": false,
162
+ "optional": false,
163
+ "docs": {
164
+ "tags": [],
165
+ "text": "Se o checkbox est\u00E1 desabilitado."
166
+ },
167
+ "getter": false,
168
+ "setter": false,
169
+ "reflect": true,
170
+ "attribute": "disabled",
171
+ "defaultValue": "false"
172
+ },
173
+ "showLabel": {
174
+ "type": "boolean",
175
+ "mutable": false,
176
+ "complexType": {
177
+ "original": "boolean",
178
+ "resolved": "boolean",
179
+ "references": {}
180
+ },
181
+ "required": false,
182
+ "optional": false,
183
+ "docs": {
184
+ "tags": [],
185
+ "text": "Se o label deve ser exibido."
186
+ },
187
+ "getter": false,
188
+ "setter": false,
189
+ "reflect": false,
190
+ "attribute": "show-label",
191
+ "defaultValue": "true"
192
+ },
193
+ "name": {
194
+ "type": "string",
195
+ "mutable": false,
196
+ "complexType": {
197
+ "original": "string",
198
+ "resolved": "string",
199
+ "references": {}
200
+ },
201
+ "required": false,
202
+ "optional": false,
203
+ "docs": {
204
+ "tags": [],
205
+ "text": "Nome do checkbox para formul\u00E1rios."
206
+ },
207
+ "getter": false,
208
+ "setter": false,
209
+ "reflect": false,
210
+ "attribute": "name"
211
+ },
212
+ "value": {
213
+ "type": "string",
214
+ "mutable": false,
215
+ "complexType": {
216
+ "original": "string",
217
+ "resolved": "string",
218
+ "references": {}
219
+ },
220
+ "required": false,
221
+ "optional": false,
222
+ "docs": {
223
+ "tags": [],
224
+ "text": "Valor do checkbox para formul\u00E1rios."
225
+ },
226
+ "getter": false,
227
+ "setter": false,
228
+ "reflect": false,
229
+ "attribute": "value",
230
+ "defaultValue": "'on'"
231
+ }
232
+ };
233
+ }
234
+ static get states() {
235
+ return {
236
+ "internalState": {}
237
+ };
238
+ }
239
+ static get events() {
240
+ return [{
241
+ "method": "dsChange",
242
+ "name": "dsChange",
243
+ "bubbles": true,
244
+ "cancelable": true,
245
+ "composed": true,
246
+ "docs": {
247
+ "tags": [],
248
+ "text": "Emitido quando o estado do checkbox muda.\r\nSegue o padr\u00E3o kebab-case: dsChange."
249
+ },
250
+ "complexType": {
251
+ "original": "CheckboxState",
252
+ "resolved": "\"active\" | \"inactive\" | \"indeterminate\"",
253
+ "references": {
254
+ "CheckboxState": {
255
+ "location": "local",
256
+ "path": "C:/Users/samuelv/WebstormProjects/ds-gab/packages/core/src/components/voa-checkbox/voa-checkbox.tsx",
257
+ "id": "src/components/voa-checkbox/voa-checkbox.tsx::CheckboxState"
258
+ }
259
+ }
260
+ }
261
+ }];
262
+ }
263
+ static get elementRef() { return "host"; }
264
+ static get watchers() {
265
+ return [{
266
+ "propName": "state",
267
+ "methodName": "stateChanged"
268
+ }, {
269
+ "propName": "internalState",
270
+ "methodName": "internalStateChanged"
271
+ }];
272
+ }
273
+ static get attachInternalsMemberName() { return "internals"; }
274
+ }
275
+ //# sourceMappingURL=voa-checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voa-checkbox.js","sourceRoot":"","sources":["../../../src/components/voa-checkbox/voa-checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItH;;;;;;;;;;;GAWG;AASH,MAAM,OAAO,WAAW;IARxB;QAYE;;WAEG;QACM,kBAAa,GAAkB,UAAU,CAAC;QAEnD;;;;;WAKG;QACsB,UAAK,GAAkB,UAAU,CAAC;QAE3D;;WAEG;QACsB,aAAQ,GAAY,KAAK,CAAC;QAEnD;;WAEG;QACK,cAAS,GAAY,IAAI,CAAC;QAOlC;;WAEG;QACK,UAAK,GAAW,IAAI,CAAC,CAAC,iCAAiC;QAiD/D;;WAEG;QACK,gBAAW,GAAG,CAAC,GAAU,EAAE,EAAE;YACnC,IAAI,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAE1B,0EAA0E;YAC1E,IAAI,IAAI,CAAC,aAAa,KAAK,eAAe,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBAChF,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;YAClC,CAAC;YAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF;;;WAGG;QACK,kBAAa,GAAG,CAAC,KAAoB,EAAE,EAAE;YAC/C,IAAI,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAE1B,qCAAqC;YACrC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;KAoCH;IA1GC,iBAAiB;QACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IAEH,YAAY,CAAC,QAAuB;QAClC,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC9B,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IAEH,oBAAoB;QAClB,wDAAwD;QACxD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC;IAClC,CAAC;IAED;;OAEG;IACK,mBAAmB;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC;QAElD,6EAA6E;QAC7E,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE3D,yBAAyB;QACzB,IAAI,WAAW,GAAG,OAAO,CAAC;QAC1B,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ;YAAE,WAAW,GAAG,MAAM,CAAC;QAC1D,IAAI,IAAI,CAAC,aAAa,KAAK,eAAe;YAAE,WAAW,GAAG,OAAO,CAAC;QAElE,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACjE,CAAC;IAiCD,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDACH,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE;YAE5D,4DACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE;oBACL,oBAAoB,EAAE,IAAI;oBAC1B,mBAAmB,EAAE,IAAI,CAAC,QAAQ;oBAClC,CAAC,YAAY,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI;oBACxC,mBAAmB,EAAE,CAAC,IAAI,CAAC,SAAS;iBACrC;gBAGD,4DAAK,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAC,WAAW,GAKvC;gBAEL,IAAI,CAAC,SAAS,IAAI,CACjB,6DAAM,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,OAAO;oBACvC,8DAAQ,CACH,CACR,CACG,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Prop, Event, EventEmitter, Element, AttachInternals, State, Watch } from '@stencil/core';\r\n\r\nexport type CheckboxState = 'active' | 'inactive' | 'indeterminate';\r\n\r\n/**\r\n * Componente de checkbox que segue o design system VOA.\r\n * \r\n * O componente segue o padrão \"unstyled\" (headless), fornecendo apenas estrutura e lógica.\r\n * Todos os estilos visuais devem ser aplicados externamente via CSS Parts API usando design tokens.\r\n * \r\n * @part base - O elemento raiz do checkbox (elemento <div> no container)\r\n * @part indicator - O indicador visual do checkbox (caixa customizada)\r\n * @part label - O wrapper do texto do label\r\n * \r\n * @slot default - Conteúdo do label do checkbox\r\n */\r\n@Component({\r\n tag: 'voa-checkbox',\r\n styleUrl: 'voa-checkbox.css',\r\n shadow: {\r\n delegatesFocus: true, // Passes focus to the internal input/button automatically\r\n },\r\n formAssociated: true, // CRITICAL: Makes this work in <form> tags\r\n})\r\nexport class VoaCheckbox {\r\n @Element() host: HTMLVoaCheckboxElement;\r\n @AttachInternals() internals: ElementInternals;\r\n\r\n /**\r\n * Internal state to handle \"uncontrolled\" usage while keeping props immutable\r\n */\r\n @State() internalState: CheckboxState = 'inactive';\r\n\r\n /**\r\n * State of the checkbox.\r\n * active = checked\r\n * inactive = unchecked\r\n * indeterminate = partial/mixed\r\n */\r\n @Prop({ reflect: true }) state: CheckboxState = 'inactive';\r\n\r\n /**\r\n * Se o checkbox está desabilitado.\r\n */\r\n @Prop({ reflect: true }) disabled: boolean = false;\r\n\r\n /**\r\n * Se o label deve ser exibido.\r\n */\r\n @Prop() showLabel: boolean = true;\r\n\r\n /**\r\n * Nome do checkbox para formulários.\r\n */\r\n @Prop() name: string;\r\n\r\n /**\r\n * Valor do checkbox para formulários.\r\n */\r\n @Prop() value: string = 'on'; // Default value if none provided\r\n\r\n /**\r\n * Emitido quando o estado do checkbox muda.\r\n * Segue o padrão kebab-case: dsChange.\r\n */\r\n @Event() dsChange: EventEmitter<CheckboxState>;\r\n\r\n componentWillLoad() {\r\n this.internalState = this.state;\r\n this.updateFormInternals();\r\n }\r\n\r\n /**\r\n * Atualiza o estado interno e sincroniza com o Form Internals API\r\n */\r\n @Watch('state')\r\n stateChanged(newValue: CheckboxState) {\r\n this.internalState = newValue;\r\n this.updateFormInternals();\r\n }\r\n\r\n /**\r\n * Watch changes to internal state and update the reflected prop for CSS selectors\r\n */\r\n @Watch('internalState')\r\n internalStateChanged() {\r\n // Update the reflected state prop so CSS selectors work\r\n this.state = this.internalState;\r\n }\r\n\r\n /**\r\n * Syncs with the native Form API and Accessibility Tree\r\n */\r\n private updateFormInternals() {\r\n const isChecked = this.internalState === 'active';\r\n\r\n // 1. Form Value: Only 'active' submits the value by default in standard HTML\r\n this.internals.setFormValue(isChecked ? this.value : null);\r\n\r\n // 2. Accessibility State\r\n let ariaChecked = 'false';\r\n if (this.internalState === 'active') ariaChecked = 'true';\r\n if (this.internalState === 'indeterminate') ariaChecked = 'mixed';\r\n\r\n this.internals.ariaChecked = ariaChecked;\r\n this.internals.ariaDisabled = this.disabled ? 'true' : 'false';\r\n }\r\n\r\n /**\r\n * Handler para clique no checkbox.\r\n */\r\n private handleClick = (_ev: Event) => {\r\n if (this.disabled) return;\r\n\r\n // Logic: Indeterminate -> Active. Active -> Inactive. Inactive -> Active.\r\n if (this.internalState === 'indeterminate' || this.internalState === 'inactive') {\r\n this.internalState = 'active';\r\n } else {\r\n this.internalState = 'inactive';\r\n }\r\n\r\n this.updateFormInternals();\r\n this.dsChange.emit(this.internalState);\r\n };\r\n\r\n /**\r\n * Handler para navegação por teclado (WCAG 2.2 AA).\r\n * Suporta Space para alternar estado.\r\n */\r\n private handleKeyDown = (event: KeyboardEvent) => {\r\n if (this.disabled) return;\r\n\r\n // Native checkbox activates on Space\r\n if (event.key === ' ') {\r\n event.preventDefault();\r\n this.handleClick(event);\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <Host\r\n onClick={this.handleClick}\r\n onKeyDown={this.handleKeyDown}\r\n tabIndex={this.disabled ? -1 : 0}\r\n style={{ cursor: this.disabled ? 'not-allowed' : 'pointer' }}\r\n >\r\n <div\r\n part=\"base\"\r\n class={{\r\n 'checkbox-container': true,\r\n 'checkbox-disabled': this.disabled,\r\n [`checkbox-${this.internalState}`]: true,\r\n 'checkbox-no-label': !this.showLabel,\r\n }}\r\n >\r\n {/* Visual Indicator */}\r\n <div class=\"checkbox-custom\" part=\"indicator\">\r\n {/* Optional: You could render the checkmark/dash SVG here if \r\n you wanted structural icons instead of pure CSS pseudo-elements.\r\n For now, keeping it empty to match your CSS-only approach.\r\n */}\r\n </div>\r\n\r\n {this.showLabel && (\r\n <span class=\"checkbox-label\" part=\"label\">\r\n <slot />\r\n </span>\r\n )}\r\n </div>\r\n </Host>\r\n );\r\n }\r\n} "]}