@bigbot-community/bigbot-ui 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/dist/braip-ui.cjs +2 -0
  2. package/dist/braip-ui.cjs.map +1 -0
  3. package/dist/braip-ui.js +2502 -0
  4. package/dist/braip-ui.js.map +1 -0
  5. package/dist/style.css +1 -0
  6. package/dist/types/components/atoms/BrAvatar/BrAvatar.vue.d.ts +9 -0
  7. package/dist/types/components/atoms/BrAvatar/BrAvatar.vue.d.ts.map +1 -0
  8. package/dist/types/components/atoms/BrAvatar/index.d.ts +3 -0
  9. package/dist/types/components/atoms/BrAvatar/index.d.ts.map +1 -0
  10. package/dist/types/components/atoms/BrAvatar/types.d.ts +37 -0
  11. package/dist/types/components/atoms/BrAvatar/types.d.ts.map +1 -0
  12. package/dist/types/components/atoms/BrBadge/BrBadge.test.d.ts +2 -0
  13. package/dist/types/components/atoms/BrBadge/BrBadge.test.d.ts.map +1 -0
  14. package/dist/types/components/atoms/BrBadge/BrBadge.vue.d.ts +18 -0
  15. package/dist/types/components/atoms/BrBadge/BrBadge.vue.d.ts.map +1 -0
  16. package/dist/types/components/atoms/BrBadge/index.d.ts +3 -0
  17. package/dist/types/components/atoms/BrBadge/index.d.ts.map +1 -0
  18. package/dist/types/components/atoms/BrBadge/types.d.ts +20 -0
  19. package/dist/types/components/atoms/BrBadge/types.d.ts.map +1 -0
  20. package/dist/types/components/atoms/BrButton/BrButton.test.d.ts +2 -0
  21. package/dist/types/components/atoms/BrButton/BrButton.test.d.ts.map +1 -0
  22. package/dist/types/components/atoms/BrButton/BrButton.vue.d.ts +25 -0
  23. package/dist/types/components/atoms/BrButton/BrButton.vue.d.ts.map +1 -0
  24. package/dist/types/components/atoms/BrButton/index.d.ts +3 -0
  25. package/dist/types/components/atoms/BrButton/index.d.ts.map +1 -0
  26. package/dist/types/components/atoms/BrButton/types.d.ts +35 -0
  27. package/dist/types/components/atoms/BrButton/types.d.ts.map +1 -0
  28. package/dist/types/components/atoms/BrCheckbox/BrCheckbox.test.d.ts +2 -0
  29. package/dist/types/components/atoms/BrCheckbox/BrCheckbox.test.d.ts.map +1 -0
  30. package/dist/types/components/atoms/BrCheckbox/BrCheckbox.vue.d.ts +29 -0
  31. package/dist/types/components/atoms/BrCheckbox/BrCheckbox.vue.d.ts.map +1 -0
  32. package/dist/types/components/atoms/BrCheckbox/BrCheckboxGroup.vue.d.ts +17 -0
  33. package/dist/types/components/atoms/BrCheckbox/BrCheckboxGroup.vue.d.ts.map +1 -0
  34. package/dist/types/components/atoms/BrCheckbox/index.d.ts +4 -0
  35. package/dist/types/components/atoms/BrCheckbox/index.d.ts.map +1 -0
  36. package/dist/types/components/atoms/BrCheckbox/types.d.ts +86 -0
  37. package/dist/types/components/atoms/BrCheckbox/types.d.ts.map +1 -0
  38. package/dist/types/components/atoms/BrImage/BrImage.vue.d.ts +9 -0
  39. package/dist/types/components/atoms/BrImage/BrImage.vue.d.ts.map +1 -0
  40. package/dist/types/components/atoms/BrImage/index.d.ts +3 -0
  41. package/dist/types/components/atoms/BrImage/index.d.ts.map +1 -0
  42. package/dist/types/components/atoms/BrImage/types.d.ts +43 -0
  43. package/dist/types/components/atoms/BrImage/types.d.ts.map +1 -0
  44. package/dist/types/components/atoms/BrInput/BrInput.test.d.ts +2 -0
  45. package/dist/types/components/atoms/BrInput/BrInput.test.d.ts.map +1 -0
  46. package/dist/types/components/atoms/BrInput/BrInput.vue.d.ts +35 -0
  47. package/dist/types/components/atoms/BrInput/BrInput.vue.d.ts.map +1 -0
  48. package/dist/types/components/atoms/BrInput/index.d.ts +3 -0
  49. package/dist/types/components/atoms/BrInput/index.d.ts.map +1 -0
  50. package/dist/types/components/atoms/BrInput/types.d.ts +55 -0
  51. package/dist/types/components/atoms/BrInput/types.d.ts.map +1 -0
  52. package/dist/types/components/atoms/BrProgressbar/BrProgressbar.vue.d.ts +15 -0
  53. package/dist/types/components/atoms/BrProgressbar/BrProgressbar.vue.d.ts.map +1 -0
  54. package/dist/types/components/atoms/BrProgressbar/index.d.ts +3 -0
  55. package/dist/types/components/atoms/BrProgressbar/index.d.ts.map +1 -0
  56. package/dist/types/components/atoms/BrProgressbar/types.d.ts +55 -0
  57. package/dist/types/components/atoms/BrProgressbar/types.d.ts.map +1 -0
  58. package/dist/types/components/atoms/BrRadio/BrRadio.vue.d.ts +26 -0
  59. package/dist/types/components/atoms/BrRadio/BrRadio.vue.d.ts.map +1 -0
  60. package/dist/types/components/atoms/BrRadio/BrRadioGroup.vue.d.ts +17 -0
  61. package/dist/types/components/atoms/BrRadio/BrRadioGroup.vue.d.ts.map +1 -0
  62. package/dist/types/components/atoms/BrRadio/index.d.ts +4 -0
  63. package/dist/types/components/atoms/BrRadio/index.d.ts.map +1 -0
  64. package/dist/types/components/atoms/BrRadio/types.d.ts +77 -0
  65. package/dist/types/components/atoms/BrRadio/types.d.ts.map +1 -0
  66. package/dist/types/components/atoms/BrRating/BrRating.vue.d.ts +21 -0
  67. package/dist/types/components/atoms/BrRating/BrRating.vue.d.ts.map +1 -0
  68. package/dist/types/components/atoms/BrRating/index.d.ts +3 -0
  69. package/dist/types/components/atoms/BrRating/index.d.ts.map +1 -0
  70. package/dist/types/components/atoms/BrRating/types.d.ts +51 -0
  71. package/dist/types/components/atoms/BrRating/types.d.ts.map +1 -0
  72. package/dist/types/components/atoms/BrSelect/BrSelect.vue.d.ts +27 -0
  73. package/dist/types/components/atoms/BrSelect/BrSelect.vue.d.ts.map +1 -0
  74. package/dist/types/components/atoms/BrSelect/index.d.ts +3 -0
  75. package/dist/types/components/atoms/BrSelect/index.d.ts.map +1 -0
  76. package/dist/types/components/atoms/BrSelect/types.d.ts +52 -0
  77. package/dist/types/components/atoms/BrSelect/types.d.ts.map +1 -0
  78. package/dist/types/components/atoms/BrSpinner/BrSpinner.vue.d.ts +8 -0
  79. package/dist/types/components/atoms/BrSpinner/BrSpinner.vue.d.ts.map +1 -0
  80. package/dist/types/components/atoms/BrSpinner/index.d.ts +3 -0
  81. package/dist/types/components/atoms/BrSpinner/index.d.ts.map +1 -0
  82. package/dist/types/components/atoms/BrSpinner/types.d.ts +20 -0
  83. package/dist/types/components/atoms/BrSpinner/types.d.ts.map +1 -0
  84. package/dist/types/components/atoms/BrSwitch/BrSwitch.test.d.ts +2 -0
  85. package/dist/types/components/atoms/BrSwitch/BrSwitch.test.d.ts.map +1 -0
  86. package/dist/types/components/atoms/BrSwitch/BrSwitch.vue.d.ts +15 -0
  87. package/dist/types/components/atoms/BrSwitch/BrSwitch.vue.d.ts.map +1 -0
  88. package/dist/types/components/atoms/BrSwitch/index.d.ts +3 -0
  89. package/dist/types/components/atoms/BrSwitch/index.d.ts.map +1 -0
  90. package/dist/types/components/atoms/BrSwitch/types.d.ts +14 -0
  91. package/dist/types/components/atoms/BrSwitch/types.d.ts.map +1 -0
  92. package/dist/types/components/atoms/BrTextarea/BrTextarea.vue.d.ts +31 -0
  93. package/dist/types/components/atoms/BrTextarea/BrTextarea.vue.d.ts.map +1 -0
  94. package/dist/types/components/atoms/BrTextarea/index.d.ts +3 -0
  95. package/dist/types/components/atoms/BrTextarea/index.d.ts.map +1 -0
  96. package/dist/types/components/atoms/BrTextarea/types.d.ts +37 -0
  97. package/dist/types/components/atoms/BrTextarea/types.d.ts.map +1 -0
  98. package/dist/types/components/atoms/BrTitle/BrTitle.vue.d.ts +22 -0
  99. package/dist/types/components/atoms/BrTitle/BrTitle.vue.d.ts.map +1 -0
  100. package/dist/types/components/atoms/BrTitle/index.d.ts +3 -0
  101. package/dist/types/components/atoms/BrTitle/index.d.ts.map +1 -0
  102. package/dist/types/components/atoms/BrTitle/types.d.ts +41 -0
  103. package/dist/types/components/atoms/BrTitle/types.d.ts.map +1 -0
  104. package/dist/types/components/atoms/BrVideo/BrVideo.vue.d.ts +39 -0
  105. package/dist/types/components/atoms/BrVideo/BrVideo.vue.d.ts.map +1 -0
  106. package/dist/types/components/atoms/BrVideo/index.d.ts +3 -0
  107. package/dist/types/components/atoms/BrVideo/index.d.ts.map +1 -0
  108. package/dist/types/components/atoms/BrVideo/types.d.ts +48 -0
  109. package/dist/types/components/atoms/BrVideo/types.d.ts.map +1 -0
  110. package/dist/types/components/atoms/index.d.ts +16 -0
  111. package/dist/types/components/atoms/index.d.ts.map +1 -0
  112. package/dist/types/components/index.d.ts +4 -0
  113. package/dist/types/components/index.d.ts.map +1 -0
  114. package/dist/types/components/molecules/BrAccordion/BrAccordion.vue.d.ts +23 -0
  115. package/dist/types/components/molecules/BrAccordion/BrAccordion.vue.d.ts.map +1 -0
  116. package/dist/types/components/molecules/BrAccordion/BrAccordionItem.vue.d.ts +20 -0
  117. package/dist/types/components/molecules/BrAccordion/BrAccordionItem.vue.d.ts.map +1 -0
  118. package/dist/types/components/molecules/BrAccordion/index.d.ts +4 -0
  119. package/dist/types/components/molecules/BrAccordion/index.d.ts.map +1 -0
  120. package/dist/types/components/molecules/BrAccordion/types.d.ts +72 -0
  121. package/dist/types/components/molecules/BrAccordion/types.d.ts.map +1 -0
  122. package/dist/types/components/molecules/BrCalendar/BrCalendar.vue.d.ts +21 -0
  123. package/dist/types/components/molecules/BrCalendar/BrCalendar.vue.d.ts.map +1 -0
  124. package/dist/types/components/molecules/BrCalendar/index.d.ts +3 -0
  125. package/dist/types/components/molecules/BrCalendar/index.d.ts.map +1 -0
  126. package/dist/types/components/molecules/BrCalendar/types.d.ts +68 -0
  127. package/dist/types/components/molecules/BrCalendar/types.d.ts.map +1 -0
  128. package/dist/types/components/molecules/BrCard/BrCard.vue.d.ts +35 -0
  129. package/dist/types/components/molecules/BrCard/BrCard.vue.d.ts.map +1 -0
  130. package/dist/types/components/molecules/BrCard/index.d.ts +3 -0
  131. package/dist/types/components/molecules/BrCard/index.d.ts.map +1 -0
  132. package/dist/types/components/molecules/BrCard/types.d.ts +61 -0
  133. package/dist/types/components/molecules/BrCard/types.d.ts.map +1 -0
  134. package/dist/types/components/molecules/BrFormField/BrFormField.vue.d.ts +24 -0
  135. package/dist/types/components/molecules/BrFormField/BrFormField.vue.d.ts.map +1 -0
  136. package/dist/types/components/molecules/BrFormField/index.d.ts +3 -0
  137. package/dist/types/components/molecules/BrFormField/index.d.ts.map +1 -0
  138. package/dist/types/components/molecules/BrFormField/types.d.ts +55 -0
  139. package/dist/types/components/molecules/BrFormField/types.d.ts.map +1 -0
  140. package/dist/types/components/molecules/BrModal/BrModal.test.d.ts +2 -0
  141. package/dist/types/components/molecules/BrModal/BrModal.test.d.ts.map +1 -0
  142. package/dist/types/components/molecules/BrModal/BrModal.vue.d.ts +43 -0
  143. package/dist/types/components/molecules/BrModal/BrModal.vue.d.ts.map +1 -0
  144. package/dist/types/components/molecules/BrModal/index.d.ts +3 -0
  145. package/dist/types/components/molecules/BrModal/index.d.ts.map +1 -0
  146. package/dist/types/components/molecules/BrModal/types.d.ts +49 -0
  147. package/dist/types/components/molecules/BrModal/types.d.ts.map +1 -0
  148. package/dist/types/components/molecules/BrStepper/BrStepper.vue.d.ts +22 -0
  149. package/dist/types/components/molecules/BrStepper/BrStepper.vue.d.ts.map +1 -0
  150. package/dist/types/components/molecules/BrStepper/index.d.ts +3 -0
  151. package/dist/types/components/molecules/BrStepper/index.d.ts.map +1 -0
  152. package/dist/types/components/molecules/BrStepper/types.d.ts +65 -0
  153. package/dist/types/components/molecules/BrStepper/types.d.ts.map +1 -0
  154. package/dist/types/components/molecules/BrTabs/BrTab.vue.d.ts +23 -0
  155. package/dist/types/components/molecules/BrTabs/BrTab.vue.d.ts.map +1 -0
  156. package/dist/types/components/molecules/BrTabs/BrTabPanel.vue.d.ts +16 -0
  157. package/dist/types/components/molecules/BrTabs/BrTabPanel.vue.d.ts.map +1 -0
  158. package/dist/types/components/molecules/BrTabs/BrTabs.test.d.ts +2 -0
  159. package/dist/types/components/molecules/BrTabs/BrTabs.test.d.ts.map +1 -0
  160. package/dist/types/components/molecules/BrTabs/BrTabs.vue.d.ts +40 -0
  161. package/dist/types/components/molecules/BrTabs/BrTabs.vue.d.ts.map +1 -0
  162. package/dist/types/components/molecules/BrTabs/index.d.ts +5 -0
  163. package/dist/types/components/molecules/BrTabs/index.d.ts.map +1 -0
  164. package/dist/types/components/molecules/BrTabs/types.d.ts +116 -0
  165. package/dist/types/components/molecules/BrTabs/types.d.ts.map +1 -0
  166. package/dist/types/components/molecules/index.d.ts +8 -0
  167. package/dist/types/components/molecules/index.d.ts.map +1 -0
  168. package/dist/types/components/organisms/BrNavbar/BrNavbar.vue.d.ts +28 -0
  169. package/dist/types/components/organisms/BrNavbar/BrNavbar.vue.d.ts.map +1 -0
  170. package/dist/types/components/organisms/BrNavbar/index.d.ts +3 -0
  171. package/dist/types/components/organisms/BrNavbar/index.d.ts.map +1 -0
  172. package/dist/types/components/organisms/BrNavbar/types.d.ts +84 -0
  173. package/dist/types/components/organisms/BrNavbar/types.d.ts.map +1 -0
  174. package/dist/types/components/organisms/BrSidebar/BrSidebar.vue.d.ts +35 -0
  175. package/dist/types/components/organisms/BrSidebar/BrSidebar.vue.d.ts.map +1 -0
  176. package/dist/types/components/organisms/BrSidebar/index.d.ts +3 -0
  177. package/dist/types/components/organisms/BrSidebar/index.d.ts.map +1 -0
  178. package/dist/types/components/organisms/BrSidebar/types.d.ts +100 -0
  179. package/dist/types/components/organisms/BrSidebar/types.d.ts.map +1 -0
  180. package/dist/types/components/organisms/index.d.ts +3 -0
  181. package/dist/types/components/organisms/index.d.ts.map +1 -0
  182. package/dist/types/index.d.ts +5 -0
  183. package/dist/types/index.d.ts.map +1 -0
  184. package/dist/types/plugin.d.ts +9 -0
  185. package/dist/types/plugin.d.ts.map +1 -0
  186. package/dist/types/types/index.d.ts +48 -0
  187. package/dist/types/types/index.d.ts.map +1 -0
  188. package/package.json +77 -0
  189. package/src/assets/icons/airplane.svg +7 -0
  190. package/src/assets/icons/anchor.svg +6 -0
  191. package/src/assets/icons/arrow-bottom-right-o.svg +9 -0
  192. package/src/assets/icons/arrow-bottom-right-r.svg +9 -0
  193. package/src/assets/icons/arrow-bottom-right.svg +7 -0
  194. package/src/assets/icons/arrow-down-o.svg +9 -0
  195. package/src/assets/icons/arrow-down-r.svg +9 -0
  196. package/src/assets/icons/arrow-down.svg +7 -0
  197. package/src/assets/icons/arrow-left-o.svg +9 -0
  198. package/src/assets/icons/arrow-left-r.svg +9 -0
  199. package/src/assets/icons/arrow-left.svg +7 -0
  200. package/src/assets/icons/arrow-long-up.svg +7 -0
  201. package/src/assets/icons/arrow-right-o.svg +9 -0
  202. package/src/assets/icons/arrow-right-r.svg +9 -0
  203. package/src/assets/icons/arrow-right.svg +7 -0
  204. package/src/assets/icons/arrow-top-left-o.svg +9 -0
  205. package/src/assets/icons/arrow-top-left-r.svg +9 -0
  206. package/src/assets/icons/arrow-top-left.svg +7 -0
  207. package/src/assets/icons/arrow-top-right-o.svg +9 -0
  208. package/src/assets/icons/arrow-top-right-r.svg +9 -0
  209. package/src/assets/icons/arrow-top-right.svg +7 -0
  210. package/src/assets/icons/arrow-up-o.svg +9 -0
  211. package/src/assets/icons/arrow-up-r.svg +9 -0
  212. package/src/assets/icons/arrow-up.svg +7 -0
  213. package/src/assets/icons/awards.svg +6 -0
  214. package/src/assets/icons/band-aid.svg +21 -0
  215. package/src/assets/icons/bee.svg +7 -0
  216. package/src/assets/icons/bitbucket.svg +7 -0
  217. package/src/assets/icons/block.svg +11 -0
  218. package/src/assets/icons/bowl.svg +6 -0
  219. package/src/assets/icons/boy.svg +14 -0
  220. package/src/assets/icons/briefcase.svg +9 -0
  221. package/src/assets/icons/browse.svg +13 -0
  222. package/src/assets/icons/brush.svg +6 -0
  223. package/src/assets/icons/calibrate.svg +11 -0
  224. package/src/assets/icons/cap.svg +9 -0
  225. package/src/assets/icons/card-clubs.svg +17 -0
  226. package/src/assets/icons/card-diamonds.svg +9 -0
  227. package/src/assets/icons/card-hearts.svg +11 -0
  228. package/src/assets/icons/card-spades.svg +11 -0
  229. package/src/assets/icons/check-o.svg +9 -0
  230. package/src/assets/icons/check-r.svg +9 -0
  231. package/src/assets/icons/check.svg +3 -0
  232. package/src/assets/icons/chevron-double-down-o.svg +14 -0
  233. package/src/assets/icons/chevron-double-down-r.svg +14 -0
  234. package/src/assets/icons/chevron-double-down.svg +12 -0
  235. package/src/assets/icons/chevron-double-left-o.svg +14 -0
  236. package/src/assets/icons/chevron-double-left-r.svg +14 -0
  237. package/src/assets/icons/chevron-double-left.svg +12 -0
  238. package/src/assets/icons/chevron-double-right-o.svg +14 -0
  239. package/src/assets/icons/chevron-double-right-r.svg +14 -0
  240. package/src/assets/icons/chevron-double-right.svg +12 -0
  241. package/src/assets/icons/pix.svg +7 -0
  242. package/src/assets/icons/push-chevron-left-o.svg +12 -0
  243. package/src/assets/icons/push-chevron-left-r.svg +12 -0
  244. package/src/assets/icons/push-chevron-left.svg +10 -0
  245. package/src/assets/icons/push-chevron-right-o.svg +12 -0
  246. package/src/assets/icons/push-chevron-right-r.svg +12 -0
  247. package/src/assets/icons/push-chevron-right.svg +10 -0
  248. package/src/assets/icons/push-chevron-up-o.svg +6 -0
  249. package/src/assets/icons/push-chevron-up-r.svg +6 -0
  250. package/src/assets/icons/push-chevron-up.svg +10 -0
  251. package/src/assets/icons/sync.svg +12 -0
  252. package/src/assets/icons/trending-down.svg +7 -0
  253. package/src/assets/icons/trending.svg +7 -0
  254. package/src/components/atoms/BrAvatar/BrAvatar.vue +154 -0
  255. package/src/components/atoms/BrAvatar/index.ts +2 -0
  256. package/src/components/atoms/BrAvatar/types.ts +43 -0
  257. package/src/components/atoms/BrBadge/BrBadge.test.ts +61 -0
  258. package/src/components/atoms/BrBadge/BrBadge.vue +125 -0
  259. package/src/components/atoms/BrBadge/index.ts +2 -0
  260. package/src/components/atoms/BrBadge/types.ts +22 -0
  261. package/src/components/atoms/BrButton/BrButton.test.ts +79 -0
  262. package/src/components/atoms/BrButton/BrButton.vue +291 -0
  263. package/src/components/atoms/BrButton/index.ts +2 -0
  264. package/src/components/atoms/BrButton/types.ts +44 -0
  265. package/src/components/atoms/BrCheckbox/BrCheckbox.test.ts +132 -0
  266. package/src/components/atoms/BrCheckbox/BrCheckbox.vue +198 -0
  267. package/src/components/atoms/BrCheckbox/BrCheckboxGroup.vue +92 -0
  268. package/src/components/atoms/BrCheckbox/index.ts +3 -0
  269. package/src/components/atoms/BrCheckbox/types.ts +102 -0
  270. package/src/components/atoms/BrImage/BrImage.vue +134 -0
  271. package/src/components/atoms/BrImage/index.ts +2 -0
  272. package/src/components/atoms/BrImage/types.ts +51 -0
  273. package/src/components/atoms/BrInput/BrInput.test.ts +98 -0
  274. package/src/components/atoms/BrInput/BrInput.vue +215 -0
  275. package/src/components/atoms/BrInput/index.ts +2 -0
  276. package/src/components/atoms/BrInput/types.ts +65 -0
  277. package/src/components/atoms/BrProgressbar/BrProgressbar.vue +204 -0
  278. package/src/components/atoms/BrProgressbar/index.ts +2 -0
  279. package/src/components/atoms/BrProgressbar/types.ts +64 -0
  280. package/src/components/atoms/BrRadio/BrRadio.vue +175 -0
  281. package/src/components/atoms/BrRadio/BrRadioGroup.vue +77 -0
  282. package/src/components/atoms/BrRadio/index.ts +3 -0
  283. package/src/components/atoms/BrRadio/types.ts +91 -0
  284. package/src/components/atoms/BrRating/BrRating.vue +234 -0
  285. package/src/components/atoms/BrRating/index.ts +2 -0
  286. package/src/components/atoms/BrRating/types.ts +60 -0
  287. package/src/components/atoms/BrSelect/BrSelect.vue +408 -0
  288. package/src/components/atoms/BrSelect/index.ts +2 -0
  289. package/src/components/atoms/BrSelect/types.ts +61 -0
  290. package/src/components/atoms/BrSpinner/BrSpinner.vue +125 -0
  291. package/src/components/atoms/BrSpinner/index.ts +2 -0
  292. package/src/components/atoms/BrSpinner/types.ts +22 -0
  293. package/src/components/atoms/BrSwitch/BrSwitch.test.ts +81 -0
  294. package/src/components/atoms/BrSwitch/BrSwitch.vue +181 -0
  295. package/src/components/atoms/BrSwitch/index.ts +2 -0
  296. package/src/components/atoms/BrSwitch/types.ts +15 -0
  297. package/src/components/atoms/BrTextarea/BrTextarea.vue +179 -0
  298. package/src/components/atoms/BrTextarea/index.ts +2 -0
  299. package/src/components/atoms/BrTextarea/types.ts +43 -0
  300. package/src/components/atoms/BrTitle/BrTitle.vue +154 -0
  301. package/src/components/atoms/BrTitle/index.ts +2 -0
  302. package/src/components/atoms/BrTitle/types.ts +47 -0
  303. package/src/components/atoms/BrVideo/BrVideo.vue +135 -0
  304. package/src/components/atoms/BrVideo/index.ts +2 -0
  305. package/src/components/atoms/BrVideo/types.ts +56 -0
  306. package/src/components/atoms/index.ts +20 -0
  307. package/src/components/index.ts +7 -0
  308. package/src/components/molecules/BrAccordion/BrAccordion.vue +112 -0
  309. package/src/components/molecules/BrAccordion/BrAccordionItem.vue +168 -0
  310. package/src/components/molecules/BrAccordion/index.ts +3 -0
  311. package/src/components/molecules/BrAccordion/types.ts +85 -0
  312. package/src/components/molecules/BrCalendar/BrCalendar.vue +553 -0
  313. package/src/components/molecules/BrCalendar/index.ts +2 -0
  314. package/src/components/molecules/BrCalendar/types.ts +80 -0
  315. package/src/components/molecules/BrCard/BrCard.vue +262 -0
  316. package/src/components/molecules/BrCard/index.ts +2 -0
  317. package/src/components/molecules/BrCard/types.ts +72 -0
  318. package/src/components/molecules/BrFormField/BrFormField.vue +241 -0
  319. package/src/components/molecules/BrFormField/index.ts +2 -0
  320. package/src/components/molecules/BrFormField/types.ts +64 -0
  321. package/src/components/molecules/BrModal/BrModal.test.ts +212 -0
  322. package/src/components/molecules/BrModal/BrModal.vue +404 -0
  323. package/src/components/molecules/BrModal/index.ts +2 -0
  324. package/src/components/molecules/BrModal/types.ts +57 -0
  325. package/src/components/molecules/BrStepper/BrStepper.vue +302 -0
  326. package/src/components/molecules/BrStepper/index.ts +2 -0
  327. package/src/components/molecules/BrStepper/types.ts +77 -0
  328. package/src/components/molecules/BrTabs/BrTab.vue +69 -0
  329. package/src/components/molecules/BrTabs/BrTabPanel.vue +36 -0
  330. package/src/components/molecules/BrTabs/BrTabs.test.ts +168 -0
  331. package/src/components/molecules/BrTabs/BrTabs.vue +319 -0
  332. package/src/components/molecules/BrTabs/index.ts +4 -0
  333. package/src/components/molecules/BrTabs/types.ts +139 -0
  334. package/src/components/molecules/index.ts +11 -0
  335. package/src/components/organisms/BrNavbar/BrNavbar.vue +424 -0
  336. package/src/components/organisms/BrNavbar/index.ts +2 -0
  337. package/src/components/organisms/BrNavbar/types.ts +101 -0
  338. package/src/components/organisms/BrSidebar/BrSidebar.vue +382 -0
  339. package/src/components/organisms/BrSidebar/index.ts +2 -0
  340. package/src/components/organisms/BrSidebar/types.ts +121 -0
  341. package/src/components/organisms/index.ts +6 -0
  342. package/src/index.ts +32 -0
  343. package/src/plugin.ts +61 -0
  344. package/src/styles/base/_animations.scss +187 -0
  345. package/src/styles/base/_reset.scss +109 -0
  346. package/src/styles/base/index.scss +6 -0
  347. package/src/styles/main.scss +9 -0
  348. package/src/styles/tokens/_colors.scss +185 -0
  349. package/src/styles/tokens/_spacing.scss +88 -0
  350. package/src/styles/tokens/_typography.scss +77 -0
  351. package/src/styles/tokens/index.scss +7 -0
  352. package/src/types/index.ts +125 -0
