quasar 2.5.4 → 2.5.5

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 (147) hide show
  1. package/dist/api/BottomSheet.json +1 -1
  2. package/dist/api/Notify.json +205 -5
  3. package/dist/api/QAvatar.json +1 -1
  4. package/dist/api/QBreadcrumbsEl.json +1 -1
  5. package/dist/api/QBtn.json +2 -2
  6. package/dist/api/QBtnDropdown.json +3 -3
  7. package/dist/api/QCarousel.json +3 -3
  8. package/dist/api/QChip.json +4 -4
  9. package/dist/api/QExpansionItem.json +2 -2
  10. package/dist/api/QFab.json +2 -2
  11. package/dist/api/QFabAction.json +1 -1
  12. package/dist/api/QForm.json +4 -1
  13. package/dist/api/QIcon.json +4 -2
  14. package/dist/api/QPagination.json +4 -4
  15. package/dist/api/QRouteTab.json +1 -1
  16. package/dist/api/QSelect.json +1 -1
  17. package/dist/api/QStep.json +4 -4
  18. package/dist/api/QStepper.json +4 -4
  19. package/dist/api/QTab.json +1 -1
  20. package/dist/api/QTimelineEntry.json +1 -1
  21. package/dist/api/QToggle.json +1 -1
  22. package/dist/api/QTree.json +1 -1
  23. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  24. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  25. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  26. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  27. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  28. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  29. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  30. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  31. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  32. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  33. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  34. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  35. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  36. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  42. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  44. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  45. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  46. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  47. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  48. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  49. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  50. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  51. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  52. package/dist/icon-set/themify.umd.prod.js +1 -1
  53. package/dist/lang/ar.umd.prod.js +1 -1
  54. package/dist/lang/az-Latn.umd.prod.js +1 -1
  55. package/dist/lang/bg.umd.prod.js +1 -1
  56. package/dist/lang/bn.umd.prod.js +1 -1
  57. package/dist/lang/ca.umd.prod.js +1 -1
  58. package/dist/lang/cs.umd.prod.js +1 -1
  59. package/dist/lang/da.umd.prod.js +1 -1
  60. package/dist/lang/de.umd.prod.js +1 -1
  61. package/dist/lang/el.umd.prod.js +1 -1
  62. package/dist/lang/en-GB.umd.prod.js +1 -1
  63. package/dist/lang/en-US.umd.prod.js +1 -1
  64. package/dist/lang/eo.umd.prod.js +1 -1
  65. package/dist/lang/es.umd.prod.js +1 -1
  66. package/dist/lang/et.umd.prod.js +1 -1
  67. package/dist/lang/fa-IR.umd.prod.js +1 -1
  68. package/dist/lang/fa.umd.prod.js +1 -1
  69. package/dist/lang/fi.umd.prod.js +1 -1
  70. package/dist/lang/fr.umd.prod.js +1 -1
  71. package/dist/lang/gn.umd.prod.js +1 -1
  72. package/dist/lang/he.umd.prod.js +1 -1
  73. package/dist/lang/hr.umd.prod.js +1 -1
  74. package/dist/lang/hu.umd.prod.js +1 -1
  75. package/dist/lang/id.umd.prod.js +1 -1
  76. package/dist/lang/is.umd.prod.js +1 -1
  77. package/dist/lang/it.umd.prod.js +1 -1
  78. package/dist/lang/ja.umd.prod.js +1 -1
  79. package/dist/lang/km.umd.prod.js +1 -1
  80. package/dist/lang/ko-KR.umd.prod.js +1 -1
  81. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  82. package/dist/lang/lt.umd.prod.js +1 -1
  83. package/dist/lang/lu.umd.prod.js +1 -1
  84. package/dist/lang/lv.umd.prod.js +1 -1
  85. package/dist/lang/ml.umd.prod.js +1 -1
  86. package/dist/lang/ms.umd.prod.js +1 -1
  87. package/dist/lang/my.umd.prod.js +1 -1
  88. package/dist/lang/nb-NO.umd.prod.js +1 -1
  89. package/dist/lang/nl.umd.prod.js +1 -1
  90. package/dist/lang/pl.umd.prod.js +1 -1
  91. package/dist/lang/pt-BR.umd.prod.js +1 -1
  92. package/dist/lang/pt.umd.prod.js +1 -1
  93. package/dist/lang/ro.umd.prod.js +1 -1
  94. package/dist/lang/ru.umd.prod.js +1 -1
  95. package/dist/lang/sk.umd.prod.js +1 -1
  96. package/dist/lang/sl.umd.prod.js +1 -1
  97. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  98. package/dist/lang/sr.umd.prod.js +1 -1
  99. package/dist/lang/sv.umd.prod.js +1 -1
  100. package/dist/lang/ta.umd.prod.js +1 -1
  101. package/dist/lang/th.umd.prod.js +1 -1
  102. package/dist/lang/tr.umd.prod.js +1 -1
  103. package/dist/lang/ug.umd.prod.js +1 -1
  104. package/dist/lang/uk.umd.prod.js +1 -1
  105. package/dist/lang/vi.umd.prod.js +1 -1
  106. package/dist/lang/zh-CN.umd.prod.js +1 -1
  107. package/dist/lang/zh-TW.umd.prod.js +1 -1
  108. package/dist/quasar.cjs.prod.js +2 -2
  109. package/dist/quasar.css +2 -2
  110. package/dist/quasar.esm.prod.js +2 -2
  111. package/dist/quasar.prod.css +1 -1
  112. package/dist/quasar.rtl.css +2 -2
  113. package/dist/quasar.rtl.prod.css +1 -1
  114. package/dist/quasar.sass +2 -1
  115. package/dist/quasar.umd.js +252 -248
  116. package/dist/quasar.umd.prod.js +2 -2
  117. package/dist/ssr-directives/Morph.js +1 -1
  118. package/dist/types/index.d.ts +143 -47
  119. package/dist/vetur/quasar-attributes.json +38 -38
  120. package/dist/web-types/web-types.json +40 -40
  121. package/package.json +1 -1
  122. package/src/api.extends.json +1 -1
  123. package/src/components/date/QDate.js +20 -19
  124. package/src/components/date/use-datetime.js +3 -1
  125. package/src/components/dialog-plugin/DialogPlugin.js +9 -8
  126. package/src/components/form/QForm.json +3 -2
  127. package/src/components/icon/QIcon.js +4 -1
  128. package/src/components/icon/QIcon.json +1 -3
  129. package/src/components/select/QSelect.js +2 -2
  130. package/src/components/slide-transition/QSlideTransition.js +4 -4
  131. package/src/components/slider/use-slider.js +4 -4
  132. package/src/components/stepper/QStep.json +3 -0
  133. package/src/components/stepper/QStepper.json +3 -0
  134. package/src/components/stepper/QStepper.sass +1 -0
  135. package/src/components/stepper/StepHeader.js +23 -8
  136. package/src/components/table/table-sort.js +2 -2
  137. package/src/components/time/QTime.js +5 -5
  138. package/src/install-quasar.js +37 -36
  139. package/src/plugins/Loading.js +3 -2
  140. package/src/plugins/LoadingBar.js +2 -1
  141. package/src/plugins/Notify.js +11 -4
  142. package/src/plugins/Notify.json +102 -2
  143. package/src/utils/create-uploader-component.js +2 -1
  144. package/src/utils/extend.js +6 -34
  145. package/src/utils/morph.js +19 -17
  146. package/src/utils/private/is.js +2 -15
  147. package/src/utils/private/web-storage.js +3 -2
