@gitlab/duo-ui 2.0.0 → 3.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 (579) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_details_modal/duo_chat_context_item_details_modal.js +3 -3
  3. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu.js +10 -10
  4. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_category_items.js +1 -1
  5. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_item.js +5 -15
  6. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items.js +9 -9
  7. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items_loading.js +2 -2
  8. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_popover/duo_chat_context_item_popover.js +3 -29
  9. package/dist/components/chat/components/duo_chat_context/duo_chat_context_item_selections/duo_chat_context_item_selections.js +7 -8
  10. package/dist/components/chat/components/duo_chat_context/utils.js +1 -102
  11. package/dist/components/chat/components/duo_chat_conversation/duo_chat_conversation.js +5 -5
  12. package/dist/components/chat/components/duo_chat_loader/duo_chat_loader.js +9 -8
  13. package/dist/components/chat/components/duo_chat_message/duo_chat_message.js +19 -19
  14. package/dist/components/chat/components/duo_chat_message_sources/duo_chat_message_sources.js +2 -2
  15. package/dist/components/chat/components/duo_chat_predefined_prompts/duo_chat_predefined_prompts.js +1 -1
  16. package/dist/components/chat/duo_chat.js +30 -19
  17. package/dist/components.css +1 -1
  18. package/dist/components.css.map +1 -1
  19. package/dist/tailwind.css +1 -1
  20. package/dist/tailwind.css.map +1 -1
  21. package/package.json +4 -8
  22. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_details_modal/duo_chat_context_item_details_modal.vue +3 -3
  23. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu.vue +12 -12
  24. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_category_items.vue +1 -1
  25. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_item.vue +17 -24
  26. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items.vue +9 -9
  27. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items_loading.vue +2 -2
  28. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_popover/duo_chat_context_item_popover.vue +25 -55
  29. package/src/components/chat/components/duo_chat_context/duo_chat_context_item_selections/duo_chat_context_item_selections.vue +10 -11
  30. package/src/components/chat/components/duo_chat_context/utils.js +0 -114
  31. package/src/components/chat/components/duo_chat_conversation/duo_chat_conversation.md +1 -1
  32. package/src/components/chat/components/duo_chat_conversation/duo_chat_conversation.vue +5 -5
  33. package/src/components/chat/components/duo_chat_loader/duo_chat_loader.scss +6 -33
  34. package/src/components/chat/components/duo_chat_loader/duo_chat_loader.vue +11 -14
  35. package/src/components/chat/components/duo_chat_message/duo_chat_message.md +2 -2
  36. package/src/components/chat/components/duo_chat_message/duo_chat_message.scss +13 -10
  37. package/src/components/chat/components/duo_chat_message/duo_chat_message.vue +21 -21
  38. package/src/components/chat/components/duo_chat_message_sources/duo_chat_message_sources.vue +2 -2
  39. package/src/components/chat/components/duo_chat_predefined_prompts/duo_chat_predefined_prompts.vue +1 -1
  40. package/src/components/chat/duo_chat.md +4 -4
  41. package/src/components/chat/duo_chat.vue +38 -30
  42. package/translations.js +36 -43
  43. package/src/vendor/bootstrap/LICENSE +0 -22
  44. package/src/vendor/bootstrap/scss/_alert.scss +0 -52
  45. package/src/vendor/bootstrap/scss/_badge.scss +0 -54
  46. package/src/vendor/bootstrap/scss/_breadcrumb.scss +0 -42
  47. package/src/vendor/bootstrap/scss/_button-group.scss +0 -163
  48. package/src/vendor/bootstrap/scss/_buttons.scss +0 -142
  49. package/src/vendor/bootstrap/scss/_card.scss +0 -286
  50. package/src/vendor/bootstrap/scss/_carousel.scss +0 -200
  51. package/src/vendor/bootstrap/scss/_close.scss +0 -40
  52. package/src/vendor/bootstrap/scss/_code.scss +0 -48
  53. package/src/vendor/bootstrap/scss/_custom-forms.scss +0 -526
  54. package/src/vendor/bootstrap/scss/_dropdown.scss +0 -192
  55. package/src/vendor/bootstrap/scss/_forms.scss +0 -347
  56. package/src/vendor/bootstrap/scss/_functions.scss +0 -190
  57. package/src/vendor/bootstrap/scss/_grid.scss +0 -73
  58. package/src/vendor/bootstrap/scss/_images.scss +0 -42
  59. package/src/vendor/bootstrap/scss/_input-group.scss +0 -211
  60. package/src/vendor/bootstrap/scss/_jumbotron.scss +0 -17
  61. package/src/vendor/bootstrap/scss/_list-group.scss +0 -154
  62. package/src/vendor/bootstrap/scss/_media.scss +0 -8
  63. package/src/vendor/bootstrap/scss/_mixins.scss +0 -47
  64. package/src/vendor/bootstrap/scss/_modal.scss +0 -240
  65. package/src/vendor/bootstrap/scss/_nav.scss +0 -125
  66. package/src/vendor/bootstrap/scss/_navbar.scss +0 -332
  67. package/src/vendor/bootstrap/scss/_pagination.scss +0 -74
  68. package/src/vendor/bootstrap/scss/_popover.scss +0 -170
  69. package/src/vendor/bootstrap/scss/_print.scss +0 -132
  70. package/src/vendor/bootstrap/scss/_progress.scss +0 -47
  71. package/src/vendor/bootstrap/scss/_reboot.scss +0 -484
  72. package/src/vendor/bootstrap/scss/_root.scss +0 -19
  73. package/src/vendor/bootstrap/scss/_spinners.scss +0 -65
  74. package/src/vendor/bootstrap/scss/_tables.scss +0 -185
  75. package/src/vendor/bootstrap/scss/_toasts.scss +0 -46
  76. package/src/vendor/bootstrap/scss/_tooltip.scss +0 -115
  77. package/src/vendor/bootstrap/scss/_transitions.scss +0 -26
  78. package/src/vendor/bootstrap/scss/_type.scss +0 -125
  79. package/src/vendor/bootstrap/scss/_utilities.scss +0 -18
  80. package/src/vendor/bootstrap/scss/_variables.scss +0 -1149
  81. package/src/vendor/bootstrap/scss/bootstrap-grid.scss +0 -30
  82. package/src/vendor/bootstrap/scss/bootstrap-reboot.scss +0 -12
  83. package/src/vendor/bootstrap/scss/bootstrap.scss +0 -44
  84. package/src/vendor/bootstrap/scss/mixins/_alert.scss +0 -13
  85. package/src/vendor/bootstrap/scss/mixins/_background-variant.scss +0 -23
  86. package/src/vendor/bootstrap/scss/mixins/_badge.scss +0 -17
  87. package/src/vendor/bootstrap/scss/mixins/_border-radius.scss +0 -76
  88. package/src/vendor/bootstrap/scss/mixins/_box-shadow.scss +0 -20
  89. package/src/vendor/bootstrap/scss/mixins/_breakpoints.scss +0 -123
  90. package/src/vendor/bootstrap/scss/mixins/_buttons.scss +0 -110
  91. package/src/vendor/bootstrap/scss/mixins/_caret.scss +0 -62
  92. package/src/vendor/bootstrap/scss/mixins/_clearfix.scss +0 -7
  93. package/src/vendor/bootstrap/scss/mixins/_deprecate.scss +0 -10
  94. package/src/vendor/bootstrap/scss/mixins/_float.scss +0 -14
  95. package/src/vendor/bootstrap/scss/mixins/_forms.scss +0 -195
  96. package/src/vendor/bootstrap/scss/mixins/_gradients.scss +0 -45
  97. package/src/vendor/bootstrap/scss/mixins/_grid-framework.scss +0 -80
  98. package/src/vendor/bootstrap/scss/mixins/_grid.scss +0 -69
  99. package/src/vendor/bootstrap/scss/mixins/_hover.scss +0 -37
  100. package/src/vendor/bootstrap/scss/mixins/_image.scss +0 -36
  101. package/src/vendor/bootstrap/scss/mixins/_list-group.scss +0 -21
  102. package/src/vendor/bootstrap/scss/mixins/_lists.scss +0 -7
  103. package/src/vendor/bootstrap/scss/mixins/_nav-divider.scss +0 -11
  104. package/src/vendor/bootstrap/scss/mixins/_pagination.scss +0 -22
  105. package/src/vendor/bootstrap/scss/mixins/_reset-text.scss +0 -17
  106. package/src/vendor/bootstrap/scss/mixins/_resize.scss +0 -6
  107. package/src/vendor/bootstrap/scss/mixins/_screen-reader.scss +0 -34
  108. package/src/vendor/bootstrap/scss/mixins/_size.scss +0 -7
  109. package/src/vendor/bootstrap/scss/mixins/_table-row.scss +0 -39
  110. package/src/vendor/bootstrap/scss/mixins/_text-emphasis.scss +0 -17
  111. package/src/vendor/bootstrap/scss/mixins/_text-hide.scss +0 -11
  112. package/src/vendor/bootstrap/scss/mixins/_text-truncate.scss +0 -8
  113. package/src/vendor/bootstrap/scss/mixins/_transition.scss +0 -26
  114. package/src/vendor/bootstrap/scss/mixins/_visibility.scss +0 -8
  115. package/src/vendor/bootstrap/scss/utilities/_align.scss +0 -8
  116. package/src/vendor/bootstrap/scss/utilities/_background.scss +0 -19
  117. package/src/vendor/bootstrap/scss/utilities/_borders.scss +0 -75
  118. package/src/vendor/bootstrap/scss/utilities/_clearfix.scss +0 -3
  119. package/src/vendor/bootstrap/scss/utilities/_display.scss +0 -26
  120. package/src/vendor/bootstrap/scss/utilities/_embed.scss +0 -39
  121. package/src/vendor/bootstrap/scss/utilities/_flex.scss +0 -51
  122. package/src/vendor/bootstrap/scss/utilities/_float.scss +0 -11
  123. package/src/vendor/bootstrap/scss/utilities/_interactions.scss +0 -5
  124. package/src/vendor/bootstrap/scss/utilities/_overflow.scss +0 -5
  125. package/src/vendor/bootstrap/scss/utilities/_position.scss +0 -32
  126. package/src/vendor/bootstrap/scss/utilities/_screenreaders.scss +0 -11
  127. package/src/vendor/bootstrap/scss/utilities/_shadows.scss +0 -6
  128. package/src/vendor/bootstrap/scss/utilities/_sizing.scss +0 -20
  129. package/src/vendor/bootstrap/scss/utilities/_spacing.scss +0 -73
  130. package/src/vendor/bootstrap/scss/utilities/_stretched-link.scss +0 -19
  131. package/src/vendor/bootstrap/scss/utilities/_text.scss +0 -72
  132. package/src/vendor/bootstrap/scss/utilities/_visibility.scss +0 -13
  133. package/src/vendor/bootstrap/scss/vendor/_rfs.scss +0 -228
  134. package/src/vendor/bootstrap-vue/LICENSE +0 -21
  135. package/src/vendor/bootstrap-vue/nuxt/index.js +0 -164
  136. package/src/vendor/bootstrap-vue/nuxt/plugin.template.js +0 -29
  137. package/src/vendor/bootstrap-vue/package.json +0 -201
  138. package/src/vendor/bootstrap-vue/src/_utilities.scss +0 -13
  139. package/src/vendor/bootstrap-vue/src/_variables.scss +0 -111
  140. package/src/vendor/bootstrap-vue/src/browser.js +0 -9
  141. package/src/vendor/bootstrap-vue/src/bv-config.d.ts +0 -4
  142. package/src/vendor/bootstrap-vue/src/bv-config.js +0 -6
  143. package/src/vendor/bootstrap-vue/src/components/badge/README.md +0 -126
  144. package/src/vendor/bootstrap-vue/src/components/badge/badge.js +0 -55
  145. package/src/vendor/bootstrap-vue/src/components/badge/badge.spec.js +0 -141
  146. package/src/vendor/bootstrap-vue/src/components/badge/index.d.ts +0 -7
  147. package/src/vendor/bootstrap-vue/src/components/badge/index.js +0 -3
  148. package/src/vendor/bootstrap-vue/src/components/badge/package.json +0 -29
  149. package/src/vendor/bootstrap-vue/src/components/breadcrumb/README.md +0 -93
  150. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-item.js +0 -27
  151. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-item.spec.js +0 -123
  152. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-link.js +0 -43
  153. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-link.spec.js +0 -117
  154. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb.js +0 -52
  155. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb.spec.js +0 -183
  156. package/src/vendor/bootstrap-vue/src/components/breadcrumb/index.d.ts +0 -13
  157. package/src/vendor/bootstrap-vue/src/components/breadcrumb/index.js +0 -5
  158. package/src/vendor/bootstrap-vue/src/components/breadcrumb/package.json +0 -62
  159. package/src/vendor/bootstrap-vue/src/components/button/README.md +0 -281
  160. package/src/vendor/bootstrap-vue/src/components/button/button-close.js +0 -65
  161. package/src/vendor/bootstrap-vue/src/components/button/button-close.spec.js +0 -210
  162. package/src/vendor/bootstrap-vue/src/components/button/button.js +0 -179
  163. package/src/vendor/bootstrap-vue/src/components/button/button.spec.js +0 -385
  164. package/src/vendor/bootstrap-vue/src/components/button/index.d.ts +0 -10
  165. package/src/vendor/bootstrap-vue/src/components/button/index.js +0 -4
  166. package/src/vendor/bootstrap-vue/src/components/button/package.json +0 -105
  167. package/src/vendor/bootstrap-vue/src/components/button-group/README.md +0 -112
  168. package/src/vendor/bootstrap-vue/src/components/button-group/button-group.js +0 -42
  169. package/src/vendor/bootstrap-vue/src/components/button-group/button-group.spec.js +0 -98
  170. package/src/vendor/bootstrap-vue/src/components/button-group/index.d.ts +0 -7
  171. package/src/vendor/bootstrap-vue/src/components/button-group/index.js +0 -3
  172. package/src/vendor/bootstrap-vue/src/components/button-group/package.json +0 -29
  173. package/src/vendor/bootstrap-vue/src/components/collapse/README.md +0 -321
  174. package/src/vendor/bootstrap-vue/src/components/collapse/collapse.js +0 -272
  175. package/src/vendor/bootstrap-vue/src/components/collapse/collapse.spec.js +0 -558
  176. package/src/vendor/bootstrap-vue/src/components/collapse/helpers/bv-collapse.js +0 -88
  177. package/src/vendor/bootstrap-vue/src/components/collapse/index.d.ts +0 -9
  178. package/src/vendor/bootstrap-vue/src/components/collapse/index.js +0 -3
  179. package/src/vendor/bootstrap-vue/src/components/collapse/package.json +0 -111
  180. package/src/vendor/bootstrap-vue/src/components/dropdown/README.md +0 -730
  181. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown-form.scss +0 -38
  182. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown-text.scss +0 -17
  183. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown.scss +0 -58
  184. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.js +0 -36
  185. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.spec.js +0 -58
  186. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.js +0 -47
  187. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.spec.js +0 -110
  188. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.js +0 -76
  189. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.spec.js +0 -94
  190. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.js +0 -46
  191. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.spec.js +0 -73
  192. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.js +0 -93
  193. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.spec.js +0 -117
  194. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js +0 -87
  195. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.spec.js +0 -147
  196. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js +0 -42
  197. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.spec.js +0 -59
  198. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +0 -202
  199. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.spec.js +0 -1121
  200. package/src/vendor/bootstrap-vue/src/components/dropdown/index.d.ts +0 -32
  201. package/src/vendor/bootstrap-vue/src/components/dropdown/index.js +0 -19
  202. package/src/vendor/bootstrap-vue/src/components/dropdown/index.scss +0 -3
  203. package/src/vendor/bootstrap-vue/src/components/dropdown/package.json +0 -368
  204. package/src/vendor/bootstrap-vue/src/components/form/README.md +0 -370
  205. package/src/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.js +0 -51
  206. package/src/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.spec.js +0 -170
  207. package/src/vendor/bootstrap-vue/src/components/form/form-text.js +0 -40
  208. package/src/vendor/bootstrap-vue/src/components/form/form-text.spec.js +0 -93
  209. package/src/vendor/bootstrap-vue/src/components/form/form-valid-feedback.js +0 -51
  210. package/src/vendor/bootstrap-vue/src/components/form/form-valid-feedback.spec.js +0 -157
  211. package/src/vendor/bootstrap-vue/src/components/form/form.js +0 -41
  212. package/src/vendor/bootstrap-vue/src/components/form/form.spec.js +0 -97
  213. package/src/vendor/bootstrap-vue/src/components/form/index.d.ts +0 -16
  214. package/src/vendor/bootstrap-vue/src/components/form/index.js +0 -7
  215. package/src/vendor/bootstrap-vue/src/components/form/package.json +0 -112
  216. package/src/vendor/bootstrap-vue/src/components/form-checkbox/README.md +0 -862
  217. package/src/vendor/bootstrap-vue/src/components/form-checkbox/_form-checkbox-group.scss +0 -2
  218. package/src/vendor/bootstrap-vue/src/components/form-checkbox/_form-checkbox.scss +0 -125
  219. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.js +0 -42
  220. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.spec.js +0 -642
  221. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.js +0 -132
  222. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.spec.js +0 -1331
  223. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.d.ts +0 -10
  224. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.js +0 -4
  225. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.scss +0 -2
  226. package/src/vendor/bootstrap-vue/src/components/form-checkbox/package.json +0 -172
  227. package/src/vendor/bootstrap-vue/src/components/form-group/README.md +0 -337
  228. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.js +0 -403
  229. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.spec.js +0 -477
  230. package/src/vendor/bootstrap-vue/src/components/form-group/index.d.ts +0 -7
  231. package/src/vendor/bootstrap-vue/src/components/form-group/index.js +0 -3
  232. package/src/vendor/bootstrap-vue/src/components/form-group/package.json +0 -183
  233. package/src/vendor/bootstrap-vue/src/components/form-input/README.md +0 -612
  234. package/src/vendor/bootstrap-vue/src/components/form-input/_form-input.scss +0 -217
  235. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.js +0 -168
  236. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.spec.js +0 -986
  237. package/src/vendor/bootstrap-vue/src/components/form-input/index.d.ts +0 -9
  238. package/src/vendor/bootstrap-vue/src/components/form-input/index.js +0 -3
  239. package/src/vendor/bootstrap-vue/src/components/form-input/index.scss +0 -1
  240. package/src/vendor/bootstrap-vue/src/components/form-input/package.json +0 -135
  241. package/src/vendor/bootstrap-vue/src/components/form-radio/README.md +0 -566
  242. package/src/vendor/bootstrap-vue/src/components/form-radio/_form-radio-group.scss +0 -3
  243. package/src/vendor/bootstrap-vue/src/components/form-radio/_form-radio.scss +0 -47
  244. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.js +0 -30
  245. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.spec.js +0 -469
  246. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.js +0 -28
  247. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.spec.js +0 -952
  248. package/src/vendor/bootstrap-vue/src/components/form-radio/index.d.ts +0 -10
  249. package/src/vendor/bootstrap-vue/src/components/form-radio/index.js +0 -4
  250. package/src/vendor/bootstrap-vue/src/components/form-radio/index.scss +0 -2
  251. package/src/vendor/bootstrap-vue/src/components/form-radio/package.json +0 -162
  252. package/src/vendor/bootstrap-vue/src/components/form-select/README.md +0 -504
  253. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.js +0 -48
  254. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.spec.js +0 -138
  255. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option.js +0 -35
  256. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option.spec.js +0 -75
  257. package/src/vendor/bootstrap-vue/src/components/form-select/form-select.js +0 -153
  258. package/src/vendor/bootstrap-vue/src/components/form-select/form-select.spec.js +0 -723
  259. package/src/vendor/bootstrap-vue/src/components/form-select/helpers/mixin-options.js +0 -56
  260. package/src/vendor/bootstrap-vue/src/components/form-select/index.d.ts +0 -13
  261. package/src/vendor/bootstrap-vue/src/components/form-select/index.js +0 -5
  262. package/src/vendor/bootstrap-vue/src/components/form-select/package.json +0 -132
  263. package/src/vendor/bootstrap-vue/src/components/form-textarea/README.md +0 -453
  264. package/src/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.js +0 -226
  265. package/src/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.spec.js +0 -1000
  266. package/src/vendor/bootstrap-vue/src/components/form-textarea/index.d.ts +0 -9
  267. package/src/vendor/bootstrap-vue/src/components/form-textarea/index.js +0 -3
  268. package/src/vendor/bootstrap-vue/src/components/form-textarea/package.json +0 -122
  269. package/src/vendor/bootstrap-vue/src/components/index.d.ts +0 -31
  270. package/src/vendor/bootstrap-vue/src/components/index.js +0 -11
  271. package/src/vendor/bootstrap-vue/src/components/index.scss +0 -12
  272. package/src/vendor/bootstrap-vue/src/components/input-group/README.md +0 -334
  273. package/src/vendor/bootstrap-vue/src/components/input-group/_input-group.scss +0 -29
  274. package/src/vendor/bootstrap-vue/src/components/input-group/index.d.ts +0 -19
  275. package/src/vendor/bootstrap-vue/src/components/input-group/index.js +0 -7
  276. package/src/vendor/bootstrap-vue/src/components/input-group/index.scss +0 -1
  277. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-addon.js +0 -43
  278. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.js +0 -31
  279. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.spec.js +0 -84
  280. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.js +0 -31
  281. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.spec.js +0 -84
  282. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.js +0 -31
  283. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.spec.js +0 -45
  284. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.js +0 -73
  285. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.spec.js +0 -153
  286. package/src/vendor/bootstrap-vue/src/components/input-group/package.json +0 -109
  287. package/src/vendor/bootstrap-vue/src/components/layout/README.md +0 -791
  288. package/src/vendor/bootstrap-vue/src/components/layout/col.js +0 -154
  289. package/src/vendor/bootstrap-vue/src/components/layout/col.spec.js +0 -192
  290. package/src/vendor/bootstrap-vue/src/components/layout/form-row.js +0 -31
  291. package/src/vendor/bootstrap-vue/src/components/layout/form-row.spec.js +0 -45
  292. package/src/vendor/bootstrap-vue/src/components/layout/index.d.ts +0 -10
  293. package/src/vendor/bootstrap-vue/src/components/layout/index.js +0 -4
  294. package/src/vendor/bootstrap-vue/src/components/layout/package.json +0 -99
  295. package/src/vendor/bootstrap-vue/src/components/link/README.md +0 -76
  296. package/src/vendor/bootstrap-vue/src/components/link/index.d.ts +0 -10
  297. package/src/vendor/bootstrap-vue/src/components/link/index.js +0 -3
  298. package/src/vendor/bootstrap-vue/src/components/link/link.js +0 -212
  299. package/src/vendor/bootstrap-vue/src/components/link/link.spec.js +0 -434
  300. package/src/vendor/bootstrap-vue/src/components/link/package.json +0 -57
  301. package/src/vendor/bootstrap-vue/src/components/modal/MODIFICATIONS.md +0 -27
  302. package/src/vendor/bootstrap-vue/src/components/modal/README.md +0 -1068
  303. package/src/vendor/bootstrap-vue/src/components/modal/_modal.scss +0 -5
  304. package/src/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.js +0 -22
  305. package/src/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.spec.js +0 -82
  306. package/src/vendor/bootstrap-vue/src/components/modal/helpers/modal-manager.js +0 -219
  307. package/src/vendor/bootstrap-vue/src/components/modal/index.d.ts +0 -82
  308. package/src/vendor/bootstrap-vue/src/components/modal/index.js +0 -3
  309. package/src/vendor/bootstrap-vue/src/components/modal/index.scss +0 -1
  310. package/src/vendor/bootstrap-vue/src/components/modal/modal.js +0 -981
  311. package/src/vendor/bootstrap-vue/src/components/modal/modal.spec.js +0 -1418
  312. package/src/vendor/bootstrap-vue/src/components/modal/package.json +0 -548
  313. package/src/vendor/bootstrap-vue/src/components/nav/README.md +0 -480
  314. package/src/vendor/bootstrap-vue/src/components/nav/_nav-item-dropdown.scss +0 -1
  315. package/src/vendor/bootstrap-vue/src/components/nav/index.d.ts +0 -17
  316. package/src/vendor/bootstrap-vue/src/components/nav/index.js +0 -5
  317. package/src/vendor/bootstrap-vue/src/components/nav/index.scss +0 -1
  318. package/src/vendor/bootstrap-vue/src/components/nav/nav-item-dropdown.js +0 -123
  319. package/src/vendor/bootstrap-vue/src/components/nav/nav-item-dropdown.spec.js +0 -268
  320. package/src/vendor/bootstrap-vue/src/components/nav/nav-item.js +0 -49
  321. package/src/vendor/bootstrap-vue/src/components/nav/nav-item.spec.js +0 -127
  322. package/src/vendor/bootstrap-vue/src/components/nav/nav.js +0 -60
  323. package/src/vendor/bootstrap-vue/src/components/nav/nav.spec.js +0 -244
  324. package/src/vendor/bootstrap-vue/src/components/nav/package.json +0 -190
  325. package/src/vendor/bootstrap-vue/src/components/navbar/README.md +0 -333
  326. package/src/vendor/bootstrap-vue/src/components/navbar/_navbar.scss +0 -1
  327. package/src/vendor/bootstrap-vue/src/components/navbar/index.d.ts +0 -10
  328. package/src/vendor/bootstrap-vue/src/components/navbar/index.js +0 -4
  329. package/src/vendor/bootstrap-vue/src/components/navbar/index.scss +0 -1
  330. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-brand.js +0 -42
  331. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-brand.spec.js +0 -50
  332. package/src/vendor/bootstrap-vue/src/components/navbar/navbar.js +0 -78
  333. package/src/vendor/bootstrap-vue/src/components/navbar/navbar.spec.js +0 -130
  334. package/src/vendor/bootstrap-vue/src/components/navbar/package.json +0 -54
  335. package/src/vendor/bootstrap-vue/src/components/popover/README.md +0 -919
  336. package/src/vendor/bootstrap-vue/src/components/popover/_popover.scss +0 -113
  337. package/src/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover-template.js +0 -50
  338. package/src/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover.js +0 -28
  339. package/src/vendor/bootstrap-vue/src/components/popover/index.d.ts +0 -7
  340. package/src/vendor/bootstrap-vue/src/components/popover/index.js +0 -3
  341. package/src/vendor/bootstrap-vue/src/components/popover/index.scss +0 -1
  342. package/src/vendor/bootstrap-vue/src/components/popover/package.json +0 -261
  343. package/src/vendor/bootstrap-vue/src/components/popover/popover.js +0 -46
  344. package/src/vendor/bootstrap-vue/src/components/popover/popover.spec.js +0 -199
  345. package/src/vendor/bootstrap-vue/src/components/progress/MODIFICATIONS.md +0 -23
  346. package/src/vendor/bootstrap-vue/src/components/progress/README.md +0 -363
  347. package/src/vendor/bootstrap-vue/src/components/progress/index.d.ts +0 -10
  348. package/src/vendor/bootstrap-vue/src/components/progress/index.js +0 -4
  349. package/src/vendor/bootstrap-vue/src/components/progress/package.json +0 -109
  350. package/src/vendor/bootstrap-vue/src/components/progress/progress-bar.js +0 -133
  351. package/src/vendor/bootstrap-vue/src/components/progress/progress-bar.spec.js +0 -270
  352. package/src/vendor/bootstrap-vue/src/components/progress/progress.js +0 -57
  353. package/src/vendor/bootstrap-vue/src/components/progress/progress.spec.js +0 -71
  354. package/src/vendor/bootstrap-vue/src/components/table/README.md +0 -3157
  355. package/src/vendor/bootstrap-vue/src/components/table/_table.scss +0 -474
  356. package/src/vendor/bootstrap-vue/src/components/table/helpers/constants.js +0 -30
  357. package/src/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.js +0 -60
  358. package/src/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.spec.js +0 -112
  359. package/src/vendor/bootstrap-vue/src/components/table/helpers/filter-event.js +0 -38
  360. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-bottom-row.js +0 -44
  361. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-busy.js +0 -88
  362. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-caption.js +0 -49
  363. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-colgroup.js +0 -27
  364. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-empty.js +0 -105
  365. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-filtering.js +0 -271
  366. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-items.js +0 -146
  367. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-pagination.js +0 -38
  368. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-provider.js +0 -188
  369. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-selectable.js +0 -241
  370. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-sorting.js +0 -299
  371. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-stacked.js +0 -33
  372. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-table-renderer.js +0 -209
  373. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody-row.js +0 -360
  374. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody.js +0 -258
  375. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tfoot.js +0 -55
  376. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-thead.js +0 -238
  377. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-top-row.js +0 -37
  378. package/src/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.js +0 -71
  379. package/src/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.spec.js +0 -93
  380. package/src/vendor/bootstrap-vue/src/components/table/helpers/sanitize-row.js +0 -39
  381. package/src/vendor/bootstrap-vue/src/components/table/helpers/stringify-record-values.js +0 -11
  382. package/src/vendor/bootstrap-vue/src/components/table/helpers/text-selection-active.js +0 -13
  383. package/src/vendor/bootstrap-vue/src/components/table/index.d.ts +0 -237
  384. package/src/vendor/bootstrap-vue/src/components/table/index.js +0 -23
  385. package/src/vendor/bootstrap-vue/src/components/table/index.scss +0 -1
  386. package/src/vendor/bootstrap-vue/src/components/table/package.json +0 -1763
  387. package/src/vendor/bootstrap-vue/src/components/table/table-busy.spec.js +0 -150
  388. package/src/vendor/bootstrap-vue/src/components/table/table-caption.spec.js +0 -176
  389. package/src/vendor/bootstrap-vue/src/components/table/table-colgroup.spec.js +0 -81
  390. package/src/vendor/bootstrap-vue/src/components/table/table-filtering.spec.js +0 -409
  391. package/src/vendor/bootstrap-vue/src/components/table/table-item-formatter.spec.js +0 -56
  392. package/src/vendor/bootstrap-vue/src/components/table/table-lite.js +0 -63
  393. package/src/vendor/bootstrap-vue/src/components/table/table-lite.spec.js +0 -682
  394. package/src/vendor/bootstrap-vue/src/components/table/table-pagination.spec.js +0 -133
  395. package/src/vendor/bootstrap-vue/src/components/table/table-primarykey.spec.js +0 -83
  396. package/src/vendor/bootstrap-vue/src/components/table/table-provider.spec.js +0 -411
  397. package/src/vendor/bootstrap-vue/src/components/table/table-row-details.spec.js +0 -459
  398. package/src/vendor/bootstrap-vue/src/components/table/table-selectable.spec.js +0 -1182
  399. package/src/vendor/bootstrap-vue/src/components/table/table-simple.js +0 -50
  400. package/src/vendor/bootstrap-vue/src/components/table/table-simple.spec.js +0 -206
  401. package/src/vendor/bootstrap-vue/src/components/table/table-sorting.spec.js +0 -858
  402. package/src/vendor/bootstrap-vue/src/components/table/table-sticky-column.spec.js +0 -377
  403. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-bottom-row.spec.js +0 -94
  404. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-row-events.spec.js +0 -529
  405. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-top-row.spec.js +0 -88
  406. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-transition.spec.js +0 -83
  407. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-custom.spec.js +0 -91
  408. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-events.spec.js +0 -137
  409. package/src/vendor/bootstrap-vue/src/components/table/table-thead-events.spec.js +0 -155
  410. package/src/vendor/bootstrap-vue/src/components/table/table-thead-top.spec.js +0 -96
  411. package/src/vendor/bootstrap-vue/src/components/table/table.js +0 -89
  412. package/src/vendor/bootstrap-vue/src/components/table/table.spec.js +0 -692
  413. package/src/vendor/bootstrap-vue/src/components/table/tbody.js +0 -103
  414. package/src/vendor/bootstrap-vue/src/components/table/td.js +0 -195
  415. package/src/vendor/bootstrap-vue/src/components/table/tfoot.js +0 -95
  416. package/src/vendor/bootstrap-vue/src/components/table/th.js +0 -25
  417. package/src/vendor/bootstrap-vue/src/components/table/thead.js +0 -98
  418. package/src/vendor/bootstrap-vue/src/components/table/tr.js +0 -122
  419. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +0 -575
  420. package/src/vendor/bootstrap-vue/src/components/tabs/index.d.ts +0 -13
  421. package/src/vendor/bootstrap-vue/src/components/tabs/index.js +0 -4
  422. package/src/vendor/bootstrap-vue/src/components/tabs/package.json +0 -205
  423. package/src/vendor/bootstrap-vue/src/components/tabs/tab.js +0 -197
  424. package/src/vendor/bootstrap-vue/src/components/tabs/tab.spec.js +0 -330
  425. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.js +0 -688
  426. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.spec.js +0 -836
  427. package/src/vendor/bootstrap-vue/src/components/toast/README.md +0 -656
  428. package/src/vendor/bootstrap-vue/src/components/toast/_toast.scss +0 -79
  429. package/src/vendor/bootstrap-vue/src/components/toast/_toaster-transition.scss +0 -45
  430. package/src/vendor/bootstrap-vue/src/components/toast/_toaster.scss +0 -108
  431. package/src/vendor/bootstrap-vue/src/components/toast/helpers/bv-toast.js +0 -208
  432. package/src/vendor/bootstrap-vue/src/components/toast/helpers/bv-toast.spec.js +0 -131
  433. package/src/vendor/bootstrap-vue/src/components/toast/index.d.ts +0 -70
  434. package/src/vendor/bootstrap-vue/src/components/toast/index.js +0 -12
  435. package/src/vendor/bootstrap-vue/src/components/toast/index.scss +0 -3
  436. package/src/vendor/bootstrap-vue/src/components/toast/package.json +0 -188
  437. package/src/vendor/bootstrap-vue/src/components/toast/toast.js +0 -454
  438. package/src/vendor/bootstrap-vue/src/components/toast/toast.spec.js +0 -346
  439. package/src/vendor/bootstrap-vue/src/components/toast/toaster.js +0 -139
  440. package/src/vendor/bootstrap-vue/src/components/toast/toaster.spec.js +0 -77
  441. package/src/vendor/bootstrap-vue/src/components/tooltip/README.md +0 -559
  442. package/src/vendor/bootstrap-vue/src/components/tooltip/_tooltip.scss +0 -86
  443. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-popper.js +0 -248
  444. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip-template.js +0 -130
  445. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +0 -977
  446. package/src/vendor/bootstrap-vue/src/components/tooltip/index.d.ts +0 -7
  447. package/src/vendor/bootstrap-vue/src/components/tooltip/index.js +0 -3
  448. package/src/vendor/bootstrap-vue/src/components/tooltip/index.scss +0 -1
  449. package/src/vendor/bootstrap-vue/src/components/tooltip/package.json +0 -258
  450. package/src/vendor/bootstrap-vue/src/components/tooltip/tooltip.js +0 -316
  451. package/src/vendor/bootstrap-vue/src/components/tooltip/tooltip.spec.js +0 -1529
  452. package/src/vendor/bootstrap-vue/src/components/transition/bv-transition.js +0 -83
  453. package/src/vendor/bootstrap-vue/src/components/transition/package.json +0 -5
  454. package/src/vendor/bootstrap-vue/src/components/transporter/package.json +0 -5
  455. package/src/vendor/bootstrap-vue/src/components/transporter/transporter.js +0 -202
  456. package/src/vendor/bootstrap-vue/src/components/transporter/transporter.spec.js +0 -85
  457. package/src/vendor/bootstrap-vue/src/constants/classes.js +0 -1
  458. package/src/vendor/bootstrap-vue/src/constants/components.js +0 -77
  459. package/src/vendor/bootstrap-vue/src/constants/config.js +0 -4
  460. package/src/vendor/bootstrap-vue/src/constants/env.js +0 -57
  461. package/src/vendor/bootstrap-vue/src/constants/events.js +0 -57
  462. package/src/vendor/bootstrap-vue/src/constants/key-codes.js +0 -10
  463. package/src/vendor/bootstrap-vue/src/constants/popper.js +0 -8
  464. package/src/vendor/bootstrap-vue/src/constants/props.js +0 -26
  465. package/src/vendor/bootstrap-vue/src/constants/regex.js +0 -33
  466. package/src/vendor/bootstrap-vue/src/constants/safe-types.js +0 -17
  467. package/src/vendor/bootstrap-vue/src/constants/slots.js +0 -32
  468. package/src/vendor/bootstrap-vue/src/directives/modal/index.d.ts +0 -8
  469. package/src/vendor/bootstrap-vue/src/directives/modal/index.js +0 -3
  470. package/src/vendor/bootstrap-vue/src/directives/modal/modal.js +0 -115
  471. package/src/vendor/bootstrap-vue/src/directives/modal/modal.spec.js +0 -191
  472. package/src/vendor/bootstrap-vue/src/directives/toggle/README.md +0 -146
  473. package/src/vendor/bootstrap-vue/src/directives/toggle/index.d.ts +0 -7
  474. package/src/vendor/bootstrap-vue/src/directives/toggle/index.js +0 -3
  475. package/src/vendor/bootstrap-vue/src/directives/toggle/package.json +0 -26
  476. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.js +0 -274
  477. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.spec.js +0 -452
  478. package/src/vendor/bootstrap-vue/src/directives/tooltip/README.md +0 -521
  479. package/src/vendor/bootstrap-vue/src/directives/tooltip/index.d.ts +0 -7
  480. package/src/vendor/bootstrap-vue/src/directives/tooltip/index.js +0 -3
  481. package/src/vendor/bootstrap-vue/src/directives/tooltip/package.json +0 -131
  482. package/src/vendor/bootstrap-vue/src/directives/tooltip/tooltip.js +0 -270
  483. package/src/vendor/bootstrap-vue/src/directives/tooltip/tooltip.spec.js +0 -223
  484. package/src/vendor/bootstrap-vue/src/directives/visible/README.md +0 -244
  485. package/src/vendor/bootstrap-vue/src/directives/visible/index.d.ts +0 -7
  486. package/src/vendor/bootstrap-vue/src/directives/visible/index.js +0 -3
  487. package/src/vendor/bootstrap-vue/src/directives/visible/package.json +0 -24
  488. package/src/vendor/bootstrap-vue/src/directives/visible/visible.js +0 -184
  489. package/src/vendor/bootstrap-vue/src/index.d.ts +0 -61
  490. package/src/vendor/bootstrap-vue/src/index.js +0 -187
  491. package/src/vendor/bootstrap-vue/src/index.scss +0 -11
  492. package/src/vendor/bootstrap-vue/src/mixins/attrs.js +0 -19
  493. package/src/vendor/bootstrap-vue/src/mixins/attrs.spec.js +0 -194
  494. package/src/vendor/bootstrap-vue/src/mixins/click-out.js +0 -72
  495. package/src/vendor/bootstrap-vue/src/mixins/click-out.spec.js +0 -52
  496. package/src/vendor/bootstrap-vue/src/mixins/dropdown.js +0 -460
  497. package/src/vendor/bootstrap-vue/src/mixins/focus-in.js +0 -44
  498. package/src/vendor/bootstrap-vue/src/mixins/focus-in.spec.js +0 -53
  499. package/src/vendor/bootstrap-vue/src/mixins/form-control.js +0 -51
  500. package/src/vendor/bootstrap-vue/src/mixins/form-custom.js +0 -24
  501. package/src/vendor/bootstrap-vue/src/mixins/form-options.js +0 -73
  502. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check-group.js +0 -162
  503. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check.js +0 -332
  504. package/src/vendor/bootstrap-vue/src/mixins/form-selection.js +0 -60
  505. package/src/vendor/bootstrap-vue/src/mixins/form-size.js +0 -24
  506. package/src/vendor/bootstrap-vue/src/mixins/form-state.js +0 -47
  507. package/src/vendor/bootstrap-vue/src/mixins/form-text.js +0 -250
  508. package/src/vendor/bootstrap-vue/src/mixins/form-validity.js +0 -48
  509. package/src/vendor/bootstrap-vue/src/mixins/has-listener.js +0 -26
  510. package/src/vendor/bootstrap-vue/src/mixins/id.js +0 -51
  511. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.js +0 -64
  512. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.spec.js +0 -117
  513. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.js +0 -121
  514. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.spec.js +0 -77
  515. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.js +0 -64
  516. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.spec.js +0 -115
  517. package/src/vendor/bootstrap-vue/src/mixins/listeners.js +0 -24
  518. package/src/vendor/bootstrap-vue/src/mixins/listeners.spec.js +0 -245
  519. package/src/vendor/bootstrap-vue/src/mixins/model.js +0 -5
  520. package/src/vendor/bootstrap-vue/src/mixins/normalize-slot.js +0 -30
  521. package/src/vendor/bootstrap-vue/src/mixins/scoped-style.js +0 -14
  522. package/src/vendor/bootstrap-vue/src/mixins/use-parent.js +0 -12
  523. package/src/vendor/bootstrap-vue/src/utils/array.js +0 -17
  524. package/src/vendor/bootstrap-vue/src/utils/bv-event.class.js +0 -60
  525. package/src/vendor/bootstrap-vue/src/utils/bv-event.class.spec.js +0 -66
  526. package/src/vendor/bootstrap-vue/src/utils/cache.js +0 -37
  527. package/src/vendor/bootstrap-vue/src/utils/clone-deep.js +0 -15
  528. package/src/vendor/bootstrap-vue/src/utils/clone-deep.spec.js +0 -70
  529. package/src/vendor/bootstrap-vue/src/utils/config-set.js +0 -80
  530. package/src/vendor/bootstrap-vue/src/utils/config.js +0 -72
  531. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +0 -169
  532. package/src/vendor/bootstrap-vue/src/utils/create-new-child-component.js +0 -10
  533. package/src/vendor/bootstrap-vue/src/utils/css-escape.js +0 -73
  534. package/src/vendor/bootstrap-vue/src/utils/css-escape.spec.js +0 -82
  535. package/src/vendor/bootstrap-vue/src/utils/dom.js +0 -308
  536. package/src/vendor/bootstrap-vue/src/utils/dom.spec.js +0 -291
  537. package/src/vendor/bootstrap-vue/src/utils/element-to-vue-instance-registry.js +0 -40
  538. package/src/vendor/bootstrap-vue/src/utils/env.js +0 -15
  539. package/src/vendor/bootstrap-vue/src/utils/events.js +0 -71
  540. package/src/vendor/bootstrap-vue/src/utils/events.spec.js +0 -41
  541. package/src/vendor/bootstrap-vue/src/utils/get-event-root.js +0 -3
  542. package/src/vendor/bootstrap-vue/src/utils/get-instance-from-directive.js +0 -4
  543. package/src/vendor/bootstrap-vue/src/utils/get-scope-id.js +0 -6
  544. package/src/vendor/bootstrap-vue/src/utils/get.js +0 -64
  545. package/src/vendor/bootstrap-vue/src/utils/get.spec.js +0 -109
  546. package/src/vendor/bootstrap-vue/src/utils/html.js +0 -8
  547. package/src/vendor/bootstrap-vue/src/utils/identity.js +0 -1
  548. package/src/vendor/bootstrap-vue/src/utils/inspect.js +0 -51
  549. package/src/vendor/bootstrap-vue/src/utils/inspect.spec.js +0 -251
  550. package/src/vendor/bootstrap-vue/src/utils/locale.js +0 -34
  551. package/src/vendor/bootstrap-vue/src/utils/loose-equal.js +0 -57
  552. package/src/vendor/bootstrap-vue/src/utils/loose-equal.spec.js +0 -203
  553. package/src/vendor/bootstrap-vue/src/utils/loose-index-of.js +0 -11
  554. package/src/vendor/bootstrap-vue/src/utils/math.js +0 -11
  555. package/src/vendor/bootstrap-vue/src/utils/memoize.js +0 -10
  556. package/src/vendor/bootstrap-vue/src/utils/model.js +0 -29
  557. package/src/vendor/bootstrap-vue/src/utils/noop.js +0 -1
  558. package/src/vendor/bootstrap-vue/src/utils/normalize-slot.js +0 -44
  559. package/src/vendor/bootstrap-vue/src/utils/normalize-slot.spec.js +0 -63
  560. package/src/vendor/bootstrap-vue/src/utils/number.js +0 -19
  561. package/src/vendor/bootstrap-vue/src/utils/number.spec.js +0 -72
  562. package/src/vendor/bootstrap-vue/src/utils/object.js +0 -61
  563. package/src/vendor/bootstrap-vue/src/utils/object.spec.js +0 -61
  564. package/src/vendor/bootstrap-vue/src/utils/observe-dom.js +0 -77
  565. package/src/vendor/bootstrap-vue/src/utils/plugins.js +0 -169
  566. package/src/vendor/bootstrap-vue/src/utils/props.js +0 -92
  567. package/src/vendor/bootstrap-vue/src/utils/props.spec.js +0 -112
  568. package/src/vendor/bootstrap-vue/src/utils/router.js +0 -145
  569. package/src/vendor/bootstrap-vue/src/utils/router.spec.js +0 -248
  570. package/src/vendor/bootstrap-vue/src/utils/safe-vue-instance.js +0 -13
  571. package/src/vendor/bootstrap-vue/src/utils/stable-sort.js +0 -31
  572. package/src/vendor/bootstrap-vue/src/utils/string.js +0 -59
  573. package/src/vendor/bootstrap-vue/src/utils/string.spec.js +0 -65
  574. package/src/vendor/bootstrap-vue/src/utils/stringify-object-values.js +0 -31
  575. package/src/vendor/bootstrap-vue/src/utils/stringify-object-values.spec.js +0 -47
  576. package/src/vendor/bootstrap-vue/src/utils/warn.js +0 -42
  577. package/src/vendor/bootstrap-vue/src/utils/warn.spec.js +0 -54
  578. package/src/vendor/bootstrap-vue/src/vue-injections.d.ts +0 -13
  579. package/src/vendor/bootstrap-vue/src/vue.js +0 -126
