@gitlab/duo-ui 3.0.0 → 4.0.0

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 (578) 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 +4 -4
  13. package/dist/components/chat/components/duo_chat_message/duo_chat_message.js +13 -13
  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 +66 -24
  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 +3 -5
  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.vue +7 -7
  34. package/src/components/chat/components/duo_chat_message/duo_chat_message.md +2 -2
  35. package/src/components/chat/components/duo_chat_message/duo_chat_message.vue +14 -14
  36. package/src/components/chat/components/duo_chat_message_sources/duo_chat_message_sources.vue +2 -2
  37. package/src/components/chat/components/duo_chat_predefined_prompts/duo_chat_predefined_prompts.vue +1 -1
  38. package/src/components/chat/duo_chat.md +4 -4
  39. package/src/components/chat/duo_chat.scss +47 -0
  40. package/src/components/chat/duo_chat.vue +263 -204
  41. package/translations.js +36 -43
  42. package/src/vendor/bootstrap/LICENSE +0 -22
  43. package/src/vendor/bootstrap/scss/_alert.scss +0 -52
  44. package/src/vendor/bootstrap/scss/_badge.scss +0 -54
  45. package/src/vendor/bootstrap/scss/_breadcrumb.scss +0 -42
  46. package/src/vendor/bootstrap/scss/_button-group.scss +0 -163
  47. package/src/vendor/bootstrap/scss/_buttons.scss +0 -142
  48. package/src/vendor/bootstrap/scss/_card.scss +0 -286
  49. package/src/vendor/bootstrap/scss/_carousel.scss +0 -200
  50. package/src/vendor/bootstrap/scss/_close.scss +0 -40
  51. package/src/vendor/bootstrap/scss/_code.scss +0 -48
  52. package/src/vendor/bootstrap/scss/_custom-forms.scss +0 -526
  53. package/src/vendor/bootstrap/scss/_dropdown.scss +0 -192
  54. package/src/vendor/bootstrap/scss/_forms.scss +0 -347
  55. package/src/vendor/bootstrap/scss/_functions.scss +0 -190
  56. package/src/vendor/bootstrap/scss/_grid.scss +0 -73
  57. package/src/vendor/bootstrap/scss/_images.scss +0 -42
  58. package/src/vendor/bootstrap/scss/_input-group.scss +0 -211
  59. package/src/vendor/bootstrap/scss/_jumbotron.scss +0 -17
  60. package/src/vendor/bootstrap/scss/_list-group.scss +0 -154
  61. package/src/vendor/bootstrap/scss/_media.scss +0 -8
  62. package/src/vendor/bootstrap/scss/_mixins.scss +0 -47
  63. package/src/vendor/bootstrap/scss/_modal.scss +0 -240
  64. package/src/vendor/bootstrap/scss/_nav.scss +0 -125
  65. package/src/vendor/bootstrap/scss/_navbar.scss +0 -332
  66. package/src/vendor/bootstrap/scss/_pagination.scss +0 -74
  67. package/src/vendor/bootstrap/scss/_popover.scss +0 -170
  68. package/src/vendor/bootstrap/scss/_print.scss +0 -132
  69. package/src/vendor/bootstrap/scss/_progress.scss +0 -47
  70. package/src/vendor/bootstrap/scss/_reboot.scss +0 -484
  71. package/src/vendor/bootstrap/scss/_root.scss +0 -19
  72. package/src/vendor/bootstrap/scss/_spinners.scss +0 -65
  73. package/src/vendor/bootstrap/scss/_tables.scss +0 -185
  74. package/src/vendor/bootstrap/scss/_toasts.scss +0 -46
  75. package/src/vendor/bootstrap/scss/_tooltip.scss +0 -115
  76. package/src/vendor/bootstrap/scss/_transitions.scss +0 -26
  77. package/src/vendor/bootstrap/scss/_type.scss +0 -125
  78. package/src/vendor/bootstrap/scss/_utilities.scss +0 -18
  79. package/src/vendor/bootstrap/scss/_variables.scss +0 -1149
  80. package/src/vendor/bootstrap/scss/bootstrap-grid.scss +0 -30
  81. package/src/vendor/bootstrap/scss/bootstrap-reboot.scss +0 -12
  82. package/src/vendor/bootstrap/scss/bootstrap.scss +0 -44
  83. package/src/vendor/bootstrap/scss/mixins/_alert.scss +0 -13
  84. package/src/vendor/bootstrap/scss/mixins/_background-variant.scss +0 -23
  85. package/src/vendor/bootstrap/scss/mixins/_badge.scss +0 -17
  86. package/src/vendor/bootstrap/scss/mixins/_border-radius.scss +0 -76
  87. package/src/vendor/bootstrap/scss/mixins/_box-shadow.scss +0 -20
  88. package/src/vendor/bootstrap/scss/mixins/_breakpoints.scss +0 -123
  89. package/src/vendor/bootstrap/scss/mixins/_buttons.scss +0 -110
  90. package/src/vendor/bootstrap/scss/mixins/_caret.scss +0 -62
  91. package/src/vendor/bootstrap/scss/mixins/_clearfix.scss +0 -7
  92. package/src/vendor/bootstrap/scss/mixins/_deprecate.scss +0 -10
  93. package/src/vendor/bootstrap/scss/mixins/_float.scss +0 -14
  94. package/src/vendor/bootstrap/scss/mixins/_forms.scss +0 -195
  95. package/src/vendor/bootstrap/scss/mixins/_gradients.scss +0 -45
  96. package/src/vendor/bootstrap/scss/mixins/_grid-framework.scss +0 -80
  97. package/src/vendor/bootstrap/scss/mixins/_grid.scss +0 -69
  98. package/src/vendor/bootstrap/scss/mixins/_hover.scss +0 -37
  99. package/src/vendor/bootstrap/scss/mixins/_image.scss +0 -36
  100. package/src/vendor/bootstrap/scss/mixins/_list-group.scss +0 -21
  101. package/src/vendor/bootstrap/scss/mixins/_lists.scss +0 -7
  102. package/src/vendor/bootstrap/scss/mixins/_nav-divider.scss +0 -11
  103. package/src/vendor/bootstrap/scss/mixins/_pagination.scss +0 -22
  104. package/src/vendor/bootstrap/scss/mixins/_reset-text.scss +0 -17
  105. package/src/vendor/bootstrap/scss/mixins/_resize.scss +0 -6
  106. package/src/vendor/bootstrap/scss/mixins/_screen-reader.scss +0 -34
  107. package/src/vendor/bootstrap/scss/mixins/_size.scss +0 -7
  108. package/src/vendor/bootstrap/scss/mixins/_table-row.scss +0 -39
  109. package/src/vendor/bootstrap/scss/mixins/_text-emphasis.scss +0 -17
  110. package/src/vendor/bootstrap/scss/mixins/_text-hide.scss +0 -11
  111. package/src/vendor/bootstrap/scss/mixins/_text-truncate.scss +0 -8
  112. package/src/vendor/bootstrap/scss/mixins/_transition.scss +0 -26
  113. package/src/vendor/bootstrap/scss/mixins/_visibility.scss +0 -8
  114. package/src/vendor/bootstrap/scss/utilities/_align.scss +0 -8
  115. package/src/vendor/bootstrap/scss/utilities/_background.scss +0 -19
  116. package/src/vendor/bootstrap/scss/utilities/_borders.scss +0 -75
  117. package/src/vendor/bootstrap/scss/utilities/_clearfix.scss +0 -3
  118. package/src/vendor/bootstrap/scss/utilities/_display.scss +0 -26
  119. package/src/vendor/bootstrap/scss/utilities/_embed.scss +0 -39
  120. package/src/vendor/bootstrap/scss/utilities/_flex.scss +0 -51
  121. package/src/vendor/bootstrap/scss/utilities/_float.scss +0 -11
  122. package/src/vendor/bootstrap/scss/utilities/_interactions.scss +0 -5
  123. package/src/vendor/bootstrap/scss/utilities/_overflow.scss +0 -5
  124. package/src/vendor/bootstrap/scss/utilities/_position.scss +0 -32
  125. package/src/vendor/bootstrap/scss/utilities/_screenreaders.scss +0 -11
  126. package/src/vendor/bootstrap/scss/utilities/_shadows.scss +0 -6
  127. package/src/vendor/bootstrap/scss/utilities/_sizing.scss +0 -20
  128. package/src/vendor/bootstrap/scss/utilities/_spacing.scss +0 -73
  129. package/src/vendor/bootstrap/scss/utilities/_stretched-link.scss +0 -19
  130. package/src/vendor/bootstrap/scss/utilities/_text.scss +0 -72
  131. package/src/vendor/bootstrap/scss/utilities/_visibility.scss +0 -13
  132. package/src/vendor/bootstrap/scss/vendor/_rfs.scss +0 -228
  133. package/src/vendor/bootstrap-vue/LICENSE +0 -21
  134. package/src/vendor/bootstrap-vue/nuxt/index.js +0 -164
  135. package/src/vendor/bootstrap-vue/nuxt/plugin.template.js +0 -29
  136. package/src/vendor/bootstrap-vue/package.json +0 -201
  137. package/src/vendor/bootstrap-vue/src/_utilities.scss +0 -13
  138. package/src/vendor/bootstrap-vue/src/_variables.scss +0 -111
  139. package/src/vendor/bootstrap-vue/src/browser.js +0 -9
  140. package/src/vendor/bootstrap-vue/src/bv-config.d.ts +0 -4
  141. package/src/vendor/bootstrap-vue/src/bv-config.js +0 -6
  142. package/src/vendor/bootstrap-vue/src/components/badge/README.md +0 -126
  143. package/src/vendor/bootstrap-vue/src/components/badge/badge.js +0 -55
  144. package/src/vendor/bootstrap-vue/src/components/badge/badge.spec.js +0 -141
  145. package/src/vendor/bootstrap-vue/src/components/badge/index.d.ts +0 -7
  146. package/src/vendor/bootstrap-vue/src/components/badge/index.js +0 -3
  147. package/src/vendor/bootstrap-vue/src/components/badge/package.json +0 -29
  148. package/src/vendor/bootstrap-vue/src/components/breadcrumb/README.md +0 -93
  149. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-item.js +0 -27
  150. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-item.spec.js +0 -123
  151. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-link.js +0 -43
  152. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-link.spec.js +0 -117
  153. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb.js +0 -52
  154. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb.spec.js +0 -183
  155. package/src/vendor/bootstrap-vue/src/components/breadcrumb/index.d.ts +0 -13
  156. package/src/vendor/bootstrap-vue/src/components/breadcrumb/index.js +0 -5
  157. package/src/vendor/bootstrap-vue/src/components/breadcrumb/package.json +0 -62
  158. package/src/vendor/bootstrap-vue/src/components/button/README.md +0 -281
  159. package/src/vendor/bootstrap-vue/src/components/button/button-close.js +0 -65
  160. package/src/vendor/bootstrap-vue/src/components/button/button-close.spec.js +0 -210
  161. package/src/vendor/bootstrap-vue/src/components/button/button.js +0 -179
  162. package/src/vendor/bootstrap-vue/src/components/button/button.spec.js +0 -385
  163. package/src/vendor/bootstrap-vue/src/components/button/index.d.ts +0 -10
  164. package/src/vendor/bootstrap-vue/src/components/button/index.js +0 -4
  165. package/src/vendor/bootstrap-vue/src/components/button/package.json +0 -105
  166. package/src/vendor/bootstrap-vue/src/components/button-group/README.md +0 -112
  167. package/src/vendor/bootstrap-vue/src/components/button-group/button-group.js +0 -42
  168. package/src/vendor/bootstrap-vue/src/components/button-group/button-group.spec.js +0 -98
  169. package/src/vendor/bootstrap-vue/src/components/button-group/index.d.ts +0 -7
  170. package/src/vendor/bootstrap-vue/src/components/button-group/index.js +0 -3
  171. package/src/vendor/bootstrap-vue/src/components/button-group/package.json +0 -29
  172. package/src/vendor/bootstrap-vue/src/components/collapse/README.md +0 -321
  173. package/src/vendor/bootstrap-vue/src/components/collapse/collapse.js +0 -272
  174. package/src/vendor/bootstrap-vue/src/components/collapse/collapse.spec.js +0 -558
  175. package/src/vendor/bootstrap-vue/src/components/collapse/helpers/bv-collapse.js +0 -88
  176. package/src/vendor/bootstrap-vue/src/components/collapse/index.d.ts +0 -9
  177. package/src/vendor/bootstrap-vue/src/components/collapse/index.js +0 -3
  178. package/src/vendor/bootstrap-vue/src/components/collapse/package.json +0 -111
  179. package/src/vendor/bootstrap-vue/src/components/dropdown/README.md +0 -730
  180. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown-form.scss +0 -38
  181. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown-text.scss +0 -17
  182. package/src/vendor/bootstrap-vue/src/components/dropdown/_dropdown.scss +0 -58
  183. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.js +0 -36
  184. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.spec.js +0 -58
  185. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.js +0 -47
  186. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.spec.js +0 -110
  187. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.js +0 -76
  188. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.spec.js +0 -94
  189. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.js +0 -46
  190. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.spec.js +0 -73
  191. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.js +0 -93
  192. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.spec.js +0 -117
  193. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js +0 -87
  194. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.spec.js +0 -147
  195. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js +0 -42
  196. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.spec.js +0 -59
  197. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +0 -202
  198. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.spec.js +0 -1121
  199. package/src/vendor/bootstrap-vue/src/components/dropdown/index.d.ts +0 -32
  200. package/src/vendor/bootstrap-vue/src/components/dropdown/index.js +0 -19
  201. package/src/vendor/bootstrap-vue/src/components/dropdown/index.scss +0 -3
  202. package/src/vendor/bootstrap-vue/src/components/dropdown/package.json +0 -368
  203. package/src/vendor/bootstrap-vue/src/components/form/README.md +0 -370
  204. package/src/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.js +0 -51
  205. package/src/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.spec.js +0 -170
  206. package/src/vendor/bootstrap-vue/src/components/form/form-text.js +0 -40
  207. package/src/vendor/bootstrap-vue/src/components/form/form-text.spec.js +0 -93
  208. package/src/vendor/bootstrap-vue/src/components/form/form-valid-feedback.js +0 -51
  209. package/src/vendor/bootstrap-vue/src/components/form/form-valid-feedback.spec.js +0 -157
  210. package/src/vendor/bootstrap-vue/src/components/form/form.js +0 -41
  211. package/src/vendor/bootstrap-vue/src/components/form/form.spec.js +0 -97
  212. package/src/vendor/bootstrap-vue/src/components/form/index.d.ts +0 -16
  213. package/src/vendor/bootstrap-vue/src/components/form/index.js +0 -7
  214. package/src/vendor/bootstrap-vue/src/components/form/package.json +0 -112
  215. package/src/vendor/bootstrap-vue/src/components/form-checkbox/README.md +0 -862
  216. package/src/vendor/bootstrap-vue/src/components/form-checkbox/_form-checkbox-group.scss +0 -2
  217. package/src/vendor/bootstrap-vue/src/components/form-checkbox/_form-checkbox.scss +0 -125
  218. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.js +0 -42
  219. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.spec.js +0 -642
  220. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.js +0 -132
  221. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.spec.js +0 -1331
  222. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.d.ts +0 -10
  223. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.js +0 -4
  224. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.scss +0 -2
  225. package/src/vendor/bootstrap-vue/src/components/form-checkbox/package.json +0 -172
  226. package/src/vendor/bootstrap-vue/src/components/form-group/README.md +0 -337
  227. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.js +0 -403
  228. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.spec.js +0 -477
  229. package/src/vendor/bootstrap-vue/src/components/form-group/index.d.ts +0 -7
  230. package/src/vendor/bootstrap-vue/src/components/form-group/index.js +0 -3
  231. package/src/vendor/bootstrap-vue/src/components/form-group/package.json +0 -183
  232. package/src/vendor/bootstrap-vue/src/components/form-input/README.md +0 -612
  233. package/src/vendor/bootstrap-vue/src/components/form-input/_form-input.scss +0 -217
  234. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.js +0 -168
  235. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.spec.js +0 -986
  236. package/src/vendor/bootstrap-vue/src/components/form-input/index.d.ts +0 -9
  237. package/src/vendor/bootstrap-vue/src/components/form-input/index.js +0 -3
  238. package/src/vendor/bootstrap-vue/src/components/form-input/index.scss +0 -1
  239. package/src/vendor/bootstrap-vue/src/components/form-input/package.json +0 -135
  240. package/src/vendor/bootstrap-vue/src/components/form-radio/README.md +0 -566
  241. package/src/vendor/bootstrap-vue/src/components/form-radio/_form-radio-group.scss +0 -3
  242. package/src/vendor/bootstrap-vue/src/components/form-radio/_form-radio.scss +0 -47
  243. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.js +0 -30
  244. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.spec.js +0 -469
  245. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.js +0 -28
  246. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.spec.js +0 -952
  247. package/src/vendor/bootstrap-vue/src/components/form-radio/index.d.ts +0 -10
  248. package/src/vendor/bootstrap-vue/src/components/form-radio/index.js +0 -4
  249. package/src/vendor/bootstrap-vue/src/components/form-radio/index.scss +0 -2
  250. package/src/vendor/bootstrap-vue/src/components/form-radio/package.json +0 -162
  251. package/src/vendor/bootstrap-vue/src/components/form-select/README.md +0 -504
  252. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.js +0 -48
  253. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.spec.js +0 -138
  254. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option.js +0 -35
  255. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option.spec.js +0 -75
  256. package/src/vendor/bootstrap-vue/src/components/form-select/form-select.js +0 -153
  257. package/src/vendor/bootstrap-vue/src/components/form-select/form-select.spec.js +0 -723
  258. package/src/vendor/bootstrap-vue/src/components/form-select/helpers/mixin-options.js +0 -56
  259. package/src/vendor/bootstrap-vue/src/components/form-select/index.d.ts +0 -13
  260. package/src/vendor/bootstrap-vue/src/components/form-select/index.js +0 -5
  261. package/src/vendor/bootstrap-vue/src/components/form-select/package.json +0 -132
  262. package/src/vendor/bootstrap-vue/src/components/form-textarea/README.md +0 -453
  263. package/src/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.js +0 -226
  264. package/src/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.spec.js +0 -1000
  265. package/src/vendor/bootstrap-vue/src/components/form-textarea/index.d.ts +0 -9
  266. package/src/vendor/bootstrap-vue/src/components/form-textarea/index.js +0 -3
  267. package/src/vendor/bootstrap-vue/src/components/form-textarea/package.json +0 -122
  268. package/src/vendor/bootstrap-vue/src/components/index.d.ts +0 -31
  269. package/src/vendor/bootstrap-vue/src/components/index.js +0 -11
  270. package/src/vendor/bootstrap-vue/src/components/index.scss +0 -12
  271. package/src/vendor/bootstrap-vue/src/components/input-group/README.md +0 -334
  272. package/src/vendor/bootstrap-vue/src/components/input-group/_input-group.scss +0 -29
  273. package/src/vendor/bootstrap-vue/src/components/input-group/index.d.ts +0 -19
  274. package/src/vendor/bootstrap-vue/src/components/input-group/index.js +0 -7
  275. package/src/vendor/bootstrap-vue/src/components/input-group/index.scss +0 -1
  276. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-addon.js +0 -43
  277. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.js +0 -31
  278. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.spec.js +0 -84
  279. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.js +0 -31
  280. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.spec.js +0 -84
  281. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.js +0 -31
  282. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.spec.js +0 -45
  283. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.js +0 -73
  284. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.spec.js +0 -153
  285. package/src/vendor/bootstrap-vue/src/components/input-group/package.json +0 -109
  286. package/src/vendor/bootstrap-vue/src/components/layout/README.md +0 -791
  287. package/src/vendor/bootstrap-vue/src/components/layout/col.js +0 -154
  288. package/src/vendor/bootstrap-vue/src/components/layout/col.spec.js +0 -192
  289. package/src/vendor/bootstrap-vue/src/components/layout/form-row.js +0 -31
  290. package/src/vendor/bootstrap-vue/src/components/layout/form-row.spec.js +0 -45
  291. package/src/vendor/bootstrap-vue/src/components/layout/index.d.ts +0 -10
  292. package/src/vendor/bootstrap-vue/src/components/layout/index.js +0 -4
  293. package/src/vendor/bootstrap-vue/src/components/layout/package.json +0 -99
  294. package/src/vendor/bootstrap-vue/src/components/link/README.md +0 -76
  295. package/src/vendor/bootstrap-vue/src/components/link/index.d.ts +0 -10
  296. package/src/vendor/bootstrap-vue/src/components/link/index.js +0 -3
  297. package/src/vendor/bootstrap-vue/src/components/link/link.js +0 -212
  298. package/src/vendor/bootstrap-vue/src/components/link/link.spec.js +0 -434
  299. package/src/vendor/bootstrap-vue/src/components/link/package.json +0 -57
  300. package/src/vendor/bootstrap-vue/src/components/modal/MODIFICATIONS.md +0 -27
  301. package/src/vendor/bootstrap-vue/src/components/modal/README.md +0 -1068
  302. package/src/vendor/bootstrap-vue/src/components/modal/_modal.scss +0 -5
  303. package/src/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.js +0 -22
  304. package/src/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.spec.js +0 -82
  305. package/src/vendor/bootstrap-vue/src/components/modal/helpers/modal-manager.js +0 -219
  306. package/src/vendor/bootstrap-vue/src/components/modal/index.d.ts +0 -82
  307. package/src/vendor/bootstrap-vue/src/components/modal/index.js +0 -3
  308. package/src/vendor/bootstrap-vue/src/components/modal/index.scss +0 -1
  309. package/src/vendor/bootstrap-vue/src/components/modal/modal.js +0 -981
  310. package/src/vendor/bootstrap-vue/src/components/modal/modal.spec.js +0 -1418
  311. package/src/vendor/bootstrap-vue/src/components/modal/package.json +0 -548
  312. package/src/vendor/bootstrap-vue/src/components/nav/README.md +0 -480
  313. package/src/vendor/bootstrap-vue/src/components/nav/_nav-item-dropdown.scss +0 -1
  314. package/src/vendor/bootstrap-vue/src/components/nav/index.d.ts +0 -17
  315. package/src/vendor/bootstrap-vue/src/components/nav/index.js +0 -5
  316. package/src/vendor/bootstrap-vue/src/components/nav/index.scss +0 -1
  317. package/src/vendor/bootstrap-vue/src/components/nav/nav-item-dropdown.js +0 -123
  318. package/src/vendor/bootstrap-vue/src/components/nav/nav-item-dropdown.spec.js +0 -268
  319. package/src/vendor/bootstrap-vue/src/components/nav/nav-item.js +0 -49
  320. package/src/vendor/bootstrap-vue/src/components/nav/nav-item.spec.js +0 -127
  321. package/src/vendor/bootstrap-vue/src/components/nav/nav.js +0 -60
  322. package/src/vendor/bootstrap-vue/src/components/nav/nav.spec.js +0 -244
  323. package/src/vendor/bootstrap-vue/src/components/nav/package.json +0 -190
  324. package/src/vendor/bootstrap-vue/src/components/navbar/README.md +0 -333
  325. package/src/vendor/bootstrap-vue/src/components/navbar/_navbar.scss +0 -1
  326. package/src/vendor/bootstrap-vue/src/components/navbar/index.d.ts +0 -10
  327. package/src/vendor/bootstrap-vue/src/components/navbar/index.js +0 -4
  328. package/src/vendor/bootstrap-vue/src/components/navbar/index.scss +0 -1
  329. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-brand.js +0 -42
  330. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-brand.spec.js +0 -50
  331. package/src/vendor/bootstrap-vue/src/components/navbar/navbar.js +0 -78
  332. package/src/vendor/bootstrap-vue/src/components/navbar/navbar.spec.js +0 -130
  333. package/src/vendor/bootstrap-vue/src/components/navbar/package.json +0 -54
  334. package/src/vendor/bootstrap-vue/src/components/popover/README.md +0 -919
  335. package/src/vendor/bootstrap-vue/src/components/popover/_popover.scss +0 -113
  336. package/src/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover-template.js +0 -50
  337. package/src/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover.js +0 -28
  338. package/src/vendor/bootstrap-vue/src/components/popover/index.d.ts +0 -7
  339. package/src/vendor/bootstrap-vue/src/components/popover/index.js +0 -3
  340. package/src/vendor/bootstrap-vue/src/components/popover/index.scss +0 -1
  341. package/src/vendor/bootstrap-vue/src/components/popover/package.json +0 -261
  342. package/src/vendor/bootstrap-vue/src/components/popover/popover.js +0 -46
  343. package/src/vendor/bootstrap-vue/src/components/popover/popover.spec.js +0 -199
  344. package/src/vendor/bootstrap-vue/src/components/progress/MODIFICATIONS.md +0 -23
  345. package/src/vendor/bootstrap-vue/src/components/progress/README.md +0 -363
  346. package/src/vendor/bootstrap-vue/src/components/progress/index.d.ts +0 -10
  347. package/src/vendor/bootstrap-vue/src/components/progress/index.js +0 -4
  348. package/src/vendor/bootstrap-vue/src/components/progress/package.json +0 -109
  349. package/src/vendor/bootstrap-vue/src/components/progress/progress-bar.js +0 -133
  350. package/src/vendor/bootstrap-vue/src/components/progress/progress-bar.spec.js +0 -270
  351. package/src/vendor/bootstrap-vue/src/components/progress/progress.js +0 -57
  352. package/src/vendor/bootstrap-vue/src/components/progress/progress.spec.js +0 -71
  353. package/src/vendor/bootstrap-vue/src/components/table/README.md +0 -3157
  354. package/src/vendor/bootstrap-vue/src/components/table/_table.scss +0 -474
  355. package/src/vendor/bootstrap-vue/src/components/table/helpers/constants.js +0 -30
  356. package/src/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.js +0 -60
  357. package/src/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.spec.js +0 -112
  358. package/src/vendor/bootstrap-vue/src/components/table/helpers/filter-event.js +0 -38
  359. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-bottom-row.js +0 -44
  360. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-busy.js +0 -88
  361. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-caption.js +0 -49
  362. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-colgroup.js +0 -27
  363. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-empty.js +0 -105
  364. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-filtering.js +0 -271
  365. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-items.js +0 -146
  366. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-pagination.js +0 -38
  367. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-provider.js +0 -188
  368. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-selectable.js +0 -241
  369. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-sorting.js +0 -299
  370. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-stacked.js +0 -33
  371. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-table-renderer.js +0 -209
  372. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody-row.js +0 -360
  373. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody.js +0 -258
  374. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-tfoot.js +0 -55
  375. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-thead.js +0 -238
  376. package/src/vendor/bootstrap-vue/src/components/table/helpers/mixin-top-row.js +0 -37
  377. package/src/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.js +0 -71
  378. package/src/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.spec.js +0 -93
  379. package/src/vendor/bootstrap-vue/src/components/table/helpers/sanitize-row.js +0 -39
  380. package/src/vendor/bootstrap-vue/src/components/table/helpers/stringify-record-values.js +0 -11
  381. package/src/vendor/bootstrap-vue/src/components/table/helpers/text-selection-active.js +0 -13
  382. package/src/vendor/bootstrap-vue/src/components/table/index.d.ts +0 -237
  383. package/src/vendor/bootstrap-vue/src/components/table/index.js +0 -23
  384. package/src/vendor/bootstrap-vue/src/components/table/index.scss +0 -1
  385. package/src/vendor/bootstrap-vue/src/components/table/package.json +0 -1763
  386. package/src/vendor/bootstrap-vue/src/components/table/table-busy.spec.js +0 -150
  387. package/src/vendor/bootstrap-vue/src/components/table/table-caption.spec.js +0 -176
  388. package/src/vendor/bootstrap-vue/src/components/table/table-colgroup.spec.js +0 -81
  389. package/src/vendor/bootstrap-vue/src/components/table/table-filtering.spec.js +0 -409
  390. package/src/vendor/bootstrap-vue/src/components/table/table-item-formatter.spec.js +0 -56
  391. package/src/vendor/bootstrap-vue/src/components/table/table-lite.js +0 -63
  392. package/src/vendor/bootstrap-vue/src/components/table/table-lite.spec.js +0 -682
  393. package/src/vendor/bootstrap-vue/src/components/table/table-pagination.spec.js +0 -133
  394. package/src/vendor/bootstrap-vue/src/components/table/table-primarykey.spec.js +0 -83
  395. package/src/vendor/bootstrap-vue/src/components/table/table-provider.spec.js +0 -411
  396. package/src/vendor/bootstrap-vue/src/components/table/table-row-details.spec.js +0 -459
  397. package/src/vendor/bootstrap-vue/src/components/table/table-selectable.spec.js +0 -1182
  398. package/src/vendor/bootstrap-vue/src/components/table/table-simple.js +0 -50
  399. package/src/vendor/bootstrap-vue/src/components/table/table-simple.spec.js +0 -206
  400. package/src/vendor/bootstrap-vue/src/components/table/table-sorting.spec.js +0 -858
  401. package/src/vendor/bootstrap-vue/src/components/table/table-sticky-column.spec.js +0 -377
  402. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-bottom-row.spec.js +0 -94
  403. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-row-events.spec.js +0 -529
  404. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-top-row.spec.js +0 -88
  405. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-transition.spec.js +0 -83
  406. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-custom.spec.js +0 -91
  407. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-events.spec.js +0 -137
  408. package/src/vendor/bootstrap-vue/src/components/table/table-thead-events.spec.js +0 -155
  409. package/src/vendor/bootstrap-vue/src/components/table/table-thead-top.spec.js +0 -96
  410. package/src/vendor/bootstrap-vue/src/components/table/table.js +0 -89
  411. package/src/vendor/bootstrap-vue/src/components/table/table.spec.js +0 -692
  412. package/src/vendor/bootstrap-vue/src/components/table/tbody.js +0 -103
  413. package/src/vendor/bootstrap-vue/src/components/table/td.js +0 -195
  414. package/src/vendor/bootstrap-vue/src/components/table/tfoot.js +0 -95
  415. package/src/vendor/bootstrap-vue/src/components/table/th.js +0 -25
  416. package/src/vendor/bootstrap-vue/src/components/table/thead.js +0 -98
  417. package/src/vendor/bootstrap-vue/src/components/table/tr.js +0 -122
  418. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +0 -575
  419. package/src/vendor/bootstrap-vue/src/components/tabs/index.d.ts +0 -13
  420. package/src/vendor/bootstrap-vue/src/components/tabs/index.js +0 -4
  421. package/src/vendor/bootstrap-vue/src/components/tabs/package.json +0 -205
  422. package/src/vendor/bootstrap-vue/src/components/tabs/tab.js +0 -197
  423. package/src/vendor/bootstrap-vue/src/components/tabs/tab.spec.js +0 -330
  424. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.js +0 -688
  425. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.spec.js +0 -836
  426. package/src/vendor/bootstrap-vue/src/components/toast/README.md +0 -656
  427. package/src/vendor/bootstrap-vue/src/components/toast/_toast.scss +0 -79
  428. package/src/vendor/bootstrap-vue/src/components/toast/_toaster-transition.scss +0 -45
  429. package/src/vendor/bootstrap-vue/src/components/toast/_toaster.scss +0 -108
  430. package/src/vendor/bootstrap-vue/src/components/toast/helpers/bv-toast.js +0 -208
  431. package/src/vendor/bootstrap-vue/src/components/toast/helpers/bv-toast.spec.js +0 -131
  432. package/src/vendor/bootstrap-vue/src/components/toast/index.d.ts +0 -70
  433. package/src/vendor/bootstrap-vue/src/components/toast/index.js +0 -12
  434. package/src/vendor/bootstrap-vue/src/components/toast/index.scss +0 -3
  435. package/src/vendor/bootstrap-vue/src/components/toast/package.json +0 -188
  436. package/src/vendor/bootstrap-vue/src/components/toast/toast.js +0 -454
  437. package/src/vendor/bootstrap-vue/src/components/toast/toast.spec.js +0 -346
  438. package/src/vendor/bootstrap-vue/src/components/toast/toaster.js +0 -139
  439. package/src/vendor/bootstrap-vue/src/components/toast/toaster.spec.js +0 -77
  440. package/src/vendor/bootstrap-vue/src/components/tooltip/README.md +0 -559
  441. package/src/vendor/bootstrap-vue/src/components/tooltip/_tooltip.scss +0 -86
  442. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-popper.js +0 -248
  443. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip-template.js +0 -130
  444. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +0 -977
  445. package/src/vendor/bootstrap-vue/src/components/tooltip/index.d.ts +0 -7
  446. package/src/vendor/bootstrap-vue/src/components/tooltip/index.js +0 -3
  447. package/src/vendor/bootstrap-vue/src/components/tooltip/index.scss +0 -1
  448. package/src/vendor/bootstrap-vue/src/components/tooltip/package.json +0 -258
  449. package/src/vendor/bootstrap-vue/src/components/tooltip/tooltip.js +0 -316
  450. package/src/vendor/bootstrap-vue/src/components/tooltip/tooltip.spec.js +0 -1529
  451. package/src/vendor/bootstrap-vue/src/components/transition/bv-transition.js +0 -83
  452. package/src/vendor/bootstrap-vue/src/components/transition/package.json +0 -5
  453. package/src/vendor/bootstrap-vue/src/components/transporter/package.json +0 -5
  454. package/src/vendor/bootstrap-vue/src/components/transporter/transporter.js +0 -202
  455. package/src/vendor/bootstrap-vue/src/components/transporter/transporter.spec.js +0 -85
  456. package/src/vendor/bootstrap-vue/src/constants/classes.js +0 -1
  457. package/src/vendor/bootstrap-vue/src/constants/components.js +0 -77
  458. package/src/vendor/bootstrap-vue/src/constants/config.js +0 -4
  459. package/src/vendor/bootstrap-vue/src/constants/env.js +0 -57
  460. package/src/vendor/bootstrap-vue/src/constants/events.js +0 -57
  461. package/src/vendor/bootstrap-vue/src/constants/key-codes.js +0 -10
  462. package/src/vendor/bootstrap-vue/src/constants/popper.js +0 -8
  463. package/src/vendor/bootstrap-vue/src/constants/props.js +0 -26
  464. package/src/vendor/bootstrap-vue/src/constants/regex.js +0 -33
  465. package/src/vendor/bootstrap-vue/src/constants/safe-types.js +0 -17
  466. package/src/vendor/bootstrap-vue/src/constants/slots.js +0 -32
  467. package/src/vendor/bootstrap-vue/src/directives/modal/index.d.ts +0 -8
  468. package/src/vendor/bootstrap-vue/src/directives/modal/index.js +0 -3
  469. package/src/vendor/bootstrap-vue/src/directives/modal/modal.js +0 -115
  470. package/src/vendor/bootstrap-vue/src/directives/modal/modal.spec.js +0 -191
  471. package/src/vendor/bootstrap-vue/src/directives/toggle/README.md +0 -146
  472. package/src/vendor/bootstrap-vue/src/directives/toggle/index.d.ts +0 -7
  473. package/src/vendor/bootstrap-vue/src/directives/toggle/index.js +0 -3
  474. package/src/vendor/bootstrap-vue/src/directives/toggle/package.json +0 -26
  475. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.js +0 -274
  476. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.spec.js +0 -452
  477. package/src/vendor/bootstrap-vue/src/directives/tooltip/README.md +0 -521
  478. package/src/vendor/bootstrap-vue/src/directives/tooltip/index.d.ts +0 -7
  479. package/src/vendor/bootstrap-vue/src/directives/tooltip/index.js +0 -3
  480. package/src/vendor/bootstrap-vue/src/directives/tooltip/package.json +0 -131
  481. package/src/vendor/bootstrap-vue/src/directives/tooltip/tooltip.js +0 -270
  482. package/src/vendor/bootstrap-vue/src/directives/tooltip/tooltip.spec.js +0 -223
  483. package/src/vendor/bootstrap-vue/src/directives/visible/README.md +0 -244
  484. package/src/vendor/bootstrap-vue/src/directives/visible/index.d.ts +0 -7
  485. package/src/vendor/bootstrap-vue/src/directives/visible/index.js +0 -3
  486. package/src/vendor/bootstrap-vue/src/directives/visible/package.json +0 -24
  487. package/src/vendor/bootstrap-vue/src/directives/visible/visible.js +0 -184
  488. package/src/vendor/bootstrap-vue/src/index.d.ts +0 -61
  489. package/src/vendor/bootstrap-vue/src/index.js +0 -187
  490. package/src/vendor/bootstrap-vue/src/index.scss +0 -11
  491. package/src/vendor/bootstrap-vue/src/mixins/attrs.js +0 -19
  492. package/src/vendor/bootstrap-vue/src/mixins/attrs.spec.js +0 -194
  493. package/src/vendor/bootstrap-vue/src/mixins/click-out.js +0 -72
  494. package/src/vendor/bootstrap-vue/src/mixins/click-out.spec.js +0 -52
  495. package/src/vendor/bootstrap-vue/src/mixins/dropdown.js +0 -460
  496. package/src/vendor/bootstrap-vue/src/mixins/focus-in.js +0 -44
  497. package/src/vendor/bootstrap-vue/src/mixins/focus-in.spec.js +0 -53
  498. package/src/vendor/bootstrap-vue/src/mixins/form-control.js +0 -51
  499. package/src/vendor/bootstrap-vue/src/mixins/form-custom.js +0 -24
  500. package/src/vendor/bootstrap-vue/src/mixins/form-options.js +0 -73
  501. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check-group.js +0 -162
  502. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check.js +0 -332
  503. package/src/vendor/bootstrap-vue/src/mixins/form-selection.js +0 -60
  504. package/src/vendor/bootstrap-vue/src/mixins/form-size.js +0 -24
  505. package/src/vendor/bootstrap-vue/src/mixins/form-state.js +0 -47
  506. package/src/vendor/bootstrap-vue/src/mixins/form-text.js +0 -250
  507. package/src/vendor/bootstrap-vue/src/mixins/form-validity.js +0 -48
  508. package/src/vendor/bootstrap-vue/src/mixins/has-listener.js +0 -26
  509. package/src/vendor/bootstrap-vue/src/mixins/id.js +0 -51
  510. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.js +0 -64
  511. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.spec.js +0 -117
  512. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.js +0 -121
  513. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.spec.js +0 -77
  514. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.js +0 -64
  515. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.spec.js +0 -115
  516. package/src/vendor/bootstrap-vue/src/mixins/listeners.js +0 -24
  517. package/src/vendor/bootstrap-vue/src/mixins/listeners.spec.js +0 -245
  518. package/src/vendor/bootstrap-vue/src/mixins/model.js +0 -5
  519. package/src/vendor/bootstrap-vue/src/mixins/normalize-slot.js +0 -30
  520. package/src/vendor/bootstrap-vue/src/mixins/scoped-style.js +0 -14
  521. package/src/vendor/bootstrap-vue/src/mixins/use-parent.js +0 -12
  522. package/src/vendor/bootstrap-vue/src/utils/array.js +0 -17
  523. package/src/vendor/bootstrap-vue/src/utils/bv-event.class.js +0 -60
  524. package/src/vendor/bootstrap-vue/src/utils/bv-event.class.spec.js +0 -66
  525. package/src/vendor/bootstrap-vue/src/utils/cache.js +0 -37
  526. package/src/vendor/bootstrap-vue/src/utils/clone-deep.js +0 -15
  527. package/src/vendor/bootstrap-vue/src/utils/clone-deep.spec.js +0 -70
  528. package/src/vendor/bootstrap-vue/src/utils/config-set.js +0 -80
  529. package/src/vendor/bootstrap-vue/src/utils/config.js +0 -72
  530. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +0 -169
  531. package/src/vendor/bootstrap-vue/src/utils/create-new-child-component.js +0 -10
  532. package/src/vendor/bootstrap-vue/src/utils/css-escape.js +0 -73
  533. package/src/vendor/bootstrap-vue/src/utils/css-escape.spec.js +0 -82
  534. package/src/vendor/bootstrap-vue/src/utils/dom.js +0 -308
  535. package/src/vendor/bootstrap-vue/src/utils/dom.spec.js +0 -291
  536. package/src/vendor/bootstrap-vue/src/utils/element-to-vue-instance-registry.js +0 -40
  537. package/src/vendor/bootstrap-vue/src/utils/env.js +0 -15
  538. package/src/vendor/bootstrap-vue/src/utils/events.js +0 -71
  539. package/src/vendor/bootstrap-vue/src/utils/events.spec.js +0 -41
  540. package/src/vendor/bootstrap-vue/src/utils/get-event-root.js +0 -3
  541. package/src/vendor/bootstrap-vue/src/utils/get-instance-from-directive.js +0 -4
  542. package/src/vendor/bootstrap-vue/src/utils/get-scope-id.js +0 -6
  543. package/src/vendor/bootstrap-vue/src/utils/get.js +0 -64
  544. package/src/vendor/bootstrap-vue/src/utils/get.spec.js +0 -109
  545. package/src/vendor/bootstrap-vue/src/utils/html.js +0 -8
  546. package/src/vendor/bootstrap-vue/src/utils/identity.js +0 -1
  547. package/src/vendor/bootstrap-vue/src/utils/inspect.js +0 -51
  548. package/src/vendor/bootstrap-vue/src/utils/inspect.spec.js +0 -251
  549. package/src/vendor/bootstrap-vue/src/utils/locale.js +0 -34
  550. package/src/vendor/bootstrap-vue/src/utils/loose-equal.js +0 -57
  551. package/src/vendor/bootstrap-vue/src/utils/loose-equal.spec.js +0 -203
  552. package/src/vendor/bootstrap-vue/src/utils/loose-index-of.js +0 -11
  553. package/src/vendor/bootstrap-vue/src/utils/math.js +0 -11
  554. package/src/vendor/bootstrap-vue/src/utils/memoize.js +0 -10
  555. package/src/vendor/bootstrap-vue/src/utils/model.js +0 -29
  556. package/src/vendor/bootstrap-vue/src/utils/noop.js +0 -1
  557. package/src/vendor/bootstrap-vue/src/utils/normalize-slot.js +0 -44
  558. package/src/vendor/bootstrap-vue/src/utils/normalize-slot.spec.js +0 -63
  559. package/src/vendor/bootstrap-vue/src/utils/number.js +0 -19
  560. package/src/vendor/bootstrap-vue/src/utils/number.spec.js +0 -72
  561. package/src/vendor/bootstrap-vue/src/utils/object.js +0 -61
  562. package/src/vendor/bootstrap-vue/src/utils/object.spec.js +0 -61
  563. package/src/vendor/bootstrap-vue/src/utils/observe-dom.js +0 -77
  564. package/src/vendor/bootstrap-vue/src/utils/plugins.js +0 -169
  565. package/src/vendor/bootstrap-vue/src/utils/props.js +0 -92
  566. package/src/vendor/bootstrap-vue/src/utils/props.spec.js +0 -112
  567. package/src/vendor/bootstrap-vue/src/utils/router.js +0 -145
  568. package/src/vendor/bootstrap-vue/src/utils/router.spec.js +0 -248
  569. package/src/vendor/bootstrap-vue/src/utils/safe-vue-instance.js +0 -13
  570. package/src/vendor/bootstrap-vue/src/utils/stable-sort.js +0 -31
  571. package/src/vendor/bootstrap-vue/src/utils/string.js +0 -59
  572. package/src/vendor/bootstrap-vue/src/utils/string.spec.js +0 -65
  573. package/src/vendor/bootstrap-vue/src/utils/stringify-object-values.js +0 -31
  574. package/src/vendor/bootstrap-vue/src/utils/stringify-object-values.spec.js +0 -47
  575. package/src/vendor/bootstrap-vue/src/utils/warn.js +0 -42
  576. package/src/vendor/bootstrap-vue/src/utils/warn.spec.js +0 -54
  577. package/src/vendor/bootstrap-vue/src/vue-injections.d.ts +0 -13
  578. package/src/vendor/bootstrap-vue/src/vue.js +0 -126