@@ -2,7 +2,7 @@
2
2
  "$schema": "",
3
3
  "framework": "vue",
4
4
  "name": "quasar",
5
- "version": "2.5.4",
5
+ "version": "2.5.5",
6
6
  "contributions": {
7
7
  "html": {
8
8
  "types-syntax": "typescript",
@@ -138,7 +138,7 @@
138
138
  "kind": "expression",
139
139
  "type": "string"
140
140
  },
141
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
141
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
142
142
  "doc-url": "https://v2.quasar.dev/vue-components/avatar"
143
143
  },
144
144
  {
@@ -551,7 +551,7 @@
551
551
  "kind": "expression",
552
552
  "type": "string"
553
553
  },
554
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
554
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
555
555
  "doc-url": "https://v2.quasar.dev/vue-components/breadcrumbs"
556
556
  },
557
557
  {
@@ -673,7 +673,7 @@
673
673
  "kind": "expression",
674
674
  "type": "string"
675
675
  },
676
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
676
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
677
677
  "doc-url": "https://v2.quasar.dev/vue-components/button-dropdown"
678
678
  },
679
679
  {
@@ -682,7 +682,7 @@
682
682
  "kind": "expression",
683
683
  "type": "string"
684
684
  },
685
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
685
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
686
686
  "doc-url": "https://v2.quasar.dev/vue-components/button-dropdown"
