quasar 2.15.3 → 2.16.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 (582) hide show
  1. package/dist/api/AppFullscreen.json +1 -1
  2. package/dist/api/Brand.json +1 -1
  3. package/dist/api/QBreadcrumbs.json +1 -1
  4. package/dist/api/QBreadcrumbsEl.json +1 -1
  5. package/dist/api/QBtnDropdown.json +1 -1
  6. package/dist/api/QCarousel.json +1 -1
  7. package/dist/api/QCheckbox.json +1 -1
  8. package/dist/api/QCircularProgress.json +1 -1
  9. package/dist/api/QDialog.json +1 -1
  10. package/dist/api/QDrawer.json +1 -1
  11. package/dist/api/QEditor.json +1 -1
  12. package/dist/api/QExpansionItem.json +1 -1
  13. package/dist/api/QFab.json +1 -1
  14. package/dist/api/QFabAction.json +1 -1
  15. package/dist/api/QField.json +1 -1
  16. package/dist/api/QFile.json +1 -1
  17. package/dist/api/QImg.json +1 -1
  18. package/dist/api/QInnerLoading.json +1 -1
  19. package/dist/api/QInput.json +1 -1
  20. package/dist/api/QIntersection.json +1 -1
  21. package/dist/api/QItem.json +1 -1
  22. package/dist/api/QKnob.json +1 -1
  23. package/dist/api/QMenu.json +1 -1
  24. package/dist/api/QPage.json +1 -1
  25. package/dist/api/QPagination.json +1 -1
  26. package/dist/api/QParallax.json +1 -1
  27. package/dist/api/QPopupEdit.json +1 -1
  28. package/dist/api/QRadio.json +1 -1
  29. package/dist/api/QRange.json +1 -1
  30. package/dist/api/QRouteTab.json +1 -1
  31. package/dist/api/QSelect.json +1 -1
  32. package/dist/api/QSeparator.json +1 -1
  33. package/dist/api/QSkeleton.json +1 -1
  34. package/dist/api/QSlider.json +1 -1
  35. package/dist/api/QSpinner.json +1 -1
  36. package/dist/api/QSpinnerAudio.json +1 -1
  37. package/dist/api/QSpinnerBall.json +1 -1
  38. package/dist/api/QSpinnerBars.json +1 -1
  39. package/dist/api/QSpinnerBox.json +1 -1
  40. package/dist/api/QSpinnerClock.json +1 -1
  41. package/dist/api/QSpinnerComment.json +1 -1
  42. package/dist/api/QSpinnerCube.json +1 -1
  43. package/dist/api/QSpinnerDots.json +1 -1
  44. package/dist/api/QSpinnerFacebook.json +1 -1
  45. package/dist/api/QSpinnerGears.json +1 -1
  46. package/dist/api/QSpinnerGrid.json +1 -1
  47. package/dist/api/QSpinnerHearts.json +1 -1
  48. package/dist/api/QSpinnerHourglass.json +1 -1
  49. package/dist/api/QSpinnerInfinity.json +1 -1
  50. package/dist/api/QSpinnerIos.json +1 -1
  51. package/dist/api/QSpinnerOrbit.json +1 -1
  52. package/dist/api/QSpinnerOval.json +1 -1
  53. package/dist/api/QSpinnerPie.json +1 -1
  54. package/dist/api/QSpinnerPuff.json +1 -1
  55. package/dist/api/QSpinnerRadio.json +1 -1
  56. package/dist/api/QSpinnerRings.json +1 -1
  57. package/dist/api/QSpinnerTail.json +1 -1
  58. package/dist/api/QSplitter.json +1 -1
  59. package/dist/api/QStepper.json +1 -1
  60. package/dist/api/QTabPanels.json +1 -1
  61. package/dist/api/QTable.json +1 -1
  62. package/dist/api/QTimeline.json +1 -1
  63. package/dist/api/QToggle.json +1 -1
  64. package/dist/api/QTooltip.json +1 -1
  65. package/dist/api/QTree.json +1 -1
  66. package/dist/api/QVirtualScroll.json +1 -1
  67. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  68. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  69. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  70. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  71. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  72. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  73. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  74. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  75. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  76. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  77. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  78. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  79. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  80. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  81. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  82. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  83. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  84. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  85. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  86. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  87. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  88. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  89. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  90. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  91. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  92. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  93. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  94. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  95. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  96. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  97. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  98. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  99. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  100. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  101. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  102. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  103. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  104. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  105. package/dist/icon-set/themify.umd.prod.js +1 -1
  106. package/dist/lang/ar-TN.umd.prod.js +1 -1
  107. package/dist/lang/ar.umd.prod.js +1 -1
  108. package/dist/lang/az-Latn.umd.prod.js +1 -1
  109. package/dist/lang/bg.umd.prod.js +1 -1
  110. package/dist/lang/bn.umd.prod.js +1 -1
  111. package/dist/lang/ca.umd.prod.js +1 -1
  112. package/dist/lang/cs.umd.prod.js +1 -1
  113. package/dist/lang/da.umd.prod.js +1 -1
  114. package/dist/lang/de-CH.umd.prod.js +1 -1
  115. package/dist/lang/de-DE.umd.prod.js +1 -1
  116. package/dist/lang/de.umd.prod.js +1 -1
  117. package/dist/lang/el.umd.prod.js +1 -1
  118. package/dist/lang/en-GB.umd.prod.js +1 -1
  119. package/dist/lang/en-US.umd.prod.js +1 -1
  120. package/dist/lang/eo.umd.prod.js +1 -1
  121. package/dist/lang/es.umd.prod.js +1 -1
  122. package/dist/lang/et.umd.prod.js +1 -1
  123. package/dist/lang/eu.umd.prod.js +1 -1
  124. package/dist/lang/fa-IR.umd.prod.js +1 -1
  125. package/dist/lang/fa.umd.prod.js +1 -1
  126. package/dist/lang/fi.umd.prod.js +1 -1
  127. package/dist/lang/fr.umd.prod.js +1 -1
  128. package/dist/lang/gn.umd.prod.js +1 -1
  129. package/dist/lang/he.umd.prod.js +1 -1
  130. package/dist/lang/hi.umd.prod.js +1 -1
  131. package/dist/lang/hr.umd.prod.js +1 -1
  132. package/dist/lang/hu.umd.prod.js +1 -1
  133. package/dist/lang/id.umd.prod.js +1 -1
  134. package/dist/lang/is.umd.prod.js +1 -1
  135. package/dist/lang/it.umd.prod.js +1 -1
  136. package/dist/lang/ja.umd.prod.js +1 -1
  137. package/dist/lang/kk.umd.prod.js +1 -1
  138. package/dist/lang/km.umd.prod.js +1 -1
  139. package/dist/lang/ko-KR.umd.prod.js +1 -1
  140. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  141. package/dist/lang/lt.umd.prod.js +1 -1
  142. package/dist/lang/lu.umd.prod.js +1 -1
  143. package/dist/lang/lv.umd.prod.js +1 -1
  144. package/dist/lang/mk.umd.prod.js +1 -1
  145. package/dist/lang/ml.umd.prod.js +1 -1
  146. package/dist/lang/mm.umd.prod.js +1 -1
  147. package/dist/lang/ms-MY.umd.prod.js +1 -1
  148. package/dist/lang/ms.umd.prod.js +1 -1
  149. package/dist/lang/my.umd.prod.js +1 -1
  150. package/dist/lang/nb-NO.umd.prod.js +1 -1
  151. package/dist/lang/nl.umd.prod.js +1 -1
  152. package/dist/lang/pl.umd.prod.js +1 -1
  153. package/dist/lang/pt-BR.umd.prod.js +1 -1
  154. package/dist/lang/pt.umd.prod.js +1 -1
  155. package/dist/lang/ro.umd.prod.js +1 -1
  156. package/dist/lang/ru.umd.prod.js +1 -1
  157. package/dist/lang/sk.umd.prod.js +1 -1
  158. package/dist/lang/sl.umd.prod.js +1 -1
  159. package/dist/lang/sm.umd.prod.js +1 -1
  160. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  161. package/dist/lang/sr.umd.prod.js +1 -1
  162. package/dist/lang/sv.umd.prod.js +1 -1
  163. package/dist/lang/ta.umd.prod.js +1 -1
  164. package/dist/lang/th.umd.prod.js +1 -1
  165. package/dist/lang/tl.umd.prod.js +1 -1
  166. package/dist/lang/tr.umd.prod.js +1 -1
  167. package/dist/lang/ug.umd.prod.js +1 -1
  168. package/dist/lang/uk.umd.prod.js +1 -1
  169. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  170. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  171. package/dist/lang/vi.umd.prod.js +1 -1
  172. package/dist/lang/zh-CN.umd.prod.js +1 -1
  173. package/dist/lang/zh-TW.umd.prod.js +1 -1
  174. package/dist/{quasar.esm.js → quasar.client.js} +337 -364
  175. package/dist/quasar.sass +1 -1
  176. package/dist/quasar.server.prod.cjs +127 -0
  177. package/dist/quasar.server.prod.js +127 -0
  178. package/dist/quasar.umd.js +337 -363
  179. package/dist/quasar.umd.prod.js +8 -8
  180. package/dist/transforms/api-list.json +1 -1
  181. package/dist/types/index.d.ts +191 -93
  182. package/dist/vetur/quasar-attributes.json +1 -1
  183. package/dist/vetur/quasar-tags.json +1 -1
  184. package/dist/web-types/web-types.json +1 -1
  185. package/icon-set/bootstrap-icons.js +3 -8
  186. package/icon-set/eva-icons.js +3 -8
  187. package/icon-set/fontawesome-v5-pro.js +1 -6
  188. package/icon-set/fontawesome-v5.js +1 -6
  189. package/icon-set/fontawesome-v6-pro.js +1 -6
  190. package/icon-set/fontawesome-v6.js +1 -6
  191. package/icon-set/ionicons-v4.js +3 -8
  192. package/icon-set/line-awesome.js +1 -6
  193. package/icon-set/material-icons-outlined.js +1 -6
  194. package/icon-set/material-icons-round.js +1 -6
  195. package/icon-set/material-icons-sharp.js +1 -6
  196. package/icon-set/material-icons.js +1 -6
  197. package/icon-set/material-symbols-outlined.js +1 -6
  198. package/icon-set/material-symbols-rounded.js +1 -6
  199. package/icon-set/material-symbols-sharp.js +1 -6
  200. package/icon-set/mdi-v3.js +1 -6
  201. package/icon-set/mdi-v4.js +1 -6
  202. package/icon-set/mdi-v5.js +1 -6
  203. package/icon-set/mdi-v6.js +1 -6
  204. package/icon-set/mdi-v7.js +1 -6
  205. package/icon-set/svg-bootstrap-icons.js +6 -6
  206. package/icon-set/svg-eva-icons.js +6 -6
  207. package/icon-set/svg-fontawesome-v5.js +3 -3
  208. package/icon-set/svg-fontawesome-v6.js +4 -5
  209. package/icon-set/svg-ionicons-v4.js +6 -6
  210. package/icon-set/svg-ionicons-v5.js +5 -5
  211. package/icon-set/svg-ionicons-v6.js +5 -5
  212. package/icon-set/svg-line-awesome.js +4 -5
  213. package/icon-set/svg-material-icons-outlined.js +4 -5
  214. package/icon-set/svg-material-icons-round.js +4 -5
  215. package/icon-set/svg-material-icons-sharp.js +4 -5
  216. package/icon-set/svg-material-icons.js +4 -5
  217. package/icon-set/svg-material-symbols-outlined.js +4 -4
  218. package/icon-set/svg-material-symbols-rounded.js +4 -4
  219. package/icon-set/svg-material-symbols-sharp.js +4 -4
  220. package/icon-set/svg-mdi-v6.js +4 -5
  221. package/icon-set/svg-mdi-v7.js +4 -4
  222. package/icon-set/svg-themify.js +6 -6
  223. package/icon-set/themify.js +3 -8
  224. package/lang/ar-TN.js +1 -6
  225. package/lang/ar.js +1 -6
  226. package/lang/az-Latn.js +1 -6
  227. package/lang/bg.js +1 -6
  228. package/lang/bn.js +1 -6
  229. package/lang/ca.js +1 -6
  230. package/lang/cs.js +1 -6
  231. package/lang/da.js +1 -6
  232. package/lang/de-CH.js +1 -6
  233. package/lang/de-DE.js +1 -6
  234. package/lang/de.js +1 -6
  235. package/lang/el.js +1 -6
  236. package/lang/en-GB.js +1 -6
  237. package/lang/en-US.js +1 -6
  238. package/lang/eo.js +1 -6
  239. package/lang/es.js +1 -6
  240. package/lang/et.js +1 -6
  241. package/lang/eu.js +1 -6
  242. package/lang/fa-IR.js +1 -6
  243. package/lang/fa.js +1 -6
  244. package/lang/fi.js +1 -6
  245. package/lang/fr.js +1 -6
  246. package/lang/gn.js +1 -6
  247. package/lang/he.js +1 -6
  248. package/lang/hi.js +1 -6
  249. package/lang/hr.js +1 -6
  250. package/lang/hu.js +1 -6
  251. package/lang/id.js +1 -6
  252. package/lang/is.js +1 -6
  253. package/lang/it.js +1 -6
  254. package/lang/ja.js +1 -6
  255. package/lang/kk.js +1 -6
  256. package/lang/km.js +1 -6
  257. package/lang/ko-KR.js +1 -6
  258. package/lang/kur-CKB.js +1 -6
  259. package/lang/lt.js +1 -6
  260. package/lang/lu.js +1 -6
  261. package/lang/lv.js +1 -6
  262. package/lang/mk.js +1 -6
  263. package/lang/ml.js +1 -6
  264. package/lang/mm.js +1 -6
  265. package/lang/ms-MY.js +1 -6
  266. package/lang/ms.js +1 -6
  267. package/lang/my.js +1 -6
  268. package/lang/nb-NO.js +1 -6
  269. package/lang/nl.js +1 -6
  270. package/lang/pl.js +1 -6
  271. package/lang/pt-BR.js +1 -6
  272. package/lang/pt.js +1 -6
  273. package/lang/ro.js +1 -6
  274. package/lang/ru.js +1 -6
  275. package/lang/sk.js +1 -6
  276. package/lang/sl.js +1 -6
  277. package/lang/sm.js +1 -6
  278. package/lang/sr-CYR.js +1 -6
  279. package/lang/sr.js +1 -6
  280. package/lang/sv.js +1 -6
  281. package/lang/ta.js +1 -6
  282. package/lang/th.js +1 -6
  283. package/lang/tl.js +1 -6
  284. package/lang/tr.js +1 -6
  285. package/lang/ug.js +1 -6
  286. package/lang/uk.js +1 -6
  287. package/lang/uz-Cyrl.js +1 -6
  288. package/lang/uz-Latn.js +1 -6
  289. package/lang/vi.js +1 -6
  290. package/lang/zh-CN.js +1 -6
  291. package/lang/zh-TW.js +1 -6
  292. package/package.json +20 -9
  293. package/src/components/avatar/QAvatar.test.js +0 -28
  294. package/src/components/badge/QBadge.test.js +0 -36
  295. package/src/components/banner/QBanner.test.js +0 -16
  296. package/src/components/bar/QBar.test.js +0 -8
  297. package/src/components/breadcrumbs/QBreadcrumbs.json +2 -1
  298. package/src/components/breadcrumbs/QBreadcrumbs.test.js +1 -21
  299. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +0 -51
  300. package/src/components/btn/QBtn.json +6 -1
  301. package/src/components/btn/QBtn.test.js +0 -143
  302. package/src/components/btn/use-btn.js +8 -4
  303. package/src/components/btn/use-btn.test.js +9 -1
  304. package/src/components/btn-dropdown/QBtnDropdown.js +3 -3
  305. package/src/components/btn-dropdown/QBtnDropdown.json +1 -4
  306. package/src/components/btn-toggle/QBtnToggle.json +3 -1
  307. package/src/components/card/QCardActions.json +1 -0
  308. package/src/components/carousel/QCarousel.js +4 -3
  309. package/src/components/carousel/QCarousel.json +6 -3
  310. package/src/components/checkbox/use-checkbox.json +1 -1
  311. package/src/components/chip/QChip.test.js +0 -108
  312. package/src/components/circular-progress/QCircularProgress.json +0 -1
  313. package/src/components/color/QColor.json +1 -0
  314. package/src/components/date/QDate.js +8 -2
  315. package/src/components/date/QDate.json +1 -0
  316. package/src/components/date/use-datetime.js +1 -3
  317. package/src/components/dialog/QDialog.js +1 -2
  318. package/src/components/dialog/QDialog.json +11 -1
  319. package/src/components/dialog/QDialog.test.js +38 -160
  320. package/src/components/drawer/QDrawer.json +2 -2
  321. package/src/components/editor/QEditor.js +3 -8
  322. package/src/components/editor/QEditor.json +9 -2
  323. package/src/components/expansion-item/QExpansionItem.js +1 -1
  324. package/src/components/expansion-item/QExpansionItem.json +5 -6
  325. package/src/components/fab/QFab.js +1 -0
  326. package/src/components/fab/QFab.json +5 -4
  327. package/src/components/fab/QFabAction.json +2 -1
  328. package/src/components/fab/use-fab.json +2 -1
  329. package/src/components/field/QField.json +0 -39
  330. package/src/components/file/QFile.js +2 -2
  331. package/src/components/file/QFile.json +2 -7
  332. package/src/components/footer/QFooter.json +3 -1
  333. package/src/components/form/QForm.js +1 -1
  334. package/src/components/header/QHeader.json +3 -1
  335. package/src/components/img/QImg.json +1 -1
  336. package/src/components/infinite-scroll/QInfiniteScroll.js +7 -6
  337. package/src/components/inner-loading/QInnerLoading.js +1 -1
  338. package/src/components/inner-loading/QInnerLoading.json +1 -0
  339. package/src/components/input/QInput.js +2 -1
  340. package/src/components/input/QInput.json +7 -24
  341. package/src/components/intersection/QIntersection.json +1 -1
  342. package/src/components/item/QItem.json +3 -1
  343. package/src/components/knob/QKnob.json +11 -2
  344. package/src/components/menu/QMenu.js +2 -4
  345. package/src/components/menu/QMenu.json +3 -1
  346. package/src/components/option-group/QOptionGroup.js +1 -0
  347. package/src/components/page/QPage.json +1 -2
  348. package/src/components/page-scroller/QPageScroller.js +1 -0
  349. package/src/components/page-scroller/QPageScroller.json +4 -0
  350. package/src/components/page-sticky/QPageSticky.js +1 -1
  351. package/src/components/pagination/QPagination.json +7 -2
  352. package/src/components/parallax/QParallax.js +2 -4
  353. package/src/components/parallax/QParallax.json +1 -0
  354. package/src/components/popup-edit/QPopupEdit.json +2 -1
  355. package/src/components/pull-to-refresh/QPullToRefresh.js +2 -4
  356. package/src/components/radio/QRadio.json +2 -2
  357. package/src/components/range/QRange.json +1 -0
  358. package/src/components/scroll-observer/QScrollObserver.js +2 -4
  359. package/src/components/select/QSelect.js +7 -7
  360. package/src/components/select/QSelect.json +27 -16
  361. package/src/components/separator/QSeparator.json +0 -1
  362. package/src/components/skeleton/QSkeleton.json +1 -1
  363. package/src/components/slider/QSlider.json +1 -0
  364. package/src/components/slider/use-slider.js +0 -2
  365. package/src/components/spinner/QSpinner.json +1 -5
  366. package/src/components/spinner/QSpinner.test.js +79 -0
  367. package/src/components/spinner/QSpinnerAudio.test.js +59 -0
  368. package/src/components/spinner/QSpinnerBall.test.js +59 -0
  369. package/src/components/spinner/QSpinnerBars.test.js +59 -0
  370. package/src/components/spinner/QSpinnerBox.test.js +59 -0
  371. package/src/components/spinner/QSpinnerClock.test.js +59 -0
  372. package/src/components/spinner/QSpinnerComment.test.js +59 -0
  373. package/src/components/spinner/QSpinnerCube.test.js +59 -0
  374. package/src/components/spinner/QSpinnerDots.test.js +59 -0
  375. package/src/components/spinner/QSpinnerFacebook.test.js +59 -0
  376. package/src/components/spinner/QSpinnerGears.test.js +59 -0
  377. package/src/components/spinner/QSpinnerGrid.test.js +59 -0
  378. package/src/components/spinner/QSpinnerHearts.test.js +59 -0
  379. package/src/components/spinner/QSpinnerHourglass.test.js +59 -0
  380. package/src/components/spinner/QSpinnerInfinity.test.js +59 -0
  381. package/src/components/spinner/QSpinnerIos.test.js +59 -0
  382. package/src/components/spinner/QSpinnerOrbit.test.js +59 -0
  383. package/src/components/spinner/QSpinnerOval.test.js +59 -0
  384. package/src/components/spinner/QSpinnerPie.test.js +59 -0
  385. package/src/components/spinner/QSpinnerPuff.test.js +59 -0
  386. package/src/components/spinner/QSpinnerRadio.test.js +59 -0
  387. package/src/components/spinner/QSpinnerRings.test.js +59 -0
  388. package/src/components/spinner/QSpinnerTail.test.js +59 -0
  389. package/src/components/spinner/spinner.json +5 -0
  390. package/src/components/spinner/use-spinner.js +1 -1
  391. package/src/components/spinner/use-spinner.test.js +59 -0
  392. package/src/components/splitter/QSplitter.json +3 -3
  393. package/src/components/stepper/QStep.json +6 -0
  394. package/src/components/tab-panels/QTabPanels.json +6 -0
  395. package/src/components/table/QTable.js +6 -8
  396. package/src/components/table/QTable.json +13 -8
  397. package/src/components/table/QTh.json +4 -0
  398. package/src/components/tabs/QRouteTab.json +3 -2
  399. package/src/components/tabs/QTab.json +1 -65
  400. package/src/components/tabs/use-tab.json +72 -0
  401. package/src/components/time/QTime.js +6 -0
  402. package/src/components/time/QTime.json +2 -0
  403. package/src/components/timeline/QTimeline.json +2 -1
  404. package/src/components/toolbar/QToolbar.test.js +41 -0
  405. package/src/components/toolbar/QToolbarTitle.test.js +41 -0
  406. package/src/components/tooltip/QTooltip.js +6 -6
  407. package/src/components/tooltip/QTooltip.json +6 -15
  408. package/src/components/tree/QTree.js +1 -1
  409. package/src/components/tree/QTree.json +2 -1
  410. package/src/components/uploader/xhr-uploader-plugin.js +1 -3
  411. package/src/components/video/QVideo.test.js +0 -24
  412. package/src/components/virtual-scroll/QVirtualScroll.js +2 -4
  413. package/src/components/virtual-scroll/QVirtualScroll.json +0 -1
  414. package/src/components/virtual-scroll/use-virtual-scroll.js +2 -2
  415. package/src/components/virtual-scroll/use-virtual-scroll.json +1 -1
  416. package/src/composables/private.use-anchor/use-anchor-static.json +22 -0
  417. package/src/composables/private.use-anchor/use-anchor.js +13 -4
  418. package/src/composables/private.use-anchor/use-anchor.json +2 -19
  419. package/src/composables/private.use-field/use-field.js +6 -3
  420. package/src/composables/private.use-field/use-field.json +22 -0
  421. package/src/composables/private.use-fullscreen/use-fullscreen.json +10 -0
  422. package/src/composables/private.use-model-toggle/use-model-toggle.json +4 -2
  423. package/src/composables/private.use-panel/use-panel.json +3 -0
  424. package/src/composables/private.use-portal/use-portal.js +1 -1
  425. package/src/composables/private.use-router-link/use-router-link.js +15 -9
  426. package/src/composables/private.use-router-link/use-router-link.json +2 -0
  427. package/src/composables/private.use-validate/use-validate.json +1 -0
  428. package/src/composables/use-id/use-id.test.js +0 -1
  429. package/src/composables/use-interval/use-interval.test.js +173 -0
  430. package/src/composables/use-render-cache/use-render-cache.js +2 -2
  431. package/src/composables/use-render-cache/use-render-cache.test.js +73 -0
  432. package/src/composables/use-split-attrs/use-split-attrs.test.js +55 -0
  433. package/src/composables/use-tick/use-tick.test.js +118 -0
  434. package/src/composables/use-timeout/use-timeout.test.js +169 -0
  435. package/src/install-quasar.js +1 -1
  436. package/src/plugins/addressbar/AddressbarColor.test.js +53 -0
  437. package/src/plugins/app-fullscreen/AppFullscreen.js +1 -1
  438. package/src/plugins/app-fullscreen/AppFullscreen.json +3 -1
  439. package/src/plugins/app-fullscreen/AppFullscreen.test.js +206 -0
  440. package/src/plugins/app-fullscreen/test/mock-fullscreen.js +43 -0
  441. package/src/plugins/app-visibility/AppVisibility.test.js +45 -0
  442. package/src/plugins/bottom-sheet/BottomSheet.js +1 -1
  443. package/src/plugins/bottom-sheet/BottomSheet.json +1 -1
  444. package/src/plugins/dark/Dark.test.js +158 -0
  445. package/src/plugins/dialog/Dialog.js +1 -1
  446. package/src/plugins/dialog/Dialog.json +1 -1
  447. package/src/plugins/icon-set/IconSet.js +1 -2
  448. package/src/plugins/icon-set/IconSet.test.js +2 -2
  449. package/src/plugins/lang/Lang.js +1 -2
  450. package/src/plugins/lang/Lang.test.js +2 -2
  451. package/src/plugins/loading/Loading.js +1 -1
  452. package/src/plugins/loading-bar/LoadingBar.js +1 -1
  453. package/src/plugins/notify/Notify.js +1 -1
  454. package/src/plugins/platform/Platform.js +2 -1
  455. package/src/plugins/private.body/Body.test.js +28 -0
  456. package/src/plugins/private.history/History.test.js +38 -0
  457. package/src/plugins/screen/Screen.test.js +453 -0
  458. package/src/utils/css-var/get-css-var.test.js +12 -0
  459. package/src/utils/css-var/set-css-var.test.js +18 -0
  460. package/src/utils/dom/dom.test.js +222 -0
  461. package/src/utils/{private.global/global-config.test.js → private.config/instance-config.test.js} +2 -2
  462. package/src/utils/{private.global/global-nodes.js → private.config/nodes.js} +1 -1
  463. package/src/utils/{private.global/global-nodes.test.js → private.config/nodes.test.js} +3 -3
  464. package/src/utils/{private.global/global-dialog.js → private.dialog/create-dialog.js} +1 -1
  465. package/src/utils/private.render/render.test.js +187 -0
  466. package/src/utils/private.selection/selection.test.js +40 -0
  467. package/src/utils/private.vm/vm.test.js +175 -0
  468. package/src/utils/scroll/scroll.js +4 -0
  469. package/wrappers/{index.mjs → index.cjs} +15 -15
  470. package/wrappers/index.js +15 -15
  471. package/dist/quasar.cjs.prod.js +0 -127
  472. package/dist/quasar.esm.prod.js +0 -127
  473. package/dist/transforms/import-transformation.js +0 -9
  474. package/icon-set/bootstrap-icons.mjs +0 -136
  475. package/icon-set/eva-icons.mjs +0 -186
  476. package/icon-set/fontawesome-v5-pro.mjs +0 -128
  477. package/icon-set/fontawesome-v5.mjs +0 -128
  478. package/icon-set/fontawesome-v6-pro.mjs +0 -128
  479. package/icon-set/fontawesome-v6.mjs +0 -128
  480. package/icon-set/ionicons-v4.mjs +0 -180
  481. package/icon-set/line-awesome.mjs +0 -128
  482. package/icon-set/material-icons-outlined.mjs +0 -128
  483. package/icon-set/material-icons-round.mjs +0 -128
  484. package/icon-set/material-icons-sharp.mjs +0 -128
  485. package/icon-set/material-icons.mjs +0 -128
  486. package/icon-set/material-symbols-outlined.mjs +0 -128
  487. package/icon-set/material-symbols-rounded.mjs +0 -128
  488. package/icon-set/material-symbols-sharp.mjs +0 -128
  489. package/icon-set/mdi-v3.mjs +0 -141
  490. package/icon-set/mdi-v4.mjs +0 -141
  491. package/icon-set/mdi-v5.mjs +0 -141
  492. package/icon-set/mdi-v6.mjs +0 -141
  493. package/icon-set/mdi-v7.mjs +0 -141
  494. package/icon-set/svg-bootstrap-icons.mjs +0 -210
  495. package/icon-set/svg-eva-icons.mjs +0 -233
  496. package/icon-set/svg-fontawesome-v5.mjs +0 -197
  497. package/icon-set/svg-fontawesome-v6.mjs +0 -198
  498. package/icon-set/svg-ionicons-v4.mjs +0 -234
  499. package/icon-set/svg-ionicons-v5.mjs +0 -225
  500. package/icon-set/svg-ionicons-v6.mjs +0 -224
  501. package/icon-set/svg-line-awesome.mjs +0 -198
  502. package/icon-set/svg-material-icons-outlined.mjs +0 -203
  503. package/icon-set/svg-material-icons-round.mjs +0 -203
  504. package/icon-set/svg-material-icons-sharp.mjs +0 -203
  505. package/icon-set/svg-material-icons.mjs +0 -203
  506. package/icon-set/svg-material-symbols-outlined.mjs +0 -201
  507. package/icon-set/svg-material-symbols-rounded.mjs +0 -201
  508. package/icon-set/svg-material-symbols-sharp.mjs +0 -201
  509. package/icon-set/svg-mdi-v6.mjs +0 -225
  510. package/icon-set/svg-mdi-v7.mjs +0 -224
  511. package/icon-set/svg-themify.mjs +0 -231
  512. package/icon-set/themify.mjs +0 -169
  513. package/lang/ar-TN.mjs +0 -98
  514. package/lang/ar.mjs +0 -98
  515. package/lang/az-Latn.mjs +0 -93
  516. package/lang/bg.mjs +0 -93
  517. package/lang/bn.mjs +0 -93
  518. package/lang/ca.mjs +0 -93
  519. package/lang/cs.mjs +0 -104
  520. package/lang/da.mjs +0 -93
  521. package/lang/de-CH.mjs +0 -93
  522. package/lang/de-DE.mjs +0 -93
  523. package/lang/de.mjs +0 -93
  524. package/lang/el.mjs +0 -93
  525. package/lang/en-GB.mjs +0 -93
  526. package/lang/en-US.mjs +0 -93
  527. package/lang/eo.mjs +0 -93
  528. package/lang/es.mjs +0 -93
  529. package/lang/et.mjs +0 -93
  530. package/lang/eu.mjs +0 -93
  531. package/lang/fa-IR.mjs +0 -94
  532. package/lang/fa.mjs +0 -94
  533. package/lang/fi.mjs +0 -94
  534. package/lang/fr.mjs +0 -96
  535. package/lang/gn.mjs +0 -93
  536. package/lang/he.mjs +0 -94
  537. package/lang/hi.mjs +0 -93
  538. package/lang/hr.mjs +0 -93
  539. package/lang/hu.mjs +0 -93
  540. package/lang/id.mjs +0 -93
  541. package/lang/is.mjs +0 -93
  542. package/lang/it.mjs +0 -93
  543. package/lang/ja.mjs +0 -92
  544. package/lang/kk.mjs +0 -97
  545. package/lang/km.mjs +0 -93
  546. package/lang/ko-KR.mjs +0 -93
  547. package/lang/kur-CKB.mjs +0 -103
  548. package/lang/lt.mjs +0 -105
  549. package/lang/lu.mjs +0 -93
  550. package/lang/lv.mjs +0 -93
  551. package/lang/mk.mjs +0 -93
  552. package/lang/ml.mjs +0 -97
  553. package/lang/mm.mjs +0 -94
  554. package/lang/ms-MY.mjs +0 -96
  555. package/lang/ms.mjs +0 -93
  556. package/lang/my.mjs +0 -92
  557. package/lang/nb-NO.mjs +0 -94
  558. package/lang/nl.mjs +0 -93
  559. package/lang/pl.mjs +0 -93
  560. package/lang/pt-BR.mjs +0 -93
  561. package/lang/pt.mjs +0 -93
  562. package/lang/ro.mjs +0 -93
  563. package/lang/ru.mjs +0 -97
  564. package/lang/sk.mjs +0 -93
  565. package/lang/sl.mjs +0 -93
  566. package/lang/sm.mjs +0 -93
  567. package/lang/sr-CYR.mjs +0 -93
  568. package/lang/sr.mjs +0 -93
  569. package/lang/sv.mjs +0 -93
  570. package/lang/ta.mjs +0 -93
  571. package/lang/th.mjs +0 -93
  572. package/lang/tl.mjs +0 -93
  573. package/lang/tr.mjs +0 -89
  574. package/lang/ug.mjs +0 -93
  575. package/lang/uk.mjs +0 -97
  576. package/lang/uz-Cyrl.mjs +0 -95
  577. package/lang/uz-Latn.mjs +0 -99
  578. package/lang/vi.mjs +0 -93
  579. package/lang/zh-CN.mjs +0 -92
  580. package/lang/zh-TW.mjs +0 -92
  581. /package/src/utils/{private.global/global-config.js → private.config/instance-config.js} +0 -0
  582. /package/src/utils/{private.global/global-dialog.json → private.dialog/create-dialog.json} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { h, ref, computed, watch, onBeforeUnmount, Transition, getCurrentInstance } from 'vue'
