quasar 2.15.1 → 2.15.2

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 (518) hide show
  1. package/dist/api/AddressbarColor.json +1 -1
  2. package/dist/api/BottomSheet.json +1 -1
  3. package/dist/api/ClosePopup.json +1 -1
  4. package/dist/api/Cookies.json +1 -1
  5. package/dist/api/Dark.json +1 -1
  6. package/dist/api/Dialog.json +1 -1
  7. package/dist/api/Intersection.json +1 -1
  8. package/dist/api/Loading.json +1 -1
  9. package/dist/api/LoadingBar.json +1 -1
  10. package/dist/api/LocalStorage.json +1 -1
  11. package/dist/api/Morph.json +1 -1
  12. package/dist/api/Mutation.json +1 -1
  13. package/dist/api/Notify.json +1 -1
  14. package/dist/api/Platform.json +1 -1
  15. package/dist/api/QAjaxBar.json +1 -1
  16. package/dist/api/QAvatar.json +1 -1
  17. package/dist/api/QBadge.json +1 -1
  18. package/dist/api/QBanner.json +1 -1
  19. package/dist/api/QBar.json +1 -1
  20. package/dist/api/QBreadcrumbs.json +1 -1
  21. package/dist/api/QBreadcrumbsEl.json +1 -1
  22. package/dist/api/QBtn.json +1 -1
  23. package/dist/api/QBtnDropdown.json +1 -1
  24. package/dist/api/QBtnToggle.json +1 -1
  25. package/dist/api/QCard.json +1 -1
  26. package/dist/api/QCardActions.json +1 -1
  27. package/dist/api/QCardSection.json +1 -1
  28. package/dist/api/QCarousel.json +1 -1
  29. package/dist/api/QCarouselControl.json +1 -1
  30. package/dist/api/QCarouselSlide.json +1 -1
  31. package/dist/api/QChatMessage.json +1 -1
  32. package/dist/api/QCheckbox.json +1 -1
  33. package/dist/api/QChip.json +1 -1
  34. package/dist/api/QCircularProgress.json +1 -1
  35. package/dist/api/QColor.json +1 -1
  36. package/dist/api/QDate.json +1 -1
  37. package/dist/api/QDialog.json +1 -1
  38. package/dist/api/QDrawer.json +1 -1
  39. package/dist/api/QEditor.json +1 -1
  40. package/dist/api/QExpansionItem.json +1 -1
  41. package/dist/api/QFab.json +1 -1
  42. package/dist/api/QFabAction.json +1 -1
  43. package/dist/api/QField.json +1 -1
  44. package/dist/api/QFile.json +1 -1
  45. package/dist/api/QFooter.json +1 -1
  46. package/dist/api/QHeader.json +1 -1
  47. package/dist/api/QIcon.json +1 -1
  48. package/dist/api/QImg.json +1 -1
  49. package/dist/api/QInfiniteScroll.json +1 -1
  50. package/dist/api/QInnerLoading.json +1 -1
  51. package/dist/api/QInput.json +1 -1
  52. package/dist/api/QIntersection.json +1 -1
  53. package/dist/api/QItem.json +1 -1
  54. package/dist/api/QKnob.json +1 -1
  55. package/dist/api/QLayout.json +1 -1
  56. package/dist/api/QLinearProgress.json +1 -1
  57. package/dist/api/QList.json +1 -1
  58. package/dist/api/QMarkupTable.json +1 -1
  59. package/dist/api/QMenu.json +1 -1
  60. package/dist/api/QNoSsr.json +1 -1
  61. package/dist/api/QOptionGroup.json +1 -1
  62. package/dist/api/QPage.json +1 -1
  63. package/dist/api/QPageScroller.json +1 -1
  64. package/dist/api/QPageSticky.json +1 -1
  65. package/dist/api/QPagination.json +1 -1
  66. package/dist/api/QParallax.json +1 -1
  67. package/dist/api/QPopupEdit.json +1 -1
  68. package/dist/api/QPopupProxy.json +1 -1
  69. package/dist/api/QPullToRefresh.json +1 -1
  70. package/dist/api/QRadio.json +1 -1
  71. package/dist/api/QRange.json +1 -1
  72. package/dist/api/QRating.json +1 -1
  73. package/dist/api/QResizeObserver.json +1 -1
  74. package/dist/api/QResponsive.json +1 -1
  75. package/dist/api/QRouteTab.json +1 -1
  76. package/dist/api/QScrollArea.json +1 -1
  77. package/dist/api/QScrollObserver.json +1 -1
  78. package/dist/api/QSelect.json +1 -1
  79. package/dist/api/QSeparator.json +1 -1
  80. package/dist/api/QSkeleton.json +1 -1
  81. package/dist/api/QSlideItem.json +1 -1
  82. package/dist/api/QSlideTransition.json +1 -1
  83. package/dist/api/QSlider.json +1 -1
  84. package/dist/api/QSpinner.json +1 -1
  85. package/dist/api/QSpinnerAudio.json +1 -1
  86. package/dist/api/QSpinnerBall.json +1 -1
  87. package/dist/api/QSpinnerBars.json +1 -1
  88. package/dist/api/QSpinnerBox.json +1 -1
  89. package/dist/api/QSpinnerClock.json +1 -1
  90. package/dist/api/QSpinnerComment.json +1 -1
  91. package/dist/api/QSpinnerCube.json +1 -1
  92. package/dist/api/QSpinnerDots.json +1 -1
  93. package/dist/api/QSpinnerFacebook.json +1 -1
  94. package/dist/api/QSpinnerGears.json +1 -1
  95. package/dist/api/QSpinnerGrid.json +1 -1
  96. package/dist/api/QSpinnerHearts.json +1 -1
  97. package/dist/api/QSpinnerHourglass.json +1 -1
  98. package/dist/api/QSpinnerInfinity.json +1 -1
  99. package/dist/api/QSpinnerIos.json +1 -1
  100. package/dist/api/QSpinnerOrbit.json +1 -1
  101. package/dist/api/QSpinnerOval.json +1 -1
  102. package/dist/api/QSpinnerPie.json +1 -1
  103. package/dist/api/QSpinnerPuff.json +1 -1
  104. package/dist/api/QSpinnerRadio.json +1 -1
  105. package/dist/api/QSpinnerRings.json +1 -1
  106. package/dist/api/QSpinnerTail.json +1 -1
  107. package/dist/api/QSplitter.json +1 -1
  108. package/dist/api/QStep.json +1 -1
  109. package/dist/api/QStepper.json +1 -1
  110. package/dist/api/QTab.json +1 -1
  111. package/dist/api/QTabPanel.json +1 -1
  112. package/dist/api/QTabPanels.json +1 -1
  113. package/dist/api/QTable.json +1 -1
  114. package/dist/api/QTabs.json +1 -1
  115. package/dist/api/QTd.json +1 -1
  116. package/dist/api/QTh.json +1 -1
  117. package/dist/api/QTime.json +1 -1
  118. package/dist/api/QTimeline.json +1 -1
  119. package/dist/api/QTimelineEntry.json +1 -1
  120. package/dist/api/QToggle.json +1 -1
  121. package/dist/api/QTooltip.json +1 -1
  122. package/dist/api/QTr.json +1 -1
  123. package/dist/api/QTree.json +1 -1
  124. package/dist/api/QUploader.json +1 -1
  125. package/dist/api/QVideo.json +1 -1
  126. package/dist/api/QVirtualScroll.json +1 -1
  127. package/dist/api/Ripple.json +1 -1
  128. package/dist/api/Screen.json +1 -1
  129. package/dist/api/Scroll.json +1 -1
  130. package/dist/api/ScrollFire.json +1 -1
  131. package/dist/api/SessionStorage.json +1 -1
  132. package/dist/api/TouchHold.json +1 -1
  133. package/dist/api/TouchPan.json +1 -1
  134. package/dist/api/TouchRepeat.json +1 -1
  135. package/dist/api/TouchSwipe.json +1 -1
  136. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  137. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  138. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  139. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  140. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  141. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  142. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  143. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  144. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  145. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  146. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  147. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  148. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  149. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  150. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  151. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  152. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  153. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  154. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  155. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  156. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  157. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  158. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  159. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  160. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  161. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  162. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  163. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  164. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  165. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  166. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  167. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  168. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  169. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  170. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  171. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  172. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  173. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  174. package/dist/icon-set/themify.umd.prod.js +1 -1
  175. package/dist/lang/ar-TN.umd.prod.js +1 -1
  176. package/dist/lang/ar.umd.prod.js +1 -1
  177. package/dist/lang/az-Latn.umd.prod.js +1 -1
  178. package/dist/lang/bg.umd.prod.js +1 -1
  179. package/dist/lang/bn.umd.prod.js +1 -1
  180. package/dist/lang/ca.umd.prod.js +1 -1
  181. package/dist/lang/cs.umd.prod.js +1 -1
  182. package/dist/lang/da.umd.prod.js +1 -1
  183. package/dist/lang/de-CH.umd.prod.js +1 -1
  184. package/dist/lang/de-DE.umd.prod.js +1 -1
  185. package/dist/lang/de.umd.prod.js +1 -1
  186. package/dist/lang/el.umd.prod.js +1 -1
  187. package/dist/lang/en-GB.umd.prod.js +1 -1
  188. package/dist/lang/en-US.umd.prod.js +1 -1
  189. package/dist/lang/eo.umd.prod.js +1 -1
  190. package/dist/lang/es.umd.prod.js +1 -1
  191. package/dist/lang/et.umd.prod.js +1 -1
  192. package/dist/lang/eu.umd.prod.js +1 -1
  193. package/dist/lang/fa-IR.umd.prod.js +1 -1
  194. package/dist/lang/fa.umd.prod.js +1 -1
  195. package/dist/lang/fi.umd.prod.js +1 -1
  196. package/dist/lang/fr.umd.prod.js +1 -1
  197. package/dist/lang/gn.umd.prod.js +1 -1
  198. package/dist/lang/he.umd.prod.js +1 -1
  199. package/dist/lang/hi.umd.prod.js +1 -1
  200. package/dist/lang/hr.umd.prod.js +1 -1
  201. package/dist/lang/hu.umd.prod.js +1 -1
  202. package/dist/lang/id.umd.prod.js +1 -1
  203. package/dist/lang/is.umd.prod.js +1 -1
  204. package/dist/lang/it.umd.prod.js +1 -1
  205. package/dist/lang/ja.umd.prod.js +1 -1
  206. package/dist/lang/kk.umd.prod.js +1 -1
  207. package/dist/lang/km.umd.prod.js +1 -1
  208. package/dist/lang/ko-KR.umd.prod.js +1 -1
  209. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  210. package/dist/lang/lt.umd.prod.js +1 -1
  211. package/dist/lang/lu.umd.prod.js +1 -1
  212. package/dist/lang/lv.umd.prod.js +1 -1
  213. package/dist/lang/mk.umd.prod.js +1 -1
  214. package/dist/lang/ml.umd.prod.js +1 -1
  215. package/dist/lang/mm.umd.prod.js +1 -1
  216. package/dist/lang/ms-MY.umd.prod.js +1 -1
  217. package/dist/lang/ms.umd.prod.js +1 -1
  218. package/dist/lang/my.umd.prod.js +1 -1
  219. package/dist/lang/nb-NO.umd.prod.js +1 -1
  220. package/dist/lang/nl.umd.prod.js +1 -1
  221. package/dist/lang/pl.umd.prod.js +1 -1
  222. package/dist/lang/pt-BR.umd.prod.js +1 -1
  223. package/dist/lang/pt.umd.prod.js +1 -1
  224. package/dist/lang/ro.umd.prod.js +1 -1
  225. package/dist/lang/ru.umd.prod.js +1 -1
  226. package/dist/lang/sk.umd.prod.js +1 -1
  227. package/dist/lang/sl.umd.prod.js +1 -1
  228. package/dist/lang/sm.umd.prod.js +1 -1
  229. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  230. package/dist/lang/sr.umd.prod.js +1 -1
  231. package/dist/lang/sv.umd.prod.js +1 -1
  232. package/dist/lang/ta.umd.prod.js +1 -1
  233. package/dist/lang/th.umd.prod.js +1 -1
  234. package/dist/lang/tl.umd.prod.js +1 -1
  235. package/dist/lang/tr.umd.prod.js +1 -1
  236. package/dist/lang/ug.umd.prod.js +1 -1
  237. package/dist/lang/uk.umd.prod.js +1 -1
  238. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  239. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  240. package/dist/lang/vi.umd.prod.js +1 -1
  241. package/dist/lang/zh-CN.umd.prod.js +1 -1
  242. package/dist/lang/zh-TW.umd.prod.js +1 -1
  243. package/dist/quasar.cjs.prod.js +12 -12
  244. package/dist/quasar.css +53 -53
  245. package/dist/quasar.esm.js +77 -49
  246. package/dist/quasar.esm.prod.js +10 -10
  247. package/dist/quasar.prod.css +1 -1
  248. package/dist/quasar.rtl.css +65 -65
  249. package/dist/quasar.rtl.prod.css +1 -1
  250. package/dist/quasar.sass +37 -37
  251. package/dist/quasar.umd.js +75 -48
  252. package/dist/quasar.umd.prod.js +6 -6
  253. package/dist/transforms/import-map.json +1 -1
  254. package/dist/types/index.d.ts +325 -235
  255. package/dist/vetur/quasar-attributes.json +1 -1
  256. package/dist/web-types/web-types.json +1 -1
  257. package/package.json +15 -30
  258. package/src/api-file-example.json +5 -5
  259. package/src/api.extends.json +18 -18
  260. package/src/body.js +1 -1
  261. package/src/components/ajax-bar/QAjaxBar.json +5 -5
  262. package/src/components/avatar/QAvatar.json +1 -1
  263. package/src/components/avatar/QAvatar.test.js +146 -0
  264. package/src/components/badge/QBadge.json +2 -2
  265. package/src/components/badge/QBadge.test.js +167 -0
  266. package/src/components/banner/QBanner.test.js +123 -0
  267. package/src/components/bar/QBar.test.js +55 -0
  268. package/src/components/breadcrumbs/QBreadcrumbs.json +7 -7
  269. package/src/components/breadcrumbs/QBreadcrumbs.test.js +123 -0
  270. package/src/components/breadcrumbs/QBreadcrumbsEl.json +4 -4
  271. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +134 -0
  272. package/src/components/btn/QBtn.js +1 -1
  273. package/src/components/btn/QBtn.json +1 -1
  274. package/src/components/btn/QBtn.test.js +350 -0
  275. package/src/components/btn/use-btn.json +13 -13
  276. package/src/components/btn/use-btn.test.js +590 -0
  277. package/src/components/btn-dropdown/QBtnDropdown.json +14 -14
  278. package/src/components/btn-toggle/QBtnToggle.json +6 -6
  279. package/src/components/card/QCard.json +2 -2
  280. package/src/components/card/QCardActions.json +3 -3
  281. package/src/components/card/QCardSection.json +2 -2
  282. package/src/components/carousel/QCarousel.json +9 -9
  283. package/src/components/carousel/QCarouselControl.json +5 -5
  284. package/src/components/carousel/QCarouselSlide.json +4 -7
  285. package/src/components/chat/QChatMessage.json +9 -9
  286. package/src/components/checkbox/use-checkbox.json +13 -13
  287. package/src/components/chip/QChip.js +1 -1
  288. package/src/components/chip/QChip.json +6 -8
  289. package/src/components/chip/QChip.test.js +534 -0
  290. package/src/components/circular-progress/QCircularProgress.json +8 -8
  291. package/src/components/color/QColor.js +1 -1
  292. package/src/components/color/QColor.json +8 -10
  293. package/src/components/date/QDate.json +31 -30
  294. package/src/components/date/use-datetime.json +3 -3
  295. package/src/components/dialog/QDialog.json +13 -13
  296. package/src/components/dialog/QDialog.test.js +390 -0
  297. package/src/components/dialog/test/DialogWrapper.vue +17 -0
  298. package/src/components/drawer/QDrawer.js +1 -1
  299. package/src/components/drawer/QDrawer.json +8 -12
  300. package/src/components/editor/QEditor.json +31 -45
  301. package/src/components/expansion-item/QExpansionItem.js +1 -1
  302. package/src/components/expansion-item/QExpansionItem.json +14 -14
  303. package/src/components/fab/QFab.json +4 -4
  304. package/src/components/fab/QFabAction.json +3 -5
  305. package/src/components/fab/use-fab.json +10 -12
  306. package/src/components/field/QField.json +5 -5
  307. package/src/components/file/QFile.json +9 -11
  308. package/src/components/footer/QFooter.js +1 -1
  309. package/src/components/footer/QFooter.json +3 -5
  310. package/src/components/form/QForm.json +1 -3
  311. package/src/components/form/QFormChildMixin.json +1 -3
  312. package/src/components/header/QHeader.json +4 -6
  313. package/src/components/icon/QIcon.json +2 -2
  314. package/src/components/img/QImg.js +1 -1
  315. package/src/components/img/QImg.json +45 -59
  316. package/src/components/infinite-scroll/QInfiniteScroll.json +3 -3
  317. package/src/components/inner-loading/QInnerLoading.json +5 -7
  318. package/src/components/input/QInput.json +10 -10
  319. package/src/components/input/use-mask.json +1 -1
  320. package/src/components/intersection/QIntersection.js +2 -2
  321. package/src/components/intersection/QIntersection.json +7 -7
  322. package/src/components/item/QItem.json +5 -5
  323. package/src/components/item/QList.json +2 -2
  324. package/src/components/knob/QKnob.js +1 -1
  325. package/src/components/knob/QKnob.json +6 -6
  326. package/src/components/layout/QLayout.js +1 -1
  327. package/src/components/layout/QLayout.json +3 -5
  328. package/src/components/linear-progress/QLinearProgress.json +2 -2
  329. package/src/components/markup-table/QMarkupTable.json +3 -3
  330. package/src/components/menu/QMenu.json +8 -8
  331. package/src/components/no-ssr/QNoSsr.json +3 -3
  332. package/src/components/option-group/QOptionGroup.json +11 -13
  333. package/src/components/page/QPage.json +2 -2
  334. package/src/components/page-scroller/QPageScroller.json +3 -3
  335. package/src/components/page-sticky/QPageSticky.json +4 -4
  336. package/src/components/pagination/QPagination.json +20 -20
  337. package/src/components/parallax/QParallax.json +5 -5
  338. package/src/components/popup-edit/QPopupEdit.json +17 -19
  339. package/src/components/popup-proxy/QPopupProxy.json +2 -2
  340. package/src/components/pull-to-refresh/QPullToRefresh.js +1 -1
  341. package/src/components/radio/QRadio.json +5 -5
  342. package/src/components/range/QRange.json +3 -7
  343. package/src/components/rating/QRating.json +16 -19
  344. package/src/components/resize-observer/QResizeObserver.json +2 -2
  345. package/src/components/scroll-area/QScrollArea.js +1 -1
  346. package/src/components/scroll-area/QScrollArea.json +12 -12
  347. package/src/components/scroll-observer/QScrollObserver.json +4 -4
  348. package/src/components/select/QSelect.json +55 -59
  349. package/src/components/select/__tests__/QSelect.cy.js +21 -1
  350. package/src/components/separator/QSeparator.json +3 -5
  351. package/src/components/skeleton/QSkeleton.json +14 -16
  352. package/src/components/slide-item/QSlideItem.js +1 -1
  353. package/src/components/slide-item/QSlideItem.json +2 -2
  354. package/src/components/slide-transition/QSlideTransition.json +1 -1
  355. package/src/components/slider/QSlider.json +2 -4
  356. package/src/components/slider/use-slider.js +1 -1
  357. package/src/components/slider/use-slider.json +18 -22
  358. package/src/components/spinner/QSpinner.json +1 -1
  359. package/src/components/spinner/QSpinnerAudio.json +1 -1
  360. package/src/components/spinner/QSpinnerBall.json +1 -1
  361. package/src/components/spinner/QSpinnerBars.json +1 -1
  362. package/src/components/spinner/QSpinnerBox.json +1 -1
  363. package/src/components/spinner/QSpinnerClock.json +1 -1
  364. package/src/components/spinner/QSpinnerComment.json +1 -1
  365. package/src/components/spinner/QSpinnerCube.json +1 -1
  366. package/src/components/spinner/QSpinnerDots.json +1 -1
  367. package/src/components/spinner/QSpinnerFacebook.json +1 -1
  368. package/src/components/spinner/QSpinnerGears.json +1 -1
  369. package/src/components/spinner/QSpinnerGrid.json +1 -1
  370. package/src/components/spinner/QSpinnerHearts.json +1 -1
  371. package/src/components/spinner/QSpinnerHourglass.json +1 -1
  372. package/src/components/spinner/QSpinnerInfinity.json +1 -1
  373. package/src/components/spinner/QSpinnerIos.json +1 -1
  374. package/src/components/spinner/QSpinnerOrbit.json +1 -1
  375. package/src/components/spinner/QSpinnerOval.json +1 -1
  376. package/src/components/spinner/QSpinnerPie.json +1 -1
  377. package/src/components/spinner/QSpinnerPuff.json +1 -1
  378. package/src/components/spinner/QSpinnerRadio.json +1 -1
  379. package/src/components/spinner/QSpinnerRings.json +1 -1
  380. package/src/components/spinner/QSpinnerTail.json +1 -1
  381. package/src/components/splitter/QSplitter.js +1 -1
  382. package/src/components/splitter/QSplitter.json +14 -14
  383. package/src/components/stepper/QStep.json +4 -10
  384. package/src/components/stepper/QStepper.json +1 -3
  385. package/src/components/stepper/StepHeader.js +1 -1
  386. package/src/components/table/QTable.js +1 -1
  387. package/src/components/table/QTable.json +113 -126
  388. package/src/components/table/QTd.json +1 -1
  389. package/src/components/table/QTh.json +1 -1
  390. package/src/components/table/QTr.json +1 -1
  391. package/src/components/tabs/QRouteTab.json +1 -1
  392. package/src/components/tabs/QTab.json +6 -13
  393. package/src/components/tabs/QTabs.json +8 -8
  394. package/src/components/tabs/use-tab.js +1 -1
  395. package/src/components/time/QTime.js +1 -1
  396. package/src/components/time/QTime.json +10 -22
  397. package/src/components/timeline/QTimeline.json +4 -4
  398. package/src/components/timeline/QTimelineEntry.json +11 -11
  399. package/src/components/tooltip/QTooltip.json +17 -20
  400. package/src/components/tree/QTree.json +26 -26
  401. package/src/components/uploader/QUploader.json +4 -4
  402. package/src/components/uploader/xhr-uploader-plugin.json +12 -12
  403. package/src/components/video/QVideo.json +15 -19
  404. package/src/components/virtual-scroll/QVirtualScroll.json +7 -10
  405. package/src/components/virtual-scroll/use-virtual-scroll.json +9 -8
  406. package/src/composables/private/use-anchor.json +6 -6
  407. package/src/composables/private/use-field.json +8 -11
  408. package/src/composables/private/use-file.js +1 -1
  409. package/src/composables/private/use-file.json +6 -8
  410. package/src/composables/private/use-form.json +1 -1
  411. package/src/composables/private/use-form.test.js +93 -0
  412. package/src/composables/private/use-fullscreen.json +1 -3
  413. package/src/composables/private/use-key-composition.js +1 -1
  414. package/src/composables/private/use-panel.child.json +1 -3
  415. package/src/composables/private/use-panel.js +1 -1
  416. package/src/composables/private/use-panel.json +12 -12
  417. package/src/composables/private/use-portal.js +16 -1
  418. package/src/composables/private/use-ratio.json +4 -3
  419. package/src/composables/private/use-ratio.test.js +27 -0
  420. package/src/composables/private/use-router-link.json +6 -6
  421. package/src/composables/private/use-size.json +1 -1
  422. package/src/composables/private/use-size.test.js +22 -0
  423. package/src/composables/private/use-transition.json +3 -3
  424. package/src/composables/private/use-validate.json +6 -6
  425. package/src/composables/use-hydration.js +1 -1
  426. package/src/composables/use-id.js +1 -1
  427. package/src/composables/use-id.test.js +55 -0
  428. package/src/composables/use-meta.js +1 -1
  429. package/src/composables.js +2 -0
  430. package/src/css/index.sass +6 -6
  431. package/src/directives/{ClosePopup.js → close-popup/ClosePopup.js} +4 -4
  432. package/src/directives/{ClosePopup.json → close-popup/ClosePopup.json} +5 -5
  433. package/src/directives/{Intersection.js → intersection/Intersection.js} +3 -3
  434. package/src/directives/{Intersection.json → intersection/Intersection.json} +4 -6
  435. package/src/directives/{Morph.js → morph/Morph.js} +2 -2
  436. package/src/directives/{Morph.json → morph/Morph.json} +20 -20
  437. package/src/directives/{Mutation.js → mutation/Mutation.js} +2 -2
  438. package/src/directives/{Mutation.json → mutation/Mutation.json} +10 -12
  439. package/src/directives/{Ripple.js → ripple/Ripple.js} +6 -6
  440. package/src/directives/{Ripple.json → ripple/Ripple.json} +7 -13
  441. package/src/directives/{Scroll.js → scroll/Scroll.js} +4 -4
  442. package/src/directives/{Scroll.json → scroll/Scroll.json} +2 -2
  443. package/src/directives/{ScrollFire.js → scroll-fire/ScrollFire.js} +6 -6
  444. package/src/directives/{ScrollFire.json → scroll-fire/ScrollFire.json} +1 -1
  445. package/src/directives/{TouchHold.js → touch-hold/TouchHold.js} +5 -5
  446. package/src/directives/{TouchHold.json → touch-hold/TouchHold.json} +6 -6
  447. package/src/directives/{TouchPan.js → touch-pan/TouchPan.js} +6 -6
  448. package/src/directives/{TouchPan.json → touch-pan/TouchPan.json} +4 -4
  449. package/src/directives/{TouchRepeat.js → touch-repeat/TouchRepeat.js} +6 -6
  450. package/src/directives/{TouchRepeat.json → touch-repeat/TouchRepeat.json} +4 -4
  451. package/src/directives/{TouchSwipe.js → touch-swipe/TouchSwipe.js} +6 -6
  452. package/src/directives/{TouchSwipe.json → touch-swipe/TouchSwipe.json} +4 -4
  453. package/src/directives.js +11 -11
  454. package/src/history.js +1 -1
  455. package/src/install-quasar.js +3 -3
  456. package/src/plugins/{AddressbarColor.js → addressbar/AddressbarColor.js} +3 -3
  457. package/src/plugins/{AddressbarColor.json → addressbar/AddressbarColor.json} +1 -1
  458. package/src/plugins/{AppFullscreen.js → app-fullscreen/AppFullscreen.js} +2 -2
  459. package/src/plugins/{AppVisibility.js → app-visibility/AppVisibility.js} +2 -2
  460. package/src/plugins/{BottomSheet.js → bottom-sheet/BottomSheet.js} +2 -2
  461. package/src/plugins/{BottomSheet.json → bottom-sheet/BottomSheet.json} +10 -10
  462. package/src/{components/dialog-bottom-sheet/BottomSheet.js → plugins/bottom-sheet/component/BottomSheetComponent.js} +10 -10
  463. package/src/plugins/{Cookies.json → cookies/Cookies.json} +14 -16
  464. package/src/plugins/{Dark.js → dark/Dark.js} +1 -1
  465. package/src/plugins/{Dark.json → dark/Dark.json} +3 -3
  466. package/src/plugins/{Dialog.js → dialog/Dialog.js} +2 -2
  467. package/src/plugins/{Dialog.json → dialog/Dialog.json} +15 -15
  468. package/src/{components/dialog-plugin/DialogPlugin.js → plugins/dialog/component/DialogPluginComponent.js} +14 -14
  469. package/src/plugins/{Loading.js → loading/Loading.js} +7 -6
  470. package/src/plugins/{Loading.json → loading/Loading.json} +15 -15
  471. package/src/plugins/{LoadingBar.js → loading-bar/LoadingBar.js} +6 -6
  472. package/src/plugins/{LoadingBar.json → loading-bar/LoadingBar.json} +1 -1
  473. package/src/plugins/{LocalStorage.js → local-storage/LocalStorage.js} +2 -2
  474. package/src/plugins/{Meta.js → meta/Meta.js} +2 -2
  475. package/src/plugins/{Notify.js → notify/Notify.js} +11 -10
  476. package/src/plugins/{Notify.json → notify/Notify.json} +52 -68
  477. package/src/plugins/{Platform.js → platform/Platform.js} +3 -9
  478. package/src/plugins/{Platform.json → platform/Platform.json} +6 -10
  479. package/src/plugins/{Screen.js → screen/Screen.js} +4 -4
  480. package/src/plugins/{Screen.json → screen/Screen.json} +6 -12
  481. package/src/plugins/{SessionStorage.js → session-storage/SessionStorage.js} +2 -2
  482. package/src/plugins.js +15 -15
  483. package/src/utils/create-meta-mixin.js +1 -1
  484. package/src/utils/open-url.js +1 -1
  485. package/src/utils/prevent-scroll.js +1 -1
  486. package/src/utils/private/escape-key.js +1 -1
  487. package/src/utils/private/focusout.js +1 -1
  488. package/src/utils/private/global-dialog.json +2 -2
  489. package/src/utils/private/position-engine.js +1 -1
  490. package/src/utils/private/selection.js +1 -1
  491. package/src/utils/private/web-storage.json +8 -10
  492. package/src/components/avatar/__tests__/QAvatar.cy.js +0 -120
  493. package/src/components/badge/__tests__/QBadge.cy.js +0 -148
  494. package/src/components/banner/__tests__/QBanner.cy.js +0 -106
  495. package/src/components/bar/__tests__/QBar.cy.js +0 -45
  496. package/src/components/breadcrumbs/__tests__/QBreadcrumbs.cy.js +0 -111
  497. package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.cy.js +0 -87
  498. package/src/components/btn/__tests__/QBtn.cy.js +0 -128
  499. package/src/components/btn/__tests__/use-btn.cy.js +0 -517
  500. package/src/components/chip/__tests__/QChip.cy.js +0 -480
  501. package/src/components/dialog/__tests__/DialogWrapper.vue +0 -33
  502. package/src/components/dialog/__tests__/QDialog.cy.js +0 -543
  503. package/src/components/tabs/__tests__/QRouteTab.cy.js +0 -9
  504. /package/src/components/breadcrumbs/{__tests__ → test}/BasicBreadcrumbs.vue +0 -0
  505. /package/src/components/breadcrumbs/{__tests__ → test}/BreadcrumbWithSeparatorSlot.vue +0 -0
  506. /package/src/components/spinner/{__spinner-mixin.json → spinner.json} +0 -0
  507. /package/src/directives/{Morph.sass → morph/Morph.sass} +0 -0
  508. /package/src/directives/{Ripple.sass → ripple/Ripple.sass} +0 -0
  509. /package/src/plugins/{AppFullscreen.json → app-fullscreen/AppFullscreen.json} +0 -0
  510. /package/src/plugins/{AppVisibility.json → app-visibility/AppVisibility.json} +0 -0
  511. /package/src/{components/dialog-bottom-sheet/BottomSheet.sass → plugins/bottom-sheet/component/BottomSheetComponent.sass} +0 -0
  512. /package/src/plugins/{Cookies.js → cookies/Cookies.js} +0 -0
  513. /package/src/{components/dialog-plugin/DialogPlugin.sass → plugins/dialog/component/DialogPluginComponent.sass} +0 -0
  514. /package/src/plugins/{Loading.sass → loading/Loading.sass} +0 -0
  515. /package/src/plugins/{LocalStorage.json → local-storage/LocalStorage.json} +0 -0
  516. /package/src/plugins/{Meta.json → meta/Meta.json} +0 -0
  517. /package/src/plugins/{Notify.sass → notify/Notify.sass} +0 -0
  518. /package/src/plugins/{SessionStorage.json → session-storage/SessionStorage.json} +0 -0