687
687
  },
688
688
  {
@@ -907,7 +907,7 @@
907
907
  "kind": "expression",
908
908
  "type": "string"
909
909
  },
910
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
910
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
911
911
  "doc-url": "https://v2.quasar.dev/vue-components/button-dropdown"
912
912
  },
913
913
  {
@@ -1586,7 +1586,7 @@
1586
1586
  "kind": "expression",
1587
1587
  "type": "string"
1588
1588
  },
1589
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
1589
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
1590
1590
  "doc-url": "https://v2.quasar.dev/vue-components/button"
1591
1591
  },
1592
1592
  {
@@ -1595,7 +1595,7 @@
1595
1595
  "kind": "expression",
1596
1596
  "type": "string"
1597
1597
  },
1598
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
1598
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
1599
1599
  "doc-url": "https://v2.quasar.dev/vue-components/button"
1600
1600
  },
1601
1601
  {
@@ -2238,7 +2238,7 @@
2238
2238
  "kind": "expression",
2239
2239
  "type": "string"
2240
2240
  },
2241
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2241
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2242
2242
  "doc-url": "https://v2.quasar.dev/vue-components/carousel"
2243
2243
  },
2244
2244
  {
@@ -2247,7 +2247,7 @@
2247
2247
  "kind": "expression",
2248
2248
  "type": "string"
2249
2249
  },
2250
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2250
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2251
2251
  "doc-url": "https://v2.quasar.dev/vue-components/carousel"
2252
2252
  },
2253
2253
  {
@@ -2276,7 +2276,7 @@
2276
2276
  "kind": "expression",
2277
2277
  "type": "string"
2278
2278
  },
2279
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2279
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2280
2280
  "doc-url": "https://v2.quasar.dev/vue-components/carousel"
2281
2281
  },
2282
2282
  {
@@ -2887,7 +2887,7 @@
2887
2887
  "kind": "expression",
2888
2888
  "type": "string"
2889
2889
  },
2890
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2890
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2891
2891
  "doc-url": "https://v2.quasar.dev/vue-components/chip"
2892
2892
  },
2893
2893
  {
@@ -2896,7 +2896,7 @@
2896
2896
  "kind": "expression",
2897
2897
  "type": "string"
2898
2898
  },
2899
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2899
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2900
2900
  "doc-url": "https://v2.quasar.dev/vue-components/chip"
2901
2901
  },
2902
2902
  {
@@ -2905,7 +2905,7 @@
2905
2905
  "kind": "expression",
2906
2906
  "type": "string"
2907
2907
  },
2908
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2908
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2909
2909
  "doc-url": "https://v2.quasar.dev/vue-components/chip"
2910
2910
  },
2911
2911
  {
@@ -2914,7 +2914,7 @@
2914
2914
  "kind": "expression",
2915
2915
  "type": "string"
2916
2916
  },
2917
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2917
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
2918
2918
  "doc-url": "https://v2.quasar.dev/vue-components/chip"
2919
2919
  },
2920
2920
  {
@@ -4796,7 +4796,7 @@
4796
4796
  "kind": "expression",
4797
4797
  "type": "string"
4798
4798
  },
4799
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
4799
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
4800
4800
  "doc-url": "https://v2.quasar.dev/vue-components/expansion-item"
4801
4801
  },
4802
4802
  {
@@ -4805,7 +4805,7 @@
4805
4805
  "kind": "expression",
4806
4806
  "type": "string"
4807
4807
  },
4808
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
4808
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
4809
4809
  "doc-url": "https://v2.quasar.dev/vue-components/expansion-item"
4810
4810
  },
4811
4811
  {
@@ -5285,7 +5285,7 @@
5285
5285
  "kind": "expression",
5286
5286
  "type": "string"
5287
5287
  },
