quasar 2.15.4 → 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 (560) hide show
  1. package/dist/api/Brand.json +1 -1
  2. package/dist/api/QBreadcrumbs.json +1 -1
  3. package/dist/api/QBreadcrumbsEl.json +1 -1
  4. package/dist/api/QBtnDropdown.json +1 -1
  5. package/dist/api/QCarousel.json +1 -1
  6. package/dist/api/QCheckbox.json +1 -1
  7. package/dist/api/QCircularProgress.json +1 -1
  8. package/dist/api/QDialog.json +1 -1
  9. package/dist/api/QDrawer.json +1 -1
  10. package/dist/api/QEditor.json +1 -1
  11. package/dist/api/QExpansionItem.json +1 -1
  12. package/dist/api/QFab.json +1 -1
  13. package/dist/api/QFabAction.json +1 -1
  14. package/dist/api/QField.json +1 -1
  15. package/dist/api/QFile.json +1 -1
  16. package/dist/api/QImg.json +1 -1
  17. package/dist/api/QInnerLoading.json +1 -1
  18. package/dist/api/QInput.json +1 -1
  19. package/dist/api/QIntersection.json +1 -1
  20. package/dist/api/QItem.json +1 -1
  21. package/dist/api/QKnob.json +1 -1
  22. package/dist/api/QMenu.json +1 -1
  23. package/dist/api/QPage.json +1 -1
  24. package/dist/api/QPagination.json +1 -1
  25. package/dist/api/QParallax.json +1 -1
  26. package/dist/api/QPopupEdit.json +1 -1
  27. package/dist/api/QRadio.json +1 -1
  28. package/dist/api/QRange.json +1 -1
  29. package/dist/api/QRouteTab.json +1 -1
  30. package/dist/api/QSelect.json +1 -1
  31. package/dist/api/QSeparator.json +1 -1
  32. package/dist/api/QSkeleton.json +1 -1
  33. package/dist/api/QSlider.json +1 -1
  34. package/dist/api/QSpinner.json +1 -1
  35. package/dist/api/QSpinnerAudio.json +1 -1
  36. package/dist/api/QSpinnerBall.json +1 -1
  37. package/dist/api/QSpinnerBars.json +1 -1
  38. package/dist/api/QSpinnerBox.json +1 -1
  39. package/dist/api/QSpinnerClock.json +1 -1
  40. package/dist/api/QSpinnerComment.json +1 -1
  41. package/dist/api/QSpinnerCube.json +1 -1
  42. package/dist/api/QSpinnerDots.json +1 -1
  43. package/dist/api/QSpinnerFacebook.json +1 -1
  44. package/dist/api/QSpinnerGears.json +1 -1
  45. package/dist/api/QSpinnerGrid.json +1 -1
  46. package/dist/api/QSpinnerHearts.json +1 -1
  47. package/dist/api/QSpinnerHourglass.json +1 -1
  48. package/dist/api/QSpinnerInfinity.json +1 -1
  49. package/dist/api/QSpinnerIos.json +1 -1
  50. package/dist/api/QSpinnerOrbit.json +1 -1
  51. package/dist/api/QSpinnerOval.json +1 -1
  52. package/dist/api/QSpinnerPie.json +1 -1
  53. package/dist/api/QSpinnerPuff.json +1 -1
  54. package/dist/api/QSpinnerRadio.json +1 -1
  55. package/dist/api/QSpinnerRings.json +1 -1
  56. package/dist/api/QSpinnerTail.json +1 -1
  57. package/dist/api/QSplitter.json +1 -1
  58. package/dist/api/QStepper.json +1 -1
  59. package/dist/api/QTabPanels.json +1 -1
  60. package/dist/api/QTable.json +1 -1
  61. package/dist/api/QTimeline.json +1 -1
  62. package/dist/api/QToggle.json +1 -1
  63. package/dist/api/QTooltip.json +1 -1
  64. package/dist/api/QTree.json +1 -1
  65. package/dist/api/QVirtualScroll.json +1 -1
  66. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  67. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  68. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  69. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  70. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  71. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  72. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  73. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  74. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  75. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  76. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  77. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  78. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  79. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  80. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  81. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  82. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  83. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  84. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  85. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  86. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  87. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  88. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  89. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  90. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  91. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  92. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  93. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  94. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  95. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  96. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  97. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  98. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  99. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  100. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  101. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  102. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  103. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  104. package/dist/icon-set/themify.umd.prod.js +1 -1
  105. package/dist/lang/ar-TN.umd.prod.js +1 -1
  106. package/dist/lang/ar.umd.prod.js +1 -1
  107. package/dist/lang/az-Latn.umd.prod.js +1 -1
  108. package/dist/lang/bg.umd.prod.js +1 -1
  109. package/dist/lang/bn.umd.prod.js +1 -1
  110. package/dist/lang/ca.umd.prod.js +1 -1
  111. package/dist/lang/cs.umd.prod.js +1 -1
  112. package/dist/lang/da.umd.prod.js +1 -1
  113. package/dist/lang/de-CH.umd.prod.js +1 -1
  114. package/dist/lang/de-DE.umd.prod.js +1 -1
  115. package/dist/lang/de.umd.prod.js +1 -1
  116. package/dist/lang/el.umd.prod.js +1 -1
  117. package/dist/lang/en-GB.umd.prod.js +1 -1
  118. package/dist/lang/en-US.umd.prod.js +1 -1
  119. package/dist/lang/eo.umd.prod.js +1 -1
  120. package/dist/lang/es.umd.prod.js +1 -1
  121. package/dist/lang/et.umd.prod.js +1 -1
  122. package/dist/lang/eu.umd.prod.js +1 -1
  123. package/dist/lang/fa-IR.umd.prod.js +1 -1
  124. package/dist/lang/fa.umd.prod.js +1 -1
  125. package/dist/lang/fi.umd.prod.js +1 -1
  126. package/dist/lang/fr.umd.prod.js +1 -1
  127. package/dist/lang/gn.umd.prod.js +1 -1
  128. package/dist/lang/he.umd.prod.js +1 -1
  129. package/dist/lang/hi.umd.prod.js +1 -1
  130. package/dist/lang/hr.umd.prod.js +1 -1
  131. package/dist/lang/hu.umd.prod.js +1 -1
  132. package/dist/lang/id.umd.prod.js +1 -1
  133. package/dist/lang/is.umd.prod.js +1 -1
  134. package/dist/lang/it.umd.prod.js +1 -1
  135. package/dist/lang/ja.umd.prod.js +1 -1
  136. package/dist/lang/kk.umd.prod.js +1 -1
  137. package/dist/lang/km.umd.prod.js +1 -1
  138. package/dist/lang/ko-KR.umd.prod.js +1 -1
  139. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  140. package/dist/lang/lt.umd.prod.js +1 -1
  141. package/dist/lang/lu.umd.prod.js +1 -1
  142. package/dist/lang/lv.umd.prod.js +1 -1
  143. package/dist/lang/mk.umd.prod.js +1 -1
  144. package/dist/lang/ml.umd.prod.js +1 -1
  145. package/dist/lang/mm.umd.prod.js +1 -1
  146. package/dist/lang/ms-MY.umd.prod.js +1 -1
  147. package/dist/lang/ms.umd.prod.js +1 -1
  148. package/dist/lang/my.umd.prod.js +1 -1
  149. package/dist/lang/nb-NO.umd.prod.js +1 -1
  150. package/dist/lang/nl.umd.prod.js +1 -1
  151. package/dist/lang/pl.umd.prod.js +1 -1
  152. package/dist/lang/pt-BR.umd.prod.js +1 -1
  153. package/dist/lang/pt.umd.prod.js +1 -1
  154. package/dist/lang/ro.umd.prod.js +1 -1
  155. package/dist/lang/ru.umd.prod.js +1 -1
  156. package/dist/lang/sk.umd.prod.js +1 -1
  157. package/dist/lang/sl.umd.prod.js +1 -1
  158. package/dist/lang/sm.umd.prod.js +1 -1
  159. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  160. package/dist/lang/sr.umd.prod.js +1 -1
  161. package/dist/lang/sv.umd.prod.js +1 -1
  162. package/dist/lang/ta.umd.prod.js +1 -1
  163. package/dist/lang/th.umd.prod.js +1 -1
  164. package/dist/lang/tl.umd.prod.js +1 -1
  165. package/dist/lang/tr.umd.prod.js +1 -1
  166. package/dist/lang/ug.umd.prod.js +1 -1
  167. package/dist/lang/uk.umd.prod.js +1 -1
  168. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  169. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  170. package/dist/lang/vi.umd.prod.js +1 -1
  171. package/dist/lang/zh-CN.umd.prod.js +1 -1
  172. package/dist/lang/zh-TW.umd.prod.js +1 -1
  173. package/dist/{quasar.esm.js → quasar.client.js} +333 -361
  174. package/dist/quasar.sass +1 -1
  175. package/dist/quasar.server.prod.cjs +127 -0
  176. package/dist/quasar.server.prod.js +127 -0
  177. package/dist/quasar.umd.js +333 -360
  178. package/dist/quasar.umd.prod.js +8 -8
  179. package/dist/transforms/api-list.json +1 -1
  180. package/dist/types/index.d.ts +191 -93
  181. package/dist/vetur/quasar-attributes.json +1 -1
  182. package/dist/vetur/quasar-tags.json +1 -1
  183. package/dist/web-types/web-types.json +1 -1
  184. package/icon-set/bootstrap-icons.js +3 -8
  185. package/icon-set/eva-icons.js +3 -8
  186. package/icon-set/fontawesome-v5-pro.js +1 -6
  187. package/icon-set/fontawesome-v5.js +1 -6
  188. package/icon-set/fontawesome-v6-pro.js +1 -6
  189. package/icon-set/fontawesome-v6.js +1 -6
  190. package/icon-set/ionicons-v4.js +3 -8
  191. package/icon-set/line-awesome.js +1 -6
  192. package/icon-set/material-icons-outlined.js +1 -6
  193. package/icon-set/material-icons-round.js +1 -6
  194. package/icon-set/material-icons-sharp.js +1 -6
  195. package/icon-set/material-icons.js +1 -6
  196. package/icon-set/material-symbols-outlined.js +1 -6
  197. package/icon-set/material-symbols-rounded.js +1 -6
  198. package/icon-set/material-symbols-sharp.js +1 -6
  199. package/icon-set/mdi-v3.js +1 -6
  200. package/icon-set/mdi-v4.js +1 -6
  201. package/icon-set/mdi-v5.js +1 -6
  202. package/icon-set/mdi-v6.js +1 -6
  203. package/icon-set/mdi-v7.js +1 -6
  204. package/icon-set/svg-bootstrap-icons.js +6 -6
  205. package/icon-set/svg-eva-icons.js +6 -6
  206. package/icon-set/svg-fontawesome-v5.js +3 -3
  207. package/icon-set/svg-fontawesome-v6.js +4 -5
  208. package/icon-set/svg-ionicons-v4.js +6 -6
  209. package/icon-set/svg-ionicons-v5.js +5 -5
  210. package/icon-set/svg-ionicons-v6.js +5 -5
  211. package/icon-set/svg-line-awesome.js +4 -5
  212. package/icon-set/svg-material-icons-outlined.js +4 -5
  213. package/icon-set/svg-material-icons-round.js +4 -5
  214. package/icon-set/svg-material-icons-sharp.js +4 -5
  215. package/icon-set/svg-material-icons.js +4 -5
  216. package/icon-set/svg-material-symbols-outlined.js +4 -4
  217. package/icon-set/svg-material-symbols-rounded.js +4 -4
  218. package/icon-set/svg-material-symbols-sharp.js +4 -4
  219. package/icon-set/svg-mdi-v6.js +4 -5
  220. package/icon-set/svg-mdi-v7.js +4 -4
  221. package/icon-set/svg-themify.js +6 -6
  222. package/icon-set/themify.js +3 -8
  223. package/lang/ar-TN.js +1 -6
  224. package/lang/ar.js +1 -6
  225. package/lang/az-Latn.js +1 -6
  226. package/lang/bg.js +1 -6
  227. package/lang/bn.js +1 -6
  228. package/lang/ca.js +1 -6
  229. package/lang/cs.js +1 -6
  230. package/lang/da.js +1 -6
  231. package/lang/de-CH.js +1 -6
  232. package/lang/de-DE.js +1 -6
  233. package/lang/de.js +1 -6
  234. package/lang/el.js +1 -6
  235. package/lang/en-GB.js +1 -6
  236. package/lang/en-US.js +1 -6
  237. package/lang/eo.js +1 -6
  238. package/lang/es.js +1 -6
  239. package/lang/et.js +1 -6
  240. package/lang/eu.js +1 -6
  241. package/lang/fa-IR.js +1 -6
  242. package/lang/fa.js +1 -6
  243. package/lang/fi.js +1 -6
  244. package/lang/fr.js +1 -6
  245. package/lang/gn.js +1 -6
  246. package/lang/he.js +1 -6
  247. package/lang/hi.js +1 -6
  248. package/lang/hr.js +1 -6
  249. package/lang/hu.js +1 -6
  250. package/lang/id.js +1 -6
  251. package/lang/is.js +1 -6
  252. package/lang/it.js +1 -6
  253. package/lang/ja.js +1 -6
  254. package/lang/kk.js +1 -6
  255. package/lang/km.js +1 -6
  256. package/lang/ko-KR.js +1 -6
  257. package/lang/kur-CKB.js +1 -6
  258. package/lang/lt.js +1 -6
  259. package/lang/lu.js +1 -6
  260. package/lang/lv.js +1 -6
  261. package/lang/mk.js +1 -6
  262. package/lang/ml.js +1 -6
  263. package/lang/mm.js +1 -6
  264. package/lang/ms-MY.js +1 -6
  265. package/lang/ms.js +1 -6
  266. package/lang/my.js +1 -6
  267. package/lang/nb-NO.js +1 -6
  268. package/lang/nl.js +1 -6
  269. package/lang/pl.js +1 -6
  270. package/lang/pt-BR.js +1 -6
  271. package/lang/pt.js +1 -6
  272. package/lang/ro.js +1 -6
  273. package/lang/ru.js +1 -6
  274. package/lang/sk.js +1 -6
  275. package/lang/sl.js +1 -6
  276. package/lang/sm.js +1 -6
  277. package/lang/sr-CYR.js +1 -6
  278. package/lang/sr.js +1 -6
  279. package/lang/sv.js +1 -6
  280. package/lang/ta.js +1 -6
  281. package/lang/th.js +1 -6
  282. package/lang/tl.js +1 -6
  283. package/lang/tr.js +1 -6
  284. package/lang/ug.js +1 -6
  285. package/lang/uk.js +1 -6
  286. package/lang/uz-Cyrl.js +1 -6
  287. package/lang/uz-Latn.js +1 -6
  288. package/lang/vi.js +1 -6
  289. package/lang/zh-CN.js +1 -6
  290. package/lang/zh-TW.js +1 -6
  291. package/package.json +18 -7
  292. package/src/components/avatar/QAvatar.test.js +0 -28
  293. package/src/components/badge/QBadge.test.js +0 -36
  294. package/src/components/banner/QBanner.test.js +0 -16
  295. package/src/components/bar/QBar.test.js +0 -8
  296. package/src/components/breadcrumbs/QBreadcrumbs.json +2 -1
  297. package/src/components/breadcrumbs/QBreadcrumbs.test.js +1 -21
  298. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +0 -51
  299. package/src/components/btn/QBtn.json +6 -1
  300. package/src/components/btn/QBtn.test.js +0 -143
  301. package/src/components/btn/use-btn.js +8 -4
  302. package/src/components/btn/use-btn.test.js +9 -1
  303. package/src/components/btn-dropdown/QBtnDropdown.js +3 -3
  304. package/src/components/btn-dropdown/QBtnDropdown.json +1 -4
  305. package/src/components/btn-toggle/QBtnToggle.json +3 -1
  306. package/src/components/card/QCardActions.json +1 -0
  307. package/src/components/carousel/QCarousel.js +4 -3
  308. package/src/components/carousel/QCarousel.json +6 -3
  309. package/src/components/checkbox/use-checkbox.json +1 -1
  310. package/src/components/chip/QChip.test.js +0 -108
  311. package/src/components/circular-progress/QCircularProgress.json +0 -1
  312. package/src/components/color/QColor.json +1 -0
  313. package/src/components/date/QDate.js +8 -2
  314. package/src/components/date/QDate.json +1 -0
  315. package/src/components/date/use-datetime.js +1 -3
  316. package/src/components/dialog/QDialog.js +1 -2
  317. package/src/components/dialog/QDialog.json +11 -1
  318. package/src/components/dialog/QDialog.test.js +38 -160
  319. package/src/components/drawer/QDrawer.json +2 -2
  320. package/src/components/editor/QEditor.js +3 -8
  321. package/src/components/editor/QEditor.json +9 -2
  322. package/src/components/expansion-item/QExpansionItem.js +1 -1
  323. package/src/components/expansion-item/QExpansionItem.json +5 -6
  324. package/src/components/fab/QFab.js +1 -0
  325. package/src/components/fab/QFab.json +5 -4
  326. package/src/components/fab/QFabAction.json +2 -1
  327. package/src/components/fab/use-fab.json +2 -1
  328. package/src/components/field/QField.json +0 -39
  329. package/src/components/file/QFile.js +2 -2
  330. package/src/components/file/QFile.json +2 -7
  331. package/src/components/footer/QFooter.json +3 -1
  332. package/src/components/form/QForm.js +1 -1
  333. package/src/components/header/QHeader.json +3 -1
  334. package/src/components/img/QImg.json +1 -1
  335. package/src/components/infinite-scroll/QInfiniteScroll.js +7 -6
  336. package/src/components/inner-loading/QInnerLoading.js +1 -1
  337. package/src/components/inner-loading/QInnerLoading.json +1 -0
  338. package/src/components/input/QInput.js +2 -1
  339. package/src/components/input/QInput.json +7 -24
  340. package/src/components/intersection/QIntersection.json +1 -1
  341. package/src/components/item/QItem.json +3 -1
  342. package/src/components/knob/QKnob.json +11 -2
  343. package/src/components/menu/QMenu.js +2 -4
  344. package/src/components/menu/QMenu.json +3 -1
  345. package/src/components/option-group/QOptionGroup.js +1 -0
  346. package/src/components/page/QPage.json +1 -2
  347. package/src/components/page-scroller/QPageScroller.js +1 -0
  348. package/src/components/page-scroller/QPageScroller.json +4 -0
  349. package/src/components/page-sticky/QPageSticky.js +1 -1
  350. package/src/components/pagination/QPagination.json +7 -2
  351. package/src/components/parallax/QParallax.js +2 -4
  352. package/src/components/parallax/QParallax.json +1 -0
  353. package/src/components/popup-edit/QPopupEdit.json +2 -1
  354. package/src/components/pull-to-refresh/QPullToRefresh.js +2 -4
  355. package/src/components/radio/QRadio.json +2 -2
  356. package/src/components/range/QRange.json +1 -0
  357. package/src/components/scroll-observer/QScrollObserver.js +2 -4
  358. package/src/components/select/QSelect.js +7 -7
  359. package/src/components/select/QSelect.json +27 -16
  360. package/src/components/separator/QSeparator.json +0 -1
  361. package/src/components/skeleton/QSkeleton.json +1 -1
  362. package/src/components/slider/QSlider.json +1 -0
  363. package/src/components/slider/use-slider.js +0 -2
  364. package/src/components/spinner/QSpinner.json +1 -5
  365. package/src/components/spinner/QSpinner.test.js +79 -0
  366. package/src/components/spinner/QSpinnerAudio.test.js +59 -0
  367. package/src/components/spinner/QSpinnerBall.test.js +59 -0
  368. package/src/components/spinner/QSpinnerBars.test.js +59 -0
  369. package/src/components/spinner/QSpinnerBox.test.js +59 -0
  370. package/src/components/spinner/QSpinnerClock.test.js +59 -0
  371. package/src/components/spinner/QSpinnerComment.test.js +59 -0
  372. package/src/components/spinner/QSpinnerCube.test.js +59 -0
  373. package/src/components/spinner/QSpinnerDots.test.js +59 -0
  374. package/src/components/spinner/QSpinnerFacebook.test.js +59 -0
  375. package/src/components/spinner/QSpinnerGears.test.js +59 -0
  376. package/src/components/spinner/QSpinnerGrid.test.js +59 -0
  377. package/src/components/spinner/QSpinnerHearts.test.js +59 -0
  378. package/src/components/spinner/QSpinnerHourglass.test.js +59 -0
  379. package/src/components/spinner/QSpinnerInfinity.test.js +59 -0
  380. package/src/components/spinner/QSpinnerIos.test.js +59 -0
  381. package/src/components/spinner/QSpinnerOrbit.test.js +59 -0
  382. package/src/components/spinner/QSpinnerOval.test.js +59 -0
  383. package/src/components/spinner/QSpinnerPie.test.js +59 -0
  384. package/src/components/spinner/QSpinnerPuff.test.js +59 -0
  385. package/src/components/spinner/QSpinnerRadio.test.js +59 -0
  386. package/src/components/spinner/QSpinnerRings.test.js +59 -0
  387. package/src/components/spinner/QSpinnerTail.test.js +59 -0
  388. package/src/components/spinner/spinner.json +5 -0
  389. package/src/components/spinner/use-spinner.js +1 -1
  390. package/src/components/spinner/use-spinner.test.js +59 -0
  391. package/src/components/splitter/QSplitter.json +3 -3
  392. package/src/components/stepper/QStep.json +6 -0
  393. package/src/components/tab-panels/QTabPanels.json +6 -0
  394. package/src/components/table/QTable.js +6 -8
  395. package/src/components/table/QTable.json +13 -8
  396. package/src/components/table/QTh.json +4 -0
  397. package/src/components/tabs/QRouteTab.json +3 -2
  398. package/src/components/tabs/QTab.json +1 -65
  399. package/src/components/tabs/use-tab.json +72 -0
  400. package/src/components/time/QTime.js +6 -0
  401. package/src/components/time/QTime.json +2 -0
  402. package/src/components/timeline/QTimeline.json +2 -1
  403. package/src/components/toolbar/QToolbar.test.js +0 -4
  404. package/src/components/toolbar/QToolbarTitle.test.js +0 -4
  405. package/src/components/tooltip/QTooltip.js +6 -6
  406. package/src/components/tooltip/QTooltip.json +6 -15
  407. package/src/components/tree/QTree.js +1 -1
  408. package/src/components/tree/QTree.json +2 -1
  409. package/src/components/uploader/xhr-uploader-plugin.js +1 -3
  410. package/src/components/video/QVideo.test.js +0 -24
  411. package/src/components/virtual-scroll/QVirtualScroll.js +2 -4
  412. package/src/components/virtual-scroll/QVirtualScroll.json +0 -1
  413. package/src/components/virtual-scroll/use-virtual-scroll.js +2 -2
  414. package/src/components/virtual-scroll/use-virtual-scroll.json +1 -1
  415. package/src/composables/private.use-anchor/use-anchor-static.json +22 -0
  416. package/src/composables/private.use-anchor/use-anchor.js +13 -4
  417. package/src/composables/private.use-anchor/use-anchor.json +2 -19
  418. package/src/composables/private.use-field/use-field.js +6 -3
  419. package/src/composables/private.use-field/use-field.json +22 -0
  420. package/src/composables/private.use-fullscreen/use-fullscreen.json +10 -0
  421. package/src/composables/private.use-model-toggle/use-model-toggle.json +4 -2
  422. package/src/composables/private.use-panel/use-panel.json +3 -0
  423. package/src/composables/private.use-portal/use-portal.js +1 -1
  424. package/src/composables/private.use-router-link/use-router-link.js +15 -9
  425. package/src/composables/private.use-router-link/use-router-link.json +2 -0
  426. package/src/composables/private.use-validate/use-validate.json +1 -0
  427. package/src/composables/use-id/use-id.test.js +0 -1
  428. package/src/install-quasar.js +1 -1
  429. package/src/plugins/app-fullscreen/AppFullscreen.js +1 -1
  430. package/src/plugins/app-fullscreen/test/mock-fullscreen.js +1 -1
  431. package/src/plugins/bottom-sheet/BottomSheet.js +1 -1
  432. package/src/plugins/bottom-sheet/BottomSheet.json +1 -1
  433. package/src/plugins/dialog/Dialog.js +1 -1
  434. package/src/plugins/dialog/Dialog.json +1 -1
  435. package/src/plugins/icon-set/IconSet.js +1 -2
  436. package/src/plugins/icon-set/IconSet.test.js +2 -2
  437. package/src/plugins/lang/Lang.js +1 -2
  438. package/src/plugins/lang/Lang.test.js +2 -2
  439. package/src/plugins/loading/Loading.js +1 -1
  440. package/src/plugins/loading-bar/LoadingBar.js +1 -1
  441. package/src/plugins/notify/Notify.js +1 -1
  442. package/src/utils/{private.global/global-config.test.js → private.config/instance-config.test.js} +2 -2
  443. package/src/utils/{private.global/global-nodes.js → private.config/nodes.js} +1 -1
  444. package/src/utils/{private.global/global-nodes.test.js → private.config/nodes.test.js} +3 -3
  445. package/src/utils/{private.global/global-dialog.js → private.dialog/create-dialog.js} +1 -1
  446. package/src/utils/scroll/scroll.js +4 -0
  447. package/wrappers/{index.mjs → index.cjs} +15 -15
  448. package/wrappers/index.js +15 -15
  449. package/dist/quasar.cjs.prod.js +0 -127
  450. package/dist/quasar.esm.prod.js +0 -127
  451. package/dist/transforms/import-transformation.js +0 -9
  452. package/icon-set/bootstrap-icons.mjs +0 -136
  453. package/icon-set/eva-icons.mjs +0 -186
  454. package/icon-set/fontawesome-v5-pro.mjs +0 -128
  455. package/icon-set/fontawesome-v5.mjs +0 -128
  456. package/icon-set/fontawesome-v6-pro.mjs +0 -128
  457. package/icon-set/fontawesome-v6.mjs +0 -128
  458. package/icon-set/ionicons-v4.mjs +0 -180
  459. package/icon-set/line-awesome.mjs +0 -128
  460. package/icon-set/material-icons-outlined.mjs +0 -128
  461. package/icon-set/material-icons-round.mjs +0 -128
  462. package/icon-set/material-icons-sharp.mjs +0 -128
  463. package/icon-set/material-icons.mjs +0 -128
  464. package/icon-set/material-symbols-outlined.mjs +0 -128
  465. package/icon-set/material-symbols-rounded.mjs +0 -128
  466. package/icon-set/material-symbols-sharp.mjs +0 -128
  467. package/icon-set/mdi-v3.mjs +0 -141
  468. package/icon-set/mdi-v4.mjs +0 -141
  469. package/icon-set/mdi-v5.mjs +0 -141
  470. package/icon-set/mdi-v6.mjs +0 -141
  471. package/icon-set/mdi-v7.mjs +0 -141
  472. package/icon-set/svg-bootstrap-icons.mjs +0 -210
  473. package/icon-set/svg-eva-icons.mjs +0 -233
  474. package/icon-set/svg-fontawesome-v5.mjs +0 -197
  475. package/icon-set/svg-fontawesome-v6.mjs +0 -198
  476. package/icon-set/svg-ionicons-v4.mjs +0 -234
  477. package/icon-set/svg-ionicons-v5.mjs +0 -225
  478. package/icon-set/svg-ionicons-v6.mjs +0 -224
  479. package/icon-set/svg-line-awesome.mjs +0 -198
  480. package/icon-set/svg-material-icons-outlined.mjs +0 -203
  481. package/icon-set/svg-material-icons-round.mjs +0 -203
  482. package/icon-set/svg-material-icons-sharp.mjs +0 -203
  483. package/icon-set/svg-material-icons.mjs +0 -203
  484. package/icon-set/svg-material-symbols-outlined.mjs +0 -201
  485. package/icon-set/svg-material-symbols-rounded.mjs +0 -201
  486. package/icon-set/svg-material-symbols-sharp.mjs +0 -201
  487. package/icon-set/svg-mdi-v6.mjs +0 -225
  488. package/icon-set/svg-mdi-v7.mjs +0 -224
  489. package/icon-set/svg-themify.mjs +0 -231
  490. package/icon-set/themify.mjs +0 -169
  491. package/lang/ar-TN.mjs +0 -98
  492. package/lang/ar.mjs +0 -98
  493. package/lang/az-Latn.mjs +0 -93
  494. package/lang/bg.mjs +0 -93
  495. package/lang/bn.mjs +0 -93
  496. package/lang/ca.mjs +0 -93
  497. package/lang/cs.mjs +0 -104
  498. package/lang/da.mjs +0 -93
  499. package/lang/de-CH.mjs +0 -93
  500. package/lang/de-DE.mjs +0 -93
  501. package/lang/de.mjs +0 -93
  502. package/lang/el.mjs +0 -93
  503. package/lang/en-GB.mjs +0 -93
  504. package/lang/en-US.mjs +0 -93
  505. package/lang/eo.mjs +0 -93
  506. package/lang/es.mjs +0 -93
  507. package/lang/et.mjs +0 -93
  508. package/lang/eu.mjs +0 -93
  509. package/lang/fa-IR.mjs +0 -94
  510. package/lang/fa.mjs +0 -94
  511. package/lang/fi.mjs +0 -94
  512. package/lang/fr.mjs +0 -96
  513. package/lang/gn.mjs +0 -93
  514. package/lang/he.mjs +0 -94
  515. package/lang/hi.mjs +0 -93
  516. package/lang/hr.mjs +0 -93
  517. package/lang/hu.mjs +0 -93
  518. package/lang/id.mjs +0 -93
  519. package/lang/is.mjs +0 -93
  520. package/lang/it.mjs +0 -93
  521. package/lang/ja.mjs +0 -92
  522. package/lang/kk.mjs +0 -97
  523. package/lang/km.mjs +0 -93
  524. package/lang/ko-KR.mjs +0 -93
  525. package/lang/kur-CKB.mjs +0 -103
  526. package/lang/lt.mjs +0 -105
  527. package/lang/lu.mjs +0 -93
  528. package/lang/lv.mjs +0 -93
  529. package/lang/mk.mjs +0 -93
  530. package/lang/ml.mjs +0 -97
  531. package/lang/mm.mjs +0 -94
  532. package/lang/ms-MY.mjs +0 -96
  533. package/lang/ms.mjs +0 -93
  534. package/lang/my.mjs +0 -92
  535. package/lang/nb-NO.mjs +0 -94
  536. package/lang/nl.mjs +0 -93
  537. package/lang/pl.mjs +0 -93
  538. package/lang/pt-BR.mjs +0 -93
  539. package/lang/pt.mjs +0 -93
  540. package/lang/ro.mjs +0 -93
  541. package/lang/ru.mjs +0 -97
  542. package/lang/sk.mjs +0 -93
  543. package/lang/sl.mjs +0 -93
  544. package/lang/sm.mjs +0 -93
  545. package/lang/sr-CYR.mjs +0 -93
  546. package/lang/sr.mjs +0 -93
  547. package/lang/sv.mjs +0 -93
  548. package/lang/ta.mjs +0 -93
  549. package/lang/th.mjs +0 -93
  550. package/lang/tl.mjs +0 -93
  551. package/lang/tr.mjs +0 -89
  552. package/lang/ug.mjs +0 -93
  553. package/lang/uk.mjs +0 -97
  554. package/lang/uz-Cyrl.mjs +0 -95
  555. package/lang/uz-Latn.mjs +0 -99
  556. package/lang/vi.mjs +0 -93
  557. package/lang/zh-CN.mjs +0 -92
  558. package/lang/zh-TW.mjs +0 -92
  559. /package/src/utils/{private.global/global-config.js → private.config/instance-config.js} +0 -0
  560. /package/src/utils/{private.global/global-dialog.json → private.dialog/create-dialog.json} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { mount, flushPromises } from '@vue/test-utils'
