@gitlab/ui 92.2.0 → 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 (440) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/bin/migrate_custom_utils_to_tw.bundled.mjs +11 -3
  3. package/dist/index.css +4 -2
  4. package/dist/index.css.map +1 -1
  5. package/dist/tailwind.css +1 -1
  6. package/dist/tailwind.css.map +1 -1
  7. package/dist/vendor/bootstrap-vue/src/components/form/index.js +0 -4
  8. package/dist/vendor/bootstrap-vue/src/components/index.js +0 -48
  9. package/dist/vendor/bootstrap-vue/src/components/layout/index.js +0 -6
  10. package/dist/vendor/bootstrap-vue/src/components/nav/index.js +0 -6
  11. package/dist/vendor/bootstrap-vue/src/components/navbar/index.js +1 -8
  12. package/dist/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +2 -6
  13. package/dist/vendor/bootstrap-vue/src/constants/classes.js +1 -2
  14. package/dist/vendor/bootstrap-vue/src/constants/components.js +1 -51
  15. package/dist/vendor/bootstrap-vue/src/constants/events.js +1 -12
  16. package/dist/vendor/bootstrap-vue/src/constants/key-codes.js +1 -5
  17. package/dist/vendor/bootstrap-vue/src/constants/props.js +1 -4
  18. package/dist/vendor/bootstrap-vue/src/constants/regex.js +1 -20
  19. package/dist/vendor/bootstrap-vue/src/constants/slots.js +1 -33
  20. package/dist/vendor/bootstrap-vue/src/directives/toggle/toggle.js +1 -1
  21. package/dist/vendor/bootstrap-vue/src/index.js +0 -74
  22. package/dist/vendor/bootstrap-vue/src/utils/array.js +1 -3
  23. package/dist/vendor/bootstrap-vue/src/utils/inspect.js +1 -3
  24. package/dist/vendor/bootstrap-vue/src/utils/math.js +1 -3
  25. package/dist/vendor/bootstrap-vue/src/utils/object.js +1 -6
  26. package/dist/vendor/bootstrap-vue/src/utils/props.js +2 -8
  27. package/dist/vendor/bootstrap-vue/src/utils/string.js +1 -10
  28. package/package.json +1 -1
  29. package/src/components/base/accordion/accordion_item.scss +3 -3
  30. package/src/components/base/alert/alert.scss +3 -3
  31. package/src/components/base/avatar_labeled/avatar_labeled.scss +2 -2
  32. package/src/components/base/avatars_inline/avatars_inline.scss +1 -1
  33. package/src/components/base/badge/badge.scss +2 -2
  34. package/src/components/base/banner/banner.scss +2 -2
  35. package/src/components/base/breadcrumb/breadcrumb.scss +3 -3
  36. package/src/components/base/broadcast_message/broadcast_message.scss +3 -3
  37. package/src/components/base/button/button.scss +14 -14
  38. package/src/components/base/card/card.scss +1 -1
  39. package/src/components/base/datepicker/datepicker.scss +10 -10
  40. package/src/components/base/drawer/drawer.scss +5 -5
  41. package/src/components/base/dropdown/dropdown.scss +28 -28
  42. package/src/components/base/dropdown/dropdown_divider.scss +3 -3
  43. package/src/components/base/dropdown/dropdown_item.scss +9 -9
  44. package/src/components/base/dropdown/dropdown_section_header.scss +2 -2
  45. package/src/components/base/dropdown/dropdown_text.scss +1 -1
  46. package/src/components/base/filtered_search/filtered_search.scss +7 -7
  47. package/src/components/base/filtered_search/filtered_search_suggestion.scss +1 -1
  48. package/src/components/base/filtered_search/filtered_search_suggestion_list.scss +3 -3
  49. package/src/components/base/filtered_search/filtered_search_term.scss +2 -2
  50. package/src/components/base/filtered_search/filtered_search_token.scss +4 -4
  51. package/src/components/base/filtered_search/filtered_search_token_segment.scss +2 -2
  52. package/src/components/base/form/form_checkbox/form_checkbox.scss +10 -10
  53. package/src/components/base/form/form_group/form_group.scss +5 -5
  54. package/src/components/base/form/form_input/form_input.scss +2 -2
  55. package/src/components/base/form/form_select/form_select.scss +2 -2
  56. package/src/components/base/keyset_pagination/keyset_pagination.scss +1 -1
  57. package/src/components/base/label/label.scss +1 -1
  58. package/src/components/base/loading_icon/loading_icon.scss +1 -1
  59. package/src/components/base/markdown/markdown.scss +33 -33
  60. package/src/components/base/modal/modal.scss +11 -11
  61. package/src/components/base/new_dropdowns/dropdown.scss +14 -14
  62. package/src/components/base/new_dropdowns/dropdown_item.scss +9 -9
  63. package/src/components/base/new_dropdowns/listbox/listbox.scss +1 -1
  64. package/src/components/base/pagination/pagination.scss +3 -3
  65. package/src/components/base/path/path.scss +5 -5
  66. package/src/components/base/popover/popover.scss +5 -5
  67. package/src/components/base/search_box_by_click/search_box_by_click.scss +2 -2
  68. package/src/components/base/search_box_by_type/search_box_by_type.scss +4 -4
  69. package/src/components/base/table/table.scss +4 -4
  70. package/src/components/base/tabs/tabs/tabs.scss +10 -10
  71. package/src/components/base/toast/toast.scss +7 -7
  72. package/src/components/base/toggle/toggle.scss +6 -6
  73. package/src/components/base/token/token.scss +5 -5
  74. package/src/components/base/tooltip/tooltip.scss +3 -3
  75. package/src/components/charts/legend/legend.scss +4 -4
  76. package/src/components/charts/series_label/series_label.scss +1 -1
  77. package/src/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.scss +1 -1
  78. package/src/components/experimental/duo/chat/duo_chat.scss +4 -4
  79. package/src/components/shared_components/charts/tooltip_default_format.scss +1 -1
  80. package/src/scss/bootstrap_vue.scss +0 -18
  81. package/src/scss/typescale/_index.scss +9 -9
  82. package/src/vendor/bootstrap-vue/nuxt/index.js +0 -8
  83. package/src/vendor/bootstrap-vue/src/_utilities.scss +0 -9
  84. package/src/vendor/bootstrap-vue/src/_variables.scss +0 -52
  85. package/src/vendor/bootstrap-vue/src/components/form/index.d.ts +0 -3
  86. package/src/vendor/bootstrap-vue/src/components/form/index.js +1 -4
  87. package/src/vendor/bootstrap-vue/src/components/form/package.json +0 -12
  88. package/src/vendor/bootstrap-vue/src/components/index.d.ts +0 -24
  89. package/src/vendor/bootstrap-vue/src/components/index.js +0 -48
  90. package/src/vendor/bootstrap-vue/src/components/index.scss +0 -15
  91. package/src/vendor/bootstrap-vue/src/components/layout/index.d.ts +0 -6
  92. package/src/vendor/bootstrap-vue/src/components/layout/index.js +1 -5
  93. package/src/vendor/bootstrap-vue/src/components/layout/package.json +0 -67
  94. package/src/vendor/bootstrap-vue/src/components/modal/README.md +0 -1
  95. package/src/vendor/bootstrap-vue/src/components/nav/index.d.ts +0 -6
  96. package/src/vendor/bootstrap-vue/src/components/nav/index.js +1 -5
  97. package/src/vendor/bootstrap-vue/src/components/nav/package.json +0 -45
  98. package/src/vendor/bootstrap-vue/src/components/navbar/README.md +0 -5
  99. package/src/vendor/bootstrap-vue/src/components/navbar/index.d.ts +1 -7
  100. package/src/vendor/bootstrap-vue/src/components/navbar/index.js +2 -7
  101. package/src/vendor/bootstrap-vue/src/components/navbar/package.json +0 -75
  102. package/src/vendor/bootstrap-vue/src/components/table/README.md +1 -2
  103. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +2 -2
  104. package/src/vendor/bootstrap-vue/src/components/toast/README.md +1 -3
  105. package/src/vendor/bootstrap-vue/src/components/tooltip/helpers/bv-tooltip.js +2 -6
  106. package/src/vendor/bootstrap-vue/src/constants/classes.js +0 -1
  107. package/src/vendor/bootstrap-vue/src/constants/components.js +0 -50
  108. package/src/vendor/bootstrap-vue/src/constants/events.js +0 -11
  109. package/src/vendor/bootstrap-vue/src/constants/key-codes.js +0 -4
  110. package/src/vendor/bootstrap-vue/src/constants/props.js +0 -3
  111. package/src/vendor/bootstrap-vue/src/constants/regex.js +0 -19
  112. package/src/vendor/bootstrap-vue/src/constants/slots.js +0 -32
  113. package/src/vendor/bootstrap-vue/src/directives/toggle/README.md +5 -23
  114. package/src/vendor/bootstrap-vue/src/directives/toggle/package.json +1 -1
  115. package/src/vendor/bootstrap-vue/src/directives/toggle/toggle.js +1 -1
  116. package/src/vendor/bootstrap-vue/src/index.js +0 -122
  117. package/src/vendor/bootstrap-vue/src/index.scss +0 -3
  118. package/src/vendor/bootstrap-vue/src/utils/array.js +0 -5
  119. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +15 -15
  120. package/src/vendor/bootstrap-vue/src/utils/inspect.js +0 -4
  121. package/src/vendor/bootstrap-vue/src/utils/math.js +0 -4
  122. package/src/vendor/bootstrap-vue/src/utils/object.js +0 -5
  123. package/src/vendor/bootstrap-vue/src/utils/props.js +1 -7
  124. package/src/vendor/bootstrap-vue/src/utils/string.js +0 -9
  125. package/src/vendor/bootstrap-vue/src/utils/string.spec.js +1 -20
  126. package/dist/vendor/bootstrap-vue/src/components/alert/alert.js +0 -179
  127. package/dist/vendor/bootstrap-vue/src/components/alert/index.js +0 -11
  128. package/dist/vendor/bootstrap-vue/src/components/aspect/aspect.js +0 -67
  129. package/dist/vendor/bootstrap-vue/src/components/aspect/index.js +0 -11
  130. package/dist/vendor/bootstrap-vue/src/components/avatar/avatar-group.js +0 -67
  131. package/dist/vendor/bootstrap-vue/src/components/avatar/avatar.js +0 -266
  132. package/dist/vendor/bootstrap-vue/src/components/avatar/index.js +0 -14
  133. package/dist/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.js +0 -112
  134. package/dist/vendor/bootstrap-vue/src/components/button-toolbar/index.js +0 -12
  135. package/dist/vendor/bootstrap-vue/src/components/calendar/calendar.js +0 -1010
  136. package/dist/vendor/bootstrap-vue/src/components/calendar/index.js +0 -11
  137. package/dist/vendor/bootstrap-vue/src/components/card/card-body.js +0 -63
  138. package/dist/vendor/bootstrap-vue/src/components/card/card-footer.js +0 -48
  139. package/dist/vendor/bootstrap-vue/src/components/card/card-group.js +0 -33
  140. package/dist/vendor/bootstrap-vue/src/components/card/card-header.js +0 -48
  141. package/dist/vendor/bootstrap-vue/src/components/card/card-img-lazy.js +0 -46
  142. package/dist/vendor/bootstrap-vue/src/components/card/card-img.js +0 -58
  143. package/dist/vendor/bootstrap-vue/src/components/card/card-sub-title.js +0 -35
  144. package/dist/vendor/bootstrap-vue/src/components/card/card-text.js +0 -31
  145. package/dist/vendor/bootstrap-vue/src/components/card/card-title.js +0 -33
  146. package/dist/vendor/bootstrap-vue/src/components/card/card.js +0 -123
  147. package/dist/vendor/bootstrap-vue/src/components/card/index.js +0 -38
  148. package/dist/vendor/bootstrap-vue/src/components/embed/embed.js +0 -50
  149. package/dist/vendor/bootstrap-vue/src/components/embed/index.js +0 -11
  150. package/dist/vendor/bootstrap-vue/src/components/form/form-datalist.js +0 -52
  151. package/dist/vendor/bootstrap-vue/src/components/form-btn-label-control/bv-form-btn-label-control.js +0 -261
  152. package/dist/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.js +0 -310
  153. package/dist/vendor/bootstrap-vue/src/components/form-datepicker/index.js +0 -12
  154. package/dist/vendor/bootstrap-vue/src/components/form-file/form-file.js +0 -561
  155. package/dist/vendor/bootstrap-vue/src/components/form-file/index.js +0 -12
  156. package/dist/vendor/bootstrap-vue/src/components/form-rating/form-rating.js +0 -402
  157. package/dist/vendor/bootstrap-vue/src/components/form-rating/index.js +0 -12
  158. package/dist/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.js +0 -555
  159. package/dist/vendor/bootstrap-vue/src/components/form-spinbutton/index.js +0 -12
  160. package/dist/vendor/bootstrap-vue/src/components/form-tags/form-tag.js +0 -97
  161. package/dist/vendor/bootstrap-vue/src/components/form-tags/form-tags.js +0 -806
  162. package/dist/vendor/bootstrap-vue/src/components/form-tags/index.js +0 -16
  163. package/dist/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.js +0 -281
  164. package/dist/vendor/bootstrap-vue/src/components/form-timepicker/index.js +0 -12
  165. package/dist/vendor/bootstrap-vue/src/components/image/img-lazy.js +0 -157
  166. package/dist/vendor/bootstrap-vue/src/components/image/img.js +0 -124
  167. package/dist/vendor/bootstrap-vue/src/components/image/index.js +0 -14
  168. package/dist/vendor/bootstrap-vue/src/components/jumbotron/index.js +0 -11
  169. package/dist/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.js +0 -98
  170. package/dist/vendor/bootstrap-vue/src/components/layout/container.js +0 -41
  171. package/dist/vendor/bootstrap-vue/src/components/layout/row.js +0 -113
  172. package/dist/vendor/bootstrap-vue/src/components/list-group/index.js +0 -14
  173. package/dist/vendor/bootstrap-vue/src/components/list-group/list-group-item.js +0 -78
  174. package/dist/vendor/bootstrap-vue/src/components/list-group/list-group.js +0 -42
  175. package/dist/vendor/bootstrap-vue/src/components/media/index.js +0 -17
  176. package/dist/vendor/bootstrap-vue/src/components/media/media-aside.js +0 -41
  177. package/dist/vendor/bootstrap-vue/src/components/media/media-body.js +0 -31
  178. package/dist/vendor/bootstrap-vue/src/components/media/media.js +0 -61
  179. package/dist/vendor/bootstrap-vue/src/components/nav/nav-form.js +0 -45
  180. package/dist/vendor/bootstrap-vue/src/components/nav/nav-text.js +0 -26
  181. package/dist/vendor/bootstrap-vue/src/components/navbar/navbar-nav.js +0 -46
  182. package/dist/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.js +0 -89
  183. package/dist/vendor/bootstrap-vue/src/components/overlay/index.js +0 -11
  184. package/dist/vendor/bootstrap-vue/src/components/overlay/overlay.js +0 -163
  185. package/dist/vendor/bootstrap-vue/src/components/pagination/index.js +0 -11
  186. package/dist/vendor/bootstrap-vue/src/components/pagination/pagination.js +0 -135
  187. package/dist/vendor/bootstrap-vue/src/components/pagination-nav/index.js +0 -11
  188. package/dist/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.js +0 -299
  189. package/dist/vendor/bootstrap-vue/src/components/sidebar/index.js +0 -15
  190. package/dist/vendor/bootstrap-vue/src/components/sidebar/sidebar.js +0 -432
  191. package/dist/vendor/bootstrap-vue/src/components/skeleton/index.js +0 -23
  192. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.js +0 -47
  193. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.js +0 -60
  194. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.js +0 -64
  195. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.js +0 -46
  196. package/dist/vendor/bootstrap-vue/src/components/skeleton/skeleton.js +0 -49
  197. package/dist/vendor/bootstrap-vue/src/components/spinner/index.js +0 -11
  198. package/dist/vendor/bootstrap-vue/src/components/spinner/spinner.js +0 -55
  199. package/dist/vendor/bootstrap-vue/src/components/time/index.js +0 -11
  200. package/dist/vendor/bootstrap-vue/src/components/time/time.js +0 -600
  201. package/dist/vendor/bootstrap-vue/src/constants/date.js +0 -8
  202. package/dist/vendor/bootstrap-vue/src/mixins/card.js +0 -22
  203. package/dist/vendor/bootstrap-vue/src/mixins/pagination.js +0 -598
  204. package/dist/vendor/bootstrap-vue/src/utils/date.js +0 -135
  205. package/src/vendor/bootstrap-vue/src/_custom-controls.scss +0 -30
  206. package/src/vendor/bootstrap-vue/src/components/alert/README.md +0 -280
  207. package/src/vendor/bootstrap-vue/src/components/alert/alert.js +0 -185
  208. package/src/vendor/bootstrap-vue/src/components/alert/alert.spec.js +0 -442
  209. package/src/vendor/bootstrap-vue/src/components/alert/index.d.ts +0 -13
  210. package/src/vendor/bootstrap-vue/src/components/alert/index.js +0 -8
  211. package/src/vendor/bootstrap-vue/src/components/alert/package.json +0 -72
  212. package/src/vendor/bootstrap-vue/src/components/aspect/README.md +0 -65
  213. package/src/vendor/bootstrap-vue/src/components/aspect/aspect.js +0 -65
  214. package/src/vendor/bootstrap-vue/src/components/aspect/aspect.spec.js +0 -121
  215. package/src/vendor/bootstrap-vue/src/components/aspect/index.d.ts +0 -11
  216. package/src/vendor/bootstrap-vue/src/components/aspect/index.js +0 -8
  217. package/src/vendor/bootstrap-vue/src/components/aspect/package.json +0 -26
  218. package/src/vendor/bootstrap-vue/src/components/avatar/README.md +0 -567
  219. package/src/vendor/bootstrap-vue/src/components/avatar/_avatar.scss +0 -148
  220. package/src/vendor/bootstrap-vue/src/components/avatar/avatar-group.js +0 -75
  221. package/src/vendor/bootstrap-vue/src/components/avatar/avatar-group.spec.js +0 -74
  222. package/src/vendor/bootstrap-vue/src/components/avatar/avatar.js +0 -228
  223. package/src/vendor/bootstrap-vue/src/components/avatar/avatar.spec.js +0 -355
  224. package/src/vendor/bootstrap-vue/src/components/avatar/index.d.ts +0 -14
  225. package/src/vendor/bootstrap-vue/src/components/avatar/index.js +0 -9
  226. package/src/vendor/bootstrap-vue/src/components/avatar/index.scss +0 -1
  227. package/src/vendor/bootstrap-vue/src/components/avatar/package.json +0 -149
  228. package/src/vendor/bootstrap-vue/src/components/button-toolbar/README.md +0 -109
  229. package/src/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.js +0 -117
  230. package/src/vendor/bootstrap-vue/src/components/button-toolbar/button-toolbar.spec.js +0 -185
  231. package/src/vendor/bootstrap-vue/src/components/button-toolbar/index.d.ts +0 -11
  232. package/src/vendor/bootstrap-vue/src/components/button-toolbar/index.js +0 -11
  233. package/src/vendor/bootstrap-vue/src/components/button-toolbar/package.json +0 -32
  234. package/src/vendor/bootstrap-vue/src/components/calendar/README.md +0 -735
  235. package/src/vendor/bootstrap-vue/src/components/calendar/_calendar.scss +0 -78
  236. package/src/vendor/bootstrap-vue/src/components/calendar/calendar.js +0 -1146
  237. package/src/vendor/bootstrap-vue/src/components/calendar/calendar.spec.js +0 -466
  238. package/src/vendor/bootstrap-vue/src/components/calendar/index.d.ts +0 -28
  239. package/src/vendor/bootstrap-vue/src/components/calendar/index.js +0 -8
  240. package/src/vendor/bootstrap-vue/src/components/calendar/index.scss +0 -1
  241. package/src/vendor/bootstrap-vue/src/components/calendar/package.json +0 -317
  242. package/src/vendor/bootstrap-vue/src/components/card/README.md +0 -729
  243. package/src/vendor/bootstrap-vue/src/components/card/_card-img.scss +0 -7
  244. package/src/vendor/bootstrap-vue/src/components/card/card-body.js +0 -69
  245. package/src/vendor/bootstrap-vue/src/components/card/card-body.spec.js +0 -142
  246. package/src/vendor/bootstrap-vue/src/components/card/card-footer.js +0 -48
  247. package/src/vendor/bootstrap-vue/src/components/card/card-footer.spec.js +0 -98
  248. package/src/vendor/bootstrap-vue/src/components/card/card-group.js +0 -33
  249. package/src/vendor/bootstrap-vue/src/components/card/card-group.spec.js +0 -75
  250. package/src/vendor/bootstrap-vue/src/components/card/card-header.js +0 -48
  251. package/src/vendor/bootstrap-vue/src/components/card/card-header.spec.js +0 -98
  252. package/src/vendor/bootstrap-vue/src/components/card/card-img-lazy.js +0 -47
  253. package/src/vendor/bootstrap-vue/src/components/card/card-img-lazy.spec.js +0 -204
  254. package/src/vendor/bootstrap-vue/src/components/card/card-img.js +0 -50
  255. package/src/vendor/bootstrap-vue/src/components/card/card-img.spec.js +0 -208
  256. package/src/vendor/bootstrap-vue/src/components/card/card-sub-title.js +0 -35
  257. package/src/vendor/bootstrap-vue/src/components/card/card-sub-title.spec.js +0 -60
  258. package/src/vendor/bootstrap-vue/src/components/card/card-text.js +0 -25
  259. package/src/vendor/bootstrap-vue/src/components/card/card-text.spec.js +0 -48
  260. package/src/vendor/bootstrap-vue/src/components/card/card-title.js +0 -33
  261. package/src/vendor/bootstrap-vue/src/components/card/card-title.spec.js +0 -45
  262. package/src/vendor/bootstrap-vue/src/components/card/card.js +0 -140
  263. package/src/vendor/bootstrap-vue/src/components/card/card.spec.js +0 -296
  264. package/src/vendor/bootstrap-vue/src/components/card/index.d.ts +0 -38
  265. package/src/vendor/bootstrap-vue/src/components/card/index.js +0 -40
  266. package/src/vendor/bootstrap-vue/src/components/card/index.scss +0 -1
  267. package/src/vendor/bootstrap-vue/src/components/card/package.json +0 -262
  268. package/src/vendor/bootstrap-vue/src/components/embed/README.md +0 -63
  269. package/src/vendor/bootstrap-vue/src/components/embed/embed.js +0 -51
  270. package/src/vendor/bootstrap-vue/src/components/embed/embed.spec.js +0 -110
  271. package/src/vendor/bootstrap-vue/src/components/embed/index.d.ts +0 -11
  272. package/src/vendor/bootstrap-vue/src/components/embed/index.js +0 -8
  273. package/src/vendor/bootstrap-vue/src/components/embed/package.json +0 -29
  274. package/src/vendor/bootstrap-vue/src/components/form/form-datalist.js +0 -42
  275. package/src/vendor/bootstrap-vue/src/components/form/form-datalist.spec.js +0 -57
  276. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/_form-btn-label-control.scss +0 -125
  277. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/bv-form-btn-label-control.js +0 -278
  278. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/index.scss +0 -1
  279. package/src/vendor/bootstrap-vue/src/components/form-btn-label-control/package.json +0 -5
  280. package/src/vendor/bootstrap-vue/src/components/form-datepicker/README.md +0 -694
  281. package/src/vendor/bootstrap-vue/src/components/form-datepicker/_form-datepicker.scss +0 -1
  282. package/src/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.js +0 -342
  283. package/src/vendor/bootstrap-vue/src/components/form-datepicker/form-datepicker.spec.js +0 -562
  284. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.d.ts +0 -12
  285. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.js +0 -11
  286. package/src/vendor/bootstrap-vue/src/components/form-datepicker/index.scss +0 -1
  287. package/src/vendor/bootstrap-vue/src/components/form-datepicker/package.json +0 -420
  288. package/src/vendor/bootstrap-vue/src/components/form-file/README.md +0 -357
  289. package/src/vendor/bootstrap-vue/src/components/form-file/_form-file.scss +0 -61
  290. package/src/vendor/bootstrap-vue/src/components/form-file/form-file.js +0 -575
  291. package/src/vendor/bootstrap-vue/src/components/form-file/form-file.spec.js +0 -885
  292. package/src/vendor/bootstrap-vue/src/components/form-file/index.d.ts +0 -13
  293. package/src/vendor/bootstrap-vue/src/components/form-file/index.js +0 -11
  294. package/src/vendor/bootstrap-vue/src/components/form-file/index.scss +0 -1
  295. package/src/vendor/bootstrap-vue/src/components/form-file/package.json +0 -131
  296. package/src/vendor/bootstrap-vue/src/components/form-rating/README.md +0 -526
  297. package/src/vendor/bootstrap-vue/src/components/form-rating/_form-rating.scss +0 -57
  298. package/src/vendor/bootstrap-vue/src/components/form-rating/form-rating.js +0 -411
  299. package/src/vendor/bootstrap-vue/src/components/form-rating/form-rating.spec.js +0 -544
  300. package/src/vendor/bootstrap-vue/src/components/form-rating/index.d.ts +0 -14
  301. package/src/vendor/bootstrap-vue/src/components/form-rating/index.js +0 -8
  302. package/src/vendor/bootstrap-vue/src/components/form-rating/index.scss +0 -1
  303. package/src/vendor/bootstrap-vue/src/components/form-rating/package.json +0 -166
  304. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/README.md +0 -411
  305. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/_spinbutton.scss +0 -76
  306. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.js +0 -572
  307. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/form-spinbutton.spec.js +0 -731
  308. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.d.ts +0 -12
  309. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.js +0 -11
  310. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/index.scss +0 -1
  311. package/src/vendor/bootstrap-vue/src/components/form-spinbutton/package.json +0 -150
  312. package/src/vendor/bootstrap-vue/src/components/form-tags/README.md +0 -880
  313. package/src/vendor/bootstrap-vue/src/components/form-tags/_form-tags.scss +0 -70
  314. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tag.js +0 -94
  315. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tag.spec.js +0 -166
  316. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tags.js +0 -891
  317. package/src/vendor/bootstrap-vue/src/components/form-tags/form-tags.spec.js +0 -920
  318. package/src/vendor/bootstrap-vue/src/components/form-tags/index.d.ts +0 -16
  319. package/src/vendor/bootstrap-vue/src/components/form-tags/index.js +0 -14
  320. package/src/vendor/bootstrap-vue/src/components/form-tags/index.scss +0 -1
  321. package/src/vendor/bootstrap-vue/src/components/form-tags/package.json +0 -440
  322. package/src/vendor/bootstrap-vue/src/components/form-timepicker/README.md +0 -450
  323. package/src/vendor/bootstrap-vue/src/components/form-timepicker/_form-timepicker.scss +0 -1
  324. package/src/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.js +0 -308
  325. package/src/vendor/bootstrap-vue/src/components/form-timepicker/form-timepicker.spec.js +0 -440
  326. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.d.ts +0 -12
  327. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.js +0 -11
  328. package/src/vendor/bootstrap-vue/src/components/form-timepicker/index.scss +0 -1
  329. package/src/vendor/bootstrap-vue/src/components/form-timepicker/package.json +0 -255
  330. package/src/vendor/bootstrap-vue/src/components/image/README.md +0 -322
  331. package/src/vendor/bootstrap-vue/src/components/image/img-lazy.js +0 -161
  332. package/src/vendor/bootstrap-vue/src/components/image/img-lazy.spec.js +0 -96
  333. package/src/vendor/bootstrap-vue/src/components/image/img.js +0 -139
  334. package/src/vendor/bootstrap-vue/src/components/image/img.spec.js +0 -255
  335. package/src/vendor/bootstrap-vue/src/components/image/index.d.ts +0 -14
  336. package/src/vendor/bootstrap-vue/src/components/image/index.js +0 -12
  337. package/src/vendor/bootstrap-vue/src/components/image/package.json +0 -152
  338. package/src/vendor/bootstrap-vue/src/components/jumbotron/README.md +0 -109
  339. package/src/vendor/bootstrap-vue/src/components/jumbotron/index.d.ts +0 -11
  340. package/src/vendor/bootstrap-vue/src/components/jumbotron/index.js +0 -8
  341. package/src/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.js +0 -103
  342. package/src/vendor/bootstrap-vue/src/components/jumbotron/jumbotron.spec.js +0 -254
  343. package/src/vendor/bootstrap-vue/src/components/jumbotron/package.json +0 -66
  344. package/src/vendor/bootstrap-vue/src/components/layout/container.js +0 -40
  345. package/src/vendor/bootstrap-vue/src/components/layout/container.spec.js +0 -75
  346. package/src/vendor/bootstrap-vue/src/components/layout/row.js +0 -111
  347. package/src/vendor/bootstrap-vue/src/components/layout/row.spec.js +0 -138
  348. package/src/vendor/bootstrap-vue/src/components/list-group/README.md +0 -291
  349. package/src/vendor/bootstrap-vue/src/components/list-group/index.d.ts +0 -14
  350. package/src/vendor/bootstrap-vue/src/components/list-group/index.js +0 -12
  351. package/src/vendor/bootstrap-vue/src/components/list-group/list-group-item.js +0 -76
  352. package/src/vendor/bootstrap-vue/src/components/list-group/list-group-item.spec.js +0 -286
  353. package/src/vendor/bootstrap-vue/src/components/list-group/list-group.js +0 -42
  354. package/src/vendor/bootstrap-vue/src/components/list-group/list-group.spec.js +0 -132
  355. package/src/vendor/bootstrap-vue/src/components/list-group/package.json +0 -52
  356. package/src/vendor/bootstrap-vue/src/components/media/README.md +0 -183
  357. package/src/vendor/bootstrap-vue/src/components/media/_media.scss +0 -9
  358. package/src/vendor/bootstrap-vue/src/components/media/index.d.ts +0 -17
  359. package/src/vendor/bootstrap-vue/src/components/media/index.js +0 -14
  360. package/src/vendor/bootstrap-vue/src/components/media/index.scss +0 -1
  361. package/src/vendor/bootstrap-vue/src/components/media/media-aside.js +0 -45
  362. package/src/vendor/bootstrap-vue/src/components/media/media-aside.spec.js +0 -79
  363. package/src/vendor/bootstrap-vue/src/components/media/media-body.js +0 -25
  364. package/src/vendor/bootstrap-vue/src/components/media/media-body.spec.js +0 -47
  365. package/src/vendor/bootstrap-vue/src/components/media/media.js +0 -52
  366. package/src/vendor/bootstrap-vue/src/components/media/media.spec.js +0 -149
  367. package/src/vendor/bootstrap-vue/src/components/media/package.json +0 -65
  368. package/src/vendor/bootstrap-vue/src/components/nav/nav-form.js +0 -50
  369. package/src/vendor/bootstrap-vue/src/components/nav/nav-form.spec.js +0 -93
  370. package/src/vendor/bootstrap-vue/src/components/nav/nav-text.js +0 -18
  371. package/src/vendor/bootstrap-vue/src/components/nav/nav-text.spec.js +0 -30
  372. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-nav.js +0 -45
  373. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-nav.spec.js +0 -105
  374. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.js +0 -84
  375. package/src/vendor/bootstrap-vue/src/components/navbar/navbar-toggle.spec.js +0 -189
  376. package/src/vendor/bootstrap-vue/src/components/overlay/README.md +0 -815
  377. package/src/vendor/bootstrap-vue/src/components/overlay/index.d.ts +0 -11
  378. package/src/vendor/bootstrap-vue/src/components/overlay/index.js +0 -8
  379. package/src/vendor/bootstrap-vue/src/components/overlay/overlay.js +0 -162
  380. package/src/vendor/bootstrap-vue/src/components/overlay/overlay.spec.js +0 -257
  381. package/src/vendor/bootstrap-vue/src/components/overlay/package.json +0 -130
  382. package/src/vendor/bootstrap-vue/src/components/pagination/README.md +0 -430
  383. package/src/vendor/bootstrap-vue/src/components/pagination/_pagination.scss +0 -26
  384. package/src/vendor/bootstrap-vue/src/components/pagination/index.d.ts +0 -11
  385. package/src/vendor/bootstrap-vue/src/components/pagination/index.js +0 -8
  386. package/src/vendor/bootstrap-vue/src/components/pagination/index.scss +0 -1
  387. package/src/vendor/bootstrap-vue/src/components/pagination/package.json +0 -295
  388. package/src/vendor/bootstrap-vue/src/components/pagination/pagination.js +0 -138
  389. package/src/vendor/bootstrap-vue/src/components/pagination/pagination.spec.js +0 -1198
  390. package/src/vendor/bootstrap-vue/src/components/pagination-nav/README.md +0 -544
  391. package/src/vendor/bootstrap-vue/src/components/pagination-nav/_pagination-nav.scss +0 -2
  392. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.d.ts +0 -11
  393. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.js +0 -8
  394. package/src/vendor/bootstrap-vue/src/components/pagination-nav/index.scss +0 -1
  395. package/src/vendor/bootstrap-vue/src/components/pagination-nav/package.json +0 -315
  396. package/src/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.js +0 -281
  397. package/src/vendor/bootstrap-vue/src/components/pagination-nav/pagination-nav.spec.js +0 -671
  398. package/src/vendor/bootstrap-vue/src/components/sidebar/README.md +0 -406
  399. package/src/vendor/bootstrap-vue/src/components/sidebar/_sidebar.scss +0 -97
  400. package/src/vendor/bootstrap-vue/src/components/sidebar/index.d.ts +0 -11
  401. package/src/vendor/bootstrap-vue/src/components/sidebar/index.js +0 -10
  402. package/src/vendor/bootstrap-vue/src/components/sidebar/index.scss +0 -1
  403. package/src/vendor/bootstrap-vue/src/components/sidebar/package.json +0 -239
  404. package/src/vendor/bootstrap-vue/src/components/sidebar/sidebar.js +0 -438
  405. package/src/vendor/bootstrap-vue/src/components/sidebar/sidebar.spec.js +0 -404
  406. package/src/vendor/bootstrap-vue/src/components/skeleton/README.md +0 -275
  407. package/src/vendor/bootstrap-vue/src/components/skeleton/_skeleton.scss +0 -141
  408. package/src/vendor/bootstrap-vue/src/components/skeleton/index.d.ts +0 -23
  409. package/src/vendor/bootstrap-vue/src/components/skeleton/index.js +0 -18
  410. package/src/vendor/bootstrap-vue/src/components/skeleton/index.scss +0 -1
  411. package/src/vendor/bootstrap-vue/src/components/skeleton/package.json +0 -136
  412. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.js +0 -45
  413. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-icon.spec.js +0 -86
  414. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.js +0 -49
  415. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-img.spec.js +0 -139
  416. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.js +0 -58
  417. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-table.spec.js +0 -119
  418. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.js +0 -47
  419. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton-wrapper.spec.js +0 -48
  420. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton.js +0 -46
  421. package/src/vendor/bootstrap-vue/src/components/skeleton/skeleton.spec.js +0 -126
  422. package/src/vendor/bootstrap-vue/src/components/spinner/README.md +0 -229
  423. package/src/vendor/bootstrap-vue/src/components/spinner/index.d.ts +0 -11
  424. package/src/vendor/bootstrap-vue/src/components/spinner/index.js +0 -8
  425. package/src/vendor/bootstrap-vue/src/components/spinner/package.json +0 -38
  426. package/src/vendor/bootstrap-vue/src/components/spinner/spinner.js +0 -54
  427. package/src/vendor/bootstrap-vue/src/components/spinner/spinner.spec.js +0 -305
  428. package/src/vendor/bootstrap-vue/src/components/time/README.md +0 -431
  429. package/src/vendor/bootstrap-vue/src/components/time/_time.scss +0 -41
  430. package/src/vendor/bootstrap-vue/src/components/time/index.d.ts +0 -27
  431. package/src/vendor/bootstrap-vue/src/components/time/index.js +0 -8
  432. package/src/vendor/bootstrap-vue/src/components/time/index.scss +0 -1
  433. package/src/vendor/bootstrap-vue/src/components/time/package.json +0 -123
  434. package/src/vendor/bootstrap-vue/src/components/time/time.js +0 -601
  435. package/src/vendor/bootstrap-vue/src/components/time/time.spec.js +0 -330
  436. package/src/vendor/bootstrap-vue/src/constants/date.js +0 -7
  437. package/src/vendor/bootstrap-vue/src/mixins/card.js +0 -23
  438. package/src/vendor/bootstrap-vue/src/mixins/pagination.js +0 -670
  439. package/src/vendor/bootstrap-vue/src/utils/date.js +0 -130
  440. package/src/vendor/bootstrap-vue/src/utils/date.spec.js +0 -159
