@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,135 @@
1
+ <script setup lang="ts">
2
+ import { computed, ref } from 'vue'
3
+ import type { VideoProps } from './types'
4
+
5
+ const props = withDefaults(defineProps<VideoProps>(), {
6
+ autoplay: false,
7
+ loop: false,
8
+ muted: false,
9
+ controls: true,
10
+ preload: 'metadata',
11
+ rounded: false,
12
+ })
13
+
14
+ const emit = defineEmits<{
15
+ (e: 'play'): void
16
+ (e: 'pause'): void
17
+ (e: 'ended'): void
18
+ (e: 'error', error: Event): void
19
+ }>()
20
+
21
+ const videoRef = ref<HTMLVideoElement | null>(null)
22
+ const isPlaying = ref(false)
23
+
24
+ const classes = computed(() => [
25
+ 'br-video',
26
+ {
27
+ 'br-video--rounded': props.rounded === true,
28
+ [`br-video--rounded-${props.rounded}`]: typeof props.rounded === 'string',
29
+ },
30
+ ])
31
+
32
+ const videoStyles = computed(() => ({
33
+ width: typeof props.width === 'number' ? `${props.width}px` : props.width,
34
+ height: typeof props.height === 'number' ? `${props.height}px` : props.height,
35
+ }))
36
+
37
+ function play() {
38
+ videoRef.value?.play()
39
+ }
40
+
41
+ function pause() {
42
+ videoRef.value?.pause()
43
+ }
44
+
45
+ function toggle() {
46
+ if (isPlaying.value) {
47
+ pause()
48
+ } else {
49
+ play()
50
+ }
51
+ }
52
+
53
+ function handlePlay() {
54
+ isPlaying.value = true
55
+ emit('play')
56
+ }
57
+
58
+ function handlePause() {
59
+ isPlaying.value = false
60
+ emit('pause')
61
+ }
62
+
63
+ function handleEnded() {
64
+ isPlaying.value = false
65
+ emit('ended')
66
+ }
67
+
68
+ function handleError(event: Event) {
69
+ emit('error', event)
70
+ }
71
+
72
+ defineExpose({
73
+ play,
74
+ pause,
75
+ toggle,
76
+ videoRef,
77
+ })
78
+ </script>
79
+
80
+ <template>
81
+ <div :class="classes" :style="videoStyles">
82
+ <video
83
+ ref="videoRef"
84
+ :src="src"
85
+ :poster="poster"
86
+ :autoplay="autoplay"
87
+ :loop="loop"
88
+ :muted="muted"
89
+ :controls="controls"
90
+ :preload="preload"
91
+ class="br-video__player"
92
+ @play="handlePlay"
93
+ @pause="handlePause"
94
+ @ended="handleEnded"
95
+ @error="handleError"
96
+ >
97
+ <slot />
98
+ </video>
99
+ </div>
100
+ </template>
101
+
102
+ <style lang="scss" scoped>
103
+ .br-video {
104
+ position: relative;
105
+ display: inline-block;
106
+ overflow: hidden;
107
+ background: var(--br-dark-0);
108
+
109
+ &--rounded {
110
+ border-radius: var(--br-radius-md);
111
+ }
112
+
113
+ &--rounded-sm {
114
+ border-radius: var(--br-radius-sm);
115
+ }
116
+
117
+ &--rounded-md {
118
+ border-radius: var(--br-radius-md);
119
+ }
120
+
121
+ &--rounded-lg {
122
+ border-radius: var(--br-radius-lg);
123
+ }
124
+
125
+ &--rounded-xl {
126
+ border-radius: var(--br-radius-xl);
127
+ }
128
+
129
+ &__player {
130
+ display: block;
131
+ width: 100%;
132
+ height: 100%;
133
+ }
134
+ }
135
+ </style>
@@ -0,0 +1,2 @@
1
+ export { default as BrVideo } from './BrVideo.vue'
2
+ export * from './types'
@@ -0,0 +1,56 @@
1
+ export interface VideoProps {
2
+ /**
3
+ * Video source URL
4
+ */
5
+ src: string
6
+
7
+ /**
8
+ * Poster image URL
9
+ */
10
+ poster?: string
11
+
12
+ /**
13
+ * Video width
14
+ */
15
+ width?: string | number
16
+
17
+ /**
18
+ * Video height
19
+ */
20
+ height?: string | number
21
+
22
+ /**
23
+ * Autoplay video
24
+ * @default false
25
+ */
26
+ autoplay?: boolean
27
+
28
+ /**
29
+ * Loop video
30
+ * @default false
31
+ */
32
+ loop?: boolean
33
+
34
+ /**
35
+ * Mute video
36
+ * @default false
37
+ */
38
+ muted?: boolean
39
+
40
+ /**
41
+ * Show controls
42
+ * @default true
43
+ */
44
+ controls?: boolean
45
+
46
+ /**
47
+ * Preload strategy
48
+ * @default 'metadata'
49
+ */
50
+ preload?: 'none' | 'metadata' | 'auto'
51
+
52
+ /**
53
+ * Border radius
54
+ */
55
+ rounded?: boolean | 'sm' | 'md' | 'lg' | 'xl'
56
+ }
@@ -0,0 +1,20 @@
1
+ // =============================================================================
2
+ // BRAIP UI - ATOMS INDEX
3
+ // =============================================================================
4
+
5
+ export * from "./BrButton";
6
+ export * from "./BrInput";
7
+ export * from "./BrSelect";
8
+ export * from "./BrBadge";
9
+ // export * from './BrIcon'
10
+ export * from "./BrTitle";
11
+ export * from "./BrSpinner";
12
+ export * from "./BrSwitch";
13
+ export * from "./BrTextarea";
14
+ export * from "./BrAvatar";
15
+ export * from "./BrImage";
16
+ export * from "./BrVideo";
17
+ export * from "./BrRadio";
18
+ export * from "./BrProgressbar";
19
+ export * from "./BrRating";
20
+ export * from "./BrCheckbox";
@@ -0,0 +1,7 @@
1
+ // =============================================================================
2
+ // BRAIP UI - COMPONENTS INDEX
3
+ // =============================================================================
4
+
5
+ export * from './atoms'
6
+ export * from './molecules'
7
+ export * from './organisms'
@@ -0,0 +1,112 @@
1
+ <script setup lang="ts">
2
+ import { computed, provide, ref, reactive } from 'vue'
3
+ import type { AccordionProps } from './types'
4
+ import BrAccordionItem from './BrAccordionItem.vue'
5
+
6
+ const props = withDefaults(defineProps<AccordionProps>(), {
7
+ multiple: false,
8
+ variant: 'default',
9
+ iconPosition: 'right',
10
+ disabled: false,
11
+ })
12
+
13
+ const openItems = ref<Set<string | number>>(new Set())
14
+
15
+ const classes = computed(() => [
16
+ 'br-accordion',
17
+ `br-accordion--${props.variant}`,
18
+ {
19
+ 'br-accordion--disabled': props.disabled,
20
+ },
21
+ ])
22
+
23
+ function toggleItem(id: string | number) {
24
+ if (props.disabled) return
25
+
26
+ if (openItems.value.has(id)) {
27
+ openItems.value.delete(id)
28
+ } else {
29
+ if (!props.multiple) {
30
+ openItems.value.clear()
31
+ }
32
+ openItems.value.add(id)
33
+ }
34
+ openItems.value = new Set(openItems.value)
35
+ }
36
+
37
+ function isItemOpen(id: string | number) {
38
+ return openItems.value.has(id)
39
+ }
40
+
41
+ provide(
42
+ 'accordion',
43
+ reactive({
44
+ iconPosition: computed(() => props.iconPosition),
45
+ disabled: computed(() => props.disabled),
46
+ toggleItem,
47
+ isItemOpen,
48
+ })
49
+ )
50
+ </script>
51
+
52
+ <template>
53
+ <div :class="classes">
54
+ <template v-if="items && items.length">
55
+ <BrAccordionItem
56
+ v-for="item in items"
57
+ :key="item.id"
58
+ :id="item.id"
59
+ :title="item.title"
60
+ :icon="item.icon"
61
+ :disabled="item.disabled"
62
+ >
63
+ <template v-if="item.content">
64
+ {{ item.content }}
65
+ </template>
66
+ <slot v-else :name="`item-${item.id}`" :item="item" />
67
+ </BrAccordionItem>
68
+ </template>
69
+ <slot v-else />
70
+ </div>
71
+ </template>
72
+
73
+ <style lang="scss" scoped>
74
+ .br-accordion {
75
+ width: 100%;
76
+
77
+ &--default {
78
+ border: 1px solid var(--br-light-300);
79
+ border-radius: var(--br-radius-md);
80
+ overflow: hidden;
81
+ }
82
+
83
+ &--bordered {
84
+ :deep(.br-accordion-item) {
85
+ border: 1px solid var(--br-light-300);
86
+ border-radius: var(--br-radius-md);
87
+ margin-bottom: var(--br-space-2);
88
+
89
+ &:last-child {
90
+ margin-bottom: 0;
91
+ }
92
+ }
93
+ }
94
+
95
+ &--separated {
96
+ :deep(.br-accordion-item) {
97
+ background: var(--br-light-100);
98
+ border-radius: var(--br-radius-md);
99
+ margin-bottom: var(--br-space-2);
100
+
101
+ &:last-child {
102
+ margin-bottom: 0;
103
+ }
104
+ }
105
+ }
106
+
107
+ &--disabled {
108
+ opacity: 0.6;
109
+ pointer-events: none;
110
+ }
111
+ }
112
+ </style>
@@ -0,0 +1,168 @@
1
+ <script setup lang="ts">
2
+ import { computed, inject, ref, useId } from 'vue'
3
+ import type { AccordionItemProps } from './types'
4
+
5
+ const props = withDefaults(defineProps<AccordionItemProps>(), {
6
+ disabled: false,
7
+ })
8
+
9
+ const accordion = inject<{
10
+ iconPosition: { value: 'left' | 'right' }
11
+ disabled: { value: boolean }
12
+ toggleItem: (id: string | number) => void
13
+ isItemOpen: (id: string | number) => boolean
14
+ }>('accordion')
15
+
16
+ // useId() generates deterministic IDs that match between SSR and client hydration
17
+ const itemId = ref(props.id ?? useId())
18
+ const contentRef = ref<HTMLElement | null>(null)
19
+
20
+ const isOpen = computed(() => {
21
+ if (props.open !== undefined) return props.open
22
+ return accordion?.isItemOpen(itemId.value) ?? false
23
+ })
24
+
25
+ const isDisabled = computed(() => props.disabled || accordion?.disabled.value)
26
+ const iconPosition = computed(() => accordion?.iconPosition.value ?? 'right')
27
+
28
+ const classes = computed(() => [
29
+ 'br-accordion-item',
30
+ {
31
+ 'br-accordion-item--open': isOpen.value,
32
+ 'br-accordion-item--disabled': isDisabled.value,
33
+ 'br-accordion-item--icon-left': iconPosition.value === 'left',
34
+ },
35
+ ])
36
+
37
+ function toggle() {
38
+ if (isDisabled.value) return
39
+ accordion?.toggleItem(itemId.value)
40
+ }
41
+
42
+ const contentHeight = computed(() => {
43
+ if (!isOpen.value) return '0px'
44
+ return contentRef.value ? `${contentRef.value.scrollHeight}px` : 'auto'
45
+ })
46
+ </script>
47
+
48
+ <template>
49
+ <div :class="classes">
50
+ <button
51
+ type="button"
52
+ class="br-accordion-item__header"
53
+ :aria-expanded="isOpen"
54
+ :disabled="isDisabled"
55
+ @click="toggle"
56
+ >
57
+ <svg
58
+ v-if="iconPosition === 'left'"
59
+ class="br-accordion-item__icon"
60
+ viewBox="0 0 24 24"
61
+ fill="currentColor"
62
+ >
63
+ <path d="M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z" />
64
+ </svg>
65
+ <span v-if="icon" class="br-accordion-item__custom-icon">
66
+ <slot name="icon">{{ icon }}</slot>
67
+ </span>
68
+ <span class="br-accordion-item__title">
69
+ <slot name="title">{{ title }}</slot>
70
+ </span>
71
+ <svg
72
+ v-if="iconPosition === 'right'"
73
+ class="br-accordion-item__icon"
74
+ viewBox="0 0 24 24"
75
+ fill="currentColor"
76
+ >
77
+ <path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z" />
78
+ </svg>
79
+ </button>
80
+ <div
81
+ class="br-accordion-item__content-wrapper"
82
+ :style="{ height: contentHeight }"
83
+ >
84
+ <div ref="contentRef" class="br-accordion-item__content">
85
+ <slot />
86
+ </div>
87
+ </div>
88
+ </div>
89
+ </template>
90
+
91
+ <style lang="scss" scoped>
92
+ .br-accordion-item {
93
+ &__header {
94
+ display: flex;
95
+ align-items: center;
96
+ width: 100%;
97
+ padding: var(--br-space-4);
98
+ border: none;
99
+ background: transparent;
100
+ cursor: pointer;
101
+ text-align: left;
102
+ font-size: var(--br-text-md);
103
+ font-weight: var(--br-font-medium);
104
+ color: var(--br-dark-700);
105
+ transition: background-color var(--br-transition-fast);
106
+
107
+ &:hover:not(:disabled) {
108
+ background: var(--br-light-100);
109
+ }
110
+
111
+ &:disabled {
112
+ cursor: not-allowed;
113
+ opacity: 0.5;
114
+ }
115
+ }
116
+
117
+ &__icon {
118
+ width: 20px;
119
+ height: 20px;
120
+ flex-shrink: 0;
121
+ color: var(--br-dark-500);
122
+ transition: transform var(--br-transition-fast);
123
+ }
124
+
125
+ &__custom-icon {
126
+ margin-right: var(--br-space-2);
127
+ }
128
+
129
+ &__title {
130
+ flex: 1;
131
+ }
132
+
133
+ &__content-wrapper {
134
+ overflow: hidden;
135
+ transition: height var(--br-transition-normal);
136
+ }
137
+
138
+ &__content {
139
+ padding: 0 var(--br-space-4) var(--br-space-4);
140
+ color: var(--br-dark-600);
141
+ font-size: var(--br-text-sm);
142
+ line-height: 1.6;
143
+ }
144
+
145
+ // Open state
146
+ &--open {
147
+ .br-accordion-item__icon {
148
+ transform: rotate(180deg);
149
+ }
150
+
151
+ &.br-accordion-item--icon-left .br-accordion-item__icon {
152
+ transform: rotate(90deg);
153
+ }
154
+ }
155
+
156
+ // Icon left
157
+ &--icon-left {
158
+ .br-accordion-item__icon {
159
+ margin-right: var(--br-space-2);
160
+ }
161
+ }
162
+
163
+ // Borders between items (for default variant)
164
+ &:not(:last-child) {
165
+ border-bottom: 1px solid var(--br-light-300);
166
+ }
167
+ }
168
+ </style>
@@ -0,0 +1,3 @@
1
+ export { default as BrAccordion } from './BrAccordion.vue'
2
+ export { default as BrAccordionItem } from './BrAccordionItem.vue'
3
+ export * from './types'
@@ -0,0 +1,85 @@
1
+ export interface AccordionItem {
2
+ /**
3
+ * Unique identifier
4
+ */
5
+ id: string | number
6
+
7
+ /**
8
+ * Item title
9
+ */
10
+ title: string
11
+
12
+ /**
13
+ * Item content (can be HTML string or used with slot)
14
+ */
15
+ content?: string
16
+
17
+ /**
18
+ * Icon to display before title
19
+ */
20
+ icon?: string
21
+
22
+ /**
23
+ * Disabled state
24
+ */
25
+ disabled?: boolean
26
+ }
27
+
28
+ export interface AccordionProps {
29
+ /**
30
+ * Accordion items
31
+ */
32
+ items?: AccordionItem[]
33
+
34
+ /**
35
+ * Allow multiple items to be open
36
+ * @default false
37
+ */
38
+ multiple?: boolean
39
+
40
+ /**
41
+ * Variant style
42
+ * @default 'default'
43
+ */
44
+ variant?: 'default' | 'bordered' | 'separated'
45
+
46
+ /**
47
+ * Icon position
48
+ * @default 'right'
49
+ */
50
+ iconPosition?: 'left' | 'right'
51
+
52
+ /**
53
+ * Disable all items
54
+ * @default false
55
+ */
56
+ disabled?: boolean
57
+ }
58
+
59
+ export interface AccordionItemProps {
60
+ /**
61
+ * Item title
62
+ */
63
+ title: string
64
+
65
+ /**
66
+ * Unique identifier
67
+ */
68
+ id?: string | number
69
+
70
+ /**
71
+ * Icon to display
72
+ */
73
+ icon?: string
74
+
75
+ /**
76
+ * Disabled state
77
+ * @default false
78
+ */
79
+ disabled?: boolean
80
+
81
+ /**
82
+ * Open state (controlled)
83
+ */
84
+ open?: boolean
85
+ }