quasar 2.16.11 → 2.17.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 (170) hide show
  1. package/dist/api/Platform.json +1 -1
  2. package/dist/api/QOptionGroup.json +1 -1
  3. package/dist/api/QScrollArea.json +1 -1
  4. package/dist/api/QSelect.json +1 -1
  5. package/dist/api/QUploader.json +1 -1
  6. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  7. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  9. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  10. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  11. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  12. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  13. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  14. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  15. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  16. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  17. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  18. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  19. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  20. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  22. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  23. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  24. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  25. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  42. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  44. package/dist/icon-set/themify.umd.prod.js +1 -1
  45. package/dist/lang/ar-TN.umd.prod.js +1 -1
  46. package/dist/lang/ar.umd.prod.js +1 -1
  47. package/dist/lang/az-Latn.umd.prod.js +1 -1
  48. package/dist/lang/bg.umd.prod.js +1 -1
  49. package/dist/lang/bn.umd.prod.js +1 -1
  50. package/dist/lang/bs-BA.umd.prod.js +1 -1
  51. package/dist/lang/ca.umd.prod.js +1 -1
  52. package/dist/lang/cs.umd.prod.js +1 -1
  53. package/dist/lang/da.umd.prod.js +1 -1
  54. package/dist/lang/de-CH.umd.prod.js +1 -1
  55. package/dist/lang/de-DE.umd.prod.js +1 -1
  56. package/dist/lang/de.umd.prod.js +1 -1
  57. package/dist/lang/el.umd.prod.js +1 -1
  58. package/dist/lang/en-GB.umd.prod.js +1 -1
  59. package/dist/lang/en-US.umd.prod.js +1 -1
  60. package/dist/lang/eo.umd.prod.js +1 -1
  61. package/dist/lang/es.umd.prod.js +1 -1
  62. package/dist/lang/et.umd.prod.js +1 -1
  63. package/dist/lang/eu.umd.prod.js +1 -1
  64. package/dist/lang/fa-IR.umd.prod.js +1 -1
  65. package/dist/lang/fa.umd.prod.js +1 -1
  66. package/dist/lang/fi.umd.prod.js +1 -1
  67. package/dist/lang/fr.umd.prod.js +1 -1
  68. package/dist/lang/gn.umd.prod.js +1 -1
  69. package/dist/lang/he.umd.prod.js +1 -1
  70. package/dist/lang/hi.umd.prod.js +1 -1
  71. package/dist/lang/hr.umd.prod.js +1 -1
  72. package/dist/lang/hu.umd.prod.js +1 -1
  73. package/dist/lang/id.umd.prod.js +1 -1
  74. package/dist/lang/is.umd.prod.js +1 -1
  75. package/dist/lang/it.umd.prod.js +1 -1
  76. package/dist/lang/ja.umd.prod.js +1 -1
  77. package/dist/lang/kk.umd.prod.js +1 -1
  78. package/dist/lang/km.umd.prod.js +1 -1
  79. package/dist/lang/ko-KR.umd.prod.js +1 -1
  80. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  81. package/dist/lang/lt.umd.prod.js +1 -1
  82. package/dist/lang/lu.umd.prod.js +1 -1
  83. package/dist/lang/lv.umd.prod.js +1 -1
  84. package/dist/lang/mk.umd.prod.js +1 -1
  85. package/dist/lang/ml.umd.prod.js +1 -1
  86. package/dist/lang/mm.umd.prod.js +1 -1
  87. package/dist/lang/ms-MY.umd.prod.js +1 -1
  88. package/dist/lang/ms.umd.prod.js +1 -1
  89. package/dist/lang/my.umd.prod.js +1 -1
  90. package/dist/lang/nb-NO.umd.prod.js +1 -1
  91. package/dist/lang/nl.umd.prod.js +1 -1
  92. package/dist/lang/pl.umd.prod.js +1 -1
  93. package/dist/lang/pt-BR.umd.prod.js +1 -1
  94. package/dist/lang/pt.umd.prod.js +1 -1
  95. package/dist/lang/ro.umd.prod.js +1 -1
  96. package/dist/lang/ru.umd.prod.js +1 -1
  97. package/dist/lang/sk.umd.prod.js +1 -1
  98. package/dist/lang/sl.umd.prod.js +1 -1
  99. package/dist/lang/sm.umd.prod.js +1 -1
  100. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  101. package/dist/lang/sr.umd.prod.js +1 -1
  102. package/dist/lang/sv.umd.prod.js +1 -1
  103. package/dist/lang/ta.umd.prod.js +1 -1
  104. package/dist/lang/th.umd.prod.js +1 -1
  105. package/dist/lang/tl.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/uz-Cyrl.umd.prod.js +1 -1
  110. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  111. package/dist/lang/vi.umd.prod.js +1 -1
  112. package/dist/lang/zh-CN.umd.prod.js +1 -1
  113. package/dist/lang/zh-TW.umd.prod.js +1 -1
  114. package/dist/quasar.client.js +748 -2140
  115. package/dist/quasar.css +3 -2
  116. package/dist/quasar.prod.css +1 -1
  117. package/dist/quasar.rtl.css +3 -2
  118. package/dist/quasar.rtl.prod.css +1 -1
  119. package/dist/quasar.sass +8 -4
  120. package/dist/quasar.server.prod.cjs +53 -53
  121. package/dist/quasar.server.prod.js +51 -51
  122. package/dist/quasar.umd.js +338 -1733
  123. package/dist/quasar.umd.prod.js +44 -44
  124. package/dist/types/index.d.ts +120 -51
  125. package/dist/vetur/quasar-attributes.json +1 -1
  126. package/dist/vetur/quasar-tags.json +1 -1
  127. package/dist/web-types/web-types.json +1 -1
  128. package/package.json +9 -9
  129. package/src/components/menu/QMenu.sass +2 -2
  130. package/src/components/option-group/QOptionGroup.js +38 -15
  131. package/src/components/option-group/QOptionGroup.json +88 -1
  132. package/src/components/scroll-area/QScrollArea.js +115 -107
  133. package/src/components/scroll-area/QScrollArea.json +40 -0
  134. package/src/components/scroll-area/ScrollAreaControls.js +54 -0
  135. package/src/components/select/QSelect.js +16 -18
  136. package/src/components/select/QSelect.json +7 -0
  137. package/src/components/spinner/QSpinnerAudio.js +4 -70
  138. package/src/components/spinner/QSpinnerBall.js +4 -86
  139. package/src/components/spinner/QSpinnerBars.js +4 -125
  140. package/src/components/spinner/QSpinnerBox.js +4 -43
  141. package/src/components/spinner/QSpinnerClock.js +4 -54
  142. package/src/components/spinner/QSpinnerComment.js +4 -66
  143. package/src/components/spinner/QSpinnerCube.js +4 -114
  144. package/src/components/spinner/QSpinnerDots.js +4 -86
  145. package/src/components/spinner/QSpinnerFacebook.js +4 -85
  146. package/src/components/spinner/QSpinnerGears.js +4 -41
  147. package/src/components/spinner/QSpinnerGrid.js +4 -134
  148. package/src/components/spinner/QSpinnerHearts.js +4 -36
  149. package/src/components/spinner/QSpinnerHourglass.js +4 -94
  150. package/src/components/spinner/QSpinnerInfinity.js +4 -25
  151. package/src/components/spinner/QSpinnerIos.js +4 -156
  152. package/src/components/spinner/QSpinnerOrbit.js +4 -33
  153. package/src/components/spinner/QSpinnerOval.js +4 -32
  154. package/src/components/spinner/QSpinnerPie.js +4 -63
  155. package/src/components/spinner/QSpinnerPuff.js +4 -65
  156. package/src/components/spinner/QSpinnerRadio.js +4 -58
  157. package/src/components/spinner/QSpinnerRings.js +4 -88
  158. package/src/components/spinner/QSpinnerTail.js +4 -66
  159. package/src/components/tabs/QRouteTab.js +4 -3
  160. package/src/components/tabs/QTabs.js +28 -15
  161. package/src/components/tooltip/QTooltip.sass +2 -0
  162. package/src/components/uploader/QUploader.json +9 -0
  163. package/src/components/uploader/QUploader.sass +0 -1
  164. package/src/components/uploader/uploader-core.js +6 -2
  165. package/src/composables/private.use-panel/use-panel.js +5 -3
  166. package/src/css/variables.sass +3 -0
  167. package/src/plugins/platform/Platform.js +40 -5
  168. package/src/plugins/platform/Platform.json +52 -69
  169. package/src/plugins/platform/Platform.test.js +22 -14
  170. package/src/utils/private.position-engine/position-engine.js +11 -4
