quasar 2.17.1 → 2.17.3

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 (136) hide show
  1. package/dist/api/QFile.json +1 -1
  2. package/dist/api/QSelect.json +1 -1
  3. package/dist/api/QUploader.json +1 -1
  4. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  5. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  6. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  7. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  9. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  10. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  11. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  12. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  13. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  14. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  15. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  16. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  17. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  18. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  19. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  22. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  23. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  24. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  25. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +2 -2
  28. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +2 -2
  37. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +2 -2
  38. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +2 -2
  39. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  42. package/dist/icon-set/themify.umd.prod.js +1 -1
  43. package/dist/lang/ar-TN.umd.prod.js +1 -1
  44. package/dist/lang/ar.umd.prod.js +1 -1
  45. package/dist/lang/az-Latn.umd.prod.js +1 -1
  46. package/dist/lang/bg.umd.prod.js +1 -1
  47. package/dist/lang/bn.umd.prod.js +1 -1
  48. package/dist/lang/bs-BA.umd.prod.js +1 -1
  49. package/dist/lang/ca.umd.prod.js +1 -1
  50. package/dist/lang/cs.umd.prod.js +1 -1
  51. package/dist/lang/da.umd.prod.js +1 -1
  52. package/dist/lang/de-CH.umd.prod.js +1 -1
  53. package/dist/lang/de-DE.umd.prod.js +1 -1
  54. package/dist/lang/de.umd.prod.js +1 -1
  55. package/dist/lang/el.umd.prod.js +1 -1
  56. package/dist/lang/en-GB.umd.prod.js +1 -1
  57. package/dist/lang/en-US.umd.prod.js +1 -1
  58. package/dist/lang/eo.umd.prod.js +1 -1
  59. package/dist/lang/es.umd.prod.js +1 -1
  60. package/dist/lang/et.umd.prod.js +1 -1
  61. package/dist/lang/eu.umd.prod.js +1 -1
  62. package/dist/lang/fa-IR.umd.prod.js +1 -1
  63. package/dist/lang/fa.umd.prod.js +1 -1
  64. package/dist/lang/fi.umd.prod.js +1 -1
  65. package/dist/lang/fr.umd.prod.js +1 -1
  66. package/dist/lang/gn.umd.prod.js +1 -1
  67. package/dist/lang/he.umd.prod.js +1 -1
  68. package/dist/lang/hi.umd.prod.js +1 -1
  69. package/dist/lang/hr.umd.prod.js +1 -1
  70. package/dist/lang/hu.umd.prod.js +1 -1
  71. package/dist/lang/id.umd.prod.js +1 -1
  72. package/dist/lang/is.umd.prod.js +1 -1
  73. package/dist/lang/it.umd.prod.js +1 -1
  74. package/dist/lang/ja.umd.prod.js +1 -1
  75. package/dist/lang/kk.umd.prod.js +1 -1
  76. package/dist/lang/km.umd.prod.js +1 -1
  77. package/dist/lang/ko-KR.umd.prod.js +1 -1
  78. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  79. package/dist/lang/lt.umd.prod.js +1 -1
  80. package/dist/lang/lu.umd.prod.js +1 -1
  81. package/dist/lang/lv.umd.prod.js +1 -1
  82. package/dist/lang/mk.umd.prod.js +1 -1
  83. package/dist/lang/ml.umd.prod.js +1 -1
  84. package/dist/lang/mm.umd.prod.js +1 -1
  85. package/dist/lang/ms-MY.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/sm.umd.prod.js +1 -1
  98. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  99. package/dist/lang/sr.umd.prod.js +1 -1
  100. package/dist/lang/sv.umd.prod.js +1 -1
  101. package/dist/lang/ta.umd.prod.js +1 -1
  102. package/dist/lang/th.umd.prod.js +1 -1
  103. package/dist/lang/tl.umd.prod.js +1 -1
  104. package/dist/lang/tr.umd.prod.js +1 -1
  105. package/dist/lang/ug.umd.prod.js +1 -1
  106. package/dist/lang/uk.umd.prod.js +1 -1
  107. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  108. package/dist/lang/uz-Latn.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.client.js +11 -17
  113. package/dist/quasar.css +3 -3
  114. package/dist/quasar.prod.css +1 -1
  115. package/dist/quasar.rtl.css +3 -3
  116. package/dist/quasar.rtl.prod.css +1 -1
  117. package/dist/quasar.sass +3 -3
  118. package/dist/quasar.server.prod.cjs +8 -8
  119. package/dist/quasar.server.prod.js +13 -13
  120. package/dist/quasar.umd.js +11 -17
  121. package/dist/quasar.umd.prod.js +4 -4
  122. package/dist/types/api/qfile.d.ts +2 -0
  123. package/dist/types/api/qtree.d.ts +1 -1
  124. package/dist/types/index.d.ts +21 -8
  125. package/dist/types/lang.d.ts +5 -1
  126. package/dist/web-types/web-types.json +1 -1
  127. package/package.json +3 -3
  128. package/src/components/file/QFile.json +2 -1
  129. package/src/components/select/QSelect.js +15 -13
  130. package/src/components/select/QSelect.json +12 -0
  131. package/src/components/uploader/QUploader.json +0 -12
  132. package/src/composables/private.use-file/use-file.json +5 -2
  133. package/src/composables/use-timeout/use-timeout.js +1 -1
  134. package/src/css/core/visibility.sass +2 -2
  135. package/wrappers/index.cjs +25 -12
  136. package/wrappers/index.js +26 -13
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quasar",
3
- "version": "2.17.1",
3
+ "version": "2.17.3",
4
4
  "description": "Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time",
5
5
  "type": "module",
6
6
  "module": "dist/quasar.client.js",
@@ -76,8 +76,8 @@
76
76
  "table": "^6.8.2",
77
77
  "typescript": "^5.6.2",
78
78
  "vue": "^3.5.5",
79
- "@quasar/extras": "1.16.12",
80
- "eslint-config-quasar": "0.0.1"
79
+ "eslint-config-quasar": "0.0.1",
80
+ "@quasar/extras": "1.16.13"
81
81
  },
82
82
  "vetur": {
83
83
  "tags": "dist/vetur/quasar-tags.json",
@@ -125,7 +125,8 @@
125
125
  "desc": "Override default selection slot; Suggestion: QChip",
126
126
  "scope": {
127
127
  "files": {
128
- "type": [ "Array", "FileList" ],
128
+ "type": "Array",
129
+ "tsType": "File",
129
130
  "desc": "Array of File objects"
130
131
  },
131
132
 
@@ -171,7 +171,12 @@ export default createComponent({
171
171
 
172
172
  const onComposition = useKeyComposition(onInput)
173
173
 
174
- const virtualScrollLength = computed(() => props.options.length)
174
+ const virtualScrollLength = computed(() => (
175
+ Array.isArray(props.options)
176
+ ? props.options.length
177
+ : 0
178
+ ))
179
+
175
180
  const virtualScrollItemSizeComputed = computed(() => (
176
181
  props.virtualScrollItemSize === void 0
177
182
  ? (props.optionsDense === true ? 24 : 48)
@@ -200,7 +205,7 @@ export default createComponent({
200
205
  ? (props.multiple === true && Array.isArray(props.modelValue) ? props.modelValue : [ props.modelValue ])
201
206
  : []
202
207
 
203
- if (props.mapOptions === true) {
208
+ if (props.mapOptions === true && Array.isArray(props.options) === true) {
204
209
  const cache = props.mapOptions === true && innerValueCache !== void 0
205
210
  ? innerValueCache
206
211
  : []
@@ -665,11 +670,9 @@ export default createComponent({
665
670
  if (typeof value === 'string' && value.length !== 0) {
666
671
  const needle = value.toLocaleLowerCase()
667
672
  const findFn = extractFn => {
668
- const option = props.options.find(opt => extractFn.value(opt).toLocaleLowerCase() === needle)
673
+ const option = props.options.find(opt => String(extractFn.value(opt)).toLocaleLowerCase() === needle)
669
674
 
670
- if (option === void 0) {
671
- return false
672
- }
675
+ if (option === void 0) return false
673
676
 
674
677
  if (innerValue.value.indexOf(option) === -1) {
675
678
  toggleOption(option)
@@ -681,14 +684,13 @@ export default createComponent({
681
684
  return true
682
685
  }
683
686
  const fillFn = afterFilter => {
684
- if (findFn(getOptionValue) === true) {
685
- return
687
+ if (
688
+ findFn(getOptionValue) !== true
689
+ && afterFilter !== true
690
+ && findFn(getOptionLabel) !== true
691
+ ) {
692
+ filter(value, true, () => fillFn(true))
686
693
  }
687
- if (findFn(getOptionLabel) === true || afterFilter === true) {
688
- return
689
- }
690
-
691
- filter(value, true, () => fillFn(true))
692
694
  }
693
695
 
694
696
  fillFn()
@@ -415,6 +415,10 @@
415
415
  "type": "Boolean",
416
416
  "desc": "Always true -- passed down as prop to QItem (when using QItem)"
417
417
  },
418
+ "html": {
419
+ "type": "Boolean",
420
+ "desc": "Is the content HTML?"
421
+ },
418
422
  "removeAtIndex": {
419
423
  "type": "Function",
420
424
  "desc": "Remove selected option located at specific index",
@@ -458,6 +462,14 @@
458
462
  "type": "Any",
459
463
  "desc": "Option -- its value is taken from 'options' prop"
460
464
  },
465
+ "html": {
466
+ "type": "Boolean",
467
+ "desc": "Is the content HTML?"
468
+ },
469
+ "label": {
470
+ "type": "String",
471
+ "desc": "Label of the option"
472
+ },
461
473
  "selected": {
462
474
  "type": "Boolean",
463
475
  "desc": "Is option selected?"
@@ -212,18 +212,6 @@
212
212
  }
213
213
  },
214
214
  "returns": null
215
- },
216
-
217
- "addFiles": {
218
- "desc": "Manually add files to the queue",
219
- "params": {
220
- "files": {
221
- "type": "Array",
222
- "required": true,
223
- "desc": "Must be an array of instances of JS File type"
224
- }
225
- },
226
- "returns": null
227
215
  }
228
216
  },
229
217
 
@@ -44,12 +44,14 @@
44
44
  "desc": "Custom filter for added files; Only files that pass this filter will be added to the queue and uploaded; For best performance, reference it from your scope and do not define it inline",
45
45
  "params": {
46
46
  "files": {
47
- "type": [ "Array", "FileList" ],
47
+ "type": "Array",
48
+ "tsType": "File",
48
49
  "desc": "Candidate files to be added to queue"
49
50
  }
50
51
  },
51
52
  "returns": {
52
53
  "type": "Array",
54
+ "tsType": "File",
53
55
  "desc": "Filtered files to be added to queue"
54
56
  },
55
57
  "examples": [ "files => files.filter(file => file.size === 1024)" ],
@@ -86,7 +88,8 @@
86
88
  "params": {
87
89
  "files": {
88
90
  "type": [ "Array", "FileList" ],
89
- "desc": "Array of files (instances of File)",
91
+ "tsType": "QUseFileAddInput",
92
+ "desc": "Array of files (instances of File) or FileList",
90
93
  "required": true
91
94
  }
92
95
  },
@@ -26,7 +26,7 @@ export default function () {
26
26
  removeTimeout,
27
27
 
28
28
  registerTimeout (fn, delay) {
29
- removeTimeout(timer)
29
+ removeTimeout()
30
30
 
31
31
  if (vmIsDestroyed(vm) === false) {
32
32
  timer = setTimeout(() => {
@@ -27,12 +27,12 @@
27
27
 
28
28
  .readonly
29
29
  cursor: default !important
30
- .disabled, [disabled]:not([disabled=false])
30
+ .disabled, [disabled]
31
31
  &,
32
32
  *
33
33
  outline: 0 !important
34
34
  cursor: not-allowed !important
35
- .disabled, [disabled]:not([disabled=false])
35
+ .disabled, [disabled]
36
36
  opacity: .6 !important
37
37
 
38
38
  .hidden
@@ -6,6 +6,15 @@
6
6
  // but they are useful only for Quasar CLI projects
7
7
  // They are typed via module augmentation by `@quasar/app-webpack` / `@quasar/app-vite`
8
8
 
9
+ /*******************************************************
10
+ * Warning!
11
+ * All these are deprecated starting with
12
+ * @quasar/app-vite v2
13
+ * @quasar/app-webpack v4
14
+ *
15
+ * Use the new wrappers from #q-app/wrappers
16
+ *******************************************************/
17
+
9
18
  module.exports.boot = function (callback) {
10
19
  return callback
11
20
  }
@@ -30,18 +39,6 @@ module.exports.store = function (callback) {
30
39
  return callback
31
40
  }
32
41
 
33
- module.exports.bexBackground = function (callback) {
34
- return callback
35
- }
36
-
37
- module.exports.bexContent = function (callback) {
38
- return callback
39
- }
40
-
41
- module.exports.bexDom = function (callback) {
42
- return callback
43
- }
44
-
45
42
  /**
46
43
  * Below only for @quasar/app-webpack v3
47
44
  */
@@ -73,3 +70,19 @@ module.exports.ssrServeStaticContent = function (callback) {
73
70
  module.exports.ssrRenderPreloadTag = function (callback) {
74
71
  return callback
75
72
  }
73
+
74
+ /**
75
+ * Below only for legacy @quasar/app-vite v1 & @quasar/app-webpack v3
76
+ */
77
+
78
+ module.exports.bexBackground = function (callback) {
79
+ return callback
80
+ }
81
+
82
+ module.exports.bexContent = function (callback) {
83
+ return callback
84
+ }
85
+
86
+ module.exports.bexDom = function (callback) {
87
+ return callback
88
+ }
package/wrappers/index.js CHANGED
@@ -6,6 +6,15 @@
6
6
  // but they are useful only for Quasar CLI projects
7
7
  // They are typed via module augmentation by `@quasar/app-webpack` / `@quasar/app-vite`
8
8
 
9
+ /*******************************************************
10
+ * Warning!
11
+ * All these are deprecated starting with
12
+ * @quasar/app-vite v2
13
+ * @quasar/app-webpack v4
14
+ *
15
+ * Use the new wrappers from #q-app/wrappers
16
+ *******************************************************/
17
+
9
18
  export function boot (callback) {
10
19
  return callback
11
20
  }
@@ -30,18 +39,6 @@ export function ssrMiddleware (callback) {
30
39
  return callback
31
40
  }
32
41
 
33
- export function bexBackground (callback) {
34
- return callback
35
- }
36
-
37
- export function bexContent (callback) {
38
- return callback
39
- }
40
-
41
- export function bexDom (callback) {
42
- return callback
43
- }
44
-
45
42
  /**
46
43
  * Below only for @quasar/app-webpack v3
47
44
  */
@@ -51,7 +48,7 @@ export function ssrProductionExport (callback) {
51
48
  }
52
49
 
53
50
  /**
54
- * Below only for @quasar/app-vite & @quasar/app-webpack v4+
51
+ * Below only for @quasar/app-vite v1
55
52
  */
56
53
 
57
54
  export function ssrCreate (callback) {
@@ -73,3 +70,19 @@ export function ssrServeStaticContent (callback) {
73
70
  export function ssrRenderPreloadTag (callback) {
74
71
  return callback
75
72
  }
73
+
74
+ /**
75
+ * Below only for legacy @quasar/app-vite v1 & @quasar/app-webpack v3
76
+ */
77
+
78
+ export function bexBackground (callback) {
79
+ return callback
80
+ }
81
+
82
+ export function bexContent (callback) {
83
+ return callback
84
+ }
85
+
86
+ export function bexDom (callback) {
87
+ return callback
88
+ }