quasar 2.15.1 → 2.15.3

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 (795) hide show
  1. package/dist/api/AddressbarColor.json +1 -1
  2. package/dist/api/AppFullscreen.json +1 -1
  3. package/dist/api/BottomSheet.json +1 -1
  4. package/dist/api/ClosePopup.json +1 -1
  5. package/dist/api/Cookies.json +1 -1
  6. package/dist/api/Dark.json +1 -1
  7. package/dist/api/Dialog.json +1 -1
  8. package/dist/api/IconSet.json +1 -0
  9. package/dist/api/Intersection.json +1 -1
  10. package/dist/api/Lang.json +1 -1
  11. package/dist/api/Loading.json +1 -1
  12. package/dist/api/LoadingBar.json +1 -1
  13. package/dist/api/LocalStorage.json +1 -1
  14. package/dist/api/Morph.json +1 -1
  15. package/dist/api/Mutation.json +1 -1
  16. package/dist/api/Notify.json +1 -1
  17. package/dist/api/Platform.json +1 -1
  18. package/dist/api/QAjaxBar.json +1 -1
  19. package/dist/api/QAvatar.json +1 -1
  20. package/dist/api/QBadge.json +1 -1
  21. package/dist/api/QBanner.json +1 -1
  22. package/dist/api/QBar.json +1 -1
  23. package/dist/api/QBreadcrumbs.json +1 -1
  24. package/dist/api/QBreadcrumbsEl.json +1 -1
  25. package/dist/api/QBtn.json +1 -1
  26. package/dist/api/QBtnDropdown.json +1 -1
  27. package/dist/api/QBtnToggle.json +1 -1
  28. package/dist/api/QCard.json +1 -1
  29. package/dist/api/QCardActions.json +1 -1
  30. package/dist/api/QCardSection.json +1 -1
  31. package/dist/api/QCarousel.json +1 -1
  32. package/dist/api/QCarouselControl.json +1 -1
  33. package/dist/api/QCarouselSlide.json +1 -1
  34. package/dist/api/QChatMessage.json +1 -1
  35. package/dist/api/QCheckbox.json +1 -1
  36. package/dist/api/QChip.json +1 -1
  37. package/dist/api/QCircularProgress.json +1 -1
  38. package/dist/api/QColor.json +1 -1
  39. package/dist/api/QDate.json +1 -1
  40. package/dist/api/QDialog.json +1 -1
  41. package/dist/api/QDrawer.json +1 -1
  42. package/dist/api/QEditor.json +1 -1
  43. package/dist/api/QExpansionItem.json +1 -1
  44. package/dist/api/QFab.json +1 -1
  45. package/dist/api/QFabAction.json +1 -1
  46. package/dist/api/QField.json +1 -1
  47. package/dist/api/QFile.json +1 -1
  48. package/dist/api/QFooter.json +1 -1
  49. package/dist/api/QForm.json +1 -1
  50. package/dist/api/QFormChildMixin.json +1 -1
  51. package/dist/api/QHeader.json +1 -1
  52. package/dist/api/QIcon.json +1 -1
  53. package/dist/api/QImg.json +1 -1
  54. package/dist/api/QInfiniteScroll.json +1 -1
  55. package/dist/api/QInnerLoading.json +1 -1
  56. package/dist/api/QInput.json +1 -1
  57. package/dist/api/QIntersection.json +1 -1
  58. package/dist/api/QItem.json +1 -1
  59. package/dist/api/QKnob.json +1 -1
  60. package/dist/api/QLayout.json +1 -1
  61. package/dist/api/QLinearProgress.json +1 -1
  62. package/dist/api/QList.json +1 -1
  63. package/dist/api/QMarkupTable.json +1 -1
  64. package/dist/api/QMenu.json +1 -1
  65. package/dist/api/QNoSsr.json +1 -1
  66. package/dist/api/QOptionGroup.json +1 -1
  67. package/dist/api/QPage.json +1 -1
  68. package/dist/api/QPageScroller.json +1 -1
  69. package/dist/api/QPageSticky.json +1 -1
  70. package/dist/api/QPagination.json +1 -1
  71. package/dist/api/QParallax.json +1 -1
  72. package/dist/api/QPopupEdit.json +1 -1
  73. package/dist/api/QPopupProxy.json +1 -1
  74. package/dist/api/QPullToRefresh.json +1 -1
  75. package/dist/api/QRadio.json +1 -1
  76. package/dist/api/QRange.json +1 -1
  77. package/dist/api/QRating.json +1 -1
  78. package/dist/api/QResizeObserver.json +1 -1
  79. package/dist/api/QResponsive.json +1 -1
  80. package/dist/api/QRouteTab.json +1 -1
  81. package/dist/api/QScrollArea.json +1 -1
  82. package/dist/api/QScrollObserver.json +1 -1
  83. package/dist/api/QSelect.json +1 -1
  84. package/dist/api/QSeparator.json +1 -1
  85. package/dist/api/QSkeleton.json +1 -1
  86. package/dist/api/QSlideItem.json +1 -1
  87. package/dist/api/QSlideTransition.json +1 -1
  88. package/dist/api/QSlider.json +1 -1
  89. package/dist/api/QSpinner.json +1 -1
  90. package/dist/api/QSpinnerAudio.json +1 -1
  91. package/dist/api/QSpinnerBall.json +1 -1
  92. package/dist/api/QSpinnerBars.json +1 -1
  93. package/dist/api/QSpinnerBox.json +1 -1
  94. package/dist/api/QSpinnerClock.json +1 -1
  95. package/dist/api/QSpinnerComment.json +1 -1
  96. package/dist/api/QSpinnerCube.json +1 -1
  97. package/dist/api/QSpinnerDots.json +1 -1
  98. package/dist/api/QSpinnerFacebook.json +1 -1
  99. package/dist/api/QSpinnerGears.json +1 -1
  100. package/dist/api/QSpinnerGrid.json +1 -1
  101. package/dist/api/QSpinnerHearts.json +1 -1
  102. package/dist/api/QSpinnerHourglass.json +1 -1
  103. package/dist/api/QSpinnerInfinity.json +1 -1
  104. package/dist/api/QSpinnerIos.json +1 -1
  105. package/dist/api/QSpinnerOrbit.json +1 -1
  106. package/dist/api/QSpinnerOval.json +1 -1
  107. package/dist/api/QSpinnerPie.json +1 -1
  108. package/dist/api/QSpinnerPuff.json +1 -1
  109. package/dist/api/QSpinnerRadio.json +1 -1
  110. package/dist/api/QSpinnerRings.json +1 -1
  111. package/dist/api/QSpinnerTail.json +1 -1
  112. package/dist/api/QSplitter.json +1 -1
  113. package/dist/api/QStep.json +1 -1
  114. package/dist/api/QStepper.json +1 -1
  115. package/dist/api/QTab.json +1 -1
  116. package/dist/api/QTabPanel.json +1 -1
  117. package/dist/api/QTabPanels.json +1 -1
  118. package/dist/api/QTable.json +1 -1
  119. package/dist/api/QTabs.json +1 -1
  120. package/dist/api/QTd.json +1 -1
  121. package/dist/api/QTh.json +1 -1
  122. package/dist/api/QTime.json +1 -1
  123. package/dist/api/QTimeline.json +1 -1
  124. package/dist/api/QTimelineEntry.json +1 -1
  125. package/dist/api/QToggle.json +1 -1
  126. package/dist/api/QTooltip.json +1 -1
  127. package/dist/api/QTr.json +1 -1
  128. package/dist/api/QTree.json +1 -1
  129. package/dist/api/QUploader.json +1 -1
  130. package/dist/api/QVideo.json +1 -1
  131. package/dist/api/QVirtualScroll.json +1 -1
  132. package/dist/api/Ripple.json +1 -1
  133. package/dist/api/Screen.json +1 -1
  134. package/dist/api/Scroll.json +1 -1
  135. package/dist/api/ScrollFire.json +1 -1
  136. package/dist/api/SessionStorage.json +1 -1
  137. package/dist/api/TouchHold.json +1 -1
  138. package/dist/api/TouchPan.json +1 -1
  139. package/dist/api/TouchRepeat.json +1 -1
  140. package/dist/api/TouchSwipe.json +1 -1
  141. package/dist/icon-set/bootstrap-icons.umd.prod.js +2 -2
  142. package/dist/icon-set/eva-icons.umd.prod.js +2 -2
  143. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +2 -2
  144. package/dist/icon-set/fontawesome-v5.umd.prod.js +2 -2
  145. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +2 -2
  146. package/dist/icon-set/fontawesome-v6.umd.prod.js +2 -2
  147. package/dist/icon-set/ionicons-v4.umd.prod.js +2 -2
  148. package/dist/icon-set/line-awesome.umd.prod.js +2 -2
  149. package/dist/icon-set/material-icons-outlined.umd.prod.js +2 -2
  150. package/dist/icon-set/material-icons-round.umd.prod.js +2 -2
  151. package/dist/icon-set/material-icons-sharp.umd.prod.js +2 -2
  152. package/dist/icon-set/material-icons.umd.prod.js +2 -2
  153. package/dist/icon-set/material-symbols-outlined.umd.prod.js +2 -2
  154. package/dist/icon-set/material-symbols-rounded.umd.prod.js +2 -2
  155. package/dist/icon-set/material-symbols-sharp.umd.prod.js +2 -2
  156. package/dist/icon-set/mdi-v3.umd.prod.js +2 -2
  157. package/dist/icon-set/mdi-v4.umd.prod.js +2 -2
  158. package/dist/icon-set/mdi-v5.umd.prod.js +2 -2
  159. package/dist/icon-set/mdi-v6.umd.prod.js +2 -2
  160. package/dist/icon-set/mdi-v7.umd.prod.js +2 -2
  161. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +2 -2
  162. package/dist/icon-set/svg-eva-icons.umd.prod.js +2 -2
  163. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +2 -2
  164. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +2 -2
  165. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +2 -2
  166. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +2 -2
  167. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +2 -2
  168. package/dist/icon-set/svg-line-awesome.umd.prod.js +2 -2
  169. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +2 -2
  170. package/dist/icon-set/svg-material-icons-round.umd.prod.js +2 -2
  171. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +2 -2
  172. package/dist/icon-set/svg-material-icons.umd.prod.js +2 -2
  173. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +2 -2
  174. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +2 -2
  175. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +2 -2
  176. package/dist/icon-set/svg-mdi-v6.umd.prod.js +2 -2
  177. package/dist/icon-set/svg-mdi-v7.umd.prod.js +2 -2
  178. package/dist/icon-set/svg-themify.umd.prod.js +2 -2
  179. package/dist/icon-set/themify.umd.prod.js +2 -2
  180. package/dist/lang/ar-TN.umd.prod.js +2 -2
  181. package/dist/lang/ar.umd.prod.js +2 -2
  182. package/dist/lang/az-Latn.umd.prod.js +2 -2
  183. package/dist/lang/bg.umd.prod.js +2 -2
  184. package/dist/lang/bn.umd.prod.js +2 -2
  185. package/dist/lang/ca.umd.prod.js +2 -2
  186. package/dist/lang/cs.umd.prod.js +2 -2
  187. package/dist/lang/da.umd.prod.js +2 -2
  188. package/dist/lang/de-CH.umd.prod.js +2 -2
  189. package/dist/lang/de-DE.umd.prod.js +2 -2
  190. package/dist/lang/de.umd.prod.js +2 -2
  191. package/dist/lang/el.umd.prod.js +2 -2
  192. package/dist/lang/en-GB.umd.prod.js +2 -2
  193. package/dist/lang/en-US.umd.prod.js +2 -2
  194. package/dist/lang/eo.umd.prod.js +2 -2
  195. package/dist/lang/es.umd.prod.js +2 -2
  196. package/dist/lang/et.umd.prod.js +2 -2
  197. package/dist/lang/eu.umd.prod.js +2 -2
  198. package/dist/lang/fa-IR.umd.prod.js +2 -2
  199. package/dist/lang/fa.umd.prod.js +2 -2
  200. package/dist/lang/fi.umd.prod.js +2 -2
  201. package/dist/lang/fr.umd.prod.js +2 -2
  202. package/dist/lang/gn.umd.prod.js +2 -2
  203. package/dist/lang/he.umd.prod.js +2 -2
  204. package/dist/lang/hi.umd.prod.js +2 -2
  205. package/dist/lang/hr.umd.prod.js +2 -2
  206. package/dist/lang/hu.umd.prod.js +2 -2
  207. package/dist/lang/id.umd.prod.js +2 -2
  208. package/dist/lang/is.umd.prod.js +2 -2
  209. package/dist/lang/it.umd.prod.js +2 -2
  210. package/dist/lang/ja.umd.prod.js +2 -2
  211. package/dist/lang/kk.umd.prod.js +2 -2
  212. package/dist/lang/km.umd.prod.js +2 -2
  213. package/dist/lang/ko-KR.umd.prod.js +2 -2
  214. package/dist/lang/kur-CKB.umd.prod.js +2 -2
  215. package/dist/lang/lt.umd.prod.js +2 -2
  216. package/dist/lang/lu.umd.prod.js +2 -2
  217. package/dist/lang/lv.umd.prod.js +2 -2
  218. package/dist/lang/mk.umd.prod.js +2 -2
  219. package/dist/lang/ml.umd.prod.js +2 -2
  220. package/dist/lang/mm.umd.prod.js +2 -2
  221. package/dist/lang/ms-MY.umd.prod.js +2 -2
  222. package/dist/lang/ms.umd.prod.js +2 -2
  223. package/dist/lang/my.umd.prod.js +2 -2
  224. package/dist/lang/nb-NO.umd.prod.js +2 -2
  225. package/dist/lang/nl.umd.prod.js +2 -2
  226. package/dist/lang/pl.umd.prod.js +2 -2
  227. package/dist/lang/pt-BR.umd.prod.js +2 -2
  228. package/dist/lang/pt.umd.prod.js +2 -2
  229. package/dist/lang/ro.umd.prod.js +2 -2
  230. package/dist/lang/ru.umd.prod.js +2 -2
  231. package/dist/lang/sk.umd.prod.js +2 -2
  232. package/dist/lang/sl.umd.prod.js +2 -2
  233. package/dist/lang/sm.umd.prod.js +2 -2
  234. package/dist/lang/sr-CYR.umd.prod.js +2 -2
  235. package/dist/lang/sr.umd.prod.js +2 -2
  236. package/dist/lang/sv.umd.prod.js +2 -2
  237. package/dist/lang/ta.umd.prod.js +2 -2
  238. package/dist/lang/th.umd.prod.js +2 -2
  239. package/dist/lang/tl.umd.prod.js +2 -2
  240. package/dist/lang/tr.umd.prod.js +2 -2
  241. package/dist/lang/ug.umd.prod.js +2 -2
  242. package/dist/lang/uk.umd.prod.js +2 -2
  243. package/dist/lang/uz-Cyrl.umd.prod.js +2 -2
  244. package/dist/lang/uz-Latn.umd.prod.js +2 -2
  245. package/dist/lang/vi.umd.prod.js +2 -2
  246. package/dist/lang/zh-CN.umd.prod.js +2 -2
  247. package/dist/lang/zh-TW.umd.prod.js +2 -2
  248. package/dist/quasar.addon.prod.css +1 -1
  249. package/dist/quasar.addon.rtl.prod.css +1 -1
  250. package/dist/quasar.cjs.prod.js +19 -19
  251. package/dist/quasar.css +53 -53
  252. package/dist/quasar.esm.js +634 -559
  253. package/dist/quasar.esm.prod.js +14 -14
  254. package/dist/quasar.prod.css +1 -1
  255. package/dist/quasar.rtl.css +65 -65
  256. package/dist/quasar.rtl.prod.css +1 -1
  257. package/dist/quasar.sass +37 -37
  258. package/dist/quasar.umd.js +619 -544
  259. package/dist/quasar.umd.prod.js +23 -23
  260. package/dist/transforms/api-list.json +1 -1
  261. package/dist/transforms/import-map.json +1 -1
  262. package/dist/types/config.d.ts +3 -3
  263. package/dist/types/globals.d.ts +1 -1
  264. package/dist/types/index.d.ts +2245 -336
  265. package/dist/vetur/quasar-attributes.json +1 -1
  266. package/dist/vetur/quasar-tags.json +1 -1
  267. package/dist/web-types/web-types.json +1 -1
  268. package/lang/uk.js +1 -1
  269. package/lang/uk.mjs +1 -1
  270. package/package.json +28 -42
  271. package/src/api.extends.json +23 -21
  272. package/src/components/ajax-bar/QAjaxBar.js +2 -2
  273. package/src/components/ajax-bar/QAjaxBar.json +6 -5
  274. package/src/components/avatar/QAvatar.js +3 -3
  275. package/src/components/avatar/QAvatar.json +2 -2
  276. package/src/components/avatar/QAvatar.test.js +232 -0
  277. package/src/components/badge/QBadge.js +2 -2
  278. package/src/components/badge/QBadge.json +2 -2
  279. package/src/components/badge/QBadge.test.js +267 -0
  280. package/src/components/banner/QBanner.js +3 -3
  281. package/src/components/banner/QBanner.test.js +161 -0
  282. package/src/components/bar/QBar.js +3 -3
  283. package/src/components/bar/QBar.test.js +80 -0
  284. package/src/components/breadcrumbs/QBreadcrumbs.js +6 -4
  285. package/src/components/breadcrumbs/QBreadcrumbs.json +7 -7
  286. package/src/components/breadcrumbs/QBreadcrumbs.test.js +198 -0
  287. package/src/components/breadcrumbs/QBreadcrumbsEl.js +3 -3
  288. package/src/components/breadcrumbs/QBreadcrumbsEl.json +5 -5
  289. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +564 -0
  290. package/src/components/btn/QBtn.js +12 -6
  291. package/src/components/btn/QBtn.json +3 -2
  292. package/src/components/btn/QBtn.test.js +1529 -0
  293. package/src/components/btn/use-btn.js +8 -6
  294. package/src/components/btn/use-btn.json +14 -14
  295. package/src/components/btn/use-btn.test.js +134 -0
  296. package/src/components/btn-dropdown/QBtnDropdown.js +9 -10
  297. package/src/components/btn-dropdown/QBtnDropdown.json +16 -16
  298. package/src/components/btn-group/QBtnGroup.js +2 -2
  299. package/src/components/btn-toggle/QBtnToggle.js +3 -3
  300. package/src/components/btn-toggle/QBtnToggle.json +8 -8
  301. package/src/components/card/QCard.js +3 -3
  302. package/src/components/card/QCard.json +2 -2
  303. package/src/components/card/QCardActions.js +3 -3
  304. package/src/components/card/QCardActions.json +3 -3
  305. package/src/components/card/QCardSection.js +2 -2
  306. package/src/components/card/QCardSection.json +2 -2
  307. package/src/components/carousel/QCarousel.js +6 -6
  308. package/src/components/carousel/QCarousel.json +10 -10
  309. package/src/components/carousel/QCarouselControl.js +2 -2
  310. package/src/components/carousel/QCarouselControl.json +6 -6
  311. package/src/components/carousel/QCarouselSlide.js +3 -3
  312. package/src/components/carousel/QCarouselSlide.json +5 -8
  313. package/src/components/chat/QChatMessage.js +2 -2
  314. package/src/components/chat/QChatMessage.json +9 -9
  315. package/src/components/checkbox/QCheckbox.js +1 -1
  316. package/src/components/checkbox/use-checkbox.js +8 -8
  317. package/src/components/checkbox/use-checkbox.json +18 -16
  318. package/src/components/chip/QChip.js +7 -6
  319. package/src/components/chip/QChip.json +10 -8
  320. package/src/components/chip/QChip.test.js +902 -0
  321. package/src/components/circular-progress/QCircularProgress.js +5 -5
  322. package/src/components/circular-progress/QCircularProgress.json +9 -9
  323. package/src/components/circular-progress/{use-circular-progress.js → circular-progress.js} +1 -1
  324. package/src/components/circular-progress/circular-progress.test.js +14 -0
  325. package/src/components/color/QColor.js +10 -10
  326. package/src/components/color/QColor.json +9 -11
  327. package/src/components/date/QDate.js +9 -9
  328. package/src/components/date/QDate.json +42 -35
  329. package/src/components/date/use-datetime.js +2 -2
  330. package/src/components/date/use-datetime.json +8 -8
  331. package/src/components/dialog/QDialog.js +33 -22
  332. package/src/components/dialog/QDialog.json +18 -16
  333. package/src/components/dialog/QDialog.test.js +1264 -0
  334. package/src/components/dialog/test/DialogWrapper.vue +17 -0
  335. package/src/components/drawer/QDrawer.js +12 -12
  336. package/src/components/drawer/QDrawer.json +15 -16
  337. package/src/components/editor/QEditor.js +9 -9
  338. package/src/components/editor/QEditor.json +41 -49
  339. package/src/components/editor/editor-caret.js +1 -1
  340. package/src/components/editor/editor-utils.js +3 -3
  341. package/src/components/expansion-item/QExpansionItem.js +9 -9
  342. package/src/components/expansion-item/QExpansionItem.json +15 -15
  343. package/src/components/fab/QFab.js +5 -5
  344. package/src/components/fab/QFab.json +5 -5
  345. package/src/components/fab/QFabAction.js +4 -4
  346. package/src/components/fab/QFabAction.json +5 -6
  347. package/src/components/fab/use-fab.json +10 -12
  348. package/src/components/field/QField.js +2 -2
  349. package/src/components/field/QField.json +12 -8
  350. package/src/components/file/QFile.js +9 -9
  351. package/src/components/file/QFile.json +19 -14
  352. package/src/components/footer/QFooter.js +4 -4
  353. package/src/components/footer/QFooter.json +3 -5
  354. package/src/components/form/QForm.js +6 -6
  355. package/src/components/form/QForm.json +12 -7
  356. package/src/components/form/QFormChildMixin.js +2 -2
  357. package/src/components/form/QFormChildMixin.json +5 -4
  358. package/src/components/header/QHeader.js +3 -3
  359. package/src/components/header/QHeader.json +4 -6
  360. package/src/components/icon/QIcon.js +3 -3
  361. package/src/components/icon/QIcon.json +3 -3
  362. package/src/components/img/QImg.js +6 -6
  363. package/src/components/img/QImg.json +46 -60
  364. package/src/components/infinite-scroll/QInfiniteScroll.js +6 -6
  365. package/src/components/infinite-scroll/QInfiniteScroll.json +23 -10
  366. package/src/components/inner-loading/QInnerLoading.js +3 -3
  367. package/src/components/inner-loading/QInnerLoading.json +6 -8
  368. package/src/components/input/QInput.js +9 -9
  369. package/src/components/input/QInput.json +25 -14
  370. package/src/components/input/use-mask.js +1 -1
  371. package/src/components/input/use-mask.json +1 -1
  372. package/src/components/intersection/QIntersection.js +4 -4
  373. package/src/components/intersection/QIntersection.json +7 -7
  374. package/src/components/item/QItem.js +6 -6
  375. package/src/components/item/QItem.json +6 -6
  376. package/src/components/item/QItemLabel.js +2 -2
  377. package/src/components/item/QItemSection.js +2 -2
  378. package/src/components/item/QList.js +3 -3
  379. package/src/components/item/QList.json +2 -2
  380. package/src/components/knob/QKnob.js +7 -7
  381. package/src/components/knob/QKnob.json +7 -7
  382. package/src/components/layout/QLayout.js +5 -5
  383. package/src/components/layout/QLayout.json +3 -5
  384. package/src/components/linear-progress/QLinearProgress.js +4 -4
  385. package/src/components/linear-progress/QLinearProgress.json +3 -3
  386. package/src/components/markup-table/QMarkupTable.js +3 -3
  387. package/src/components/markup-table/QMarkupTable.json +3 -3
  388. package/src/components/menu/QMenu.js +20 -20
  389. package/src/components/menu/QMenu.json +16 -12
  390. package/src/components/no-ssr/QNoSsr.js +3 -3
  391. package/src/components/no-ssr/QNoSsr.json +3 -3
  392. package/src/components/option-group/QOptionGroup.js +2 -2
  393. package/src/components/option-group/QOptionGroup.json +15 -17
  394. package/src/components/page/QPage.js +3 -3
  395. package/src/components/page/QPage.json +2 -2
  396. package/src/components/page/QPageContainer.js +3 -3
  397. package/src/components/page-scroller/QPageScroller.js +2 -2
  398. package/src/components/page-scroller/QPageScroller.json +3 -3
  399. package/src/components/page-sticky/QPageSticky.js +1 -1
  400. package/src/components/page-sticky/QPageSticky.json +5 -5
  401. package/src/components/page-sticky/use-page-sticky.js +2 -2
  402. package/src/components/pagination/QPagination.js +4 -4
  403. package/src/components/pagination/QPagination.json +24 -22
  404. package/src/components/parallax/QParallax.js +6 -6
  405. package/src/components/parallax/QParallax.json +5 -5
  406. package/src/components/popup-edit/QPopupEdit.js +4 -4
  407. package/src/components/popup-edit/QPopupEdit.json +47 -33
  408. package/src/components/popup-proxy/QPopupProxy.js +3 -3
  409. package/src/components/popup-proxy/QPopupProxy.json +11 -7
  410. package/src/components/pull-to-refresh/QPullToRefresh.js +6 -6
  411. package/src/components/pull-to-refresh/QPullToRefresh.json +6 -2
  412. package/src/components/radio/QRadio.js +9 -9
  413. package/src/components/radio/QRadio.json +9 -7
  414. package/src/components/range/QRange.js +3 -3
  415. package/src/components/range/QRange.json +3 -7
  416. package/src/components/rating/QRating.js +6 -6
  417. package/src/components/rating/QRating.json +17 -20
  418. package/src/components/resize-observer/QResizeObserver.js +3 -3
  419. package/src/components/resize-observer/QResizeObserver.json +4 -3
  420. package/src/components/responsive/QResponsive.js +3 -3
  421. package/src/components/responsive/QResponsive.json +1 -1
  422. package/src/components/scroll-area/QScrollArea.js +7 -7
  423. package/src/components/scroll-area/QScrollArea.json +20 -14
  424. package/src/components/scroll-observer/QScrollObserver.js +3 -3
  425. package/src/components/scroll-observer/QScrollObserver.json +9 -6
  426. package/src/components/select/QSelect.js +10 -10
  427. package/src/components/select/QSelect.json +89 -72
  428. package/src/components/select/__tests__/QSelect.cy.js +21 -1
  429. package/src/components/separator/QSeparator.js +2 -2
  430. package/src/components/separator/QSeparator.json +3 -5
  431. package/src/components/skeleton/QSkeleton.js +3 -3
  432. package/src/components/skeleton/QSkeleton.json +14 -16
  433. package/src/components/slide-item/QSlideItem.js +5 -5
  434. package/src/components/slide-item/QSlideItem.json +5 -3
  435. package/src/components/slide-transition/QSlideTransition.js +1 -1
  436. package/src/components/slide-transition/QSlideTransition.json +1 -1
  437. package/src/components/slider/QSlider.js +4 -4
  438. package/src/components/slider/QSlider.json +2 -4
  439. package/src/components/slider/use-slider.js +7 -7
  440. package/src/components/slider/use-slider.json +19 -23
  441. package/src/components/space/QSpace.js +1 -1
  442. package/src/components/space/QSpace.test.js +17 -0
  443. package/src/components/spinner/QSpinner.js +1 -1
  444. package/src/components/spinner/QSpinner.json +2 -2
  445. package/src/components/spinner/QSpinnerAudio.js +1 -1
  446. package/src/components/spinner/QSpinnerAudio.json +1 -1
  447. package/src/components/spinner/QSpinnerBall.js +1 -1
  448. package/src/components/spinner/QSpinnerBall.json +1 -1
  449. package/src/components/spinner/QSpinnerBars.js +1 -1
  450. package/src/components/spinner/QSpinnerBars.json +1 -1
  451. package/src/components/spinner/QSpinnerBox.js +1 -1
  452. package/src/components/spinner/QSpinnerBox.json +1 -1
  453. package/src/components/spinner/QSpinnerClock.js +1 -1
  454. package/src/components/spinner/QSpinnerClock.json +1 -1
  455. package/src/components/spinner/QSpinnerComment.js +1 -1
  456. package/src/components/spinner/QSpinnerComment.json +1 -1
  457. package/src/components/spinner/QSpinnerCube.js +1 -1
  458. package/src/components/spinner/QSpinnerCube.json +1 -1
  459. package/src/components/spinner/QSpinnerDots.js +1 -1
  460. package/src/components/spinner/QSpinnerDots.json +1 -1
  461. package/src/components/spinner/QSpinnerFacebook.js +1 -1
  462. package/src/components/spinner/QSpinnerFacebook.json +1 -1
  463. package/src/components/spinner/QSpinnerGears.js +1 -1
  464. package/src/components/spinner/QSpinnerGears.json +1 -1
  465. package/src/components/spinner/QSpinnerGrid.js +1 -1
  466. package/src/components/spinner/QSpinnerGrid.json +1 -1
  467. package/src/components/spinner/QSpinnerHearts.js +1 -1
  468. package/src/components/spinner/QSpinnerHearts.json +1 -1
  469. package/src/components/spinner/QSpinnerHourglass.js +1 -1
  470. package/src/components/spinner/QSpinnerHourglass.json +1 -1
  471. package/src/components/spinner/QSpinnerInfinity.js +1 -1
  472. package/src/components/spinner/QSpinnerInfinity.json +1 -1
  473. package/src/components/spinner/QSpinnerIos.js +1 -1
  474. package/src/components/spinner/QSpinnerIos.json +1 -1
  475. package/src/components/spinner/QSpinnerOrbit.js +1 -1
  476. package/src/components/spinner/QSpinnerOrbit.json +1 -1
  477. package/src/components/spinner/QSpinnerOval.js +1 -1
  478. package/src/components/spinner/QSpinnerOval.json +1 -1
  479. package/src/components/spinner/QSpinnerPie.js +1 -1
  480. package/src/components/spinner/QSpinnerPie.json +1 -1
  481. package/src/components/spinner/QSpinnerPuff.js +1 -1
  482. package/src/components/spinner/QSpinnerPuff.json +1 -1
  483. package/src/components/spinner/QSpinnerRadio.js +1 -1
  484. package/src/components/spinner/QSpinnerRadio.json +1 -1
  485. package/src/components/spinner/QSpinnerRings.js +1 -1
  486. package/src/components/spinner/QSpinnerRings.json +1 -1
  487. package/src/components/spinner/QSpinnerTail.js +1 -1
  488. package/src/components/spinner/QSpinnerTail.json +1 -1
  489. package/src/components/spinner/{__spinner-mixin.json → spinner.json} +1 -1
  490. package/src/components/spinner/use-spinner.js +1 -1
  491. package/src/components/splitter/QSplitter.js +4 -4
  492. package/src/components/splitter/QSplitter.json +14 -14
  493. package/src/components/stepper/QStep.js +5 -5
  494. package/src/components/stepper/QStep.json +5 -11
  495. package/src/components/stepper/QStepper.js +5 -5
  496. package/src/components/stepper/QStepper.json +2 -4
  497. package/src/components/stepper/QStepperNavigation.js +2 -2
  498. package/src/components/stepper/StepHeader.js +2 -2
  499. package/src/components/tab-panels/QTabPanel.js +3 -3
  500. package/src/components/tab-panels/QTabPanel.json +1 -7
  501. package/src/components/tab-panels/QTabPanels.js +4 -4
  502. package/src/components/tab-panels/QTabPanels.json +1 -1
  503. package/src/components/table/QTable.js +8 -8
  504. package/src/components/table/QTable.json +148 -142
  505. package/src/components/table/QTd.js +2 -2
  506. package/src/components/table/QTd.json +1 -1
  507. package/src/components/table/QTh.js +2 -2
  508. package/src/components/table/QTh.json +1 -1
  509. package/src/components/table/QTr.js +2 -2
  510. package/src/components/table/QTr.json +1 -1
  511. package/src/components/table/table-column-selection.js +1 -1
  512. package/src/components/table/table-sort.js +2 -2
  513. package/src/components/tabs/QRouteTab.js +2 -2
  514. package/src/components/tabs/QRouteTab.json +2 -2
  515. package/src/components/tabs/QTab.js +1 -1
  516. package/src/components/tabs/QTab.json +6 -13
  517. package/src/components/tabs/QTabs.js +6 -6
  518. package/src/components/tabs/QTabs.json +8 -8
  519. package/src/components/tabs/use-tab.js +8 -8
  520. package/src/components/time/QTime.js +9 -9
  521. package/src/components/time/QTime.json +13 -23
  522. package/src/components/timeline/QTimeline.js +4 -4
  523. package/src/components/timeline/QTimeline.json +4 -4
  524. package/src/components/timeline/QTimelineEntry.js +3 -3
  525. package/src/components/timeline/QTimelineEntry.json +11 -11
  526. package/src/components/toggle/QToggle.js +1 -1
  527. package/src/components/toolbar/QToolbar.js +2 -2
  528. package/src/components/toolbar/QToolbarTitle.js +2 -2
  529. package/src/components/tooltip/QTooltip.js +15 -15
  530. package/src/components/tooltip/QTooltip.json +22 -24
  531. package/src/components/tree/QTree.js +5 -5
  532. package/src/components/tree/QTree.json +38 -30
  533. package/src/components/uploader/QUploader.js +1 -1
  534. package/src/components/uploader/QUploader.json +29 -14
  535. package/src/components/uploader/QUploaderAddTrigger.js +2 -2
  536. package/src/components/uploader/uploader-core.js +8 -8
  537. package/src/components/uploader/xhr-uploader-plugin.js +3 -1
  538. package/src/components/uploader/xhr-uploader-plugin.json +19 -19
  539. package/src/components/video/QVideo.js +2 -2
  540. package/src/components/video/QVideo.json +16 -20
  541. package/src/components/video/QVideo.test.js +183 -0
  542. package/src/components/virtual-scroll/QVirtualScroll.js +4 -4
  543. package/src/components/virtual-scroll/QVirtualScroll.json +8 -10
  544. package/src/components/virtual-scroll/use-virtual-scroll.js +3 -3
  545. package/src/components/virtual-scroll/use-virtual-scroll.json +16 -11
  546. package/src/composables/private.use-align/use-align.test.js +62 -0
  547. package/src/composables/{private → private.use-anchor}/use-anchor.js +3 -3
  548. package/src/composables/{private → private.use-anchor}/use-anchor.json +5 -6
  549. package/src/composables/private.use-dark/use-dark.test.js +68 -0
  550. package/src/composables/{private → private.use-field}/use-field.js +8 -8
  551. package/src/composables/{private → private.use-field}/use-field.json +14 -20
  552. package/src/composables/{private → private.use-file}/use-file.js +2 -2
  553. package/src/composables/{private → private.use-file}/use-file.json +10 -10
  554. package/src/composables/{private → private.use-fullscreen}/use-fullscreen.js +2 -2
  555. package/src/composables/{private → private.use-fullscreen}/use-fullscreen.json +10 -6
  556. package/src/composables/{private → private.use-history}/use-history.js +1 -1
  557. package/src/composables/private.use-history/use-history.test.js +116 -0
  558. package/src/composables/{private → private.use-key-composition}/use-key-composition.js +1 -1
  559. package/src/composables/{private → private.use-model-toggle}/use-model-toggle.js +1 -1
  560. package/src/composables/{private → private.use-panel}/use-panel.child.json +1 -3
  561. package/src/composables/{private → private.use-panel}/use-panel.js +4 -4
  562. package/src/composables/{private → private.use-panel}/use-panel.json +20 -15
  563. package/src/composables/{private → private.use-portal}/use-portal.js +21 -6
  564. package/src/composables/{private → private.use-prevent-scroll}/use-prevent-scroll.js +1 -1
  565. package/src/composables/{private → private.use-ratio}/use-ratio.json +4 -3
  566. package/src/composables/private.use-ratio/use-ratio.test.js +40 -0
  567. package/src/composables/{private → private.use-router-link}/use-router-link.js +1 -1
  568. package/src/composables/{private → private.use-router-link}/use-router-link.json +6 -6
  569. package/src/composables/{private → private.use-scroll-target}/use-scroll-target.js +2 -5
  570. package/src/composables/{private → private.use-size}/use-size.json +1 -1
  571. package/src/composables/private.use-size/use-size.test.js +40 -0
  572. package/src/composables/{private → private.use-transition}/use-transition.json +3 -3
  573. package/src/composables/private.use-transition/use-transition.test.js +118 -0
  574. package/src/composables/{private → private.use-validate}/use-validate.js +4 -4
  575. package/src/composables/{private → private.use-validate}/use-validate.json +9 -7
  576. package/src/composables/{use-dialog-plugin-component.js → use-dialog-plugin-component/use-dialog-plugin-component.js} +2 -4
  577. package/src/composables/{private/use-form.json → use-form/private.use-form.json} +1 -1
  578. package/src/composables/use-form/private.use-form.test.js +107 -0
  579. package/src/composables/{use-form-child.js → use-form/use-form-child.js} +1 -1
  580. package/src/composables/{use-hydration.js → use-hydration/use-hydration.js} +1 -1
  581. package/src/composables/use-hydration/use-hydration.test.js +27 -0
  582. package/src/composables/{use-id.js → use-id/use-id.js} +2 -2
  583. package/src/composables/use-id/use-id.test.js +72 -0
  584. package/src/composables/{use-interval.js → use-interval/use-interval.js} +1 -1
  585. package/src/composables/{use-meta.js → use-meta/use-meta.js} +1 -1
  586. package/src/composables/{use-quasar.js → use-quasar/use-quasar.js} +2 -1
  587. package/src/composables/use-quasar/use-quasar.test.js +35 -0
  588. package/src/composables/{use-tick.js → use-tick/use-tick.js} +1 -1
  589. package/src/composables/{use-timeout.js → use-timeout/use-timeout.js} +1 -1
  590. package/src/composables.js +12 -10
  591. package/src/css/index.sass +7 -7
  592. package/src/directives/{ClosePopup.js → close-popup/ClosePopup.js} +4 -4
  593. package/src/directives/{ClosePopup.json → close-popup/ClosePopup.json} +5 -5
  594. package/src/directives/{Intersection.js → intersection/Intersection.js} +3 -3
  595. package/src/directives/{Intersection.json → intersection/Intersection.json} +4 -6
  596. package/src/directives/{Morph.js → morph/Morph.js} +2 -2
  597. package/src/directives/{Morph.json → morph/Morph.json} +21 -21
  598. package/src/directives/{Mutation.js → mutation/Mutation.js} +2 -2
  599. package/src/directives/{Mutation.json → mutation/Mutation.json} +10 -12
  600. package/src/directives/{Ripple.js → ripple/Ripple.js} +6 -6
  601. package/src/directives/{Ripple.json → ripple/Ripple.json} +9 -15
  602. package/src/directives/ripple/Ripple.test.js +340 -0
  603. package/src/directives/{Scroll.js → scroll/Scroll.js} +4 -4
  604. package/src/directives/{Scroll.json → scroll/Scroll.json} +2 -2
  605. package/src/directives/{ScrollFire.js → scroll-fire/ScrollFire.js} +6 -6
  606. package/src/directives/{ScrollFire.json → scroll-fire/ScrollFire.json} +1 -1
  607. package/src/directives/{TouchHold.js → touch-hold/TouchHold.js} +5 -5
  608. package/src/directives/{TouchHold.json → touch-hold/TouchHold.json} +6 -6
  609. package/src/directives/{TouchPan.js → touch-pan/TouchPan.js} +6 -6
  610. package/src/directives/{TouchPan.json → touch-pan/TouchPan.json} +4 -4
  611. package/src/directives/{TouchRepeat.js → touch-repeat/TouchRepeat.js} +6 -6
  612. package/src/directives/{TouchRepeat.json → touch-repeat/TouchRepeat.json} +4 -4
  613. package/src/directives/{TouchSwipe.js → touch-swipe/TouchSwipe.js} +6 -6
  614. package/src/directives/{TouchSwipe.json → touch-swipe/TouchSwipe.json} +4 -4
  615. package/src/directives.js +11 -11
  616. package/src/index.dev.js +10 -4
  617. package/src/index.prod.js +11 -4
  618. package/src/index.ssr.js +11 -4
  619. package/src/index.umd.js +12 -4
  620. package/src/install-quasar.js +17 -12
  621. package/src/plugins/{AddressbarColor.js → addressbar/AddressbarColor.js} +3 -3
  622. package/src/plugins/{AddressbarColor.json → addressbar/AddressbarColor.json} +3 -2
  623. package/src/plugins/{AppFullscreen.js → app-fullscreen/AppFullscreen.js} +3 -3
  624. package/src/plugins/{AppFullscreen.json → app-fullscreen/AppFullscreen.json} +1 -0
  625. package/src/plugins/{AppVisibility.js → app-visibility/AppVisibility.js} +3 -3
  626. package/src/plugins/bottom-sheet/BottomSheet.js +8 -0
  627. package/src/plugins/{BottomSheet.json → bottom-sheet/BottomSheet.json} +11 -11
  628. package/src/{components/dialog-bottom-sheet/BottomSheet.js → plugins/bottom-sheet/component/BottomSheetComponent.js} +10 -10
  629. package/src/plugins/{Cookies.json → cookies/Cookies.json} +19 -18
  630. package/src/plugins/{Dark.js → dark/Dark.js} +2 -2
  631. package/src/plugins/{Dark.json → dark/Dark.json} +8 -5
  632. package/src/plugins/dialog/Dialog.js +8 -0
  633. package/src/plugins/{Dialog.json → dialog/Dialog.json} +17 -17
  634. package/src/{components/dialog-plugin/DialogPlugin.js → plugins/dialog/component/DialogPluginComponent.js} +14 -14
  635. package/src/{icon-set.js → plugins/icon-set/IconSet.js} +29 -10
  636. package/src/plugins/icon-set/IconSet.json +1417 -0
  637. package/src/plugins/icon-set/IconSet.test.js +346 -0
  638. package/src/{lang.js → plugins/lang/Lang.js} +25 -15
  639. package/src/plugins/lang/Lang.json +1100 -0
  640. package/src/plugins/lang/Lang.test.js +267 -0
  641. package/src/plugins/{Loading.js → loading/Loading.js} +8 -7
  642. package/src/plugins/{Loading.json → loading/Loading.json} +19 -17
  643. package/src/plugins/{LoadingBar.js → loading-bar/LoadingBar.js} +7 -7
  644. package/src/plugins/{LoadingBar.json → loading-bar/LoadingBar.json} +10 -5
  645. package/src/plugins/{Meta.js → meta/Meta.js} +2 -2
  646. package/src/plugins/{Notify.js → notify/Notify.js} +11 -10
  647. package/src/plugins/{Notify.json → notify/Notify.json} +60 -74
  648. package/src/plugins/{Platform.js → platform/Platform.js} +5 -12
  649. package/src/plugins/{Platform.json → platform/Platform.json} +12 -10
  650. package/src/plugins/platform/Platform.test.js +104 -0
  651. package/src/{body.js → plugins/private.body/Body.js} +5 -4
  652. package/src/{history.js → plugins/private.history/History.js} +2 -2
  653. package/src/plugins/{Screen.js → screen/Screen.js} +5 -5
  654. package/src/plugins/{Screen.json → screen/Screen.json} +10 -14
  655. package/src/plugins/{LocalStorage.js → storage/LocalStorage.js} +2 -2
  656. package/src/plugins/storage/LocalStorage.json +5 -0
  657. package/src/plugins/storage/LocalStorage.test.js +323 -0
  658. package/src/plugins/{SessionStorage.js → storage/SessionStorage.js} +2 -2
  659. package/src/plugins/storage/SessionStorage.json +5 -0
  660. package/src/plugins/storage/SessionStorage.test.js +323 -0
  661. package/src/{utils/private → plugins/storage/engine}/web-storage.js +21 -10
  662. package/src/{utils/private → plugins/storage/engine}/web-storage.json +29 -20
  663. package/src/plugins/storage/engine/web-storage.test.js +43 -0
  664. package/src/plugins.js +20 -16
  665. package/src/utils/EventBus/EventBus.test.js +108 -0
  666. package/src/utils/clone/clone.test.js +111 -0
  667. package/src/utils/colors/colors.test.js +459 -0
  668. package/src/utils/{copy-to-clipboard.js → copy-to-clipboard/copy-to-clipboard.js} +1 -1
  669. package/src/utils/{create-meta-mixin.js → create-meta-mixin/create-meta-mixin.js} +1 -1
  670. package/src/utils/{create-uploader-component.js → create-uploader-component/create-uploader-component.js} +4 -4
  671. package/src/utils/css-var/get-css-var.test.js +32 -0
  672. package/src/utils/css-var/set-css-var.test.js +36 -0
  673. package/src/utils/{date.js → date/date.js} +6 -6
  674. package/src/utils/debounce/debounce.test.js +188 -0
  675. package/src/utils/extend/extend.test.js +93 -0
  676. package/src/utils/{format.js → format/format.js} +2 -2
  677. package/src/utils/format/format.test.js +107 -0
  678. package/src/utils/{frame-debounce.js → frame-debounce/frame-debounce.js} +1 -1
  679. package/src/utils/frame-debounce/frame-debounce.test.js +127 -0
  680. package/src/utils/is/is.test.js +125 -0
  681. package/src/utils/{morph.js → morph/morph.js} +1 -1
  682. package/src/utils/{open-url.js → open-url/open-url.js} +3 -3
  683. package/src/utils/patterns/patterns.test.js +403 -0
  684. package/src/utils/{private → private.click-outside}/click-outside.js +2 -2
  685. package/src/utils/{private/define-reactive-plugin.js → private.create/create.js} +6 -3
  686. package/src/utils/private.create/create.test.js +58 -0
  687. package/src/utils/private.focus/focus-manager.test.js +190 -0
  688. package/src/utils/{private → private.focus}/focusout.js +1 -1
  689. package/src/utils/private.focus/focusout.test.js +114 -0
  690. package/src/utils/private.get-emits-object/get-emits-object.test.js +29 -0
  691. package/src/utils/private.global/global-config.test.js +54 -0
  692. package/src/utils/{private → private.global}/global-dialog.js +1 -1
  693. package/src/utils/{private → private.global}/global-dialog.json +3 -3
  694. package/src/utils/{private → private.global}/global-nodes.js +1 -1
  695. package/src/utils/private.global/global-nodes.test.js +110 -0
  696. package/src/utils/private.inject-obj-prop/inject-obj-prop.test.js +104 -0
  697. package/src/utils/{private → private.keyboard}/escape-key.js +2 -2
  698. package/src/utils/private.keyboard/escape-key.test.js +117 -0
  699. package/src/utils/private.noop-ssr-directive-transform/noop-ssr-directive-transform.test.js +14 -0
  700. package/src/utils/{private → private.portal}/portal.js +1 -1
  701. package/src/utils/{private → private.position-engine}/position-engine.js +2 -2
  702. package/src/utils/private.rtl/rtl.test.js +13 -0
  703. package/src/utils/{private → private.selection}/selection.js +1 -1
  704. package/src/utils/private.sort/sort.test.js +25 -0
  705. package/src/utils/{private → private.symbols}/symbols.js +1 -1
  706. package/src/utils/private.touch/touch.test.js +102 -0
  707. package/src/utils/{prevent-scroll.js → scroll/prevent-scroll.js} +3 -3
  708. package/src/utils/{scroll.js → scroll/scroll.js} +1 -1
  709. package/src/utils/throttle/throttle.test.js +146 -0
  710. package/src/utils/uid/uid.test.js +17 -0
  711. package/src/utils.js +24 -24
  712. package/src/vue-plugin.js +12 -4
  713. package/src/Lang.json +0 -19
  714. package/src/api-file-example.json +0 -94
  715. package/src/components/avatar/__tests__/QAvatar.cy.js +0 -120
  716. package/src/components/badge/__tests__/QBadge.cy.js +0 -148
  717. package/src/components/banner/__tests__/QBanner.cy.js +0 -106
  718. package/src/components/bar/__tests__/QBar.cy.js +0 -45
  719. package/src/components/breadcrumbs/__tests__/QBreadcrumbs.cy.js +0 -111
  720. package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.cy.js +0 -87
  721. package/src/components/btn/__tests__/QBtn.cy.js +0 -128
  722. package/src/components/btn/__tests__/use-btn.cy.js +0 -517
  723. package/src/components/chip/__tests__/QChip.cy.js +0 -480
  724. package/src/components/dialog/__tests__/DialogWrapper.vue +0 -33
  725. package/src/components/dialog/__tests__/QDialog.cy.js +0 -543
  726. package/src/components/tabs/__tests__/QRouteTab.cy.js +0 -9
  727. package/src/composables/private/__tests__/use-form.cy.js +0 -11
  728. package/src/composables/private/__tests__/use-size.cy.js +0 -36
  729. package/src/composables/private/__tests__/use-transition.cy.js +0 -111
  730. package/src/plugins/BottomSheet.js +0 -11
  731. package/src/plugins/Dialog.js +0 -11
  732. package/src/plugins/LocalStorage.json +0 -5
  733. package/src/plugins/SessionStorage.json +0 -5
  734. package/src/utils/private/create.js +0 -4
  735. /package/src/components/breadcrumbs/{__tests__ → test}/BasicBreadcrumbs.vue +0 -0
  736. /package/src/components/breadcrumbs/{__tests__ → test}/BreadcrumbWithSeparatorSlot.vue +0 -0
  737. /package/src/composables/{private/__tests__ → __tests__}/FieldWrapper.vue +0 -0
  738. /package/src/composables/{private/__tests__ → __tests__}/use-anchor.cy.js +0 -0
  739. /package/src/composables/{private/__tests__ → __tests__}/use-field.cy.js +0 -0
  740. /package/src/composables/{private/__tests__ → __tests__}/use-file.cy.js +0 -0
  741. /package/src/composables/{private/__tests__ → __tests__}/use-fullscreen.cy.js +0 -0
  742. /package/src/composables/{private/__tests__ → __tests__}/use-model-toggle.cy.js +0 -0
  743. /package/src/composables/{private/__tests__ → __tests__}/use-portal.cy.js +0 -0
  744. /package/src/composables/{private/__tests__ → __tests__}/use-router-link.cy.js +0 -0
  745. /package/src/composables/{private/__tests__ → __tests__}/use-validate.cy.js +0 -0
  746. /package/src/composables/{private → private.use-align}/use-align.js +0 -0
  747. /package/src/composables/{private → private.use-dark}/use-dark.js +0 -0
  748. /package/src/composables/{private → private.use-file}/use-file-dom-props.js +0 -0
  749. /package/src/composables/{private → private.use-model-toggle}/use-model-toggle.json +0 -0
  750. /package/src/composables/{private → private.use-panel}/use-panel.sass +0 -0
  751. /package/src/composables/{private → private.use-portal}/use-portal.json +0 -0
  752. /package/src/composables/{private → private.use-ratio}/use-ratio.js +0 -0
  753. /package/src/composables/{private → private.use-refocus-target}/use-refocus-target.js +0 -0
  754. /package/src/composables/{private → private.use-size}/use-size.js +0 -0
  755. /package/src/composables/{private → private.use-transition}/use-transition.js +0 -0
  756. /package/src/composables/{private/use-form.js → use-form/private.use-form.js} +0 -0
  757. /package/src/composables/{use-render-cache.js → use-render-cache/use-render-cache.js} +0 -0
  758. /package/src/composables/{use-split-attrs.js → use-split-attrs/use-split-attrs.js} +0 -0
  759. /package/src/directives/{Morph.sass → morph/Morph.sass} +0 -0
  760. /package/src/directives/{Ripple.sass → ripple/Ripple.sass} +0 -0
  761. /package/src/plugins/{AppVisibility.json → app-visibility/AppVisibility.json} +0 -0
  762. /package/src/{components/dialog-bottom-sheet/BottomSheet.sass → plugins/bottom-sheet/component/BottomSheetComponent.sass} +0 -0
  763. /package/src/plugins/{Cookies.js → cookies/Cookies.js} +0 -0
  764. /package/src/{components/dialog-plugin/DialogPlugin.sass → plugins/dialog/component/DialogPluginComponent.sass} +0 -0
  765. /package/src/plugins/{Loading.sass → loading/Loading.sass} +0 -0
  766. /package/src/plugins/{Meta.json → meta/Meta.json} +0 -0
  767. /package/src/plugins/{Notify.sass → notify/Notify.sass} +0 -0
  768. /package/src/utils/{EventBus.js → EventBus/EventBus.js} +0 -0
  769. /package/src/utils/{clone.js → clone/clone.js} +0 -0
  770. /package/src/utils/{colors.js → colors/colors.js} +0 -0
  771. /package/src/utils/{get-css-var.js → css-var/get-css-var.js} +0 -0
  772. /package/src/utils/{set-css-var.js → css-var/set-css-var.js} +0 -0
  773. /package/src/utils/{private/date-persian.js → date/private.persian.js} +0 -0
  774. /package/src/utils/{debounce.js → debounce/debounce.js} +0 -0
  775. /package/src/utils/{dom.js → dom/dom.js} +0 -0
  776. /package/src/utils/{event.js → event/event.js} +0 -0
  777. /package/src/utils/{export-file.js → export-file/export-file.js} +0 -0
  778. /package/src/utils/{extend.js → extend/extend.js} +0 -0
  779. /package/src/utils/{is.js → is/is.js} +0 -0
  780. /package/src/utils/{patterns.js → patterns/patterns.js} +0 -0
  781. /package/src/utils/{private → private.focus}/focus-manager.js +0 -0
  782. /package/src/utils/{private → private.get-emits-object}/get-emits-object.js +0 -0
  783. /package/src/utils/{private → private.global}/global-config.js +0 -0
  784. /package/src/utils/{private → private.inject-obj-prop}/inject-obj-prop.js +0 -0
  785. /package/src/utils/{private → private.keyboard}/key-composition.js +0 -0
  786. /package/src/utils/{private → private.noop-ssr-directive-transform}/noop-ssr-directive-transform.js +0 -0
  787. /package/src/utils/{private → private.option-sizes}/option-sizes.js +0 -0
  788. /package/src/utils/{private → private.render}/render.js +0 -0
  789. /package/src/utils/{private → private.rtl}/rtl.js +0 -0
  790. /package/src/utils/{private → private.sort}/sort.js +0 -0
  791. /package/src/utils/{private → private.touch}/touch.js +0 -0
  792. /package/src/utils/{private → private.vm}/vm.js +0 -0
  793. /package/src/utils/{run-sequential-promises.js → run-sequential-promises/run-sequential-promises.js} +0 -0
  794. /package/src/utils/{throttle.js → throttle/throttle.js} +0 -0
  795. /package/src/utils/{uid.js → uid/uid.js} +0 -0
