@gitlab/ui 131.2.0 → 131.3.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 (402) hide show
  1. package/package.json +11 -11
  2. package/src/components/base/form/form_checkbox/form_checkbox.vue +1 -2
  3. package/src/components/base/form/form_checkbox/form_checkbox_group.vue +1 -1
  4. package/src/components/base/form/form_radio/form_radio.vue +1 -1
  5. package/src/components/base/form/form_radio_group/form_radio_group.vue +1 -1
  6. package/src/components/base/table/table.scss +8 -0
  7. package/src/components/utilities/truncate/truncate.scss +3 -1
  8. package/src/scss/mixins.scss +3 -1
  9. package/src/utils/equality_utils.js +82 -0
  10. package/src/vendor/bootstrap-vue/src/components/button/button-close.js +20 -5
  11. package/src/vendor/bootstrap-vue/src/components/button/button.js +36 -8
  12. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js +12 -4
  13. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js +16 -5
  14. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +99 -24
  15. package/src/vendor/bootstrap-vue/src/components/form/form-text.js +20 -5
  16. package/src/vendor/bootstrap-vue/src/components/form/form.js +20 -5
  17. package/src/vendor/bootstrap-vue/src/components/layout/form-row.js +5 -2
  18. package/src/vendor/bootstrap-vue/src/components/table/tbody.js +10 -3
  19. package/src/vendor/bootstrap-vue/src/components/table/td.js +28 -7
  20. package/src/vendor/bootstrap-vue/src/components/table/tfoot.js +5 -2
  21. package/src/vendor/bootstrap-vue/src/components/table/thead.js +5 -2
  22. package/src/vendor/bootstrap-vue/src/components/table/tr.js +5 -2
  23. package/src/vendor/bootstrap-vue/src/components/tabs/tab.js +51 -12
  24. package/tailwind.defaults.js +10 -1
  25. package/dist/charts.js +0 -13
  26. package/dist/components/base/accordion/accordion.js +0 -69
  27. package/dist/components/base/accordion/accordion_item.js +0 -160
  28. package/dist/components/base/accordion/constants.js +0 -3
  29. package/dist/components/base/alert/alert.js +0 -263
  30. package/dist/components/base/animated_icon/animated_chevron_down_up_icon.js +0 -45
  31. package/dist/components/base/animated_icon/animated_chevron_lg_down_up_icon.js +0 -45
  32. package/dist/components/base/animated_icon/animated_chevron_lg_right_down_icon.js +0 -45
  33. package/dist/components/base/animated_icon/animated_chevron_right_down_icon.js +0 -45
  34. package/dist/components/base/animated_icon/animated_duo_chat_icon.js +0 -45
  35. package/dist/components/base/animated_icon/animated_loader_icon.js +0 -45
  36. package/dist/components/base/animated_icon/animated_notifications_icon.js +0 -45
  37. package/dist/components/base/animated_icon/animated_sidebar_icon.js +0 -45
  38. package/dist/components/base/animated_icon/animated_smile_icon.js +0 -45
  39. package/dist/components/base/animated_icon/animated_sort_icon.js +0 -45
  40. package/dist/components/base/animated_icon/animated_star_icon.js +0 -45
  41. package/dist/components/base/animated_icon/animated_todo_icon.js +0 -45
  42. package/dist/components/base/animated_icon/animated_upload_icon.js +0 -45
  43. package/dist/components/base/animated_icon/base_animated_icon.js +0 -77
  44. package/dist/components/base/attribute_list/attribute_list.js +0 -100
  45. package/dist/components/base/avatar/avatar.js +0 -175
  46. package/dist/components/base/avatar/utils.js +0 -17
  47. package/dist/components/base/avatar_labeled/avatar_labeled.js +0 -198
  48. package/dist/components/base/avatar_link/avatar_link.js +0 -47
  49. package/dist/components/base/avatars_inline/avatars_inline.js +0 -139
  50. package/dist/components/base/badge/badge.js +0 -197
  51. package/dist/components/base/banner/banner.js +0 -149
  52. package/dist/components/base/breadcrumb/breadcrumb.js +0 -282
  53. package/dist/components/base/breadcrumb/breadcrumb_item.js +0 -96
  54. package/dist/components/base/broadcast_message/broadcast_message.js +0 -113
  55. package/dist/components/base/broadcast_message/constants.js +0 -5
  56. package/dist/components/base/button/button.js +0 -419
  57. package/dist/components/base/button_group/button_group.js +0 -53
  58. package/dist/components/base/card/card.js +0 -69
  59. package/dist/components/base/collapse/collapse.js +0 -163
  60. package/dist/components/base/color_mode_toggle/color_mode_toggle.js +0 -92
  61. package/dist/components/base/datepicker/datepicker.js +0 -475
  62. package/dist/components/base/daterange_picker/daterange_picker.js +0 -394
  63. package/dist/components/base/drawer/drawer.js +0 -156
  64. package/dist/components/base/dropdown/dropdown.js +0 -330
  65. package/dist/components/base/dropdown/dropdown_divider.js +0 -48
  66. package/dist/components/base/dropdown/dropdown_form.js +0 -48
  67. package/dist/components/base/dropdown/dropdown_item.js +0 -175
  68. package/dist/components/base/dropdown/dropdown_section_header.js +0 -48
  69. package/dist/components/base/dropdown/dropdown_text.js +0 -48
  70. package/dist/components/base/filtered_search/common_story_options.js +0 -14
  71. package/dist/components/base/filtered_search/filtered_search.js +0 -428
  72. package/dist/components/base/filtered_search/filtered_search_suggestion.js +0 -95
  73. package/dist/components/base/filtered_search/filtered_search_suggestion_list.js +0 -139
  74. package/dist/components/base/filtered_search/filtered_search_term.js +0 -217
  75. package/dist/components/base/filtered_search/filtered_search_token.js +0 -383
  76. package/dist/components/base/filtered_search/filtered_search_token_segment.js +0 -444
  77. package/dist/components/base/filtered_search/filtered_search_utils.js +0 -241
  78. package/dist/components/base/form/form.js +0 -43
  79. package/dist/components/base/form/form_character_count/form_character_count.js +0 -107
  80. package/dist/components/base/form/form_checkbox/form_checkbox.js +0 -343
  81. package/dist/components/base/form/form_checkbox/form_checkbox_group.js +0 -186
  82. package/dist/components/base/form/form_combobox/constants.js +0 -55
  83. package/dist/components/base/form/form_combobox/form_combobox.js +0 -239
  84. package/dist/components/base/form/form_date/form_date.js +0 -143
  85. package/dist/components/base/form/form_fields/form_field_validator.js +0 -93
  86. package/dist/components/base/form/form_fields/form_fields.js +0 -289
  87. package/dist/components/base/form/form_fields/form_fields_loop.js +0 -75
  88. package/dist/components/base/form/form_fields/mappers.js +0 -13
  89. package/dist/components/base/form/form_fields/validators.js +0 -48
  90. package/dist/components/base/form/form_group/form_group.js +0 -119
  91. package/dist/components/base/form/form_input/form_input.js +0 -695
  92. package/dist/components/base/form/form_input_group/form_input_group.js +0 -120
  93. package/dist/components/base/form/form_input_group/form_input_group_mixin.js +0 -41
  94. package/dist/components/base/form/form_radio/form_radio.js +0 -259
  95. package/dist/components/base/form/form_radio_group/form_radio_group.js +0 -187
  96. package/dist/components/base/form/form_select/constants.js +0 -12
  97. package/dist/components/base/form/form_select/form_select.js +0 -96
  98. package/dist/components/base/form/form_textarea/form_textarea.js +0 -166
  99. package/dist/components/base/form/input_group_text/input_group_text.js +0 -43
  100. package/dist/components/base/icon/icon.js +0 -113
  101. package/dist/components/base/illustration/illustration.js +0 -80
  102. package/dist/components/base/infinite_scroll/infinite_scroll.js +0 -196
  103. package/dist/components/base/keyset_pagination/keyset_pagination.js +0 -152
  104. package/dist/components/base/label/label.js +0 -174
  105. package/dist/components/base/link/link.js +0 -332
  106. package/dist/components/base/loading_icon/loading_icon.js +0 -120
  107. package/dist/components/base/markdown/markdown.js +0 -50
  108. package/dist/components/base/modal/modal.js +0 -259
  109. package/dist/components/base/new_dropdowns/base_dropdown/base_dropdown.js +0 -716
  110. package/dist/components/base/new_dropdowns/base_dropdown/constants.js +0 -5
  111. package/dist/components/base/new_dropdowns/base_dropdown/dropdown_container.js +0 -32
  112. package/dist/components/base/new_dropdowns/constants.js +0 -24
  113. package/dist/components/base/new_dropdowns/disclosure/constants.js +0 -8
  114. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown.js +0 -400
  115. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_group.js +0 -112
  116. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_item.js +0 -196
  117. package/dist/components/base/new_dropdowns/disclosure/mock_data.js +0 -168
  118. package/dist/components/base/new_dropdowns/disclosure/utils.js +0 -84
  119. package/dist/components/base/new_dropdowns/listbox/listbox.js +0 -997
  120. package/dist/components/base/new_dropdowns/listbox/listbox_group.js +0 -58
  121. package/dist/components/base/new_dropdowns/listbox/listbox_item.js +0 -112
  122. package/dist/components/base/new_dropdowns/listbox/listbox_search_input.js +0 -94
  123. package/dist/components/base/new_dropdowns/listbox/mock_data.js +0 -131
  124. package/dist/components/base/new_dropdowns/listbox/utils.js +0 -33
  125. package/dist/components/base/pagination/pagination.js +0 -397
  126. package/dist/components/base/path/data.js +0 -34
  127. package/dist/components/base/path/path.js +0 -177
  128. package/dist/components/base/popover/popover.js +0 -142
  129. package/dist/components/base/progress_bar/progress_bar.js +0 -117
  130. package/dist/components/base/search_box_by_click/search_box_by_click.js +0 -245
  131. package/dist/components/base/search_box_by_type/search_box_by_type.js +0 -187
  132. package/dist/components/base/segmented_control/segmented_control.js +0 -73
  133. package/dist/components/base/skeleton_loader/skeleton_loader.js +0 -232
  134. package/dist/components/base/sorting/sorting.js +0 -180
  135. package/dist/components/base/table/constants.js +0 -5
  136. package/dist/components/base/table/table.js +0 -187
  137. package/dist/components/base/table_lite/table_lite.js +0 -80
  138. package/dist/components/base/tabs/constants.js +0 -3
  139. package/dist/components/base/tabs/tab/tab.js +0 -113
  140. package/dist/components/base/tabs/tabs/scrollable_tabs.js +0 -162
  141. package/dist/components/base/tabs/tabs/tabs.js +0 -223
  142. package/dist/components/base/toast/index.js +0 -66
  143. package/dist/components/base/toast/toast.js +0 -125
  144. package/dist/components/base/toast/toaster.js +0 -87
  145. package/dist/components/base/toggle/toggle.js +0 -178
  146. package/dist/components/base/token/token.js +0 -97
  147. package/dist/components/base/token_selector/helpers.js +0 -5
  148. package/dist/components/base/token_selector/token_container.js +0 -160
  149. package/dist/components/base/token_selector/token_selector.js +0 -454
  150. package/dist/components/base/token_selector/token_selector_dropdown.js +0 -223
  151. package/dist/components/base/tooltip/tooltip.js +0 -54
  152. package/dist/components/charts/area/area.js +0 -329
  153. package/dist/components/charts/bar/bar.js +0 -207
  154. package/dist/components/charts/chart/chart.js +0 -215
  155. package/dist/components/charts/column/column.js +0 -221
  156. package/dist/components/charts/discrete_scatter/discrete_scatter.js +0 -199
  157. package/dist/components/charts/gauge/gauge.js +0 -205
  158. package/dist/components/charts/heatmap/heatmap.js +0 -299
  159. package/dist/components/charts/heatmap/index.js +0 -2
  160. package/dist/components/charts/legend/legend.js +0 -245
  161. package/dist/components/charts/line/line.js +0 -340
  162. package/dist/components/charts/series_label/series_label.js +0 -101
  163. package/dist/components/charts/shared/tooltip/tooltip.js +0 -369
  164. package/dist/components/charts/shared/tooltip/tooltip_default_format/tooltip_default_format.js +0 -53
  165. package/dist/components/charts/single_stat/single_stat.js +0 -164
  166. package/dist/components/charts/sparkline/sparkline.js +0 -299
  167. package/dist/components/charts/stacked_column/stacked_column.js +0 -380
  168. package/dist/components/dashboards/dashboard_layout/dashboard_layout.js +0 -125
  169. package/dist/components/dashboards/dashboard_layout/grid_layout/grid_layout.js +0 -326
  170. package/dist/components/dashboards/dashboard_layout/validators.js +0 -14
  171. package/dist/components/dashboards/dashboard_panel/dashboard_panel.js +0 -236
  172. package/dist/components/dashboards/mock_data.js +0 -49
  173. package/dist/components/experimental/experiment_badge/constants.js +0 -4
  174. package/dist/components/experimental/experiment_badge/experiment_badge.js +0 -102
  175. package/dist/components/extended/multi_step_form_template/multi_step_form_template.js +0 -87
  176. package/dist/components/index.js +0 -107
  177. package/dist/components/mixins/button_mixin.js +0 -11
  178. package/dist/components/mixins/safe_link_mixin.js +0 -30
  179. package/dist/components/mixins/tooltip_mixin.js +0 -21
  180. package/dist/components/regions/dashboard_skeleton/dashboard_skeleton.js +0 -53
  181. package/dist/components/regions/empty_state/empty_state.js +0 -181
  182. package/dist/components/shared_components/clear_icon_button/clear_icon_button.js +0 -64
  183. package/dist/components/shared_components/clipboard_button/clipboard_button.js +0 -100
  184. package/dist/components/shared_components/close_button/close_button.js +0 -55
  185. package/dist/components/utilities/animated_number/animated_number.js +0 -131
  186. package/dist/components/utilities/friendly_wrap/friendly_wrap.js +0 -75
  187. package/dist/components/utilities/intersection_observer/intersection_observer.js +0 -88
  188. package/dist/components/utilities/intersperse/intersperse.js +0 -104
  189. package/dist/components/utilities/sprintf/sprintf.js +0 -171
  190. package/dist/components/utilities/truncate/constants.js +0 -8
  191. package/dist/components/utilities/truncate/truncate.js +0 -154
  192. package/dist/components/utilities/truncate_text/constants.js +0 -7
  193. package/dist/components/utilities/truncate_text/truncate_text.js +0 -146
  194. package/dist/config.js +0 -53
  195. package/dist/directives/hover_load/hover_load.js +0 -45
  196. package/dist/directives/index.js +0 -8
  197. package/dist/directives/modal.js +0 -1
  198. package/dist/directives/outside/outside.js +0 -149
  199. package/dist/directives/resize_observer/resize_observer.js +0 -58
  200. package/dist/directives/safe_html/constants.js +0 -6
  201. package/dist/directives/safe_html/safe_html.js +0 -39
  202. package/dist/directives/safe_link/mock_data.js +0 -10
  203. package/dist/directives/safe_link/safe_link.js +0 -67
  204. package/dist/directives/tooltip/container.js +0 -7
  205. package/dist/directives/tooltip/tooltip.js +0 -18
  206. package/dist/index.css +0 -7
  207. package/dist/index.css.map +0 -1
  208. package/dist/index.js +0 -2
  209. package/dist/tailwind.css +0 -2
  210. package/dist/tailwind.css.map +0 -1
  211. package/dist/tokens/build/js/tokens.dark.js +0 -1410
  212. package/dist/tokens/build/js/tokens.js +0 -1410
  213. package/dist/tokens/common_story_options.js +0 -29
  214. package/dist/tokens/tokens_story.js +0 -76
  215. package/dist/utils/breakpoints.js +0 -20
  216. package/dist/utils/charts/config.js +0 -616
  217. package/dist/utils/charts/constants.js +0 -69
  218. package/dist/utils/charts/mock_data.js +0 -191
  219. package/dist/utils/charts/story_config.js +0 -24
  220. package/dist/utils/charts/theme.js +0 -200
  221. package/dist/utils/charts/utils.js +0 -54
  222. package/dist/utils/constants.js +0 -333
  223. package/dist/utils/data_utils.js +0 -19
  224. package/dist/utils/datetime_utility.js +0 -61
  225. package/dist/utils/i18n.js +0 -65
  226. package/dist/utils/is_slot_empty.js +0 -34
  227. package/dist/utils/number_utils.js +0 -132
  228. package/dist/utils/play_utils.js +0 -11
  229. package/dist/utils/set_utils.js +0 -25
  230. package/dist/utils/stories_constants.js +0 -29
  231. package/dist/utils/stories_utils.js +0 -62
  232. package/dist/utils/story_decorators/container.js +0 -19
  233. package/dist/utils/string_utils.js +0 -69
  234. package/dist/utils/svgs/svg_paths.js +0 -7
  235. package/dist/utils/test_utils.js +0 -33
  236. package/dist/utils/use_fake_date.js +0 -29
  237. package/dist/utils/use_mock_intersection_observer.js +0 -105
  238. package/dist/utils/utils.js +0 -205
  239. package/dist/utils.js +0 -5
  240. package/dist/vendor/bootstrap-vue/src/bv-config.js +0 -8
  241. package/dist/vendor/bootstrap-vue/src/components/button/button-close.js +0 -66
  242. package/dist/vendor/bootstrap-vue/src/components/button/button.js +0 -176
  243. package/dist/vendor/bootstrap-vue/src/components/button/index.js +0 -2
  244. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.js +0 -41
  245. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.js +0 -52
  246. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.js +0 -75
  247. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.js +0 -52
  248. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.js +0 -85
  249. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js +0 -89
  250. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js +0 -49
  251. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +0 -195
  252. package/dist/vendor/bootstrap-vue/src/components/dropdown/index.js +0 -8
  253. package/dist/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.js +0 -53
  254. package/dist/vendor/bootstrap-vue/src/components/form/form-text.js +0 -40
  255. package/dist/vendor/bootstrap-vue/src/components/form/form-valid-feedback.js +0 -53
  256. package/dist/vendor/bootstrap-vue/src/components/form/form.js +0 -41
  257. package/dist/vendor/bootstrap-vue/src/components/form/index.js +0 -4
  258. package/dist/vendor/bootstrap-vue/src/components/form-group/form-group.js +0 -348
  259. package/dist/vendor/bootstrap-vue/src/components/form-group/index.js +0 -1
  260. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.js +0 -54
  261. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select-option.js +0 -41
  262. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select.js +0 -143
  263. package/dist/vendor/bootstrap-vue/src/components/form-select/helpers/mixin-options.js +0 -56
  264. package/dist/vendor/bootstrap-vue/src/components/form-select/index.js +0 -3
  265. package/dist/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.js +0 -217
  266. package/dist/vendor/bootstrap-vue/src/components/form-textarea/index.js +0 -1
  267. package/dist/vendor/bootstrap-vue/src/components/layout/col.js +0 -156
  268. package/dist/vendor/bootstrap-vue/src/components/layout/form-row.js +0 -31
  269. package/dist/vendor/bootstrap-vue/src/components/layout/index.js +0 -2
  270. package/dist/vendor/bootstrap-vue/src/components/link/index.js +0 -1
  271. package/dist/vendor/bootstrap-vue/src/components/link/link.js +0 -283
  272. package/dist/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.js +0 -21
  273. package/dist/vendor/bootstrap-vue/src/components/modal/helpers/modal-manager.js +0 -212
  274. package/dist/vendor/bootstrap-vue/src/components/modal/index.js +0 -1
  275. package/dist/vendor/bootstrap-vue/src/components/modal/modal.js +0 -887
  276. package/dist/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover-template.js +0 -55
  277. package/dist/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover.js +0 -31
  278. package/dist/vendor/bootstrap-vue/src/components/popover/index.js +0 -1
  279. package/dist/vendor/bootstrap-vue/src/components/popover/popover.js +0 -49
  280. package/dist/vendor/bootstrap-vue/src/components/table/helpers/constants.js +0 -22
  281. package/dist/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.js +0 -64
  282. package/dist/vendor/bootstrap-vue/src/components/table/helpers/filter-event.js +0 -40
  283. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-bottom-row.js +0 -43
  284. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-busy.js +0 -83
  285. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-caption.js +0 -50
  286. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-colgroup.js +0 -32
  287. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-empty.js +0 -82
  288. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-filtering.js +0 -274
  289. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-items.js +0 -154
  290. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-pagination.js +0 -44
  291. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-provider.js +0 -191
  292. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-selectable.js +0 -213
  293. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-sorting.js +0 -275
  294. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-stacked.js +0 -39
  295. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-table-renderer.js +0 -186
  296. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody-row.js +0 -338
  297. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody.js +0 -243
  298. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tfoot.js +0 -50
  299. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-thead.js +0 -218
  300. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-top-row.js +0 -42
  301. package/dist/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.js +0 -86
  302. package/dist/vendor/bootstrap-vue/src/components/table/helpers/sanitize-row.js +0 -32
  303. package/dist/vendor/bootstrap-vue/src/components/table/helpers/stringify-record-values.js +0 -11
  304. package/dist/vendor/bootstrap-vue/src/components/table/helpers/text-selection-active.js +0 -14
  305. package/dist/vendor/bootstrap-vue/src/components/table/index.js +0 -9
  306. package/dist/vendor/bootstrap-vue/src/components/table/table-lite.js +0 -51
  307. package/dist/vendor/bootstrap-vue/src/components/table/table-simple.js +0 -44
  308. package/dist/vendor/bootstrap-vue/src/components/table/table.js +0 -67
  309. package/dist/vendor/bootstrap-vue/src/components/table/tbody.js +0 -109
  310. package/dist/vendor/bootstrap-vue/src/components/table/td.js +0 -183
  311. package/dist/vendor/bootstrap-vue/src/components/table/tfoot.js +0 -93
  312. package/dist/vendor/bootstrap-vue/src/components/table/th.js +0 -26
  313. package/dist/vendor/bootstrap-vue/src/components/table/thead.js +0 -96
  314. package/dist/vendor/bootstrap-vue/src/components/table/tr.js +0 -118
  315. package/dist/vendor/bootstrap-vue/src/components/tabs/index.js +0 -2
  316. package/dist/vendor/bootstrap-vue/src/components/tabs/tab.js +0 -199
  317. package/dist/vendor/bootstrap-vue/src/components/tabs/tabs.js +0 -601
  318. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-popper.js +0 -251
  319. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip-template.js +0 -118
  320. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +0 -932
  321. package/dist/vendor/bootstrap-vue/src/components/tooltip/index.js +0 -1
  322. package/dist/vendor/bootstrap-vue/src/components/tooltip/tooltip.js +0 -269
  323. package/dist/vendor/bootstrap-vue/src/components/transition/bv-transition.js +0 -103
  324. package/dist/vendor/bootstrap-vue/src/components/transporter/transporter.js +0 -205
  325. package/dist/vendor/bootstrap-vue/src/constants/components.js +0 -55
  326. package/dist/vendor/bootstrap-vue/src/constants/config.js +0 -11
  327. package/dist/vendor/bootstrap-vue/src/constants/env.js +0 -36
  328. package/dist/vendor/bootstrap-vue/src/constants/events.js +0 -56
  329. package/dist/vendor/bootstrap-vue/src/constants/key-codes.js +0 -11
  330. package/dist/vendor/bootstrap-vue/src/constants/popper.js +0 -10
  331. package/dist/vendor/bootstrap-vue/src/constants/props.js +0 -24
  332. package/dist/vendor/bootstrap-vue/src/constants/regex.js +0 -35
  333. package/dist/vendor/bootstrap-vue/src/constants/safe-types.js +0 -15
  334. package/dist/vendor/bootstrap-vue/src/constants/slots.js +0 -36
  335. package/dist/vendor/bootstrap-vue/src/directives/modal/index.js +0 -1
  336. package/dist/vendor/bootstrap-vue/src/directives/modal/modal.js +0 -112
  337. package/dist/vendor/bootstrap-vue/src/directives/tooltip/index.js +0 -1
  338. package/dist/vendor/bootstrap-vue/src/directives/tooltip/tooltip.js +0 -265
  339. package/dist/vendor/bootstrap-vue/src/directives/visible/index.js +0 -1
  340. package/dist/vendor/bootstrap-vue/src/directives/visible/visible.js +0 -187
  341. package/dist/vendor/bootstrap-vue/src/mixins/attrs.js +0 -5
  342. package/dist/vendor/bootstrap-vue/src/mixins/click-out.js +0 -54
  343. package/dist/vendor/bootstrap-vue/src/mixins/dropdown.js +0 -470
  344. package/dist/vendor/bootstrap-vue/src/mixins/focus-in.js +0 -46
  345. package/dist/vendor/bootstrap-vue/src/mixins/form-control.js +0 -73
  346. package/dist/vendor/bootstrap-vue/src/mixins/form-custom.js +0 -26
  347. package/dist/vendor/bootstrap-vue/src/mixins/form-options.js +0 -91
  348. package/dist/vendor/bootstrap-vue/src/mixins/form-selection.js +0 -62
  349. package/dist/vendor/bootstrap-vue/src/mixins/form-size.js +0 -26
  350. package/dist/vendor/bootstrap-vue/src/mixins/form-state.js +0 -50
  351. package/dist/vendor/bootstrap-vue/src/mixins/form-text.js +0 -293
  352. package/dist/vendor/bootstrap-vue/src/mixins/form-validity.js +0 -50
  353. package/dist/vendor/bootstrap-vue/src/mixins/has-listener.js +0 -29
  354. package/dist/vendor/bootstrap-vue/src/mixins/id.js +0 -57
  355. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-document.js +0 -63
  356. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-root.js +0 -121
  357. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-window.js +0 -63
  358. package/dist/vendor/bootstrap-vue/src/mixins/listeners.js +0 -25
  359. package/dist/vendor/bootstrap-vue/src/mixins/model.js +0 -10
  360. package/dist/vendor/bootstrap-vue/src/mixins/normalize-slot.js +0 -30
  361. package/dist/vendor/bootstrap-vue/src/mixins/scoped-style.js +0 -18
  362. package/dist/vendor/bootstrap-vue/src/mixins/use-parent.js +0 -14
  363. package/dist/vendor/bootstrap-vue/src/utils/array.js +0 -28
  364. package/dist/vendor/bootstrap-vue/src/utils/bv-event.class.js +0 -60
  365. package/dist/vendor/bootstrap-vue/src/utils/cache.js +0 -60
  366. package/dist/vendor/bootstrap-vue/src/utils/clone-deep.js +0 -18
  367. package/dist/vendor/bootstrap-vue/src/utils/config-set.js +0 -86
  368. package/dist/vendor/bootstrap-vue/src/utils/config.js +0 -71
  369. package/dist/vendor/bootstrap-vue/src/utils/create-new-child-component.js +0 -133
  370. package/dist/vendor/bootstrap-vue/src/utils/css-escape.js +0 -70
  371. package/dist/vendor/bootstrap-vue/src/utils/dom.js +0 -298
  372. package/dist/vendor/bootstrap-vue/src/utils/element-to-vue-instance-registry.js +0 -28
  373. package/dist/vendor/bootstrap-vue/src/utils/env.js +0 -16
  374. package/dist/vendor/bootstrap-vue/src/utils/events.js +0 -78
  375. package/dist/vendor/bootstrap-vue/src/utils/get-event-root.js +0 -5
  376. package/dist/vendor/bootstrap-vue/src/utils/get-instance-from-directive.js +0 -3
  377. package/dist/vendor/bootstrap-vue/src/utils/get-scope-id.js +0 -9
  378. package/dist/vendor/bootstrap-vue/src/utils/get.js +0 -63
  379. package/dist/vendor/bootstrap-vue/src/utils/html.js +0 -16
  380. package/dist/vendor/bootstrap-vue/src/utils/identity.js +0 -3
  381. package/dist/vendor/bootstrap-vue/src/utils/inspect.js +0 -35
  382. package/dist/vendor/bootstrap-vue/src/utils/locale.js +0 -19
  383. package/dist/vendor/bootstrap-vue/src/utils/loose-equal.js +0 -59
  384. package/dist/vendor/bootstrap-vue/src/utils/loose-index-of.js +0 -13
  385. package/dist/vendor/bootstrap-vue/src/utils/math.js +0 -9
  386. package/dist/vendor/bootstrap-vue/src/utils/memoize.js +0 -14
  387. package/dist/vendor/bootstrap-vue/src/utils/model.js +0 -33
  388. package/dist/vendor/bootstrap-vue/src/utils/noop.js +0 -3
  389. package/dist/vendor/bootstrap-vue/src/utils/normalize-slot.js +0 -51
  390. package/dist/vendor/bootstrap-vue/src/utils/number.js +0 -23
  391. package/dist/vendor/bootstrap-vue/src/utils/object.js +0 -72
  392. package/dist/vendor/bootstrap-vue/src/utils/observe-dom.js +0 -76
  393. package/dist/vendor/bootstrap-vue/src/utils/on-instance-destroy.js +0 -22
  394. package/dist/vendor/bootstrap-vue/src/utils/plugins.js +0 -124
  395. package/dist/vendor/bootstrap-vue/src/utils/props.js +0 -67
  396. package/dist/vendor/bootstrap-vue/src/utils/router.js +0 -150
  397. package/dist/vendor/bootstrap-vue/src/utils/safe-vue-instance.js +0 -14
  398. package/dist/vendor/bootstrap-vue/src/utils/stable-sort.js +0 -28
  399. package/dist/vendor/bootstrap-vue/src/utils/string.js +0 -47
  400. package/dist/vendor/bootstrap-vue/src/utils/stringify-object-values.js +0 -31
  401. package/dist/vendor/bootstrap-vue/src/utils/warn.js +0 -45
  402. package/dist/vendor/bootstrap-vue/src/vue.js +0 -55
