quasar 2.14.5 → 2.14.7

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 (368) hide show
  1. package/dist/api/AddressbarColor.json +1 -22
  2. package/dist/api/AppFullscreen.json +1 -78
  3. package/dist/api/AppVisibility.json +1 -15
  4. package/dist/api/BottomSheet.json +1 -264
  5. package/dist/api/Brand.json +1 -49
  6. package/dist/api/ClosePopup.json +1 -21
  7. package/dist/api/Cookies.json +1 -190
  8. package/dist/api/Dark.json +1 -63
  9. package/dist/api/Dialog.json +1 -479
  10. package/dist/api/Intersection.json +1 -204
  11. package/dist/api/Lang.json +1 -18
  12. package/dist/api/Loading.json +1 -317
  13. package/dist/api/LoadingBar.json +1 -62
  14. package/dist/api/LocalStorage.json +1 -187
  15. package/dist/api/Meta.json +1 -6
  16. package/dist/api/Morph.json +1 -188
  17. package/dist/api/Mutation.json +1 -122
  18. package/dist/api/Notify.json +1 -697
  19. package/dist/api/Platform.json +1 -238
  20. package/dist/api/QAjaxBar.json +1 -117
  21. package/dist/api/QAvatar.json +1 -76
  22. package/dist/api/QBadge.json +1 -82
  23. package/dist/api/QBanner.json +1 -44
  24. package/dist/api/QBar.json +1 -28
  25. package/dist/api/QBreadcrumbs.json +1 -82
  26. package/dist/api/QBreadcrumbsEl.json +1 -162
  27. package/dist/api/QBtn.json +1 -354
  28. package/dist/api/QBtnDropdown.json +1 -560
  29. package/dist/api/QBtnGroup.json +1 -59
  30. package/dist/api/QBtnToggle.json +1 -263
  31. package/dist/api/QCard.json +1 -51
  32. package/dist/api/QCardActions.json +1 -34
  33. package/dist/api/QCardSection.json +1 -31
  34. package/dist/api/QCarousel.json +1 -421
  35. package/dist/api/QCarouselControl.json +1 -41
  36. package/dist/api/QCarouselSlide.json +1 -44
  37. package/dist/api/QChatMessage.json +1 -128
  38. package/dist/api/QCheckbox.json +1 -211
  39. package/dist/api/QChip.json +1 -232
  40. package/dist/api/QCircularProgress.json +1 -145
  41. package/dist/api/QColor.json +1 -150
  42. package/dist/api/QDate.json +1 -637
  43. package/dist/api/QDialog.json +1 -259
  44. package/dist/api/QDrawer.json +1 -272
  45. package/dist/api/QEditor.json +1 -485
  46. package/dist/api/QExpansionItem.json +1 -434
  47. package/dist/api/QFab.json +1 -352
  48. package/dist/api/QFabAction.json +1 -241
  49. package/dist/api/QField.json +1 -448
  50. package/dist/api/QFile.json +1 -643
  51. package/dist/api/QFooter.json +1 -60
  52. package/dist/api/QForm.json +1 -112
  53. package/dist/api/QFormChildMixin.json +1 -24
  54. package/dist/api/QHeader.json +1 -67
  55. package/dist/api/QIcon.json +1 -69
  56. package/dist/api/QImg.json +1 -279
  57. package/dist/api/QInfiniteScroll.json +1 -116
  58. package/dist/api/QInnerLoading.json +1 -117
  59. package/dist/api/QInput.json +1 -521
  60. package/dist/api/QIntersection.json +1 -112
  61. package/dist/api/QItem.json +1 -203
  62. package/dist/api/QItemLabel.json +1 -36
  63. package/dist/api/QItemSection.json +1 -38
  64. package/dist/api/QKnob.json +1 -197
  65. package/dist/api/QLayout.json +1 -100
  66. package/dist/api/QLinearProgress.json +1 -113
  67. package/dist/api/QList.json +1 -58
  68. package/dist/api/QMarkupTable.json +1 -64
  69. package/dist/api/QMenu.json +1 -337
  70. package/dist/api/QNoSsr.json +1 -38
  71. package/dist/api/QOptionGroup.json +1 -242
  72. package/dist/api/QPage.json +1 -42
  73. package/dist/api/QPageContainer.json +1 -11
  74. package/dist/api/QPageScroller.json +1 -68
  75. package/dist/api/QPageSticky.json +1 -44
  76. package/dist/api/QPagination.json +1 -376
  77. package/dist/api/QParallax.json +1 -74
  78. package/dist/api/QPopupEdit.json +1 -335
  79. package/dist/api/QPopupProxy.json +1 -168
  80. package/dist/api/QPullToRefresh.json +1 -91
  81. package/dist/api/QRadio.json +1 -163
  82. package/dist/api/QRange.json +1 -789
  83. package/dist/api/QRating.json +1 -186
  84. package/dist/api/QResizeObserver.json +1 -56
  85. package/dist/api/QResponsive.json +1 -26
  86. package/dist/api/QRouteTab.json +1 -225
  87. package/dist/api/QScrollArea.json +1 -354
  88. package/dist/api/QScrollObserver.json +1 -140
  89. package/dist/api/QSelect.json +1 -1387
  90. package/dist/api/QSeparator.json +1 -72
  91. package/dist/api/QSkeleton.json +1 -127
  92. package/dist/api/QSlideItem.json +1 -219
  93. package/dist/api/QSlideTransition.json +1 -33
  94. package/dist/api/QSlider.json +1 -687
  95. package/dist/api/QSpace.json +1 -6
  96. package/dist/api/QSpinner.json +1 -37
  97. package/dist/api/QSpinnerAudio.json +1 -30
  98. package/dist/api/QSpinnerBall.json +1 -30
  99. package/dist/api/QSpinnerBars.json +1 -30
  100. package/dist/api/QSpinnerBox.json +1 -30
  101. package/dist/api/QSpinnerClock.json +1 -30
  102. package/dist/api/QSpinnerComment.json +1 -30
  103. package/dist/api/QSpinnerCube.json +1 -30
  104. package/dist/api/QSpinnerDots.json +1 -30
  105. package/dist/api/QSpinnerFacebook.json +1 -30
  106. package/dist/api/QSpinnerGears.json +1 -30
  107. package/dist/api/QSpinnerGrid.json +1 -30
  108. package/dist/api/QSpinnerHearts.json +1 -30
  109. package/dist/api/QSpinnerHourglass.json +1 -30
  110. package/dist/api/QSpinnerInfinity.json +1 -30
  111. package/dist/api/QSpinnerIos.json +1 -30
  112. package/dist/api/QSpinnerOrbit.json +1 -30
  113. package/dist/api/QSpinnerOval.json +1 -30
  114. package/dist/api/QSpinnerPie.json +1 -30
  115. package/dist/api/QSpinnerPuff.json +1 -30
  116. package/dist/api/QSpinnerRadio.json +1 -30
  117. package/dist/api/QSpinnerRings.json +1 -30
  118. package/dist/api/QSpinnerTail.json +1 -30
  119. package/dist/api/QSplitter.json +1 -146
  120. package/dist/api/QStep.json +1 -167
  121. package/dist/api/QStepper.json +1 -340
  122. package/dist/api/QStepperNavigation.json +1 -11
  123. package/dist/api/QTab.json +1 -113
  124. package/dist/api/QTabPanel.json +1 -39
  125. package/dist/api/QTabPanels.json +1 -203
  126. package/dist/api/QTable.json +1 -2799
  127. package/dist/api/QTabs.json +1 -179
  128. package/dist/api/QTd.json +1 -31
  129. package/dist/api/QTh.json +1 -26
  130. package/dist/api/QTime.json +1 -317
  131. package/dist/api/QTimeline.json +1 -57
  132. package/dist/api/QTimelineEntry.json +1 -105
  133. package/dist/api/QToggle.json +1 -230
  134. package/dist/api/QToolbar.json +1 -18
  135. package/dist/api/QToolbarTitle.json +1 -18
  136. package/dist/api/QTooltip.json +1 -282
  137. package/dist/api/QTr.json +1 -26
  138. package/dist/api/QTree.json +1 -599
  139. package/dist/api/QUploader.json +1 -665
  140. package/dist/api/QUploaderAddTrigger.json +1 -6
  141. package/dist/api/QVideo.json +1 -83
  142. package/dist/api/QVirtualScroll.json +1 -260
  143. package/dist/api/Ripple.json +1 -115
  144. package/dist/api/Screen.json +1 -190
  145. package/dist/api/Scroll.json +1 -28
  146. package/dist/api/ScrollFire.json +1 -24
  147. package/dist/api/SessionStorage.json +1 -187
  148. package/dist/api/TouchHold.json +1 -81
  149. package/dist/api/TouchPan.json +1 -178
  150. package/dist/api/TouchRepeat.json +1 -142
  151. package/dist/api/TouchSwipe.json +1 -113
  152. package/dist/icon-set/bootstrap-icons.umd.prod.js +3 -2
  153. package/dist/icon-set/eva-icons.umd.prod.js +3 -2
  154. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +3 -2
  155. package/dist/icon-set/fontawesome-v5.umd.prod.js +3 -2
  156. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +3 -2
  157. package/dist/icon-set/fontawesome-v6.umd.prod.js +3 -2
  158. package/dist/icon-set/ionicons-v4.umd.prod.js +3 -2
  159. package/dist/icon-set/line-awesome.umd.prod.js +3 -2
  160. package/dist/icon-set/material-icons-outlined.umd.prod.js +3 -2
  161. package/dist/icon-set/material-icons-round.umd.prod.js +3 -2
  162. package/dist/icon-set/material-icons-sharp.umd.prod.js +3 -2
  163. package/dist/icon-set/material-icons.umd.prod.js +3 -2
  164. package/dist/icon-set/material-symbols-outlined.umd.prod.js +3 -2
  165. package/dist/icon-set/material-symbols-rounded.umd.prod.js +3 -2
  166. package/dist/icon-set/material-symbols-sharp.umd.prod.js +3 -2
  167. package/dist/icon-set/mdi-v3.umd.prod.js +3 -2
  168. package/dist/icon-set/mdi-v4.umd.prod.js +3 -2
  169. package/dist/icon-set/mdi-v5.umd.prod.js +3 -2
  170. package/dist/icon-set/mdi-v6.umd.prod.js +3 -2
  171. package/dist/icon-set/mdi-v7.umd.prod.js +3 -2
  172. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +3 -2
  173. package/dist/icon-set/svg-eva-icons.umd.prod.js +3 -2
  174. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +3 -2
  175. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +3 -2
  176. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +3 -2
  177. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +3 -2
  178. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +3 -2
  179. package/dist/icon-set/svg-line-awesome.umd.prod.js +3 -2
  180. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +3 -2
  181. package/dist/icon-set/svg-material-icons-round.umd.prod.js +3 -2
  182. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +3 -2
  183. package/dist/icon-set/svg-material-icons.umd.prod.js +3 -2
  184. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +3 -2
  185. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +3 -2
  186. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +3 -2
  187. package/dist/icon-set/svg-mdi-v6.umd.prod.js +3 -2
  188. package/dist/icon-set/svg-mdi-v7.umd.prod.js +3 -2
  189. package/dist/icon-set/svg-themify.umd.prod.js +3 -2
  190. package/dist/icon-set/themify.umd.prod.js +3 -2
  191. package/dist/lang/ar-TN.umd.prod.js +3 -2
  192. package/dist/lang/ar.umd.prod.js +3 -2
  193. package/dist/lang/az-Latn.umd.prod.js +3 -2
  194. package/dist/lang/bg.umd.prod.js +3 -2
  195. package/dist/lang/bn.umd.prod.js +3 -2
  196. package/dist/lang/ca.umd.prod.js +3 -2
  197. package/dist/lang/cs.umd.prod.js +3 -2
  198. package/dist/lang/da.umd.prod.js +3 -2
  199. package/dist/lang/de-CH.umd.prod.js +3 -2
  200. package/dist/lang/de-DE.umd.prod.js +3 -2
  201. package/dist/lang/de.umd.prod.js +3 -2
  202. package/dist/lang/el.umd.prod.js +3 -2
  203. package/dist/lang/en-GB.umd.prod.js +3 -2
  204. package/dist/lang/en-US.umd.prod.js +3 -2
  205. package/dist/lang/eo.umd.prod.js +3 -2
  206. package/dist/lang/es.umd.prod.js +3 -2
  207. package/dist/lang/et.umd.prod.js +3 -2
  208. package/dist/lang/eu.umd.prod.js +3 -2
  209. package/dist/lang/fa-IR.umd.prod.js +3 -2
  210. package/dist/lang/fa.umd.prod.js +3 -2
  211. package/dist/lang/fi.umd.prod.js +3 -2
  212. package/dist/lang/fr.umd.prod.js +3 -2
  213. package/dist/lang/gn.umd.prod.js +3 -2
  214. package/dist/lang/he.umd.prod.js +3 -2
  215. package/dist/lang/hi.umd.prod.js +3 -2
  216. package/dist/lang/hr.umd.prod.js +3 -2
  217. package/dist/lang/hu.umd.prod.js +3 -2
  218. package/dist/lang/id.umd.prod.js +3 -2
  219. package/dist/lang/is.umd.prod.js +3 -2
  220. package/dist/lang/it.umd.prod.js +3 -2
  221. package/dist/lang/ja.umd.prod.js +3 -2
  222. package/dist/lang/kk.umd.prod.js +3 -2
  223. package/dist/lang/km.umd.prod.js +3 -2
  224. package/dist/lang/ko-KR.umd.prod.js +3 -2
  225. package/dist/lang/kur-CKB.umd.prod.js +3 -2
  226. package/dist/lang/lt.umd.prod.js +3 -2
  227. package/dist/lang/lu.umd.prod.js +3 -2
  228. package/dist/lang/lv.umd.prod.js +3 -2
  229. package/dist/lang/mk.umd.prod.js +3 -2
  230. package/dist/lang/ml.umd.prod.js +3 -2
  231. package/dist/lang/mm.umd.prod.js +3 -2
  232. package/dist/lang/ms-MY.umd.prod.js +7 -0
  233. package/dist/lang/ms.umd.prod.js +3 -2
  234. package/dist/lang/my.umd.prod.js +3 -2
  235. package/dist/lang/nb-NO.umd.prod.js +3 -2
  236. package/dist/lang/nl.umd.prod.js +3 -2
  237. package/dist/lang/pl.umd.prod.js +3 -2
  238. package/dist/lang/pt-BR.umd.prod.js +3 -2
  239. package/dist/lang/pt.umd.prod.js +3 -2
  240. package/dist/lang/ro.umd.prod.js +3 -2
  241. package/dist/lang/ru.umd.prod.js +3 -2
  242. package/dist/lang/sk.umd.prod.js +3 -2
  243. package/dist/lang/sl.umd.prod.js +3 -2
  244. package/dist/lang/sm.umd.prod.js +3 -2
  245. package/dist/lang/sr-CYR.umd.prod.js +3 -2
  246. package/dist/lang/sr.umd.prod.js +3 -2
  247. package/dist/lang/sv.umd.prod.js +3 -2
  248. package/dist/lang/ta.umd.prod.js +3 -2
  249. package/dist/lang/th.umd.prod.js +3 -2
  250. package/dist/lang/tl.umd.prod.js +7 -0
  251. package/dist/lang/tr.umd.prod.js +3 -2
  252. package/dist/lang/ug.umd.prod.js +3 -2
  253. package/dist/lang/uk.umd.prod.js +3 -2
  254. package/dist/lang/uz-Cyrl.umd.prod.js +3 -2
  255. package/dist/lang/uz-Latn.umd.prod.js +3 -2
  256. package/dist/lang/vi.umd.prod.js +3 -2
  257. package/dist/lang/zh-CN.umd.prod.js +3 -2
  258. package/dist/lang/zh-TW.umd.prod.js +3 -2
  259. package/dist/quasar.addon.prod.css +1 -1
  260. package/dist/quasar.addon.rtl.prod.css +1 -1
  261. package/dist/quasar.cjs.prod.js +123 -2
  262. package/dist/quasar.css +5 -2
  263. package/dist/quasar.esm.js +16928 -26277
  264. package/dist/quasar.esm.prod.js +123 -2
  265. package/dist/quasar.prod.css +1 -1
  266. package/dist/quasar.rtl.css +5 -2
  267. package/dist/quasar.rtl.prod.css +1 -1
  268. package/dist/quasar.sass +9 -7
  269. package/dist/quasar.umd.js +16732 -26521
  270. package/dist/quasar.umd.prod.js +123 -2
  271. package/dist/transforms/api-list.json +1 -153
  272. package/dist/transforms/auto-import.json +1 -267
  273. package/dist/transforms/import-map.json +1 -181
  274. package/dist/transforms/loader-asset-urls.json +1 -60
  275. package/dist/types/api/dialog.d.ts +1 -1
  276. package/dist/types/api/qinput.d.ts +1 -1
  277. package/dist/types/api/qtable.d.ts +1 -1
  278. package/dist/types/api/qtree.d.ts +1 -1
  279. package/dist/types/api/quploader.d.ts +1 -1
  280. package/dist/types/api/validation.d.ts +1 -1
  281. package/dist/types/api/web-storage.d.ts +6 -6
  282. package/dist/types/feature-flag.d.ts +1 -1
  283. package/dist/types/globals.d.ts +22 -15
  284. package/dist/types/index.d.ts +48 -166
  285. package/dist/types/lang.d.ts +3 -3
  286. package/dist/types/plugin.d.ts +3 -1
  287. package/dist/types/ts-helpers.d.ts +3 -3
  288. package/dist/types/utils/colors.d.ts +1 -1
  289. package/dist/types/utils/date.d.ts +10 -10
  290. package/dist/types/utils/dom.d.ts +1 -1
  291. package/dist/types/utils/run-sequential-promises.d.ts +12 -12
  292. package/dist/types/utils/scroll.d.ts +5 -5
  293. package/dist/types/utils.d.ts +15 -13
  294. package/dist/vetur/quasar-attributes.json +1 -5890
  295. package/dist/vetur/quasar-tags.json +1 -2084
  296. package/dist/web-types/web-types.json +1 -19595
  297. package/lang/index.json +1 -266
  298. package/lang/ms-MY.js +101 -0
  299. package/lang/ms-MY.mjs +96 -0
  300. package/lang/tl.js +98 -0
  301. package/lang/tl.mjs +93 -0
  302. package/package.json +17 -21
  303. package/src/body.js +6 -14
  304. package/src/components/ajax-bar/QAjaxBar.js +1 -1
  305. package/src/components/breadcrumbs/QBreadcrumbs.js +1 -1
  306. package/src/components/btn/QBtn.js +6 -6
  307. package/src/components/btn-dropdown/QBtnDropdown.json +1 -1
  308. package/src/components/checkbox/use-checkbox.js +1 -1
  309. package/src/components/chip/QChip.js +1 -1
  310. package/src/components/color/QColor.js +4 -4
  311. package/src/components/color/QColor.sass +1 -1
  312. package/src/components/date/QDate.js +1 -1
  313. package/src/components/dialog/__tests__/DialogWrapper.vue +33 -0
  314. package/src/components/dialog/__tests__/QDialog.cy.js +450 -36
  315. package/src/components/drawer/QDrawer.js +1 -1
  316. package/src/components/drawer/QDrawer.json +1 -1
  317. package/src/components/field/QField.sass +2 -1
  318. package/src/components/file/QFile.js +2 -2
  319. package/src/components/footer/QFooter.js +2 -2
  320. package/src/components/form/QForm.js +3 -3
  321. package/src/components/header/QHeader.js +1 -1
  322. package/src/components/img/QImg.js +47 -39
  323. package/src/components/img/QImg.json +9 -0
  324. package/src/components/input/use-mask.js +3 -3
  325. package/src/components/menu/QMenu.json +1 -1
  326. package/src/components/page-sticky/use-page-sticky.js +4 -4
  327. package/src/components/popup-edit/QPopupEdit.js +1 -1
  328. package/src/components/scroll-area/QScrollArea.js +1 -1
  329. package/src/components/select/QSelect.js +9 -9
  330. package/src/components/table/QTable.sass +2 -2
  331. package/src/components/table/QTd.js +1 -1
  332. package/src/components/table/QTh.js +1 -1
  333. package/src/components/tabs/QTabs.js +3 -3
  334. package/src/components/time/QTime.js +3 -3
  335. package/src/components/tooltip/QTooltip.js +4 -2
  336. package/src/components/tooltip/QTooltip.json +6 -0
  337. package/src/components/tree/QTree.js +1 -1
  338. package/src/components/uploader/uploader-core.js +2 -2
  339. package/src/components/uploader/xhr-uploader-plugin.js +1 -1
  340. package/src/components/virtual-scroll/use-virtual-scroll.js +3 -3
  341. package/src/composables/private/__tests__/use-model-toggle.cy.js +43 -3
  342. package/src/composables/private/use-anchor.js +1 -1
  343. package/src/composables/private/use-key-composition.js +1 -1
  344. package/src/composables/private/use-panel.js +1 -1
  345. package/src/composables/private/use-portal.js +1 -1
  346. package/src/composables/private/use-router-link.js +1 -1
  347. package/src/css/core/colors.sass +0 -2
  348. package/src/css/core/visibility.sass +2 -1
  349. package/src/css/normalize.sass +1 -1
  350. package/src/directives/Intersection.json +13 -0
  351. package/src/directives/TouchPan.js +1 -1
  352. package/src/history.js +1 -1
  353. package/src/index.umd.js +5 -1
  354. package/src/lang.js +1 -1
  355. package/src/plugins/BottomSheet.json +1 -1
  356. package/src/plugins/Cookies.js +1 -1
  357. package/src/plugins/Dark.js +1 -1
  358. package/src/plugins/Loading.js +1 -1
  359. package/src/plugins/LoadingBar.js +1 -1
  360. package/src/plugins/Notify.js +4 -4
  361. package/src/plugins/Platform.js +111 -93
  362. package/src/plugins/Screen.js +1 -1
  363. package/src/utils/event.js +1 -1
  364. package/src/utils/frame-debounce.js +1 -1
  365. package/src/utils/morph.js +1 -1
  366. package/src/utils/private/click-outside.js +1 -1
  367. package/src/utils/private/escape-key.js +1 -1
  368. package/src/utils/private/focusout.js +1 -1