@@ -1,836 +0,0 @@
1
- import { mount } from '@vue/test-utils'
2
- import { waitNT } from '../../../tests/utils'
3
- import { BLink } from '../link/link'
4
- import { BTab } from './tab'
5
- import { BTabs } from './tabs'
6
-
7
- describe('tabs', () => {
8
- it('default has expected classes and structure', async () => {
9
- const wrapper = mount(BTabs)
10
-
11
- await waitNT(wrapper.vm)
12
- expect(wrapper).toBeDefined()
13
-
14
- expect(wrapper.element.tagName).toBe('DIV')
15
- expect(wrapper.classes()).toContain('tabs')
16
- expect(wrapper.classes()).not.toContain('row')
17
- expect(wrapper.classes()).not.toContain('no-gutters')
18
- expect(wrapper.attributes('id')).toBeDefined()
19
-
20
- wrapper.destroy()
21
- })
22
-
23
- it('default has expected data state', async () => {
24
- const wrapper = mount(BTabs)
25
-
26
- await waitNT(wrapper.vm)
27
- expect(wrapper).toBeDefined()
28
-
29
- expect(wrapper.vm.currentTab).toBe(-1)
30
- expect(wrapper.vm.tabs.length).toBe(0)
31
-
32
- wrapper.destroy()
33
- })
34
-
35
- it('has correct card classes when prop card is true', async () => {
36
- const wrapper = mount(BTabs, {
37
- propsData: { card: true },
38
- slots: {
39
- default: {
40
- components: { BTab },
41
- template: '<div><b-tab /><b-tab /><b-tab /></div>'
42
- }
43
- }
44
- })
45
-
46
- await waitNT(wrapper.vm)
47
- expect(wrapper).toBeDefined()
48
-
49
- expect(wrapper.element.tagName).toBe('DIV')
50
- expect(wrapper.classes()).toContain('tabs')
51
- expect(wrapper.findAll('.card-header').length).toBe(1)
52
- expect(wrapper.findAll('ul').length).toBe(1)
53
- expect(wrapper.find('ul').classes()).toContain('nav')
54
- expect(wrapper.find('ul').classes()).toContain('nav-tabs')
55
- expect(wrapper.find('ul').classes()).toContain('card-header-tabs')
56
-
57
- wrapper.destroy()
58
- })
59
-
60
- it('has correct card classes when props card and vertical are true', async () => {
61
- const wrapper = mount(BTabs, {
62
- propsData: { card: true, vertical: true },
63
- slots: {
64
- default: {
65
- components: { BTab },
66
- template: '<div><b-tab /><b-tab /><b-tab /></div>'
67
- }
68
- }
69
- })
70
-
71
- await waitNT(wrapper.vm)
72
- expect(wrapper).toBeDefined()
73
-
74
- expect(wrapper.element.tagName).toBe('DIV')
75
- expect(wrapper.classes()).toContain('tabs')
76
- expect(wrapper.classes()).toContain('row')
77
- expect(wrapper.classes()).toContain('no-gutters')
78
- expect(wrapper.findAll('.card-header').length).toBe(1)
79
- expect(wrapper.findAll('ul').length).toBe(1)
80
- expect(wrapper.find('ul').classes()).toContain('nav')
81
- expect(wrapper.find('ul').classes()).toContain('nav-tabs')
82
- expect(wrapper.find('ul').classes()).toContain('card-header')
83
- expect(wrapper.find('ul').classes()).toContain('flex-column')
84
- expect(wrapper.find('ul').classes()).toContain('h-100')
85
- expect(wrapper.find('ul').classes()).toContain('border-bottom-0')
86
- expect(wrapper.find('ul').classes()).toContain('rounded-0')
87
- expect(wrapper.findAll('.tab-content.col').length).toBe(1)
88
- expect(wrapper.findAll('.col-auto').length).toBe(1)
89
-
90
- wrapper.destroy()
91
- })
92
-
93
- it('sets correct tab active for initial value', async () => {
94
- const tabIndex = 1
95
- const wrapper = mount(BTabs, {
96
- propsData: { value: tabIndex },
97
- slots: {
98
- default: {
99
- components: { BTab },
100
- template: '<div><b-tab /><b-tab /><b-tab /></div>'
101
- }
102
- }
103
- })
104
-
105
- await waitNT(wrapper.vm)
106
- expect(wrapper).toBeDefined()
107
-
108
- expect(wrapper.vm.currentTab).toBe(tabIndex)
109
- expect(wrapper.vm.tabs.length).toBe(3)
110
- expect(wrapper.vm.tabs[tabIndex].localActive).toBe(true)
111
-
112
- wrapper.destroy()
113
- })
114
-
115
- it('sets correct tab active when first tab is disabled', async () => {
116
- const App = {
117
- render(h) {
118
- return h(BTabs, [
119
- h(BTab, { props: { disabled: true } }, 'tab 0'),
120
- h(BTab, { props: {} }, 'tab 1'),
121
- h(BTab, { props: {} }, 'tab 2')
122
- ])
123
- }
124
- }
125
-
126
- const wrapper = mount(App)
127
-
128
- await waitNT(wrapper.vm)
129
- expect(wrapper).toBeDefined()
130
-
131
- const $tabs = wrapper.findComponent(BTabs)
132
- expect($tabs).toBeDefined()
133
- expect($tabs.findAllComponents(BTab).length).toBe(3)
134
-
135
- // Expect 2nd tab (index 1) to be active
136
- expect($tabs.vm.currentTab).toBe(1)
137
- expect($tabs.vm.tabs[1].localActive).toBe(true)
138
-
139
- expect($tabs.emitted('input')).toBeDefined()
140
- expect($tabs.emitted('input').length).toBe(1)
141
- // Should emit index of 1 (2nd tab)
142
- expect($tabs.emitted('input')[0][0]).toBe(1)
143
-
144
- wrapper.destroy()
145
- })
146
-
147
- it('sets current index based on active prop of b-tab', async () => {
148
- const App = {
149
- render(h) {
150
- return h(BTabs, [
151
- h(BTab, { props: { active: false } }, 'tab 0'),
152
- h(BTab, { props: { active: true } }, 'tab 1'),
153
- h(BTab, { props: { active: false } }, 'tab 2')
154
- ])
155
- }
156
- }
157
-
158
- const wrapper = mount(App)
159
-
160
- await waitNT(wrapper.vm)
161
- expect(wrapper).toBeDefined()
162
-
163
- const $tabs = wrapper.findComponent(BTabs)
164
- expect($tabs).toBeDefined()
165
- expect($tabs.findAllComponents(BTab).length).toBe(3)
166
-
167
- // Expect 2nd tab (index 1) to be active
168
- expect($tabs.vm.currentTab).toBe(1)
169
- expect($tabs.vm.tabs[1].localActive).toBe(true)
170
-
171
- expect($tabs.emitted('input')).toBeDefined()
172
- expect($tabs.emitted('input').length).toBe(1)
173
- // Should emit index of 1 (2nd tab)
174
- expect($tabs.emitted('input')[0][0]).toBe(1)
175
-
176
- wrapper.destroy()
177
- })
178
-
179
- it('selects first non-disabled tab when active tab disabled', async () => {
180
- const App = {
181
- props: {
182
- activeTab: { type: Number, default: 1 }
183
- },
184
- render(h) {
185
- const { activeTab } = this
186
-
187
- return h(BTabs, [
188
- h(BTab, { props: { active: activeTab === 0, disabled: true } }, 'Tab 1'),
189
- h(BTab, { props: { active: activeTab === 1 } }, 'Tab 2'),
190
- h(BTab, { props: { active: activeTab === 2 } }, 'Tab 3')
191
- ])
192
- }
193
- }
194
-
195
- const wrapper = mount(App)
196
-
197
- await waitNT(wrapper.vm)
198
- expect(wrapper).toBeDefined()
199
-
200
- const $tabs = wrapper.findComponent(BTabs)
201
- expect($tabs).toBeDefined()
202
- expect($tabs.findAllComponents(BTab).length).toBe(3)
203
-
204
- // Expect 2nd tab (index 1) to be active
205
- expect($tabs.vm.currentTab).toBe(1)
206
- expect($tabs.findAllComponents(BTab).at(0).vm.localActive).toBe(false)
207
- expect($tabs.findAllComponents(BTab).at(1).vm.localActive).toBe(true)
208
- expect($tabs.findAllComponents(BTab).at(2).vm.localActive).toBe(false)
209
-
210
- expect($tabs.emitted('input')).toBeDefined()
211
- expect($tabs.emitted('input').length).toBe(1)
212
- // Should emit index of 1 (2nd tab)
213
- expect($tabs.emitted('input')[0][0]).toBe(1)
214
-
215
- // Deactivate current tab (BTab 2, index 1)
216
- await wrapper.setProps({ activeTab: -1 })
217
-
218
- // Expect last tab (index 2) to be active
219
- expect($tabs.vm.currentTab).toBe(2)
220
- expect($tabs.findAllComponents(BTab).at(0).vm.localActive).toBe(false)
221
- expect($tabs.findAllComponents(BTab).at(1).vm.localActive).toBe(false)
222
- expect($tabs.findAllComponents(BTab).at(2).vm.localActive).toBe(true)
223
- expect($tabs.emitted('input').length).toBe(2)
224
- expect($tabs.emitted('input')[1][0]).toBe(2)
225
-
226
- wrapper.destroy()
227
- })
228
-
229
- it('v-model works', async () => {
230
- const App = {
231
- props: {
232
- activeTab: { type: Number, default: 0 }
233
- },
234
- render(h) {
235
- return h(BTabs, { props: { value: this.activeTab } }, [
236
- h(BTab, 'Tab 1'),
237
- h(BTab, 'Tab 2'),
238
- h(BTab, 'Tab 3')
239
- ])
240
- }
241
- }
242
-
243
- const wrapper = mount(App)
244
-
245
- await waitNT(wrapper.vm)
246
- expect(wrapper).toBeDefined()
247
-
248
- const $tabs = wrapper.findComponent(BTabs)
249
- expect($tabs).toBeDefined()
250
- expect($tabs.findAllComponents(BTab).length).toBe(3)
251
-
252
- // Expect 1st tab (index 0) to be active
253
- expect($tabs.vm.currentTab).toBe(0)
254
- expect($tabs.vm.tabs[0].localActive).toBe(true)
255
- // It should not emit an input event as the value is the same
256
- expect($tabs.emitted('input')).toBeUndefined()
257
-
258
- // Set 2nd BTab to be active
259
- await wrapper.setProps({ activeTab: 1 })
260
- expect($tabs.vm.currentTab).toBe(1)
261
- expect($tabs.emitted('input').length).toBe(1)
262
- // Should emit index of 1 (2nd tab)
263
- expect($tabs.emitted('input')[0][0]).toBe(1)
264
-
265
- // Set 3rd BTab to be active
266
- await wrapper.setProps({ activeTab: 2 })
267
- expect($tabs.vm.currentTab).toBe(2)
268
- expect($tabs.emitted('input').length).toBe(2)
269
- // Should emit index of 2 (3rd tab)
270
- expect($tabs.emitted('input')[1][0]).toBe(2)
271
-
272
- wrapper.destroy()
273
- })
274
-
275
- it('v-model works when trying to activate a disabled tab', async () => {
276
- const App = {
277
- props: {
278
- activeTab: { type: Number, default: 0 }
279
- },
280
- render(h) {
281
- return h(BTabs, { props: { value: this.activeTab } }, [
282
- h(BTab, 'Tab 1'),
283
- h(BTab, { props: { disabled: true } }, 'Tab 2'),
284
- h(BTab, 'Tab 3')
285
- ])
286
- }
287
- }
288
-
289
- const wrapper = mount(App)
290
-
291
- await waitNT(wrapper.vm)
292
- expect(wrapper).toBeDefined()
293
-
294
- const $tabs = wrapper.findComponent(BTabs)
295
- expect($tabs).toBeDefined()
296
- expect($tabs.findAllComponents(BTab).length).toBe(3)
297
-
298
- // Expect 1st tab (index 0) to be active
299
- expect($tabs.vm.currentTab).toBe(0)
300
- expect($tabs.vm.tabs[0].localActive).toBe(true)
301
- expect($tabs.emitted('input')).toBeUndefined()
302
-
303
- // Try to set 2nd (disabled) BTab to be active
304
- await wrapper.setProps({ activeTab: 1 })
305
- // Will try activate next non-disabled tab instead (3rd tab, index 2)
306
- expect($tabs.vm.currentTab).toBe(2)
307
- expect($tabs.emitted('input').length).toBe(1)
308
- // Should emit index of 2 (3rd tab)
309
- expect($tabs.emitted('input')[0][0]).toBe(2)
310
-
311
- // Needed for test since value not bound to actual v-model on App
312
- await wrapper.setProps({ activeTab: 2 })
313
- // Try and set 2nd BTab to be active
314
- await wrapper.setProps({ activeTab: 1 })
315
- // Will find the previous non-disabled tab (1st tab, index 0)
316
- expect($tabs.vm.currentTab).toBe(0)
317
- expect($tabs.emitted('input').length).toBe(2)
318
- // Should emit index of 0 (1st tab)
319
- expect($tabs.emitted('input')[1][0]).toBe(0)
320
-
321
- wrapper.destroy()
322
- })
323
-
324
- it('`activate-tab` event works', async () => {
325
- const App = {
326
- props: {
327
- activeTab: { type: Number, default: 0 }
328
- },
329
- methods: {
330
- preventTab(next, prev, bvEvent) {
331
- // Prevent 3rd tab (index === 2) from activating
332
- if (next === 2) {
333
- bvEvent.preventDefault()
334
- }
335
- }
336
- },
337
- render(h) {
338
- return h(
339
- BTabs,
340
- {
341
- props: { value: this.activeTab },
342
- on: { 'activate-tab': this.preventTab }
343
- },
344
- [h(BTab, 'Tab 1'), h(BTab, 'Tab 2'), h(BTab, 'Tab 3')]
345
- )
346
- }
347
- }
348
-
349
- const wrapper = mount(App)
350
-
351
- await waitNT(wrapper.vm)
352
- expect(wrapper).toBeDefined()
353
-
354
- const $tabs = wrapper.findComponent(BTabs)
355
- expect($tabs).toBeDefined()
356
- expect($tabs.findAllComponents(BTab).length).toBe(3)
357
-
358
- // Expect 1st tab (index 0) to be active
359
- expect($tabs.vm.currentTab).toBe(0)
360
- expect($tabs.vm.tabs[0].localActive).toBe(true)
361
- expect($tabs.emitted('input')).toBeUndefined()
362
- expect($tabs.emitted('activate-tab')).toBeUndefined()
363
-
364
- // Set 2nd BTab to be active
365
- await wrapper.setProps({ activeTab: 1 })
366
- expect($tabs.vm.currentTab).toBe(1)
367
- expect($tabs.emitted('input')).toBeDefined()
368
- expect($tabs.emitted('input').length).toBe(1)
369
- expect($tabs.emitted('input')[0][0]).toBe(1)
370
- expect($tabs.emitted('activate-tab')).toBeDefined()
371
- expect($tabs.emitted('activate-tab').length).toBe(1)
372
- expect($tabs.emitted('activate-tab')[0][0]).toBe(1)
373
- expect($tabs.emitted('activate-tab')[0][1]).toBe(0)
374
- expect($tabs.emitted('activate-tab')[0][2]).toBeDefined()
375
- expect($tabs.emitted('activate-tab')[0][2].vueTarget).toBe($tabs.vm)
376
-
377
- // Attempt to set 3rd BTab to be active
378
- await wrapper.setProps({ activeTab: 2 })
379
- expect($tabs.vm.currentTab).toBe(1)
380
- expect($tabs.emitted('input')).toBeDefined()
381
- expect($tabs.emitted('input').length).toBe(2)
382
- expect($tabs.emitted('input')[1][0]).toBe(1)
383
- expect($tabs.emitted('activate-tab').length).toBe(2)
384
- expect($tabs.emitted('activate-tab')[1][0]).toBe(2)
385
- expect($tabs.emitted('activate-tab')[1][1]).toBe(1)
386
- expect($tabs.emitted('activate-tab')[1][2]).toBeDefined()
387
- expect($tabs.emitted('activate-tab')[1][2].vueTarget).toBe($tabs.vm)
388
- expect($tabs.emitted('activate-tab')[1][2].defaultPrevented).toBe(true)
389
-
390
- wrapper.destroy()
391
- })
392
-
393
- it('clicking on tab activates the tab, and tab emits click event', async () => {
394
- const App = {
395
- render(h) {
396
- return h(BTabs, { props: { value: 0 } }, [
397
- h(BTab, { props: { title: 'one' } }, 'tab 0'),
398
- h(BTab, { props: { title: 'two' } }, 'tab 1'),
399
- h(BTab, { props: { title: 'three' } }, 'tab 2')
400
- ])
401
- }
402
- }
403
-
404
- const wrapper = mount(App)
405
-
406
- await waitNT(wrapper.vm)
407
- expect(wrapper).toBeDefined()
408
-
409
- const $tabs = wrapper.findComponent(BTabs)
410
- expect($tabs).toBeDefined()
411
- expect($tabs.findAllComponents(BTab).length).toBe(3)
412
-
413
- const tab1 = $tabs.findAllComponents(BTab).at(0)
414
- const tab2 = $tabs.findAllComponents(BTab).at(1)
415
- const tab3 = $tabs.findAllComponents(BTab).at(2)
416
-
417
- expect(wrapper.findAll('.nav-link')).toBeDefined()
418
- expect(wrapper.findAll('.nav-link').length).toBe(3)
419
-
420
- // Expect 1st tab (index 0) to be active
421
- expect($tabs.vm.currentTab).toBe(0)
422
- expect(tab1.vm.localActive).toBe(true)
423
- expect(tab2.vm.localActive).toBe(false)
424
- expect(tab3.vm.localActive).toBe(false)
425
-
426
- // Try to set 2nd BTab to be active via click
427
- expect(tab2.emitted('click')).toBeUndefined()
428
- await wrapper
429
- .findAll('.nav-link')
430
- .at(1)
431
- .trigger('click')
432
- expect($tabs.vm.currentTab).toBe(1)
433
- expect(tab1.vm.localActive).toBe(false)
434
- expect(tab2.vm.localActive).toBe(true)
435
- expect(tab3.vm.localActive).toBe(false)
436
- expect(tab2.emitted('click')).toBeDefined()
437
-
438
- // Try to set 3rd BTab to be active via click
439
- expect(tab3.emitted('click')).toBeUndefined()
440
- await wrapper
441
- .findAll('.nav-link')
442
- .at(2)
443
- .trigger('click')
444
- expect($tabs.vm.currentTab).toBe(2)
445
- expect(tab1.vm.localActive).toBe(false)
446
- expect(tab2.vm.localActive).toBe(false)
447
- expect(tab3.vm.localActive).toBe(true)
448
- expect(tab3.emitted('click')).toBeDefined()
449
-
450
- // Try to set 1st BTab to be active via click (space === click in keynav mode)
451
- expect(tab1.emitted('click')).toBeUndefined()
452
- await wrapper
453
- .findAll('.nav-link')
454
- .at(0)
455
- .trigger('keydown.space')
456
- expect($tabs.vm.currentTab).toBe(0)
457
- expect(tab1.vm.localActive).toBe(true)
458
- expect(tab2.vm.localActive).toBe(false)
459
- expect(tab3.vm.localActive).toBe(false)
460
- expect(tab1.emitted('click')).toBeDefined()
461
-
462
- wrapper.destroy()
463
- })
464
-
465
- it('pressing space on tab activates the tab, and tab emits click event', async () => {
466
- const App = {
467
- render(h) {
468
- return h(BTabs, { props: { value: 0, noKeyNav: true } }, [
469
- h(BTab, { props: { title: 'one' } }, 'tab 0'),
470
- h(BTab, { props: { title: 'two' } }, 'tab 1'),
471
- h(BTab, { props: { title: 'three' } }, 'tab 2')
472
- ])
473
- }
474
- }
475
-
476
- const wrapper = mount(App)
477
-
478
- await waitNT(wrapper.vm)
479
- expect(wrapper).toBeDefined()
480
-
481
- const $tabs = wrapper.findComponent(BTabs)
482
- expect($tabs).toBeDefined()
483
- expect($tabs.findAllComponents(BTab).length).toBe(3)
484
-
485
- const tab1 = $tabs.findAllComponents(BTab).at(0)
486
- const tab2 = $tabs.findAllComponents(BTab).at(1)
487
- const tab3 = $tabs.findAllComponents(BTab).at(2)
488
-
489
- expect(wrapper.findAll('.nav-link')).toBeDefined()
490
- expect(wrapper.findAll('.nav-link').length).toBe(3)
491
-
492
- // Expect 1st tab (index 0) to be active
493
- expect($tabs.vm.currentTab).toBe(0)
494
- expect(tab1.vm.localActive).toBe(true)
495
- expect(tab2.vm.localActive).toBe(false)
496
- expect(tab3.vm.localActive).toBe(false)
497
-
498
- // Try to set 2nd BTab to be active via space keypress
499
- expect(tab2.emitted('click')).toBeUndefined()
500
- await wrapper
501
- .findAll('.nav-link')
502
- .at(1)
503
- .trigger('keydown.space')
504
- expect($tabs.vm.currentTab).toBe(1)
505
- expect(tab1.vm.localActive).toBe(false)
506
- expect(tab2.vm.localActive).toBe(true)
507
- expect(tab3.vm.localActive).toBe(false)
508
- expect(tab2.emitted('click')).toBeDefined()
509
-
510
- // Try to set 3rd BTab to be active via space keypress
511
- expect(tab3.emitted('click')).toBeUndefined()
512
- await wrapper
513
- .findAll('.nav-link')
514
- .at(2)
515
- .trigger('keydown.space')
516
- expect($tabs.vm.currentTab).toBe(2)
517
- expect(tab1.vm.localActive).toBe(false)
518
- expect(tab2.vm.localActive).toBe(false)
519
- expect(tab3.vm.localActive).toBe(true)
520
- expect(tab3.emitted('click')).toBeDefined()
521
-
522
- // Try to set 1st BTab to be active via space keypress
523
- expect(tab1.emitted('click')).toBeUndefined()
524
- await wrapper
525
- .findAll('.nav-link')
526
- .at(0)
527
- .trigger('keydown.space')
528
- expect($tabs.vm.currentTab).toBe(0)
529
- expect(tab1.vm.localActive).toBe(true)
530
- expect(tab2.vm.localActive).toBe(false)
531
- expect(tab3.vm.localActive).toBe(false)
532
- expect(tab1.emitted('click')).toBeDefined()
533
-
534
- wrapper.destroy()
535
- })
536
-
537
- it('key nav works', async () => {
538
- const App = {
539
- render(h) {
540
- return h(BTabs, { props: { value: 0 } }, [
541
- h(BTab, { props: { title: 'one' } }, 'tab 0'),
542
- h(BTab, { props: { title: 'two' } }, 'tab 1'),
543
- h(BTab, { props: { title: 'three' } }, 'tab 2')
544
- ])
545
- }
546
- }
547
-
548
- const wrapper = mount(App)
549
-
550
- await waitNT(wrapper.vm)
551
- expect(wrapper).toBeDefined()
552
-
553
- const $tabs = wrapper.findComponent(BTabs)
554
- expect($tabs).toBeDefined()
555
- expect($tabs.findAllComponents(BTab).length).toBe(3)
556
-
557
- const tab1 = $tabs.findAllComponents(BTab).at(0)
558
- const tab2 = $tabs.findAllComponents(BTab).at(1)
559
- const tab3 = $tabs.findAllComponents(BTab).at(2)
560
-
561
- expect(wrapper.findAll('.nav-link')).toBeDefined()
562
- expect(wrapper.findAll('.nav-link').length).toBe(3)
563
-
564
- // Expect 1st tab (index 0) to be active
565
- expect($tabs.vm.currentTab).toBe(0)
566
- expect(tab1.vm.localActive).toBe(true)
567
- expect(tab2.vm.localActive).toBe(false)
568
- expect(tab3.vm.localActive).toBe(false)
569
-
570
- // RIGHT moves to next tab
571
- await wrapper
572
- .findAllComponents(BLink)
573
- .at(0)
574
- .trigger('keydown.right')
575
- expect($tabs.vm.currentTab).toBe(1)
576
- expect(tab1.vm.localActive).toBe(false)
577
- expect(tab2.vm.localActive).toBe(true)
578
- expect(tab3.vm.localActive).toBe(false)
579
-
580
- // END key moves to last tab
581
- await wrapper
582
- .findAllComponents(BLink)
583
- .at(1)
584
- .trigger('keydown.end')
585
- expect($tabs.vm.currentTab).toBe(2)
586
- expect(tab1.vm.localActive).toBe(false)
587
- expect(tab2.vm.localActive).toBe(false)
588
- expect(tab3.vm.localActive).toBe(true)
589
-
590
- // LEFT moves to previous tab
591
- await wrapper
592
- .findAllComponents(BLink)
593
- .at(2)
594
- .trigger('keydown.left')
595
- expect($tabs.vm.currentTab).toBe(1)
596
- expect(tab1.vm.localActive).toBe(false)
597
- expect(tab2.vm.localActive).toBe(true)
598
- expect(tab3.vm.localActive).toBe(false)
599
-
600
- // HOME moves to first tab
601
- await wrapper
602
- .findAllComponents(BLink)
603
- .at(1)
604
- .trigger('keydown.home')
605
- expect($tabs.vm.currentTab).toBe(0)
606
- expect(tab1.vm.localActive).toBe(true)
607
- expect(tab2.vm.localActive).toBe(false)
608
- expect(tab3.vm.localActive).toBe(false)
609
-
610
- wrapper.destroy()
611
- })
612
-
613
- it('disabling active tab selects first non-disabled tab', async () => {
614
- const App = {
615
- props: {
616
- disabledTabs: { type: Array, default: () => [] }
617
- },
618
- render(h) {
619
- const { disabledTabs } = this
620
-
621
- return h(BTabs, { props: { value: 2 } }, [
622
- h(BTab, { props: { disabled: disabledTabs.indexOf(0) !== -1 } }, 'Tab 1'),
623
- h(BTab, { props: { disabled: disabledTabs.indexOf(1) !== -1 } }, 'Tab 2'),
624
- h(BTab, { props: { disabled: disabledTabs.indexOf(2) !== -1 } }, 'Tab 3')
625
- ])
626
- }
627
- }
628
-
629
- const wrapper = mount(App)
630
-
631
- await waitNT(wrapper.vm)
632
- expect(wrapper).toBeDefined()
633
-
634
- const $tabs = wrapper.findComponent(BTabs)
635
- expect($tabs).toBeDefined()
636
- expect($tabs.findAllComponents(BTab).length).toBe(3)
637
-
638
- const tab1 = $tabs.findAllComponents(BTab).at(0)
639
- const tab2 = $tabs.findAllComponents(BTab).at(1)
640
- const tab3 = $tabs.findAllComponents(BTab).at(2)
641
-
642
- // Expect 3rd tab (index 2) to be active
643
- expect($tabs.vm.currentTab).toBe(2)
644
- expect(tab1.vm.localActive).toBe(false)
645
- expect(tab2.vm.localActive).toBe(false)
646
- expect(tab3.vm.localActive).toBe(true)
647
-
648
- // Disable 3rd tab
649
- await wrapper.setProps({ disabledTabs: [2] })
650
-
651
- // Expect 1st tab to be active
652
- expect($tabs.vm.currentTab).toBe(0)
653
- expect(tab1.vm.localActive).toBe(true)
654
- expect(tab2.vm.localActive).toBe(false)
655
- expect(tab3.vm.localActive).toBe(false)
656
-
657
- // Enable 3rd tab and Disable 1st tab
658
- await wrapper.setProps({ disabledTabs: [0] })
659
-
660
- // Expect 2nd tab to be active
661
- expect($tabs.vm.currentTab).toBe(1)
662
- expect(tab1.vm.localActive).toBe(false)
663
- expect(tab2.vm.localActive).toBe(true)
664
- expect(tab3.vm.localActive).toBe(false)
665
-
666
- wrapper.destroy()
667
- })
668
-
669
- it('tab title slots are reactive', async () => {
670
- const App = {
671
- render(h) {
672
- return h(BTabs, { props: { value: 2 } }, [
673
- h(BTab, { props: { title: 'original' } }, 'tab content')
674
- ])
675
- }
676
- }
677
-
678
- const wrapper = mount(App)
679
-
680
- await waitNT(wrapper.vm)
681
- expect(wrapper).toBeDefined()
682
-
683
- const $tabs = wrapper.findComponent(BTabs)
684
- expect($tabs).toBeDefined()
685
- expect($tabs.findAllComponents(BTab).length).toBe(1)
686
-
687
- // Expect tab button content to be `original`
688
- expect(wrapper.find('.nav-link').text()).toBe('original')
689
-
690
- // Get the BTab's instance
691
- const tabVm = wrapper.findComponent(BTab).vm
692
- expect(tabVm).toBeDefined()
693
-
694
- // Change title slot content
695
- tabVm.$slots.title = [tabVm.$createElement('span', 'foobar')]
696
- tabVm.$forceUpdate()
697
- await waitNT(wrapper.vm)
698
-
699
- // Expect tab button content to be `foobar`
700
- expect(wrapper.find('.nav-link').text()).toBe('foobar')
701
-
702
- wrapper.destroy()
703
- })
704
-
705
- it('"active-nav-item-class" is applied to active nav item', async () => {
706
- const activeNavItemClass = 'text-success'
707
- const App = {
708
- props: {
709
- activeTab: { type: Number, default: 0 }
710
- },
711
- render(h) {
712
- return h(BTabs, { props: { value: this.activeTab, activeNavItemClass } }, [
713
- h(BTab, 'Tab 1'),
714
- h(BTab, 'Tab 2'),
715
- h(BTab, 'Tab 3')
716
- ])
717
- }
718
- }
719
-
720
- const wrapper = mount(App)
721
-
722
- await waitNT(wrapper.vm)
723
- expect(wrapper).toBeDefined()
724
-
725
- const $tabs = wrapper.findComponent(BTabs)
726
- expect($tabs).toBeDefined()
727
- expect($tabs.findAllComponents(BTab).length).toBe(3)
728
-
729
- const getNavItemByTab = tab => wrapper.find(`#${tab.$el.id}___BV_tab_button__`)
730
-
731
- // Expect 1st tab (index 0) to be active
732
- expect($tabs.vm.currentTab).toBe(0)
733
- expect($tabs.vm.tabs[0].localActive).toBe(true)
734
- // Expect 1st tabs nav item to have "active-nav-item-class" applied
735
- expect(getNavItemByTab($tabs.vm.tabs[0]).classes(activeNavItemClass)).toBe(true)
736
-
737
- // Set 2nd tab to be active
738
- wrapper.setProps({ activeTab: 1 })
739
- await waitNT(wrapper.vm)
740
- expect($tabs.vm.currentTab).toBe(1)
741
- // Expect 2nd tabs nav item to have "active-nav-item-class" applied
742
- expect(getNavItemByTab($tabs.vm.tabs[1]).classes(activeNavItemClass)).toBe(true)
743
- // Expect 1st tabs nav item to don't have "active-nav-item-class" applied anymore
744
- expect(getNavItemByTab($tabs.vm.tabs[0]).classes(activeNavItemClass)).toBe(false)
745
-
746
- wrapper.destroy()
747
- })
748
-
749
- it('"active-tab-class" is applied to active tab', async () => {
750
- const activeTabClass = 'text-success'
751
- const App = {
752
- props: {
753
- activeTab: { type: Number, default: 0 }
754
- },
755
- render(h) {
756
- return h(BTabs, { props: { value: this.activeTab, activeTabClass } }, [
757
- h(BTab, 'Tab 1'),
758
- h(BTab, 'Tab 2'),
759
- h(BTab, 'Tab 3')
760
- ])
761
- }
762
- }
763
-
764
- const wrapper = mount(App)
765
-
766
- await waitNT(wrapper.vm)
767
- expect(wrapper).toBeDefined()
768
-
769
- const $tabs = wrapper.findComponent(BTabs)
770
- expect($tabs).toBeDefined()
771
- expect($tabs.findAllComponents(BTab).length).toBe(3)
772
-
773
- // Expect 1st tab (index 0) to be active
774
- expect($tabs.vm.currentTab).toBe(0)
775
- expect($tabs.vm.tabs[0].localActive).toBe(true)
776
- // Expect 1st tab to have "active-tab-class" applied
777
- expect($tabs.vm.tabs[0].$el.classList.contains(activeTabClass)).toBe(true)
778
-
779
- // Set 2nd tab to be active
780
- await wrapper.setProps({ activeTab: 1 })
781
- expect($tabs.vm.currentTab).toBe(1)
782
- // Expect 2nd tab to have "active-tab-class" applied
783
- expect($tabs.vm.tabs[1].$el.classList.contains(activeTabClass)).toBe(true)
784
- // Expect 1st tab to don't have "active-tab-class" applied anymore
785
- expect($tabs.vm.tabs[0].$el.classList.contains(activeTabClass)).toBe(false)
786
-
787
- wrapper.destroy()
788
- })
789
-
790
- it('emits "changed" event when tabs change', async () => {
791
- const App = {
792
- props: {
793
- tabs: {
794
- type: Array,
795
- default: () => ['Tab 1', 'Tab 2', 'Tab 3']
796
- }
797
- },
798
- render(h) {
799
- return h(BTabs, this.tabs.map(tab => h(BTab, tab)))
800
- }
801
- }
802
-
803
- const wrapper = mount(App)
804
-
805
- await waitNT(wrapper.vm)
806
- expect(wrapper).toBeDefined()
807
-
808
- const $tabs = wrapper.findComponent(BTabs)
809
- expect($tabs).toBeDefined()
810
- expect($tabs.findAllComponents(BTab).length).toBe(3)
811
- expect($tabs.emitted('changed')).toBeDefined()
812
- expect($tabs.emitted('changed').length).toBe(1)
813
- expect($tabs.emitted('changed')[0][0].length).toBe(3)
814
- expect($tabs.emitted('changed')[0][1].length).toBe(0)
815
-
816
- // Add a tab
817
- await wrapper.setProps({ tabs: ['Tab 1', 'Tab 2', 'Tab 3', 'Tab 4'] })
818
- await waitNT(wrapper.vm)
819
- expect($tabs.findAllComponents(BTab).length).toBe(4)
820
- expect($tabs.emitted('changed')).toBeDefined()
821
- expect($tabs.emitted('changed').length).toBe(2)
822
- expect($tabs.emitted('changed')[1][0].length).toBe(4)
823
- expect($tabs.emitted('changed')[1][1].length).toBe(3)
824
-
825
- // Remove a tabs
826
- await wrapper.setProps({ tabs: ['Tab 1', 'Tab 2'] })
827
- await waitNT(wrapper.vm)
828
- expect($tabs.findAllComponents(BTab).length).toBe(2)
829
- expect($tabs.emitted('changed')).toBeDefined()
830
- expect($tabs.emitted('changed').length).toBe(3)
831
- expect($tabs.emitted('changed')[2][0].length).toBe(2)
832
- expect($tabs.emitted('changed')[2][1].length).toBe(4)
833
-
834
- wrapper.destroy()
835
- })
836
- })