quasar 1.15.22 → 1.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/icon-set/bootstrap-icons.umd.min.js +1 -1
  2. package/dist/icon-set/eva-icons.umd.min.js +1 -1
  3. package/dist/icon-set/fontawesome-v5-pro.umd.min.js +1 -1
  4. package/dist/icon-set/fontawesome-v5.umd.min.js +1 -1
  5. package/dist/icon-set/ionicons-v4.umd.min.js +1 -1
  6. package/dist/icon-set/line-awesome.umd.min.js +1 -1
  7. package/dist/icon-set/material-icons-outlined.umd.min.js +1 -1
  8. package/dist/icon-set/material-icons-round.umd.min.js +1 -1
  9. package/dist/icon-set/material-icons-sharp.umd.min.js +1 -1
  10. package/dist/icon-set/material-icons.umd.min.js +1 -1
  11. package/dist/icon-set/mdi-v3.umd.min.js +1 -1
  12. package/dist/icon-set/mdi-v4.umd.min.js +1 -1
  13. package/dist/icon-set/mdi-v5.umd.min.js +1 -1
  14. package/dist/icon-set/mdi-v6.umd.min.js +6 -0
  15. package/dist/icon-set/svg-bootstrap-icons.umd.min.js +1 -1
  16. package/dist/icon-set/svg-eva-icons.umd.min.js +1 -1
  17. package/dist/icon-set/svg-fontawesome-v5.umd.min.js +1 -1
  18. package/dist/icon-set/svg-ionicons-v4.umd.min.js +1 -1
  19. package/dist/icon-set/svg-ionicons-v5.umd.min.js +1 -1
  20. package/dist/icon-set/svg-line-awesome.umd.min.js +1 -1
  21. package/dist/icon-set/svg-material-icons-outlined.umd.min.js +2 -2
  22. package/dist/icon-set/svg-material-icons-round.umd.min.js +2 -2
  23. package/dist/icon-set/svg-material-icons-sharp.umd.min.js +2 -2
  24. package/dist/icon-set/svg-material-icons.umd.min.js +2 -2
  25. package/dist/icon-set/svg-mdi-v4.umd.min.js +1 -1
  26. package/dist/icon-set/svg-mdi-v5.umd.min.js +1 -1
  27. package/dist/icon-set/svg-mdi-v6.umd.min.js +6 -0
  28. package/dist/icon-set/svg-themify.umd.min.js +1 -1
  29. package/dist/icon-set/themify.umd.min.js +1 -1
  30. package/dist/lang/ar.umd.min.js +1 -1
  31. package/dist/lang/az-latn.umd.min.js +1 -1
  32. package/dist/lang/bg.umd.min.js +1 -1
  33. package/dist/lang/ca.umd.min.js +1 -1
  34. package/dist/lang/cs.umd.min.js +1 -1
  35. package/dist/lang/da.umd.min.js +1 -1
  36. package/dist/lang/de.umd.min.js +2 -2
  37. package/dist/lang/el.umd.min.js +1 -1
  38. package/dist/lang/en-gb.umd.min.js +1 -1
  39. package/dist/lang/en-us.umd.min.js +1 -1
  40. package/dist/lang/eo.umd.min.js +1 -1
  41. package/dist/lang/es.umd.min.js +1 -1
  42. package/dist/lang/et.umd.min.js +1 -1
  43. package/dist/lang/fa-ir.umd.min.js +1 -1
  44. package/dist/lang/fa.umd.min.js +1 -1
  45. package/dist/lang/fi.umd.min.js +1 -1
  46. package/dist/lang/fr.umd.min.js +1 -1
  47. package/dist/lang/gn.umd.min.js +1 -1
  48. package/dist/lang/he.umd.min.js +1 -1
  49. package/dist/lang/hr.umd.min.js +1 -1
  50. package/dist/lang/hu.umd.min.js +1 -1
  51. package/dist/lang/id.umd.min.js +1 -1
  52. package/dist/lang/is.umd.min.js +1 -1
  53. package/dist/lang/it.umd.min.js +1 -1
  54. package/dist/lang/ja.umd.min.js +1 -1
  55. package/dist/lang/km.umd.min.js +1 -1
  56. package/dist/lang/ko-kr.umd.min.js +1 -1
  57. package/dist/lang/kur-ckb.umd.min.js +1 -1
  58. package/dist/lang/lu.umd.min.js +1 -1
  59. package/dist/lang/lv.umd.min.js +1 -1
  60. package/dist/lang/ml.umd.min.js +1 -1
  61. package/dist/lang/ms.umd.min.js +1 -1
  62. package/dist/lang/nb-no.umd.min.js +1 -1
  63. package/dist/lang/nl.umd.min.js +1 -1
  64. package/dist/lang/pl.umd.min.js +1 -1
  65. package/dist/lang/pt-br.umd.min.js +1 -1
  66. package/dist/lang/pt.umd.min.js +1 -1
  67. package/dist/lang/ro.umd.min.js +1 -1
  68. package/dist/lang/ru.umd.min.js +1 -1
  69. package/dist/lang/sk.umd.min.js +1 -1
  70. package/dist/lang/sl.umd.min.js +1 -1
  71. package/dist/lang/sr.umd.min.js +1 -1
  72. package/dist/lang/sv.umd.min.js +1 -1
  73. package/dist/lang/ta.umd.min.js +1 -1
  74. package/dist/lang/th.umd.min.js +1 -1
  75. package/dist/lang/tr.umd.min.js +1 -1
  76. package/dist/lang/ug.umd.min.js +1 -1
  77. package/dist/lang/uk.umd.min.js +1 -1
  78. package/dist/lang/vi.umd.min.js +1 -1
  79. package/dist/lang/zh-hans.umd.min.js +1 -1
  80. package/dist/lang/zh-hant.umd.min.js +1 -1
  81. package/dist/quasar.addon.css +1 -1
  82. package/dist/quasar.addon.rtl.css +1 -1
  83. package/dist/quasar.common.js +2 -2
  84. package/dist/quasar.css +17 -17
  85. package/dist/quasar.esm.js +2 -2
  86. package/dist/quasar.ie.polyfills.js +1 -1
  87. package/dist/quasar.ie.polyfills.umd.min.js +1 -1
  88. package/dist/quasar.min.css +1 -1
  89. package/dist/quasar.rtl.css +26 -26
  90. package/dist/quasar.rtl.min.css +1 -1
  91. package/dist/quasar.sass +15 -12
  92. package/dist/quasar.styl +15 -14
  93. package/dist/quasar.umd.js +61 -16
  94. package/dist/quasar.umd.min.js +2 -2
  95. package/dist/quasar.umd.modern.js +60 -13
  96. package/dist/quasar.umd.modern.min.js +2 -2
  97. package/dist/types/extras/icon-set.d.ts +2 -0
  98. package/dist/web-types/web-types.json +1 -1
  99. package/icon-set/bootstrap-icons.js +1 -1
  100. package/icon-set/eva-icons.js +1 -1
  101. package/icon-set/ionicons-v4.js +1 -1
  102. package/icon-set/mdi-v6.js +141 -0
  103. package/icon-set/svg-bootstrap-icons.js +1 -1
  104. package/icon-set/svg-eva-icons.js +1 -1
  105. package/icon-set/svg-ionicons-v4.js +1 -1
  106. package/icon-set/svg-ionicons-v5.js +1 -1
  107. package/icon-set/svg-mdi-v5.js +1 -1
  108. package/icon-set/svg-mdi-v6.js +225 -0
  109. package/icon-set/svg-themify.js +1 -1
  110. package/icon-set/themify.js +1 -1
  111. package/lang/de.js +1 -1
  112. package/package.json +2 -2
  113. package/src/components/checkbox/QCheckbox.sass +1 -0
  114. package/src/components/checkbox/QCheckbox.styl +1 -0
  115. package/src/components/expansion-item/QExpansionItem.js +1 -1
  116. package/src/components/fab/QFab.js +10 -2
  117. package/src/components/fab/QFab.sass +13 -12
  118. package/src/components/fab/QFab.styl +13 -12
  119. package/src/components/field/QField.js +1 -1
  120. package/src/components/popup-edit/QPopupEdit.js +1 -1
  121. package/src/components/radio/QRadio.sass +1 -0
  122. package/src/components/radio/QRadio.styl +1 -0
  123. package/src/components/select/QSelect.js +34 -4
  124. package/src/components/toggle/QToggle.sass +1 -0
  125. package/src/components/toggle/QToggle.styl +1 -0
  126. package/src/css/normalize.styl +0 -7
  127. package/src/mixins/mask.js +5 -1
  128. package/src/mixins/validate.js +5 -0
  129. package/src/utils/slot.js +1 -1
package/dist/quasar.sass CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v1.15.22
2
+ * Quasar Framework v1.16.2
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -1312,6 +1312,7 @@ $checkbox-transition: .22s cubic-bezier(0,0,.2,1) 0ms
1312
1312
  border: 2px solid currentColor
1313
1313
  border-radius: 2px
1314
1314
  transition: background $checkbox-transition
1315
+ -webkit-print-color-adjust: exact
1315
1316
  &__native
1316
1317
  width: 1px
1317
1318
  height: 1px
@@ -2094,17 +2095,6 @@ body.q-ios-padding .q-dialog__inner
2094
2095
  border-radius: $button-rounded-border-radius
2095
2096
  &--form-square
2096
2097
  border-radius: $generic-border-radius
2097
- &--opened
2098
- .q-fab__actions
2099
- opacity: 1
2100
- transform: scale(1) translate(0, 0)
2101
- pointer-events: all
2102
- .q-fab__icon
2103
- transform: rotate(180deg)
2104
- opacity: 0
2105
- .q-fab__active-icon
2106
- transform: rotate(0deg)
2107
- opacity: 1
2108
2098
  &__icon, &__active-icon
2109
2099
  transition: opacity .4s, transform .4s
2110
2100
  &__icon
@@ -2161,6 +2151,13 @@ body.q-ios-padding .q-dialog__inner
2161
2151
  min-width: 24px
2162
2152
  min-height: 24px
2163
2153
  position: relative
2154
+ &--opened
2155
+ .q-fab__icon
2156
+ transform: rotate(180deg)
2157
+ opacity: 0
2158
+ .q-fab__active-icon
2159
+ transform: rotate(0deg)
2160
+ opacity: 1
2164
2161
  &__actions
2165
2162
  position: absolute
2166
2163
  opacity: 0
@@ -2202,6 +2199,10 @@ body.q-ios-padding .q-dialog__inner
2202
2199
  &--up, &--down
2203
2200
  left: 50%
2204
2201
  margin-left: -28px
2202
+ &--opened
2203
+ opacity: 1
2204
+ transform: scale(1) translate(0, 0)
2205
+ pointer-events: all
2205
2206
  &--align-left
2206
2207
  > .q-fab__actions
2207
2208
  &--up, &--down
@@ -3132,6 +3133,7 @@ $radio-transition: .22s cubic-bezier(0,0,.2,1) 0ms
3132
3133
  left: 25%
3133
3134
  width: 50%
3134
3135
  height: 50%
3136
+ -webkit-print-color-adjust: exact
3135
3137
  path
3136
3138
  fill: currentColor
3137
3139
  &__native
@@ -4710,6 +4712,7 @@ $toggle-transition: .22s cubic-bezier(.4,0,.2,1)
4710
4712
  min-width: 1.4em
4711
4713
  height: 1em
4712
4714
  padding: .325em .3em
4715
+ -webkit-print-color-adjust: exact
4713
4716
  &--indet
4714
4717
  .q-toggle__thumb
4715
4718
  left: .45em
package/dist/quasar.styl CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v1.15.22
2
+ * Quasar Framework v1.16.2
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -689,8 +689,6 @@ progress
689
689
  vertical-align: baseline
690
690
  textarea
691
691
  overflow: auto
692
- input[type='search']
693
- -webkit-appearance: textfield
694
692
  input[type='search']::-webkit-search-cancel-button,
695
693
  input[type='search']::-webkit-search-decoration
696
694
  -webkit-appearance: none
@@ -1358,6 +1356,7 @@ $checkbox-transition = .22s cubic-bezier(0,0,.2,1) 0ms
1358
1356
  border: 2px solid currentColor
1359
1357
  border-radius: 2px
1360
1358
  transition: background $checkbox-transition
1359
+ -webkit-print-color-adjust: exact
1361
1360
  &__native