5288
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5288
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5289
5289
  "doc-url": "https://v2.quasar.dev/vue-components/floating-action-button"
5290
5290
  },
5291
5291
  {
@@ -5294,7 +5294,7 @@
5294
5294
  "kind": "expression",
5295
5295
  "type": "string"
5296
5296
  },
5297
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5297
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5298
5298
  "doc-url": "https://v2.quasar.dev/vue-components/floating-action-button"
5299
5299
  },
5300
5300
  {
@@ -5620,7 +5620,7 @@
5620
5620
  "kind": "expression",
5621
5621
  "type": "string"
5622
5622
  },
5623
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5623
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
5624
5624
  "doc-url": "https://v2.quasar.dev/vue-components/floating-action-button"
5625
5625
  },
5626
5626
  {
@@ -6914,7 +6914,7 @@
6914
6914
  "arguments": [
6915
6915
  {
6916
6916
  "name": "evt",
6917
- "type": "SubmitEvent",
6917
+ "type": "Event|SubmitEvent",
6918
6918
  "description": "Form submission event object",
6919
6919
  "doc-url": "https://v2.quasar.dev/vue-components/form"
6920
6920
  }
@@ -7093,7 +7093,7 @@
7093
7093
  "kind": "expression",
7094
7094
  "type": "string"
7095
7095
  },
7096
- "description": "Name of the icon, following Quasar convention\n\nExamples:\nmap\nion-add",
7096
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
7097
7097
  "doc-url": "https://v2.quasar.dev/vue-components/icon"
7098
7098
  },
7099
7099
  {
@@ -10082,7 +10082,7 @@
10082
10082
  "kind": "expression",
10083
10083
  "type": "string"
10084
10084
  },
10085
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10085
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10086
10086
  "doc-url": "https://v2.quasar.dev/vue-components/pagination"
10087
10087
  },
10088
10088
  {
@@ -10091,7 +10091,7 @@
10091
10091
  "kind": "expression",
10092
10092
  "type": "string"
10093
10093
  },
10094
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10094
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10095
10095
  "doc-url": "https://v2.quasar.dev/vue-components/pagination"
10096
10096
  },
10097
10097
  {
@@ -10100,7 +10100,7 @@
10100
10100
  "kind": "expression",
10101
10101
  "type": "string"
10102
10102
  },
10103
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10103
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10104
10104
  "doc-url": "https://v2.quasar.dev/vue-components/pagination"
10105
10105
  },
10106
10106
  {
@@ -10109,7 +10109,7 @@
10109
10109
  "kind": "expression",
10110
10110
  "type": "string"
10111
10111
  },
10112
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10112
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
10113
10113
  "doc-url": "https://v2.quasar.dev/vue-components/pagination"
10114
10114
  },
10115
10115
  {
@@ -12501,7 +12501,7 @@
12501
12501
  "kind": "expression",
12502
12502
  "type": "string"
12503
12503
  },
12504
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
12504
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
12505
12505
  "doc-url": "https://v2.quasar.dev/vue-components/select"
12506
12506
  },
12507
12507
  {
@@ -14714,7 +14714,7 @@
14714
14714
  "kind": "expression",
14715
14715
  "type": "string"
14716
14716
  },
14717
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14717
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14718
14718
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
14719
14719
  },
14720
14720
  {
@@ -14760,7 +14760,7 @@
14760
14760
  "kind": "expression",
14761
14761
  "type": "string"
14762
14762
  },
14763
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14763
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14764
14764
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
14765
14765
  },
14766
14766
  {
@@ -14778,7 +14778,7 @@
14778
14778
  "kind": "expression",
14779
14779
  "type": "string"
14780
14780
  },
14781
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14781
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14782
14782
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
14783
14783
  },
14784
14784
  {
@@ -14796,7 +14796,7 @@
14796
14796
  "kind": "expression",
14797
14797
  "type": "string"
14798
14798
  },
14799
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14799
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
14800
14800
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
14801
14801
  },
14802
14802
  {
@@ -15039,7 +15039,7 @@
15039
15039
  "kind": "expression",
15040
15040
  "type": "string"
15041
15041
  },
15042
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15042
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15043
15043
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
15044
15044
  },
