buefy 1.0.0 → 1.0.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 (588) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +242 -0
  3. package/dist/buefy.css +15895 -0
  4. package/dist/buefy.d.ts +11706 -0
  5. package/dist/buefy.esm.js +21082 -0
  6. package/dist/buefy.esm.min.js +2 -0
  7. package/dist/buefy.js +21227 -0
  8. package/dist/buefy.min.css +1 -0
  9. package/dist/buefy.min.js +2 -0
  10. package/dist/cjs/Autocomplete-BMmOsPiK.js +864 -0
  11. package/dist/cjs/Button-Cq7yqI8p.js +118 -0
  12. package/dist/cjs/CheckRadioMixin-CDu0SN3g.js +58 -0
  13. package/dist/cjs/Checkbox-GPzAMQqM.js +85 -0
  14. package/dist/cjs/CompatFallthroughMixin-hhK0Gkhr.js +48 -0
  15. package/dist/cjs/Datepicker-B-9ReBe6.js +2120 -0
  16. package/dist/cjs/Dropdown-DtpKU9qf.js +470 -0
  17. package/dist/cjs/DropdownItem-IMOKyRGV.js +110 -0
  18. package/dist/cjs/Field-19ZCJFF8.js +405 -0
  19. package/dist/cjs/FormElementMixin-DavX4iOv.js +170 -0
  20. package/dist/cjs/Icon-lsDKE2wQ.js +184 -0
  21. package/dist/cjs/Image-CocPwU3n.js +356 -0
  22. package/dist/cjs/InjectedChildMixin-CUKn09dB.js +150 -0
  23. package/dist/cjs/Input-BcloGeZ3.js +350 -0
  24. package/dist/cjs/Loading-GqqqjipO.js +145 -0
  25. package/dist/cjs/MessageMixin-bGuuzfev.js +136 -0
  26. package/dist/cjs/Modal-CYpSQe2Q.js +315 -0
  27. package/dist/cjs/NoticeMixin--3RjH43z.js +163 -0
  28. package/dist/cjs/Pagination-D1MVdiLp.js +547 -0
  29. package/dist/cjs/Progress-DT9Qc8Id.js +177 -0
  30. package/dist/cjs/Select-DayPKwCY.js +147 -0
  31. package/dist/cjs/SlotComponent-BruGdRW3.js +41 -0
  32. package/dist/cjs/TabbedChildMixin-B3JUUwcf.js +211 -0
  33. package/dist/cjs/Tag-BprnwJJ1.js +167 -0
  34. package/dist/cjs/Timepicker-CDZ3V-2J.js +283 -0
  35. package/dist/cjs/TimepickerMixin-C9WVvcUL.js +666 -0
  36. package/dist/cjs/Tooltip-Cgighv0j.js +393 -0
  37. package/dist/cjs/_plugin-vue_export-helper-Die8u8yB.js +11 -0
  38. package/dist/cjs/autocomplete.js +23 -0
  39. package/dist/cjs/breadcrumb.js +107 -0
  40. package/dist/cjs/button.js +20 -0
  41. package/dist/cjs/carousel.js +825 -0
  42. package/dist/cjs/checkbox.js +88 -0
  43. package/dist/cjs/clockpicker.js +668 -0
  44. package/dist/cjs/collapse.js +99 -0
  45. package/dist/cjs/colorpicker.js +25 -0
  46. package/dist/cjs/config-DR826Ki2.js +103 -0
  47. package/dist/cjs/config.js +18 -0
  48. package/dist/cjs/datepicker.js +28 -0
  49. package/dist/cjs/datetimepicker.js +483 -0
  50. package/dist/cjs/dialog.js +506 -0
  51. package/dist/cjs/dropdown.js +23 -0
  52. package/dist/cjs/field.js +19 -0
  53. package/dist/cjs/helpers.js +276 -0
  54. package/dist/cjs/icon.js +19 -0
  55. package/dist/cjs/image.js +19 -0
  56. package/dist/cjs/index-DiQy3SCb.js +1942 -0
  57. package/dist/cjs/index.js +274 -0
  58. package/dist/cjs/input.js +22 -0
  59. package/dist/cjs/loading.js +87 -0
  60. package/dist/cjs/menu.js +340 -0
  61. package/dist/cjs/message.js +119 -0
  62. package/dist/cjs/modal.js +103 -0
  63. package/dist/cjs/navbar.js +572 -0
  64. package/dist/cjs/notification.js +281 -0
  65. package/dist/cjs/numberinput.js +386 -0
  66. package/dist/cjs/pagination.js +22 -0
  67. package/dist/cjs/plugins-DbyYGVpp.js +16 -0
  68. package/dist/cjs/progress.js +91 -0
  69. package/dist/cjs/radio.js +137 -0
  70. package/dist/cjs/rate.js +197 -0
  71. package/dist/cjs/select.js +22 -0
  72. package/dist/cjs/sidebar.js +309 -0
  73. package/dist/cjs/skeleton.js +78 -0
  74. package/dist/cjs/slider.js +699 -0
  75. package/dist/cjs/snackbar.js +224 -0
  76. package/dist/cjs/ssr-DVRFTu_P.js +8 -0
  77. package/dist/cjs/steps.js +347 -0
  78. package/dist/cjs/switch.js +161 -0
  79. package/dist/cjs/table.js +2391 -0
  80. package/dist/cjs/tabs.js +258 -0
  81. package/dist/cjs/tag.js +44 -0
  82. package/dist/cjs/taginput.js +425 -0
  83. package/dist/cjs/timepicker.js +29 -0
  84. package/dist/cjs/toast.js +162 -0
  85. package/dist/cjs/tooltip.js +19 -0
  86. package/dist/cjs/trapFocus-BlX6xykt.js +53 -0
  87. package/dist/cjs/upload.js +195 -0
  88. package/dist/components/autocomplete/index.js +1647 -0
  89. package/dist/components/autocomplete/index.min.js +2 -0
  90. package/dist/components/breadcrumb/index.js +173 -0
  91. package/dist/components/breadcrumb/index.min.js +2 -0
  92. package/dist/components/button/index.js +334 -0
  93. package/dist/components/button/index.min.js +2 -0
  94. package/dist/components/carousel/index.js +1534 -0
  95. package/dist/components/carousel/index.min.js +2 -0
  96. package/dist/components/checkbox/index.js +236 -0
  97. package/dist/components/checkbox/index.min.js +2 -0
  98. package/dist/components/clockpicker/index.js +2636 -0
  99. package/dist/components/clockpicker/index.min.js +2 -0
  100. package/dist/components/collapse/index.js +111 -0
  101. package/dist/components/collapse/index.min.js +2 -0
  102. package/dist/components/colorpicker/index.js +4251 -0
  103. package/dist/components/colorpicker/index.min.js +2 -0
  104. package/dist/components/datepicker/index.js +4110 -0
  105. package/dist/components/datepicker/index.min.js +2 -0
  106. package/dist/components/datetimepicker/index.js +5479 -0
  107. package/dist/components/datetimepicker/index.min.js +2 -0
  108. package/dist/components/dialog/index.js +1202 -0
  109. package/dist/components/dialog/index.min.js +2 -0
  110. package/dist/components/dropdown/index.js +680 -0
  111. package/dist/components/dropdown/index.min.js +2 -0
  112. package/dist/components/field/index.js +439 -0
  113. package/dist/components/field/index.min.js +2 -0
  114. package/dist/components/icon/index.js +212 -0
  115. package/dist/components/icon/index.min.js +2 -0
  116. package/dist/components/image/index.js +396 -0
  117. package/dist/components/image/index.min.js +2 -0
  118. package/dist/components/input/index.js +764 -0
  119. package/dist/components/input/index.min.js +2 -0
  120. package/dist/components/loading/index.js +280 -0
  121. package/dist/components/loading/index.min.js +2 -0
  122. package/dist/components/menu/index.js +586 -0
  123. package/dist/components/menu/index.min.js +2 -0
  124. package/dist/components/message/index.js +611 -0
  125. package/dist/components/message/index.min.js +2 -0
  126. package/dist/components/modal/index.js +516 -0
  127. package/dist/components/modal/index.min.js +2 -0
  128. package/dist/components/navbar/index.js +634 -0
  129. package/dist/components/navbar/index.min.js +2 -0
  130. package/dist/components/notification/index.js +976 -0
  131. package/dist/components/notification/index.min.js +2 -0
  132. package/dist/components/numberinput/index.js +1128 -0
  133. package/dist/components/numberinput/index.min.js +2 -0
  134. package/dist/components/pagination/index.js +764 -0
  135. package/dist/components/pagination/index.min.js +2 -0
  136. package/dist/components/progress/index.js +280 -0
  137. package/dist/components/progress/index.min.js +2 -0
  138. package/dist/components/radio/index.js +208 -0
  139. package/dist/components/radio/index.min.js +2 -0
  140. package/dist/components/rate/index.js +391 -0
  141. package/dist/components/rate/index.min.js +2 -0
  142. package/dist/components/select/index.js +560 -0
  143. package/dist/components/select/index.min.js +2 -0
  144. package/dist/components/sidebar/index.js +337 -0
  145. package/dist/components/sidebar/index.min.js +2 -0
  146. package/dist/components/skeleton/index.js +87 -0
  147. package/dist/components/skeleton/index.min.js +2 -0
  148. package/dist/components/slider/index.js +1171 -0
  149. package/dist/components/slider/index.min.js +2 -0
  150. package/dist/components/snackbar/index.js +439 -0
  151. package/dist/components/snackbar/index.min.js +2 -0
  152. package/dist/components/steps/index.js +925 -0
  153. package/dist/components/steps/index.min.js +2 -0
  154. package/dist/components/switch/index.js +182 -0
  155. package/dist/components/switch/index.min.js +2 -0
  156. package/dist/components/table/index.js +4208 -0
  157. package/dist/components/table/index.min.js +2 -0
  158. package/dist/components/tabs/index.js +837 -0
  159. package/dist/components/tabs/index.min.js +2 -0
  160. package/dist/components/tag/index.js +396 -0
  161. package/dist/components/tag/index.min.js +2 -0
  162. package/dist/components/taginput/index.js +2209 -0
  163. package/dist/components/taginput/index.min.js +2 -0
  164. package/dist/components/timepicker/index.js +2906 -0
  165. package/dist/components/timepicker/index.min.js +2 -0
  166. package/dist/components/toast/index.js +377 -0
  167. package/dist/components/toast/index.min.js +2 -0
  168. package/dist/components/tooltip/index.js +445 -0
  169. package/dist/components/tooltip/index.min.js +2 -0
  170. package/dist/components/upload/index.js +426 -0
  171. package/dist/components/upload/index.min.js +2 -0
  172. package/dist/esm/Autocomplete-CjbTh9D8.js +862 -0
  173. package/dist/esm/Button-DyUYShTZ.js +116 -0
  174. package/dist/esm/CheckRadioMixin-DSD_rjC8.js +56 -0
  175. package/dist/esm/Checkbox-KUMz0sfA.js +83 -0
  176. package/dist/esm/CompatFallthroughMixin-C8LPuwDr.js +46 -0
  177. package/dist/esm/Datepicker-Bl8Wfdkn.js +2118 -0
  178. package/dist/esm/Dropdown-CGTYVyoL.js +467 -0
  179. package/dist/esm/DropdownItem-Cn3nM0A3.js +108 -0
  180. package/dist/esm/Field-B7bX_uUg.js +403 -0
  181. package/dist/esm/FormElementMixin-Dd_wkBN5.js +168 -0
  182. package/dist/esm/Icon-DPyGDeRK.js +182 -0
  183. package/dist/esm/Image-DhX-4hlV.js +354 -0
  184. package/dist/esm/InjectedChildMixin-D2K-FwuO.js +145 -0
  185. package/dist/esm/Input-C4L520az.js +348 -0
  186. package/dist/esm/Loading-tuQoo6TU.js +143 -0
  187. package/dist/esm/MessageMixin-CQ7LIdvq.js +134 -0
  188. package/dist/esm/Modal-tfvyhxw_.js +313 -0
  189. package/dist/esm/NoticeMixin-ByNlva3T.js +161 -0
  190. package/dist/esm/Pagination-B-LAJQay.js +543 -0
  191. package/dist/esm/Progress-BPGTVZgr.js +174 -0
  192. package/dist/esm/Select-bl4qUzij.js +145 -0
  193. package/dist/esm/SlotComponent-BwNpVnfH.js +39 -0
  194. package/dist/esm/TabbedChildMixin-C4i6WP9j.js +208 -0
  195. package/dist/esm/Tag-jS5Bcj6N.js +165 -0
  196. package/dist/esm/Timepicker-DnkqnOBT.js +281 -0
  197. package/dist/esm/TimepickerMixin-Bikh6_Fg.js +664 -0
  198. package/dist/esm/Tooltip-CtDSXAqa.js +391 -0
  199. package/dist/esm/_plugin-vue_export-helper-OJRSZE6i.js +9 -0
  200. package/dist/esm/autocomplete.js +18 -0
  201. package/dist/esm/breadcrumb.js +101 -0
  202. package/dist/esm/button.js +15 -0
  203. package/dist/esm/carousel.js +818 -0
  204. package/dist/esm/checkbox.js +82 -0
  205. package/dist/esm/clockpicker.js +663 -0
  206. package/dist/esm/collapse.js +94 -0
  207. package/dist/esm/colorpicker.js +16 -0
  208. package/dist/esm/config-CKuo-p6e.js +100 -0
  209. package/dist/esm/config.js +14 -0
  210. package/dist/esm/datepicker.js +23 -0
  211. package/dist/esm/datetimepicker.js +478 -0
  212. package/dist/esm/dialog.js +500 -0
  213. package/dist/esm/dropdown.js +17 -0
  214. package/dist/esm/field.js +14 -0
  215. package/dist/esm/helpers.js +247 -0
  216. package/dist/esm/icon.js +14 -0
  217. package/dist/esm/image.js +14 -0
  218. package/dist/esm/index-CQegEsxK.js +1938 -0
  219. package/dist/esm/index.js +164 -0
  220. package/dist/esm/input.js +17 -0
  221. package/dist/esm/loading.js +81 -0
  222. package/dist/esm/menu.js +333 -0
  223. package/dist/esm/message.js +114 -0
  224. package/dist/esm/modal.js +97 -0
  225. package/dist/esm/navbar.js +565 -0
  226. package/dist/esm/notification.js +275 -0
  227. package/dist/esm/numberinput.js +381 -0
  228. package/dist/esm/pagination.js +16 -0
  229. package/dist/esm/plugins-B172kuKE.js +13 -0
  230. package/dist/esm/progress.js +85 -0
  231. package/dist/esm/radio.js +131 -0
  232. package/dist/esm/rate.js +192 -0
  233. package/dist/esm/select.js +17 -0
  234. package/dist/esm/sidebar.js +304 -0
  235. package/dist/esm/skeleton.js +73 -0
  236. package/dist/esm/slider.js +693 -0
  237. package/dist/esm/snackbar.js +218 -0
  238. package/dist/esm/ssr-C7yEpGLm.js +5 -0
  239. package/dist/esm/steps.js +341 -0
  240. package/dist/esm/switch.js +156 -0
  241. package/dist/esm/table.js +2385 -0
  242. package/dist/esm/tabs.js +252 -0
  243. package/dist/esm/tag.js +38 -0
  244. package/dist/esm/taginput.js +420 -0
  245. package/dist/esm/timepicker.js +24 -0
  246. package/dist/esm/toast.js +156 -0
  247. package/dist/esm/tooltip.js +14 -0
  248. package/dist/esm/trapFocus-KHP_kCNE.js +51 -0
  249. package/dist/esm/upload.js +190 -0
  250. package/dist/tsdoc-metadata.json +11 -0
  251. package/package.json +73 -6
  252. package/src/components/autocomplete/Autocomplete.spec.ts +783 -0
  253. package/src/components/autocomplete/Autocomplete.vue +966 -0
  254. package/src/components/autocomplete/__snapshots__/Autocomplete.spec.ts.snap +21 -0
  255. package/src/components/autocomplete/index.ts +16 -0
  256. package/src/components/breadcrumb/Breadcrumb.spec.ts +65 -0
  257. package/src/components/breadcrumb/Breadcrumb.vue +42 -0
  258. package/src/components/breadcrumb/BreadcrumbItem.spec.ts +74 -0
  259. package/src/components/breadcrumb/BreadcrumbItem.vue +34 -0
  260. package/src/components/breadcrumb/__snapshots__/Breadcrumb.spec.ts.snap +7 -0
  261. package/src/components/breadcrumb/__snapshots__/BreadcrumbItem.spec.ts.snap +3 -0
  262. package/src/components/breadcrumb/index.ts +19 -0
  263. package/src/components/button/Button.spec.ts +117 -0
  264. package/src/components/button/Button.vue +112 -0
  265. package/src/components/button/__snapshots__/Button.spec.ts.snap +9 -0
  266. package/src/components/button/index.ts +16 -0
  267. package/src/components/carousel/Carousel.spec.ts +304 -0
  268. package/src/components/carousel/Carousel.vue +389 -0
  269. package/src/components/carousel/CarouselItem.spec.ts +105 -0
  270. package/src/components/carousel/CarouselItem.vue +38 -0
  271. package/src/components/carousel/CarouselList.spec.ts +172 -0
  272. package/src/components/carousel/CarouselList.vue +364 -0
  273. package/src/components/carousel/__snapshots__/Carousel.spec.ts.snap +19 -0
  274. package/src/components/carousel/__snapshots__/CarouselItem.spec.ts.snap +7 -0
  275. package/src/components/carousel/__snapshots__/CarouselList.spec.ts.snap +36 -0
  276. package/src/components/carousel/index.ts +23 -0
  277. package/src/components/carousel/types.ts +17 -0
  278. package/src/components/checkbox/Checkbox.spec.ts +40 -0
  279. package/src/components/checkbox/Checkbox.vue +63 -0
  280. package/src/components/checkbox/CheckboxButton.spec.ts +46 -0
  281. package/src/components/checkbox/CheckboxButton.vue +59 -0
  282. package/src/components/checkbox/__snapshots__/Checkbox.spec.ts.snap +9 -0
  283. package/src/components/checkbox/__snapshots__/CheckboxButton.spec.ts.snap +3 -0
  284. package/src/components/checkbox/index.ts +20 -0
  285. package/src/components/clockpicker/Clockpicker.spec.ts +161 -0
  286. package/src/components/clockpicker/Clockpicker.vue +311 -0
  287. package/src/components/clockpicker/ClockpickerFace.spec.ts +99 -0
  288. package/src/components/clockpicker/ClockpickerFace.vue +272 -0
  289. package/src/components/clockpicker/__snapshots__/Clockpicker.spec.ts.snap +36 -0
  290. package/src/components/clockpicker/__snapshots__/ClockpickerFace.spec.ts.snap +9 -0
  291. package/src/components/clockpicker/index.ts +16 -0
  292. package/src/components/collapse/Collapse.spec.ts +106 -0
  293. package/src/components/collapse/Collapse.vue +98 -0
  294. package/src/components/collapse/__snapshots__/Collapse.spec.ts.snap +10 -0
  295. package/src/components/collapse/index.ts +16 -0
  296. package/src/components/colorpicker/Colorpicker.spec.ts +22 -0
  297. package/src/components/colorpicker/Colorpicker.vue +416 -0
  298. package/src/components/colorpicker/ColorpickerAlphaSlider.spec.ts +17 -0
  299. package/src/components/colorpicker/ColorpickerAlphaSlider.vue +205 -0
  300. package/src/components/colorpicker/ColorpickerHSLRepresentationSquare.spec.ts +23 -0
  301. package/src/components/colorpicker/ColorpickerHSLRepresentationSquare.vue +380 -0
  302. package/src/components/colorpicker/ColorpickerHSLRepresentationTriangle.spec.ts +23 -0
  303. package/src/components/colorpicker/ColorpickerHSLRepresentationTriangle.vue +456 -0
  304. package/src/components/colorpicker/__snapshots__/Colorpicker.spec.ts.snap +77 -0
  305. package/src/components/colorpicker/__snapshots__/ColorpickerAlphaSlider.spec.ts.snap +9 -0
  306. package/src/components/colorpicker/__snapshots__/ColorpickerHSLRepresentationSquare.spec.ts.snap +12 -0
  307. package/src/components/colorpicker/__snapshots__/ColorpickerHSLRepresentationTriangle.spec.ts.snap +36 -0
  308. package/src/components/colorpicker/index.ts +16 -0
  309. package/src/components/datepicker/Datepicker.spec.ts +482 -0
  310. package/src/components/datepicker/Datepicker.vue +908 -0
  311. package/src/components/datepicker/DatepickerMonth.spec.ts +346 -0
  312. package/src/components/datepicker/DatepickerMonth.vue +444 -0
  313. package/src/components/datepicker/DatepickerTable.spec.ts +290 -0
  314. package/src/components/datepicker/DatepickerTable.vue +398 -0
  315. package/src/components/datepicker/DatepickerTableRow.spec.ts +300 -0
  316. package/src/components/datepicker/DatepickerTableRow.vue +416 -0
  317. package/src/components/datepicker/__snapshots__/Datepicker.spec.ts.snap +54 -0
  318. package/src/components/datepicker/__snapshots__/DatepickerMonth.spec.ts.snap +33 -0
  319. package/src/components/datepicker/__snapshots__/DatepickerTable.spec.ts.snap +16 -0
  320. package/src/components/datepicker/__snapshots__/DatepickerTableRow.spec.ts.snap +23 -0
  321. package/src/components/datepicker/index.ts +17 -0
  322. package/src/components/datepicker/types.ts +41 -0
  323. package/src/components/datetimepicker/Datetimepicker.spec.ts +132 -0
  324. package/src/components/datetimepicker/Datetimepicker.vue +491 -0
  325. package/src/components/datetimepicker/index.ts +16 -0
  326. package/src/components/dialog/Dialog.spec.ts +108 -0
  327. package/src/components/dialog/Dialog.vue +300 -0
  328. package/src/components/dialog/index.ts +169 -0
  329. package/src/components/dropdown/Dropdown.spec.ts +229 -0
  330. package/src/components/dropdown/Dropdown.vue +491 -0
  331. package/src/components/dropdown/DropdownItem.spec.ts +78 -0
  332. package/src/components/dropdown/DropdownItem.vue +112 -0
  333. package/src/components/dropdown/__snapshots__/Dropdown.spec.ts.snap +15 -0
  334. package/src/components/dropdown/__snapshots__/DropdownItem.spec.ts.snap +3 -0
  335. package/src/components/dropdown/index.ts +20 -0
  336. package/src/components/field/Field.spec.ts +324 -0
  337. package/src/components/field/Field.vue +316 -0
  338. package/src/components/field/FieldBody.spec.ts +96 -0
  339. package/src/components/field/FieldBody.vue +74 -0
  340. package/src/components/field/__snapshots__/Field.spec.ts.snap +8 -0
  341. package/src/components/field/__snapshots__/FieldBody.spec.ts.snap +3 -0
  342. package/src/components/field/index.ts +16 -0
  343. package/src/components/icon/Icon.spec.ts +142 -0
  344. package/src/components/icon/Icon.vue +120 -0
  345. package/src/components/icon/__snapshots__/Icon.spec.ts.snap +3 -0
  346. package/src/components/icon/index.ts +17 -0
  347. package/src/components/image/Image.spec.ts +218 -0
  348. package/src/components/image/Image.vue +358 -0
  349. package/src/components/image/__snapshots__/Image.spec.ts.snap +37 -0
  350. package/src/components/image/index.ts +16 -0
  351. package/src/components/index.ts +179 -0
  352. package/src/components/input/Input.spec.ts +396 -0
  353. package/src/components/input/Input.vue +335 -0
  354. package/src/components/input/__snapshots__/Input.spec.ts.snap +9 -0
  355. package/src/components/input/index.ts +17 -0
  356. package/src/components/loading/Loading.spec.ts +151 -0
  357. package/src/components/loading/Loading.vue +135 -0
  358. package/src/components/loading/__snapshots__/Loading.spec.ts.snap +10 -0
  359. package/src/components/loading/index.ts +91 -0
  360. package/src/components/menu/Menu.spec.ts +21 -0
  361. package/src/components/menu/Menu.vue +31 -0
  362. package/src/components/menu/MenuItem.spec.ts +92 -0
  363. package/src/components/menu/MenuItem.vue +168 -0
  364. package/src/components/menu/MenuItemContainerMixin.ts +72 -0
  365. package/src/components/menu/MenuList.spec.ts +35 -0
  366. package/src/components/menu/MenuList.vue +47 -0
  367. package/src/components/menu/__snapshots__/Menu.spec.ts.snap +3 -0
  368. package/src/components/menu/__snapshots__/MenuItem.spec.ts.snap +9 -0
  369. package/src/components/menu/__snapshots__/MenuList.spec.ts.snap +8 -0
  370. package/src/components/menu/index.ts +25 -0
  371. package/src/components/message/Message.spec.ts +30 -0
  372. package/src/components/message/Message.vue +73 -0
  373. package/src/components/message/__snapshots__/Message.spec.ts.snap +11 -0
  374. package/src/components/message/index.ts +15 -0
  375. package/src/components/modal/Modal.spec.ts +167 -0
  376. package/src/components/modal/Modal.vue +335 -0
  377. package/src/components/modal/__snapshots__/Modal.spec.ts.snap +10 -0
  378. package/src/components/modal/index.ts +107 -0
  379. package/src/components/navbar/NavBar.spec.ts +78 -0
  380. package/src/components/navbar/NavBarBurger.spec.ts +30 -0
  381. package/src/components/navbar/NavBarItem.spec.ts +92 -0
  382. package/src/components/navbar/Navbar.vue +274 -0
  383. package/src/components/navbar/NavbarBurger.vue +29 -0
  384. package/src/components/navbar/NavbarDropdown.spec.ts +84 -0
  385. package/src/components/navbar/NavbarDropdown.vue +115 -0
  386. package/src/components/navbar/NavbarItem.vue +97 -0
  387. package/src/components/navbar/__snapshots__/NavBar.spec.ts.snap +11 -0
  388. package/src/components/navbar/__snapshots__/NavBarBurger.spec.ts.snap +3 -0
  389. package/src/components/navbar/__snapshots__/NavBarItem.spec.ts.snap +3 -0
  390. package/src/components/navbar/__snapshots__/NavbarDropdown.spec.ts.snap +7 -0
  391. package/src/components/navbar/index.ts +22 -0
  392. package/src/components/notification/Notification.spec.ts +21 -0
  393. package/src/components/notification/Notification.vue +77 -0
  394. package/src/components/notification/NotificationNotice.vue +76 -0
  395. package/src/components/notification/__snapshots__/Notification.spec.ts.snap +10 -0
  396. package/src/components/notification/index.ts +121 -0
  397. package/src/components/numberinput/Numberinput.spec.ts +445 -0
  398. package/src/components/numberinput/Numberinput.vue +372 -0
  399. package/src/components/numberinput/index.ts +16 -0
  400. package/src/components/pagination/Pagination.spec.ts +94 -0
  401. package/src/components/pagination/Pagination.vue +434 -0
  402. package/src/components/pagination/PaginationButton.spec.ts +42 -0
  403. package/src/components/pagination/PaginationButton.vue +59 -0
  404. package/src/components/pagination/__snapshots__/Pagination.spec.ts.snap +22 -0
  405. package/src/components/pagination/__snapshots__/PaginationButton.spec.ts.snap +3 -0
  406. package/src/components/pagination/index.ts +19 -0
  407. package/src/components/pagination/types.ts +11 -0
  408. package/src/components/progress/Progress.spec.ts +81 -0
  409. package/src/components/progress/Progress.vue +168 -0
  410. package/src/components/progress/ProgressBar.spec.ts +45 -0
  411. package/src/components/progress/ProgressBar.vue +74 -0
  412. package/src/components/progress/__snapshots__/Progress.spec.ts.snap +7 -0
  413. package/src/components/progress/__snapshots__/ProgressBar.spec.ts.snap +7 -0
  414. package/src/components/progress/index.ts +18 -0
  415. package/src/components/radio/Radio.spec.ts +40 -0
  416. package/src/components/radio/Radio.vue +35 -0
  417. package/src/components/radio/RadioButton.spec.ts +40 -0
  418. package/src/components/radio/RadioButton.vue +69 -0
  419. package/src/components/radio/__snapshots__/Radio.spec.ts.snap +3 -0
  420. package/src/components/radio/__snapshots__/RadioButton.spec.ts.snap +3 -0
  421. package/src/components/radio/index.ts +18 -0
  422. package/src/components/rate/Rate.spec.ts +90 -0
  423. package/src/components/rate/Rate.vue +158 -0
  424. package/src/components/rate/index.ts +15 -0
  425. package/src/components/select/Select.spec.ts +74 -0
  426. package/src/components/select/Select.vue +118 -0
  427. package/src/components/select/__snapshots__/Select.spec.ts.snap +7 -0
  428. package/src/components/select/index.ts +16 -0
  429. package/src/components/sidebar/Sidebar.spec.ts +107 -0
  430. package/src/components/sidebar/Sidebar.vue +316 -0
  431. package/src/components/sidebar/__snapshots__/Sidebar.spec.ts.snap +25 -0
  432. package/src/components/sidebar/index.ts +16 -0
  433. package/src/components/skeleton/Skeleton.spec.ts +16 -0
  434. package/src/components/skeleton/Skeleton.vue +98 -0
  435. package/src/components/skeleton/__snapshots__/Skeleton.spec.ts.snap +7 -0
  436. package/src/components/skeleton/index.ts +18 -0
  437. package/src/components/slider/Slider.spec.ts +115 -0
  438. package/src/components/slider/Slider.vue +374 -0
  439. package/src/components/slider/SliderThumb.spec.ts +176 -0
  440. package/src/components/slider/SliderThumb.vue +251 -0
  441. package/src/components/slider/SliderTick.spec.ts +33 -0
  442. package/src/components/slider/SliderTick.vue +50 -0
  443. package/src/components/slider/__snapshots__/Slider.spec.ts.snap +12 -0
  444. package/src/components/slider/__snapshots__/SliderThumb.spec.ts.snap +16 -0
  445. package/src/components/slider/__snapshots__/SliderTick.spec.ts.snap +7 -0
  446. package/src/components/slider/index.ts +19 -0
  447. package/src/components/slider/types.ts +34 -0
  448. package/src/components/snackbar/Snackbar.spec.ts +35 -0
  449. package/src/components/snackbar/Snackbar.vue +88 -0
  450. package/src/components/snackbar/__snapshots__/Snackbar.spec.ts.snap +12 -0
  451. package/src/components/snackbar/index.ts +118 -0
  452. package/src/components/steps/StepItem.spec.ts +114 -0
  453. package/src/components/steps/StepItem.vue +26 -0
  454. package/src/components/steps/Steps.spec.ts +125 -0
  455. package/src/components/steps/Steps.vue +273 -0
  456. package/src/components/steps/__snapshots__/StepItem.spec.ts.snap +7 -0
  457. package/src/components/steps/__snapshots__/Steps.spec.ts.snap +40 -0
  458. package/src/components/steps/index.ts +19 -0
  459. package/src/components/switch/Switch.spec.ts +74 -0
  460. package/src/components/switch/Switch.vue +146 -0
  461. package/src/components/switch/__snapshots__/Switch.spec.ts.snap +3 -0
  462. package/src/components/switch/index.ts +16 -0
  463. package/src/components/table/Table.spec.ts +622 -0
  464. package/src/components/table/Table.vue +1770 -0
  465. package/src/components/table/TableColumn.spec.ts +85 -0
  466. package/src/components/table/TableColumn.vue +140 -0
  467. package/src/components/table/TableMobileSort.spec.ts +47 -0
  468. package/src/components/table/TableMobileSort.vue +236 -0
  469. package/src/components/table/TablePagination.vue +86 -0
  470. package/src/components/table/__snapshots__/Table.spec.ts.snap +24 -0
  471. package/src/components/table/__snapshots__/TableMobileSort.spec.ts.snap +12 -0
  472. package/src/components/table/index.ts +32 -0
  473. package/src/components/table/mockTableColumn.ts +110 -0
  474. package/src/components/table/types.ts +110 -0
  475. package/src/components/tabs/TabItem.spec.ts +203 -0
  476. package/src/components/tabs/TabItem.vue +19 -0
  477. package/src/components/tabs/Tabs.spec.ts +122 -0
  478. package/src/components/tabs/Tabs.vue +204 -0
  479. package/src/components/tabs/__snapshots__/TabItem.spec.ts.snap +7 -0
  480. package/src/components/tabs/__snapshots__/Tabs.spec.ts.snap +33 -0
  481. package/src/components/tabs/index.ts +19 -0
  482. package/src/components/tag/Tag.spec.ts +32 -0
  483. package/src/components/tag/Tag.vue +132 -0
  484. package/src/components/tag/Taglist.spec.ts +21 -0
  485. package/src/components/tag/Taglist.vue +16 -0
  486. package/src/components/tag/__snapshots__/Tag.spec.ts.snap +6 -0
  487. package/src/components/tag/__snapshots__/Taglist.spec.ts.snap +3 -0
  488. package/src/components/tag/index.ts +19 -0
  489. package/src/components/taginput/Taginput.spec.ts +132 -0
  490. package/src/components/taginput/Taginput.vue +415 -0
  491. package/src/components/taginput/__snapshots__/Taginput.spec.ts.snap +10 -0
  492. package/src/components/taginput/index.ts +16 -0
  493. package/src/components/timepicker/Timepicker.spec.ts +108 -0
  494. package/src/components/timepicker/Timepicker.vue +183 -0
  495. package/src/components/timepicker/__snapshots__/Timepicker.spec.ts.snap +41 -0
  496. package/src/components/timepicker/index.ts +17 -0
  497. package/src/components/toast/Toast.spec.ts +74 -0
  498. package/src/components/toast/Toast.vue +46 -0
  499. package/src/components/toast/__snapshots__/Toast.spec.ts.snap +10 -0
  500. package/src/components/toast/index.ts +120 -0
  501. package/src/components/tooltip/Tooltip.spec.ts +64 -0
  502. package/src/components/tooltip/Tooltip.vue +393 -0
  503. package/src/components/tooltip/__snapshots__/Tooltip.spec.ts.snap +12 -0
  504. package/src/components/tooltip/index.ts +16 -0
  505. package/src/components/upload/Upload.spec.ts +62 -0
  506. package/src/components/upload/Upload.vue +188 -0
  507. package/src/components/upload/__snapshots__/Upload.spec.ts.snap +3 -0
  508. package/src/components/upload/index.ts +15 -0
  509. package/src/directives/clickOutside.ts +113 -0
  510. package/src/directives/trapFocus.ts +61 -0
  511. package/src/index.ts +43 -0
  512. package/src/scss/buefy-build.scss +6 -0
  513. package/src/scss/buefy.scss +39 -0
  514. package/src/scss/components/_autocomplete.scss +39 -0
  515. package/src/scss/components/_carousel.scss +204 -0
  516. package/src/scss/components/_checkbox.scss +106 -0
  517. package/src/scss/components/_clockpicker.scss +283 -0
  518. package/src/scss/components/_collapse.scss +9 -0
  519. package/src/scss/components/_colorpicker.scss +283 -0
  520. package/src/scss/components/_datepicker.scss +220 -0
  521. package/src/scss/components/_dialog.scss +54 -0
  522. package/src/scss/components/_dropdown.scss +143 -0
  523. package/src/scss/components/_form.scss +309 -0
  524. package/src/scss/components/_icon.scss +16 -0
  525. package/src/scss/components/_image.scss +20 -0
  526. package/src/scss/components/_loading.scss +45 -0
  527. package/src/scss/components/_menu.scss +11 -0
  528. package/src/scss/components/_message.scss +16 -0
  529. package/src/scss/components/_modal.scss +37 -0
  530. package/src/scss/components/_navbar.scss +22 -0
  531. package/src/scss/components/_notices.scss +144 -0
  532. package/src/scss/components/_notification.scss +8 -0
  533. package/src/scss/components/_numberinput.scss +33 -0
  534. package/src/scss/components/_pagination.scss +63 -0
  535. package/src/scss/components/_progress.scss +105 -0
  536. package/src/scss/components/_radio.scss +123 -0
  537. package/src/scss/components/_rate.scss +72 -0
  538. package/src/scss/components/_select.scss +38 -0
  539. package/src/scss/components/_sidebar.scss +107 -0
  540. package/src/scss/components/_skeleton.scss +66 -0
  541. package/src/scss/components/_slider.scss +162 -0
  542. package/src/scss/components/_steps.scss +491 -0
  543. package/src/scss/components/_switch.scss +214 -0
  544. package/src/scss/components/_table.scss +322 -0
  545. package/src/scss/components/_tabs.scss +197 -0
  546. package/src/scss/components/_tag.scss +36 -0
  547. package/src/scss/components/_taginput.scss +73 -0
  548. package/src/scss/components/_timepicker.scss +73 -0
  549. package/src/scss/components/_tooltip.scss +192 -0
  550. package/src/scss/components/_upload.scss +62 -0
  551. package/src/scss/utils/_all.scss +4 -0
  552. package/src/scss/utils/_animations.scss +183 -0
  553. package/src/scss/utils/_functions.scss +49 -0
  554. package/src/scss/utils/_helpers.scss +6 -0
  555. package/src/scss/utils/_variables-ext.scss +2 -0
  556. package/src/scss/utils/_variables.scss +16 -0
  557. package/src/utils/CheckRadioMixin.spec.ts +28 -0
  558. package/src/utils/CheckRadioMixin.ts +61 -0
  559. package/src/utils/CompatFallthroughMixin.ts +34 -0
  560. package/src/utils/ConfigComponent.ts +12 -0
  561. package/src/utils/FormElementMixin.spec.ts +41 -0
  562. package/src/utils/FormElementMixin.ts +206 -0
  563. package/src/utils/InjectedChildMixin.ts +139 -0
  564. package/src/utils/MessageMixin.spec.ts +51 -0
  565. package/src/utils/MessageMixin.ts +138 -0
  566. package/src/utils/NoticeMixin.spec.ts +55 -0
  567. package/src/utils/NoticeMixin.ts +181 -0
  568. package/src/utils/ProvideInjectTypes.ts +20 -0
  569. package/src/utils/ProviderParentMixin.ts +105 -0
  570. package/src/utils/SlotComponent.spec.ts +55 -0
  571. package/src/utils/SlotComponent.ts +38 -0
  572. package/src/utils/TabbedChildMixin.ts +96 -0
  573. package/src/utils/TabbedMixin.ts +166 -0
  574. package/src/utils/TabbedTypes.ts +33 -0
  575. package/src/utils/TimepickerMixin.spec.ts +75 -0
  576. package/src/utils/TimepickerMixin.ts +767 -0
  577. package/src/utils/color.spec.ts +55 -0
  578. package/src/utils/color.ts +507 -0
  579. package/src/utils/config.spec.ts +11 -0
  580. package/src/utils/config.ts +619 -0
  581. package/src/utils/debounce.spec.ts +52 -0
  582. package/src/utils/debounce.ts +20 -0
  583. package/src/utils/helpers.spec.ts +257 -0
  584. package/src/utils/helpers.ts +527 -0
  585. package/src/utils/icons.ts +73 -0
  586. package/src/utils/plugins.ts +20 -0
  587. package/src/utils/ssr.ts +6 -0
  588. package/src/utils/vue-augmentation.ts +35 -0
