buefy 0.7.9 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/dist/buefy.css +13759 -8263
  3. package/dist/buefy.js +9073 -14866
  4. package/dist/buefy.min.css +1 -5
  5. package/dist/buefy.min.js +2 -2
  6. package/dist/cjs/autocomplete.js +22 -0
  7. package/dist/cjs/button.js +106 -0
  8. package/dist/cjs/checkbox.js +135 -0
  9. package/dist/cjs/chunk-07fe6fc0.js +247 -0
  10. package/dist/cjs/chunk-0af453a7.js +105 -0
  11. package/dist/cjs/chunk-0e89e51b.js +394 -0
  12. package/dist/cjs/chunk-13e039f5.js +104 -0
  13. package/dist/cjs/chunk-143d9e6d.js +404 -0
  14. package/dist/cjs/chunk-19ebd649.js +114 -0
  15. package/dist/cjs/chunk-1b1231ce.js +94 -0
  16. package/dist/cjs/chunk-1e6abfcf.js +94 -0
  17. package/dist/cjs/chunk-28d164b1.js +172 -0
  18. package/dist/cjs/chunk-3396605d.js +394 -0
  19. package/dist/cjs/chunk-364a37a0.js +404 -0
  20. package/dist/cjs/chunk-3b066933.js +103 -0
  21. package/dist/cjs/chunk-3dffe6e7.js +54 -0
  22. package/dist/cjs/chunk-4a03b064.js +199 -0
  23. package/dist/cjs/chunk-50b06939.js +153 -0
  24. package/dist/cjs/chunk-52623128.js +105 -0
  25. package/dist/cjs/chunk-53d4f332.js +94 -0
  26. package/dist/cjs/chunk-544a95da.js +404 -0
  27. package/dist/cjs/chunk-545f01b1.js +49 -0
  28. package/dist/cjs/chunk-59b91990.js +64 -0
  29. package/dist/cjs/chunk-5b2a3329.js +394 -0
  30. package/dist/cjs/chunk-60061aa8.js +172 -0
  31. package/dist/cjs/chunk-67658e54.js +404 -0
  32. package/dist/cjs/chunk-6963026a.js +86 -0
  33. package/dist/cjs/chunk-6cece6b7.js +140 -0
  34. package/dist/cjs/chunk-6d6465c1.js +140 -0
  35. package/dist/cjs/chunk-6e9c0aca.js +94 -0
  36. package/dist/cjs/chunk-77f69fca.js +106 -0
  37. package/dist/cjs/chunk-7a25d736.js +114 -0
  38. package/dist/cjs/chunk-876befa8.js +247 -0
  39. package/dist/cjs/chunk-8985ffff.js +105 -0
  40. package/dist/cjs/chunk-8a05c8c9.js +207 -0
  41. package/dist/cjs/chunk-90407463.js +258 -0
  42. package/dist/cjs/chunk-956525c9.js +106 -0
  43. package/dist/cjs/chunk-96ce35a2.js +114 -0
  44. package/dist/cjs/chunk-9da1d120.js +86 -0
  45. package/dist/cjs/chunk-9f6a8079.js +54 -0
  46. package/dist/cjs/chunk-a60dc21d.js +281 -0
  47. package/dist/cjs/chunk-b628277d.js +199 -0
  48. package/dist/cjs/chunk-c146745e.js +153 -0
  49. package/dist/cjs/chunk-c2aec7a9.js +547 -0
  50. package/dist/cjs/chunk-c9641331.js +86 -0
  51. package/dist/cjs/chunk-d492406b.js +172 -0
  52. package/dist/cjs/chunk-e0aa62a0.js +404 -0
  53. package/dist/cjs/chunk-e45e0329.js +48 -0
  54. package/dist/cjs/chunk-e5de6583.js +207 -0
  55. package/dist/cjs/chunk-e85cceb6.js +258 -0
  56. package/dist/cjs/chunk-ed5addd6.js +547 -0
  57. package/dist/cjs/chunk-ef4753d5.js +283 -0
  58. package/dist/cjs/chunk-f0c597f9.js +199 -0
  59. package/dist/cjs/chunk-f1df1c63.js +9 -0
  60. package/dist/cjs/chunk-f1ee2f5c.js +207 -0
  61. package/dist/cjs/chunk-fbd4d545.js +247 -0
  62. package/dist/cjs/clockpicker.js +447 -0
  63. package/dist/cjs/collapse.js +102 -0
  64. package/dist/cjs/datepicker.js +1281 -0
  65. package/dist/cjs/dialog.js +237 -0
  66. package/dist/cjs/dropdown.js +19 -0
  67. package/dist/cjs/field.js +18 -0
  68. package/dist/cjs/icon.js +17 -0
  69. package/dist/cjs/index.js +164 -0
  70. package/dist/cjs/input.js +20 -0
  71. package/dist/cjs/loading.js +166 -0
  72. package/dist/cjs/menu.js +231 -0
  73. package/dist/cjs/message.js +65 -0
  74. package/dist/cjs/modal.js +48 -0
  75. package/dist/cjs/navbar.js +258 -0
  76. package/dist/cjs/notification.js +142 -0
  77. package/dist/cjs/numberinput.js +191 -0
  78. package/dist/cjs/pagination.js +19 -0
  79. package/dist/cjs/progress.js +151 -0
  80. package/dist/cjs/radio.js +224 -0
  81. package/dist/cjs/select.js +20 -0
  82. package/dist/cjs/slider.js +511 -0
  83. package/dist/cjs/snackbar.js +114 -0
  84. package/dist/cjs/steps.js +352 -0
  85. package/dist/cjs/switch.js +144 -0
  86. package/dist/cjs/table.js +877 -0
  87. package/dist/cjs/tabs.js +258 -0
  88. package/dist/cjs/tag.js +63 -0
  89. package/dist/cjs/taginput.js +297 -0
  90. package/dist/cjs/timepicker.js +75 -0
  91. package/dist/cjs/toast.js +89 -0
  92. package/dist/cjs/tooltip.js +17 -0
  93. package/dist/cjs/upload.js +210 -0
  94. package/dist/components/autocomplete/index.js +1084 -2
  95. package/dist/components/autocomplete/index.min.js +2 -0
  96. package/dist/components/button/index.js +425 -2
  97. package/dist/components/button/index.min.js +2 -0
  98. package/dist/components/checkbox/index.js +342 -2
  99. package/dist/components/checkbox/index.min.js +2 -0
  100. package/dist/components/clockpicker/index.js +2340 -2
  101. package/dist/components/clockpicker/index.min.js +2 -0
  102. package/dist/components/collapse/index.js +201 -2
  103. package/dist/components/collapse/index.min.js +2 -0
  104. package/dist/components/datepicker/index.js +2720 -2
  105. package/dist/components/datepicker/index.min.js +2 -0
  106. package/dist/components/dialog/index.js +768 -2
  107. package/dist/components/dialog/index.min.js +2 -0
  108. package/dist/components/dropdown/index.js +555 -2
  109. package/dist/components/dropdown/index.min.js +2 -0
  110. package/dist/components/field/index.js +447 -2
  111. package/dist/components/field/index.min.js +2 -0
  112. package/dist/components/icon/index.js +322 -2
  113. package/dist/components/icon/index.min.js +2 -0
  114. package/dist/components/input/index.js +675 -2
  115. package/dist/components/input/index.min.js +2 -0
  116. package/dist/components/loading/index.js +282 -2
  117. package/dist/components/loading/index.min.js +2 -0
  118. package/dist/components/menu/index.js +550 -2
  119. package/dist/components/menu/index.min.js +2 -0
  120. package/dist/components/message/index.js +482 -2
  121. package/dist/components/message/index.min.js +2 -0
  122. package/dist/components/modal/index.js +400 -2
  123. package/dist/components/modal/index.min.js +2 -0
  124. package/dist/components/navbar/index.js +371 -0
  125. package/dist/components/navbar/index.min.js +2 -0
  126. package/dist/components/notification/index.js +705 -2
  127. package/dist/components/notification/index.min.js +2 -0
  128. package/dist/components/numberinput/index.js +846 -2
  129. package/dist/components/numberinput/index.min.js +2 -0
  130. package/dist/components/pagination/index.js +577 -2
  131. package/dist/components/pagination/index.min.js +2 -0
  132. package/dist/components/progress/index.js +250 -0
  133. package/dist/components/progress/index.min.js +2 -0
  134. package/dist/components/radio/index.js +323 -2
  135. package/dist/components/radio/index.min.js +2 -0
  136. package/dist/components/select/index.js +571 -2
  137. package/dist/components/select/index.min.js +2 -0
  138. package/dist/components/slider/index.js +764 -0
  139. package/dist/components/slider/index.min.js +2 -0
  140. package/dist/components/snackbar/index.js +397 -2
  141. package/dist/components/snackbar/index.min.js +2 -0
  142. package/dist/components/steps/index.js +721 -2
  143. package/dist/components/steps/index.min.js +2 -0
  144. package/dist/components/switch/index.js +243 -2
  145. package/dist/components/switch/index.min.js +2 -0
  146. package/dist/components/table/index.js +1870 -2
  147. package/dist/components/table/index.min.js +2 -0
  148. package/dist/components/tabs/index.js +627 -2
  149. package/dist/components/tabs/index.min.js +2 -0
  150. package/dist/components/tag/index.js +262 -2
  151. package/dist/components/tag/index.min.js +2 -0
  152. package/dist/components/taginput/index.js +1459 -2
  153. package/dist/components/taginput/index.min.js +2 -0
  154. package/dist/components/timepicker/index.js +2053 -2
  155. package/dist/components/timepicker/index.min.js +2 -0
  156. package/dist/components/toast/index.js +372 -2
  157. package/dist/components/toast/index.min.js +2 -0
  158. package/dist/components/tooltip/index.js +236 -2
  159. package/dist/components/tooltip/index.min.js +2 -0
  160. package/dist/components/upload/index.js +501 -2
  161. package/dist/components/upload/index.min.js +2 -0
  162. package/dist/esm/autocomplete.js +18 -0
  163. package/dist/esm/button.js +102 -0
  164. package/dist/esm/checkbox.js +131 -0
  165. package/dist/esm/chunk-00e3e67f.js +401 -0
  166. package/dist/esm/chunk-051f8b06.js +105 -0
  167. package/dist/esm/chunk-0566c90d.js +152 -0
  168. package/dist/esm/chunk-07e19446.js +545 -0
  169. package/dist/esm/chunk-085a700d.js +7 -0
  170. package/dist/esm/chunk-0ad6938a.js +53 -0
  171. package/dist/esm/chunk-0e3f4fb5.js +52 -0
  172. package/dist/esm/chunk-10c85529.js +151 -0
  173. package/dist/esm/chunk-121b1efa.js +197 -0
  174. package/dist/esm/chunk-19dad95e.js +256 -0
  175. package/dist/esm/chunk-231b6066.js +113 -0
  176. package/dist/esm/chunk-24d1a01f.js +279 -0
  177. package/dist/esm/chunk-297bff6b.js +393 -0
  178. package/dist/esm/chunk-2b2ae5c6.js +245 -0
  179. package/dist/esm/chunk-2cb6f867.js +46 -0
  180. package/dist/esm/chunk-33717194.js +392 -0
  181. package/dist/esm/chunk-3b811b77.js +139 -0
  182. package/dist/esm/chunk-3e47308f.js +104 -0
  183. package/dist/esm/chunk-411d6eea.js +84 -0
  184. package/dist/esm/chunk-4535dec5.js +92 -0
  185. package/dist/esm/chunk-47a5f3a1.js +103 -0
  186. package/dist/esm/chunk-4a5384da.js +205 -0
  187. package/dist/esm/chunk-4b663574.js +112 -0
  188. package/dist/esm/chunk-4d393f09.js +170 -0
  189. package/dist/esm/chunk-4d695899.js +257 -0
  190. package/dist/esm/chunk-4f508891.js +171 -0
  191. package/dist/esm/chunk-531b8274.js +281 -0
  192. package/dist/esm/chunk-591ee4a2.js +151 -0
  193. package/dist/esm/chunk-5d3bf82e.js +170 -0
  194. package/dist/esm/chunk-5e0b0665.js +104 -0
  195. package/dist/esm/chunk-648b9aa4.js +45 -0
  196. package/dist/esm/chunk-666940cf.js +546 -0
  197. package/dist/esm/chunk-67c97e13.js +246 -0
  198. package/dist/esm/chunk-6844653e.js +401 -0
  199. package/dist/esm/chunk-699b7cb4.js +245 -0
  200. package/dist/esm/chunk-6f881e7d.js +51 -0
  201. package/dist/esm/chunk-7123d158.js +256 -0
  202. package/dist/esm/chunk-7cf87590.js +60 -0
  203. package/dist/esm/chunk-823177ac.js +545 -0
  204. package/dist/esm/chunk-8838757a.js +401 -0
  205. package/dist/esm/chunk-8ca878c0.js +198 -0
  206. package/dist/esm/chunk-8fc2e874.js +85 -0
  207. package/dist/esm/chunk-912ed715.js +92 -0
  208. package/dist/esm/chunk-92acc21f.js +392 -0
  209. package/dist/esm/chunk-98e86f40.js +197 -0
  210. package/dist/esm/chunk-99a1f9df.js +92 -0
  211. package/dist/esm/chunk-9a776697.js +112 -0
  212. package/dist/esm/chunk-9e3207cc.js +46 -0
  213. package/dist/esm/chunk-9ec14e09.js +112 -0
  214. package/dist/esm/chunk-a5ea70d0.js +205 -0
  215. package/dist/esm/chunk-ac3f4847.js +138 -0
  216. package/dist/esm/chunk-b5376f3e.js +92 -0
  217. package/dist/esm/chunk-b56eb2c8.js +197 -0
  218. package/dist/esm/chunk-b796d1b2.js +392 -0
  219. package/dist/esm/chunk-b822a5db.js +205 -0
  220. package/dist/esm/chunk-b9bdb0e4.js +6 -0
  221. package/dist/esm/chunk-bfe15983.js +401 -0
  222. package/dist/esm/chunk-c9039f68.js +104 -0
  223. package/dist/esm/chunk-cc718c15.js +245 -0
  224. package/dist/esm/chunk-cca88db8.js +99 -0
  225. package/dist/esm/chunk-d6200087.js +50 -0
  226. package/dist/esm/chunk-daeac852.js +138 -0
  227. package/dist/esm/chunk-db31c548.js +103 -0
  228. package/dist/esm/chunk-e5568f45.js +84 -0
  229. package/dist/esm/chunk-e5fce48f.js +59 -0
  230. package/dist/esm/chunk-e84b4047.js +170 -0
  231. package/dist/esm/chunk-e8d90b72.js +98 -0
  232. package/dist/esm/chunk-e932bb68.js +206 -0
  233. package/dist/esm/chunk-edd8ff91.js +103 -0
  234. package/dist/esm/chunk-f0465d8d.js +84 -0
  235. package/dist/esm/chunk-f743d154.js +93 -0
  236. package/dist/esm/chunk-f8036b32.js +402 -0
  237. package/dist/esm/chunk-f984748f.js +401 -0
  238. package/dist/esm/chunk-fd5b0e1e.js +99 -0
  239. package/dist/esm/clockpicker.js +443 -0
  240. package/dist/esm/collapse.js +98 -0
  241. package/dist/esm/datepicker.js +1277 -0
  242. package/dist/esm/dialog.js +231 -0
  243. package/dist/esm/dropdown.js +14 -0
  244. package/dist/esm/field.js +14 -0
  245. package/dist/esm/icon.js +13 -0
  246. package/dist/esm/index.js +154 -0
  247. package/dist/esm/input.js +16 -0
  248. package/dist/esm/loading.js +159 -0
  249. package/dist/esm/menu.js +225 -0
  250. package/dist/esm/message.js +61 -0
  251. package/dist/esm/modal.js +42 -0
  252. package/dist/esm/navbar.js +253 -0
  253. package/dist/esm/notification.js +135 -0
  254. package/dist/esm/numberinput.js +187 -0
  255. package/dist/esm/pagination.js +15 -0
  256. package/dist/esm/progress.js +147 -0
  257. package/dist/esm/radio.js +219 -0
  258. package/dist/esm/select.js +16 -0
  259. package/dist/esm/slider.js +506 -0
  260. package/dist/esm/snackbar.js +108 -0
  261. package/dist/esm/steps.js +347 -0
  262. package/dist/esm/switch.js +140 -0
  263. package/dist/esm/table.js +872 -0
  264. package/dist/esm/tabs.js +253 -0
  265. package/dist/esm/tag.js +59 -0
  266. package/dist/esm/taginput.js +293 -0
  267. package/dist/esm/timepicker.js +71 -0
  268. package/dist/esm/toast.js +83 -0
  269. package/dist/esm/tooltip.js +13 -0
  270. package/dist/esm/upload.js +206 -0
  271. package/package.json +26 -4
  272. package/src/components/checkbox/Checkbox.vue +12 -4
  273. package/src/components/checkbox/CheckboxButton.vue +10 -2
  274. package/src/components/clockpicker/Clockpicker.vue +0 -5
  275. package/src/components/datepicker/Datepicker.spec.js +60 -0
  276. package/src/components/datepicker/Datepicker.vue +46 -19
  277. package/src/components/datepicker/DatepickerTable.spec.js +107 -2
  278. package/src/components/datepicker/DatepickerTable.vue +73 -4
  279. package/src/components/datepicker/DatepickerTableRow.spec.js +127 -17
  280. package/src/components/datepicker/DatepickerTableRow.vue +103 -4
  281. package/src/components/dialog/Dialog.vue +5 -3
  282. package/src/components/dialog/index.js +2 -2
  283. package/src/components/dropdown/Dropdown.vue +1 -4
  284. package/src/components/dropdown/DropdownItem.vue +7 -3
  285. package/src/components/field/Field.spec.js +18 -0
  286. package/src/components/field/Field.vue +21 -2
  287. package/src/components/index.js +6 -0
  288. package/src/components/input/Input.vue +2 -2
  289. package/src/components/loading/index.js +1 -1
  290. package/src/components/modal/index.js +1 -1
  291. package/src/components/navbar/NavBar.spec.js +76 -0
  292. package/src/components/navbar/Navbar.vue +127 -0
  293. package/src/components/navbar/NavbarBurger.vue +25 -0
  294. package/src/components/navbar/NavbarItem.vue +21 -0
  295. package/src/components/navbar/index.js +20 -0
  296. package/src/components/notification/index.js +1 -1
  297. package/src/components/pagination/Pagination.vue +28 -6
  298. package/src/components/progress/Progress.spec.js +77 -0
  299. package/src/components/progress/Progress.vue +108 -0
  300. package/src/components/progress/__snapshots__/Progress.spec.js.snap +7 -0
  301. package/src/components/progress/index.js +17 -0
  302. package/src/components/radio/Radio.spec.js +18 -1
  303. package/src/components/radio/Radio.vue +11 -5
  304. package/src/components/radio/RadioButton.spec.js +18 -1
  305. package/src/components/radio/RadioButton.vue +20 -8
  306. package/src/components/select/Select.spec.js +22 -1
  307. package/src/components/select/Select.vue +2 -1
  308. package/src/components/select/__snapshots__/Select.spec.js.snap +7 -0
  309. package/src/components/slider/Slider.spec.js +10 -0
  310. package/src/components/slider/Slider.vue +240 -0
  311. package/src/components/slider/SliderThumb.vue +188 -0
  312. package/src/components/slider/SliderTick.vue +43 -0
  313. package/src/components/slider/index.js +20 -0
  314. package/src/components/snackbar/index.js +2 -2
  315. package/src/components/steps/StepItem.vue +2 -3
  316. package/src/components/steps/Steps.vue +7 -5
  317. package/src/components/switch/Switch.spec.js +29 -0
  318. package/src/components/switch/Switch.vue +29 -5
  319. package/src/components/switch/__snapshots__/Switch.spec.js.snap +3 -0
  320. package/src/components/table/Table.vue +30 -8
  321. package/src/components/table/TableColumn.vue +2 -2
  322. package/src/components/tag/Tag.vue +4 -1
  323. package/src/components/taginput/Taginput.spec.js +10 -0
  324. package/src/components/taginput/Taginput.vue +8 -3
  325. package/src/components/toast/index.js +2 -2
  326. package/src/components/tooltip/Tooltip.vue +5 -5
  327. package/src/components/upload/Upload.vue +15 -8
  328. package/src/index.js +11 -4
  329. package/src/scss/buefy-build.scss +3 -3
  330. package/src/scss/buefy.scss +4 -0
  331. package/src/scss/components/_datepicker.scss +40 -1
  332. package/src/scss/components/_form.scss +52 -1
  333. package/src/scss/components/_progress.scss +45 -0
  334. package/src/scss/components/_radio.scss +14 -14
  335. package/src/scss/components/_slider.scss +138 -0
  336. package/src/scss/components/_steps.scss +4 -4
  337. package/src/scss/components/_switch.scss +54 -2
  338. package/src/scss/components/_taginput.scss +3 -0
  339. package/src/scss/components/_upload.scss +1 -3
  340. package/src/utils/SlotComponent.js +9 -2
  341. package/src/utils/TimepickerMixin.js +17 -6
  342. package/src/utils/config.js +4 -1
  343. package/src/utils/helpers.spec.js +67 -0
  344. package/src/utils/plugins.js +2 -1
  345. package/types/components.d.ts +3 -3
  346. package/types/index.d.ts +24 -11
  347. package/dist/components/index.js +0 -2
