quasar 2.6.6 → 2.7.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 (182) hide show
  1. package/dist/api/QBtnDropdown.json +1 -0
  2. package/dist/api/QBtnToggle.json +1 -0
  3. package/dist/api/QCarousel.json +2 -1
  4. package/dist/api/QCheckbox.json +1 -0
  5. package/dist/api/QChip.json +3 -1
  6. package/dist/api/QColor.json +1 -0
  7. package/dist/api/QDate.json +1 -0
  8. package/dist/api/QEditor.json +3 -1
  9. package/dist/api/QExpansionItem.json +1 -0
  10. package/dist/api/QFab.json +1 -0
  11. package/dist/api/QFile.json +1 -0
  12. package/dist/api/QFooter.json +1 -0
  13. package/dist/api/QHeader.json +1 -0
  14. package/dist/api/QInput.json +1 -0
  15. package/dist/api/QItem.json +3 -1
  16. package/dist/api/QKnob.json +1 -0
  17. package/dist/api/QOptionGroup.json +1 -0
  18. package/dist/api/QPagination.json +1 -0
  19. package/dist/api/QPopupEdit.json +1 -0
  20. package/dist/api/QPopupProxy.json +1 -0
  21. package/dist/api/QRadio.json +1 -0
  22. package/dist/api/QRange.json +1 -0
  23. package/dist/api/QRating.json +1 -0
  24. package/dist/api/QSelect.json +1 -0
  25. package/dist/api/QSlider.json +1 -0
  26. package/dist/api/QSplitter.json +1 -0
  27. package/dist/api/QTable.json +5 -1
  28. package/dist/api/QTabs.json +1 -0
  29. package/dist/api/QTime.json +1 -0
  30. package/dist/api/QToggle.json +1 -0
  31. package/dist/api/QTree.json +6 -3
  32. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  33. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  34. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  35. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  36. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  37. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  38. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  39. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  40. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  41. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  42. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  43. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  44. package/dist/icon-set/material-symbols-outlined.umd.prod.js +6 -0
  45. package/dist/icon-set/material-symbols-rounded.umd.prod.js +6 -0
  46. package/dist/icon-set/material-symbols-sharp.umd.prod.js +6 -0
  47. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  48. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  49. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  50. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  51. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  52. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  53. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  54. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  55. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  56. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  57. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  58. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  59. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  60. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  61. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  62. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  63. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +6 -0
  64. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +6 -0
  65. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +6 -0
  66. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  67. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  68. package/dist/icon-set/themify.umd.prod.js +1 -1
  69. package/dist/lang/ar-TN.umd.prod.js +1 -1
  70. package/dist/lang/ar.umd.prod.js +1 -1
  71. package/dist/lang/az-Latn.umd.prod.js +1 -1
  72. package/dist/lang/bg.umd.prod.js +1 -1
  73. package/dist/lang/bn.umd.prod.js +1 -1
  74. package/dist/lang/ca.umd.prod.js +1 -1
  75. package/dist/lang/cs.umd.prod.js +1 -1
  76. package/dist/lang/da.umd.prod.js +1 -1
  77. package/dist/lang/de.umd.prod.js +1 -1
  78. package/dist/lang/el.umd.prod.js +1 -1
  79. package/dist/lang/en-GB.umd.prod.js +1 -1
  80. package/dist/lang/en-US.umd.prod.js +1 -1
  81. package/dist/lang/eo.umd.prod.js +1 -1
  82. package/dist/lang/es.umd.prod.js +2 -2
  83. package/dist/lang/et.umd.prod.js +1 -1
  84. package/dist/lang/eu.umd.prod.js +1 -1
  85. package/dist/lang/fa-IR.umd.prod.js +1 -1
  86. package/dist/lang/fa.umd.prod.js +1 -1
  87. package/dist/lang/fi.umd.prod.js +1 -1
  88. package/dist/lang/fr.umd.prod.js +1 -1
  89. package/dist/lang/gn.umd.prod.js +1 -1
  90. package/dist/lang/he.umd.prod.js +1 -1
  91. package/dist/lang/hr.umd.prod.js +1 -1
  92. package/dist/lang/hu.umd.prod.js +1 -1
  93. package/dist/lang/id.umd.prod.js +1 -1
  94. package/dist/lang/is.umd.prod.js +1 -1
  95. package/dist/lang/it.umd.prod.js +1 -1
  96. package/dist/lang/ja.umd.prod.js +1 -1
  97. package/dist/lang/km.umd.prod.js +1 -1
  98. package/dist/lang/ko-KR.umd.prod.js +1 -1
  99. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  100. package/dist/lang/kz.umd.prod.js +1 -1
  101. package/dist/lang/lt.umd.prod.js +1 -1
  102. package/dist/lang/lu.umd.prod.js +1 -1
  103. package/dist/lang/lv.umd.prod.js +1 -1
  104. package/dist/lang/ml.umd.prod.js +1 -1
  105. package/dist/lang/mm.umd.prod.js +6 -0
  106. package/dist/lang/ms.umd.prod.js +1 -1
  107. package/dist/lang/my.umd.prod.js +1 -1
  108. package/dist/lang/nb-NO.umd.prod.js +1 -1
  109. package/dist/lang/nl.umd.prod.js +1 -1
  110. package/dist/lang/pl.umd.prod.js +1 -1
  111. package/dist/lang/pt-BR.umd.prod.js +1 -1
  112. package/dist/lang/pt.umd.prod.js +1 -1
  113. package/dist/lang/ro.umd.prod.js +1 -1
  114. package/dist/lang/ru.umd.prod.js +1 -1
  115. package/dist/lang/sk.umd.prod.js +1 -1
  116. package/dist/lang/sl.umd.prod.js +1 -1
  117. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  118. package/dist/lang/sr.umd.prod.js +1 -1
  119. package/dist/lang/sv.umd.prod.js +1 -1
  120. package/dist/lang/ta.umd.prod.js +1 -1
  121. package/dist/lang/th.umd.prod.js +1 -1
  122. package/dist/lang/tr.umd.prod.js +1 -1
  123. package/dist/lang/ug.umd.prod.js +1 -1
  124. package/dist/lang/uk.umd.prod.js +1 -1
  125. package/dist/lang/vi.umd.prod.js +1 -1
  126. package/dist/lang/zh-CN.umd.prod.js +1 -1
  127. package/dist/lang/zh-TW.umd.prod.js +1 -1
  128. package/dist/quasar.addon.rtl.css +251 -0
  129. package/dist/quasar.cjs.prod.js +2 -2
  130. package/dist/quasar.css +4 -1
  131. package/dist/quasar.esm.prod.js +2 -2
  132. package/dist/quasar.prod.css +1 -1
  133. package/dist/quasar.rtl.css +1225 -1
  134. package/dist/quasar.rtl.prod.css +1 -1
  135. package/dist/quasar.sass +5 -2
  136. package/dist/quasar.umd.js +88 -65
  137. package/dist/quasar.umd.prod.js +2 -2
  138. package/dist/types/api/quploader.d.ts +7 -7
  139. package/dist/types/extras/icon-set.d.ts +6 -0
  140. package/dist/types/index.d.ts +259 -254
  141. package/dist/types/utils/dom.d.ts +1 -1
  142. package/dist/types/utils.d.ts +11 -0
  143. package/dist/web-types/web-types.json +1 -1
  144. package/icon-set/material-symbols-outlined.js +133 -0
  145. package/icon-set/material-symbols-outlined.mjs +128 -0
  146. package/icon-set/material-symbols-rounded.js +133 -0
  147. package/icon-set/material-symbols-rounded.mjs +128 -0
  148. package/icon-set/material-symbols-sharp.js +133 -0
  149. package/icon-set/material-symbols-sharp.mjs +128 -0
  150. package/icon-set/svg-material-symbols-outlined.js +201 -0
  151. package/icon-set/svg-material-symbols-outlined.mjs +201 -0
  152. package/icon-set/svg-material-symbols-rounded.js +201 -0
  153. package/icon-set/svg-material-symbols-rounded.mjs +201 -0
  154. package/icon-set/svg-material-symbols-sharp.js +201 -0
  155. package/icon-set/svg-material-symbols-sharp.mjs +201 -0
  156. package/lang/es.js +1 -1
  157. package/lang/es.mjs +1 -1
  158. package/lang/index.json +4 -0
  159. package/lang/mm.js +96 -0
  160. package/lang/mm.mjs +91 -0
  161. package/package.json +4 -5
  162. package/src/api.extends.json +1 -0
  163. package/src/components/avatar/__tests__/QAvatar.spec.js +1 -1
  164. package/src/components/badge/__tests__/QBadge.spec.js +1 -1
  165. package/src/components/btn/QBtn.js +2 -2
  166. package/src/components/editor/QEditor.js +11 -25
  167. package/src/components/icon/QIcon.js +24 -1
  168. package/src/components/icon/QIcon.sass +4 -1
  169. package/src/components/infinite-scroll/QInfiniteScroll.js +10 -10
  170. package/src/components/input/QInput.js +5 -0
  171. package/src/components/item/QItem.js +5 -2
  172. package/src/components/item/QItem.json +2 -1
  173. package/src/components/layout/QLayout.js +2 -1
  174. package/src/components/select/QSelect.js +1 -1
  175. package/src/components/slider/use-slider.js +1 -1
  176. package/src/components/table/QTable.json +3 -0
  177. package/src/components/uploader/uploader-core.js +22 -18
  178. package/src/components/virtual-scroll/use-virtual-scroll.js +3 -3
  179. package/src/composables/private/__tests__/use-model-toggle.spec.js +2 -2
  180. package/src/composables/private/__tests__/use-size.spec.js +2 -2
  181. package/src/composables/private/__tests__/use-validate.spec.js +1 -1
  182. package/src/composables/private/use-field.js +1 -0
