@gitlab/ui 39.2.0 → 39.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 (252) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/components/base/modal/modal.js +14 -2
  3. package/dist/index.css +2 -2
  4. package/dist/index.css.map +1 -1
  5. package/dist/utility_classes.css +1 -1
  6. package/dist/utility_classes.css.map +1 -1
  7. package/package.json +5 -12
  8. package/scss_to_js/scss_variables.js +6 -2
  9. package/scss_to_js/scss_variables.json +24 -4
  10. package/src/components/base/avatar_link/avatar_link.scss +1 -0
  11. package/src/components/base/badge/badge.scss +1 -1
  12. package/src/components/base/breadcrumb/breadcrumb.scss +1 -1
  13. package/src/components/base/button/button.scss +34 -34
  14. package/src/components/base/carousel/carousel.scss +7 -0
  15. package/src/components/base/datepicker/datepicker.scss +4 -0
  16. package/src/components/base/dropdown/dropdown.scss +8 -0
  17. package/src/components/base/dropdown/dropdown_item.scss +0 -1
  18. package/src/components/base/form/form_checkbox/form_checkbox.scss +1 -1
  19. package/src/components/base/form/form_input/form_input.scss +2 -2
  20. package/src/components/base/form/form_select/form_select.scss +2 -2
  21. package/src/components/base/label/label.scss +2 -1
  22. package/src/components/base/link/link.scss +1 -1
  23. package/src/components/base/link/link.stories.js +15 -0
  24. package/src/components/base/modal/modal.spec.js +20 -0
  25. package/src/components/base/modal/modal.vue +14 -1
  26. package/src/components/base/nav/nav.scss +7 -0
  27. package/src/components/base/pagination/pagination.scss +14 -7
  28. package/src/components/base/path/path.scss +29 -5
  29. package/src/components/base/search_box_by_click/search_box_by_click.scss +1 -1
  30. package/src/components/base/table/table.scss +6 -0
  31. package/src/components/base/token/token.scss +6 -0
  32. package/src/components/base/token_selector/token_selector.scss +2 -2
  33. package/src/components/shared_components/close_button/close_button.scss +11 -11
  34. package/src/scss/components.scss +3 -1
  35. package/src/scss/mixins.scss +26 -4
  36. package/src/scss/utilities.scss +0 -8
  37. package/src/scss/utility-mixins/outline.scss +1 -1
  38. package/src/scss/variables.scss +8 -4
  39. package/dist/components/base/accordion/accordion.documentation.js +0 -8
  40. package/dist/components/base/accordion/accordion_item.documentation.js +0 -7
  41. package/dist/components/base/alert/alert.documentation.js +0 -13
  42. package/dist/components/base/avatar/avatar.documentation.js +0 -8
  43. package/dist/components/base/avatar_labeled/avatar_labeled.documentation.js +0 -8
  44. package/dist/components/base/avatar_link/avatar_link.documentation.js +0 -8
  45. package/dist/components/base/avatars_inline/avatars_inline.documentation.js +0 -13
  46. package/dist/components/base/badge/badge.documentation.js +0 -8
  47. package/dist/components/base/banner/banner.documentation.js +0 -8
  48. package/dist/components/base/breadcrumb/breadcrumb.documentation.js +0 -8
  49. package/dist/components/base/broadcast_message/broadcast_message.documentation.js +0 -8
  50. package/dist/components/base/button/button.documentation.js +0 -24
  51. package/dist/components/base/button_group/button_group.documentation.js +0 -8
  52. package/dist/components/base/card/card.documentation.js +0 -13
  53. package/dist/components/base/carousel/carousel.documentation.js +0 -8
  54. package/dist/components/base/collapse/collapse.documentation.js +0 -7
  55. package/dist/components/base/datepicker/datepicker.documentation.js +0 -7
  56. package/dist/components/base/daterange_picker/daterange_picker.documentation.js +0 -8
  57. package/dist/components/base/drawer/drawer.documentation.js +0 -8
  58. package/dist/components/base/dropdown/dropdown.documentation.js +0 -8
  59. package/dist/components/base/dropdown/dropdown_item.documentation.js +0 -7
  60. package/dist/components/base/filtered_search/filtered_search.documentation.js +0 -13
  61. package/dist/components/base/filtered_search/filtered_search_suggestion.documentation.js +0 -7
  62. package/dist/components/base/filtered_search/filtered_search_suggestion_list.documentation.js +0 -7
  63. package/dist/components/base/filtered_search/filtered_search_term.documentation.js +0 -12
  64. package/dist/components/base/filtered_search/filtered_search_token.documentation.js +0 -12
  65. package/dist/components/base/filtered_search/filtered_search_token_segment.documentation.js +0 -12
  66. package/dist/components/base/form/form.documentation.js +0 -7
  67. package/dist/components/base/form/form_checkbox/form_checkbox.documentation.js +0 -8
  68. package/dist/components/base/form/form_checkbox_tree/form_checkbox_tree.documentation.js +0 -12
  69. package/dist/components/base/form/form_combobox/form_combobox.documentation.js +0 -13
  70. package/dist/components/base/form/form_group/form_group.documentation.js +0 -7
  71. package/dist/components/base/form/form_input/form_input.documentation.js +0 -8
  72. package/dist/components/base/form/form_input_group/form_input_group.documentation.js +0 -8
  73. package/dist/components/base/form/form_radio/form_radio.documentation.js +0 -8
  74. package/dist/components/base/form/form_radio_group/form_radio_group.documentation.js +0 -8
  75. package/dist/components/base/form/form_select/form_select.documentation.js +0 -8
  76. package/dist/components/base/form/form_text/form_text.documentation.js +0 -14
  77. package/dist/components/base/form/form_textarea/form_textarea.documentation.js +0 -7
  78. package/dist/components/base/form/input_group_text/input_group_text.documentation.js +0 -12
  79. package/dist/components/base/icon/icon.documentation.js +0 -8
  80. package/dist/components/base/infinite_scroll/examples/index.js +0 -49
  81. package/dist/components/base/infinite_scroll/examples/infinite_scroll.all_items.example.js +0 -49
  82. package/dist/components/base/infinite_scroll/examples/infinite_scroll.basic.example.js +0 -62
  83. package/dist/components/base/infinite_scroll/examples/infinite_scroll.finite_total_items.example.js +0 -72
  84. package/dist/components/base/infinite_scroll/examples/infinite_scroll.large_fetched_items.example.js +0 -62
  85. package/dist/components/base/infinite_scroll/examples/infinite_scroll.reverse.example.js +0 -63
  86. package/dist/components/base/infinite_scroll/examples/infinite_scroll.small_fetched_items.example.js +0 -62
  87. package/dist/components/base/infinite_scroll/examples/infinite_scroll.two_way.example.js +0 -94
  88. package/dist/components/base/infinite_scroll/infinite_scroll.documentation.js +0 -8
  89. package/dist/components/base/keyset_pagination/keyset_pagination.documentation.js +0 -13
  90. package/dist/components/base/label/label.documentation.js +0 -8
  91. package/dist/components/base/link/link.documentation.js +0 -7
  92. package/dist/components/base/loading_icon/loading_icon.documentation.js +0 -8
  93. package/dist/components/base/markdown/markdown.documentation.js +0 -12
  94. package/dist/components/base/modal/modal.documentation.js +0 -8
  95. package/dist/components/base/nav/nav.documentation.js +0 -12
  96. package/dist/components/base/navbar/navbar.documentation.js +0 -12
  97. package/dist/components/base/paginated_list/paginated_list.documentation.js +0 -7
  98. package/dist/components/base/pagination/pagination.documentation.js +0 -8
  99. package/dist/components/base/path/path.documentation.js +0 -8
  100. package/dist/components/base/popover/popover.documentation.js +0 -5
  101. package/dist/components/base/search_box_by_click/search_box_by_click.documentation.js +0 -8
  102. package/dist/components/base/search_box_by_type/search_box_by_type.documentation.js +0 -8
  103. package/dist/components/base/segmented_control/segmented_control.documentation.js +0 -8
  104. package/dist/components/base/skeleton_loader/skeleton_loader.documentation.js +0 -13
  105. package/dist/components/base/skeleton_loading/skeleton_loading.documentation.js +0 -7
  106. package/dist/components/base/sorting/sorting.documentation.js +0 -7
  107. package/dist/components/base/sorting/sorting_item.documentation.js +0 -8
  108. package/dist/components/base/table/table.documentation.js +0 -8
  109. package/dist/components/base/table_lite/table_lite.documentation.js +0 -13
  110. package/dist/components/base/tabs/tabs/tabs.documentation.js +0 -8
  111. package/dist/components/base/toast/toast.documentation.js +0 -8
  112. package/dist/components/base/toggle/toggle.documentation.js +0 -13
  113. package/dist/components/base/token/token.documentation.js +0 -5
  114. package/dist/components/base/token_selector/token_selector.documentation.js +0 -12
  115. package/dist/components/base/tooltip/tooltip.documentation.js +0 -8
  116. package/dist/components/charts/area/area.documentation.js +0 -5
  117. package/dist/components/charts/bar/bar.documentation.js +0 -8
  118. package/dist/components/charts/chart/chart.documentation.js +0 -7
  119. package/dist/components/charts/column/column.documentation.js +0 -5
  120. package/dist/components/charts/discrete_scatter/discrete_scatter.documentation.js +0 -5
  121. package/dist/components/charts/gauge/gauge.documentation.js +0 -12
  122. package/dist/components/charts/heatmap/heatmap.documentation.js +0 -8
  123. package/dist/components/charts/line/line.documentation.js +0 -8
  124. package/dist/components/charts/series_label/series_label.documentation.js +0 -7
  125. package/dist/components/charts/single_stat/single_stat.documentation.js +0 -7
  126. package/dist/components/charts/sparkline/sparkline.documentation.js +0 -8
  127. package/dist/components/charts/stacked_column/stacked_column.documentation.js +0 -8
  128. package/dist/components/charts/tooltip/tooltip.documentation.js +0 -8
  129. package/dist/components/editors/rich_text_editor/rich_text_editor.documentation.js +0 -12
  130. package/dist/components/regions/dashboard_skeleton/dashboard_skeleton.documentation.js +0 -7
  131. package/dist/components/regions/empty_state/empty_state.documentation.js +0 -7
  132. package/dist/components/utilities/animated_number/animated_number.documentation.js +0 -13
  133. package/dist/components/utilities/friendly_wrap/friendly_wrap.documentation.js +0 -7
  134. package/dist/components/utilities/intersection_observer/intersection_observer.documentation.js +0 -12
  135. package/dist/components/utilities/intersperse/intersperse.documentation.js +0 -8
  136. package/dist/components/utilities/sprintf/sprintf.documentation.js +0 -8
  137. package/dist/components/utilities/truncate/truncate.documentation.js +0 -7
  138. package/dist/directives/hover_load/hover_load.documentation.js +0 -13
  139. package/dist/directives/outside/outside.documentation.js +0 -13
  140. package/dist/directives/resize_observer/resize_observer.documentation.js +0 -8
  141. package/dist/directives/safe_html/safe_html.documentation.js +0 -8
  142. package/dist/directives/safe_link/safe_link.documentation.js +0 -8
  143. package/documentation/all_components.js +0 -8
  144. package/documentation/components/component_documentation_generator.vue +0 -321
  145. package/documentation/components/example_display.vue +0 -231
  146. package/documentation/components/example_explorer.vue +0 -63
  147. package/documentation/components_documentation.js +0 -111
  148. package/documentation/index.js +0 -8
  149. package/src/components/base/accordion/accordion.documentation.js +0 -6
  150. package/src/components/base/accordion/accordion_item.documentation.js +0 -5
  151. package/src/components/base/alert/alert.documentation.js +0 -6
  152. package/src/components/base/avatar/avatar.documentation.js +0 -6
  153. package/src/components/base/avatar_labeled/avatar_labeled.documentation.js +0 -6
  154. package/src/components/base/avatar_link/avatar_link.documentation.js +0 -6
  155. package/src/components/base/avatars_inline/avatars_inline.documentation.js +0 -6
  156. package/src/components/base/badge/badge.documentation.js +0 -6
  157. package/src/components/base/banner/banner.documentation.js +0 -6
  158. package/src/components/base/breadcrumb/breadcrumb.documentation.js +0 -6
  159. package/src/components/base/broadcast_message/broadcast_message.documentation.js +0 -6
  160. package/src/components/base/button/button.documentation.js +0 -24
  161. package/src/components/base/button_group/button_group.documentation.js +0 -6
  162. package/src/components/base/card/card.documentation.js +0 -6
  163. package/src/components/base/carousel/carousel.documentation.js +0 -6
  164. package/src/components/base/collapse/collapse.documentation.js +0 -5
  165. package/src/components/base/datepicker/datepicker.documentation.js +0 -5
  166. package/src/components/base/daterange_picker/daterange_picker.documentation.js +0 -6
  167. package/src/components/base/drawer/drawer.documentation.js +0 -6
  168. package/src/components/base/dropdown/dropdown.documentation.js +0 -6
  169. package/src/components/base/dropdown/dropdown_item.documentation.js +0 -5
  170. package/src/components/base/filtered_search/filtered_search.documentation.js +0 -6
  171. package/src/components/base/filtered_search/filtered_search_suggestion.documentation.js +0 -5
  172. package/src/components/base/filtered_search/filtered_search_suggestion_list.documentation.js +0 -5
  173. package/src/components/base/filtered_search/filtered_search_term.documentation.js +0 -5
  174. package/src/components/base/filtered_search/filtered_search_token.documentation.js +0 -5
  175. package/src/components/base/filtered_search/filtered_search_token_segment.documentation.js +0 -5
  176. package/src/components/base/form/form.documentation.js +0 -5
  177. package/src/components/base/form/form_checkbox/form_checkbox.documentation.js +0 -6
  178. package/src/components/base/form/form_checkbox_tree/form_checkbox_tree.documentation.js +0 -5
  179. package/src/components/base/form/form_combobox/form_combobox.documentation.js +0 -6
  180. package/src/components/base/form/form_group/form_group.documentation.js +0 -5
  181. package/src/components/base/form/form_input/form_input.documentation.js +0 -6
  182. package/src/components/base/form/form_input_group/form_input_group.documentation.js +0 -6
  183. package/src/components/base/form/form_radio/form_radio.documentation.js +0 -6
  184. package/src/components/base/form/form_radio_group/form_radio_group.documentation.js +0 -6
  185. package/src/components/base/form/form_select/form_select.documentation.js +0 -6
  186. package/src/components/base/form/form_text/form_text.documentation.js +0 -7
  187. package/src/components/base/form/form_textarea/form_textarea.documentation.js +0 -5
  188. package/src/components/base/form/input_group_text/input_group_text.documentation.js +0 -5
  189. package/src/components/base/icon/icon.documentation.js +0 -6
  190. package/src/components/base/infinite_scroll/examples/index.js +0 -57
  191. package/src/components/base/infinite_scroll/examples/infinite_scroll.all_items.example.vue +0 -25
  192. package/src/components/base/infinite_scroll/examples/infinite_scroll.basic.example.vue +0 -43
  193. package/src/components/base/infinite_scroll/examples/infinite_scroll.finite_total_items.example.vue +0 -44
  194. package/src/components/base/infinite_scroll/examples/infinite_scroll.large_fetched_items.example.vue +0 -43
  195. package/src/components/base/infinite_scroll/examples/infinite_scroll.reverse.example.vue +0 -46
  196. package/src/components/base/infinite_scroll/examples/infinite_scroll.small_fetched_items.example.vue +0 -43
  197. package/src/components/base/infinite_scroll/examples/infinite_scroll.two_way.example.vue +0 -75
  198. package/src/components/base/infinite_scroll/infinite_scroll.documentation.js +0 -6
  199. package/src/components/base/keyset_pagination/keyset_pagination.documentation.js +0 -6
  200. package/src/components/base/label/label.documentation.js +0 -6
  201. package/src/components/base/link/link.documentation.js +0 -5
  202. package/src/components/base/loading_icon/loading_icon.documentation.js +0 -6
  203. package/src/components/base/markdown/markdown.documentation.js +0 -5
  204. package/src/components/base/modal/modal.documentation.js +0 -6
  205. package/src/components/base/nav/nav.documentation.js +0 -5
  206. package/src/components/base/navbar/navbar.documentation.js +0 -5
  207. package/src/components/base/paginated_list/paginated_list.documentation.js +0 -5
  208. package/src/components/base/pagination/pagination.documentation.js +0 -6
  209. package/src/components/base/path/path.documentation.js +0 -6
  210. package/src/components/base/popover/popover.documentation.js +0 -3
  211. package/src/components/base/search_box_by_click/search_box_by_click.documentation.js +0 -6
  212. package/src/components/base/search_box_by_type/search_box_by_type.documentation.js +0 -6
  213. package/src/components/base/segmented_control/segmented_control.documentation.js +0 -6
  214. package/src/components/base/skeleton_loader/skeleton_loader.documentation.js +0 -6
  215. package/src/components/base/skeleton_loading/skeleton_loading.documentation.js +0 -5
  216. package/src/components/base/sorting/sorting.documentation.js +0 -5
  217. package/src/components/base/sorting/sorting_item.documentation.js +0 -6
  218. package/src/components/base/table/table.documentation.js +0 -6
  219. package/src/components/base/table_lite/table_lite.documentation.js +0 -6
  220. package/src/components/base/tabs/tabs/tabs.documentation.js +0 -6
  221. package/src/components/base/toast/toast.documentation.js +0 -6
  222. package/src/components/base/toggle/toggle.documentation.js +0 -6
  223. package/src/components/base/token/token.documentation.js +0 -3
  224. package/src/components/base/token_selector/token_selector.documentation.js +0 -5
  225. package/src/components/base/tooltip/tooltip.documentation.js +0 -6
  226. package/src/components/charts/area/area.documentation.js +0 -3
  227. package/src/components/charts/bar/bar.documentation.js +0 -6
  228. package/src/components/charts/chart/chart.documentation.js +0 -5
  229. package/src/components/charts/column/column.documentation.js +0 -3
  230. package/src/components/charts/discrete_scatter/discrete_scatter.documentation.js +0 -3
  231. package/src/components/charts/gauge/gauge.documentation.js +0 -5
  232. package/src/components/charts/heatmap/heatmap.documentation.js +0 -6
  233. package/src/components/charts/line/line.documentation.js +0 -6
  234. package/src/components/charts/series_label/series_label.documentation.js +0 -5
  235. package/src/components/charts/single_stat/single_stat.documentation.js +0 -5
  236. package/src/components/charts/sparkline/sparkline.documentation.js +0 -6
  237. package/src/components/charts/stacked_column/stacked_column.documentation.js +0 -6
  238. package/src/components/charts/tooltip/tooltip.documentation.js +0 -6
  239. package/src/components/editors/rich_text_editor/rich_text_editor.documentation.js +0 -5
  240. package/src/components/regions/dashboard_skeleton/dashboard_skeleton.documentation.js +0 -5
  241. package/src/components/regions/empty_state/empty_state.documentation.js +0 -5
  242. package/src/components/utilities/animated_number/animated_number.documentation.js +0 -6
  243. package/src/components/utilities/friendly_wrap/friendly_wrap.documentation.js +0 -5
  244. package/src/components/utilities/intersection_observer/intersection_observer.documentation.js +0 -5
  245. package/src/components/utilities/intersperse/intersperse.documentation.js +0 -6
  246. package/src/components/utilities/sprintf/sprintf.documentation.js +0 -6
  247. package/src/components/utilities/truncate/truncate.documentation.js +0 -5
  248. package/src/directives/hover_load/hover_load.documentation.js +0 -6
  249. package/src/directives/outside/outside.documentation.js +0 -6
  250. package/src/directives/resize_observer/resize_observer.documentation.js +0 -6
  251. package/src/directives/safe_html/safe_html.documentation.js +0 -6
  252. package/src/directives/safe_link/safe_link.documentation.js +0 -6
