quasar 2.1.6 → 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.
- package/dist/api/QCarousel.json +19 -5
- package/dist/api/QColor.json +8 -1
- package/dist/api/QDate.json +2 -1
- package/dist/api/QFile.json +2 -1
- package/dist/api/QInnerLoading.json +32 -0
- package/dist/api/QInput.json +2 -1
- package/dist/api/QOptionGroup.json +22 -0
- package/dist/api/QRadio.json +2 -1
- package/dist/api/QRange.json +5 -1
- package/dist/api/QSelect.json +2 -1
- package/dist/api/QSkeleton.json +14 -0
- package/dist/api/QSlider.json +2 -1
- package/dist/api/QStepper.json +16 -2
- package/dist/api/QTabPanels.json +16 -2
- package/dist/api/QTabs.json +2 -1
- package/dist/api/QTime.json +2 -1
- package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/material-icons.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-themify.umd.prod.js +1 -1
- package/dist/icon-set/themify.umd.prod.js +1 -1
- package/dist/lang/ar.umd.prod.js +1 -1
- package/dist/lang/az-Latn.umd.prod.js +1 -1
- package/dist/lang/bg.umd.prod.js +1 -1
- package/dist/lang/bn.umd.prod.js +1 -1
- package/dist/lang/ca.umd.prod.js +1 -1
- package/dist/lang/cs.umd.prod.js +1 -1
- package/dist/lang/da.umd.prod.js +1 -1
- package/dist/lang/de.umd.prod.js +1 -1
- package/dist/lang/el.umd.prod.js +1 -1
- package/dist/lang/en-GB.umd.prod.js +1 -1
- package/dist/lang/en-US.umd.prod.js +1 -1
- package/dist/lang/eo.umd.prod.js +1 -1
- package/dist/lang/es.umd.prod.js +1 -1
- package/dist/lang/et.umd.prod.js +1 -1
- package/dist/lang/fa-IR.umd.prod.js +1 -1
- package/dist/lang/fa.umd.prod.js +1 -1
- package/dist/lang/fi.umd.prod.js +1 -1
- package/dist/lang/fr.umd.prod.js +1 -1
- package/dist/lang/gn.umd.prod.js +1 -1
- package/dist/lang/he.umd.prod.js +1 -1
- package/dist/lang/hr.umd.prod.js +1 -1
- package/dist/lang/hu.umd.prod.js +1 -1
- package/dist/lang/id.umd.prod.js +1 -1
- package/dist/lang/is.umd.prod.js +1 -1
- package/dist/lang/it.umd.prod.js +1 -1
- package/dist/lang/ja.umd.prod.js +1 -1
- package/dist/lang/km.umd.prod.js +1 -1
- package/dist/lang/ko-KR.umd.prod.js +1 -1
- package/dist/lang/kur-CKB.umd.prod.js +1 -1
- package/dist/lang/lt.umd.prod.js +6 -0
- package/dist/lang/lu.umd.prod.js +1 -1
- package/dist/lang/lv.umd.prod.js +1 -1
- package/dist/lang/ml.umd.prod.js +1 -1
- package/dist/lang/ms.umd.prod.js +1 -1
- package/dist/lang/nb-NO.umd.prod.js +1 -1
- package/dist/lang/nl.umd.prod.js +1 -1
- package/dist/lang/pl.umd.prod.js +1 -1
- package/dist/lang/pt-BR.umd.prod.js +1 -1
- package/dist/lang/pt.umd.prod.js +1 -1
- package/dist/lang/ro.umd.prod.js +1 -1
- package/dist/lang/ru.umd.prod.js +1 -1
- package/dist/lang/sk.umd.prod.js +1 -1
- package/dist/lang/sl.umd.prod.js +1 -1
- package/dist/lang/sr-CYR.umd.prod.js +1 -1
- package/dist/lang/sr.umd.prod.js +1 -1
- package/dist/lang/sv.umd.prod.js +1 -1
- package/dist/lang/ta.umd.prod.js +1 -1
- package/dist/lang/th.umd.prod.js +1 -1
- package/dist/lang/tr.umd.prod.js +1 -1
- package/dist/lang/ug.umd.prod.js +2 -2
- package/dist/lang/uk.umd.prod.js +1 -1
- package/dist/lang/vi.umd.prod.js +1 -1
- package/dist/lang/zh-CN.umd.prod.js +1 -1
- package/dist/lang/zh-TW.umd.prod.js +1 -1
- package/dist/quasar.cjs.prod.js +2 -2
- package/dist/quasar.css +24 -17
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +29 -22
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +24 -16
- package/dist/quasar.umd.js +240 -195
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/types/index.d.ts +1868 -1521
- package/dist/vetur/quasar-attributes.json +43 -11
- package/dist/vetur/quasar-tags.json +9 -1
- package/dist/web-types/web-types.json +103 -15
- package/lang/index.json +4 -0
- package/lang/lt.js +103 -0
- package/lang/ug.js +42 -42
- package/package.json +1 -1
- package/src/components/carousel/QCarousel.js +8 -1
- package/src/components/carousel/QCarousel.json +9 -1
- package/src/components/color/QColor.js +73 -61
- package/src/components/color/QColor.json +8 -1
- package/src/components/color/QColor.sass +5 -1
- package/src/components/date/QDate.json +1 -1
- package/src/components/dialog/QDialog.js +6 -0
- package/src/components/file/QFile.json +1 -1
- package/src/components/inner-loading/QInnerLoading.js +31 -7
- package/src/components/inner-loading/QInnerLoading.json +29 -0
- package/src/components/inner-loading/QInnerLoading.sass +4 -0
- package/src/components/input/QInput.json +1 -1
- package/src/components/option-group/QOptionGroup.js +29 -19
- package/src/components/option-group/QOptionGroup.json +26 -0
- package/src/components/radio/QRadio.json +1 -1
- package/src/components/range/QRange.json +1 -1
- package/src/components/rating/QRating.js +59 -39
- package/src/components/rating/QRating.sass +8 -6
- package/src/components/select/QSelect.js +5 -53
- package/src/components/select/QSelect.json +1 -1
- package/src/components/skeleton/QSkeleton.js +15 -5
- package/src/components/skeleton/QSkeleton.json +9 -0
- package/src/components/skeleton/QSkeleton.sass +7 -6
- package/src/components/slider/QSlider.json +1 -1
- package/src/components/tabs/QTabs.json +1 -1
- package/src/components/time/QTime.json +1 -1
- package/src/composables/private/use-panel.js +13 -8
- package/src/composables/private/use-panel.json +11 -2
- package/src/css/core/transitions.sass +4 -4
package/dist/quasar.umd.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Quasar Framework v2.
|
|
2
|
+
* Quasar Framework v2.2.0
|
|
3
3
|
* (c) 2015-present Razvan Stoenescu
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -1437,7 +1437,7 @@
|
|
|
1437
1437
|
}
|
|
1438
1438
|
|
|
1439
1439
|
var installQuasar = function (parentApp, opts = {}) {
|
|
1440
|
-
const $q = { version: '2.
|
|
1440
|
+
const $q = { version: '2.2.0' };
|
|
1441
1441
|
|
|
1442
1442
|
if (globalConfigIsFrozen === false) {
|
|
1443
1443
|
if (opts.config !== void 0) {
|
|
@@ -6064,6 +6064,10 @@
|
|
|
6064
6064
|
|
|
6065
6065
|
transitionPrev: String,
|
|
6066
6066
|
transitionNext: String,
|
|
6067
|
+
transitionDuration: {
|
|
6068
|
+
type: [ String, Number ],
|
|
6069
|
+
default: 300
|
|
6070
|
+
},
|
|
6067
6071
|
|
|
6068
6072
|
keepAlive: Boolean,
|
|
6069
6073
|
keepAliveInclude: [ String, Array, RegExp ],
|
|
@@ -6109,6 +6113,10 @@
|
|
|
6109
6113
|
props.transitionNext || `slide-${ props.vertical === true ? 'up' : 'left' }`
|
|
6110
6114
|
);
|
|
6111
6115
|
|
|
6116
|
+
const transitionStyle = vue.computed(
|
|
6117
|
+
() => `--q-transition-duration: ${ props.transitionDuration }ms`
|
|
6118
|
+
);
|
|
6119
|
+
|
|
6112
6120
|
const contentKey = vue.computed(() => (
|
|
6113
6121
|
typeof props.modelValue === 'string' || typeof props.modelValue === 'number'
|
|
6114
6122
|
? props.modelValue
|
|
@@ -6228,7 +6236,7 @@
|
|
|
6228
6236
|
}
|
|
6229
6237
|
|
|
6230
6238
|
function getPanelContentChild () {
|
|
6231
|
-
const panel = isValidPanelName(props.modelValue)
|
|
6239
|
+
const panel = isValidPanelName(props.modelValue) === true
|
|
6232
6240
|
&& updatePanelIndex()
|
|
6233
6241
|
&& panels[ panelIndex.value ];
|
|
6234
6242
|
|
|
@@ -6239,7 +6247,7 @@
|
|
|
6239
6247
|
needsUniqueKeepAliveWrapper.value === true
|
|
6240
6248
|
? getCacheWithFn(contentKey.value, () => ({ ...PanelWrapper$1, name: contentKey.value }))
|
|
6241
6249
|
: PanelWrapper$1,
|
|
6242
|
-
{ key: contentKey.value },
|
|
6250
|
+
{ key: contentKey.value, style: transitionStyle.value },
|
|
6243
6251
|
() => panel
|
|
6244
6252
|
)
|
|
6245
6253
|
])
|
|
@@ -6247,6 +6255,7 @@
|
|
|
6247
6255
|
: [
|
|
6248
6256
|
vue.h('div', {
|
|
6249
6257
|
class: 'q-panel scroll',
|
|
6258
|
+
style: transitionStyle.value,
|
|
6250
6259
|
key: contentKey.value,
|
|
6251
6260
|
role: 'tabpanel'
|
|
6252
6261
|
}, [ panel ])
|
|
@@ -6259,11 +6268,7 @@
|
|
|
6259
6268
|
}
|
|
6260
6269
|
|
|
6261
6270
|
return props.animated === true
|
|
6262
|
-
? [
|
|
6263
|
-
vue.h(vue.Transition, {
|
|
6264
|
-
name: panelTransition.value
|
|
6265
|
-
}, getPanelContentChild)
|
|
6266
|
-
]
|
|
6271
|
+
? [ vue.h(vue.Transition, { name: panelTransition.value }, getPanelContentChild) ]
|
|
6267
6272
|
: getPanelContentChild()
|
|
6268
6273
|
}
|
|
6269
6274
|
|
|
@@ -6273,7 +6278,7 @@
|
|
|
6273
6278
|
).filter(
|
|
6274
6279
|
panel => panel.props !== null
|
|
6275
6280
|
&& panel.props.slot === void 0
|
|
6276
|
-
&& isValidPanelName(panel.props.name)
|
|
6281
|
+
&& isValidPanelName(panel.props.name) === true
|
|
6277
6282
|
);
|
|
6278
6283
|
|
|
6279
6284
|
return panels.length
|
|
@@ -6661,7 +6666,14 @@
|
|
|
6661
6666
|
});
|
|
6662
6667
|
|
|
6663
6668
|
function startTimer () {
|
|
6664
|
-
|
|
6669
|
+
const duration = isNumber(props.autoplay) === true
|
|
6670
|
+
? props.autoplay
|
|
6671
|
+
: 5000;
|
|
6672
|
+
|
|
6673
|
+
timer = setTimeout(
|
|
6674
|
+
duration >= 0 ? nextPanel : previousPanel,
|
|
6675
|
+
Math.abs(duration)
|
|
6676
|
+
);
|
|
6665
6677
|
}
|
|
6666
6678
|
|
|
6667
6679
|
vue.onMounted(() => {
|
|
@@ -9924,6 +9936,7 @@
|
|
|
9924
9936
|
palette: Array,
|
|
9925
9937
|
|
|
9926
9938
|
noHeader: Boolean,
|
|
9939
|
+
noHeaderTabs: Boolean,
|
|
9927
9940
|
noFooter: Boolean,
|
|
9928
9941
|
|
|
9929
9942
|
square: Boolean,
|
|
@@ -10009,7 +10022,7 @@
|
|
|
10009
10022
|
? true
|
|
10010
10023
|
: luminosity(model.value) > 0.4;
|
|
10011
10024
|
|
|
10012
|
-
return 'q-color-picker__header-content
|
|
10025
|
+
return 'q-color-picker__header-content'
|
|
10013
10026
|
+ ` q-color-picker__header-content--${ light ? 'light' : 'dark' }`
|
|
10014
10027
|
});
|
|
10015
10028
|
|
|
@@ -10360,6 +10373,63 @@
|
|
|
10360
10373
|
}
|
|
10361
10374
|
|
|
10362
10375
|
function getHeader () {
|
|
10376
|
+
const child = [];
|
|
10377
|
+
|
|
10378
|
+
props.noHeaderTabs !== true && child.push(
|
|
10379
|
+
vue.h(QTabs, {
|
|
10380
|
+
class: 'q-color-picker__header-tabs',
|
|
10381
|
+
modelValue: topView.value,
|
|
10382
|
+
dense: true,
|
|
10383
|
+
align: 'justify',
|
|
10384
|
+
...getCache('topVTab', {
|
|
10385
|
+
'onUpdate:modelValue': val => { topView.value = val; }
|
|
10386
|
+
})
|
|
10387
|
+
}, () => [
|
|
10388
|
+
vue.h(QTab, {
|
|
10389
|
+
label: 'HEX' + (hasAlpha.value === true ? 'A' : ''),
|
|
10390
|
+
name: 'hex',
|
|
10391
|
+
ripple: false
|
|
10392
|
+
}),
|
|
10393
|
+
|
|
10394
|
+
vue.h(QTab, {
|
|
10395
|
+
label: 'RGB' + (hasAlpha.value === true ? 'A' : ''),
|
|
10396
|
+
name: 'rgb',
|
|
10397
|
+
ripple: false
|
|
10398
|
+
})
|
|
10399
|
+
])
|
|
10400
|
+
);
|
|
10401
|
+
|
|
10402
|
+
child.push(
|
|
10403
|
+
vue.h('div', {
|
|
10404
|
+
class: 'q-color-picker__header-banner row flex-center no-wrap'
|
|
10405
|
+
}, [
|
|
10406
|
+
vue.h('input', {
|
|
10407
|
+
class: 'fit',
|
|
10408
|
+
value: model.value[ topView.value ],
|
|
10409
|
+
...(editable.value !== true
|
|
10410
|
+
? { readonly: true }
|
|
10411
|
+
: {}
|
|
10412
|
+
),
|
|
10413
|
+
...getCache('topIn', {
|
|
10414
|
+
onInput: evt => {
|
|
10415
|
+
updateErrorIcon(onEditorChange(evt) === true);
|
|
10416
|
+
},
|
|
10417
|
+
onChange: stop,
|
|
10418
|
+
onBlur: evt => {
|
|
10419
|
+
onEditorChange(evt, true) === true && proxy.$forceUpdate();
|
|
10420
|
+
updateErrorIcon(false);
|
|
10421
|
+
}
|
|
10422
|
+
})
|
|
10423
|
+
}),
|
|
10424
|
+
|
|
10425
|
+
vue.h(QIcon, {
|
|
10426
|
+
ref: errorIconRef,
|
|
10427
|
+
class: 'q-color-picker__error-icon absolute no-pointer-events',
|
|
10428
|
+
name: $q.iconSet.type.negative
|
|
10429
|
+
})
|
|
10430
|
+
])
|
|
10431
|
+
);
|
|
10432
|
+
|
|
10363
10433
|
return vue.h('div', {
|
|
10364
10434
|
class: 'q-color-picker__header relative-position overflow-hidden'
|
|
10365
10435
|
}, [
|
|
@@ -10368,57 +10438,7 @@
|
|
|
10368
10438
|
vue.h('div', {
|
|
10369
10439
|
class: headerClass.value,
|
|
10370
10440
|
style: currentBgColor.value
|
|
10371
|
-
},
|
|
10372
|
-
vue.h(QTabs, {
|
|
10373
|
-
modelValue: topView.value,
|
|
10374
|
-
dense: true,
|
|
10375
|
-
align: 'justify',
|
|
10376
|
-
...getCache('topVTab', {
|
|
10377
|
-
'onUpdate:modelValue': val => { topView.value = val; }
|
|
10378
|
-
})
|
|
10379
|
-
}, () => [
|
|
10380
|
-
vue.h(QTab, {
|
|
10381
|
-
label: 'HEX' + (hasAlpha.value === true ? 'A' : ''),
|
|
10382
|
-
name: 'hex',
|
|
10383
|
-
ripple: false
|
|
10384
|
-
}),
|
|
10385
|
-
|
|
10386
|
-
vue.h(QTab, {
|
|
10387
|
-
label: 'RGB' + (hasAlpha.value === true ? 'A' : ''),
|
|
10388
|
-
name: 'rgb',
|
|
10389
|
-
ripple: false
|
|
10390
|
-
})
|
|
10391
|
-
]),
|
|
10392
|
-
|
|
10393
|
-
vue.h('div', {
|
|
10394
|
-
class: 'q-color-picker__header-banner row flex-center no-wrap'
|
|
10395
|
-
}, [
|
|
10396
|
-
vue.h('input', {
|
|
10397
|
-
class: 'fit',
|
|
10398
|
-
value: model.value[ topView.value ],
|
|
10399
|
-
...(editable.value !== true
|
|
10400
|
-
? { readonly: true }
|
|
10401
|
-
: {}
|
|
10402
|
-
),
|
|
10403
|
-
...getCache('topIn', {
|
|
10404
|
-
onInput: evt => {
|
|
10405
|
-
updateErrorIcon(onEditorChange(evt) === true);
|
|
10406
|
-
},
|
|
10407
|
-
onChange: stop,
|
|
10408
|
-
onBlur: evt => {
|
|
10409
|
-
onEditorChange(evt, true) === true && proxy.$forceUpdate();
|
|
10410
|
-
updateErrorIcon(false);
|
|
10411
|
-
}
|
|
10412
|
-
})
|
|
10413
|
-
}),
|
|
10414
|
-
|
|
10415
|
-
vue.h(QIcon, {
|
|
10416
|
-
ref: errorIconRef,
|
|
10417
|
-
class: 'q-color-picker__error-icon absolute no-pointer-events',
|
|
10418
|
-
name: $q.iconSet.type.negative
|
|
10419
|
-
})
|
|
10420
|
-
])
|
|
10421
|
-
])
|
|
10441
|
+
}, child)
|
|
10422
10442
|
])
|
|
10423
10443
|
}
|
|
10424
10444
|
|
|
@@ -10654,19 +10674,23 @@
|
|
|
10654
10674
|
}
|
|
10655
10675
|
|
|
10656
10676
|
function getPaletteTab () {
|
|
10677
|
+
const fn = color => vue.h('div', {
|
|
10678
|
+
class: 'q-color-picker__cube col-auto',
|
|
10679
|
+
style: { backgroundColor: color },
|
|
10680
|
+
...(
|
|
10681
|
+
editable.value === true
|
|
10682
|
+
? getCache('palette#' + color, {
|
|
10683
|
+
onClick: () => { onPalettePick(color); }
|
|
10684
|
+
})
|
|
10685
|
+
: {}
|
|
10686
|
+
)
|
|
10687
|
+
});
|
|
10688
|
+
|
|
10657
10689
|
return [
|
|
10658
10690
|
vue.h('div', {
|
|
10659
10691
|
class: 'row items-center q-color-picker__palette-rows'
|
|
10660
10692
|
+ (editable.value === true ? ' q-color-picker__palette-rows--editable' : '')
|
|
10661
|
-
}, computedPalette.value.map(
|
|
10662
|
-
class: 'q-color-picker__cube col-auto',
|
|
10663
|
-
style: { backgroundColor: color },
|
|
10664
|
-
...(editable.value === true ? getCache('palette#' + color, {
|
|
10665
|
-
onClick: () => {
|
|
10666
|
-
onPalettePick(color);
|
|
10667
|
-
}
|
|
10668
|
-
}) : {})
|
|
10669
|
-
})))
|
|
10693
|
+
}, computedPalette.value.map(fn))
|
|
10670
10694
|
]
|
|
10671
10695
|
}
|
|
10672
10696
|
|
|
@@ -13749,6 +13773,10 @@
|
|
|
13749
13773
|
: transitionShow.value
|
|
13750
13774
|
));
|
|
13751
13775
|
|
|
13776
|
+
const transitionStyle = vue.computed(
|
|
13777
|
+
() => `--q-transition-duration: ${ props.transitionDuration }ms`
|
|
13778
|
+
);
|
|
13779
|
+
|
|
13752
13780
|
const useBackdrop = vue.computed(() => showing.value === true && props.seamless !== true);
|
|
13753
13781
|
|
|
13754
13782
|
const onEvents = vue.computed(() => (
|
|
@@ -13989,6 +14017,7 @@
|
|
|
13989
14017
|
useBackdrop.value === true
|
|
13990
14018
|
? vue.h('div', {
|
|
13991
14019
|
class: 'q-dialog__backdrop fixed-full',
|
|
14020
|
+
style: transitionStyle.value,
|
|
13992
14021
|
'aria-hidden': 'true',
|
|
13993
14022
|
onMousedown: onBackdropClick
|
|
13994
14023
|
})
|
|
@@ -14003,6 +14032,7 @@
|
|
|
14003
14032
|
? vue.h('div', {
|
|
14004
14033
|
ref: innerRef,
|
|
14005
14034
|
class: classes.value,
|
|
14035
|
+
style: transitionStyle.value,
|
|
14006
14036
|
tabindex: -1,
|
|
14007
14037
|
...onEvents.value
|
|
14008
14038
|
}, hSlot(slots.default))
|
|
@@ -19790,7 +19820,11 @@
|
|
|
19790
19820
|
size: {
|
|
19791
19821
|
type: [ String, Number ],
|
|
19792
19822
|
default: 42
|
|
19793
|
-
}
|
|
19823
|
+
},
|
|
19824
|
+
|
|
19825
|
+
label: String,
|
|
19826
|
+
labelClass: String,
|
|
19827
|
+
labelStyle: [ String, Array, Object ]
|
|
19794
19828
|
},
|
|
19795
19829
|
|
|
19796
19830
|
setup (props, { slots }) {
|
|
@@ -19804,6 +19838,31 @@
|
|
|
19804
19838
|
+ (isDark.value === true ? ' q-inner-loading--dark' : '')
|
|
19805
19839
|
);
|
|
19806
19840
|
|
|
19841
|
+
const labelClass = vue.computed(() =>
|
|
19842
|
+
'q-inner-loading__label'
|
|
19843
|
+
+ (props.labelClass !== void 0 ? ` ${ props.labelClass}` : '')
|
|
19844
|
+
);
|
|
19845
|
+
|
|
19846
|
+
function getInner () {
|
|
19847
|
+
const child = [
|
|
19848
|
+
vue.h(QSpinner, {
|
|
19849
|
+
size: props.size,
|
|
19850
|
+
color: props.color
|
|
19851
|
+
})
|
|
19852
|
+
];
|
|
19853
|
+
|
|
19854
|
+
if (props.label !== void 0) {
|
|
19855
|
+
child.push(
|
|
19856
|
+
vue.h('div', {
|
|
19857
|
+
class: labelClass.value,
|
|
19858
|
+
style: props.labelStyle
|
|
19859
|
+
}, [ props.label ])
|
|
19860
|
+
);
|
|
19861
|
+
}
|
|
19862
|
+
|
|
19863
|
+
return child
|
|
19864
|
+
}
|
|
19865
|
+
|
|
19807
19866
|
function getContent () {
|
|
19808
19867
|
return props.showing === true
|
|
19809
19868
|
? vue.h(
|
|
@@ -19811,12 +19870,7 @@
|
|
|
19811
19870
|
{ class: classes.value, style: transitionStyle.value },
|
|
19812
19871
|
slots.default !== void 0
|
|
19813
19872
|
? slots.default()
|
|
19814
|
-
:
|
|
19815
|
-
vue.h(QSpinner, {
|
|
19816
|
-
size: props.size,
|
|
19817
|
-
color: props.color
|
|
19818
|
-
})
|
|
19819
|
-
]
|
|
19873
|
+
: getInner()
|
|
19820
19874
|
)
|
|
19821
19875
|
: null
|
|
19822
19876
|
}
|
|
@@ -21929,7 +21983,7 @@
|
|
|
21929
21983
|
|
|
21930
21984
|
emits: [ 'update:modelValue' ],
|
|
21931
21985
|
|
|
21932
|
-
setup (props, { emit }) {
|
|
21986
|
+
setup (props, { emit, slots }) {
|
|
21933
21987
|
const { proxy: { $q } } = vue.getCurrentInstance();
|
|
21934
21988
|
|
|
21935
21989
|
const arrayModel = Array.isArray(props.modelValue);
|
|
@@ -21973,24 +22027,34 @@
|
|
|
21973
22027
|
return () => vue.h('div', {
|
|
21974
22028
|
class: classes.value,
|
|
21975
22029
|
...attrs.value
|
|
21976
|
-
}, props.options.map(opt =>
|
|
21977
|
-
|
|
21978
|
-
|
|
21979
|
-
|
|
21980
|
-
|
|
21981
|
-
|
|
21982
|
-
|
|
21983
|
-
|
|
21984
|
-
|
|
21985
|
-
|
|
21986
|
-
|
|
21987
|
-
|
|
21988
|
-
|
|
21989
|
-
|
|
21990
|
-
|
|
21991
|
-
|
|
21992
|
-
|
|
21993
|
-
|
|
22030
|
+
}, props.options.map((opt, i) => {
|
|
22031
|
+
const child = slots[ 'label-' + i ] !== void 0
|
|
22032
|
+
? () => slots[ 'label-' + i ](opt)
|
|
22033
|
+
: (
|
|
22034
|
+
slots.label !== void 0
|
|
22035
|
+
? () => slots.label(opt)
|
|
22036
|
+
: void 0
|
|
22037
|
+
);
|
|
22038
|
+
|
|
22039
|
+
return vue.h('div', [
|
|
22040
|
+
vue.h(component.value, {
|
|
22041
|
+
modelValue: props.modelValue,
|
|
22042
|
+
val: opt.value,
|
|
22043
|
+
name: opt.name === void 0 ? props.name : opt.name,
|
|
22044
|
+
disable: props.disable || opt.disable,
|
|
22045
|
+
label: child === void 0 ? opt.label : null,
|
|
22046
|
+
leftLabel: opt.leftLabel === void 0 ? props.leftLabel : opt.leftLabel,
|
|
22047
|
+
color: opt.color === void 0 ? props.color : opt.color,
|
|
22048
|
+
checkedIcon: opt.checkedIcon,
|
|
22049
|
+
uncheckedIcon: opt.uncheckedIcon,
|
|
22050
|
+
dark: opt.dark || isDark.value,
|
|
22051
|
+
size: opt.size === void 0 ? props.size : opt.size,
|
|
22052
|
+
dense: props.dense,
|
|
22053
|
+
keepColor: opt.keepColor === void 0 ? props.keepColor : opt.keepColor,
|
|
22054
|
+
'onUpdate:modelValue': onUpdateModelValue
|
|
22055
|
+
}, child)
|
|
22056
|
+
])
|
|
22057
|
+
}))
|
|
21994
22058
|
}
|
|
21995
22059
|
});
|
|
21996
22060
|
|
|
@@ -24068,6 +24132,51 @@
|
|
|
24068
24132
|
}
|
|
24069
24133
|
});
|
|
24070
24134
|
|
|
24135
|
+
const stars = vue.computed(() => {
|
|
24136
|
+
const
|
|
24137
|
+
acc = [],
|
|
24138
|
+
icons = iconData.value,
|
|
24139
|
+
ceil = Math.ceil(props.modelValue);
|
|
24140
|
+
|
|
24141
|
+
const halfIndex = props.iconHalf === void 0 || ceil === props.modelValue
|
|
24142
|
+
? -1
|
|
24143
|
+
: ceil;
|
|
24144
|
+
|
|
24145
|
+
for (let i = 1; i <= props.max; i++) {
|
|
24146
|
+
const
|
|
24147
|
+
active = (mouseModel.value === 0 && props.modelValue >= i) || (mouseModel.value > 0 && mouseModel.value >= i),
|
|
24148
|
+
half = halfIndex === i && mouseModel.value < i,
|
|
24149
|
+
exSelected = mouseModel.value > 0 && (half === true ? ceil : props.modelValue) >= i && mouseModel.value < i,
|
|
24150
|
+
color = half === true
|
|
24151
|
+
? (i <= icons.halfColorLen ? props.colorHalf[ i - 1 ] : icons.halfColor)
|
|
24152
|
+
: (
|
|
24153
|
+
icons.selColor !== void 0 && active === true
|
|
24154
|
+
? (i <= icons.selColorLen ? props.colorSelected[ i - 1 ] : icons.selColor)
|
|
24155
|
+
: (i <= icons.colorLen ? props.color[ i - 1 ] : icons.color)
|
|
24156
|
+
);
|
|
24157
|
+
|
|
24158
|
+
acc.push({
|
|
24159
|
+
name: (
|
|
24160
|
+
half === true
|
|
24161
|
+
? (i <= icons.halfIconLen ? props.iconHalf[ i - 1 ] : icons.halfIcon)
|
|
24162
|
+
: (
|
|
24163
|
+
icons.selIcon !== void 0 && (active === true || exSelected === true)
|
|
24164
|
+
? (i <= icons.selIconLen ? props.iconSelected[ i - 1 ] : icons.selIcon)
|
|
24165
|
+
: (i <= icons.iconLen ? props.icon[ i - 1 ] : icons.icon)
|
|
24166
|
+
)
|
|
24167
|
+
) || $q.iconSet.rating.icon,
|
|
24168
|
+
|
|
24169
|
+
classes: 'q-rating__icon'
|
|
24170
|
+
+ (active === true || half === true ? ' q-rating__icon--active' : '')
|
|
24171
|
+
+ (exSelected === true ? ' q-rating__icon--exselected' : '')
|
|
24172
|
+
+ (mouseModel.value === i ? ' q-rating__icon--hovered' : '')
|
|
24173
|
+
+ (color !== void 0 ? ` text-${ color }` : '')
|
|
24174
|
+
});
|
|
24175
|
+
}
|
|
24176
|
+
|
|
24177
|
+
return acc
|
|
24178
|
+
});
|
|
24179
|
+
|
|
24071
24180
|
const attributes = vue.computed(() => {
|
|
24072
24181
|
if (props.disable === true) {
|
|
24073
24182
|
return { 'aria-disabled': 'true' }
|
|
@@ -24077,6 +24186,8 @@
|
|
|
24077
24186
|
}
|
|
24078
24187
|
});
|
|
24079
24188
|
|
|
24189
|
+
const tabindex = vue.computed(() => (editable.value === true ? 0 : null));
|
|
24190
|
+
|
|
24080
24191
|
function set (value) {
|
|
24081
24192
|
if (editable.value === true) {
|
|
24082
24193
|
const
|
|
@@ -24124,57 +24235,29 @@
|
|
|
24124
24235
|
});
|
|
24125
24236
|
|
|
24126
24237
|
return () => {
|
|
24127
|
-
const
|
|
24128
|
-
child = [],
|
|
24129
|
-
tabindex = editable.value === true ? 0 : null,
|
|
24130
|
-
icons = iconData.value,
|
|
24131
|
-
ceil = Math.ceil(props.modelValue);
|
|
24238
|
+
const child = [];
|
|
24132
24239
|
|
|
24133
|
-
|
|
24134
|
-
|
|
24135
|
-
: ceil;
|
|
24136
|
-
|
|
24137
|
-
for (let i = 1; i <= props.max; i++) {
|
|
24138
|
-
const
|
|
24139
|
-
active = (mouseModel.value === 0 && props.modelValue >= i) || (mouseModel.value > 0 && mouseModel.value >= i),
|
|
24140
|
-
half = halfIndex === i && mouseModel.value < i,
|
|
24141
|
-
exSelected = mouseModel.value > 0 && (half === true ? ceil : props.modelValue) >= i && mouseModel.value < i,
|
|
24142
|
-
name = half === true
|
|
24143
|
-
? (i <= icons.halfIconLen ? props.iconHalf[ i - 1 ] : icons.halfIcon)
|
|
24144
|
-
: (
|
|
24145
|
-
icons.selIcon !== void 0 && (active === true || exSelected === true)
|
|
24146
|
-
? (i <= icons.selIconLen ? props.iconSelected[ i - 1 ] : icons.selIcon)
|
|
24147
|
-
: (i <= icons.iconLen ? props.icon[ i - 1 ] : icons.icon)
|
|
24148
|
-
),
|
|
24149
|
-
color = half === true
|
|
24150
|
-
? (i <= icons.halfColorLen ? props.colorHalf[ i - 1 ] : icons.halfColor)
|
|
24151
|
-
: (
|
|
24152
|
-
icons.selColor !== void 0 && active === true
|
|
24153
|
-
? (i <= icons.selColorLen ? props.colorSelected[ i - 1 ] : icons.selColor)
|
|
24154
|
-
: (i <= icons.colorLen ? props.color[ i - 1 ] : icons.color)
|
|
24155
|
-
),
|
|
24156
|
-
classes = 'q-rating__icon'
|
|
24157
|
-
+ (active === true || half === true ? ' q-rating__icon--active' : '')
|
|
24158
|
-
+ (exSelected === true ? ' q-rating__icon--exselected' : '')
|
|
24159
|
-
+ (mouseModel.value === i ? ' q-rating__icon--hovered' : '')
|
|
24160
|
-
+ (color !== void 0 ? ` text-${ color }` : '');
|
|
24240
|
+
stars.value.forEach(({ classes, name }, index) => {
|
|
24241
|
+
const i = index + 1;
|
|
24161
24242
|
|
|
24162
24243
|
child.push(
|
|
24163
|
-
vue.h(
|
|
24244
|
+
vue.h('div', {
|
|
24164
24245
|
key: i,
|
|
24165
24246
|
ref: vm => { iconRefs[ `rt${ i }` ] = vm; },
|
|
24166
|
-
class:
|
|
24167
|
-
|
|
24168
|
-
tabindex,
|
|
24247
|
+
class: 'q-rating__icon-container flex flex-center',
|
|
24248
|
+
tabindex: tabindex.value,
|
|
24169
24249
|
onClick () { set(i); },
|
|
24170
24250
|
onMouseover () { setHoverValue(i); },
|
|
24171
24251
|
onMouseout: resetMouseModel,
|
|
24172
24252
|
onFocus () { setHoverValue(i); },
|
|
24173
24253
|
onBlur: resetMouseModel,
|
|
24174
24254
|
onKeyup (e) { onKeyup(e, i); }
|
|
24175
|
-
},
|
|
24255
|
+
}, hMergeSlot(
|
|
24256
|
+
slots[ `tip-${ i }` ],
|
|
24257
|
+
[ vue.h(QIcon, { class: classes, name }) ]
|
|
24258
|
+
))
|
|
24176
24259
|
);
|
|
24177
|
-
}
|
|
24260
|
+
});
|
|
24178
24261
|
|
|
24179
24262
|
if (props.name !== void 0 && props.disable !== true) {
|
|
24180
24263
|
injectFormInput(child, 'push');
|
|
@@ -25464,7 +25547,7 @@
|
|
|
25464
25547
|
const dialogFieldFocused = vue.ref(false);
|
|
25465
25548
|
const innerLoadingIndicator = vue.ref(false);
|
|
25466
25549
|
|
|
25467
|
-
let inputTimer, innerValueCache,
|
|
25550
|
+
let inputTimer, innerValueCache,
|
|
25468
25551
|
hasDialog, userInputValue, filterId, defaultInputValue,
|
|
25469
25552
|
transitionShowComputed, searchBuffer, searchBufferExp;
|
|
25470
25553
|
|
|
@@ -25590,7 +25673,7 @@
|
|
|
25590
25673
|
const tabindex = vue.computed(() => (state.focused.value === true ? props.tabindex : -1));
|
|
25591
25674
|
|
|
25592
25675
|
const comboboxAttrs = vue.computed(() => ({
|
|
25593
|
-
tabindex: tabindex
|
|
25676
|
+
tabindex: props.tabindex,
|
|
25594
25677
|
role: 'combobox',
|
|
25595
25678
|
'aria-label': props.label,
|
|
25596
25679
|
'aria-autocomplete': props.useInput === true ? 'list' : 'none',
|
|
@@ -25631,7 +25714,6 @@
|
|
|
25631
25714
|
}
|
|
25632
25715
|
|
|
25633
25716
|
const { from, to } = virtualScrollSliceRange.value;
|
|
25634
|
-
const { options, optionEls } = optionScopeCache;
|
|
25635
25717
|
|
|
25636
25718
|
return props.options.slice(from, to).map((opt, i) => {
|
|
25637
25719
|
const disable = isOptionDisabled.value(opt) === true;
|
|
@@ -25663,7 +25745,7 @@
|
|
|
25663
25745
|
}
|
|
25664
25746
|
}
|
|
25665
25747
|
|
|
25666
|
-
|
|
25748
|
+
return {
|
|
25667
25749
|
index,
|
|
25668
25750
|
opt,
|
|
25669
25751
|
html: needsHtmlFn.value(opt),
|
|
@@ -25673,23 +25755,7 @@
|
|
|
25673
25755
|
toggleOption,
|
|
25674
25756
|
setOptionIndex,
|
|
25675
25757
|
itemProps
|
|
25676
|
-
};
|
|
25677
|
-
|
|
25678
|
-
const optionWithoutEvents = {
|
|
25679
|
-
...option,
|
|
25680
|
-
itemProps: {
|
|
25681
|
-
...itemProps,
|
|
25682
|
-
onClick: void 0,
|
|
25683
|
-
onMousemove: void 0
|
|
25684
|
-
}
|
|
25685
|
-
};
|
|
25686
|
-
|
|
25687
|
-
if (options[ i ] === void 0 || isDeepEqual(optionWithoutEvents, options[ i ]) !== true) {
|
|
25688
|
-
options[ i ] = optionWithoutEvents;
|
|
25689
|
-
optionEls[ i ] = void 0;
|
|
25690
25758
|
}
|
|
25691
|
-
|
|
25692
|
-
return option
|
|
25693
25759
|
})
|
|
25694
25760
|
});
|
|
25695
25761
|
|
|
@@ -26271,14 +26337,6 @@
|
|
|
26271
26337
|
}
|
|
26272
26338
|
|
|
26273
26339
|
function getAllOptions () {
|
|
26274
|
-
if (
|
|
26275
|
-
slots.option !== void 0
|
|
26276
|
-
&& optionScopeCache.optionSlot !== slots.option
|
|
26277
|
-
) {
|
|
26278
|
-
optionScopeCache.optionSlot = slots.option;
|
|
26279
|
-
optionScopeCache.optionEls = [];
|
|
26280
|
-
}
|
|
26281
|
-
|
|
26282
26340
|
const fn = slots.option !== void 0
|
|
26283
26341
|
? slots.option
|
|
26284
26342
|
: scope => {
|
|
@@ -26298,17 +26356,7 @@
|
|
|
26298
26356
|
})
|
|
26299
26357
|
};
|
|
26300
26358
|
|
|
26301
|
-
|
|
26302
|
-
|
|
26303
|
-
let options = padVirtualScroll('div', optionScope.value.map((scope, i) => {
|
|
26304
|
-
if (optionEls[ i ] === void 0) {
|
|
26305
|
-
optionEls[ i ] = fn(scope);
|
|
26306
|
-
}
|
|
26307
|
-
|
|
26308
|
-
// rendered vnode always needs a new
|
|
26309
|
-
// "instance" otherwise DOM diff will say nothing changed
|
|
26310
|
-
return { ...optionEls[ i ] }
|
|
26311
|
-
}));
|
|
26359
|
+
let options = padVirtualScroll('div', optionScope.value.map(fn));
|
|
26312
26360
|
|
|
26313
26361
|
if (slots[ 'before-options' ] !== void 0) {
|
|
26314
26362
|
options = slots[ 'before-options' ]().concat(options);
|
|
@@ -26620,10 +26668,6 @@
|
|
|
26620
26668
|
}
|
|
26621
26669
|
|
|
26622
26670
|
function closeMenu () {
|
|
26623
|
-
if (optionScopeCache !== void 0) {
|
|
26624
|
-
optionScopeCache.optionEls = [];
|
|
26625
|
-
}
|
|
26626
|
-
|
|
26627
26671
|
if (dialog.value === true) {
|
|
26628
26672
|
return
|
|
26629
26673
|
}
|
|
@@ -26739,16 +26783,7 @@
|
|
|
26739
26783
|
|
|
26740
26784
|
updatePreState();
|
|
26741
26785
|
|
|
26742
|
-
vue.onBeforeMount(() => {
|
|
26743
|
-
optionScopeCache = {
|
|
26744
|
-
optionSlot: slots.option,
|
|
26745
|
-
options: [],
|
|
26746
|
-
optionEls: []
|
|
26747
|
-
};
|
|
26748
|
-
});
|
|
26749
|
-
|
|
26750
26786
|
vue.onBeforeUnmount(() => {
|
|
26751
|
-
optionScopeCache = void 0;
|
|
26752
26787
|
clearTimeout(inputTimer);
|
|
26753
26788
|
});
|
|
26754
26789
|
|
|
@@ -26922,6 +26957,10 @@
|
|
|
26922
26957
|
validator: v => skeletonAnimations.includes(v),
|
|
26923
26958
|
default: 'wave'
|
|
26924
26959
|
},
|
|
26960
|
+
animationSpeed: {
|
|
26961
|
+
type: [ String, Number ],
|
|
26962
|
+
default: 1500
|
|
26963
|
+
},
|
|
26925
26964
|
|
|
26926
26965
|
square: Boolean,
|
|
26927
26966
|
bordered: Boolean,
|
|
@@ -26935,11 +26974,17 @@
|
|
|
26935
26974
|
const vm = vue.getCurrentInstance();
|
|
26936
26975
|
const isDark = useDark(props, vm.proxy.$q);
|
|
26937
26976
|
|
|
26938
|
-
const style = vue.computed(() =>
|
|
26939
|
-
props.size !== void 0
|
|
26940
|
-
?
|
|
26941
|
-
:
|
|
26942
|
-
|
|
26977
|
+
const style = vue.computed(() => {
|
|
26978
|
+
const size = props.size !== void 0
|
|
26979
|
+
? [ props.size, props.size ]
|
|
26980
|
+
: [ props.width, props.height ];
|
|
26981
|
+
|
|
26982
|
+
return {
|
|
26983
|
+
'--q-skeleton-speed': `${ props.animationSpeed }ms`,
|
|
26984
|
+
width: size[ 0 ],
|
|
26985
|
+
height: size[ 1 ]
|
|
26986
|
+
}
|
|
26987
|
+
});
|
|
26943
26988
|
|
|
26944
26989
|
const classes = vue.computed(() =>
|
|
26945
26990
|
`q-skeleton q-skeleton--${ isDark.value === true ? 'dark' : 'light' } q-skeleton--type-${ props.type }`
|
|
@@ -38635,7 +38680,7 @@
|
|
|
38635
38680
|
});
|
|
38636
38681
|
|
|
38637
38682
|
var index_umd = {
|
|
38638
|
-
version: '2.
|
|
38683
|
+
version: '2.2.0',
|
|
38639
38684
|
install (app, opts) {
|
|
38640
38685
|
installQuasar(app, {
|
|
38641
38686
|
components,
|