@gitlab/ui 92.1.1 → 92.3.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 (449) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/bin/migrate_custom_utils_to_tw.bundled.mjs +11 -3
  3. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_popover/duo_chat_context_item_popover.js +29 -1
  4. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_selections/duo_chat_context_item_selections.js +18 -1
  5. package/dist/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.js +4 -6
  6. package/dist/components/experimental/duo/chat/constants.js +2 -1
  7. package/dist/index.css +4 -2
  8. package/dist/index.css.map +1 -1
  9. package/dist/tailwind.css +1 -1
  10. package/dist/tailwind.css.map +1 -1
  11. package/dist/vendor/bootstrap-vue/src/components/form/index.js +0 -4
  12. package/dist/vendor/bootstrap-vue/src/components/index.js +0 -48
  13. package/dist/vendor/bootstrap-vue/src/components/layout/index.js +0 -6
  14. package/dist/vendor/bootstrap-vue/src/components/nav/index.js +0 -6
  15. package/dist/vendor/bootstrap-vue/src/components/navbar/index.js +1 -8
  16. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +2 -6
  17. package/dist/vendor/bootstrap-vue/src/constants/classes.js +1 -2
  18. package/dist/vendor/bootstrap-vue/src/constants/components.js +1 -51
  19. package/dist/vendor/bootstrap-vue/src/constants/events.js +1 -12
  20. package/dist/vendor/bootstrap-vue/src/constants/key-codes.js +1 -5
  21. package/dist/vendor/bootstrap-vue/src/constants/props.js +1 -4
  22. package/dist/vendor/bootstrap-vue/src/constants/regex.js +1 -20
  23. package/dist/vendor/bootstrap-vue/src/constants/slots.js +1 -33
  24. package/dist/vendor/bootstrap-vue/src/directives/toggle/toggle.js +1 -1
  25. package/dist/vendor/bootstrap-vue/src/index.js +0 -74
  26. package/dist/vendor/bootstrap-vue/src/utils/array.js +1 -3
  27. package/dist/vendor/bootstrap-vue/src/utils/inspect.js +1 -3
  28. package/dist/vendor/bootstrap-vue/src/utils/math.js +1 -3
  29. package/dist/vendor/bootstrap-vue/src/utils/object.js +1 -6
  30. package/dist/vendor/bootstrap-vue/src/utils/props.js +2 -8
  31. package/dist/vendor/bootstrap-vue/src/utils/string.js +1 -10
  32. package/package.json +1 -1
  33. package/src/components/base/accordion/accordion_item.scss +3 -3
  34. package/src/components/base/alert/alert.scss +3 -3
  35. package/src/components/base/avatar_labeled/avatar_labeled.scss +2 -2
  36. package/src/components/base/avatars_inline/avatars_inline.scss +1 -1
  37. package/src/components/base/badge/badge.scss +2 -2
  38. package/src/components/base/banner/banner.scss +2 -2
  39. package/src/components/base/breadcrumb/breadcrumb.scss +3 -3
  40. package/src/components/base/broadcast_message/broadcast_message.scss +3 -3
  41. package/src/components/base/button/button.scss +26 -16
  42. package/src/components/base/card/card.scss +1 -1
  43. package/src/components/base/datepicker/datepicker.scss +10 -10
  44. package/src/components/base/drawer/drawer.scss +5 -5
  45. package/src/components/base/dropdown/dropdown.scss +28 -28
  46. package/src/components/base/dropdown/dropdown_divider.scss +3 -3
  47. package/src/components/base/dropdown/dropdown_item.scss +9 -9
  48. package/src/components/base/dropdown/dropdown_section_header.scss +2 -2
  49. package/src/components/base/dropdown/dropdown_text.scss +1 -1
  50. package/src/components/base/filtered_search/filtered_search.scss +7 -7
  51. package/src/components/base/filtered_search/filtered_search_suggestion.scss +1 -1
  52. package/src/components/base/filtered_search/filtered_search_suggestion_list.scss +3 -3
  53. package/src/components/base/filtered_search/filtered_search_term.scss +2 -2
  54. package/src/components/base/filtered_search/filtered_search_token.scss +4 -4
  55. package/src/components/base/filtered_search/filtered_search_token_segment.scss +2 -2
  56. package/src/components/base/form/form_checkbox/form_checkbox.scss +10 -10
  57. package/src/components/base/form/form_group/form_group.scss +5 -5
  58. package/src/components/base/form/form_input/form_input.scss +2 -2
  59. package/src/components/base/form/form_select/form_select.scss +2 -2
  60. package/src/components/base/keyset_pagination/keyset_pagination.scss +1 -1
  61. package/src/components/base/label/label.scss +1 -1
  62. package/src/components/base/loading_icon/loading_icon.scss +1 -1
  63. package/src/components/base/markdown/markdown.scss +33 -33
  64. package/src/components/base/modal/modal.scss +11 -11
  65. package/src/components/base/new_dropdowns/dropdown.scss +14 -14
  66. package/src/components/base/new_dropdowns/dropdown_item.scss +9 -9
  67. package/src/components/base/new_dropdowns/listbox/listbox.scss +1 -1
  68. package/src/components/base/pagination/pagination.scss +3 -3
  69. package/src/components/base/path/path.scss +5 -5
  70. package/src/components/base/popover/popover.scss +5 -5
  71. package/src/components/base/search_box_by_click/search_box_by_click.scss +2 -2
  72. package/src/components/base/search_box_by_type/search_box_by_type.scss +4 -4
  73. package/src/components/base/table/table.scss +4 -4
  74. package/src/components/base/tabs/tabs/tabs.scss +10 -10
  75. package/src/components/base/toast/toast.scss +7 -7
  76. package/src/components/base/toggle/toggle.scss +6 -6
  77. package/src/components/base/token/token.scss +5 -5
  78. package/src/components/base/tooltip/tooltip.scss +3 -3
  79. package/src/components/charts/legend/legend.scss +4 -4
  80. package/src/components/charts/series_label/series_label.scss +1 -1
  81. package/src/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_popover/duo_chat_context_item_popover.vue +62 -30
  82. package/src/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_selections/duo_chat_context_item_selections.vue +29 -10
  83. package/src/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.scss +1 -1
  84. package/src/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.vue +11 -6
  85. package/src/components/experimental/duo/chat/constants.js +2 -0
  86. package/src/components/experimental/duo/chat/duo_chat.scss +4 -4
  87. package/src/components/shared_components/charts/tooltip_default_format.scss +1 -1
  88. package/src/scss/bootstrap_vue.scss +0 -18
  89. package/src/scss/typescale/_index.scss +9 -9
  90. package/src/vendor/bootstrap-vue/nuxt/index.js +0 -8
  91. package/src/vendor/bootstrap-vue/src/_utilities.scss +0 -9
  92. package/src/vendor/bootstrap-vue/src/_variables.scss +0 -52
  93. package/src/vendor/bootstrap-vue/src/components/form/index.d.ts +0 -3
  94. package/src/vendor/bootstrap-vue/src/components/form/index.js +1 -4
  95. package/src/vendor/bootstrap-vue/src/components/form/package.json +0 -12
  96. package/src/vendor/bootstrap-vue/src/components/index.d.ts +0 -24
  97. package/src/vendor/bootstrap-vue/src/components/index.js +0 -48
  98. package/src/vendor/bootstrap-vue/src/components/index.scss +0 -15
  99. package/src/vendor/bootstrap-vue/src/components/layout/index.d.ts +0 -6
  100. package/src/vendor/bootstrap-vue/src/components/layout/index.js +1 -5
  101. package/src/vendor/bootstrap-vue/src/components/layout/package.json +0 -67
  102. package/src/vendor/bootstrap-vue/src/components/modal/README.md +0 -1
  103. package/src/vendor/bootstrap-vue/src/components/nav/index.d.ts +0 -6
  104. package/src/vendor/bootstrap-vue/src/components/nav/index.js +1 -5
  105. package/src/vendor/bootstrap-vue/src/components/nav/package.json +0 -45
  106. package/src/vendor/bootstrap-vue/src/components/navbar/README.md +0 -5
  107. package/src/vendor/bootstrap-vue/src/components/navbar/index.d.ts +1 -7
  108. package/src/vendor/bootstrap-vue/src/components/navbar/index.js +2 -7
  109. package/src/vendor/bootstrap-vue/src/components/navbar/package.json +0 -75
  110. package/src/vendor/bootstrap-vue/src/components/table/README.md +1 -2
  111. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +2 -2
  112. package/src/vendor/bootstrap-vue/src/components/toast/README.md +1 -3
  113. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +2 -6
  114. package/src/vendor/bootstrap-vue/src/constants/classes.js +0 -1
  115. package/src/vendor/bootstrap-vue/src/constants/components.js +0 -50
  116. package/src/vendor/bootstrap-vue/src/constants/events.js +0 -11
  117. package/src/vendor/bootstrap-vue/src/constants/key-codes.js +0 -4
  118. package/src/vendor/bootstrap-vue/src/constants/props.js +0 -3
  119. package/src/vendor/bootstrap-vue/src/constants/regex.js +0 -19
  120. package/src/vendor/bootstrap-vue/src/constants/slots.js +0 -32
  121. package/src/vendor/bootstrap-vue/src/directives/toggle/README.md +5 -23
  122. package/src/vendor/bootstrap-vue/src/directives/toggle/package.json +1 -1
  123. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.js +1 -1
  124. package/src/vendor/bootstrap-vue/src/index.js +0 -122
  125. package/src/vendor/bootstrap-vue/src/index.scss +0 -3
  126. package/src/vendor/bootstrap-vue/src/utils/array.js +0 -5
  127. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +15 -15
  128. package/src/vendor/bootstrap-vue/src/utils/inspect.js +0 -4
  129. package/src/vendor/bootstrap-vue/src/utils/math.js +0 -4
  130. package/src/vendor/bootstrap-vue/src/utils/object.js +0 -5
  131. package/src/vendor/bootstrap-vue/src/utils/props.js +1 -7
  132. package/src/vendor/bootstrap-vue/src/utils/string.js +0 -9
  133. package/src/vendor/bootstrap-vue/src/utils/string.spec.js +1 -20
  134. package/translations.js +3 -0
  135. package/dist/vendor/bootstrap-vue/src/components/alert/alert.js +0 -179
  136. package/dist/vendor/bootstrap-vue/src/components/alert/index.js +0 -11
  137. package/dist/vendor/bootstrap-vue/src/components/aspect/aspect.js +0 -67
  138. package/dist/vendor/bootstrap-vue/src/components/aspect/index.js +0 -11
  139. package/dist/vendor/bootstrap-vue/src/components/avatar/avatar-group.js +0 -67
  140. package/dist/vendor/bootstrap-vue/src/components/avatar/avatar.js +0 -266
  141. package/dist/vendor/bootstrap-vue/src/components/avatar/index.js +0 -14
  142. package/dist/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.js +0 -112
  143. package/dist/vendor/bootstrap-vue/src/components/button-toolbar/index.js +0 -12
  144. package/dist/vendor/bootstrap-vue/src/components/calendar/calendar.js +0 -1010
  145. package/dist/vendor/bootstrap-vue/src/components/calendar/index.js +0 -11
  146. package/dist/vendor/bootstrap-vue/src/components/card/card-body.js +0 -63
  147. package/dist/vendor/bootstrap-vue/src/components/card/card-footer.js +0 -48
  148. package/dist/vendor/bootstrap-vue/src/components/card/card-group.js +0 -33
  149. package/dist/vendor/bootstrap-vue/src/components/card/card-header.js +0 -48
  150. package/dist/vendor/bootstrap-vue/src/components/card/card-img-lazy.js +0 -46
  151. package/dist/vendor/bootstrap-vue/src/components/card/card-img.js +0 -58
  152. package/dist/vendor/bootstrap-vue/src/components/card/card-sub-title.js +0 -35
  153. package/dist/vendor/bootstrap-vue/src/components/card/card-text.js +0 -31
  154. package/dist/vendor/bootstrap-vue/src/components/card/card-title.js +0 -33
  155. package/dist/vendor/bootstrap-vue/src/components/card/card.js +0 -123
  156. package/dist/vendor/bootstrap-vue/src/components/card/index.js +0 -38
  157. package/dist/vendor/bootstrap-vue/src/components/embed/embed.js +0 -50
  158. package/dist/vendor/bootstrap-vue/src/components/embed/index.js +0 -11
  159. package/dist/vendor/bootstrap-vue/src/components/form/form-datalist.js +0 -52
  160. package/dist/vendor/bootstrap-vue/src/components/form-btn-label-control/bv-form-btn-label-control.js +0 -261
  161. package/dist/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.js +0 -310
  162. package/dist/vendor/bootstrap-vue/src/components/form-datepicker/index.js +0 -12
  163. package/dist/vendor/bootstrap-vue/src/components/form-file/form-file.js +0 -561
  164. package/dist/vendor/bootstrap-vue/src/components/form-file/index.js +0 -12
  165. package/dist/vendor/bootstrap-vue/src/components/form-rating/form-rating.js +0 -402
  166. package/dist/vendor/bootstrap-vue/src/components/form-rating/index.js +0 -12
  167. package/dist/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.js +0 -555
  168. package/dist/vendor/bootstrap-vue/src/components/form-spinbutton/index.js +0 -12
  169. package/dist/vendor/bootstrap-vue/src/components/form-tags/form-tag.js +0 -97
  170. package/dist/vendor/bootstrap-vue/src/components/form-tags/form-tags.js +0 -806
  171. package/dist/vendor/bootstrap-vue/src/components/form-tags/index.js +0 -16
  172. package/dist/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.js +0 -281
  173. package/dist/vendor/bootstrap-vue/src/components/form-timepicker/index.js +0 -12
  174. package/dist/vendor/bootstrap-vue/src/components/image/img-lazy.js +0 -157
  175. package/dist/vendor/bootstrap-vue/src/components/image/img.js +0 -124
  176. package/dist/vendor/bootstrap-vue/src/components/image/index.js +0 -14
  177. package/dist/vendor/bootstrap-vue/src/components/jumbotron/index.js +0 -11
  178. package/dist/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.js +0 -98
  179. package/dist/vendor/bootstrap-vue/src/components/layout/container.js +0 -41
  180. package/dist/vendor/bootstrap-vue/src/components/layout/row.js +0 -113
  181. package/dist/vendor/bootstrap-vue/src/components/list-group/index.js +0 -14
  182. package/dist/vendor/bootstrap-vue/src/components/list-group/list-group-item.js +0 -78
  183. package/dist/vendor/bootstrap-vue/src/components/list-group/list-group.js +0 -42
  184. package/dist/vendor/bootstrap-vue/src/components/media/index.js +0 -17
  185. package/dist/vendor/bootstrap-vue/src/components/media/media-aside.js +0 -41
  186. package/dist/vendor/bootstrap-vue/src/components/media/media-body.js +0 -31
  187. package/dist/vendor/bootstrap-vue/src/components/media/media.js +0 -61
  188. package/dist/vendor/bootstrap-vue/src/components/nav/nav-form.js +0 -45
  189. package/dist/vendor/bootstrap-vue/src/components/nav/nav-text.js +0 -26
  190. package/dist/vendor/bootstrap-vue/src/components/navbar/navbar-nav.js +0 -46
  191. package/dist/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.js +0 -89
  192. package/dist/vendor/bootstrap-vue/src/components/overlay/index.js +0 -11
  193. package/dist/vendor/bootstrap-vue/src/components/overlay/overlay.js +0 -163
  194. package/dist/vendor/bootstrap-vue/src/components/pagination/index.js +0 -11
  195. package/dist/vendor/bootstrap-vue/src/components/pagination/pagination.js +0 -135
  196. package/dist/vendor/bootstrap-vue/src/components/pagination-nav/index.js +0 -11
  197. package/dist/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.js +0 -299
  198. package/dist/vendor/bootstrap-vue/src/components/sidebar/index.js +0 -15
  199. package/dist/vendor/bootstrap-vue/src/components/sidebar/sidebar.js +0 -432
  200. package/dist/vendor/bootstrap-vue/src/components/skeleton/index.js +0 -23
  201. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.js +0 -47
  202. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.js +0 -60
  203. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.js +0 -64
  204. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.js +0 -46
  205. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton.js +0 -49
  206. package/dist/vendor/bootstrap-vue/src/components/spinner/index.js +0 -11
  207. package/dist/vendor/bootstrap-vue/src/components/spinner/spinner.js +0 -55
  208. package/dist/vendor/bootstrap-vue/src/components/time/index.js +0 -11
  209. package/dist/vendor/bootstrap-vue/src/components/time/time.js +0 -600
  210. package/dist/vendor/bootstrap-vue/src/constants/date.js +0 -8
  211. package/dist/vendor/bootstrap-vue/src/mixins/card.js +0 -22
  212. package/dist/vendor/bootstrap-vue/src/mixins/pagination.js +0 -598
  213. package/dist/vendor/bootstrap-vue/src/utils/date.js +0 -135
  214. package/src/vendor/bootstrap-vue/src/_custom-controls.scss +0 -30
  215. package/src/vendor/bootstrap-vue/src/components/alert/README.md +0 -280
  216. package/src/vendor/bootstrap-vue/src/components/alert/alert.js +0 -185
  217. package/src/vendor/bootstrap-vue/src/components/alert/alert.spec.js +0 -442
  218. package/src/vendor/bootstrap-vue/src/components/alert/index.d.ts +0 -13
  219. package/src/vendor/bootstrap-vue/src/components/alert/index.js +0 -8
  220. package/src/vendor/bootstrap-vue/src/components/alert/package.json +0 -72
  221. package/src/vendor/bootstrap-vue/src/components/aspect/README.md +0 -65
  222. package/src/vendor/bootstrap-vue/src/components/aspect/aspect.js +0 -65
  223. package/src/vendor/bootstrap-vue/src/components/aspect/aspect.spec.js +0 -121
  224. package/src/vendor/bootstrap-vue/src/components/aspect/index.d.ts +0 -11
  225. package/src/vendor/bootstrap-vue/src/components/aspect/index.js +0 -8
  226. package/src/vendor/bootstrap-vue/src/components/aspect/package.json +0 -26
  227. package/src/vendor/bootstrap-vue/src/components/avatar/README.md +0 -567
  228. package/src/vendor/bootstrap-vue/src/components/avatar/_avatar.scss +0 -148
  229. package/src/vendor/bootstrap-vue/src/components/avatar/avatar-group.js +0 -75
  230. package/src/vendor/bootstrap-vue/src/components/avatar/avatar-group.spec.js +0 -74
  231. package/src/vendor/bootstrap-vue/src/components/avatar/avatar.js +0 -228
  232. package/src/vendor/bootstrap-vue/src/components/avatar/avatar.spec.js +0 -355
  233. package/src/vendor/bootstrap-vue/src/components/avatar/index.d.ts +0 -14
  234. package/src/vendor/bootstrap-vue/src/components/avatar/index.js +0 -9
  235. package/src/vendor/bootstrap-vue/src/components/avatar/index.scss +0 -1
  236. package/src/vendor/bootstrap-vue/src/components/avatar/package.json +0 -149
  237. package/src/vendor/bootstrap-vue/src/components/button-toolbar/README.md +0 -109
  238. package/src/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.js +0 -117
  239. package/src/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.spec.js +0 -185
  240. package/src/vendor/bootstrap-vue/src/components/button-toolbar/index.d.ts +0 -11
  241. package/src/vendor/bootstrap-vue/src/components/button-toolbar/index.js +0 -11
  242. package/src/vendor/bootstrap-vue/src/components/button-toolbar/package.json +0 -32
  243. package/src/vendor/bootstrap-vue/src/components/calendar/README.md +0 -735
  244. package/src/vendor/bootstrap-vue/src/components/calendar/_calendar.scss +0 -78
  245. package/src/vendor/bootstrap-vue/src/components/calendar/calendar.js +0 -1146
  246. package/src/vendor/bootstrap-vue/src/components/calendar/calendar.spec.js +0 -466
  247. package/src/vendor/bootstrap-vue/src/components/calendar/index.d.ts +0 -28
  248. package/src/vendor/bootstrap-vue/src/components/calendar/index.js +0 -8
  249. package/src/vendor/bootstrap-vue/src/components/calendar/index.scss +0 -1
  250. package/src/vendor/bootstrap-vue/src/components/calendar/package.json +0 -317
  251. package/src/vendor/bootstrap-vue/src/components/card/README.md +0 -729
  252. package/src/vendor/bootstrap-vue/src/components/card/_card-img.scss +0 -7
  253. package/src/vendor/bootstrap-vue/src/components/card/card-body.js +0 -69
  254. package/src/vendor/bootstrap-vue/src/components/card/card-body.spec.js +0 -142
  255. package/src/vendor/bootstrap-vue/src/components/card/card-footer.js +0 -48
  256. package/src/vendor/bootstrap-vue/src/components/card/card-footer.spec.js +0 -98
  257. package/src/vendor/bootstrap-vue/src/components/card/card-group.js +0 -33
  258. package/src/vendor/bootstrap-vue/src/components/card/card-group.spec.js +0 -75
  259. package/src/vendor/bootstrap-vue/src/components/card/card-header.js +0 -48
  260. package/src/vendor/bootstrap-vue/src/components/card/card-header.spec.js +0 -98
  261. package/src/vendor/bootstrap-vue/src/components/card/card-img-lazy.js +0 -47
  262. package/src/vendor/bootstrap-vue/src/components/card/card-img-lazy.spec.js +0 -204
  263. package/src/vendor/bootstrap-vue/src/components/card/card-img.js +0 -50
  264. package/src/vendor/bootstrap-vue/src/components/card/card-img.spec.js +0 -208
  265. package/src/vendor/bootstrap-vue/src/components/card/card-sub-title.js +0 -35
  266. package/src/vendor/bootstrap-vue/src/components/card/card-sub-title.spec.js +0 -60
  267. package/src/vendor/bootstrap-vue/src/components/card/card-text.js +0 -25
  268. package/src/vendor/bootstrap-vue/src/components/card/card-text.spec.js +0 -48
  269. package/src/vendor/bootstrap-vue/src/components/card/card-title.js +0 -33
  270. package/src/vendor/bootstrap-vue/src/components/card/card-title.spec.js +0 -45
  271. package/src/vendor/bootstrap-vue/src/components/card/card.js +0 -140
  272. package/src/vendor/bootstrap-vue/src/components/card/card.spec.js +0 -296
  273. package/src/vendor/bootstrap-vue/src/components/card/index.d.ts +0 -38
  274. package/src/vendor/bootstrap-vue/src/components/card/index.js +0 -40
  275. package/src/vendor/bootstrap-vue/src/components/card/index.scss +0 -1
  276. package/src/vendor/bootstrap-vue/src/components/card/package.json +0 -262
  277. package/src/vendor/bootstrap-vue/src/components/embed/README.md +0 -63
  278. package/src/vendor/bootstrap-vue/src/components/embed/embed.js +0 -51
  279. package/src/vendor/bootstrap-vue/src/components/embed/embed.spec.js +0 -110
  280. package/src/vendor/bootstrap-vue/src/components/embed/index.d.ts +0 -11
  281. package/src/vendor/bootstrap-vue/src/components/embed/index.js +0 -8
  282. package/src/vendor/bootstrap-vue/src/components/embed/package.json +0 -29
  283. package/src/vendor/bootstrap-vue/src/components/form/form-datalist.js +0 -42
  284. package/src/vendor/bootstrap-vue/src/components/form/form-datalist.spec.js +0 -57
  285. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/_form-btn-label-control.scss +0 -125
  286. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/bv-form-btn-label-control.js +0 -278
  287. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/index.scss +0 -1
  288. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/package.json +0 -5
  289. package/src/vendor/bootstrap-vue/src/components/form-datepicker/README.md +0 -694
  290. package/src/vendor/bootstrap-vue/src/components/form-datepicker/_form-datepicker.scss +0 -1
  291. package/src/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.js +0 -342
  292. package/src/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.spec.js +0 -562
  293. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.d.ts +0 -12
  294. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.js +0 -11
  295. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.scss +0 -1
  296. package/src/vendor/bootstrap-vue/src/components/form-datepicker/package.json +0 -420
  297. package/src/vendor/bootstrap-vue/src/components/form-file/README.md +0 -357
  298. package/src/vendor/bootstrap-vue/src/components/form-file/_form-file.scss +0 -61
  299. package/src/vendor/bootstrap-vue/src/components/form-file/form-file.js +0 -575
  300. package/src/vendor/bootstrap-vue/src/components/form-file/form-file.spec.js +0 -885
  301. package/src/vendor/bootstrap-vue/src/components/form-file/index.d.ts +0 -13
  302. package/src/vendor/bootstrap-vue/src/components/form-file/index.js +0 -11
  303. package/src/vendor/bootstrap-vue/src/components/form-file/index.scss +0 -1
  304. package/src/vendor/bootstrap-vue/src/components/form-file/package.json +0 -131
  305. package/src/vendor/bootstrap-vue/src/components/form-rating/README.md +0 -526
  306. package/src/vendor/bootstrap-vue/src/components/form-rating/_form-rating.scss +0 -57
  307. package/src/vendor/bootstrap-vue/src/components/form-rating/form-rating.js +0 -411
  308. package/src/vendor/bootstrap-vue/src/components/form-rating/form-rating.spec.js +0 -544
  309. package/src/vendor/bootstrap-vue/src/components/form-rating/index.d.ts +0 -14
  310. package/src/vendor/bootstrap-vue/src/components/form-rating/index.js +0 -8
  311. package/src/vendor/bootstrap-vue/src/components/form-rating/index.scss +0 -1
  312. package/src/vendor/bootstrap-vue/src/components/form-rating/package.json +0 -166
  313. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/README.md +0 -411
  314. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/_spinbutton.scss +0 -76
  315. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.js +0 -572
  316. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.spec.js +0 -731
  317. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.d.ts +0 -12
  318. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.js +0 -11
  319. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.scss +0 -1
  320. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/package.json +0 -150
  321. package/src/vendor/bootstrap-vue/src/components/form-tags/README.md +0 -880
  322. package/src/vendor/bootstrap-vue/src/components/form-tags/_form-tags.scss +0 -70
  323. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tag.js +0 -94
  324. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tag.spec.js +0 -166
  325. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tags.js +0 -891
  326. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tags.spec.js +0 -920
  327. package/src/vendor/bootstrap-vue/src/components/form-tags/index.d.ts +0 -16
  328. package/src/vendor/bootstrap-vue/src/components/form-tags/index.js +0 -14
  329. package/src/vendor/bootstrap-vue/src/components/form-tags/index.scss +0 -1
  330. package/src/vendor/bootstrap-vue/src/components/form-tags/package.json +0 -440
  331. package/src/vendor/bootstrap-vue/src/components/form-timepicker/README.md +0 -450
  332. package/src/vendor/bootstrap-vue/src/components/form-timepicker/_form-timepicker.scss +0 -1
  333. package/src/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.js +0 -308
  334. package/src/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.spec.js +0 -440
  335. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.d.ts +0 -12
  336. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.js +0 -11
  337. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.scss +0 -1
  338. package/src/vendor/bootstrap-vue/src/components/form-timepicker/package.json +0 -255
  339. package/src/vendor/bootstrap-vue/src/components/image/README.md +0 -322
  340. package/src/vendor/bootstrap-vue/src/components/image/img-lazy.js +0 -161
  341. package/src/vendor/bootstrap-vue/src/components/image/img-lazy.spec.js +0 -96
  342. package/src/vendor/bootstrap-vue/src/components/image/img.js +0 -139
  343. package/src/vendor/bootstrap-vue/src/components/image/img.spec.js +0 -255
  344. package/src/vendor/bootstrap-vue/src/components/image/index.d.ts +0 -14
  345. package/src/vendor/bootstrap-vue/src/components/image/index.js +0 -12
  346. package/src/vendor/bootstrap-vue/src/components/image/package.json +0 -152
  347. package/src/vendor/bootstrap-vue/src/components/jumbotron/README.md +0 -109
  348. package/src/vendor/bootstrap-vue/src/components/jumbotron/index.d.ts +0 -11
  349. package/src/vendor/bootstrap-vue/src/components/jumbotron/index.js +0 -8
  350. package/src/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.js +0 -103
  351. package/src/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.spec.js +0 -254
  352. package/src/vendor/bootstrap-vue/src/components/jumbotron/package.json +0 -66
  353. package/src/vendor/bootstrap-vue/src/components/layout/container.js +0 -40
  354. package/src/vendor/bootstrap-vue/src/components/layout/container.spec.js +0 -75
  355. package/src/vendor/bootstrap-vue/src/components/layout/row.js +0 -111
  356. package/src/vendor/bootstrap-vue/src/components/layout/row.spec.js +0 -138
  357. package/src/vendor/bootstrap-vue/src/components/list-group/README.md +0 -291
  358. package/src/vendor/bootstrap-vue/src/components/list-group/index.d.ts +0 -14
  359. package/src/vendor/bootstrap-vue/src/components/list-group/index.js +0 -12
  360. package/src/vendor/bootstrap-vue/src/components/list-group/list-group-item.js +0 -76
  361. package/src/vendor/bootstrap-vue/src/components/list-group/list-group-item.spec.js +0 -286
  362. package/src/vendor/bootstrap-vue/src/components/list-group/list-group.js +0 -42
  363. package/src/vendor/bootstrap-vue/src/components/list-group/list-group.spec.js +0 -132
  364. package/src/vendor/bootstrap-vue/src/components/list-group/package.json +0 -52
  365. package/src/vendor/bootstrap-vue/src/components/media/README.md +0 -183
  366. package/src/vendor/bootstrap-vue/src/components/media/_media.scss +0 -9
  367. package/src/vendor/bootstrap-vue/src/components/media/index.d.ts +0 -17
  368. package/src/vendor/bootstrap-vue/src/components/media/index.js +0 -14
  369. package/src/vendor/bootstrap-vue/src/components/media/index.scss +0 -1
  370. package/src/vendor/bootstrap-vue/src/components/media/media-aside.js +0 -45
  371. package/src/vendor/bootstrap-vue/src/components/media/media-aside.spec.js +0 -79
  372. package/src/vendor/bootstrap-vue/src/components/media/media-body.js +0 -25
  373. package/src/vendor/bootstrap-vue/src/components/media/media-body.spec.js +0 -47
  374. package/src/vendor/bootstrap-vue/src/components/media/media.js +0 -52
  375. package/src/vendor/bootstrap-vue/src/components/media/media.spec.js +0 -149
  376. package/src/vendor/bootstrap-vue/src/components/media/package.json +0 -65
  377. package/src/vendor/bootstrap-vue/src/components/nav/nav-form.js +0 -50
  378. package/src/vendor/bootstrap-vue/src/components/nav/nav-form.spec.js +0 -93
  379. package/src/vendor/bootstrap-vue/src/components/nav/nav-text.js +0 -18
  380. package/src/vendor/bootstrap-vue/src/components/nav/nav-text.spec.js +0 -30
  381. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-nav.js +0 -45
  382. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-nav.spec.js +0 -105
  383. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.js +0 -84
  384. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.spec.js +0 -189
  385. package/src/vendor/bootstrap-vue/src/components/overlay/README.md +0 -815
  386. package/src/vendor/bootstrap-vue/src/components/overlay/index.d.ts +0 -11
  387. package/src/vendor/bootstrap-vue/src/components/overlay/index.js +0 -8
  388. package/src/vendor/bootstrap-vue/src/components/overlay/overlay.js +0 -162
  389. package/src/vendor/bootstrap-vue/src/components/overlay/overlay.spec.js +0 -257
  390. package/src/vendor/bootstrap-vue/src/components/overlay/package.json +0 -130
  391. package/src/vendor/bootstrap-vue/src/components/pagination/README.md +0 -430
  392. package/src/vendor/bootstrap-vue/src/components/pagination/_pagination.scss +0 -26
  393. package/src/vendor/bootstrap-vue/src/components/pagination/index.d.ts +0 -11
  394. package/src/vendor/bootstrap-vue/src/components/pagination/index.js +0 -8
  395. package/src/vendor/bootstrap-vue/src/components/pagination/index.scss +0 -1
  396. package/src/vendor/bootstrap-vue/src/components/pagination/package.json +0 -295
  397. package/src/vendor/bootstrap-vue/src/components/pagination/pagination.js +0 -138
  398. package/src/vendor/bootstrap-vue/src/components/pagination/pagination.spec.js +0 -1198
  399. package/src/vendor/bootstrap-vue/src/components/pagination-nav/README.md +0 -544
  400. package/src/vendor/bootstrap-vue/src/components/pagination-nav/_pagination-nav.scss +0 -2
  401. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.d.ts +0 -11
  402. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.js +0 -8
  403. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.scss +0 -1
  404. package/src/vendor/bootstrap-vue/src/components/pagination-nav/package.json +0 -315
  405. package/src/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.js +0 -281
  406. package/src/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.spec.js +0 -671
  407. package/src/vendor/bootstrap-vue/src/components/sidebar/README.md +0 -406
  408. package/src/vendor/bootstrap-vue/src/components/sidebar/_sidebar.scss +0 -97
  409. package/src/vendor/bootstrap-vue/src/components/sidebar/index.d.ts +0 -11
  410. package/src/vendor/bootstrap-vue/src/components/sidebar/index.js +0 -10
  411. package/src/vendor/bootstrap-vue/src/components/sidebar/index.scss +0 -1
  412. package/src/vendor/bootstrap-vue/src/components/sidebar/package.json +0 -239
  413. package/src/vendor/bootstrap-vue/src/components/sidebar/sidebar.js +0 -438
  414. package/src/vendor/bootstrap-vue/src/components/sidebar/sidebar.spec.js +0 -404
  415. package/src/vendor/bootstrap-vue/src/components/skeleton/README.md +0 -275
  416. package/src/vendor/bootstrap-vue/src/components/skeleton/_skeleton.scss +0 -141
  417. package/src/vendor/bootstrap-vue/src/components/skeleton/index.d.ts +0 -23
  418. package/src/vendor/bootstrap-vue/src/components/skeleton/index.js +0 -18
  419. package/src/vendor/bootstrap-vue/src/components/skeleton/index.scss +0 -1
  420. package/src/vendor/bootstrap-vue/src/components/skeleton/package.json +0 -136
  421. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.js +0 -45
  422. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.spec.js +0 -86
  423. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.js +0 -49
  424. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.spec.js +0 -139
  425. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.js +0 -58
  426. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.spec.js +0 -119
  427. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.js +0 -47
  428. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.spec.js +0 -48
  429. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton.js +0 -46
  430. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton.spec.js +0 -126
  431. package/src/vendor/bootstrap-vue/src/components/spinner/README.md +0 -229
  432. package/src/vendor/bootstrap-vue/src/components/spinner/index.d.ts +0 -11
  433. package/src/vendor/bootstrap-vue/src/components/spinner/index.js +0 -8
  434. package/src/vendor/bootstrap-vue/src/components/spinner/package.json +0 -38
  435. package/src/vendor/bootstrap-vue/src/components/spinner/spinner.js +0 -54
  436. package/src/vendor/bootstrap-vue/src/components/spinner/spinner.spec.js +0 -305
  437. package/src/vendor/bootstrap-vue/src/components/time/README.md +0 -431
  438. package/src/vendor/bootstrap-vue/src/components/time/_time.scss +0 -41
  439. package/src/vendor/bootstrap-vue/src/components/time/index.d.ts +0 -27
  440. package/src/vendor/bootstrap-vue/src/components/time/index.js +0 -8
  441. package/src/vendor/bootstrap-vue/src/components/time/index.scss +0 -1
  442. package/src/vendor/bootstrap-vue/src/components/time/package.json +0 -123
  443. package/src/vendor/bootstrap-vue/src/components/time/time.js +0 -601
  444. package/src/vendor/bootstrap-vue/src/components/time/time.spec.js +0 -330
  445. package/src/vendor/bootstrap-vue/src/constants/date.js +0 -7
  446. package/src/vendor/bootstrap-vue/src/mixins/card.js +0 -23
  447. package/src/vendor/bootstrap-vue/src/mixins/pagination.js +0 -670
  448. package/src/vendor/bootstrap-vue/src/utils/date.js +0 -130
  449. package/src/vendor/bootstrap-vue/src/utils/date.spec.js +0 -159
