quasar 2.19.2 → 2.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (562) hide show
  1. package/dist/api/Lang.json +1 -1
  2. package/dist/api/QCarouselSlide.json +1 -1
  3. package/dist/api/QChatMessage.json +1 -1
  4. package/dist/api/QImg.json +1 -1
  5. package/dist/api/QParallax.json +1 -1
  6. package/dist/api/QRange.json +1 -1
  7. package/dist/api/QSlider.json +1 -1
  8. package/dist/api/QTimelineEntry.json +1 -1
  9. package/dist/api/QTree.json +1 -1
  10. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  11. package/dist/icon-set/eva-icons.umd.prod.js +2 -2
  12. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +5 -5
  13. package/dist/icon-set/fontawesome-v5.umd.prod.js +5 -5
  14. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +5 -5
  15. package/dist/icon-set/fontawesome-v6.umd.prod.js +5 -5
  16. package/dist/icon-set/fontawesome-v7-pro.umd.prod.js +6 -0
  17. package/dist/icon-set/fontawesome-v7.umd.prod.js +6 -0
  18. package/dist/icon-set/ionicons-v4.umd.prod.js +2 -2
  19. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  20. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  21. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  22. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  23. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  24. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  25. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  26. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  27. package/dist/icon-set/mdi-v3.umd.prod.js +5 -5
  28. package/dist/icon-set/mdi-v4.umd.prod.js +5 -5
  29. package/dist/icon-set/mdi-v5.umd.prod.js +5 -5
  30. package/dist/icon-set/mdi-v6.umd.prod.js +5 -5
  31. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-eva-icons.umd.prod.js +2 -2
  34. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +5 -5
  35. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +5 -5
  36. package/dist/icon-set/svg-fontawesome-v7.umd.prod.js +6 -0
  37. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +2 -2
  38. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +5 -5
  39. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +5 -5
  40. package/dist/icon-set/svg-ionicons-v7.umd.prod.js +6 -0
  41. package/dist/icon-set/svg-ionicons-v8.umd.prod.js +6 -0
  42. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  44. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  45. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  46. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  47. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +2 -2
  48. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +2 -2
  49. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +2 -2
  50. package/dist/icon-set/svg-mdi-v6.umd.prod.js +5 -5
  51. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  52. package/dist/icon-set/svg-themify.umd.prod.js +2 -2
  53. package/dist/icon-set/themify.umd.prod.js +2 -2
  54. package/dist/lang/ar-TN.umd.prod.js +2 -2
  55. package/dist/lang/ar.umd.prod.js +2 -2
  56. package/dist/lang/az-Latn.umd.prod.js +2 -2
  57. package/dist/lang/bg.umd.prod.js +2 -2
  58. package/dist/lang/bn.umd.prod.js +2 -2
  59. package/dist/lang/bs-BA.umd.prod.js +2 -2
  60. package/dist/lang/ca.umd.prod.js +2 -2
  61. package/dist/lang/cs.umd.prod.js +2 -2
  62. package/dist/lang/da.umd.prod.js +2 -2
  63. package/dist/lang/de-CH.umd.prod.js +2 -2
  64. package/dist/lang/de-DE.umd.prod.js +2 -2
  65. package/dist/lang/de.umd.prod.js +2 -2
  66. package/dist/lang/el.umd.prod.js +2 -2
  67. package/dist/lang/en-GB.umd.prod.js +2 -2
  68. package/dist/lang/en-US.umd.prod.js +2 -2
  69. package/dist/lang/eo.umd.prod.js +2 -2
  70. package/dist/lang/es.umd.prod.js +2 -2
  71. package/dist/lang/et.umd.prod.js +2 -2
  72. package/dist/lang/eu.umd.prod.js +2 -2
  73. package/dist/lang/fa-IR.umd.prod.js +2 -2
  74. package/dist/lang/fa.umd.prod.js +2 -2
  75. package/dist/lang/fi.umd.prod.js +2 -2
  76. package/dist/lang/fr.umd.prod.js +2 -2
  77. package/dist/lang/gn.umd.prod.js +2 -2
  78. package/dist/lang/he.umd.prod.js +2 -2
  79. package/dist/lang/hi.umd.prod.js +2 -2
  80. package/dist/lang/hr.umd.prod.js +2 -2
  81. package/dist/lang/hu.umd.prod.js +2 -2
  82. package/dist/lang/id.umd.prod.js +2 -2
  83. package/dist/lang/is.umd.prod.js +2 -2
  84. package/dist/lang/it.umd.prod.js +2 -2
  85. package/dist/lang/ja.umd.prod.js +2 -2
  86. package/dist/lang/kk.umd.prod.js +2 -2
  87. package/dist/lang/km.umd.prod.js +2 -2
  88. package/dist/lang/ko-KR.umd.prod.js +1 -1
  89. package/dist/lang/kur-CKB.umd.prod.js +2 -2
  90. package/dist/lang/lt.umd.prod.js +2 -2
  91. package/dist/lang/lu.umd.prod.js +2 -2
  92. package/dist/lang/lv.umd.prod.js +2 -2
  93. package/dist/lang/mk.umd.prod.js +2 -2
  94. package/dist/lang/ml.umd.prod.js +2 -2
  95. package/dist/lang/mm.umd.prod.js +2 -2
  96. package/dist/lang/ms-MY.umd.prod.js +2 -2
  97. package/dist/lang/ms.umd.prod.js +2 -2
  98. package/dist/lang/my.umd.prod.js +2 -2
  99. package/dist/lang/nb-NO.umd.prod.js +2 -2
  100. package/dist/lang/nl.umd.prod.js +2 -2
  101. package/dist/lang/pl.umd.prod.js +2 -2
  102. package/dist/lang/pt-BR.umd.prod.js +2 -2
  103. package/dist/lang/pt.umd.prod.js +2 -2
  104. package/dist/lang/ro.umd.prod.js +2 -2
  105. package/dist/lang/ru.umd.prod.js +2 -2
  106. package/dist/lang/sk.umd.prod.js +2 -2
  107. package/dist/lang/sl.umd.prod.js +2 -2
  108. package/dist/lang/sm.umd.prod.js +2 -2
  109. package/dist/lang/sq.umd.prod.js +2 -2
  110. package/dist/lang/sr-CYR.umd.prod.js +2 -2
  111. package/dist/lang/sr.umd.prod.js +2 -2
  112. package/dist/lang/sv.umd.prod.js +2 -2
  113. package/dist/lang/ta.umd.prod.js +2 -2
  114. package/dist/lang/th.umd.prod.js +2 -2
  115. package/dist/lang/tl.umd.prod.js +2 -2
  116. package/dist/lang/tr.umd.prod.js +2 -2
  117. package/dist/lang/ug.umd.prod.js +2 -2
  118. package/dist/lang/uk.umd.prod.js +2 -2
  119. package/dist/lang/ur-PK.umd.prod.js +2 -2
  120. package/dist/lang/uz-Cyrl.umd.prod.js +2 -2
  121. package/dist/lang/uz-Latn.umd.prod.js +2 -2
  122. package/dist/lang/vi.umd.prod.js +2 -2
  123. package/dist/lang/zh-CN.umd.prod.js +2 -2
  124. package/dist/lang/zh-TW.umd.prod.js +2 -2
  125. package/dist/quasar.client.js +2615 -2603
  126. package/dist/quasar.sass +1 -1
  127. package/dist/quasar.server.prod.cjs +11 -11
  128. package/dist/quasar.server.prod.js +25 -25
  129. package/dist/quasar.umd.js +2610 -2598
  130. package/dist/quasar.umd.prod.js +23 -23
  131. package/dist/types/api/dialog.d.ts +1 -1
  132. package/dist/types/api/qnotify.d.ts +1 -1
  133. package/dist/types/api/qpopupproxy.d.ts +1 -1
  134. package/dist/types/feature-flag.d.ts +2 -2
  135. package/dist/types/globals.d.ts +3 -3
  136. package/dist/types/{extras/icon-set.d.ts → icon-set.d.ts} +21 -16
  137. package/dist/types/index.d.ts +1 -1
  138. package/dist/types/plugin.d.ts +1 -1
  139. package/dist/types/shim-icon-set.d.ts +1 -2
  140. package/dist/types/shim-lang.d.ts +1 -2
  141. package/dist/types/ts-helpers.d.ts +3 -3
  142. package/dist/types/tsconfig.json +1 -1
  143. package/dist/types/utils/scroll.d.ts +1 -1
  144. package/dist/types/utils.d.ts +2 -2
  145. package/dist/web-types/web-types.json +1 -1
  146. package/icon-set/bootstrap-icons.js +1 -1
  147. package/icon-set/eva-icons.js +23 -23
  148. package/icon-set/fontawesome-v7-pro.js +128 -0
  149. package/icon-set/fontawesome-v7.js +128 -0
  150. package/icon-set/ionicons-v4.js +17 -17
  151. package/icon-set/svg-bootstrap-icons.js +1 -1
  152. package/icon-set/svg-eva-icons.js +23 -23
  153. package/icon-set/svg-fontawesome-v5.js +1 -1
  154. package/icon-set/svg-fontawesome-v7.js +197 -0
  155. package/icon-set/svg-ionicons-v4.js +17 -17
  156. package/icon-set/svg-ionicons-v5.js +1 -1
  157. package/icon-set/svg-ionicons-v6.js +1 -1
  158. package/icon-set/svg-ionicons-v7.js +224 -0
  159. package/icon-set/svg-ionicons-v8.js +224 -0
  160. package/icon-set/svg-themify.js +7 -7
  161. package/icon-set/themify.js +7 -7
  162. package/lang/ar-TN.js +1 -1
  163. package/lang/ar.js +1 -1
  164. package/lang/az-Latn.js +1 -1
  165. package/lang/bg.js +1 -1
  166. package/lang/bn.js +1 -1
  167. package/lang/bs-BA.js +1 -1
  168. package/lang/ca.js +1 -1
  169. package/lang/cs.js +11 -6
  170. package/lang/da.js +1 -1
  171. package/lang/de-CH.js +1 -1
  172. package/lang/de-DE.js +1 -1
  173. package/lang/de.js +1 -1
  174. package/lang/el.js +1 -1
  175. package/lang/en-GB.js +1 -1
  176. package/lang/en-US.js +1 -1
  177. package/lang/eo.js +1 -1
  178. package/lang/es.js +1 -1
  179. package/lang/et.js +1 -1
  180. package/lang/eu.js +1 -1
  181. package/lang/fa-IR.js +1 -1
  182. package/lang/fa.js +1 -1
  183. package/lang/fi.js +1 -1
  184. package/lang/fr.js +1 -1
  185. package/lang/gn.js +1 -1
  186. package/lang/he.js +1 -1
  187. package/lang/hi.js +1 -1
  188. package/lang/hr.js +1 -1
  189. package/lang/hu.js +1 -1
  190. package/lang/id.js +1 -1
  191. package/lang/is.js +1 -1
  192. package/lang/it.js +9 -9
  193. package/lang/ja.js +1 -1
  194. package/lang/kk.js +1 -1
  195. package/lang/km.js +1 -1
  196. package/lang/kur-CKB.js +1 -1
  197. package/lang/lt.js +2 -2
  198. package/lang/lu.js +1 -1
  199. package/lang/lv.js +1 -1
  200. package/lang/mk.js +1 -1
  201. package/lang/ml.js +1 -1
  202. package/lang/mm.js +1 -1
  203. package/lang/ms-MY.js +1 -1
  204. package/lang/ms.js +1 -1
  205. package/lang/my.js +1 -1
  206. package/lang/nb-NO.js +1 -1
  207. package/lang/nl.js +1 -1
  208. package/lang/pl.js +1 -1
  209. package/lang/pt-BR.js +1 -1
  210. package/lang/pt.js +1 -1
  211. package/lang/ro.js +1 -1
  212. package/lang/ru.js +1 -1
  213. package/lang/sk.js +1 -1
  214. package/lang/sl.js +1 -1
  215. package/lang/sm.js +1 -1
  216. package/lang/sq.js +1 -1
  217. package/lang/sr-CYR.js +1 -1
  218. package/lang/sr.js +1 -1
  219. package/lang/sv.js +1 -1
  220. package/lang/ta.js +1 -1
  221. package/lang/th.js +1 -1
  222. package/lang/tl.js +1 -1
  223. package/lang/tr.js +1 -1
  224. package/lang/ug.js +1 -1
  225. package/lang/uk.js +1 -1
  226. package/lang/ur-PK.js +1 -1
  227. package/lang/uz-Cyrl.js +1 -1
  228. package/lang/uz-Latn.js +1 -1
  229. package/lang/vi.js +1 -1
  230. package/lang/zh-CN.js +1 -1
  231. package/lang/zh-TW.js +1 -1
  232. package/package.json +13 -17
  233. package/src/components/ajax-bar/QAjaxBar.js +22 -25
  234. package/src/components/avatar/QAvatar.js +3 -3
  235. package/src/components/avatar/QAvatar.test.js +2 -2
  236. package/src/components/badge/QBadge.js +9 -10
  237. package/src/components/badge/QBadge.test.js +2 -2
  238. package/src/components/banner/QBanner.js +6 -6
  239. package/src/components/banner/QBanner.test.js +2 -2
  240. package/src/components/bar/QBar.js +3 -3
  241. package/src/components/bar/QBar.test.js +2 -2
  242. package/src/components/breadcrumbs/QBreadcrumbs.js +5 -4
  243. package/src/components/breadcrumbs/QBreadcrumbs.test.js +3 -3
  244. package/src/components/breadcrumbs/QBreadcrumbsEl.js +4 -4
  245. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +2 -2
  246. package/src/components/btn/QBtn.js +39 -44
  247. package/src/components/btn/QBtn.test.js +2 -2
  248. package/src/components/btn/use-btn.js +34 -47
  249. package/src/components/btn/use-btn.test.js +5 -5
  250. package/src/components/btn-dropdown/QBtnDropdown.js +15 -16
  251. package/src/components/btn-group/QBtnGroup.js +3 -3
  252. package/src/components/btn-toggle/QBtnToggle.js +5 -9
  253. package/src/components/card/QCard.js +5 -5
  254. package/src/components/card/QCardActions.js +2 -2
  255. package/src/components/card/QCardSection.js +2 -2
  256. package/src/components/carousel/QCarousel.js +32 -38
  257. package/src/components/carousel/QCarouselControl.js +1 -1
  258. package/src/components/carousel/QCarouselSlide.js +1 -1
  259. package/src/components/carousel/QCarouselSlide.json +1 -1
  260. package/src/components/chat/QChatMessage.js +13 -14
  261. package/src/components/chat/QChatMessage.json +1 -1
  262. package/src/components/checkbox/QCheckbox.js +5 -5
  263. package/src/components/checkbox/use-checkbox.js +38 -50
  264. package/src/components/chip/QChip.js +26 -34
  265. package/src/components/chip/QChip.test.js +2 -2
  266. package/src/components/circular-progress/QCircularProgress.js +8 -11
  267. package/src/components/circular-progress/circular-progress.test.js +1 -1
  268. package/src/components/color/QColor.js +75 -98
  269. package/src/components/date/QDate.js +128 -140
  270. package/src/components/date/use-datetime.js +3 -6
  271. package/src/components/dialog/QDialog.js +44 -50
  272. package/src/components/dialog/QDialog.test.js +7 -7
  273. package/src/components/drawer/QDrawer.js +110 -152
  274. package/src/components/editor/QEditor.js +44 -37
  275. package/src/components/editor/editor-caret.js +27 -31
  276. package/src/components/editor/editor-utils.js +9 -5
  277. package/src/components/expansion-item/QExpansionItem.js +36 -48
  278. package/src/components/fab/QFab.js +11 -11
  279. package/src/components/fab/QFabAction.js +2 -4
  280. package/src/components/fab/use-fab.js +6 -7
  281. package/src/components/field/QField.js +2 -2
  282. package/src/components/file/QFile.js +26 -33
  283. package/src/components/footer/QFooter.js +40 -53
  284. package/src/components/form/QForm.js +37 -43
  285. package/src/components/form/QFormChildMixin.js +3 -3
  286. package/src/components/header/QHeader.js +35 -47
  287. package/src/components/icon/QIcon.js +19 -19
  288. package/src/components/img/QImg.js +24 -24
  289. package/src/components/img/QImg.json +3 -3
  290. package/src/components/infinite-scroll/QInfiniteScroll.js +38 -52
  291. package/src/components/inner-loading/QInnerLoading.js +3 -3
  292. package/src/components/input/QInput.js +52 -52
  293. package/src/components/input/use-mask.js +56 -54
  294. package/src/components/intersection/QIntersection.js +6 -8
  295. package/src/components/item/QItem.js +20 -30
  296. package/src/components/item/QItemLabel.js +5 -7
  297. package/src/components/item/QItemSection.js +6 -6
  298. package/src/components/item/QList.js +6 -6
  299. package/src/components/item/QList.test.js +2 -2
  300. package/src/components/knob/QKnob.js +39 -44
  301. package/src/components/layout/QLayout.js +30 -34
  302. package/src/components/linear-progress/QLinearProgress.js +14 -23
  303. package/src/components/markup-table/QMarkupTable.js +7 -9
  304. package/src/components/menu/QMenu.js +36 -37
  305. package/src/components/no-ssr/QNoSsr.js +1 -1
  306. package/src/components/option-group/QOptionGroup.js +5 -5
  307. package/src/components/page/QPage.js +16 -18
  308. package/src/components/page/QPageContainer.js +9 -9
  309. package/src/components/page-scroller/QPageScroller.js +11 -13
  310. package/src/components/page-sticky/use-page-sticky.js +18 -18
  311. package/src/components/pagination/QPagination.js +24 -26
  312. package/src/components/parallax/QParallax.js +15 -9
  313. package/src/components/parallax/QParallax.json +1 -1
  314. package/src/components/popup-edit/QPopupEdit.js +10 -13
  315. package/src/components/popup-proxy/QPopupProxy.js +5 -7
  316. package/src/components/pull-to-refresh/QPullToRefresh.js +15 -17
  317. package/src/components/radio/QRadio.js +24 -29
  318. package/src/components/range/QRange.js +33 -37
  319. package/src/components/rating/QRating.js +59 -61
  320. package/src/components/resize-observer/QResizeObserver.js +55 -62
  321. package/src/components/scroll-area/QScrollArea.js +32 -36
  322. package/src/components/scroll-observer/QScrollObserver.js +3 -3
  323. package/src/components/select/QSelect.js +208 -269
  324. package/src/components/separator/QSeparator.js +7 -10
  325. package/src/components/skeleton/QSkeleton.js +4 -4
  326. package/src/components/slide-item/QSlideItem.js +7 -7
  327. package/src/components/slide-transition/QSlideTransition.js +4 -4
  328. package/src/components/slider/QSlider.js +13 -16
  329. package/src/components/slider/use-slider.js +53 -81
  330. package/src/components/slider/use-slider.json +3 -3
  331. package/src/components/space/QSpace.test.js +1 -1
  332. package/src/components/spinner/QSpinner.test.js +2 -2
  333. package/src/components/spinner/QSpinnerAudio.test.js +2 -2
  334. package/src/components/spinner/QSpinnerBall.test.js +2 -2
  335. package/src/components/spinner/QSpinnerBars.test.js +2 -2
  336. package/src/components/spinner/QSpinnerBox.test.js +2 -2
  337. package/src/components/spinner/QSpinnerClock.test.js +2 -2
  338. package/src/components/spinner/QSpinnerComment.test.js +2 -2
  339. package/src/components/spinner/QSpinnerCube.test.js +2 -2
  340. package/src/components/spinner/QSpinnerDots.test.js +2 -2
  341. package/src/components/spinner/QSpinnerFacebook.test.js +2 -2
  342. package/src/components/spinner/QSpinnerGears.test.js +2 -2
  343. package/src/components/spinner/QSpinnerGrid.test.js +2 -2
  344. package/src/components/spinner/QSpinnerHearts.test.js +2 -2
  345. package/src/components/spinner/QSpinnerHourglass.test.js +2 -2
  346. package/src/components/spinner/QSpinnerInfinity.test.js +2 -2
  347. package/src/components/spinner/QSpinnerIos.test.js +2 -2
  348. package/src/components/spinner/QSpinnerOrbit.test.js +2 -2
  349. package/src/components/spinner/QSpinnerOval.test.js +2 -2
  350. package/src/components/spinner/QSpinnerPie.test.js +2 -2
  351. package/src/components/spinner/QSpinnerPuff.test.js +2 -2
  352. package/src/components/spinner/QSpinnerRadio.test.js +2 -2
  353. package/src/components/spinner/QSpinnerRings.test.js +2 -2
  354. package/src/components/spinner/QSpinnerTail.test.js +2 -2
  355. package/src/components/spinner/use-spinner.test.js +1 -1
  356. package/src/components/splitter/QSplitter.js +19 -21
  357. package/src/components/stepper/QStep.js +12 -14
  358. package/src/components/stepper/QStepper.js +13 -14
  359. package/src/components/stepper/StepHeader.js +34 -35
  360. package/src/components/tab-panels/QTabPanels.js +3 -3
  361. package/src/components/table/QTable.js +82 -100
  362. package/src/components/table/QTd.js +3 -3
  363. package/src/components/table/QTh.js +5 -6
  364. package/src/components/table/QTr.js +3 -3
  365. package/src/components/table/table-column-selection.js +4 -6
  366. package/src/components/table/table-filter.js +2 -2
  367. package/src/components/table/table-pagination.js +14 -20
  368. package/src/components/table/table-row-expand.js +3 -3
  369. package/src/components/table/table-row-selection.js +10 -20
  370. package/src/components/table/table-sort.js +7 -7
  371. package/src/components/tabs/QRouteTab.js +1 -1
  372. package/src/components/tabs/QTab.js +1 -1
  373. package/src/components/tabs/QTabs.js +82 -109
  374. package/src/components/tabs/use-tab.js +36 -38
  375. package/src/components/time/QTime.js +109 -132
  376. package/src/components/timeline/QTimeline.js +7 -4
  377. package/src/components/timeline/QTimelineEntry.js +7 -6
  378. package/src/components/timeline/QTimelineEntry.json +1 -1
  379. package/src/components/toggle/QToggle.js +6 -8
  380. package/src/components/toolbar/QToolbar.js +2 -2
  381. package/src/components/toolbar/QToolbar.test.js +2 -2
  382. package/src/components/toolbar/QToolbarTitle.js +2 -4
  383. package/src/components/toolbar/QToolbarTitle.test.js +2 -2
  384. package/src/components/tooltip/QTooltip.js +27 -28
  385. package/src/components/tree/QTree.js +96 -114
  386. package/src/components/tree/QTree.json +1 -1
  387. package/src/components/uploader/QUploaderAddTrigger.js +2 -2
  388. package/src/components/uploader/uploader-core.js +44 -51
  389. package/src/components/uploader/xhr-uploader-plugin.js +13 -17
  390. package/src/components/video/QVideo.js +1 -1
  391. package/src/components/video/QVideo.test.js +2 -2
  392. package/src/components/virtual-scroll/QVirtualScroll.js +9 -10
  393. package/src/components/virtual-scroll/use-virtual-scroll.js +42 -50
  394. package/src/composables/private.use-align/use-align.js +2 -2
  395. package/src/composables/private.use-align/use-align.test.js +1 -1
  396. package/src/composables/private.use-anchor/use-anchor.js +23 -32
  397. package/src/composables/private.use-dark/use-dark.test.js +1 -1
  398. package/src/composables/private.use-field/use-field.js +79 -99
  399. package/src/composables/private.use-file/use-file-dom-props.js +2 -2
  400. package/src/composables/private.use-file/use-file.js +27 -27
  401. package/src/composables/private.use-fullscreen/use-fullscreen.js +15 -20
  402. package/src/composables/private.use-history/use-history.js +2 -2
  403. package/src/composables/private.use-history/use-history.test.js +1 -1
  404. package/src/composables/private.use-key-composition/use-key-composition.js +11 -12
  405. package/src/composables/private.use-model-toggle/use-model-toggle.js +16 -25
  406. package/src/composables/private.use-panel/use-panel.js +25 -27
  407. package/src/composables/private.use-portal/use-portal.js +11 -9
  408. package/src/composables/private.use-prevent-scroll/use-prevent-scroll.js +1 -4
  409. package/src/composables/private.use-ratio/use-ratio.js +6 -5
  410. package/src/composables/private.use-ratio/use-ratio.test.js +1 -1
  411. package/src/composables/private.use-refocus-target/use-refocus-target.js +2 -4
  412. package/src/composables/private.use-router-link/use-router-link.js +44 -55
  413. package/src/composables/private.use-scroll-target/use-scroll-target.js +1 -1
  414. package/src/composables/private.use-size/use-size.test.js +1 -1
  415. package/src/composables/private.use-transition/use-transition.test.js +1 -1
  416. package/src/composables/private.use-validate/use-validate.js +23 -36
  417. package/src/composables/use-dialog-plugin-component/use-dialog-plugin-component.js +1 -1
  418. package/src/composables/use-form/private.use-form.js +1 -1
  419. package/src/composables/use-form/private.use-form.test.js +3 -3
  420. package/src/composables/use-form/use-form-child.js +7 -7
  421. package/src/composables/use-hydration/use-hydration.js +2 -2
  422. package/src/composables/use-hydration/use-hydration.test.js +1 -1
  423. package/src/composables/use-id/use-id.js +4 -8
  424. package/src/composables/use-id/use-id.test.js +1 -1
  425. package/src/composables/use-interval/use-interval.js +3 -3
  426. package/src/composables/use-interval/use-interval.test.js +1 -1
  427. package/src/composables/use-meta/use-meta.js +3 -3
  428. package/src/composables/use-quasar/use-quasar.test.js +1 -1
  429. package/src/composables/use-render-cache/use-render-cache.js +1 -1
  430. package/src/composables/use-render-cache/use-render-cache.test.js +1 -1
  431. package/src/composables/use-split-attrs/use-split-attrs.js +3 -7
  432. package/src/composables/use-split-attrs/use-split-attrs.test.js +1 -1
  433. package/src/composables/use-tick/use-tick.js +3 -3
  434. package/src/composables/use-tick/use-tick.test.js +2 -2
  435. package/src/composables/use-timeout/use-timeout.js +2 -2
  436. package/src/composables/use-timeout/use-timeout.test.js +1 -1
  437. package/src/directives/close-popup/ClosePopup.js +4 -9
  438. package/src/directives/intersection/Intersection.js +5 -8
  439. package/src/directives/morph/Morph.js +12 -18
  440. package/src/directives/ripple/Ripple.js +19 -26
  441. package/src/directives/ripple/Ripple.test.js +2 -2
  442. package/src/directives/scroll/Scroll.js +2 -2
  443. package/src/directives/touch-hold/TouchHold.js +22 -28
  444. package/src/directives/touch-pan/TouchPan.js +68 -84
  445. package/src/directives/touch-repeat/TouchRepeat.js +28 -39
  446. package/src/directives/touch-swipe/TouchSwipe.js +30 -33
  447. package/src/index.ssr.js +2 -0
  448. package/src/index.umd.js +2 -0
  449. package/src/install-quasar.js +9 -9
  450. package/src/plugins/addressbar/AddressbarColor.js +9 -9
  451. package/src/plugins/addressbar/AddressbarColor.test.js +2 -2
  452. package/src/plugins/app-fullscreen/AppFullscreen.js +11 -10
  453. package/src/plugins/app-fullscreen/AppFullscreen.test.js +2 -2
  454. package/src/plugins/app-fullscreen/test/mock-fullscreen.js +2 -2
  455. package/src/plugins/app-visibility/AppVisibility.js +5 -5
  456. package/src/plugins/app-visibility/AppVisibility.test.js +2 -2
  457. package/src/plugins/bottom-sheet/BottomSheet.js +2 -2
  458. package/src/plugins/bottom-sheet/component/BottomSheetComponent.js +4 -4
  459. package/src/plugins/cookies/Cookies.js +50 -62
  460. package/src/plugins/dark/Dark.js +3 -5
  461. package/src/plugins/dark/Dark.test.js +1 -1
  462. package/src/plugins/dialog/Dialog.js +2 -2
  463. package/src/plugins/dialog/component/DialogPluginComponent.js +17 -20
  464. package/src/plugins/icon-set/IconSet.js +2 -4
  465. package/src/plugins/icon-set/IconSet.test.js +1 -1
  466. package/src/plugins/lang/Lang.js +7 -10
  467. package/src/plugins/lang/Lang.json +2 -2
  468. package/src/plugins/lang/Lang.test.js +2 -2
  469. package/src/plugins/loading/Loading.js +10 -12
  470. package/src/plugins/loading-bar/LoadingBar.js +4 -4
  471. package/src/plugins/meta/Meta.js +10 -11
  472. package/src/plugins/notify/Notify.js +67 -72
  473. package/src/plugins/platform/Platform.js +19 -21
  474. package/src/plugins/platform/Platform.test.js +1 -1
  475. package/src/plugins/private.body/Body.js +23 -29
  476. package/src/plugins/private.body/Body.test.js +1 -1
  477. package/src/plugins/private.history/History.js +17 -25
  478. package/src/plugins/private.history/History.test.js +1 -1
  479. package/src/plugins/screen/Screen.js +16 -16
  480. package/src/plugins/screen/Screen.test.js +1 -1
  481. package/src/plugins/storage/LocalStorage.js +3 -4
  482. package/src/plugins/storage/LocalStorage.test.js +2 -2
  483. package/src/plugins/storage/SessionStorage.js +3 -4
  484. package/src/plugins/storage/SessionStorage.test.js +2 -2
  485. package/src/plugins/storage/engine/web-storage.js +30 -23
  486. package/src/plugins/storage/engine/web-storage.test.js +1 -1
  487. package/src/utils/EventBus/EventBus.js +3 -4
  488. package/src/utils/EventBus/EventBus.test.js +1 -1
  489. package/src/utils/clone/clone.test.js +4 -8
  490. package/src/utils/colors/colors.js +38 -29
  491. package/src/utils/colors/colors.test.js +2 -2
  492. package/src/utils/copy-to-clipboard/copy-to-clipboard.js +6 -11
  493. package/src/utils/create-meta-mixin/create-meta-mixin.js +2 -2
  494. package/src/utils/create-uploader-component/create-uploader-component.js +12 -7
  495. package/src/utils/css-var/get-css-var.test.js +2 -2
  496. package/src/utils/css-var/set-css-var.test.js +2 -2
  497. package/src/utils/date/date.js +229 -172
  498. package/src/utils/date/private.persian.js +11 -11
  499. package/src/utils/debounce/debounce.js +3 -7
  500. package/src/utils/debounce/debounce.test.js +1 -1
  501. package/src/utils/dom/dom.js +2 -4
  502. package/src/utils/dom/dom.test.js +4 -4
  503. package/src/utils/event/event.js +21 -23
  504. package/src/utils/export-file/export-file.js +3 -3
  505. package/src/utils/extend/extend.js +15 -14
  506. package/src/utils/extend/extend.test.js +2 -2
  507. package/src/utils/format/format.js +4 -10
  508. package/src/utils/format/format.test.js +1 -1
  509. package/src/utils/frame-debounce/frame-debounce.js +23 -12
  510. package/src/utils/frame-debounce/frame-debounce.test.js +1 -1
  511. package/src/utils/is/is.js +15 -26
  512. package/src/utils/is/is.test.js +8 -7
  513. package/src/utils/morph/morph.js +57 -48
  514. package/src/utils/open-url/open-url.js +7 -7
  515. package/src/utils/patterns/patterns.js +26 -23
  516. package/src/utils/patterns/patterns.test.js +1 -1
  517. package/src/utils/private.click-outside/click-outside.js +5 -5
  518. package/src/utils/private.config/instance-config.js +2 -0
  519. package/src/utils/private.config/instance-config.test.js +4 -4
  520. package/src/utils/private.config/nodes.js +5 -5
  521. package/src/utils/private.config/nodes.test.js +4 -4
  522. package/src/utils/private.create/create.test.js +1 -1
  523. package/src/utils/private.dialog/create-dialog.js +9 -12
  524. package/src/utils/private.focus/focus-manager.js +1 -1
  525. package/src/utils/private.focus/focus-manager.test.js +4 -4
  526. package/src/utils/private.focus/focusout.js +2 -2
  527. package/src/utils/private.focus/focusout.test.js +1 -1
  528. package/src/utils/private.get-emits-object/get-emits-object.test.js +1 -1
  529. package/src/utils/private.inject-obj-prop/inject-obj-prop.test.js +2 -2
  530. package/src/utils/private.keyboard/escape-key.js +5 -5
  531. package/src/utils/private.keyboard/escape-key.test.js +1 -1
  532. package/src/utils/private.keyboard/key-composition.js +4 -6
  533. package/src/utils/private.noop-ssr-directive-transform/noop-ssr-directive-transform.js +3 -1
  534. package/src/utils/private.noop-ssr-directive-transform/noop-ssr-directive-transform.test.js +1 -1
  535. package/src/utils/private.portal/portal.js +5 -5
  536. package/src/utils/private.position-engine/position-engine.js +20 -22
  537. package/src/utils/private.render/render.js +5 -7
  538. package/src/utils/private.render/render.test.js +5 -5
  539. package/src/utils/private.rtl/rtl.js +3 -2
  540. package/src/utils/private.rtl/rtl.test.js +1 -1
  541. package/src/utils/private.selection/selection.js +1 -1
  542. package/src/utils/private.selection/selection.test.js +2 -2
  543. package/src/utils/private.sort/sort.test.js +2 -2
  544. package/src/utils/private.touch/touch.js +10 -14
  545. package/src/utils/private.touch/touch.test.js +1 -1
  546. package/src/utils/private.vm/vm.js +2 -2
  547. package/src/utils/private.vm/vm.test.js +4 -4
  548. package/src/utils/run-sequential-promises/run-sequential-promises.js +44 -54
  549. package/src/utils/run-sequential-promises/run-sequential-promises.test.js +183 -0
  550. package/src/utils/scroll/prevent-scroll.js +9 -9
  551. package/src/utils/scroll/scroll.js +11 -12
  552. package/src/utils/throttle/throttle.js +4 -3
  553. package/src/utils/throttle/throttle.test.js +1 -1
  554. package/src/utils/uid/uid.js +51 -77
  555. package/src/utils/uid/uid.test.js +3 -3
  556. package/wrappers/index.cjs +2 -2
  557. package/wrappers/index.js +2 -2
  558. package/dist/types/extras/animations.d.ts +0 -106
  559. package/dist/types/extras/fonts.d.ts +0 -1
  560. package/dist/types/extras.d.ts +0 -3
  561. package/dist/vetur/quasar-attributes.json +0 -1
  562. package/dist/vetur/quasar-tags.json +0 -1