@@ -1,600 +0,0 @@
1
- import { extend, REF_FOR_KEY } from '../../vue';
2
- import { NAME_TIME } from '../../constants/components';
3
- import { EVENT_NAME_CONTEXT } from '../../constants/events';
4
- import { CODE_LEFT, CODE_RIGHT } from '../../constants/key-codes';
5
- import { PROP_TYPE_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_ARRAY_STRING, PROP_TYPE_NUMBER_STRING } from '../../constants/props';
6
- import { RX_TIME } from '../../constants/regex';
7
- import { concat } from '../../utils/array';
8
- import { createDateFormatter, createDate } from '../../utils/date';
9
- import { attemptFocus, getActiveElement, contains, attemptBlur, requestAF } from '../../utils/dom';
10
- import { stopEvent } from '../../utils/events';
11
- import { identity } from '../../utils/identity';
12
- import { isUndefinedOrNull, isNull } from '../../utils/inspect';
13
- import { looseEqual } from '../../utils/loose-equal';
14
- import { isLocaleRTL } from '../../utils/locale';
15
- import { makeModelMixin } from '../../utils/model';
16
- import { toInteger } from '../../utils/number';
17
- import { sortKeys, pick } from '../../utils/object';
18
- import { makePropsConfigurable, makeProp } from '../../utils/props';
19
- import { toString } from '../../utils/string';
20
- import { props as props$1, idMixin } from '../../mixins/id';
21
- import { normalizeSlotMixin } from '../../mixins/normalize-slot';
22
- import { props as props$2, BFormSpinbutton } from '../form-spinbutton/form-spinbutton';
23
- import { BIconChevronUp, BIconCircleFill } from '../../icons/icons';
24
-
25
- // BTime control (not form input control)
26
-
27
- // --- Constants ---
28
-
29
- const {
30
- mixin: modelMixin,
31
- props: modelProps,
32
- prop: MODEL_PROP_NAME,
33
- event: MODEL_EVENT_NAME
34
- } = makeModelMixin('value', {
35
- type: PROP_TYPE_STRING,
36
- defaultValue: ''
37
- });
38
- const NUMERIC = 'numeric';
39
-
40
- // --- Helper methods ---
41
-
42
- const padLeftZeros = value => `00${value || ''}`.slice(-2);
43
- const parseHMS = value => {
44
- value = toString(value);
45
- let [hh, mm, ss] = [null, null, null];
46
- if (RX_TIME.test(value)) {
47
- [hh, mm, ss] = value.split(':').map(v => toInteger(v, null));
48
- }
49
- return {
50
- hours: isUndefinedOrNull(hh) ? null : hh,
51
- minutes: isUndefinedOrNull(mm) ? null : mm,
52
- seconds: isUndefinedOrNull(ss) ? null : ss,
53
- ampm: isUndefinedOrNull(hh) || hh < 12 ? 0 : 1
54
- };
55
- };
56
- const formatHMS = function (_ref) {
57
- let {
58
- hours,
59
- minutes,
60
- seconds
61
- } = _ref;
62
- let requireSeconds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
63
- if (isNull(hours) || isNull(minutes) || requireSeconds && isNull(seconds)) {
64
- return '';
65
- }
66
- const hms = [hours, minutes, requireSeconds ? seconds : 0];
67
- return hms.map(padLeftZeros).join(':');
68
- };
69
-
70
- // --- Props ---
71
-
72
- const props = makePropsConfigurable(sortKeys({
73
- ...props$1,
74
- ...modelProps,
75
- ...pick(props$2, ['labelIncrement', 'labelDecrement']),
76
- // ID of label element
77
- ariaLabelledby: makeProp(PROP_TYPE_STRING),
78
- disabled: makeProp(PROP_TYPE_BOOLEAN, false),
79
- footerTag: makeProp(PROP_TYPE_STRING, 'footer'),
80
- headerTag: makeProp(PROP_TYPE_STRING, 'header'),
81
- hidden: makeProp(PROP_TYPE_BOOLEAN, false),
82
- hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),
83
- // Explicitly force 12 or 24 hour time
84
- // Default is to use resolved locale for 12/24 hour display
85
- // Tri-state: `true` = 12, `false` = 24, `null` = auto
86
- hour12: makeProp(PROP_TYPE_BOOLEAN, null),
87
- labelAm: makeProp(PROP_TYPE_STRING, 'AM'),
88
- labelAmpm: makeProp(PROP_TYPE_STRING, 'AM/PM'),
89
- labelHours: makeProp(PROP_TYPE_STRING, 'Hours'),
90
- labelMinutes: makeProp(PROP_TYPE_STRING, 'Minutes'),
91
- labelNoTimeSelected: makeProp(PROP_TYPE_STRING, 'No time selected'),
92
- labelPm: makeProp(PROP_TYPE_STRING, 'PM'),
93
- labelSeconds: makeProp(PROP_TYPE_STRING, 'Seconds'),
94
- labelSelected: makeProp(PROP_TYPE_STRING, 'Selected time'),
95
- locale: makeProp(PROP_TYPE_ARRAY_STRING),
96
- minutesStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),
97
- readonly: makeProp(PROP_TYPE_BOOLEAN, false),
98
- secondsStep: makeProp(PROP_TYPE_NUMBER_STRING, 1),
99
- // If `true`, show the second spinbutton
100
- showSeconds: makeProp(PROP_TYPE_BOOLEAN, false)
101
- }), NAME_TIME);
102
-
103
- // --- Main component ---
104
-
105
- // @vue/component
106
- const BTime = /*#__PURE__*/extend({
107
- name: NAME_TIME,
108
- mixins: [idMixin, modelMixin, normalizeSlotMixin],
109
- props,
110
- data() {
111
- const parsed = parseHMS(this[MODEL_PROP_NAME] || '');
112
- return {
113
- // Spin button models
114
- modelHours: parsed.hours,
115
- modelMinutes: parsed.minutes,
116
- modelSeconds: parsed.seconds,
117
- modelAmpm: parsed.ampm,
118
- // Internal flag to enable aria-live regions
119
- isLive: false
120
- };
121
- },
122
- computed: {
123
- computedHMS() {
124
- const hours = this.modelHours;
125
- const minutes = this.modelMinutes;
126
- const seconds = this.modelSeconds;
127
- return formatHMS({
128
- hours,
129
- minutes,
130
- seconds
131
- }, this.showSeconds);
132
- },
133
- resolvedOptions() {
134
- // Resolved locale options
135
- const locale = concat(this.locale).filter(identity);
136
- const options = {
137
- hour: NUMERIC,
138
- minute: NUMERIC,
139
- second: NUMERIC
140
- };
141
- if (!isUndefinedOrNull(this.hour12)) {
142
- // Force 12 or 24 hour clock
143
- options.hour12 = !!this.hour12;
144
- }
145
- const dtf = new Intl.DateTimeFormat(locale, options);
146
- const resolved = dtf.resolvedOptions();
147
- const hour12 = resolved.hour12 || false;
148
- // IE 11 doesn't resolve the hourCycle, so we make
149
- // an assumption and fall back to common values
150
- const hourCycle = resolved.hourCycle || (hour12 ? 'h12' : 'h23');
151
- return {
152
- locale: resolved.locale,
153
- hour12,
154
- hourCycle
155
- };
156
- },
157
- computedLocale() {
158
- return this.resolvedOptions.locale;
159
- },
160
- computedLang() {
161
- return (this.computedLocale || '').replace(/-u-.*$/, '');
162
- },
163
- computedRTL() {
164
- return isLocaleRTL(this.computedLang);
165
- },
166
- computedHourCycle() {
167
- // h11, h12, h23, or h24
168
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Locale/hourCycle
169
- // h12 - Hour system using 1–12. Corresponds to 'h' in patterns. The 12 hour clock, with midnight starting at 12:00 am
170
- // h23 - Hour system using 0–23. Corresponds to 'H' in patterns. The 24 hour clock, with midnight starting at 0:00
171
- // h11 - Hour system using 0–11. Corresponds to 'K' in patterns. The 12 hour clock, with midnight starting at 0:00 am
172
- // h24 - Hour system using 1–24. Corresponds to 'k' in pattern. The 24 hour clock, with midnight starting at 24:00
173
- // For h12 or h24, we visually format 00 hours as 12
174
- return this.resolvedOptions.hourCycle;
175
- },
176
- is12Hour() {
177
- return !!this.resolvedOptions.hour12;
178
- },
179
- context() {
180
- return {
181
- locale: this.computedLocale,
182
- isRTL: this.computedRTL,
183
- hourCycle: this.computedHourCycle,
184
- hour12: this.is12Hour,
185
- hours: this.modelHours,
186
- minutes: this.modelMinutes,
187
- seconds: this.showSeconds ? this.modelSeconds : 0,
188
- value: this.computedHMS,
189
- formatted: this.formattedTimeString
190
- };
191
- },
192
- valueId() {
193
- return this.safeId() || null;
194
- },
195
- computedAriaLabelledby() {
196
- return [this.ariaLabelledby, this.valueId].filter(identity).join(' ') || null;
197
- },
198
- timeFormatter() {
199
- // Returns a formatter function reference
200
- // The formatter converts the time to a localized string
201
- const options = {
202
- hour12: this.is12Hour,
203
- hourCycle: this.computedHourCycle,
204
- hour: NUMERIC,
205
- minute: NUMERIC,
206
- timeZone: 'UTC'
207
- };
208
- if (this.showSeconds) {
209
- options.second = NUMERIC;
210
- }
211
- // Formats the time as a localized string
212
- return createDateFormatter(this.computedLocale, options);
213
- },
214
- numberFormatter() {
215
- // Returns a formatter function reference
216
- // The formatter always formats as 2 digits and is localized
217
- const nf = new Intl.NumberFormat(this.computedLocale, {
218
- style: 'decimal',
219
- minimumIntegerDigits: 2,
220
- minimumFractionDigits: 0,
221
- maximumFractionDigits: 0,
222
- notation: 'standard'
223
- });
224
- return nf.format;
225
- },
226
- formattedTimeString() {
227
- const hours = this.modelHours;
228
- const minutes = this.modelMinutes;
229
- const seconds = this.showSeconds ? this.modelSeconds || 0 : 0;
230
- if (this.computedHMS) {
231
- return this.timeFormatter(createDate(Date.UTC(0, 0, 1, hours, minutes, seconds)));
232
- }
233
- return this.labelNoTimeSelected || ' ';
234
- },
235
- spinScopedSlots() {
236
- const h = this.$createElement;
237
- return {
238
- increment: _ref2 => {
239
- let {
240
- hasFocus
241
- } = _ref2;
242
- return h(BIconChevronUp, {
243
- props: {
244
- scale: hasFocus ? 1.5 : 1.25
245
- },
246
- attrs: {
247
- 'aria-hidden': 'true'
248
- }
249
- });
250
- },
251
- decrement: _ref3 => {
252
- let {
253
- hasFocus
254
- } = _ref3;
255
- return h(BIconChevronUp, {
256
- props: {
257
- flipV: true,
258
- scale: hasFocus ? 1.5 : 1.25
259
- },
260
- attrs: {
261
- 'aria-hidden': 'true'
262
- }
263
- });
264
- }
265
- };
266
- }
267
- },
268
- watch: {
269
- [MODEL_PROP_NAME](newValue, oldValue) {
270
- if (newValue !== oldValue && !looseEqual(parseHMS(newValue), parseHMS(this.computedHMS))) {
271
- const {
272
- hours,
273
- minutes,
274
- seconds,
275
- ampm
276
- } = parseHMS(newValue);
277
- this.modelHours = hours;
278
- this.modelMinutes = minutes;
279
- this.modelSeconds = seconds;
280
- this.modelAmpm = ampm;
281
- }
282
- },
283
- computedHMS(newValue, oldValue) {
284
- if (newValue !== oldValue) {
285
- this.$emit(MODEL_EVENT_NAME, newValue);
286
- }
287
- },
288
- context(newValue, oldValue) {
289
- if (!looseEqual(newValue, oldValue)) {
290
- this.$emit(EVENT_NAME_CONTEXT, newValue);
291
- }
292
- },
293
- modelAmpm(newValue, oldValue) {
294
- if (newValue !== oldValue) {
295
- const hours = isNull(this.modelHours) ? 0 : this.modelHours;
296
- this.$nextTick(() => {
297
- if (newValue === 0 && hours > 11) {
298
- // Switched to AM
299
- this.modelHours = hours - 12;
300
- } else if (newValue === 1 && hours < 12) {
301
- // Switched to PM
302
- this.modelHours = hours + 12;
303
- }
304
- });
305
- }
306
- },
307
- modelHours(newHours, oldHours) {
308
- if (newHours !== oldHours) {
309
- this.modelAmpm = newHours > 11 ? 1 : 0;
310
- }
311
- }
312
- },
313
- created() {
314
- this.$nextTick(() => {
315
- this.$emit(EVENT_NAME_CONTEXT, this.context);
316
- });
317
- },
318
- mounted() {
319
- this.setLive(true);
320
- },
321
- /* istanbul ignore next */
322
- activated() {
323
- this.setLive(true);
324
- },
325
- /* istanbul ignore next */
326
- deactivated() {
327
- this.setLive(false);
328
- },
329
- beforeDestroy() {
330
- this.setLive(false);
331
- },
332
- methods: {
333
- // Public methods
334
- focus() {
335
- if (!this.disabled) {
336
- // We focus the first spin button
337
- attemptFocus(this.$refs.spinners[0]);
338
- }
339
- },
340
- blur() {
341
- if (!this.disabled) {
342
- const activeElement = getActiveElement();
343
- if (contains(this.$el, activeElement)) {
344
- attemptBlur(activeElement);
345
- }
346
- }
347
- },
348
- // Formatters for the spin buttons
349
- formatHours(hh) {
350
- const hourCycle = this.computedHourCycle;
351
- // We always store 0-23, but format based on h11/h12/h23/h24 formats
352
- hh = this.is12Hour && hh > 12 ? hh - 12 : hh;
353
- // Determine how 00:00 and 12:00 are shown
354
- hh = hh === 0 && hourCycle === 'h12' ? 12 : hh === 0 && hourCycle === 'h24' ? /* istanbul ignore next */24 : hh === 12 && hourCycle === 'h11' ? /* istanbul ignore next */0 : hh;
355
- return this.numberFormatter(hh);
356
- },
357
- formatMinutes(mm) {
358
- return this.numberFormatter(mm);
359
- },
360
- formatSeconds(ss) {
361
- return this.numberFormatter(ss);
362
- },
363
- formatAmpm(ampm) {
364
- // These should come from label props???
365
- // `ampm` should always be a value of `0` or `1`
366
- return ampm === 0 ? this.labelAm : ampm === 1 ? this.labelPm : '';
367
- },
368
- // Spinbutton on change handlers
369
- setHours(value) {
370
- this.modelHours = value;
371
- },
372
- setMinutes(value) {
373
- this.modelMinutes = value;
374
- },
375
- setSeconds(value) {
376
- this.modelSeconds = value;
377
- },
378
- setAmpm(value) {
379
- this.modelAmpm = value;
380
- },
381
- onSpinLeftRight() {
382
- let event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
383
- const {
384
- type,
385
- keyCode
386
- } = event;
387
- if (!this.disabled && type === 'keydown' && (keyCode === CODE_LEFT || keyCode === CODE_RIGHT)) {
388
- stopEvent(event);
389
- const spinners = this.$refs.spinners || [];
390
- let index = spinners.map(cmp => !!cmp.hasFocus).indexOf(true);
391
- index = index + (keyCode === CODE_LEFT ? -1 : 1);
392
- index = index >= spinners.length ? 0 : index < 0 ? spinners.length - 1 : index;
393
- attemptFocus(spinners[index]);
394
- }
395
- },
396
- setLive(on) {
397
- if (on) {
398
- this.$nextTick(() => {
399
- requestAF(() => {
400
- this.isLive = true;
401
- });
402
- });
403
- } else {
404
- this.isLive = false;
405
- }
406
- }
407
- },
408
- render(h) {
409
- var _this = this;
410
- // If hidden, we just render a placeholder comment
411
- /* istanbul ignore if */
412
- if (this.hidden) {
413
- return h();
414
- }
415
- const {
416
- disabled,
417
- readonly,
418
- computedLocale: locale,
419
- computedAriaLabelledby: ariaLabelledby,
420
- labelIncrement,
421
- labelDecrement,
422
- valueId,
423
- focus: focusHandler
424
- } = this;
425
- const spinIds = [];
426
-
427
- // Helper method to render a spinbutton
428
- const makeSpinbutton = function (handler, key, classes) {
429
- let spinbuttonProps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
430
- const id = _this.safeId(`_spinbutton_${key}_`) || null;
431
- spinIds.push(id);
432
- return h(BFormSpinbutton, {
433
- class: classes,
434
- props: {
435
- id,
436
- placeholder: '--',
437
- vertical: true,
438
- required: true,
439
- disabled,
440
- readonly,
441
- locale,
442
- labelIncrement,
443
- labelDecrement,
444
- wrap: true,
445
- ariaControls: valueId,
446
- min: 0,
447
- ...spinbuttonProps
448
- },
449
- scopedSlots: _this.spinScopedSlots,
450
- on: {
451
- // We use `change` event to minimize SR verbosity
452
- // As the spinbutton will announce each value change
453
- // and we don't want the formatted time to be announced
454
- // on each value input if repeat is happening
455
- change: handler
456
- },
457
- key,
458
- ref: 'spinners',
459
- [REF_FOR_KEY]: true
460
- });
461
- };
462
-
463
- // Helper method to return a "colon" separator
464
- const makeColon = () => {
465
- return h('div', {
466
- staticClass: 'd-flex flex-column',
467
- class: {
468
- 'text-muted': disabled || readonly
469
- },
470
- attrs: {
471
- 'aria-hidden': 'true'
472
- }
473
- }, [h(BIconCircleFill, {
474
- props: {
475
- shiftV: 4,
476
- scale: 0.5
477
- }
478
- }), h(BIconCircleFill, {
479
- props: {
480
- shiftV: -4,
481
- scale: 0.5
482
- }
483
- })]);
484
- };
485
- let $spinners = [];
486
-
487
- // Hours
488
- $spinners.push(makeSpinbutton(this.setHours, 'hours', 'b-time-hours', {
489
- value: this.modelHours,
490
- max: 23,
491
- step: 1,
492
- formatterFn: this.formatHours,
493
- ariaLabel: this.labelHours
494
- }));
495
-
496
- // Spacer
497
- $spinners.push(makeColon());
498
-
499
- // Minutes
500
- $spinners.push(makeSpinbutton(this.setMinutes, 'minutes', 'b-time-minutes', {
501
- value: this.modelMinutes,
502
- max: 59,
503
- step: this.minutesStep || 1,
504
- formatterFn: this.formatMinutes,
505
- ariaLabel: this.labelMinutes
506
- }));
507
- if (this.showSeconds) {
508
- // Spacer
509
- $spinners.push(makeColon());
510
- // Seconds
511
- $spinners.push(makeSpinbutton(this.setSeconds, 'seconds', 'b-time-seconds', {
512
- value: this.modelSeconds,
513
- max: 59,
514
- step: this.secondsStep || 1,
515
- formatterFn: this.formatSeconds,
516
- ariaLabel: this.labelSeconds
517
- }));
518
- }
519
-
520
- // AM/PM ?
521
- // depends on client settings, shouldn't be rendered on server
522
- if (this.isLive && this.is12Hour) {
523
- // TODO:
524
- // If locale is RTL, unshift this instead of push?
525
- // And switch class `ml-2` to `mr-2`
526
- // Note some LTR locales (i.e. zh) also place AM/PM to the left
527
- $spinners.push(makeSpinbutton(this.setAmpm, 'ampm', 'b-time-ampm', {
528
- value: this.modelAmpm,
529
- max: 1,
530
- formatterFn: this.formatAmpm,
531
- ariaLabel: this.labelAmpm,
532
- // We set `required` as `false`, since this always has a value
533
- required: false
534
- }));
535
- }
536
-
537
- // Assemble spinners
538
- $spinners = h('div', {
539
- staticClass: 'd-flex align-items-center justify-content-center mx-auto',
540
- attrs: {
541
- role: 'group',
542
- tabindex: disabled || readonly ? null : '-1',
543
- 'aria-labelledby': ariaLabelledby
544
- },
545
- on: {
546
- keydown: this.onSpinLeftRight,
547
- click: /* istanbul ignore next */event => {
548
- if (event.target === event.currentTarget) {
549
- focusHandler();
550
- }
551
- }
552
- }
553
- }, $spinners);
554
-
555
- // Selected type display
556
- const $value = h('output', {
557
- staticClass: 'form-control form-control-sm text-center',
558
- class: {
559
- disabled: disabled || readonly
560
- },
561
- attrs: {
562
- id: valueId,
563
- role: 'status',
564
- for: spinIds.filter(identity).join(' ') || null,
565
- tabindex: disabled ? null : '-1',
566
- 'aria-live': this.isLive ? 'polite' : 'off',
567
- 'aria-atomic': 'true'
568
- },
569
- on: {
570
- // Transfer focus/click to focus hours spinner
571
- click: focusHandler,
572
- focus: focusHandler
573
- }
574
- }, [h('bdi', this.formattedTimeString), this.computedHMS ? h('span', {
575
- staticClass: 'sr-only'
576
- }, ` (${this.labelSelected}) `) : '']);
577
- const $header = h(this.headerTag, {
578
- staticClass: 'b-time-header',
579
- class: {
580
- 'sr-only': this.hideHeader
581
- }
582
- }, [$value]);
583
- const $content = this.normalizeSlot();
584
- const $footer = $content ? h(this.footerTag, {
585
- staticClass: 'b-time-footer'
586
- }, $content) : h();
587
- return h('div', {
588
- staticClass: 'b-time d-inline-flex flex-column text-center',
589
- attrs: {
590
- role: 'group',
591
- lang: this.computedLang || null,
592
- 'aria-labelledby': ariaLabelledby || null,
593
- 'aria-disabled': disabled ? 'true' : null,
594
- 'aria-readonly': readonly && !disabled ? 'true' : null
595
- }
596
- }, [$header, $spinners, $footer]);
597
- }
598
- });
599
-
600
- export { BTime, props };
@@ -1,8 +0,0 @@
1
- const CALENDAR_GREGORY = 'gregory';
2
- const CALENDAR_LONG = 'long';
3
- const CALENDAR_NARROW = 'narrow';
4
- const CALENDAR_SHORT = 'short';
5
- const DATE_FORMAT_2_DIGIT = '2-digit';
6
- const DATE_FORMAT_NUMERIC = 'numeric';
7
-
8
- export { CALENDAR_GREGORY, CALENDAR_LONG, CALENDAR_NARROW, CALENDAR_SHORT, DATE_FORMAT_2_DIGIT, DATE_FORMAT_NUMERIC };
@@ -1,22 +0,0 @@
1
- import { extend } from '../vue';
2
- import { NAME_CARD } from '../constants/components';
3
- import { PROP_TYPE_STRING } from '../constants/props';
4
- import { makePropsConfigurable, makeProp } from '../utils/props';
5
-
6
- // --- Props ---
7
-
8
- const props = makePropsConfigurable({
9
- bgVariant: makeProp(PROP_TYPE_STRING),
10
- borderVariant: makeProp(PROP_TYPE_STRING),
11
- tag: makeProp(PROP_TYPE_STRING, 'div'),
12
- textVariant: makeProp(PROP_TYPE_STRING)
13
- }, NAME_CARD);
14
-
15
- // --- Mixin ---
16
-
17
- // @vue/component
18
- const cardMixin = extend({
19
- props
20
- });
21
-
22
- export { cardMixin, props };