@@ -2134,118 +2134,130 @@ export interface Platform {
2134
2134
  * Major browser version as a number
2135
2135
  */
2136
2136
  versionNumber?: number;
2137
- /**
2138
- * Whether the platform is desktop
2139
- */
2140
- desktop?: boolean;
2141
2137
  /**
2142
2138
  * Whether the platform is mobile
2143
2139
  */
2144
- mobile?: boolean;
2140
+ mobile: boolean;
2145
2141
  /**
2146
- * Whether the platform is Electron
2142
+ * Whether the platform is desktop
2147
2143
  */
2148
- electron?: boolean;
2144
+ desktop: boolean;
2149
2145
  /**
2150
- * Whether the platform is BEX(Browser Extension)
2146
+ * Whether the platform is Cordova
2151
2147
  */
2152
- bex?: boolean;
2148
+ cordova: boolean;
2153
2149
  /**
2154
2150
  * Whether the platform is Capacitor
2155
2151
  */
2156
- capacitor?: boolean;
2157
- /**
2158
- * Whether the platform is Cordova
2159
- */
2160
- cordova?: boolean;
2152
+ capacitor: boolean;
2161
2153
  /**
2162
2154
  * Whether the platform is a native mobile wrapper
2163
2155
  */
2164
- nativeMobile?: boolean;
2156
+ nativeMobile: boolean;
2165
2157
  /**
2166
2158
  * Type of the native mobile wrapper
2167
2159
  */
2168
2160
  nativeMobileWrapper?: "cordova" | "capacitor";
2169
2161
  /**
2170
- * Whether the browser is a Webkit one
2162
+ * Whether the platform is Electron
2171
2163
  */
2172
- webkit?: boolean;
2164
+ electron: boolean;
2173
2165
  /**
2174
- * Whether the browser is Google Chrome
2166
+ * Whether the platform is BEX(Browser Extension)
2175
2167
  */
2176
- chrome?: boolean;
2168
+ bex: boolean;
2177
2169
  /**
2178
- * Whether the browser is Firefox
2170
+ * Whether the operating system is Linux
2179
2171
  */
2180
- firefox?: boolean;
2172
+ linux: boolean;
2181
2173
  /**
2182
- * Whether the browser is Safari
2174
+ * Whether the operating system is Mac OS
2183
2175
  */
2184
- safari?: boolean;
2176
+ mac: boolean;
2185
2177
  /**
2186
- * Whether the browser is Microsoft Edge (Chromium)
2178
+ * Whether the operating system is Windows
2187
2179
  */
2188
- edgeChromium?: boolean;
2180
+ win: boolean;
2189
2181
  /**
2190
- * Whether the browser is Microsoft Edge Legacy
2182
+ * Whether the operating system is Chrome OS
2191
2183
  */
2192
- edge?: boolean;
2184
+ cros: boolean;
2185
+ /**
2186
+ * Whether the browser is Google Chrome
2187
+ */
2188
+ chrome: boolean;
2189
+ /**
2190
+ * Whether the browser is Firefox
2191
+ */
2192
+ firefox: boolean;
2193
2193
  /**
2194
2194
  * Whether the browser is Opera
2195
2195
  */
2196
- opera?: boolean;
2196
+ opera: boolean;
2197
+ /**
2198
+ * Whether the browser is Safari
2199
+ */
2200
+ safari: boolean;
2197
2201
  /**
2198
2202
  * Whether the browser is Vivaldi
2199
2203
  */
2200
- vivaldi?: boolean;
2204
+ vivaldi: boolean;
2201
2205
  /**
2202
- * Whether the operating system is Windows
2206
+ * Whether the browser is Microsoft Edge Legacy
2203
2207
  */
2204
- win?: boolean;
2208
+ edge: boolean;
2205
2209
  /**
2206
- * Whether the operating system is Linux
2210
+ * Whether the browser is Microsoft Edge (Chromium)
2207
2211
  */
2208
- linux?: boolean;
2212
+ edgeChromium: boolean;
2209
2213
  /**
2210
- * Whether the operating system is Mac OS
2214
+ * Whether the browser is Internet Explorer
2211
2215
  */
2212
- mac?: boolean;
2216
+ ie: boolean;
2213
2217
  /**
2214
- * Whether the operating system is Chrome OS
2218
+ * Whether the browser is a Webkit or Webkit-based one
2215
2219
  */
2216
- cros?: boolean;
2220
+ webkit: boolean;
2217
2221
  /**
2218
2222
  * Whether the operating system is Android
2219
2223
  */
2220
- android?: boolean;
2224
+ android: boolean;
2221
2225
  /**
2222
2226
  * Whether the operating system is iOS
2223
2227
  */
2224
- ios?: boolean;
2228
+ ios: boolean;
2225
2229
  /**
2226
- * Whether the operating system is Windows Phone
2230
+ * Whether the device is an iPad
2227
2231
  */
2228
- winphone?: boolean;
2232
+ ipad: boolean;
2229
2233
  /**
2230
2234
  * Whether the device is an iPhone
2231
2235
  */
2232
- iphone?: boolean;
2233
- /**
2234
- * Whether the device is an iPad
2235
- */
2236
- ipad?: boolean;
2236
+ iphone: boolean;
2237
2237
  /**
2238
2238
  * Whether the device is an iPod
2239
2239
  */
2240
- ipod?: boolean;
2240
+ ipod: boolean;
2241
2241
  /**
2242
2242
  * Whether the device is a Kindle
2243
2243
  */
2244
- kindle?: boolean;
2244
+ kindle: boolean;
2245
+ /**
2246
+ * Whether the operating system is Windows Phone
2247
+ */
2248
+ winphone: boolean;
2249
+ /**
2250
+ * Whether the device is a Blackberry
2251
+ */
2252
+ blackberry: boolean;
2253
+ /**
2254
+ * Whether the device is a Blackberry Playbook
2255
+ */
2256
+ playbook: boolean;
2245
2257
  /**
2246
2258
  * Whether the browser is Amazon Silk
2247
2259
  */
2248
- silk?: boolean;
2260
+ silk: boolean;
2249
2261
  };