@@ -8,13 +8,13 @@ import {
8
8
  import {
9
9
  addEvt,
10
10
  cleanEvt,
11
- position,
12
11
  leftClick,
12
+ noop,
13
+ position,
13
14
  prevent,
14
- stop,
15
- stopAndPrevent,
16
15
  preventDraggable,
17
- noop
16
+ stop,
17
+ stopAndPrevent
18
18
  } from '../../utils/event/event.js'
19
19
  import { clearSelection } from '../../utils/private.selection/selection.js'
20
20
  import getSSRProps from '../../utils/private.noop-ssr-directive-transform/noop-ssr-directive-transform.js'
@@ -29,43 +29,43 @@ function getChanges(evt, ctx, isFinal) {
29
29
 
30
30
  const direction = ctx.direction
31
31
 
32
- if (direction.horizontal === true && direction.vertical !== true) {
32
+ if (direction.horizontal && !direction.vertical) {
33
33
  dir = distX < 0 ? 'left' : 'right'
34
- } else if (direction.horizontal !== true && direction.vertical === true) {
34
+ } else if (!direction.horizontal && direction.vertical) {
35
35
  dir = distY < 0 ? 'up' : 'down'
36
- } else if (direction.up === true && distY < 0) {
36
+ } else if (direction.up && distY < 0) {
37
37
  dir = 'up'
38
38
  if (absX > absY) {
39
- if (direction.left === true && distX < 0) {
39
+ if (direction.left && distX < 0) {
40
40
  dir = 'left'
41
- } else if (direction.right === true && distX > 0) {
41
+ } else if (direction.right && distX > 0) {
42
42
  dir = 'right'
43
43
  }
44
44
  }
45
- } else if (direction.down === true && distY > 0) {
45
+ } else if (direction.down && distY > 0) {
46
46
  dir = 'down'
47
47
  if (absX > absY) {
48
- if (direction.left === true && distX < 0) {
48
+ if (direction.left && distX < 0) {
49
49
  dir = 'left'
50
- } else if (direction.right === true && distX > 0) {
50
+ } else if (direction.right && distX > 0) {
51
51
  dir = 'right'
52
52
  }
53
53
  }
54
- } else if (direction.left === true && distX < 0) {
54
+ } else if (direction.left && distX < 0) {
55
55
  dir = 'left'
56
56
  if (absX < absY) {
57
- if (direction.up === true && distY < 0) {
57
+ if (direction.up && distY < 0) {
58
58
  dir = 'up'
59
- } else if (direction.down === true && distY > 0) {
59
+ } else if (direction.down && distY > 0) {
60
60
  dir = 'down'
61
61
  }
62
62
  }
63
- } else if (direction.right === true && distX > 0) {
63
+ } else if (direction.right && distX > 0) {
64
64
  dir = 'right'
65
65
  if (absX < absY) {
66
- if (direction.up === true && distY < 0) {
66
+ if (direction.up && distY < 0) {
67
67
  dir = 'up'
68
- } else if (direction.down === true && distY > 0) {
68
+ } else if (direction.down && distY > 0) {
69
69
  dir = 'down'
70
70
  }
71
71
  }
@@ -73,8 +73,8 @@ function getChanges(evt, ctx, isFinal) {
73
73
 
74
74
  let synthetic = false
75
75
 
76
- if (dir === void 0 && isFinal === false) {
77
- if (ctx.event.isFirst === true || ctx.event.lastDir === void 0) {
76
+ if (dir === void 0 && !isFinal) {
77
+ if (ctx.event.isFirst || ctx.event.lastDir === void 0) {
78
78
  return {}
79
79
  }
80
80
 
@@ -119,6 +119,10 @@ function getChanges(evt, ctx, isFinal) {
119
119
  }
120
120
  }
121
121
 
122
+ function removeChildrenNoPointerEvents() {
123
+ document.body.classList.remove('no-pointer-events--children')
124
+ }
125
+
122
126
  let uid = 0
123
127
 
124
128
  export default createDirective(
@@ -129,14 +133,14 @@ export default createDirective(
129
133
 
130
134
  beforeMount(el, { value, modifiers }) {
131
135
  // early return, we don't need to do anything
132
- if (modifiers.mouse !== true && client.has.touch !== true) return
136
+ if (!modifiers.mouse && !client.has.touch) return
133
137
 
134
138
  function handleEvent(evt, mouseEvent) {
135
- if (modifiers.mouse === true && mouseEvent === true) {
139
+ if (modifiers.mouse && mouseEvent) {
136
140
  stopAndPrevent(evt)
137
141
  } else {
138
- if (modifiers.stop === true) stop(evt)
139
- if (modifiers.prevent === true) prevent(evt)
142
+ if (modifiers.stop) stop(evt)
143
+ if (modifiers.prevent) prevent(evt)
140
144
  }
141
145
  }
142
146
 
@@ -174,32 +178,30 @@ export default createDirective(
174
178
  },
175
179
 
176
180
  start(evt, mouseEvent) {
177
- if (client.is.firefox === true) preventDraggable(el, true)
181
+ if (client.is.firefox) preventDraggable(el, true)
178
182
  ctx.lastEvt = evt
179
183
 
180
184
  /*
181
185
  * Stop propagation so possible upper v-touch-pan don't catch this as well;
182
186
  * If we're not the target (based on modifiers), we'll re-emit the event later
183
187
  */
184
- if (mouseEvent === true || modifiers.stop === true) {
188
+ if (mouseEvent || modifiers.stop) {
185
189
  /*
186
190
  * are we directly switching to detected state?
187
191
  * clone event only otherwise
188
192
  */
189
193
  if (
190
- ctx.direction.all !== true &&
194
+ !ctx.direction.all &&
191
195
  // account for UMD too where modifiers will be lowercased to work
192
- (mouseEvent !== true ||
193
- (ctx.modifiers.mouseAllDir !== true &&
194
- ctx.modifiers.mousealldir !== true))
196
+ (!mouseEvent ||
197
+ (!ctx.modifiers.mouseAllDir && !ctx.modifiers.mousealldir))
195
198
  ) {
196
- const clone =
197
- evt.type.indexOf('mouse') !== -1
198
- ? new MouseEvent(evt.type, evt)
199
- : new TouchEvent(evt.type, evt)
199
+ const clone = evt.type.includes('mouse')
200
+ ? new MouseEvent(evt.type, evt)
201
+ : new TouchEvent(evt.type, evt)
200
202
 
201
- if (evt.defaultPrevented === true) prevent(clone)
202
- if (evt.cancelBubble === true) stop(clone)
203
+ if (evt.defaultPrevented) prevent(clone)
204
+ if (evt.cancelBubble) stop(clone)
203
205
 
204
206
  Object.assign(clone, {
205
207
  qKeyEvent: evt.qKeyEvent,
@@ -208,7 +210,8 @@ export default createDirective(
208
210
  qClonedBy:
209
211
  evt.qClonedBy === void 0
210
212
  ? [ctx.uid]
211
- : evt.qClonedBy.concat(ctx.uid)
213
+ : // oxlint-disable-next-line unicorn/prefer-spread
214
+ evt.qClonedBy.concat(ctx.uid)
212
215
  })
213
216
 
214
217
  ctx.initialEvent = {
@@ -256,15 +259,12 @@ export default createDirective(
256
259
  handleEvent(evt, isMouseEvt)
257
260
 
258
261
  let cursor
259
- if (
260
- modifiers.preserveCursor !== true &&
261
- modifiers.preservecursor !== true
262
- ) {
262
+ if (!modifiers.preserveCursor && !modifiers.preservecursor) {
263
263
  cursor = document.documentElement.style.cursor || ''
264
264
  document.documentElement.style.cursor = 'grabbing'
265
265
  }
266
266
 
267
- if (isMouseEvt === true) {
267
+ if (isMouseEvt) {
268
268
  document.body.classList.add('no-pointer-events--children')
269
269
  }
270
270
  document.body.classList.add('non-selectable')
@@ -279,20 +279,14 @@ export default createDirective(
279
279
 
280
280
  document.body.classList.remove('non-selectable')
281
281
 
282
- if (isMouseEvt === true) {
283
- const remove = () => {
284
- document.body.classList.remove(
285
- 'no-pointer-events--children'
286
- )
287
- }
288
-
282
+ if (isMouseEvt) {
289
283
  if (withDelayedFn !== void 0) {
290
284
  setTimeout(() => {
291
- remove()
285
+ removeChildrenNoPointerEvents()
292
286
  withDelayedFn()
293
287
  }, 50)
294
288
  } else {
295
- remove()
289
+ removeChildrenNoPointerEvents()
296
290
  }
297
291
  } else if (withDelayedFn !== void 0) {
298
292
  withDelayedFn()
@@ -300,8 +294,8 @@ export default createDirective(
300
294
  }
301
295
  }
302
296
 
303
- if (ctx.event.detected === true) {
304
- if (ctx.event.isFirst !== true) {
297
+ if (ctx.event.detected) {
298
+ if (!ctx.event.isFirst) {
305
299
  handleEvent(evt, ctx.event.mouse)
306
300
  }
307
301
 
@@ -311,17 +305,13 @@ export default createDirective(
311
305
  if (ctx.handler(payload) === false) {
312
306
  ctx.end(evt)
313
307
  } else {
314
- if (
315
- ctx.styleCleanup === void 0 &&
316
- ctx.event.isFirst === true
317
- ) {
308
+ if (ctx.styleCleanup === void 0 && ctx.event.isFirst) {
318
309
  start()
319
310
  }
320
311
 
321
312
  ctx.event.lastX = payload.position.left
322
313
  ctx.event.lastY = payload.position.top
323
- ctx.event.lastDir =
324
- synthetic === true ? void 0 : payload.direction
314
+ ctx.event.lastDir = synthetic ? void 0 : payload.direction
325
315
  ctx.event.isFirst = false
326
316
  }
327
317
  }
@@ -330,11 +320,10 @@ export default createDirective(
330
320
  }
331
321
 
332
322
  if (
333
- ctx.direction.all === true ||
323
+ ctx.direction.all ||
334
324
  // account for UMD too where modifiers will be lowercased to work
335
- (isMouseEvt === true &&
336
- (ctx.modifiers.mouseAllDir === true ||
337
- ctx.modifiers.mousealldir === true))
325
+ (isMouseEvt &&
326
+ (ctx.modifiers.mouseAllDir || ctx.modifiers.mousealldir))
338
327
  ) {
339
328
  start()
340
329
  ctx.event.detected = true
@@ -347,12 +336,12 @@ export default createDirective(
347
336
 
348
337
  if (absX !== absY) {
349
338
  if (
350
- (ctx.direction.horizontal === true && absX > absY) ||
351
- (ctx.direction.vertical === true && absX < absY) ||
352
- (ctx.direction.up === true && absX < absY && distY < 0) ||
353
- (ctx.direction.down === true && absX < absY && distY > 0) ||
354
- (ctx.direction.left === true && absX > absY && distX < 0) ||
355
- (ctx.direction.right === true && absX > absY && distX > 0)
339
+ (ctx.direction.horizontal && absX > absY) ||
340
+ (ctx.direction.vertical && absX < absY) ||
341
+ (ctx.direction.up && absX < absY && distY < 0) ||
342
+ (ctx.direction.down && absX < absY && distY > 0) ||
343
+ (ctx.direction.left && absX > absY && distX < 0) ||
344
+ (ctx.direction.right && absX > absY && distX > 0)
356
345
  ) {
357
346
  ctx.event.detected = true
358
347
  ctx.move(evt)
@@ -366,19 +355,16 @@ export default createDirective(
366
355
  if (ctx.event === void 0) return
367
356
 
368
357
  cleanEvt(ctx, 'temp')
369
- if (client.is.firefox === true) preventDraggable(el, false)
358
+ if (client.is.firefox) preventDraggable(el, false)
370
359
 
371
- if (abort === true) {
360
+ if (abort) {
372
361
  ctx.styleCleanup?.()
373
362
 
374
- if (
375
- ctx.event.detected !== true &&
376
- ctx.initialEvent !== void 0
377
- ) {
363
+ if (!ctx.event.detected && ctx.initialEvent !== void 0) {
378
364
  ctx.initialEvent.target.dispatchEvent(ctx.initialEvent.event)
379
365
  }
380
- } else if (ctx.event.detected === true) {
381
- if (ctx.event.isFirst === true) {
366
+ } else if (ctx.event.detected) {
367
+ if (ctx.event.isFirst) {
382
368
  ctx.handler(
383
369
  getChanges(evt === void 0 ? ctx.lastEvt : evt, ctx).payload
384
370
  )
@@ -408,25 +394,23 @@ export default createDirective(
408
394
 
409
395
  el.__qtouchpan = ctx
410
396
 
411
- if (modifiers.mouse === true) {
397
+ if (modifiers.mouse) {
412
398
  // account for UMD too where modifiers will be lowercased to work
413
399
  const capture =
414
- modifiers.mouseCapture === true || modifiers.mousecapture === true
415
- ? 'Capture'
416
- : ''
400
+ modifiers.mouseCapture || modifiers.mousecapture ? 'Capture' : ''
417
401
 
418
402
  addEvt(ctx, 'main', [
419
403
  [el, 'mousedown', 'mouseStart', `passive${capture}`]
420
404
  ])
421
405
  }
422
406
 
423
- if (client.has.touch === true) {
407
+ if (client.has.touch) {
424
408
  addEvt(ctx, 'main', [
425
409
  [
426
410
  el,
427
411
  'touchstart',
428
412
  'touchStart',
429
- `passive${modifiers.capture === true ? 'Capture' : ''}`
413
+ `passive${modifiers.capture ? 'Capture' : ''}`
430
414
  ],
431
415
  [el, 'touchmove', 'noop', 'notPassiveCapture'] // cannot be passive (ex: iOS scroll)
432
416
  ])
@@ -458,7 +442,7 @@ export default createDirective(
458
442
  cleanEvt(ctx, 'main')
459
443
  cleanEvt(ctx, 'temp')
460
444
 
461
- if (client.is.firefox === true) preventDraggable(el, false)
445
+ if (client.is.firefox) preventDraggable(el, false)
462
446
  ctx.styleCleanup?.()
463
447
 
464
448
  delete el.__qtouchpan
@@ -4,10 +4,10 @@ import { createDirective } from '../../utils/private.create/create.js'
4
4
  import {
5
5
  addEvt,
6
6
  cleanEvt,
7
- position,
8
7
  leftClick,
9
- stopAndPrevent,
10
- noop
8
+ noop,
9
+ position,
10
+ stopAndPrevent
11
11
  } from '../../utils/event/event.js'
12
12
  import { clearSelection } from '../../utils/private.selection/selection.js'
13
13
  import { isKeyCode } from '../../utils/private.keyboard/key-composition.js'
@@ -28,10 +28,13 @@ const keyCodes = {
28
28
 
29
29
  function shouldEnd(evt, origin) {
30
30
  const { top, left } = position(evt)
31
-
32
31
  return Math.abs(left - origin.left) >= 7 || Math.abs(top - origin.top) >= 7
33
32
  }
34
33
 
34
+ function removeBodyNonSelectable() {
35
+ document.body.classList.remove('non-selectable')
36
+ }
37
+
35
38
  export default createDirective(
36
39
  __QUASAR_SSR_SERVER__
37
40
  ? { name: 'touch-repeat', getSSRProps }
@@ -40,10 +43,11 @@ export default createDirective(
40
43
 
41
44
  beforeMount(el, { modifiers, value, arg }) {
42
45
  const keyboard = Object.keys(modifiers).reduce((acc, key) => {
43
- if (keyRegex.test(key) === true) {
44
- const keyCode = isNaN(parseInt(key, 10))
46
+ if (keyRegex.test(key)) {
47
+ const parsedKey = Number.parseInt(key, 10)
48
+ const keyCode = Number.isNaN(parsedKey)
45
49
  ? keyCodes[key.toLowerCase()]
46
- : parseInt(key, 10)
50
+ : parsedKey
47
51
 
48
52
  if (keyCode >= 0) acc.push(keyCode)
49
53
  }
@@ -51,17 +55,13 @@ export default createDirective(
51
55
  }, [])
52
56
 
53
57
  // early return, we don't need to do anything
54
- if (
55
- modifiers.mouse !== true &&
56
- client.has.touch !== true &&
57
- keyboard.length === 0
58
- ) {
58
+ if (!modifiers.mouse && !client.has.touch && keyboard.length === 0) {
59
59
  return
60
60
  }
61
61
 
62
62
  const durations =
63
63
  typeof arg === 'string' && arg.length !== 0
64
- ? arg.split(':').map(val => parseInt(val, 10))
64
+ ? arg.split(':').map(val => Number.parseInt(val, 10))
65
65
  : [0, 600, 300]
66
66
 
67
67
  const durationsLast = durations.length - 1
@@ -76,7 +76,7 @@ export default createDirective(
76
76
  if (
77
77
  ctx.event === void 0 &&
78
78
  typeof ctx.handler === 'function' &&
79
- leftClick(evt) === true
79
+ leftClick(evt)
80
80
  ) {
81
81
  addEvt(ctx, 'temp', [
82
82
  [document, 'mousemove', 'move', 'passiveCapture'],
@@ -89,7 +89,7 @@ export default createDirective(
89
89
  keyboardStart(evt) {
90
90
  if (
91
91
  typeof ctx.handler === 'function' &&
92
- isKeyCode(evt, keyboard) === true
92
+ isKeyCode(evt, keyboard)
93
93
  ) {
94
94
  if (durations[0] === 0 || ctx.event !== void 0) {
95
95
  stopAndPrevent(evt)
@@ -118,35 +118,28 @@ export default createDirective(
118
118
  },
119
119
 
120
120
  start(evt, mouseEvent, keyboardEvent) {
121
- if (keyboardEvent !== true) {
122
- ctx.origin = position(evt)
123
- }
121
+ if (!keyboardEvent) ctx.origin = position(evt)
124
122
 
125
123
  function styleCleanup(withDelay) {
126
124
  ctx.styleCleanup = void 0
127
-
128
125
  document.documentElement.style.cursor = ''
129
126
 
130
- const remove = () => {
131
- document.body.classList.remove('non-selectable')
132
- }
133
-
134
127
  if (withDelay === true) {
135
128
  clearSelection()
136
- setTimeout(remove, 10)
129
+ setTimeout(removeBodyNonSelectable, 10)
137
130
  } else {
138
- remove()
131
+ removeBodyNonSelectable()
139
132
  }
140
133
  }
141
134
 
142
- if (client.is.mobile === true) {
135
+ if (client.is.mobile) {
143
136
  document.body.classList.add('non-selectable')
144
137
  clearSelection()
145
138
  ctx.styleCleanup = styleCleanup
146
139
  }
147
140
 
148
141
  ctx.event = {
149
- touch: mouseEvent !== true && keyboardEvent !== true,
142
+ touch: !mouseEvent && !keyboardEvent,
150
143
  mouse: mouseEvent === true,
151
144
  keyboard: keyboardEvent === true,
152
145
  startTime: Date.now(),
@@ -161,13 +154,13 @@ export default createDirective(
161
154
  if (ctx.event.repeatCount === 0) {
162
155
  ctx.event.evt = evt
163
156
 
164
- if (keyboardEvent === true) {
157
+ if (keyboardEvent) {
165
158
  ctx.event.keyCode = evt.keyCode
166
159
  } else {
167
160
  ctx.event.position = position(evt)
168
161
  }
169
162
 
170
- if (client.is.mobile !== true) {
163
+ if (!client.is.mobile) {
171
164
  document.documentElement.style.cursor = 'pointer'
172
165
  document.body.classList.add('non-selectable')
173
166
  clearSelection()
@@ -199,7 +192,7 @@ export default createDirective(
199
192
  if (
200
193
  ctx.event !== void 0 &&
201
194
  ctx.timer !== void 0 &&
202
- shouldEnd(evt, ctx.origin) === true
195
+ shouldEnd(evt, ctx.origin)
203
196
  ) {
204
197
  clearTimeout(ctx.timer)
205
198
  ctx.timer = void 0
@@ -227,25 +220,23 @@ export default createDirective(
227
220
 
228
221
  el.__qtouchrepeat = ctx
229
222
 
230
- if (modifiers.mouse === true) {
223
+ if (modifiers.mouse) {
231
224
  // account for UMD too where modifiers will be lowercased to work
232
225
  const capture =
233
- modifiers.mouseCapture === true || modifiers.mousecapture === true
234
- ? 'Capture'
235
- : ''
226
+ modifiers.mouseCapture || modifiers.mousecapture ? 'Capture' : ''
236
227
 
237
228
  addEvt(ctx, 'main', [
238
229
  [el, 'mousedown', 'mouseStart', `passive${capture}`]
239
230
  ])
240
231
  }
241
232
 
242
- if (client.has.touch === true) {
233
+ if (client.has.touch) {
243
234
  addEvt(ctx, 'main', [
244
235
  [
245
236
  el,
246
237
  'touchstart',
247
238
  'touchStart',
248
- `passive${modifiers.capture === true ? 'Capture' : ''}`
239
+ `passive${modifiers.capture ? 'Capture' : ''}`
249
240
  ],
250
241
  [el, 'touchend', 'noop', 'passiveCapture']
251
242
  ])
@@ -254,9 +245,7 @@ export default createDirective(
254
245
  if (keyboard.length !== 0) {
255
246
  // account for UMD too where modifiers will be lowercased to work
256
247
  const capture =
257
- modifiers.keyCapture === true || modifiers.keycapture === true
258
- ? 'Capture'
259
- : ''
248
+ modifiers.keyCapture || modifiers.keycapture ? 'Capture' : ''
260
249
 
261
250
  addEvt(ctx, 'main', [
262
251
  [el, 'keydown', 'keyboardStart', `notPassive${capture}`]