quasar 1.18.3 → 1.18.4
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/QKnob.json +18 -0
- package/dist/api/QRange.json +1 -1
- package/dist/api/QSlider.json +1 -1
- package/dist/icon-set/bootstrap-icons.umd.min.js +1 -1
- package/dist/icon-set/eva-icons.umd.min.js +1 -1
- package/dist/icon-set/fontawesome-v5-pro.umd.min.js +1 -1
- package/dist/icon-set/fontawesome-v5.umd.min.js +1 -1
- package/dist/icon-set/ionicons-v4.umd.min.js +1 -1
- package/dist/icon-set/line-awesome.umd.min.js +1 -1
- package/dist/icon-set/material-icons-outlined.umd.min.js +1 -1
- package/dist/icon-set/material-icons-round.umd.min.js +1 -1
- package/dist/icon-set/material-icons-sharp.umd.min.js +1 -1
- package/dist/icon-set/material-icons.umd.min.js +1 -1
- package/dist/icon-set/mdi-v3.umd.min.js +1 -1
- package/dist/icon-set/mdi-v4.umd.min.js +1 -1
- package/dist/icon-set/mdi-v5.umd.min.js +1 -1
- package/dist/icon-set/mdi-v6.umd.min.js +1 -1
- package/dist/icon-set/svg-bootstrap-icons.umd.min.js +1 -1
- package/dist/icon-set/svg-eva-icons.umd.min.js +1 -1
- package/dist/icon-set/svg-fontawesome-v5.umd.min.js +1 -1
- package/dist/icon-set/svg-ionicons-v4.umd.min.js +1 -1
- package/dist/icon-set/svg-ionicons-v5.umd.min.js +1 -1
- package/dist/icon-set/svg-ionicons-v6.umd.min.js +1 -1
- package/dist/icon-set/svg-line-awesome.umd.min.js +1 -1
- package/dist/icon-set/svg-material-icons-outlined.umd.min.js +1 -1
- package/dist/icon-set/svg-material-icons-round.umd.min.js +1 -1
- package/dist/icon-set/svg-material-icons-sharp.umd.min.js +1 -1
- package/dist/icon-set/svg-material-icons.umd.min.js +1 -1
- package/dist/icon-set/svg-mdi-v4.umd.min.js +1 -1
- package/dist/icon-set/svg-mdi-v5.umd.min.js +1 -1
- package/dist/icon-set/svg-mdi-v6.umd.min.js +1 -1
- package/dist/icon-set/svg-themify.umd.min.js +1 -1
- package/dist/icon-set/themify.umd.min.js +1 -1
- package/dist/lang/ar.umd.min.js +1 -1
- package/dist/lang/az-latn.umd.min.js +1 -1
- package/dist/lang/bg.umd.min.js +1 -1
- package/dist/lang/ca.umd.min.js +1 -1
- package/dist/lang/cs.umd.min.js +1 -1
- package/dist/lang/da.umd.min.js +1 -1
- package/dist/lang/de.umd.min.js +1 -1
- package/dist/lang/el.umd.min.js +1 -1
- package/dist/lang/en-gb.umd.min.js +1 -1
- package/dist/lang/en-us.umd.min.js +1 -1
- package/dist/lang/eo.umd.min.js +1 -1
- package/dist/lang/es.umd.min.js +1 -1
- package/dist/lang/et.umd.min.js +1 -1
- package/dist/lang/fa-ir.umd.min.js +1 -1
- package/dist/lang/fa.umd.min.js +1 -1
- package/dist/lang/fi.umd.min.js +1 -1
- package/dist/lang/fr.umd.min.js +1 -1
- package/dist/lang/gn.umd.min.js +1 -1
- package/dist/lang/he.umd.min.js +1 -1
- package/dist/lang/hr.umd.min.js +1 -1
- package/dist/lang/hu.umd.min.js +1 -1
- package/dist/lang/id.umd.min.js +1 -1
- package/dist/lang/is.umd.min.js +1 -1
- package/dist/lang/it.umd.min.js +1 -1
- package/dist/lang/ja.umd.min.js +1 -1
- package/dist/lang/km.umd.min.js +1 -1
- package/dist/lang/ko-kr.umd.min.js +1 -1
- package/dist/lang/kur-ckb.umd.min.js +1 -1
- package/dist/lang/lu.umd.min.js +1 -1
- package/dist/lang/lv.umd.min.js +1 -1
- package/dist/lang/ml.umd.min.js +1 -1
- package/dist/lang/ms.umd.min.js +1 -1
- package/dist/lang/my.umd.min.js +1 -1
- package/dist/lang/nb-no.umd.min.js +1 -1
- package/dist/lang/nl.umd.min.js +1 -1
- package/dist/lang/pl.umd.min.js +1 -1
- package/dist/lang/pt-br.umd.min.js +1 -1
- package/dist/lang/pt.umd.min.js +1 -1
- package/dist/lang/ro.umd.min.js +1 -1
- package/dist/lang/ru.umd.min.js +1 -1
- package/dist/lang/sk.umd.min.js +1 -1
- package/dist/lang/sl.umd.min.js +1 -1
- package/dist/lang/sr.umd.min.js +1 -1
- package/dist/lang/sv.umd.min.js +1 -1
- package/dist/lang/ta.umd.min.js +1 -1
- package/dist/lang/th.umd.min.js +1 -1
- package/dist/lang/tr.umd.min.js +1 -1
- package/dist/lang/ug.umd.min.js +1 -1
- package/dist/lang/uk.umd.min.js +1 -1
- package/dist/lang/vi.umd.min.js +1 -1
- package/dist/lang/zh-hans.umd.min.js +1 -1
- package/dist/lang/zh-hant.umd.min.js +1 -1
- package/dist/quasar.addon.css +1 -1
- package/dist/quasar.addon.rtl.css +1 -1
- package/dist/quasar.common.js +2 -2
- package/dist/quasar.css +1 -1
- package/dist/quasar.esm.js +2 -2
- package/dist/quasar.ie.polyfills.js +1 -1
- package/dist/quasar.ie.polyfills.umd.min.js +1 -1
- package/dist/quasar.rtl.css +1 -1
- package/dist/quasar.sass +1 -1
- package/dist/quasar.styl +1 -1
- package/dist/quasar.umd.js +45 -27
- package/dist/quasar.umd.min.js +2 -2
- package/dist/quasar.umd.modern.js +45 -27
- package/dist/quasar.umd.modern.min.js +2 -2
- package/dist/types/index.d.ts +8 -0
- package/dist/vetur/quasar-attributes.json +8 -0
- package/dist/vetur/quasar-tags.json +2 -0
- package/dist/web-types/web-types.json +21 -3
- package/package.json +1 -1
- package/src/components/knob/QKnob.js +41 -23
- package/src/components/knob/QKnob.json +16 -0
- package/src/components/select/QSelect.js +1 -1
- package/src/components/slider/slider-utils.json +1 -1
- package/src/mixins/mask.js +1 -1
package/dist/types/index.d.ts
CHANGED
|
@@ -4315,6 +4315,14 @@ export interface QKnob extends Vue {
|
|
|
4315
4315
|
* The maximum value that the model (the knob value) should go to
|
|
4316
4316
|
*/
|
|
4317
4317
|
max? : number
|
|
4318
|
+
/**
|
|
4319
|
+
* Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop
|
|
4320
|
+
*/
|
|
4321
|
+
innerMin? : number
|
|
4322
|
+
/**
|
|
4323
|
+
* Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop
|
|
4324
|
+
*/
|
|
4325
|
+
innerMax? : number
|
|
4318
4326
|
/**
|
|
4319
4327
|
* A number representing steps in the value of the model, while adjusting the knob
|
|
4320
4328
|
*/
|
|
@@ -2755,6 +2755,14 @@
|
|
|
2755
2755
|
"type": "number",
|
|
2756
2756
|
"description": "The maximum value that the model (the knob value) should go to"
|
|
2757
2757
|
},
|
|
2758
|
+
"q-knob/inner-min": {
|
|
2759
|
+
"type": "number",
|
|
2760
|
+
"description": "Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop"
|
|
2761
|
+
},
|
|
2762
|
+
"q-knob/inner-max": {
|
|
2763
|
+
"type": "number",
|
|
2764
|
+
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop"
|
|
2765
|
+
},
|
|
2758
2766
|
"q-knob/step": {
|
|
2759
2767
|
"type": "number",
|
|
2760
2768
|
"description": "A number representing steps in the value of the model, while adjusting the knob"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "",
|
|
3
3
|
"framework": "vue",
|
|
4
4
|
"name": "quasar",
|
|
5
|
-
"version": "1.18.
|
|
5
|
+
"version": "1.18.4",
|
|
6
6
|
"contributions": {
|
|
7
7
|
"html": {
|
|
8
8
|
"types-syntax": "typescript",
|
|
@@ -9107,6 +9107,24 @@
|
|
|
9107
9107
|
"description": "The maximum value that the model (the knob value) should go to\n\nExamples:\n100\n50",
|
|
9108
9108
|
"doc-url": "https://v1.quasar.dev/vue-components/knob"
|
|
9109
9109
|
},
|
|
9110
|
+
{
|
|
9111
|
+
"name": "inner-min",
|
|
9112
|
+
"value": {
|
|
9113
|
+
"kind": "expression",
|
|
9114
|
+
"type": "number"
|
|
9115
|
+
},
|
|
9116
|
+
"description": "Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop\n\nExamples:\n:inner-min=\"0\"",
|
|
9117
|
+
"doc-url": "https://v1.quasar.dev/vue-components/knob"
|
|
9118
|
+
},
|
|
9119
|
+
{
|
|
9120
|
+
"name": "inner-max",
|
|
9121
|
+
"value": {
|
|
9122
|
+
"kind": "expression",
|
|
9123
|
+
"type": "number"
|
|
9124
|
+
},
|
|
9125
|
+
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop\n\nExamples:\n:inner-max=\"100\"",
|
|
9126
|
+
"doc-url": "https://v1.quasar.dev/vue-components/knob"
|
|
9127
|
+
},
|
|
9110
9128
|
{
|
|
9111
9129
|
"name": "step",
|
|
9112
9130
|
"value": {
|
|
@@ -11557,7 +11575,7 @@
|
|
|
11557
11575
|
"kind": "expression",
|
|
11558
11576
|
"type": "number"
|
|
11559
11577
|
},
|
|
11560
|
-
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop\n\nExamples:\n:max
|
|
11578
|
+
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop\n\nExamples:\n:inner-max=\"100\"",
|
|
11561
11579
|
"doc-url": "https://v1.quasar.dev/vue-components/range"
|
|
11562
11580
|
},
|
|
11563
11581
|
{
|
|
@@ -14139,7 +14157,7 @@
|
|
|
14139
14157
|
"kind": "expression",
|
|
14140
14158
|
"type": "number"
|
|
14141
14159
|
},
|
|
14142
|
-
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop\n\nExamples:\n:max
|
|
14160
|
+
"description": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop\n\nExamples:\n:inner-max=\"100\"",
|
|
14143
14161
|
"doc-url": "https://v1.quasar.dev/vue-components/slider"
|
|
14144
14162
|
},
|
|
14145
14163
|
{
|
package/package.json
CHANGED
|
@@ -25,6 +25,9 @@ export default Vue.extend({
|
|
|
25
25
|
},
|
|
26
26
|
|
|
27
27
|
props: {
|
|
28
|
+
innerMin: Number,
|
|
29
|
+
innerMax: Number,
|
|
30
|
+
|
|
28
31
|
step: {
|
|
29
32
|
type: Number,
|
|
30
33
|
default: 1,
|
|
@@ -41,31 +44,22 @@ export default Vue.extend({
|
|
|
41
44
|
},
|
|
42
45
|
|
|
43
46
|
data () {
|
|
47
|
+
const innerMin = this.__getInnerMin(this.innerMin)
|
|
48
|
+
const innerMax = this.__getInnerMax(this.innerMax)
|
|
49
|
+
|
|
44
50
|
return {
|
|
45
|
-
model: this.value,
|
|
51
|
+
model: this.value === null ? innerMin : between(this.value, innerMin, innerMax),
|
|
46
52
|
dragging: false
|
|
47
53
|
}
|
|
48
54
|
},
|
|
49
55
|
|
|
50
56
|
watch: {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
else if (value > this.max) {
|
|
56
|
-
this.model = this.max
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
if (value !== this.model) {
|
|
60
|
-
this.model = value
|
|
61
|
-
}
|
|
62
|
-
return
|
|
63
|
-
}
|
|
57
|
+
modelUpdate () {
|
|
58
|
+
this.model = this.value === null
|
|
59
|
+
? this.computedInnerMin
|
|
60
|
+
: between(this.value, this.computedInnerMin, this.computedInnerMax)
|
|
64
61
|
|
|
65
|
-
|
|
66
|
-
this.$emit('input', this.model)
|
|
67
|
-
this.$emit('change', this.model)
|
|
68
|
-
}
|
|
62
|
+
this.__updateValue(true)
|
|
69
63
|
}
|
|
70
64
|
},
|
|
71
65
|
|
|
@@ -78,6 +72,18 @@ export default Vue.extend({
|
|
|
78
72
|
)
|
|
79
73
|
},
|
|
80
74
|
|
|
75
|
+
computedInnerMin () {
|
|
76
|
+
return this.__getInnerMin(this.innerMin)
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
computedInnerMax () {
|
|
80
|
+
return this.__getInnerMax(this.innerMax)
|
|
81
|
+
},
|
|
82
|
+
|
|
83
|
+
modelUpdate () {
|
|
84
|
+
return `${this.value}|${this.computedInnerMin}|${this.computedInnerMax}`
|
|
85
|
+
},
|
|
86
|
+
|
|
81
87
|
editable () {
|
|
82
88
|
return this.disable === false && this.readonly === false
|
|
83
89
|
},
|
|
@@ -109,8 +115,8 @@ export default Vue.extend({
|
|
|
109
115
|
attrs () {
|
|
110
116
|
const attrs = {
|
|
111
117
|
role: 'slider',
|
|
112
|
-
'aria-valuemin': this.
|
|
113
|
-
'aria-valuemax': this.
|
|
118
|
+
'aria-valuemin': this.computedInnerMin,
|
|
119
|
+
'aria-valuemax': this.computedInnerMax,
|
|
114
120
|
'aria-valuenow': this.value
|
|
115
121
|
}
|
|
116
122
|
|
|
@@ -126,6 +132,18 @@ export default Vue.extend({
|
|
|
126
132
|
},
|
|
127
133
|
|
|
128
134
|
methods: {
|
|
135
|
+
__getInnerMin (val) {
|
|
136
|
+
return isNaN(val) === true || this.innerMin < this.min
|
|
137
|
+
? this.min
|
|
138
|
+
: this.innerMin
|
|
139
|
+
},
|
|
140
|
+
|
|
141
|
+
__getInnerMax (val) {
|
|
142
|
+
return isNaN(val) === true || val > this.max
|
|
143
|
+
? this.max
|
|
144
|
+
: this.innerMax
|
|
145
|
+
},
|
|
146
|
+
|
|
129
147
|
__updateCenterPosition () {
|
|
130
148
|
const { top, left, width, height } = this.$el.getBoundingClientRect()
|
|
131
149
|
this.centerPosition = {
|
|
@@ -167,8 +185,8 @@ export default Vue.extend({
|
|
|
167
185
|
|
|
168
186
|
this.model = between(
|
|
169
187
|
parseFloat((this.model + offset).toFixed(this.decimals)),
|
|
170
|
-
this.
|
|
171
|
-
this.
|
|
188
|
+
this.computedInnerMin,
|
|
189
|
+
this.computedInnerMax
|
|
172
190
|
)
|
|
173
191
|
|
|
174
192
|
this.__updateValue()
|
|
@@ -225,7 +243,7 @@ export default Vue.extend({
|
|
|
225
243
|
model = parseFloat(model.toFixed(this.decimals))
|
|
226
244
|
}
|
|
227
245
|
|
|
228
|
-
model = between(model, this.
|
|
246
|
+
model = between(model, this.computedInnerMin, this.computedInnerMax)
|
|
229
247
|
|
|
230
248
|
this.$emit('drag-value', model)
|
|
231
249
|
|
|
@@ -27,6 +27,22 @@
|
|
|
27
27
|
"category": "model"
|
|
28
28
|
},
|
|
29
29
|
|
|
30
|
+
"inner-min": {
|
|
31
|
+
"type": "Number",
|
|
32
|
+
"desc": "Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop",
|
|
33
|
+
"examples": [ ":inner-min=\"0\"" ],
|
|
34
|
+
"category": "model",
|
|
35
|
+
"addedIn": "v1.18.4"
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
"inner-max": {
|
|
39
|
+
"type": "Number",
|
|
40
|
+
"desc": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop",
|
|
41
|
+
"examples": [ ":inner-max=\"100\"" ],
|
|
42
|
+
"category": "model",
|
|
43
|
+
"addedIn": "v1.18.4"
|
|
44
|
+
},
|
|
45
|
+
|
|
30
46
|
"step": {
|
|
31
47
|
"type": "Number",
|
|
32
48
|
"default": "1",
|
|
@@ -302,7 +302,7 @@ export default Vue.extend({
|
|
|
302
302
|
}
|
|
303
303
|
|
|
304
304
|
if (this.$q.platform.is.desktop === true) {
|
|
305
|
-
itemEvents.mousemove = () => { this.setOptionIndex(index) }
|
|
305
|
+
itemEvents.mousemove = () => { this.menu === true && this.setOptionIndex(index) }
|
|
306
306
|
}
|
|
307
307
|
|
|
308
308
|
const option = {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"inner-max": {
|
|
30
30
|
"type": "Number",
|
|
31
31
|
"desc": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop",
|
|
32
|
-
"examples": [ ":max
|
|
32
|
+
"examples": [ ":inner-max=\"100\"" ],
|
|
33
33
|
"category": "model",
|
|
34
34
|
"addedIn": "v1.17"
|
|
35
35
|
},
|
package/src/mixins/mask.js
CHANGED