quasar 2.1.9 → 2.2.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 (127) hide show
  1. package/dist/api/QCarousel.json +19 -5
  2. package/dist/api/QColor.json +6 -0
  3. package/dist/api/QInnerLoading.json +32 -0
  4. package/dist/api/QOptionGroup.json +22 -0
  5. package/dist/api/QSkeleton.json +14 -0
  6. package/dist/api/QStepper.json +16 -2
  7. package/dist/api/QTabPanels.json +16 -2
  8. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  9. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  10. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  11. package/dist/icon-set/fontawesome-v5.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/mdi-v3.umd.prod.js +1 -1
  19. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  22. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  23. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  24. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  25. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  36. package/dist/icon-set/themify.umd.prod.js +1 -1
  37. package/dist/lang/ar.umd.prod.js +1 -1
  38. package/dist/lang/az-Latn.umd.prod.js +1 -1
  39. package/dist/lang/bg.umd.prod.js +1 -1
  40. package/dist/lang/bn.umd.prod.js +1 -1
  41. package/dist/lang/ca.umd.prod.js +1 -1
  42. package/dist/lang/cs.umd.prod.js +1 -1
  43. package/dist/lang/da.umd.prod.js +1 -1
  44. package/dist/lang/de.umd.prod.js +1 -1
  45. package/dist/lang/el.umd.prod.js +1 -1
  46. package/dist/lang/en-GB.umd.prod.js +1 -1
  47. package/dist/lang/en-US.umd.prod.js +1 -1
  48. package/dist/lang/eo.umd.prod.js +1 -1
  49. package/dist/lang/es.umd.prod.js +1 -1
  50. package/dist/lang/et.umd.prod.js +1 -1
  51. package/dist/lang/fa-IR.umd.prod.js +1 -1
  52. package/dist/lang/fa.umd.prod.js +1 -1
  53. package/dist/lang/fi.umd.prod.js +1 -1
  54. package/dist/lang/fr.umd.prod.js +1 -1
  55. package/dist/lang/gn.umd.prod.js +1 -1
  56. package/dist/lang/he.umd.prod.js +1 -1
  57. package/dist/lang/hr.umd.prod.js +1 -1
  58. package/dist/lang/hu.umd.prod.js +1 -1
  59. package/dist/lang/id.umd.prod.js +1 -1
  60. package/dist/lang/is.umd.prod.js +1 -1
  61. package/dist/lang/it.umd.prod.js +1 -1
  62. package/dist/lang/ja.umd.prod.js +1 -1
  63. package/dist/lang/km.umd.prod.js +1 -1
  64. package/dist/lang/ko-KR.umd.prod.js +1 -1
  65. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  66. package/dist/lang/lt.umd.prod.js +6 -0
  67. package/dist/lang/lu.umd.prod.js +1 -1
  68. package/dist/lang/lv.umd.prod.js +1 -1
  69. package/dist/lang/ml.umd.prod.js +1 -1
  70. package/dist/lang/ms.umd.prod.js +1 -1
  71. package/dist/lang/nb-NO.umd.prod.js +1 -1
  72. package/dist/lang/nl.umd.prod.js +1 -1
  73. package/dist/lang/pl.umd.prod.js +1 -1
  74. package/dist/lang/pt-BR.umd.prod.js +1 -1
  75. package/dist/lang/pt.umd.prod.js +1 -1
  76. package/dist/lang/ro.umd.prod.js +1 -1
  77. package/dist/lang/ru.umd.prod.js +1 -1
  78. package/dist/lang/sk.umd.prod.js +1 -1
  79. package/dist/lang/sl.umd.prod.js +1 -1
  80. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  81. package/dist/lang/sr.umd.prod.js +1 -1
  82. package/dist/lang/sv.umd.prod.js +1 -1
  83. package/dist/lang/ta.umd.prod.js +1 -1
  84. package/dist/lang/th.umd.prod.js +1 -1
  85. package/dist/lang/tr.umd.prod.js +1 -1
  86. package/dist/lang/ug.umd.prod.js +2 -2
  87. package/dist/lang/uk.umd.prod.js +1 -1
  88. package/dist/lang/vi.umd.prod.js +1 -1
  89. package/dist/lang/zh-CN.umd.prod.js +1 -1
  90. package/dist/lang/zh-TW.umd.prod.js +1 -1
  91. package/dist/quasar.cjs.prod.js +2 -2
  92. package/dist/quasar.css +24 -17
  93. package/dist/quasar.esm.prod.js +2 -2
  94. package/dist/quasar.prod.css +1 -1
  95. package/dist/quasar.rtl.css +29 -22
  96. package/dist/quasar.rtl.prod.css +1 -1
  97. package/dist/quasar.sass +24 -16
  98. package/dist/quasar.umd.js +236 -143
  99. package/dist/quasar.umd.prod.js +2 -2
  100. package/dist/ssr-directives/Morph.js +1 -1
  101. package/dist/types/index.d.ts +57 -4
  102. package/dist/vetur/quasar-attributes.json +33 -1
  103. package/dist/vetur/quasar-tags.json +9 -1
  104. package/dist/web-types/web-types.json +93 -5
  105. package/lang/index.json +4 -0
  106. package/lang/lt.js +103 -0
  107. package/lang/ug.js +42 -42
  108. package/package.json +1 -1
  109. package/src/components/carousel/QCarousel.js +8 -1
  110. package/src/components/carousel/QCarousel.json +9 -1
  111. package/src/components/color/QColor.js +73 -61
  112. package/src/components/color/QColor.json +7 -0
  113. package/src/components/color/QColor.sass +5 -1
  114. package/src/components/dialog/QDialog.js +6 -0
  115. package/src/components/inner-loading/QInnerLoading.js +31 -7
  116. package/src/components/inner-loading/QInnerLoading.json +29 -0
  117. package/src/components/inner-loading/QInnerLoading.sass +4 -0
  118. package/src/components/option-group/QOptionGroup.js +29 -19
  119. package/src/components/option-group/QOptionGroup.json +26 -0
  120. package/src/components/rating/QRating.js +59 -39
  121. package/src/components/rating/QRating.sass +8 -6
  122. package/src/components/skeleton/QSkeleton.js +15 -5
  123. package/src/components/skeleton/QSkeleton.json +9 -0
  124. package/src/components/skeleton/QSkeleton.sass +7 -6
  125. package/src/composables/private/use-panel.js +13 -8
  126. package/src/composables/private/use-panel.json +11 -2
  127. package/src/css/core/transitions.sass +4 -4