15045
15045
  {
@@ -15057,7 +15057,7 @@
15057
15057
  "kind": "expression",
15058
15058
  "type": "string"
15059
15059
  },
15060
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15060
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15061
15061
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
15062
15062
  },
15063
15063
  {
@@ -15075,7 +15075,7 @@
15075
15075
  "kind": "expression",
15076
15076
  "type": "string"
15077
15077
  },
15078
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15078
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15079
15079
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
15080
15080
  },
15081
15081
  {
@@ -15093,7 +15093,7 @@
15093
15093
  "kind": "expression",
15094
15094
  "type": "string"
15095
15095
  },
15096
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15096
+ "description": "Icon name following Quasar convention; If 'none' (String) is used as value, then it will defer to prefix or the regular icon for this state; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
15097
15097
  "doc-url": "https://v2.quasar.dev/vue-components/stepper"
15098
15098
  },
15099
15099
  {
@@ -16486,7 +16486,7 @@
16486
16486
  "kind": "expression",
16487
16487
  "type": "string"
16488
16488
  },
16489
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
16489
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
16490
16490
  "doc-url": "https://v2.quasar.dev/vue-components/tabs"
16491
16491
  },
16492
16492
  {
@@ -16609,7 +16609,7 @@
16609
16609
  "kind": "expression",
16610
16610
  "type": "string"
16611
16611
  },
16612
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
16612
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
16613
16613
  "doc-url": "https://v2.quasar.dev/vue-components/tabs"
16614
16614
  },
16615
16615
  {
@@ -17285,7 +17285,7 @@
17285
17285
  "kind": "expression",
17286
17286
  "type": "string"
17287
17287
  },
17288
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17288
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17289
17289
  "doc-url": "https://v2.quasar.dev/vue-components/timeline"
17290
17290
  },
17291
17291
  {
@@ -17556,7 +17556,7 @@
17556
17556
  "kind": "expression",
17557
17557
  "type": "string"
17558
17558
  },
17559
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17559
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17560
17560
  "doc-url": "https://v2.quasar.dev/vue-components/toggle"
17561
17561
  },
17562
17562
  {
@@ -17995,7 +17995,7 @@
17995
17995
  "kind": "expression",
17996
17996
  "type": "string"
17997
17997
  },
17998
- "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17998
+ "description": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)\n\nExamples:\nmap\nion-add\nimg:https://cdn.quasar.dev/logo-v2/svg/logo.svg\nimg:path/to/some_image.png",
17999
17999
  "doc-url": "https://v2.quasar.dev/vue-components/tree"
18000
18000
  },
18001
18001
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quasar",
3
- "version": "2.5.4",
3
+ "version": "2.5.5",
4
4
  "description": "Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time",
5
5
  "main": "dist/quasar.cjs.prod.js",
6
6
  "module": "dist/quasar.esm.prod.js",
@@ -47,7 +47,7 @@
47
47
 
