@progress/kendo-angular-inputs 13.2.1-develop.11 → 13.2.1-develop.13
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/LICENSE.md +11 -0
- package/NOTICE.txt +654 -0
- package/README.md +184 -0
- package/checkbox/checkbox.directive.d.ts +52 -0
- package/checkbox.module.d.ts +43 -0
- package/colorpicker/color-contrast-svg.component.d.ts +29 -0
- package/colorpicker/color-gradient-numeric-label.directive.d.ts +20 -0
- package/colorpicker/color-gradient.component.d.ts +281 -0
- package/colorpicker/color-input.component.d.ts +95 -0
- package/colorpicker/color-palette.component.d.ts +221 -0
- package/colorpicker/colorpicker.component.d.ts +383 -0
- package/colorpicker/constants.d.ts +41 -0
- package/colorpicker/contrast-validation.component.d.ts +24 -0
- package/colorpicker/contrast.component.d.ts +25 -0
- package/colorpicker/events/active-color-click-event.d.ts +53 -0
- package/colorpicker/events/cancel-event.d.ts +15 -0
- package/colorpicker/events/close-event.d.ts +10 -0
- package/colorpicker/events/kendo-drag-event.d.ts +21 -0
- package/colorpicker/events/open-event.d.ts +10 -0
- package/colorpicker/events.d.ts +8 -0
- package/colorpicker/flatcolorpicker-actions.component.d.ts +24 -0
- package/colorpicker/flatcolorpicker-header.component.d.ts +43 -0
- package/colorpicker/flatcolorpicker.component.d.ts +267 -0
- package/colorpicker/focus-on-dom-ready.directive.d.ts +18 -0
- package/colorpicker/localization/colorgradient-localization.service.d.ts +17 -0
- package/colorpicker/localization/colorpalette-localization.service.d.ts +17 -0
- package/colorpicker/localization/colorpicker-localization.service.d.ts +14 -0
- package/colorpicker/localization/custom-messages.component.d.ts +17 -0
- package/colorpicker/localization/flatcolorpicker-localization.service.d.ts +17 -0
- package/colorpicker/localization/localized-colorpicker-messages.directive.d.ts +16 -0
- package/colorpicker/localization/messages.d.ts +121 -0
- package/colorpicker/models/actions-layout.d.ts +8 -0
- package/colorpicker/models/colorpicker-view.d.ts +8 -0
- package/colorpicker/models/gradient-settings.d.ts +35 -0
- package/colorpicker/models/hsva.d.ts +13 -0
- package/colorpicker/models/output-format.d.ts +8 -0
- package/colorpicker/models/palette-presets.d.ts +61 -0
- package/colorpicker/models/palette-settings.d.ts +33 -0
- package/colorpicker/models/popup-settings.d.ts +18 -0
- package/colorpicker/models/rgb.d.ts +12 -0
- package/colorpicker/models/rgba.d.ts +13 -0
- package/colorpicker/models/table-cell.d.ts +11 -0
- package/colorpicker/models/tile-size.d.ts +11 -0
- package/colorpicker/models.d.ts +16 -0
- package/colorpicker/services/color-palette.service.d.ts +19 -0
- package/colorpicker/services/flatcolorpicker.service.d.ts +15 -0
- package/colorpicker/utils/color-parser.d.ts +77 -0
- package/colorpicker/utils/contrast-curve.d.ts +37 -0
- package/colorpicker/utils.d.ts +6 -0
- package/colorpicker.module.d.ts +35 -0
- package/common/dom-utils.d.ts +25 -0
- package/common/math.d.ts +36 -0
- package/common/models/fillmode.d.ts +9 -0
- package/common/models/rounded.d.ts +14 -0
- package/common/models/size.d.ts +9 -0
- package/common/models/styling-classes.d.ts +11 -0
- package/common/models.d.ts +8 -0
- package/common/utils.d.ts +56 -0
- package/esm2020/checkbox/checkbox.directive.mjs +94 -0
- package/esm2020/checkbox.module.mjs +52 -0
- package/esm2020/colorpicker/color-contrast-svg.component.mjs +97 -0
- package/esm2020/colorpicker/color-gradient-numeric-label.directive.mjs +31 -0
- package/esm2020/colorpicker/color-gradient.component.mjs +1003 -0
- package/esm2020/colorpicker/color-input.component.mjs +433 -0
- package/esm2020/colorpicker/color-palette.component.mjs +553 -0
- package/esm2020/colorpicker/colorpicker.component.mjs +1086 -0
- package/esm2020/colorpicker/constants.mjs +40 -0
- package/esm2020/colorpicker/contrast-validation.component.mjs +72 -0
- package/esm2020/colorpicker/contrast.component.mjs +100 -0
- package/esm2020/colorpicker/events/active-color-click-event.mjs +58 -0
- package/esm2020/colorpicker/events/cancel-event.mjs +14 -0
- package/esm2020/colorpicker/events/close-event.mjs +10 -0
- package/esm2020/colorpicker/events/kendo-drag-event.mjs +5 -0
- package/esm2020/colorpicker/events/open-event.mjs +10 -0
- package/esm2020/colorpicker/events.mjs +8 -0
- package/esm2020/colorpicker/flatcolorpicker-actions.component.mjs +93 -0
- package/esm2020/colorpicker/flatcolorpicker-header.component.mjs +217 -0
- package/esm2020/colorpicker/flatcolorpicker.component.mjs +829 -0
- package/esm2020/colorpicker/focus-on-dom-ready.directive.mjs +29 -0
- package/esm2020/colorpicker/localization/colorgradient-localization.service.mjs +45 -0
- package/esm2020/colorpicker/localization/colorpalette-localization.service.mjs +45 -0
- package/esm2020/colorpicker/localization/colorpicker-localization.service.mjs +31 -0
- package/esm2020/colorpicker/localization/custom-messages.component.mjs +41 -0
- package/esm2020/colorpicker/localization/flatcolorpicker-localization.service.mjs +45 -0
- package/esm2020/colorpicker/localization/localized-colorpicker-messages.directive.mjs +37 -0
- package/esm2020/colorpicker/localization/messages.mjs +75 -0
- package/esm2020/colorpicker/models/actions-layout.mjs +5 -0
- package/esm2020/colorpicker/models/colorpicker-view.mjs +5 -0
- package/esm2020/colorpicker/models/gradient-settings.mjs +5 -0
- package/esm2020/colorpicker/models/hsva.mjs +5 -0
- package/esm2020/colorpicker/models/output-format.mjs +5 -0
- package/esm2020/colorpicker/models/palette-presets.mjs +62 -0
- package/esm2020/colorpicker/models/palette-settings.mjs +5 -0
- package/esm2020/colorpicker/models/popup-settings.mjs +5 -0
- package/esm2020/colorpicker/models/rgb.mjs +5 -0
- package/esm2020/colorpicker/models/rgba.mjs +5 -0
- package/esm2020/colorpicker/models/table-cell.mjs +5 -0
- package/esm2020/colorpicker/models/tile-size.mjs +6 -0
- package/esm2020/colorpicker/models.mjs +16 -0
- package/esm2020/colorpicker/services/color-palette.service.mjs +67 -0
- package/esm2020/colorpicker/services/flatcolorpicker.service.mjs +39 -0
- package/esm2020/colorpicker/utils/color-parser.mjs +164 -0
- package/esm2020/colorpicker/utils/contrast-curve.mjs +85 -0
- package/esm2020/colorpicker/utils.mjs +6 -0
- package/esm2020/colorpicker.module.mjs +104 -0
- package/esm2020/common/dom-utils.mjs +36 -0
- package/esm2020/common/math.mjs +65 -0
- package/esm2020/common/models/fillmode.mjs +5 -0
- package/esm2020/common/models/rounded.mjs +5 -0
- package/esm2020/common/models/size.mjs +5 -0
- package/esm2020/common/models/styling-classes.mjs +5 -0
- package/esm2020/common/models.mjs +8 -0
- package/esm2020/common/utils.mjs +81 -0
- package/esm2020/formfield/error.component.mjs +68 -0
- package/esm2020/formfield/formfield.component.mjs +284 -0
- package/esm2020/formfield/hint.component.mjs +63 -0
- package/esm2020/formfield/models/message-align.mjs +5 -0
- package/esm2020/formfield/models/orientation.mjs +5 -0
- package/esm2020/formfield/models/show-options.mjs +5 -0
- package/esm2020/formfield.module.mjs +54 -0
- package/esm2020/index.mjs +66 -0
- package/esm2020/inputs.module.mjs +98 -0
- package/esm2020/maskedtextbox/maskedtextbox.component.mjs +711 -0
- package/esm2020/maskedtextbox/masking.service.mjs +191 -0
- package/esm2020/maskedtextbox/parsing/combinators.mjs +28 -0
- package/esm2020/maskedtextbox/parsing/parsers.mjs +147 -0
- package/esm2020/maskedtextbox/parsing/result.mjs +41 -0
- package/esm2020/maskedtextbox/parsing/stream.mjs +41 -0
- package/esm2020/maskedtextbox.module.mjs +53 -0
- package/esm2020/numerictextbox/arrow-direction.mjs +13 -0
- package/esm2020/numerictextbox/constants.mjs +28 -0
- package/esm2020/numerictextbox/localization/custom-messages.component.mjs +41 -0
- package/esm2020/numerictextbox/localization/localized-numerictextbox-messages.directive.mjs +37 -0
- package/esm2020/numerictextbox/localization/messages.mjs +25 -0
- package/esm2020/numerictextbox/numerictextbox.component.mjs +1105 -0
- package/esm2020/numerictextbox/utils.mjs +92 -0
- package/esm2020/numerictextbox.module.mjs +66 -0
- package/esm2020/package-metadata.mjs +15 -0
- package/esm2020/progress-kendo-angular-inputs.mjs +8 -0
- package/esm2020/radiobutton/radiobutton.directive.mjs +76 -0
- package/esm2020/radiobutton.module.mjs +52 -0
- package/esm2020/rangeslider/localization/custom-messages.component.mjs +41 -0
- package/esm2020/rangeslider/localization/localized-rangeslider-messages.directive.mjs +37 -0
- package/esm2020/rangeslider/localization/messages.mjs +25 -0
- package/esm2020/rangeslider/rangeslider-model.mjs +52 -0
- package/esm2020/rangeslider/rangeslider-value.type.mjs +5 -0
- package/esm2020/rangeslider/rangeslider.component.mjs +605 -0
- package/esm2020/rangeslider.module.mjs +71 -0
- package/esm2020/shared/input-separator.component.mjs +41 -0
- package/esm2020/shared/textarea.directive.mjs +260 -0
- package/esm2020/shared/utils.mjs +13 -0
- package/esm2020/shared.module.mjs +32 -0
- package/esm2020/signature/events/close-event.mjs +10 -0
- package/esm2020/signature/events/index.mjs +6 -0
- package/esm2020/signature/events/open-event.mjs +10 -0
- package/esm2020/signature/localization/custom-messages.component.mjs +41 -0
- package/esm2020/signature/localization/index.mjs +7 -0
- package/esm2020/signature/localization/localized-signature-messages.directive.mjs +37 -0
- package/esm2020/signature/localization/messages.mjs +29 -0
- package/esm2020/signature/signature.component.mjs +906 -0
- package/esm2020/signature.module.mjs +79 -0
- package/esm2020/slider/localization/custom-messages.component.mjs +41 -0
- package/esm2020/slider/localization/localized-slider-messages.directive.mjs +37 -0
- package/esm2020/slider/localization/messages.mjs +27 -0
- package/esm2020/slider/slider-model.mjs +34 -0
- package/esm2020/slider/slider.component.mjs +646 -0
- package/esm2020/slider.module.mjs +73 -0
- package/esm2020/sliders-common/label-template.directive.mjs +45 -0
- package/esm2020/sliders-common/slider-base.mjs +255 -0
- package/esm2020/sliders-common/slider-model.base.mjs +93 -0
- package/esm2020/sliders-common/slider-ticks.component.mjs +125 -0
- package/esm2020/sliders-common/sliders-common.module.mjs +42 -0
- package/esm2020/sliders-common/sliders-util.mjs +219 -0
- package/esm2020/sliders-common/title-callback.mjs +5 -0
- package/esm2020/switch/events/blur-event.mjs +9 -0
- package/esm2020/switch/events/focus-event.mjs +9 -0
- package/esm2020/switch/localization/custom-messages.component.mjs +41 -0
- package/esm2020/switch/localization/localized-switch-messages.directive.mjs +37 -0
- package/esm2020/switch/localization/messages.mjs +25 -0
- package/esm2020/switch/switch.component.mjs +577 -0
- package/esm2020/switch.module.mjs +68 -0
- package/esm2020/text-fields-common/text-fields-base.mjs +128 -0
- package/esm2020/textarea/models/flow.mjs +5 -0
- package/esm2020/textarea/models/resize.mjs +5 -0
- package/esm2020/textarea/textarea-suffix.component.mjs +40 -0
- package/esm2020/textarea/textarea.component.mjs +604 -0
- package/esm2020/textarea.module.mjs +68 -0
- package/esm2020/textbox/localization/custom-messages.component.mjs +41 -0
- package/esm2020/textbox/localization/localized-textbox-messages.directive.mjs +37 -0
- package/esm2020/textbox/localization/messages.mjs +23 -0
- package/esm2020/textbox/models/icon-show-options.mjs +5 -0
- package/esm2020/textbox/textbox-prefix.directive.mjs +38 -0
- package/esm2020/textbox/textbox-suffix.directive.mjs +37 -0
- package/esm2020/textbox/textbox.component.mjs +849 -0
- package/esm2020/textbox/textbox.directive.mjs +121 -0
- package/esm2020/textbox.module.mjs +89 -0
- package/esm2020/validators/max.validator.mjs +21 -0
- package/esm2020/validators/min.validator.mjs +21 -0
- package/fesm2015/progress-kendo-angular-inputs.mjs +15090 -0
- package/fesm2020/progress-kendo-angular-inputs.mjs +15055 -0
- package/formfield/error.component.d.ts +31 -0
- package/formfield/formfield.component.d.ts +98 -0
- package/formfield/hint.component.d.ts +29 -0
- package/formfield/models/message-align.d.ts +8 -0
- package/formfield/models/orientation.d.ts +9 -0
- package/formfield/models/show-options.d.ts +16 -0
- package/formfield.module.d.ts +45 -0
- package/index.d.ts +76 -0
- package/inputs.module.d.ts +55 -0
- package/maskedtextbox/maskedtextbox.component.d.ts +315 -0
- package/maskedtextbox/masking.service.d.ts +48 -0
- package/maskedtextbox/parsing/combinators.d.ts +13 -0
- package/maskedtextbox/parsing/parsers.d.ts +51 -0
- package/maskedtextbox/parsing/result.d.ts +27 -0
- package/maskedtextbox/parsing/stream.d.ts +26 -0
- package/maskedtextbox.module.d.ts +44 -0
- package/numerictextbox/arrow-direction.d.ts +12 -0
- package/numerictextbox/constants.d.ts +28 -0
- package/numerictextbox/localization/custom-messages.component.d.ts +17 -0
- package/numerictextbox/localization/localized-numerictextbox-messages.directive.d.ts +16 -0
- package/numerictextbox/localization/messages.d.ts +21 -0
- package/numerictextbox/numerictextbox.component.d.ts +364 -0
- package/numerictextbox/utils.d.ts +44 -0
- package/numerictextbox.module.d.ts +47 -0
- package/package-metadata.d.ts +9 -0
- package/package.json +74 -0
- package/progress-kendo-angular-inputs.d.ts +9 -0
- package/radiobutton/radiobutton.directive.d.ts +38 -0
- package/radiobutton.module.d.ts +43 -0
- package/rangeslider/localization/custom-messages.component.d.ts +17 -0
- package/rangeslider/localization/localized-rangeslider-messages.directive.d.ts +16 -0
- package/rangeslider/localization/messages.d.ts +21 -0
- package/rangeslider/rangeslider-model.d.ts +15 -0
- package/rangeslider/rangeslider-value.type.d.ts +9 -0
- package/rangeslider/rangeslider.component.d.ts +139 -0
- package/rangeslider.module.d.ts +48 -0
- package/schematics/collection.json +12 -0
- package/schematics/ngAdd/index.js +11 -0
- package/schematics/ngAdd/schema.json +28 -0
- package/shared/input-separator.component.d.ts +28 -0
- package/shared/textarea.directive.d.ts +99 -0
- package/shared/utils.d.ts +10 -0
- package/shared.module.d.ts +19 -0
- package/signature/events/close-event.d.ts +10 -0
- package/signature/events/index.d.ts +6 -0
- package/signature/events/open-event.d.ts +10 -0
- package/signature/localization/custom-messages.component.d.ts +17 -0
- package/signature/localization/index.d.ts +7 -0
- package/signature/localization/localized-signature-messages.directive.d.ts +16 -0
- package/signature/localization/messages.d.ts +29 -0
- package/signature/signature.component.d.ts +364 -0
- package/signature.module.d.ts +48 -0
- package/slider/localization/custom-messages.component.d.ts +17 -0
- package/slider/localization/localized-slider-messages.directive.d.ts +16 -0
- package/slider/localization/messages.d.ts +25 -0
- package/slider/slider-model.d.ts +14 -0
- package/slider/slider.component.d.ts +175 -0
- package/slider.module.d.ts +50 -0
- package/sliders-common/label-template.directive.d.ts +36 -0
- package/sliders-common/slider-base.d.ts +141 -0
- package/sliders-common/slider-model.base.d.ts +26 -0
- package/sliders-common/slider-ticks.component.d.ts +26 -0
- package/sliders-common/sliders-common.module.d.ts +17 -0
- package/sliders-common/sliders-util.d.ts +119 -0
- package/sliders-common/title-callback.d.ts +10 -0
- package/switch/events/blur-event.d.ts +13 -0
- package/switch/events/focus-event.d.ts +13 -0
- package/switch/localization/custom-messages.component.d.ts +17 -0
- package/switch/localization/localized-switch-messages.directive.d.ts +16 -0
- package/switch/localization/messages.d.ts +21 -0
- package/switch/switch.component.d.ts +216 -0
- package/switch.module.d.ts +46 -0
- package/text-fields-common/text-fields-base.d.ts +91 -0
- package/textarea/models/flow.d.ts +12 -0
- package/textarea/models/resize.d.ts +16 -0
- package/textarea/textarea-suffix.component.d.ts +26 -0
- package/textarea/textarea.component.d.ts +225 -0
- package/textarea.module.d.ts +48 -0
- package/textbox/localization/custom-messages.component.d.ts +17 -0
- package/textbox/localization/localized-textbox-messages.directive.d.ts +16 -0
- package/textbox/localization/messages.d.ts +17 -0
- package/textbox/models/icon-show-options.d.ts +13 -0
- package/textbox/textbox-prefix.directive.d.ts +29 -0
- package/textbox/textbox-suffix.directive.d.ts +28 -0
- package/textbox/textbox.component.d.ts +376 -0
- package/textbox/textbox.directive.d.ts +59 -0
- package/textbox.module.d.ts +53 -0
- package/validators/max.validator.d.ts +8 -0
- package/validators/min.validator.d.ts +8 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
import { greedy, sequence } from './parsing/combinators';
|
|
7
|
+
import { literal, mask as maskParser, rawLiteral, rawMask, token, unliteral, unmask } from './parsing/parsers';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export class MaskingService {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.rules = {};
|
|
15
|
+
this.prompt = "_";
|
|
16
|
+
this.mask = "";
|
|
17
|
+
this.promptPlaceholder = " ";
|
|
18
|
+
this.includeLiterals = false;
|
|
19
|
+
this.maskTokens = [];
|
|
20
|
+
this.unmaskTokens = [];
|
|
21
|
+
this.rawTokens = [];
|
|
22
|
+
this.validationTokens = [];
|
|
23
|
+
}
|
|
24
|
+
update({ mask = '', prompt = '', promptPlaceholder = ' ', rules = {}, includeLiterals = false }) {
|
|
25
|
+
this.mask = mask;
|
|
26
|
+
this.prompt = prompt;
|
|
27
|
+
this.promptPlaceholder = promptPlaceholder;
|
|
28
|
+
this.rules = rules;
|
|
29
|
+
this.includeLiterals = includeLiterals;
|
|
30
|
+
this.tokenize();
|
|
31
|
+
}
|
|
32
|
+
validationValue(maskedValue = '') {
|
|
33
|
+
let value = maskedValue;
|
|
34
|
+
sequence(this.validationTokens)
|
|
35
|
+
.run(maskedValue)
|
|
36
|
+
.fold(unmasked => {
|
|
37
|
+
value = unmasked.join('');
|
|
38
|
+
});
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
rawValue(maskedValue = '') {
|
|
42
|
+
let value = maskedValue;
|
|
43
|
+
if (!this.rawTokens.length) {
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
46
|
+
sequence(this.rawTokens)
|
|
47
|
+
.run(maskedValue)
|
|
48
|
+
.fold(unmasked => {
|
|
49
|
+
value = unmasked.join('');
|
|
50
|
+
});
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @hidden
|
|
55
|
+
*/
|
|
56
|
+
maskRaw(rawValue = '') {
|
|
57
|
+
let value = rawValue;
|
|
58
|
+
if (!this.maskTokens.length) {
|
|
59
|
+
return value;
|
|
60
|
+
}
|
|
61
|
+
sequence(this.maskTokens)
|
|
62
|
+
.run(rawValue)
|
|
63
|
+
.fold(masked => {
|
|
64
|
+
value = masked.join('');
|
|
65
|
+
});
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
maskInput(input, control, splitPoint) {
|
|
69
|
+
if (input.length < control.length) {
|
|
70
|
+
return this.maskRemoved(input, control, splitPoint);
|
|
71
|
+
}
|
|
72
|
+
return this.maskInserted(input, control, splitPoint);
|
|
73
|
+
}
|
|
74
|
+
maskInRange(pasted, oldValue, start, end) {
|
|
75
|
+
let value = '';
|
|
76
|
+
const selection = end;
|
|
77
|
+
const beforeChange = oldValue.split('').slice(0, start);
|
|
78
|
+
const afterChange = oldValue.split('').slice(end);
|
|
79
|
+
sequence(this.maskTokens.slice(start, end))
|
|
80
|
+
.run(pasted)
|
|
81
|
+
.fold(masked => {
|
|
82
|
+
value = beforeChange
|
|
83
|
+
.concat(masked)
|
|
84
|
+
.concat(afterChange)
|
|
85
|
+
.join('');
|
|
86
|
+
});
|
|
87
|
+
return {
|
|
88
|
+
selection,
|
|
89
|
+
value
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
maskRemoved(input, control, splitPoint) {
|
|
93
|
+
let value = '';
|
|
94
|
+
let selection = splitPoint;
|
|
95
|
+
const unchanged = input.split('').slice(splitPoint);
|
|
96
|
+
const changed = input.split('').slice(0, splitPoint).join('');
|
|
97
|
+
const take = this.maskTokens.length - (input.length - splitPoint);
|
|
98
|
+
sequence(this.maskTokens.slice(0, take))
|
|
99
|
+
.run(changed, control)
|
|
100
|
+
.fold(masked => {
|
|
101
|
+
selection = this.adjustPosition(masked, selection);
|
|
102
|
+
value = masked.concat(unchanged).join('');
|
|
103
|
+
});
|
|
104
|
+
return {
|
|
105
|
+
selection,
|
|
106
|
+
value
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
adjustPosition(input, selection) {
|
|
110
|
+
const caretChar = input[selection];
|
|
111
|
+
const isLiteral = this.maskTokens[selection].isLiteral(caretChar);
|
|
112
|
+
if (!isLiteral && caretChar !== this.prompt) {
|
|
113
|
+
return selection + 1;
|
|
114
|
+
}
|
|
115
|
+
return selection;
|
|
116
|
+
}
|
|
117
|
+
maskInserted(input, control, splitPoint) {
|
|
118
|
+
let value = '';
|
|
119
|
+
let selection = splitPoint;
|
|
120
|
+
const changed = input.slice(0, splitPoint);
|
|
121
|
+
sequence(this.unmaskTokens)
|
|
122
|
+
.run(changed, control)
|
|
123
|
+
.chain(unmasked => {
|
|
124
|
+
selection = unmasked.join('').length;
|
|
125
|
+
const unchanged = control.slice(selection);
|
|
126
|
+
return sequence(this.maskTokens)
|
|
127
|
+
.run(unmasked.join('') + unchanged, control);
|
|
128
|
+
})
|
|
129
|
+
.fold(masked => {
|
|
130
|
+
value = masked.join('');
|
|
131
|
+
});
|
|
132
|
+
return {
|
|
133
|
+
selection,
|
|
134
|
+
value
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
get maskTokenCreator() {
|
|
138
|
+
const { prompt, promptPlaceholder } = this;
|
|
139
|
+
return {
|
|
140
|
+
literal: rule => literal(rule),
|
|
141
|
+
mask: rule => maskParser({ prompt, promptPlaceholder })(rule)
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
get unmaskTokenCreator() {
|
|
145
|
+
return {
|
|
146
|
+
literal: rule => unliteral(rule),
|
|
147
|
+
mask: rule => unmask(this.prompt)(rule)
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
get rawTokenCreator() {
|
|
151
|
+
const { prompt, promptPlaceholder, includeLiterals } = this;
|
|
152
|
+
return {
|
|
153
|
+
literal: _ => rawLiteral(includeLiterals),
|
|
154
|
+
mask: _ => rawMask({ prompt, promptPlaceholder })
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
get validationTokenCreator() {
|
|
158
|
+
const { prompt } = this;
|
|
159
|
+
return {
|
|
160
|
+
literal: _ => rawLiteral(false),
|
|
161
|
+
mask: _ => rawMask({ prompt, promptPlaceholder: '' })
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
tokenize() {
|
|
165
|
+
greedy(token(this.rules, this.maskTokenCreator))
|
|
166
|
+
.run(this.mask)
|
|
167
|
+
.fold((tokens, _) => {
|
|
168
|
+
this.maskTokens = tokens;
|
|
169
|
+
});
|
|
170
|
+
greedy(token(this.rules, this.unmaskTokenCreator))
|
|
171
|
+
.run(this.mask)
|
|
172
|
+
.fold((tokens, _) => {
|
|
173
|
+
this.unmaskTokens = tokens;
|
|
174
|
+
});
|
|
175
|
+
greedy(token(this.rules, this.rawTokenCreator))
|
|
176
|
+
.run(this.mask)
|
|
177
|
+
.fold((tokens, _) => {
|
|
178
|
+
this.rawTokens = tokens;
|
|
179
|
+
});
|
|
180
|
+
greedy(token(this.rules, this.validationTokenCreator))
|
|
181
|
+
.run(this.mask)
|
|
182
|
+
.fold((tokens, _) => {
|
|
183
|
+
this.validationTokens = tokens;
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
MaskingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
188
|
+
MaskingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskingService });
|
|
189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskingService, decorators: [{
|
|
190
|
+
type: Injectable
|
|
191
|
+
}] });
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Parser } from './parsers';
|
|
6
|
+
import { Result } from './result';
|
|
7
|
+
/**
|
|
8
|
+
* @hidden
|
|
9
|
+
*/
|
|
10
|
+
const always = value => new Parser(stream => new Result(value, stream));
|
|
11
|
+
/**
|
|
12
|
+
* @hidden
|
|
13
|
+
*/
|
|
14
|
+
const append = (p1, p2) => p1.chain(vs => p2.map(v => vs.concat([v])));
|
|
15
|
+
/**
|
|
16
|
+
* @hidden
|
|
17
|
+
*/
|
|
18
|
+
export const sequence = list => list.reduce((acc, parser) => append(acc, parser), always([]));
|
|
19
|
+
/**
|
|
20
|
+
* @hidden
|
|
21
|
+
*/
|
|
22
|
+
export const greedy = parser => new Parser(stream => {
|
|
23
|
+
let result = new Result([], stream);
|
|
24
|
+
while (!stream.eof()) {
|
|
25
|
+
result = result.concat(parser.run(stream));
|
|
26
|
+
}
|
|
27
|
+
return result;
|
|
28
|
+
});
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Result, ResultType } from './result';
|
|
6
|
+
import { Stream } from './stream';
|
|
7
|
+
const toArray = (value) => (value || '').split('');
|
|
8
|
+
const ESCAPE_CHARACTER = '\\';
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export class Parser {
|
|
13
|
+
constructor(parse) {
|
|
14
|
+
this.parse = parse;
|
|
15
|
+
}
|
|
16
|
+
run(input, control = '') {
|
|
17
|
+
if (input instanceof Stream) {
|
|
18
|
+
return this.parse(input);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
return this.parse(new Stream(toArray(input), toArray(control)));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//map :: Functor f => f a ~> (a -> b) -> f b
|
|
25
|
+
map(f) {
|
|
26
|
+
return new Parser(stream => this.parse(stream).map(f));
|
|
27
|
+
}
|
|
28
|
+
//chain :: Chain m => m a ~> (a -> m b) -> m b
|
|
29
|
+
chain(f) {
|
|
30
|
+
return new Parser(stream => this.parse(stream).chain((v, s) => f(v).run(s)));
|
|
31
|
+
}
|
|
32
|
+
isLiteral(c) {
|
|
33
|
+
return this.run(c).type === ResultType.Literal;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* @hidden
|
|
38
|
+
*/
|
|
39
|
+
export const mask = ({ prompt, promptPlaceholder }) => rule => new Parser(stream => {
|
|
40
|
+
while (!stream.eof()) {
|
|
41
|
+
const { char, control } = stream.peek();
|
|
42
|
+
if (char === control && control === prompt) {
|
|
43
|
+
stream.eat();
|
|
44
|
+
return new Result(prompt, stream, ResultType.Mask);
|
|
45
|
+
}
|
|
46
|
+
if (rule.test(char)) {
|
|
47
|
+
stream.eat();
|
|
48
|
+
return new Result(char, stream, ResultType.Mask);
|
|
49
|
+
}
|
|
50
|
+
if (char === promptPlaceholder) {
|
|
51
|
+
stream.eat();
|
|
52
|
+
return new Result(prompt, stream, ResultType.Mask);
|
|
53
|
+
}
|
|
54
|
+
stream.eat_input();
|
|
55
|
+
}
|
|
56
|
+
stream.eat();
|
|
57
|
+
return new Result(prompt, stream, ResultType.Mask);
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* @hidden
|
|
61
|
+
*/
|
|
62
|
+
export const literal = _token => new Parser(stream => {
|
|
63
|
+
// let {char, control} = stream.peek();
|
|
64
|
+
const char = stream.peek().char;
|
|
65
|
+
if (char === _token) {
|
|
66
|
+
stream.eat();
|
|
67
|
+
return new Result(_token, stream, ResultType.Literal);
|
|
68
|
+
}
|
|
69
|
+
// if (control === _token) {
|
|
70
|
+
// while (!stream.eof() && char !== _token) {
|
|
71
|
+
// stream.eat_input();
|
|
72
|
+
// char = stream.peek().char;
|
|
73
|
+
// }
|
|
74
|
+
// }
|
|
75
|
+
//
|
|
76
|
+
// if (control !== undefined) {
|
|
77
|
+
// stream.eat();
|
|
78
|
+
// }
|
|
79
|
+
return new Result(_token, stream, ResultType.Literal);
|
|
80
|
+
});
|
|
81
|
+
/**
|
|
82
|
+
* @hidden
|
|
83
|
+
*/
|
|
84
|
+
export const unmask = prompt => rule => new Parser(stream => {
|
|
85
|
+
while (!stream.eof()) {
|
|
86
|
+
const { char, control } = stream.peek();
|
|
87
|
+
if (char === prompt && control === prompt) {
|
|
88
|
+
stream.eat();
|
|
89
|
+
return new Result(char, stream);
|
|
90
|
+
}
|
|
91
|
+
if (rule.test(char)) {
|
|
92
|
+
stream.eat();
|
|
93
|
+
return new Result(char, stream);
|
|
94
|
+
}
|
|
95
|
+
stream.eat_input();
|
|
96
|
+
}
|
|
97
|
+
stream.eat();
|
|
98
|
+
return new Result('', stream);
|
|
99
|
+
});
|
|
100
|
+
/**
|
|
101
|
+
* @hidden
|
|
102
|
+
*/
|
|
103
|
+
export const unliteral = _token => new Parser(stream => {
|
|
104
|
+
if (stream.eof()) {
|
|
105
|
+
return new Result('', stream);
|
|
106
|
+
}
|
|
107
|
+
const { char } = stream.peek();
|
|
108
|
+
if (char === _token) {
|
|
109
|
+
stream.eat();
|
|
110
|
+
}
|
|
111
|
+
return new Result(_token, stream);
|
|
112
|
+
});
|
|
113
|
+
/**
|
|
114
|
+
* @hidden
|
|
115
|
+
*/
|
|
116
|
+
export const token = (rules, creator) => new Parser(stream => {
|
|
117
|
+
let { char } = stream.next();
|
|
118
|
+
const rule = rules[char];
|
|
119
|
+
if (char === ESCAPE_CHARACTER) {
|
|
120
|
+
char = stream.next().char;
|
|
121
|
+
return new Result(creator.literal(char), stream);
|
|
122
|
+
}
|
|
123
|
+
if (!rule) {
|
|
124
|
+
return new Result(creator.literal(char), stream);
|
|
125
|
+
}
|
|
126
|
+
return new Result(creator.mask(rule), stream);
|
|
127
|
+
});
|
|
128
|
+
/**
|
|
129
|
+
* @hidden
|
|
130
|
+
*/
|
|
131
|
+
export const rawMask = ({ prompt, promptPlaceholder }) => new Parser(stream => {
|
|
132
|
+
const { char } = stream.next();
|
|
133
|
+
if (char === prompt) {
|
|
134
|
+
return new Result(promptPlaceholder, stream);
|
|
135
|
+
}
|
|
136
|
+
return new Result(char, stream);
|
|
137
|
+
});
|
|
138
|
+
/**
|
|
139
|
+
* @hidden
|
|
140
|
+
*/
|
|
141
|
+
export const rawLiteral = includeLiterals => new Parser(stream => {
|
|
142
|
+
const { char } = stream.next();
|
|
143
|
+
if (includeLiterals) {
|
|
144
|
+
return new Result(char, stream);
|
|
145
|
+
}
|
|
146
|
+
return new Result('', stream);
|
|
147
|
+
});
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export var ResultType;
|
|
9
|
+
(function (ResultType) {
|
|
10
|
+
ResultType[ResultType["Literal"] = 0] = "Literal";
|
|
11
|
+
ResultType[ResultType["Mask"] = 1] = "Mask";
|
|
12
|
+
// eslint-disable-next-line id-denylist
|
|
13
|
+
ResultType[ResultType["Undefined"] = 2] = "Undefined";
|
|
14
|
+
})(ResultType || (ResultType = {}));
|
|
15
|
+
/**
|
|
16
|
+
* @hidden
|
|
17
|
+
*/
|
|
18
|
+
export class Result {
|
|
19
|
+
constructor(value, rest, type = ResultType.Undefined) {
|
|
20
|
+
this.value = value;
|
|
21
|
+
this.rest = rest;
|
|
22
|
+
this.type = type;
|
|
23
|
+
}
|
|
24
|
+
//map :: Functor f => f a ~> (a -> b) -> f b
|
|
25
|
+
map(fn) {
|
|
26
|
+
return new Result(fn(this.value), this.rest);
|
|
27
|
+
}
|
|
28
|
+
//chain :: Chain m => m a ~> (a -> m b) -> m b
|
|
29
|
+
chain(fn) {
|
|
30
|
+
return fn(this.value, this.rest);
|
|
31
|
+
}
|
|
32
|
+
fold(s, _ /*we don't need it*/) {
|
|
33
|
+
return s(this.value, this.rest);
|
|
34
|
+
}
|
|
35
|
+
concat(r) {
|
|
36
|
+
return this.map((vs, _) => r.chain((v, __) => vs.concat([v])));
|
|
37
|
+
}
|
|
38
|
+
toString() {
|
|
39
|
+
return `Result({ value: '${this.value}', rest: ${this.rest} })`;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export class Stream {
|
|
9
|
+
constructor(input = [], control = []) {
|
|
10
|
+
this.input = input;
|
|
11
|
+
this.control = control;
|
|
12
|
+
this.inputCursor = 0;
|
|
13
|
+
this.controlCursor = 0;
|
|
14
|
+
}
|
|
15
|
+
eof() {
|
|
16
|
+
return this.inputCursor >= this.input.length;
|
|
17
|
+
}
|
|
18
|
+
// Get the first value from the input.
|
|
19
|
+
next() {
|
|
20
|
+
return {
|
|
21
|
+
char: this.input[this.inputCursor++],
|
|
22
|
+
control: this.control[this.controlCursor++]
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
peek() {
|
|
26
|
+
return {
|
|
27
|
+
char: this.input[this.inputCursor],
|
|
28
|
+
control: this.control[this.controlCursor]
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
eat_input() {
|
|
32
|
+
this.inputCursor++;
|
|
33
|
+
}
|
|
34
|
+
eat_control() {
|
|
35
|
+
this.controlCursor++;
|
|
36
|
+
}
|
|
37
|
+
eat() {
|
|
38
|
+
this.inputCursor++;
|
|
39
|
+
this.controlCursor++;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { NgModule } from '@angular/core';
|
|
6
|
+
import { MaskedTextBoxComponent } from './maskedtextbox/maskedtextbox.component';
|
|
7
|
+
import { CommonModule } from '@angular/common';
|
|
8
|
+
import { EventsModule } from '@progress/kendo-angular-common';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
/**
|
|
11
|
+
* Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
|
|
12
|
+
* definition for the MaskedTextBox component.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
*
|
|
16
|
+
* ```ts-no-run
|
|
17
|
+
* // Import the MaskedTextBox module
|
|
18
|
+
* import { MaskedTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
19
|
+
*
|
|
20
|
+
* // The browser platform with a compiler
|
|
21
|
+
* import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
|
|
22
|
+
*
|
|
23
|
+
* import { NgModule } from '@angular/core';
|
|
24
|
+
*
|
|
25
|
+
* // Import the app component
|
|
26
|
+
* import { AppComponent } from './app.component';
|
|
27
|
+
*
|
|
28
|
+
* // Define the app module
|
|
29
|
+
* _@NgModule({
|
|
30
|
+
* declarations: [AppComponent], // declare app component
|
|
31
|
+
* imports: [BrowserModule, MaskedTextBoxModule], // import MaskedTextBox module
|
|
32
|
+
* bootstrap: [AppComponent]
|
|
33
|
+
* })
|
|
34
|
+
* export class AppModule {}
|
|
35
|
+
*
|
|
36
|
+
* // Compile and launch the module
|
|
37
|
+
* platformBrowserDynamic().bootstrapModule(AppModule);
|
|
38
|
+
*
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export class MaskedTextBoxModule {
|
|
42
|
+
}
|
|
43
|
+
MaskedTextBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskedTextBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
44
|
+
MaskedTextBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskedTextBoxModule, declarations: [MaskedTextBoxComponent], imports: [CommonModule, EventsModule], exports: [MaskedTextBoxComponent] });
|
|
45
|
+
MaskedTextBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskedTextBoxModule, imports: [[CommonModule, EventsModule]] });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MaskedTextBoxModule, decorators: [{
|
|
47
|
+
type: NgModule,
|
|
48
|
+
args: [{
|
|
49
|
+
declarations: [MaskedTextBoxComponent],
|
|
50
|
+
exports: [MaskedTextBoxComponent],
|
|
51
|
+
imports: [CommonModule, EventsModule]
|
|
52
|
+
}]
|
|
53
|
+
}] });
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export var ArrowDirection;
|
|
9
|
+
(function (ArrowDirection) {
|
|
10
|
+
ArrowDirection[ArrowDirection["Down"] = -1] = "Down";
|
|
11
|
+
ArrowDirection[ArrowDirection["None"] = 0] = "None";
|
|
12
|
+
ArrowDirection[ArrowDirection["Up"] = 1] = "Up";
|
|
13
|
+
})(ArrowDirection || (ArrowDirection = {}));
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export const MIN_DOC_LINK = 'http://www.telerik.com/kendo-angular-ui/components/inputs/api/NumericTextBoxComponent/#toc-min';
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export const MAX_DOC_LINK = 'http://www.telerik.com/kendo-angular-ui/components/inputs/api/NumericTextBoxComponent/#toc-max';
|
|
13
|
+
/**
|
|
14
|
+
* @hidden
|
|
15
|
+
*/
|
|
16
|
+
export const POINT = ".";
|
|
17
|
+
/**
|
|
18
|
+
* @hidden
|
|
19
|
+
*/
|
|
20
|
+
export const INITIAL_SPIN_DELAY = 500;
|
|
21
|
+
/**
|
|
22
|
+
* @hidden
|
|
23
|
+
*/
|
|
24
|
+
export const SPIN_DELAY = 50;
|
|
25
|
+
/**
|
|
26
|
+
* @hidden
|
|
27
|
+
*/
|
|
28
|
+
export const EXPONENT_REGEX = /[eE][\-+]?([0-9]+)/;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Component, forwardRef } from '@angular/core';
|
|
6
|
+
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import { NumericTextBoxMessages } from './messages';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
|
+
/**
|
|
11
|
+
* Custom component messages override default component messages.
|
|
12
|
+
*/
|
|
13
|
+
export class NumericTextBoxCustomMessagesComponent extends NumericTextBoxMessages {
|
|
14
|
+
constructor(service) {
|
|
15
|
+
super();
|
|
16
|
+
this.service = service;
|
|
17
|
+
}
|
|
18
|
+
get override() {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
NumericTextBoxCustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericTextBoxCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
NumericTextBoxCustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: NumericTextBoxCustomMessagesComponent, selector: "kendo-numerictextbox-messages", providers: [
|
|
24
|
+
{
|
|
25
|
+
provide: NumericTextBoxMessages,
|
|
26
|
+
useExisting: forwardRef(() => NumericTextBoxCustomMessagesComponent)
|
|
27
|
+
}
|
|
28
|
+
], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericTextBoxCustomMessagesComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{
|
|
32
|
+
providers: [
|
|
33
|
+
{
|
|
34
|
+
provide: NumericTextBoxMessages,
|
|
35
|
+
useExisting: forwardRef(() => NumericTextBoxCustomMessagesComponent)
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
selector: 'kendo-numerictextbox-messages',
|
|
39
|
+
template: ``
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Directive, forwardRef } from '@angular/core';
|
|
6
|
+
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import { NumericTextBoxMessages } from './messages';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
|
+
/**
|
|
11
|
+
* @hidden
|
|
12
|
+
*/
|
|
13
|
+
export class LocalizedNumericTextBoxMessagesDirective extends NumericTextBoxMessages {
|
|
14
|
+
constructor(service) {
|
|
15
|
+
super();
|
|
16
|
+
this.service = service;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
LocalizedNumericTextBoxMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedNumericTextBoxMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
LocalizedNumericTextBoxMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: LocalizedNumericTextBoxMessagesDirective, selector: "[kendoNumericTextBoxLocalizedMessages]", providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: NumericTextBoxMessages,
|
|
23
|
+
useExisting: forwardRef(() => LocalizedNumericTextBoxMessagesDirective)
|
|
24
|
+
}
|
|
25
|
+
], usesInheritance: true, ngImport: i0 });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedNumericTextBoxMessagesDirective, decorators: [{
|
|
27
|
+
type: Directive,
|
|
28
|
+
args: [{
|
|
29
|
+
providers: [
|
|
30
|
+
{
|
|
31
|
+
provide: NumericTextBoxMessages,
|
|
32
|
+
useExisting: forwardRef(() => LocalizedNumericTextBoxMessagesDirective)
|
|
33
|
+
}
|
|
34
|
+
],
|
|
35
|
+
selector: '[kendoNumericTextBoxLocalizedMessages]'
|
|
36
|
+
}]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Directive, Input } from '@angular/core';
|
|
6
|
+
import { ComponentMessages } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
export class NumericTextBoxMessages extends ComponentMessages {
|
|
12
|
+
}
|
|
13
|
+
NumericTextBoxMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericTextBoxMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
14
|
+
NumericTextBoxMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: NumericTextBoxMessages, selector: "kendo-numerictextbox-messages-base", inputs: { decrement: "decrement", increment: "increment" }, usesInheritance: true, ngImport: i0 });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericTextBoxMessages, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{
|
|
18
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
19
|
+
selector: 'kendo-numerictextbox-messages-base'
|
|
20
|
+
}]
|
|
21
|
+
}], propDecorators: { decrement: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}], increment: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}] } });
|