@@ -1,213 +0,0 @@
1
- import { extend } from '../../../vue';
2
- import { EVENT_NAME_ROW_SELECTED } from '../../../constants/events';
3
- import { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props';
4
- import { arrayIncludes, createArray } from '../../../utils/array';
5
- import { identity } from '../../../utils/identity';
6
- import { isArray, isNumber } from '../../../utils/inspect';
7
- import { looseEqual } from '../../../utils/loose-equal';
8
- import { mathMin, mathMax } from '../../../utils/math';
9
- import { makeProp } from '../../../utils/props';
10
- import { toString } from '../../../utils/string';
11
- import { sanitizeRow } from './sanitize-row';
12
-
13
- // --- Constants ---
14
-
15
- const SELECT_MODES = ['range', 'multi', 'single'];
16
- const ROLE_GRID = 'grid';
17
-
18
- // --- Props ---
19
-
20
- const props = {
21
- // Disable use of click handlers for row selection
22
- noSelectOnClick: makeProp(PROP_TYPE_BOOLEAN, false),
23
- selectMode: makeProp(PROP_TYPE_STRING, 'multi', value => {
24
- return arrayIncludes(SELECT_MODES, value);
25
- }),
26
- selectable: makeProp(PROP_TYPE_BOOLEAN, false),
27
- selectedVariant: makeProp(PROP_TYPE_STRING, 'active')
28
- };
29
-
30
- // --- Mixin ---
31
-
32
- // @vue/component
33
- const selectableMixin = extend({
34
- props,
35
- data() {
36
- return {
37
- selectedRows: [],
38
- selectedLastRow: -1
39
- };
40
- },
41
- computed: {
42
- isSelectable() {
43
- return this.selectable && this.selectMode;
44
- },
45
- hasSelectableRowClick() {
46
- return this.isSelectable && !this.noSelectOnClick;
47
- },
48
- supportsSelectableRows() {
49
- return true;
50
- },
51
- selectableHasSelection() {
52
- const {
53
- selectedRows
54
- } = this;
55
- return this.isSelectable && selectedRows && selectedRows.length > 0 && selectedRows.some(identity);
56
- },
57
- selectableIsMultiSelect() {
58
- return this.isSelectable && arrayIncludes(['range', 'multi'], this.selectMode);
59
- },
60
- selectableTableClasses() {
61
- const {
62
- isSelectable
63
- } = this;
64
- return {
65
- 'b-table-selectable': isSelectable,
66
- [`b-table-select-${this.selectMode}`]: isSelectable,
67
- 'b-table-selecting': this.selectableHasSelection,
68
- 'b-table-selectable-no-click': isSelectable && !this.hasSelectableRowClick
69
- };
70
- },
71
- selectableTableAttrs() {
72
- if (!this.isSelectable) {
73
- return {};
74
- }
75
- const role = this.bvAttrs.role || ROLE_GRID;
76
- return {
77
- role,
78
- // TODO:
79
- // Should this attribute not be included when `no-select-on-click` is set
80
- // since this attribute implies keyboard navigation?
81
- 'aria-multiselectable': role === ROLE_GRID ? toString(this.selectableIsMultiSelect) : null
82
- };
83
- }
84
- },
85
- watch: {
86
- computedItems(newValue, oldValue) {
87
- // Reset for selectable
88
- let equal = false;
89
- if (this.isSelectable && this.selectedRows.length > 0) {
90
- // Quick check against array length
91
- equal = isArray(newValue) && isArray(oldValue) && newValue.length === oldValue.length;
92
- for (let i = 0; equal && i < newValue.length; i++) {
93
- // Look for the first non-loosely equal row, after ignoring reserved fields
94
- equal = looseEqual(sanitizeRow(newValue[i]), sanitizeRow(oldValue[i]));
95
- }
96
- }
97
- if (!equal) {
98
- this.clearSelected();
99
- }
100
- },
101
- selectable() {
102
- this.clearSelected();
103
- },
104
- selectMode() {
105
- this.clearSelected();
106
- },
107
- hasSelectableRowClick() {
108
- this.clearSelected();
109
- },
110
- selectedRows(selectedRows, oldValue) {
111
- if (this.isSelectable && !looseEqual(selectedRows, oldValue)) {
112
- const items = [];
113
- // `.forEach()` skips over non-existent indices (on sparse arrays)
114
- selectedRows.forEach((v, idx) => {
115
- if (v) {
116
- items.push(this.computedItems[idx]);
117
- }
118
- });
119
- this.$emit(EVENT_NAME_ROW_SELECTED, items);
120
- }
121
- }
122
- },
123
- methods: {
124
- // Public methods
125
- selectRow(index) {
126
- // Select a particular row (indexed based on computedItems)
127
- if (this.isSelectable && isNumber(index) && index >= 0 && index < this.computedItems.length && !this.isRowSelected(index)) {
128
- const selectedRows = this.selectableIsMultiSelect ? this.selectedRows.slice() : [];
129
- selectedRows[index] = true;
130
- this.selectedLastClicked = -1;
131
- this.selectedRows = selectedRows;
132
- }
133
- },
134
- unselectRow(index) {
135
- // Un-select a particular row (indexed based on `computedItems`)
136
- if (this.isSelectable && isNumber(index) && this.isRowSelected(index)) {
137
- const selectedRows = this.selectedRows.slice();
138
- selectedRows[index] = false;
139
- this.selectedLastClicked = -1;
140
- this.selectedRows = selectedRows;
141
- }
142
- },
143
- selectAllRows() {
144
- const length = this.computedItems.length;
145
- if (this.isSelectable && length > 0) {
146
- this.selectedLastClicked = -1;
147
- this.selectedRows = this.selectableIsMultiSelect ? createArray(length, true) : [true];
148
- }
149
- },
150
- isRowSelected(index) {
151
- // Determine if a row is selected (indexed based on `computedItems`)
152
- return !!(isNumber(index) && this.selectedRows[index]);
153
- },
154
- clearSelected() {
155
- // Clear any active selected row(s)
156
- this.selectedLastClicked = -1;
157
- this.selectedRows = [];
158
- },
159
- // Internal private methods
160
- selectableRowClasses(index) {
161
- if (this.isSelectable && this.isRowSelected(index)) {
162
- const variant = this.selectedVariant;
163
- return {
164
- 'b-table-row-selected': true,
165
- [`${this.dark ? 'bg' : 'table'}-${variant}`]: variant
166
- };
167
- }
168
- return {};
169
- },
170
- selectableRowAttrs(index) {
171
- return {
172
- 'aria-selected': !this.isSelectable ? null : this.isRowSelected(index) ? 'true' : 'false'
173
- };
174
- },
175
- selectionHandler(item, index, event) {
176
- /* istanbul ignore if: should never happen */
177
- if (!this.isSelectable || this.noSelectOnClick) {
178
- // Don't do anything if table is not in selectable mode
179
- this.clearSelected();
180
- return;
181
- }
182
- const {
183
- selectMode,
184
- selectedLastRow
185
- } = this;
186
- let selectedRows = this.selectedRows.slice();
187
- let selected = !selectedRows[index];
188
- // Note 'multi' mode needs no special event handling
189
- if (selectMode === 'single') {
190
- selectedRows = [];
191
- } else if (selectMode === 'range') {
192
- if (selectedLastRow > -1 && event.shiftKey) {
193
- // range
194
- for (let idx = mathMin(selectedLastRow, index); idx <= mathMax(selectedLastRow, index); idx++) {
195
- selectedRows[idx] = true;
196
- }
197
- selected = true;
198
- } else {
199
- if (!(event.ctrlKey || event.metaKey)) {
200
- // Clear range selection if any
201
- selectedRows = [];
202
- selected = true;
203
- }
204
- if (selected) this.selectedLastRow = index;
205
- }
206
- }
207
- selectedRows[index] = selected;
208
- this.selectedRows = selectedRows;
209
- }
210
- }
211
- });
212
-
213
- export { props, selectableMixin };
@@ -1,275 +0,0 @@
1
- import { extend } from '../../../vue';
2
- import { EVENT_NAME_SORT_CHANGED, MODEL_EVENT_NAME_PREFIX } from '../../../constants/events';
3
- import { PROP_TYPE_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_FUNCTION, PROP_TYPE_ARRAY_STRING, PROP_TYPE_OBJECT } from '../../../constants/props';
4
- import { arrayIncludes } from '../../../utils/array';
5
- import { isFunction, isUndefinedOrNull } from '../../../utils/inspect';
6
- import { makeProp } from '../../../utils/props';
7
- import { safeVueInstance } from '../../../utils/safe-vue-instance';
8
- import { stableSort } from '../../../utils/stable-sort';
9
- import { trim } from '../../../utils/string';
10
- import { defaultSortCompare } from './default-sort-compare';
11
-
12
- // --- Constants ---
13
-
14
- const MODEL_PROP_NAME_SORT_BY = 'sortBy';
15
- const MODEL_EVENT_NAME_SORT_BY = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_BY;
16
- const MODEL_PROP_NAME_SORT_DESC = 'sortDesc';
17
- const MODEL_EVENT_NAME_SORT_DESC = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SORT_DESC;
18
- const SORT_DIRECTION_ASC = 'asc';
19
- const SORT_DIRECTION_DESC = 'desc';
20
- const SORT_DIRECTION_LAST = 'last';
21
- const SORT_DIRECTIONS = [SORT_DIRECTION_ASC, SORT_DIRECTION_DESC, SORT_DIRECTION_LAST];
22
-
23
- // --- Props ---
24
-
25
- const props = {
26
- labelSortAsc: makeProp(PROP_TYPE_STRING, 'Click to sort ascending'),
27
- labelSortClear: makeProp(PROP_TYPE_STRING, 'Click to clear sorting'),
28
- labelSortDesc: makeProp(PROP_TYPE_STRING, 'Click to sort descending'),
29
- noFooterSorting: makeProp(PROP_TYPE_BOOLEAN, false),
30
- noLocalSorting: makeProp(PROP_TYPE_BOOLEAN, false),
31
- // Another prop that should have had a better name
32
- // It should be `noSortClear` (on non-sortable headers)
33
- // We will need to make sure the documentation is clear on what
34
- // this prop does (as well as in the code for future reference)
35
- noSortReset: makeProp(PROP_TYPE_BOOLEAN, false),
36
- [MODEL_PROP_NAME_SORT_BY]: makeProp(PROP_TYPE_STRING),
37
- sortCompare: makeProp(PROP_TYPE_FUNCTION),
38
- // String: locale code
39
- // Array: array of Locale strings
40
- sortCompareLocale: makeProp(PROP_TYPE_ARRAY_STRING),
41
- // Supported localCompare options, see `options` section of:
42
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare
43
- sortCompareOptions: makeProp(PROP_TYPE_OBJECT, {
44
- numeric: true
45
- }),
46
- // TODO: Make this tri-state: `true`, `false`, `null`
47
- [MODEL_PROP_NAME_SORT_DESC]: makeProp(PROP_TYPE_BOOLEAN, false),
48
- // This prop is named incorrectly
49
- // It should be `initialSortDirection` as it is a bit misleading
50
- // (not to mention it screws up the ARIA label on the headers)
51
- sortDirection: makeProp(PROP_TYPE_STRING, SORT_DIRECTION_ASC, value => {
52
- return arrayIncludes(SORT_DIRECTIONS, value);
53
- }),
54
- // Place the sorting icon on the left of the header cells
55
- sortIconLeft: makeProp(PROP_TYPE_BOOLEAN, false),
56
- // Sort null and undefined to appear last
57
- sortNullLast: makeProp(PROP_TYPE_BOOLEAN, false)
58
- };
59
-
60
- // --- Mixin ---
61
-
62
- // @vue/component
63
- const sortingMixin = extend({
64
- props,
65
- data() {
66
- return {
67
- localSortBy: this[MODEL_PROP_NAME_SORT_BY] || '',
68
- localSortDesc: this[MODEL_PROP_NAME_SORT_DESC] || false
69
- };
70
- },
71
- computed: {
72
- localSorting() {
73
- return this.hasProvider ? !!this.noProviderSorting : !this.noLocalSorting;
74
- },
75
- isSortable() {
76
- return this.computedFields.some(f => f.sortable);
77
- },
78
- // Sorts the filtered items and returns a new array of the sorted items
79
- // When not sorted, the original items array will be returned
80
- sortedItems() {
81
- const {
82
- localSortBy: sortBy,
83
- localSortDesc: sortDesc,
84
- sortCompareLocale: locale,
85
- sortNullLast: nullLast,
86
- sortCompare,
87
- localSorting,
88
- filteredItems,
89
- localItems
90
- } = safeVueInstance(this);
91
- const items = (filteredItems || localItems || []).slice();
92
- const localeOptions = {
93
- ...this.sortCompareOptions,
94
- usage: 'sort'
95
- };
96
- if (sortBy && localSorting) {
97
- const field = this.computedFieldsObj[sortBy] || {};
98
- const sortByFormatted = field.sortByFormatted;
99
- const formatter = isFunction(sortByFormatted) ? /* istanbul ignore next */sortByFormatted : sortByFormatted ? this.getFieldFormatter(sortBy) : undefined;
100
-
101
- // `stableSort` returns a new array, and leaves the original array intact
102
- return stableSort(items, (a, b) => {
103
- let result = null;
104
- // Call user provided `sortCompare` routine first
105
- if (isFunction(sortCompare)) {
106
- // TODO:
107
- // Change the `sortCompare` signature to the one of `defaultSortCompare`
108
- // with the next major version bump
109
- result = sortCompare(a, b, sortBy, sortDesc, formatter, localeOptions, locale);
110
- }
111
- // Fallback to built-in `defaultSortCompare` if `sortCompare`
112
- // is not defined or returns `null`/`false`
113
- if (isUndefinedOrNull(result) || result === false) {
114
- result = defaultSortCompare(a, b, {
115
- sortBy,
116
- formatter,
117
- locale,
118
- localeOptions,
119
- nullLast
120
- });
121
- }
122
- // Negate result if sorting in descending order
123
- return (result || 0) * (sortDesc ? -1 : 1);
124
- });
125
- }
126
- return items;
127
- }
128
- },
129
- watch: {
130
- [MODEL_PROP_NAME_SORT_DESC](newValue) {
131
- /* istanbul ignore next */
132
- if (newValue === this.localSortDesc) {
133
- return;
134
- }
135
- this.localSortDesc = newValue || false;
136
- },
137
- [MODEL_PROP_NAME_SORT_BY](newValue) {
138
- /* istanbul ignore next */
139
- if (newValue === this.localSortBy) {
140
- return;
141
- }
142
- this.localSortBy = newValue || '';
143
- },
144
- // Update .sync props
145
- localSortDesc(newValue, oldValue) {
146
- // Emit update to sort-desc.sync
147
- if (newValue !== oldValue) {
148
- this.$emit(MODEL_EVENT_NAME_SORT_DESC, newValue);
149
- }
150
- },
151
- localSortBy(newValue, oldValue) {
152
- if (newValue !== oldValue) {
153
- this.$emit(MODEL_EVENT_NAME_SORT_BY, newValue);
154
- }
155
- }
156
- },
157
- methods: {
158
- // Handlers
159
- // Need to move from thead-mixin
160
- handleSort(key, field, event, isFoot) {
161
- if (!this.isSortable) {
162
- /* istanbul ignore next */
163
- return;
164
- }
165
- if (isFoot && this.noFooterSorting) {
166
- return;
167
- }
168
- // TODO: make this tri-state sorting
169
- // cycle desc => asc => none => desc => ...
170
- let sortChanged = false;
171
- const toggleLocalSortDesc = () => {
172
- const sortDirection = field.sortDirection || this.sortDirection;
173
- if (sortDirection === SORT_DIRECTION_ASC) {
174
- this.localSortDesc = false;
175
- } else if (sortDirection === SORT_DIRECTION_DESC) {
176
- this.localSortDesc = true;
177
- } else ;
178
- };
179
- if (field.sortable) {
180
- const sortKey = !this.localSorting && field.sortKey ? field.sortKey : key;
181
- if (this.localSortBy === sortKey) {
182
- // Change sorting direction on current column
183
- this.localSortDesc = !this.localSortDesc;
184
- } else {
185
- // Start sorting this column ascending
186
- this.localSortBy = sortKey;
187
- // this.localSortDesc = false
188
- toggleLocalSortDesc();
189
- }
190
- sortChanged = true;
191
- } else if (this.localSortBy && !this.noSortReset) {
192
- this.localSortBy = '';
193
- toggleLocalSortDesc();
194
- sortChanged = true;
195
- }
196
- if (sortChanged) {
197
- // Sorting parameters changed
198
- this.$emit(EVENT_NAME_SORT_CHANGED, this.context);
199
- }
200
- },
201
- // methods to compute classes and attrs for thead>th cells
202
- sortTheadThClasses(key, field, isFoot) {
203
- return {
204
- // If sortable and sortIconLeft are true, then place sort icon on the left
205
- 'b-table-sort-icon-left': field.sortable && this.sortIconLeft && !(isFoot && this.noFooterSorting)
206
- };
207
- },
208
- sortTheadThAttrs(key, field, isFoot) {
209
- var _field$sortKey;
210
- const {
211
- isSortable,
212
- noFooterSorting,
213
- localSortDesc,
214
- localSortBy,
215
- localSorting
216
- } = this;
217
- if (!isSortable || isFoot && noFooterSorting) {
218
- // No attributes if not a sortable table
219
- return {};
220
- }
221
- const sortable = field.sortable;
222
- const sortKey = !localSorting ? (_field$sortKey = field.sortKey) !== null && _field$sortKey !== void 0 ? _field$sortKey : key : key;
223
-
224
- // Assemble the aria-sort attribute value
225
- const ariaSort = sortable && localSortBy === sortKey ? localSortDesc ? 'descending' : 'ascending' : sortable ? 'none' : null;
226
- // Return the attribute
227
- return {
228
- 'aria-sort': ariaSort
229
- };
230
- },
231
- // A label to be placed in an `.gl-sr-only` element in the header cell
232
- sortTheadThLabel(key, field, isFoot) {
233
- // No label if not a sortable table
234
- if (!this.isSortable || isFoot && this.noFooterSorting) {
235
- return null;
236
- }
237
- const {
238
- localSortBy,
239
- localSortDesc,
240
- labelSortAsc,
241
- labelSortDesc
242
- } = this;
243
- const {
244
- sortable
245
- } = field;
246
- // The correctness of these labels is very important for screen reader users
247
- let labelSorting = '';
248
- if (sortable) {
249
- if (localSortBy === key) {
250
- // Currently sorted sortable column
251
- labelSorting = localSortDesc ? labelSortAsc : labelSortDesc;
252
- } else {
253
- // Not currently sorted sortable column
254
- // Not using nested ternary's here for clarity/readability
255
- // Default for `aria-label`
256
- labelSorting = localSortDesc ? labelSortDesc : labelSortAsc;
257
- // Handle `sortDirection` setting
258
- const sortDirection = this.sortDirection || field.sortDirection;
259
- if (sortDirection === SORT_DIRECTION_ASC) {
260
- labelSorting = labelSortAsc;
261
- } else if (sortDirection === SORT_DIRECTION_DESC) {
262
- labelSorting = labelSortDesc;
263
- }
264
- }
265
- } else if (!this.noSortReset) {
266
- // Non sortable column
267
- labelSorting = localSortBy ? this.labelSortClear : '';
268
- }
269
- // Return the `.gl-sr-only` sort label or `null` if no label
270
- return trim(labelSorting) || null;
271
- }
272
- }
273
- });
274
-
275
- export { props, sortingMixin };
@@ -1,39 +0,0 @@
1
- import { extend } from '../../../vue';
2
- import { PROP_TYPE_BOOLEAN_STRING } from '../../../constants/props';
3
- import { makeProp } from '../../../utils/props';
4
-
5
- // --- Props ---
6
-
7
- const props = {
8
- stacked: makeProp(PROP_TYPE_BOOLEAN_STRING, false)
9
- };
10
-
11
- // --- Mixin ---
12
-
13
- // @vue/component
14
- const stackedMixin = extend({
15
- props,
16
- computed: {
17
- isStacked() {
18
- const {
19
- stacked
20
- } = this;
21
- // `true` when always stacked, or returns breakpoint specified
22
- return stacked === '' ? true : stacked;
23
- },
24
- isStackedAlways() {
25
- return this.isStacked === true;
26
- },
27
- stackedTableClasses() {
28
- const {
29
- isStackedAlways
30
- } = this;
31
- return {
32
- 'b-table-stacked': isStackedAlways,
33
- [`b-table-stacked-${this.stacked}`]: !isStackedAlways && this.isStacked
34
- };
35
- }
36
- }
37
- });
38
-
39
- export { props, stackedMixin };