@@ -11,7 +11,7 @@
11
11
  "type": "String",
12
12
  "desc": "Entry key",
13
13
  "required": true,
14
- "examples": [ "userId" ]
14
+ "examples": [ "'userId'" ]
15
15
  }
16
16
  },
17
17
  "returns": {
@@ -36,13 +36,13 @@
36
36
  "type": "String",
37
37
  "desc": "Entry key",
38
38
  "required": true,
39
- "examples": [ "userId" ]
39
+ "examples": [ "'userId'" ]
40
40
  }
41
41
  },
42
42
  "returns": {
43
43
  "type": [ "Date", "RegExp", "Number", "Boolean", "Function", "Object", "Array", "String", "null" ],
44
44
  "desc": "Storage item value",
45
- "examples": [ "john12", 702 ]
45
+ "examples": [ "'john12'", "702" ]
46
46
  }
47
47
  },
48
48
 
@@ -75,7 +75,7 @@
75
75
  "returns": {
76
76
  "type": [ "String", "null" ],
77
77
  "desc": "Storage key",
78
- "examples": [ "userId" ]
78
+ "examples": [ "'userId'" ]
79
79
  }
80
80
  },
81
81
 
@@ -84,9 +84,7 @@
84
84
  "returns": {
85
85
  "type": "Object",
86
86
  "desc": "Object syntax: item name as Object key and its value",
87
- "examples": [
88
- "{ userId: 'jon12', timesLoggedIn: 14 }"
89
- ]
87
+ "examples": [ "{ userId: 'jon12', timesLoggedIn: 14 }" ]
90
88
  }