2
2
 
3
- import useAnchor, { useAnchorProps } from '../../composables/private.use-anchor/use-anchor.js'
3
+ import useAnchor, { useAnchorStaticProps } from '../../composables/private.use-anchor/use-anchor.js'
4
4
  import useScrollTarget from '../../composables/private.use-scroll-target/use-scroll-target.js'
5
5
  import useModelToggle, { useModelToggleProps, useModelToggleEmits } from '../../composables/private.use-model-toggle/use-model-toggle.js'
6
6
  import usePortal from '../../composables/private.use-portal/use-portal.js'
@@ -9,7 +9,7 @@ import useTick from '../../composables/use-tick/use-tick.js'
9
9
  import useTimeout from '../../composables/use-timeout/use-timeout.js'
10
10
 
11
11
  import { createComponent } from '../../utils/private.create/create.js'
12
- import { getScrollTarget } from '../../utils/scroll/scroll.js'
12
+ import { getScrollTarget, scrollTargetProp } from '../../utils/scroll/scroll.js'
13
13
  import { stopAndPrevent, addEvt, cleanEvt } from '../../utils/event/event.js'
14
14
  import { clearSelection } from '../../utils/private.selection/selection.js'
15
15
  import { hSlot } from '../../utils/private.render/render.js'
@@ -24,7 +24,7 @@ export default createComponent({
24
24
  inheritAttrs: false,
25
25
 
26
26
  props: {
27
- ...useAnchorProps,
27
+ ...useAnchorStaticProps,
28
28
  ...useModelToggleProps,
29
29
  ...useTransitionProps,
30
30
 
@@ -38,9 +38,11 @@ export default createComponent({
38
38
  },
39
39
 
40
40
  transitionShow: {
41
+ ...useTransitionProps.transitionShow,
41
42
  default: 'jump-down'
42
43
  },
43
44
  transitionHide: {
45
+ ...useTransitionProps.transitionHide,
44
46
  default: 'jump-up'
45
47
  },
46
48
 
@@ -60,9 +62,7 @@ export default createComponent({
60
62
  validator: validateOffset
61
63
  },
62
64
 
63
- scrollTarget: {
64
- default: void 0
65
- },
65
+ scrollTarget: scrollTargetProp,
66
66
 
67
67
  delay: {
68
68
  type: Number,
@@ -1,5 +1,10 @@
1
1
  {
2
- "mixins": [ "composables/private.use-model-toggle/use-model-toggle", "composables/private.use-portal/use-portal", "composables/private.use-transition/use-transition" ],
2
+ "mixins": [
3
+ "composables/private.use-model-toggle/use-model-toggle",
4
+ "composables/private.use-anchor/use-anchor-static",
5
+ "composables/private.use-portal/use-portal",
6
+ "composables/private.use-transition/use-transition"
7
+ ],
3
8
 
4
9
  "meta": {
5
10
  "docsUrl": "https://v2.quasar.dev/vue-components/tooltip"
@@ -66,20 +71,6 @@
66
71
  "extends": "scroll-target"
67
72
  },
68
73
 
69
- "target": {
70
- "type": [ "Boolean", "String" ],
71
- "desc": "Configure a target element to trigger Tooltip toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) it attaches the events to the specified DOM element (if it exists)",
72
- "default": "true",
73
- "examples": [ "# :target=\"false\"", "# target=\".my-parent\"" ],
74
- "category": "behavior"
75
- },
76
-
77
- "no-parent-event": {
78
- "type": "Boolean",
79
- "desc": "Skips attaching events to the target DOM element (that trigger the element to get shown)",
80
- "category": "behavior"
81
- },
82
-
83
74
  "delay": {
84
75
  "type": "Number",
85
76
  "desc": "Configure Tooltip to appear with delay",
@@ -66,7 +66,7 @@ export default createComponent({
66
66
  filter: String,
67
67
  filterMethod: Function,
68
68
 
69
- duration: Number,
69
+ duration: {},
70
70
  noConnectors: Boolean,
71
71
  noTransition: Boolean,
72
72
 
@@ -143,7 +143,6 @@
143
143
  "filter-method": {
144
144
  "type": "Function",
145
145
  "desc": "The function to use to filter the tree nodes; For best performance, reference it from your scope and do not define it inline",
146
- "default": "# see source code",
147
146
  "params": {
148
147
  "node": {
149
148
  "type": "Object",
@@ -158,6 +157,7 @@
158
157
  "type": "Boolean",
159
158
  "desc": "Matches or not"
160
159
  },
160
+ "examples": [ "(node, filter) => node.label.toLowerCase().indexOf(filter.toLowerCase()) !== -1" ],
161
161
  "category": "filter"
162
162
  },
163
163
 
@@ -165,6 +165,7 @@
165
165
  "type": "Number",
166
166
  "desc": "Toggle animation duration (in milliseconds)",
167
167
  "default": "300",
168
+ "passthrough": "child",
168
169
  "category": "style"
169
170
  },
170
171
 
@@ -16,9 +16,7 @@ const props = {
16
16
  },
17
17
  fieldName: {
18
18
  type: [ Function, String ],
19
- default: () => {
20
- return file => file.name
21
- }
19
+ default: () => file => file.name
22
20
  },
23
21
  headers: [ Function, Array ],
24
22
  formFields: [ Function, Array ],
@@ -6,10 +6,6 @@ import QVideo from './QVideo.js'
6
6
  describe('[QVideo API]', () => {
7
7
  describe('[Props]', () => {
8
8
  describe('[(prop)ratio]', () => {
9
- test('is defined correctly', () => {
10
- expect(QVideo.props.ratio).toBeDefined()
11
- })
12
-
13
9
  test.each([
14
10
  [ 'String', '5' ],
15
11
  [ 'Number', 5 ]
@@ -36,10 +32,6 @@ describe('[QVideo API]', () => {
36
32
  })
37
33
 
38
34
  describe('[(prop)src]', () => {
39
- test('is defined correctly', () => {
40
- expect(QVideo.props.src).toBeDefined()
41
- })
42
-
43
35
  test('type String has effect', () => {
44
36
  const propVal = 'https://www.youtube.com/embed/k3_tw44QsZQ'
45
37
  const wrapper = mount(QVideo, {
@@ -56,10 +48,6 @@ describe('[QVideo API]', () => {
56
48
  })
57
49
 
58
50
  describe('[(prop)title]', () => {
59
- test('is defined correctly', () => {
60
- expect(QVideo.props.title).toBeDefined()
61
- })
62
-
63
51
  test('type String has effect', async () => {
64
52
  const wrapper = mount(QVideo, {
65
53
  props: {
@@ -84,10 +72,6 @@ describe('[QVideo API]', () => {
84
72
  })
85
73
 
86
74
  describe('[(prop)fetchpriority]', () => {
87
- test('is defined correctly', () => {
88
- expect(QVideo.props.fetchpriority).toBeDefined()
89
- })
90
-
91
75
  test.each([
92
76
  [ 'high' ],
93
77
  [ 'low' ],
@@ -115,10 +99,6 @@ describe('[QVideo API]', () => {
115
99
  })
116
100
 
117
101
  describe('[(prop)loading]', () => {
118
- test('is defined correctly', () => {
119
- expect(QVideo.props.loading).toBeDefined()
120
- })
121
-
122
102
  test.each([
123
103
  [ 'eager' ],
124
104
  [ 'lazy' ]
@@ -145,10 +125,6 @@ describe('[QVideo API]', () => {
145
125
  })
146
126
 
147
127
  describe('[(prop)referrerpolicy]', () => {
148
- test('is defined correctly', () => {
149
- expect(QVideo.props.referrerpolicy).toBeDefined()
150
- })
151
-
152
128
  test.each([
153
129
  [ 'no-referrer' ],
154
130
  [ 'no-referrer-when-downgrade' ],
@@ -7,7 +7,7 @@ import getTableMiddle from '../table/get-table-middle.js'
7
7
  import { useVirtualScroll, useVirtualScrollProps } from './use-virtual-scroll.js'
8
8
 
9
9
  import { createComponent } from '../../utils/private.create/create.js'
10
- import { getScrollTarget } from '../../utils/scroll/scroll.js'
10
+ import { getScrollTarget, scrollTargetProp } from '../../utils/scroll/scroll.js'
11
11
  import { listenOpts } from '../../utils/event/event.js'
12
12
  import { hMergeSlot } from '../../utils/private.render/render.js'
13
13
 
@@ -38,9 +38,7 @@ export default createComponent({
38
38
  itemsFn: Function,
39
39
  itemsSize: Number,
40
40
 
41
- scrollTarget: {
42
- default: void 0
43
- }
41
+ scrollTarget: scrollTargetProp
44
42
  },
45
43
 
46
44
  setup (props, { slots, attrs }) {
@@ -28,7 +28,6 @@
28
28
  "items-size": {
29
29
  "type": "Number",
30
30
  "desc": "Number of available items in the list; Required and used only if 'itemsFn' is provided",
31
- "default": "# void 0",
32
31
  "examples": [ "100000" ],
33
32
  "category": "content"
34
33
  },
@@ -193,7 +193,7 @@ function sumSize (sizeAgg, size, from, to) {
193
193
  const commonVirtScrollProps = {
194
194
  virtualScrollSliceSize: {
195
195
  type: [ Number, String ],
196
- default: null
196
+ default: 10
197
197
  },
198
198
 
199
199
  virtualScrollSliceRatioBefore: {
@@ -224,7 +224,7 @@ const commonVirtScrollProps = {
224
224
  tableColspan: [ Number, String ]
225
225
  }
226
226
 
227
- export const commonVirtPropsList = Object.keys(commonVirtScrollProps)
227
+ export const commonVirtScrollPropsList = Object.keys(commonVirtScrollProps)
228
228
 
229
229
  export const useVirtualScrollProps = {
230
230
  virtualScrollHorizontal: Boolean,
@@ -9,7 +9,7 @@
9
9
  "virtual-scroll-slice-size": {
10
10
  "type": [ "Number", "String", "null" ],
11
11
  "desc": "Minimum number of items to render in the virtual list",
12
- "default": "30",
12
+ "default": "10",
13
13
  "examples": [ "60", "'60'" ],
14
14
  "category": "virtual-scroll"
15
15
  },
@@ -0,0 +1,22 @@
1
+ {
2
+ "props": {
3
+ "target": {
4
+ "type": [ "Boolean", "String", "Element" ],
5
+ "desc": "Configure a target element to trigger component toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) or a DOM element it attaches the events to the specified DOM element (if it exists)",
6
+ "default": "true",
7
+ "examples": [
8
+ "false",
9
+ ".my-parent",
10
+ "#target-id",
11
+ "$refs.target"
12
+ ],
13
+ "category": "behavior"
14
+ },
15
+
16
+ "no-parent-event": {
17
+ "type": "Boolean",
18
+ "desc": "Skips attaching events to the target DOM element (that trigger the element to get shown)",
19
+ "category": "behavior"
20
+ }
21
+ }
22
+ }
@@ -4,11 +4,20 @@ import { clearSelection } from '../../utils/private.selection/selection.js'
4
4
  import { addEvt, cleanEvt, prevent } from '../../utils/event/event.js'
5
5
  import { isKeyCode } from '../../utils/private.keyboard/key-composition.js'
6
6
 
7
+ export const useAnchorStaticProps = {
8
+ /* SSR does not know about Element */
9
+ target: __QUASAR_SSR_SERVER__
10
+ ? { default: true }
11
+ : {
12
+ type: [ Boolean, String, Element ],
13
+ default: true
14
+ },
15
+
16
+ noParentEvent: Boolean
17
+ }
18
+
7
19
  export const useAnchorProps = {
8
- target: {
9
- default: true
10
- },
11
- noParentEvent: Boolean,
20
+ ...useAnchorStaticProps,
12
21
  contextMenu: Boolean
13
22
  }
14
23
 
@@ -1,24 +1,7 @@
1
1
  {
2
- "props": {
3
- "target": {
4
- "type": [ "Boolean", "String", "Element" ],
5
- "desc": "Configure a target element to trigger component toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) or a DOM element it attaches the events to the specified DOM element (if it exists)",
6
- "default": "true",
7
- "examples": [
8
- "false",
9
- ".my-parent",
10
- "#target-id",
11
- "$refs.target"
12
- ],
13
- "category": "behavior"
14
- },
15
-
16
- "no-parent-event": {
17
- "type": "Boolean",
18
- "desc": "Skips attaching events to the target DOM element (that trigger the element to get shown)",
19
- "category": "behavior"
20
- },
2
+ "mixins": [ "composables/private.use-anchor/use-anchor-static" ],
21
3
 
4
+ "props": {
22
5
  "context-menu": {
23
6
  "type": "Boolean",
24
7
  "desc": "Allows the component to behave like a context menu, which opens with a right mouse click (or long tap on mobile)",
@@ -18,7 +18,7 @@ export function fieldValueIsFilled (val) {
18
18
  && ('' + val).length !== 0
19
19
  }
20
20
 
21
- export const useFieldProps = {
21
+ export const useNonInputFieldProps = {
22
22
  ...useDarkProps,
23
23
  ...useValidateProps,
24
24
 
@@ -61,12 +61,15 @@ export const useFieldProps = {
61
61
 
62
62
  autofocus: Boolean,
63
63
 
64
- for: String,
64
+ for: String
65
+ }
65
66
 
67
+ export const useFieldProps = {
68
+ ...useNonInputFieldProps,
66
69
  maxlength: [ Number, String ]
67
70
  }
68
71
 
69
- export const useFieldEmits = [ 'update:modelValue', 'clear', 'focus', 'blur', 'popupShow', 'popupHide' ]
72
+ export const useFieldEmits = [ 'update:modelValue', 'clear', 'focus', 'blur' ]
70
73
 
71
74
  export function useFieldState ({ requiredForAttr = true, tagProp } = {}) {
72
75
  const { props, proxy } = getCurrentInstance()
@@ -212,6 +212,28 @@
212
212
  },
213
213
 
214
214
  "events": {
215
+ "update:model-value": {
216
+ "extends": "update:model-value"
217
+ },
218
+
219
+ "focus": {
220
+ "desc": "Emitted when component gets focused",
221
+ "params": {
222
+ "evt": {
223
+ "extends": "evt"
224
+ }
225
+ }
226
+ },
227
+
228
+ "blur": {
229
+ "desc": "Emitted when component loses focus",
230
+ "params": {
231
+ "evt": {
232
+ "extends": "evt"
233
+ }
234
+ }
235
+ },
236
+
215
237
  "clear": {
216
238
  "desc": "When using the 'clearable' property, this event is emitted when the clear icon is clicked",
217
239
  "params": {
@@ -24,6 +24,16 @@
24
24
  "desc": "Fullscreen state (showing/hidden)"
25
25
  }
26
26
  }
27
+ },
28
+
29
+ "update:fullscreen": {
30
+ "desc": "Used by Vue on 'v-model:fullscreen' prop for updating its value",
31
+ "params": {
32
+ "value": {
33
+ "type": "Boolean",
34
+ "desc": "Fullscreen state (showing/hidden)"
35
+ }
36
+ }
27
37
  }
28
38
  },
29
39
 
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "props": {
3
3
  "model-value": {
4
- "type": "Boolean",
4
+ "type": [ "Boolean", "null" ],
5
5
  "desc": "Model of the component defining shown/hidden state; Either use this property (along with a listener for 'update:model-value' event) OR use v-model directive",
6
- "category": "model"
6
+ "default": "null",
7
+ "category": "model",
8
+ "examples": [ "# v-model=\"state\"" ]
7
9
  }
8
10
  },
9
11
 
@@ -4,6 +4,7 @@
4
4
  "type": "Any",
5
5
  "desc": "Model of the component defining the current panel's name; If a Number is used, it does not define the panel's index, but rather the panel's name which can also be an Integer; Either use this property (along with a listener for 'update:model-value' event) OR use the v-model directive.",
6
6
  "examples": [ "# v-model=\"panelName\"" ],
7
+ "required": true,
7
8
  "category": "model"
8
9
  },
9
10
 
@@ -61,6 +62,7 @@
61
62
  "extends": "transition",
62
63
  "desc": "One of Quasar's embedded transitions (has effect only if 'animated' prop is set)",
63
64
  "default": "# slide-right/slide-down",
65
+ "__runtimeDefault": true,
64
66
  "category": "transition"
65
67
  },
66
68
 
@@ -68,6 +70,7 @@
68
70
  "extends": "transition",
69
71
  "desc": "One of Quasar's embedded transitions (has effect only if 'animated' prop is set)",
70
72
  "default": "# slide-left/slide-up",
73
+ "__runtimeDefault": true,
71
74
  "category": "transition"
72
75
  },
73
76
 
@@ -3,7 +3,7 @@ import { h, ref, onUnmounted, Teleport } from 'vue'
3
3
  import { createComponent } from '../../utils/private.create/create.js'
4
4
  import { noop } from '../../utils/event/event.js'
5
5
  import { addFocusWaitFlag, removeFocusWaitFlag } from '../../utils/private.focus/focus-manager.js'
6
- import { createGlobalNode, removeGlobalNode } from '../../utils/private.global/global-nodes.js'
6
+ import { createGlobalNode, removeGlobalNode } from '../../utils/private.config/nodes.js'
7
7
  import { portalProxyList } from '../../utils/private.portal/portal.js'
8
8
  import { injectProp } from '../../utils/private.inject-obj-prop/inject-obj-prop.js'
9
9
 
@@ -77,10 +77,23 @@ function isSameRouteLocationParams (a, b) {
77
77
  return true
78
78
  }
79
79
 
80
- export const useRouterLinkProps = {
80
+ export const useRouterLinkNonMatchingProps = {
81
81
  // router-link
82
82
  to: [ String, Object ],
83
83
  replace: Boolean,
84
+
85
+ // regular <a> link
86
+ href: String,
87
+ target: String,
88
+
89
+ // state
90
+ disable: Boolean
91
+ }
92
+
93
+ export const useRouterLinkProps = {
94
+ ...useRouterLinkNonMatchingProps,
95
+
96
+ // router-link
84
97
  exact: Boolean,
85
98
  activeClass: {
86
99
  type: String,
@@ -89,14 +102,7 @@ export const useRouterLinkProps = {
89
102
  exactActiveClass: {
90
103
  type: String,
91
104
  default: 'q-router-link--exact-active'
92
- },
93
-
94
- // regular <a> link
95
- href: String,
96
- target: String,
97
-
98
- // state
99
- disable: Boolean
105
+ }
100
106
  }
101
107
 
102
108
  // external props: type, tag
@@ -25,6 +25,7 @@
25
25
  "active-class": {
26
26
  "type": "String",
27
27
  "desc": "Equivalent to Vue Router <router-link> 'active-class' property; Superseded by 'href' prop if used",
28
+ "default": "'q-router-link--active'",
28
29
  "examples": [ "'my-active-class'" ],
29
30
  "category": "navigation"
30
31
  },
@@ -32,6 +33,7 @@
32
33
  "exact-active-class": {
33
34
  "type": "String",
34
35
  "desc": "Equivalent to Vue Router <router-link> 'active-class' property; Superseded by 'href' prop if used",
36
+ "default": "'q-router-link--exact-active'",
35
37
  "examples": [ "'my-exact-active-class'" ],
36
38
  "category": "navigation"
37
39
  },
@@ -47,6 +47,7 @@
47
47
  "lazy-rules": {
48
48
  "type": [ "Boolean", "String" ],
49
49
  "desc": "If set to boolean true then it checks validation status against the 'rules' only after field loses focus for first time; If set to 'ondemand' then it will trigger only when component's validate() method is manually called or when the wrapper QForm submits itself",
50
+ "default": "false",
50
51
  "values": [ "true", "false", "'ondemand'" ],
51
52
  "category": "behavior"
52
53
  }
@@ -58,7 +58,6 @@ describe('[useId API]', () => {
58
58
  defineComponent({
59
59
  template: '<div />',
60
60
  setup () {
61
- // eslint-disable-next-line
62
61
  const result = useId()
63
62
  return { result }
64
63
  }