48
48
  "icon": {
49
49
  "type": "String",
50
- "desc": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix",
50
+ "desc": "Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix; If 'none' (String) is used as value then no icon is rendered (but screen real estate will still be used for it)",
51
51
  "examples": [
52
52
  "map",
53
53
  "ion-add",
@@ -12,6 +12,7 @@ import { hSlot } from '../../utils/private/render.js'
12
12
  import { formatDate, __splitDate, getDateDiff } from '../../utils/date.js'
13
13
  import { pad } from '../../utils/format.js'
14
14
  import { jalaaliMonthLength, toGregorian } from '../../utils/private/date-persian.js'
15
+ import { isPlainObject } from '../../utils/private/is.js'
15
16
 
16
17
  const yearsInterval = 20
17
18
  const views = [ 'Calendar', 'Years', 'Months' ]
@@ -164,7 +165,7 @@ export default createComponent({
164
165
  const rangeModel = computed(() => {
165
166
  const fn = date => decodeString(date, innerMask.value, innerLocale.value)
166
167
  return normalizedModel.value
167
- .filter(date => Object(date) === date && date.from !== void 0 && date.to !== void 0)
168
+ .filter(date => isPlainObject(date) === true && date.from !== void 0 && date.to !== void 0)
168
169
  .map(range => ({ from: fn(range.from), to: fn(range.to) }))
169
170
  .filter(range => range.from.dateHash !== null && range.to.dateHash !== null && range.from.dateHash < range.to.dateHash)
170
171
  })
@@ -1217,24 +1218,24 @@ export default createComponent({
1217
1218
  }, days.value.map(day => h('div', { class: day.classes }, [
1218
1219
  day.in === true
1219
1220
  ? h(
1220
- QBtn, {
1221
- class: day.today === true ? 'q-date__today' : '',
1222
- dense: true,
1223
- flat: day.flat,
1224
- unelevated: day.unelevated,
1225
- color: day.color,
1226
- textColor: day.textColor,
1227
- label: day.i,
1228
- tabindex: tabindex.value,
1229
- ...getCache('day#' + day.i, {
1230
- onClick: () => { onDayClick(day.i) },
1231
- onMouseover: () => { onDayMouseover(day.i) }
1232
- })
1233
- },
1234
- day.event !== false
1235
- ? () => h('div', { class: 'q-date__event bg-' + day.event })
1236
- : null
1237
- )
1221
+ QBtn, {
1222
+ class: day.today === true ? 'q-date__today' : '',
1223
+ dense: true,
1224
+ flat: day.flat,
1225
+ unelevated: day.unelevated,
1226
+ color: day.color,
1227
+ textColor: day.textColor,
1228
+ label: day.i,
1229
+ tabindex: tabindex.value,
1230
+ ...getCache('day#' + day.i, {
1231
+ onClick: () => { onDayClick(day.i) },
1232
+ onMouseover: () => { onDayMouseover(day.i) }
1233
+ })
1234
+ },
1235
+ day.event !== false
1236
+ ? () => h('div', { class: 'q-date__event bg-' + day.event })
1237
+ : null
1238
+ )
1238
1239
  : h('div', '' + day.i)
1239
1240
  ]))))
1240
1241
  ])
@@ -57,7 +57,9 @@ export default function (props, $q) {
57
57
  })
58
58
 
59
59
  function getLocale () {
60
- return props.locale || $q.lang.date
60
+ return props.locale !== void 0
61
+ ? { ...$q.lang.date, ...props.locale }
62
+ : $q.lang.date
61
63
  }
62
64
 