91
89
  },
92
90
 
@@ -107,7 +105,7 @@
107
105
  "type": "String",
108
106
  "desc": "Entry key",
109
107
  "required": true,
110
- "examples": [ "userId" ]
108
+ "examples": [ "'userId'" ]
111
109
  },
112
110
 
113
111
  "value": {
@@ -124,7 +122,7 @@
124
122
  "type": "Any",
125
123
  "__exemption": [ "desc" ]
126
124
  },
127
- "examples": [ "john12" ]
125
+ "examples": [ "'john12'" ]
128
126
  }
129
127
  }
130
128
  },
@@ -136,7 +134,7 @@
136
134
  "type": "String",
137
135
  "desc": "Storage key",
138
136
  "required": true,
139
- "examples": [ "userId" ]
137
+ "examples": [ "'userId'" ]
140
138
  }
141
139
  }
142
140
  },
@@ -1,120 +0,0 @@
1
- import QAvatar from '../QAvatar.js'
2
-
3
- describe('Avatar API', () => {
4
- describe('Props', () => {
5
- describe('Category: content', () => {
6
- describe('(prop): icon', () => {
7
- it('should render an icon', () => {
8
- const icon = 'bug_report'
9
- cy.mount(QAvatar, {
10
- props: {
11
- icon,
12
- color: 'grey'
13
- }
14
- })
15
-
16
- cy.get('.q-avatar')
17
- .get('.q-icon')
18
- .should('have.text', `${ icon }`)
19
- })
20
- })
21
- })
22
-
23
- describe('Category: style', () => {
24
- describe('(prop): font-size', () => {
25
- it('should set the font-size', () => {
26
- const size = '40px'
27
- // Doing em/rem units here does not work
28
- // Cypress looks at actual computed values in the browser
29
- const fontSize = '32px'
30
- cy.mount(QAvatar, {
31
- props: {
32
- size,
33
- fontSize,
34
- color: 'grey'
35
- }
36
- })
37
-
38
- cy.get('.q-avatar')
39
- .should('have.css', 'font-size', size)
40
- .get('.q-avatar__content')
41
- .should('have.css', 'font-size', fontSize)
42
- })
43
- })
44
-
45
- describe('(prop): color', () => {
46
- it('should set a background color', () => {
47
- const color = 'red'
48
- cy.mount(QAvatar, {
49
- props: {
50
- color
51
- }
52
- })
53
-
54
- cy.get('.q-avatar')
55
- .should('have.class', `bg-${ color }`)
56
- })
57
- })
58
-
59
- describe('(prop): text-color', () => {
60
- it('should set a text color', () => {
61
- const textColor = 'red'
62
- cy.mount(QAvatar, {
63
- props: {
64
- textColor
65
- }
66
- })
67
-
68
- cy.get('.q-avatar')
69
- .should('have.class', `text-${ textColor }`)
70
- })
71
- })
72
-
73
- describe('(prop): square', () => {
74
- it('should create a square avatar', () => {
75
- cy.mount(QAvatar, {
76
- props: {
77
- square: true,
78
- color: 'grey'
79
- }
80
- })
81
-
82
- cy.get('.q-avatar')
83
- .should('have.class', 'q-avatar--square')
84
- .should('have.css', 'border-radius', '0px')
85
- })
86
- })
87
-
88
- describe('(prop): rounded', () => {
89
- it('should create a rounded avatar', () => {
90
- cy.mount(QAvatar, {
91
- props: {
92
- rounded: true,
93
- color: 'grey'
94
- }
95
- })
96
-
97
- cy.get('.q-avatar')
98
- .should('have.class', 'rounded-borders')
99
- })
100
- })
101
- })
102
- })
103
-
104
- describe('Slots', () => {
105
- describe('(slot): default', () => {
106
- it('render the text in the default slot', () => {
107
- const text = 'QQ'
108
- cy.mount(QAvatar, {
109
- slots: {
110
- // Using only a string here results in an error, this is a workaround
111
- default: () => text
112
- }
113
- })
114
-
115
- cy.get('.q-avatar')
116
- .should('have.text', text)
117
- })
118
- })
119
- })
120
- })
@@ -1,148 +0,0 @@
1
- import QBadge from '../QBadge.js'
2
-
3
- const defaultOptions = {
4
- label: 'simple badge'
5
- }
6
-
7
- const alignValues = [ 'top', 'middle', 'bottom' ]
8
-
9
- function mountQBadge (options = {}) {
10
- options.props = {
11
- ...defaultOptions,
12
- ...options.props
13
- }
14
-
15
- return cy.mount(QBadge, options)
16
- }
17
-
18
- describe('Badge API', () => {
19
- describe('Props', () => {
20
- describe('Category: content', () => {
21
- describe('(prop): floating', () => {
22
- it('should render a floating badge', () => {
23
- mountQBadge({
24
- props: { floating: true }
25
- })
26
-
27
- cy.get('.q-badge')
28
- .should('have.class', 'q-badge--floating')
29
- })
30
- })
31
-
32
- describe('(prop): multi-line', () => {
33
- it('should render a content with multiple lines', () => {
34
- mountQBadge({
35
- props: { multiLine: true }
36
- })
37
-
38
- cy.get('.q-badge')
39
- .should('have.class', 'q-badge--multi-line')
40
- })
41
- })
42
-
43
- describe('(prop): label', () => {
44
- it('should render a label inside the badge', () => {
45
- const label = 'Badge label'
46
-
47
- mountQBadge({
48
- props: { label }
49
- })
50
-
51
- cy.get('.q-badge')
52
- .should('contain', label)
53
- })
54
- })
55
-
56
- describe('(prop): align', () => {
57
- it(`should render a badge aligned based on defined values: ${ alignValues.join(', ') }`, () => {
58
- mountQBadge()
59
-
60
- // loop over alignValues
61
- for (const align of alignValues) {
62
- cy.get('.q-badge')
63
- .then(() => Cypress.vueWrapper.setProps({ align }))
64
- .should('have.css', 'vertical-align', align)
65
- }
66
- })
67
- })
68
- })
69
-
70
- describe('Category: style', () => {
71
- describe('(prop): color', () => {
72
- it('should change color based on Quasar Color Palette', () => {
73
- mountQBadge({
74
- props: { color: 'red' }
75
- })
76
-
77
- cy.get('.q-badge')
78
- .should('have.class', 'bg-red')
79
- })
80
- })
81
-
82
- describe('(prop): text-color', () => {
83
- it('should change text color based on Quasar Color Palette', () => {
84
- mountQBadge({
85
- props: { textColor: 'red' }
86
- })
87
-
88
- cy.get('.q-badge')
89
- .should('have.class', 'text-red')
90
- })
91
- })
92
-
93
- describe('(prop): transparent', () => {
94
- it('should have opacity style when "transparent" prop is true', () => {
95
- mountQBadge({
96
- props: { transparent: true }
97
- })
98
-
99
- cy.get('.q-badge')
100
- .should('have.class', 'q-badge--transparent')
101
- })
102
- })
103
-
104
- describe('(prop): outline', () => {
105
- it('should have a outline style when "outline" prop is true', () => {
106
- mountQBadge({
107
- props: { outline: true }
108
- })
109
-
110
- cy.get('.q-badge')
111
- .should('have.class', 'q-badge--outline')
112
- })
113
- })
114
-
115
- describe('(prop): rounded', () => {
116
- it('should have a rounded style when "rounded" prop is true', () => {
117
- mountQBadge({
118
- props: { rounded: true }
119
- })
120
-
121
- cy.get('.q-badge')
122
- .should('have.class', 'q-badge--rounded')
123
- })
124
- })
125
- })
126
- })
127
-
128
- describe('Slots', () => {
129
- describe('(slot): default', () => {
130
- it('should display the default slot content', () => {
131
- const label = 'Badge label'
132
-
133
- mountQBadge({
134
- props: {
135
- label: undefined
136
- },
137
-
138
- slots: {
139
- default: label
140
- }
141
- })
142
-
143
- cy.get('.q-badge')
144
- .should('have.text', label)
145
- })
146
- })
147
- })
148
- })
@@ -1,106 +0,0 @@
1
- import QBanner from '../QBanner.js'
2
-
3
- describe('Banner API', () => {
4
- describe('Props', () => {
5
- describe('Category: content', () => {
6
- describe('(prop): inline-actions', () => {
7
- it('should render the actions in the same row as the content', () => {
8
- cy.mount(QBanner, {
9
- slots: {
10
- default: 'Banner content',
11
- action: 'Banner action'
12
- },
13
- props: {
14
- inlineActions: true
15
- }
16
- })
17
-
18
- cy.get('.q-banner').get('.q-banner__actions')
19
- .should('have.class', 'col-auto')
20
- })
21
- })
22
- })
23
-
24
- describe('Category: style', () => {
25
- describe('(prop): dense', () => {
26
- it('should have a dense style when "dense" prop is true', () => {
27
- cy.mount(QBanner, {
28
- props: {
29
- dense: true
30
- }
31
-
32
- })
33
- cy.get('.q-banner')
34
- .should('have.class', 'q-banner--dense')
35
- })
36
- })
37
-
38
- describe('(prop): rounded', () => {
39
- it('should have a rounded style when "rounded" prop is true', () => {
40
- cy.mount(QBanner, {
41
- props: {
42
- rounded: true
43
- }
44
- })
45
-
46
- cy.get('.q-banner')
47
- .should('have.class', 'rounded-borders')
48
- })
49
- })
50
-
51
- describe('(prop): dark', () => {
52
- it('should have a dark style when "dark" prop is true', () => {
53
- cy.mount(QBanner, {
54
- props: {
55
- dark: true
56
- }
57
- })
58
-
59
- cy.get('.q-banner')
60
- .should('have.class', 'q-banner--dark')
61
- })
62
- })
63
- })
64
- })
65
-
66
- describe('Slots', () => {
67
- describe('(slot): default', () => {
68
- it('should render the default content', () => {
69
- cy.mount(QBanner, {
70
- slots: {
71
- default: 'Banner content'
72
- }
73
- })
74
-
75
- cy.get('.q-banner').get('.q-banner__content')
76
- .should('contain', 'Banner content')
77
- })
78
- })
79
-
80
- describe('(slot): avatar', () => {
81
- it('should render the avatar content', () => {
82
- cy.mount(QBanner, {
83
- slots: {
84
- avatar: 'Banner avatar'
85
- }
86
- })
87
-
88
- cy.get('.q-banner').get('.q-banner__avatar')
89
- .should('contain', 'Banner avatar')
90
- })
91
- })
92
-
93
- describe('(slot): action', () => {
94
- it('should render the action content', () => {
95
- cy.mount(QBanner, {
96
- slots: {
97
- action: 'Banner action'
98
- }
99
- })
100
-
101
- cy.get('.q-banner').get('.q-banner__actions')
102
- .should('contain', 'Banner action')
103
- })
104
- })
105
- })
106
- })
@@ -1,45 +0,0 @@
1
- import QBar from '../QBar.js'
2
-
3
- describe('Bar API', () => {
4
- describe('Props', () => {
5
- describe('Category: style', () => {
6
- describe('(prop): dense', () => {
7
- it('should have a dense style when "dense" prop is true', () => {
8
- cy.mount(QBar, {
9
- propsData: {
10
- dense: true
11
- }
12
- })
13
- cy.get('.q-bar')
14
- .should('have.class', 'q-bar--dense')
15
- })
16
- })
17
-
18
- describe('(prop): dark', () => {
19
- it('should have a dark style when "dark" prop is true', () => {
20
- cy.mount(QBar, {
21
- propsData: {
22
- dark: true
23
- }
24
- })
25
- cy.get('.q-bar')
26
- .should('have.class', 'q-bar--dark')
27
- })
28
- })
29
- })
30
- })
31
-
32
- describe('Slots', () => {
33
- describe('(slot): default', () => {
34
- it('should render the default slot', () => {
35
- cy.mount(QBar, {
36
- slots: {
37
- default: 'default bar slot'
38
- }
39
- })
40
- cy.get('.q-bar')
41
- .should('contain', 'default bar slot')
42
- })
43
- })
44
- })
45
- })
@@ -1,111 +0,0 @@
1
- import { alignMap, alignValues } from '../../../composables/private/use-align.js'
2
- import BasicBreadcrumbs from './BasicBreadcrumbs.vue'
3
- import BreadcrumbWithSeparatorSlot from './BreadcrumbWithSeparatorSlot.vue'
4
-
5
- const gutterValues = [ 'xs', 'sm', 'md', 'lg', 'xl' ]
6
-
7
- describe('Breadcrumbs API', () => {
8
- describe('Props', () => {
9
- describe('Category: content', () => {
10
- describe('(prop): separator', () => {
11
- it('should render a custom separator based on the defined value', () => {
12
- const customSeparator = '>'
13
-
14
- cy.mount(BasicBreadcrumbs, {
15
- props: {
16
- separator: customSeparator
17
- }
18
- })
19
- cy.get('.q-breadcrumbs__separator')
20
- .each(($el) => cy.wrap($el).should('contain', customSeparator))
21
- })
22
- })
23
-
24
- describe('(prop): gutter', () => {
25
- it(`should render a breadcrumb with a gutter based on defined values: ${ gutterValues.join(', ') }`, () => {
26
- cy.mount(BasicBreadcrumbs)
27
-
28
- // loop through each gutter value
29
- for (const gutter of gutterValues) {
30
- cy.get('.q-breadcrumbs > div')
31
- .then(() => Cypress.vueWrapper.setProps({ gutter }))
32
- .should('have.class', `q-gutter-${ gutter }`)
33
- }
34
- })
35
-
36
- it('should render a breadcrumb with no gutter when the value is set to "none"', () => {
37
- cy.mount(BasicBreadcrumbs, {
38
- props: {
39
- gutter: 'none'
40
- }
41
- })
42
- cy.get('.q-breadcrumbs > div')
43
- .should('not.have.class', 'q-gutter')
44
- })
45
- })
46
-
47
- describe('(prop): align', () => {
48
- it(`should render a breadcrumb aligned based on defined values: ${ alignValues.join(', ') }`, () => {
49
- cy.mount(BasicBreadcrumbs)
50
-
51
- // loop over alignValues
52
- for (const align of alignValues) {
53
- cy.get('.q-breadcrumbs > div')
54
- .then(() => Cypress.vueWrapper.setProps({ align }))
55
- .should('have.class', `justify-${ alignMap[ align ] }`)
56
- }
57
- })
58
- })
59
- })
60
-
61
- describe('Category: style', () => {
62
- describe('(prop): active-color', () => {
63
- it('should change breadcrumb item color based on Quasar Color Palette', () => {
64
- const activeColor = 'red'
65
-
66
- cy.mount(BasicBreadcrumbs, {
67
- props: {
68
- activeColor
69
- }
70
- })
71
- cy.get('.q-breadcrumbs > div > .flex.items-center:not(.q-breadcrumbs--last)')
72
- .each(($el) => cy.wrap($el).should('have.class', `text-${ activeColor }`))
73
- })
74
- })
75
-
76
- describe('(prop): separator-color', () => {
77
- it('should change breadcrumb separator color based on Quasar Color Palette', () => {
78
- const separatorColor = 'red'
79
-
80
- cy.mount(BasicBreadcrumbs, {
81
- props: {
82
- separatorColor
83
- }
84
- })
85
- cy.get('.q-breadcrumbs__separator')
86
- .each(($el) => cy.wrap($el).should('have.class', `text-${ separatorColor }`))
87
- })
88
- })
89
- })
90
- })
91
-
92
- describe('Slots', () => {
93
- describe('(slot): default', () => {
94
- it('should display the default slot content', () => {
95
- cy.mount(BasicBreadcrumbs)
96
-
97
- cy.get('.q-breadcrumbs > div')
98
- .should('contain', 'Home')
99
- })
100
- })
101
-
102
- describe('(slot): separator', () => {
103
- it('should display the separator slot content', () => {
104
- cy.mount(BreadcrumbWithSeparatorSlot)
105
-
106
- cy.get('.q-breadcrumbs__separator')
107
- .should('contain', 'arrow_forward')
108
- })
109
- })
110
- })
111
- })
@@ -1,87 +0,0 @@
1
- import QBreadcrumbsEl from '../QBreadcrumbsEl.js'
2
-
3
- describe('BreadcrumbsEl API', () => {
4
- describe('Props', () => {
5
- describe('Category: content', () => {
6
- describe('(prop): label', () => {
7
- it('should render a label inside the breadcrumb element', () => {
8
- const label = 'Breadcrumb label'
9
-
10
- cy.mount(QBreadcrumbsEl, {
11
- props: { label }
12
- })
13
-
14
- cy.get('.q-breadcrumbs__el')
15
- .should('contain', label)
16
- })
17
- })
18
-
19
- describe('(prop): icon', () => {
20
- it('should render on the left of the breadcrumb element', () => {
21
- const icon = 'home'
22
-
23
- cy.mount(QBreadcrumbsEl, {
24
- props: { icon }
25
- })
26
-
27
- cy.get('.q-breadcrumbs__el')
28
- .should('contain', icon)
29
- })
30
- })
31
-
32
- describe('(prop): tag', () => {
33
- it('should render a custom tag', () => {
34
- const tag = 'a'
35
-
36
- cy.mount(QBreadcrumbsEl, {
37
- props: { tag }
38
- })
39
-
40
- cy.get('.q-breadcrumbs__el')
41
- .should('have.prop', 'tagName', tag.toUpperCase())
42
- })
43
- })
44
- })
45
-
46
- describe('Category: style', () => {
47
- it.skip(' ', () => {
48
- //
49
- })
50
- })
51
- })
52
-
53
- describe('Slots', () => {
54
- describe('(slot): default', () => {
55
- it('should render the default slot', () => {
56
- const label = 'Breadcrumb label'
57
-
58
- cy.mount(QBreadcrumbsEl, {
59
- slots: { default: label }
60
- })
61
-
62
- cy.get('.q-breadcrumbs__el')
63
- .should('contain', label)
64
- })
65
- })
66
- })
67
-
68
- describe('Events', () => {
69
- describe('(event): click', () => {
70
- it('should emit "click" event when clicked', () => {
71
- const fn = cy.stub()
72
-
73
- cy.mount(QBreadcrumbsEl, {
74
- props: {
75
- label: 'clicked breadcrumb',
76
- onClick: fn
77
- }
78
- })
79
-
80
- cy.get('.q-breadcrumbs__el')
81
- .click()
82
- cy.get('.q-breadcrumbs__el')
83
- .then(() => expect(fn).to.be.calledOnce)
84
- })
85
- })
86
- })
87
- })