@gitlab/ui 132.0.1 → 132.0.2

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 (393) hide show
  1. package/dist/charts.js +13 -0
  2. package/dist/components/base/accordion/accordion.js +69 -0
  3. package/dist/components/base/accordion/accordion_item.js +160 -0
  4. package/dist/components/base/accordion/constants.js +3 -0
  5. package/dist/components/base/alert/alert.js +263 -0
  6. package/dist/components/base/animated_icon/animated_chevron_down_up_icon.js +45 -0
  7. package/dist/components/base/animated_icon/animated_chevron_lg_down_up_icon.js +45 -0
  8. package/dist/components/base/animated_icon/animated_chevron_lg_right_down_icon.js +45 -0
  9. package/dist/components/base/animated_icon/animated_chevron_right_down_icon.js +45 -0
  10. package/dist/components/base/animated_icon/animated_duo_chat_icon.js +45 -0
  11. package/dist/components/base/animated_icon/animated_loader_icon.js +45 -0
  12. package/dist/components/base/animated_icon/animated_notifications_icon.js +45 -0
  13. package/dist/components/base/animated_icon/animated_sidebar_icon.js +45 -0
  14. package/dist/components/base/animated_icon/animated_smile_icon.js +45 -0
  15. package/dist/components/base/animated_icon/animated_sort_icon.js +45 -0
  16. package/dist/components/base/animated_icon/animated_star_icon.js +45 -0
  17. package/dist/components/base/animated_icon/animated_todo_icon.js +45 -0
  18. package/dist/components/base/animated_icon/animated_upload_icon.js +45 -0
  19. package/dist/components/base/animated_icon/base_animated_icon.js +77 -0
  20. package/dist/components/base/attribute_list/attribute_list.js +100 -0
  21. package/dist/components/base/avatar/avatar.js +175 -0
  22. package/dist/components/base/avatar/utils.js +17 -0
  23. package/dist/components/base/avatar_labeled/avatar_labeled.js +198 -0
  24. package/dist/components/base/avatar_link/avatar_link.js +47 -0
  25. package/dist/components/base/avatars_inline/avatars_inline.js +139 -0
  26. package/dist/components/base/badge/badge.js +197 -0
  27. package/dist/components/base/banner/banner.js +149 -0
  28. package/dist/components/base/breadcrumb/breadcrumb.js +282 -0
  29. package/dist/components/base/breadcrumb/breadcrumb_item.js +96 -0
  30. package/dist/components/base/broadcast_message/broadcast_message.js +113 -0
  31. package/dist/components/base/broadcast_message/constants.js +5 -0
  32. package/dist/components/base/button/button.js +419 -0
  33. package/dist/components/base/button_group/button_group.js +53 -0
  34. package/dist/components/base/card/card.js +69 -0
  35. package/dist/components/base/collapse/collapse.js +163 -0
  36. package/dist/components/base/color_mode_toggle/color_mode_toggle.js +92 -0
  37. package/dist/components/base/datepicker/datepicker.js +475 -0
  38. package/dist/components/base/daterange_picker/daterange_picker.js +394 -0
  39. package/dist/components/base/drawer/drawer.js +156 -0
  40. package/dist/components/base/dropdown/dropdown.js +330 -0
  41. package/dist/components/base/dropdown/dropdown_divider.js +48 -0
  42. package/dist/components/base/dropdown/dropdown_form.js +48 -0
  43. package/dist/components/base/dropdown/dropdown_item.js +175 -0
  44. package/dist/components/base/dropdown/dropdown_section_header.js +48 -0
  45. package/dist/components/base/dropdown/dropdown_text.js +48 -0
  46. package/dist/components/base/filtered_search/common_story_options.js +14 -0
  47. package/dist/components/base/filtered_search/filtered_search.js +428 -0
  48. package/dist/components/base/filtered_search/filtered_search_suggestion.js +95 -0
  49. package/dist/components/base/filtered_search/filtered_search_suggestion_list.js +139 -0
  50. package/dist/components/base/filtered_search/filtered_search_term.js +217 -0
  51. package/dist/components/base/filtered_search/filtered_search_token.js +383 -0
  52. package/dist/components/base/filtered_search/filtered_search_token_segment.js +444 -0
  53. package/dist/components/base/filtered_search/filtered_search_utils.js +241 -0
  54. package/dist/components/base/form/form.js +43 -0
  55. package/dist/components/base/form/form_character_count/form_character_count.js +107 -0
  56. package/dist/components/base/form/form_checkbox/form_checkbox.js +342 -0
  57. package/dist/components/base/form/form_checkbox/form_checkbox_group.js +188 -0
  58. package/dist/components/base/form/form_combobox/constants.js +55 -0
  59. package/dist/components/base/form/form_combobox/form_combobox.js +239 -0
  60. package/dist/components/base/form/form_date/form_date.js +143 -0
  61. package/dist/components/base/form/form_fields/form_field_validator.js +93 -0
  62. package/dist/components/base/form/form_fields/form_fields.js +289 -0
  63. package/dist/components/base/form/form_fields/form_fields_loop.js +75 -0
  64. package/dist/components/base/form/form_fields/mappers.js +13 -0
  65. package/dist/components/base/form/form_fields/validators.js +48 -0
  66. package/dist/components/base/form/form_group/form_group.js +119 -0
  67. package/dist/components/base/form/form_input/form_input.js +695 -0
  68. package/dist/components/base/form/form_input_group/form_input_group.js +120 -0
  69. package/dist/components/base/form/form_input_group/form_input_group_mixin.js +41 -0
  70. package/dist/components/base/form/form_radio/form_radio.js +259 -0
  71. package/dist/components/base/form/form_radio_group/form_radio_group.js +189 -0
  72. package/dist/components/base/form/form_select/constants.js +12 -0
  73. package/dist/components/base/form/form_select/form_select.js +96 -0
  74. package/dist/components/base/form/form_textarea/form_textarea.js +166 -0
  75. package/dist/components/base/form/input_group_text/input_group_text.js +43 -0
  76. package/dist/components/base/icon/icon.js +113 -0
  77. package/dist/components/base/illustration/illustration.js +80 -0
  78. package/dist/components/base/infinite_scroll/infinite_scroll.js +196 -0
  79. package/dist/components/base/keyset_pagination/keyset_pagination.js +152 -0
  80. package/dist/components/base/label/label.js +174 -0
  81. package/dist/components/base/link/link.js +330 -0
  82. package/dist/components/base/loading_icon/loading_icon.js +120 -0
  83. package/dist/components/base/markdown/markdown.js +50 -0
  84. package/dist/components/base/modal/modal.js +259 -0
  85. package/dist/components/base/new_dropdowns/base_dropdown/base_dropdown.js +716 -0
  86. package/dist/components/base/new_dropdowns/base_dropdown/constants.js +5 -0
  87. package/dist/components/base/new_dropdowns/base_dropdown/dropdown_container.js +32 -0
  88. package/dist/components/base/new_dropdowns/constants.js +24 -0
  89. package/dist/components/base/new_dropdowns/disclosure/constants.js +8 -0
  90. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown.js +400 -0
  91. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_group.js +112 -0
  92. package/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_item.js +196 -0
  93. package/dist/components/base/new_dropdowns/disclosure/mock_data.js +168 -0
  94. package/dist/components/base/new_dropdowns/disclosure/utils.js +84 -0
  95. package/dist/components/base/new_dropdowns/listbox/listbox.js +997 -0
  96. package/dist/components/base/new_dropdowns/listbox/listbox_group.js +58 -0
  97. package/dist/components/base/new_dropdowns/listbox/listbox_item.js +112 -0
  98. package/dist/components/base/new_dropdowns/listbox/listbox_search_input.js +94 -0
  99. package/dist/components/base/new_dropdowns/listbox/mock_data.js +131 -0
  100. package/dist/components/base/new_dropdowns/listbox/utils.js +33 -0
  101. package/dist/components/base/pagination/pagination.js +397 -0
  102. package/dist/components/base/path/data.js +34 -0
  103. package/dist/components/base/path/path.js +177 -0
  104. package/dist/components/base/popover/popover.js +142 -0
  105. package/dist/components/base/progress_bar/progress_bar.js +117 -0
  106. package/dist/components/base/search_box_by_click/search_box_by_click.js +245 -0
  107. package/dist/components/base/search_box_by_type/search_box_by_type.js +187 -0
  108. package/dist/components/base/segmented_control/segmented_control.js +73 -0
  109. package/dist/components/base/skeleton_loader/skeleton_loader.js +232 -0
  110. package/dist/components/base/sorting/sorting.js +180 -0
  111. package/dist/components/base/table/constants.js +5 -0
  112. package/dist/components/base/table/table.js +187 -0
  113. package/dist/components/base/table_lite/table_lite.js +80 -0
  114. package/dist/components/base/tabs/constants.js +3 -0
  115. package/dist/components/base/tabs/tab/tab.js +113 -0
  116. package/dist/components/base/tabs/tabs/scrollable_tabs.js +162 -0
  117. package/dist/components/base/tabs/tabs/tabs.js +223 -0
  118. package/dist/components/base/toast/index.js +66 -0
  119. package/dist/components/base/toast/toast.js +125 -0
  120. package/dist/components/base/toast/toaster.js +87 -0
  121. package/dist/components/base/toggle/toggle.js +178 -0
  122. package/dist/components/base/token/token.js +97 -0
  123. package/dist/components/base/token_selector/helpers.js +5 -0
  124. package/dist/components/base/token_selector/token_container.js +160 -0
  125. package/dist/components/base/token_selector/token_selector.js +454 -0
  126. package/dist/components/base/token_selector/token_selector_dropdown.js +223 -0
  127. package/dist/components/base/tooltip/tooltip.js +54 -0
  128. package/dist/components/charts/area/area.js +329 -0
  129. package/dist/components/charts/bar/bar.js +207 -0
  130. package/dist/components/charts/chart/chart.js +215 -0
  131. package/dist/components/charts/column/column.js +221 -0
  132. package/dist/components/charts/discrete_scatter/discrete_scatter.js +199 -0
  133. package/dist/components/charts/gauge/gauge.js +205 -0
  134. package/dist/components/charts/heatmap/heatmap.js +299 -0
  135. package/dist/components/charts/heatmap/index.js +2 -0
  136. package/dist/components/charts/legend/legend.js +245 -0
  137. package/dist/components/charts/line/line.js +340 -0
  138. package/dist/components/charts/series_label/series_label.js +101 -0
  139. package/dist/components/charts/shared/tooltip/tooltip.js +369 -0
  140. package/dist/components/charts/shared/tooltip/tooltip_default_format/tooltip_default_format.js +53 -0
  141. package/dist/components/charts/single_stat/single_stat.js +164 -0
  142. package/dist/components/charts/sparkline/sparkline.js +299 -0
  143. package/dist/components/charts/stacked_column/stacked_column.js +380 -0
  144. package/dist/components/dashboards/dashboard_layout/dashboard_layout.js +125 -0
  145. package/dist/components/dashboards/dashboard_layout/grid_layout/grid_layout.js +326 -0
  146. package/dist/components/dashboards/dashboard_layout/validators.js +14 -0
  147. package/dist/components/dashboards/dashboard_panel/dashboard_panel.js +236 -0
  148. package/dist/components/dashboards/mock_data.js +49 -0
  149. package/dist/components/experimental/experiment_badge/constants.js +4 -0
  150. package/dist/components/experimental/experiment_badge/experiment_badge.js +102 -0
  151. package/dist/components/extended/multi_step_form_template/multi_step_form_template.js +87 -0
  152. package/dist/components/index.js +107 -0
  153. package/dist/components/mixins/button_mixin.js +11 -0
  154. package/dist/components/mixins/safe_link_mixin.js +30 -0
  155. package/dist/components/mixins/tooltip_mixin.js +21 -0
  156. package/dist/components/regions/dashboard_skeleton/dashboard_skeleton.js +53 -0
  157. package/dist/components/regions/empty_state/empty_state.js +181 -0
  158. package/dist/components/shared_components/clear_icon_button/clear_icon_button.js +64 -0
  159. package/dist/components/shared_components/clipboard_button/clipboard_button.js +100 -0
  160. package/dist/components/shared_components/close_button/close_button.js +55 -0
  161. package/dist/components/utilities/animated_number/animated_number.js +131 -0
  162. package/dist/components/utilities/friendly_wrap/friendly_wrap.js +75 -0
  163. package/dist/components/utilities/intersection_observer/intersection_observer.js +88 -0
  164. package/dist/components/utilities/intersperse/intersperse.js +104 -0
  165. package/dist/components/utilities/sprintf/sprintf.js +171 -0
  166. package/dist/components/utilities/truncate/constants.js +8 -0
  167. package/dist/components/utilities/truncate/truncate.js +154 -0
  168. package/dist/components/utilities/truncate_text/constants.js +7 -0
  169. package/dist/components/utilities/truncate_text/truncate_text.js +146 -0
  170. package/dist/config.js +53 -0
  171. package/dist/directives/hover_load/hover_load.js +45 -0
  172. package/dist/directives/index.js +8 -0
  173. package/dist/directives/modal.js +1 -0
  174. package/dist/directives/outside/outside.js +149 -0
  175. package/dist/directives/resize_observer/resize_observer.js +58 -0
  176. package/dist/directives/safe_html/constants.js +6 -0
  177. package/dist/directives/safe_html/safe_html.js +39 -0
  178. package/dist/directives/safe_link/mock_data.js +10 -0
  179. package/dist/directives/safe_link/safe_link.js +67 -0
  180. package/dist/directives/tooltip/container.js +7 -0
  181. package/dist/directives/tooltip/tooltip.js +18 -0
  182. package/dist/index.css +7 -0
  183. package/dist/index.css.map +1 -0
  184. package/dist/index.js +2 -0
  185. package/dist/tailwind.css +2 -0
  186. package/dist/tailwind.css.map +1 -0
  187. package/dist/tokens/build/js/tokens.dark.js +1410 -0
  188. package/dist/tokens/build/js/tokens.js +1410 -0
  189. package/dist/tokens/common_story_options.js +29 -0
  190. package/dist/tokens/tokens_story.js +76 -0
  191. package/dist/utils/breakpoints.js +20 -0
  192. package/dist/utils/charts/config.js +616 -0
  193. package/dist/utils/charts/constants.js +69 -0
  194. package/dist/utils/charts/mock_data.js +191 -0
  195. package/dist/utils/charts/story_config.js +24 -0
  196. package/dist/utils/charts/theme.js +200 -0
  197. package/dist/utils/charts/utils.js +54 -0
  198. package/dist/utils/constants.js +331 -0
  199. package/dist/utils/data_utils.js +19 -0
  200. package/dist/utils/datetime_utility.js +61 -0
  201. package/dist/utils/equality_utils.js +84 -0
  202. package/dist/utils/form_options_utils.js +46 -0
  203. package/dist/utils/i18n.js +65 -0
  204. package/dist/utils/is_slot_empty.js +34 -0
  205. package/dist/utils/number_utils.js +132 -0
  206. package/dist/utils/play_utils.js +11 -0
  207. package/dist/utils/set_utils.js +25 -0
  208. package/dist/utils/stories_constants.js +29 -0
  209. package/dist/utils/stories_utils.js +62 -0
  210. package/dist/utils/story_decorators/container.js +19 -0
  211. package/dist/utils/string_utils.js +69 -0
  212. package/dist/utils/svgs/svg_paths.js +7 -0
  213. package/dist/utils/test_utils.js +33 -0
  214. package/dist/utils/use_fake_date.js +29 -0
  215. package/dist/utils/use_mock_intersection_observer.js +105 -0
  216. package/dist/utils/utils.js +205 -0
  217. package/dist/utils/vue_utils.js +57 -0
  218. package/dist/utils.js +5 -0
  219. package/dist/vendor/bootstrap-vue/src/bv-config.js +8 -0
  220. package/dist/vendor/bootstrap-vue/src/components/button/button-close.js +81 -0
  221. package/dist/vendor/bootstrap-vue/src/components/button/button.js +204 -0
  222. package/dist/vendor/bootstrap-vue/src/components/button/index.js +2 -0
  223. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.js +41 -0
  224. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.js +52 -0
  225. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.js +75 -0
  226. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.js +52 -0
  227. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.js +85 -0
  228. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js +97 -0
  229. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.js +60 -0
  230. package/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +270 -0
  231. package/dist/vendor/bootstrap-vue/src/components/dropdown/index.js +8 -0
  232. package/dist/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.js +53 -0
  233. package/dist/vendor/bootstrap-vue/src/components/form/form-text.js +55 -0
  234. package/dist/vendor/bootstrap-vue/src/components/form/form-valid-feedback.js +53 -0
  235. package/dist/vendor/bootstrap-vue/src/components/form/form.js +56 -0
  236. package/dist/vendor/bootstrap-vue/src/components/form/index.js +4 -0
  237. package/dist/vendor/bootstrap-vue/src/components/form-group/form-group.js +347 -0
  238. package/dist/vendor/bootstrap-vue/src/components/form-group/index.js +1 -0
  239. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.js +54 -0
  240. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select-option.js +41 -0
  241. package/dist/vendor/bootstrap-vue/src/components/form-select/form-select.js +143 -0
  242. package/dist/vendor/bootstrap-vue/src/components/form-select/helpers/mixin-options.js +56 -0
  243. package/dist/vendor/bootstrap-vue/src/components/form-select/index.js +3 -0
  244. package/dist/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.js +217 -0
  245. package/dist/vendor/bootstrap-vue/src/components/form-textarea/index.js +1 -0
  246. package/dist/vendor/bootstrap-vue/src/components/layout/col.js +155 -0
  247. package/dist/vendor/bootstrap-vue/src/components/layout/form-row.js +34 -0
  248. package/dist/vendor/bootstrap-vue/src/components/layout/index.js +2 -0
  249. package/dist/vendor/bootstrap-vue/src/components/link/index.js +1 -0
  250. package/dist/vendor/bootstrap-vue/src/components/link/link.js +283 -0
  251. package/dist/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.js +21 -0
  252. package/dist/vendor/bootstrap-vue/src/components/modal/helpers/modal-manager.js +212 -0
  253. package/dist/vendor/bootstrap-vue/src/components/modal/index.js +1 -0
  254. package/dist/vendor/bootstrap-vue/src/components/modal/modal.js +1059 -0
  255. package/dist/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover-template.js +55 -0
  256. package/dist/vendor/bootstrap-vue/src/components/popover/helpers/bv-popover.js +31 -0
  257. package/dist/vendor/bootstrap-vue/src/components/popover/index.js +1 -0
  258. package/dist/vendor/bootstrap-vue/src/components/popover/popover.js +49 -0
  259. package/dist/vendor/bootstrap-vue/src/components/table/helpers/constants.js +22 -0
  260. package/dist/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.js +64 -0
  261. package/dist/vendor/bootstrap-vue/src/components/table/helpers/filter-event.js +40 -0
  262. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-bottom-row.js +43 -0
  263. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-busy.js +83 -0
  264. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-caption.js +50 -0
  265. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-colgroup.js +32 -0
  266. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-empty.js +82 -0
  267. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-filtering.js +292 -0
  268. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-items.js +154 -0
  269. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-pagination.js +44 -0
  270. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-provider.js +191 -0
  271. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-selectable.js +213 -0
  272. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-sorting.js +274 -0
  273. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-stacked.js +39 -0
  274. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-table-renderer.js +186 -0
  275. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody-row.js +338 -0
  276. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tbody.js +243 -0
  277. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-tfoot.js +50 -0
  278. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-thead.js +218 -0
  279. package/dist/vendor/bootstrap-vue/src/components/table/helpers/mixin-top-row.js +42 -0
  280. package/dist/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.js +86 -0
  281. package/dist/vendor/bootstrap-vue/src/components/table/helpers/sanitize-row.js +31 -0
  282. package/dist/vendor/bootstrap-vue/src/components/table/helpers/stringify-record-values.js +11 -0
  283. package/dist/vendor/bootstrap-vue/src/components/table/helpers/text-selection-active.js +14 -0
  284. package/dist/vendor/bootstrap-vue/src/components/table/index.js +9 -0
  285. package/dist/vendor/bootstrap-vue/src/components/table/table-lite.js +51 -0
  286. package/dist/vendor/bootstrap-vue/src/components/table/table-simple.js +44 -0
  287. package/dist/vendor/bootstrap-vue/src/components/table/table.js +67 -0
  288. package/dist/vendor/bootstrap-vue/src/components/table/tbody.js +116 -0
  289. package/dist/vendor/bootstrap-vue/src/components/table/td.js +204 -0
  290. package/dist/vendor/bootstrap-vue/src/components/table/tfoot.js +96 -0
  291. package/dist/vendor/bootstrap-vue/src/components/table/th.js +26 -0
  292. package/dist/vendor/bootstrap-vue/src/components/table/thead.js +99 -0
  293. package/dist/vendor/bootstrap-vue/src/components/table/tr.js +121 -0
  294. package/dist/vendor/bootstrap-vue/src/components/tabs/index.js +2 -0
  295. package/dist/vendor/bootstrap-vue/src/components/tabs/tab.js +238 -0
  296. package/dist/vendor/bootstrap-vue/src/components/tabs/tabs.js +690 -0
  297. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-popper.js +251 -0
  298. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip-template.js +118 -0
  299. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +932 -0
  300. package/dist/vendor/bootstrap-vue/src/components/tooltip/index.js +1 -0
  301. package/dist/vendor/bootstrap-vue/src/components/tooltip/tooltip.js +337 -0
  302. package/dist/vendor/bootstrap-vue/src/components/transition/bv-transition.js +103 -0
  303. package/dist/vendor/bootstrap-vue/src/components/transporter/transporter.js +205 -0
  304. package/dist/vendor/bootstrap-vue/src/constants/components.js +55 -0
  305. package/dist/vendor/bootstrap-vue/src/constants/config.js +11 -0
  306. package/dist/vendor/bootstrap-vue/src/constants/env.js +36 -0
  307. package/dist/vendor/bootstrap-vue/src/constants/events.js +56 -0
  308. package/dist/vendor/bootstrap-vue/src/constants/key-codes.js +11 -0
  309. package/dist/vendor/bootstrap-vue/src/constants/popper.js +10 -0
  310. package/dist/vendor/bootstrap-vue/src/constants/props.js +24 -0
  311. package/dist/vendor/bootstrap-vue/src/constants/regex.js +35 -0
  312. package/dist/vendor/bootstrap-vue/src/constants/safe-types.js +15 -0
  313. package/dist/vendor/bootstrap-vue/src/constants/slots.js +36 -0
  314. package/dist/vendor/bootstrap-vue/src/directives/modal/index.js +1 -0
  315. package/dist/vendor/bootstrap-vue/src/directives/modal/modal.js +112 -0
  316. package/dist/vendor/bootstrap-vue/src/directives/tooltip/index.js +1 -0
  317. package/dist/vendor/bootstrap-vue/src/directives/tooltip/tooltip.js +267 -0
  318. package/dist/vendor/bootstrap-vue/src/directives/visible/index.js +1 -0
  319. package/dist/vendor/bootstrap-vue/src/directives/visible/visible.js +187 -0
  320. package/dist/vendor/bootstrap-vue/src/mixins/attrs.js +5 -0
  321. package/dist/vendor/bootstrap-vue/src/mixins/click-out.js +54 -0
  322. package/dist/vendor/bootstrap-vue/src/mixins/dropdown.js +470 -0
  323. package/dist/vendor/bootstrap-vue/src/mixins/focus-in.js +46 -0
  324. package/dist/vendor/bootstrap-vue/src/mixins/form-control.js +73 -0
  325. package/dist/vendor/bootstrap-vue/src/mixins/form-custom.js +26 -0
  326. package/dist/vendor/bootstrap-vue/src/mixins/form-options.js +91 -0
  327. package/dist/vendor/bootstrap-vue/src/mixins/form-selection.js +62 -0
  328. package/dist/vendor/bootstrap-vue/src/mixins/form-size.js +26 -0
  329. package/dist/vendor/bootstrap-vue/src/mixins/form-state.js +50 -0
  330. package/dist/vendor/bootstrap-vue/src/mixins/form-text.js +293 -0
  331. package/dist/vendor/bootstrap-vue/src/mixins/form-validity.js +50 -0
  332. package/dist/vendor/bootstrap-vue/src/mixins/has-listener.js +29 -0
  333. package/dist/vendor/bootstrap-vue/src/mixins/id.js +57 -0
  334. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-document.js +62 -0
  335. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-root.js +120 -0
  336. package/dist/vendor/bootstrap-vue/src/mixins/listen-on-window.js +62 -0
  337. package/dist/vendor/bootstrap-vue/src/mixins/listeners.js +25 -0
  338. package/dist/vendor/bootstrap-vue/src/mixins/model.js +10 -0
  339. package/dist/vendor/bootstrap-vue/src/mixins/normalize-slot.js +30 -0
  340. package/dist/vendor/bootstrap-vue/src/mixins/scoped-style.js +18 -0
  341. package/dist/vendor/bootstrap-vue/src/mixins/use-parent.js +14 -0
  342. package/dist/vendor/bootstrap-vue/src/utils/array.js +27 -0
  343. package/dist/vendor/bootstrap-vue/src/utils/bv-event.class.js +60 -0
  344. package/dist/vendor/bootstrap-vue/src/utils/cache.js +60 -0
  345. package/dist/vendor/bootstrap-vue/src/utils/clone-deep.js +18 -0
  346. package/dist/vendor/bootstrap-vue/src/utils/config-set.js +86 -0
  347. package/dist/vendor/bootstrap-vue/src/utils/config.js +71 -0
  348. package/dist/vendor/bootstrap-vue/src/utils/create-new-child-component.js +133 -0
  349. package/dist/vendor/bootstrap-vue/src/utils/css-escape.js +70 -0
  350. package/dist/vendor/bootstrap-vue/src/utils/dom.js +298 -0
  351. package/dist/vendor/bootstrap-vue/src/utils/element-to-vue-instance-registry.js +28 -0
  352. package/dist/vendor/bootstrap-vue/src/utils/env.js +16 -0
  353. package/dist/vendor/bootstrap-vue/src/utils/events.js +78 -0
  354. package/dist/vendor/bootstrap-vue/src/utils/get-event-root.js +5 -0
  355. package/dist/vendor/bootstrap-vue/src/utils/get-instance-from-directive.js +3 -0
  356. package/dist/vendor/bootstrap-vue/src/utils/get-scope-id.js +9 -0
  357. package/dist/vendor/bootstrap-vue/src/utils/get.js +63 -0
  358. package/dist/vendor/bootstrap-vue/src/utils/html.js +16 -0
  359. package/dist/vendor/bootstrap-vue/src/utils/identity.js +3 -0
  360. package/dist/vendor/bootstrap-vue/src/utils/inspect.js +35 -0
  361. package/dist/vendor/bootstrap-vue/src/utils/locale.js +18 -0
  362. package/dist/vendor/bootstrap-vue/src/utils/loose-equal.js +59 -0
  363. package/dist/vendor/bootstrap-vue/src/utils/loose-index-of.js +13 -0
  364. package/dist/vendor/bootstrap-vue/src/utils/math.js +9 -0
  365. package/dist/vendor/bootstrap-vue/src/utils/memoize.js +14 -0
  366. package/dist/vendor/bootstrap-vue/src/utils/model.js +33 -0
  367. package/dist/vendor/bootstrap-vue/src/utils/noop.js +3 -0
  368. package/dist/vendor/bootstrap-vue/src/utils/normalize-slot.js +51 -0
  369. package/dist/vendor/bootstrap-vue/src/utils/number.js +23 -0
  370. package/dist/vendor/bootstrap-vue/src/utils/object.js +72 -0
  371. package/dist/vendor/bootstrap-vue/src/utils/observe-dom.js +76 -0
  372. package/dist/vendor/bootstrap-vue/src/utils/on-instance-destroy.js +22 -0
  373. package/dist/vendor/bootstrap-vue/src/utils/plugins.js +124 -0
  374. package/dist/vendor/bootstrap-vue/src/utils/props.js +67 -0
  375. package/dist/vendor/bootstrap-vue/src/utils/router.js +150 -0
  376. package/dist/vendor/bootstrap-vue/src/utils/safe-vue-instance.js +14 -0
  377. package/dist/vendor/bootstrap-vue/src/utils/stable-sort.js +28 -0
  378. package/dist/vendor/bootstrap-vue/src/utils/string.js +47 -0
  379. package/dist/vendor/bootstrap-vue/src/utils/stringify-object-values.js +31 -0
  380. package/dist/vendor/bootstrap-vue/src/utils/warn.js +45 -0
  381. package/dist/vendor/bootstrap-vue/src/vue.js +55 -0
  382. package/package.json +4 -3
  383. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.js +2 -2
  384. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.js +2 -2
  385. package/src/vendor/bootstrap-vue/src/components/layout/col.js +2 -2
  386. package/src/vendor/bootstrap-vue/src/components/modal/modal.js +2 -2
  387. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.js +2 -2
  388. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +8 -9
  389. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.js +1 -2
  390. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.js +1 -2
  391. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.js +1 -2
  392. package/src/vendor/bootstrap-vue/src/utils/array.js +0 -1
  393. package/src/vendor/bootstrap-vue/src/utils/locale.js +1 -2
