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
@@ -1,23 +1,23 @@
1
1
  import {
2
- h,
3
- ref,
4
2
  computed,
5
- watch,
6
- onMounted,
7
- onBeforeUnmount,
3
+ getCurrentInstance,
4
+ h,
8
5
  nextTick,
9
- getCurrentInstance
6
+ onBeforeUnmount,
7
+ onMounted,
8
+ ref,
9
+ watch
10
10
  } from 'vue'
11
11
 
12
12
  import Caret from './editor-caret.js'
13
- import { getToolbar, getFonts, getLinkEditor } from './editor-utils.js'
13
+ import { getFonts, getLinkEditor, getToolbar } from './editor-utils.js'
14
14
 
15
15
  import useDark, {
16
16
  useDarkProps
17
17
  } from '../../composables/private.use-dark/use-dark.js'
18
18
  import useFullscreen, {
19
- useFullscreenProps,
20
- useFullscreenEmits
19
+ useFullscreenEmits,
20
+ useFullscreenProps
21
21
  } from '../../composables/private.use-fullscreen/use-fullscreen.js'
22
22
  import useSplitAttrs from '../../composables/use-split-attrs/use-split-attrs.js'
23
23
 
@@ -52,7 +52,7 @@ export default createComponent({
52
52
 
53
53
  toolbar: {
54
54
  type: Array,
55
- validator: v => v.length === 0 || v.every(group => group.length),
55
+ validator: v => v.every(group => group.length),
56
56
  // long line on purpose for API validation purposes:
57
57
  // oxfmt-ignore
58
58
  default: () => [['left', 'center', 'right', 'justify'], ['bold', 'italic', 'underline', 'strike'], ['undo', 'redo']]
@@ -116,7 +116,7 @@ export default createComponent({
116
116
  let defaultFont, offsetBottom
117
117
  let lastEmit = props.modelValue
118
118
 
119
- if (__QUASAR_SSR_SERVER__ !== true) {
119
+ if (!__QUASAR_SSR_SERVER__) {
120
120
  document.execCommand(
121
121
  'defaultParagraphSeparator',
122
122
  false,
@@ -130,7 +130,7 @@ export default createComponent({
130
130
  )
131
131
 
132
132
  const buttonProps = computed(() => {
133
- const flat = props.toolbarOutline !== true && props.toolbarPush !== true
133
+ const flat = !props.toolbarOutline && !props.toolbarPush
134
134
 
135
135
  return {
136
136
  type: 'a',
@@ -324,6 +324,7 @@ export default createComponent({
324
324
  'size-1': {
325
325
  cmd: 'fontSize',
326
326
  param: '1',
327
+ // oxlint-disable-next-line unicorn/explicit-length-check
327
328
  icon: i.size1 || i.size,
328
329
  tip: e.size1,
329
330
  htmlTip: `<font size="1">${e.size1}</font>`
@@ -331,6 +332,7 @@ export default createComponent({
331
332
  'size-2': {
332
333
  cmd: 'fontSize',
333
334
  param: '2',
335
+ // oxlint-disable-next-line unicorn/explicit-length-check
334
336
  icon: i.size2 || i.size,
335
337
  tip: e.size2,
336
338
  htmlTip: `<font size="2">${e.size2}</font>`
@@ -338,6 +340,7 @@ export default createComponent({
338
340
  'size-3': {
339
341
  cmd: 'fontSize',
340
342
  param: '3',
343
+ // oxlint-disable-next-line unicorn/explicit-length-check
341
344
  icon: i.size3 || i.size,
342
345
  tip: e.size3,
343
346
  htmlTip: `<font size="3">${e.size3}</font>`
@@ -345,6 +348,7 @@ export default createComponent({
345
348
  'size-4': {
346
349
  cmd: 'fontSize',
347
350
  param: '4',
351
+ // oxlint-disable-next-line unicorn/explicit-length-check
348
352
  icon: i.size4 || i.size,
349
353
  tip: e.size4,
350
354
  htmlTip: `<font size="4">${e.size4}</font>`
@@ -352,6 +356,7 @@ export default createComponent({
352
356
  'size-5': {
353
357
  cmd: 'fontSize',
354
358
  param: '5',
359
+ // oxlint-disable-next-line unicorn/explicit-length-check
355
360
  icon: i.size5 || i.size,
356
361
  tip: e.size5,
357
362
  htmlTip: `<font size="5">${e.size5}</font>`
@@ -359,6 +364,7 @@ export default createComponent({
359
364
  'size-6': {
360
365
  cmd: 'fontSize',
361
366
  param: '6',
367
+ // oxlint-disable-next-line unicorn/explicit-length-check
362
368
  icon: i.size6 || i.size,
363
369
  tip: e.size6,
364
370
  htmlTip: `<font size="6">${e.size6}</font>`
@@ -366,6 +372,7 @@ export default createComponent({
366
372
  'size-7': {
367
373
  cmd: 'fontSize',
368
374
  param: '7',
375
+ // oxlint-disable-next-line unicorn/explicit-length-check
369
376
  icon: i.size7 || i.size,
370
377
  tip: e.size7,
371
378
  htmlTip: `<font size="7">${e.size7}</font>`
@@ -417,12 +424,12 @@ export default createComponent({
417
424
  (buttonDef.value[obj.cmd] &&
418
425
  buttonDef.value[obj.cmd].type === 'no-state')))
419
426
  ? obj
420
- : Object.assign({ type: 'toggle' }, obj)
421
- } else {
422
- return {
423
- type: 'slot',
424
- slot: token
425
- }
427
+ : { type: 'toggle', ...obj }
428
+ }
429
+
430
+ return {
431
+ type: 'slot',
432
+ slot: token
426
433
  }
427
434
  })
428
435
  )
@@ -502,13 +509,13 @@ export default createComponent({
502
509
 
503
510
  const classes = computed(
504
511
  () =>
505
- `q-editor q-editor--${isViewingSource.value === true ? 'source' : 'default'}` +
506
- (props.disable === true ? ' disabled' : '') +
507
- (inFullscreen.value === true ? ' fullscreen column' : '') +
508
- (props.square === true ? ' q-editor--square no-border-radius' : '') +
509
- (props.flat === true ? ' q-editor--flat' : '') +
510
- (props.dense === true ? ' q-editor--dense' : '') +
511
- (isDark.value === true ? ' q-editor--dark q-dark' : '')
512
+ `q-editor q-editor--${isViewingSource.value ? 'source' : 'default'}` +
513
+ (props.disable ? ' disabled' : '') +
514
+ (inFullscreen.value ? ' fullscreen column' : '') +
515
+ (props.square ? ' q-editor--square no-border-radius' : '') +
516
+ (props.flat ? ' q-editor--flat' : '') +
517
+ (props.dense ? ' q-editor--dense' : '') +
518
+ (isDark.value ? ' q-editor--dark q-dark' : '')
512
519
  )
513
520
 
514
521
  const innerClass = computed(() => [
@@ -521,12 +528,12 @@ export default createComponent({
521
528
  ])
522
529
 
523
530
  const attributes = computed(() =>
524
- props.disable === true ? { 'aria-disabled': 'true' } : {}
531
+ props.disable ? { 'aria-disabled': 'true' } : {}
525
532
  )
526
533
 
527
534
  function onInput() {
528
535
  if (contentRef.value !== null) {
529
- const prop = `inner${isViewingSource.value === true ? 'Text' : 'HTML'}`
536
+ const prop = `inner${isViewingSource.value ? 'Text' : 'HTML'}`
530
537
  const val = contentRef.value[prop]
531
538
 
532
539
  if (val !== props.modelValue) {
@@ -539,7 +546,7 @@ export default createComponent({
539
546
  function onKeydown(e) {
540
547
  emit('keydown', e)
541
548
 
542
- if (e.ctrlKey !== true || shouldIgnoreKey(e) === true) {
549
+ if (!e.ctrlKey || shouldIgnoreKey(e)) {
543
550
  refreshToolbar()
544
551
  return
545
552
  }
@@ -582,10 +589,10 @@ export default createComponent({
582
589
 
583
590
  if (
584
591
  root !== null &&
585
- root.contains(e.target) === true &&
586
- (e.relatedTarget === null || root.contains(e.relatedTarget) !== true)
592
+ root.contains(e.target) &&
593
+ (e.relatedTarget === null || !root.contains(e.relatedTarget))
587
594
  ) {
588
- const prop = `inner${isViewingSource.value === true ? 'Text' : 'HTML'}`
595
+ const prop = `inner${isViewingSource.value ? 'Text' : 'HTML'}`
589
596
  eVm.caret.restorePosition(contentRef.value[prop].length)
590
597
  refreshToolbar()
591
598
  }
@@ -596,8 +603,8 @@ export default createComponent({
596
603
 
597
604
  if (
598
605
  root !== null &&
599
- root.contains(e.target) === true &&
600
- (e.relatedTarget === null || root.contains(e.relatedTarget) !== true)
606
+ root.contains(e.target) &&
607
+ (e.relatedTarget === null || !root.contains(e.relatedTarget))
601
608
  ) {
602
609
  eVm.caret.savePosition()
603
610
  refreshToolbar()
@@ -614,14 +621,14 @@ export default createComponent({
614
621
 
615
622
  function setContent(v, restorePosition) {
616
623
  if (contentRef.value !== null) {
617
- if (restorePosition === true) {
624
+ if (restorePosition) {
618
625
  eVm.caret.savePosition()
619
626
  }
620
627
 
621
- const prop = `inner${isViewingSource.value === true ? 'Text' : 'HTML'}`
628
+ const prop = `inner${isViewingSource.value ? 'Text' : 'HTML'}`
622
629
  contentRef.value[prop] = v
623
630
 
624
- if (restorePosition === true) {
631
+ if (restorePosition) {
625
632
  eVm.caret.restorePosition(contentRef.value[prop].length)
626
633
  refreshToolbar()
627
634
  }
@@ -724,7 +731,7 @@ export default createComponent({
724
731
  {
725
732
  ref: rootRef,
726
733
  class: classes.value,
727
- style: { height: inFullscreen.value === true ? '100%' : null },
734
+ style: { height: inFullscreen.value ? '100%' : null },
728
735
  ...attributes.value,
729
736
  onFocusin,
730
737
  onFocusout
@@ -1,5 +1,7 @@
1
1
  import { noop } from '../../utils/event/event.js'
2
2
 
3
+ const tagList = ['div', 'li', 'ul', 'ol', 'blockquote']
4
+
3
5
  function getBlockElement(el, parent) {
4
6
  if (parent && el === parent) {
5
7
  return null
@@ -7,9 +9,7 @@ function getBlockElement(el, parent) {
7
9
 
8
10
  const nodeName = el.nodeName.toLowerCase()
9
11
 
10
- if (['div', 'li', 'ul', 'ol', 'blockquote'].includes(nodeName) === true) {
11
- return el
12
- }
12
+ if (tagList.includes(nodeName)) return el
13
13
 
14
14
  const style = window.getComputedStyle
15
15
  ? window.getComputedStyle(el)
@@ -26,7 +26,7 @@ function getBlockElement(el, parent) {
26
26
  function isChildOf(el, parent, orSame) {
27
27
  return !el || el === document.body
28
28
  ? false
29
- : (orSame === true && el === parent) ||
29
+ : (orSame && el === parent) ||
30
30
  (parent === document ? document.body : parent).contains(el.parentNode)
31
31
  }
32
32
 
@@ -186,46 +186,48 @@ export default class Caret {
186
186
  }
187
187
 
188
188
  hasParents(list, recursive, el = this.parent) {
189
- if (el === null) {
190
- return false
191
- }
189
+ if (el === null) return false
192
190
 
193
- if (list.includes(el.nodeName.toLowerCase()) === true) {
191
+ if (list.includes(el.nodeName.toLowerCase())) {
194
192
  return true
195
193
  }
196
194
 
197
- return recursive === true
198
- ? this.hasParents(list, recursive, el.parentNode)
199
- : false
195
+ return recursive ? this.hasParents(list, recursive, el.parentNode) : false
200
196
  }
201
197
 
202
198
  is(cmd, param) {
203
- if (this.selection === null) {
204
- return false
205
- }
199
+ if (this.selection === null) return false
206
200
 
207
201
  switch (cmd) {
208
- case 'formatBlock':
202
+ case 'formatBlock': {
209
203
  return (
210
204
  (param === 'DIV' && this.parent === this.el) ||
211
205
  this.hasParent(param, param === 'PRE')
212
206
  )
213
- case 'link':
207
+ }
208
+ case 'link': {
214
209
  return this.hasParent('A', true)
215
- case 'fontSize':
210
+ }
211
+ case 'fontSize': {
216
212
  return document.queryCommandValue(cmd) === param
217
- case 'fontName':
213
+ }
214
+ case 'fontName': {
218
215
  const res = document.queryCommandValue(cmd)
219
216
  return res === `"${param}"` || res === param
220
- case 'fullscreen':
217
+ }
218
+ case 'fullscreen': {
221
219
  return this.eVm.inFullscreen.value
222
- case 'viewsource':
220
+ }
221
+ case 'viewsource': {
223
222
  return this.eVm.isViewingSource.value
224
- case void 0:
223
+ }
224
+ case void 0: {
225
225
  return false
226
- default:
226
+ }
227
+ default: {
227
228
  const state = document.queryCommandState(cmd)
228
229
  return param !== void 0 ? state === param : state
230
+ }
229
231
  }
230
232
  }
231
233
 
@@ -292,7 +294,7 @@ export default class Caret {
292
294
  const url = selection ? selection.toString() : ''
293
295
 
294
296
  if (
295
- !url.length &&
297
+ url.length === 0 &&
296
298
  (!this.range || !this.range.cloneContents().querySelector('img'))
297
299
  ) {
298
300
  return
@@ -315,7 +317,7 @@ export default class Caret {
315
317
 
316
318
  return
317
319
  } else if (cmd === 'viewsource') {
318
- this.eVm.isViewingSource.value = this.eVm.isViewingSource.value === false
320
+ this.eVm.isViewingSource.value = !this.eVm.isViewingSource.value
319
321
  this.eVm.setContent(this.eVm.props.modelValue)
320
322
  done()
321
323
 
@@ -328,13 +330,7 @@ export default class Caret {
328
330
  }
329
331
 
330
332
  selectWord(sel) {
331
- if (
332
- sel === null ||
333
- sel.isCollapsed !== true ||
334
- /* IE 11 */ sel.modify === void 0
335
- ) {
336
- return sel
337
- }
333
+ if (sel === null || !sel.isCollapsed) return sel
338
334
 
339
335
  // Detect if selection is backwards
340
336
  const range = document.createRange()
@@ -35,7 +35,7 @@ function getBtn(eVm, btn, clickHandler, active = false) {
35
35
 
36
36
  if (eVm.$q.platform.is.desktop && (btn.tip || btn.htmlTip)) {
37
37
  const Key = btn.key
38
- ? h('div', [h('small', `(CTRL + ${String.fromCharCode(btn.key)})`)])
38
+ ? h('div', [h('small', `(CTRL + ${String.fromCodePoint(btn.key)})`)])
39
39
  : null
40
40
 
41
41
  child.push(
@@ -143,7 +143,7 @@ function getDropdown(eVm, btn) {
143
143
  }
144
144
  },
145
145
  () => [
146
- noIcons === true
146
+ noIcons
147
147
  ? null
148
148
  : h(
149
149
  QItemSection,
@@ -291,13 +291,16 @@ export function getLinkEditor(eVm) {
291
291
  link = evt.target.value
292
292
  },
293
293
  onKeydown: evt => {
294
- if (shouldIgnoreKey(evt) === true) return
294
+ if (shouldIgnoreKey(evt)) return
295
295
 
296
296
  switch (evt.keyCode) {
297
- case 13: // ENTER key
297
+ case 13: {
298
+ // ENTER key
298
299
  prevent(evt)
299
300
  return updateLink()
300
- case 27: // ESCAPE key
301
+ }
302
+ case 27: {
303
+ // ESCAPE key
301
304
  prevent(evt)
302
305
  eVm.caret.restore()
303
306
  if (
@@ -308,6 +311,7 @@ export function getLinkEditor(eVm) {
308
311
  }
309
312
  eVm.editLinkUrl.value = null
310
313
  break
314
+ }
311
315
  }
312
316
  }
313
317
  }),
@@ -1,13 +1,13 @@
1
1
  import {
2
- h,
3
- shallowReactive,
4
- ref,
5
2
  computed,
6
- watch,
7
- withDirectives,
8
3
  getCurrentInstance,
4
+ h,
5
+ onBeforeUnmount,
6
+ ref,
7
+ shallowReactive,
9
8
  vShow,
10
- onBeforeUnmount
9
+ watch,
10
+ withDirectives
11
11
  } from 'vue'
12
12
 
13
13
  import QItem from '../item/QItem.js'
@@ -23,8 +23,8 @@ import useDark, {
23
23
  import useId from '../../composables/use-id/use-id.js'
24
24
  import { useRouterLinkProps } from '../../composables/private.use-router-link/use-router-link.js'
25
25
  import useModelToggle, {
26
- useModelToggleProps,
27
- useModelToggleEmits
26
+ useModelToggleEmits,
27
+ useModelToggleProps
28
28
  } from '../../composables/private.use-model-toggle/use-model-toggle.js'
29
29
 
30
30
  import { createComponent } from '../../utils/private.create/create.js'
@@ -97,8 +97,8 @@ export default createComponent({
97
97
  const classes = computed(
98
98
  () =>
99
99
  'q-expansion-item q-item-type' +
100
- ` q-expansion-item--${showing.value === true ? 'expanded' : 'collapsed'}` +
101
- ` q-expansion-item--${props.popup === true ? 'popup' : 'standard'}`
100
+ ` q-expansion-item--${showing.value ? 'expanded' : 'collapsed'}` +
101
+ ` q-expansion-item--${props.popup ? 'popup' : 'standard'}`
102
102
  )
103
103
 
104
104
  const contentStyle = computed(() => {
@@ -106,7 +106,7 @@ export default createComponent({
106
106
  return null
107
107
  }
108
108
 
109
- const dir = $q.lang.rtl === true ? 'Right' : 'Left'
109
+ const dir = $q.lang.rtl ? 'Right' : 'Left'
110
110
  return {
111
111
  ['padding' + dir]: props.contentInsetLevel * 56 + 'px'
112
112
  }
@@ -114,7 +114,7 @@ export default createComponent({
114
114
 
115
115
  const hasLink = computed(
116
116
  () =>
117
- props.disable !== true &&
117
+ !props.disable &&
118
118
  (props.href !== void 0 ||
119
119
  (props.to !== void 0 && props.to !== null && props.to !== ''))
120
120
  )
@@ -127,27 +127,21 @@ export default createComponent({
127
127
  return acc
128
128
  })
129
129
 
130
- const isClickable = computed(
131
- () => hasLink.value === true || props.expandIconToggle !== true
132
- )
130
+ const isClickable = computed(() => hasLink.value || !props.expandIconToggle)
133
131
 
134
132
  const expansionIcon = computed(() =>
135
- props.expandedIcon !== void 0 && showing.value === true
133
+ props.expandedIcon !== void 0 && showing.value
136
134
  ? props.expandedIcon
137
135
  : props.expandIcon ||
138
- $q.iconSet.expansionItem[
139
- props.denseToggle === true ? 'denseIcon' : 'icon'
140
- ]
136
+ $q.iconSet.expansionItem[props.denseToggle ? 'denseIcon' : 'icon']
141
137
  )
142
138
 
143
139
  const activeToggleIcon = computed(
144
- () =>
145
- props.disable !== true &&
146
- (hasLink.value === true || props.expandIconToggle === true)
140
+ () => !props.disable && (hasLink.value || props.expandIconToggle)
147
141
  )
148
142
 
149
143
  const headerSlotScope = computed(() => ({
150
- expanded: showing.value === true,
144
+ expanded: showing.value,
151
145
  detailsId: targetUid.value,
152
146
  toggle,
153
147
  show,
@@ -158,13 +152,11 @@ export default createComponent({
158
152
  const toggleAriaLabel =
159
153
  props.toggleAriaLabel !== void 0
160
154
  ? props.toggleAriaLabel
161
- : $q.lang.label[showing.value === true ? 'collapse' : 'expand'](
162
- props.label
163
- )
155
+ : $q.lang.label[showing.value ? 'collapse' : 'expand'](props.label)
164
156
 
165
157
  return {
166
158
  role: 'button',
167
- 'aria-expanded': showing.value === true ? 'true' : 'false',
159
+ 'aria-expanded': showing.value ? 'true' : 'false',
168
160
  'aria-controls': targetUid.value,
169
161
  'aria-label': toggleAriaLabel
170
162
  }
@@ -179,7 +171,7 @@ export default createComponent({
179
171
  )
180
172
 
181
173
  function onHeaderClick(e) {
182
- if (hasLink.value !== true) toggle(e)
174
+ if (!hasLink.value) toggle(e)
183
175
  emit('click', e)
184
176
  }
185
177
 
@@ -188,9 +180,7 @@ export default createComponent({
188
180
  }
189
181
 
190
182
  function toggleIcon(e, keyboard) {
191
- if (keyboard !== true && e.qAvoidFocus !== true) {
192
- blurTargetRef.value?.focus()
193
- }
183
+ if (!keyboard && !e.qAvoidFocus) blurTargetRef.value?.focus()
194
184
 
195
185
  toggle(e)
196
186
  stopAndPrevent(e)
@@ -209,12 +199,12 @@ export default createComponent({
209
199
  uniqueId = uid()
210
200
  }
211
201
 
212
- if (showing.value === true) {
202
+ if (showing.value) {
213
203
  itemGroups[props.group] = uniqueId
214
204
  }
215
205
 
216
206
  const stopShowWatcher = watch(showing, val => {
217
- if (val === true) {
207
+ if (val) {
218
208
  itemGroups[props.group] = uniqueId
219
209
  } else if (itemGroups[props.group] === uniqueId) {
220
210
  delete itemGroups[props.group]
@@ -246,10 +236,10 @@ export default createComponent({
246
236
  const data = {
247
237
  class: [
248
238
  'q-focusable relative-position cursor-pointer' +
249
- `${props.denseToggle === true && props.switchToggleSide === true ? ' items-end' : ''}`,
239
+ `${props.denseToggle && props.switchToggleSide ? ' items-end' : ''}`,
250
240
  props.expandIconClass
251
241
  ],
252
- side: props.switchToggleSide !== true,
242
+ side: !props.switchToggleSide,
253
243
  avatar: props.switchToggleSide
254
244
  }
255
245
 
@@ -257,14 +247,14 @@ export default createComponent({
257
247
  h(QIcon, {
258
248
  class:
259
249
  'q-expansion-item__toggle-icon' +
260
- (props.expandedIcon === void 0 && showing.value === true
250
+ (props.expandedIcon === void 0 && showing.value
261
251
  ? ' q-expansion-item__toggle-icon--rotated'
262
252
  : ''),
263
253
  name: expansionIcon.value
264
254
  })
265
255
  ]
266
256
 
267
- if (activeToggleIcon.value === true) {
257
+ if (activeToggleIcon.value) {
268
258
  Object.assign(data, {
269
259
  tabindex: 0,
270
260
  ...toggleAriaAttrs.value,
@@ -289,7 +279,7 @@ export default createComponent({
289
279
  let child
290
280
 
291
281
  if (slots.header !== void 0) {
292
- child = [].concat(slots.header(headerSlotScope.value))
282
+ child = [slots.header(headerSlotScope.value)].flat()
293
283
  } else {
294
284
  child = [
295
285
  h(QItemSection, () => [
@@ -306,12 +296,12 @@ export default createComponent({
306
296
  ]
307
297
 
308
298
  if (props.icon) {
309
- child[props.switchToggleSide === true ? 'push' : 'unshift'](
299
+ child[props.switchToggleSide ? 'push' : 'unshift'](
310
300
  h(
311
301
  QItemSection,
312
302
  {
313
- side: props.switchToggleSide === true,
314
- avatar: props.switchToggleSide !== true
303
+ side: props.switchToggleSide,
304
+ avatar: !props.switchToggleSide
315
305
  },
316
306
  () => h(QIcon, { name: props.icon })
317
307
  )
@@ -319,10 +309,8 @@ export default createComponent({
319
309
  }
320
310
  }
321
311
 
322
- if (props.disable !== true && props.hideExpandIcon !== true) {
323
- child[props.switchToggleSide === true ? 'unshift' : 'push'](
324
- getToggleIcon()
325
- )
312
+ if (!props.disable && !props.hideExpandIcon) {
313
+ child[props.switchToggleSide ? 'unshift' : 'push'](getToggleIcon())
326
314
  }
327
315
 
328
316
  return child
@@ -339,13 +327,13 @@ export default createComponent({
339
327
  insetLevel: props.headerInsetLevel
340
328
  }
341
329
 
342
- if (isClickable.value === true) {
330
+ if (isClickable.value) {
343
331
  data.clickable = true
344
332
  data.onClick = onHeaderClick
345
333
 
346
334
  Object.assign(
347
335
  data,
348
- hasLink.value === true ? linkProps.value : toggleAriaAttrs.value
336
+ hasLink.value ? linkProps.value : toggleAriaAttrs.value
349
337
  )
350
338
  }
351
339
 
@@ -383,7 +371,7 @@ export default createComponent({
383
371
  )
384
372
  ]
385
373
 
386
- if (props.expandSeparator === true) {
374
+ if (props.expandSeparator) {
387
375
  node.push(
388
376
  h(QSeparator, {
389
377
  class: