quasar 2.4.10 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/dist/api/BottomSheet.json +4 -0
  2. package/dist/api/Dialog.json +5 -1
  3. package/dist/api/LoadingBar.json +7 -0
  4. package/dist/api/Notify.json +20 -10
  5. package/dist/api/Platform.json +171 -0
  6. package/dist/api/QAjaxBar.json +13 -1
  7. package/dist/api/QBtnDropdown.json +4 -2
  8. package/dist/api/QCheckbox.json +27 -0
  9. package/dist/api/QEditor.json +4 -2
  10. package/dist/api/QExpansionItem.json +6 -3
  11. package/dist/api/QFab.json +4 -2
  12. package/dist/api/QFabAction.json +4 -2
  13. package/dist/api/QFile.json +4 -2
  14. package/dist/api/QImg.json +1 -2
  15. package/dist/api/QInnerLoading.json +2 -1
  16. package/dist/api/QInput.json +4 -2
  17. package/dist/api/QPagination.json +4 -2
  18. package/dist/api/QRadio.json +18 -0
  19. package/dist/api/QRange.json +9 -0
  20. package/dist/api/QScrollArea.json +13 -5
  21. package/dist/api/QSelect.json +6 -3
  22. package/dist/api/QSlider.json +9 -0
  23. package/dist/api/QSplitter.json +8 -4
  24. package/dist/api/QTable.json +9 -0
  25. package/dist/api/QTime.json +8 -2
  26. package/dist/api/QToggle.json +24 -24
  27. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  28. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  29. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  30. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  31. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  32. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  33. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  34. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  35. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  36. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  37. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  38. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  39. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  40. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  42. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  44. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  45. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  46. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  47. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  48. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  49. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  50. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  51. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  52. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  53. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  54. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  55. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  56. package/dist/icon-set/themify.umd.prod.js +1 -1
  57. package/dist/lang/ar.umd.prod.js +1 -1
  58. package/dist/lang/az-Latn.umd.prod.js +1 -1
  59. package/dist/lang/bg.umd.prod.js +1 -1
  60. package/dist/lang/bn.umd.prod.js +1 -1
  61. package/dist/lang/ca.umd.prod.js +1 -1
  62. package/dist/lang/cs.umd.prod.js +1 -1
  63. package/dist/lang/da.umd.prod.js +1 -1
  64. package/dist/lang/de.umd.prod.js +1 -1
  65. package/dist/lang/el.umd.prod.js +1 -1
  66. package/dist/lang/en-GB.umd.prod.js +1 -1
  67. package/dist/lang/en-US.umd.prod.js +1 -1
  68. package/dist/lang/eo.umd.prod.js +1 -1
  69. package/dist/lang/es.umd.prod.js +1 -1
  70. package/dist/lang/et.umd.prod.js +1 -1
  71. package/dist/lang/fa-IR.umd.prod.js +1 -1
  72. package/dist/lang/fa.umd.prod.js +1 -1
  73. package/dist/lang/fi.umd.prod.js +1 -1
  74. package/dist/lang/fr.umd.prod.js +1 -1
  75. package/dist/lang/gn.umd.prod.js +1 -1
  76. package/dist/lang/he.umd.prod.js +1 -1
  77. package/dist/lang/hr.umd.prod.js +1 -1
  78. package/dist/lang/hu.umd.prod.js +1 -1
  79. package/dist/lang/id.umd.prod.js +1 -1
  80. package/dist/lang/is.umd.prod.js +1 -1
  81. package/dist/lang/it.umd.prod.js +1 -1
  82. package/dist/lang/ja.umd.prod.js +1 -1
  83. package/dist/lang/km.umd.prod.js +1 -1
  84. package/dist/lang/ko-KR.umd.prod.js +1 -1
  85. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  86. package/dist/lang/lt.umd.prod.js +1 -1
  87. package/dist/lang/lu.umd.prod.js +1 -1
  88. package/dist/lang/lv.umd.prod.js +1 -1
  89. package/dist/lang/ml.umd.prod.js +1 -1
  90. package/dist/lang/ms.umd.prod.js +1 -1
  91. package/dist/lang/my.umd.prod.js +1 -1
  92. package/dist/lang/nb-NO.umd.prod.js +1 -1
  93. package/dist/lang/nl.umd.prod.js +1 -1
  94. package/dist/lang/pl.umd.prod.js +1 -1
  95. package/dist/lang/pt-BR.umd.prod.js +1 -1
  96. package/dist/lang/pt.umd.prod.js +1 -1
  97. package/dist/lang/ro.umd.prod.js +1 -1
  98. package/dist/lang/ru.umd.prod.js +1 -1
  99. package/dist/lang/sk.umd.prod.js +1 -1
  100. package/dist/lang/sl.umd.prod.js +1 -1
  101. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  102. package/dist/lang/sr.umd.prod.js +1 -1
  103. package/dist/lang/sv.umd.prod.js +1 -1
  104. package/dist/lang/ta.umd.prod.js +1 -1
  105. package/dist/lang/th.umd.prod.js +1 -1
  106. package/dist/lang/tr.umd.prod.js +1 -1
  107. package/dist/lang/ug.umd.prod.js +1 -1
  108. package/dist/lang/uk.umd.prod.js +1 -1
  109. package/dist/lang/vi.umd.prod.js +1 -1
  110. package/dist/lang/zh-CN.umd.prod.js +1 -1
  111. package/dist/lang/zh-TW.umd.prod.js +1 -1
  112. package/dist/quasar.cjs.prod.js +2 -2
  113. package/dist/quasar.css +39 -10
  114. package/dist/quasar.esm.prod.js +2 -2
  115. package/dist/quasar.prod.css +1 -1
  116. package/dist/quasar.rtl.css +56 -23
  117. package/dist/quasar.rtl.prod.css +1 -1
  118. package/dist/quasar.sass +32 -11
  119. package/dist/quasar.umd.js +276 -118
  120. package/dist/quasar.umd.prod.js +2 -2
  121. package/dist/ssr-directives/Morph.js +1 -1
  122. package/dist/transforms/auto-import.json +39 -3
  123. package/dist/transforms/import-map.json +18 -0
  124. package/dist/types/api/slider.d.ts +6 -7
  125. package/dist/types/api/validation.d.ts +1 -1
  126. package/dist/types/api/vue-prop-types.ts +15 -0
  127. package/dist/types/api.d.ts +1 -0
  128. package/dist/types/index.d.ts +246 -188
  129. package/dist/types/utils/dom.d.ts +4 -2
  130. package/dist/types/utils.d.ts +3 -1
  131. package/dist/vetur/quasar-attributes.json +62 -42
  132. package/dist/vetur/quasar-tags.json +8 -3
  133. package/dist/web-types/web-types.json +103 -58
  134. package/package.json +13 -3
  135. package/src/components/ajax-bar/QAjaxBar.js +22 -12
  136. package/src/components/ajax-bar/QAjaxBar.json +16 -1
  137. package/src/components/avatar/__tests__/QAvatar.spec.js +121 -0
  138. package/src/components/badge/__tests__/QBadge.spec.js +74 -0
  139. package/src/components/breadcrumbs/QBreadcrumbs.js +1 -1
  140. package/src/components/btn/__tests__/QBtn.spec.js +55 -0
  141. package/src/components/btn/__tests__/use-btn.spec.js +189 -0
  142. package/src/components/btn-dropdown/QBtnDropdown.json +4 -2
  143. package/src/components/checkbox/QCheckbox.js +34 -3
  144. package/src/components/checkbox/QCheckbox.json +17 -0
  145. package/src/components/checkbox/QCheckbox.sass +17 -5
  146. package/src/components/checkbox/use-checkbox.js +4 -0
  147. package/src/components/checkbox/use-checkbox.json +18 -0
  148. package/src/components/chip/__tests__/QChip.spec.js +155 -0
  149. package/src/components/date/__tests__/QDate.spec.js +189 -0
  150. package/src/components/date/__tests__/use-datetime.spec.js +83 -0
  151. package/src/components/dialog/QDialog.js +1 -1
  152. package/src/components/dialog/__tests__/QDialog.spec.js +129 -0
  153. package/src/components/editor/QEditor.js +1 -1
  154. package/src/components/editor/QEditor.json +3 -1
  155. package/src/components/editor/__tests__/QEditor.spec.js +195 -0
  156. package/src/components/expansion-item/QExpansionItem.json +6 -3
  157. package/src/components/fab/use-fab.json +4 -2
  158. package/src/components/file/QFile.json +4 -2
  159. package/src/components/form/QForm.js +12 -2
  160. package/src/components/img/QImg.json +2 -3
  161. package/src/components/infinite-scroll/QInfiniteScroll.js +3 -2
  162. package/src/components/inner-loading/QInnerLoading.json +2 -1
  163. package/src/components/input/QInput.js +10 -1
  164. package/src/components/input/QInput.json +4 -2
  165. package/src/components/input/__tests__/QInput.spec.js +105 -0
  166. package/src/components/input/__tests__/use-mask.spec.js +29 -0
  167. package/src/components/menu/QMenu.js +2 -1
  168. package/src/components/menu/__tests__/QMenu.spec.js +610 -0
  169. package/src/components/menu/__tests__/WrapperOne.vue +51 -0
  170. package/src/components/menu/__tests__/WrapperTwo.vue +38 -0
  171. package/src/components/pagination/QPagination.json +4 -2
  172. package/src/components/radio/QRadio.js +26 -1
  173. package/src/components/radio/QRadio.json +16 -0
  174. package/src/components/radio/QRadio.sass +17 -6
  175. package/src/components/scroll-area/QScrollArea.js +21 -1
  176. package/src/components/scroll-area/QScrollArea.json +13 -5
  177. package/src/components/select/QSelect.js +13 -9
  178. package/src/components/select/QSelect.json +6 -3
  179. package/src/components/select/QSelect.sass +1 -0
  180. package/src/components/select/__tests__/QSelect.spec.js +2003 -0
  181. package/src/components/select/__tests__/WrapperOne.vue +28 -0
  182. package/src/components/slider/use-slider.json +9 -0
  183. package/src/components/splitter/QSplitter.json +8 -4
  184. package/src/components/stepper/QStep.js +19 -14
  185. package/src/components/stepper/QStepper.sass +3 -0
  186. package/src/components/table/QTable.json +9 -0
  187. package/src/components/table/__tests__/QTable.spec.js +635 -0
  188. package/src/components/table/__tests__/QTd.spec.js +35 -0
  189. package/src/components/table/__tests__/QTh.spec.js +27 -0
  190. package/src/components/table/__tests__/QTr.spec.js +27 -0
  191. package/src/components/tabs/QTabs.js +10 -2
  192. package/src/components/tabs/__tests__/QRouteTab.spec.js +9 -0
  193. package/src/components/tabs/__tests__/QTab.spec.js +79 -0
  194. package/src/components/tabs/__tests__/QTabs.spec.js +147 -0
  195. package/src/components/time/QTime.json +2 -2
  196. package/src/components/toggle/QToggle.js +5 -13
  197. package/src/components/toggle/QToggle.json +3 -12
  198. package/src/components/tree/QTree.js +5 -3
  199. package/src/components/uploader/__tests__/QUploader.spec.js +161 -0
  200. package/src/components/virtual-scroll/use-virtual-scroll.js +20 -9
  201. package/src/composables/private/__tests__/FieldWrapper.vue +39 -0
  202. package/src/composables/private/__tests__/use-anchor.spec.js +99 -0
  203. package/src/composables/private/__tests__/use-field.spec.js +351 -0
  204. package/src/composables/private/__tests__/use-file.spec.js +69 -0
  205. package/src/composables/private/__tests__/use-form.spec.js +11 -0
  206. package/src/composables/private/__tests__/use-fullscreen.spec.js +37 -0
  207. package/src/composables/private/__tests__/use-model-toggle.spec.js +306 -0
  208. package/src/composables/private/__tests__/use-portal.spec.js +4 -0
  209. package/src/composables/private/__tests__/use-router-link.spec.js +55 -0
  210. package/src/composables/private/__tests__/use-size.spec.js +37 -0
  211. package/src/composables/private/__tests__/use-transition.spec.js +108 -0
  212. package/src/composables/private/__tests__/use-validate.spec.js +111 -0
  213. package/src/composables/private/use-field.js +16 -9
  214. package/src/composables/private/use-fullscreen.js +1 -1
  215. package/src/composables/private/use-model-toggle.js +1 -1
  216. package/src/composables/private/use-validate.js +9 -5
  217. package/src/plugins/BottomSheet.json +1 -0
  218. package/src/plugins/Dialog.json +1 -0
  219. package/src/plugins/LoadingBar.js +3 -3
  220. package/src/plugins/LoadingBar.json +8 -0
  221. package/src/plugins/Meta.js +1 -1
  222. package/src/plugins/Notify.json +20 -10
  223. package/src/plugins/Platform.js +15 -8
  224. package/src/plugins/Platform.json +166 -0
  225. package/src/plugins/Screen.js +11 -8
  226. package/src/utils/date.js +5 -5
  227. package/src/utils/private/global-dialog.json +3 -0
  228. package/src/utils/private/vm.js +14 -8