@@ -1,694 +0,0 @@
1
- # Form Datepicker
2
-
3
- > `<b-form-datepicker>` is a BootstrapVue custom date picker input form control, which provides full
4
- > WAI-ARIA compliance and internationalization support.
5
-
6
- ## Overview
7
-
8
- As a form control wrapper component for the [`<b-calendar>`](/docs/components/calendar) component,
9
- it provides additional validation state presentation and a compact interface. Native HTML5 date
10
- inputs vary in presentation, accessibility, and in some instances are not supported by all browsers.
11
- `<b-form-datepicker>` provides a consistent and accessible interface across all browser platforms
12
- and devices.
13
-
14
- ```html
15
- <template>
16
- <div>
17
- <label for="example-datepicker">Choose a date</label>
18
- <b-form-datepicker id="example-datepicker" v-model="value" class="mb-2"></b-form-datepicker>
19
- <p>Value: '{{ value }}'</p>
20
- </div>
21
- </template>
22
-
23
- <script>
24
- export default {
25
- data() {
26
- return {
27
- value: ''
28
- }
29
- }
30
- }
31
- </script>
32
-
33
- <!-- b-form-datepicker.vue -->
34
- ```
35
-
36
- `<b-form-datepicker>` supports many of the props available on
37
- [`<b-calendar>`](/docs/components/calendar) as well as some of the props available on
38
- [`<b-dropdown>`](/docs/components/dropdown).
39
-
40
- ## `v-model` return value
41
-
42
- By default, `<b-form-datepicker>` returns dates as a string in the `YYYY-MM-DD` format, which is the
43
- same format returned by native browser `<input type="date">` controls. You can have
44
- `<b-form-datepicker>` return a `Date` object (with no time portion) as the `v-model` value instead
45
- by setting the `value-as-date` prop.
46
-
47
- If no date is selected, `<b-form-datepicker>` returns an empty string `''`, or returns `null` if the
48
- `value-as-date` prop is set.
49
-
50
- Note that when `value-as-date` prop is set, the returned `Date` object will be in the browser's
51
- default timezone.
52
-
53
- If `<b-form-datepicker>` has a value set for the `name` prop, a hidden input will be created which
54
- will have its name attribute set to the value of the `name` prop, and the value attribute will be
55
- set to the selected date as a `YYYY-MM-DD` string. This will allow the `<b-form-datepicker>`
56
- selected value to be submitted via native browser form submission.
57
-
58
- ## Disabled and readonly states
59
-
60
- Setting the `disabled` prop will remove all interactivity of the `<b-form-datepicker>` component.
61
-
62
- Setting the `readonly` prop will disable selecting a date, but will keep the component interactive,
63
- allowing for date navigation. The `v-model` will not be updated in the readonly state.
64
-
65
- For disabling specific dates or setting minimum and maximum date limits, refer to the
66
- [Date constraints](#date-constraints) section.
67
-
68
- ```html
69
- <template>
70
- <div>
71
- <b-form-group
72
- label="Select date picker interactive state"
73
- v-slot="{ ariaDescribedby }"
74
- >
75
- <b-form-radio-group
76
- v-model="state"
77
- :aria-describedby="ariaDescribedby"
78
- aria-controls="ex-disabled-readonly"
79
- >
80
- <b-form-radio value="disabled">Disabled</b-form-radio>
81
- <b-form-radio value="readonly">Readonly</b-form-radio>
82
- <b-form-radio value="normal">Normal</b-form-radio>
83
- </b-form-radio-group>
84
- </b-form-group>
85
-
86
- <b-form-datepicker
87
- id="ex-disabled-readonly"
88
- :disabled="disabled"
89
- :readonly="readonly"
90
- ></b-form-datepicker>
91
- </div>
92
- </template>
93
-
94
- <script>
95
- export default {
96
- data() {
97
- return {
98
- state: 'disabled'
99
- }
100
- },
101
- computed: {
102
- disabled() {
103
- return this.state === 'disabled'
104
- },
105
- readonly() {
106
- return this.state === 'readonly'
107
- }
108
- }
109
- }
110
- </script>
111
-
112
- <!-- b-form-datepicker-disabled-readonly.vue -->
113
- ```
114
-
115
- ## Date constraints
116
-
117
- ### Minimum and maximum dates
118
-
119
- Restrict the calendar range via the `min` and `max` props. The props accept a date string in the
120
- format of `YYYY-MM-DD` or a `Date` object.
121
-
122
- ```html
123
- <template>
124
- <div>
125
- <b-form-datepicker v-model="value" :min="min" :max="max" locale="en"></b-form-datepicker>
126
- </div>
127
- </template>
128
-
129
- <script>
130
- export default {
131
- data() {
132
- const now = new Date()
133
- const today = new Date(now.getFullYear(), now.getMonth(), now.getDate())
134
- // 15th two months prior
135
- const minDate = new Date(today)
136
- minDate.setMonth(minDate.getMonth() - 2)
137
- minDate.setDate(15)
138
- // 15th in two months
139
- const maxDate = new Date(today)
140
- maxDate.setMonth(maxDate.getMonth() + 2)
141
- maxDate.setDate(15)
142
-
143
- return {
144
- value: '',
145
- min: minDate,
146
- max: maxDate
147
- }
148
- }
149
- }
150
- </script>
151
-
152
- <!-- b-form-datepicker-min-max.vue -->
153
- ```
154
-
155
- ### Disabling dates
156
-
157
- If you need to disable specific dates within the date picker, specify a function reference to the
158
- `date-disabled-fn` prop. The function is passed two arguments:
159
-
160
- - `ymd` The date as a `YYYY-MM-DD` string
161
- - `date` The date as a `Date` object
162
-
163
- The function should either return `true` if the date _cannot_ be selected (disabled), or `false` if
164
- the date _can_ be selected (enabled). Note that the function **cannot** be asynchronous, and should
165
- return a value as quickly as possible.
166
-
167
- ```html
168
- <template>
169
- <div>
170
- <b-form-datepicker v-model="value" :date-disabled-fn="dateDisabled" locale="en"></b-form-datepicker>
171
- </div>
172
- </template>
173
-
174
- <script>
175
- export default {
176
- data() {
177
- return {
178
- value: ''
179
- }
180
- },
181
- methods: {
182
- dateDisabled(ymd, date) {
183
- // Disable weekends (Sunday = `0`, Saturday = `6`) and
184
- // disable days that fall on the 13th of the month
185
- const weekday = date.getDay()
186
- const day = date.getDate()
187
- // Return `true` if the date should be disabled
188
- return weekday === 0 || weekday === 6 || day === 13
189
- }
190
- }
191
- }
192
- </script>
193
-
194
- <!-- b-form-datepicker-disabled-dates.vue -->
195
- ```
196
-
197
- Note the `min` and `max` date constraints are evaluated first, before `date-disabled-fn`.
198
-
199
- ## Validation states
200
-
201
- `<b-form-datepicker>` supports invalid and valid styling via the boolean `state` prop. Setting
202
- `state` to boolean `false` will style the input as invalid, while setting it to boolean `true` will
203
- style it as valid. Setting `state` to `null` will not show any validation state styling (the
204
- default).
205
-
206
- ```html
207
- <template>
208
- <div>
209
- <label for="datepicker-invalid">Choose a date (invalid style)</label>
210
- <b-form-datepicker id="datepicker-invalid" :state="false" class="mb-2"></b-form-datepicker>
211
- <label for="datepicker-valid">Choose a date (valid style)</label>
212
- <b-form-datepicker id="datepicker-valid" :state="true"></b-form-datepicker>
213
- </div>
214
- </template>
215
-
216
- <!-- b-form-datepicker-invalid-valid.vue -->
217
- ```
218
-
219
- Note that native browser validation is _not_ available with `<b-form-datepicker>`.
220
-
221
- ## Styling
222
-
223
- ### Variants
224
-
225
- The selected date button (background color) defaults to the `'primary'` theme variant. You can
226
- change this to any of the Bootstrap v4 theme variant colors: `'secondary'`, `'success'`, `'danger'`,
227
- `'warning'`, `'info'`, etc, via the `selected-variant` prop.
228
-
229
- Today's date will also be highlighted (text color) using the same variant as the selected date by
230
- default. To specify a different theme color to use for today's date, use the `today-variant` prop.
231
-
232
- To disable highlighting of today's date altogether, set the `no-highlight-today` prop.
233
-
234
- The navigation buttons default to the `'secondary'` theme variant. You can change this via the
235
- `nav-button-variant` prop.
236
-
237
- ### Control sizing
238
-
239
- Fancy a smaller or larger `<b-form-datepicker>` control? Set the `size` prop to `'sm'` for a smaller
240
- form control, or `'lg'` for a larger form form control. Note this does not affect the size of the
241
- popup calendar dialog.
242
-
243
- ```html
244
- <template>
245
- <div>
246
- <label for="datepicker-sm">Small date picker</label>
247
- <b-form-datepicker id="datepicker-sm" size="sm" locale="en" class="mb-2"></b-form-datepicker>
248
- <label for="datepicker-lg">Large date picker</label>
249
- <b-form-datepicker id="datepicker-lg" size="lg" locale="en"></b-form-datepicker>
250
- </div>
251
- </template>
252
-
253
- <!-- b-form-datepicker-sizes.vue -->
254
- ```
255
-
256
- ### Placeholder
257
-
258
- Add custom placeholder text to the control, when no date is selected, via the `placeholder` prop. If
259
- a placeholder is not provided, the value of the `label-no-date-selected` prop is used.
260
-
261
- ```html
262
- <template>
263
- <div>
264
- <label for="datepicker-placeholder">Date picker with placeholder</label>
265
- <b-form-datepicker id="datepicker-placeholder" placeholder="Choose a date" locale="en"></b-form-datepicker>
266
- </div>
267
- </template>
268
-
269
- <!-- b-form-datepicker-placeholder.vue -->
270
- ```
271
-
272
- ### Optional controls
273
-
274
- Add optional control buttons to the bottom of the calendar popup via the props `today-button`,
275
- `reset-button` and `close-button`.
276
-
277
- - The today button selects today's date
278
- - The reset button either clears the selected date, or sets the date to the value of the prop
279
- `reset-value` (if provided)
280
- - The close button closes the calendar popup
281
-
282
- By default, clicking on the today or reset button will also close the calendar popup, unless the
283
- prop `no-close-on-select` is set.
284
-
285
- ```html
286
- <template>
287
- <div>
288
- <label for="datepicker-buttons">Date picker with optional footer buttons</label>
289
- <b-form-datepicker
290
- id="datepicker-buttons"
291
- today-button
292
- reset-button
293
- close-button
294
- locale="en"
295
- ></b-form-datepicker>
296
- </div>
297
- </template>
298
-
299
- <!-- b-form-datepicker-buttons.vue -->
300
- ```
301
-
302
- The text for the optional buttons can be set via the `label-today-button`, `label-reset-button`, and
303
- the `label-close-button` props. Due to the limited width of the footer section, it is recommended to
304
- keep these labels short.
305
-
306
- Note that the `Set Today` button may not set the control today's date, if today's date is outside of
307
- the `min` or `max` date range restrictions. In the case it is outside of the range, it will set to
308
- either `min` or `max` (depending on which is closes to today's date).
309
-
310
- ### Dropdown placement
311
-
312
- Use the dropdown props `right`, `dropup`, `dropright`, `dropleft`, `no-flip`, and `offset` to
313
- control the positioning of the popup calendar.
314
-
315
- Refer to the [`<b-dropdown>` positioning section](/docs/components/dropdown#positioning) for details
316
- on the effects and usage of these props.
317
-
318
- ### Initial open calendar date
319
-
320
- <span class="badge badge-info small">v2.7.0+</span>
321
-
322
- By default, when no date is selected, the calendar view will be set to the current month (or the
323
- `min` or `max` date if today's date is out of range of `min` or `max`) when opened. You can change
324
- this behaviour by specifying a date via the `initial-date` prop. The initial date prop will be used
325
- to determine the calendar month to be initially presented to the user. It does not set the
326
- component's value.
327
-
328
- ### Dark mode
329
-
330
- Want a fancy popup with a dark background instead of a light background? Set the `dark` prop to
331
- `true` to enable the dark background.
332
-
333
- ### Optional decade navigation buttons
334
-
335
- Set the prop `show-decade-nav` to enable the previous and next decade buttons in the datepicker's
336
- date navigation toolbar.
337
-
338
- The props `label-prev-decade` and `label-next-decade` props can be used to provide custom label text
339
- for the decade buttons.
340
-
341
- For example usage, refer to the [Internationalization section](#internationalization) below.
342
-
343
- ### Button only mode
344
-
345
- <span class="badge badge-info small">v2.7.0+</span>
346
-
347
- Fancy just a button that launches the date picker dialog, or want to provide your own optional text
348
- input field? Use the `button-only` prop to render the datepicker as a dropdown button. The formatted
349
- date label will be rendered with the class `sr-only` (available only to screen readers).
350
-
351
- In the following simple example, we are placing the datepicker (button only mode) as an append to a
352
- `<b-input-group>`, and we are using the `context` event to get the formatted date string and value:
353
-
354
- ```html
355
- <template>
356
- <div>
357
- <label for="example-input">Choose a date</label>
358
- <b-input-group class="mb-3">
359
- <b-form-input
360
- id="example-input"
361
- v-model="value"
362
- type="text"
363
- placeholder="YYYY-MM-DD"
364
- autocomplete="off"
365
- ></b-form-input>
366
- <b-input-group-append>
367
- <b-form-datepicker
368
- v-model="value"
369
- button-only
370
- right
371
- locale="en-US"
372
- aria-controls="example-input"
373
- @context="onContext"
374
- ></b-form-datepicker>
375
- </b-input-group-append>
376
- </b-input-group>
377
- <p class="mb-1">Value: '{{ value }}'</p>
378
- <p class="mb-1">Selected: '{{ selected }}'</p>
379
- <p>Formatted: '{{ formatted }}'</p>
380
- </div>
381
- </template>
382
-
383
- <script>
384
- export default {
385
- data() {
386
- return {
387
- value: '',
388
- formatted: '',
389
- selected: ''
390
- }
391
- },
392
- methods: {
393
- onContext(ctx) {
394
- // The date formatted in the locale, or the `label-no-date-selected` string
395
- this.formatted = ctx.selectedFormatted
396
- // The following will be an empty string until a valid date is entered
397
- this.selected = ctx.selectedYMD
398
- }
399
- }
400
- }
401
- </script>
402
-
403
- <!-- b-form-datepicker-button-only.vue -->
404
- ```
405
-
406
- Control the size of the button via the `size` prop, and the button variant via the `button-variant`
407
- prop.
408
-
409
- ### Date string format
410
-
411
- <span class="badge badge-info small">v2.6.0+</span>
412
-
413
- To change format options of the displayed date text inside the component, e.g. in the header or
414
- placeholder, set the `date-format-options` prop to an object containing the requested format
415
- properties for the `Intl.DateTimeFormat` object (see also
416
- [Internationalization](#internationalization)).
417
-
418
- ```html
419
- <template>
420
- <div>
421
- <label for="datepicker-dateformat1">Custom date format</label>
422
- <b-form-datepicker
423
- id="datepicker-dateformat1"
424
- :date-format-options="{ year: 'numeric', month: 'short', day: '2-digit', weekday: 'short' }"
425
- locale="en"
426
- ></b-form-datepicker>
427
-
428
- <label class="mt-3" for="datepicker-dateformat2">Short date format</label>
429
- <b-form-datepicker
430
- id="datepicker-dateformat2"
431
- :date-format-options="{ year: 'numeric', month: 'numeric', day: 'numeric' }"
432
- locale="en"
433
- ></b-form-datepicker>
434
- </div>
435
- </template>
436
-
437
- <!-- b-form-datepicker-dateformat.vue -->
438
- ```
439
-
440
- The following table summarizes the valid options for each format property:
441
-
442
- | Property | Possible values |
443
- | --------- | ------------------------------------------------------------ |
444
- | `year` | `'numeric'`, or `'2-digit'` |
445
- | `month` | `'numeric'`, `'2-digit'`, `'long'`, `'short'`, or `'narrow'` |
446
- | `day` | `'numeric'`, or `'2-digit'` |
447
- | `weekday` | `'long'`, `'short'`, or `'narrow'` |
448
-
449
- Notes:
450
-
451
- - Leaving out certain options may affect the formatted text string, e.g. the `weekday`
452
- - The formatted value will vary according to the resolved locale. Some locales may not support the
453
- `'narrow'` format and will fall back to `'short'` or `long'` (if `'short'` is not available)
454
- - `year`, `month` and `day` will always be shown. If you need to leave out a value, set the property
455
- to `undefined`, although this is highly discouraged for accessibility reasons
456
-
457
- ### Weekday name header format
458
-
459
- <span class="badge badge-info small">2.12.0+</span>
460
-
461
- The calendar weekday name header format defaults to `'short'`, which is typically a three-character
462
- abbreviation of the weekday, although some [locales](#internationalization) may override this. The
463
- format can be controlled via the prop `weekday-header-format` and accepts one of three values:
464
-
465
- - `'long'` the full weekday name (e.g. <samp>Tuesday</samp>). Handy when using a full width
466
- calendar. Avoid using with the default calendar width.
467
- - `'short'` typically is a 2 or 3 letter abbreviation of the weekday name, depending on the selected
468
- locale (e.g. "Tue").
469
- - `'narrow'` is typically a single character abbreviation (e.g., <samp>T</samp>). Two weekdays may
470
- have the same narrow style for some locales (e.g. Tuesday and Thursday's narrow style are both
471
- <samp>T</samp>). This can be handy for those locales that do not support the `'short'` format,
472
- such as locales `'ar'` and `'fa'`.
473
-
474
- ### Date navigation button slots
475
-
476
- <span class="badge badge-info small">2.12.0+</span>
477
-
478
- To change the content of the calendar's date navigation buttons, BootstrapVue provides scoped slots
479
- for each button:
480
-
481
- - `'nav-prev-decade'`
482
- - `'nav-prev-year'`
483
- - `'nav-prev-month'`
484
- - `'nav-this-month'` (the go to selected/today button)
485
- - `'nav-next-month'`
486
- - `'nav-next-year'`
487
- - `'nav-next-decade'`
488
-
489
- All seven slots have the same scoped property available:
490
-
491
- | Property | Type | Description |
492
- | -------- | ------- | --------------------------------------------------------------------- |
493
- | `isRTL` | Boolean | Will be `true` when the date navigation bar is rendered right-to-left |
494
-
495
- You can use the `isRTL` scoped property to "flip" the prev vs next button content to handle the
496
- left-to-right to right-to-left orientation change &mdash; i.e. the previous year button will be on
497
- the right when `isRTL` is `true`, instead of the left.
498
-
499
- ### Full width calendar dropdown
500
-
501
- To create a full width calendar dropdown (where the width matches the input width), simply set the
502
- `menu-class` prop to `'w-100'` and set the `calendar-width` prop to `'100%'`:
503
-
504
- ```html
505
- <template>
506
- <div>
507
- <label for="datepicker-full-width">Choose a date</label>
508
- <b-form-datepicker
509
- id="datepicker-full-width"
510
- v-model="value"
511
- menu-class="w-100"
512
- calendar-width="100%"
513
- class="mb-2"
514
- ></b-form-datepicker>
515
- <p>Value: '{{ value }}'</p>
516
- </div>
517
- </template>
518
-
519
- <script>
520
- export default {
521
- data() {
522
- return {
523
- value: ''
524
- }
525
- }
526
- }
527
- </script>
528
-
529
- <!-- b-form-datepicker-full-width.vue -->
530
- ```
531
-
532
- ## Internationalization
533
-
534
- Internationalization of the date picker's calendar is provided via
535
- [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat),
536
- except for labels applied to elements of the calendar control (aria-labels, selected status, and
537
- help text). You must provide your own translations for these labels. The available locales will be
538
- browser dependent (not all browsers support all locales)
539
-
540
- By default `<b-form-datepicker>` will use the browser's default locale, but you can specify the
541
- locale (or locales) to use via the `locale` prop. The prop accepts either a single locale string, or
542
- an array of locale strings (listed in order of preferred locale).
543
-
544
- The calendar starts the week on Sunday. This can be changed by setting the `start-weekday` prop to a
545
- number in the range of `0` to `6` where `0` represents Sunday, `1` for Monday, up to `6` for
546
- Saturday.
547
-
548
- ```html
549
- <template>
550
- <div>
551
- <label for="example-locales">Locale:</label>
552
- <b-form-select id="example-locales" v-model="locale" :options="locales" class="mb-2"></b-form-select>
553
-
554
- <label for="example-weekdays">Start weekday:</label>
555
- <b-form-select id="example-weekdays" v-model="weekday" :options="weekdays" class="mb-2"></b-form-select>
556
-
557
- <div>
558
- <b-form-checkbox v-model="showDecadeNav" switch inline class="my-2">
559
- Show decade navigation buttons
560
- </b-form-checkbox>
561
-
562
- <b-form-checkbox v-model="hideHeader" switch inline class="my-2">
563
- Hide calendar header
564
- </b-form-checkbox>
565
- </div>
566
-
567
- <label for="example-i18n-picker">Date picker:</label>
568
- <b-form-datepicker
569
- id="example-i18n-picker"
570
- v-model="value"
571
- v-bind="labels[locale] || {}"
572
- :locale="locale"
573
- :start-weekday="weekday"
574
- :show-decade-nav="showDecadeNav"
575
- :hide-header="hideHeader"
576
- class="mb-2"
577
- ></b-form-datepicker>
578
- <p>Value: <b>'{{ value }}'</b></p>
579
- </div>
580
- </template>
581
-
582
- <script>
583
- export default {
584
- data() {
585
- return {
586
- value: '',
587
- locale: 'en-US',
588
- showDecadeNav: false,
589
- hideHeader: false,
590
- locales: [
591
- { value: 'en-US', text: 'English US (en-US)' },
592
- { value: 'de', text: 'German (de)' },
593
- { value: 'ar-EG', text: 'Arabic Egyptian (ar-EG)' },
594
- { value: 'zh', text: 'Chinese (zh)' }
595
- ],
596
- weekday: 0,
597
- weekdays: [
598
- { value: 0, text: 'Sunday' },
599
- { value: 1, text: 'Monday' },
600
- { value: 6, text: 'Saturday' }
601
- ],
602
- labels: {
603
- de: {
604
- labelPrevDecade: 'Vorheriges Jahrzehnt',
605
- labelPrevYear: 'Vorheriges Jahr',
606
- labelPrevMonth: 'Vorheriger Monat',
607
- labelCurrentMonth: 'Aktueller Monat',
608
- labelNextMonth: 'Nächster Monat',
609
- labelNextYear: 'Nächstes Jahr',
610
- labelNextDecade: 'Nächstes Jahrzehnt',
611
- labelToday: 'Heute',
612
- labelSelected: 'Ausgewähltes Datum',
613
- labelNoDateSelected: 'Kein Datum gewählt',
614
- labelCalendar: 'Kalender',
615
- labelNav: 'Kalendernavigation',
616
- labelHelp: 'Mit den Pfeiltasten durch den Kalender navigieren'
617
- },
618
- 'ar-EG': {
619
- weekdayHeaderFormat: 'narrow',
620
- labelPrevDecade: 'العقد السابق',
621
- labelPrevYear: 'العام السابق',
622
- labelPrevMonth: 'الشهر السابق',
623
- labelCurrentMonth: 'الشهر الحالي',
624
- labelNextMonth: 'الشهر المقبل',
625
- labelNextYear: 'العام المقبل',
626
- labelNextDecade: 'العقد القادم',
627
- labelToday: 'اليوم',
628
- labelSelected: 'التاريخ المحدد',
629
- labelNoDateSelected: 'لم يتم اختيار تاريخ',
630
- labelCalendar: 'التقويم',
631
- labelNav: 'الملاحة التقويم',
632
- labelHelp: 'استخدم مفاتيح المؤشر للتنقل في التواريخ'
633
- },
634
- zh: {
635
- weekdayHeaderFormat: 'narrow',
636
- labelPrevDecade: '过去十年',
637
- labelPrevYear: '上一年',
638
- labelPrevMonth: '上个月',
639
- labelCurrentMonth: '当前月份',
640
- labelNextMonth: '下个月',
641
- labelNextYear: '明年',
642
- labelNextDecade: '下一个十年',
643
- labelToday: '今天',
644
- labelSelected: '选定日期',
645
- labelNoDateSelected: '未选择日期',
646
- labelCalendar: '日历',
647
- labelNav: '日历导航',
648
- labelHelp: '使用光标键浏览日期'
649
- }
650
- }
651
- }
652
- }
653
- }
654
- </script>
655
-
656
- <!-- b-form-datepicker-i18n.vue -->
657
- ```
658
-
659
- You can listen to for the `context` event to determine the locale and directionality that the
660
- calendar has resolved to.
661
-
662
- Refer to the [`<b-calendar>`](/docs/components/calendar#internationalization) documentation for
663
- additional details.
664
-
665
- ## Accessibility
666
-
667
- The popup calendar supports the same
668
- [keyboard controls as `<b-calendar>`](/docs/components/calendar#accessibility), along with the
669
- following:
670
-
671
- - <kbd>Esc</kbd> will close the popup calendar without selecting a date
672
-
673
- When internationalizing the datepicker, it is important to also update the `label-*` props with
674
- appropriate translated strings, so that international screen reader users will hear the correct
675
- prompts and descriptions.
676
-
677
- Refer to the [`<b-calendar>`](/docs/components/calendar#accessibility) documentation for additional
678
- details.
679
-
680
- ## Implementation notes
681
-
682
- `<b-form-datepicker>` is based upon the components [`<b-calendar>`](/docs/components/calendar) and
683
- [`<b-dropdown>`](/docs/components/dropdown).
684
-
685
- `<b-form-datepicker>` uses Bootstrap's border and flex utility classes, along with button (`btn-*`)
686
- classes, dropdown (`dropdown*`) classes, and the `form-control*` (plus validation) classes.
687
- BootstrapVue's Custom SCSS/CSS is also required for proper styling of the date picker and calendar.
688
-
689
- ## See also
690
-
691
- - [`<b-form-timepicker>` Time picker custom form input](/docs/components/form-timepicker)
692
- - [`<b-calendar>` Calendar date selection widget](/docs/components/calendar)
693
- - [`<b-time>` Time selection widget](/docs/components/time)
694
- - [`<b-dropdown>` Dropdown component](/docs/components/dropdown)
@@ -1 +0,0 @@
1
- @import "../form-btn-label-control/index";