1362
1361
  width: 1px
1363
1362
  height: 1px
@@ -2141,17 +2140,6 @@ body.q-ios-padding .q-dialog__inner
2141
2140
  border-radius: $button-rounded-border-radius
2142
2141
  &--form-square
2143
2142
  border-radius: $generic-border-radius
2144
- &--opened
2145
- .q-fab__actions
2146
- opacity: 1
2147
- transform: scale(1) translate(0, 0)
2148
- pointer-events: all
2149
- .q-fab__icon
2150
- transform: rotate(180deg)
2151
- opacity: 0
2152
- .q-fab__active-icon
2153
- transform: rotate(0deg)
2154
- opacity: 1
2155
2143
  &__icon, &__active-icon
2156
2144
  transition: opacity .4s, transform .4s
2157
2145
  &__icon
@@ -2208,6 +2196,13 @@ body.q-ios-padding .q-dialog__inner
2208
2196
  min-width: 24px
2209
2197
  min-height: 24px
2210
2198
  position: relative
2199
+ &--opened
2200
+ .q-fab__icon
2201
+ transform: rotate(180deg)
2202
+ opacity: 0
2203
+ .q-fab__active-icon
2204
+ transform: rotate(0deg)
2205
+ opacity: 1
2211
2206
  &__actions
2212
2207
  position: absolute
2213
2208
  opacity: 0
@@ -2249,6 +2244,10 @@ body.q-ios-padding .q-dialog__inner
2249
2244
  &--up, &--down
2250
2245
  left: 50%
2251
2246
  margin-left: -28px
2247
+ &--opened
2248
+ opacity: 1
2249
+ transform: scale(1) translate(0, 0)
2250
+ pointer-events: all
2252
2251
  &--align-left
2253
2252
  > .q-fab__actions
2254
2253
  &--up, &--down
@@ -3179,6 +3178,7 @@ $radio-transition = .22s cubic-bezier(0,0,.2,1) 0ms
3179
3178
  left: 25%
3180
3179
  width: 50%
3181
3180
  height: 50%
3181
+ -webkit-print-color-adjust: exact
3182
3182
  path
3183
3183
  fill: currentColor
3184
3184
  &__native
@@ -4757,6 +4757,7 @@ $toggle-transition = .22s cubic-bezier(.4,0,.2,1)
4757
4757
  min-width: 1.4em
4758
4758
  height: 1em
4759
4759
  padding: .325em .3em
4760
+ -webkit-print-color-adjust: exact
4760
4761
  &--indet
4761
4762
  .q-toggle__thumb
4762
4763
  left: .45em
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v1.15.22
2
+ * Quasar Framework v1.16.2
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -12,7 +12,7 @@
12
12
 
13
13
  Vue = Vue && Object.prototype.hasOwnProperty.call(Vue, 'default') ? Vue['default'] : Vue;
14
14
 
15
- var version = "1.15.22";
15
+ var version = "1.16.2";
16
16
 
17
17
  /* eslint-disable no-useless-escape */
18
18
 
@@ -2304,7 +2304,7 @@
2304
2304
 
2305
2305
  function uniqueSlot (vm, slotName, otherwise) {
2306
2306
  return vm.$scopedSlots[slotName] !== void 0
2307
- ? vm.$scopedSlots[slotName]().slice()
2307
+ ? [].concat(vm.$scopedSlots[slotName]())
2308
2308
  : otherwise
2309
2309
  }
2310
2310
 
@@ -16856,7 +16856,7 @@
16856
16856
  var child;
16857
16857
 
16858
16858
  if (this.$scopedSlots.header !== void 0) {
16859
- child = this.$scopedSlots.header().slice();
16859
+ child = [].concat(this.$scopedSlots.header());
16860
16860
  }