@@ -1 +1 @@
1
- {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/tooltip"},"props":{"transition-show":{"type":"String","desc":"One of Quasar's embedded transitions","examples":["fade","slide-down"],"category":"transition","default":"jump-down","required":false},"transition-hide":{"type":"String","desc":"One of Quasar's embedded transitions","examples":["fade","slide-down"],"category":"transition","default":"jump-up","required":false},"transition-duration":{"type":["String","Number"],"desc":"Transition duration (in milliseconds, without unit)","default":300,"category":"transition","required":false},"model-value":{"type":"Boolean","desc":"Model of the component defining shown/hidden state; Either use this property (along with a listener for 'update:model-value' event) OR use v-model directive","category":"model"},"max-height":{"type":["String","null"],"desc":"The maximum height of the Tooltip; Size in CSS units, including unit name","examples":["16px","2rem"],"category":"content","default":null,"required":false},"max-width":{"type":["String","null"],"desc":"The maximum width of the Tooltip; Size in CSS units, including unit name","examples":["16px","2rem"],"category":"content","default":null,"required":false},"anchor":{"type":"String","desc":"Two values setting the starting position or anchor point of the Tooltip relative to its target","values":["top left","top middle","top right","top start","top end","center left","center middle","center right","center start","center end","bottom left","bottom middle","bottom right","bottom start","bottom end"],"default":"bottom middle","category":"position","required":false},"self":{"type":"String","desc":"Two values setting the Tooltip's own position relative to its target","values":["top left","top middle","top right","top start","top end","center left","center middle","center right","center start","center end","bottom left","bottom middle","bottom right","bottom start","bottom end"],"default":"top middle","category":"position","required":false},"offset":{"type":"Array","desc":"An array of two numbers to offset the Tooltip horizontally and vertically in pixels","default":"[14, 14]","examples":["[8, 8]","[5, 10]"],"category":"position","required":false},"scroll-target":{"type":["Element","String"],"desc":"CSS selector or DOM element to be used as a custom scroll container instead of the auto detected one","examples":[":scroll-target=\"$refs.scrollTarget\"","scroll-target=\".scroll-target-class\"","scroll-target=\"#scroll-target-id\"","scroll-target=\"body\""],"category":"behavior"},"target":{"type":["Boolean","String"],"desc":"Configure a target element to trigger Tooltip toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) it attaches the events to the specified DOM element (if it exists)","default":true,"values":["(Boolean) true","(Boolean) false","(CSS selector)"],"examples":[":target=\"false\"","target=\".my-parent\""],"category":"behavior","required":false},"no-parent-event":{"type":"Boolean","desc":"Skips attaching events to the target DOM element (that trigger the element to get shown)","category":"behavior"},"delay":{"type":"Number","desc":"Configure Tooltip to appear with delay","default":0,"category":"behavior","required":false},"hide-delay":{"type":"Number","desc":"Configure Tooltip to disappear with delay","default":0,"category":"behavior","required":false},"persistent":{"type":"Boolean","desc":"Prevents Tooltip from auto-closing when app's route changes","category":"behavior"}},"slots":{"default":{"desc":"Default slot in the devland unslotted content of the component"}},"events":{"update:model-value":{"desc":"Emitted when showing/hidden state changes; Is also used by v-model","params":{"value":{"type":"Boolean","desc":"New state (showing/hidden)"}}},"show":{"desc":"Emitted after component has triggered show()","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"before-show":{"desc":"Emitted when component triggers show() but before it finishes doing it","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"hide":{"desc":"Emitted after component has triggered hide()","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"before-hide":{"desc":"Emitted when component triggers hide() but before it finishes doing it","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}}},"methods":{"show":{"desc":"Triggers component to show","params":{"evt":{"type":"Event","desc":"JS event object","required":false}}},"hide":{"desc":"Triggers component to hide","params":{"evt":{"type":"Event","desc":"JS event object","required":false}}},"toggle":{"params":{"evt":{"type":"Event","desc":"JS event object","required":false}},"desc":"Triggers component to toggle between show/hide"},"updatePosition":{"desc":"There are some custom scenarios for which Quasar cannot automatically reposition the tooltip without significant performance drawbacks so the optimal solution is for you to call this method when you need it"}},"computedProps":{"contentEl":{"type":"Element","desc":"The DOM Element of the rendered content","addedIn":"v2.10.1"}}}
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/tooltip"},"props":{"transition-show":{"type":"String","desc":"One of Quasar's embedded transitions","examples":["'fade'","'slide-down'"],"category":"transition","default":"'jump-down'","required":false},"transition-hide":{"type":"String","desc":"One of Quasar's embedded transitions","examples":["'fade'","'slide-down'"],"category":"transition","default":"'jump-up'","required":false},"transition-duration":{"type":["String","Number"],"desc":"Transition duration (in milliseconds, without unit)","default":"300","category":"transition","required":false},"model-value":{"type":"Boolean","desc":"Model of the component defining shown/hidden state; Either use this property (along with a listener for 'update:model-value' event) OR use v-model directive","category":"model"},"max-height":{"type":["String","null"],"desc":"The maximum height of the Tooltip; Size in CSS units, including unit name","examples":["'16px'","'2rem'"],"category":"content","default":"null","required":false},"max-width":{"type":["String","null"],"desc":"The maximum width of the Tooltip; Size in CSS units, including unit name","examples":["'16px'","'2rem'"],"category":"content","default":"null","required":false},"anchor":{"type":"String","desc":"Two values setting the starting position or anchor point of the Tooltip relative to its target","values":["'top left'","'top middle'","'top right'","'top start'","'top end'","'center left'","'center middle'","'center right'","'center start'","'center end'","'bottom left'","'bottom middle'","'bottom right'","'bottom start'","'bottom end'"],"default":"'bottom middle'","category":"position","required":false},"self":{"type":"String","desc":"Two values setting the Tooltip's own position relative to its target","values":["'top left'","'top middle'","'top right'","'top start'","'top end'","'center left'","'center middle'","'center right'","'center start'","'center end'","'bottom left'","'bottom middle'","'bottom right'","'bottom start'","'bottom end'"],"default":"'top middle'","category":"position","required":false},"offset":{"type":"Array","desc":"An array of two numbers to offset the Tooltip horizontally and vertically in pixels","default":"[ 14, 14 ]","examples":["[ 8, 8 ]","[ 5, 10 ]"],"category":"position","required":false},"scroll-target":{"type":["Element","String"],"desc":"CSS selector or DOM element to be used as a custom scroll container instead of the auto detected one","examples":[".scroll-target-class","#scroll-target-id","$refs.scrollTarget","document.body"],"category":"behavior"},"target":{"type":["Boolean","String"],"desc":"Configure a target element to trigger Tooltip toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) it attaches the events to the specified DOM element (if it exists)","default":"true","examples":["# :target=\"false\"","# target=\".my-parent\""],"category":"behavior","required":false},"no-parent-event":{"type":"Boolean","desc":"Skips attaching events to the target DOM element (that trigger the element to get shown)","category":"behavior"},"delay":{"type":"Number","desc":"Configure Tooltip to appear with delay","default":"0","category":"behavior","required":false},"hide-delay":{"type":"Number","desc":"Configure Tooltip to disappear with delay","default":"0","category":"behavior","required":false},"persistent":{"type":"Boolean","desc":"Prevents Tooltip from auto-closing when app's route changes","category":"behavior"}},"slots":{"default":{"desc":"Default slot in the devland unslotted content of the component"}},"events":{"update:model-value":{"desc":"Emitted when showing/hidden state changes; Is also used by v-model","params":{"value":{"type":"Boolean","desc":"New state (showing/hidden)"}}},"show":{"desc":"Emitted after component has triggered show()","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"before-show":{"desc":"Emitted when component triggers show() but before it finishes doing it","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"hide":{"desc":"Emitted after component has triggered hide()","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}},"before-hide":{"desc":"Emitted when component triggers hide() but before it finishes doing it","params":{"evt":{"type":"Event","desc":"JS event object","required":true}}}},"methods":{"show":{"desc":"Triggers component to show","params":{"evt":{"type":"Event","desc":"JS event object","required":false}},"returns":null},"hide":{"desc":"Triggers component to hide","params":{"evt":{"type":"Event","desc":"JS event object","required":false}},"returns":null},"toggle":{"desc":"Triggers component to toggle between show/hide","params":{"evt":{"type":"Event","desc":"JS event object","required":false}},"returns":null},"updatePosition":{"desc":"There are some custom scenarios for which Quasar cannot automatically reposition the tooltip without significant performance drawbacks so the optimal solution is for you to call this method when you need it","params":null,"returns":null}},"computedProps":{"contentEl":{"type":"Element","desc":"The DOM Element of the rendered content","addedIn":"v2.10.1"}}}
package/dist/api/QTr.json CHANGED
@@ -1 +1 @@
1
- {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/table"},"props":{"props":{"type":"Object","desc":"QTable's row scoped slot property","examples":[":props=\"props\""],"category":"general"},"no-hover":{"type":"Boolean","desc":"Disable hover effect","category":"style"}},"slots":{"default":{"desc":"Default slot in the devland unslotted content of the component"}}}
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/table"},"props":{"props":{"type":"Object","desc":"QTable's row scoped slot property","examples":["# :props=\"props\""],"category":"general"},"no-hover":{"type":"Boolean","desc":"Disable hover effect","category":"style"}},"slots":{"default":{"desc":"Default slot in the devland unslotted content of the component"}}}
@@ -1 +1 @@
1
- {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/tree"},"props":{"nodes":{"type":"Array","tsType":"QTreeNode","desc":"The array of nodes that designates the tree structure","required":true,"examples":["[ {...}, {...} ]"],"category":"content"},"node-key":{"type":"String","desc":"The property name of each node object that holds a unique node id","required":true,"examples":["key","id"],"category":"content"},"label-key":{"type":"String","desc":"The property name of each node object that holds the label of the node","default":"label","examples":["name","description"],"category":"content","required":false},"children-key":{"type":"String","desc":"The property name of each node object that holds the list of children of the node","default":"children","examples":["roles","relatives"],"category":"content","required":false},"no-connectors":{"type":"Boolean","desc":"Do not display the connector lines between nodes","category":"style"},"color":{"type":"String","tsType":"NamedColor","desc":"Color name for component from the Quasar Color Palette","examples":["primary","teal","teal-10"],"category":"style"},"control-color":{"type":"String","tsType":"NamedColor","desc":"Color name for controls (like checkboxes) 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"},"selected-color":{"type":"String","tsType":"NamedColor","desc":"Color name for selected nodes (from the Quasar Color Palette)","examples":["primary","teal","teal-10"],"category":"style"},"dense":{"type":"Boolean","desc":"Dense mode; occupies less space","category":"style","addedIn":"v2.2.4"},"dark":{"type":["Boolean","null"],"default":null,"desc":"Notify the component that the background is a dark color","category":"style","required":false},"icon":{"type":"String","desc":"Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)","examples":["map","ion-add","img:https://cdn.quasar.dev/logo-v2/svg/logo.svg","img:path/to/some_image.png"],"category":"content"},"tick-strategy":{"type":"String","desc":"The type of strategy to use for the selection of the nodes","default":"none","values":["none","strict","leaf","leaf-filtered"],"category":"behavior","required":false},"ticked":{"type":"Array","desc":"Keys of nodes that are ticked","sync":true,"examples":["v-model:ticked=\"tickedKeys\""],"category":"state","syncable":true},"expanded":{"type":"Array","desc":"Keys of nodes that are expanded","sync":true,"examples":["v-model:expanded=\"expandedKeys\""],"category":"state","syncable":true},"selected":{"type":"Any","desc":"Key of node currently selected","sync":true,"examples":["v-model:selected=\"selectedKey\""],"category":"state","syncable":true},"no-selection-unset":{"type":"Boolean","desc":"Do not allow un-selection when clicking currently selected node","category":"behavior","addedIn":"v2.4.10"},"default-expand-all":{"type":"Boolean","desc":"Allow the tree to have all its branches expanded, when first rendered","category":"behavior"},"accordion":{"type":"Boolean","desc":"Allows the tree to be set in accordion mode","category":"behavior"},"no-transition":{"type":"Boolean","desc":"Turn off transition effects when expanding/collapsing nodes; Also enhances perf by a lot as a side-effect; Recommended for big trees","category":"behavior","addedIn":"v2.9.2"},"filter":{"type":"String","desc":"The text value to be used for filtering nodes","examples":[":filter=\"searchText\""],"category":"filter"},"filter-method":{"type":"Function","desc":"The function to use to filter the tree nodes; For best performance, reference it from your scope and do not define it inline","default":"(see source code)","params":{"node":{"type":"Object","desc":"Node currently being filtered"},"filter":{"type":"String","desc":"Filter text to match against"}},"returns":{"type":"Boolean","desc":"Matches or not"},"category":"filter","required":false},"duration":{"type":"Number","desc":"Toggle animation duration (in milliseconds)","default":300,"category":"style","required":false},"no-nodes-label":{"type":"String","desc":"Override default such label for when no nodes are available","examples":["No nodes to show!"],"category":"content"},"no-results-label":{"type":"String","desc":"Override default such label for when no nodes are available due to filtering","examples":["No results"],"category":"content"}},"slots":{"default-header":{"desc":"Slot to use for defining the header of a node","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["primary"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"header-[name]":{"desc":"Header template slot for describing node header; Used by nodes which have their 'header' prop set to '[name]', where '[name]' can be any string","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["primary"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"default-body":{"desc":"Slot to use for defining the body of a node","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["primary"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"body-[name]":{"desc":"Body template slot for describing node body; Used by nodes which have their 'body' prop set to '[name]', where '[name]' can be any string","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["primary"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}}},"events":{"update:expanded":{"desc":"Triggered when nodes are expanded or collapsed; Used by Vue on 'v-model:update' to update its value","params":{"expanded":{"type":"Array","desc":"The expanded node keys","examples":["[ 'Node 1', 'Node 2' ]"]}}},"lazy-load":{"desc":"Emitted when the lazy loading of nodes is finished","params":{"details":{"type":"Object","desc":"Lazy loading details","definition":{"node":{"type":"Object","required":true,"desc":"The node to which the new nodes (the children) will be appended"},"key":{"type":"String","required":true,"desc":"The key of the node getting the newly loaded child nodes","examples":["New Node"]},"done":{"type":"Function","required":true,"desc":"The callback to be carried out when the loading is successful","params":{"children":{"type":"Array","desc":"Array of nodes","default":"[]","required":false}},"returns":null},"fail":{"type":"Function","required":true,"desc":"The callback to be carried out should the loading fails","params":null,"returns":null}}}}},"update:ticked":{"desc":"Emitted when nodes are ticked/unticked via the checkbox; Used by Vue on 'v-model:ticked' to update its value","params":{"target":{"type":"Array","desc":"The ticked node keys","examples":["[ 'Node 1', 'Node 2' ]"]}}},"update:selected":{"desc":"Emitted when selected node changes; Used by Vue on 'v-model:selected' to update its value","params":{"target":{"type":"Any","desc":"The selected node key","examples":["Node 1"]}}},"after-show":{"desc":"Emitted when component show animation is finished"},"after-hide":{"desc":"Emitted when component hide animation is finished"}},"methods":{"getNodeByKey":{"desc":"Get the node with the given key","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["Node 1"]}},"returns":{"type":"Object","desc":"Requested node"}},"getTickedNodes":{"desc":"Get array of nodes that are ticked","returns":{"type":"Array","desc":"Ticked node objects"}},"getExpandedNodes":{"desc":"Get array of nodes that are expanded","returns":{"type":"Array","desc":"Expanded node objects"}},"isExpanded":{"desc":"Determine if a node is expanded","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["Node 1"]}},"returns":{"type":"Boolean","desc":"Is specified node expanded?"}},"expandAll":{"desc":"Use to expand all branches of the tree"},"collapseAll":{"desc":"Use to collapse all branches of the tree"},"setExpanded":{"desc":"Expands the tree at the point of the node with the key given","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["Node 1"]},"state":{"type":"Boolean","required":true,"desc":"Set to 'true' to expand the branch of the tree, otherwise 'false' collapses it"}}},"isTicked":{"desc":"Method to check if a node's checkbox is selected or not","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["Node 1"]}},"returns":{"type":"Boolean","desc":"Is specified node ticked?"}},"setTicked":{"desc":"Method to set a node's checkbox programmatically","params":{"keys":{"type":"Array","required":true,"desc":"The keys of nodes to tick/untick","examples":["[ 'Node 1', 'Node 2' ]"]},"state":{"type":"Boolean","required":true,"desc":"Set to 'true' to tick the checkbox of nodes, otherwise 'false' unticks them"}}}}}
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/tree"},"props":{"nodes":{"type":"Array","tsType":"QTreeNode","desc":"The array of nodes that designates the tree structure","required":true,"examples":["[ {}, {} ]"],"category":"content"},"node-key":{"type":"String","desc":"The property name of each node object that holds a unique node id","required":true,"examples":["'key'","'id'"],"category":"content"},"label-key":{"type":"String","desc":"The property name of each node object that holds the label of the node","default":"'label'","examples":["'name'","'description'"],"category":"content","required":false},"children-key":{"type":"String","desc":"The property name of each node object that holds the list of children of the node","default":"'children'","examples":["'roles'","'relatives'"],"category":"content","required":false},"no-connectors":{"type":"Boolean","desc":"Do not display the connector lines between nodes","category":"style"},"color":{"type":"String","tsType":"NamedColor","desc":"Color name for component from the Quasar Color Palette","examples":["'primary'","'teal'","'teal-10'"],"category":"style"},"control-color":{"type":"String","tsType":"NamedColor","desc":"Color name for controls (like checkboxes) 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"},"selected-color":{"type":"String","tsType":"NamedColor","desc":"Color name for selected nodes (from the Quasar Color Palette)","examples":["'primary'","'teal'","'teal-10'"],"category":"style"},"dense":{"type":"Boolean","desc":"Dense mode; occupies less space","category":"style","addedIn":"v2.2.4"},"dark":{"type":["Boolean","null"],"default":"null","desc":"Notify the component that the background is a dark color","category":"style","required":false},"icon":{"type":"String","desc":"Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)","examples":["'map'","'ion-add'","'img:https://cdn.quasar.dev/logo-v2/svg/logo.svg'","'img:path/to/some_image.png'"],"category":"content"},"tick-strategy":{"type":"String","desc":"The type of strategy to use for the selection of the nodes","default":"'none'","values":["'none'","'strict'","'leaf'","'leaf-filtered'"],"category":"behavior","required":false},"ticked":{"type":"Array","desc":"Keys of nodes that are ticked","sync":true,"examples":["# v-model:ticked=\"tickedKeys\""],"category":"state","syncable":true},"expanded":{"type":"Array","desc":"Keys of nodes that are expanded","sync":true,"examples":["# v-model:expanded=\"expandedKeys\""],"category":"state","syncable":true},"selected":{"type":"Any","desc":"Key of node currently selected","sync":true,"examples":["# v-model:selected=\"selectedKey\""],"category":"state","syncable":true},"no-selection-unset":{"type":"Boolean","desc":"Do not allow un-selection when clicking currently selected node","category":"behavior","addedIn":"v2.4.10"},"default-expand-all":{"type":"Boolean","desc":"Allow the tree to have all its branches expanded, when first rendered","category":"behavior"},"accordion":{"type":"Boolean","desc":"Allows the tree to be set in accordion mode","category":"behavior"},"no-transition":{"type":"Boolean","desc":"Turn off transition effects when expanding/collapsing nodes; Also enhances perf by a lot as a side-effect; Recommended for big trees","category":"behavior","addedIn":"v2.9.2"},"filter":{"type":"String","desc":"The text value to be used for filtering nodes","examples":["'car'"],"category":"filter"},"filter-method":{"type":"Function","desc":"The function to use to filter the tree nodes; For best performance, reference it from your scope and do not define it inline","default":"# see source code","params":{"node":{"type":"Object","desc":"Node currently being filtered"},"filter":{"type":"String","desc":"Filter text to match against"}},"returns":{"type":"Boolean","desc":"Matches or not"},"category":"filter","required":false},"duration":{"type":"Number","desc":"Toggle animation duration (in milliseconds)","default":"300","category":"style","required":false},"no-nodes-label":{"type":"String","desc":"Override default such label for when no nodes are available","examples":["'No nodes to show!'"],"category":"content"},"no-results-label":{"type":"String","desc":"Override default such label for when no nodes are available due to filtering","examples":["'No results'"],"category":"content"}},"slots":{"default-header":{"desc":"Slot to use for defining the header of a node","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["'primary'"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"header-[name]":{"desc":"Header template slot for describing node header; Used by nodes which have their 'header' prop set to '[name]', where '[name]' can be any string","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["'primary'"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"default-body":{"desc":"Slot to use for defining the body of a node","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["'primary'"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}},"body-[name]":{"desc":"Body template slot for describing node body; Used by nodes which have their 'body' prop set to '[name]', where '[name]' can be any string","scope":{"expanded":{"type":"Boolean","desc":"Is node expanded? Can directly be assigned new Boolean value which changes expanded state","reactive":true},"ticked":{"type":"Boolean","desc":"Is node ticked? Can directly be assigned new Boolean value which changes ticked state","reactive":true},"tree":{"type":"Component","tsType":"QTree","desc":"QTree instance"},"node":{"type":"Object","desc":"Node object"},"key":{"type":"Any","desc":"Node's key"},"color":{"type":"String","desc":"QTree instance 'color' supplied prop value","examples":["'primary'"]},"dark":{"type":"Boolean","desc":"QTree instance 'dark' supplied prop value"}}}},"events":{"update:expanded":{"desc":"Triggered when nodes are expanded or collapsed; Used by Vue on 'v-model:update' to update its value","params":{"expanded":{"type":"Array","desc":"The expanded node keys","examples":["[ 'Node 1', 'Node 2' ]"]}}},"lazy-load":{"desc":"Emitted when the lazy loading of nodes is finished","params":{"details":{"type":"Object","desc":"Lazy loading details","definition":{"node":{"type":"Object","required":true,"desc":"The node to which the new nodes (the children) will be appended"},"key":{"type":"String","required":true,"desc":"The key of the node getting the newly loaded child nodes","examples":["'New Node'"]},"done":{"type":"Function","required":true,"desc":"The callback to be carried out when the loading is successful","params":{"children":{"type":"Array","desc":"Array of nodes","default":"[]","required":false}},"returns":null},"fail":{"type":"Function","required":true,"desc":"The callback to be carried out should the loading fails","params":null,"returns":null}}}}},"update:ticked":{"desc":"Emitted when nodes are ticked/unticked via the checkbox; Used by Vue on 'v-model:ticked' to update its value","params":{"target":{"type":"Array","desc":"The ticked node keys","examples":["[ 'Node 1', 'Node 2' ]"]}}},"update:selected":{"desc":"Emitted when selected node changes; Used by Vue on 'v-model:selected' to update its value","params":{"target":{"type":"Any","desc":"The selected node key","examples":["'Node 1'"]}}},"after-show":{"desc":"Emitted when component show animation is finished"},"after-hide":{"desc":"Emitted when component hide animation is finished"}},"methods":{"getNodeByKey":{"desc":"Get the node with the given key","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["'Node 1'"]}},"returns":{"type":"Object","desc":"Requested node"}},"getTickedNodes":{"desc":"Get array of nodes that are ticked","params":null,"returns":{"type":"Array","desc":"Ticked node objects"}},"getExpandedNodes":{"desc":"Get array of nodes that are expanded","params":null,"returns":{"type":"Array","desc":"Expanded node objects"}},"isExpanded":{"desc":"Determine if a node is expanded","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["'Node 1'"]}},"returns":{"type":"Boolean","desc":"Is specified node expanded?"}},"expandAll":{"desc":"Use to expand all branches of the tree","params":null,"returns":null},"collapseAll":{"desc":"Use to collapse all branches of the tree","params":null,"returns":null},"setExpanded":{"desc":"Expands the tree at the point of the node with the key given","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["'Node 1'"]},"state":{"type":"Boolean","required":true,"desc":"Set to 'true' to expand the branch of the tree, otherwise 'false' collapses it"}},"returns":null},"isTicked":{"desc":"Method to check if a node's checkbox is selected or not","params":{"key":{"type":"Any","required":true,"desc":"The key of a node","examples":["'Node 1'"]}},"returns":{"type":"Boolean","desc":"Is specified node ticked?"}},"setTicked":{"desc":"Method to set a node's checkbox programmatically","params":{"keys":{"type":"Array","required":true,"desc":"The keys of nodes to tick/untick","examples":["[ 'Node 1', 'Node 2' ]"]},"state":{"type":"Boolean","required":true,"desc":"Set to 'true' to tick the checkbox of nodes, otherwise 'false' unticks them"}},"returns":null}}}
@@ -1 +1 @@
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"}}}
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'","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'","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":["true","files => (files.length === 2)"],"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":["true","files => (files.length > 2)"],"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":["Array","FileList"],"desc":"Candidate files to be added to queue"}},"returns":{"type":"Array","desc":"Filtered files to be added to queue"},"examples":["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}},"returns":null},"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}},"returns":null},"upload":{"desc":"Start uploading (same as clicking the upload button)","params":null,"returns":null},"abort":{"desc":"Abort upload of all files (same as clicking the abort button)","params":null,"returns":null},"reset":{"desc":"Resets uploader to default; Empties queue, aborts current uploads","params":null,"returns":null},"removeUploadedFiles":{"desc":"Removes already uploaded files from the list","params":null,"returns":null},"removeQueuedFiles":{"desc":"Remove files that are waiting for upload to start (same as clicking the left clear button)","params":null,"returns":null},"removeFile":{"desc":"Remove specified file from the queue","params":{"file":{"type":"File","desc":"The file to remove","required":true}},"returns":null},"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}},"returns":null},"isAlive":{"desc":"Is the component alive (activated but not unmounted); Useful to determine if you still need to compute anything going further","params":null,"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"}}}
@@ -1 +1 @@
1
- {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/video"},"props":{"ratio":{"type":["String","Number"],"desc":"Aspect ratio for the content; If value is a String, then avoid using a computational statement (like '16/9') and instead specify the String value of the result directly (eg. '1.7777')","examples":[":ratio=\"4/3\"",":ratio=\"16/9\"","ratio=\"1\""],"category":"style"},"src":{"type":"String","desc":"The source url to display in an iframe","required":true,"examples":["https://www.youtube.com/embed/k3_tw44QsZQ"],"category":"model"},"title":{"type":"String","desc":"(Accessibility) Set the native 'title' attribute value of the inner iframe being used","required":false,"examples":["My Daily Marathon"],"category":"accessibility","addedIn":"v2.4.3"},"fetchpriority":{"type":"String","desc":"Provides a hint of the relative priority to use when fetching the iframe document","default":"auto","values":["high","low","auto"],"category":"behavior","addedIn":"v2.6.6","required":false},"loading":{"type":"String","desc":"Indicates how the browser should load the iframe","default":"eager","values":["eager","lazy"],"category":"behavior","addedIn":"v2.6.6","required":false},"referrerpolicy":{"type":"String","desc":"Indicates which referrer to send when fetching the frame's resource","default":"strict-origin-when-cross-origin","values":["no-referrer","no-referrer-when-downgrade","origin","origin-when-cross-origin","same-origin","strict-origin","strict-origin-when-cross-origin","unsafe-url"],"category":"behavior","addedIn":"v2.6.6","required":false}}}
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/video"},"props":{"ratio":{"type":["String","Number"],"desc":"Aspect ratio for the content; If value is a String, then avoid using a computational statement (like '16/9') and instead specify the String value of the result directly (eg. '1.7777')","examples":["1","'1.7778'","# :ratio=\"4/3\"","# :ratio=\"16/9\""],"category":"style"},"src":{"type":"String","desc":"The source url to display in an iframe","required":true,"examples":["'https://www.youtube.com/embed/k3_tw44QsZQ'"],"category":"model"},"title":{"type":"String","desc":"(Accessibility) Set the native 'title' attribute value of the inner iframe being used","required":false,"examples":["'My Daily Marathon'"],"category":"accessibility","addedIn":"v2.4.3"},"fetchpriority":{"type":"String","desc":"Provides a hint of the relative priority to use when fetching the iframe document","default":"'auto'","values":["'high'","'low'","'auto'"],"category":"behavior","addedIn":"v2.6.6","required":false},"loading":{"type":"String","desc":"Indicates how the browser should load the iframe","default":"'eager'","values":["'eager'","'lazy'"],"category":"behavior","addedIn":"v2.6.6","required":false},"referrerpolicy":{"type":"String","desc":"Indicates which referrer to send when fetching the frame's resource","default":"'strict-origin-when-cross-origin'","values":["'no-referrer'","'no-referrer-when-downgrade'","'origin'","'origin-when-cross-origin'","'same-origin'","'strict-origin'","'strict-origin-when-cross-origin'","'unsafe-url'"],"category":"behavior","addedIn":"v2.6.6","required":false}}}
@@ -1 +1 @@
1
- {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/virtual-scroll"},"props":{"virtual-scroll-horizontal":{"type":"Boolean","desc":"Make virtual list work in horizontal mode","category":"behavior"},"virtual-scroll-slice-size":{"type":["Number","String","null"],"desc":"Minimum number of items to render in the virtual list","default":"30","examples":["virtual-scroll-slice-size=\"60\""],"category":"virtual-scroll","required":false},"virtual-scroll-slice-ratio-before":{"type":["Number","String"],"desc":"Ratio of number of items in visible zone to render before it","default":1,"category":"virtual-scroll","required":false},"virtual-scroll-slice-ratio-after":{"type":["Number","String"],"desc":"Ratio of number of items in visible zone to render after it","default":1,"category":"virtual-scroll","required":false},"virtual-scroll-item-size":{"type":["Number","String"],"desc":"Default size in pixels (height if vertical, width if horizontal) of an item; This value is used for rendering the initial list; Try to use a value close to the minimum size of an item","default":24,"category":"virtual-scroll","required":false},"virtual-scroll-sticky-size-start":{"type":["Number","String"],"desc":"Size in pixels (height if vertical, width if horizontal) of the sticky part (if using one) at the start of the list; A correct value will improve scroll precision","default":"0","category":"virtual-scroll","required":false},"virtual-scroll-sticky-size-end":{"type":["Number","String"],"desc":"Size in pixels (height if vertical, width if horizontal) of the sticky part (if using one) at the end of the list; A correct value will improve scroll precision","default":"0","category":"virtual-scroll","required":false},"table-colspan":{"type":["Number","String"],"desc":"The number of columns in the table (you need this if you use table-layout: fixed)","category":"virtual-scroll|content"},"type":{"type":"String","desc":"The type of content: list (default) or table","default":"list","values":["list","table"],"category":"content","required":false},"items":{"type":"Array","desc":"Available list items that will be passed to the scoped slot; For best performance freeze the list of items; Required if 'itemsFn' is not supplied","default":"[]","examples":[":items=\"[ 'BMW', 'Samsung Phone' ]\"",":items=\"[ { label: 'BMW', value: 'car' }, { label: 'Samsung Phone', value: 'phone' } ]\""],"category":"content","required":false},"items-size":{"type":"Number","desc":"Number of available items in the list; Required and used only if 'itemsFn' is provided","default":"void 0","examples":[":items-size=\"100000\"",":items-size=\"500\""],"category":"content","required":false},"items-fn":{"type":"Function","desc":"Function to return the scope for the items to be displayed; Should return an array for items starting from 'from' index for size length; For best performance, reference it from your scope and do not define it inline","params":{"from":{"type":"Number","desc":"Index of the first item (0 based)"},"size":{"type":"Number","desc":"Number of items to return"}},"returns":{"type":"Array","desc":"List of scope for items to be displayed"},"examples":[":items-fn=\"(from, size) => { const items = []; for (let i = 0; i < size; i++) { items.push('Item ' + i) }; return items }\""],"category":"content"},"scroll-target":{"type":["Element","String"],"desc":"CSS selector or DOM element to be used as a custom scroll container instead of the auto detected one","examples":[":scroll-target=\"$refs.scrollTarget\"","scroll-target=\".scroll-target-class\"","scroll-target=\"#scroll-target-id\"","scroll-target=\"body\""],"category":"behavior"}},"slots":{"before":{"desc":"Template slot for the elements that should be rendered before the list; Suggestion: thead before a table"},"after":{"desc":"Template slot for the elements that should be rendered after the list; Suggestion: tfoot after a table"},"default":{"desc":"Template slot for defining the list item; Suggestion: QItem","scope":{"index":{"type":"Number","desc":"Item index in the items list"},"item":{"type":"Any","desc":"Item data -- its value is taken from 'items' prop"}}}},"events":{"virtual-scroll":{"desc":"Emitted when the virtual scroll occurs","params":{"details":{"type":"Object","desc":"Object of properties on the new scroll position","definition":{"index":{"type":"Number","required":true,"desc":"Index of the list item that was scrolled into view (0 based)"},"from":{"type":"Number","required":true,"desc":"The index of the first list item that is rendered (0 based)"},"to":{"type":"Number","required":true,"desc":"The index of the last list item that is rendered (0 based)"},"direction":{"type":"String","required":true,"desc":"Direction of change","values":["increase","decrease"]},"ref":{"type":"Component","required":true,"desc":"Vue reference to the QVirtualScroll","tsType":"QVirtualScroll"}}}}}},"methods":{"scrollTo":{"desc":"Scroll the virtual scroll list to the item with the specified index (0 based)","params":{"index":{"type":["String","Number"],"desc":"The index of the list item (0 based)","required":true},"edge":{"type":"String","desc":"The edge to align to if the item is not visible already (by default it aligns to end if scrolling towards the end and to start otherwise); If the '-force' version is used then it always aligns","values":["start","center","end","start-force","center-force","end-force"]}}},"reset":{"desc":"Resets the virtual scroll computations; Needed for custom edge-cases"},"refresh":{"desc":"Refreshes the virtual scroll list; Use it after appending items","params":{"index":{"type":["String","Number"],"desc":"The index of the list item to scroll to after refresh (0 based); If it's not specified the scroll position is not changed; Use a negative value to keep scroll position"}}}}}
1
+ {"type":"component","meta":{"docsUrl":"https://v2.quasar.dev/vue-components/virtual-scroll"},"props":{"virtual-scroll-horizontal":{"type":"Boolean","desc":"Make virtual list work in horizontal mode","category":"behavior"},"virtual-scroll-slice-size":{"type":["Number","String","null"],"desc":"Minimum number of items to render in the virtual list","default":"30","examples":["60","'60'"],"category":"virtual-scroll","required":false},"virtual-scroll-slice-ratio-before":{"type":["Number","String"],"desc":"Ratio of number of items in visible zone to render before it","default":"1","category":"virtual-scroll","required":false},"virtual-scroll-slice-ratio-after":{"type":["Number","String"],"desc":"Ratio of number of items in visible zone to render after it","default":"1","category":"virtual-scroll","required":false},"virtual-scroll-item-size":{"type":["Number","String"],"desc":"Default size in pixels (height if vertical, width if horizontal) of an item; This value is used for rendering the initial list; Try to use a value close to the minimum size of an item","default":"24","category":"virtual-scroll","required":false},"virtual-scroll-sticky-size-start":{"type":["Number","String"],"desc":"Size in pixels (height if vertical, width if horizontal) of the sticky part (if using one) at the start of the list; A correct value will improve scroll precision","default":"0","category":"virtual-scroll","required":false},"virtual-scroll-sticky-size-end":{"type":["Number","String"],"desc":"Size in pixels (height if vertical, width if horizontal) of the sticky part (if using one) at the end of the list; A correct value will improve scroll precision","default":"0","category":"virtual-scroll","required":false},"table-colspan":{"type":["Number","String"],"desc":"The number of columns in the table (you need this if you use table-layout: fixed)","category":"virtual-scroll|content"},"type":{"type":"String","desc":"The type of content: list (default) or table","default":"'list'","values":["'list'","'table'"],"category":"content","required":false},"items":{"type":"Array","desc":"Available list items that will be passed to the scoped slot; For best performance freeze the list of items; Required if 'itemsFn' is not supplied","default":"[]","examples":["[ 'Tesla', 'iPhone' ]","[ { label: 'Tesla', value: 'car' }, { label: 'iPhone', value: 'phone' } ]"],"category":"content","required":false},"items-size":{"type":"Number","desc":"Number of available items in the list; Required and used only if 'itemsFn' is provided","default":"# void 0","examples":["100000"],"category":"content","required":false},"items-fn":{"type":"Function","desc":"Function to return the scope for the items to be displayed; Should return an array for items starting from 'from' index for size length; For best performance, reference it from your scope and do not define it inline","params":{"from":{"type":"Number","desc":"Index of the first item (0 based)"},"size":{"type":"Number","desc":"Number of items to return"}},"returns":{"type":"Array","desc":"List of scope for items to be displayed"},"examples":["(from, size) => { const items = []; for (let i = 0; i < size; i++) { items.push('Item ' + i) }; return items }"],"category":"content"},"scroll-target":{"type":["Element","String"],"desc":"CSS selector or DOM element to be used as a custom scroll container instead of the auto detected one","examples":[".scroll-target-class","#scroll-target-id","$refs.scrollTarget","document.body"],"category":"behavior"}},"slots":{"before":{"desc":"Template slot for the elements that should be rendered before the list; Suggestion: thead before a table"},"after":{"desc":"Template slot for the elements that should be rendered after the list; Suggestion: tfoot after a table"},"default":{"desc":"Template slot for defining the list item; Suggestion: QItem","scope":{"index":{"type":"Number","desc":"Item index in the items list"},"item":{"type":"Any","desc":"Item data -- its value is taken from 'items' prop"}}}},"events":{"virtual-scroll":{"desc":"Emitted when the virtual scroll occurs","params":{"details":{"type":"Object","desc":"Object of properties on the new scroll position","definition":{"index":{"type":"Number","required":true,"desc":"Index of the list item that was scrolled into view (0 based)"},"from":{"type":"Number","required":true,"desc":"The index of the first list item that is rendered (0 based)"},"to":{"type":"Number","required":true,"desc":"The index of the last list item that is rendered (0 based)"},"direction":{"type":"String","required":true,"desc":"Direction of change","values":["'increase'","'decrease'"]},"ref":{"type":"Component","required":true,"desc":"Vue reference to the QVirtualScroll","tsType":"QVirtualScroll"}}}}}},"methods":{"scrollTo":{"desc":"Scroll the virtual scroll list to the item with the specified index (0 based)","params":{"index":{"type":["Number","String"],"desc":"The index of the list item (0 based)","required":true},"edge":{"type":"String","desc":"The edge to align to if the item is not visible already (by default it aligns to end if scrolling towards the end and to start otherwise); If the '-force' version is used then it always aligns","values":["'start'","'center'","'end'","'start-force'","'center-force'","'end-force'"]}},"returns":null},"reset":{"desc":"Resets the virtual scroll computations; Needed for custom edge-cases","params":null,"returns":null},"refresh":{"desc":"Refreshes the virtual scroll list; Use it after appending items","params":{"index":{"type":["String","Number"],"desc":"The index of the list item to scroll to after refresh (0 based); If it's not specified the scroll position is not changed; Use a negative value to keep scroll position","examples":["5"]}},"returns":null}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/material-ripple"},"quasarConfOptions":{"propName":"ripple","type":["Boolean","Object"],"definition":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation"},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center"},"color":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["orange-5"]},"keyCodes":{"type":["Array","Number"],"desc":"List of keyCode that should trigger the ripple","examples":["[]","[13, 32]"]}}},"value":{"type":["Boolean","Object"],"desc":"Boolean (if just wanting to enable/disable) or Object for configuring more options","definition":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation"},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center"},"color":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["orange-5"]},"keyCodes":{"type":["Array","Number"],"desc":"List of keyCode that should trigger the ripple","examples":["[]","[13, 32]"]}},"examples":["v-ripple=\"booleanState\"","v-ripple=\"{ center: true, color: 'primary', keyCodes: [] }\""]},"arg":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["v-ripple:orange-5"]},"modifiers":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation","examples":["v-ripple.stop"]},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center","examples":["v-ripple.center"]}}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/material-ripple"},"quasarConfOptions":{"propName":"ripple","type":["Boolean","Object"],"definition":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation"},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center"},"color":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["'orange-5'"]},"keyCodes":{"type":["Array","Number"],"desc":"List of keyCode that should trigger the ripple","examples":["[]","[ 13, 32 ]"]}}},"value":{"type":["Boolean","Object"],"desc":"Boolean (if just wanting to enable/disable) or Object for configuring more options","definition":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation"},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center"},"color":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["'orange-5'"]},"keyCodes":{"type":["Array","Number"],"desc":"List of keyCode that should trigger the ripple","examples":["[]","[ 13, 32 ]"]}},"examples":["# v-ripple=\"booleanState\"","# v-ripple=\"{ center: true, color: 'primary', keyCodes: [] }\""]},"arg":{"type":"String","desc":"Color name from Quasar Color Palette; Overrides default dynamic color","examples":["# v-ripple:orange-5"]},"modifiers":{"early":{"type":"Boolean","desc":"Trigger early/immediately on user interaction"},"stop":{"type":"Boolean","desc":"Stop click/touch event propagation","examples":["# v-ripple.stop"]},"center":{"type":"Boolean","desc":"Ripple starts from the absolute center","examples":["# v-ripple.center"]}}}
@@ -1 +1 @@
1
- {"type":"plugin","meta":{"docsUrl":"https://v2.quasar.dev/options/screen-plugin"},"injection":"$q.screen","quasarConfOptions":{"propName":"screen","type":"Object","definition":{"bodyClasses":{"type":"Boolean","desc":"Whether to apply CSS classes for the current window breakpoint to the body element"}}},"props":{"width":{"type":"Number","desc":"Screen width (in pixels)","reactive":true,"examples":[452]},"height":{"type":"Number","desc":"Screen height (in pixels)","reactive":true,"examples":[721]},"name":{"type":"String","desc":"Tells current window breakpoint","values":["xs","sm","md","lg","xl"],"reactive":true},"sizes":{"type":"Object","desc":"Breakpoints (in pixels)","definition":{"sm":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"md":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"lg":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"xl":{"type":"Number","desc":"Breakpoint width size (minimum size)"}},"reactive":true,"examples":["{ sm: 600, md: 1024, lg: 1440, xl: 1920 }"]},"lt":{"type":"Object","desc":"Tells if current screen width is lower than breakpoint-name","reactive":true,"definition":{"sm":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"md":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"lg":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"xl":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"}},"examples":["{ sm: false, md: true, lg: true, xl: true }"]},"gt":{"type":"Object","desc":"Tells if current screen width is greater than breakpoint-name","reactive":true,"definition":{"xs":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"sm":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"md":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"lg":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"}},"examples":["{ xs: true, sm: true, md: false, lg: false, xl: false }"]},"xs":{"type":"Boolean","desc":"Current screen width fits exactly 'xs' breakpoint","reactive":true},"sm":{"type":"Boolean","desc":"Current screen width fits exactly 'sm' breakpoint","reactive":true},"md":{"type":"Boolean","desc":"Current screen width fits exactly 'md' breakpoint","reactive":true},"lg":{"type":"Boolean","desc":"Current screen width fits exactly 'lg' breakpoint","reactive":true},"xl":{"type":"Boolean","desc":"Current screen width fits exactly 'xl' breakpoint","reactive":true}},"methods":{"setSizes":{"desc":"Override default breakpoint sizes","params":{"breakpoints":{"type":"Object","desc":"Pick what you want to override","definition":{"sm":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"md":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"lg":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"xl":{"type":"Number","desc":"Breakpoint width size (minimum size)"}},"required":true}}},"setDebounce":{"desc":"Debounce update of all props when screen width/height changes","params":{"amount":{"type":"Number","desc":"Amount in milliseconds","required":true}}}}}
1
+ {"type":"plugin","meta":{"docsUrl":"https://v2.quasar.dev/options/screen-plugin"},"injection":"$q.screen","quasarConfOptions":{"propName":"screen","type":"Object","definition":{"bodyClasses":{"type":"Boolean","desc":"Whether to apply CSS classes for the current window breakpoint to the body element"}}},"props":{"width":{"type":"Number","desc":"Screen width (in pixels)","reactive":true,"examples":["452"]},"height":{"type":"Number","desc":"Screen height (in pixels)","reactive":true,"examples":["721"]},"name":{"type":"String","desc":"Tells current window breakpoint","values":["'xs'","'sm'","'md'","'lg'","'xl'"],"reactive":true},"sizes":{"type":"Object","desc":"Breakpoints (in pixels)","definition":{"sm":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"md":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"lg":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"xl":{"type":"Number","desc":"Breakpoint width size (minimum size)"}},"reactive":true,"examples":["{ sm: 600, md: 1024, lg: 1440, xl: 1920 }"]},"lt":{"type":"Object","desc":"Tells if current screen width is lower than breakpoint-name","reactive":true,"definition":{"sm":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"md":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"lg":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"},"xl":{"type":"Boolean","desc":"Is current screen width lower than this breakpoint's lowest limit?"}},"examples":["{ sm: false, md: true, lg: true, xl: true }"]},"gt":{"type":"Object","desc":"Tells if current screen width is greater than breakpoint-name","reactive":true,"definition":{"xs":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"sm":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"md":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"},"lg":{"type":"Boolean","desc":"Is current screen width greater than this breakpoint's max limit?"}},"examples":["{ xs: true, sm: true, md: false, lg: false, xl: false }"]},"xs":{"type":"Boolean","desc":"Current screen width fits exactly 'xs' breakpoint","reactive":true},"sm":{"type":"Boolean","desc":"Current screen width fits exactly 'sm' breakpoint","reactive":true},"md":{"type":"Boolean","desc":"Current screen width fits exactly 'md' breakpoint","reactive":true},"lg":{"type":"Boolean","desc":"Current screen width fits exactly 'lg' breakpoint","reactive":true},"xl":{"type":"Boolean","desc":"Current screen width fits exactly 'xl' breakpoint","reactive":true}},"methods":{"setSizes":{"desc":"Override default breakpoint sizes","params":{"breakpoints":{"type":"Object","desc":"Pick what you want to override","definition":{"sm":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"md":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"lg":{"type":"Number","desc":"Breakpoint width size (minimum size)"},"xl":{"type":"Number","desc":"Breakpoint width size (minimum size)"}},"required":true}},"returns":null},"setDebounce":{"desc":"Debounce update of all props when screen width/height changes","params":{"amount":{"type":"Number","desc":"Amount in milliseconds","required":true}},"returns":null}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/scroll"},"value":{"type":["Function","undefined"],"desc":"Function to call when scrolling occurs (use undefined to disable)","params":{"verticalScrollPosition":{"type":"Number","desc":"Scroll offset from top"},"horizontalScrollPosition":{"type":"Number","desc":"Scroll offset from left"}},"returns":null,"examples":["v-scroll=\"fnToCall\"","v-scroll=\"undefined\""]}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/scroll"},"value":{"type":["Function","undefined"],"desc":"Function to call when scrolling occurs (use undefined to disable)","params":{"verticalScrollPosition":{"type":"Number","desc":"Scroll offset from top"},"horizontalScrollPosition":{"type":"Number","desc":"Scroll offset from left"}},"returns":null,"examples":["(verticalScrollPosition, horizontalScrollPosition) => { /* ... */ }"]}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/scroll-fire"},"value":{"type":["Function","undefined"],"desc":"Function to call when scrolling and element comes into the viewport (use undefined to disable)","params":{"el":{"type":"Element","desc":"DOM element that scroll-fire is applied to"}},"returns":null,"examples":["v-scroll-fire=\"fnToCall\"","v-scroll-fire=\"undefined\""]}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/scroll-fire"},"value":{"type":["Function","undefined"],"desc":"Function to call when scrolling and element comes into the viewport (use undefined to disable)","params":{"el":{"type":"Element","desc":"DOM element that scroll-fire is applied to"}},"returns":null,"examples":["el => { console.log('Element:', el) }"]}}
@@ -1 +1 @@
1
- {"type":"plugin","meta":{"docsUrl":"https://v2.quasar.dev/quasar-plugins/web-storage"},"injection":"$q.sessionStorage","methods":{"has":{"desc":"Check if storage item exists","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["userId"]}},"returns":{"type":"Boolean","desc":"Does the item exists or not?"}},"getLength":{"desc":"Get storage number of entries","returns":{"type":"Number","desc":"Number of entries"}},"getItem":{"tsType":"WebStorageGetItemMethodType","desc":"Get a storage item value","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["userId"]}},"returns":{"type":["Date","RegExp","Number","Boolean","Function","Object","Array","String","null"],"desc":"Storage item value","examples":["john12",702]}},"getIndex":{"tsType":"WebStorageGetIndexMethodType","desc":"Get the storage item value at specific index","params":{"index":{"type":"Number","desc":"Entry index","required":true}},"returns":{"type":["Number","null"],"desc":"Storage item index"}},"getKey":{"tsType":"WebStorageGetKeyMethodType","desc":"Get the storage key at specific index","params":{"index":{"type":"Number","desc":"Entry index","required":true}},"returns":{"type":["String","null"],"desc":"Storage key","examples":["userId"]}},"getAll":{"desc":"Retrieve all items in storage","returns":{"type":"Object","desc":"Object syntax: item name as Object key and its value","examples":["{ userId: 'jon12', timesLoggedIn: 14 }"]}},"getAllKeys":{"tsType":"WebStorageGetAllKeysMethodType","desc":"Retrieve all keys in storage","returns":{"type":"Array","desc":"Storage keys (Array of Strings)","examples":["['userId', 'password']"]}},"set":{"desc":"Set item in storage","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["userId"]},"value":{"type":["Date","RegExp","Number","Boolean","Function","Object","Array","String","null"],"desc":"Entry value","required":true,"params":{"...params":{"type":"Any"}},"returns":{"type":"Any"},"examples":["john12"]}}},"remove":{"desc":"Remove a storage item","params":{"key":{"type":"String","desc":"Storage key","required":true,"examples":["userId"]}}},"clear":{"desc":"Remove everything from the storage"},"isEmpty":{"desc":"Determine if storage has any items","returns":{"type":"Boolean","desc":"Tells if storage is empty or not"}}}}
1
+ {"type":"plugin","meta":{"docsUrl":"https://v2.quasar.dev/quasar-plugins/web-storage"},"injection":"$q.sessionStorage","methods":{"hasItem":{"desc":"Check if storage item exists","alias":"has","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["'userId'"]}},"returns":{"type":"Boolean","desc":"Does the item exists or not?"}},"getLength":{"desc":"Get storage number of entries","params":null,"returns":{"type":"Number","desc":"Number of entries"}},"getItem":{"tsType":"WebStorageGetItemMethodType","desc":"Get a storage item value","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["'userId'"]}},"returns":{"type":["Number","Boolean","Date","RegExp","Function","Object","Array","String","null"],"desc":"Storage item value","examples":["'john12'","702"]}},"getIndex":{"tsType":"WebStorageGetIndexMethodType","desc":"Get the storage item value at specific index","params":{"index":{"type":"Number","desc":"Entry index","required":true}},"returns":{"type":["Number","Boolean","Date","RegExp","Function","Object","Array","String","null"],"desc":"Storage item index"}},"getKey":{"tsType":"WebStorageGetKeyMethodType","desc":"Get the storage key at specific index","params":{"index":{"type":"Number","desc":"Entry index","required":true}},"returns":{"type":["String","null"],"desc":"Storage key","examples":["'userId'"]}},"getAll":{"desc":"Retrieve all items in storage","params":null,"returns":{"type":"Object","desc":"Object syntax: item name as Object key and its value","examples":["{ userId: 'rstoenescu', timesLoggedIn: 14 }"]}},"getAllKeys":{"tsType":"WebStorageGetAllKeysMethodType","desc":"Retrieve all keys in storage","params":null,"returns":{"type":"Array","desc":"Storage keys (Array of Strings)","examples":["[ 'userId', 'password' ]"]}},"setItem":{"desc":"Set item in storage","alias":"set","params":{"key":{"type":"String","desc":"Entry key","required":true,"examples":["'userId'"]},"value":{"type":["Number","Boolean","Date","RegExp","Function","Object","Array","String","null"],"desc":"Entry value","required":true,"params":{"...params":{"type":"Any"}},"returns":{"type":"Any"},"examples":["'john12'"]}},"returns":null},"removeItem":{"desc":"Remove a storage item","alias":"remove","params":{"key":{"type":"String","desc":"Storage key","required":true,"examples":["'userId'"]}},"returns":null},"clear":{"desc":"Remove everything from the storage","params":null,"returns":null},"isEmpty":{"desc":"Determine if storage has any items","params":null,"returns":{"type":"Boolean","desc":"Tells if storage is empty or not"}}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-hold"},"value":{"type":["Function","undefined"],"desc":"Function to call after user has hold touch/click for the specified amount of time (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"position":{"type":"Object","desc":"Event Position Object","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"}}}},"returns":null,"examples":["v-touch-hold=\"fnToCall\"","v-touch-hold=\"undefined\""]},"arg":{"type":"String","desc":"x:y:z, where x is the amount of time to wait (in milliseconds), y is the touch event sensitivity (in pixels) and z is the mouse event sensitivity (in pixels)","default":"600:5:7","examples":["v-touch-hold:400=\"fnToCall\"","v-touch-hold:400:15=\"fnToCall\"","v-touch-hold:400:10:10=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"}}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-hold"},"value":{"type":["Function","undefined"],"desc":"Function to call after user has hold touch/click for the specified amount of time (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"position":{"type":"Object","desc":"Event Position Object","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"}}}},"returns":null,"examples":["({ evt, touch, mouse, position, duration }) => { /* ... */ }"]},"arg":{"type":"String","desc":"x:y:z, where x is the amount of time to wait (in milliseconds), y is the touch event sensitivity (in pixels) and z is the mouse event sensitivity (in pixels)","default":"'600:5:7'","examples":["# v-touch-hold:400=\"fnToCall\"","# v-touch-hold:400:15=\"fnToCall\"","# v-touch-hold:400:10:10=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-pan"},"value":{"type":["Function","undefined"],"desc":"Handler for panning (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"position":{"type":"Object","desc":"Event Position Object","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"direction":{"type":"String","desc":"Direction of movement","values":["up","right","down","left"]},"isFirst":{"type":"Boolean","desc":"Is first time the handler is called since movement started"},"isFinal":{"type":"Boolean","desc":"Is last time the handler is called since movement ended"},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"distance":{"type":"Object","desc":"Absolute distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Absolute distance horizontally"},"y":{"type":"Number","desc":"Absolute distance vertically"}}},"offset":{"type":"Object","desc":"Distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Distance horizontally","examples":[-231,110]},"y":{"type":"Number","desc":"Distance vertically","examples":[-231,110]}}},"delta":{"type":"Object","desc":"Delta of distance (in pixels) since handler was called last time","definition":{"x":{"type":"Number","desc":"Distance horizontally"},"y":{"type":"Number","desc":"Distance vertically"}}}}}},"returns":null,"examples":["v-touch-pan=\"fnToCall\"","v-touch-pan=\"undefined\""]},"modifiers":{"stop":{"type":"Boolean","desc":"Stop event propagation for touch events"},"prevent":{"type":"Boolean","desc":"Calls event.preventDefault() for touch events"},"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"mouseAllDir":{"type":"Boolean","desc":"Ignore initial mouse move direction (do not abort if the first mouse move is in an unaccepted direction)"},"preserveCursor":{"type":"Boolean","desc":"Prevent the mouse cursor from automatically displaying as grabbing when panning"},"horizontal":{"type":"Boolean","desc":"Catch horizontal (left/right) movement"},"vertical":{"type":"Boolean","desc":"Catch vertical (up/down) movement"},"up":{"type":"Boolean","desc":"Catch panning to up"},"right":{"type":"Boolean","desc":"Catch panning to right"},"down":{"type":"Boolean","desc":"Catch panning to down"},"left":{"type":"Boolean","desc":"Catch panning to left"}}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-pan"},"value":{"type":["Function","undefined"],"desc":"Handler for panning (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"position":{"type":"Object","desc":"Event Position Object","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"direction":{"type":"String","desc":"Direction of movement","values":["'up'","'right'","'down'","'left'"]},"isFirst":{"type":"Boolean","desc":"Is first time the handler is called since movement started"},"isFinal":{"type":"Boolean","desc":"Is last time the handler is called since movement ended"},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"distance":{"type":"Object","desc":"Absolute distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Absolute distance horizontally"},"y":{"type":"Number","desc":"Absolute distance vertically"}}},"offset":{"type":"Object","desc":"Distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Distance horizontally","examples":["-231","110"]},"y":{"type":"Number","desc":"Distance vertically","examples":["-231","110"]}}},"delta":{"type":"Object","desc":"Delta of distance (in pixels) since handler was called last time","definition":{"x":{"type":"Number","desc":"Distance horizontally"},"y":{"type":"Number","desc":"Distance vertically"}}}}}},"returns":null,"examples":["({ evt, touch, mouse, position, direction, isFirst, isFinal, distance, offset, delta }) => { /* ... */ }"]},"modifiers":{"stop":{"type":"Boolean","desc":"Stop event propagation for touch events"},"prevent":{"type":"Boolean","desc":"Calls event.preventDefault() for touch events"},"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"mouseAllDir":{"type":"Boolean","desc":"Ignore initial mouse move direction (do not abort if the first mouse move is in an unaccepted direction)"},"preserveCursor":{"type":"Boolean","desc":"Prevent the mouse cursor from automatically displaying as grabbing when panning"},"horizontal":{"type":"Boolean","desc":"Catch horizontal (left/right) movement"},"vertical":{"type":"Boolean","desc":"Catch vertical (up/down) movement"},"up":{"type":"Boolean","desc":"Catch panning to up"},"right":{"type":"Boolean","desc":"Catch panning to right"},"down":{"type":"Boolean","desc":"Catch panning to down"},"left":{"type":"Boolean","desc":"Catch panning to left"}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-repeat"},"value":{"type":["Function","undefined"],"desc":"Handler for touch-repeat (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"keyboard":{"type":"Boolean","desc":"Triggered by a keyboard event"},"position":{"type":"Object","desc":"Event Position Object; Supplied ONLY if it's a touch or mouse event","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"keyCode":{"type":"Number","desc":"Keycode; Supplied ONLY if it's a keyboard event"},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"repeatCount":{"type":"Number","desc":"Handler called for nth time"},"startTime":{"type":"Number","desc":"Unix timestamp of the moment when event started; Equivalent to Date.now()"}}}},"returns":null,"examples":["v-touch-repeat=\"fnToCall\"","v-touch-repeat=\"undefined\""]},"arg":{"type":"String","desc":"String of numbers (at least one number) separated by ':' which defines the amount of time to wait for 1st handler call, 2nd, 3rd and so on; All subsequent calls will use last value as time to wait until triggering","default":"0:600:300","examples":["v-touch-repeat:0:400=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"keyCapture":{"type":"Boolean","desc":"Use capture for keydown event"},"esc":{"type":"Boolean","desc":"Catch ESC key"},"tab":{"type":"Boolean","desc":"Catch TAB key"},"enter":{"type":"Boolean","desc":"Catch ENTER key"},"space":{"type":"Boolean","desc":"Catch SPACE key"},"up":{"type":"Boolean","desc":"Catch UP arrow key"},"left":{"type":"Boolean","desc":"Catch LEFT arrow key"},"right":{"type":"Boolean","desc":"Catch RIGHT arrow key"},"down":{"type":"Boolean","desc":"Catch DOWN key"},"delete":{"type":"Boolean","desc":"Catch DELETE key"},"[keycode]":{"type":"Number","desc":"Key code to catch","examples":["v-touch-repeat.68=\"fnToCall\""]}}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-repeat"},"value":{"type":["Function","undefined"],"desc":"Handler for touch-repeat (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"keyboard":{"type":"Boolean","desc":"Triggered by a keyboard event"},"position":{"type":"Object","desc":"Event Position Object; Supplied ONLY if it's a touch or mouse event","definition":{"top":{"type":"Number","desc":"Vertical offset from top of window"},"left":{"type":"Number","desc":"Horizontal offset from left of window"}}},"keyCode":{"type":"Number","desc":"Keycode; Supplied ONLY if it's a keyboard event"},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"repeatCount":{"type":"Number","desc":"Handler called for nth time"},"startTime":{"type":"Number","desc":"Unix timestamp of the moment when event started; Equivalent to Date.now()"}}}},"returns":null,"examples":["({ evt, touch, mouse, keyboard, position, keyCode, duration, repeatCount, startTime }) => { /* ... */ }"]},"arg":{"type":"String","desc":"String of numbers (at least one number) separated by ':' which defines the amount of time to wait for 1st handler call, 2nd, 3rd and so on; All subsequent calls will use last value as time to wait until triggering","default":"'0:600:300'","examples":["# v-touch-repeat:0:400=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"keyCapture":{"type":"Boolean","desc":"Use capture for keydown event"},"esc":{"type":"Boolean","desc":"Catch ESC key"},"tab":{"type":"Boolean","desc":"Catch TAB key"},"enter":{"type":"Boolean","desc":"Catch ENTER key"},"space":{"type":"Boolean","desc":"Catch SPACE key"},"up":{"type":"Boolean","desc":"Catch UP arrow key"},"left":{"type":"Boolean","desc":"Catch LEFT arrow key"},"right":{"type":"Boolean","desc":"Catch RIGHT arrow key"},"down":{"type":"Boolean","desc":"Catch DOWN key"},"delete":{"type":"Boolean","desc":"Catch DELETE key"},"[keycode]":{"type":"Number","desc":"Key code to catch","examples":["# v-touch-repeat.68=\"fnToCall\""]}}}
@@ -1 +1 @@
1
- {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-swipe"},"value":{"type":["Function","undefined"],"desc":"Handler for swipe (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"direction":{"type":"String","desc":"Direction of movement","values":["up","right","down","left"]},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"distance":{"type":"Object","desc":"Absolute distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Absolute distance horizontally"},"y":{"type":"Number","desc":"Absolute distance vertically"}}}}}},"returns":null,"examples":["v-touch-swipe=\"fnToCall\"","v-touch-swipe=\"undefined\""]},"arg":{"type":"String","desc":"x:y:z, where x is minimum velocity (dist/time; please use float without a dot, example: 6e-2 which is equivalent to 6 * 10^-2 = 0.06), y is minimum distance on first move on mobile, z is minimum distance on desktop until deciding if it's a swipe indeed","default":"6e-2:6:50","examples":["v-touch-swipe:7e-2:10:100=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"horizontal":{"type":"Boolean","desc":"Catch horizontal (left/right) movement"},"vertical":{"type":"Boolean","desc":"Catch vertical (up/down) movement"},"up":{"type":"Boolean","desc":"Catch swipe to up"},"right":{"type":"Boolean","desc":"Catch swipe to right"},"down":{"type":"Boolean","desc":"Catch swipe to down"},"left":{"type":"Boolean","desc":"Catch swipe to left"}}}
1
+ {"type":"directive","meta":{"docsUrl":"https://v2.quasar.dev/vue-directives/touch-swipe"},"value":{"type":["Function","undefined"],"desc":"Handler for swipe (use undefined to disable)","params":{"details":{"type":"Object","desc":"Event details","definition":{"evt":{"type":"Event","desc":"Original JS event Object"},"touch":{"type":"Boolean","desc":"Triggered by a touch event"},"mouse":{"type":"Boolean","desc":"Triggered by a mouse event"},"direction":{"type":"String","desc":"Direction of movement","values":["'up'","'right'","'down'","'left'"]},"duration":{"type":"Number","desc":"How long it took to trigger the event (in milliseconds)"},"distance":{"type":"Object","desc":"Absolute distance (in pixels) since movement started from initial point","definition":{"x":{"type":"Number","desc":"Absolute distance horizontally"},"y":{"type":"Number","desc":"Absolute distance vertically"}}}}}},"returns":null,"examples":["({ evt, touch, mouse, direction, duration, distance }) => { /* ... */ }"]},"arg":{"type":"String","desc":"x:y:z, where x is minimum velocity (dist/time; please use float without a dot, example: 6e-2 which is equivalent to 6 * 10^-2 = 0.06), y is minimum distance on first move on mobile, z is minimum distance on desktop until deciding if it's a swipe indeed","default":"'6e-2:6:50'","examples":["# v-touch-swipe:7e-2:10:100=\"fnToCall\""],"required":false},"modifiers":{"capture":{"type":"Boolean","desc":"Use capture for touchstart event"},"mouse":{"type":"Boolean","desc":"Listen for mouse events too"},"mouseCapture":{"type":"Boolean","desc":"Use capture for mousedown event"},"horizontal":{"type":"Boolean","desc":"Catch horizontal (left/right) movement"},"vertical":{"type":"Boolean","desc":"Catch vertical (up/down) movement"},"up":{"type":"Boolean","desc":"Catch swipe to up"},"right":{"type":"Boolean","desc":"Catch swipe to right"},"down":{"type":"Boolean","desc":"Catch swipe to down"},"left":{"type":"Boolean","desc":"Catch swipe to left"}}}
@@ -1,7 +1,7 @@
1
1
  /*!
2
- * Quasar Framework v2.15.1
2
+ * Quasar Framework v2.15.3
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
6
6
 
7
- (()=>{var o=(i=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(i,{get:(r,t)=>(typeof require<"u"?require:r)[t]}):i)(function(i){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+i+'" is not supported')});var e=o("@quasar/extras/mdi-v6");window.Quasar.iconSet.bootstrapIcons={name:"bootstrap-icons",type:{positive:"bi-check",negative:"bi-exclamation-triangle-fill",info:"bi-exclamation-circle-fill",warning:"bi-exclamation"},arrow:{up:"bi-arrow-up",right:"bi-arrow-right",down:"bi-arrow-down",left:"bi-arrow-left",dropdown:"bi-caret-down-fill"},chevron:{left:"bi-chevron-left",right:"bi-chevron-right"},colorPicker:{spectrum:"bi-eyedropper",tune:"bi-sliders",palette:"bi-palette2"},pullToRefresh:{icon:"bi-arrow-repeat"},carousel:{left:"bi-chevron-left",right:"bi-chevron-right",up:"bi-chevron-up",down:"bi-chevron-down",navigationIcon:"bi-circle-fill"},chip:{remove:"bi-x-circle-fill",selected:"bi-check"},datetime:{arrowLeft:"bi-chevron-left",arrowRight:"bi-chevron-right",now:"bi-clock-fill",today:"bi-calendar-check-fill"},editor:{bold:"bi-type-bold",italic:"bi-type-italic",strikethrough:"bi-type-strikethrough",underline:"bi-type-underline",unorderedList:"bi-list-ul",orderedList:"bi-list-ol",subscript:e.mdiFormatSubscript,superscript:e.mdiFormatSuperscript,hyperlink:"bi-link",toggleFullscreen:"bi-arrows-fullscreen",quote:"bi-chat-square-quote-fill",left:"bi-justify-left",center:"bi-justify",right:"bi-justify-right",justify:"bi-text-center",print:"bi-printer-fill",outdent:"bi-text-indent-right",indent:"bi-text-indent-left",removeFormat:"bi-eraser-fill",formatting:"bi-textarea",fontSize:"bi-textarea-t",align:"bi-text-left",hr:"bi-dash-square-fill",undo:"bi-arrow-counterclockwise",redo:"bi-arrow-clockwise",heading:"bi-type-h1",code:"bi-code",size:"bi-bounding-box",font:"bi-fonts",viewSource:"bi-code-slash"},expansionItem:{icon:"bi-chevron-down",denseIcon:"bi-caret-down-fill"},fab:{icon:"bi-plus",activeIcon:"bi-x"},field:{clear:"bi-x-circle-fill",error:"bi-exclamation-circle-fill"},pagination:{first:"bi-chevron-bar-left",prev:"bi-chevron-left",next:"bi-chevron-right",last:"bi-chevron-bar-right"},rating:{icon:"bi-star-fill"},stepper:{done:"bi-check",active:"bi-pencil-fill",error:"bi-exclamation-triangle-fill"},tabs:{left:"bi-chevron-left",right:"bi-chevron-right",up:"bi-chevron-up",down:"bi-chevron-down"},table:{arrowUp:"bi-arrow-up",warning:"bi-exclamation-triangle-fill",firstPage:"bi-skip-start-fill",prevPage:"bi-chevron-left",nextPage:"bi-chevron-right",lastPage:"bi-skip-end-fill"},tree:{icon:"bi-caret-right-fill"},uploader:{done:"bi-check",clear:"bi-x",add:"bi-plus-square-fill",upload:"bi-upload",removeQueue:"bi-clipboard-x",removeUploaded:"bi-clipboard-check"}};})();
7
+ (()=>{var i="M16,7.41L11.41,12L16,16.59L14.59,18L10,13.41L5.41,18L4,16.59L8.59,12L4,7.41L5.41,6L10,10.59L14.59,6L16,7.41M21.85,21.03H16.97V20.03L17.86,19.23C18.62,18.58 19.18,18.04 19.56,17.6C19.93,17.16 20.12,16.75 20.13,16.36C20.14,16.08 20.05,15.85 19.86,15.66C19.68,15.5 19.39,15.38 19,15.38C18.69,15.38 18.42,15.44 18.16,15.56L17.5,15.94L17.05,14.77C17.32,14.56 17.64,14.38 18.03,14.24C18.42,14.1 18.85,14 19.32,14C20.1,14.04 20.7,14.25 21.1,14.66C21.5,15.07 21.72,15.59 21.72,16.23C21.71,16.79 21.53,17.31 21.18,17.78C20.84,18.25 20.42,18.7 19.91,19.14L19.27,19.66V19.68H21.85V21.03Z",e="M16,7.41L11.41,12L16,16.59L14.59,18L10,13.41L5.41,18L4,16.59L8.59,12L4,7.41L5.41,6L10,10.59L14.59,6L16,7.41M21.85,9H16.97V8L17.86,7.18C18.62,6.54 19.18,6 19.56,5.55C19.93,5.11 20.12,4.7 20.13,4.32C20.14,4.04 20.05,3.8 19.86,3.62C19.68,3.43 19.39,3.34 19,3.33C18.69,3.34 18.42,3.4 18.16,3.5L17.5,3.89L17.05,2.72C17.32,2.5 17.64,2.33 18.03,2.19C18.42,2.05 18.85,2 19.32,2C20.1,2 20.7,2.2 21.1,2.61C21.5,3 21.72,3.54 21.72,4.18C21.71,4.74 21.53,5.26 21.18,5.73C20.84,6.21 20.42,6.66 19.91,7.09L19.27,7.61V7.63H21.85V9Z";window.Quasar.IconSet.bootstrapIcons={name:"bootstrap-icons",type:{positive:"bi-check",negative:"bi-exclamation-triangle-fill",info:"bi-exclamation-circle-fill",warning:"bi-exclamation"},arrow:{up:"bi-arrow-up",right:"bi-arrow-right",down:"bi-arrow-down",left:"bi-arrow-left",dropdown:"bi-caret-down-fill"},chevron:{left:"bi-chevron-left",right:"bi-chevron-right"},colorPicker:{spectrum:"bi-eyedropper",tune:"bi-sliders",palette:"bi-palette2"},pullToRefresh:{icon:"bi-arrow-repeat"},carousel:{left:"bi-chevron-left",right:"bi-chevron-right",up:"bi-chevron-up",down:"bi-chevron-down",navigationIcon:"bi-circle-fill"},chip:{remove:"bi-x-circle-fill",selected:"bi-check"},datetime:{arrowLeft:"bi-chevron-left",arrowRight:"bi-chevron-right",now:"bi-clock-fill",today:"bi-calendar-check-fill"},editor:{bold:"bi-type-bold",italic:"bi-type-italic",strikethrough:"bi-type-strikethrough",underline:"bi-type-underline",unorderedList:"bi-list-ul",orderedList:"bi-list-ol",subscript:i,superscript:e,hyperlink:"bi-link",toggleFullscreen:"bi-arrows-fullscreen",quote:"bi-chat-square-quote-fill",left:"bi-justify-left",center:"bi-justify",right:"bi-justify-right",justify:"bi-text-center",print:"bi-printer-fill",outdent:"bi-text-indent-right",indent:"bi-text-indent-left",removeFormat:"bi-eraser-fill",formatting:"bi-textarea",fontSize:"bi-textarea-t",align:"bi-text-left",hr:"bi-dash-square-fill",undo:"bi-arrow-counterclockwise",redo:"bi-arrow-clockwise",heading:"bi-type-h1",code:"bi-code",size:"bi-bounding-box",font:"bi-fonts",viewSource:"bi-code-slash"},expansionItem:{icon:"bi-chevron-down",denseIcon:"bi-caret-down-fill"},fab:{icon:"bi-plus",activeIcon:"bi-x"},field:{clear:"bi-x-circle-fill",error:"bi-exclamation-circle-fill"},pagination:{first:"bi-chevron-bar-left",prev:"bi-chevron-left",next:"bi-chevron-right",last:"bi-chevron-bar-right"},rating:{icon:"bi-star-fill"},stepper:{done:"bi-check",active:"bi-pencil-fill",error:"bi-exclamation-triangle-fill"},tabs:{left:"bi-chevron-left",right:"bi-chevron-right",up:"bi-chevron-up",down:"bi-chevron-down"},table:{arrowUp:"bi-arrow-up",warning:"bi-exclamation-triangle-fill",firstPage:"bi-skip-start-fill",prevPage:"bi-chevron-left",nextPage:"bi-chevron-right",lastPage:"bi-skip-end-fill"},tree:{icon:"bi-caret-right-fill"},uploader:{done:"bi-check",clear:"bi-x",add:"bi-plus-square-fill",upload:"bi-upload",removeQueue:"bi-clipboard-x",removeUploaded:"bi-clipboard-check"}};})();
@@ -1,7 +1,7 @@
1
1
  /*!
2
- * Quasar Framework v2.15.1
2
+ * Quasar Framework v2.15.3
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
6
6
 
7
- (()=>{var i=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(a,o)=>(typeof require<"u"?require:a)[o]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var e=i("@quasar/extras/mdi-v6");window.Quasar.iconSet.evaIcons={name:"eva-icons",type:{positive:"eva-checkmark-circle-2",negative:"eva-alert-triangle",info:"eva-info",warning:"eva-alert-circle-outline"},arrow:{up:"eva-arrow-upward-outline",right:"eva-arrow-forward-outline",down:"eva-arrow-downward-outline",left:"eva-arrow-back-outline",dropdown:"eva-chevron-down"},chevron:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline"},colorPicker:{spectrum:"eva-color-picker-outline",tune:"eva-options-2-outline",palette:"eva-pantone-outline"},pullToRefresh:{icon:"eva-refresh-outline"},carousel:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline",up:"eva-arrow-ios-upward-outline",down:"eva-arrow-ios-downward-outline",navigationIcon:"eva-shield"},chip:{remove:"eva-close",selected:"eva-checkmark"},datetime:{arrowLeft:"eva-arrow-ios-back-outline",arrowRight:"eva-arrow-ios-forward-outline",now:"eva-clock-outline",today:"eva-calendar-outline"},editor:{bold:e.mdiFormatBold,italic:e.mdiFormatItalic,strikethrough:e.mdiFormatStrikethroughVariant,underline:e.mdiFormatUnderline,unorderedList:e.mdiFormatListBulleted,orderedList:e.mdiFormatListNumbered,subscript:e.mdiFormatSubscript,superscript:e.mdiFormatSuperscript,hyperlink:e.mdiLink,toggleFullscreen:e.mdiFullscreen,quote:e.mdiFormatQuoteClose,left:e.mdiFormatAlignLeft,center:e.mdiFormatAlignCenter,right:e.mdiFormatAlignRight,justify:e.mdiFormatAlignJustify,print:e.mdiPrinter,outdent:e.mdiFormatIndentDecrease,indent:e.mdiFormatIndentIncrease,removeFormat:e.mdiFormatClear,formatting:e.mdiFormatColorText,fontSize:e.mdiFormatSize,align:e.mdiFormatAlignLeft,hr:e.mdiMinus,undo:e.mdiUndo,redo:e.mdiRedo,heading:e.mdiFormatSize,heading1:e.mdiFormatHeader1,heading2:e.mdiFormatHeader2,heading3:e.mdiFormatHeader3,heading4:e.mdiFormatHeader4,heading5:e.mdiFormatHeader5,heading6:e.mdiFormatHeader6,code:e.mdiCodeTags,size:e.mdiFormatSize,size1:e.mdiNumeric1Box,size2:e.mdiNumeric2Box,size3:e.mdiNumeric3Box,size4:e.mdiNumeric4Box,size5:e.mdiNumeric5Box,size6:e.mdiNumeric6Box,size7:e.mdiNumeric7Box,font:e.mdiFormatFont,viewSource:e.mdiCodeTags},expansionItem:{icon:"eva-arrow-ios-downward-outline",denseIcon:"eva-chevron-down"},fab:{icon:"eva-plus-outline",activeIcon:"eva-close"},field:{clear:"eva-close-circle",error:"eva-alert-circle"},pagination:{first:"eva-arrowhead-left-outline",prev:"eva-arrow-ios-back-outline",next:"eva-arrow-ios-forward-outline",last:"eva-arrowhead-right-outline"},rating:{icon:"eva-star"},stepper:{done:"eva-checkmark",active:"eva-edit",error:"eva-alert-triangle"},tabs:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline",up:"eva-arrow-ios-upward-outline",down:"eva-arrow-ios-downward-outline"},table:{arrowUp:"eva-arrow-upward",warning:"eva-alert-triangle",firstPage:"eva-arrowhead-left-outline",prevPage:"eva-arrow-ios-back-outline",nextPage:"eva-arrow-ios-forward-outline",lastPage:"eva-arrowhead-right-outline"},tree:{icon:"eva-arrow-right"},uploader:{done:"eva-checkmark",clear:"eva-close",add:"eva-plus-square",upload:"eva-cloud-upload",removeQueue:"eva-slash",removeUploaded:"eva-done-all"}};})();
7
+ (()=>{var o="M13.5,15.5H10V12.5H13.5A1.5,1.5 0 0,1 15,14A1.5,1.5 0 0,1 13.5,15.5M10,6.5H13A1.5,1.5 0 0,1 14.5,8A1.5,1.5 0 0,1 13,9.5H10M15.6,10.79C16.57,10.11 17.25,9 17.25,8C17.25,5.74 15.5,4 13.25,4H7V18H14.04C16.14,18 17.75,16.3 17.75,14.21C17.75,12.69 16.89,11.39 15.6,10.79Z",r="M10,4V7H12.21L8.79,15H6V18H14V15H11.79L15.21,7H18V4H10Z",a="M23,12V14H18.61C19.61,16.14 19.56,22 12.38,22C4.05,22.05 4.37,15.5 4.37,15.5L8.34,15.55C8.37,18.92 11.5,18.92 12.12,18.88C12.76,18.83 15.15,18.84 15.34,16.5C15.42,15.41 14.32,14.58 13.12,14H1V12H23M19.41,7.89L15.43,7.86C15.43,7.86 15.6,5.09 12.15,5.08C8.7,5.06 9,7.28 9,7.56C9.04,7.84 9.34,9.22 12,9.88H5.71C5.71,9.88 2.22,3.15 10.74,2C19.45,0.8 19.43,7.91 19.41,7.89Z",i="M5,21H19V19H5V21M12,17A6,6 0 0,0 18,11V3H15.5V11A3.5,3.5 0 0,1 12,14.5A3.5,3.5 0 0,1 8.5,11V3H6V11A6,6 0 0,0 12,17Z",t="M7,5H21V7H7V5M7,13V11H21V13H7M4,4.5A1.5,1.5 0 0,1 5.5,6A1.5,1.5 0 0,1 4,7.5A1.5,1.5 0 0,1 2.5,6A1.5,1.5 0 0,1 4,4.5M4,10.5A1.5,1.5 0 0,1 5.5,12A1.5,1.5 0 0,1 4,13.5A1.5,1.5 0 0,1 2.5,12A1.5,1.5 0 0,1 4,10.5M7,19V17H21V19H7M4,16.5A1.5,1.5 0 0,1 5.5,18A1.5,1.5 0 0,1 4,19.5A1.5,1.5 0 0,1 2.5,18A1.5,1.5 0 0,1 4,16.5Z",n="M7,13V11H21V13H7M7,19V17H21V19H7M7,7V5H21V7H7M3,8V5H2V4H4V8H3M2,17V16H5V20H2V19H4V18.5H3V17.5H4V17H2M4.25,10A0.75,0.75 0 0,1 5,10.75C5,10.95 4.92,11.14 4.79,11.27L3.12,13H5V14H2V13.08L4,11H2V10H4.25Z",d="M16,7.41L11.41,12L16,16.59L14.59,18L10,13.41L5.41,18L4,16.59L8.59,12L4,7.41L5.41,6L10,10.59L14.59,6L16,7.41M21.85,21.03H16.97V20.03L17.86,19.23C18.62,18.58 19.18,18.04 19.56,17.6C19.93,17.16 20.12,16.75 20.13,16.36C20.14,16.08 20.05,15.85 19.86,15.66C19.68,15.5 19.39,15.38 19,15.38C18.69,15.38 18.42,15.44 18.16,15.56L17.5,15.94L17.05,14.77C17.32,14.56 17.64,14.38 18.03,14.24C18.42,14.1 18.85,14 19.32,14C20.1,14.04 20.7,14.25 21.1,14.66C21.5,15.07 21.72,15.59 21.72,16.23C21.71,16.79 21.53,17.31 21.18,17.78C20.84,18.25 20.42,18.7 19.91,19.14L19.27,19.66V19.68H21.85V21.03Z",c="M16,7.41L11.41,12L16,16.59L14.59,18L10,13.41L5.41,18L4,16.59L8.59,12L4,7.41L5.41,6L10,10.59L14.59,6L16,7.41M21.85,9H16.97V8L17.86,7.18C18.62,6.54 19.18,6 19.56,5.55C19.93,5.11 20.12,4.7 20.13,4.32C20.14,4.04 20.05,3.8 19.86,3.62C19.68,3.43 19.39,3.34 19,3.33C18.69,3.34 18.42,3.4 18.16,3.5L17.5,3.89L17.05,2.72C17.32,2.5 17.64,2.33 18.03,2.19C18.42,2.05 18.85,2 19.32,2C20.1,2 20.7,2.2 21.1,2.61C21.5,3 21.72,3.54 21.72,4.18C21.71,4.74 21.53,5.26 21.18,5.73C20.84,6.21 20.42,6.66 19.91,7.09L19.27,7.61V7.63H21.85V9Z",M="M3.9,12C3.9,10.29 5.29,8.9 7,8.9H11V7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H11V15.1H7C5.29,15.1 3.9,13.71 3.9,12M8,13H16V11H8V13M17,7H13V8.9H17C18.71,8.9 20.1,10.29 20.1,12C20.1,13.71 18.71,15.1 17,15.1H13V17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7Z",s="M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z",l="M14,17H17L19,13V7H13V13H16M6,17H9L11,13V7H5V13H8L6,17Z",e="M3,3H21V5H3V3M3,7H15V9H3V7M3,11H21V13H3V11M3,15H15V17H3V15M3,19H21V21H3V19Z",L="M3,3H21V5H3V3M7,7H17V9H7V7M3,11H21V13H3V11M7,15H17V17H7V15M3,19H21V21H3V19Z",A="M3,3H21V5H3V3M9,7H21V9H9V7M3,11H21V13H3V11M9,15H21V17H9V15M3,19H21V21H3V19Z",m="M3,3H21V5H3V3M3,7H21V9H3V7M3,11H21V13H3V11M3,15H21V17H3V15M3,19H21V21H3V19Z",u="M18,3H6V7H18M19,12A1,1 0 0,1 18,11A1,1 0 0,1 19,10A1,1 0 0,1 20,11A1,1 0 0,1 19,12M16,19H8V14H16M19,8H5A3,3 0 0,0 2,11V17H6V21H18V17H22V11A3,3 0 0,0 19,8Z",v="M11,13H21V11H11M11,9H21V7H11M3,3V5H21V3M3,21H21V19H3M3,12L7,16V8M11,17H21V15H11V17Z",C="M11,13H21V11H11M11,9H21V7H11M3,3V5H21V3M11,17H21V15H11M3,8V16L7,12M3,21H21V19H3V21Z",w="M6,5V5.18L8.82,8H11.22L10.5,9.68L12.6,11.78L14.21,8H20V5H6M3.27,5L2,6.27L8.97,13.24L6.5,19H9.5L11.07,15.34L16.73,21L18,19.73L3.55,5.27L3.27,5Z",g="M9.62,12L12,5.67L14.37,12M11,3L5.5,17H7.75L8.87,14H15.12L16.25,17H18.5L13,3H11Z",H="M2 4V7H7V19H10V7H15V4H2M21 9H12V12H15V19H18V12H21V9Z",h="M19,13H5V11H19V13Z",Z="M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z",p="M18.4,10.6C16.55,9 14.15,8 11.5,8C6.85,8 2.92,11.03 1.54,15.22L3.9,16C4.95,12.81 7.95,10.5 11.5,10.5C13.45,10.5 15.23,11.22 16.62,12.38L13,16H22V7L18.4,10.6Z",f="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M14,18V16H16V6.31L13.5,7.75V5.44L16,4H18V16H20V18H14Z",F="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M21,18H15A2,2 0 0,1 13,16C13,15.47 13.2,15 13.54,14.64L18.41,9.41C18.78,9.05 19,8.55 19,8A2,2 0 0,0 17,6A2,2 0 0,0 15,8H13A4,4 0 0,1 17,4A4,4 0 0,1 21,8C21,9.1 20.55,10.1 19.83,10.83L15,16H21V18Z",k="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M15,4H19A2,2 0 0,1 21,6V16A2,2 0 0,1 19,18H15A2,2 0 0,1 13,16V15H15V16H19V12H15V10H19V6H15V7H13V6A2,2 0 0,1 15,4Z",b="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M18,18V13H13V11L18,4H20V11H21V13H20V18H18M18,11V7.42L15.45,11H18Z",x="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M15,4H20V6H15V10H17A4,4 0 0,1 21,14A4,4 0 0,1 17,18H15A2,2 0 0,1 13,16V15H15V16H17A2,2 0 0,0 19,14A2,2 0 0,0 17,12H15A2,2 0 0,1 13,10V6A2,2 0 0,1 15,4Z",z="M3,4H5V10H9V4H11V18H9V12H5V18H3V4M15,4H19A2,2 0 0,1 21,6V7H19V6H15V10H19A2,2 0 0,1 21,12V16A2,2 0 0,1 19,18H15A2,2 0 0,1 13,16V6A2,2 0 0,1 15,4M15,12V16H19V12H15Z",V="M14.6,16.6L19.2,12L14.6,7.4L16,6L22,12L16,18L14.6,16.6M9.4,16.6L4.8,12L9.4,7.4L8,6L2,12L8,18L9.4,16.6Z",I="M14,17H12V9H10V7H14M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z",B="M15,11C15,12.11 14.1,13 13,13H11V15H15V17H9V13C9,11.89 9.9,11 11,11H13V9H9V7H13A2,2 0 0,1 15,9M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z",N="M15,10.5A1.5,1.5 0 0,1 13.5,12C14.34,12 15,12.67 15,13.5V15C15,16.11 14.11,17 13,17H9V15H13V13H11V11H13V9H9V7H13C14.11,7 15,7.89 15,9M19,3H5C3.91,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19C20.11,21 21,20.1 21,19V5A2,2 0 0,0 19,3Z",S="M15,17H13V13H9V7H11V11H13V7H15M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z",P="M15,9H11V11H13A2,2 0 0,1 15,13V15C15,16.11 14.1,17 13,17H9V15H13V13H9V7H15M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z",y="M15,9H11V11H13A2,2 0 0,1 15,13V15C15,16.11 14.1,17 13,17H11A2,2 0 0,1 9,15V9C9,7.89 9.9,7 11,7H15M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M11,15H13V13H11V15Z",R="M19,3A2,2 0 0,1 21,5V19A2,2 0 0,1 19,21H5A2,2 0 0,1 3,19V5A2,2 0 0,1 5,3H19M11,17L15,9V7H9V9H13L9,17H11Z",U="M17,8H20V20H21V21H17V20H18V17H14L12.5,20H14V21H10V20H11L17,8M18,9L14.5,16H18V9M5,3H10C11.11,3 12,3.89 12,5V16H9V11H6V16H3V5C3,3.89 3.89,3 5,3M6,5V9H9V5H6Z";window.Quasar.IconSet.evaIcons={name:"eva-icons",type:{positive:"eva-checkmark-circle-2",negative:"eva-alert-triangle",info:"eva-info",warning:"eva-alert-circle-outline"},arrow:{up:"eva-arrow-upward-outline",right:"eva-arrow-forward-outline",down:"eva-arrow-downward-outline",left:"eva-arrow-back-outline",dropdown:"eva-chevron-down"},chevron:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline"},colorPicker:{spectrum:"eva-color-picker-outline",tune:"eva-options-2-outline",palette:"eva-pantone-outline"},pullToRefresh:{icon:"eva-refresh-outline"},carousel:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline",up:"eva-arrow-ios-upward-outline",down:"eva-arrow-ios-downward-outline",navigationIcon:"eva-shield"},chip:{remove:"eva-close",selected:"eva-checkmark"},datetime:{arrowLeft:"eva-arrow-ios-back-outline",arrowRight:"eva-arrow-ios-forward-outline",now:"eva-clock-outline",today:"eva-calendar-outline"},editor:{bold:o,italic:r,strikethrough:a,underline:i,unorderedList:t,orderedList:n,subscript:d,superscript:c,hyperlink:M,toggleFullscreen:s,quote:l,left:e,center:L,right:A,justify:m,print:u,outdent:v,indent:C,removeFormat:w,formatting:g,fontSize:H,align:e,hr:h,undo:Z,redo:p,heading:H,heading1:f,heading2:F,heading3:k,heading4:b,heading5:x,heading6:z,code:V,size:H,size1:I,size2:B,size3:N,size4:S,size5:P,size6:y,size7:R,font:U,viewSource:V},expansionItem:{icon:"eva-arrow-ios-downward-outline",denseIcon:"eva-chevron-down"},fab:{icon:"eva-plus-outline",activeIcon:"eva-close"},field:{clear:"eva-close-circle",error:"eva-alert-circle"},pagination:{first:"eva-arrowhead-left-outline",prev:"eva-arrow-ios-back-outline",next:"eva-arrow-ios-forward-outline",last:"eva-arrowhead-right-outline"},rating:{icon:"eva-star"},stepper:{done:"eva-checkmark",active:"eva-edit",error:"eva-alert-triangle"},tabs:{left:"eva-arrow-ios-back-outline",right:"eva-arrow-ios-forward-outline",up:"eva-arrow-ios-upward-outline",down:"eva-arrow-ios-downward-outline"},table:{arrowUp:"eva-arrow-upward",warning:"eva-alert-triangle",firstPage:"eva-arrowhead-left-outline",prevPage:"eva-arrow-ios-back-outline",nextPage:"eva-arrow-ios-forward-outline",lastPage:"eva-arrowhead-right-outline"},tree:{icon:"eva-arrow-right"},uploader:{done:"eva-checkmark",clear:"eva-close",add:"eva-plus-square",upload:"eva-cloud-upload",removeQueue:"eva-slash",removeUploaded:"eva-done-all"}};})();
@@ -1,7 +1,7 @@
1
1
  /*!
2
- * Quasar Framework v2.15.1
2
+ * Quasar Framework v2.15.3
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
6
6
 
7
- (()=>{window.Quasar.iconSet.fontawesomeV5Pro={name:"fontawesome-v5-pro",type:{positive:"fal fa-check",negative:"fal fa-exclamation-triangle",info:"fal fa-info-circle",warning:"fal fa-exclamation"},arrow:{up:"fal fa-arrow-up",right:"fal fa-arrow-right",down:"fal fa-arrow-down",left:"fal fa-arrow-left",dropdown:"fal fa-caret-down"},chevron:{left:"fal fa-chevron-left",right:"fal fa-chevron-right"},colorPicker:{spectrum:"fal fa-eye-dropper",tune:"fal fa-sliders-h",palette:"fal fa-swatchbook"},pullToRefresh:{icon:"fal fa-sync-alt"},carousel:{left:"fal fa-chevron-left",right:"fal fa-chevron-right",up:"fal fa-chevron-up",down:"fal fa-chevron-down",navigationIcon:"fal fa-circle"},chip:{remove:"fal fa-times-circle",selected:"fal fa-check"},datetime:{arrowLeft:"fal fa-chevron-left",arrowRight:"fal fa-chevron-right",now:"fal fa-clock",today:"fal fa-calendar-check"},editor:{bold:"fal fa-bold",italic:"fal fa-italic",strikethrough:"fal fa-strikethrough",underline:"fal fa-underline",unorderedList:"fal fa-list-ul",orderedList:"fal fa-list-ol",subscript:"fal fa-subscript",superscript:"fal fa-superscript",hyperlink:"fal fa-link",toggleFullscreen:"fal fa-expand-arrows-alt",quote:"fal fa-quote-right",left:"fal fa-align-left",center:"fal fa-align-center",right:"fal fa-align-right",justify:"fal fa-align-justify",print:"fal fa-print",outdent:"fal fa-outdent",indent:"fal fa-indent",removeFormat:"fal fa-eraser",formatting:"fal fa-heading",fontSize:"fal fa-text-height",align:"fal fa-align-left",hr:"fal fa-minus-square",undo:"fal fa-undo",redo:"fal fa-redo",heading:"fal fa-heading",code:"fal fa-code",size:"fal fa-text-height",font:"fal fa-font",viewSource:"fal fa-code"},expansionItem:{icon:"fal fa-chevron-down",denseIcon:"fal fa-caret-down"},fab:{icon:"fal fa-plus",activeIcon:"fal fa-times"},field:{clear:"fal fa-times-circle",error:"fal fa-exclamation-circle"},pagination:{first:"fal fa-step-backward",prev:"fal fa-chevron-left",next:"fal fa-chevron-right",last:"fal fa-step-forward"},rating:{icon:"fal fa-star"},stepper:{done:"fal fa-check",active:"fal fa-pencil-alt",error:"fal fa-exclamation-triangle"},tabs:{left:"fal fa-chevron-left",right:"fal fa-chevron-right",up:"fal fa-chevron-up",down:"fal fa-chevron-down"},table:{arrowUp:"fal fa-long-arrow-up",warning:"fal fa-exclamation-triangle",firstPage:"fal fa-step-backward",prevPage:"fal fa-chevron-left",nextPage:"fal fa-chevron-right",lastPage:"fal fa-step-forward"},tree:{icon:"fal fa-play"},uploader:{done:"fal fa-check",clear:"fal fa-times",add:"fal fa-plus-square",upload:"fal fa-upload",removeQueue:"fal fa-stream",removeUploaded:"fal fa-clipboard-check"}};})();
7
+ (()=>{window.Quasar.IconSet.fontawesomeV5Pro={name:"fontawesome-v5-pro",type:{positive:"fal fa-check",negative:"fal fa-exclamation-triangle",info:"fal fa-info-circle",warning:"fal fa-exclamation"},arrow:{up:"fal fa-arrow-up",right:"fal fa-arrow-right",down:"fal fa-arrow-down",left:"fal fa-arrow-left",dropdown:"fal fa-caret-down"},chevron:{left:"fal fa-chevron-left",right:"fal fa-chevron-right"},colorPicker:{spectrum:"fal fa-eye-dropper",tune:"fal fa-sliders-h",palette:"fal fa-swatchbook"},pullToRefresh:{icon:"fal fa-sync-alt"},carousel:{left:"fal fa-chevron-left",right:"fal fa-chevron-right",up:"fal fa-chevron-up",down:"fal fa-chevron-down",navigationIcon:"fal fa-circle"},chip:{remove:"fal fa-times-circle",selected:"fal fa-check"},datetime:{arrowLeft:"fal fa-chevron-left",arrowRight:"fal fa-chevron-right",now:"fal fa-clock",today:"fal fa-calendar-check"},editor:{bold:"fal fa-bold",italic:"fal fa-italic",strikethrough:"fal fa-strikethrough",underline:"fal fa-underline",unorderedList:"fal fa-list-ul",orderedList:"fal fa-list-ol",subscript:"fal fa-subscript",superscript:"fal fa-superscript",hyperlink:"fal fa-link",toggleFullscreen:"fal fa-expand-arrows-alt",quote:"fal fa-quote-right",left:"fal fa-align-left",center:"fal fa-align-center",right:"fal fa-align-right",justify:"fal fa-align-justify",print:"fal fa-print",outdent:"fal fa-outdent",indent:"fal fa-indent",removeFormat:"fal fa-eraser",formatting:"fal fa-heading",fontSize:"fal fa-text-height",align:"fal fa-align-left",hr:"fal fa-minus-square",undo:"fal fa-undo",redo:"fal fa-redo",heading:"fal fa-heading",code:"fal fa-code",size:"fal fa-text-height",font:"fal fa-font",viewSource:"fal fa-code"},expansionItem:{icon:"fal fa-chevron-down",denseIcon:"fal fa-caret-down"},fab:{icon:"fal fa-plus",activeIcon:"fal fa-times"},field:{clear:"fal fa-times-circle",error:"fal fa-exclamation-circle"},pagination:{first:"fal fa-step-backward",prev:"fal fa-chevron-left",next:"fal fa-chevron-right",last:"fal fa-step-forward"},rating:{icon:"fal fa-star"},stepper:{done:"fal fa-check",active:"fal fa-pencil-alt",error:"fal fa-exclamation-triangle"},tabs:{left:"fal fa-chevron-left",right:"fal fa-chevron-right",up:"fal fa-chevron-up",down:"fal fa-chevron-down"},table:{arrowUp:"fal fa-long-arrow-up",warning:"fal fa-exclamation-triangle",firstPage:"fal fa-step-backward",prevPage:"fal fa-chevron-left",nextPage:"fal fa-chevron-right",lastPage:"fal fa-step-forward"},tree:{icon:"fal fa-play"},uploader:{done:"fal fa-check",clear:"fal fa-times",add:"fal fa-plus-square",upload:"fal fa-upload",removeQueue:"fal fa-stream",removeUploaded:"fal fa-clipboard-check"}};})();