@@ -0,0 +1,1128 @@
1
+ /*! Buefy v1.0.2 | MIT License | github.com/buefy/buefy */
2
+ (function (global, factory) {
3
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
4
+ typeof define === 'function' && define.amd ? define(['exports', 'vue'], factory) :
5
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Numberinput = {}, global.Vue));
6
+ })(this, (function (exports, vue) { 'use strict';
7
+
8
+ let config = {
9
+ defaultIconPack: "mdi",
10
+ defaultIconComponent: null,
11
+ defaultLocale: void 0,
12
+ defaultInputAutocomplete: "on",
13
+ defaultInputHasCounter: true,
14
+ defaultCompatFallthrough: true,
15
+ defaultUseHtml5Validation: true,
16
+ defaultStatusIcon: true};
17
+
18
+ var _export_sfc = (sfc, props) => {
19
+ const target = sfc.__vccOpts || sfc;
20
+ for (const [key, val] of props) {
21
+ target[key] = val;
22
+ }
23
+ return target;
24
+ };
25
+
26
+ const mdiIcons = {
27
+ sizes: {
28
+ default: "mdi-24px",
29
+ "is-small": null,
30
+ "is-medium": "mdi-36px",
31
+ "is-large": "mdi-48px"
32
+ },
33
+ iconPrefix: "mdi-"
34
+ };
35
+ const faIcons = () => {
36
+ const faIconPrefix = "fa-";
37
+ return {
38
+ sizes: {
39
+ default: null,
40
+ "is-small": null,
41
+ "is-medium": faIconPrefix + "lg",
42
+ "is-large": faIconPrefix + "2x"
43
+ },
44
+ iconPrefix: faIconPrefix,
45
+ internalIcons: {
46
+ information: "info-circle",
47
+ alert: "exclamation-triangle",
48
+ "alert-circle": "exclamation-circle",
49
+ "chevron-right": "angle-right",
50
+ "chevron-left": "angle-left",
51
+ "chevron-down": "angle-down",
52
+ "eye-off": "eye-slash",
53
+ "menu-down": "caret-down",
54
+ "menu-up": "caret-up",
55
+ "close-circle": "times-circle"
56
+ }
57
+ };
58
+ };
59
+ const getIcons = () => {
60
+ let icons = {
61
+ mdi: mdiIcons,
62
+ fa: faIcons(),
63
+ fas: faIcons(),
64
+ far: faIcons(),
65
+ fad: faIcons(),
66
+ fab: faIcons(),
67
+ fal: faIcons(),
68
+ "fa-solid": faIcons(),
69
+ "fa-regular": faIcons(),
70
+ "fa-light": faIcons(),
71
+ "fa-thin": faIcons(),
72
+ "fa-duotone": faIcons(),
73
+ "fa-brands": faIcons()
74
+ };
75
+ return icons;
76
+ };
77
+
78
+ var _sfc_main$2 = vue.defineComponent({
79
+ name: "BIcon",
80
+ props: {
81
+ type: [String, Object],
82
+ component: String,
83
+ pack: String,
84
+ icon: {
85
+ type: String,
86
+ required: true
87
+ },
88
+ size: String,
89
+ customSize: String,
90
+ customClass: String,
91
+ both: Boolean
92
+ // This is used internally to show both MDI and FA icon
93
+ },
94
+ computed: {
95
+ iconConfig() {
96
+ const allIcons = getIcons();
97
+ return allIcons[this.newPack];
98
+ },
99
+ iconPrefix() {
100
+ if (this.iconConfig && this.iconConfig.iconPrefix) {
101
+ return this.iconConfig.iconPrefix;
102
+ }
103
+ return "";
104
+ },
105
+ /*
106
+ * Internal icon name based on the pack.
107
+ * If pack is 'fa', gets the equivalent FA icon name of the MDI,
108
+ * internal icons are always MDI.
109
+ */
110
+ newIcon() {
111
+ return `${this.iconPrefix}${this.getEquivalentIconOf(this.icon)}`;
112
+ },
113
+ newPack() {
114
+ return this.pack || config.defaultIconPack;
115
+ },
116
+ newType() {
117
+ if (!this.type) return;
118
+ let splitType = [];
119
+ if (typeof this.type === "string") {
120
+ splitType = this.type.split("-");
121
+ } else {
122
+ for (const key in this.type) {
123
+ if (this.type[key]) {
124
+ splitType = key.split("-");
125
+ break;
126
+ }
127
+ }
128
+ }
129
+ if (splitType.length <= 1) return;
130
+ const [, ...type] = splitType;
131
+ return `has-text-${type.join("-")}`;
132
+ },
133
+ newCustomSize() {
134
+ return this.customSize || this.customSizeByPack;
135
+ },
136
+ customSizeByPack() {
137
+ if (this.iconConfig && this.iconConfig.sizes) {
138
+ if (this.size && this.iconConfig.sizes[this.size] !== void 0) {
139
+ return this.iconConfig.sizes[this.size];
140
+ } else if (this.iconConfig.sizes.default) {
141
+ return this.iconConfig.sizes.default;
142
+ }
143
+ }
144
+ return null;
145
+ },
146
+ useIconComponent() {
147
+ return this.component || config.defaultIconComponent;
148
+ }
149
+ },
150
+ methods: {
151
+ /*
152
+ * Equivalent icon name of the MDI.
153
+ */
154
+ getEquivalentIconOf(value) {
155
+ if (!this.both) {
156
+ return value;
157
+ }
158
+ if (this.iconConfig == null) {
159
+ return value;
160
+ }
161
+ const maybeInternal = this.iconConfig;
162
+ if (maybeInternal && maybeInternal.internalIcons && maybeInternal.internalIcons[value]) {
163
+ return maybeInternal.internalIcons[value];
164
+ }
165
+ return value;
166
+ }
167
+ }
168
+ });
169
+
170
+ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
171
+ return vue.openBlock(), vue.createElementBlock(
172
+ "span",
173
+ {
174
+ class: vue.normalizeClass(["icon", [_ctx.newType, _ctx.size]])
175
+ },
176
+ [
177
+ !_ctx.useIconComponent ? (vue.openBlock(), vue.createElementBlock(
178
+ "i",
179
+ {
180
+ key: 0,
181
+ class: vue.normalizeClass([_ctx.newPack, _ctx.newIcon, _ctx.newCustomSize, _ctx.customClass])
182
+ },
183
+ null,
184
+ 2
185
+ /* CLASS */
186
+ )) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.useIconComponent), {
187
+ key: 1,
188
+ icon: [_ctx.newPack, _ctx.newIcon],
189
+ size: _ctx.newCustomSize,
190
+ class: vue.normalizeClass([_ctx.customClass])
191
+ }, null, 8, ["icon", "size", "class"]))
192
+ ],
193
+ 2
194
+ /* CLASS */
195
+ );
196
+ }
197
+ var BIcon = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$2]]);
198
+
199
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
200
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
201
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
202
+ var __objRest = (source, exclude) => {
203
+ var target = {};
204
+ for (var prop in source)
205
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
206
+ target[prop] = source[prop];
207
+ if (source != null && __getOwnPropSymbols)
208
+ for (var prop of __getOwnPropSymbols(source)) {
209
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
210
+ target[prop] = source[prop];
211
+ }
212
+ return target;
213
+ };
214
+ var CompatFallthroughMixin = vue.defineComponent({
215
+ inheritAttrs: false,
216
+ props: {
217
+ compatFallthrough: {
218
+ type: Boolean,
219
+ default: () => config.defaultCompatFallthrough
220
+ }
221
+ },
222
+ computed: {
223
+ rootAttrs() {
224
+ return this.compatFallthrough ? {
225
+ class: this.$attrs.class,
226
+ style: this.$attrs.style,
227
+ id: this.$attrs.id
228
+ } : {};
229
+ },
230
+ fallthroughAttrs() {
231
+ if (this.compatFallthrough) {
232
+ const _a = this.$attrs, { style: _1, class: _2, id: _3 } = _a, rest = __objRest(_a, ["style", "class", "id"]);
233
+ return rest;
234
+ } else {
235
+ return this.$attrs;
236
+ }
237
+ }
238
+ }
239
+ });
240
+
241
+ const FormElementMixin = vue.defineComponent({
242
+ props: {
243
+ size: String,
244
+ expanded: Boolean,
245
+ loading: Boolean,
246
+ rounded: Boolean,
247
+ icon: String,
248
+ iconPack: String,
249
+ maxlength: [Number, String],
250
+ useHtml5Validation: {
251
+ type: Boolean,
252
+ default: () => config.defaultUseHtml5Validation
253
+ },
254
+ validationMessage: String,
255
+ locale: {
256
+ type: [String, Array],
257
+ default: () => {
258
+ return config.defaultLocale;
259
+ }
260
+ },
261
+ statusIcon: {
262
+ type: Boolean,
263
+ default: () => {
264
+ return config.defaultStatusIcon;
265
+ }
266
+ }
267
+ },
268
+ emits: {
269
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
270
+ blur: (event) => true,
271
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
272
+ focus: (event) => true
273
+ },
274
+ data() {
275
+ return {
276
+ isValid: true,
277
+ isFocused: false,
278
+ newIconPack: this.iconPack || config.defaultIconPack,
279
+ // host component must override this
280
+ _elementRef: ""
281
+ };
282
+ },
283
+ computed: {
284
+ /*
285
+ * Find parent Field, max 3 levels deep.
286
+ */
287
+ parentField() {
288
+ let parent = this.$parent;
289
+ for (let i = 0; i < 3; i++) {
290
+ if (parent && !parent.$data._isField) {
291
+ parent = parent.$parent;
292
+ }
293
+ }
294
+ return parent;
295
+ },
296
+ /*
297
+ * Get the type prop from parent if it's a Field.
298
+ */
299
+ statusType() {
300
+ const { newType } = this.parentField || {};
301
+ if (!newType) return;
302
+ if (typeof newType === "string") {
303
+ return newType;
304
+ } else {
305
+ for (const key in newType) {
306
+ if (newType[key]) {
307
+ return key;
308
+ }
309
+ }
310
+ }
311
+ return void 0;
312
+ },
313
+ /*
314
+ * Get the message prop from parent if it's a Field.
315
+ */
316
+ statusMessage() {
317
+ if (!this.parentField) return;
318
+ return this.parentField.newMessage || this.parentField.$slots.message;
319
+ },
320
+ /*
321
+ * Fix icon size for inputs, large was too big
322
+ */
323
+ iconSize() {
324
+ switch (this.size) {
325
+ case "is-small":
326
+ return this.size;
327
+ case "is-medium":
328
+ return;
329
+ case "is-large":
330
+ return this.newIconPack === "mdi" ? "is-medium" : "";
331
+ }
332
+ return void 0;
333
+ }
334
+ },
335
+ methods: {
336
+ /*
337
+ * Focus method that work dynamically depending on the component.
338
+ */
339
+ focus() {
340
+ const el = this.getElement();
341
+ if (el === void 0) return;
342
+ this.$nextTick(() => {
343
+ if (el) el.focus();
344
+ });
345
+ },
346
+ onBlur($event) {
347
+ this.isFocused = false;
348
+ this.$emit("blur", $event);
349
+ this.checkHtml5Validity();
350
+ },
351
+ onFocus($event) {
352
+ this.isFocused = true;
353
+ this.$emit("focus", $event);
354
+ },
355
+ getElement() {
356
+ let el = this.$refs[this.$data._elementRef];
357
+ while (el != null && typeof el === "object" && "$refs" in el) {
358
+ const form = el;
359
+ el = form.$refs[form.$data._elementRef];
360
+ }
361
+ return el;
362
+ },
363
+ setInvalid() {
364
+ const type = "is-danger";
365
+ const message = this.validationMessage || this.getElement().validationMessage;
366
+ this.setValidity(type, message);
367
+ },
368
+ setValidity(type, message) {
369
+ this.$nextTick(() => {
370
+ if (this.parentField) {
371
+ if (!this.parentField.type) {
372
+ this.parentField.newType = type;
373
+ }
374
+ if (!this.parentField.message) {
375
+ this.parentField.newMessage = message;
376
+ }
377
+ }
378
+ });
379
+ },
380
+ /*
381
+ * Check HTML5 validation, set isValid property.
382
+ * If validation fail, send 'is-danger' type,
383
+ * and error message to parent if it's a Field.
384
+ */
385
+ checkHtml5Validity() {
386
+ if (!this.useHtml5Validation) {
387
+ return false;
388
+ }
389
+ const el = this.getElement();
390
+ if (el == null) {
391
+ return false;
392
+ }
393
+ if (!el.checkValidity()) {
394
+ this.setInvalid();
395
+ this.isValid = false;
396
+ } else {
397
+ this.setValidity(null, null);
398
+ this.isValid = true;
399
+ }
400
+ return this.isValid;
401
+ }
402
+ }
403
+ });
404
+
405
+ var _sfc_main$1 = vue.defineComponent({
406
+ name: "BInput",
407
+ components: { BIcon },
408
+ mixins: [CompatFallthroughMixin, FormElementMixin],
409
+ props: {
410
+ modelValue: {
411
+ type: [Number, String]
412
+ },
413
+ type: {
414
+ type: String,
415
+ default: "text"
416
+ },
417
+ lazy: {
418
+ type: Boolean,
419
+ default: false
420
+ },
421
+ passwordReveal: Boolean,
422
+ iconClickable: Boolean,
423
+ hasCounter: {
424
+ type: Boolean,
425
+ default: () => config.defaultInputHasCounter
426
+ },
427
+ customClass: {
428
+ type: String,
429
+ default: ""
430
+ },
431
+ iconRight: String,
432
+ iconRightClickable: Boolean,
433
+ iconRightType: String,
434
+ // Native options to use in HTML5 validation
435
+ autocomplete: String
436
+ },
437
+ emits: {
438
+ /* eslint-disable @typescript-eslint/no-unused-vars */
439
+ "icon-click": (event) => true,
440
+ "icon-right-click": (event) => true,
441
+ "update:modelValue": (value) => true
442
+ /* eslint-enable @typescript-eslint/no-unused-vars */
443
+ },
444
+ data() {
445
+ return {
446
+ newValue: this.modelValue,
447
+ newType: this.type,
448
+ newAutocomplete: this.autocomplete || config.defaultInputAutocomplete,
449
+ isPasswordVisible: false,
450
+ _elementRef: this.type === "textarea" ? "textarea" : "input"
451
+ };
452
+ },
453
+ computed: {
454
+ computedValue: {
455
+ get() {
456
+ return this.newValue;
457
+ },
458
+ set(value) {
459
+ this.newValue = value;
460
+ this.$emit("update:modelValue", value);
461
+ }
462
+ },
463
+ rootClasses() {
464
+ return [
465
+ this.iconPosition,
466
+ this.size,
467
+ {
468
+ "is-expanded": this.expanded,
469
+ "is-loading": this.loading,
470
+ "is-clearfix": !this.hasMessage
471
+ }
472
+ ];
473
+ },
474
+ inputClasses() {
475
+ return [
476
+ this.statusType,
477
+ this.size,
478
+ { "is-rounded": this.rounded }
479
+ ];
480
+ },
481
+ hasIconRight() {
482
+ return this.passwordReveal || this.loading || this.statusIcon && this.statusTypeIcon || this.iconRight;
483
+ },
484
+ rightIcon() {
485
+ if (this.passwordReveal) {
486
+ return this.passwordVisibleIcon;
487
+ } else if (this.iconRight) {
488
+ return this.iconRight;
489
+ }
490
+ return this.statusTypeIcon;
491
+ },
492
+ rightIconType() {
493
+ if (this.passwordReveal) {
494
+ return "is-primary";
495
+ } else if (this.iconRight) {
496
+ return this.iconRightType || void 0;
497
+ }
498
+ return this.statusType;
499
+ },
500
+ /*
501
+ * Position of the icon or if it's both sides.
502
+ */
503
+ iconPosition() {
504
+ let iconClasses = "";
505
+ if (this.icon) {
506
+ iconClasses += "has-icons-left ";
507
+ }
508
+ if (this.hasIconRight) {
509
+ iconClasses += "has-icons-right";
510
+ }
511
+ return iconClasses;
512
+ },
513
+ /*
514
+ * Icon name (MDI) based on the type.
515
+ */
516
+ statusTypeIcon() {
517
+ switch (this.statusType) {
518
+ case "is-success":
519
+ return "check";
520
+ case "is-danger":
521
+ return "alert-circle";
522
+ case "is-info":
523
+ return "information";
524
+ case "is-warning":
525
+ return "alert";
526
+ default:
527
+ return void 0;
528
+ }
529
+ },
530
+ /*
531
+ * Check if have any message prop from parent if it's a Field.
532
+ */
533
+ hasMessage() {
534
+ return !!this.statusMessage;
535
+ },
536
+ /*
537
+ * Current password-reveal icon name.
538
+ */
539
+ passwordVisibleIcon() {
540
+ return !this.isPasswordVisible ? "eye" : "eye-off";
541
+ },
542
+ /*
543
+ * Get value length
544
+ */
545
+ valueLength() {
546
+ if (typeof this.computedValue === "string") {
547
+ return Array.from(this.computedValue).length;
548
+ } else if (typeof this.computedValue === "number") {
549
+ return this.computedValue.toString().length;
550
+ }
551
+ return 0;
552
+ }
553
+ },
554
+ watch: {
555
+ /*
556
+ * When v-model is changed:
557
+ * 1. Set internal value.
558
+ * 2. Validate it if the value came from outside;
559
+ * i.e., not equal to computedValue
560
+ */
561
+ modelValue(value) {
562
+ const fromOutside = this.computedValue != value;
563
+ this.newValue = value;
564
+ if (fromOutside) {
565
+ this.$nextTick(() => {
566
+ !this.isValid && this.checkHtml5Validity();
567
+ });
568
+ }
569
+ },
570
+ type(type) {
571
+ this.newType = type;
572
+ }
573
+ },
574
+ methods: {
575
+ /*
576
+ * Toggle the visibility of a password-reveal input
577
+ * by changing the type and focus the input right away.
578
+ */
579
+ togglePasswordVisibility() {
580
+ this.isPasswordVisible = !this.isPasswordVisible;
581
+ this.newType = this.isPasswordVisible ? "text" : "password";
582
+ this.$nextTick(() => {
583
+ this.focus();
584
+ });
585
+ },
586
+ iconClick(emit, event) {
587
+ this.$emit(emit, event);
588
+ this.$nextTick(() => {
589
+ this.focus();
590
+ });
591
+ },
592
+ rightIconClick(event) {
593
+ if (this.passwordReveal) {
594
+ this.togglePasswordVisibility();
595
+ } else if (this.iconRightClickable) {
596
+ this.iconClick("icon-right-click", event);
597
+ }
598
+ },
599
+ onInput() {
600
+ if (!this.lazy) {
601
+ this.revalidate();
602
+ }
603
+ },
604
+ onChange() {
605
+ if (this.lazy) {
606
+ this.revalidate();
607
+ }
608
+ },
609
+ revalidate() {
610
+ !this.isValid && this.checkHtml5Validity();
611
+ }
612
+ }
613
+ });
614
+
615
+ const _hoisted_1$1 = ["type", "autocomplete", "maxlength"];
616
+ const _hoisted_2$1 = ["maxlength"];
617
+ const _hoisted_3 = ["type", "autocomplete", "maxlength"];
618
+ const _hoisted_4 = ["maxlength"];
619
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
620
+ const _component_b_icon = vue.resolveComponent("b-icon");
621
+ return vue.openBlock(), vue.createElementBlock(
622
+ "div",
623
+ vue.mergeProps({
624
+ class: ["control", _ctx.rootClasses]
625
+ }, _ctx.rootAttrs),
626
+ [
627
+ _ctx.lazy ? (vue.openBlock(), vue.createElementBlock(
628
+ vue.Fragment,
629
+ { key: 0 },
630
+ [
631
+ _ctx.type !== "textarea" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", vue.mergeProps({
632
+ key: 0,
633
+ ref: "input",
634
+ class: ["input", [_ctx.inputClasses, _ctx.customClass]],
635
+ type: _ctx.newType,
636
+ autocomplete: _ctx.newAutocomplete,
637
+ maxlength: _ctx.maxlength,
638
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.computedValue = $event)
639
+ }, _ctx.fallthroughAttrs, {
640
+ onInput: _cache[1] || (_cache[1] = (...args) => _ctx.onInput && _ctx.onInput(...args)),
641
+ onChange: _cache[2] || (_cache[2] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
642
+ onBlur: _cache[3] || (_cache[3] = (...args) => _ctx.onBlur && _ctx.onBlur(...args)),
643
+ onFocus: _cache[4] || (_cache[4] = (...args) => _ctx.onFocus && _ctx.onFocus(...args))
644
+ }), null, 16, _hoisted_1$1)), [
645
+ [
646
+ vue.vModelDynamic,
647
+ _ctx.computedValue,
648
+ void 0,
649
+ { lazy: true }
650
+ ]
651
+ ]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("textarea", vue.mergeProps({
652
+ key: 1,
653
+ ref: "textarea",
654
+ class: ["textarea", [_ctx.inputClasses, _ctx.customClass]],
655
+ maxlength: _ctx.maxlength,
656
+ "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.computedValue = $event)
657
+ }, _ctx.fallthroughAttrs, {
658
+ onInput: _cache[6] || (_cache[6] = (...args) => _ctx.onInput && _ctx.onInput(...args)),
659
+ onChange: _cache[7] || (_cache[7] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
660
+ onBlur: _cache[8] || (_cache[8] = (...args) => _ctx.onBlur && _ctx.onBlur(...args)),
661
+ onFocus: _cache[9] || (_cache[9] = (...args) => _ctx.onFocus && _ctx.onFocus(...args))
662
+ }), null, 16, _hoisted_2$1)), [
663
+ [
664
+ vue.vModelText,
665
+ _ctx.computedValue,
666
+ void 0,
667
+ { lazy: true }
668
+ ]
669
+ ])
670
+ ],
671
+ 64
672
+ /* STABLE_FRAGMENT */
673
+ )) : (vue.openBlock(), vue.createElementBlock(
674
+ vue.Fragment,
675
+ { key: 1 },
676
+ [
677
+ _ctx.type !== "textarea" ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", vue.mergeProps({
678
+ key: 0,
679
+ ref: "input",
680
+ class: ["input", [_ctx.inputClasses, _ctx.customClass]],
681
+ type: _ctx.newType,
682
+ autocomplete: _ctx.newAutocomplete,
683
+ maxlength: _ctx.maxlength,
684
+ "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => _ctx.computedValue = $event)
685
+ }, _ctx.fallthroughAttrs, {
686
+ onInput: _cache[11] || (_cache[11] = (...args) => _ctx.onInput && _ctx.onInput(...args)),
687
+ onChange: _cache[12] || (_cache[12] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
688
+ onBlur: _cache[13] || (_cache[13] = (...args) => _ctx.onBlur && _ctx.onBlur(...args)),
689
+ onFocus: _cache[14] || (_cache[14] = (...args) => _ctx.onFocus && _ctx.onFocus(...args))
690
+ }), null, 16, _hoisted_3)), [
691
+ [vue.vModelDynamic, _ctx.computedValue]
692
+ ]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("textarea", vue.mergeProps({
693
+ key: 1,
694
+ ref: "textarea",
695
+ class: ["textarea", [_ctx.inputClasses, _ctx.customClass]],
696
+ maxlength: _ctx.maxlength,
697
+ "onUpdate:modelValue": _cache[15] || (_cache[15] = ($event) => _ctx.computedValue = $event)
698
+ }, _ctx.fallthroughAttrs, {
699
+ onInput: _cache[16] || (_cache[16] = (...args) => _ctx.onInput && _ctx.onInput(...args)),
700
+ onChange: _cache[17] || (_cache[17] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
701
+ onBlur: _cache[18] || (_cache[18] = (...args) => _ctx.onBlur && _ctx.onBlur(...args)),
702
+ onFocus: _cache[19] || (_cache[19] = (...args) => _ctx.onFocus && _ctx.onFocus(...args))
703
+ }), null, 16, _hoisted_4)), [
704
+ [vue.vModelText, _ctx.computedValue]
705
+ ])
706
+ ],
707
+ 64
708
+ /* STABLE_FRAGMENT */
709
+ )),
710
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(_component_b_icon, {
711
+ key: 2,
712
+ class: vue.normalizeClass(["is-left", { "is-clickable": _ctx.iconClickable }]),
713
+ icon: _ctx.icon,
714
+ pack: _ctx.iconPack,
715
+ size: _ctx.iconSize,
716
+ onClick: _cache[20] || (_cache[20] = ($event) => _ctx.iconClick("icon-click", $event))
717
+ }, null, 8, ["class", "icon", "pack", "size"])) : vue.createCommentVNode("v-if", true),
718
+ !_ctx.loading && _ctx.hasIconRight && _ctx.rightIcon ? (vue.openBlock(), vue.createBlock(_component_b_icon, {
719
+ key: 3,
720
+ class: vue.normalizeClass(["is-right", { "is-clickable": _ctx.passwordReveal || _ctx.iconRightClickable }]),
721
+ icon: _ctx.rightIcon,
722
+ pack: _ctx.iconPack,
723
+ size: _ctx.iconSize,
724
+ type: _ctx.rightIconType,
725
+ both: "",
726
+ onClick: _ctx.rightIconClick
727
+ }, null, 8, ["class", "icon", "pack", "size", "type", "onClick"])) : vue.createCommentVNode("v-if", true),
728
+ _ctx.maxlength && _ctx.hasCounter && _ctx.type !== "number" ? (vue.openBlock(), vue.createElementBlock(
729
+ "small",
730
+ {
731
+ key: 4,
732
+ class: vue.normalizeClass(["help counter", { "is-invisible": !_ctx.isFocused }])
733
+ },
734
+ vue.toDisplayString(_ctx.valueLength) + " / " + vue.toDisplayString(_ctx.maxlength),
735
+ 3
736
+ /* TEXT, CLASS */
737
+ )) : vue.createCommentVNode("v-if", true)
738
+ ],
739
+ 16
740
+ /* FULL_PROPS */
741
+ );
742
+ }
743
+ var BInput = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1]]);
744
+
745
+ const CONTROLS_ALIGNMENTS = ["left", "right", "center"];
746
+ var _sfc_main = vue.defineComponent({
747
+ name: "BNumberinput",
748
+ components: {
749
+ BIcon,
750
+ BInput
751
+ },
752
+ mixins: [CompatFallthroughMixin, FormElementMixin],
753
+ inject: {
754
+ field: {
755
+ from: "BField",
756
+ default: false
757
+ }
758
+ },
759
+ props: {
760
+ modelValue: [Number, null],
761
+ min: {
762
+ type: [Number, String]
763
+ },
764
+ max: [Number, String],
765
+ step: [Number, String],
766
+ minStep: [Number, String],
767
+ exponential: [Boolean, Number],
768
+ disabled: Boolean,
769
+ type: {
770
+ type: String,
771
+ default: "is-primary"
772
+ },
773
+ editable: {
774
+ type: Boolean,
775
+ default: true
776
+ },
777
+ controls: {
778
+ type: Boolean,
779
+ default: true
780
+ },
781
+ controlsAlignment: {
782
+ type: String,
783
+ default: "center",
784
+ validator: (value) => {
785
+ return CONTROLS_ALIGNMENTS.indexOf(value) >= 0;
786
+ }
787
+ },
788
+ controlsRounded: {
789
+ type: Boolean,
790
+ default: false
791
+ },
792
+ controlsPosition: String,
793
+ placeholder: [Number, String],
794
+ ariaMinusLabel: String,
795
+ ariaPlusLabel: String,
796
+ longPress: {
797
+ type: Boolean,
798
+ default: true
799
+ },
800
+ // Native options to use in HTML5 validation
801
+ autocomplete: String
802
+ },
803
+ emits: {
804
+ /* eslint-disable @typescript-eslint/no-unused-vars */
805
+ blur: (_event) => true,
806
+ focus: (_event) => true,
807
+ "update:modelValue": (_value) => true
808
+ /* eslint-enable @typescript-eslint/no-unused-vars */
809
+ },
810
+ data() {
811
+ return {
812
+ newValue: this.modelValue,
813
+ newStep: this.step || 1,
814
+ newMinStep: this.minStep,
815
+ timesPressed: 1,
816
+ _elementRef: "input",
817
+ _$intervalRef: void 0
818
+ };
819
+ },
820
+ computed: {
821
+ computedValue: {
822
+ // getter has to include `string` in the return type so that the
823
+ // setter can accept `string`
824
+ get() {
825
+ return this.newValue;
826
+ },
827
+ set(value) {
828
+ let newValue = Number(value) === 0 ? 0 : Number(value) || null;
829
+ if (value === "" || value === void 0 || value === null) {
830
+ newValue = null;
831
+ }
832
+ this.newValue = newValue;
833
+ if (newValue === null) {
834
+ this.$emit("update:modelValue", newValue);
835
+ } else if (!isNaN(newValue)) {
836
+ this.$emit("update:modelValue", Number(newValue));
837
+ }
838
+ this.$nextTick(() => {
839
+ if (this.$refs.input) {
840
+ this.$refs.input.checkHtml5Validity();
841
+ }
842
+ });
843
+ }
844
+ },
845
+ controlsLeft() {
846
+ if (this.controls && this.controlsAlignment !== "right") {
847
+ return this.controlsAlignment === "left" ? ["minus", "plus"] : ["minus"];
848
+ }
849
+ return [];
850
+ },
851
+ controlsRight() {
852
+ if (this.controls && this.controlsAlignment !== "left") {
853
+ return this.controlsAlignment === "right" ? ["minus", "plus"] : ["plus"];
854
+ }
855
+ return [];
856
+ },
857
+ fieldClasses() {
858
+ return [
859
+ { "has-addons": this.controlsPosition === "compact" },
860
+ { "is-grouped": this.controlsPosition !== "compact" },
861
+ { "is-expanded": this.expanded }
862
+ ];
863
+ },
864
+ buttonClasses() {
865
+ return [this.type, this.size, { "is-rounded": this.controlsRounded }];
866
+ },
867
+ minNumber() {
868
+ return typeof this.min === "string" ? parseFloat(this.min) : this.min;
869
+ },
870
+ maxNumber() {
871
+ return typeof this.max === "string" ? parseFloat(this.max) : this.max;
872
+ },
873
+ stepNumber() {
874
+ if (this.newStep === "any") {
875
+ return 1;
876
+ }
877
+ return typeof this.newStep === "string" ? parseFloat(this.newStep) : this.newStep;
878
+ },
879
+ minStepNumber() {
880
+ if (this.newStep === "any" && typeof this.newMinStep === "undefined") {
881
+ return "any";
882
+ }
883
+ const step = typeof this.newMinStep !== "undefined" ? this.newMinStep : this.newStep;
884
+ return typeof step === "string" ? parseFloat(step) : step;
885
+ },
886
+ disabledMin() {
887
+ return +this.computedValue - this.stepNumber < this.minNumber;
888
+ },
889
+ disabledMax() {
890
+ return +this.computedValue + this.stepNumber > this.maxNumber;
891
+ },
892
+ stepDecimals() {
893
+ const step = this.minStepNumber.toString();
894
+ const index = step.indexOf(".");
895
+ if (index >= 0) {
896
+ return step.substring(index + 1).length;
897
+ }
898
+ return 0;
899
+ },
900
+ disabledOrUndefined() {
901
+ return this.disabled || void 0;
902
+ }
903
+ },
904
+ watch: {
905
+ /*
906
+ * When v-model is changed:
907
+ * 1. Set internal value.
908
+ */
909
+ modelValue: {
910
+ immediate: true,
911
+ handler(value) {
912
+ this.newValue = value;
913
+ }
914
+ },
915
+ step(value) {
916
+ this.newStep = value;
917
+ },
918
+ minStep(value) {
919
+ this.newMinStep = value;
920
+ }
921
+ },
922
+ methods: {
923
+ isDisabled(control) {
924
+ return this.disabled || (control === "plus" ? this.disabledMax : this.disabledMin);
925
+ },
926
+ decrement() {
927
+ if (this.computedValue === null || typeof this.computedValue === "undefined") {
928
+ if (this.maxNumber !== null && typeof this.maxNumber !== "undefined") {
929
+ this.computedValue = this.maxNumber;
930
+ return;
931
+ }
932
+ this.computedValue = 0;
933
+ }
934
+ if (typeof this.minNumber === "undefined" || +this.computedValue - this.stepNumber >= this.minNumber) {
935
+ const value = +this.computedValue - this.stepNumber;
936
+ this.computedValue = parseFloat(value.toFixed(this.stepDecimals));
937
+ }
938
+ },
939
+ increment() {
940
+ if (this.computedValue === null || typeof this.computedValue === "undefined" || +this.computedValue < this.minNumber) {
941
+ if (this.minNumber !== null && typeof this.minNumber !== "undefined") {
942
+ this.computedValue = this.minNumber;
943
+ return;
944
+ }
945
+ this.computedValue = 0;
946
+ }
947
+ if (typeof this.maxNumber === "undefined" || +this.computedValue + this.stepNumber <= this.maxNumber) {
948
+ const value = +this.computedValue + this.stepNumber;
949
+ this.computedValue = parseFloat(value.toFixed(this.stepDecimals));
950
+ }
951
+ },
952
+ onControlClick(event, inc) {
953
+ if (event.detail !== 0 || event.type !== "click") return;
954
+ if (inc) this.increment();
955
+ else this.decrement();
956
+ },
957
+ longPressTick(inc) {
958
+ if (inc) this.increment();
959
+ else this.decrement();
960
+ if (!this.longPress) return;
961
+ this._$intervalRef = setTimeout(() => {
962
+ this.longPressTick(inc);
963
+ }, this.exponential ? 250 / (+this.exponential * this.timesPressed++) : 250);
964
+ },
965
+ onStartLongPress(event, inc) {
966
+ if (event.button !== 0 && event.type !== "touchstart") return;
967
+ clearTimeout(this._$intervalRef);
968
+ this.longPressTick(inc);
969
+ },
970
+ onStopLongPress() {
971
+ if (!this._$intervalRef) return;
972
+ this.timesPressed = 1;
973
+ clearTimeout(this._$intervalRef);
974
+ this._$intervalRef = void 0;
975
+ }
976
+ },
977
+ mounted() {
978
+ if (this.field === this.$parent) {
979
+ this.$parent.wrapNumberinput({
980
+ controlsPosition: this.controlsPosition,
981
+ size: this.size
982
+ });
983
+ }
984
+ },
985
+ beforeUnmount() {
986
+ clearTimeout(this._$intervalRef);
987
+ }
988
+ });
989
+
990
+ const _hoisted_1 = ["disabled", "aria-label", "onMousedown", "onTouchstart", "onClick"];
991
+ const _hoisted_2 = ["disabled", "aria-label", "onMousedown", "onTouchstart", "onClick"];
992
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
993
+ const _component_b_icon = vue.resolveComponent("b-icon");
994
+ const _component_b_input = vue.resolveComponent("b-input");
995
+ return vue.openBlock(), vue.createElementBlock(
996
+ "div",
997
+ vue.mergeProps({
998
+ class: ["b-numberinput field", _ctx.fieldClasses]
999
+ }, _ctx.rootAttrs),
1000
+ [
1001
+ (vue.openBlock(true), vue.createElementBlock(
1002
+ vue.Fragment,
1003
+ null,
1004
+ vue.renderList(_ctx.controlsLeft, (control) => {
1005
+ return vue.openBlock(), vue.createElementBlock(
1006
+ "p",
1007
+ {
1008
+ key: control,
1009
+ class: vue.normalizeClass(["control", control]),
1010
+ onMouseup: _cache[0] || (_cache[0] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1011
+ onMouseleave: _cache[1] || (_cache[1] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1012
+ onTouchend: _cache[2] || (_cache[2] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1013
+ onTouchcancel: _cache[3] || (_cache[3] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args))
1014
+ },
1015
+ [
1016
+ vue.createElementVNode("button", {
1017
+ type: "button",
1018
+ class: vue.normalizeClass(["button", _ctx.buttonClasses]),
1019
+ disabled: _ctx.isDisabled(control) || void 0,
1020
+ "aria-label": control === "plus" ? _ctx.ariaPlusLabel : _ctx.ariaMinusLabel,
1021
+ onMousedown: ($event) => !_ctx.isDisabled(control) && _ctx.onStartLongPress($event, control === "plus"),
1022
+ onTouchstart: vue.withModifiers(($event) => !_ctx.isDisabled(control) && _ctx.onStartLongPress($event, control === "plus"), ["prevent"]),
1023
+ onClick: ($event) => !_ctx.isDisabled(control) && _ctx.onControlClick($event, control === "plus")
1024
+ }, [
1025
+ vue.createVNode(_component_b_icon, {
1026
+ both: "",
1027
+ icon: control,
1028
+ pack: _ctx.iconPack,
1029
+ size: _ctx.iconSize
1030
+ }, null, 8, ["icon", "pack", "size"])
1031
+ ], 42, _hoisted_1)
1032
+ ],
1033
+ 34
1034
+ /* CLASS, NEED_HYDRATION */
1035
+ );
1036
+ }),
1037
+ 128
1038
+ /* KEYED_FRAGMENT */
1039
+ )),
1040
+ vue.createVNode(_component_b_input, vue.mergeProps({
1041
+ type: "number",
1042
+ ref: "input",
1043
+ modelValue: _ctx.computedValue,
1044
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => _ctx.computedValue = $event)
1045
+ }, _ctx.fallthroughAttrs, {
1046
+ step: _ctx.minStepNumber,
1047
+ max: _ctx.max,
1048
+ min: _ctx.min,
1049
+ size: _ctx.size,
1050
+ disabled: _ctx.disabledOrUndefined,
1051
+ readonly: !_ctx.editable,
1052
+ loading: _ctx.loading,
1053
+ rounded: _ctx.rounded,
1054
+ icon: _ctx.icon,
1055
+ "icon-pack": _ctx.iconPack,
1056
+ autocomplete: _ctx.autocomplete,
1057
+ expanded: _ctx.expanded,
1058
+ placeholder: _ctx.placeholder,
1059
+ "use-html5-validation": _ctx.useHtml5Validation,
1060
+ onFocus: _cache[5] || (_cache[5] = ($event) => _ctx.$emit("focus", $event)),
1061
+ onBlur: _cache[6] || (_cache[6] = ($event) => _ctx.$emit("blur", $event))
1062
+ }), null, 16, ["modelValue", "step", "max", "min", "size", "disabled", "readonly", "loading", "rounded", "icon", "icon-pack", "autocomplete", "expanded", "placeholder", "use-html5-validation"]),
1063
+ (vue.openBlock(true), vue.createElementBlock(
1064
+ vue.Fragment,
1065
+ null,
1066
+ vue.renderList(_ctx.controlsRight, (control) => {
1067
+ return vue.openBlock(), vue.createElementBlock(
1068
+ "p",
1069
+ {
1070
+ key: control,
1071
+ class: vue.normalizeClass(["control", control]),
1072
+ onMouseup: _cache[7] || (_cache[7] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1073
+ onMouseleave: _cache[8] || (_cache[8] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1074
+ onTouchend: _cache[9] || (_cache[9] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args)),
1075
+ onTouchcancel: _cache[10] || (_cache[10] = (...args) => _ctx.onStopLongPress && _ctx.onStopLongPress(...args))
1076
+ },
1077
+ [
1078
+ vue.createElementVNode("button", {
1079
+ type: "button",
1080
+ class: vue.normalizeClass(["button", _ctx.buttonClasses]),
1081
+ disabled: _ctx.isDisabled(control) || void 0,
1082
+ "aria-label": control === "plus" ? _ctx.ariaPlusLabel : _ctx.ariaMinusLabel,
1083
+ onMousedown: ($event) => !_ctx.isDisabled(control) && _ctx.onStartLongPress($event, control === "plus"),
1084
+ onTouchstart: vue.withModifiers(($event) => !_ctx.isDisabled(control) && _ctx.onStartLongPress($event, control === "plus"), ["prevent"]),
1085
+ onClick: ($event) => !_ctx.isDisabled(control) && _ctx.onControlClick($event, control === "plus")
1086
+ }, [
1087
+ vue.createVNode(_component_b_icon, {
1088
+ both: "",
1089
+ icon: control,
1090
+ pack: _ctx.iconPack,
1091
+ size: _ctx.iconSize
1092
+ }, null, 8, ["icon", "pack", "size"])
1093
+ ], 42, _hoisted_2)
1094
+ ],
1095
+ 34
1096
+ /* CLASS, NEED_HYDRATION */
1097
+ );
1098
+ }),
1099
+ 128
1100
+ /* KEYED_FRAGMENT */
1101
+ ))
1102
+ ],
1103
+ 16
1104
+ /* FULL_PROPS */
1105
+ );
1106
+ }
1107
+ var Numberinput = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
1108
+
1109
+ const registerComponent = (Vue, component, name) => {
1110
+ const componentName = component.name;
1111
+ if (componentName == null) {
1112
+ throw new Error("Buefy.registerComponent: missing component name");
1113
+ }
1114
+ Vue.component(componentName, component);
1115
+ };
1116
+
1117
+ const Plugin = {
1118
+ install(Vue) {
1119
+ registerComponent(Vue, Numberinput);
1120
+ }
1121
+ };
1122
+
1123
+ exports.BNumberinput = Numberinput;
1124
+ exports.default = Plugin;
1125
+
1126
+ Object.defineProperty(exports, '__esModule', { value: true });
1127
+
1128
+ }));