2250
2262
  /**
2251
2263
  * Client browser detectable properties
@@ -8956,6 +8968,7 @@ export interface QOptionGroupProps {
8956
8968
  modelValue: any;
8957
8969
  /**
8958
8970
  * Array of objects with value, label, and disable (optional) props. The binary components will be created according to this array; Props from QToggle, QCheckbox or QRadio can also be added as key/value pairs to control the components singularly
8971
+ * Default value: []
8959
8972
  */
8960
8973
  options?: {
8961
8974
  /**
@@ -8975,6 +8988,27 @@ export interface QOptionGroupProps {
8975
8988
  */
8976
8989
  [props: string]: any | undefined;
8977
8990
  }[];
8991
+ /**
8992
+ * Property of option which holds the 'value'; If using a function then for best performance, reference it from your scope and do not define it inline
8993
+ * Default value: 'value'
8994
+ * @param option The current option being processed
8995
+ * @returns Value of the current option
8996
+ */
8997
+ optionValue?: ((option: string | any) => any) | string | undefined;
8998
+ /**
8999
+ * Property of option which holds the 'label'; If using a function then for best performance, reference it from your scope and do not define it inline
9000
+ * Default value: 'label'
9001
+ * @param option The current option being processed
9002
+ * @returns Label of the current option
9003
+ */
9004
+ optionLabel?: ((option: string | any) => string) | string | undefined;
9005
+ /**
9006
+ * Property of option which tells it's disabled; The value of the property must be a Boolean; If using a function then for best performance, reference it from your scope and do not define it inline
9007
+ * Default value: 'disable'
9008
+ * @param option The current option being processed
9009
+ * @returns If true, the current option will be disabled
9010
+ */
9011
+ optionDisable?: ((option: string | any) => boolean) | string | undefined;
8978
9012
  /**
8979
9013
  * Used to specify the name of the controls; Useful if dealing with forms submitted directly to a URL
8980
9014
  */