2
2
  import { describe, test, expect } from 'vitest'
3
3
 
4
- import QBreadcrumbs from './QBreadcrumbs.js'
4
+ // import QBreadcrumbs from './QBreadcrumbs.js'
5
5
 
6
6
  import { alignMap } from 'quasar/src/composables/private.use-align/use-align.js'
7
7
 
@@ -11,10 +11,6 @@ import BreadcrumbWithSeparatorSlot from './test/BreadcrumbWithSeparatorSlot.vue'
11
11
  describe('[QBreadcrumbs API]', () => {
12
12
  describe('[Props]', () => {
13
13
  describe('[(prop)separator]', () => {
14
- test('is defined correctly', () => {
15
- expect(QBreadcrumbs.props.separator).toBeDefined()
16
- })
17
-
18
14
  test('type String has effect', async () => {
19
15
  const propVal = '>'
20
16
  const wrapper = mount(BasicBreadcrumbs)
@@ -35,10 +31,6 @@ describe('[QBreadcrumbs API]', () => {
35
31
  })
36
32
 
37
33
  describe('[(prop)active-color]', () => {
38
- test('is defined correctly', () => {
39
- expect(QBreadcrumbs.props.activeColor).toBeDefined()
40
- })
41
-
42
34
  test('type String has effect', async () => {
43
35
  const propVal = 'red'
44
36
  const wrapper = mount(BasicBreadcrumbs)
@@ -59,10 +51,6 @@ describe('[QBreadcrumbs API]', () => {
59
51
  })
60
52
 
61
53
  describe('[(prop)gutter]', () => {
62
- test('is defined correctly', () => {
63
- expect(QBreadcrumbs.props.gutter).toBeDefined()
64
- })
65
-
66
54
  test('value "none" has effect', async () => {
67
55
  const propVal = 'none'
68
56
  const wrapper = mount(BasicBreadcrumbs)
@@ -116,10 +104,6 @@ describe('[QBreadcrumbs API]', () => {
116
104
  })
117
105
 
118
106
  describe('[(prop)separator-color]', () => {
119
- test('is defined correctly', () => {
120
- expect(QBreadcrumbs.props.separatorColor).toBeDefined()
121
- })
122
-
123
107
  test('type String has effect', async () => {
124
108
  const propVal = 'red'
125
109
  const wrapper = mount(BasicBreadcrumbs)
@@ -139,10 +123,6 @@ describe('[QBreadcrumbs API]', () => {
139
123
  })
140
124
 
141
125
  describe('[(prop)align]', () => {
142
- test('is defined correctly', () => {
143
- expect(QBreadcrumbs.props.align).toBeDefined()
144
- })
145
-
146
126
  test.each([
147
127
  [ 'left' ],
148
128
  [ 'center' ],
@@ -7,10 +7,6 @@ import { getRouter } from 'testing/runtime/router.js'
7
7
  describe('[QBreadcrumbsEl API]', () => {
8
8
  describe('[Props]', () => {
9
9
  describe('[(prop)to]', () => {
10
- test('is defined correctly', () => {
11
- expect(QBreadcrumbsEl.props.to).toBeDefined()
12
- })
13
-
14
10
  test('type String has effect', async () => {
15
11
  const testRoute = '/home/dashboard'
16
12
  const router = await getRouter(testRoute)
@@ -82,10 +78,6 @@ describe('[QBreadcrumbsEl API]', () => {
82
78
  })
83
79
 
84
80
  describe('[(prop)exact]', () => {
85
- test('is defined correctly', () => {
86
- expect(QBreadcrumbsEl.props.exact).toBeDefined()
87
- })
88
-
89
81
  test('type Boolean has effect', async () => {
90
82
  const activeClass = 'it-is-active'
91
83
  const exactActiveClass = 'it-is-exact-active'
@@ -141,10 +133,6 @@ describe('[QBreadcrumbsEl API]', () => {
141
133
  })
142
134
 
143
135
  describe('[(prop)replace]', () => {
144
- test('is defined correctly', () => {
145
- expect(QBreadcrumbsEl.props.replace).toBeDefined()
146
- })
147
-
148
136
  test('type Boolean has effect', async () => {
149
137
  const testRoute = '/test-route'
150
138
  const router = await getRouter(testRoute)
@@ -184,10 +172,6 @@ describe('[QBreadcrumbsEl API]', () => {
184
172
  })
185
173
 
186
174
  describe('[(prop)active-class]', () => {
187
- test('is defined correctly', () => {
188
- expect(QBreadcrumbsEl.props.activeClass).toBeDefined()
189
- })
190
-
191
175
  test('type String has effect', async () => {
192
176
  const activeClass = 'it-is-active'
193
177
  const router = await getRouter({ '/route': 'subRoute' })
@@ -235,10 +219,6 @@ describe('[QBreadcrumbsEl API]', () => {
235
219
  })
236
220
 
237
221
  describe('[(prop)exact-active-class]', () => {
238
- test('is defined correctly', () => {
239
- expect(QBreadcrumbsEl.props.exactActiveClass).toBeDefined()
240
- })
241
-
242
222
  test('type String has effect', async () => {
243
223
  const exactActiveClass = 'it-is-exact-active'
244
224
  const router = await getRouter({
@@ -295,10 +275,6 @@ describe('[QBreadcrumbsEl API]', () => {
295
275
  })
296
276
 
297
277
  describe('[(prop)href]', () => {
298
- test('is defined correctly', () => {
299
- expect(QBreadcrumbsEl.props.href).toBeDefined()
300
- })
301
-
302
278
  test('type String has effect', async () => {
303
279
  const propVal = 'https://quasar.dev'
304
280
  const wrapper = mount(QBreadcrumbsEl)
@@ -317,10 +293,6 @@ describe('[QBreadcrumbsEl API]', () => {
317
293
  })
318
294
 
319
295
  describe('[(prop)target]', () => {
320
- test('is defined correctly', () => {
321
- expect(QBreadcrumbsEl.props.target).toBeDefined()
322
- })
323
-
324
296
  test('type String has effect', async () => {
325
297
  const propVal = '_blank'
326
298
  const href = 'https://quasar.dev'
@@ -350,10 +322,6 @@ describe('[QBreadcrumbsEl API]', () => {
350
322
  })
351
323
 
352
324
  describe('[(prop)disable]', () => {
353
- test('is defined correctly', () => {
354
- expect(QBreadcrumbsEl.props.disable).toBeDefined()
355
- })
356
-
357
325
  test('type Boolean has effect', async () => {
358
326
  const testRoute = '/home'
359
327
  const router = await getRouter(testRoute)
@@ -388,10 +356,6 @@ describe('[QBreadcrumbsEl API]', () => {
388
356
  })
389
357
 
390
358
  describe('[(prop)label]', () => {
391
- test('is defined correctly', () => {
392
- expect(QBreadcrumbsEl.props.label).toBeDefined()
393
- })
394
-
395
359
  test('type String has effect', async () => {
396
360
  const propVal = 'Home'
397
361
  const wrapper = mount(QBreadcrumbsEl)
@@ -406,10 +370,6 @@ describe('[QBreadcrumbsEl API]', () => {
406
370
  })
407
371
 
408
372
  describe('[(prop)icon]', () => {
409
- test('is defined correctly', () => {
410
- expect(QBreadcrumbsEl.props.icon).toBeDefined()
411
- })
412
-
413
373
  test('type String has effect', async () => {
414
374
  const propVal = 'map'
415
375
  const wrapper = mount(QBreadcrumbsEl)
@@ -428,10 +388,6 @@ describe('[QBreadcrumbsEl API]', () => {
428
388
  })
429
389
 
430
390
  describe('[(prop)tag]', () => {
431
- test('is defined correctly', () => {
432
- expect(QBreadcrumbsEl.props.tag).toBeDefined()
433
- })
434
-
435
391
  test('type String has effect', async () => {
436
392
  const propVal = 'div'
437
393
  const wrapper = mount(QBreadcrumbsEl)
@@ -468,13 +424,6 @@ describe('[QBreadcrumbsEl API]', () => {
468
424
 
469
425
  describe('[Events]', () => {
470
426
  describe('[(event)click]', () => {
471
- test('is defined correctly', () => {
472
- expect(
473
- QBreadcrumbsEl.emits?.includes('click')
474
- ^ (QBreadcrumbsEl.props?.onClick !== void 0)
475
- ).toBe(1)
476
- })
477
-
478
427
  test('is emitting without router', async () => {
479
428
  const wrapper = mount(QBreadcrumbsEl)
480
429
 
@@ -96,6 +96,11 @@
96
96
  }
97
97
  }
98
98
  }
99
- }
99
+ },
100
+
101
+ "touchstart": { "internal": true },
102
+ "keydown": { "internal": true },
103
+ "keyup": { "internal": true },
104
+ "mousedown": { "internal": true }
100
105
  }
101
106
  }
@@ -10,10 +10,6 @@ import { getRouter } from 'testing/runtime/router.js'
10
10
  describe('[QBtn API]', () => {
11
11
  describe('[Props]', () => {
12
12
  describe('[(prop)size]', () => {
13
- test('is defined correctly', () => {
14
- expect(QBtn.props.size).toBeDefined()
15
- })
16
-
17
13
  test('type String has effect (in pixels)', async () => {
18
14
  const propVal = '50px'
19
15
  const wrapper = mount(QBtn)
@@ -50,10 +46,6 @@ describe('[QBtn API]', () => {
50
46
  })
51
47
 
52
48
  describe('[(prop)type]', () => {
53
- test('is defined correctly', () => {
54
- expect(QBtn.props.type).toBeDefined()
55
- })
56
-
57
49
  test.each([
58
50
  [ 'button' ],
59
51
  [ 'a' ]
@@ -109,10 +101,6 @@ describe('[QBtn API]', () => {
109
101
  })
110
102
 
111
103
  describe('[(prop)to]', () => {
112
- test('is defined correctly', () => {
113
- expect(QBtn.props.to).toBeDefined()
114
- })
115
-
116
104
  test('type String has effect', async () => {
117
105
  const testRoute = '/home/dashboard'
118
106
  const router = await getRouter(testRoute)
@@ -184,10 +172,6 @@ describe('[QBtn API]', () => {
184
172
  })
185
173
 
186
174
  describe('[(prop)replace]', () => {
187
- test('is defined correctly', () => {
188
- expect(QBtn.props.replace).toBeDefined()
189
- })
190
-
191
175
  test('type Boolean has effect', async () => {
192
176
  const testRoute = '/test-route'
193
177
  const router = await getRouter(testRoute)
@@ -221,10 +205,6 @@ describe('[QBtn API]', () => {
221
205
  })
222
206
 
223
207
  describe('[(prop)href]', () => {
224
- test('is defined correctly', () => {
225
- expect(QBtn.props.href).toBeDefined()
226
- })
227
-
228
208
  test('type String has effect', async () => {
229
209
  const propVal = 'https://quasar.dev'
230
210
  const wrapper = mount(QBtn)
@@ -243,10 +223,6 @@ describe('[QBtn API]', () => {
243
223
  })
244
224
 
245
225
  describe('[(prop)target]', () => {
246
- test('is defined correctly', () => {
247
- expect(QBtn.props.target).toBeDefined()
248
- })
249
-
250
226
  test('type String has effect', () => {
251
227
  const propVal = '_blank'
252
228
  const href = 'https://quasar.dev'
@@ -270,10 +246,6 @@ describe('[QBtn API]', () => {
270
246
  })
271
247
 
272
248
  describe('[(prop)label]', () => {
273
- test('is defined correctly', () => {
274
- expect(QBtn.props.label).toBeDefined()
275
- })
276
-
277
249
  test('type String has effect', async () => {
278
250
  const propVal = 'Button Label'
279
251
  const wrapper = mount(QBtn)
@@ -300,10 +272,6 @@ describe('[QBtn API]', () => {
300
272
  })
301
273
 
302
274
  describe('[(prop)icon]', () => {
303
- test('is defined correctly', () => {
304
- expect(QBtn.props.icon).toBeDefined()
305
- })
306
-
307
275
  test('type String has effect', async () => {
308
276
  const propVal = 'map'
309
277
  const wrapper = mount(QBtn)
@@ -322,10 +290,6 @@ describe('[QBtn API]', () => {
322
290
  })
323
291
 
324
292
  describe('[(prop)icon-right]', () => {
325
- test('is defined correctly', () => {
326
- expect(QBtn.props.iconRight).toBeDefined()
327
- })
328
-
329
293
  test('type String has effect', async () => {
330
294
  const propVal = 'map'
331
295
  const wrapper = mount(QBtn)
@@ -344,10 +308,6 @@ describe('[QBtn API]', () => {
344
308
  })
345
309
 
346
310
  describe('[(prop)outline]', () => {
347
- test('is defined correctly', () => {
348
- expect(QBtn.props.outline).toBeDefined()
349
- })
350
-
351
311
  test('type Boolean has effect', async () => {
352
312
  const wrapper = mount(QBtn)
353
313
  const target = wrapper.get('.q-btn')
@@ -370,10 +330,6 @@ describe('[QBtn API]', () => {
370
330
  })
371
331
 
372
332
  describe('[(prop)flat]', () => {
373
- test('is defined correctly', () => {
374
- expect(QBtn.props.flat).toBeDefined()
375
- })
376
-
377
333
  test('type Boolean has effect', async () => {
378
334
  const wrapper = mount(QBtn)
379
335
  const target = wrapper.get('.q-btn')
@@ -392,10 +348,6 @@ describe('[QBtn API]', () => {
392
348
  })
393
349
 
394
350
  describe('[(prop)unelevated]', () => {
395
- test('is defined correctly', () => {
396
- expect(QBtn.props.unelevated).toBeDefined()
397
- })
398
-
399
351
  test('type Boolean has effect', async () => {
400
352
  const wrapper = mount(QBtn)
401
353
  const target = wrapper.get('.q-btn')
@@ -414,10 +366,6 @@ describe('[QBtn API]', () => {
414
366
  })
415
367
 
416
368
  describe('[(prop)rounded]', () => {
417
- test('is defined correctly', () => {
418
- expect(QBtn.props.rounded).toBeDefined()
419
- })
420
-
421
369
  test('type Boolean has effect', async () => {
422
370
  const wrapper = mount(QBtn)
423
371
  const target = wrapper.get('.q-btn')
@@ -440,10 +388,6 @@ describe('[QBtn API]', () => {
440
388
  })
441
389
 
442
390
  describe('[(prop)push]', () => {
443
- test('is defined correctly', () => {
444
- expect(QBtn.props.push).toBeDefined()
445
- })
446
-
447
391
  test('type Boolean has effect', async () => {
448
392
  const wrapper = mount(QBtn)
449
393
  const target = wrapper.get('.q-btn')
@@ -470,10 +414,6 @@ describe('[QBtn API]', () => {
470
414
  })
471
415
 
472
416
  describe('[(prop)square]', () => {
473
- test('is defined correctly', () => {
474
- expect(QBtn.props.square).toBeDefined()
475
- })
476
-
477
417
  test('type Boolean has effect', async () => {
478
418
  const wrapper = mount(QBtn)
479
419
  const target = wrapper.get('.q-btn')
@@ -496,10 +436,6 @@ describe('[QBtn API]', () => {
496
436
  })
497
437
 
498
438
  describe('[(prop)glossy]', () => {
499
- test('is defined correctly', () => {
500
- expect(QBtn.props.glossy).toBeDefined()
501
- })
502
-
503
439
  test('type Boolean has effect', async () => {
504
440
  const wrapper = mount(QBtn)
505
441
  const target = wrapper.get('.q-btn')
@@ -518,10 +454,6 @@ describe('[QBtn API]', () => {
518
454
  })
519
455
 
520
456
  describe('[(prop)fab]', () => {
521
- test('is defined correctly', () => {
522
- expect(QBtn.props.fab).toBeDefined()
523
- })
524
-
525
457
  test('type Boolean has effect', async () => {
526
458
  const wrapper = mount(QBtn)
527
459
  const target = wrapper.get('.q-btn')
@@ -540,10 +472,6 @@ describe('[QBtn API]', () => {
540
472
  })
541
473
 
542
474
  describe('[(prop)fab-mini]', () => {
543
- test('is defined correctly', () => {
544
- expect(QBtn.props.fabMini).toBeDefined()
545
- })
546
-
547
475
  test('type Boolean has effect', async () => {
548
476
  const wrapper = mount(QBtn)
549
477
  const target = wrapper.get('.q-btn')
@@ -562,10 +490,6 @@ describe('[QBtn API]', () => {
562
490
  })
563
491
 
564
492
  describe('[(prop)padding]', () => {
565
- test('is defined correctly', () => {
566
- expect(QBtn.props.padding).toBeDefined()
567
- })
568
-
569
493
  test.each([
570
494
  [ 'pixels; single value', '50px' ],
571
495
  [ 'pixels; multiple values', '50px 100px' ]
@@ -643,10 +567,6 @@ describe('[QBtn API]', () => {
643
567
  })
644
568
 
645
569
  describe('[(prop)color]', () => {
646
- test('is defined correctly', () => {
647
- expect(QBtn.props.color).toBeDefined()
648
- })
649
-
650
570
  test('(default design) is applied correctly', async () => {
651
571
  const propVal = 'red'
652
572
  const wrapper = mount(QBtn)
@@ -710,10 +630,6 @@ describe('[QBtn API]', () => {
710
630
  })
711
631
 
712
632
  describe('[(prop)text-color]', () => {
713
- test('is defined correctly', () => {
714
- expect(QBtn.props.textColor).toBeDefined()
715
- })
716
-
717
633
  test('is applied correctly with no "color" prop', async () => {
718
634
  const wrapper = mount(QBtn)
719
635
  const target = wrapper.get('.q-btn')
@@ -818,10 +734,6 @@ describe('[QBtn API]', () => {
818
734
  })
819
735
 
820
736
  describe('[(prop)no-caps]', () => {
821
- test('is defined correctly', () => {
822
- expect(QBtn.props.noCaps).toBeDefined()
823
- })
824
-
825
737
  test('type Boolean has effect', async () => {
826
738
  const wrapper = mount(QBtn)
827
739
  const target = wrapper.get('.q-btn')
@@ -844,10 +756,6 @@ describe('[QBtn API]', () => {
844
756
  })
845
757
 
846
758
  describe('[(prop)no-wrap]', () => {
847
- test('is defined correctly', () => {
848
- expect(QBtn.props.noWrap).toBeDefined()
849
- })
850
-
851
759
  test('type Boolean has effect', async () => {
852
760
  const wrapper = mount(QBtn)
853
761
 
@@ -865,10 +773,6 @@ describe('[QBtn API]', () => {
865
773
  })
866
774
 
867
775
  describe('[(prop)dense]', () => {
868
- test('is defined correctly', () => {
869
- expect(QBtn.props.dense).toBeDefined()
870
- })
871
-
872
776
  test('type Boolean has effect', async () => {
873
777
  const wrapper = mount(QBtn)
874
778
  const target = wrapper.get('.q-btn')
@@ -887,10 +791,6 @@ describe('[QBtn API]', () => {
887
791
  })
888
792
 
889
793
  describe('[(prop)ripple]', () => {
890
- test('is defined correctly', () => {
891
- expect(QBtn.props.ripple).toBeDefined()
892
- })
893
-
894
794
  test('type Boolean has effect', async () => {
895
795
  const wrapper = mount(QBtn)
896
796
 
@@ -932,10 +832,6 @@ describe('[QBtn API]', () => {
932
832
  })
933
833
 
934
834
  describe('[(prop)tabindex]', () => {
935
- test('is defined correctly', () => {
936
- expect(QBtn.props.tabindex).toBeDefined()
937
- })
938
-
939
835
  test.each([
940
836
  [ 'Number', 100 ],
941
837
  [ 'String', '100' ]
@@ -975,10 +871,6 @@ describe('[QBtn API]', () => {
975
871
  })
976
872
 
977
873
  describe('[(prop)align]', () => {
978
- test('is defined correctly', () => {
979
- expect(QBtn.props.align).toBeDefined()
980
- })
981
-
982
874
  test.each([
983
875
  [ 'left' ],
984
876
  [ 'center' ],
@@ -1007,10 +899,6 @@ describe('[QBtn API]', () => {
1007
899
  })
1008
900
 
1009
901
  describe('[(prop)stack]', () => {
1010
- test('is defined correctly', () => {
1011
- expect(QBtn.props.stack).toBeDefined()
1012
- })
1013
-
1014
902
  test('type Boolean has effect', async () => {
1015
903
  const wrapper = mount(QBtn)
1016
904
  const target = wrapper.get('.q-btn__content')
@@ -1029,10 +917,6 @@ describe('[QBtn API]', () => {
1029
917
  })
1030
918
 
1031
919
  describe('[(prop)stretch]', () => {
1032
- test('is defined correctly', () => {
1033
- expect(QBtn.props.stretch).toBeDefined()
1034
- })
1035
-
1036
920
  test('type Boolean has effect', async () => {
1037
921
  const wrapper = mount(QBtn)
1038
922
  const target = wrapper.get('.q-btn')
@@ -1051,10 +935,6 @@ describe('[QBtn API]', () => {
1051
935
  })
1052
936
 
1053
937
  describe('[(prop)loading]', () => {
1054
- test('is defined correctly', () => {
1055
- expect(QBtn.props.loading).toBeDefined()
1056
- })
1057
-
1058
938
  test('type Boolean has effect', async () => {
1059
939
  const wrapper = mount(QBtn)
1060
940
  const target = wrapper.get('.q-btn')
@@ -1136,10 +1016,6 @@ describe('[QBtn API]', () => {
1136
1016
  })
1137
1017
 
1138
1018
  describe('[(prop)disable]', () => {
1139
- test('is defined correctly', () => {
1140
- expect(QBtn.props.disable).toBeDefined()
1141
- })
1142
-
1143
1019
  test('type Boolean has effect', async () => {
1144
1020
  const wrapper = mount(QBtn)
1145
1021
  const target = wrapper.get('.q-btn')
@@ -1214,10 +1090,6 @@ describe('[QBtn API]', () => {
1214
1090
  })
1215
1091
 
1216
1092
  describe('[(prop)round]', () => {
1217
- test('is defined correctly', () => {
1218
- expect(QBtn.props.round).toBeDefined()
1219
- })
1220
-
1221
1093
  test('type Boolean has effect', async () => {
1222
1094
  const wrapper = mount(QBtn)
1223
1095
  const target = wrapper.get('.q-btn')
@@ -1240,10 +1112,6 @@ describe('[QBtn API]', () => {
1240
1112
  })
1241
1113
 
1242
1114
  describe('[(prop)percentage]', () => {
1243
- test('is defined correctly', () => {
1244
- expect(QBtn.props.percentage).toBeDefined()
1245
- })
1246
-
1247
1115
  test('type Number has effect', async () => {
1248
1116
  const propVal = 58
1249
1117
  const wrapper = mount(QBtn)
@@ -1297,10 +1165,6 @@ describe('[QBtn API]', () => {
1297
1165
  })
1298
1166
 
1299
1167
  describe('[(prop)dark-percentage]', () => {
1300
- test('is defined correctly', () => {
1301
- expect(QBtn.props.darkPercentage).toBeDefined()
1302
- })
1303
-
1304
1168
  test('type Boolean has effect', async () => {
1305
1169
  const propVal = 58
1306
1170
  const wrapper = mount(QBtn)
@@ -1370,13 +1234,6 @@ describe('[QBtn API]', () => {
1370
1234
 
1371
1235
  describe('[Events]', () => {
1372
1236
  describe('[(event)click]', () => {
1373
- test('is defined correctly', () => {
1374
- expect(
1375
- QBtn.emits?.includes('click')
1376
- ^ (QBtn.props?.onClick !== void 0)
1377
- ).toBe(1)
1378
- })
1379
-
1380
1237
  test('(with route) is emitting', async () => {
1381
1238
  const testRoute = '/home/dashboard'
1382
1239
  const router = await getRouter(testRoute)
@@ -2,7 +2,7 @@ import { computed } from 'vue'
2
2
 
3
3
  import useAlign, { useAlignProps } from '../../composables/private.use-align/use-align.js'
4
4
  import useSize, { useSizeProps } from '../../composables/private.use-size/use-size.js'
5
- import useRouterLink, { useRouterLinkProps } from '../../composables/private.use-router-link/use-router-link.js'
5
+ import useRouterLink, { useRouterLinkNonMatchingProps } from '../../composables/private.use-router-link/use-router-link.js'
6
6
 
7
7
  export const btnPadding = {
8
8
  none: 0,
@@ -41,9 +41,9 @@ export function getBtnDesignAttr (props) {
41
41
  : {}
42
42
  }
43
43
 
44
- export const useBtnProps = {
44
+ export const nonRoundBtnProps = {
45
45
  ...useSizeProps,
46
- ...useRouterLinkProps,
46
+ ...useRouterLinkNonMatchingProps,
47
47
 
48
48
  type: {
49
49
  type: String,
@@ -60,7 +60,6 @@ export const useBtnProps = {
60
60
  ),
61
61
 
62
62
  square: Boolean,
63
- round: Boolean,
64
63
  rounded: Boolean,
65
64
  glossy: Boolean,
66
65
 
@@ -95,6 +94,11 @@ export const useBtnProps = {
95
94
  disable: Boolean
96
95
  }
97
96
 
97
+ export const useBtnProps = {
98
+ ...nonRoundBtnProps,
99
+ round: Boolean
100
+ }
101
+
98
102
  export default function (props) {
99
103
  const sizeStyle = useSize(props, defaultSizes)
100
104
  const alignClass = useAlign(props)
@@ -3,7 +3,8 @@ import { describe, test, expect } from 'vitest'
3
3
  import { defineComponent } from 'vue'
4
4
 
5
5
  import useBtn, {
6
- btnPadding, defaultSizes, btnDesignOptions, useBtnProps,
6
+ btnPadding, defaultSizes, btnDesignOptions,
7
+ useBtnProps, nonRoundBtnProps,
7
8
  getBtnDesign, getBtnDesignAttr
8
9
  } from './use-btn.js'
9
10
 
@@ -36,6 +37,13 @@ describe('[useBtn API]', () => {
36
37
  expect(Object.keys(useBtnProps)).not.toHaveLength(0)
37
38
  })
38
39
  })
40
+
41
+ describe('[(variable)nonRoundBtnProps]', () => {
42
+ test('is defined correctly', () => {
43
+ expect(nonRoundBtnProps).toBeTypeOf('object')
44
+ expect(Object.keys(nonRoundBtnProps)).not.toHaveLength(0)
45
+ })
46
+ })
39
47
  })
40
48
 
41
49
  describe('[Functions]', () => {
@@ -5,7 +5,7 @@ import QBtn from '../btn/QBtn.js'
5
5
  import QBtnGroup from '../btn-group/QBtnGroup.js'
6
6
  import QMenu from '../menu/QMenu.js'
7
7
 
8
- import { getBtnDesignAttr, useBtnProps } from '../btn/use-btn.js'
8
+ import { getBtnDesignAttr, nonRoundBtnProps } from '../btn/use-btn.js'
9
9
  import useId from '../../composables/use-id/use-id.js'
10
10
  import { useTransitionProps } from '../../composables/private.use-transition/use-transition.js'
11
11
 
@@ -13,7 +13,7 @@ import { createComponent } from '../../utils/private.create/create.js'
13
13
  import { stop } from '../../utils/event/event.js'
14
14
  import { hSlot } from '../../utils/private.render/render.js'
15
15
 
16
- const btnPropsList = Object.keys(useBtnProps)
16
+ const btnPropsList = Object.keys(nonRoundBtnProps)
17
17
 
18
18
  export function passBtnProps (props) {
19
19
  return btnPropsList.reduce((acc, key) => {
@@ -29,7 +29,7 @@ export default createComponent({
29
29
  name: 'QBtnDropdown',
30
30
 
31
31
  props: {
32
- ...useBtnProps,
32
+ ...nonRoundBtnProps,
33
33
  ...useTransitionProps,
34
34
 
35
35
  modelValue: Boolean,
@@ -7,11 +7,8 @@
7
7
 
8
8
  "props": {
9
9
  "model-value": {
10
- "extends": "model-value",
11
10
  "type": "Boolean",
12
- "desc": "Controls Menu show/hidden state; Either use this property (along with a listener for 'update:modelValue' event) OR use v-model directive",
13
- "required": false,
14
- "examples": [ "# v-model=\"menuState\"" ]
11
+ "__delete": [ "default" ]
15
12
  },
16
13
 
17
14
  "split": {
@@ -181,7 +181,9 @@
181
181
 
182
182
  "clear": {
183
183
  "desc": "When using the 'clearable' property, this event is emitted when the already selected button is clicked"
184
- }
184
+ },
185
+
186
+ "click": { "internal": true }
185
187
  },
186
188
 
187
189
  "slots": {