@@ -0,0 +1,330 @@
1
+ import Vue from 'vue';
2
+ import { merge } from 'lodash-es';
3
+ import { selectAll } from '../../../vendor/bootstrap-vue/src/utils/dom';
4
+ import { BDropdown } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown';
5
+ import { buttonCategoryOptions, dropdownVariantOptions, buttonSizeOptions } from '../../../utils/constants';
6
+ import { filterVisible } from '../../../utils/utils';
7
+ import { ButtonMixin } from '../../mixins/button_mixin';
8
+ import GlButton from '../button/button';
9
+ import GlIcon from '../icon/icon';
10
+ import GlLoadingIcon from '../loading_icon/loading_icon';
11
+ import GlDropdownDivider from './dropdown_divider';
12
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
13
+
14
+ //
15
+
16
+ const Selector = {
17
+ ITEM_SELECTOR: '.dropdown-item:not(.disabled):not([disabled]),.form-control:not(.disabled):not([disabled])'
18
+ };
19
+
20
+ // see https://gitlab.com/gitlab-org/gitlab-ui/merge_requests/130#note_126406721
21
+ const ExtendedBDropdown = Vue.extend(BDropdown, {
22
+ name: 'ExtendedBDropdown',
23
+ methods: {
24
+ getItems() {
25
+ return filterVisible(selectAll(Selector.ITEM_SELECTOR, this.$refs.menu));
26
+ }
27
+ }
28
+ });
29
+ const DefaultPopperOptions = {
30
+ modifiers: {
31
+ flip: {
32
+ flipVariationsByContent: true,
33
+ padding: 28
34
+ }
35
+ }
36
+ };
37
+ var script = {
38
+ name: 'GlDropdown',
39
+ components: {
40
+ BDropdown: ExtendedBDropdown,
41
+ GlButton,
42
+ GlDropdownDivider,
43
+ GlIcon,
44
+ GlLoadingIcon
45
+ },
46
+ mixins: [ButtonMixin],
47
+ inheritAttrs: false,
48
+ props: {
49
+ /**
50
+ * Text to display in the dropdown header.
51
+ */
52
+ headerText: {
53
+ type: String,
54
+ required: false,
55
+ default: ''
56
+ },
57
+ /**
58
+ * When true, hides the border below the dropdown header.
59
+ */
60
+ hideHeaderBorder: {
61
+ type: Boolean,
62
+ required: false,
63
+ default: true
64
+ },
65
+ /**
66
+ * When true, displays a "Clear all" button in the dropdown.
67
+ */
68
+ showClearAll: {
69
+ type: Boolean,
70
+ required: false,
71
+ default: false
72
+ },
73
+ /**
74
+ * Text for the "Clear all" button.
75
+ */
76
+ clearAllText: {
77
+ type: String,
78
+ required: false,
79
+ default: 'Clear all'
80
+ },
81
+ /**
82
+ * CSS class(es) to apply to the "Clear all" button text.
83
+ */
84
+ clearAllTextClass: {
85
+ type: String,
86
+ required: false,
87
+ default: 'gl-px-5'
88
+ },
89
+ /**
90
+ * Text to display on the dropdown toggle button.
91
+ */
92
+ text: {
93
+ type: String,
94
+ required: false,
95
+ default: ''
96
+ },
97
+ /**
98
+ * When true, displays a title above highlighted items.
99
+ */
100
+ showHighlightedItemsTitle: {
101
+ type: Boolean,
102
+ required: false,
103
+ default: false
104
+ },
105
+ /**
106
+ * Title text to display above highlighted items.
107
+ */
108
+ highlightedItemsTitle: {
109
+ type: String,
110
+ required: false,
111
+ default: 'Selected'
112
+ },
113
+ /**
114
+ * CSS class(es) to apply to the highlighted items title.
115
+ */
116
+ highlightedItemsTitleClass: {
117
+ type: String,
118
+ required: false,
119
+ default: 'gl-px-5'
120
+ },
121
+ /**
122
+ * When true, visually hides the button text but keeps it accessible to screen readers.
123
+ */
124
+ textSrOnly: {
125
+ type: Boolean,
126
+ required: false,
127
+ default: false
128
+ },
129
+ /**
130
+ * When true, renders the dropdown as a split button with separate action and toggle areas.
131
+ */
132
+ split: {
133
+ type: Boolean,
134
+ required: false,
135
+ default: false
136
+ },
137
+ /**
138
+ * Category of the dropdown button.
139
+ */
140
+ category: {
141
+ type: String,
142
+ required: false,
143
+ default: buttonCategoryOptions.primary,
144
+ validator: value => Object.keys(buttonCategoryOptions).includes(value)
145
+ },
146
+ /**
147
+ * Visual variant of the dropdown button.
148
+ */
149
+ variant: {
150
+ type: String,
151
+ required: false,
152
+ default: dropdownVariantOptions.default,
153
+ validator: value => Object.keys(dropdownVariantOptions).includes(value)
154
+ },
155
+ /**
156
+ * Size of the dropdown button.
157
+ */
158
+ size: {
159
+ type: String,
160
+ required: false,
161
+ default: 'medium',
162
+ validator: value => Object.keys(buttonSizeOptions).includes(value)
163
+ },
164
+ /**
165
+ * Icon name to display in the dropdown button.
166
+ */
167
+ icon: {
168
+ type: String,
169
+ required: false,
170
+ default: null
171
+ },
172
+ /**
173
+ * When true, renders the dropdown button at 100% width.
174
+ */
175
+ block: {
176
+ type: Boolean,
177
+ required: false,
178
+ default: false
179
+ },
180
+ /**
181
+ * When true, disables the dropdown button and prevents interaction.
182
+ */
183
+ disabled: {
184
+ type: Boolean,
185
+ required: false,
186
+ default: false
187
+ },
188
+ /**
189
+ * When true, displays a loading indicator in the dropdown button.
190
+ */
191
+ loading: {
192
+ type: Boolean,
193
+ required: false,
194
+ default: false
195
+ },
196
+ /**
197
+ * CSS class(es) to apply to the dropdown toggle button.
198
+ */
199
+ toggleClass: {
200
+ type: [String, Array, Object],
201
+ required: false,
202
+ default: null
203
+ },
204
+ /**
205
+ * When true, aligns the dropdown menu to the right.
206
+ */
207
+ right: {
208
+ type: Boolean,
209
+ required: false,
210
+ default: false
211
+ },
212
+ /**
213
+ * Custom Popper.js options for dropdown positioning.
214
+ */
215
+ popperOpts: {
216
+ type: Object,
217
+ required: false,
218
+ default: null
219
+ },
220
+ /**
221
+ * When true, prevents the dropdown from flipping to fit in the viewport.
222
+ */
223
+ noFlip: {
224
+ type: Boolean,
225
+ required: false,
226
+ default: false
227
+ },
228
+ /**
229
+ * URL for the split button's main action (when split is true).
230
+ */
231
+ splitHref: {
232
+ type: String,
233
+ required: false,
234
+ default: ''
235
+ }
236
+ },
237
+ computed: {
238
+ renderCaret() {
239
+ return !this.split;
240
+ },
241
+ isIconOnly() {
242
+ var _this$text;
243
+ return Boolean(this.icon && (!((_this$text = this.text) !== null && _this$text !== void 0 && _this$text.length) || this.textSrOnly) && !this.hasSlotContents('button-text'));
244
+ },
245
+ isIconWithText() {
246
+ var _this$text2;
247
+ return Boolean(this.icon && ((_this$text2 = this.text) === null || _this$text2 === void 0 ? void 0 : _this$text2.length) && !this.textSrOnly);
248
+ },
249
+ toggleButtonClasses() {
250
+ return [this.toggleClass, {
251
+ 'gl-button': true,
252
+ 'gl-dropdown-toggle': true,
253
+ [`btn-${this.variant}-secondary`]: this.category === buttonCategoryOptions.secondary || this.category === buttonCategoryOptions.tertiary && this.split,
254
+ [`btn-${this.variant}-tertiary`]: this.category === buttonCategoryOptions.tertiary && !this.split,
255
+ 'dropdown-icon-only': this.isIconOnly,
256
+ 'dropdown-icon-text': this.isIconWithText
257
+ }];
258
+ },
259
+ splitButtonClasses() {
260
+ return [this.toggleClass, {
261
+ 'gl-button': true,
262
+ 'split-content-button': Boolean(this.text),
263
+ 'icon-split-content-button': Boolean(this.icon),
264
+ [`btn-${this.variant}-secondary`]: this.category === buttonCategoryOptions.secondary || this.category === buttonCategoryOptions.tertiary
265
+ }];
266
+ },
267
+ buttonText() {
268
+ return this.split && this.icon ? null : this.text;
269
+ },
270
+ hasHighlightedItemsContent() {
271
+ return this.hasSlotContents('highlighted-items');
272
+ },
273
+ hasHighlightedItemsOrClearAll() {
274
+ return this.hasHighlightedItemsContent && this.showHighlightedItemsTitle || this.showClearAll;
275
+ },
276
+ popperOptions() {
277
+ return merge({}, DefaultPopperOptions, this.popperOpts);
278
+ }
279
+ },
280
+ methods: {
281
+ hasSlotContents(slotName) {
282
+ var _this$$scopedSlots$sl, _this$$scopedSlots;
283
+ return Boolean((_this$$scopedSlots$sl = (_this$$scopedSlots = this.$scopedSlots)[slotName]) === null || _this$$scopedSlots$sl === void 0 ? void 0 : _this$$scopedSlots$sl.call(_this$$scopedSlots));
284
+ },
285
+ show() {
286
+ this.$refs.dropdown.show(...arguments);
287
+ },
288
+ hide() {
289
+ this.$refs.dropdown.hide(...arguments);
290
+ }
291
+ }
292
+ };
293
+
294
+ /* script */
295
+ const __vue_script__ = script;
296
+
297
+ /* template */
298
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown',_vm._g(_vm._b({ref:"dropdown",staticClass:"gl-dropdown",attrs:{"split":_vm.split,"variant":_vm.variant,"size":_vm.buttonSize,"toggle-class":[_vm.toggleButtonClasses],"split-class":_vm.splitButtonClasses,"block":_vm.block,"disabled":_vm.disabled || _vm.loading,"right":_vm.right,"popper-opts":_vm.popperOptions,"no-flip":_vm.noFlip,"split-href":_vm.splitHref},scopedSlots:_vm._u([{key:"button-content",fn:function(){return [_vm._t("button-content",function(){return [(_vm.loading)?_c('gl-loading-icon',{class:{ 'gl-mr-2': !_vm.isIconOnly }}):_vm._e(),_vm._v(" "),(_vm.icon && !(_vm.isIconOnly && _vm.loading))?_c('gl-icon',{staticClass:"dropdown-icon",attrs:{"name":_vm.icon}}):_vm._e(),_vm._v(" "),_c('span',{staticClass:"gl-dropdown-button-text",class:{ 'gl-sr-only': _vm.textSrOnly }},[_vm._t("button-text",function(){return [_vm._v(_vm._s(_vm.buttonText))]})],2),_vm._v(" "),(_vm.renderCaret)?_c('gl-icon',{staticClass:"gl-button-icon dropdown-chevron",attrs:{"name":"chevron-down"}}):_vm._e()]})]},proxy:true}],null,true)},'b-dropdown',_vm.$attrs,false),_vm.$listeners),[_c('div',{staticClass:"gl-dropdown-inner"},[(_vm.hasSlotContents('header') || _vm.headerText)?_c('div',{staticClass:"gl-dropdown-header",class:{ '!gl-border-b-0': _vm.hideHeaderBorder }},[(_vm.headerText)?_c('p',{staticClass:"gl-dropdown-header-top"},[_vm._v("\n "+_vm._s(_vm.headerText)+"\n ")]):_vm._e(),_vm._v(" "),_vm._t("header")],2):_vm._e(),_vm._v(" "),(_vm.hasHighlightedItemsOrClearAll)?_c('div',{staticClass:"gl-flex gl-flex-row gl-items-center gl-justify-between"},[(_vm.hasHighlightedItemsContent && _vm.showHighlightedItemsTitle)?_c('div',{staticClass:"gl-justify-content-flex-start gl-flex gl-grow",class:_vm.highlightedItemsTitleClass},[_c('span',{staticClass:"gl-font-bold gl-text-strong",attrs:{"data-testid":"highlighted-items-title"}},[_vm._v(_vm._s(_vm.highlightedItemsTitle))])]):_vm._e(),_vm._v(" "),(_vm.showClearAll)?_c('div',{staticClass:"gl-flex gl-grow gl-justify-end",class:_vm.clearAllTextClass},[_c('gl-button',{attrs:{"size":"small","category":"tertiary","variant":"link","data-testid":"clear-all-button"},on:{"click":function($event){return _vm.$emit('clear-all', $event)}}},[_vm._v(_vm._s(_vm.clearAllText))])],1):_vm._e()]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"gl-dropdown-contents"},[(_vm.hasHighlightedItemsContent)?_c('div',{staticClass:"gl-overflow-visible",attrs:{"data-testid":"highlighted-items"}},[_vm._t("highlighted-items"),_vm._v(" "),_c('gl-dropdown-divider')],2):_vm._e(),_vm._v(" "),_vm._t("default")],2),_vm._v(" "),(_vm.hasSlotContents('footer'))?_c('div',{staticClass:"gl-dropdown-footer"},[_vm._t("footer")],2):_vm._e()])])};
299
+ var __vue_staticRenderFns__ = [];
300
+
301
+ /* style */
302
+ const __vue_inject_styles__ = undefined;
303
+ /* scoped */
304
+ const __vue_scope_id__ = undefined;
305
+ /* module identifier */
306
+ const __vue_module_identifier__ = undefined;
307
+ /* functional template */
308
+ const __vue_is_functional_template__ = false;
309
+ /* style inject */
310
+
311
+ /* style inject SSR */
312
+
313
+ /* style inject shadow dom */
314
+
315
+
316
+
317
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
318
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
319
+ __vue_inject_styles__,
320
+ __vue_script__,
321
+ __vue_scope_id__,
322
+ __vue_is_functional_template__,
323
+ __vue_module_identifier__,
324
+ false,
325
+ undefined,
326
+ undefined,
327
+ undefined
328
+ );
329
+
330
+ export { DefaultPopperOptions, __vue_component__ as default };
@@ -0,0 +1,48 @@
1
+ import { BDropdownDivider } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-divider';
2
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
3
+
4
+ var script = {
5
+ name: 'GlDropdownDivider',
6
+ components: {
7
+ BDropdownDivider
8
+ },
9
+ inheritAttrs: false
10
+ };
11
+
12
+ /* script */
13
+ const __vue_script__ = script;
14
+
15
+ /* template */
16
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown-divider',_vm._g(_vm._b({staticClass:"gl-dropdown-divider"},'b-dropdown-divider',_vm.$attrs,false),_vm.$listeners))};
17
+ var __vue_staticRenderFns__ = [];
18
+
19
+ /* style */
20
+ const __vue_inject_styles__ = undefined;
21
+ /* scoped */
22
+ const __vue_scope_id__ = undefined;
23
+ /* module identifier */
24
+ const __vue_module_identifier__ = undefined;
25
+ /* functional template */
26
+ const __vue_is_functional_template__ = false;
27
+ /* style inject */
28
+
29
+ /* style inject SSR */
30
+
31
+ /* style inject shadow dom */
32
+
33
+
34
+
35
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
36
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
37
+ __vue_inject_styles__,
38
+ __vue_script__,
39
+ __vue_scope_id__,
40
+ __vue_is_functional_template__,
41
+ __vue_module_identifier__,
42
+ false,
43
+ undefined,
44
+ undefined,
45
+ undefined
46
+ );
47
+
48
+ export { __vue_component__ as default };
@@ -0,0 +1,48 @@
1
+ import { BDropdownForm } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-form';
2
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
3
+
4
+ var script = {
5
+ name: 'GlDropdownForm',
6
+ components: {
7
+ BDropdownForm
8
+ },
9
+ inheritAttrs: false
10
+ };
11
+
12
+ /* script */
13
+ const __vue_script__ = script;
14
+
15
+ /* template */
16
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown-form',_vm._g(_vm._b({attrs:{"form-class":"gl-p-0"}},'b-dropdown-form',_vm.$attrs,false),_vm.$listeners),[_vm._t("default")],2)};
17
+ var __vue_staticRenderFns__ = [];
18
+
19
+ /* style */
20
+ const __vue_inject_styles__ = undefined;
21
+ /* scoped */
22
+ const __vue_scope_id__ = undefined;
23
+ /* module identifier */
24
+ const __vue_module_identifier__ = undefined;
25
+ /* functional template */
26
+ const __vue_is_functional_template__ = false;
27
+ /* style inject */
28
+
29
+ /* style inject SSR */
30
+
31
+ /* style inject shadow dom */
32
+
33
+
34
+
35
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
36
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
37
+ __vue_inject_styles__,
38
+ __vue_script__,
39
+ __vue_scope_id__,
40
+ __vue_is_functional_template__,
41
+ __vue_module_identifier__,
42
+ false,
43
+ undefined,
44
+ undefined,
45
+ undefined
46
+ );
47
+
48
+ export { __vue_component__ as default };
@@ -0,0 +1,175 @@
1
+ import { BDropdownItem } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-item';
2
+ import { BDropdownItemButton } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button';
3
+ import { variantCssColorMap } from '../../../utils/constants';
4
+ import GlAvatar from '../avatar/avatar';
5
+ import GlButton from '../button/button';
6
+ import GlIcon from '../icon/icon';
7
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
8
+
9
+ var script = {
10
+ name: 'GlDropdownItem',
11
+ components: {
12
+ GlIcon,
13
+ GlAvatar,
14
+ GlButton
15
+ },
16
+ inheritAttrs: false,
17
+ props: {
18
+ /**
19
+ * URL for the avatar image to display
20
+ */
21
+ avatarUrl: {
22
+ type: String,
23
+ required: false,
24
+ default: ''
25
+ },
26
+ /**
27
+ * Color variant for the icon on the left side
28
+ */
29
+ iconColor: {
30
+ type: String,
31
+ required: false,
32
+ default: ''
33
+ },
34
+ /**
35
+ * Name of the icon to display on the left side
36
+ */
37
+ iconName: {
38
+ type: String,
39
+ required: false,
40
+ default: ''
41
+ },
42
+ /**
43
+ * Aria label for the right icon button
44
+ */
45
+ iconRightAriaLabel: {
46
+ type: String,
47
+ required: false,
48
+ default: ''
49
+ },
50
+ /**
51
+ * Name of the icon to display on the right side
52
+ */
53
+ iconRightName: {
54
+ type: String,
55
+ required: false,
56
+ default: ''
57
+ },
58
+ /**
59
+ * Whether the dropdown item is checked
60
+ */
61
+ isChecked: {
62
+ type: Boolean,
63
+ required: false,
64
+ default: false
65
+ },
66
+ /**
67
+ * Whether to show a check icon for this item
68
+ */
69
+ isCheckItem: {
70
+ type: Boolean,
71
+ required: false,
72
+ default: false
73
+ },
74
+ /**
75
+ * Whether to center the check icon vertically
76
+ */
77
+ isCheckCentered: {
78
+ type: Boolean,
79
+ required: false,
80
+ default: false
81
+ },
82
+ /**
83
+ * Secondary text to display below the main content
84
+ */
85
+ secondaryText: {
86
+ type: String,
87
+ required: false,
88
+ default: ''
89
+ },
90
+ /**
91
+ * ARIA role for the dropdown item
92
+ */
93
+ role: {
94
+ type: String,
95
+ required: false,
96
+ default: null
97
+ }
98
+ },
99
+ computed: {
100
+ bootstrapComponent() {
101
+ const {
102
+ href,
103
+ to
104
+ } = this.$attrs;
105
+ // Support 'href' and Vue Router's 'to'
106
+ return href || to ? BDropdownItem : BDropdownItemButton;
107
+ },
108
+ bootstrapComponentProps() {
109
+ const props = {
110
+ ...this.$attrs
111
+ };
112
+ if (this.role) props.role = this.role;
113
+ return props;
114
+ },
115
+ iconColorCss() {
116
+ return variantCssColorMap[this.iconColor] || 'gl-fill-icon-default';
117
+ },
118
+ shouldShowCheckIcon() {
119
+ return this.isChecked || this.isCheckItem;
120
+ },
121
+ checkedClasses() {
122
+ if (this.isCheckCentered) {
123
+ return '';
124
+ }
125
+ return 'gl-mt-3 gl-self-start';
126
+ }
127
+ },
128
+ methods: {
129
+ handleClickIconRight() {
130
+ /**
131
+ * Emitted when right icon is clicked.
132
+ * @event handleClickIconRight
133
+ */
134
+ this.$emit('click-icon-right');
135
+ }
136
+ }
137
+ };
138
+
139
+ /* script */
140
+ const __vue_script__ = script;
141
+
142
+ /* template */
143
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.bootstrapComponent,_vm._g(_vm._b({tag:"component",staticClass:"gl-dropdown-item"},'component',_vm.bootstrapComponentProps,false),_vm.$listeners),[(_vm.shouldShowCheckIcon)?_c('gl-icon',{class:['gl-dropdown-item-check-icon', { 'gl-invisible': !_vm.isChecked }, _vm.checkedClasses],attrs:{"name":"mobile-issue-close","data-testid":"dropdown-item-checkbox"}}):_vm._e(),_vm._v(" "),(_vm.iconName)?_c('gl-icon',{class:['gl-dropdown-item-icon', _vm.iconColorCss],attrs:{"name":_vm.iconName}}):_vm._e(),_vm._v(" "),(_vm.avatarUrl)?_c('gl-avatar',{attrs:{"size":32,"src":_vm.avatarUrl}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"gl-dropdown-item-text-wrapper"},[_c('p',{staticClass:"gl-dropdown-item-text-primary"},[_vm._t("default")],2),_vm._v(" "),(_vm.secondaryText)?_c('p',{staticClass:"gl-dropdown-item-text-secondary"},[_vm._v(_vm._s(_vm.secondaryText))]):_vm._e()]),_vm._v(" "),(_vm.iconRightName)?_c('gl-button',{attrs:{"size":"small","icon":_vm.iconRightName,"aria-label":_vm.iconRightAriaLabel || _vm.iconRightName},on:{"click":function($event){$event.stopPropagation();$event.preventDefault();return _vm.handleClickIconRight.apply(null, arguments)}}}):_vm._e()],1)};
144
+ var __vue_staticRenderFns__ = [];
145
+
146
+ /* style */
147
+ const __vue_inject_styles__ = undefined;
148
+ /* scoped */
149
+ const __vue_scope_id__ = undefined;
150
+ /* module identifier */
151
+ const __vue_module_identifier__ = undefined;
152
+ /* functional template */
153
+ const __vue_is_functional_template__ = false;
154
+ /* style inject */
155
+
156
+ /* style inject SSR */
157
+
158
+ /* style inject shadow dom */
159
+
160
+
161
+
162
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
163
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
164
+ __vue_inject_styles__,
165
+ __vue_script__,
166
+ __vue_scope_id__,
167
+ __vue_is_functional_template__,
168
+ __vue_module_identifier__,
169
+ false,
170
+ undefined,
171
+ undefined,
172
+ undefined
173
+ );
174
+
175
+ export { __vue_component__ as default };
@@ -0,0 +1,48 @@
1
+ import { BDropdownHeader } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-header';
2
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
3
+
4
+ var script = {
5
+ name: 'GlDropdownHeader',
6
+ components: {
7
+ BDropdownHeader
8
+ },
9
+ inheritAttrs: false
10
+ };
11
+
12
+ /* script */
13
+ const __vue_script__ = script;
14
+
15
+ /* template */
16
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown-header',_vm._g(_vm._b({staticClass:"gl-dropdown-section-header"},'b-dropdown-header',_vm.$attrs,false),_vm.$listeners),[_vm._t("default")],2)};
17
+ var __vue_staticRenderFns__ = [];
18
+
19
+ /* style */
20
+ const __vue_inject_styles__ = undefined;
21
+ /* scoped */
22
+ const __vue_scope_id__ = undefined;
23
+ /* module identifier */
24
+ const __vue_module_identifier__ = undefined;
25
+ /* functional template */
26
+ const __vue_is_functional_template__ = false;
27
+ /* style inject */
28
+
29
+ /* style inject SSR */
30
+
31
+ /* style inject shadow dom */
32
+
33
+
34
+
35
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
36
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
37
+ __vue_inject_styles__,
38
+ __vue_script__,
39
+ __vue_scope_id__,
40
+ __vue_is_functional_template__,
41
+ __vue_module_identifier__,
42
+ false,
43
+ undefined,
44
+ undefined,
45
+ undefined
46
+ );
47
+
48
+ export { __vue_component__ as default };
@@ -0,0 +1,48 @@
1
+ import { BDropdownText } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-text';
2
+ import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
3
+
4
+ var script = {
5
+ name: 'GlDropdownText',
6
+ components: {
7
+ BDropdownText
8
+ },
9
+ inheritAttrs: false
10
+ };
11
+
12
+ /* script */
13
+ const __vue_script__ = script;
14
+
15
+ /* template */
16
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-dropdown-text',_vm._g(_vm._b({staticClass:"gl-dropdown-text"},'b-dropdown-text',_vm.$attrs,false),_vm.$listeners),[_vm._t("default")],2)};
17
+ var __vue_staticRenderFns__ = [];
18
+
19
+ /* style */
20
+ const __vue_inject_styles__ = undefined;
21
+ /* scoped */
22
+ const __vue_scope_id__ = undefined;
23
+ /* module identifier */
24
+ const __vue_module_identifier__ = undefined;
25
+ /* functional template */
26
+ const __vue_is_functional_template__ = false;
27
+ /* style inject */
28
+
29
+ /* style inject SSR */
30
+
31
+ /* style inject shadow dom */
32
+
33
+
34
+
35
+ const __vue_component__ = /*#__PURE__*/__vue_normalize__(
36
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
37
+ __vue_inject_styles__,
38
+ __vue_script__,
39
+ __vue_scope_id__,
40
+ __vue_is_functional_template__,
41
+ __vue_module_identifier__,
42
+ false,
43
+ undefined,
44
+ undefined,
45
+ undefined
46
+ );
47
+
48
+ export { __vue_component__ as default };