@@ -10256,6 +10290,16 @@ export interface QScrollAreaProps {
10256
10290
  * Default value: null
10257
10291
  */
10258
10292
  dark?: boolean | null | undefined;
10293
+ /**
10294
+ * Adds [top, bottom] offset to vertical thumb
10295
+ * Default value: # [ 0, 0 ]
10296
+ */
10297
+ verticalOffset?: readonly any[] | undefined;
10298
+ /**
10299
+ * Adds [left, right] offset to horizontal thumb
10300
+ * Default value: # [ 0, 0 ]
10301
+ */
10302
+ horizontalOffset?: readonly any[] | undefined;
10259
10303
  /**
10260
10304
  * Object with CSS properties and values for custom styling the scrollbars (both vertical and horizontal)
10261
10305
  */
@@ -10327,6 +10371,10 @@ export interface QScrollAreaProps {
10327
10371
  * Height of the container (in px)
10328
10372
  */
10329
10373
  verticalContainerSize: number;
10374
+ /**
10375
+ * Height of the container without the vertical offset (in px)
10376
+ */
10377
+ verticalContainerInnerSize: number;
10330
10378
  /**
10331
10379
  * Horizontal scroll position (in px)
10332
10380
  */
@@ -10343,6 +10391,10 @@ export interface QScrollAreaProps {
10343
10391
  * Width of the container (in px)
10344
10392
  */
10345
10393
  horizontalContainerSize: number;
10394
+ /**
10395
+ * Width of the container without the horizontal offset (in px)
10396
+ */
10397
+ horizontalContainerInnerSize: number;
10346
10398
  }) => void;
10347
10399
  }