@@ -20,7 +20,10 @@ export default createComponent({
20
20
  default: 'div'
21
21
  },
22
22
 
23
- active: Boolean,
23
+ active: {
24
+ type: Boolean,
25
+ default: null
26
+ },
24
27
 
25
28
  clickable: Boolean,
26
29
  dense: Boolean,
@@ -58,7 +61,7 @@ export default createComponent({
58
61
  + (props.dense === true ? ' q-item--dense' : '')
59
62
  + (isDark.value === true ? ' q-item--dark' : '')
60
63
  + (
61
- hasLink.value === true
64
+ hasLink.value === true && props.active === null
62
65
  ? linkClass.value
63
66
  : (
64
67
  props.active === true
@@ -9,7 +9,8 @@
9
9
  "active": {
10
10
  "type": "Boolean",
11
11
  "desc": "Put item into 'active' state",
12
- "category": "state"
12
+ "category": "state",
13
+ "default": null
13
14
  },
14
15
 
15
16
  "dark": {
@@ -231,7 +231,8 @@ export default createComponent({
231
231
  const layout = h('div', {
232
232
  class: classes.value,
233
233
  style: style.value,
234
- ref: props.container === true ? void 0 : rootRef
234
+ ref: props.container === true ? void 0 : rootRef,
235
+ tabindex: -1
235
236
  }, content)
236
237
 
237
238
  if (props.container === true) {
@@ -165,7 +165,7 @@ export default createComponent({
165
165
 
166
166
  const virtualScrollItemSizeComputed = computed(() => (
167
167
  props.virtualScrollItemSize === void 0
168
- ? (props.dense === true ? 24 : 48)
168
+ ? (props.optionsDense === true ? 24 : 48)
169
169
  : props.virtualScrollItemSize
170
170
  ))
171
171
 
@@ -129,7 +129,7 @@ export default function ({ updateValue, updatePosition, getDragging, formAttrs }
129
129
  && innerMin.value < innerMax.value
130
130
  ))
131
131
 
132
- const decimals = computed(() => (String(props.step).trim('0').split('.')[ 1 ] || '').length)
132
+ const decimals = computed(() => (String(props.step).trim().split('.')[ 1 ] || '').length)
133
133
  const step = computed(() => (props.step === 0 ? 1 : props.step))
134
134
  const tabindex = computed(() => (editable.value === true ? props.tabindex || 0 : -1))
135
135
 
@@ -676,6 +676,7 @@
676
676
  "examples": [ 100, 200 ]
677
677
  }
678
678
  },
679
+ "syncable": true,
679
680
  "examples": [
680
681
  ":pagination=\"myInitialPagination\"",
681
682
  "v-model:pagination=\"myPagination\""
@@ -706,6 +707,7 @@
706
707
  "type": "Array",
707
708
  "desc": "Keeps the user selection array",
708
709
  "default": "[]",
710
+ "syncable": true,
709
711
  "examples": [
710
712
  "v-model:selected=\"selection\""
711
713
  ],
@@ -716,6 +718,7 @@
716
718
  "type": "Array",
717
719
  "desc": "Keeps the array with expanded rows keys",
718
720
  "default": "[]",
721
+ "syncable": true,
719
722
  "examples": [
720
723
  "v-model:expanded=\"expanded\""
721
724
  ],
@@ -339,28 +339,32 @@ export function getRenderer (getPlugin) {
339
339
 
340
340
  return [
341
341
  h('div', {
342
- class: 'q-uploader__header-content flex flex-center no-wrap q-gutter-xs'
342
+ class: 'q-uploader__header-content column'
343
343
  }, [
344
- getBtn(state.queuedFiles.value.length > 0, 'removeQueue', removeQueuedFiles),
345
- getBtn(state.uploadedFiles.value.length > 0, 'removeUploaded', removeUploadedFiles),
346
-
347
- state.isUploading.value === true
348
- ? h(QSpinner, { class: 'q-uploader__spinner' })
349
- : null,
350
-
351
- h('div', { class: 'col column justify-center' }, [
352
- props.label !== void 0
353
- ? h('div', { class: 'q-uploader__title' }, [ props.label ])
344
+ h('div', {
345
+ class: 'flex flex-center no-wrap q-gutter-xs'
346
+ }, [
347
+ getBtn(state.queuedFiles.value.length > 0, 'removeQueue', removeQueuedFiles),
348
+ getBtn(state.uploadedFiles.value.length > 0, 'removeUploaded', removeUploadedFiles),
349
+
350
+ state.isUploading.value === true
351
+ ? h(QSpinner, { class: 'q-uploader__spinner' })
354
352
  : null,
355
353
 
356
- h('div', { class: 'q-uploader__subtitle' }, [
357
- uploadSizeLabel.value + ' / ' + uploadProgressLabel.value
358
- ])
359
- ]),
354
+ h('div', { class: 'col column justify-center' }, [
355
+ props.label !== void 0
356
+ ? h('div', { class: 'q-uploader__title' }, [ props.label ])
357
+ : null,
358
+
359
+ h('div', { class: 'q-uploader__subtitle' }, [
360
+ uploadSizeLabel.value + ' / ' + uploadProgressLabel.value
361
+ ])
362
+ ]),
360
363
 
361
- getBtn(canAddFiles.value, 'add'),
362
- getBtn(props.hideUploadBtn === false && canUpload.value === true, 'upload', state.upload),
363
- getBtn(state.isUploading.value, 'clear', state.abort)
364
+ getBtn(canAddFiles.value, 'add'),
365
+ getBtn(props.hideUploadBtn === false && canUpload.value === true, 'upload', state.upload),
366
+ getBtn(state.isUploading.value, 'clear', state.abort)
367
+ ])
364
368
  ])
365
369
  ]
366
370
  }
@@ -21,7 +21,7 @@ const setOverflowAnchor = __QUASAR_SSR__ || window.getComputedStyle(document.bod
21
21
  ? noop
22
22
  : function (contentEl, index) {
23
23
  requestAnimationFrame(() => {
24
- if (contentEl === void 0) {
24
+ if (contentEl === null) {
25
25
  return
26
26
  }
27
27
 
@@ -415,7 +415,7 @@ export function useVirtualScroll ({
415
415
  contentEl.addEventListener('focusout', onBlurRefocusFn)
416
416
 
417
417
  setTimeout(() => {
418
- contentEl !== void 0 && contentEl.removeEventListener('focusout', onBlurRefocusFn)
418
+ contentEl !== null && contentEl.removeEventListener('focusout', onBlurRefocusFn)
419
419
  })
420
420
  }
421
421
 
@@ -528,7 +528,7 @@ export function useVirtualScroll ({
528
528
  }
529
529
 
530
530
  function onBlurRefocusFn () {
531
- contentRef.value !== void 0 && contentRef.value.focus()
531
+ contentRef.value !== null && contentRef.value !== void 0 && contentRef.value.focus()
532
532
  }
533
533
 
534
534
  function localResetVirtualScroll (toIndex, fullReset) {
@@ -255,7 +255,7 @@ describe('use-model-toggle API', () => {
255
255
 
256
256
  describe('Methods', () => {
257
257
  describe('(method): show', () => {
258
- it('should tigger the menu to show', () => {
258
+ it('should trigger the menu to show', () => {
259
259
  mount(WrapperOne)
260
260
 
261
261
  cy.dataCy('wrapper')
@@ -267,7 +267,7 @@ describe('use-model-toggle API', () => {
267
267
  })
268
268
 
269
269
  describe('(method): hide', () => {
270
- it('should tigger the menu to hide', () => {
270
+ it('should trigger the menu to hide', () => {
271
271
  mount(WrapperOne)
272
272
 
273
273
  cy.dataCy('wrapper')
@@ -1,6 +1,6 @@
1
- import QAvatar from './../../../components/avatar/QAvatar'
1
+ import QAvatar from './../../../components/avatar/QAvatar.js'
2
2
  import { mount } from '@cypress/vue'
3
- import { useSizeDefaults } from './../use-size'
3
+ import { useSizeDefaults } from './../use-size.js'
4
4
 
5
5
  describe('use-size API', () => {
6
6
  describe('Props', () => {
@@ -1,6 +1,6 @@
1
1
  import { mount } from '@cypress/vue'
2
2
  import FieldWrapper from './FieldWrapper.vue'
3
- import Icons from './../../../../icon-set/material-icons'
3
+ import Icons from './../../../../icon-set/material-icons.mjs'
4
4
 
5
5
  // const snapshotOptions = { customSnapshotsDir: '../__tests__' }
6
6
 
@@ -445,6 +445,7 @@ export default function (state) {
445
445
  h('div', {
446
446
  ref: state.targetRef,
447
447
  class: 'q-field__native row',
448
+ tabindex: -1,
448
449
  ...state.splitAttrs.attributes.value,
449
450
  'data-autofocus': props.autofocus === true || void 0
450
451
  }, slots.control(controlSlotScope.value))