@gitlab/duo-ui 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. package/CHANGELOG.md +11706 -0
  2. package/dist/components/experimental/duo/chat/components/duo_chat_context/constants.js +11 -0
  3. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_details_modal/duo_chat_context_item_details_modal.js +118 -0
  4. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu.js +265 -0
  5. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_category_items.js +68 -0
  6. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_item.js +87 -0
  7. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items.js +137 -0
  8. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_menu/duo_chat_context_item_menu_search_items_loading.js +53 -0
  9. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_popover/duo_chat_context_item_popover.js +121 -0
  10. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_selections/duo_chat_context_item_selections.js +153 -0
  11. package/dist/components/experimental/duo/chat/components/duo_chat_context/mock_context_data.js +191 -0
  12. package/dist/components/experimental/duo/chat/components/duo_chat_context/utils.js +106 -0
  13. package/dist/components/experimental/duo/chat/components/duo_chat_conversation/duo_chat_conversation.js +101 -0
  14. package/dist/components/experimental/duo/chat/components/duo_chat_loader/duo_chat_loader.js +101 -0
  15. package/dist/components/experimental/duo/chat/components/duo_chat_message/buttons_utils.js +25 -0
  16. package/dist/components/experimental/duo/chat/components/duo_chat_message/copy_code_element.js +16 -0
  17. package/dist/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.js +263 -0
  18. package/dist/components/experimental/duo/chat/components/duo_chat_message/insert_code_snippet_element.js +56 -0
  19. package/dist/components/experimental/duo/chat/components/duo_chat_message/utils.js +8 -0
  20. package/dist/components/experimental/duo/chat/components/duo_chat_message_sources/duo_chat_message_sources.js +106 -0
  21. package/dist/components/experimental/duo/chat/components/duo_chat_predefined_prompts/duo_chat_predefined_prompts.js +64 -0
  22. package/dist/components/experimental/duo/chat/constants.js +30 -0
  23. package/dist/components/experimental/duo/chat/duo_chat.js +524 -0
  24. package/dist/components/experimental/duo/chat/markdown_renderer.js +18 -0
  25. package/dist/components/experimental/duo/chat/mock_data.js +162 -0
  26. package/dist/components/experimental/duo/user_feedback/user_feedback.js +97 -0
  27. package/dist/components/experimental/duo/user_feedback/user_feedback_modal.js +149 -0
  28. package/dist/components/experimental/duo/workflow/components/duo_workflow_panel/duo_workflow_panel.js +95 -0
  29. package/dist/components/experimental/duo/workflow/components/duo_workflow_prompt/duo_workflow_prompt.js +235 -0
  30. package/dist/tailwind.css +2 -0
  31. package/dist/tailwind.css.map +1 -0
  32. package/package.json +7 -15
  33. package/src/components/experimental/duo/chat/mock_data.js +1 -1
  34. package/src/config.js +3 -43
  35. package/src/index.js +3 -130
  36. package/src/tokens/build/json/tokens.json +13548 -13548
  37. package/src/vendor/bootstrap/LICENSE +22 -0
  38. package/src/vendor/bootstrap-vue/LICENSE +21 -0
  39. package/src/vendor/bootstrap-vue/nuxt/index.js +164 -0
  40. package/src/vendor/bootstrap-vue/nuxt/plugin.template.js +29 -0
  41. package/src/vendor/bootstrap-vue/package.json +201 -0
  42. package/src/vendor/bootstrap-vue/src/bv-config.d.ts +4 -0
  43. package/src/vendor/bootstrap-vue/src/components/badge/README.md +126 -0
  44. package/src/vendor/bootstrap-vue/src/components/badge/badge.spec.js +141 -0
  45. package/src/vendor/bootstrap-vue/src/components/badge/index.d.ts +7 -0
  46. package/src/vendor/bootstrap-vue/src/components/badge/package.json +29 -0
  47. package/src/vendor/bootstrap-vue/src/components/breadcrumb/README.md +93 -0
  48. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-item.spec.js +123 -0
  49. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb-link.spec.js +117 -0
  50. package/src/vendor/bootstrap-vue/src/components/breadcrumb/breadcrumb.spec.js +183 -0
  51. package/src/vendor/bootstrap-vue/src/components/breadcrumb/index.d.ts +13 -0
  52. package/src/vendor/bootstrap-vue/src/components/breadcrumb/package.json +62 -0
  53. package/src/vendor/bootstrap-vue/src/components/button/README.md +281 -0
  54. package/src/vendor/bootstrap-vue/src/components/button/button-close.spec.js +210 -0
  55. package/src/vendor/bootstrap-vue/src/components/button/button.spec.js +385 -0
  56. package/src/vendor/bootstrap-vue/src/components/button/index.d.ts +10 -0
  57. package/src/vendor/bootstrap-vue/src/components/button/package.json +105 -0
  58. package/src/vendor/bootstrap-vue/src/components/button-group/README.md +112 -0
  59. package/src/vendor/bootstrap-vue/src/components/button-group/button-group.spec.js +98 -0
  60. package/src/vendor/bootstrap-vue/src/components/button-group/index.d.ts +7 -0
  61. package/src/vendor/bootstrap-vue/src/components/button-group/package.json +29 -0
  62. package/src/vendor/bootstrap-vue/src/components/collapse/README.md +321 -0
  63. package/src/vendor/bootstrap-vue/src/components/collapse/collapse.spec.js +558 -0
  64. package/src/vendor/bootstrap-vue/src/components/collapse/index.d.ts +9 -0
  65. package/src/vendor/bootstrap-vue/src/components/collapse/package.json +111 -0
  66. package/src/vendor/bootstrap-vue/src/components/dropdown/README.md +730 -0
  67. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-divider.spec.js +58 -0
  68. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-form.spec.js +110 -0
  69. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-group.spec.js +94 -0
  70. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-header.spec.js +73 -0
  71. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.spec.js +117 -0
  72. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.spec.js +147 -0
  73. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown-text.spec.js +59 -0
  74. package/src/vendor/bootstrap-vue/src/components/dropdown/dropdown.spec.js +1121 -0
  75. package/src/vendor/bootstrap-vue/src/components/dropdown/index.d.ts +32 -0
  76. package/src/vendor/bootstrap-vue/src/components/dropdown/package.json +368 -0
  77. package/src/vendor/bootstrap-vue/src/components/form/README.md +370 -0
  78. package/src/vendor/bootstrap-vue/src/components/form/form-invalid-feedback.spec.js +170 -0
  79. package/src/vendor/bootstrap-vue/src/components/form/form-text.spec.js +93 -0
  80. package/src/vendor/bootstrap-vue/src/components/form/form-valid-feedback.spec.js +157 -0
  81. package/src/vendor/bootstrap-vue/src/components/form/form.spec.js +97 -0
  82. package/src/vendor/bootstrap-vue/src/components/form/index.d.ts +16 -0
  83. package/src/vendor/bootstrap-vue/src/components/form/package.json +112 -0
  84. package/src/vendor/bootstrap-vue/src/components/form-checkbox/README.md +862 -0
  85. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.spec.js +642 -0
  86. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.spec.js +1331 -0
  87. package/src/vendor/bootstrap-vue/src/components/form-checkbox/index.d.ts +10 -0
  88. package/src/vendor/bootstrap-vue/src/components/form-checkbox/package.json +172 -0
  89. package/src/vendor/bootstrap-vue/src/components/form-group/README.md +337 -0
  90. package/src/vendor/bootstrap-vue/src/components/form-group/form-group.spec.js +477 -0
  91. package/src/vendor/bootstrap-vue/src/components/form-group/index.d.ts +7 -0
  92. package/src/vendor/bootstrap-vue/src/components/form-group/package.json +183 -0
  93. package/src/vendor/bootstrap-vue/src/components/form-input/README.md +612 -0
  94. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.spec.js +986 -0
  95. package/src/vendor/bootstrap-vue/src/components/form-input/index.d.ts +9 -0
  96. package/src/vendor/bootstrap-vue/src/components/form-input/package.json +135 -0
  97. package/src/vendor/bootstrap-vue/src/components/form-radio/README.md +566 -0
  98. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.spec.js +469 -0
  99. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.spec.js +952 -0
  100. package/src/vendor/bootstrap-vue/src/components/form-radio/index.d.ts +10 -0
  101. package/src/vendor/bootstrap-vue/src/components/form-radio/package.json +162 -0
  102. package/src/vendor/bootstrap-vue/src/components/form-select/README.md +504 -0
  103. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option-group.spec.js +138 -0
  104. package/src/vendor/bootstrap-vue/src/components/form-select/form-select-option.spec.js +75 -0
  105. package/src/vendor/bootstrap-vue/src/components/form-select/form-select.spec.js +723 -0
  106. package/src/vendor/bootstrap-vue/src/components/form-select/index.d.ts +13 -0
  107. package/src/vendor/bootstrap-vue/src/components/form-select/package.json +132 -0
  108. package/src/vendor/bootstrap-vue/src/components/form-textarea/README.md +453 -0
  109. package/src/vendor/bootstrap-vue/src/components/form-textarea/form-textarea.spec.js +1000 -0
  110. package/src/vendor/bootstrap-vue/src/components/form-textarea/index.d.ts +9 -0
  111. package/src/vendor/bootstrap-vue/src/components/form-textarea/package.json +122 -0
  112. package/src/vendor/bootstrap-vue/src/components/index.d.ts +31 -0
  113. package/src/vendor/bootstrap-vue/src/components/input-group/README.md +334 -0
  114. package/src/vendor/bootstrap-vue/src/components/input-group/index.d.ts +19 -0
  115. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.spec.js +84 -0
  116. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.spec.js +84 -0
  117. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.spec.js +45 -0
  118. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.spec.js +153 -0
  119. package/src/vendor/bootstrap-vue/src/components/input-group/package.json +109 -0
  120. package/src/vendor/bootstrap-vue/src/components/layout/README.md +791 -0
  121. package/src/vendor/bootstrap-vue/src/components/layout/col.spec.js +192 -0
  122. package/src/vendor/bootstrap-vue/src/components/layout/form-row.spec.js +45 -0
  123. package/src/vendor/bootstrap-vue/src/components/layout/index.d.ts +10 -0
  124. package/src/vendor/bootstrap-vue/src/components/layout/package.json +99 -0
  125. package/src/vendor/bootstrap-vue/src/components/link/README.md +76 -0
  126. package/src/vendor/bootstrap-vue/src/components/link/index.d.ts +10 -0
  127. package/src/vendor/bootstrap-vue/src/components/link/link.spec.js +434 -0
  128. package/src/vendor/bootstrap-vue/src/components/link/package.json +57 -0
  129. package/src/vendor/bootstrap-vue/src/components/modal/MODIFICATIONS.md +27 -0
  130. package/src/vendor/bootstrap-vue/src/components/modal/README.md +1068 -0
  131. package/src/vendor/bootstrap-vue/src/components/modal/helpers/bv-modal-event.class.spec.js +82 -0
  132. package/src/vendor/bootstrap-vue/src/components/modal/index.d.ts +82 -0
  133. package/src/vendor/bootstrap-vue/src/components/modal/modal.spec.js +1418 -0
  134. package/src/vendor/bootstrap-vue/src/components/modal/package.json +548 -0
  135. package/src/vendor/bootstrap-vue/src/components/nav/README.md +480 -0
  136. package/src/vendor/bootstrap-vue/src/components/nav/index.d.ts +17 -0
  137. package/src/vendor/bootstrap-vue/src/components/nav/nav-item-dropdown.spec.js +268 -0
  138. package/src/vendor/bootstrap-vue/src/components/nav/nav-item.spec.js +127 -0
  139. package/src/vendor/bootstrap-vue/src/components/nav/nav.spec.js +244 -0
  140. package/src/vendor/bootstrap-vue/src/components/nav/package.json +190 -0
  141. package/src/vendor/bootstrap-vue/src/components/navbar/README.md +333 -0
  142. package/src/vendor/bootstrap-vue/src/components/navbar/index.d.ts +10 -0
  143. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-brand.spec.js +50 -0
  144. package/src/vendor/bootstrap-vue/src/components/navbar/navbar.spec.js +130 -0
  145. package/src/vendor/bootstrap-vue/src/components/navbar/package.json +54 -0
  146. package/src/vendor/bootstrap-vue/src/components/popover/README.md +919 -0
  147. package/src/vendor/bootstrap-vue/src/components/popover/index.d.ts +7 -0
  148. package/src/vendor/bootstrap-vue/src/components/popover/package.json +261 -0
  149. package/src/vendor/bootstrap-vue/src/components/popover/popover.spec.js +199 -0
  150. package/src/vendor/bootstrap-vue/src/components/progress/MODIFICATIONS.md +23 -0
  151. package/src/vendor/bootstrap-vue/src/components/progress/README.md +363 -0
  152. package/src/vendor/bootstrap-vue/src/components/progress/index.d.ts +10 -0
  153. package/src/vendor/bootstrap-vue/src/components/progress/package.json +109 -0
  154. package/src/vendor/bootstrap-vue/src/components/progress/progress-bar.spec.js +270 -0
  155. package/src/vendor/bootstrap-vue/src/components/progress/progress.spec.js +71 -0
  156. package/src/vendor/bootstrap-vue/src/components/table/README.md +3157 -0
  157. package/src/vendor/bootstrap-vue/src/components/table/helpers/default-sort-compare.spec.js +112 -0
  158. package/src/vendor/bootstrap-vue/src/components/table/helpers/normalize-fields.spec.js +93 -0
  159. package/src/vendor/bootstrap-vue/src/components/table/index.d.ts +237 -0
  160. package/src/vendor/bootstrap-vue/src/components/table/package.json +1763 -0
  161. package/src/vendor/bootstrap-vue/src/components/table/table-busy.spec.js +150 -0
  162. package/src/vendor/bootstrap-vue/src/components/table/table-caption.spec.js +176 -0
  163. package/src/vendor/bootstrap-vue/src/components/table/table-colgroup.spec.js +81 -0
  164. package/src/vendor/bootstrap-vue/src/components/table/table-filtering.spec.js +409 -0
  165. package/src/vendor/bootstrap-vue/src/components/table/table-item-formatter.spec.js +56 -0
  166. package/src/vendor/bootstrap-vue/src/components/table/table-lite.spec.js +682 -0
  167. package/src/vendor/bootstrap-vue/src/components/table/table-pagination.spec.js +133 -0
  168. package/src/vendor/bootstrap-vue/src/components/table/table-primarykey.spec.js +83 -0
  169. package/src/vendor/bootstrap-vue/src/components/table/table-provider.spec.js +411 -0
  170. package/src/vendor/bootstrap-vue/src/components/table/table-row-details.spec.js +459 -0
  171. package/src/vendor/bootstrap-vue/src/components/table/table-selectable.spec.js +1182 -0
  172. package/src/vendor/bootstrap-vue/src/components/table/table-simple.spec.js +206 -0
  173. package/src/vendor/bootstrap-vue/src/components/table/table-sorting.spec.js +858 -0
  174. package/src/vendor/bootstrap-vue/src/components/table/table-sticky-column.spec.js +377 -0
  175. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-bottom-row.spec.js +94 -0
  176. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-row-events.spec.js +529 -0
  177. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-top-row.spec.js +88 -0
  178. package/src/vendor/bootstrap-vue/src/components/table/table-tbody-transition.spec.js +83 -0
  179. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-custom.spec.js +91 -0
  180. package/src/vendor/bootstrap-vue/src/components/table/table-tfoot-events.spec.js +137 -0
  181. package/src/vendor/bootstrap-vue/src/components/table/table-thead-events.spec.js +155 -0
  182. package/src/vendor/bootstrap-vue/src/components/table/table-thead-top.spec.js +96 -0
  183. package/src/vendor/bootstrap-vue/src/components/table/table.spec.js +692 -0
  184. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +575 -0
  185. package/src/vendor/bootstrap-vue/src/components/tabs/index.d.ts +13 -0
  186. package/src/vendor/bootstrap-vue/src/components/tabs/package.json +205 -0
  187. package/src/vendor/bootstrap-vue/src/components/tabs/tab.spec.js +330 -0
  188. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.spec.js +836 -0
  189. package/src/vendor/bootstrap-vue/src/components/toast/README.md +656 -0
  190. package/src/vendor/bootstrap-vue/src/components/toast/helpers/bv-toast.spec.js +131 -0
  191. package/src/vendor/bootstrap-vue/src/components/toast/index.d.ts +70 -0
  192. package/src/vendor/bootstrap-vue/src/components/toast/package.json +188 -0
  193. package/src/vendor/bootstrap-vue/src/components/toast/toast.spec.js +346 -0
  194. package/src/vendor/bootstrap-vue/src/components/toast/toaster.spec.js +77 -0
  195. package/src/vendor/bootstrap-vue/src/components/tooltip/README.md +559 -0
  196. package/src/vendor/bootstrap-vue/src/components/tooltip/index.d.ts +7 -0
  197. package/src/vendor/bootstrap-vue/src/components/tooltip/package.json +258 -0
  198. package/src/vendor/bootstrap-vue/src/components/tooltip/tooltip.spec.js +1529 -0
  199. package/src/vendor/bootstrap-vue/src/components/transition/package.json +5 -0
  200. package/src/vendor/bootstrap-vue/src/components/transporter/package.json +5 -0
  201. package/src/vendor/bootstrap-vue/src/components/transporter/transporter.spec.js +85 -0
  202. package/src/vendor/bootstrap-vue/src/directives/modal/index.d.ts +8 -0
  203. package/src/vendor/bootstrap-vue/src/directives/modal/modal.spec.js +191 -0
  204. package/src/vendor/bootstrap-vue/src/directives/toggle/README.md +146 -0
  205. package/src/vendor/bootstrap-vue/src/directives/toggle/index.d.ts +7 -0
  206. package/src/vendor/bootstrap-vue/src/directives/toggle/package.json +26 -0
  207. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.spec.js +452 -0
  208. package/src/vendor/bootstrap-vue/src/directives/tooltip/README.md +521 -0
  209. package/src/vendor/bootstrap-vue/src/directives/tooltip/index.d.ts +7 -0
  210. package/src/vendor/bootstrap-vue/src/directives/tooltip/package.json +131 -0
  211. package/src/vendor/bootstrap-vue/src/directives/tooltip/tooltip.spec.js +223 -0
  212. package/src/vendor/bootstrap-vue/src/directives/visible/README.md +244 -0
  213. package/src/vendor/bootstrap-vue/src/directives/visible/index.d.ts +7 -0
  214. package/src/vendor/bootstrap-vue/src/directives/visible/package.json +24 -0
  215. package/src/vendor/bootstrap-vue/src/index.d.ts +61 -0
  216. package/src/vendor/bootstrap-vue/src/mixins/attrs.spec.js +194 -0
  217. package/src/vendor/bootstrap-vue/src/mixins/click-out.spec.js +52 -0
  218. package/src/vendor/bootstrap-vue/src/mixins/focus-in.spec.js +53 -0
  219. package/src/vendor/bootstrap-vue/src/mixins/listen-on-document.spec.js +117 -0
  220. package/src/vendor/bootstrap-vue/src/mixins/listen-on-root.spec.js +77 -0
  221. package/src/vendor/bootstrap-vue/src/mixins/listen-on-window.spec.js +115 -0
  222. package/src/vendor/bootstrap-vue/src/mixins/listeners.spec.js +245 -0
  223. package/src/vendor/bootstrap-vue/src/utils/bv-event.class.spec.js +66 -0
  224. package/src/vendor/bootstrap-vue/src/utils/clone-deep.spec.js +70 -0
  225. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +169 -0
  226. package/src/vendor/bootstrap-vue/src/utils/css-escape.spec.js +82 -0
  227. package/src/vendor/bootstrap-vue/src/utils/dom.spec.js +291 -0
  228. package/src/vendor/bootstrap-vue/src/utils/events.spec.js +41 -0
  229. package/src/vendor/bootstrap-vue/src/utils/get.spec.js +109 -0
  230. package/src/vendor/bootstrap-vue/src/utils/inspect.spec.js +251 -0
  231. package/src/vendor/bootstrap-vue/src/utils/loose-equal.spec.js +203 -0
  232. package/src/vendor/bootstrap-vue/src/utils/normalize-slot.spec.js +63 -0
  233. package/src/vendor/bootstrap-vue/src/utils/number.spec.js +72 -0
  234. package/src/vendor/bootstrap-vue/src/utils/object.spec.js +61 -0
  235. package/src/vendor/bootstrap-vue/src/utils/props.spec.js +112 -0
  236. package/src/vendor/bootstrap-vue/src/utils/router.spec.js +248 -0
  237. package/src/vendor/bootstrap-vue/src/utils/string.spec.js +65 -0
  238. package/src/vendor/bootstrap-vue/src/utils/stringify-object-values.spec.js +47 -0
  239. package/src/vendor/bootstrap-vue/src/utils/warn.spec.js +54 -0
  240. package/src/vendor/bootstrap-vue/src/vue-injections.d.ts +13 -0
  241. package/translations.js +0 -26
  242. package/dist/tokens/css/tokens.css +0 -953
  243. package/dist/tokens/css/tokens.dark.css +0 -953
  244. package/dist/tokens/js/tokens.dark.js +0 -951
  245. package/dist/tokens/js/tokens.js +0 -951
  246. package/dist/tokens/json/tokens.dark.json +0 -21803
  247. package/dist/tokens/json/tokens.json +0 -21803
  248. package/dist/tokens/scss/_tokens.dark.scss +0 -950
  249. package/dist/tokens/scss/_tokens.scss +0 -950
  250. package/dist/tokens/scss/_tokens_custom_properties.scss +0 -951
  251. package/dist/tokens/tailwind/tokens.cjs +0 -336
  252. package/src/charts.js +0 -14
  253. package/src/components/base/accordion/accordion.md +0 -3
  254. package/src/components/base/accordion/accordion.vue +0 -43
  255. package/src/components/base/accordion/accordion_item.md +0 -3
  256. package/src/components/base/accordion/accordion_item.scss +0 -16
  257. package/src/components/base/accordion/accordion_item.vue +0 -122
  258. package/src/components/base/alert/alert.md +0 -35
  259. package/src/components/base/alert/alert.scss +0 -179
  260. package/src/components/base/alert/alert.vue +0 -241
  261. package/src/components/base/animated_icon/animated_chevron_right_down_icon.vue +0 -28
  262. package/src/components/base/animated_icon/animated_duo_chat_icon.vue +0 -39
  263. package/src/components/base/animated_icon/animated_icon.md +0 -4
  264. package/src/components/base/animated_icon/animated_icon.scss +0 -456
  265. package/src/components/base/animated_icon/animated_notifications_icon.vue +0 -49
  266. package/src/components/base/animated_icon/animated_sidebar_icon.vue +0 -35
  267. package/src/components/base/animated_icon/animated_smile_icon.vue +0 -37
  268. package/src/components/base/animated_icon/animated_sort_icon.vue +0 -84
  269. package/src/components/base/animated_icon/animated_star_icon.vue +0 -27
  270. package/src/components/base/animated_icon/animated_todo_icon.vue +0 -49
  271. package/src/components/base/animated_icon/animated_upload_icon.vue +0 -41
  272. package/src/components/base/animated_icon/base_animated_icon.vue +0 -39
  273. package/src/components/base/avatar/avatar.md +0 -1
  274. package/src/components/base/avatar/avatar.scss +0 -228
  275. package/src/components/base/avatar/avatar.vue +0 -151
  276. package/src/components/base/avatar_labeled/avatar_labeled.md +0 -20
  277. package/src/components/base/avatar_labeled/avatar_labeled.scss +0 -30
  278. package/src/components/base/avatar_labeled/avatar_labeled.vue +0 -92
  279. package/src/components/base/avatar_link/avatar_link.md +0 -33
  280. package/src/components/base/avatar_link/avatar_link.scss +0 -41
  281. package/src/components/base/avatar_link/avatar_link.vue +0 -15
  282. package/src/components/base/avatars_inline/avatars_inline.md +0 -38
  283. package/src/components/base/avatars_inline/avatars_inline.scss +0 -64
  284. package/src/components/base/avatars_inline/avatars_inline.vue +0 -110
  285. package/src/components/base/badge/badge.md +0 -38
  286. package/src/components/base/badge/badge.scss +0 -251
  287. package/src/components/base/badge/badge.vue +0 -91
  288. package/src/components/base/banner/banner.md +0 -35
  289. package/src/components/base/banner/banner.scss +0 -35
  290. package/src/components/base/banner/banner.vue +0 -131
  291. package/src/components/base/breadcrumb/breadcrumb.md +0 -23
  292. package/src/components/base/breadcrumb/breadcrumb.scss +0 -62
  293. package/src/components/base/breadcrumb/breadcrumb.vue +0 -229
  294. package/src/components/base/breadcrumb/breadcrumb_item.vue +0 -44
  295. package/src/components/base/broadcast_message/broadcast_message.md +0 -25
  296. package/src/components/base/broadcast_message/broadcast_message.scss +0 -135
  297. package/src/components/base/broadcast_message/broadcast_message.vue +0 -98
  298. package/src/components/base/broadcast_message/constants.js +0 -3
  299. package/src/components/base/button/button.md +0 -61
  300. package/src/components/base/button/button.scss +0 -699
  301. package/src/components/base/button/button.vue +0 -143
  302. package/src/components/base/button_group/button_group.md +0 -28
  303. package/src/components/base/button_group/button_group.vue +0 -16
  304. package/src/components/base/card/card.md +0 -4
  305. package/src/components/base/card/card.scss +0 -46
  306. package/src/components/base/card/card.vue +0 -49
  307. package/src/components/base/collapse/collapse.md +0 -26
  308. package/src/components/base/collapse/collapse.vue +0 -29
  309. package/src/components/base/datepicker/datepicker.md +0 -8
  310. package/src/components/base/datepicker/datepicker.scss +0 -228
  311. package/src/components/base/datepicker/datepicker.vue +0 -454
  312. package/src/components/base/daterange_picker/daterange_picker.md +0 -32
  313. package/src/components/base/daterange_picker/daterange_picker.scss +0 -20
  314. package/src/components/base/daterange_picker/daterange_picker.vue +0 -345
  315. package/src/components/base/drawer/drawer.md +0 -17
  316. package/src/components/base/drawer/drawer.scss +0 -153
  317. package/src/components/base/drawer/drawer.vue +0 -136
  318. package/src/components/base/dropdown/dropdown.md +0 -72
  319. package/src/components/base/dropdown/dropdown.scss +0 -210
  320. package/src/components/base/dropdown/dropdown.vue +0 -323
  321. package/src/components/base/dropdown/dropdown_divider.scss +0 -20
  322. package/src/components/base/dropdown/dropdown_divider.vue +0 -15
  323. package/src/components/base/dropdown/dropdown_form.vue +0 -17
  324. package/src/components/base/dropdown/dropdown_item.md +0 -2
  325. package/src/components/base/dropdown/dropdown_item.scss +0 -102
  326. package/src/components/base/dropdown/dropdown_item.vue +0 -114
  327. package/src/components/base/dropdown/dropdown_section_header.md +0 -7
  328. package/src/components/base/dropdown/dropdown_section_header.scss +0 -22
  329. package/src/components/base/dropdown/dropdown_section_header.vue +0 -17
  330. package/src/components/base/dropdown/dropdown_text.md +0 -7
  331. package/src/components/base/dropdown/dropdown_text.scss +0 -6
  332. package/src/components/base/dropdown/dropdown_text.vue +0 -17
  333. package/src/components/base/filtered_search/common_story_options.js +0 -12
  334. package/src/components/base/filtered_search/filtered_search.md +0 -76
  335. package/src/components/base/filtered_search/filtered_search.scss +0 -51
  336. package/src/components/base/filtered_search/filtered_search.vue +0 -475
  337. package/src/components/base/filtered_search/filtered_search_suggestion.md +0 -15
  338. package/src/components/base/filtered_search/filtered_search_suggestion.scss +0 -11
  339. package/src/components/base/filtered_search/filtered_search_suggestion.vue +0 -64
  340. package/src/components/base/filtered_search/filtered_search_suggestion_list.md +0 -13
  341. package/src/components/base/filtered_search/filtered_search_suggestion_list.scss +0 -36
  342. package/src/components/base/filtered_search/filtered_search_suggestion_list.vue +0 -122
  343. package/src/components/base/filtered_search/filtered_search_term.md +0 -7
  344. package/src/components/base/filtered_search/filtered_search_term.scss +0 -19
  345. package/src/components/base/filtered_search/filtered_search_term.vue +0 -243
  346. package/src/components/base/filtered_search/filtered_search_token.md +0 -23
  347. package/src/components/base/filtered_search/filtered_search_token.scss +0 -63
  348. package/src/components/base/filtered_search/filtered_search_token.vue +0 -484
  349. package/src/components/base/filtered_search/filtered_search_token_segment.md +0 -14
  350. package/src/components/base/filtered_search/filtered_search_token_segment.scss +0 -25
  351. package/src/components/base/filtered_search/filtered_search_token_segment.vue +0 -468
  352. package/src/components/base/filtered_search/filtered_search_utils.js +0 -251
  353. package/src/components/base/form/form.md +0 -2
  354. package/src/components/base/form/form.vue +0 -17
  355. package/src/components/base/form/form_character_count/form_character_count.md +0 -53
  356. package/src/components/base/form/form_character_count/form_character_count.vue +0 -97
  357. package/src/components/base/form/form_checkbox/form_checkbox.md +0 -6
  358. package/src/components/base/form/form_checkbox/form_checkbox.scss +0 -221
  359. package/src/components/base/form/form_checkbox/form_checkbox.vue +0 -58
  360. package/src/components/base/form/form_checkbox/form_checkbox_group.vue +0 -44
  361. package/src/components/base/form/form_checkbox_tree/checkbox_tree_node.vue +0 -58
  362. package/src/components/base/form/form_checkbox_tree/form_checkbox_tree.md +0 -73
  363. package/src/components/base/form/form_checkbox_tree/form_checkbox_tree.vue +0 -116
  364. package/src/components/base/form/form_checkbox_tree/models/constants.js +0 -12
  365. package/src/components/base/form/form_checkbox_tree/models/node.js +0 -48
  366. package/src/components/base/form/form_checkbox_tree/models/tree.js +0 -186
  367. package/src/components/base/form/form_combobox/constants.js +0 -50
  368. package/src/components/base/form/form_combobox/form_combobox.md +0 -52
  369. package/src/components/base/form/form_combobox/form_combobox.scss +0 -5
  370. package/src/components/base/form/form_combobox/form_combobox.vue +0 -280
  371. package/src/components/base/form/form_date/form_date.md +0 -26
  372. package/src/components/base/form/form_date/form_date.scss +0 -7
  373. package/src/components/base/form/form_date/form_date.vue +0 -135
  374. package/src/components/base/form/form_fields/form_field_validator.vue +0 -59
  375. package/src/components/base/form/form_fields/form_fields.md +0 -41
  376. package/src/components/base/form/form_fields/form_fields.vue +0 -258
  377. package/src/components/base/form/form_fields/mappers.js +0 -11
  378. package/src/components/base/form/form_fields/validators.js +0 -49
  379. package/src/components/base/form/form_group/form_group.md +0 -1
  380. package/src/components/base/form/form_group/form_group.scss +0 -59
  381. package/src/components/base/form/form_group/form_group.vue +0 -76
  382. package/src/components/base/form/form_input/form_input.md +0 -1
  383. package/src/components/base/form/form_input/form_input.scss +0 -74
  384. package/src/components/base/form/form_input/form_input.vue +0 -98
  385. package/src/components/base/form/form_input_group/form_input_group.md +0 -67
  386. package/src/components/base/form/form_input_group/form_input_group.vue +0 -103
  387. package/src/components/base/form/form_input_group/form_input_group_mixin.js +0 -39
  388. package/src/components/base/form/form_radio/form_radio.md +0 -23
  389. package/src/components/base/form/form_radio/form_radio.scss +0 -1
  390. package/src/components/base/form/form_radio/form_radio.vue +0 -51
  391. package/src/components/base/form/form_radio_group/form_radio_group.md +0 -63
  392. package/src/components/base/form/form_radio_group/form_radio_group.scss +0 -4
  393. package/src/components/base/form/form_radio_group/form_radio_group.vue +0 -64
  394. package/src/components/base/form/form_select/constants.js +0 -5
  395. package/src/components/base/form/form_select/form_select.md +0 -1
  396. package/src/components/base/form/form_select/form_select.scss +0 -117
  397. package/src/components/base/form/form_select/form_select.vue +0 -61
  398. package/src/components/base/form/form_textarea/form_textarea.md +0 -3
  399. package/src/components/base/form/form_textarea/form_textarea.vue +0 -141
  400. package/src/components/base/form/input_group_text/input_group_text.md +0 -4
  401. package/src/components/base/form/input_group_text/input_group_text.vue +0 -17
  402. package/src/components/base/icon/icon.md +0 -27
  403. package/src/components/base/icon/icon.scss +0 -8
  404. package/src/components/base/icon/icon.vue +0 -98
  405. package/src/components/base/infinite_scroll/infinite_scroll.md +0 -104
  406. package/src/components/base/infinite_scroll/infinite_scroll.scss +0 -11
  407. package/src/components/base/infinite_scroll/infinite_scroll.vue +0 -169
  408. package/src/components/base/keyset_pagination/keyset_pagination.md +0 -49
  409. package/src/components/base/keyset_pagination/keyset_pagination.scss +0 -9
  410. package/src/components/base/keyset_pagination/keyset_pagination.vue +0 -152
  411. package/src/components/base/label/label.md +0 -15
  412. package/src/components/base/label/label.scss +0 -156
  413. package/src/components/base/label/label.vue +0 -160
  414. package/src/components/base/link/link.md +0 -22
  415. package/src/components/base/link/link.scss +0 -13
  416. package/src/components/base/link/link.vue +0 -25
  417. package/src/components/base/loading_icon/loading_icon.md +0 -3
  418. package/src/components/base/loading_icon/loading_icon.scss +0 -139
  419. package/src/components/base/loading_icon/loading_icon.vue +0 -96
  420. package/src/components/base/markdown/markdown.md +0 -73
  421. package/src/components/base/markdown/markdown.scss +0 -223
  422. package/src/components/base/markdown/markdown.vue +0 -18
  423. package/src/components/base/markdown/markdown_typescale_demo.html +0 -155
  424. package/src/components/base/modal/modal.md +0 -30
  425. package/src/components/base/modal/modal.scss +0 -130
  426. package/src/components/base/modal/modal.vue +0 -269
  427. package/src/components/base/nav/nav.md +0 -11
  428. package/src/components/base/nav/nav.scss +0 -7
  429. package/src/components/base/nav/nav.vue +0 -17
  430. package/src/components/base/nav/nav_item.vue +0 -17
  431. package/src/components/base/nav/nav_item_dropdown.vue +0 -40
  432. package/src/components/base/navbar/navbar.md +0 -4
  433. package/src/components/base/navbar/navbar.scss +0 -0
  434. package/src/components/base/navbar/navbar.vue +0 -17
  435. package/src/components/base/new_dropdowns/base_dropdown/base_dropdown.vue +0 -507
  436. package/src/components/base/new_dropdowns/base_dropdown/constants.js +0 -2
  437. package/src/components/base/new_dropdowns/constants.js +0 -20
  438. package/src/components/base/new_dropdowns/disclosure/constants.js +0 -6
  439. package/src/components/base/new_dropdowns/disclosure/disclosure_dropdown.md +0 -168
  440. package/src/components/base/new_dropdowns/disclosure/disclosure_dropdown.scss +0 -17
  441. package/src/components/base/new_dropdowns/disclosure/disclosure_dropdown.vue +0 -458
  442. package/src/components/base/new_dropdowns/disclosure/disclosure_dropdown_group.vue +0 -104
  443. package/src/components/base/new_dropdowns/disclosure/disclosure_dropdown_item.vue +0 -131
  444. package/src/components/base/new_dropdowns/disclosure/mock_data.js +0 -201
  445. package/src/components/base/new_dropdowns/disclosure/utils.js +0 -70
  446. package/src/components/base/new_dropdowns/dropdown.scss +0 -243
  447. package/src/components/base/new_dropdowns/dropdown_item.scss +0 -134
  448. package/src/components/base/new_dropdowns/listbox/listbox.md +0 -159
  449. package/src/components/base/new_dropdowns/listbox/listbox.scss +0 -53
  450. package/src/components/base/new_dropdowns/listbox/listbox.vue +0 -940
  451. package/src/components/base/new_dropdowns/listbox/listbox_group.vue +0 -35
  452. package/src/components/base/new_dropdowns/listbox/listbox_item.vue +0 -77
  453. package/src/components/base/new_dropdowns/listbox/listbox_search_input.vue +0 -76
  454. package/src/components/base/new_dropdowns/listbox/mock_data.js +0 -139
  455. package/src/components/base/new_dropdowns/listbox/utils.js +0 -25
  456. package/src/components/base/paginated_list/paginated_list.md +0 -1
  457. package/src/components/base/paginated_list/paginated_list.vue +0 -179
  458. package/src/components/base/pagination/pagination.md +0 -45
  459. package/src/components/base/pagination/pagination.scss +0 -57
  460. package/src/components/base/pagination/pagination.vue +0 -498
  461. package/src/components/base/path/data.js +0 -43
  462. package/src/components/base/path/path.md +0 -41
  463. package/src/components/base/path/path.scss +0 -163
  464. package/src/components/base/path/path.vue +0 -191
  465. package/src/components/base/popover/popover.scss +0 -102
  466. package/src/components/base/popover/popover.vue +0 -111
  467. package/src/components/base/progress_bar/progress_bar.scss +0 -19
  468. package/src/components/base/progress_bar/progress_bar.vue +0 -15
  469. package/src/components/base/search_box_by_click/search_box_by_click.md +0 -1
  470. package/src/components/base/search_box_by_click/search_box_by_click.scss +0 -49
  471. package/src/components/base/search_box_by_click/search_box_by_click.vue +0 -296
  472. package/src/components/base/search_box_by_type/search_box_by_type.md +0 -1
  473. package/src/components/base/search_box_by_type/search_box_by_type.scss +0 -70
  474. package/src/components/base/search_box_by_type/search_box_by_type.vue +0 -159
  475. package/src/components/base/segmented_control/segmented_control.md +0 -1
  476. package/src/components/base/segmented_control/segmented_control.scss +0 -179
  477. package/src/components/base/segmented_control/segmented_control.vue +0 -77
  478. package/src/components/base/skeleton_loader/skeleton_loader.md +0 -46
  479. package/src/components/base/skeleton_loader/skeleton_loader.scss +0 -17
  480. package/src/components/base/skeleton_loader/skeleton_loader.vue +0 -249
  481. package/src/components/base/sorting/sorting.md +0 -80
  482. package/src/components/base/sorting/sorting.vue +0 -160
  483. package/src/components/base/table/constants.js +0 -48
  484. package/src/components/base/table/table.md +0 -72
  485. package/src/components/base/table/table.scss +0 -145
  486. package/src/components/base/table/table.vue +0 -144
  487. package/src/components/base/table_lite/table_lite.md +0 -68
  488. package/src/components/base/table_lite/table_lite.vue +0 -43
  489. package/src/components/base/tabs/constants.js +0 -1
  490. package/src/components/base/tabs/tab/tab.vue +0 -57
  491. package/src/components/base/tabs/tabs/scrollable_tabs.vue +0 -140
  492. package/src/components/base/tabs/tabs/tabs.md +0 -76
  493. package/src/components/base/tabs/tabs/tabs.scss +0 -164
  494. package/src/components/base/tabs/tabs/tabs.vue +0 -282
  495. package/src/components/base/toast/toast.js +0 -93
  496. package/src/components/base/toast/toast.md +0 -48
  497. package/src/components/base/toast/toast.scss +0 -62
  498. package/src/components/base/toggle/toggle.md +0 -4
  499. package/src/components/base/toggle/toggle.scss +0 -177
  500. package/src/components/base/toggle/toggle.vue +0 -194
  501. package/src/components/base/token/token.md +0 -12
  502. package/src/components/base/token/token.scss +0 -44
  503. package/src/components/base/token/token.vue +0 -67
  504. package/src/components/base/token_selector/helpers.js +0 -3
  505. package/src/components/base/token_selector/token_container.vue +0 -184
  506. package/src/components/base/token_selector/token_selector.md +0 -78
  507. package/src/components/base/token_selector/token_selector.scss +0 -19
  508. package/src/components/base/token_selector/token_selector.vue +0 -489
  509. package/src/components/base/token_selector/token_selector_dropdown.vue +0 -257
  510. package/src/components/base/tooltip/tooltip.md +0 -52
  511. package/src/components/base/tooltip/tooltip.scss +0 -52
  512. package/src/components/base/tooltip/tooltip.vue +0 -31
  513. package/src/components/charts/area/area.vue +0 -372
  514. package/src/components/charts/bar/bar.md +0 -3
  515. package/src/components/charts/bar/bar.vue +0 -237
  516. package/src/components/charts/chart/chart.md +0 -19
  517. package/src/components/charts/chart/chart.vue +0 -188
  518. package/src/components/charts/column/column.vue +0 -204
  519. package/src/components/charts/discrete_scatter/discrete_scatter.vue +0 -207
  520. package/src/components/charts/gauge/gauge.md +0 -8
  521. package/src/components/charts/gauge/gauge.scss +0 -0
  522. package/src/components/charts/gauge/gauge.vue +0 -178
  523. package/src/components/charts/heatmap/heatmap.md +0 -7
  524. package/src/components/charts/heatmap/heatmap.scss +0 -7
  525. package/src/components/charts/heatmap/heatmap.vue +0 -290
  526. package/src/components/charts/heatmap/index.js +0 -3
  527. package/src/components/charts/legend/legend.md +0 -16
  528. package/src/components/charts/legend/legend.scss +0 -97
  529. package/src/components/charts/legend/legend.vue +0 -284
  530. package/src/components/charts/line/line.md +0 -7
  531. package/src/components/charts/line/line.vue +0 -368
  532. package/src/components/charts/series_label/series_label.md +0 -1
  533. package/src/components/charts/series_label/series_label.scss +0 -23
  534. package/src/components/charts/series_label/series_label.vue +0 -85
  535. package/src/components/charts/single_stat/single_stat.md +0 -8
  536. package/src/components/charts/single_stat/single_stat.scss +0 -17
  537. package/src/components/charts/single_stat/single_stat.vue +0 -158
  538. package/src/components/charts/sparkline/sparkline.md +0 -8
  539. package/src/components/charts/sparkline/sparkline.vue +0 -308
  540. package/src/components/charts/stacked_column/stacked_column.md +0 -10
  541. package/src/components/charts/stacked_column/stacked_column.vue +0 -330
  542. package/src/components/charts/tooltip/tooltip.md +0 -3
  543. package/src/components/charts/tooltip/tooltip.scss +0 -9
  544. package/src/components/charts/tooltip/tooltip.vue +0 -253
  545. package/src/components/experimental/experiment_badge/constants.js +0 -2
  546. package/src/components/experimental/experiment_badge/experiment_badge.md +0 -9
  547. package/src/components/experimental/experiment_badge/experiment_badge.vue +0 -113
  548. package/src/components/mixins/button_mixin.js +0 -9
  549. package/src/components/mixins/safe_link_mixin.js +0 -28
  550. package/src/components/mixins/tooltip_mixin.js +0 -21
  551. package/src/components/regions/dashboard_skeleton/dashboard_skeleton.md +0 -4
  552. package/src/components/regions/dashboard_skeleton/dashboard_skeleton.vue +0 -40
  553. package/src/components/regions/empty_state/empty_state.md +0 -4
  554. package/src/components/regions/empty_state/empty_state.scss +0 -3
  555. package/src/components/regions/empty_state/empty_state.vue +0 -187
  556. package/src/components/shared_components/charts/tooltip_default_format.scss +0 -18
  557. package/src/components/shared_components/charts/tooltip_default_format.vue +0 -32
  558. package/src/components/shared_components/clear_icon_button/clear_icon_button.scss +0 -10
  559. package/src/components/shared_components/clear_icon_button/clear_icon_button.vue +0 -43
  560. package/src/components/shared_components/close_button/close_button.vue +0 -29
  561. package/src/components/utilities/animated_number/animated_number.md +0 -6
  562. package/src/components/utilities/animated_number/animated_number.vue +0 -99
  563. package/src/components/utilities/friendly_wrap/friendly_wrap.md +0 -66
  564. package/src/components/utilities/friendly_wrap/friendly_wrap.vue +0 -33
  565. package/src/components/utilities/intersection_observer/intersection_observer.md +0 -16
  566. package/src/components/utilities/intersection_observer/intersection_observer.vue +0 -67
  567. package/src/components/utilities/intersperse/intersperse.md +0 -90
  568. package/src/components/utilities/intersperse/intersperse.vue +0 -60
  569. package/src/components/utilities/sprintf/sprintf.md +0 -243
  570. package/src/components/utilities/sprintf/sprintf.vue +0 -142
  571. package/src/components/utilities/truncate/constants.js +0 -5
  572. package/src/components/utilities/truncate/truncate.md +0 -14
  573. package/src/components/utilities/truncate/truncate.scss +0 -21
  574. package/src/components/utilities/truncate/truncate.vue +0 -109
  575. package/src/components/utilities/truncate_text/constants.js +0 -5
  576. package/src/components/utilities/truncate_text/truncate_text.md +0 -26
  577. package/src/components/utilities/truncate_text/truncate_text.scss +0 -14
  578. package/src/components/utilities/truncate_text/truncate_text.vue +0 -124
  579. package/src/directives/collapse_toggle.js +0 -1
  580. package/src/directives/hover_load/hover_load.js +0 -46
  581. package/src/directives/hover_load/hover_load.md +0 -22
  582. package/src/directives/modal.js +0 -1
  583. package/src/directives/outside/outside.js +0 -151
  584. package/src/directives/outside/outside.md +0 -140
  585. package/src/directives/resize_observer/resize_observer.js +0 -45
  586. package/src/directives/resize_observer/resize_observer.md +0 -54
  587. package/src/directives/safe_html/constants.js +0 -14
  588. package/src/directives/safe_html/safe_html.js +0 -35
  589. package/src/directives/safe_html/safe_html.md +0 -58
  590. package/src/directives/safe_link/mock_data.js +0 -33
  591. package/src/directives/safe_link/safe_link.js +0 -56
  592. package/src/directives/safe_link/safe_link.md +0 -37
  593. package/src/directives/tooltip.js +0 -1
  594. package/src/internal/color_contrast/color_contrast.md +0 -8
  595. package/src/internal/color_contrast/color_contrast.vue +0 -52
  596. package/src/scss/README.md +0 -1
  597. package/src/scss/body.scss +0 -4
  598. package/src/scss/bootstrap.scss +0 -34
  599. package/src/scss/bootstrap_vue.scss +0 -25
  600. package/src/scss/components.scss +0 -83
  601. package/src/scss/fonts.scss +0 -67
  602. package/src/scss/functions.scss +0 -63
  603. package/src/scss/gitlab_ui.scss +0 -19
  604. package/src/scss/mixins.scss +0 -262
  605. package/src/scss/storybook.scss +0 -43
  606. package/src/scss/storybook_dark_mode.scss +0 -21
  607. package/src/scss/tokens.scss +0 -2
  608. package/src/scss/typescale/_index.scss +0 -103
  609. package/src/scss/typescale/typeface_demo.html +0 -70
  610. package/src/scss/typescale/typescale.md +0 -82
  611. package/src/scss/typescale/typescale_demo.html +0 -78
  612. package/src/scss/typescale/typescale_demo.scss +0 -8
  613. package/src/scss/utilities.scss +0 -9196
  614. package/src/scss/utility-mixins/accessibility.scss +0 -19
  615. package/src/scss/utility-mixins/animation.scss +0 -90
  616. package/src/scss/utility-mixins/background.scss +0 -421
  617. package/src/scss/utility-mixins/border.scss +0 -498
  618. package/src/scss/utility-mixins/box-shadow.scss +0 -220
  619. package/src/scss/utility-mixins/clearfix.scss +0 -9
  620. package/src/scss/utility-mixins/color.scss +0 -228
  621. package/src/scss/utility-mixins/composite.scss +0 -24
  622. package/src/scss/utility-mixins/cursor.scss +0 -36
  623. package/src/scss/utility-mixins/deprecated.scss +0 -20
  624. package/src/scss/utility-mixins/display.scss +0 -192
  625. package/src/scss/utility-mixins/flex.scss +0 -360
  626. package/src/scss/utility-mixins/grid.scss +0 -50
  627. package/src/scss/utility-mixins/image.scss +0 -8
  628. package/src/scss/utility-mixins/index.scss +0 -47
  629. package/src/scss/utility-mixins/list-style.scss +0 -12
  630. package/src/scss/utility-mixins/opacity.scss +0 -32
  631. package/src/scss/utility-mixins/outline.scss +0 -12
  632. package/src/scss/utility-mixins/overflow.scss +0 -45
  633. package/src/scss/utility-mixins/pointer-events.scss +0 -12
  634. package/src/scss/utility-mixins/sizing.scss +0 -582
  635. package/src/scss/utility-mixins/spacing.scss +0 -1564
  636. package/src/scss/utility-mixins/svg.scss +0 -79
  637. package/src/scss/utility-mixins/text.scss +0 -183
  638. package/src/scss/utility-mixins/transform.scss +0 -58
  639. package/src/scss/utility-mixins/transition.scss +0 -44
  640. package/src/scss/utility-mixins/typography.scss +0 -381
  641. package/src/scss/utility-mixins/vertical-align.scss +0 -22
  642. package/src/scss/utility-mixins/visibility.scss +0 -12
  643. package/src/scss/utility-mixins/z-index.scss +0 -37
  644. package/src/scss/variables.scss +0 -337
  645. package/src/tokens/action.tokens.json +0 -566
  646. package/src/tokens/background.tokens.json +0 -62
  647. package/src/tokens/border.tokens.json +0 -43
  648. package/src/tokens/build/css/tokens.css +0 -953
  649. package/src/tokens/build/css/tokens.dark.css +0 -953
  650. package/src/tokens/build/js/tokens.dark.js +0 -951
  651. package/src/tokens/build/js/tokens.js +0 -951
  652. package/src/tokens/build/json/tokens.dark.json +0 -21803
  653. package/src/tokens/build/scss/_tokens.dark.scss +0 -950
  654. package/src/tokens/build/scss/_tokens.scss +0 -950
  655. package/src/tokens/build/scss/_tokens_custom_properties.scss +0 -951
  656. package/src/tokens/build/tailwind/tokens.cjs +0 -336
  657. package/src/tokens/color.alpha.tokens.json +0 -70
  658. package/src/tokens/color.constant.tokens.json +0 -660
  659. package/src/tokens/color.data_viz.tokens.json +0 -509
  660. package/src/tokens/common_story_options.js +0 -25
  661. package/src/tokens/contextual/alert.tokens.json +0 -209
  662. package/src/tokens/contextual/avatar.tokens.json +0 -112
  663. package/src/tokens/contextual/badge.tokens.json +0 -879
  664. package/src/tokens/contextual/banner.tokens.json +0 -38
  665. package/src/tokens/contextual/breadcrumb.tokens.json +0 -11
  666. package/src/tokens/contextual/broadcast.tokens.json +0 -222
  667. package/src/tokens/contextual/button.tokens.json +0 -874
  668. package/src/tokens/contextual/datepicker.tokens.json +0 -25
  669. package/src/tokens/contextual/dropdown.tokens.json +0 -148
  670. package/src/tokens/contextual/filtered-search.tokens.json +0 -72
  671. package/src/tokens/contextual/label.tokens.json +0 -118
  672. package/src/tokens/contextual/link.tokens.json +0 -46
  673. package/src/tokens/contextual/progress-bar.tokens.json +0 -38
  674. package/src/tokens/contextual/skeleton-loader.tokens.json +0 -24
  675. package/src/tokens/contextual/spinner.tokens.json +0 -38
  676. package/src/tokens/contextual/table.tokens.json +0 -24
  677. package/src/tokens/contextual/tabs.tokens.json +0 -18
  678. package/src/tokens/contextual/toggle.tokens.json +0 -59
  679. package/src/tokens/contextual/token.tokens.json +0 -21
  680. package/src/tokens/control.tokens.json +0 -177
  681. package/src/tokens/deprecated.color.theme.tokens.json +0 -736
  682. package/src/tokens/deprecated.color.tokens.json +0 -800
  683. package/src/tokens/deprecated.color.transparency.tokens.json +0 -110
  684. package/src/tokens/feedback.tokens.json +0 -200
  685. package/src/tokens/focus-ring.tokens.json +0 -21
  686. package/src/tokens/icon.tokens.json +0 -78
  687. package/src/tokens/line_height.tokens.json +0 -74
  688. package/src/tokens/shadow.tokens.json +0 -14
  689. package/src/tokens/status.tokens.json +0 -196
  690. package/src/tokens/text.tokens.json +0 -105
  691. package/src/tokens/tokens_story.vue +0 -84
  692. package/src/tokens/tokens_table.vue +0 -248
  693. package/src/utils/breakpoints.js +0 -21
  694. package/src/utils/charts/config.js +0 -514
  695. package/src/utils/charts/constants.js +0 -61
  696. package/src/utils/charts/mock_data.js +0 -259
  697. package/src/utils/charts/story_config.js +0 -21
  698. package/src/utils/charts/theme.js +0 -344
  699. package/src/utils/charts/utils.js +0 -49
  700. package/src/utils/constants.js +0 -347
  701. package/src/utils/data_utils.js +0 -28
  702. package/src/utils/datetime_utility.js +0 -63
  703. package/src/utils/i18n.js +0 -62
  704. package/src/utils/is_slot_empty.js +0 -40
  705. package/src/utils/number_utils.js +0 -120
  706. package/src/utils/play_utils.js +0 -9
  707. package/src/utils/set_utils.js +0 -24
  708. package/src/utils/stories_constants.js +0 -30
  709. package/src/utils/stories_utils.js +0 -5
  710. package/src/utils/story_decorators/container.js +0 -14
  711. package/src/utils/string_utils.js +0 -79
  712. package/src/utils/svgs/svg_paths.js +0 -10
  713. package/src/utils/use_fake_date.js +0 -27
  714. package/src/utils/use_mock_intersection_observer.js +0 -96
  715. package/src/utils/utils.js +0 -206
  716. package/src/utils.js +0 -4
  717. package/tailwind.defaults.js +0 -543