10348
10400
 
@@ -10380,6 +10432,10 @@ export interface QScrollArea extends ComponentPublicInstance<QScrollAreaProps> {
10380
10432
  * Height of the container (in px)
10381
10433
  */
10382
10434
  verticalContainerSize: number;
10435
+ /**
10436
+ * Height of the container without the vertical offset (in px)
10437
+ */
10438
+ verticalContainerInnerSize: number;
10383
10439
  /**
10384
10440
  * Horizontal scroll position (in px)
10385
10441
  */
@@ -10396,6 +10452,10 @@ export interface QScrollArea extends ComponentPublicInstance<QScrollAreaProps> {
10396
10452
  * Width of the container (in px)
10397
10453
  */
10398
10454
  horizontalContainerSize: number;
10455
+ /**
10456
+ * Width of the container without the horizontal offset (in px)
10457
+ */
10458
+ horizontalContainerInnerSize: number;
10399
10459
  };
10400
10460
  /**
10401
10461
  * Get current scroll position
@@ -10882,6 +10942,10 @@ export interface QSelectProps {
10882
10942
  * Try to map labels of model from 'options' Array; has a small performance penalty; If you are using emit-value you will probably need to use map-options to display the label text in the select field rather than the value; Refer to the 'Affecting model' section above
10883
10943
  */
10884
10944
  mapOptions?: boolean | undefined;
10945
+ /**
10946
+ * Prevents the tab key from confirming the currently hovered option
10947
+ */
10948
+ disableTabSelection?: boolean | undefined;
10885
10949
  /**
10886
10950
  * Update model with the value of the selected option instead of the whole option
10887
10951
  */
@@ -15678,6 +15742,11 @@ export interface QUploaderProps {
15678
15742
  * Don't show the upload button
15679
15743
  */
15680
15744
  hideUploadBtn?: boolean | undefined;
15745
+ /**
15746
+ * How the thumbnail image will fit into the container; Equivalent of the background-size prop
15747
+ * Default value: 'cover'
15748
+ */
15749
+ thumbnailFit?: string | undefined;
15681
15750
  /**
15682
15751
  * Put component in disabled mode
15683
15752
  */
@@ -16614,7 +16683,7 @@ declare module "./globals" {
16614
16683
  }
16615
16684
  }
16616
16685
 
16617
- declare module "@vue/runtime-core" {
16686
+ declare module "vue" {
16618
16687
  interface ComponentCustomProperties {
16619
16688
  $q: QVueGlobals;
16620
16689
 
@@ -17211,7 +17280,7 @@ interface _GlobalComponents {
17211
17280
  >;
17212
17281
  }
17213
17282
 
17214
- declare module "@vue/runtime-core" {
17283
+ declare module "vue" {
17215
17284
  interface GlobalComponents extends _GlobalComponents {}
17216
17285
  }
17217
17286