@@ -1,360 +0,0 @@
1
- import { extend, REF_FOR_KEY } from '../../../vue'
2
- import {
3
- EVENT_NAME_ROW_CLICKED,
4
- EVENT_NAME_ROW_HOVERED,
5
- EVENT_NAME_ROW_UNHOVERED
6
- } from '../../../constants/events'
7
- import {
8
- PROP_TYPE_ARRAY_OBJECT_STRING,
9
- PROP_TYPE_FUNCTION,
10
- PROP_TYPE_OBJECT_FUNCTION
11
- } from '../../../constants/props'
12
- import { SLOT_NAME_ROW_DETAILS } from '../../../constants/slots'
13
- import { useParentMixin } from '../../../mixins/use-parent'
14
- import { get } from '../../../utils/get'
15
- import { isFunction, isString, isUndefinedOrNull } from '../../../utils/inspect'
16
- import { makeProp } from '../../../utils/props'
17
- import { safeVueInstance } from '../../../utils/safe-vue-instance'
18
- import { toString } from '../../../utils/string'
19
- import { BTr } from '../tr'
20
- import { BTd } from '../td'
21
- import { BTh } from '../th'
22
- import { FIELD_KEY_CELL_VARIANT, FIELD_KEY_ROW_VARIANT, FIELD_KEY_SHOW_DETAILS } from './constants'
23
-
24
- // --- Props ---
25
-
26
- export const props = {
27
- detailsTdClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),
28
- tbodyTrAttr: makeProp(PROP_TYPE_OBJECT_FUNCTION),
29
- tbodyTrClass: makeProp([...PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_FUNCTION])
30
- }
31
-
32
- // --- Mixin ---
33
-
34
- // @vue/component
35
- export const tbodyRowMixin = extend({
36
- mixins: [useParentMixin],
37
- props,
38
- methods: {
39
- // Methods for computing classes, attributes and styles for table cells
40
- getTdValues(item, key, tdValue, defaultValue) {
41
- const { bvParent } = this
42
- if (tdValue) {
43
- const value = get(item, key, '')
44
- if (isFunction(tdValue)) {
45
- return tdValue(value, key, item)
46
- } else if (isString(tdValue) && isFunction(bvParent[tdValue])) {
47
- return bvParent[tdValue](value, key, item)
48
- }
49
- return tdValue
50
- }
51
- return defaultValue
52
- },
53
- getThValues(item, key, thValue, type, defaultValue) {
54
- const { bvParent } = this
55
- if (thValue) {
56
- const value = get(item, key, '')
57
- if (isFunction(thValue)) {
58
- return thValue(value, key, item, type)
59
- } else if (isString(thValue) && isFunction(bvParent[thValue])) {
60
- return bvParent[thValue](value, key, item, type)
61
- }
62
- return thValue
63
- }
64
- return defaultValue
65
- },
66
- // Method to get the value for a field
67
- getFormattedValue(item, field) {
68
- const { key } = field
69
- const formatter = this.getFieldFormatter(key)
70
- let value = get(item, key, null)
71
- if (isFunction(formatter)) {
72
- value = formatter(value, key, item)
73
- }
74
- return isUndefinedOrNull(value) ? '' : value
75
- },
76
- // Factory function methods
77
- toggleDetailsFactory(hasDetailsSlot, item) {
78
- // Returns a function to toggle a row's details slot
79
- return () => {
80
- if (hasDetailsSlot) {
81
- this.$set(item, FIELD_KEY_SHOW_DETAILS, !item[FIELD_KEY_SHOW_DETAILS])
82
- }
83
- }
84
- },
85
- // Row event handlers
86
- rowHovered(event) {
87
- // `mouseenter` handler (non-bubbling)
88
- // `this.tbodyRowEventStopped` from tbody mixin
89
- if (!this.tbodyRowEventStopped(event)) {
90
- // `this.emitTbodyRowEvent` from tbody mixin
91
- this.emitTbodyRowEvent(EVENT_NAME_ROW_HOVERED, event)
92
- }
93
- },
94
- rowUnhovered(event) {
95
- // `mouseleave` handler (non-bubbling)
96
- // `this.tbodyRowEventStopped` from tbody mixin
97
- if (!this.tbodyRowEventStopped(event)) {
98
- // `this.emitTbodyRowEvent` from tbody mixin
99
- this.emitTbodyRowEvent(EVENT_NAME_ROW_UNHOVERED, event)
100
- }
101
- },
102
- // Renders a TD or TH for a row's field
103
- renderTbodyRowCell(field, colIndex, item, rowIndex) {
104
- const { isStacked } = this
105
- const { key, label, isRowHeader } = field
106
- const h = this.$createElement
107
- const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)
108
- const formatted = this.getFormattedValue(item, field)
109
- const stickyColumn =
110
- !isStacked && (this.isResponsive || this.stickyHeader) && field.stickyColumn
111
- // We only uses the helper components for sticky columns to
112
- // improve performance of BTable/BTableLite by reducing the
113
- // total number of vue instances created during render
114
- const cellTag = stickyColumn ? (isRowHeader ? BTh : BTd) : isRowHeader ? 'th' : 'td'
115
- const cellVariant =
116
- item[FIELD_KEY_CELL_VARIANT] && item[FIELD_KEY_CELL_VARIANT][key]
117
- ? item[FIELD_KEY_CELL_VARIANT][key]
118
- : field.variant || null
119
- const data = {
120
- // For the Vue key, we concatenate the column index and
121
- // field key (as field keys could be duplicated)
122
- // TODO: Although we do prevent duplicate field keys...
123
- // So we could change this to: `row-${rowIndex}-cell-${key}`
124
- class: [field.class ? field.class : '', this.getTdValues(item, key, field.tdClass, '')],
125
- props: {},
126
- attrs: {
127
- 'aria-colindex': String(colIndex + 1),
128
- ...(isRowHeader
129
- ? this.getThValues(item, key, field.thAttr, 'row', {})
130
- : this.getTdValues(item, key, field.tdAttr, {}))
131
- },
132
- key: `row-${rowIndex}-cell-${colIndex}-${key}`
133
- }
134
- if (stickyColumn) {
135
- // We are using the helper BTd or BTh
136
- data.props = {
137
- stackedHeading: isStacked ? label : null,
138
- stickyColumn: true,
139
- variant: cellVariant
140
- }
141
- } else {
142
- // Using native TD or TH element, so we need to
143
- // add in the attributes and variant class
144
- data.attrs['data-label'] = isStacked && !isUndefinedOrNull(label) ? toString(label) : null
145
- data.attrs.role = isRowHeader ? 'rowheader' : 'cell'
146
- data.attrs.scope = isRowHeader ? 'row' : null
147
- // Add in the variant class
148
- if (cellVariant) {
149
- data.class.push(`${this.dark ? 'bg' : 'table'}-${cellVariant}`)
150
- }
151
- }
152
-
153
- const slotScope = {
154
- item,
155
- index: rowIndex,
156
- field,
157
- unformatted: get(item, key, ''),
158
- value: formatted,
159
- toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item),
160
- detailsShowing: Boolean(item[FIELD_KEY_SHOW_DETAILS])
161
- }
162
- // If table supports selectable mode, then add in the following scope
163
- // this.supportsSelectableRows will be undefined if mixin isn't loaded
164
- if (safeVueInstance(this).supportsSelectableRows) {
165
- slotScope.rowSelected = this.isRowSelected(rowIndex)
166
- slotScope.selectRow = () => this.selectRow(rowIndex)
167
- slotScope.unselectRow = () => this.unselectRow(rowIndex)
168
- }
169
-
170
- // The new `v-slot` syntax doesn't like a slot name starting with
171
- // a square bracket and if using in-document HTML templates, the
172
- // v-slot attributes are lower-cased by the browser.
173
- // Switched to round bracket syntax to prevent confusion with
174
- // dynamic slot name syntax.
175
- // We look for slots in this order: `cell(${key})`, `cell(${key.toLowerCase()})`, 'cell()'
176
- // Slot names are now cached by mixin tbody in `this.$_bodyFieldSlotNameCache`
177
- // Will be `null` if no slot (or fallback slot) exists
178
- const slotName = this.$_bodyFieldSlotNameCache[key]
179
- let $childNodes = slotName ? this.normalizeSlot(slotName, slotScope) : toString(formatted)
180
- if (this.isStacked) {
181
- // We wrap in a DIV to ensure rendered as a single cell when visually stacked!
182
- $childNodes = [h('div', [$childNodes])]
183
- }
184
-
185
- // Render either a td or th cell
186
- return h(cellTag, data, [$childNodes])
187
- },
188
- // Renders an item's row (or rows if details supported)
189
- renderTbodyRow(item, rowIndex) {
190
- const {
191
- computedFields: fields,
192
- striped,
193
- primaryKey,
194
- currentPage,
195
- perPage,
196
- tbodyTrClass,
197
- tbodyTrAttr,
198
- hasSelectableRowClick
199
- } = safeVueInstance(this)
200
- const h = this.$createElement
201
- const hasDetailsSlot = this.hasNormalizedSlot(SLOT_NAME_ROW_DETAILS)
202
- const rowShowDetails = item[FIELD_KEY_SHOW_DETAILS] && hasDetailsSlot
203
- const hasRowClickHandler = this.$listeners[EVENT_NAME_ROW_CLICKED] || hasSelectableRowClick
204
-
205
- // We can return more than one TR if rowDetails enabled
206
- const $rows = []
207
-
208
- // Details ID needed for `aria-details` when details showing
209
- // We set it to `null` when not showing so that attribute
210
- // does not appear on the element
211
- const detailsId = rowShowDetails ? this.safeId(`_details_${rowIndex}_`) : null
212
-
213
- // For each item data field in row
214
- const $tds = fields.map((field, colIndex) => {
215
- return this.renderTbodyRowCell(field, colIndex, item, rowIndex)
216
- })
217
-
218
- // Calculate the row number in the dataset (indexed from 1)
219
- let ariaRowIndex = null
220
- if (currentPage && perPage && perPage > 0) {
221
- ariaRowIndex = String((currentPage - 1) * perPage + rowIndex + 1)
222
- }
223
-
224
- // Create a unique :key to help ensure that sub components are re-rendered rather than
225
- // re-used, which can cause issues. If a primary key is not provided we use the rendered
226
- // rows index within the tbody.
227
- // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2410
228
- const primaryKeyValue = toString(get(item, primaryKey)) || null
229
- const rowKey = primaryKeyValue || toString(rowIndex)
230
-
231
- // If primary key is provided, use it to generate a unique ID on each tbody > tr
232
- // In the format of '{tableId}__row_{primaryKeyValue}'
233
- const rowId = primaryKeyValue ? this.safeId(`_row_${primaryKeyValue}`) : null
234
-
235
- // Selectable classes and attributes
236
- const selectableClasses = safeVueInstance(this).selectableRowClasses
237
- ? this.selectableRowClasses(rowIndex)
238
- : {}
239
- const selectableAttrs = safeVueInstance(this).selectableRowAttrs
240
- ? this.selectableRowAttrs(rowIndex)
241
- : {}
242
-
243
- // Additional classes and attributes
244
- const userTrClasses = isFunction(tbodyTrClass) ? tbodyTrClass(item, 'row') : tbodyTrClass
245
- const userTrAttrs = isFunction(tbodyTrAttr)
246
- ? /* istanbul ignore next */ tbodyTrAttr(item, 'row')
247
- : tbodyTrAttr
248
-
249
- // Add the item row
250
- $rows.push(
251
- h(
252
- BTr,
253
- {
254
- class: [userTrClasses, selectableClasses, rowShowDetails ? 'b-table-has-details' : ''],
255
- props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },
256
- attrs: {
257
- id: rowId,
258
- ...userTrAttrs,
259
- // Users cannot override the following attributes
260
- tabindex: hasRowClickHandler ? '0' : null,
261
- 'data-pk': primaryKeyValue || null,
262
- 'aria-details': detailsId,
263
- 'aria-owns': detailsId,
264
- 'aria-rowindex': ariaRowIndex,
265
- ...selectableAttrs
266
- },
267
- on: {
268
- // Note: These events are not A11Y friendly!
269
- mouseenter: this.rowHovered,
270
- mouseleave: this.rowUnhovered
271
- },
272
- key: `__b-table-row-${rowKey}__`,
273
- ref: 'item-rows',
274
- [REF_FOR_KEY]: true
275
- },
276
- $tds
277
- )
278
- )
279
-
280
- // Row Details slot
281
- if (rowShowDetails) {
282
- const detailsScope = {
283
- item,
284
- index: rowIndex,
285
- fields,
286
- toggleDetails: this.toggleDetailsFactory(hasDetailsSlot, item)
287
- }
288
- // If table supports selectable mode, then add in the following scope
289
- // this.supportsSelectableRows will be undefined if mixin isn't loaded
290
- if (safeVueInstance(this).supportsSelectableRows) {
291
- detailsScope.rowSelected = this.isRowSelected(rowIndex)
292
- detailsScope.selectRow = () => this.selectRow(rowIndex)
293
- detailsScope.unselectRow = () => this.unselectRow(rowIndex)
294
- }
295
-
296
- // Render the details slot in a TD
297
- const $details = h(
298
- BTd,
299
- {
300
- props: { colspan: fields.length },
301
- class: this.detailsTdClass
302
- },
303
- [this.normalizeSlot(SLOT_NAME_ROW_DETAILS, detailsScope)]
304
- )
305
-
306
- // Add a hidden row to keep table row striping consistent when details showing
307
- // Only added if the table is striped
308
- if (striped) {
309
- $rows.push(
310
- // We don't use `BTr` here as we don't need the extra functionality
311
- h('tr', {
312
- staticClass: 'd-none',
313
- attrs: {
314
- 'aria-hidden': 'true',
315
- role: 'presentation'
316
- },
317
- key: `__b-table-details-stripe__${rowKey}`
318
- })
319
- )
320
- }
321
-
322
- // Add the actual details row
323
- const userDetailsTrClasses = isFunction(this.tbodyTrClass)
324
- ? /* istanbul ignore next */ this.tbodyTrClass(item, SLOT_NAME_ROW_DETAILS)
325
- : this.tbodyTrClass
326
- const userDetailsTrAttrs = isFunction(this.tbodyTrAttr)
327
- ? /* istanbul ignore next */ this.tbodyTrAttr(item, SLOT_NAME_ROW_DETAILS)
328
- : this.tbodyTrAttr
329
- $rows.push(
330
- h(
331
- BTr,
332
- {
333
- staticClass: 'b-table-details',
334
- class: [userDetailsTrClasses],
335
- props: { variant: item[FIELD_KEY_ROW_VARIANT] || null },
336
- attrs: {
337
- ...userDetailsTrAttrs,
338
- // Users cannot override the following attributes
339
- id: detailsId,
340
- tabindex: '-1'
341
- },
342
- key: `__b-table-details__${rowKey}`
343
- },
344
- [$details]
345
- )
346
- )
347
- } else if (hasDetailsSlot) {
348
- // Only add the placeholder if a the table has a row-details slot defined (but not shown)
349
- $rows.push(h())
350
- if (striped) {
351
- // Add extra placeholder if table is striped
352
- $rows.push(h())
353
- }
354
- }
355
-
356
- // Return the row(s)
357
- return $rows
358
- }
359
- }
360
- })
@@ -1,258 +0,0 @@
1
- import { extend } from '../../../vue'
2
- import {
3
- EVENT_NAME_ROW_CLICKED,
4
- EVENT_NAME_ROW_CONTEXTMENU,
5
- EVENT_NAME_ROW_DBLCLICKED,
6
- EVENT_NAME_ROW_MIDDLE_CLICKED
7
- } from '../../../constants/events'
8
- import {
9
- CODE_DOWN,
10
- CODE_END,
11
- CODE_ENTER,
12
- CODE_HOME,
13
- CODE_SPACE,
14
- CODE_UP
15
- } from '../../../constants/key-codes'
16
- import { PROP_TYPE_ARRAY_OBJECT_STRING } from '../../../constants/props'
17
- import { arrayIncludes, from as arrayFrom } from '../../../utils/array'
18
- import { attemptFocus, closest, isActiveElement, isElement } from '../../../utils/dom'
19
- import { safeVueInstance } from '../../../utils/safe-vue-instance'
20
- import { stopEvent } from '../../../utils/events'
21
- import { sortKeys } from '../../../utils/object'
22
- import { makeProp, pluckProps } from '../../../utils/props'
23
- import { BTbody, props as BTbodyProps } from '../tbody'
24
- import { filterEvent } from './filter-event'
25
- import { textSelectionActive } from './text-selection-active'
26
- import { tbodyRowMixin, props as tbodyRowProps } from './mixin-tbody-row'
27
-
28
- // --- Helper methods ---
29
-
30
- const getCellSlotName = value => `cell(${value || ''})`
31
-
32
- // --- Props ---
33
-
34
- export const props = sortKeys({
35
- ...BTbodyProps,
36
- ...tbodyRowProps,
37
- tbodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)
38
- })
39
-
40
- // --- Mixin ---
41
-
42
- // @vue/component
43
- export const tbodyMixin = extend({
44
- mixins: [tbodyRowMixin],
45
- props,
46
- beforeDestroy() {
47
- this.$_bodyFieldSlotNameCache = null
48
- },
49
- methods: {
50
- // Returns all the item TR elements (excludes detail and spacer rows)
51
- // `this.$refs['item-rows']` is an array of item TR components/elements
52
- // Rows should all be `<b-tr>` components, but we map to TR elements
53
- // Also note that `this.$refs['item-rows']` may not always be in document order
54
- getTbodyTrs() {
55
- const { $refs } = this
56
- const tbody = $refs.tbody ? $refs.tbody.$el || $refs.tbody : null
57
- const trs = ($refs['item-rows'] || []).map(tr => tr.$el || tr)
58
- return tbody && tbody.children && tbody.children.length > 0 && trs && trs.length > 0
59
- ? arrayFrom(tbody.children).filter(tr => arrayIncludes(trs, tr))
60
- : /* istanbul ignore next */ []
61
- },
62
- // Returns index of a particular TBODY item TR
63
- // We set `true` on closest to include self in result
64
- getTbodyTrIndex(el) {
65
- /* istanbul ignore next: should not normally happen */
66
- if (!isElement(el)) {
67
- return -1
68
- }
69
- const tr = el.tagName === 'TR' ? el : closest('tr', el, true)
70
- return tr ? this.getTbodyTrs().indexOf(tr) : -1
71
- },
72
- // Emits a row event, with the item object, row index and original event
73
- emitTbodyRowEvent(type, event) {
74
- if (type && this.hasListener(type) && event && event.target) {
75
- const rowIndex = this.getTbodyTrIndex(event.target)
76
- if (rowIndex > -1) {
77
- // The array of TRs correlate to the `computedItems` array
78
- const item = this.computedItems[rowIndex]
79
- this.$emit(type, item, rowIndex, event)
80
- }
81
- }
82
- },
83
- tbodyRowEventStopped(event) {
84
- return this.stopIfBusy && this.stopIfBusy(event)
85
- },
86
- // Delegated row event handlers
87
- onTbodyRowKeydown(event) {
88
- // Keyboard navigation and row click emulation
89
- const { target, keyCode } = event
90
- if (
91
- this.tbodyRowEventStopped(event) ||
92
- target.tagName !== 'TR' ||
93
- !isActiveElement(target) ||
94
- target.tabIndex !== 0
95
- ) {
96
- // Early exit if not an item row TR
97
- return
98
- }
99
-
100
- if (arrayIncludes([CODE_ENTER, CODE_SPACE], keyCode)) {
101
- // Emulated click for keyboard users, transfer to click handler
102
- stopEvent(event)
103
- this.onTBodyRowClicked(event)
104
- } else if (arrayIncludes([CODE_UP, CODE_DOWN, CODE_HOME, CODE_END], keyCode)) {
105
- // Keyboard navigation
106
- const rowIndex = this.getTbodyTrIndex(target)
107
- if (rowIndex > -1) {
108
- stopEvent(event)
109
- const trs = this.getTbodyTrs()
110
- const shift = event.shiftKey
111
- if (keyCode === CODE_HOME || (shift && keyCode === CODE_UP)) {
112
- // Focus first row
113
- attemptFocus(trs[0])
114
- } else if (keyCode === CODE_END || (shift && keyCode === CODE_DOWN)) {
115
- // Focus last row
116
- attemptFocus(trs[trs.length - 1])
117
- } else if (keyCode === CODE_UP && rowIndex > 0) {
118
- // Focus previous row
119
- attemptFocus(trs[rowIndex - 1])
120
- } else if (keyCode === CODE_DOWN && rowIndex < trs.length - 1) {
121
- // Focus next row
122
- attemptFocus(trs[rowIndex + 1])
123
- }
124
- }
125
- }
126
- },
127
- onTBodyRowClicked(event) {
128
- const { $refs } = this
129
- const tbody = $refs.tbody ? $refs.tbody.$el || $refs.tbody : null
130
- // Don't emit event when the table is busy, the user clicked
131
- // on a non-disabled control or is selecting text
132
- if (
133
- this.tbodyRowEventStopped(event) ||
134
- filterEvent(event) ||
135
- textSelectionActive(tbody || this.$el)
136
- ) {
137
- return
138
- }
139
- this.emitTbodyRowEvent(EVENT_NAME_ROW_CLICKED, event)
140
- },
141
- onTbodyRowMiddleMouseRowClicked(event) {
142
- if (!this.tbodyRowEventStopped(event) && event.which === 2) {
143
- this.emitTbodyRowEvent(EVENT_NAME_ROW_MIDDLE_CLICKED, event)
144
- }
145
- },
146
- onTbodyRowContextmenu(event) {
147
- if (!this.tbodyRowEventStopped(event)) {
148
- this.emitTbodyRowEvent(EVENT_NAME_ROW_CONTEXTMENU, event)
149
- }
150
- },
151
- onTbodyRowDblClicked(event) {
152
- if (!this.tbodyRowEventStopped(event) && !filterEvent(event)) {
153
- this.emitTbodyRowEvent(EVENT_NAME_ROW_DBLCLICKED, event)
154
- }
155
- },
156
- // Render the tbody element and children
157
- // Note:
158
- // Row hover handlers are handled by the tbody-row mixin
159
- // As mouseenter/mouseleave events do not bubble
160
- renderTbody() {
161
- const {
162
- computedItems: items,
163
- renderBusy,
164
- renderTopRow,
165
- renderEmpty,
166
- renderBottomRow,
167
- hasSelectableRowClick
168
- } = safeVueInstance(this)
169
- const h = this.$createElement
170
- const hasRowClickHandler = this.hasListener(EVENT_NAME_ROW_CLICKED) || hasSelectableRowClick
171
-
172
- // Prepare the tbody rows
173
- const $rows = []
174
-
175
- // Add the item data rows or the busy slot
176
- const $busy = renderBusy ? renderBusy() : null
177
- if ($busy) {
178
- // If table is busy and a busy slot, then return only the busy "row" indicator
179
- $rows.push($busy)
180
- } else {
181
- // Table isn't busy, or we don't have a busy slot
182
-
183
- // Create a slot cache for improved performance when looking up cell slot names
184
- // Values will be keyed by the field's `key` and will store the slot's name
185
- // Slots could be dynamic (i.e. `v-if`), so we must compute on each render
186
- // Used by tbody-row mixin render helper
187
- const cache = {}
188
- let defaultSlotName = getCellSlotName()
189
- defaultSlotName = this.hasNormalizedSlot(defaultSlotName) ? defaultSlotName : null
190
- this.computedFields.forEach(field => {
191
- const { key } = field
192
- const slotName = getCellSlotName(key)
193
- const lowercaseSlotName = getCellSlotName(key.toLowerCase())
194
- cache[key] = this.hasNormalizedSlot(slotName)
195
- ? slotName
196
- : this.hasNormalizedSlot(lowercaseSlotName)
197
- ? /* istanbul ignore next */ lowercaseSlotName
198
- : defaultSlotName
199
- })
200
- // Created as a non-reactive property so to not trigger component updates
201
- // Must be a fresh object each render
202
- this.$_bodyFieldSlotNameCache = cache
203
-
204
- // Add static top row slot (hidden in visibly stacked mode
205
- // as we can't control `data-label` attr)
206
- $rows.push(renderTopRow ? renderTopRow() : h())
207
-
208
- // Render the rows
209
- items.forEach((item, rowIndex) => {
210
- // Render the individual item row (rows if details slot)
211
- $rows.push(this.renderTbodyRow(item, rowIndex))
212
- })
213
-
214
- // Empty items / empty filtered row slot (only shows if `items.length < 1`)
215
- $rows.push(renderEmpty ? renderEmpty() : h())
216
-
217
- // Static bottom row slot (hidden in visibly stacked mode
218
- // as we can't control `data-label` attr)
219
- $rows.push(renderBottomRow ? renderBottomRow() : h())
220
- }
221
-
222
- // Note: these events will only emit if a listener is registered
223
- const handlers = {
224
- auxclick: this.onTbodyRowMiddleMouseRowClicked,
225
- // TODO:
226
- // Perhaps we do want to automatically prevent the
227
- // default context menu from showing if there is a
228
- // `row-contextmenu` listener registered
229
- contextmenu: this.onTbodyRowContextmenu,
230
- // The following event(s) is not considered A11Y friendly
231
- dblclick: this.onTbodyRowDblClicked
232
- // Hover events (`mouseenter`/`mouseleave`) are handled by `tbody-row` mixin
233
- }
234
- // Add in click/keydown listeners if needed
235
- if (hasRowClickHandler) {
236
- handlers.click = this.onTBodyRowClicked
237
- handlers.keydown = this.onTbodyRowKeydown
238
- }
239
-
240
- // Assemble rows into the tbody
241
- const $tbody = h(
242
- BTbody,
243
- {
244
- class: this.tbodyClass || null,
245
- props: pluckProps(BTbodyProps, this.$props),
246
- // BTbody transfers all native event listeners to the root element
247
- // TODO: Only set the handlers if the table is not busy
248
- on: handlers,
249
- ref: 'tbody'
250
- },
251
- $rows
252
- )
253
-
254
- // Return the assembled tbody
255
- return $tbody
256
- }
257
- }
258
- })
@@ -1,55 +0,0 @@
1
- import { extend } from '../../../vue'
2
- import {
3
- PROP_TYPE_ARRAY_OBJECT_STRING,
4
- PROP_TYPE_BOOLEAN,
5
- PROP_TYPE_STRING
6
- } from '../../../constants/props'
7
- import { SLOT_NAME_CUSTOM_FOOT } from '../../../constants/slots'
8
- import { makeProp } from '../../../utils/props'
9
- import { BTfoot } from '../tfoot'
10
-
11
- // --- Props ---
12
-
13
- export const props = {
14
- footClone: makeProp(PROP_TYPE_BOOLEAN, false),
15
- // Any Bootstrap theme variant (or custom)
16
- // Falls back to `headRowVariant`
17
- footRowVariant: makeProp(PROP_TYPE_STRING),
18
- // 'dark', 'light', or `null` (or custom)
19
- footVariant: makeProp(PROP_TYPE_STRING),
20
- tfootClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),
21
- tfootTrClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)
22
- }
23
-
24
- // --- Mixin ---
25
-
26
- // @vue/component
27
- export const tfootMixin = extend({
28
- props,
29
- methods: {
30
- renderTFootCustom() {
31
- const h = this.$createElement
32
- if (this.hasNormalizedSlot(SLOT_NAME_CUSTOM_FOOT)) {
33
- return h(
34
- BTfoot,
35
- {
36
- class: this.tfootClass || null,
37
- props: { footVariant: this.footVariant || this.headVariant || null },
38
- key: 'bv-tfoot-custom'
39
- },
40
- this.normalizeSlot(SLOT_NAME_CUSTOM_FOOT, {
41
- items: this.computedItems.slice(),
42
- fields: this.computedFields.slice(),
43
- columns: this.computedFields.length
44
- })
45
- )
46
- }
47
-
48
- return h()
49
- },
50
- renderTfoot() {
51
- // Passing true to renderThead will make it render a tfoot
52
- return this.footClone ? this.renderThead(true) : this.renderTFootCustom()
53
- }
54
- }
55
- })