@@ -1,665 +1 @@
1
- {
2
- "type": "component",
3
- "meta": {
4
- "docsUrl": "https://v2.quasar.dev/vue-components/uploader"
5
- },
6
- "props": {
7
- "factory": {
8
- "type": "Function",
9
- "tsType": "QUploaderFactoryFn",
10
- "desc": "Function which should return an Object or a Promise resolving with an Object; For best performance, reference it from your scope and do not define it inline",
11
- "params": {
12
- "files": {
13
- "type": "Array",
14
- "desc": "Uploaded files"
15
- }
16
- },
17
- "returns": {
18
- "type": [
19
- "Object",
20
- "Promise<any>"
21
- ],
22
- "desc": "Optional configuration for the upload process; You can override QUploader props in this Object (url, method, headers, formFields, fieldName, withCredentials, sendRaw); Props of these Object can also be Functions with the form of (file[s]) => value"
23
- },
24
- "category": "upload"
25
- },
26
- "url": {
27
- "type": [
28
- "String",
29
- "Function"
30
- ],
31
- "desc": "URL or path to the server which handles the upload. Takes String or factory function, which returns String. Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
32
- "examples": [
33
- "https://example.com/path",
34
- "files => `https://example.com?count=${files.length}`"
35
- ],
36
- "params": {
37
- "files": {
38
- "type": "Array",
39
- "desc": "Uploaded files"
40
- }
41
- },
42
- "returns": {
43
- "type": "String",
44
- "desc": "URL or path to the server which handles the upload"
45
- },
46
- "category": "upload"
47
- },
48
- "method": {
49
- "type": [
50
- "String",
51
- "Function"
52
- ],
53
- "default": "POST",
54
- "desc": "HTTP method to use for upload; Takes String or factory function which returns a String; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
55
- "values": [
56
- "POST",
57
- "PUT"
58
- ],
59
- "examples": [
60
- "POST",
61
- ":method=\"files => files.length > 10 ? 'POST' : 'PUT'\""
62
- ],
63
- "params": {
64
- "files": {
65
- "type": "Array",
66
- "desc": "Uploaded files"
67
- }
68
- },
69
- "returns": {
70
- "type": "String",
71
- "desc": "HTTP method to use for upload"
72
- },
73
- "category": "upload",
74
- "required": false
75
- },
76
- "field-name": {
77
- "type": [
78
- "String",
79
- "Function"
80
- ],
81
- "desc": "Field name for each file upload; This goes into the following header: 'Content-Disposition: form-data; name=\"__HERE__\"; filename=\"somefile.png\"; If using a function then for best performance, reference it from your scope and do not define it inline",
82
- "default": "(file) => file.name",
83
- "examples": [
84
- "backgroundFile",
85
- ":field-name=\"(file) => 'background' + file.name\""
86
- ],
87
- "params": {
88
- "files": {
89
- "type": "File",
90
- "desc": "The current file being processed"
91
- }
92
- },
93
- "returns": {
94
- "type": "String",
95
- "desc": "Field name for the current file upload"
96
- },
97
- "category": "upload",
98
- "required": false
99
- },
100
- "headers": {
101
- "type": [
102
- "Array",
103
- "Function"
104
- ],
105
- "desc": "Array or a factory function which returns an array; Array consists of objects with header definitions; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
106
- "definition": {
107
- "name": {
108
- "type": "String",
109
- "required": true,
110
- "desc": "Header name",
111
- "examples": [
112
- "Content-Type",
113
- "Accept",
114
- "Cache-Control"
115
- ]
116
- },
117
- "value": {
118
- "type": "String",
119
- "required": true,
120
- "desc": "Header value",
121
- "examples": [
122
- "application/json",
123
- "no-cache"
124
- ]
125
- }
126
- },
127
- "examples": [
128
- "[{name: 'Content-Type', value: 'application/json'}, {name: 'Accept', value: 'application/json'}]",
129
- "() => [{name: 'X-Custom-Timestamp', value: Date.now()}]",
130
- "files => [{name: 'X-Custom-Count', value: files.length}]"
131
- ],
132
- "params": {
133
- "files": {
134
- "type": "Array",
135
- "desc": "Uploaded files"
136
- }
137
- },
138
- "returns": {
139
- "type": "String",
140
- "desc": "An array consisting of objects with header definitions"
141
- },
142
- "category": "upload"
143
- },
144
- "form-fields": {
145
- "type": [
146
- "Array",
147
- "Function"
148
- ],
149
- "desc": "Array or a factory function which returns an array; Array consists of objects with additional fields definitions (used by Form to be uploaded); Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
150
- "definition": {
151
- "name": {
152
- "type": "String",
153
- "required": true,
154
- "desc": "Field name",
155
- "examples": [
156
- "Some field"
157
- ]
158
- },
159
- "value": {
160
- "type": "String",
161
- "required": true,
162
- "desc": "Field value",
163
- "examples": [
164
- "some-value"
165
- ]
166
- }
167
- },
168
- "examples": [
169
- "[{name: 'my-field', value: 'my-value'}]",
170
- "() => [{name: 'my-field', value: 'my-value'}]",
171
- "files => [{name: 'my-field', value: 'my-value' + files.length}]"
172
- ],
173
- "params": {
174
- "files": {
175
- "type": "Array",
176
- "desc": "Uploaded files"
177
- }
178
- },
179
- "returns": {
180
- "type": "String",
181
- "desc": "An array consists of objects with additional fields definitions (used by Form to be uploaded)"
182
- },
183
- "category": "upload"
184
- },
185
- "with-credentials": {
186
- "type": [
187
- "Boolean",
188
- "Function"
189
- ],
190
- "desc": "Sets withCredentials to true on the XHR that manages the upload; Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
191
- "examples": [
192
- "with-credentials",
193
- ":with-credentials=\"files => ...\""
194
- ],
195
- "params": {
196
- "files": {
197
- "type": "Array",
198
- "desc": "Uploaded files"
199
- }
200
- },
201
- "returns": {
202
- "type": "Boolean",
203
- "desc": "If true, withCredentials will be set to true on the XHR that manages the upload"
204
- },
205
- "category": "upload"
206
- },
207
- "send-raw": {
208
- "type": [
209
- "Boolean",
210
- "Function"
211
- ],
212
- "desc": "Send raw files without wrapping into a Form(); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
213
- "examples": [
214
- "send-raw",
215
- ":send-raw=\"files => ...\""
216
- ],
217
- "params": {
218
- "files": {
219
- "type": "Array",
220
- "desc": "Uploaded files"
221
- }
222
- },
223
- "returns": {
224
- "type": "Boolean",
225
- "desc": "If true, raw files will get sent without wrapping into a Form()"
226
- },
227
- "category": "upload"
228
- },
229
- "batch": {
230
- "type": [
231
- "Boolean",
232
- "Function"
233
- ],
234
- "desc": "Upload files in batch (in one XHR request); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
235
- "examples": [
236
- "files => files.length > 10"
237
- ],
238
- "params": {
239
- "files": {
240
- "type": "Array",
241
- "desc": "Uploaded files"
242
- }
243
- },
244
- "returns": {
245
- "type": "Boolean",
246
- "desc": "If true, files will be uploaded in a batch (in one XHR request)"
247
- },
248
- "category": "upload"
249
- },
250
- "multiple": {
251
- "type": "Boolean",
252
- "desc": "Allow multiple file uploads",
253
- "category": "behavior"
254
- },
255
- "accept": {
256
- "type": "String",
257
- "desc": "Comma separated list of unique file type specifiers. Maps to 'accept' attribute of native input type=file element",
258
- "examples": [
259
- ".jpg, .pdf, image/*",
260
- "image/jpeg, .pdf"
261
- ],
262
- "category": "behavior"
263
- },
264
- "capture": {
265
- "type": "String",
266
- "desc": "Optionally, specify that a new file should be captured, and which device should be used to capture that new media of a type defined by the 'accept' prop. Maps to 'capture' attribute of native input type=file element",
267
- "values": [
268
- "user",
269
- "environment"
270
- ],
271
- "category": "behavior"
272
- },
273
- "max-file-size": {
274
- "type": [
275
- "Number",
276
- "String"
277
- ],
278
- "desc": "Maximum size of individual file in bytes",
279
- "examples": [
280
- 1024,
281
- 1048576
282
- ],
283
- "category": "behavior"
284
- },
285
- "max-total-size": {
286
- "type": [
287
- "Number",
288
- "String"
289
- ],
290
- "desc": "Maximum size of all files combined in bytes",
291
- "category": "behavior"
292
- },
293
- "max-files": {
294
- "type": [
295
- "Number",
296
- "String"
297
- ],
298
- "desc": "Maximum number of files to contain",
299
- "category": "behavior"
300
- },
301
- "filter": {
302
- "type": "Function",
303
- "desc": "Custom filter for added files; Only files that pass this filter will be added to the queue and uploaded; For best performance, reference it from your scope and do not define it inline",
304
- "params": {
305
- "files": {
306
- "type": [
307
- "FileList",
308
- "Array"
309
- ],
310
- "desc": "Candidate files to be added to queue"
311
- }
312
- },
313
- "returns": {
314
- "type": "Array",
315
- "desc": "Filtered files to be added to queue"
316
- },
317
- "examples": [
318
- ":filter=\"files => files.filter(file => file.size === 1024)\""
319
- ],
320
- "category": "behavior"
321
- },
322
- "label": {
323
- "type": "String",
324
- "desc": "Label for the uploader",
325
- "examples": [
326
- "Upload photo here"
327
- ],
328
- "category": "content"
329
- },
330
- "color": {
331
- "type": "String",
332
- "tsType": "NamedColor",
333
- "desc": "Color name for component from the Quasar Color Palette",
334
- "examples": [
335
- "primary",
336
- "teal",
337
- "teal-10"
338
- ],
339
- "category": "style"
340
- },
341
- "text-color": {
342
- "type": "String",
343
- "tsType": "NamedColor",
344
- "desc": "Overrides text color (if needed); Color name from the Quasar Color Palette",
345
- "examples": [
346
- "primary",
347
- "teal",
348
- "teal-10"
349
- ],
350
- "category": "style"
351
- },
352
- "dark": {
353
- "type": [
354
- "Boolean",
355
- "null"
356
- ],
357
- "default": null,
358
- "desc": "Notify the component that the background is a dark color",
359
- "category": "style",
360
- "required": false
361
- },
362
- "square": {
363
- "type": "Boolean",
364
- "desc": "Removes border-radius so borders are squared",
365
- "category": "style"
366
- },
367
- "flat": {
368
- "type": "Boolean",
369
- "desc": "Applies a 'flat' design (no default shadow)",
370
- "category": "style"
371
- },
372
- "bordered": {
373
- "type": "Boolean",
374
- "desc": "Applies a default border to the component",
375
- "category": "style"
376
- },
377
- "no-thumbnails": {
378
- "type": "Boolean",
379
- "desc": "Don't display thumbnails for image files",
380
- "category": "content"
381
- },
382
- "auto-upload": {
383
- "type": "Boolean",
384
- "desc": "Upload files immediately when added",
385
- "category": "behavior"
386
- },
387
- "hide-upload-btn": {
388
- "type": "Boolean",
389
- "desc": "Don't show the upload button",
390
- "category": "behavior"
391
- },
392
- "disable": {
393
- "type": "Boolean",
394
- "desc": "Put component in disabled mode",
395
- "category": "state"
396
- },
397
- "readonly": {
398
- "type": "Boolean",
399
- "desc": "Put component in readonly mode",
400
- "category": "state"
401
- }
402
- },
403
- "slots": {
404
- "header": {
405
- "desc": "Slot for custom header; Scope is the QUploader instance itself",
406
- "scope": {
407
- "...self": {
408
- "type": "Component",
409
- "tsType": "QUploader",
410
- "desc": "QUploader instance"
411
- }
412
- }
413
- },
414
- "list": {
415
- "desc": "Slot for custom list; Scope is the QUploader instance itself",
416
- "scope": {
417
- "...self": {
418
- "type": "Component",
419
- "tsType": "QUploader",
420
- "desc": "QUploader instance"
421
- }
422
- }
423
- }
424
- },
425
- "events": {
426
- "uploaded": {
427
- "desc": "Emitted when file or batch of files is uploaded",
428
- "params": {
429
- "info": {
430
- "type": "Object",
431
- "desc": "Object containing information about the event",
432
- "definition": {
433
- "files": {
434
- "type": "Array",
435
- "required": true,
436
- "desc": "Uploaded files"
437
- },
438
- "xhr": {
439
- "type": "Object",
440
- "required": true,
441
- "desc": "XMLHttpRequest that has been used to upload this batch of files"
442
- }
443
- }
444
- }
445
- }
446
- },
447
- "failed": {
448
- "desc": "Emitted when file or batch of files has encountered error while uploading",
449
- "params": {
450
- "info": {
451
- "type": "Object",
452
- "desc": "Object containing information about the event",
453
- "definition": {
454
- "files": {
455
- "type": "Array",
456
- "required": true,
457
- "desc": "Files which encountered error"
458
- },
459
- "xhr": {
460
- "type": "Object",
461
- "required": true,
462
- "desc": "XMLHttpRequest that has been used to upload this batch of files"
463
- }
464
- }
465
- }
466
- }
467
- },
468
- "uploading": {
469
- "desc": "Emitted when file or batch of files started uploading",
470
- "params": {
471
- "info": {
472
- "type": "Object",
473
- "desc": "Object containing information about the event",
474
- "definition": {
475
- "files": {
476
- "type": "Array",
477
- "required": true,
478
- "desc": "Files which are now uploading"
479
- },
480
- "xhr": {
481
- "type": "Object",
482
- "required": true,
483
- "desc": "XMLHttpRequest used for uploading"
484
- }
485
- }
486
- }
487
- }
488
- },
489
- "factory-failed": {
490
- "desc": "Emitted when factory function is supplied with a Promise which is rejected",
491
- "params": {
492
- "err": {
493
- "type": "Error",
494
- "desc": "Error object which is the Promise rejection reason"
495
- },
496
- "files": {
497
- "type": "Array",
498
- "desc": "Files which were to get uploaded"
499
- }
500
- }
501
- },
502
- "rejected": {
503
- "desc": "Emitted after files are picked and some do not pass the validation props (accept, max-file-size, max-total-size, filter, etc)",
504
- "params": {
505
- "rejectedEntries": {
506
- "type": "Array",
507
- "tsType": "QRejectedEntry",
508
- "desc": "Array of { failedPropValidation: string, file: File } Objects for files that do not pass the validation"
509
- }
510
- }
511
- },
512
- "added": {
513
- "desc": "Emitted when files are added into the list",
514
- "params": {
515
- "files": {
516
- "type": "Array",
517
- "desc": "Array of files that were added"
518
- }
519
- }
520
- },
521
- "removed": {
522
- "desc": "Emitted when files are removed from the list",
523
- "params": {
524
- "files": {
525
- "type": "Array",
526
- "desc": "Array of files that were removed"
527
- }
528
- }
529
- },
530
- "start": {
531
- "desc": "Started working"
532
- },
533
- "finish": {
534
- "desc": "Finished working (regardless of success or fail)"
535
- }
536
- },
537
- "methods": {
538
- "pickFiles": {
539
- "desc": "Trigger the file picker dialog; The event must come from a user interaction event handler",
540
- "params": {
541
- "evt": {
542
- "type": "Event",
543
- "desc": "JS event object of the original user interaction handler",
544
- "required": true
545
- }
546
- }
547
- },
548
- "addFiles": {
549
- "desc": "Manually add files to the queue",
550
- "params": {
551
- "files": {
552
- "type": "Array",
553
- "desc": "Must be an array of instances of JS File type",
554
- "required": true
555
- }
556
- }
557
- },
558
- "upload": {
559
- "desc": "Start uploading (same as clicking the upload button)"
560
- },
561
- "abort": {
562
- "desc": "Abort upload of all files (same as clicking the abort button)"
563
- },
564
- "reset": {
565
- "desc": "Resets uploader to default; Empties queue, aborts current uploads"
566
- },
567
- "removeUploadedFiles": {
568
- "desc": "Removes already uploaded files from the list"
569
- },
570
- "removeQueuedFiles": {
571
- "desc": "Remove files that are waiting for upload to start (same as clicking the left clear button)"
572
- },
573
- "removeFile": {
574
- "desc": "Remove specified file from the queue",
575
- "params": {
576
- "file": {
577
- "type": "File",
578
- "desc": "The file to remove",
579
- "required": true
580
- }
581
- }
582
- },
583
- "updateFileStatus": {
584
- "desc": "Update the status of a file",
585
- "params": {
586
- "file": {
587
- "type": "File",
588
- "desc": "The file to update",
589
- "required": true
590
- },
591
- "status": {
592
- "type": "String",
593
- "desc": "Status of file",
594
- "values": [
595
- "idle",
596
- "failed",
597
- "uploading",
598
- "uploaded"
599
- ],
600
- "required": true
601
- },
602
- "uploadedSize": {
603
- "type": "Number",
604
- "desc": "The number of uploaded bytes of the file; Is required explicitly only when status is NOT 'uploaded'",
605
- "required": true
606
- }
607
- }
608
- },
609
- "isAlive": {
610
- "desc": "Is the component alive (activated but not unmounted); Useful to determine if you still need to compute anything going further",
611
- "returns": {
612
- "type": "Boolean",
613
- "desc": "If true, the current component is still activated and mounted"
614
- }
615
- }
616
- },
617
- "computedProps": {
618
- "files": {
619
- "type": "Array",
620
- "desc": "List of all files"
621
- },
622
- "queuedFiles": {
623
- "type": "Array",
624
- "desc": "List of files that are waiting to be uploaded"
625
- },
626
- "uploadedFiles": {
627
- "type": "Array",
628
- "desc": "List of files that have been uploaded"
629
- },
630
- "uploadedSize": {
631
- "type": "Number",
632
- "desc": "Size of all uploaded files in bytes"
633
- },
634
- "uploadSizeLabel": {
635
- "type": "String",
636
- "desc": "Label for the size total of all files",
637
- "examples": [
638
- "1.0MB"
639
- ]
640
- },
641
- "uploadProgressLabel": {
642
- "type": "String",
643
- "desc": "Label for the upload progress (in %)",
644
- "examples": [
645
- "52.76%"
646
- ]
647
- },
648
- "canAddFiles": {
649
- "type": "Boolean",
650
- "desc": "Whether new files can be added to the list"
651
- },
652
- "canUpload": {
653
- "type": "Boolean",
654
- "desc": "Whether the files can be uploaded"
655
- },
656
- "isBusy": {
657
- "type": "Boolean",
658
- "desc": "The component state is set as busy; User should not be able to interact with the component"
659
- },
660
- "isUploading": {
661
- "type": "Boolean",
662
- "desc": "The component is uploading files"
663
- }
664
- }
665
- }
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/uploader"},"props":{"factory":{"type":"Function","tsType":"QUploaderFactoryFn","desc":"Function which should return an Object or a Promise resolving with an Object; For best performance, reference it from your scope and do not define it inline","params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":["Object","Promise<any>"],"desc":"Optional configuration for the upload process; You can override QUploader props in this Object (url, method, headers, formFields, fieldName, withCredentials, sendRaw); Props of these Object can also be Functions with the form of (file[s]) => value"},"category":"upload"},"url":{"type":["String","Function"],"desc":"URL or path to the server which handles the upload. Takes String or factory function, which returns String. Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","examples":["https://example.com/path","files => `https://example.com?count=${files.length}`"],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"String","desc":"URL or path to the server which handles the upload"},"category":"upload"},"method":{"type":["String","Function"],"default":"POST","desc":"HTTP method to use for upload; Takes String or factory function which returns a String; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","values":["POST","PUT"],"examples":["POST",":method=\"files => files.length > 10 ? 'POST' : 'PUT'\""],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"String","desc":"HTTP method to use for upload"},"category":"upload","required":false},"field-name":{"type":["String","Function"],"desc":"Field name for each file upload; This goes into the following header: 'Content-Disposition: form-data; name=\"__HERE__\"; filename=\"somefile.png\"; If using a function then for best performance, reference it from your scope and do not define it inline","default":"(file) => file.name","examples":["backgroundFile",":field-name=\"(file) => 'background' + file.name\""],"params":{"files":{"type":"File","desc":"The current file being processed"}},"returns":{"type":"String","desc":"Field name for the current file upload"},"category":"upload","required":false},"headers":{"type":["Array","Function"],"desc":"Array or a factory function which returns an array; Array consists of objects with header definitions; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","definition":{"name":{"type":"String","required":true,"desc":"Header name","examples":["Content-Type","Accept","Cache-Control"]},"value":{"type":"String","required":true,"desc":"Header value","examples":["application/json","no-cache"]}},"examples":["[{name: 'Content-Type', value: 'application/json'}, {name: 'Accept', value: 'application/json'}]","() => [{name: 'X-Custom-Timestamp', value: Date.now()}]","files => [{name: 'X-Custom-Count', value: files.length}]"],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"String","desc":"An array consisting of objects with header definitions"},"category":"upload"},"form-fields":{"type":["Array","Function"],"desc":"Array or a factory function which returns an array; Array consists of objects with additional fields definitions (used by Form to be uploaded); Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","definition":{"name":{"type":"String","required":true,"desc":"Field name","examples":["Some field"]},"value":{"type":"String","required":true,"desc":"Field value","examples":["some-value"]}},"examples":["[{name: 'my-field', value: 'my-value'}]","() => [{name: 'my-field', value: 'my-value'}]","files => [{name: 'my-field', value: 'my-value' + files.length}]"],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"String","desc":"An array consists of objects with additional fields definitions (used by Form to be uploaded)"},"category":"upload"},"with-credentials":{"type":["Boolean","Function"],"desc":"Sets withCredentials to true on the XHR that manages the upload; Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","examples":["with-credentials",":with-credentials=\"files => ...\""],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"Boolean","desc":"If true, withCredentials will be set to true on the XHR that manages the upload"},"category":"upload"},"send-raw":{"type":["Boolean","Function"],"desc":"Send raw files without wrapping into a Form(); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","examples":["send-raw",":send-raw=\"files => ...\""],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"Boolean","desc":"If true, raw files will get sent without wrapping into a Form()"},"category":"upload"},"batch":{"type":["Boolean","Function"],"desc":"Upload files in batch (in one XHR request); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline","examples":["files => files.length > 10"],"params":{"files":{"type":"Array","desc":"Uploaded files"}},"returns":{"type":"Boolean","desc":"If true, files will be uploaded in a batch (in one XHR request)"},"category":"upload"},"multiple":{"type":"Boolean","desc":"Allow multiple file uploads","category":"behavior"},"accept":{"type":"String","desc":"Comma separated list of unique file type specifiers. Maps to 'accept' attribute of native input type=file element","examples":[".jpg, .pdf, image/*","image/jpeg, .pdf"],"category":"behavior"},"capture":{"type":"String","desc":"Optionally, specify that a new file should be captured, and which device should be used to capture that new media of a type defined by the 'accept' prop. Maps to 'capture' attribute of native input type=file element","values":["user","environment"],"category":"behavior"},"max-file-size":{"type":["Number","String"],"desc":"Maximum size of individual file in bytes","examples":[1024,1048576],"category":"behavior"},"max-total-size":{"type":["Number","String"],"desc":"Maximum size of all files combined in bytes","category":"behavior"},"max-files":{"type":["Number","String"],"desc":"Maximum number of files to contain","category":"behavior"},"filter":{"type":"Function","desc":"Custom filter for added files; Only files that pass this filter will be added to the queue and uploaded; For best performance, reference it from your scope and do not define it inline","params":{"files":{"type":["FileList","Array"],"desc":"Candidate files to be added to queue"}},"returns":{"type":"Array","desc":"Filtered files to be added to queue"},"examples":[":filter=\"files => files.filter(file => file.size === 1024)\""],"category":"behavior"},"label":{"type":"String","desc":"Label for the uploader","examples":["Upload photo here"],"category":"content"},"color":{"type":"String","tsType":"NamedColor","desc":"Color name for component from the Quasar Color Palette","examples":["primary","teal","teal-10"],"category":"style"},"text-color":{"type":"String","tsType":"NamedColor","desc":"Overrides text color (if needed); Color name from the Quasar Color Palette","examples":["primary","teal","teal-10"],"category":"style"},"dark":{"type":["Boolean","null"],"default":null,"desc":"Notify the component that the background is a dark color","category":"style","required":false},"square":{"type":"Boolean","desc":"Removes border-radius so borders are squared","category":"style"},"flat":{"type":"Boolean","desc":"Applies a 'flat' design (no default shadow)","category":"style"},"bordered":{"type":"Boolean","desc":"Applies a default border to the component","category":"style"},"no-thumbnails":{"type":"Boolean","desc":"Don't display thumbnails for image files","category":"content"},"auto-upload":{"type":"Boolean","desc":"Upload files immediately when added","category":"behavior"},"hide-upload-btn":{"type":"Boolean","desc":"Don't show the upload button","category":"behavior"},"disable":{"type":"Boolean","desc":"Put component in disabled mode","category":"state"},"readonly":{"type":"Boolean","desc":"Put component in readonly mode","category":"state"}},"slots":{"header":{"desc":"Slot for custom header; Scope is the QUploader instance itself","scope":{"...self":{"type":"Component","tsType":"QUploader","desc":"QUploader instance"}}},"list":{"desc":"Slot for custom list; Scope is the QUploader instance itself","scope":{"...self":{"type":"Component","tsType":"QUploader","desc":"QUploader instance"}}}},"events":{"uploaded":{"desc":"Emitted when file or batch of files is uploaded","params":{"info":{"type":"Object","desc":"Object containing information about the event","definition":{"files":{"type":"Array","required":true,"desc":"Uploaded files"},"xhr":{"type":"Object","required":true,"desc":"XMLHttpRequest that has been used to upload this batch of files"}}}}},"failed":{"desc":"Emitted when file or batch of files has encountered error while uploading","params":{"info":{"type":"Object","desc":"Object containing information about the event","definition":{"files":{"type":"Array","required":true,"desc":"Files which encountered error"},"xhr":{"type":"Object","required":true,"desc":"XMLHttpRequest that has been used to upload this batch of files"}}}}},"uploading":{"desc":"Emitted when file or batch of files started uploading","params":{"info":{"type":"Object","desc":"Object containing information about the event","definition":{"files":{"type":"Array","required":true,"desc":"Files which are now uploading"},"xhr":{"type":"Object","required":true,"desc":"XMLHttpRequest used for uploading"}}}}},"factory-failed":{"desc":"Emitted when factory function is supplied with a Promise which is rejected","params":{"err":{"type":"Error","desc":"Error object which is the Promise rejection reason"},"files":{"type":"Array","desc":"Files which were to get uploaded"}}},"rejected":{"desc":"Emitted after files are picked and some do not pass the validation props (accept, max-file-size, max-total-size, filter, etc)","params":{"rejectedEntries":{"type":"Array","tsType":"QRejectedEntry","desc":"Array of { failedPropValidation: string, file: File } Objects for files that do not pass the validation"}}},"added":{"desc":"Emitted when files are added into the list","params":{"files":{"type":"Array","desc":"Array of files that were added"}}},"removed":{"desc":"Emitted when files are removed from the list","params":{"files":{"type":"Array","desc":"Array of files that were removed"}}},"start":{"desc":"Started working"},"finish":{"desc":"Finished working (regardless of success or fail)"}},"methods":{"pickFiles":{"desc":"Trigger the file picker dialog; The event must come from a user interaction event handler","params":{"evt":{"type":"Event","desc":"JS event object of the original user interaction handler","required":true}}},"addFiles":{"desc":"Manually add files to the queue","params":{"files":{"type":"Array","desc":"Must be an array of instances of JS File type","required":true}}},"upload":{"desc":"Start uploading (same as clicking the upload button)"},"abort":{"desc":"Abort upload of all files (same as clicking the abort button)"},"reset":{"desc":"Resets uploader to default; Empties queue, aborts current uploads"},"removeUploadedFiles":{"desc":"Removes already uploaded files from the list"},"removeQueuedFiles":{"desc":"Remove files that are waiting for upload to start (same as clicking the left clear button)"},"removeFile":{"desc":"Remove specified file from the queue","params":{"file":{"type":"File","desc":"The file to remove","required":true}}},"updateFileStatus":{"desc":"Update the status of a file","params":{"file":{"type":"File","desc":"The file to update","required":true},"status":{"type":"String","desc":"Status of file","values":["idle","failed","uploading","uploaded"],"required":true},"uploadedSize":{"type":"Number","desc":"The number of uploaded bytes of the file; Is required explicitly only when status is NOT 'uploaded'","required":true}}},"isAlive":{"desc":"Is the component alive (activated but not unmounted); Useful to determine if you still need to compute anything going further","returns":{"type":"Boolean","desc":"If true, the current component is still activated and mounted"}}},"computedProps":{"files":{"type":"Array","desc":"List of all files"},"queuedFiles":{"type":"Array","desc":"List of files that are waiting to be uploaded"},"uploadedFiles":{"type":"Array","desc":"List of files that have been uploaded"},"uploadedSize":{"type":"Number","desc":"Size of all uploaded files in bytes"},"uploadSizeLabel":{"type":"String","desc":"Label for the size total of all files","examples":["1.0MB"]},"uploadProgressLabel":{"type":"String","desc":"Label for the upload progress (in %)","examples":["52.76%"]},"canAddFiles":{"type":"Boolean","desc":"Whether new files can be added to the list"},"canUpload":{"type":"Boolean","desc":"Whether the files can be uploaded"},"isBusy":{"type":"Boolean","desc":"The component state is set as busy; User should not be able to interact with the component"},"isUploading":{"type":"Boolean","desc":"The component is uploading files"}}}