@@ -60,11 +60,11 @@ export interface BottomSheet {
60
60
  /**
61
61
  * CSS Class name to apply to the Dialog's QCard
62
62
  */
63
- class?: string | any[] | any;
63
+ class?: VueClassProp;
64
64
  /**
65
65
  * CSS style to apply to the Dialog's QCard
66
66
  */
67
- style?: string | any[] | any;
67
+ style?: VueStyleProp;
68
68
  /**
69
69
  * Title
70
70
  */
@@ -80,7 +80,7 @@ export interface BottomSheet {
80
80
  /**
81
81
  * CSS classes for this action
82
82
  */
83
- classes?: string | any[] | any;
83
+ classes?: VueClassProp;
84
84
  /**
85
85
  * Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix
86
86
  */
@@ -334,6 +334,10 @@ export interface Loading {
334
334
  }
335
335
 
336
336
  export interface LoadingBar {
337
+ /**
338
+ * Is LoadingBar active?
339
+ */
340
+ isActive: boolean;
337
341
  /**
338
342
  * Notify bar you've started a background activity
339
343
  * @param speed Delay (in milliseconds) between bar progress increments
@@ -515,11 +519,11 @@ export interface Notify {
515
519
  /**
516
520
  * Style definitions to be attributed to the badge
517
521
  */
518
- badgeStyle?: any[] | string | any;
522
+ badgeStyle?: VueStyleProp;
519
523
  /**
520
524
  * Class definitions to be attributed to the badge
521
525
  */
522
- badgeClass?: any[] | string | any;
526
+ badgeClass?: VueClassProp;
523
527
  /**
524
528
  * Show progress bar to detail when notification will disappear automatically (unless timeout is 0)
525
529
  */
@@ -527,7 +531,7 @@ export interface Notify {
527
531
  /**
528
532
  * Class definitions to be attributed to the progress bar
529
533
  */
530
- progressClass?: any[] | string | any;
534
+ progressClass?: VueClassProp;
531
535
  /**
532
536
  * Add CSS class(es) to the notification for easier customization
533
537
  */
@@ -607,7 +611,7 @@ export interface Notify {
607
611
  /**
608
612
  * Class definitions to be attributed to the progress bar
609
613
  */
610
- progressClass?: any[] | string | any;
614
+ progressClass?: VueClassProp;
611
615
  /**
612
616
  * Add CSS class(es) to the notification for easier customization
613
617
  */
@@ -713,11 +717,11 @@ export interface Notify {
713
717
  /**
714
718
  * Style definitions to be attributed to the badge
715
719
  */
716
- badgeStyle?: any[] | string | any;
720
+ badgeStyle?: VueStyleProp;
717
721
  /**
718
722
  * Class definitions to be attributed to the badge
719
723
  */
720
- badgeClass?: any[] | string | any;
724
+ badgeClass?: VueClassProp;
721
725
  /**
722
726
  * Show progress bar to detail when notification will disappear automatically (unless timeout is 0)
723
727
  */
@@ -725,7 +729,7 @@ export interface Notify {
725
729
  /**
726
730
  * Class definitions to be attributed to the progress bar
727
731
  */
728
- progressClass?: any[] | string | any;
732
+ progressClass?: VueClassProp;
729
733
  /**
730
734
  * Add CSS class(es) to the notification for easier customization
731
735
  */
@@ -830,11 +834,11 @@ export interface Notify {
830
834
  /**
831
835
  * Style definitions to be attributed to the badge
832
836
  */
833
- badgeStyle?: any[] | string | any;
837
+ badgeStyle?: VueStyleProp;
834
838
  /**
835
839
  * Class definitions to be attributed to the badge
836
840
  */
837
- badgeClass?: any[] | string | any;
841
+ badgeClass?: VueClassProp;
838
842
  /**
839
843
  * Show progress bar to detail when notification will disappear automatically (unless timeout is 0)
840
844
  */
@@ -842,7 +846,7 @@ export interface Notify {
842
846
  /**
843
847
  * Class definitions to be attributed to the progress bar
844
848
  */
845
- progressClass?: any[] | string | any;
849
+ progressClass?: VueClassProp;
846
850
  /**
847
851
  * Add CSS class(es) to the notification for easier customization
848
852
  */
@@ -884,7 +888,132 @@ export interface Platform {
884
888
  /**
885
889
  * Client browser details (property names depend on browser)
886
890
  */
887
- is: any;
891
+ is: {
892
+ /**
893
+ * Browser name
894
+ */
895
+ name: string;
896
+ /**
897
+ * Platform name
898
+ */
899
+ platform: string;
900
+ /**
901
+ * Detailed browser version
902
+ */
903
+ version?: string;
904
+ /**
905
+ * Major browser version as a number
906
+ */
907
+ versionNumber?: number;
908
+ /**
909
+ * Whether the platform is desktop
910
+ */
911
+ desktop?: boolean;
912
+ /**
913
+ * Whether the platform is mobile
914
+ */
915
+ mobile?: boolean;
916
+ /**
917
+ * Whether the platform is Electron
918
+ */
919
+ electron?: boolean;
920
+ /**
921
+ * Whether the platform is BEX(Browser Extension)
922
+ */
923
+ bex?: boolean;
924
+ /**
925
+ * Whether the platform is Capacitor
926
+ */
927
+ capacitor?: boolean;
928
+ /**
929
+ * Whether the platform is Cordova
930
+ */
931
+ cordova?: boolean;
932
+ /**
933
+ * Whether the platform is a native mobile wrapper
934
+ */
935
+ nativeMobile?: boolean;
936
+ /**
937
+ * Type of the native mobile wrapper
938
+ */
939
+ nativeMobileWrapper?: "cordova" | "capacitor";
940
+ /**
941
+ * Whether the browser is Google Chrome
942
+ */
943
+ chrome?: boolean;
944
+ /**
945
+ * Whether the browser is Firefox
946
+ */
947
+ firefox?: boolean;
948
+ /**
949
+ * Whether the browser is Safari
950
+ */
951
+ safari?: boolean;
952
+ /**
953
+ * Whether the browser is Microsoft Edge (Chromium)
954
+ */
955
+ edgeChromium?: boolean;
956
+ /**
957
+ * Whether the browser is Microsoft Edge Legacy
958
+ */
959
+ edge?: boolean;
960
+ /**
961
+ * Whether the browser is Opera
962
+ */
963
+ opera?: boolean;
964
+ /**
965
+ * Whether the browser is Vivaldi
966
+ */
967
+ vivaldi?: boolean;
968
+ /**
969
+ * Whether the operating system is Windows
970
+ */
971
+ win?: boolean;
972
+ /**
973
+ * Whether the operating system is Linux
974
+ */
975
+ linux?: boolean;
976
+ /**
977
+ * Whether the operating system is Mac OS
978
+ */
979
+ mac?: boolean;
980
+ /**
981
+ * Whether the operating system is Chrome OS
982
+ */
983
+ cros?: boolean;
984
+ /**
985
+ * Whether the operating system is Android
986
+ */
987
+ android?: boolean;
988
+ /**
989
+ * Whether the operating system is iOS
990
+ */
991
+ ios?: boolean;
992
+ /**
993
+ * Whether the operating system is Windows Phone
994
+ */
995
+ winphone?: boolean;
996
+ /**
997
+ * Whether the device is an iPhone
998
+ */
999
+ iphone?: boolean;
1000
+ /**
1001
+ * Whether the device is an iPad
1002
+ */
1003
+ ipad?: boolean;
1004
+ /**
1005
+ * Whether the device is an iPod
1006
+ */
1007
+ ipod?: boolean;
1008
+ /**
1009
+ * Whether the device is a Kindle
1010
+ */
1011
+ kindle?: boolean;
1012
+ /**
1013
+ * Whether the browser is Amazon Silk
1014
+ */
1015
+ silk?: boolean;
1016
+ };
888
1017
  /**
889
1018
  * Client browser detectable properties
890
1019
  */
@@ -1181,17 +1310,20 @@ export interface QAjaxBar extends ComponentPublicInstance<QAjaxBarProps> {
1181
1310
  /**
1182
1311
  * Notify bar you are waiting for a new process to finish
1183
1312
  * @param speed Delay (in milliseconds) between progress auto-increments; If delay is 0 then it disables auto-incrementing
1313
+ * @returns Number of active simultaneous sessions
1184
1314
  */
1185
- start: (speed?: number) => void;
1315
+ start: (speed?: number) => number;
1186
1316
  /**
1187
1317
  * Manually trigger a bar progress increment
1188
1318
  * @param amount Amount (0 < x <= 100) to increment with
1319
+ * @returns Number of active simultaneous sessions
1189
1320
  */
1190
- increment: (amount?: number) => void;
1321
+ increment: (amount?: number) => number;
1191
1322
  /**
1192
1323
  * Notify bar that one process you were waiting has finished
1324
+ * @returns Number of active simultaneous sessions
1193
1325
  */
1194
- stop: () => void;
1326
+ stop: () => number;
1195
1327
  }
1196
1328
 
1197
1329
  export interface QAvatarProps {
@@ -1607,11 +1739,11 @@ export interface QBtnDropdownProps {
1607
1739
  /**
1608
1740
  * Style definitions to be attributed to the menu
1609
1741
  */
1610
- contentStyle?: any[] | string | any | undefined;
1742
+ contentStyle?: VueStyleProp | undefined;
1611
1743
  /**
1612
1744
  * Class definitions to be attributed to the menu
1613
1745
  */
1614
- contentClass?: any[] | string | any | undefined;
1746
+ contentClass?: VueClassProp | undefined;
1615
1747
  /**
1616
1748
  * Allows the menu to cover the button. When used, the 'menu-self' and 'menu-fit' props are no longer effective
1617
1749
  */
@@ -2591,6 +2723,18 @@ export interface QCheckboxProps {
2591
2723
  * Label (if any specified) should be displayed on the left side of the component
2592
2724
  */
2593
2725
  leftLabel?: boolean | undefined;
2726
+ /**
2727
+ * The icon to be used when the model is truthy (instead of the default design)
2728
+ */
2729
+ checkedIcon?: string | undefined;
2730
+ /**
2731
+ * The icon to be used when the toggle is falsy (instead of the default design)
2732
+ */
2733
+ uncheckedIcon?: string | undefined;
2734
+ /**
2735
+ * The icon to be used when the model is indeterminate (instead of the default design)
2736
+ */
2737
+ indeterminateIcon?: string | undefined;
2594
2738
  /**
2595
2739
  * Color name for component from the Quasar Color Palette
2596
2740
  */
@@ -3715,11 +3859,11 @@ export interface QEditorProps {
3715
3859
  /**
3716
3860
  * Object with CSS properties and values for styling the container of QEditor
3717
3861
  */
3718
- contentStyle?: any | undefined;
3862
+ contentStyle?: VueStyleObjectProp | undefined;
3719
3863
  /**
3720
3864
  * CSS classes for the input area
3721
3865
  */
3722
- contentClass?: any | any[] | string | undefined;
3866
+ contentClass?: VueClassProp | undefined;
3723
3867
  /**
3724
3868
  * Text to display as placeholder
3725
3869
  */
@@ -3820,7 +3964,7 @@ export interface QExpansionItemProps {
3820
3964
  /**
3821
3965
  * Apply custom class(es) to the expand icon item section
3822
3966
  */
3823
- expandIconClass?: any[] | string | any | undefined;
3967
+ expandIconClass?: VueClassProp | undefined;
3824
3968
  /**
3825
3969
  * Header label (unless using 'header' slot)
3826
3970
  */
@@ -3889,11 +4033,11 @@ export interface QExpansionItemProps {
3889
4033
  /**
3890
4034
  * Apply custom style to the header
3891
4035
  */
3892
- headerStyle?: any[] | string | any | undefined;
4036
+ headerStyle?: VueStyleProp | undefined;
3893
4037
  /**
3894
4038
  * Apply custom class(es) to the header
3895
4039
  */
3896
- headerClass?: any[] | string | any | undefined;
4040
+ headerClass?: VueClassProp | undefined;
3897
4041
  /**
3898
4042
  * Emitted when showing/hidden state changes; Is also used by v-model
3899
4043
  * @param value New state (showing/hidden)
@@ -4016,11 +4160,11 @@ export interface QFabProps {
4016
4160
  /**
4017
4161
  * Class definitions to be attributed to the label container
4018
4162
  */
4019
- labelClass?: any[] | string | any | undefined;
4163
+ labelClass?: VueClassProp | undefined;
4020
4164
  /**
4021
4165
  * Style definitions to be attributed to the label container
4022
4166
  */
4023
- labelStyle?: any[] | string | any | undefined;
4167
+ labelStyle?: VueStyleProp | undefined;
4024
4168
  /**
4025
4169
  * Apply a rectangle aspect to the FAB
4026
4170
  */
@@ -4206,11 +4350,11 @@ export interface QFabActionProps {
4206
4350
  /**
4207
4351
  * Class definitions to be attributed to the label container
4208
4352
  */
4209
- labelClass?: any[] | string | any | undefined;
4353
+ labelClass?: VueClassProp | undefined;
4210
4354
  /**
4211
4355
  * Style definitions to be attributed to the label container
4212
4356
  */
4213
- labelStyle?: any[] | string | any | undefined;
4357
+ labelStyle?: VueStyleProp | undefined;
4214
4358
  /**
4215
4359
  * Apply a rectangle aspect to the FAB
4216
4360
  */
@@ -4766,11 +4910,11 @@ export interface QFileProps {
4766
4910
  /**
4767
4911
  * Class definitions to be attributed to the underlying selection container
4768
4912
  */
4769
- inputClass?: any[] | string | any | undefined;
4913
+ inputClass?: VueClassProp | undefined;
4770
4914
  /**
4771
4915
  * Style definitions to be attributed to the underlying selection container
4772
4916
  */
4773
- inputStyle?: any[] | string | any | undefined;
4917
+ inputStyle?: VueStyleProp | undefined;
4774
4918
  /**
4775
4919
  * Emitted after files are picked and some do not pass the validation props (accept, max-file-size, max-total-size, filter, etc)
4776
4920
  * @param rejectedEntries Array of { failedPropValidation: string, file: File } Objects for files that do not pass the validation
@@ -5125,7 +5269,7 @@ export interface QImgProps {
5125
5269
  /**
5126
5270
  * Force the component to maintain an aspect ratio
5127
5271
  */
5128
- ratio?: string | number | string | number | undefined;
5272
+ ratio?: string | number | undefined;
5129
5273
  /**
5130
5274
  * Path to image
5131
5275
  */
@@ -5197,7 +5341,7 @@ export interface QImgProps {
5197
5341
  /**
5198
5342
  * Apply CSS to the native img element
5199
5343
  */
5200
- imgStyle?: any | undefined;
5344
+ imgStyle?: VueStyleObjectProp | undefined;
5201
5345
  /**
5202
5346
  * Color name for default Spinner (unless using a 'loading' slot)
5203
5347
  */
@@ -5365,7 +5509,7 @@ export interface QInnerLoadingProps {
5365
5509
  /**
5366
5510
  * Apply custom style to the label; Works along the 'label' prop only
5367
5511
  */
5368
- labelStyle?: any[] | string | any | undefined;
5512
+ labelStyle?: VueStyleProp | undefined;
5369
5513
  /**
5370
5514
  * Notify the component that the background is a dark color
5371
5515
  */
@@ -5583,11 +5727,11 @@ export interface QInputProps {
5583
5727
  /**
5584
5728
  * Class definitions to be attributed to the underlying input tag
5585
5729
  */
5586
- inputClass?: any[] | string | any | undefined;
5730
+ inputClass?: VueClassProp | undefined;
5587
5731
  /**
5588
5732
  * Style definitions to be attributed to the underlying input tag
5589
5733
  */
5590
- inputStyle?: any[] | string | any | undefined;
5734
+ inputStyle?: VueStyleProp | undefined;
5591
5735
  /**
5592
5736
  * When using the 'clearable' property, this event is emitted when the clear icon is clicked
5593
5737
  * @param value The previous value before clearing it
@@ -6693,11 +6837,11 @@ export interface QPaginationProps {
6693
6837
  /**
6694
6838
  * Style definitions to be attributed to the input (if using one)
6695
6839
  */
6696
- inputStyle?: any[] | string | any | undefined;
6840
+ inputStyle?: VueStyleProp | undefined;
6697
6841
  /**
6698
6842
  * Class definitions to be attributed to the input (if using one)
6699
6843
  */
6700
- inputClass?: any[] | string | any | undefined;
6844
+ inputClass?: VueClassProp | undefined;
6701
6845
  /**
6702
6846
  * Button size in CSS units, including unit name
6703
6847
  */
@@ -7226,6 +7370,14 @@ export interface QRadioProps {
7226
7370
  * Label (if any specified) should be displayed on the left side of the checkbox
7227
7371
  */
7228
7372
  leftLabel?: boolean | undefined;
7373
+ /**
7374
+ * The icon to be used when selected (instead of the default design)
7375
+ */
7376
+ checkedIcon?: string | undefined;
7377
+ /**
7378
+ * The icon to be used when un-selected (instead of the default design)
7379
+ */
7380
+ uncheckedIcon?: string | undefined;
7229
7381
  /**
7230
7382
  * Color name for component from the Quasar Color Palette
7231
7383
  */
@@ -7368,12 +7520,7 @@ export interface QRangeProps {
7368
7520
  * @param value The marker value to transform
7369
7521
  * @returns Marker definition Object or directly a String for the label of the marker
7370
7522
  */
7371
- markerLabels?:
7372
- | SliderMarkerLabels
7373
- | SliderMarkerLabels
7374
- | SliderMarkerLabels
7375
- | SliderMarkerLabels
7376
- | undefined;
7523
+ markerLabels?: SliderMarkerLabels | undefined;
7377
7524
  /**
7378
7525
  * CSS class(es) to apply to the marker labels container
7379
7526
  */
@@ -7683,35 +7830,35 @@ export interface QScrollAreaProps {
7683
7830
  /**
7684
7831
  * Object with CSS properties and values for custom styling the scrollbars (both vertical and horizontal)
7685
7832
  */
7686
- barStyle?: any[] | string | any | undefined;
7833
+ barStyle?: VueStyleProp | undefined;
7687
7834
  /**
7688
7835
  * Object with CSS properties and values for custom styling the vertical scrollbar; Is applied on top of 'bar-style' prop
7689
7836
  */
7690
- verticalBarStyle?: any[] | string | any | undefined;
7837
+ verticalBarStyle?: VueStyleProp | undefined;
7691
7838
  /**
7692
7839
  * Object with CSS properties and values for custom styling the horizontal scrollbar; Is applied on top of 'bar-style' prop
7693
7840
  */
7694
- horizontalBarStyle?: any[] | string | any | undefined;
7841
+ horizontalBarStyle?: VueStyleProp | undefined;
7695
7842
  /**
7696
7843
  * Object with CSS properties and values for custom styling the thumb of scrollbars (both vertical and horizontal)
7697
7844
  */
7698
- thumbStyle?: any | undefined;
7845
+ thumbStyle?: VueStyleObjectProp | undefined;
7699
7846
  /**
7700
7847
  * Object with CSS properties and values for custom styling the thumb of the vertical scrollbar; Is applied on top of 'thumb-style' prop
7701
7848
  */
7702
- verticalThumbStyle?: any | undefined;
7849
+ verticalThumbStyle?: VueStyleObjectProp | undefined;
7703
7850
  /**
7704
7851
  * Object with CSS properties and values for custom styling the thumb of the horizontal scrollbar; Is applied on top of 'thumb-style' prop
7705
7852
  */
7706
- horizontalThumbStyle?: any | undefined;
7853
+ horizontalThumbStyle?: VueStyleObjectProp | undefined;
7707
7854
  /**
7708
7855
  * Object with CSS properties and values for styling the container of QScrollArea
7709
7856
  */
7710
- contentStyle?: any[] | string | any | undefined;
7857
+ contentStyle?: VueStyleProp | undefined;
7711
7858
  /**
7712
7859
  * Object with CSS properties and values for styling the container of QScrollArea when scroll area becomes active (is mouse hovered)
7713
7860
  */
7714
- contentActiveStyle?: any[] | string | any | undefined;
7861
+ contentActiveStyle?: VueStyleProp | undefined;
7715
7862
  /**
7716
7863
  * Manually control the visibility of the scrollbar; Overrides default mouse over/leave behavior
7717
7864
  */
@@ -8272,7 +8419,7 @@ export interface QSelectProps {
8272
8419
  /**
8273
8420
  * Style definitions to be attributed to the popup content
8274
8421
  */
8275
- popupContentStyle?: any[] | string | any | undefined;
8422
+ popupContentStyle?: VueStyleProp | undefined;
8276
8423
  /**
8277
8424
  * Use an input tag where users can type
8278
8425
  */
@@ -8305,11 +8452,11 @@ export interface QSelectProps {
8305
8452
  /**
8306
8453
  * Class definitions to be attributed to the underlying input tag
8307
8454
  */
8308
- inputClass?: any[] | string | any | undefined;
8455
+ inputClass?: VueClassProp | undefined;
8309
8456
  /**
8310
8457
  * Style definitions to be attributed to the underlying input tag
8311
8458
  */
8312
- inputStyle?: any[] | string | any | undefined;
8459
+ inputStyle?: VueStyleProp | undefined;
8313
8460
  /**
8314
8461
  * Tabindex HTML attribute value
8315
8462
  */
@@ -9064,12 +9211,7 @@ export interface QSliderProps {
9064
9211
  * @param value The marker value to transform
9065
9212
  * @returns Marker definition Object or directly a String for the label of the marker
9066
9213
  */
9067
- markerLabels?:
9068
- | SliderMarkerLabels
9069
- | SliderMarkerLabels
9070
- | SliderMarkerLabels
9071
- | SliderMarkerLabels
9072
- | undefined;
9214
+ markerLabels?: SliderMarkerLabels | undefined;
9073
9215
  /**
9074
9216
  * CSS class(es) to apply to the marker labels container
9075
9217
  */
@@ -9611,19 +9753,19 @@ export interface QSplitterProps {
9611
9753
  /**
9612
9754
  * Class definitions to be attributed to the 'before' panel
9613
9755
  */
9614
- beforeClass?: any[] | string | any | undefined;
9756
+ beforeClass?: VueClassProp | undefined;
9615
9757
  /**
9616
9758
  * Class definitions to be attributed to the 'after' panel
9617
9759
  */
9618
- afterClass?: any[] | string | any | undefined;
9760
+ afterClass?: VueClassProp | undefined;
9619
9761
  /**
9620
9762
  * Class definitions to be attributed to the splitter separator
9621
9763
  */
9622
- separatorClass?: any[] | string | any | undefined;
9764
+ separatorClass?: VueClassProp | undefined;
9623
9765
  /**
9624
9766
  * Style definitions to be attributed to the splitter separator
9625
9767
  */
9626
- separatorStyle?: any[] | string | any | undefined;
9768
+ separatorStyle?: VueStyleProp | undefined;
9627
9769
  /**
9628
9770
  * Applies a default lighter color on the separator; To be used when background is darker; Avoid using when you are overriding through separator-class or separator-style props
9629
9771
  */
@@ -10300,39 +10442,39 @@ export interface QTableProps {
10300
10442
  /**
10301
10443
  * CSS style to apply to native HTML <table> element's wrapper (which is a DIV)
10302
10444
  */
10303
- tableStyle?: string | any[] | any | undefined;
10445
+ tableStyle?: VueStyleProp | undefined;
10304
10446
  /**
10305
10447
  * CSS classes to apply to native HTML <table> element's wrapper (which is a DIV)
10306
10448
  */
10307
- tableClass?: string | any[] | any | undefined;
10449
+ tableClass?: VueClassProp | undefined;
10308
10450
  /**
10309
10451
  * CSS style to apply to header of native HTML <table> (which is a TR)
10310
10452
  */
10311
- tableHeaderStyle?: string | any[] | any | undefined;
10453
+ tableHeaderStyle?: VueStyleProp | undefined;
10312
10454
  /**
10313
10455
  * CSS classes to apply to header of native HTML <table> (which is a TR)
10314
10456
  */
10315
- tableHeaderClass?: string | any[] | any | undefined;
10457
+ tableHeaderClass?: VueClassProp | undefined;
10316
10458
  /**
10317
10459
  * CSS style to apply to the cards container (when in grid mode)
10318
10460
  */
10319
- cardContainerStyle?: string | any[] | any | undefined;
10461
+ cardContainerStyle?: VueStyleProp | undefined;
10320
10462
  /**
10321
10463
  * CSS classes to apply to the cards container (when in grid mode)
10322
10464
  */
10323
- cardContainerClass?: string | any[] | any | undefined;
10465
+ cardContainerClass?: VueClassProp | undefined;
10324
10466
  /**
10325
10467
  * CSS style to apply to the card (when in grid mode) or container card (when not in grid mode)
10326
10468
  */
10327
- cardStyle?: string | any[] | any | undefined;
10469
+ cardStyle?: VueStyleProp | undefined;
10328
10470
  /**
10329
10471
  * CSS classes to apply to the card (when in grid mode) or container card (when not in grid mode)
10330
10472
  */
10331
- cardClass?: string | any[] | any | undefined;
10473
+ cardClass?: VueClassProp | undefined;
10332
10474
  /**
10333
10475
  * CSS classes to apply to the title (if using 'title' prop)
10334
10476
  */
10335
- titleClass?: string | any[] | any | undefined;
10477
+ titleClass?: VueClassProp | undefined;
10336
10478
  /**
10337
10479
  * String/Object to filter table with; When using an Object it requires 'filter-method' to also be specified since it will be a custom filtering
10338
10480
  */
@@ -11991,7 +12133,9 @@ export interface QTimeProps {
11991
12133
  * @param min Minutes
11992
12134
  * @param sec Seconds
11993
12135
  */
11994
- options?: ((hr: number, min: number, sec: number) => void) | undefined;
12136
+ options?:
12137
+ | ((hr: number, min: number | null, sec: number | null) => void)
12138
+ | undefined;
11995
12139
  /**
11996
12140
  * Optionally configure what hours is the user allowed to set; Overrides 'options' prop if that is also set
11997
12141
  */
@@ -12206,6 +12350,18 @@ export interface QToggleProps {
12206
12350
  * Label (if any specified) should be displayed on the left side of the component
12207
12351
  */
12208
12352
  leftLabel?: boolean | undefined;
12353
+ /**
12354
+ * The icon to be used when the toggle is on
12355
+ */
12356
+ checkedIcon?: string | undefined;
12357
+ /**
12358
+ * The icon to be used when the toggle is off
12359
+ */
12360
+ uncheckedIcon?: string | undefined;
12361
+ /**
12362
+ * The icon to be used when the model is indeterminate
12363
+ */
12364
+ indeterminateIcon?: string | undefined;
12209
12365
  /**
12210
12366
  * Color name for component from the Quasar Color Palette
12211
12367
  */
@@ -12234,18 +12390,6 @@ export interface QToggleProps {
12234
12390
  * Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix
12235
12391
  */
12236
12392
  icon?: string | undefined;
12237
- /**
12238
- * The icon to be used when the toggle is on
12239
- */
12240
- checkedIcon?: string | undefined;
12241
- /**
12242
- * The icon to be used when the toggle is off
12243
- */
12244
- uncheckedIcon?: string | undefined;
12245
- /**
12246
- * The icon to be used when the model is indeterminate
12247
- */
12248
- indeterminateIcon?: string | undefined;
12249
12393
  /**
12250
12394
  * Override default icon color (for truthy state only); Color name for component from the Quasar Color Palette
12251
12395
  */
@@ -13255,6 +13399,8 @@ export interface QVirtualScroll
13255
13399
  refresh: (index?: string | number) => void;
13256
13400
  }
13257
13401
 
13402
+ import { VueClassProp } from "./api";
13403
+ import { VueStyleProp } from "./api";
13258
13404
  export interface DialogChainObject {
13259
13405
  /**
13260
13406
  * Receives a Function param to tell what to do when OK is pressed / option is selected
@@ -13292,11 +13438,11 @@ export interface QDialogOptions {
13292
13438
  /**
13293
13439
  * CSS Class name to apply to the Dialog's QCard
13294
13440
  */
13295
- class?: string | any[] | any;
13441
+ class?: VueClassProp;
13296
13442
  /**
13297
13443
  * CSS style to apply to the Dialog's QCard
13298
13444
  */
13299
- style?: string | any[] | any;
13445
+ style?: VueStyleProp;
13300
13446
  /**
13301
13447
  * A text for the heading title of the dialog
13302
13448
  */
@@ -13518,101 +13664,13 @@ import { WebStorageGetItemMethodType } from "./api";
13518
13664
  import { WebStorageGetIndexMethodType } from "./api";
13519
13665
  import { WebStorageGetKeyMethodType } from "./api";
13520
13666
  import { WebStorageGetAllKeysMethodType } from "./api";
13667
+ import { VueStyleObjectProp } from "./api";
13521
13668
  import { ValidationRule } from "./api";
13522
13669
  import { QRejectedEntry } from "./api";
13523
- export interface SliderMarkerLabels {
13524
- /**
13525
- * Value of equivalent model where to position the marker
13526
- */
13527
- value: number;
13528
- /**
13529
- * Label to use
13530
- */
13531
- label?: number | string;
13532
- /**
13533
- * CSS classes to be attributed to the marker label
13534
- */
13535
- classes?: string | any[] | any;
13536
- /**
13537
- * Style definitions to be attributed to the marker label
13538
- */
13539
- style?: any;
13540
- }
13541
-
13542
- export interface SliderMarkerLabelConfig {
13543
- /**
13544
- * Index of the marker label (0-based)
13545
- */
13546
- index?: number;
13547
- /**
13548
- * Equivalent model value for the marker label
13549
- */
13550
- value?: number;
13551
- /**
13552
- * Configured label for the marker
13553
- */
13554
- label?: number | string;
13555
- /**
13556
- * Required CSS classes to be applied to the marker element
13557
- */
13558
- classes?: string;
13559
- /**
13560
- * Style definitions to be attributed to the marker label
13561
- */
13562
- style?: any;
13563
- }
13564
-
13565
- export interface SliderMarkerLabelArrayConfig {
13566
- /**
13567
- * Index of the marker label (0-based)
13568
- */
13569
- index?: number;
13570
- /**
13571
- * Equivalent model value for the marker label
13572
- */
13573
- value?: number;
13574
- /**
13575
- * Configured label for the marker
13576
- */
13577
- label?: number | string;
13578
- /**
13579
- * Required CSS classes to be applied to the marker element
13580
- */
13581
- classes?: string;
13582
- /**
13583
- * Style definitions to be attributed to the marker label
13584
- */
13585
- style?: any;
13586
- }
13587
-
13588
- export interface SliderMarkerLabelObjectConfig {
13589
- /**
13590
- * Marker label config
13591
- */
13592
- [key: string]: {
13593
- /**
13594
- * Index of the marker label (0-based)
13595
- */
13596
- index?: number;
13597
- /**
13598
- * Equivalent model value for the marker label
13599
- */
13600
- value?: number;
13601
- /**
13602
- * Configured label for the marker
13603
- */
13604
- label?: number | string;
13605
- /**
13606
- * Required CSS classes to be applied to the marker element
13607
- */
13608
- classes?: string;
13609
- /**
13610
- * Style definitions to be attributed to the marker label
13611
- */
13612
- style?: any;
13613
- };
13614
- }
13615
-
13670
+ import { SliderMarkerLabels } from "./api";
13671
+ import { SliderMarkerLabelConfig } from "./api";
13672
+ import { SliderMarkerLabelArrayConfig } from "./api";
13673
+ import { SliderMarkerLabelObjectConfig } from "./api";
13616
13674
  import { QTreeNode } from "./api";
13617
13675
  import { QUploaderFactoryFn } from "./api";
13618
13676
  import { QVueGlobals, QSingletonGlobals } from "./globals";
@@ -13633,11 +13691,11 @@ declare module "./globals" {
13633
13691
  /**
13634
13692
  * CSS Class name to apply to the Dialog's QCard
13635
13693
  */
13636
- class?: string | any[] | any;
13694
+ class?: VueClassProp;
13637
13695
  /**
13638
13696
  * CSS style to apply to the Dialog's QCard
13639
13697
  */
13640
- style?: string | any[] | any;
13698
+ style?: VueStyleProp;
13641
13699
  /**
13642
13700
  * Title
13643
13701
  */
@@ -13653,7 +13711,7 @@ declare module "./globals" {
13653
13711
  /**
13654
13712
  * CSS classes for this action
13655
13713
  */
13656
- classes?: string | any[] | any;
13714
+ classes?: VueClassProp;
13657
13715
  /**
13658
13716
  * Icon name following Quasar convention; Make sure you have the icon library installed unless you are using 'img:' prefix
13659
13717
  */
@@ -13786,11 +13844,11 @@ declare module "./globals" {
13786
13844
  /**
13787
13845
  * Style definitions to be attributed to the badge
13788
13846
  */
13789
- badgeStyle?: any[] | string | any;
13847
+ badgeStyle?: VueStyleProp;
13790
13848
  /**
13791
13849
  * Class definitions to be attributed to the badge
13792
13850
  */
13793
- badgeClass?: any[] | string | any;
13851
+ badgeClass?: VueClassProp;
13794
13852
  /**
13795
13853
  * Show progress bar to detail when notification will disappear automatically (unless timeout is 0)
13796
13854
  */
@@ -13798,7 +13856,7 @@ declare module "./globals" {
13798
13856
  /**
13799
13857
  * Class definitions to be attributed to the progress bar
13800
13858
  */
13801
- progressClass?: any[] | string | any;
13859
+ progressClass?: VueClassProp;
13802
13860
  /**
13803
13861
  * Add CSS class(es) to the notification for easier customization
13804
13862
  */
@@ -13878,7 +13936,7 @@ declare module "./globals" {
13878
13936
  /**
13879
13937
  * Class definitions to be attributed to the progress bar
13880
13938
  */
13881
- progressClass?: any[] | string | any;
13939
+ progressClass?: VueClassProp;
13882
13940
  /**
13883
13941
  * Add CSS class(es) to the notification for easier customization
13884
13942
  */