@progress/kendo-vue-inputs 3.3.2 → 3.3.3
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/cdn/js/kendo-vue-inputs.js +1 -1
- package/dist/es/input/Input.d.ts +29 -1
- package/dist/es/input/Input.js +72 -27
- package/dist/es/numerictextbox/utils/index.d.ts +17 -1
- package/dist/es/numerictextbox/utils/index.js +58 -6
- package/dist/es/package-metadata.js +1 -1
- package/dist/npm/input/Input.d.ts +29 -1
- package/dist/npm/input/Input.js +71 -26
- package/dist/npm/numerictextbox/utils/index.d.ts +17 -1
- package/dist/npm/numerictextbox/utils/index.js +63 -7
- package/dist/npm/package-metadata.js +1 -1
- package/package.json +10 -10
|
@@ -19,13 +19,14 @@ var __assign = undefined && undefined.__assign || function () {
|
|
|
19
19
|
Object.defineProperty(exports, "__esModule", {
|
|
20
20
|
value: true
|
|
21
21
|
});
|
|
22
|
-
exports.sanitizeNumber = exports.changeBasedSelection = exports.getDecimalCount = exports.getFirstNumberIndex = exports.getSuffix = exports.getPrefix = exports.getLastNumberIndex = exports.reverseString = exports.getInitialPosition = exports.getFormatSymbols = exports.getFormatPrefixSufix = exports.isDecimalDuplicated = exports.isMinusSymbolAdded = exports.setInvalid = exports.setSelection = exports.rangeSelection = exports.getMinCursorPosition = exports.getMaxCursorPosition = exports.rangeValue = exports.decreaseValue = exports.increaseValue = exports.formatValue = exports.getStateOrPropsValue = exports.getInitialState = void 0;
|
|
22
|
+
exports.sanitizeNumber = exports.changeBasedSelection = exports.getDecimalCount = exports.getFirstNumberIndex = exports.getSuffix = exports.getPrefix = exports.getLastNumberIndex = exports.reverseString = exports.getInitialPosition = exports.getFormatSymbols = exports.getFormatPrefixSufix = exports.isDecimalDuplicated = exports.isMinusSymbolRemoved = exports.isMinusSymbolAdded = exports.setInvalid = exports.setSelection = exports.rangeSelection = exports.getMinCursorPosition = exports.getMaxCursorPosition = exports.rangeValue = exports.decreaseValue = exports.increaseValue = exports.toFixedPrecision = exports.limitPrecision = exports.fractionLength = exports.formatValue = exports.getStateOrPropsValue = exports.getInitialState = void 0;
|
|
23
23
|
var DEFAULT_NUMBER = 1111111.1111111;
|
|
24
24
|
var MAX_DECIMAL = 0.31111111111111117;
|
|
25
25
|
var MIN_DECIMAL = 1;
|
|
26
26
|
var ONE_NUMBER = 1;
|
|
27
27
|
var ZERO_NUMBER = 0;
|
|
28
28
|
var DIGITS_REGEX = /\d/;
|
|
29
|
+
var MAX_PRECISION = 15;
|
|
29
30
|
/**
|
|
30
31
|
* @hidden
|
|
31
32
|
*/
|
|
@@ -72,8 +73,42 @@ exports.formatValue = function (value, format, intlService) {
|
|
|
72
73
|
*/
|
|
73
74
|
|
|
74
75
|
|
|
76
|
+
exports.fractionLength = function (value) {
|
|
77
|
+
return (String(value).split('.')[1] || '').length;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* @hidden
|
|
81
|
+
*/
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
var maxFractionLength = function maxFractionLength(value1, value2) {
|
|
85
|
+
return Math.max(exports.fractionLength(value1), exports.fractionLength(value2));
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* @hidden
|
|
89
|
+
*/
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
exports.limitPrecision = function (precision) {
|
|
93
|
+
return Math.min(precision, MAX_PRECISION);
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* @hidden
|
|
97
|
+
*/
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
exports.toFixedPrecision = function (value, precision) {
|
|
101
|
+
var maxPrecision = exports.limitPrecision(precision);
|
|
102
|
+
return parseFloat(value.toFixed(maxPrecision));
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* @hidden
|
|
106
|
+
*/
|
|
107
|
+
|
|
108
|
+
|
|
75
109
|
exports.increaseValue = function (value, newState, step, min, max, format, intlService) {
|
|
76
|
-
var
|
|
110
|
+
var maxPrecision = maxFractionLength(value || 0, step || 0);
|
|
111
|
+
var increasedValue = exports.rangeValue(exports.toFixedPrecision((value || 0) + (step || 0), maxPrecision), min, max);
|
|
77
112
|
newState.eventValue = increasedValue;
|
|
78
113
|
newState.currentLooseValue = exports.formatValue(increasedValue, format, intlService);
|
|
79
114
|
newState.selectionStart = newState.selectionEnd = exports.getLastNumberIndex(newState.currentLooseValue, DIGITS_REGEX);
|
|
@@ -84,7 +119,8 @@ exports.increaseValue = function (value, newState, step, min, max, format, intlS
|
|
|
84
119
|
|
|
85
120
|
|
|
86
121
|
exports.decreaseValue = function (value, newState, step, min, max, format, intlService) {
|
|
87
|
-
var
|
|
122
|
+
var maxPrecision = maxFractionLength(value || 0, step || 0);
|
|
123
|
+
var decreasedValue = exports.rangeValue(exports.toFixedPrecision((value || 0) - (step || 0), maxPrecision), min, max);
|
|
88
124
|
newState.eventValue = decreasedValue;
|
|
89
125
|
newState.currentLooseValue = exports.formatValue(decreasedValue, format, intlService);
|
|
90
126
|
newState.selectionStart = newState.selectionEnd = exports.getLastNumberIndex(newState.currentLooseValue, DIGITS_REGEX);
|
|
@@ -218,6 +254,16 @@ exports.isMinusSymbolAdded = function (newState, symbols) {
|
|
|
218
254
|
*/
|
|
219
255
|
|
|
220
256
|
|
|
257
|
+
exports.isMinusSymbolRemoved = function (newState, symbols) {
|
|
258
|
+
var newText = String(newState.currentLooseValue);
|
|
259
|
+
var oldText = String(newState.prevLooseValue);
|
|
260
|
+
return newText.indexOf(symbols.minusSign) === -1 && oldText.indexOf(symbols.minusSign) !== -1;
|
|
261
|
+
};
|
|
262
|
+
/**
|
|
263
|
+
* @hidden
|
|
264
|
+
*/
|
|
265
|
+
|
|
266
|
+
|
|
221
267
|
exports.isDecimalDuplicated = function (newState, symbols) {
|
|
222
268
|
var newText = String(newState.currentLooseValue);
|
|
223
269
|
return newText.split(symbols.decimal).length > 2;
|
|
@@ -372,8 +418,7 @@ exports.changeBasedSelection = function (currentValue, nextValue, selectionPosit
|
|
|
372
418
|
*/
|
|
373
419
|
|
|
374
420
|
|
|
375
|
-
exports.sanitizeNumber = function (state,
|
|
376
|
-
format, intlService) {
|
|
421
|
+
exports.sanitizeNumber = function (state, format, intlService) {
|
|
377
422
|
var newState = __assign({}, state);
|
|
378
423
|
|
|
379
424
|
var prevLooseValue = newState.prevLooseValue;
|
|
@@ -411,6 +456,7 @@ format, intlService) {
|
|
|
411
456
|
}) !== -1;
|
|
412
457
|
}) !== 1;
|
|
413
458
|
var isDelete = currentLooseValueAsString.length > 0 && currentLooseValueAsString.length < prevLooseValueAsString.length;
|
|
459
|
+
var isPercentFormat = format && format[0] === 'p' && currentLooseValueAsString && currentLooseValueAsString.indexOf(symbols.percentSign) === -1;
|
|
414
460
|
|
|
415
461
|
if (!newState.isPaste) {
|
|
416
462
|
// 1. Empty input
|
|
@@ -437,6 +483,12 @@ format, intlService) {
|
|
|
437
483
|
var oldNumberStart = exports.getFirstNumberIndex(prevLooseValueAsString, DIGITS_REGEX);
|
|
438
484
|
exports.setSelection(newState, newState.selectionEnd - 1 + (currentNumberStart - oldNumberStart), newState.currentLooseValue, formatInfo);
|
|
439
485
|
return newState;
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
if (exports.isMinusSymbolRemoved(newState, symbols)) {
|
|
489
|
+
newState.eventValue = intlService.parseNumber(newState.currentLooseValue, format);
|
|
490
|
+
exports.setSelection(newState, newState.selectionStart, newState.currentLooseValue, formatInfo);
|
|
491
|
+
return newState;
|
|
440
492
|
} // 4. Check is decimal symbol
|
|
441
493
|
|
|
442
494
|
|
|
@@ -462,7 +514,7 @@ format, intlService) {
|
|
|
462
514
|
} // 6. Percent format
|
|
463
515
|
|
|
464
516
|
|
|
465
|
-
if (
|
|
517
|
+
if (isPercentFormat) {
|
|
466
518
|
newState.eventValue = intlService.parseNumber(currentLooseValueAsString, format) / 100;
|
|
467
519
|
newState.currentLooseValue = exports.formatValue(newState.eventValue, format, intlService);
|
|
468
520
|
return newState;
|
|
@@ -471,7 +523,7 @@ format, intlService) {
|
|
|
471
523
|
|
|
472
524
|
var numericSymbols = String(newState.currentLooseValue).replace(/[^\d]/g, '');
|
|
473
525
|
|
|
474
|
-
if (numericSymbols.length >
|
|
526
|
+
if (numericSymbols.length > MAX_PRECISION) {
|
|
475
527
|
exports.setInvalid(newState, format, formatInfo, intlService);
|
|
476
528
|
return newState;
|
|
477
529
|
} // 8. Check prefix / suffix for modifications
|
|
@@ -604,6 +656,10 @@ format, intlService) {
|
|
|
604
656
|
|
|
605
657
|
newState.eventValue = intlService.parseNumber(newState.currentLooseValue, format);
|
|
606
658
|
|
|
659
|
+
if (isPercentFormat) {
|
|
660
|
+
newState.eventValue = newState.eventValue / 100;
|
|
661
|
+
}
|
|
662
|
+
|
|
607
663
|
if (typeof newState.eventValue === 'number') {
|
|
608
664
|
var nextLooseValue = exports.formatValue(newState.eventValue, format, intlService); // First digit add
|
|
609
665
|
|
|
@@ -8,7 +8,7 @@ exports.packageMetadata = {
|
|
|
8
8
|
name: '@progress/kendo-vue-inputs',
|
|
9
9
|
productName: 'Kendo UI for Vue',
|
|
10
10
|
productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
|
|
11
|
-
publishDate:
|
|
11
|
+
publishDate: 1653913910,
|
|
12
12
|
version: '',
|
|
13
13
|
licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
|
|
14
14
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-vue-inputs",
|
|
3
3
|
"description": "Kendo UI for Vue Input package",
|
|
4
|
-
"version": "3.3.
|
|
4
|
+
"version": "3.3.3",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/telerik/kendo-vue.git"
|
|
@@ -38,21 +38,21 @@
|
|
|
38
38
|
"vue": "^2.6.12 || ^3.0.2"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@progress/kendo-vue-buttons": "3.3.
|
|
42
|
-
"@progress/kendo-vue-common": "3.3.
|
|
43
|
-
"@progress/kendo-vue-labels": "3.3.
|
|
44
|
-
"@progress/kendo-vue-popup": "3.3.
|
|
41
|
+
"@progress/kendo-vue-buttons": "3.3.3",
|
|
42
|
+
"@progress/kendo-vue-common": "3.3.3",
|
|
43
|
+
"@progress/kendo-vue-labels": "3.3.3",
|
|
44
|
+
"@progress/kendo-vue-popup": "3.3.3"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@progress/kendo-data-query": "^1.5.5",
|
|
48
48
|
"@progress/kendo-date-math": "^1.5.4",
|
|
49
49
|
"@progress/kendo-drawing": "^1.8.0",
|
|
50
50
|
"@progress/kendo-licensing": "^1.1.0",
|
|
51
|
-
"@progress/kendo-vue-buttons": "3.3.
|
|
52
|
-
"@progress/kendo-vue-form": "3.3.
|
|
53
|
-
"@progress/kendo-vue-intl": "3.3.
|
|
54
|
-
"@progress/kendo-vue-labels": "3.3.
|
|
55
|
-
"@progress/kendo-vue-tooltip": "3.3.
|
|
51
|
+
"@progress/kendo-vue-buttons": "3.3.3",
|
|
52
|
+
"@progress/kendo-vue-form": "3.3.3",
|
|
53
|
+
"@progress/kendo-vue-intl": "3.3.3",
|
|
54
|
+
"@progress/kendo-vue-labels": "3.3.3",
|
|
55
|
+
"@progress/kendo-vue-tooltip": "3.3.3",
|
|
56
56
|
"cldr-core": "^34.0.0",
|
|
57
57
|
"cldr-dates-full": "^34.0.0",
|
|
58
58
|
"cldr-numbers-full": "^34.0.0"
|