@@ -1,4 +1,5 @@
1
1
  .q-skeleton
2
+ --q-skeleton-speed: 1500ms
2
3
  background: $separator-color
3
4
  border-radius: $generic-border-radius
4
5
 
@@ -58,14 +59,14 @@
58
59
  border-radius: 0
59
60
 
60
61
  &--anim-fade
61
- animation: q-skeleton--fade 1.5s linear .5s infinite
62
+ animation: q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite
62
63
 
63
64
  &--anim-pulse
64
- animation: q-skeleton--pulse 1.5s ease-in-out .5s infinite
65
+ animation: q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite
65
66
  &--anim-pulse-x
66
- animation: q-skeleton--pulse-x 1.5s ease-in-out .5s infinite
67
+ animation: q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite
67
68
  &--anim-pulse-y
68
- animation: q-skeleton--pulse-y 1.5s ease-in-out .5s infinite
69
+ animation: q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite
69
70
 
70
71
  &--anim-wave,
71
72
  &--anim-blink,
@@ -84,10 +85,10 @@
84
85
 
85
86
  &--anim-blink:after
86
87
  background: rgba(255,255,255,.7)
87
- animation: q-skeleton--fade 1.5s linear .5s infinite
88
+ animation: q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite
88
89
  &--anim-wave:after
89
90
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.5), rgba(255,255,255,0))
90
- animation: q-skeleton--wave 1.5s linear .5s infinite
91
+ animation: q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite
91
92
 
92
93
  &--dark
93
94
  background: rgba(255, 255, 255, 0.05)