63
65
  function getCurrentDate (dateOnly) {
@@ -17,6 +17,7 @@ import { createComponent } from '../../utils/private/create.js'
17
17
  import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
18
18
 
19
19
  import { isKeyCode } from '../../utils/private/key-composition.js'
20
+ import { isPlainObject } from '../../utils/private/is.js'
20
21
 
21
22
  export default createComponent({
22
23
  name: 'DialogPlugin',
@@ -80,7 +81,7 @@ export default createComponent({
80
81
  props.progress === false
81
82
  ? null
82
83
  : (
83
- Object(props.progress) === props.progress
84
+ isPlainObject(props.progress) === true
84
85
  ? {
85
86
  component: props.progress.spinner || QSpinner,
86
87
  props: { color: props.progress.color || vmColor.value }
@@ -109,7 +110,7 @@ export default createComponent({
109
110
  })
110
111
 
111
112
  const okLabel = computed(() => (
112
- Object(props.ok) === props.ok
113
+ isPlainObject(props.ok) === true
113
114
  ? $q.lang.label.ok
114
115
  : (
115
116
  props.ok === true
@@ -119,7 +120,7 @@ export default createComponent({
119
120
  ))
120
121
 
121
122
  const cancelLabel = computed(() => (
122
- Object(props.cancel) === props.cancel
123
+ isPlainObject(props.cancel) === true
123
124
  ? $q.lang.label.cancel
124
125
  : (
125
126
  props.cancel === true
@@ -145,7 +146,7 @@ export default createComponent({
145
146
  label: okLabel.value,
146
147
  ripple: false,
147
148
  disable: okDisabled.value,
148
- ...(Object(props.ok) === props.ok ? props.ok : { flat: true }),
149
+ ...(isPlainObject(props.ok) === true ? props.ok : { flat: true }),
149
150
  'data-autofocus': (props.focus === 'ok' && hasForm.value !== true) || void 0,
150
151
  onClick: onOk
151
152
  }))
@@ -154,7 +155,7 @@ export default createComponent({
154
155
  color: vmColor.value,
155
156
  label: cancelLabel.value,
156
157
  ripple: false,
157
- ...(Object(props.cancel) === props.cancel ? props.cancel : { flat: true }),
158
+ ...(isPlainObject(props.cancel) === true ? props.cancel : { flat: true }),
158
159
  'data-autofocus': (props.focus === 'cancel' && hasForm.value !== true) || void 0,
159
160
  onClick: onCancel
160
161
  }))
@@ -201,9 +202,9 @@ export default createComponent({
201
202
  function getSection (classes, text) {
202
203
  return props.html === true
203
204
  ? h(QCardSection, {
204
- class: classes,
205
- innerHTML: text
206
- })
205
+ class: classes,
206
+ innerHTML: text
207
+ })
207
208
  : h(QCardSection, { class: classes }, () => text)
208
209
  }
209
210
 
@@ -40,8 +40,9 @@
40
40
  "desc": "Emitted when all validations have passed when tethered to a submit button",
41
41
  "params": {
42
42
  "evt": {
43
- "type": "SubmitEvent",
44
- "desc": "Form submission event object"
43
+ "type": [ "Event", "SubmitEvent" ],
44
+ "desc": "Form submission event object",
45
+ "__exemption": [ "examples" ]
45
46
  }
46
47
  }
47
48
  },
@@ -69,7 +69,7 @@ export default createComponent({
69
69
  let cls
70
70
  let icon = props.name
71
71
 
72
- if (!icon) {
72
+ if (icon === 'none' || !icon) {
73
73
  return { none: true }
74
74
  }
75
75
 
@@ -78,6 +78,9 @@ export default createComponent({
78
78
  if (res !== void 0) {
79
79
  if (res.icon !== void 0) {
80
80
  icon = res.icon
81
+ if (icon === 'none' || !icon) {
82
+ return { none: true }
83
+ }
81
84
  }
82
85
  else {
83
86
  return {
@@ -14,9 +14,7 @@
14
14
  },
15
15
 
16
16
  "name": {
17
- "type": "String",
18
- "desc": "Name of the icon, following Quasar convention",
19
- "examples": [ "map", "ion-add" ],
17
+ "extends": "icon",
20
18
  "category": "model"
21
19
  },
22
20
 
@@ -17,7 +17,7 @@ import { useFormProps, useFormInputNameAttr } from '../../composables/private/us
17
17
  import useKeyComposition from '../../composables/private/use-key-composition.js'
18
18
 
19
19
  import { createComponent } from '../../utils/private/create.js'
20
- import { isDeepEqual } from '../../utils/private/is.js'
20
+ import { isDeepEqual, isPlainObject } from '../../utils/private/is.js'
21
21
  import { stop, prevent, stopAndPrevent } from '../../utils/event.js'
22
22
  import { normalizeToInterval } from '../../utils/format.js'
23
23
  import { shouldIgnoreKey, isKeyCode } from '../../utils/private/key-composition.js'
@@ -602,7 +602,7 @@ export default createComponent({
602
602
 
603
603
  return typeof val === 'function'
604
604
  ? val
605
- : opt => (Object(opt) === opt && val in opt ? opt[ val ] : opt)
605
+ : opt => (isPlainObject(opt) === true && val in opt ? opt[ val ] : opt)
606
606
  }
607
607
 
608
608
  function isOptionSelected (opt) {
@@ -65,8 +65,8 @@ export default createComponent({
65
65
 
66
66
  timer = setTimeout(() => {
67
67
  el.style.height = `${ el.scrollHeight }px`
68
- animListener = ev => {
69
- if (Object(ev) !== ev || ev.target === el) {
68
+ animListener = evt => {
69
+ if (Object(evt) !== evt || evt.target === el) {
70
70
  end(el, 'show')
71
71
  }
72
72
  }
@@ -91,8 +91,8 @@ export default createComponent({
91
91
 
92
92
  timer = setTimeout(() => {
93
93
  el.style.height = 0
94
- animListener = ev => {
95
- if (Object(ev) !== ev || ev.target === el) {
94
+ animListener = evt => {
95
+ if (Object(evt) !== evt || evt.target === el) {
96
96
  end(el, 'hide')
97
97
  }
98
98
  }