quasar 2.1.8 → 2.2.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.
- package/dist/api/QCarousel.json +19 -5
- package/dist/api/QColor.json +6 -0
- package/dist/api/QInnerLoading.json +32 -0
- package/dist/api/QOptionGroup.json +58 -1
- package/dist/api/QRange.json +10 -3
- package/dist/api/QSeparator.json +1 -1
- package/dist/api/QSkeleton.json +14 -0
- package/dist/api/QSlider.json +10 -3
- package/dist/api/QStepper.json +16 -2
- package/dist/api/QTabPanels.json +16 -2
- package/dist/api/QTable.json +5 -0
- 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 +374 -242
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/types/index.d.ts +81 -12
- package/dist/vetur/quasar-attributes.json +39 -7
- package/dist/vetur/quasar-tags.json +9 -1
- package/dist/web-types/web-types.json +101 -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/btn/QBtn.js +17 -20
- 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 +7 -0
- package/src/components/color/QColor.sass +5 -1
- package/src/components/dialog/QDialog.js +6 -0
- package/src/components/drawer/QDrawer.js +3 -0
- 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/option-group/QOptionGroup.js +29 -19
- package/src/components/option-group/QOptionGroup.json +50 -1
- package/src/components/range/QRange.js +1 -1
- package/src/components/range/QRange.json +7 -3
- package/src/components/rating/QRating.js +59 -39
- package/src/components/rating/QRating.sass +8 -6
- package/src/components/select/QSelect.js +1 -1
- package/src/components/separator/QSeparator.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.js +1 -1
- package/src/components/slider/QSlider.json +7 -3
- package/src/components/slider/use-slider.js +7 -2
- package/src/components/stepper/StepHeader.js +10 -10
- package/src/components/table/QTable.json +1 -0
- package/src/components/tabs/use-tab.js +11 -9
- package/src/components/time/QTime.js +0 -2
- 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/src/utils/date.js +93 -60
package/dist/quasar.umd.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Quasar Framework v2.
|
|
2
|
+
* Quasar Framework v2.2.2
|
|
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.2' };
|
|
1441
1441
|
|
|
1442
1442
|
if (globalConfigIsFrozen === false) {
|
|
1443
1443
|
if (opts.config !== void 0) {
|
|
@@ -3218,7 +3218,7 @@
|
|
|
3218
3218
|
);
|
|
3219
3219
|
|
|
3220
3220
|
const ripple = vue.computed(() => (
|
|
3221
|
-
props.ripple === false
|
|
3221
|
+
props.disable === true || props.ripple === false
|
|
3222
3222
|
? false
|
|
3223
3223
|
: {
|
|
3224
3224
|
keyCodes: isLink.value === true ? [ 13, 32 ] : [ 13 ],
|
|
@@ -3226,6 +3226,8 @@
|
|
|
3226
3226
|
}
|
|
3227
3227
|
));
|
|
3228
3228
|
|
|
3229
|
+
const rippleProps = vue.computed(() => ({ center: props.round }));
|
|
3230
|
+
|
|
3229
3231
|
const percentageStyle = vue.computed(() => {
|
|
3230
3232
|
const val = Math.max(0, Math.min(100, props.percentage));
|
|
3231
3233
|
return val > 0
|
|
@@ -3259,16 +3261,6 @@
|
|
|
3259
3261
|
}
|
|
3260
3262
|
});
|
|
3261
3263
|
|
|
3262
|
-
const directives = vue.computed(() => {
|
|
3263
|
-
// if props.disable !== true && props.ripple !== false
|
|
3264
|
-
return [ [
|
|
3265
|
-
Ripple,
|
|
3266
|
-
ripple.value,
|
|
3267
|
-
void 0,
|
|
3268
|
-
{ center: props.round }
|
|
3269
|
-
] ]
|
|
3270
|
-
});
|
|
3271
|
-
|
|
3272
3264
|
const nodeProps = vue.computed(() => ({
|
|
3273
3265
|
ref: rootRef,
|
|
3274
3266
|
class: 'q-btn q-btn-item non-selectable no-outline ' + classes.value,
|
|
@@ -3532,13 +3524,18 @@
|
|
|
3532
3524
|
))
|
|
3533
3525
|
);
|
|
3534
3526
|
|
|
3535
|
-
return
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3527
|
+
return vue.withDirectives(
|
|
3528
|
+
vue.h(
|
|
3529
|
+
isLink.value === true ? 'a' : 'button',
|
|
3530
|
+
nodeProps.value,
|
|
3531
|
+
child
|
|
3532
|
+
),
|
|
3533
|
+
[ [
|
|
3534
|
+
Ripple,
|
|
3535
|
+
ripple.value,
|
|
3536
|
+
void 0,
|
|
3537
|
+
rippleProps.value
|
|
3538
|
+
] ]
|
|
3542
3539
|
)
|
|
3543
3540
|
}
|
|
3544
3541
|
}
|
|
@@ -6064,6 +6061,10 @@
|
|
|
6064
6061
|
|
|
6065
6062
|
transitionPrev: String,
|
|
6066
6063
|
transitionNext: String,
|
|
6064
|
+
transitionDuration: {
|
|
6065
|
+
type: [ String, Number ],
|
|
6066
|
+
default: 300
|
|
6067
|
+
},
|
|
6067
6068
|
|
|
6068
6069
|
keepAlive: Boolean,
|
|
6069
6070
|
keepAliveInclude: [ String, Array, RegExp ],
|
|
@@ -6109,6 +6110,10 @@
|
|
|
6109
6110
|
props.transitionNext || `slide-${ props.vertical === true ? 'up' : 'left' }`
|
|
6110
6111
|
);
|
|
6111
6112
|
|
|
6113
|
+
const transitionStyle = vue.computed(
|
|
6114
|
+
() => `--q-transition-duration: ${ props.transitionDuration }ms`
|
|
6115
|
+
);
|
|
6116
|
+
|
|
6112
6117
|
const contentKey = vue.computed(() => (
|
|
6113
6118
|
typeof props.modelValue === 'string' || typeof props.modelValue === 'number'
|
|
6114
6119
|
? props.modelValue
|
|
@@ -6228,7 +6233,7 @@
|
|
|
6228
6233
|
}
|
|
6229
6234
|
|
|
6230
6235
|
function getPanelContentChild () {
|
|
6231
|
-
const panel = isValidPanelName(props.modelValue)
|
|
6236
|
+
const panel = isValidPanelName(props.modelValue) === true
|
|
6232
6237
|
&& updatePanelIndex()
|
|
6233
6238
|
&& panels[ panelIndex.value ];
|
|
6234
6239
|
|
|
@@ -6239,7 +6244,7 @@
|
|
|
6239
6244
|
needsUniqueKeepAliveWrapper.value === true
|
|
6240
6245
|
? getCacheWithFn(contentKey.value, () => ({ ...PanelWrapper$1, name: contentKey.value }))
|
|
6241
6246
|
: PanelWrapper$1,
|
|
6242
|
-
{ key: contentKey.value },
|
|
6247
|
+
{ key: contentKey.value, style: transitionStyle.value },
|
|
6243
6248
|
() => panel
|
|
6244
6249
|
)
|
|
6245
6250
|
])
|
|
@@ -6247,6 +6252,7 @@
|
|
|
6247
6252
|
: [
|
|
6248
6253
|
vue.h('div', {
|
|
6249
6254
|
class: 'q-panel scroll',
|
|
6255
|
+
style: transitionStyle.value,
|
|
6250
6256
|
key: contentKey.value,
|
|
6251
6257
|
role: 'tabpanel'
|
|
6252
6258
|
}, [ panel ])
|
|
@@ -6259,11 +6265,7 @@
|
|
|
6259
6265
|
}
|
|
6260
6266
|
|
|
6261
6267
|
return props.animated === true
|
|
6262
|
-
? [
|
|
6263
|
-
vue.h(vue.Transition, {
|
|
6264
|
-
name: panelTransition.value
|
|
6265
|
-
}, getPanelContentChild)
|
|
6266
|
-
]
|
|
6268
|
+
? [ vue.h(vue.Transition, { name: panelTransition.value }, getPanelContentChild) ]
|
|
6267
6269
|
: getPanelContentChild()
|
|
6268
6270
|
}
|
|
6269
6271
|
|
|
@@ -6273,7 +6275,7 @@
|
|
|
6273
6275
|
).filter(
|
|
6274
6276
|
panel => panel.props !== null
|
|
6275
6277
|
&& panel.props.slot === void 0
|
|
6276
|
-
&& isValidPanelName(panel.props.name)
|
|
6278
|
+
&& isValidPanelName(panel.props.name) === true
|
|
6277
6279
|
);
|
|
6278
6280
|
|
|
6279
6281
|
return panels.length
|
|
@@ -6661,7 +6663,14 @@
|
|
|
6661
6663
|
});
|
|
6662
6664
|
|
|
6663
6665
|
function startTimer () {
|
|
6664
|
-
|
|
6666
|
+
const duration = isNumber(props.autoplay) === true
|
|
6667
|
+
? props.autoplay
|
|
6668
|
+
: 5000;
|
|
6669
|
+
|
|
6670
|
+
timer = setTimeout(
|
|
6671
|
+
duration >= 0 ? nextPanel : previousPanel,
|
|
6672
|
+
Math.abs(duration)
|
|
6673
|
+
);
|
|
6665
6674
|
}
|
|
6666
6675
|
|
|
6667
6676
|
vue.onMounted(() => {
|
|
@@ -8117,7 +8126,7 @@
|
|
|
8117
8126
|
|
|
8118
8127
|
label: Boolean,
|
|
8119
8128
|
labelAlways: Boolean,
|
|
8120
|
-
markers: Boolean,
|
|
8129
|
+
markers: [ Boolean, Number ],
|
|
8121
8130
|
snap: Boolean,
|
|
8122
8131
|
|
|
8123
8132
|
vertical: Boolean,
|
|
@@ -8170,9 +8179,13 @@
|
|
|
8170
8179
|
const step = vue.computed(() => (props.step === 0 ? 1 : props.step));
|
|
8171
8180
|
const minMaxDiff = vue.computed(() => props.max - props.min);
|
|
8172
8181
|
|
|
8182
|
+
const markerStep = vue.computed(() => (
|
|
8183
|
+
isNumber(props.markers) === true ? props.markers : step.value)
|
|
8184
|
+
);
|
|
8185
|
+
|
|
8173
8186
|
const markerStyle = vue.computed(() => {
|
|
8174
8187
|
if (minMaxDiff.value !== 0) {
|
|
8175
|
-
const size = 100 *
|
|
8188
|
+
const size = 100 * markerStep.value / minMaxDiff.value;
|
|
8176
8189
|
|
|
8177
8190
|
return {
|
|
8178
8191
|
backgroundSize: props.vertical === true
|
|
@@ -8552,7 +8565,7 @@
|
|
|
8552
8565
|
})
|
|
8553
8566
|
];
|
|
8554
8567
|
|
|
8555
|
-
props.markers
|
|
8568
|
+
props.markers !== false && track.push(
|
|
8556
8569
|
vue.h('div', {
|
|
8557
8570
|
class: `q-slider__track-markers q-slider__track-markers${ state.axis.value } absolute-full fit`,
|
|
8558
8571
|
style: state.markerStyle.value
|
|
@@ -9328,6 +9341,12 @@
|
|
|
9328
9341
|
const rootRef = vue.ref(null);
|
|
9329
9342
|
const tabIndicatorRef = vue.ref(null);
|
|
9330
9343
|
|
|
9344
|
+
const ripple = vue.computed(() => (
|
|
9345
|
+
props.disable === true
|
|
9346
|
+
? false
|
|
9347
|
+
: props.ripple
|
|
9348
|
+
));
|
|
9349
|
+
|
|
9331
9350
|
const isActive = vue.computed(() => $tabs.currentModel.value === props.name);
|
|
9332
9351
|
|
|
9333
9352
|
const classes = vue.computed(() =>
|
|
@@ -9484,13 +9503,9 @@
|
|
|
9484
9503
|
...customData
|
|
9485
9504
|
};
|
|
9486
9505
|
|
|
9487
|
-
return
|
|
9488
|
-
tag,
|
|
9489
|
-
|
|
9490
|
-
getContent(),
|
|
9491
|
-
'main',
|
|
9492
|
-
props.ripple !== false && props.disable === false,
|
|
9493
|
-
() => [ [ Ripple, props.ripple ] ]
|
|
9506
|
+
return vue.withDirectives(
|
|
9507
|
+
vue.h(tag, data, getContent()),
|
|
9508
|
+
[ [ Ripple, ripple.value ] ]
|
|
9494
9509
|
)
|
|
9495
9510
|
}
|
|
9496
9511
|
|
|
@@ -9924,6 +9939,7 @@
|
|
|
9924
9939
|
palette: Array,
|
|
9925
9940
|
|
|
9926
9941
|
noHeader: Boolean,
|
|
9942
|
+
noHeaderTabs: Boolean,
|
|
9927
9943
|
noFooter: Boolean,
|
|
9928
9944
|
|
|
9929
9945
|
square: Boolean,
|
|
@@ -10009,7 +10025,7 @@
|
|
|
10009
10025
|
? true
|
|
10010
10026
|
: luminosity(model.value) > 0.4;
|
|
10011
10027
|
|
|
10012
|
-
return 'q-color-picker__header-content
|
|
10028
|
+
return 'q-color-picker__header-content'
|
|
10013
10029
|
+ ` q-color-picker__header-content--${ light ? 'light' : 'dark' }`
|
|
10014
10030
|
});
|
|
10015
10031
|
|
|
@@ -10360,6 +10376,63 @@
|
|
|
10360
10376
|
}
|
|
10361
10377
|
|
|
10362
10378
|
function getHeader () {
|
|
10379
|
+
const child = [];
|
|
10380
|
+
|
|
10381
|
+
props.noHeaderTabs !== true && child.push(
|
|
10382
|
+
vue.h(QTabs, {
|
|
10383
|
+
class: 'q-color-picker__header-tabs',
|
|
10384
|
+
modelValue: topView.value,
|
|
10385
|
+
dense: true,
|
|
10386
|
+
align: 'justify',
|
|
10387
|
+
...getCache('topVTab', {
|
|
10388
|
+
'onUpdate:modelValue': val => { topView.value = val; }
|
|
10389
|
+
})
|
|
10390
|
+
}, () => [
|
|
10391
|
+
vue.h(QTab, {
|
|
10392
|
+
label: 'HEX' + (hasAlpha.value === true ? 'A' : ''),
|
|
10393
|
+
name: 'hex',
|
|
10394
|
+
ripple: false
|
|
10395
|
+
}),
|
|
10396
|
+
|
|
10397
|
+
vue.h(QTab, {
|
|
10398
|
+
label: 'RGB' + (hasAlpha.value === true ? 'A' : ''),
|
|
10399
|
+
name: 'rgb',
|
|
10400
|
+
ripple: false
|
|
10401
|
+
})
|
|
10402
|
+
])
|
|
10403
|
+
);
|
|
10404
|
+
|
|
10405
|
+
child.push(
|
|
10406
|
+
vue.h('div', {
|
|
10407
|
+
class: 'q-color-picker__header-banner row flex-center no-wrap'
|
|
10408
|
+
}, [
|
|
10409
|
+
vue.h('input', {
|
|
10410
|
+
class: 'fit',
|
|
10411
|
+
value: model.value[ topView.value ],
|
|
10412
|
+
...(editable.value !== true
|
|
10413
|
+
? { readonly: true }
|
|
10414
|
+
: {}
|
|
10415
|
+
),
|
|
10416
|
+
...getCache('topIn', {
|
|
10417
|
+
onInput: evt => {
|
|
10418
|
+
updateErrorIcon(onEditorChange(evt) === true);
|
|
10419
|
+
},
|
|
10420
|
+
onChange: stop,
|
|
10421
|
+
onBlur: evt => {
|
|
10422
|
+
onEditorChange(evt, true) === true && proxy.$forceUpdate();
|
|
10423
|
+
updateErrorIcon(false);
|
|
10424
|
+
}
|
|
10425
|
+
})
|
|
10426
|
+
}),
|
|
10427
|
+
|
|
10428
|
+
vue.h(QIcon, {
|
|
10429
|
+
ref: errorIconRef,
|
|
10430
|
+
class: 'q-color-picker__error-icon absolute no-pointer-events',
|
|
10431
|
+
name: $q.iconSet.type.negative
|
|
10432
|
+
})
|
|
10433
|
+
])
|
|
10434
|
+
);
|
|
10435
|
+
|
|
10363
10436
|
return vue.h('div', {
|
|
10364
10437
|
class: 'q-color-picker__header relative-position overflow-hidden'
|
|
10365
10438
|
}, [
|
|
@@ -10368,57 +10441,7 @@
|
|
|
10368
10441
|
vue.h('div', {
|
|
10369
10442
|
class: headerClass.value,
|
|
10370
10443
|
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
|
-
])
|
|
10444
|
+
}, child)
|
|
10422
10445
|
])
|
|
10423
10446
|
}
|
|
10424
10447
|
|
|
@@ -10654,19 +10677,23 @@
|
|
|
10654
10677
|
}
|
|
10655
10678
|
|
|
10656
10679
|
function getPaletteTab () {
|
|
10680
|
+
const fn = color => vue.h('div', {
|
|
10681
|
+
class: 'q-color-picker__cube col-auto',
|
|
10682
|
+
style: { backgroundColor: color },
|
|
10683
|
+
...(
|
|
10684
|
+
editable.value === true
|
|
10685
|
+
? getCache('palette#' + color, {
|
|
10686
|
+
onClick: () => { onPalettePick(color); }
|
|
10687
|
+
})
|
|
10688
|
+
: {}
|
|
10689
|
+
)
|
|
10690
|
+
});
|
|
10691
|
+
|
|
10657
10692
|
return [
|
|
10658
10693
|
vue.h('div', {
|
|
10659
10694
|
class: 'row items-center q-color-picker__palette-rows'
|
|
10660
10695
|
+ (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
|
-
})))
|
|
10696
|
+
}, computedPalette.value.map(fn))
|
|
10670
10697
|
]
|
|
10671
10698
|
}
|
|
10672
10699
|
|
|
@@ -11215,6 +11242,96 @@
|
|
|
11215
11242
|
)
|
|
11216
11243
|
}
|
|
11217
11244
|
|
|
11245
|
+
function formatTimezone (offset, delimeter = '') {
|
|
11246
|
+
const
|
|
11247
|
+
sign = offset > 0 ? '-' : '+',
|
|
11248
|
+
absOffset = Math.abs(offset),
|
|
11249
|
+
hours = Math.floor(absOffset / 60),
|
|
11250
|
+
minutes = absOffset % 60;
|
|
11251
|
+
|
|
11252
|
+
return sign + pad(hours) + delimeter + pad(minutes)
|
|
11253
|
+
}
|
|
11254
|
+
|
|
11255
|
+
function applyYearMonthDayChange (date, mod, sign) {
|
|
11256
|
+
let
|
|
11257
|
+
year = date.getFullYear(),
|
|
11258
|
+
month = date.getMonth(),
|
|
11259
|
+
day = date.getDate();
|
|
11260
|
+
|
|
11261
|
+
if (mod.years !== void 0) {
|
|
11262
|
+
year += sign * mod.years;
|
|
11263
|
+
}
|
|
11264
|
+
|
|
11265
|
+
if (mod.months !== void 0) {
|
|
11266
|
+
month += sign * mod.months;
|
|
11267
|
+
}
|
|
11268
|
+
|
|
11269
|
+
if (mod.days !== void 0) {
|
|
11270
|
+
day += sign * mod.days;
|
|
11271
|
+
}
|
|
11272
|
+
|
|
11273
|
+
date.setDate(1);
|
|
11274
|
+
date.setMonth(2);
|
|
11275
|
+
|
|
11276
|
+
date.setFullYear(year);
|
|
11277
|
+
date.setMonth(month);
|
|
11278
|
+
date.setDate(day);
|
|
11279
|
+
|
|
11280
|
+
return date
|
|
11281
|
+
}
|
|
11282
|
+
|
|
11283
|
+
function getChange (date, mod, sign) {
|
|
11284
|
+
const
|
|
11285
|
+
d = new Date(date),
|
|
11286
|
+
t = mod.years !== void 0 || mod.months !== void 0 || mod.days !== void 0
|
|
11287
|
+
? applyYearMonthDayChange(d, mod, sign)
|
|
11288
|
+
: d;
|
|
11289
|
+
|
|
11290
|
+
Object.keys(mod).forEach(key => {
|
|
11291
|
+
if (key !== 'years' && key !== 'months' && key !== 'days') {
|
|
11292
|
+
const op = capitalize(key);
|
|
11293
|
+
t[ `set${ op }` ](t[ `get${ op }` ]() + sign * mod[ key ]);
|
|
11294
|
+
}
|
|
11295
|
+
});
|
|
11296
|
+
|
|
11297
|
+
return t
|
|
11298
|
+
}
|
|
11299
|
+
|
|
11300
|
+
function applyYearMonthDay (date, mod, middle) {
|
|
11301
|
+
const
|
|
11302
|
+
year = mod.year !== void 0 ? mod.year : date[ `get${ middle }FullYear` ](),
|
|
11303
|
+
month = mod.month !== void 0 ? mod.month - 1 : date[ `get${ middle }Month` ](),
|
|
11304
|
+
maxDay = (new Date(year, month + 1, 0)).getDate(),
|
|
11305
|
+
day = Math.min(maxDay, mod.date !== void 0 ? mod.date : date[ `get${ middle }Date` ]());
|
|
11306
|
+
|
|
11307
|
+
date[ `set${ middle }Date` ](1);
|
|
11308
|
+
date[ `set${ middle }Month` ](2);
|
|
11309
|
+
|
|
11310
|
+
date[ `set${ middle }FullYear` ](year);
|
|
11311
|
+
date[ `set${ middle }Month` ](month);
|
|
11312
|
+
date[ `set${ middle }Date` ](day);
|
|
11313
|
+
|
|
11314
|
+
return date
|
|
11315
|
+
}
|
|
11316
|
+
|
|
11317
|
+
function adjustDate (date, mod, utc) {
|
|
11318
|
+
const
|
|
11319
|
+
middle = utc === true ? 'UTC' : '',
|
|
11320
|
+
d = new Date(date),
|
|
11321
|
+
t = mod.year !== void 0 || mod.month !== void 0 || mod.date !== void 0
|
|
11322
|
+
? applyYearMonthDay(d, mod, middle)
|
|
11323
|
+
: d;
|
|
11324
|
+
|
|
11325
|
+
Object.keys(mod).forEach(key => {
|
|
11326
|
+
if (key !== 'year' && key !== 'month' && key !== 'date') {
|
|
11327
|
+
const op = key.charAt(0).toUpperCase() + key.slice(1);
|
|
11328
|
+
t[ `set${ middle }${ op }` ](mod[ key ]);
|
|
11329
|
+
}
|
|
11330
|
+
});
|
|
11331
|
+
|
|
11332
|
+
return t
|
|
11333
|
+
}
|
|
11334
|
+
|
|
11218
11335
|
function extractDate (str, mask, dateLocale) {
|
|
11219
11336
|
const d = __splitDate(str, mask, dateLocale);
|
|
11220
11337
|
|
|
@@ -11232,7 +11349,7 @@
|
|
|
11232
11349
|
|
|
11233
11350
|
return d.timezoneOffset === null || d.timezoneOffset === tzOffset
|
|
11234
11351
|
? date
|
|
11235
|
-
: getChange(date, { minutes: d.timezoneOffset - tzOffset },
|
|
11352
|
+
: getChange(date, { minutes: d.timezoneOffset - tzOffset }, 1)
|
|
11236
11353
|
}
|
|
11237
11354
|
|
|
11238
11355
|
function __splitDate (str, mask, dateLocale, calendar, defaultModel) {
|
|
@@ -11373,43 +11490,6 @@
|
|
|
11373
11490
|
return date
|
|
11374
11491
|
}
|
|
11375
11492
|
|
|
11376
|
-
function formatTimezone (offset, delimeter = '') {
|
|
11377
|
-
const
|
|
11378
|
-
sign = offset > 0 ? '-' : '+',
|
|
11379
|
-
absOffset = Math.abs(offset),
|
|
11380
|
-
hours = Math.floor(absOffset / 60),
|
|
11381
|
-
minutes = absOffset % 60;
|
|
11382
|
-
|
|
11383
|
-
return sign + pad(hours) + delimeter + pad(minutes)
|
|
11384
|
-
}
|
|
11385
|
-
|
|
11386
|
-
function setMonth (date, newMonth /* 1-based */) {
|
|
11387
|
-
const
|
|
11388
|
-
test = new Date(date.getFullYear(), newMonth, 0, 0, 0, 0, 0),
|
|
11389
|
-
days = test.getDate();
|
|
11390
|
-
|
|
11391
|
-
date.setMonth(newMonth - 1, Math.min(days, date.getDate()));
|
|
11392
|
-
}
|
|
11393
|
-
|
|
11394
|
-
function getChange (date, mod, add) {
|
|
11395
|
-
const
|
|
11396
|
-
t = new Date(date),
|
|
11397
|
-
sign = (add ? 1 : -1);
|
|
11398
|
-
|
|
11399
|
-
Object.keys(mod).forEach(key => {
|
|
11400
|
-
if (key === 'months') {
|
|
11401
|
-
setMonth(t, t.getMonth() + 1 + sign * mod.months);
|
|
11402
|
-
return
|
|
11403
|
-
}
|
|
11404
|
-
|
|
11405
|
-
const op = key === 'years'
|
|
11406
|
-
? 'FullYear'
|
|
11407
|
-
: capitalize(key === 'days' ? 'date' : key);
|
|
11408
|
-
t[ `set${ op }` ](t[ `get${ op }` ]() + sign * mod[ key ]);
|
|
11409
|
-
});
|
|
11410
|
-
return t
|
|
11411
|
-
}
|
|
11412
|
-
|
|
11413
11493
|
function isValid (date) {
|
|
11414
11494
|
return typeof date === 'number'
|
|
11415
11495
|
? true
|
|
@@ -11467,30 +11547,10 @@
|
|
|
11467
11547
|
}
|
|
11468
11548
|
|
|
11469
11549
|
function addToDate (date, mod) {
|
|
11470
|
-
return getChange(date, mod,
|
|
11550
|
+
return getChange(date, mod, 1)
|
|
11471
11551
|
}
|
|
11472
11552
|
function subtractFromDate (date, mod) {
|
|
11473
|
-
return getChange(date, mod,
|
|
11474
|
-
}
|
|
11475
|
-
|
|
11476
|
-
function adjustDate (date, mod, utc) {
|
|
11477
|
-
const
|
|
11478
|
-
t = new Date(date),
|
|
11479
|
-
prefix = `set${ utc === true ? 'UTC' : '' }`;
|
|
11480
|
-
|
|
11481
|
-
Object.keys(mod).forEach(key => {
|
|
11482
|
-
if (key === 'month') {
|
|
11483
|
-
setMonth(t, mod.month);
|
|
11484
|
-
return
|
|
11485
|
-
}
|
|
11486
|
-
|
|
11487
|
-
const op = key === 'year'
|
|
11488
|
-
? 'FullYear'
|
|
11489
|
-
: key.charAt(0).toUpperCase() + key.slice(1);
|
|
11490
|
-
t[ `${ prefix }${ op }` ](mod[ key ]);
|
|
11491
|
-
});
|
|
11492
|
-
|
|
11493
|
-
return t
|
|
11553
|
+
return getChange(date, mod, -1)
|
|
11494
11554
|
}
|
|
11495
11555
|
|
|
11496
11556
|
function startOfDate (date, unit, utc) {
|
|
@@ -13749,6 +13809,10 @@
|
|
|
13749
13809
|
: transitionShow.value
|
|
13750
13810
|
));
|
|
13751
13811
|
|
|
13812
|
+
const transitionStyle = vue.computed(
|
|
13813
|
+
() => `--q-transition-duration: ${ props.transitionDuration }ms`
|
|
13814
|
+
);
|
|
13815
|
+
|
|
13752
13816
|
const useBackdrop = vue.computed(() => showing.value === true && props.seamless !== true);
|
|
13753
13817
|
|
|
13754
13818
|
const onEvents = vue.computed(() => (
|
|
@@ -13989,6 +14053,7 @@
|
|
|
13989
14053
|
useBackdrop.value === true
|
|
13990
14054
|
? vue.h('div', {
|
|
13991
14055
|
class: 'q-dialog__backdrop fixed-full',
|
|
14056
|
+
style: transitionStyle.value,
|
|
13992
14057
|
'aria-hidden': 'true',
|
|
13993
14058
|
onMousedown: onBackdropClick
|
|
13994
14059
|
})
|
|
@@ -14003,6 +14068,7 @@
|
|
|
14003
14068
|
? vue.h('div', {
|
|
14004
14069
|
ref: innerRef,
|
|
14005
14070
|
class: classes.value,
|
|
14071
|
+
style: transitionStyle.value,
|
|
14006
14072
|
tabindex: -1,
|
|
14007
14073
|
...onEvents.value
|
|
14008
14074
|
}, hSlot(slots.default))
|
|
@@ -14464,6 +14530,9 @@
|
|
|
14464
14530
|
flagMiniAnimate.value = true;
|
|
14465
14531
|
timerMini = setTimeout(() => {
|
|
14466
14532
|
flagMiniAnimate.value = false;
|
|
14533
|
+
if (vm && vm.proxy && vm.proxy.$el) {
|
|
14534
|
+
vm.proxy.$el.classList.remove('q-drawer--mini-animate');
|
|
14535
|
+
}
|
|
14467
14536
|
}, 150);
|
|
14468
14537
|
}
|
|
14469
14538
|
|
|
@@ -19790,7 +19859,11 @@
|
|
|
19790
19859
|
size: {
|
|
19791
19860
|
type: [ String, Number ],
|
|
19792
19861
|
default: 42
|
|
19793
|
-
}
|
|
19862
|
+
},
|
|
19863
|
+
|
|
19864
|
+
label: String,
|
|
19865
|
+
labelClass: String,
|
|
19866
|
+
labelStyle: [ String, Array, Object ]
|
|
19794
19867
|
},
|
|
19795
19868
|
|
|
19796
19869
|
setup (props, { slots }) {
|
|
@@ -19804,6 +19877,31 @@
|
|
|
19804
19877
|
+ (isDark.value === true ? ' q-inner-loading--dark' : '')
|
|
19805
19878
|
);
|
|
19806
19879
|
|
|
19880
|
+
const labelClass = vue.computed(() =>
|
|
19881
|
+
'q-inner-loading__label'
|
|
19882
|
+
+ (props.labelClass !== void 0 ? ` ${ props.labelClass}` : '')
|
|
19883
|
+
);
|
|
19884
|
+
|
|
19885
|
+
function getInner () {
|
|
19886
|
+
const child = [
|
|
19887
|
+
vue.h(QSpinner, {
|
|
19888
|
+
size: props.size,
|
|
19889
|
+
color: props.color
|
|
19890
|
+
})
|
|
19891
|
+
];
|
|
19892
|
+
|
|
19893
|
+
if (props.label !== void 0) {
|
|
19894
|
+
child.push(
|
|
19895
|
+
vue.h('div', {
|
|
19896
|
+
class: labelClass.value,
|
|
19897
|
+
style: props.labelStyle
|
|
19898
|
+
}, [ props.label ])
|
|
19899
|
+
);
|
|
19900
|
+
}
|
|
19901
|
+
|
|
19902
|
+
return child
|
|
19903
|
+
}
|
|
19904
|
+
|
|
19807
19905
|
function getContent () {
|
|
19808
19906
|
return props.showing === true
|
|
19809
19907
|
? vue.h(
|
|
@@ -19811,12 +19909,7 @@
|
|
|
19811
19909
|
{ class: classes.value, style: transitionStyle.value },
|
|
19812
19910
|
slots.default !== void 0
|
|
19813
19911
|
? slots.default()
|
|
19814
|
-
:
|
|
19815
|
-
vue.h(QSpinner, {
|
|
19816
|
-
size: props.size,
|
|
19817
|
-
color: props.color
|
|
19818
|
-
})
|
|
19819
|
-
]
|
|
19912
|
+
: getInner()
|
|
19820
19913
|
)
|
|
19821
19914
|
: null
|
|
19822
19915
|
}
|
|
@@ -21929,7 +22022,7 @@
|
|
|
21929
22022
|
|
|
21930
22023
|
emits: [ 'update:modelValue' ],
|
|
21931
22024
|
|
|
21932
|
-
setup (props, { emit }) {
|
|
22025
|
+
setup (props, { emit, slots }) {
|
|
21933
22026
|
const { proxy: { $q } } = vue.getCurrentInstance();
|
|
21934
22027
|
|
|
21935
22028
|
const arrayModel = Array.isArray(props.modelValue);
|
|
@@ -21973,24 +22066,34 @@
|
|
|
21973
22066
|
return () => vue.h('div', {
|
|
21974
22067
|
class: classes.value,
|
|
21975
22068
|
...attrs.value
|
|
21976
|
-
}, props.options.map(opt =>
|
|
21977
|
-
|
|
21978
|
-
|
|
21979
|
-
|
|
21980
|
-
|
|
21981
|
-
|
|
21982
|
-
|
|
21983
|
-
|
|
21984
|
-
|
|
21985
|
-
|
|
21986
|
-
|
|
21987
|
-
|
|
21988
|
-
|
|
21989
|
-
|
|
21990
|
-
|
|
21991
|
-
|
|
21992
|
-
|
|
21993
|
-
|
|
22069
|
+
}, props.options.map((opt, i) => {
|
|
22070
|
+
const child = slots[ 'label-' + i ] !== void 0
|
|
22071
|
+
? () => slots[ 'label-' + i ](opt)
|
|
22072
|
+
: (
|
|
22073
|
+
slots.label !== void 0
|
|
22074
|
+
? () => slots.label(opt)
|
|
22075
|
+
: void 0
|
|
22076
|
+
);
|
|
22077
|
+
|
|
22078
|
+
return vue.h('div', [
|
|
22079
|
+
vue.h(component.value, {
|
|
22080
|
+
modelValue: props.modelValue,
|
|
22081
|
+
val: opt.value,
|
|
22082
|
+
name: opt.name === void 0 ? props.name : opt.name,
|
|
22083
|
+
disable: props.disable || opt.disable,
|
|
22084
|
+
label: child === void 0 ? opt.label : null,
|
|
22085
|
+
leftLabel: opt.leftLabel === void 0 ? props.leftLabel : opt.leftLabel,
|
|
22086
|
+
color: opt.color === void 0 ? props.color : opt.color,
|
|
22087
|
+
checkedIcon: opt.checkedIcon,
|
|
22088
|
+
uncheckedIcon: opt.uncheckedIcon,
|
|
22089
|
+
dark: opt.dark || isDark.value,
|
|
22090
|
+
size: opt.size === void 0 ? props.size : opt.size,
|
|
22091
|
+
dense: props.dense,
|
|
22092
|
+
keepColor: opt.keepColor === void 0 ? props.keepColor : opt.keepColor,
|
|
22093
|
+
'onUpdate:modelValue': onUpdateModelValue
|
|
22094
|
+
}, child)
|
|
22095
|
+
])
|
|
22096
|
+
}))
|
|
21994
22097
|
}
|
|
21995
22098
|
});
|
|
21996
22099
|
|
|
@@ -23942,7 +24045,7 @@
|
|
|
23942
24045
|
})
|
|
23943
24046
|
];
|
|
23944
24047
|
|
|
23945
|
-
props.markers
|
|
24048
|
+
props.markers !== false && track.push(
|
|
23946
24049
|
vue.h('div', {
|
|
23947
24050
|
class: `q-slider__track-markers q-slider__track-markers${ state.axis.value } absolute-full fit`,
|
|
23948
24051
|
style: state.markerStyle.value
|
|
@@ -24068,6 +24171,51 @@
|
|
|
24068
24171
|
}
|
|
24069
24172
|
});
|
|
24070
24173
|
|
|
24174
|
+
const stars = vue.computed(() => {
|
|
24175
|
+
const
|
|
24176
|
+
acc = [],
|
|
24177
|
+
icons = iconData.value,
|
|
24178
|
+
ceil = Math.ceil(props.modelValue);
|
|
24179
|
+
|
|
24180
|
+
const halfIndex = props.iconHalf === void 0 || ceil === props.modelValue
|
|
24181
|
+
? -1
|
|
24182
|
+
: ceil;
|
|
24183
|
+
|
|
24184
|
+
for (let i = 1; i <= props.max; i++) {
|
|
24185
|
+
const
|
|
24186
|
+
active = (mouseModel.value === 0 && props.modelValue >= i) || (mouseModel.value > 0 && mouseModel.value >= i),
|
|
24187
|
+
half = halfIndex === i && mouseModel.value < i,
|
|
24188
|
+
exSelected = mouseModel.value > 0 && (half === true ? ceil : props.modelValue) >= i && mouseModel.value < i,
|
|
24189
|
+
color = half === true
|
|
24190
|
+
? (i <= icons.halfColorLen ? props.colorHalf[ i - 1 ] : icons.halfColor)
|
|
24191
|
+
: (
|
|
24192
|
+
icons.selColor !== void 0 && active === true
|
|
24193
|
+
? (i <= icons.selColorLen ? props.colorSelected[ i - 1 ] : icons.selColor)
|
|
24194
|
+
: (i <= icons.colorLen ? props.color[ i - 1 ] : icons.color)
|
|
24195
|
+
);
|
|
24196
|
+
|
|
24197
|
+
acc.push({
|
|
24198
|
+
name: (
|
|
24199
|
+
half === true
|
|
24200
|
+
? (i <= icons.halfIconLen ? props.iconHalf[ i - 1 ] : icons.halfIcon)
|
|
24201
|
+
: (
|
|
24202
|
+
icons.selIcon !== void 0 && (active === true || exSelected === true)
|
|
24203
|
+
? (i <= icons.selIconLen ? props.iconSelected[ i - 1 ] : icons.selIcon)
|
|
24204
|
+
: (i <= icons.iconLen ? props.icon[ i - 1 ] : icons.icon)
|
|
24205
|
+
)
|
|
24206
|
+
) || $q.iconSet.rating.icon,
|
|
24207
|
+
|
|
24208
|
+
classes: 'q-rating__icon'
|
|
24209
|
+
+ (active === true || half === true ? ' q-rating__icon--active' : '')
|
|
24210
|
+
+ (exSelected === true ? ' q-rating__icon--exselected' : '')
|
|
24211
|
+
+ (mouseModel.value === i ? ' q-rating__icon--hovered' : '')
|
|
24212
|
+
+ (color !== void 0 ? ` text-${ color }` : '')
|
|
24213
|
+
});
|
|
24214
|
+
}
|
|
24215
|
+
|
|
24216
|
+
return acc
|
|
24217
|
+
});
|
|
24218
|
+
|
|
24071
24219
|
const attributes = vue.computed(() => {
|
|
24072
24220
|
if (props.disable === true) {
|
|
24073
24221
|
return { 'aria-disabled': 'true' }
|
|
@@ -24077,6 +24225,8 @@
|
|
|
24077
24225
|
}
|
|
24078
24226
|
});
|
|
24079
24227
|
|
|
24228
|
+
const tabindex = vue.computed(() => (editable.value === true ? 0 : null));
|
|
24229
|
+
|
|
24080
24230
|
function set (value) {
|
|
24081
24231
|
if (editable.value === true) {
|
|
24082
24232
|
const
|
|
@@ -24124,57 +24274,29 @@
|
|
|
24124
24274
|
});
|
|
24125
24275
|
|
|
24126
24276
|
return () => {
|
|
24127
|
-
const
|
|
24128
|
-
child = [],
|
|
24129
|
-
tabindex = editable.value === true ? 0 : null,
|
|
24130
|
-
icons = iconData.value,
|
|
24131
|
-
ceil = Math.ceil(props.modelValue);
|
|
24277
|
+
const child = [];
|
|
24132
24278
|
|
|
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 }` : '');
|
|
24279
|
+
stars.value.forEach(({ classes, name }, index) => {
|
|
24280
|
+
const i = index + 1;
|
|
24161
24281
|
|
|
24162
24282
|
child.push(
|
|
24163
|
-
vue.h(
|
|
24283
|
+
vue.h('div', {
|
|
24164
24284
|
key: i,
|
|
24165
24285
|
ref: vm => { iconRefs[ `rt${ i }` ] = vm; },
|
|
24166
|
-
class:
|
|
24167
|
-
|
|
24168
|
-
tabindex,
|
|
24286
|
+
class: 'q-rating__icon-container flex flex-center',
|
|
24287
|
+
tabindex: tabindex.value,
|
|
24169
24288
|
onClick () { set(i); },
|
|
24170
24289
|
onMouseover () { setHoverValue(i); },
|
|
24171
24290
|
onMouseout: resetMouseModel,
|
|
24172
24291
|
onFocus () { setHoverValue(i); },
|
|
24173
24292
|
onBlur: resetMouseModel,
|
|
24174
24293
|
onKeyup (e) { onKeyup(e, i); }
|
|
24175
|
-
},
|
|
24294
|
+
}, hMergeSlot(
|
|
24295
|
+
slots[ `tip-${ i }` ],
|
|
24296
|
+
[ vue.h(QIcon, { class: classes, name }) ]
|
|
24297
|
+
))
|
|
24176
24298
|
);
|
|
24177
|
-
}
|
|
24299
|
+
});
|
|
24178
24300
|
|
|
24179
24301
|
if (props.name !== void 0 && props.disable !== true) {
|
|
24180
24302
|
injectFormInput(child, 'push');
|
|
@@ -25590,7 +25712,7 @@
|
|
|
25590
25712
|
const tabindex = vue.computed(() => (state.focused.value === true ? props.tabindex : -1));
|
|
25591
25713
|
|
|
25592
25714
|
const comboboxAttrs = vue.computed(() => ({
|
|
25593
|
-
tabindex: tabindex
|
|
25715
|
+
tabindex: props.tabindex,
|
|
25594
25716
|
role: 'combobox',
|
|
25595
25717
|
'aria-label': props.label,
|
|
25596
25718
|
'aria-autocomplete': props.useInput === true ? 'list' : 'none',
|
|
@@ -26874,6 +26996,10 @@
|
|
|
26874
26996
|
validator: v => skeletonAnimations.includes(v),
|
|
26875
26997
|
default: 'wave'
|
|
26876
26998
|
},
|
|
26999
|
+
animationSpeed: {
|
|
27000
|
+
type: [ String, Number ],
|
|
27001
|
+
default: 1500
|
|
27002
|
+
},
|
|
26877
27003
|
|
|
26878
27004
|
square: Boolean,
|
|
26879
27005
|
bordered: Boolean,
|
|
@@ -26887,11 +27013,17 @@
|
|
|
26887
27013
|
const vm = vue.getCurrentInstance();
|
|
26888
27014
|
const isDark = useDark(props, vm.proxy.$q);
|
|
26889
27015
|
|
|
26890
|
-
const style = vue.computed(() =>
|
|
26891
|
-
props.size !== void 0
|
|
26892
|
-
?
|
|
26893
|
-
:
|
|
26894
|
-
|
|
27016
|
+
const style = vue.computed(() => {
|
|
27017
|
+
const size = props.size !== void 0
|
|
27018
|
+
? [ props.size, props.size ]
|
|
27019
|
+
: [ props.width, props.height ];
|
|
27020
|
+
|
|
27021
|
+
return {
|
|
27022
|
+
'--q-skeleton-speed': `${ props.animationSpeed }ms`,
|
|
27023
|
+
width: size[ 0 ],
|
|
27024
|
+
height: size[ 1 ]
|
|
27025
|
+
}
|
|
27026
|
+
});
|
|
26895
27027
|
|
|
26896
27028
|
const classes = vue.computed(() =>
|
|
26897
27029
|
`q-skeleton q-skeleton--${ isDark.value === true ? 'dark' : 'light' } q-skeleton--type-${ props.type }`
|
|
@@ -29379,6 +29511,12 @@
|
|
|
29379
29511
|
+ (isDisable.value === true ? ' q-stepper__tab--disabled' : '')
|
|
29380
29512
|
});
|
|
29381
29513
|
|
|
29514
|
+
const ripple = vue.computed(() => (
|
|
29515
|
+
props.stepper.headerNav !== true
|
|
29516
|
+
? false
|
|
29517
|
+
: headerNav.value
|
|
29518
|
+
));
|
|
29519
|
+
|
|
29382
29520
|
function onActivate () {
|
|
29383
29521
|
blurRef.value !== null && blurRef.value.focus();
|
|
29384
29522
|
isActive.value === false && props.goToPanel(props.step.name);
|
|
@@ -29434,13 +29572,9 @@
|
|
|
29434
29572
|
);
|
|
29435
29573
|
}
|
|
29436
29574
|
|
|
29437
|
-
return
|
|
29438
|
-
'div',
|
|
29439
|
-
|
|
29440
|
-
child,
|
|
29441
|
-
'head',
|
|
29442
|
-
props.stepper.headerNav === true && headerNav.value !== false,
|
|
29443
|
-
() => [ [ Ripple, headerNav.value ] ]
|
|
29575
|
+
return vue.withDirectives(
|
|
29576
|
+
vue.h('div', data, child),
|
|
29577
|
+
[ [ Ripple, ripple.value ] ]
|
|
29444
29578
|
)
|
|
29445
29579
|
}
|
|
29446
29580
|
}
|
|
@@ -31927,8 +32061,6 @@
|
|
|
31927
32061
|
defaultDateModel.value
|
|
31928
32062
|
);
|
|
31929
32063
|
|
|
31930
|
-
console.log({ ...model });
|
|
31931
|
-
|
|
31932
32064
|
if (
|
|
31933
32065
|
model.dateHash !== innerModel.value.dateHash
|
|
31934
32066
|
|| model.timeHash !== innerModel.value.timeHash
|
|
@@ -38587,7 +38719,7 @@
|
|
|
38587
38719
|
});
|
|
38588
38720
|
|
|
38589
38721
|
var index_umd = {
|
|
38590
|
-
version: '2.
|
|
38722
|
+
version: '2.2.2',
|
|
38591
38723
|
install (app, opts) {
|
|
38592
38724
|
installQuasar(app, {
|
|
38593
38725
|
components,
|