@@ -0,0 +1,382 @@
1
+ <script setup lang="ts">
2
+ import { computed, ref, provide } from 'vue'
3
+ import type { SidebarProps, SidebarItem } from './types'
4
+
5
+ const props = withDefaults(defineProps<SidebarProps>(), {
6
+ variant: 'default',
7
+ collapsed: false,
8
+ showToggle: true,
9
+ elevated: true,
10
+ fixed: false,
11
+ width: 260,
12
+ collapsedWidth: 64,
13
+ showBrand: true,
14
+ })
15
+
16
+ const isCollapsed = defineModel<boolean>('collapsed', { default: false })
17
+ const expandedItems = ref<Set<string | number>>(new Set())
18
+
19
+ const classes = computed(() => [
20
+ 'br-sidebar',
21
+ `br-sidebar--${props.variant}`,
22
+ {
23
+ 'br-sidebar--collapsed': isCollapsed.value,
24
+ 'br-sidebar--elevated': props.elevated,
25
+ 'br-sidebar--fixed': props.fixed,
26
+ },
27
+ ])
28
+
29
+ const style = computed(() => ({
30
+ width:
31
+ typeof (isCollapsed.value ? props.collapsedWidth : props.width) === 'number'
32
+ ? `${isCollapsed.value ? props.collapsedWidth : props.width}px`
33
+ : (isCollapsed.value ? props.collapsedWidth : props.width),
34
+ }))
35
+
36
+ function toggleCollapse() {
37
+ isCollapsed.value = !isCollapsed.value
38
+ }
39
+
40
+ function toggleExpanded(id: string | number) {
41
+ if (expandedItems.value.has(id)) {
42
+ expandedItems.value.delete(id)
43
+ } else {
44
+ expandedItems.value.add(id)
45
+ }
46
+ expandedItems.value = new Set(expandedItems.value)
47
+ }
48
+
49
+ function isExpanded(id: string | number) {
50
+ return expandedItems.value.has(id)
51
+ }
52
+
53
+ provide('sidebar', {
54
+ isCollapsed,
55
+ toggleExpanded,
56
+ isExpanded,
57
+ })
58
+ </script>
59
+
60
+ <template>
61
+ <aside :class="classes" :style="style">
62
+ <!-- Brand Area -->
63
+ <div v-if="showBrand" class="br-sidebar__brand">
64
+ <slot name="brand">
65
+ <img v-if="logo" :src="logo" alt="" class="br-sidebar__logo" />
66
+ <span v-if="brand && !isCollapsed" class="br-sidebar__brand-text">{{ brand }}</span>
67
+ </slot>
68
+ </div>
69
+
70
+ <!-- Navigation -->
71
+ <nav class="br-sidebar__nav">
72
+ <slot name="nav">
73
+ <template v-if="items && items.length">
74
+ <template v-for="item in items" :key="item.id">
75
+ <!-- Divider/Section Header -->
76
+ <div v-if="item.divider" class="br-sidebar__divider">
77
+ <span v-if="!isCollapsed">{{ item.label }}</span>
78
+ </div>
79
+
80
+ <!-- Item with children -->
81
+ <div v-else-if="item.children && item.children.length" class="br-sidebar__group">
82
+ <button
83
+ type="button"
84
+ class="br-sidebar__item br-sidebar__group-trigger"
85
+ :class="{ 'br-sidebar__item--expanded': isExpanded(item.id) }"
86
+ :disabled="item.disabled"
87
+ @click="toggleExpanded(item.id)"
88
+ >
89
+ <span v-if="item.icon" class="br-sidebar__item-icon">{{ item.icon }}</span>
90
+ <span v-if="!isCollapsed" class="br-sidebar__item-label">{{ item.label }}</span>
91
+ <svg v-if="!isCollapsed" class="br-sidebar__group-arrow" viewBox="0 0 24 24" fill="currentColor">
92
+ <path d="M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z" />
93
+ </svg>
94
+ </button>
95
+ <div v-if="!isCollapsed" class="br-sidebar__group-items" :class="{ 'br-sidebar__group-items--expanded': isExpanded(item.id) }">
96
+ <component
97
+ :is="child.to ? 'router-link' : child.href ? 'a' : 'button'"
98
+ v-for="child in item.children"
99
+ :key="child.id"
100
+ class="br-sidebar__item br-sidebar__item--nested"
101
+ :to="child.to"
102
+ :href="child.href"
103
+ :disabled="child.disabled"
104
+ @click="child.onClick"
105
+ >
106
+ <span v-if="child.icon" class="br-sidebar__item-icon">{{ child.icon }}</span>
107
+ <span class="br-sidebar__item-label">{{ child.label }}</span>
108
+ <span v-if="child.badge" class="br-sidebar__item-badge" :class="`br-sidebar__item-badge--${child.badgeVariant || 'primary'}`">
109
+ {{ child.badge }}
110
+ </span>
111
+ </component>
112
+ </div>
113
+ </div>
114
+
115
+ <!-- Regular item -->
116
+ <component
117
+ v-else
118
+ :is="item.to ? 'router-link' : item.href ? 'a' : 'button'"
119
+ class="br-sidebar__item"
120
+ :to="item.to"
121
+ :href="item.href"
122
+ :disabled="item.disabled"
123
+ :title="isCollapsed ? item.label : undefined"
124
+ @click="item.onClick"
125
+ >
126
+ <span v-if="item.icon" class="br-sidebar__item-icon">{{ item.icon }}</span>
127
+ <span v-if="!isCollapsed" class="br-sidebar__item-label">{{ item.label }}</span>
128
+ <span v-if="item.badge && !isCollapsed" class="br-sidebar__item-badge" :class="`br-sidebar__item-badge--${item.badgeVariant || 'primary'}`">
129
+ {{ item.badge }}
130
+ </span>
131
+ </component>
132
+ </template>
133
+ </template>
134
+ </slot>
135
+ </nav>
136
+
137
+ <!-- Footer -->
138
+ <div class="br-sidebar__footer">
139
+ <slot name="footer" />
140
+
141
+ <button
142
+ v-if="showToggle"
143
+ type="button"
144
+ class="br-sidebar__toggle"
145
+ @click="toggleCollapse"
146
+ >
147
+ <svg viewBox="0 0 24 24" fill="currentColor">
148
+ <path v-if="isCollapsed" d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z" />
149
+ <path v-else d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z" />
150
+ </svg>
151
+ </button>
152
+ </div>
153
+ </aside>
154
+ </template>
155
+
156
+ <style lang="scss" scoped>
157
+ .br-sidebar {
158
+ display: flex;
159
+ flex-direction: column;
160
+ height: 100%;
161
+ background: var(--br-white);
162
+ border-right: 1px solid var(--br-light-200);
163
+ transition: width var(--br-transition-normal);
164
+ overflow: hidden;
165
+
166
+ &--elevated {
167
+ box-shadow: var(--br-shadow-md);
168
+ border-right: none;
169
+ }
170
+
171
+ &--fixed {
172
+ position: fixed;
173
+ top: 0;
174
+ left: 0;
175
+ bottom: 0;
176
+ z-index: 999;
177
+ }
178
+
179
+ &__brand {
180
+ display: flex;
181
+ align-items: center;
182
+ gap: var(--br-space-3);
183
+ padding: var(--br-space-4);
184
+ border-bottom: 1px solid var(--br-light-200);
185
+ min-height: 64px;
186
+ }
187
+
188
+ &__logo {
189
+ width: 32px;
190
+ height: 32px;
191
+ flex-shrink: 0;
192
+ object-fit: contain;
193
+ }
194
+
195
+ &__brand-text {
196
+ font-size: var(--br-text-lg);
197
+ font-weight: var(--br-font-bold);
198
+ color: var(--br-dark-800);
199
+ white-space: nowrap;
200
+ overflow: hidden;
201
+ }
202
+
203
+ &--collapsed &__brand {
204
+ justify-content: center;
205
+ padding: var(--br-space-4) var(--br-space-2);
206
+ }
207
+
208
+ &__nav {
209
+ flex: 1;
210
+ padding: var(--br-space-2);
211
+ overflow-y: auto;
212
+ overflow-x: hidden;
213
+ }
214
+
215
+ &__divider {
216
+ padding: var(--br-space-3) var(--br-space-3) var(--br-space-2);
217
+ font-size: var(--br-text-xs);
218
+ font-weight: var(--br-font-semibold);
219
+ color: var(--br-dark-400);
220
+ text-transform: uppercase;
221
+ letter-spacing: 0.05em;
222
+ }
223
+
224
+ &__group {
225
+ margin-bottom: var(--br-space-1);
226
+ }
227
+
228
+ &__group-items {
229
+ max-height: 0;
230
+ overflow: hidden;
231
+ transition: max-height var(--br-transition-normal);
232
+
233
+ &--expanded {
234
+ max-height: 500px;
235
+ }
236
+ }
237
+
238
+ &__group-arrow {
239
+ width: 20px;
240
+ height: 20px;
241
+ margin-left: auto;
242
+ color: var(--br-dark-400);
243
+ transition: transform var(--br-transition-fast);
244
+ }
245
+
246
+ &__item--expanded &__group-arrow {
247
+ transform: rotate(90deg);
248
+ }
249
+
250
+ &__item {
251
+ display: flex;
252
+ align-items: center;
253
+ gap: var(--br-space-3);
254
+ width: 100%;
255
+ padding: var(--br-space-3);
256
+ border: none;
257
+ border-radius: var(--br-radius-md);
258
+ background: transparent;
259
+ font-size: var(--br-text-sm);
260
+ font-weight: var(--br-font-medium);
261
+ color: var(--br-dark-600);
262
+ text-decoration: none;
263
+ cursor: pointer;
264
+ transition: all var(--br-transition-fast);
265
+ white-space: nowrap;
266
+
267
+ &:hover:not(:disabled) {
268
+ background: var(--br-light-100);
269
+ color: var(--br-dark-800);
270
+ }
271
+
272
+ &:disabled {
273
+ opacity: 0.5;
274
+ cursor: not-allowed;
275
+ }
276
+
277
+ &.router-link-active {
278
+ background: var(--br-primary-50);
279
+ color: var(--br-primary-600);
280
+
281
+ .br-sidebar__item-icon {
282
+ color: var(--br-primary-500);
283
+ }
284
+ }
285
+
286
+ &--nested {
287
+ padding-left: var(--br-space-6);
288
+ }
289
+ }
290
+
291
+ &--collapsed &__item {
292
+ justify-content: center;
293
+ padding: var(--br-space-3) var(--br-space-2);
294
+ }
295
+
296
+ &__item-icon {
297
+ font-size: 1.25em;
298
+ flex-shrink: 0;
299
+ color: var(--br-dark-500);
300
+ }
301
+
302
+ &__item-label {
303
+ flex: 1;
304
+ text-align: left;
305
+ overflow: hidden;
306
+ text-overflow: ellipsis;
307
+ }
308
+
309
+ &__item-badge {
310
+ display: inline-flex;
311
+ align-items: center;
312
+ justify-content: center;
313
+ min-width: 20px;
314
+ height: 20px;
315
+ padding: 0 6px;
316
+ border-radius: var(--br-radius-full);
317
+ font-size: var(--br-text-xs);
318
+ font-weight: var(--br-font-semibold);
319
+
320
+ &--primary {
321
+ background: var(--br-primary-100);
322
+ color: var(--br-primary-700);
323
+ }
324
+
325
+ &--success {
326
+ background: var(--br-success-100);
327
+ color: var(--br-success-700);
328
+ }
329
+
330
+ &--warning {
331
+ background: var(--br-warning-100);
332
+ color: var(--br-warning-700);
333
+ }
334
+
335
+ &--danger {
336
+ background: var(--br-danger-100);
337
+ color: var(--br-danger-700);
338
+ }
339
+ }
340
+
341
+ &__footer {
342
+ padding: var(--br-space-3);
343
+ border-top: 1px solid var(--br-light-200);
344
+ }
345
+
346
+ &__toggle {
347
+ display: flex;
348
+ align-items: center;
349
+ justify-content: center;
350
+ width: 100%;
351
+ padding: var(--br-space-2);
352
+ border: none;
353
+ border-radius: var(--br-radius-md);
354
+ background: var(--br-light-100);
355
+ color: var(--br-dark-500);
356
+ cursor: pointer;
357
+ transition: all var(--br-transition-fast);
358
+
359
+ svg {
360
+ width: 20px;
361
+ height: 20px;
362
+ }
363
+
364
+ &:hover {
365
+ background: var(--br-light-200);
366
+ color: var(--br-dark-700);
367
+ }
368
+ }
369
+
370
+ // Compact variant
371
+ &--compact {
372
+ .br-sidebar__item {
373
+ padding: var(--br-space-2) var(--br-space-3);
374
+ font-size: var(--br-text-xs);
375
+ }
376
+
377
+ .br-sidebar__item-icon {
378
+ font-size: 1.1em;
379
+ }
380
+ }
381
+ }
382
+ </style>
@@ -0,0 +1,2 @@
1
+ export { default as BrSidebar } from './BrSidebar.vue'
2
+ export * from './types'
@@ -0,0 +1,121 @@
1
+ export interface SidebarItem {
2
+ /**
3
+ * Unique identifier
4
+ */
5
+ id: string | number
6
+
7
+ /**
8
+ * Item label
9
+ */
10
+ label: string
11
+
12
+ /**
13
+ * Item icon
14
+ */
15
+ icon?: string
16
+
17
+ /**
18
+ * Link href
19
+ */
20
+ href?: string
21
+
22
+ /**
23
+ * Vue router to
24
+ */
25
+ to?: string | object
26
+
27
+ /**
28
+ * Disabled state
29
+ */
30
+ disabled?: boolean
31
+
32
+ /**
33
+ * Children items (for nested navigation)
34
+ */
35
+ children?: SidebarItem[]
36
+
37
+ /**
38
+ * Badge content
39
+ */
40
+ badge?: string | number
41
+
42
+ /**
43
+ * Badge variant
44
+ */
45
+ badgeVariant?: 'primary' | 'success' | 'warning' | 'danger'
46
+
47
+ /**
48
+ * Click handler
49
+ */
50
+ onClick?: () => void
51
+
52
+ /**
53
+ * Section divider (render as section header)
54
+ */
55
+ divider?: boolean
56
+ }
57
+
58
+ export type SidebarVariant = 'default' | 'compact' | 'mini'
59
+
60
+ export interface SidebarProps {
61
+ /**
62
+ * Navigation items
63
+ */
64
+ items?: SidebarItem[]
65
+
66
+ /**
67
+ * Sidebar variant
68
+ * @default 'default'
69
+ */
70
+ variant?: SidebarVariant
71
+
72
+ /**
73
+ * Collapsed state (mini mode)
74
+ * @default false
75
+ */
76
+ collapsed?: boolean
77
+
78
+ /**
79
+ * Show collapse toggle
80
+ * @default true
81
+ */
82
+ showToggle?: boolean
83
+
84
+ /**
85
+ * Elevated (shadow)
86
+ * @default true
87
+ */
88
+ elevated?: boolean
89
+
90
+ /**
91
+ * Fixed position
92
+ * @default false
93
+ */
94
+ fixed?: boolean
95
+
96
+ /**
97
+ * Sidebar width
98
+ */
99
+ width?: string | number
100
+
101
+ /**
102
+ * Collapsed width
103
+ */
104
+ collapsedWidth?: string | number
105
+
106
+ /**
107
+ * Show logo/brand area
108
+ * @default true
109
+ */
110
+ showBrand?: boolean
111
+
112
+ /**
113
+ * Brand/logo text
114
+ */
115
+ brand?: string
116
+
117
+ /**
118
+ * Brand logo URL
119
+ */
120
+ logo?: string
121
+ }
@@ -0,0 +1,6 @@
1
+ // =============================================================================
2
+ // BRAIP UI - ORGANISMS INDEX
3
+ // =============================================================================
4
+
5
+ export * from './BrNavbar'
6
+ export * from './BrSidebar'
package/src/index.ts ADDED
@@ -0,0 +1,32 @@
1
+ // =============================================================================
2
+ // BRAIP UI - MAIN ENTRY POINT
3
+ // =============================================================================
4
+ // Vue 3 Component Library
5
+ // https://github.com/braip/braip-ui
6
+ // =============================================================================
7
+
8
+ // Plugin
9
+ export { BraipUI, default } from './plugin'
10
+
11
+ // Components
12
+ export * from './components'
13
+
14
+ // Plugin Types (non-component types)
15
+ export type {
16
+ BraipUIOptions,
17
+ ComponentDefaults,
18
+ UseModalReturn,
19
+ UseThemeReturn,
20
+ MaybeRef,
21
+ ComponentSize,
22
+ ComponentStatus,
23
+ } from './types'
24
+
25
+ // Composables (future)
26
+ // export * from './composables'
27
+
28
+ // Directives (future)
29
+ // export * from './directives'
30
+
31
+ // Version
32
+ export const version = '0.1.0'
package/src/plugin.ts ADDED
@@ -0,0 +1,61 @@
1
+ // =============================================================================
2
+ // BRAIP UI - VUE PLUGIN
3
+ // =============================================================================
4
+
5
+ import type { App, Plugin } from 'vue'
6
+ import type { BraipUIOptions } from './types'
7
+
8
+ // Import all components
9
+ import * as components from './components'
10
+
11
+ // Import styles
12
+ import './styles/main.scss'
13
+
14
+ // ---------------------------------------------------------------------------
15
+ // DEFAULT OPTIONS
16
+ // ---------------------------------------------------------------------------
17
+
18
+ const defaultOptions: BraipUIOptions = {
19
+ prefix: 'Br',
20
+ theme: 'light',
21
+ locale: 'pt-BR',
22
+ }
23
+
24
+ // ---------------------------------------------------------------------------
25
+ // PLUGIN DEFINITION
26
+ // ---------------------------------------------------------------------------
27
+
28
+ export const BraipUI: Plugin = {
29
+ install(app: App, options: BraipUIOptions = {}) {
30
+ const mergedOptions = { ...defaultOptions, ...options }
31
+
32
+ // Register all components globally
33
+ Object.entries(components).forEach(([name, component]) => {
34
+ // Apply prefix if specified
35
+ const componentName = mergedOptions.prefix
36
+ ? `${mergedOptions.prefix}${name.replace(/^Br/, '')}`
37
+ : name
38
+
39
+ app.component(componentName, component)
40
+ })
41
+
42
+ // Provide options globally
43
+ app.provide('braip-ui-options', mergedOptions)
44
+
45
+ // Provide theme
46
+ app.provide('braip-ui-theme', mergedOptions.theme)
47
+
48
+ // Set theme class on document
49
+ if (typeof document !== 'undefined') {
50
+ document.documentElement.setAttribute('data-br-theme', mergedOptions.theme || 'light')
51
+ }
52
+ },
53
+ }
54
+
55
+ // ---------------------------------------------------------------------------
56
+ // EXPORTS
57
+ // ---------------------------------------------------------------------------
58
+
59
+ export default BraipUI
60
+ export { defaultOptions }
61
+ export type { BraipUIOptions }