@@ -1,43 +0,0 @@
1
- <script>
2
- const ITEMS_BATCH_SIZE = 1200;
3
-
4
- export default {
5
- data() {
6
- return {
7
- isLoading: false,
8
- fetchedItems: ITEMS_BATCH_SIZE,
9
- loadTimer: null,
10
- };
11
- },
12
- methods: {
13
- bottomReached() {
14
- clearTimeout(this.loadTimer);
15
- this.isLoading = true;
16
- this.loadTimer = setTimeout(() => {
17
- this.fetchedItems += ITEMS_BATCH_SIZE;
18
- this.isLoading = false;
19
- }, 500);
20
- },
21
- },
22
- };
23
- </script>
24
- <template>
25
- <gl-infinite-scroll
26
- :max-list-height="285"
27
- :fetched-items="fetchedItems"
28
- @bottomReached="bottomReached"
29
- >
30
- <template #items>
31
- <ul class="list-group list-group-flushed list-unstyled">
32
- <li v-for="item in fetchedItems" :key="item" class="list-group-item">Item #{{ item }}</li>
33
- </ul>
34
- </template>
35
-
36
- <template #default>
37
- <div class="gl-mt-3">
38
- <gl-loading-icon v-if="isLoading" />
39
- <span v-else>Showing {{ fetchedItems }} of 1000+ items</span>
40
- </div>
41
- </template>
42
- </gl-infinite-scroll>
43
- </template>
@@ -1,46 +0,0 @@
1
- <script>
2
- const ITEMS_BATCH_SIZE = 5;
3
- const INIT_ITEMS_COUNT = 10;
4
-
5
- export default {
6
- data() {
7
- return {
8
- isLoading: false,
9
- fetchedItems: INIT_ITEMS_COUNT,
10
- loadTimer: null,
11
- };
12
- },
13
- methods: {
14
- topReached() {
15
- clearTimeout(this.loadTimer);
16
- this.isLoading = true;
17
- this.loadTimer = setTimeout(() => {
18
- this.fetchedItems += ITEMS_BATCH_SIZE;
19
- this.isLoading = false;
20
- }, 2000);
21
- },
22
- },
23
- };
24
- </script>
25
- <template>
26
- <gl-infinite-scroll :max-list-height="285" :fetched-items="fetchedItems" @topReached="topReached">
27
- <template #header>
28
- <div class="gl-h-6">
29
- <gl-loading-icon v-if="isLoading" />
30
- </div>
31
- </template>
32
- <template #items>
33
- <ul class="list-group list-group-flushed list-unstyled">
34
- <li v-for="item in fetchedItems" :key="item" class="list-group-item">
35
- Item #{{ Math.abs(item - fetchedItems) + 1 }}
36
- </li>
37
- </ul>
38
- </template>
39
-
40
- <template #default>
41
- <div class="gl-mt-3">
42
- <span>{{ fetchedItems }} items loaded, scroll up for more</span>
43
- </div>
44
- </template>
45
- </gl-infinite-scroll>
46
- </template>
@@ -1,43 +0,0 @@
1
- <script>
2
- const ITEMS_BATCH_SIZE = 60;
3
-
4
- export default {
5
- data() {
6
- return {
7
- isLoading: false,
8
- fetchedItems: ITEMS_BATCH_SIZE,
9
- loadTimer: null,
10
- };
11
- },
12
- methods: {
13
- bottomReached() {
14
- clearTimeout(this.loadTimer);
15
- this.isLoading = true;
16
- this.loadTimer = setTimeout(() => {
17
- this.fetchedItems += ITEMS_BATCH_SIZE;
18
- this.isLoading = false;
19
- }, 500);
20
- },
21
- },
22
- };
23
- </script>
24
- <template>
25
- <gl-infinite-scroll
26
- :max-list-height="285"
27
- :fetched-items="fetchedItems"
28
- @bottomReached="bottomReached"
29
- >
30
- <template #items>
31
- <ul class="list-group list-group-flushed list-unstyled">
32
- <li v-for="item in fetchedItems" :key="item" class="list-group-item">Item #{{ item }}</li>
33
- </ul>
34
- </template>
35
-
36
- <template #default>
37
- <div class="gl-mt-3">
38
- <gl-loading-icon v-if="isLoading" />
39
- <span v-else>Showing {{ fetchedItems }} of 1000+ items</span>
40
- </div>
41
- </template>
42
- </gl-infinite-scroll>
43
- </template>
@@ -1,75 +0,0 @@
1
- <script>
2
- const ITEMS_BATCH_SIZE = 10;
3
- const INIT_ITEMS_COUNT = 20;
4
-
5
- const colors = ['Violet', 'Indigo', 'Blue', 'Green', 'Yellow', 'Orange', 'Red'];
6
- const planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune'];
7
-
8
- let key = 0;
9
- const createItem = () => {
10
- key += 1;
11
- return {
12
- key,
13
- content: `${colors[key % colors.length]} ${planets[key % planets.length]}`,
14
- };
15
- };
16
-
17
- const createArray = (num) => {
18
- const res = [];
19
- for (let i = 0; i < num; i += 1) {
20
- res.push(createItem());
21
- }
22
- return res;
23
- };
24
-
25
- export default {
26
- data() {
27
- return {
28
- isLoading: false,
29
- fetchedItems: createArray(INIT_ITEMS_COUNT),
30
- loadTimer: null,
31
- };
32
- },
33
- methods: {
34
- topReached() {
35
- clearTimeout(this.loadTimer);
36
- this.isLoading = true;
37
- this.loadTimer = setTimeout(() => {
38
- this.fetchedItems.unshift(...createArray(ITEMS_BATCH_SIZE));
39
- this.isLoading = false;
40
- }, 1000);
41
- },
42
- bottomReached() {
43
- clearTimeout(this.loadTimer);
44
- this.isLoading = true;
45
- this.loadTimer = setTimeout(() => {
46
- this.fetchedItems.push(...createArray(ITEMS_BATCH_SIZE));
47
- this.isLoading = false;
48
- }, 1000);
49
- },
50
- },
51
- };
52
- </script>
53
- <template>
54
- <gl-infinite-scroll
55
- :max-list-height="285"
56
- :fetched-items="fetchedItems.length"
57
- @topReached="topReached"
58
- @bottomReached="bottomReached"
59
- >
60
- <template #items>
61
- <ul class="list-group list-group-flushed list-unstyled">
62
- <li v-for="item in fetchedItems" :key="item.key" class="list-group-item">
63
- {{ item.content }}
64
- </li>
65
- </ul>
66
- </template>
67
-
68
- <template #default>
69
- <div class="gl-mt-3">
70
- <gl-loading-icon v-if="isLoading" />
71
- <span v-else>{{ fetchedItems.length }} items loaded, scroll up or down for more</span>
72
- </div>
73
- </template>
74
- </gl-infinite-scroll>
75
- </template>
@@ -1,6 +0,0 @@
1
- import description from './infinite_scroll.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import * as description from './keyset_pagination.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: true,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './label.vue';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './link.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './loading_icon.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import * as description from './markdown.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './modal.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import * as description from './nav.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import * as description from './navbar.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import description from './paginated_list.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './pagination.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './path.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: true,
6
- };
@@ -1,3 +0,0 @@
1
- export default {
2
- followsDesignSystem: true,
3
- };
@@ -1,6 +0,0 @@
1
- import description from './search_box_by_click.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './search_box_by_type.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './segmented_control.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import * as description from './skeleton_loader.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './skeleton_loading.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import description from './sorting.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './sorting_item.md';
2
-
3
- export default {
4
- description,
5
- bootstrapComponent: 'b-dropdown-item',
6
- };
@@ -1,6 +0,0 @@
1
- import description from './table.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import * as description from './table_lite.md';
2
-
3
- export default {
4
- description,
5
- bootstrapComponent: 'b-table-lite',
6
- };
@@ -1,6 +0,0 @@
1
- import description from './tabs.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: true,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './toast.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import * as description from './toggle.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: true,
6
- };
@@ -1,3 +0,0 @@
1
- export default {
2
- followsDesignSystem: true,
3
- };
@@ -1,5 +0,0 @@
1
- import * as description from './token_selector.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './tooltip.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,3 +0,0 @@
1
- export default {
2
- followsDesignSystem: false,
3
- };
@@ -1,6 +0,0 @@
1
- import description from './bar.md';
2
-
3
- export default {
4
- followsDesignSystem: true,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './chart.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,3 +0,0 @@
1
- export default {
2
- followsDesignSystem: true,
3
- };
@@ -1,3 +0,0 @@
1
- export default {
2
- followsDesignSystem: true,
3
- };
@@ -1,5 +0,0 @@
1
- import * as description from './gauge.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './heatmap.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: true,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './line.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './series_label.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import description from './single_stat.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './sparkline.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './stacked_column.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './tooltip.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,5 +0,0 @@
1
- import * as description from './rich_text_editor.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import description from './dashboard_skeleton.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import description from './empty_state.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import * as description from './animated_number.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: false,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './friendly_wrap.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,5 +0,0 @@
1
- import * as description from './intersection_observer.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import description from './intersperse.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './sprintf.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: false,
6
- };
@@ -1,5 +0,0 @@
1
- import description from './truncate.md';
2
-
3
- export default {
4
- description,
5
- };
@@ -1,6 +0,0 @@
1
- import * as description from './hover_load.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: false,
6
- };
@@ -1,6 +0,0 @@
1
- import * as description from './outside.md';
2
-
3
- export default {
4
- description,
5
- followsDesignSystem: false,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './resize_observer.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './safe_html.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };
@@ -1,6 +0,0 @@
1
- import description from './safe_link.md';
2
-
3
- export default {
4
- followsDesignSystem: false,
5
- description,
6
- };