16861
16861
  else {
16862
16862
  child = [
@@ -17121,6 +17121,14 @@
17121
17121
  (this.showing === true ? ' q-fab--opened' : '')
17122
17122
  },
17123
17123
 
17124
+ actionsClasses: function actionsClasses () {
17125
+ return "q-fab__actions--" + (this.direction) + (this.showing === true ? ' q-fab__actions--opened' : '')
17126
+ },
17127
+
17128
+ iconHolderClasses: function iconHolderClasses () {
17129
+ return this.showing === true ? 'q-fab__icon-holder--opened' : ''
17130
+ },
17131
+
17124
17132
  attrs: function attrs () {
17125
17133
  return Object.assign({}, {'aria-expanded': this.showing === true ? 'true' : 'false',
17126
17134
  'aria-haspopup': 'true'},
@@ -17142,7 +17150,7 @@
17142
17150
  var child = [];
17143
17151
 
17144
17152
  this.hideIcon !== true && child.push(
17145
- h('div', { staticClass: 'q-fab__icon-holder' }, [
17153
+ h('div', { staticClass: 'q-fab__icon-holder', class: this.iconHolderClasses }, [
17146
17154
  h(QIcon, {
17147
17155
  staticClass: 'q-fab__icon absolute-full',
17148
17156
  props: { name: this.icon || this.$q.iconSet.fab.icon }
@@ -17182,7 +17190,7 @@
17182
17190
 
17183
17191
  h('div', {
17184
17192
  staticClass: 'q-fab__actions flex no-wrap inline',
17185
- class: ("q-fab__actions--" + (this.direction))
17193
+ class: this.actionsClasses
17186
17194
  }, slot(this, 'default'))
17187
17195
  ])
17188
17196
  }
@@ -17347,6 +17355,11 @@
17347
17355
  this.validate();
17348
17356
  }
17349
17357
  }
17358
+ },
17359
+
17360
+ hasError: function hasError (invalid) {
17361
+ var targetEl = document.getElementById(this.targetUid);
17362
+ targetEl !== null && targetEl.setAttribute('aria-invalid', invalid === true);
17350
17363
  }
17351
17364
  },
17352
17365
 
@@ -17925,7 +17938,7 @@
17925
17938
 
17926
17939
  if (this.hasError === true) {
17927
17940
  if (this.computedErrorMessage !== void 0) {
17928
- msg = [ h('div', [ this.computedErrorMessage ]) ];
17941
+ msg = [ h('div', { attrs: { role: 'alert' } }, [ this.computedErrorMessage ]) ];
17929
17942
  key = this.computedErrorMessage;
17930
17943
  }
17931
17944
  else {
@@ -19836,6 +19849,10 @@
19836
19849
  this.__updateMaskInternals();
19837
19850
  },
19838
19851
 
19852
+ autogrow: function autogrow () {
19853
+ this.__updateMaskInternals();
19854
+ },
19855
+
19839
19856
  mask: function mask (v) {
19840
19857
  if (v !== void 0) {
19841
19858
  this.__updateMaskValue(this.innerValue, true);
@@ -19902,7 +19919,7 @@
19902
19919
 
19903
19920
  this.hasMask = this.mask !== void 0 &&
19904
19921
  this.mask.length > 0 &&
19905
- this.isTypeText === true;
19922
+ (this.autogrow === true || ['textarea', 'text', 'search', 'url', 'tel', 'password'].includes(this.type));
19906
19923
 
19907
19924
  if (this.hasMask === false) {
19908
19925
  this.computedUnmask = void 0;
@@ -23013,7 +23030,7 @@
23013
23030
  title = slot(this, 'title', this.title),
23014
23031
  child = this.$scopedSlots.default === void 0
23015
23032
  ? []
23016
- : this.$scopedSlots.default(this.defaultSlotScope).slice();
23033
+ : [].concat(this.$scopedSlots.default(this.defaultSlotScope));
23017
23034
 
23018
23035
  title && child.unshift(
23019
23036
  h('div', { staticClass: 'q-dialog__title q-mt-sm q-mb-sm' }, [ title ])
@@ -25629,8 +25646,15 @@
25629
25646
  dark: this$1.isOptionsDark
25630
25647
  };
25631
25648
 
25649
+ var itemAttrs = {
25650
+ role: 'option',
25651
+ id: ((this$1.targetUid) + "_" + index)
25652
+ };
25653
+
25632
25654
  if (disable !== true) {
25633
25655
  this$1.isOptionSelected(opt) === true && (itemProps.active = true);
25656
+ itemAttrs['aria-selected'] = itemProps.active === true ? 'true' : 'false';
25657
+
25634
25658
  this$1.optionIndex === index && (itemProps.focused = true);
25635
25659
  }
25636
25660
 
@@ -25650,7 +25674,8 @@
25650
25674
  focused: itemProps.focused,
25651
25675
  toggleOption: this$1.toggleOption,
25652
25676
  setOptionIndex: this$1.setOptionIndex,
25653
- itemProps: itemProps
25677
+ itemProps: itemProps,
25678
+ itemAttrs: itemAttrs
25654
25679
  };
25655
25680
 
25656
25681
  if (options[i] === void 0 || isDeepEqual(option, options[i]) !== true) {
@@ -25735,6 +25760,23 @@
25735
25760
  return this.virtualScrollItemSize === void 0
25736
25761
  ? (this.dense === true ? 24 : 48)
25737
25762
  : this.virtualScrollItemSize
25763
+ },
25764
+
25765
+ comboboxAttrs: function comboboxAttrs () {
25766
+ return {
25767
+ role: 'combobox',
25768
+ 'aria-multiselectable': this.multiple === true ? 'true' : 'false',
25769
+ 'aria-expanded': this.menu === true ? 'true' : 'false',
25770
+ 'aria-owns': ((this.targetUid) + "_lb"),
25771
+ 'aria-activedescendant': ((this.targetUid) + "_" + (this.optionIndex))
25772
+ }
25773
+ },
25774
+
25775
+ listboxAttrs: function listboxAttrs () {
25776
+ return {
25777
+ role: 'listbox',
25778
+ id: ((this.targetUid) + "_lb")
25779
+ }
25738
25780
  }
25739
25781
  },
25740
25782
 
@@ -26228,7 +26270,7 @@
26228
26270
  }
26229
26271
 
26230
26272
  if (this.$scopedSlots.selected !== void 0) {
26231
- return this.$scopedSlots.selected().slice()
26273
+ return [].concat(this.$scopedSlots.selected())
26232
26274
  }
26233
26275
 
26234
26276
  if (this.useChips === true) {
@@ -26278,10 +26320,9 @@
26278
26320
  ref: 'target',
26279
26321
  key: 'd_t',
26280
26322
  staticClass: 'no-outline',
26281
- attrs: {
26282
- id: this.targetUid,
26283
- tabindex: this.tabindex
26284
- },
26323
+ attrs: Object.assign({}, {id: this.targetUid,
26324
+ tabindex: this.tabindex},
26325
+ this.comboboxAttrs),
26285
26326
  on: cache(this, 'f-tget', {
26286
26327
  keydown: this.__onTargetKeydown,
26287
26328
  keyup: this.__onTargetKeyup,
@@ -26345,6 +26386,7 @@
26345
26386
  return h(QItem, {
26346
26387
  key: scope.index,
26347
26388
  props: scope.itemProps,
26389
+ attrs: scope.itemAttrs,
26348
26390
  on: scope.itemEvents
26349
26391
  }, [
26350
26392
  h(QItemSection, [
@@ -26400,7 +26442,8 @@
26400
26442
  autocomplete: this.autocomplete,
26401
26443
  'data-autofocus': fromDialog === true ? false : this.autofocus,
26402
26444
  disabled: this.disable === true,
26403
- readonly: this.readonly === true}),
26445
+ readonly: this.readonly === true},
26446
+ this.comboboxAttrs),
26404
26447
  on: this.inputControlEvents
26405
26448
  };
26406
26449
 
@@ -26616,6 +26659,7 @@
26616
26659
  transitionHide: this.transitionHide,
26617
26660
  separateClosePopup: true
26618
26661
  },
26662
+ attrs: this.listboxAttrs,
26619
26663
  on: cache(this, 'menu', {
26620
26664
  '&scroll': this.__onVirtualScrollEvt,
26621
26665
  'before-hide': this.__closeMenu,
@@ -26674,6 +26718,7 @@
26674
26718
  staticClass: 'scroll',
26675
26719
  class: this.menuContentClass,
26676
26720
  style: this.popupContentStyle,
26721
+ attrs: this.listboxAttrs,
26677
26722
  on: cache(this, 'virtMenu', {
26678
26723
  click: prevent,
26679
26724
  '&scroll': this.__onVirtualScrollEvt