@@ -0,0 +1,443 @@
1
+ import { _ as _defineProperty } from './chunk-d6200087.js';
2
+ import './chunk-e5fce48f.js';
3
+ import './chunk-9e3207cc.js';
4
+ import './chunk-10c85529.js';
5
+ import { I as Icon } from './chunk-e84b4047.js';
6
+ import { _ as __vue_normalize__, r as registerComponent, u as use } from './chunk-cca88db8.js';
7
+ import { I as Input } from './chunk-98e86f40.js';
8
+ import { T as TimepickerMixin } from './chunk-07e19446.js';
9
+ import { D as Dropdown, a as DropdownItem } from './chunk-00e3e67f.js';
10
+ import { F as Field } from './chunk-531b8274.js';
11
+
12
+ //
13
+ //
14
+ //
15
+ //
16
+ //
17
+ //
18
+ //
19
+ //
20
+ //
21
+ //
22
+ //
23
+ //
24
+ //
25
+ //
26
+ //
27
+ //
28
+ //
29
+ //
30
+ //
31
+ //
32
+ //
33
+ //
34
+ //
35
+ //
36
+ //
37
+ //
38
+ //
39
+ // These should match the variables in clockpicker.scss
40
+ var indicatorSize = 40;
41
+ var paddingInner = 5;
42
+ var script = {
43
+ name: 'BClockpickerFace',
44
+ props: {
45
+ pickerSize: Number,
46
+ min: Number,
47
+ max: Number,
48
+ double: Boolean,
49
+ value: Number,
50
+ faceNumbers: Array,
51
+ disabledValues: Function
52
+ },
53
+ data: function data() {
54
+ return {
55
+ isDragging: false,
56
+ inputValue: this.value,
57
+ prevAngle: 720
58
+ };
59
+ },
60
+ computed: {
61
+ /**
62
+ * How many number indicators are shown on the face
63
+ */
64
+ count: function count() {
65
+ return this.max - this.min + 1;
66
+ },
67
+
68
+ /**
69
+ * How many number indicators are shown per ring on the face
70
+ */
71
+ countPerRing: function countPerRing() {
72
+ return this.double ? this.count / 2 : this.count;
73
+ },
74
+
75
+ /**
76
+ * Radius of the clock face
77
+ */
78
+ radius: function radius() {
79
+ return this.pickerSize / 2;
80
+ },
81
+
82
+ /**
83
+ * Radius of the outer ring of number indicators
84
+ */
85
+ outerRadius: function outerRadius() {
86
+ return this.radius - paddingInner - indicatorSize / 2;
87
+ },
88
+
89
+ /**
90
+ * Radius of the inner ring of number indicators
91
+ */
92
+ innerRadius: function innerRadius() {
93
+ return Math.max(this.outerRadius * 0.6, this.outerRadius - paddingInner - indicatorSize); // 48px gives enough room for the outer ring of numbers
94
+ },
95
+
96
+ /**
97
+ * The angle for each selectable value
98
+ * For hours this ends up being 30 degrees, for minutes 6 degrees
99
+ */
100
+ degreesPerUnit: function degreesPerUnit() {
101
+ return 360 / this.countPerRing;
102
+ },
103
+
104
+ /**
105
+ * Used for calculating x/y grid location based on degrees
106
+ */
107
+ degrees: function degrees() {
108
+ return this.degreesPerUnit * Math.PI / 180;
109
+ },
110
+
111
+ /**
112
+ * Calculates the angle the clock hand should be rotated for the
113
+ * selected value
114
+ */
115
+ handRotateAngle: function handRotateAngle() {
116
+ var currentAngle = this.prevAngle;
117
+
118
+ while (currentAngle < 0) {
119
+ currentAngle += 360;
120
+ }
121
+
122
+ var targetAngle = this.calcHandAngle(this.displayedValue);
123
+ var degreesDiff = this.shortestDistanceDegrees(currentAngle, targetAngle);
124
+ var angle = this.prevAngle + degreesDiff;
125
+ return angle;
126
+ },
127
+
128
+ /**
129
+ * Determines how long the selector hand is based on if the
130
+ * selected value is located along the outer or inner ring
131
+ */
132
+ handScale: function handScale() {
133
+ return this.calcHandScale(this.displayedValue);
134
+ },
135
+ handStyle: function handStyle() {
136
+ return {
137
+ transform: "rotate(".concat(this.handRotateAngle, "deg) scaleY(").concat(this.handScale, ")"),
138
+ transition: '.3s cubic-bezier(.25,.8,.50,1)'
139
+ };
140
+ },
141
+
142
+ /**
143
+ * The value the hand should be pointing at
144
+ */
145
+ displayedValue: function displayedValue() {
146
+ return this.inputValue == null ? this.min : this.inputValue;
147
+ }
148
+ },
149
+ watch: {
150
+ value: function value(_value) {
151
+ if (_value !== this.inputValue) {
152
+ this.prevAngle = this.handRotateAngle;
153
+ }
154
+
155
+ this.inputValue = _value;
156
+ }
157
+ },
158
+ methods: {
159
+ isDisabled: function isDisabled(value) {
160
+ return this.disabledValues && this.disabledValues(value);
161
+ },
162
+
163
+ /**
164
+ * Calculates the distance between two points
165
+ */
166
+ euclidean: function euclidean(p0, p1) {
167
+ var dx = p1.x - p0.x;
168
+ var dy = p1.y - p0.y;
169
+ return Math.sqrt(dx * dx + dy * dy);
170
+ },
171
+ shortestDistanceDegrees: function shortestDistanceDegrees(start, stop) {
172
+ var modDiff = (stop - start) % 360;
173
+ var shortestDistance = 180 - Math.abs(Math.abs(modDiff) - 180);
174
+ return (modDiff + 360) % 360 < 180 ? shortestDistance * 1 : shortestDistance * -1;
175
+ },
176
+
177
+ /**
178
+ * Calculates the angle of the line from the center point
179
+ * to the given point.
180
+ */
181
+ coordToAngle: function coordToAngle(center, p1) {
182
+ var value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x);
183
+ return Math.abs(value * 180 / Math.PI);
184
+ },
185
+
186
+ /**
187
+ * Generates the inline style translate() property for a
188
+ * number indicator, which determines it's location on the
189
+ * clock face
190
+ */
191
+ getNumberTranslate: function getNumberTranslate(value) {
192
+ var _this$getNumberCoords = this.getNumberCoords(value),
193
+ x = _this$getNumberCoords.x,
194
+ y = _this$getNumberCoords.y;
195
+
196
+ return "translate(".concat(x, "px, ").concat(y, "px)");
197
+ },
198
+
199
+ /***
200
+ * Calculates the coordinates on the clock face for a number
201
+ * indicator value
202
+ */
203
+ getNumberCoords: function getNumberCoords(value) {
204
+ var radius = this.isInnerRing(value) ? this.innerRadius : this.outerRadius;
205
+ return {
206
+ x: Math.round(radius * Math.sin((value - this.min) * this.degrees)),
207
+ y: Math.round(-radius * Math.cos((value - this.min) * this.degrees))
208
+ };
209
+ },
210
+ getFaceNumberClasses: function getFaceNumberClasses(num) {
211
+ return {
212
+ 'active': num.value === this.displayedValue,
213
+ 'disabled': this.isDisabled(num.value)
214
+ };
215
+ },
216
+
217
+ /**
218
+ * Determines if a value resides on the inner ring
219
+ */
220
+ isInnerRing: function isInnerRing(value) {
221
+ return this.double && value - this.min >= this.countPerRing;
222
+ },
223
+ calcHandAngle: function calcHandAngle(value) {
224
+ var angle = this.degreesPerUnit * (value - this.min);
225
+ if (this.isInnerRing(value)) angle -= 360;
226
+ return angle;
227
+ },
228
+ calcHandScale: function calcHandScale(value) {
229
+ return this.isInnerRing(value) ? this.innerRadius / this.outerRadius : 1;
230
+ },
231
+ onMouseDown: function onMouseDown(e) {
232
+ e.preventDefault();
233
+ this.isDragging = true;
234
+ this.onDragMove(e);
235
+ },
236
+ onMouseUp: function onMouseUp() {
237
+ this.isDragging = false;
238
+
239
+ if (!this.isDisabled(this.inputValue)) {
240
+ this.$emit('change', this.inputValue);
241
+ }
242
+ },
243
+ onDragMove: function onDragMove(e) {
244
+ e.preventDefault();
245
+ if (!this.isDragging && e.type !== 'click') return;
246
+
247
+ var _this$$refs$clock$get = this.$refs.clock.getBoundingClientRect(),
248
+ width = _this$$refs$clock$get.width,
249
+ top = _this$$refs$clock$get.top,
250
+ left = _this$$refs$clock$get.left;
251
+
252
+ var _ref = 'touches' in e ? e.touches[0] : e,
253
+ clientX = _ref.clientX,
254
+ clientY = _ref.clientY;
255
+
256
+ var center = {
257
+ x: width / 2,
258
+ y: -width / 2
259
+ };
260
+ var coords = {
261
+ x: clientX - left,
262
+ y: top - clientY
263
+ };
264
+ var handAngle = Math.round(this.coordToAngle(center, coords) + 360) % 360;
265
+ var insideClick = this.double && this.euclidean(center, coords) < (this.outerRadius + this.innerRadius) / 2 - 16;
266
+ var value = Math.round(handAngle / this.degreesPerUnit) + this.min + (insideClick ? this.countPerRing : 0); // Necessary to fix edge case when selecting left part of max value
267
+
268
+ if (handAngle >= 360 - this.degreesPerUnit / 2) {
269
+ value = insideClick ? this.max : this.min;
270
+ }
271
+
272
+ this.update(value);
273
+ },
274
+ update: function update(value) {
275
+ if (this.inputValue !== value && !this.isDisabled(value)) {
276
+ this.prevAngle = this.handRotateAngle;
277
+ this.inputValue = value;
278
+ this.$emit('input', value);
279
+ }
280
+ }
281
+ }
282
+ };
283
+
284
+ /* script */
285
+ const __vue_script__ = script;
286
+
287
+ /* template */
288
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"b-clockpicker-face",on:{"mousedown":_vm.onMouseDown,"mouseup":_vm.onMouseUp,"mousemove":_vm.onDragMove,"touchstart":_vm.onMouseDown,"touchend":_vm.onMouseUp,"touchmove":_vm.onDragMove}},[_c('div',{ref:"clock",staticClass:"b-clockpicker-face-outer-ring"},[_c('div',{staticClass:"b-clockpicker-face-hand",style:(_vm.handStyle)}),_vm._v(" "),_vm._l((_vm.faceNumbers),function(num,index){return _c('span',{key:index,staticClass:"b-clockpicker-face-number",class:_vm.getFaceNumberClasses(num),style:({ transform: _vm.getNumberTranslate(num.value) })},[_c('span',[_vm._v(_vm._s(num.label))])])})],2)])};
289
+ var __vue_staticRenderFns__ = [];
290
+
291
+ /* style */
292
+ const __vue_inject_styles__ = undefined;
293
+ /* scoped */
294
+ const __vue_scope_id__ = undefined;
295
+ /* module identifier */
296
+ const __vue_module_identifier__ = undefined;
297
+ /* functional template */
298
+ const __vue_is_functional_template__ = false;
299
+ /* style inject */
300
+
301
+ /* style inject SSR */
302
+
303
+
304
+
305
+ var ClockpickerFace = __vue_normalize__(
306
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
307
+ __vue_inject_styles__,
308
+ __vue_script__,
309
+ __vue_scope_id__,
310
+ __vue_is_functional_template__,
311
+ __vue_module_identifier__,
312
+ undefined,
313
+ undefined
314
+ );
315
+
316
+ var _components;
317
+ var outerPadding = 12;
318
+ var script$1 = {
319
+ name: 'BClockpicker',
320
+ components: (_components = {}, _defineProperty(_components, ClockpickerFace.name, ClockpickerFace), _defineProperty(_components, Input.name, Input), _defineProperty(_components, Field.name, Field), _defineProperty(_components, Icon.name, Icon), _defineProperty(_components, Dropdown.name, Dropdown), _defineProperty(_components, DropdownItem.name, DropdownItem), _components),
321
+ mixins: [TimepickerMixin],
322
+ props: {
323
+ pickerSize: {
324
+ type: Number,
325
+ default: 290
326
+ },
327
+ hourFormat: {
328
+ type: String,
329
+ default: '12',
330
+ validator: function validator(value) {
331
+ return value === '24' || value === '12';
332
+ }
333
+ },
334
+ incrementMinutes: {
335
+ type: Number,
336
+ default: 5
337
+ },
338
+ autoSwitch: {
339
+ type: Boolean,
340
+ default: true
341
+ },
342
+ type: {
343
+ type: String,
344
+ default: 'is-primary'
345
+ }
346
+ },
347
+ data: function data() {
348
+ return {
349
+ isSelectingHour: true,
350
+ isDragging: false,
351
+ _isClockpicker: true
352
+ };
353
+ },
354
+ computed: {
355
+ hoursDisplay: function hoursDisplay() {
356
+ if (this.hoursSelected == null) return '--';
357
+ if (this.isHourFormat24) return this.pad(this.hoursSelected);
358
+ var display = this.hoursSelected;
359
+ if (this.meridienSelected === this.PM) display -= 12;
360
+ if (display === 0) display = 12;
361
+ return display;
362
+ },
363
+ minutesDisplay: function minutesDisplay() {
364
+ return this.minutesSelected == null ? '--' : this.pad(this.minutesSelected);
365
+ },
366
+ minFaceValue: function minFaceValue() {
367
+ return this.isSelectingHour && !this.isHourFormat24 && this.meridienSelected === this.PM ? 12 : 0;
368
+ },
369
+ maxFaceValue: function maxFaceValue() {
370
+ return this.isSelectingHour ? !this.isHourFormat24 && this.meridienSelected === this.AM ? 11 : 23 : 59;
371
+ },
372
+ faceSize: function faceSize() {
373
+ return this.pickerSize - outerPadding * 2;
374
+ },
375
+ faceDisabledValues: function faceDisabledValues() {
376
+ return this.isSelectingHour ? this.isHourDisabled : this.isMinuteDisabled;
377
+ }
378
+ },
379
+ methods: {
380
+ onClockInput: function onClockInput(value) {
381
+ if (this.isSelectingHour) {
382
+ this.hoursSelected = value;
383
+ this.onHoursChange(value);
384
+ } else {
385
+ this.minutesSelected = value;
386
+ this.onMinutesChange(value);
387
+ }
388
+ },
389
+ onClockChange: function onClockChange(value) {
390
+ if (this.autoSwitch && this.isSelectingHour) {
391
+ this.isSelectingHour = !this.isSelectingHour;
392
+ }
393
+ },
394
+ onMeridienClick: function onMeridienClick(value) {
395
+ if (this.meridienSelected !== value) {
396
+ this.meridienSelected = value;
397
+ this.onMeridienChange(value);
398
+ }
399
+ }
400
+ }
401
+ };
402
+
403
+ /* script */
404
+ const __vue_script__$1 = script$1;
405
+
406
+ /* template */
407
+ var __vue_render__$1 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"b-clockpicker control",class:[_vm.size, _vm.type, {'is-expanded': _vm.expanded}]},[(!_vm.isMobile || _vm.inline)?_c('b-dropdown',{ref:"dropdown",attrs:{"position":_vm.position,"disabled":_vm.disabled,"inline":_vm.inline}},[(!_vm.inline)?_c('b-input',_vm._b({ref:"input",attrs:{"slot":"trigger","autocomplete":"off","value":_vm.formatValue(_vm.computedValue),"placeholder":_vm.placeholder,"size":_vm.size,"icon":_vm.icon,"icon-pack":_vm.iconPack,"loading":_vm.loading,"disabled":_vm.disabled,"readonly":!_vm.editable,"rounded":_vm.rounded,"use-html5-validation":_vm.useHtml5Validation},on:{"focus":_vm.handleOnFocus,"blur":function($event){_vm.onBlur() && _vm.checkHtml5Validity();}},nativeOn:{"click":function($event){$event.stopPropagation();_vm.toggle(true);},"keyup":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,"enter",13,$event.key)){ return null; }_vm.toggle(true);},"change":function($event){_vm.onChangeNativePicker($event);}},slot:"trigger"},'b-input',_vm.$attrs,false)):_vm._e(),_vm._v(" "),_c('div',{staticClass:"card",attrs:{"disabled":_vm.disabled,"custom":""}},[(_vm.inline)?_c('header',{staticClass:"card-header"},[_c('div',{staticClass:"b-clockpicker-header card-header-title"},[_c('div',{staticClass:"b-clockpicker-time"},[_c('span',{staticClass:"b-clockpicker-btn",class:{ active: _vm.isSelectingHour },on:{"click":function($event){_vm.isSelectingHour = true;}}},[_vm._v(_vm._s(_vm.hoursDisplay))]),_vm._v(" "),_c('span',[_vm._v(":")]),_vm._v(" "),_c('span',{staticClass:"b-clockpicker-btn",class:{ active: !_vm.isSelectingHour },on:{"click":function($event){_vm.isSelectingHour = false;}}},[_vm._v(_vm._s(_vm.minutesDisplay))])]),_vm._v(" "),(!_vm.isHourFormat24)?_c('div',{staticClass:"b-clockpicker-period"},[_c('div',{staticClass:"b-clockpicker-btn",class:{ active: _vm.meridienSelected == _vm.AM },on:{"click":function($event){_vm.onMeridienClick(_vm.AM);}}},[_vm._v("am")]),_vm._v(" "),_c('div',{staticClass:"b-clockpicker-btn",class:{ active: _vm.meridienSelected == _vm.PM },on:{"click":function($event){_vm.onMeridienClick(_vm.PM);}}},[_vm._v("pm")])]):_vm._e()])]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"card-content"},[_c('div',{staticClass:"b-clockpicker-body",style:({ width: _vm.faceSize + 'px', height: _vm.faceSize + 'px' })},[(!_vm.inline)?_c('div',{staticClass:"b-clockpicker-time"},[_c('div',{staticClass:"b-clockpicker-btn",class:{ active: _vm.isSelectingHour },on:{"click":function($event){_vm.isSelectingHour = true;}}},[_vm._v("Hours")]),_vm._v(" "),_c('span',{staticClass:"b-clockpicker-btn",class:{ active: !_vm.isSelectingHour },on:{"click":function($event){_vm.isSelectingHour = false;}}},[_vm._v("Min")])]):_vm._e(),_vm._v(" "),(!_vm.isHourFormat24 && !_vm.inline)?_c('div',{staticClass:"b-clockpicker-period"},[_c('div',{staticClass:"b-clockpicker-btn",class:{ active: _vm.meridienSelected == _vm.AM },on:{"click":function($event){_vm.onMeridienClick(_vm.AM);}}},[_vm._v(_vm._s(_vm.AM))]),_vm._v(" "),_c('div',{staticClass:"b-clockpicker-btn",class:{ active: _vm.meridienSelected == _vm.PM },on:{"click":function($event){_vm.onMeridienClick(_vm.PM);}}},[_vm._v(_vm._s(_vm.PM))])]):_vm._e(),_vm._v(" "),_c('b-clockpicker-face',{attrs:{"picker-size":_vm.faceSize,"min":_vm.minFaceValue,"max":_vm.maxFaceValue,"face-numbers":_vm.isSelectingHour ? _vm.hours : _vm.minutes,"disabled-values":_vm.faceDisabledValues,"double":_vm.isSelectingHour && _vm.isHourFormat24,"value":_vm.isSelectingHour ? _vm.hoursSelected : _vm.minutesSelected},on:{"input":_vm.onClockInput,"change":_vm.onClockChange}})],1)]),_vm._v(" "),(_vm.$slots.default !== undefined && _vm.$slots.default.length)?_c('footer',{staticClass:"b-clockpicker-footer card-footer"},[_vm._t("default")],2):_vm._e()])],1):_c('b-input',_vm._b({ref:"input",attrs:{"type":"time","autocomplete":"off","value":_vm.formatHHMMSS(_vm.computedValue),"placeholder":_vm.placeholder,"size":_vm.size,"icon":_vm.icon,"icon-pack":_vm.iconPack,"loading":_vm.loading,"max":_vm.formatHHMMSS(_vm.maxTime),"min":_vm.formatHHMMSS(_vm.minTime),"disabled":_vm.disabled,"readonly":false,"use-html5-validation":_vm.useHtml5Validation},on:{"focus":_vm.handleOnFocus,"blur":function($event){_vm.onBlur() && _vm.checkHtml5Validity();}},nativeOn:{"click":function($event){$event.stopPropagation();_vm.toggle(true);},"keyup":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,"enter",13,$event.key)){ return null; }_vm.toggle(true);},"change":function($event){_vm.onChangeNativePicker($event);}}},'b-input',_vm.$attrs,false))],1)};
408
+ var __vue_staticRenderFns__$1 = [];
409
+
410
+ /* style */
411
+ const __vue_inject_styles__$1 = undefined;
412
+ /* scoped */
413
+ const __vue_scope_id__$1 = undefined;
414
+ /* module identifier */
415
+ const __vue_module_identifier__$1 = undefined;
416
+ /* functional template */
417
+ const __vue_is_functional_template__$1 = false;
418
+ /* style inject */
419
+
420
+ /* style inject SSR */
421
+
422
+
423
+
424
+ var Clockpicker = __vue_normalize__(
425
+ { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },
426
+ __vue_inject_styles__$1,
427
+ __vue_script__$1,
428
+ __vue_scope_id__$1,
429
+ __vue_is_functional_template__$1,
430
+ __vue_module_identifier__$1,
431
+ undefined,
432
+ undefined
433
+ );
434
+
435
+ var Plugin = {
436
+ install: function install(Vue) {
437
+ registerComponent(Vue, Clockpicker);
438
+ }
439
+ };
440
+ use(Plugin);
441
+
442
+ export default Plugin;
443
+ export { Clockpicker };
@@ -0,0 +1,98 @@
1
+ import { _ as __vue_normalize__, r as registerComponent, u as use } from './chunk-cca88db8.js';
2
+
3
+ //
4
+ //
5
+ //
6
+ //
7
+ //
8
+ //
9
+ //
10
+ //
11
+ //
12
+ //
13
+ //
14
+ //
15
+ //
16
+ //
17
+ //
18
+ //
19
+ //
20
+ var script = {
21
+ name: 'BCollapse',
22
+ props: {
23
+ open: {
24
+ type: Boolean,
25
+ default: true
26
+ },
27
+ animation: {
28
+ type: String,
29
+ default: 'fade'
30
+ },
31
+ ariaId: {
32
+ type: String,
33
+ default: ''
34
+ }
35
+ },
36
+ data: function data() {
37
+ return {
38
+ isOpen: this.open
39
+ };
40
+ },
41
+ watch: {
42
+ open: function open(value) {
43
+ this.isOpen = value;
44
+ }
45
+ },
46
+ methods: {
47
+ /**
48
+ * Toggle and emit events
49
+ */
50
+ toggle: function toggle() {
51
+ this.isOpen = !this.isOpen;
52
+ this.$emit('update:open', this.isOpen);
53
+ this.$emit(this.isOpen ? 'open' : 'close');
54
+ }
55
+ }
56
+ };
57
+
58
+ /* script */
59
+ const __vue_script__ = script;
60
+
61
+ /* template */
62
+ var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"collapse"},[_c('div',{staticClass:"collapse-trigger",on:{"click":_vm.toggle}},[_vm._t("trigger",null,{open:_vm.isOpen})],2),_vm._v(" "),_c('transition',{attrs:{"name":_vm.animation}},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.isOpen),expression:"isOpen"}],staticClass:"collapse-content",attrs:{"id":_vm.ariaId,"aria-expanded":_vm.isOpen}},[_vm._t("default")],2)])],1)};
63
+ var __vue_staticRenderFns__ = [];
64
+
65
+ /* style */
66
+ const __vue_inject_styles__ = undefined;
67
+ /* scoped */
68
+ const __vue_scope_id__ = undefined;
69
+ /* module identifier */
70
+ const __vue_module_identifier__ = undefined;
71
+ /* functional template */
72
+ const __vue_is_functional_template__ = false;
73
+ /* style inject */
74
+
75
+ /* style inject SSR */
76
+
77
+
78
+
79
+ var Collapse = __vue_normalize__(
80
+ { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
81
+ __vue_inject_styles__,
82
+ __vue_script__,
83
+ __vue_scope_id__,
84
+ __vue_is_functional_template__,
85
+ __vue_module_identifier__,
86
+ undefined,
87
+ undefined
88
+ );
89
+
90
+ var Plugin = {
91
+ install: function install(Vue) {
92
+ registerComponent(Vue, Collapse);
93
+ }
94
+ };
95
+ use(Plugin);
96
+
97
+ export default Plugin;
98
+ export { Collapse };