@@ -0,0 +1,862 @@
1
+ # Form Checkbox
2
+
3
+ > For cross browser consistency, `<b-form-checkbox-group>` and `<b-form-checkbox>` use Bootstrap's
4
+ > custom checkbox input to replace the browser default checkbox input. It is built on top of
5
+ > semantic and accessible markup, so it is a solid replacement for the default checkbox input.
6
+
7
+ **Example 1:** Single checkbox
8
+
9
+ ```html
10
+ <template>
11
+ <div>
12
+ <b-form-checkbox
13
+ id="checkbox-1"
14
+ v-model="status"
15
+ name="checkbox-1"
16
+ value="accepted"
17
+ unchecked-value="not_accepted"
18
+ >
19
+ I accept the terms and use
20
+ </b-form-checkbox>
21
+
22
+ <div>State: <strong>{{ status }}</strong></div>
23
+ </div>
24
+ </template>
25
+
26
+ <script>
27
+ export default {
28
+ data() {
29
+ return {
30
+ status: 'not_accepted'
31
+ }
32
+ }
33
+ }
34
+ </script>
35
+
36
+ <!-- b-form-checkbox.vue -->
37
+ ```
38
+
39
+ **Example 2:** Multiple choice checkboxes
40
+
41
+ ```html
42
+ <template>
43
+ <div>
44
+ <b-form-group label="Using options array:" v-slot="{ ariaDescribedby }">
45
+ <b-form-checkbox-group
46
+ id="checkbox-group-1"
47
+ v-model="selected"
48
+ :options="options"
49
+ :aria-describedby="ariaDescribedby"
50
+ name="flavour-1"
51
+ ></b-form-checkbox-group>
52
+ </b-form-group>
53
+
54
+ <b-form-group label="Using sub-components:" v-slot="{ ariaDescribedby }">
55
+ <b-form-checkbox-group
56
+ id="checkbox-group-2"
57
+ v-model="selected"
58
+ :aria-describedby="ariaDescribedby"
59
+ name="flavour-2"
60
+ >
61
+ <b-form-checkbox value="orange">Orange</b-form-checkbox>
62
+ <b-form-checkbox value="apple">Apple</b-form-checkbox>
63
+ <b-form-checkbox value="pineapple">Pineapple</b-form-checkbox>
64
+ <b-form-checkbox value="grape">Grape</b-form-checkbox>
65
+ </b-form-checkbox-group>
66
+ </b-form-group>
67
+
68
+ <div>Selected: <strong>{{ selected }}</strong></div>
69
+ </div>
70
+ </template>
71
+
72
+ <script>
73
+ export default {
74
+ data() {
75
+ return {
76
+ selected: [], // Must be an array reference!
77
+ options: [
78
+ { text: 'Orange', value: 'orange' },
79
+ { text: 'Apple', value: 'apple' },
80
+ { text: 'Pineapple', value: 'pineapple' },
81
+ { text: 'Grape', value: 'grape' }
82
+ ]
83
+ }
84
+ }
85
+ }
86
+ </script>
87
+
88
+ <!-- b-form-checkbox-multiple.vue -->
89
+ ```
90
+
91
+ Feel free to mix and match `options` prop and `<b-form-checkbox>` in `<b-form-checkbox-group>`.
92
+ Manually placed `<b-form-checkbox>` inputs will appear _below_ any checkbox inputs generated by the
93
+ `options` prop. To have them appear _above_ the inputs generated by `options`, place them in the
94
+ named slot `first`.
95
+
96
+ ## Checkbox group options array
97
+
98
+ `options` can be an array of strings or objects. Available fields:
99
+
100
+ - **`value`** The selected value which will be set on `v-model`
101
+ - **`disabled`** Disables item for selection
102
+ - **`text`** Display text, or **`html`** Display basic inline html
103
+
104
+ `value` can be a string, number, or simple object. Avoid using complex types in values.
105
+
106
+ If both `html` and `text` are provided, `html` will take precedence. Only basic/native HTML is
107
+ supported in the `html` field (components will not work). Note that not all browsers will render
108
+ inline html (i.e. `<i>`, `<strong>`, etc.) inside `<option>` elements of a `<select>`.
109
+
110
+ <p class="alert alert-danger">
111
+ <strong>Be cautious</strong> of placing user supplied content in the <code>html</code> field,
112
+ as it may make you vulnerable to
113
+ <a class="alert-link" href="https://en.wikipedia.org/wiki/Cross-site_scripting">
114
+ <abbr title="Cross Site Scripting Attacks">XSS attacks</abbr></a>, if you do not first
115
+ <a class="alert-link" href="https://en.wikipedia.org/wiki/HTML_sanitization">sanitize</a> the
116
+ user supplied string.
117
+ </p>
118
+
119
+ <!-- eslint-disable no-unused-vars -->
120
+
121
+ ```js
122
+ const options = ['A', 'B', 'C', { text: 'D', value: { d: 1 }, disabled: true }, 'E', 'F']
123
+ ```
124
+
125
+ If an array entry is a string, it will be used for both the generated `value` and `text` fields.
126
+
127
+ You can mix using strings and [objects](#options-as-an-array-of-objects) in the array.
128
+
129
+ Internally, BootstrapVue will convert the above array to the following array (the
130
+ [array of objects](#options-as-an-array-of-objects)) format:
131
+
132
+ <!-- eslint-disable no-unused-vars -->
133
+
134
+ ```js
135
+ const options = [
136
+ { text: 'A', value: 'A', disabled: false },
137
+ { text: 'B', value: 'B', disabled: false },
138
+ { text: 'C', value: 'C', disabled: false },
139
+ { text: 'D', value: { d: 1 }, disabled: true },
140
+ { text: 'E', value: 'E', disabled: false },
141
+ { text: 'F', value: 'F', disabled: false }
142
+ ]
143
+ ```
144
+
145
+ ### Options as an array of objects
146
+
147
+ <!-- eslint-disable no-unused-vars -->
148
+
149
+ ```js
150
+ const options = [
151
+ { text: 'Item 1', value: 'first' },
152
+ { text: 'Item 2', value: 'second' },
153
+ { html: '<b>Item</b> 3', value: 'third', disabled: true },
154
+ { text: 'Item 4' },
155
+ { text: 'Item 5', value: { foo: 'bar', baz: true } }
156
+ ]
157
+ ```
158
+
159
+ If `value` is missing, then `text` will be used as both the `value` and `text` fields. If you use
160
+ the `html` property, you **must** supply a `value` property.
161
+
162
+ Internally, BootstrapVue will convert the above array to the following array (the
163
+ [array of objects](#options-as-an-array-of-objects)) format:
164
+
165
+ <!-- eslint-disable no-unused-vars -->
166
+
167
+ ```js
168
+ const options = [
169
+ { text: 'Item 1', value: 'first', disabled: false },
170
+ { text: 'Item 2', value: 'second', disabled: false },
171
+ { html: '<b>Item</b> 3', value: 'third', disabled: true },
172
+ { text: 'Item 4', value: 'Item 4', disabled: false },
173
+ { text: 'Item 5', value: 'E', disabled: false }
174
+ ]
175
+ ```
176
+
177
+ ### Changing the option field names
178
+
179
+ If you want to customize the field property names (for example using `name` field for display
180
+ `text`) you can easily change them by setting the `text-field`, `html-field`, `value-field`, and
181
+ `disabled-field` props to a string that contains the property name you would like to use:
182
+
183
+ ```html
184
+ <template>
185
+ <div>
186
+ <b-form-checkbox-group
187
+ v-model="selected"
188
+ :options="options"
189
+ class="mb-3"
190
+ value-field="item"
191
+ text-field="name"
192
+ disabled-field="notEnabled"
193
+ ></b-form-checkbox-group>
194
+ <div class="mt-3">Selected: <strong>{{ selected }}</strong></div>
195
+ </div>
196
+ </template>
197
+
198
+ <script>
199
+ export default {
200
+ data() {
201
+ return {
202
+ selected: [],
203
+ options: [
204
+ { item: 'A', name: 'Option A' },
205
+ { item: 'B', name: 'Option B' },
206
+ { item: 'D', name: 'Option C', notEnabled: true },
207
+ { item: { d: 1 }, name: 'Option D' }
208
+ ]
209
+ }
210
+ }
211
+ }
212
+ </script>
213
+
214
+ <!-- b-form-checkbox-group-options-fields.vue -->
215
+ ```
216
+
217
+ ## Inline and stacked checkboxes
218
+
219
+ `<b-form-checkbox-group>` components render inline checkboxes by default, while `<b-form-checkbox>`
220
+ renders block-level (stacked) checkboxes.
221
+
222
+ Set the prop `stacked` on `<b-form-checkbox-group>` to place each form control one over the other,
223
+ or if using individual checkboxes not inside a `<b-form-checkbox-group>`, set the `inline` prop on
224
+ `<b-form-checkbox>`.
225
+
226
+ ```html
227
+ <template>
228
+ <div>
229
+ <b-form-group
230
+ label="Form-checkbox-group inline checkboxes (default)"
231
+ v-slot="{ ariaDescribedby }"
232
+ >
233
+ <b-form-checkbox-group
234
+ v-model="selected"
235
+ :options="options"
236
+ :aria-describedby="ariaDescribedby"
237
+ name="flavour-1a"
238
+ ></b-form-checkbox-group>
239
+ </b-form-group>
240
+
241
+ <b-form-group
242
+ label="Form-checkbox-group stacked checkboxes"
243
+ v-slot="{ ariaDescribedby }"
244
+ >
245
+ <b-form-checkbox-group
246
+ v-model="selected"
247
+ :options="options"
248
+ :aria-describedby="ariaDescribedby"
249
+ name="flavour-2a"
250
+ stacked
251
+ ></b-form-checkbox-group>
252
+ </b-form-group>
253
+
254
+ <b-form-group
255
+ label="Individual stacked checkboxes (default)"
256
+ v-slot="{ ariaDescribedby }"
257
+ >
258
+ <b-form-checkbox
259
+ v-for="option in options"
260
+ v-model="selected"
261
+ :key="option.value"
262
+ :value="option.value"
263
+ :aria-describedby="ariaDescribedby"
264
+ name="flavour-3a"
265
+ >
266
+ {{ option.text }}
267
+ </b-form-checkbox>
268
+ </b-form-group>
269
+
270
+ <b-form-group
271
+ label="Individual inline checkboxes"
272
+ v-slot="{ ariaDescribedby }"
273
+ >
274
+ <b-form-checkbox
275
+ v-for="option in options"
276
+ v-model="selected"
277
+ :key="option.value"
278
+ :value="option.value"
279
+ :aria-describedby="ariaDescribedby"
280
+ name="flavour-4a"
281
+ inline
282
+ >
283
+ {{ option.text }}
284
+ </b-form-checkbox>
285
+ </b-form-group>
286
+ </div>
287
+ </template>
288
+
289
+ <script>
290
+ export default {
291
+ data() {
292
+ return {
293
+ selected: [], // Must be an array reference!
294
+ options: [
295
+ { text: 'Orange', value: 'orange' },
296
+ { text: 'Apple', value: 'apple' },
297
+ { text: 'Pineapple', value: 'pineapple' },
298
+ { text: 'Grape', value: 'grape' }
299
+ ]
300
+ }
301
+ }
302
+ }
303
+ </script>
304
+
305
+ <!-- b-form-checkbox-stacked.vue -->
306
+ ```
307
+
308
+ ## Control sizing
309
+
310
+ Use the `size` prop to control the size of the checkbox. The default size is medium. Supported size
311
+ values are `sm` (small) and `lg` (large).
312
+
313
+ ```html
314
+ <div>
315
+ <b-form-checkbox size="sm">Small</b-form-checkbox>
316
+ <b-form-checkbox>Default</b-form-checkbox>
317
+ <b-form-checkbox size="lg">Large</b-form-checkbox>
318
+ </div>
319
+
320
+ <!-- form-checkbox-sizes.vue -->
321
+ ```
322
+
323
+ Sizes can be set on individual `<b-form-checkbox>` components, or inherited from the size setting of
324
+ `<b-form-checkbox-group>`.
325
+
326
+ **Note:** Bootstrap v4.x does not natively support sizes for the custom checkbox control. However,
327
+ BootstrapVue includes custom SCSS/CSS that adds support for sizing the custom checkboxes.
328
+
329
+ ## Checkbox values and `v-model`
330
+
331
+ By default, `<b-form-checkbox>` value will be `true` when checked and `false` when unchecked. You
332
+ can customize the checked and unchecked values by specifying the `value` and `unchecked-value`
333
+ properties, respectively.
334
+
335
+ The `v-model` binds to the `checked` prop. When you have multiple checkboxes that bind to a single
336
+ data state variable, you **must** provide an array reference (`[]`) to your `v-model`. Do not use
337
+ the `checked` prop directly.
338
+
339
+ Note that when `v-model` is bound to multiple checkboxes (i.e an array ref), the `unchecked-value`
340
+ is **not used**. Only the value(s) of the checked checkboxes will be returned in the `v-model` bound
341
+ array. You should provide a unique value for each checkbox's `value` prop (the default of `true`
342
+ will not work when bound to an array)
343
+
344
+ To pre-check any radios, set the `v-model` to the value(s) of the checks that you would like
345
+ pre-selected.
346
+
347
+ When placing individual `<b-form-checkbox>` components within a `<b-form-checkbox-group>`, most
348
+ props and the `v-model` are inherited from the `<b-form-checkbox-group>`.
349
+
350
+ **Note:** the `unchecked-value` prop _does not_ affect the native `<input>`'s `value` attribute,
351
+ because browsers don't include unchecked boxes in form submissions. To guarantee that one of two
352
+ values is submitted in a native `<form>` submit (e.g. `'yes'` or `'no'`), use radio inputs instead.
353
+ This is the same limitation that
354
+ [Vue has with native checkbox inputs](https://vuejs.org/v2/guide/forms.html#Checkbox-1).
355
+
356
+ ### Multiple checkboxes and accessibility
357
+
358
+ When binding multiple checkboxes together, you must set the `name` prop to the same value for all
359
+ `<b-form-checkbox>`s in the group individually or via the `name` prop of `<b-form-checkbox-group>`.
360
+ This will inform users of assistive technologies that the checkboxes are related and enables native
361
+ browser keyboard navigation.
362
+
363
+ Whenever using multiple checkboxes, it is recommended that the checkboxes be placed in a
364
+ [`<b-form-group>`](/docs/components/form-group) component to associate a label with the entire group
365
+ of checkboxes. See examples above.
366
+
367
+ ## Button style checkboxes
368
+
369
+ You can optionally render checkboxes to appear as buttons, either individually, or in a group.
370
+
371
+ Button style checkboxes will have the class `.active` automatically applied to the label when they
372
+ are in the _checked_ state.
373
+
374
+ ### Individual checkbox button style
375
+
376
+ A single checkbox can be rendered with a button appearance by setting the prop `button` to `true`
377
+
378
+ Change the button variant by setting the `button-variant` prop to one of the standard Bootstrap
379
+ button variants (see [`<b-button>`](/docs/components/button) for supported variants). The default
380
+ variant is `secondary`.
381
+
382
+ ```html
383
+ <template>
384
+ <div>
385
+ <b-form-checkbox v-model="checked1" name="check-button" button>
386
+ Button Checkbox <b>(Checked: {{ checked1 }})</b>
387
+ </b-form-checkbox>
388
+ <b-form-checkbox v-model="checked2" name="check-button" button button-variant="info">
389
+ Button Checkbox <b>(Checked: {{ checked2 }})</b>
390
+ </b-form-checkbox>
391
+ </div>
392
+ </template>
393
+
394
+ <script>
395
+ export default {
396
+ data() {
397
+ return {
398
+ checked1: false,
399
+ checked2: false
400
+ }
401
+ }
402
+ }
403
+ </script>
404
+
405
+ <!-- b-form-checkbox-button.vue -->
406
+ ```
407
+
408
+ The `inline` prop has no effect on individual button-style checkboxes.
409
+
410
+ ### Grouped button style checkboxes
411
+
412
+ Render groups of checkboxes with the look of a button-group by setting the prop `buttons` on
413
+ `<b-form-checkbox-group>`. Change the button variant by setting the `button-variant` prop to one of
414
+ the standard Bootstrap button variants (see [`<b-button>`](/docs/components/button) for supported
415
+ variants). The default `button-variant` is `secondary`.
416
+
417
+ ```html
418
+ <template>
419
+ <div>
420
+ <b-form-group
421
+ label="Button-group style checkboxes"
422
+ v-slot="{ ariaDescribedby }"
423
+ >
424
+ <b-form-checkbox-group
425
+ v-model="selected"
426
+ :options="options"
427
+ :aria-describedby="ariaDescribedby"
428
+ name="buttons-1"
429
+ buttons
430
+ ></b-form-checkbox-group>
431
+ </b-form-group>
432
+
433
+ <b-form-group
434
+ label="Button-group style checkboxes with variant primary and large buttons"
435
+ v-slot="{ ariaDescribedby }"
436
+ >
437
+ <b-form-checkbox-group
438
+ v-model="selected"
439
+ :options="options"
440
+ :aria-describedby="ariaDescribedby"
441
+ buttons
442
+ button-variant="primary"
443
+ size="lg"
444
+ name="buttons-2"
445
+ ></b-form-checkbox-group>
446
+ </b-form-group>
447
+
448
+ <b-form-group
449
+ label="Stacked (vertical) button-group style checkboxes"
450
+ v-slot="{ ariaDescribedby }"
451
+ >
452
+ <b-form-checkbox-group
453
+ v-model="selected"
454
+ :options="options"
455
+ :aria-describedby="ariaDescribedby"
456
+ stacked
457
+ buttons
458
+ ></b-form-checkbox-group>
459
+ </b-form-group>
460
+ </div>
461
+ </template>
462
+
463
+ <script>
464
+ export default {
465
+ data() {
466
+ return {
467
+ selected: [], // Must be an array reference!
468
+ options: [
469
+ { text: 'Orange', value: 'orange' },
470
+ { text: 'Apple', value: 'apple' },
471
+ { text: 'Pineapple', value: 'pineapple' },
472
+ { text: 'Grape', value: 'grape' }
473
+ ]
474
+ }
475
+ }
476
+ }
477
+ </script>
478
+
479
+ <!-- b-form-checkbox-button-group.vue -->
480
+ ```
481
+
482
+ ## Switch style checkboxes
483
+
484
+ Switch styling is supported on `<b-form-checkbox>` and `<b-form-checkbox-group>` components.
485
+
486
+ **Note:** If the checkbox is in [button mode](#button-style-checkboxes), switch mode will have no
487
+ effect.
488
+
489
+ ### Individual checkbox switch style
490
+
491
+ A single checkbox can be rendered with a switch appearance by setting the prop `switch` to `true`
492
+
493
+ ```html
494
+ <template>
495
+ <div>
496
+ <b-form-checkbox v-model="checked" name="check-button" switch>
497
+ Switch Checkbox <b>(Checked: {{ checked }})</b>
498
+ </b-form-checkbox>
499
+ </div>
500
+ </template>
501
+
502
+ <script>
503
+ export default {
504
+ data() {
505
+ return {
506
+ checked: false
507
+ }
508
+ }
509
+ }
510
+ </script>
511
+
512
+ <!-- b-form-checkbox-switch.vue -->
513
+ ```
514
+
515
+ ### Grouped switch style checkboxes
516
+
517
+ Render groups of checkboxes with the look of a switches by setting the prop `switches` on
518
+ `<b-form-checkbox-group>`.
519
+
520
+ ```html
521
+ <template>
522
+ <div>
523
+ <b-form-group
524
+ label="Inline switch style checkboxes"
525
+ v-slot="{ ariaDescribedby }"
526
+ >
527
+ <b-form-checkbox-group
528
+ v-model="selected"
529
+ :options="options"
530
+ :aria-describedby="ariaDescribedby"
531
+ switches
532
+ ></b-form-checkbox-group>
533
+ </b-form-group>
534
+
535
+ <b-form-group
536
+ label="Stacked (vertical) switch style checkboxes"
537
+ v-slot="{ ariaDescribedby }"
538
+ >
539
+ <b-form-checkbox-group
540
+ v-model="selected"
541
+ :options="options"
542
+ :aria-describedby="ariaDescribedby"
543
+ switches
544
+ stacked
545
+ ></b-form-checkbox-group>
546
+ </b-form-group>
547
+ </div>
548
+ </template>
549
+
550
+ <script>
551
+ export default {
552
+ data() {
553
+ return {
554
+ selected: [], // Must be an array reference!
555
+ options: [
556
+ { text: 'Red', value: 'red' },
557
+ { text: 'Green', value: 'green' },
558
+ { text: 'Yellow (disabled)', value: 'yellow', disabled: true },
559
+ { text: 'Blue', value: 'blue' }
560
+ ]
561
+ }
562
+ }
563
+ }
564
+ </script>
565
+
566
+ <!-- b-form-checkboxes-switch-group.vue -->
567
+ ```
568
+
569
+ ### Switch sizing
570
+
571
+ Use the `size` prop to control the size of the switch. The default size is medium. Supported size
572
+ values are `sm` (small) and `lg` (large).
573
+
574
+ ```html
575
+ <div>
576
+ <b-form-checkbox switch size="sm">Small</b-form-checkbox>
577
+ <b-form-checkbox switch>Default</b-form-checkbox>
578
+ <b-form-checkbox switch size="lg">Large</b-form-checkbox>
579
+ </div>
580
+
581
+ <!-- form-checkbox-switch-sizes.vue -->
582
+ ```
583
+
584
+ Sizes can be set on individual `<b-form-checkbox>` components, or inherited from the size setting of
585
+ `<b-form-checkbox-group>`.
586
+
587
+ **Note:** Bootstrap v4.x does not natively support sizes for the custom switch control. However,
588
+ BootstrapVue includes custom SCSS/CSS that adds support for sizing the custom switches.
589
+
590
+ ## Non custom check inputs (plain)
591
+
592
+ You can have `<b-form-checkbox-group>` or `<b-form-checkbox>` render a browser native checkbox input
593
+ by setting the `plain` prop.
594
+
595
+ ```html
596
+ <template>
597
+ <div>
598
+ <b-form-group label="Plain inline checkboxes" v-slot="{ ariaDescribedby }">
599
+ <b-form-checkbox-group
600
+ v-model="selected"
601
+ :options="options"
602
+ :aria-describedby="ariaDescribedby"
603
+ plain
604
+ ></b-form-checkbox-group>
605
+ </b-form-group>
606
+
607
+ <b-form-group label="Plain stacked checkboxes" v-slot="{ ariaDescribedby }">
608
+ <b-form-checkbox-group
609
+ v-model="selected"
610
+ :options="options"
611
+ :aria-describedby="ariaDescribedby"
612
+ plain
613
+ stacked
614
+ ></b-form-checkbox-group>
615
+ </b-form-group>
616
+ </div>
617
+ </template>
618
+
619
+ <script>
620
+ export default {
621
+ data() {
622
+ return {
623
+ selected: [], // Must be an array reference!
624
+ options: [
625
+ { text: 'Orange', value: 'orange' },
626
+ { text: 'Apple', value: 'apple' },
627
+ { text: 'Pineapple', value: 'pineapple' },
628
+ { text: 'Grape', value: 'grape' }
629
+ ]
630
+ }
631
+ }
632
+ }
633
+ </script>
634
+
635
+ <!-- b-form-checkbox-plain.vue -->
636
+ ```
637
+
638
+ **Note:** The `plain` prop has no effect when `button` or `buttons` is set.
639
+
640
+ ## Contextual states
641
+
642
+ Bootstrap includes validation styles for `valid` and `invalid` states on most form controls.
643
+
644
+ Generally speaking, you'll want to use a particular state for specific types of feedback:
645
+
646
+ - `false` (denotes invalid state) is great for when there's a blocking or required field. A user
647
+ must fill in this field properly to submit the form.
648
+ - `true` (denotes valid state) is ideal for situations when you have per-field validation throughout
649
+ a form and want to encourage a user through the rest of the fields.
650
+ - `null` Displays no validation state (neither valid nor invalid)
651
+
652
+ To apply one of the contextual state icons on `<b-form-checkbox>`, set the `state` prop to `false`
653
+ (for invalid), `true` (for valid), or `null` (no validation state).
654
+
655
+ **Note:** Contextual states are **not** supported when in button mode.
656
+
657
+ ### Contextual state and validation example
658
+
659
+ ```html
660
+ <template>
661
+ <div>
662
+ <b-form-checkbox-group
663
+ v-model="value"
664
+ :options="options"
665
+ :state="state"
666
+ name="checkbox-validation"
667
+ >
668
+ <b-form-invalid-feedback :state="state">Please select two</b-form-invalid-feedback>
669
+ <b-form-valid-feedback :state="state">Thank you</b-form-valid-feedback>
670
+ </b-form-checkbox-group>
671
+ </div>
672
+ </template>
673
+
674
+ <script>
675
+ export default {
676
+ data() {
677
+ return {
678
+ value: [],
679
+ options: [
680
+ { text: 'First Check', value: 'first' },
681
+ { text: 'Second Check', value: 'second' },
682
+ { text: 'Third Check', value: 'third' }
683
+ ]
684
+ }
685
+ },
686
+ computed: {
687
+ state() {
688
+ return this.value.length === 2
689
+ }
690
+ }
691
+ }
692
+ </script>
693
+
694
+ <!-- form-checkbox-validation.vue -->
695
+ ```
696
+
697
+ ### Required constraint
698
+
699
+ When using individual `<b-form-checkbox>` components (not in a `<b-form-checkbox-group>`), and you
700
+ want the checkbox(es) to be `required` in your form, you **must** provide a `name` on each
701
+ `<b-form-checkbox>` in order for the required constraint to work. All `<b-form-checkbox>` components
702
+ tied to the same `v-model` **must** have the same `name`.
703
+
704
+ The `name` is required in order for Assistive Technologies (such as screen readers, and keyboard
705
+ only users) to know which checkboxes belong to the same form variable (the name also automatically
706
+ enables native browser keyboard navigation), hence `required` will only work if `name` is set.
707
+ `<b-form-checkbox-group>` will automatically generate a unique input name if one is not provided on
708
+ the group.
709
+
710
+ ## Autofocus
711
+
712
+ When the `autofocus` prop is set on `<b-form-checkbox>`, the input will be auto-focused when it is
713
+ inserted (i.e. **mounted**) into the document, or re-activated when inside a Vue `<keep-alive>`
714
+ component. Note that this prop **does not** set the `autofocus` attribute on the input, nor can it
715
+ tell when the input becomes visible.
716
+
717
+ ## Indeterminate (tri-state) support
718
+
719
+ Normally a checkbox input can only have two states: _checked_ or _unchecked_. They can have any
720
+ value, but they either submit that value (_checked_) or don't (_unchecked_) with a form submission
721
+ (although BootstrapVue allows a value for the _unchecked_ state on a single checkbox)
722
+
723
+ _Visually_, there are actually three states a checkbox can be in: _checked_, _unchecked_, or
724
+ **_indeterminate_**.
725
+
726
+ The _indeterminate_ state is **visual only**. The checkbox is still either checked or unchecked as a
727
+ value. That means the visual indeterminate state masks the real value of the checkbox, so that
728
+ better make sense in your UI!
729
+
730
+ `<b-form-checkbox>` supports setting this visual indeterminate state via the `indeterminate` prop
731
+ (defaults to `false`). Clicking the checkbox will clear its indeterminate state. The `indeterminate`
732
+ prop can be synced to the checkbox's state by v-binding the `indeterminate` prop with the `.sync`
733
+ modifier.
734
+
735
+ **Note:** indeterminate styling is not supported in button or switch mode, nor is it supported in
736
+ `<b-form-checkbox-group>` (multiple checkboxes).
737
+
738
+ **Single Indeterminate checkbox:**
739
+
740
+ ```html
741
+ <template>
742
+ <div>
743
+ <b-form-checkbox v-model="checked" :indeterminate.sync="indeterminate">
744
+ Click me to see what happens
745
+ </b-form-checkbox>
746
+
747
+ <div class="mt-3">
748
+ Checked: <strong>{{ checked }}</strong><br>
749
+ Indeterminate: <strong>{{ indeterminate }}</strong>
750
+ </div>
751
+
752
+ <b-button @click="toggleIndeterminate">Toggle Indeterminate State</b-button>
753
+ </div>
754
+ </template>
755
+
756
+ <script>
757
+ export default {
758
+ data() {
759
+ return {
760
+ checked: true,
761
+ indeterminate: true
762
+ }
763
+ },
764
+ methods: {
765
+ toggleIndeterminate() {
766
+ this.indeterminate = !this.indeterminate
767
+ }
768
+ }
769
+ }
770
+ </script>
771
+
772
+ <!-- b-form-checkbox-indeterminate.vue -->
773
+ ```
774
+
775
+ **Indeterminate checkbox use-case example:**
776
+
777
+ ```html
778
+ <template>
779
+ <div>
780
+ <b-form-group>
781
+ <template #label>
782
+ <b>Choose your flavours:</b><br>
783
+ <b-form-checkbox
784
+ v-model="allSelected"
785
+ :indeterminate="indeterminate"
786
+ aria-describedby="flavours"
787
+ aria-controls="flavours"
788
+ @change="toggleAll"
789
+ >
790
+ {{ allSelected ? 'Un-select All' : 'Select All' }}
791
+ </b-form-checkbox>
792
+ </template>
793
+
794
+ <template v-slot="{ ariaDescribedby }">
795
+ <b-form-checkbox-group
796
+ id="flavors"
797
+ v-model="selected"
798
+ :options="flavours"
799
+ :aria-describedby="ariaDescribedby"
800
+ name="flavors"
801
+ class="ml-4"
802
+ aria-label="Individual flavours"
803
+ stacked
804
+ ></b-form-checkbox-group>
805
+ </template>
806
+ </b-form-group>
807
+
808
+ <div>
809
+ Selected: <strong>{{ selected }}</strong><br>
810
+ All Selected: <strong>{{ allSelected }}</strong><br>
811
+ Indeterminate: <strong>{{ indeterminate }}</strong>
812
+ </div>
813
+ </div>
814
+ </template>
815
+
816
+ <script>
817
+ export default {
818
+ data() {
819
+ return {
820
+ flavours: ['Orange', 'Grape', 'Apple', 'Lime', 'Very Berry'],
821
+ selected: [],
822
+ allSelected: false,
823
+ indeterminate: false
824
+ }
825
+ },
826
+ methods: {
827
+ toggleAll(checked) {
828
+ this.selected = checked ? this.flavours.slice() : []
829
+ }
830
+ },
831
+ watch: {
832
+ selected(newValue, oldValue) {
833
+ // Handle changes in individual flavour checkboxes
834
+ if (newValue.length === 0) {
835
+ this.indeterminate = false
836
+ this.allSelected = false
837
+ } else if (newValue.length === this.flavours.length) {
838
+ this.indeterminate = false
839
+ this.allSelected = true
840
+ } else {
841
+ this.indeterminate = true
842
+ this.allSelected = false
843
+ }
844
+ }
845
+ }
846
+ }
847
+ </script>
848
+
849
+ <!-- b-form-checkbox-indeterminate-multiple.vue -->
850
+ ```
851
+
852
+ **Note:** indeterminate is not supported in `button` mode, nor in multiple checkbox mode. Also pay
853
+ attention that plain checkbox (i.e. with prop `plain`) also supports indeterminate state on
854
+ Windows/Linux/Mac/Android, but not on iOS.
855
+
856
+ ### Indeterminate state and accessibility
857
+
858
+ Not all screen readers will convey the indeterminate state to screen reader users. So it is
859
+ recommended to provide some form of textual feedback to the user (possibly by via the `.sr-only`
860
+ class) if the indeterminate state has special contextual meaning in your application.
861
+
862
+ <!-- Component reference added automatically from component package.json -->