@@ -33,6 +33,10 @@ export const usePanelProps = {
33
33
 
34
34
  transitionPrev: String,
35
35
  transitionNext: String,
36
+ transitionDuration: {
37
+ type: [ String, Number ],
38
+ default: 300
39
+ },
36
40
 
37
41
  keepAlive: Boolean,
38
42
  keepAliveInclude: [ String, Array, RegExp ],
@@ -78,6 +82,10 @@ export default function () {
78
82
  props.transitionNext || `slide-${ props.vertical === true ? 'up' : 'left' }`
79
83
  )
80
84
 
85
+ const transitionStyle = computed(
86
+ () => `--q-transition-duration: ${ props.transitionDuration }ms`
87
+ )
88
+
81
89
  const contentKey = computed(() => (
82
90
  typeof props.modelValue === 'string' || typeof props.modelValue === 'number'
83
91
  ? props.modelValue
@@ -197,7 +205,7 @@ export default function () {
197
205
  }
198
206
 
199
207
  function getPanelContentChild () {
200
- const panel = isValidPanelName(props.modelValue)
208
+ const panel = isValidPanelName(props.modelValue) === true
201
209
  && updatePanelIndex()
202
210
  && panels[ panelIndex.value ]
203
211
 
@@ -208,7 +216,7 @@ export default function () {
208
216
  needsUniqueKeepAliveWrapper.value === true
209
217
  ? getCacheWithFn(contentKey.value, () => ({ ...PanelWrapper, name: contentKey.value }))
210
218
  : PanelWrapper,
211
- { key: contentKey.value },
219
+ { key: contentKey.value, style: transitionStyle.value },
212
220
  () => panel
213
221
  )
214
222
  ])
@@ -216,6 +224,7 @@ export default function () {
216
224
  : [
217
225
  h('div', {
218
226
  class: 'q-panel scroll',
227
+ style: transitionStyle.value,
219
228
  key: contentKey.value,
220
229
  role: 'tabpanel'
221
230
  }, [ panel ])
@@ -228,11 +237,7 @@ export default function () {
228
237
  }
229
238
 
230
239
  return props.animated === true
231
- ? [
232
- h(Transition, {
233
- name: panelTransition.value
234
- }, getPanelContentChild)
235
- ]
240
+ ? [ h(Transition, { name: panelTransition.value }, getPanelContentChild) ]
236
241
  : getPanelContentChild()
237
242
  }
238
243
 
@@ -242,7 +247,7 @@ export default function () {
242
247
  ).filter(
243
248
  panel => panel.props !== null
244
249
  && panel.props.slot === void 0
245
- && isValidPanelName(panel.props.name)
250
+ && isValidPanelName(panel.props.name) === true
246
251
  )
247
252
 
248
253
  return panels.length
@@ -62,14 +62,23 @@
62
62
  "extends": "transition",
63
63
  "desc": "One of Quasar's embedded transitions (has effect only if 'animated' prop is set)",
64
64
  "default": "slide-right/slide-down",
65
- "category": "behavior"
65
+ "category": "transition"
66
66
  },
67
67
 
68
68
  "transition-next": {
69
69
  "extends": "transition",
70
70
  "desc": "One of Quasar's embedded transitions (has effect only if 'animated' prop is set)",
71
71
  "default": "slide-left/slide-up",
72
- "category": "behavior"
72
+ "category": "transition"
73
+ },
74
+
75
+ "transition-duration": {
76
+ "type": [ "String", "Number" ],
77
+ "desc": "Transition duration (in milliseconds, without unit)",
78
+ "default": 300,
79
+ "examples": [ 500, "1200" ],
80
+ "category": "transition",
81
+ "addedIn": "v2.2"
73
82
  }
74
83
  },
75
84
 
@@ -1,9 +1,5 @@
1
1
  // default easing is easeOutCubic
2
2
 
3
- \:root
4
- --q-transition-duration: .3s
5
- --q-transition-easing: cubic-bezier(0.215,0.61,0.355,1)
6
-
7
3
  .q-transition
8
4
  &--slide-right,
9
5
  &--slide-left,
@@ -17,6 +13,10 @@
17
13
  &--scale,
18
14
  &--rotate,
19
15
  &--flip
16
+ &-enter-active,
17
+ &-leave-active
18
+ --q-transition-duration: .3s
19
+ --q-transition-easing: cubic-bezier(0.215,0.61,0.355,1)
20
20
  &-leave-active
21
21
  position: absolute
22
22