@syncfusion/ej2-inputs 25.2.5 → 26.1.35
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/.eslintrc.json +3 -2
- package/README.md +13 -0
- package/dist/ej2-inputs.min.js +2 -2
- package/dist/ej2-inputs.umd.min.js +2 -2
- package/dist/ej2-inputs.umd.min.js.map +1 -1
- package/dist/es6/ej2-inputs.es2015.js +1091 -449
- package/dist/es6/ej2-inputs.es2015.js.map +1 -1
- package/dist/es6/ej2-inputs.es5.js +1051 -389
- package/dist/es6/ej2-inputs.es5.js.map +1 -1
- package/dist/global/ej2-inputs.min.js +2 -2
- package/dist/global/ej2-inputs.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/otp-input.d.ts +4 -0
- package/otp-input.js +4 -0
- package/package.json +10 -10
- package/src/form-validator/form-validator.d.ts +6 -3
- package/src/form-validator/form-validator.js +31 -27
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/input/input.d.ts +2 -2
- package/src/input/input.js +63 -56
- package/src/maskedtextbox/base/mask-base.d.ts +1 -1
- package/src/maskedtextbox/base/mask-base.js +1 -1
- package/src/maskedtextbox/maskedtextbox/maskedtextbox-model.d.ts +2 -2
- package/src/maskedtextbox/maskedtextbox/maskedtextbox.d.ts +1 -2
- package/src/maskedtextbox/maskedtextbox/maskedtextbox.js +6 -7
- package/src/numerictextbox/numerictextbox.d.ts +2 -3
- package/src/numerictextbox/numerictextbox.js +14 -18
- package/src/otp-input/index.d.ts +5 -0
- package/src/otp-input/index.js +4 -0
- package/src/otp-input/otp-input-model.d.ts +142 -0
- package/src/otp-input/otp-input.d.ts +313 -0
- package/src/otp-input/otp-input.js +651 -0
- package/src/rating/rating.d.ts +0 -2
- package/src/rating/rating.js +4 -4
- package/src/slider/slider-model.d.ts +11 -6
- package/src/slider/slider.d.ts +21 -8
- package/src/slider/slider.js +191 -101
- package/src/textarea/textarea-model.d.ts +8 -2
- package/src/textarea/textarea.d.ts +9 -4
- package/src/textarea/textarea.js +17 -21
- package/src/textbox/textbox.d.ts +1 -2
- package/src/textbox/textbox.js +16 -11
- package/src/uploader/uploader.d.ts +1 -3
- package/src/uploader/uploader.js +27 -47
- package/styles/bootstrap-dark.css +1041 -1031
- package/styles/bootstrap-dark.scss +35 -11
- package/styles/bootstrap.css +1040 -1027
- package/styles/bootstrap.scss +35 -11
- package/styles/bootstrap4.css +1097 -1080
- package/styles/bootstrap4.scss +35 -11
- package/styles/bootstrap5-dark.css +1236 -1219
- package/styles/bootstrap5-dark.scss +35 -11
- package/styles/bootstrap5.css +1236 -1219
- package/styles/bootstrap5.scss +35 -11
- package/styles/color-picker/_bds-definition.scss +11 -1
- package/styles/color-picker/_bootstrap-dark-definition.scss +0 -3
- package/styles/color-picker/_bootstrap5-definition.scss +0 -1
- package/styles/color-picker/_bootstrap5.3-definition.scss +132 -0
- package/styles/color-picker/_fabric-dark-definition.scss +0 -3
- package/styles/color-picker/_fluent-definition.scss +0 -1
- package/styles/color-picker/_fluent2-definition.scss +143 -0
- package/styles/color-picker/_fusionnew-definition.scss +0 -1
- package/styles/color-picker/_highcontrast-light-definition.scss +0 -3
- package/styles/color-picker/_layout.scss +69 -34
- package/styles/color-picker/_material-dark-definition.scss +0 -3
- package/styles/color-picker/_material3-definition.scss +0 -1
- package/styles/color-picker/_tailwind-definition.scss +0 -1
- package/styles/color-picker/_theme.scss +13 -2
- package/styles/color-picker/bootstrap-dark.css +54 -20
- package/styles/color-picker/bootstrap.css +54 -20
- package/styles/color-picker/bootstrap4.css +60 -23
- package/styles/color-picker/bootstrap5-dark.css +58 -22
- package/styles/color-picker/bootstrap5.css +58 -22
- package/styles/color-picker/fabric-dark.css +54 -20
- package/styles/color-picker/fabric.css +54 -20
- package/styles/color-picker/fluent-dark.css +54 -20
- package/styles/color-picker/fluent.css +54 -20
- package/styles/color-picker/fluent2.css +2025 -0
- package/styles/color-picker/fluent2.scss +11 -0
- package/styles/color-picker/highcontrast-light.css +54 -20
- package/styles/color-picker/highcontrast.css +54 -20
- package/styles/color-picker/icons/_bootstrap5.3.scss +9 -0
- package/styles/color-picker/icons/_fluent2.scss +9 -0
- package/styles/color-picker/material-dark.css +63 -21
- package/styles/color-picker/material.css +77 -23
- package/styles/color-picker/material3-dark.css +92 -29
- package/styles/color-picker/material3.css +92 -29
- package/styles/color-picker/tailwind-dark.css +54 -21
- package/styles/color-picker/tailwind.css +54 -21
- package/styles/data-form/_bootstrap5.3-definition.scss +41 -0
- package/styles/data-form/_fluent2-definition.scss +41 -0
- package/styles/data-form/_layout.scss +1 -4
- package/styles/data-form/_material3-definition.scss +0 -7
- package/styles/data-form/bootstrap-dark.css +47 -59
- package/styles/data-form/bootstrap.css +47 -59
- package/styles/data-form/bootstrap4.css +47 -59
- package/styles/data-form/bootstrap5-dark.css +47 -59
- package/styles/data-form/bootstrap5.css +47 -59
- package/styles/data-form/fabric-dark.css +47 -59
- package/styles/data-form/fabric.css +47 -59
- package/styles/data-form/fluent-dark.css +47 -59
- package/styles/data-form/fluent.css +47 -59
- package/styles/data-form/fluent2.css +1266 -0
- package/styles/data-form/fluent2.scss +3 -0
- package/styles/data-form/highcontrast-light.css +47 -59
- package/styles/data-form/highcontrast.css +47 -59
- package/styles/data-form/material-dark.css +47 -59
- package/styles/data-form/material.css +47 -59
- package/styles/data-form/material3-dark.css +48 -60
- package/styles/data-form/material3.css +48 -60
- package/styles/data-form/tailwind-dark.css +47 -59
- package/styles/data-form/tailwind.css +47 -59
- package/styles/fabric-dark.css +1015 -988
- package/styles/fabric-dark.scss +35 -11
- package/styles/fabric.css +1015 -988
- package/styles/fabric.scss +35 -11
- package/styles/fluent-dark.css +1081 -1044
- package/styles/fluent-dark.scss +35 -11
- package/styles/fluent.css +1081 -1044
- package/styles/fluent.scss +35 -11
- package/styles/fluent2.css +13375 -0
- package/styles/fluent2.scss +35 -0
- package/styles/highcontrast-light.css +1099 -1179
- package/styles/highcontrast-light.scss +35 -11
- package/styles/highcontrast.css +1096 -1176
- package/styles/highcontrast.scss +35 -11
- package/styles/input/_bds-definition.scss +2 -2
- package/styles/input/_bootstrap5.3-definition.scss +336 -0
- package/styles/input/_fluent2-definition.scss +769 -0
- package/styles/input/_layout.scss +1242 -1939
- package/styles/input/_material-dark-definition.scss +4 -3
- package/styles/input/_material-definition.scss +4 -3
- package/styles/input/_material3-definition.scss +4 -9
- package/styles/input/_theme.scss +929 -1794
- package/styles/input/bootstrap-dark.css +489 -773
- package/styles/input/bootstrap.css +489 -773
- package/styles/input/bootstrap4.css +484 -770
- package/styles/input/bootstrap5-dark.css +488 -787
- package/styles/input/bootstrap5.css +488 -787
- package/styles/input/fabric-dark.css +466 -740
- package/styles/input/fabric.css +466 -740
- package/styles/input/fluent-dark.css +494 -775
- package/styles/input/fluent.css +494 -775
- package/styles/input/fluent2.css +10185 -0
- package/styles/input/fluent2.scss +4 -0
- package/styles/input/highcontrast-light.css +530 -914
- package/styles/input/highcontrast.css +530 -914
- package/styles/input/icons/_bootstrap5.3.scss +17 -0
- package/styles/input/icons/_fluent2.scss +17 -0
- package/styles/input/material-dark.css +1883 -2791
- package/styles/input/material.css +1895 -2791
- package/styles/input/material3-dark.css +1883 -2773
- package/styles/input/material3.css +1883 -2773
- package/styles/input/tailwind-dark.css +464 -749
- package/styles/input/tailwind.css +464 -749
- package/styles/maskedtextbox/_bootstrap5.3-definition.scss +7 -0
- package/styles/maskedtextbox/_fluent2-definition.scss +7 -0
- package/styles/maskedtextbox/_theme.scss +1 -6
- package/styles/maskedtextbox/bootstrap-dark.css +1 -4
- package/styles/maskedtextbox/bootstrap4.css +1 -4
- package/styles/maskedtextbox/bootstrap5-dark.css +1 -4
- package/styles/maskedtextbox/bootstrap5.css +1 -4
- package/styles/maskedtextbox/fabric-dark.css +1 -4
- package/styles/maskedtextbox/fabric.css +1 -4
- package/styles/maskedtextbox/fluent2.css +1244 -0
- package/styles/maskedtextbox/fluent2.scss +4 -0
- package/styles/maskedtextbox/highcontrast-light.css +1 -4
- package/styles/maskedtextbox/highcontrast.css +1 -4
- package/styles/maskedtextbox/material-dark.css +10 -5
- package/styles/maskedtextbox/material.css +24 -7
- package/styles/maskedtextbox/material3-dark.css +25 -8
- package/styles/maskedtextbox/material3.css +25 -8
- package/styles/maskedtextbox/tailwind-dark.css +1 -4
- package/styles/maskedtextbox/tailwind.css +1 -4
- package/styles/material-dark.css +2497 -3126
- package/styles/material-dark.scss +35 -11
- package/styles/material.css +2395 -3052
- package/styles/material.scss +35 -11
- package/styles/material3-dark.css +2656 -3265
- package/styles/material3-dark.scss +35 -11
- package/styles/material3.css +2656 -3265
- package/styles/material3.scss +35 -11
- package/styles/numerictextbox/_bootstrap5.3-definition.scss +3 -0
- package/styles/numerictextbox/_fluent2-definition.scss +3 -0
- package/styles/numerictextbox/bootstrap-dark.css +2 -1
- package/styles/numerictextbox/bootstrap.css +2 -1
- package/styles/numerictextbox/fluent2.css +1261 -0
- package/styles/numerictextbox/fluent2.scss +5 -0
- package/styles/numerictextbox/icons/_bootstrap5.3.scss +11 -0
- package/styles/numerictextbox/icons/_fluent2.scss +11 -0
- package/styles/numerictextbox/material-dark.css +9 -1
- package/styles/numerictextbox/material.css +23 -3
- package/styles/numerictextbox/material3-dark.css +24 -4
- package/styles/numerictextbox/material3.css +24 -4
- package/styles/otp-input/_all.scss +2 -0
- package/styles/otp-input/_bds-definition.scss +58 -0
- package/styles/otp-input/_bootstrap-dark-definition.scss +58 -0
- package/styles/otp-input/_bootstrap-definition.scss +58 -0
- package/styles/otp-input/_bootstrap4-definition.scss +58 -0
- package/styles/otp-input/_bootstrap5-dark-definition.scss +1 -0
- package/styles/otp-input/_bootstrap5-definition.scss +58 -0
- package/styles/otp-input/_bootstrap5.3-definition.scss +58 -0
- package/styles/otp-input/_fabric-dark-definition.scss +58 -0
- package/styles/otp-input/_fabric-definition.scss +58 -0
- package/styles/otp-input/_fluent-dark-definition.scss +1 -0
- package/styles/otp-input/_fluent-definition.scss +58 -0
- package/styles/otp-input/_fluent2-definition.scss +58 -0
- package/styles/otp-input/_fusionnew-definition.scss +58 -0
- package/styles/otp-input/_highcontrast-definition.scss +58 -0
- package/styles/otp-input/_highcontrast-light-definition.scss +58 -0
- package/styles/otp-input/_layout.scss +158 -0
- package/styles/otp-input/_material-dark-definition.scss +58 -0
- package/styles/otp-input/_material-definition.scss +58 -0
- package/styles/otp-input/_material3-dark-definition.scss +1 -0
- package/styles/otp-input/_material3-definition.scss +58 -0
- package/styles/otp-input/_tailwind-dark-definition.scss +1 -0
- package/styles/otp-input/_tailwind-definition.scss +58 -0
- package/styles/otp-input/_theme.scss +67 -0
- package/styles/otp-input/bootstrap-dark.css +225 -0
- package/styles/otp-input/bootstrap-dark.scss +3 -0
- package/styles/otp-input/bootstrap.css +225 -0
- package/styles/otp-input/bootstrap.scss +3 -0
- package/styles/otp-input/bootstrap4.css +225 -0
- package/styles/otp-input/bootstrap4.scss +3 -0
- package/styles/otp-input/bootstrap5-dark.css +225 -0
- package/styles/otp-input/bootstrap5-dark.scss +3 -0
- package/styles/otp-input/bootstrap5.css +225 -0
- package/styles/otp-input/bootstrap5.scss +3 -0
- package/styles/otp-input/fabric-dark.css +225 -0
- package/styles/otp-input/fabric-dark.scss +3 -0
- package/styles/otp-input/fabric.css +225 -0
- package/styles/otp-input/fabric.scss +3 -0
- package/styles/otp-input/fluent-dark.css +225 -0
- package/styles/otp-input/fluent-dark.scss +3 -0
- package/styles/otp-input/fluent.css +225 -0
- package/styles/otp-input/fluent.scss +3 -0
- package/styles/otp-input/fluent2.css +1259 -0
- package/styles/otp-input/fluent2.scss +3 -0
- package/styles/otp-input/highcontrast-light.css +225 -0
- package/styles/otp-input/highcontrast-light.scss +3 -0
- package/styles/otp-input/highcontrast.css +225 -0
- package/styles/otp-input/highcontrast.scss +3 -0
- package/styles/otp-input/material-dark.css +225 -0
- package/styles/otp-input/material-dark.scss +3 -0
- package/styles/otp-input/material.css +225 -0
- package/styles/otp-input/material.scss +3 -0
- package/styles/otp-input/material3-dark.css +280 -0
- package/styles/otp-input/material3-dark.scss +4 -0
- package/styles/otp-input/material3.css +336 -0
- package/styles/otp-input/material3.scss +4 -0
- package/styles/otp-input/tailwind-dark.css +225 -0
- package/styles/otp-input/tailwind-dark.scss +3 -0
- package/styles/otp-input/tailwind.css +225 -0
- package/styles/otp-input/tailwind.scss +3 -0
- package/styles/rating/_bds-definition.scss +2 -2
- package/styles/rating/_bootstrap-dark-definition.scss +2 -2
- package/styles/rating/_bootstrap-definition.scss +2 -2
- package/styles/rating/_bootstrap4-definition.scss +2 -2
- package/styles/rating/_bootstrap5-definition.scss +2 -2
- package/styles/rating/_bootstrap5.3-definition.scss +47 -0
- package/styles/rating/_fabric-dark-definition.scss +2 -2
- package/styles/rating/_fabric-definition.scss +2 -2
- package/styles/rating/_fluent-definition.scss +2 -2
- package/styles/rating/_fluent2-definition.scss +47 -0
- package/styles/rating/_fusionnew-definition.scss +2 -2
- package/styles/rating/_highcontrast-definition.scss +2 -2
- package/styles/rating/_highcontrast-light-definition.scss +2 -2
- package/styles/rating/_layout.scss +22 -46
- package/styles/rating/_material-dark-definition.scss +2 -2
- package/styles/rating/_material-definition.scss +2 -2
- package/styles/rating/_material3-definition.scss +2 -2
- package/styles/rating/_tailwind-definition.scss +2 -2
- package/styles/rating/_theme.scss +1 -1
- package/styles/rating/bootstrap-dark.css +35 -9
- package/styles/rating/bootstrap.css +35 -9
- package/styles/rating/bootstrap4.css +35 -9
- package/styles/rating/bootstrap5-dark.css +35 -9
- package/styles/rating/bootstrap5.css +35 -9
- package/styles/rating/fabric-dark.css +35 -9
- package/styles/rating/fabric.css +35 -9
- package/styles/rating/fluent-dark.css +35 -9
- package/styles/rating/fluent.css +35 -9
- package/styles/rating/fluent2.css +1349 -0
- package/styles/rating/fluent2.scss +4 -0
- package/styles/rating/highcontrast-light.css +35 -9
- package/styles/rating/highcontrast.css +35 -9
- package/styles/rating/material-dark.css +35 -9
- package/styles/rating/material.css +35 -9
- package/styles/rating/material3-dark.css +35 -10
- package/styles/rating/material3.css +35 -10
- package/styles/rating/tailwind-dark.css +34 -9
- package/styles/rating/tailwind.css +34 -9
- package/styles/signature/_bootstrap5.3-definition.scss +3 -0
- package/styles/signature/_fluent2-definition.scss +3 -0
- package/styles/signature/fluent2.css +1043 -0
- package/styles/signature/fluent2.scss +3 -0
- package/styles/signature/material3-dark.css +1 -1
- package/styles/signature/material3.css +1 -1
- package/styles/slider/_bds-definition.scss +1 -0
- package/styles/slider/_bootstrap-dark-definition.scss +1 -0
- package/styles/slider/_bootstrap-definition.scss +1 -0
- package/styles/slider/_bootstrap4-definition.scss +1 -1
- package/styles/slider/_bootstrap5-definition.scss +1 -0
- package/styles/slider/_bootstrap5.3-definition.scss +91 -0
- package/styles/slider/_fluent-definition.scss +2 -0
- package/styles/slider/_fluent2-definition.scss +102 -0
- package/styles/slider/_highcontrast-definition.scss +1 -2
- package/styles/slider/_layout.scss +1623 -1986
- package/styles/slider/_material-dark-definition.scss +2 -2
- package/styles/slider/_material-definition.scss +4 -4
- package/styles/slider/_material3-definition.scss +1 -4
- package/styles/slider/_tailwind-definition.scss +1 -0
- package/styles/slider/_theme.scss +92 -120
- package/styles/slider/bootstrap-dark.css +132 -140
- package/styles/slider/bootstrap.css +132 -140
- package/styles/slider/bootstrap4.css +192 -193
- package/styles/slider/bootstrap5-dark.css +284 -270
- package/styles/slider/bootstrap5.css +284 -270
- package/styles/slider/fabric-dark.css +131 -131
- package/styles/slider/fabric.css +131 -131
- package/styles/slider/fluent-dark.css +170 -155
- package/styles/slider/fluent.css +170 -155
- package/styles/slider/fluent2.css +1642 -0
- package/styles/slider/fluent2.scss +5 -0
- package/styles/slider/highcontrast-light.css +157 -154
- package/styles/slider/highcontrast.css +155 -152
- package/styles/slider/material-dark.css +306 -298
- package/styles/slider/material.css +304 -296
- package/styles/slider/material3-dark.css +577 -535
- package/styles/slider/material3.css +577 -535
- package/styles/slider/tailwind-dark.css +256 -267
- package/styles/slider/tailwind.css +256 -267
- package/styles/tailwind-dark.css +1203 -1201
- package/styles/tailwind-dark.scss +35 -11
- package/styles/tailwind.css +1205 -1203
- package/styles/tailwind.scss +35 -11
- package/styles/textarea/_bootstrap5.3-definition.scss +1 -0
- package/styles/textarea/_fluent2-definition.scss +1 -0
- package/styles/textarea/_layout.scss +1 -1
- package/styles/textarea/bootstrap-dark.css +3 -2
- package/styles/textarea/bootstrap.css +3 -2
- package/styles/textarea/bootstrap4.css +3 -2
- package/styles/textarea/bootstrap5-dark.css +3 -2
- package/styles/textarea/bootstrap5.css +3 -2
- package/styles/textarea/fabric-dark.css +3 -2
- package/styles/textarea/fabric.css +3 -2
- package/styles/textarea/fluent-dark.css +3 -2
- package/styles/textarea/fluent.css +3 -2
- package/styles/textarea/fluent2.css +1247 -0
- package/styles/textarea/fluent2.scss +5 -0
- package/styles/textarea/highcontrast-light.css +3 -2
- package/styles/textarea/highcontrast.css +3 -2
- package/styles/textarea/material-dark.css +12 -3
- package/styles/textarea/material.css +26 -5
- package/styles/textarea/material3-dark.css +27 -6
- package/styles/textarea/material3.css +27 -6
- package/styles/textarea/tailwind-dark.css +3 -2
- package/styles/textarea/tailwind.css +3 -2
- package/styles/textbox/_bootstrap5.3-definition.scss +4 -0
- package/styles/textbox/_fluent2-definition.scss +4 -0
- package/styles/textbox/fluent2.css +1241 -0
- package/styles/textbox/fluent2.scss +4 -0
- package/styles/textbox/material-dark.css +9 -1
- package/styles/textbox/material.css +23 -3
- package/styles/textbox/material3-dark.css +24 -4
- package/styles/textbox/material3.css +24 -4
- package/styles/uploader/_bootstrap5.3-definition.scss +216 -0
- package/styles/uploader/_fluent2-definition.scss +232 -0
- package/styles/uploader/_layout.scss +5 -2
- package/styles/uploader/_material3-definition.scss +0 -24
- package/styles/uploader/_theme.scss +7 -4
- package/styles/uploader/bootstrap-dark.css +47 -12
- package/styles/uploader/bootstrap.css +47 -12
- package/styles/uploader/bootstrap4.css +47 -12
- package/styles/uploader/bootstrap5-dark.css +47 -12
- package/styles/uploader/bootstrap5.css +47 -12
- package/styles/uploader/fabric-dark.css +47 -12
- package/styles/uploader/fabric.css +47 -12
- package/styles/uploader/fluent-dark.css +47 -12
- package/styles/uploader/fluent.css +47 -12
- package/styles/uploader/fluent2.css +1880 -0
- package/styles/uploader/fluent2.scss +6 -0
- package/styles/uploader/highcontrast-light.css +47 -12
- package/styles/uploader/highcontrast.css +47 -12
- package/styles/uploader/icons/_bootstrap5.3.scss +34 -0
- package/styles/uploader/icons/_fluent2.scss +34 -0
- package/styles/uploader/material-dark.css +47 -12
- package/styles/uploader/material.css +47 -12
- package/styles/uploader/material3-dark.css +49 -13
- package/styles/uploader/material3.css +49 -13
- package/styles/uploader/tailwind-dark.css +49 -13
- package/styles/uploader/tailwind.css +49 -13
- package/CHANGELOG.md +0 -1307
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { isNullOrUndefined, createElement, addClass, attributes, removeClass, formatUnit, remove, detach, classList, closest, Component, getValue, setValue, L10n, getUniqueID, Internationalization, EventHandler, Browser, merge, getNumericObject, Property, Event, NotifyPropertyChanges, extend, ChildProperty, setStyleAttribute, SanitizeHtmlHelper, initializeCSPTemplate, Collection, Complex, Base, onIntlChange, select, selectAll, KeyboardEvents, Ajax, append, Animation, compile, rippleEffect, getInstance } from '@syncfusion/ej2-base';
|
|
2
|
+
import { Tooltip, getZindexPartial, createSpinner, showSpinner, hideSpinner, isCollide, Popup } from '@syncfusion/ej2-popups';
|
|
3
|
+
import { SplitButton, Deferred, getModel } from '@syncfusion/ej2-splitbuttons';
|
|
4
4
|
|
|
5
5
|
/* eslint-disable valid-jsdoc, jsdoc/require-jsdoc, jsdoc/require-returns, jsdoc/require-param */
|
|
6
6
|
const CLASSNAMES = {
|
|
@@ -79,7 +79,6 @@ var Input;
|
|
|
79
79
|
validateInputType(inputObject.container, args.element);
|
|
80
80
|
inputObject = setPropertyValue(args, inputObject);
|
|
81
81
|
createSpanElement(inputObject.container, makeElement);
|
|
82
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
83
82
|
return inputObject;
|
|
84
83
|
}
|
|
85
84
|
Input.createInput = createInput;
|
|
@@ -116,27 +115,27 @@ var Input;
|
|
|
116
115
|
args.element.addEventListener('focus', focusHandler);
|
|
117
116
|
args.element.addEventListener('blur', blurHandler);
|
|
118
117
|
args.element.addEventListener('input', inputHandler);
|
|
119
|
-
args.element.__eventHandlers[
|
|
120
|
-
args.element.__eventHandlers[
|
|
121
|
-
args.element.__eventHandlers[
|
|
118
|
+
args.element.__eventHandlers['inputFocusHandler'] = { focusHandler };
|
|
119
|
+
args.element.__eventHandlers['inputBlurHandler'] = { blurHandler };
|
|
120
|
+
args.element.__eventHandlers['inputHandler'] = { inputHandler };
|
|
122
121
|
}
|
|
123
122
|
Input.bindInitialEvent = bindInitialEvent;
|
|
124
123
|
function unbindInitialEvent(args) {
|
|
125
124
|
if (!isNullOrUndefined(args.element)) {
|
|
126
125
|
if (!isNullOrUndefined(args.element.__eventHandlers)) {
|
|
127
|
-
if (!isNullOrUndefined(args.element.__eventHandlers[
|
|
128
|
-
&& !isNullOrUndefined(args.element.__eventHandlers[
|
|
129
|
-
&& !isNullOrUndefined(args.element.__eventHandlers[
|
|
130
|
-
const focusHandler = args.element.__eventHandlers[
|
|
131
|
-
const blurHandler = args.element.__eventHandlers[
|
|
132
|
-
const inputHandler = args.element.__eventHandlers[
|
|
126
|
+
if (!isNullOrUndefined(args.element.__eventHandlers['inputFocusHandler'])
|
|
127
|
+
&& !isNullOrUndefined(args.element.__eventHandlers['inputBlurHandler'])
|
|
128
|
+
&& !isNullOrUndefined(args.element.__eventHandlers['inputHandler'])) {
|
|
129
|
+
const focusHandler = args.element.__eventHandlers['inputFocusHandler'].focusHandler;
|
|
130
|
+
const blurHandler = args.element.__eventHandlers['inputBlurHandler'].blurHandler;
|
|
131
|
+
const inputHandler = args.element.__eventHandlers['inputHandler'].inputHandler;
|
|
133
132
|
args.element.removeEventListener('focus', focusHandler);
|
|
134
133
|
args.element.removeEventListener('blur', blurHandler);
|
|
135
134
|
args.element.removeEventListener('input', inputHandler);
|
|
136
135
|
// Clean up stored bound functions
|
|
137
|
-
delete args.element.__eventHandlers[
|
|
138
|
-
delete args.element.__eventHandlers[
|
|
139
|
-
delete args.element.__eventHandlers[
|
|
136
|
+
delete args.element.__eventHandlers['inputFocusHandler'];
|
|
137
|
+
delete args.element.__eventHandlers['inputBlurHandler'];
|
|
138
|
+
delete args.element.__eventHandlers['inputHandler'];
|
|
140
139
|
}
|
|
141
140
|
}
|
|
142
141
|
}
|
|
@@ -261,8 +260,8 @@ var Input;
|
|
|
261
260
|
args.element.addEventListener('input', inputFloatHandler);
|
|
262
261
|
args.element.addEventListener('blur', blurFloatHandler);
|
|
263
262
|
// Store the event handler functions to remove them later
|
|
264
|
-
args.element.__eventHandlers[
|
|
265
|
-
args.element.__eventHandlers[
|
|
263
|
+
args.element.__eventHandlers['floatInputHandler'] = { inputFloatHandler };
|
|
264
|
+
args.element.__eventHandlers['floatBlurHandler'] = { blurFloatHandler };
|
|
266
265
|
}
|
|
267
266
|
else {
|
|
268
267
|
unWireFloatLabelEvents(args);
|
|
@@ -272,17 +271,18 @@ var Input;
|
|
|
272
271
|
}
|
|
273
272
|
}
|
|
274
273
|
function unWireFloatLabelEvents(args) {
|
|
275
|
-
if (!isNullOrUndefined(args.element) &&
|
|
276
|
-
|
|
277
|
-
&& !isNullOrUndefined(args.element.__eventHandlers[
|
|
278
|
-
|
|
279
|
-
const
|
|
274
|
+
if (!isNullOrUndefined(args.element) &&
|
|
275
|
+
!isNullOrUndefined(args.element.__eventHandlers)
|
|
276
|
+
&& !isNullOrUndefined(args.element.__eventHandlers['floatInputHandler'])
|
|
277
|
+
&& !isNullOrUndefined(args.element.__eventHandlers['floatBlurHandler'])) {
|
|
278
|
+
const inputFloatHandler = args.element.__eventHandlers['floatInputHandler'].inputFloatHandler;
|
|
279
|
+
const blurFloatHandler = args.element.__eventHandlers['floatBlurHandler'].blurFloatHandler;
|
|
280
280
|
// Remove the event listeners using the defined functions
|
|
281
281
|
args.element.removeEventListener('input', inputFloatHandler);
|
|
282
282
|
args.element.removeEventListener('blur', blurFloatHandler);
|
|
283
283
|
// Clean up stored event handler functions
|
|
284
|
-
delete args.element.__eventHandlers[
|
|
285
|
-
delete args.element.__eventHandlers[
|
|
284
|
+
delete args.element.__eventHandlers['floatInputHandler'];
|
|
285
|
+
delete args.element.__eventHandlers['floatBlurHandler'];
|
|
286
286
|
}
|
|
287
287
|
}
|
|
288
288
|
function checkFloatLabelType(type, container) {
|
|
@@ -366,7 +366,7 @@ var Input;
|
|
|
366
366
|
baseElement.insertAdjacentElement('afterend', button);
|
|
367
367
|
}
|
|
368
368
|
addClass([button], CLASSNAMES.CLEARICONHIDE);
|
|
369
|
-
wireClearBtnEvents(element, button
|
|
369
|
+
wireClearBtnEvents(element, button);
|
|
370
370
|
button.setAttribute('aria-label', 'close');
|
|
371
371
|
return button;
|
|
372
372
|
}
|
|
@@ -399,7 +399,7 @@ var Input;
|
|
|
399
399
|
if (isBindClearAction === undefined || isBindClearAction) {
|
|
400
400
|
const clickHandlerEvent = (e) => clickHandler(e, element, button);
|
|
401
401
|
button.addEventListener('click', clickHandlerEvent);
|
|
402
|
-
element.__eventHandlers[
|
|
402
|
+
element.__eventHandlers['clearClickHandler'] = { clickHandlerEvent };
|
|
403
403
|
}
|
|
404
404
|
const inputHandlerEvent = () => inputHandler(element, button);
|
|
405
405
|
const focusHandlerEvent = () => focusHandler(element, button);
|
|
@@ -408,35 +408,36 @@ var Input;
|
|
|
408
408
|
element.addEventListener('focus', focusHandlerEvent);
|
|
409
409
|
element.addEventListener('blur', blurHandlerEvent);
|
|
410
410
|
// Store the bound functions to remove them later
|
|
411
|
-
element.__eventHandlers[
|
|
412
|
-
element.__eventHandlers[
|
|
413
|
-
element.__eventHandlers[
|
|
411
|
+
element.__eventHandlers['clearInputHandler'] = { inputHandlerEvent };
|
|
412
|
+
element.__eventHandlers['clearFocusHandler'] = { focusHandlerEvent };
|
|
413
|
+
element.__eventHandlers['clearBlurHandler'] = { blurHandlerEvent };
|
|
414
414
|
}
|
|
415
415
|
Input.wireClearBtnEvents = wireClearBtnEvents;
|
|
416
416
|
function unWireClearBtnEvents(element, button) {
|
|
417
|
-
if (!isNullOrUndefined(element) &&
|
|
418
|
-
|
|
419
|
-
|
|
417
|
+
if (!isNullOrUndefined(element) &&
|
|
418
|
+
!isNullOrUndefined(element.__eventHandlers)) {
|
|
419
|
+
if (!isNullOrUndefined(element.__eventHandlers['clearClickHandler'])) {
|
|
420
|
+
const clickHandlerEvent = element.__eventHandlers['clearClickHandler'].clickHandlerEvent;
|
|
420
421
|
if (isBindClearAction === undefined || isBindClearAction) {
|
|
421
422
|
if (!isNullOrUndefined(button)) {
|
|
422
423
|
button.removeEventListener('click', clickHandlerEvent);
|
|
423
424
|
}
|
|
424
425
|
}
|
|
425
|
-
delete element.__eventHandlers[
|
|
426
|
-
}
|
|
427
|
-
if (!isNullOrUndefined(element.__eventHandlers[
|
|
428
|
-
&& !isNullOrUndefined(element.__eventHandlers[
|
|
429
|
-
&& !isNullOrUndefined(element.__eventHandlers[
|
|
430
|
-
const inputHandlerEvent = element.__eventHandlers[
|
|
431
|
-
const focusHandlerEvent = element.__eventHandlers[
|
|
432
|
-
const blurHandlerEvent = element.__eventHandlers[
|
|
426
|
+
delete element.__eventHandlers['clearClickHandler'];
|
|
427
|
+
}
|
|
428
|
+
if (!isNullOrUndefined(element.__eventHandlers['clearInputHandler'])
|
|
429
|
+
&& !isNullOrUndefined(element.__eventHandlers['clearFocusHandler'])
|
|
430
|
+
&& !isNullOrUndefined(element.__eventHandlers['clearBlurHandler'])) {
|
|
431
|
+
const inputHandlerEvent = element.__eventHandlers['clearInputHandler'].inputHandlerEvent;
|
|
432
|
+
const focusHandlerEvent = element.__eventHandlers['clearFocusHandler'].focusHandlerEvent;
|
|
433
|
+
const blurHandlerEvent = element.__eventHandlers['clearBlurHandler'].blurHandlerEvent;
|
|
433
434
|
element.removeEventListener('input', inputHandlerEvent);
|
|
434
435
|
element.removeEventListener('focus', focusHandlerEvent);
|
|
435
436
|
element.removeEventListener('blur', blurHandlerEvent);
|
|
436
437
|
// Clean up stored Event functions
|
|
437
|
-
delete element.__eventHandlers[
|
|
438
|
-
delete element.__eventHandlers[
|
|
439
|
-
delete element.__eventHandlers[
|
|
438
|
+
delete element.__eventHandlers['clearInputHandler'];
|
|
439
|
+
delete element.__eventHandlers['clearFocusHandler'];
|
|
440
|
+
delete element.__eventHandlers['clearBlurHandler'];
|
|
440
441
|
}
|
|
441
442
|
}
|
|
442
443
|
}
|
|
@@ -455,7 +456,6 @@ var Input;
|
|
|
455
456
|
if (!isNullOrUndefined(args.element)) {
|
|
456
457
|
delete args.element.__eventHandlers;
|
|
457
458
|
}
|
|
458
|
-
|
|
459
459
|
}
|
|
460
460
|
Input.destroy = destroy;
|
|
461
461
|
function validateLabel(element, floatLabelType) {
|
|
@@ -502,7 +502,7 @@ var Input;
|
|
|
502
502
|
* @param {string} floatLabelType - Specify the float label type of the input element.
|
|
503
503
|
* @param {boolean} clearButton - Boolean value to specify whether the clear icon is enabled / disabled on the input.
|
|
504
504
|
*/
|
|
505
|
-
function setValue
|
|
505
|
+
function setValue(value, element, floatLabelType, clearButton) {
|
|
506
506
|
element.value = value;
|
|
507
507
|
if (floatLabelType !== 'Never') {
|
|
508
508
|
calculateWidth(element, element.parentElement);
|
|
@@ -526,7 +526,7 @@ var Input;
|
|
|
526
526
|
}
|
|
527
527
|
checkInputValue(floatLabelType, element);
|
|
528
528
|
}
|
|
529
|
-
Input.setValue = setValue
|
|
529
|
+
Input.setValue = setValue;
|
|
530
530
|
/**
|
|
531
531
|
* Sets the single or multiple cssClass to wrapper of input element.
|
|
532
532
|
* ```
|
|
@@ -604,13 +604,25 @@ var Input;
|
|
|
604
604
|
const parentElement = getParentNode(element);
|
|
605
605
|
if (parentElement.classList.contains(CLASSNAMES.FLOATINPUT)) {
|
|
606
606
|
if (!isNullOrUndefined(placeholder) && placeholder !== '') {
|
|
607
|
-
parentElement.getElementsByClassName('e-float-text-content')[0]
|
|
607
|
+
const floatTextContent = parentElement.getElementsByClassName('e-float-text-content')[0];
|
|
608
|
+
if (floatTextContent) {
|
|
609
|
+
floatTextContent.children[0].textContent = placeholder;
|
|
610
|
+
}
|
|
611
|
+
else {
|
|
612
|
+
parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = placeholder;
|
|
613
|
+
}
|
|
608
614
|
parentElement.classList.remove(CLASSNAMES.NOFLOATLABEL);
|
|
609
615
|
element.removeAttribute('placeholder');
|
|
610
616
|
}
|
|
611
617
|
else {
|
|
612
618
|
parentElement.classList.add(CLASSNAMES.NOFLOATLABEL);
|
|
613
|
-
parentElement.getElementsByClassName('e-float-text-content')[0]
|
|
619
|
+
const floatTextContent = parentElement.getElementsByClassName('e-float-text-content')[0];
|
|
620
|
+
if (floatTextContent) {
|
|
621
|
+
floatTextContent.children[0].textContent = '';
|
|
622
|
+
}
|
|
623
|
+
else {
|
|
624
|
+
parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = '';
|
|
625
|
+
}
|
|
614
626
|
}
|
|
615
627
|
}
|
|
616
628
|
else {
|
|
@@ -838,7 +850,7 @@ var Input;
|
|
|
838
850
|
* E.g : Input.createSpanElement(inputObject, makeElement);
|
|
839
851
|
* ```
|
|
840
852
|
*
|
|
841
|
-
* @param {
|
|
853
|
+
* @param {Element} inputObject
|
|
842
854
|
* - Element which is need to get the label
|
|
843
855
|
* @param {createElementParams} makeElement
|
|
844
856
|
* - Element which is need to create the span
|
|
@@ -865,7 +877,7 @@ var Input;
|
|
|
865
877
|
*/
|
|
866
878
|
function setRipple(isRipple, inputObj) {
|
|
867
879
|
for (let i = 0; i < inputObj.length; i++) {
|
|
868
|
-
_internalRipple(isRipple, inputObj[parseInt(i.toString())].container);
|
|
880
|
+
_internalRipple(isRipple, inputObj[parseInt(i.toString(), 10)].container);
|
|
869
881
|
}
|
|
870
882
|
}
|
|
871
883
|
Input.setRipple = setRipple;
|
|
@@ -876,14 +888,14 @@ var Input;
|
|
|
876
888
|
container.querySelectorAll('.e-input-group-icon') : argsButton;
|
|
877
889
|
if (isRipple && buttons.length > 0) {
|
|
878
890
|
for (let index = 0; index < buttons.length; index++) {
|
|
879
|
-
buttons[parseInt(index.toString())].addEventListener('mousedown', _onMouseDownRipple, false);
|
|
880
|
-
buttons[parseInt(index.toString())].addEventListener('mouseup', _onMouseUpRipple, false);
|
|
891
|
+
buttons[parseInt(index.toString(), 10)].addEventListener('mousedown', _onMouseDownRipple, false);
|
|
892
|
+
buttons[parseInt(index.toString(), 10)].addEventListener('mouseup', _onMouseUpRipple, false);
|
|
881
893
|
}
|
|
882
894
|
}
|
|
883
895
|
else if (buttons.length > 0) {
|
|
884
896
|
for (let index = 0; index < buttons.length; index++) {
|
|
885
|
-
buttons[parseInt(index.toString())].removeEventListener('mousedown', _onMouseDownRipple);
|
|
886
|
-
buttons[parseInt(index.toString())].removeEventListener('mouseup', _onMouseUpRipple);
|
|
897
|
+
buttons[parseInt(index.toString(), 10)].removeEventListener('mousedown', _onMouseDownRipple, this);
|
|
898
|
+
buttons[parseInt(index.toString(), 10)].removeEventListener('mouseup', _onMouseUpRipple, this);
|
|
887
899
|
}
|
|
888
900
|
}
|
|
889
901
|
}
|
|
@@ -909,8 +921,7 @@ var Input;
|
|
|
909
921
|
return true;
|
|
910
922
|
}
|
|
911
923
|
function _onMouseDownRipple() {
|
|
912
|
-
|
|
913
|
-
const ele = this;
|
|
924
|
+
const ele = this;
|
|
914
925
|
let parentEle = this.parentElement;
|
|
915
926
|
while (!parentEle.classList.contains('e-input-group')) {
|
|
916
927
|
parentEle = parentEle.parentElement;
|
|
@@ -918,8 +929,7 @@ var Input;
|
|
|
918
929
|
_onMouseRipple(parentEle, ele);
|
|
919
930
|
}
|
|
920
931
|
function _onMouseUpRipple() {
|
|
921
|
-
|
|
922
|
-
const ele = this;
|
|
932
|
+
const ele = this;
|
|
923
933
|
setTimeout(() => {
|
|
924
934
|
ele.classList.remove('e-input-btn-ripple');
|
|
925
935
|
}, 500);
|
|
@@ -941,9 +951,7 @@ var Input;
|
|
|
941
951
|
* @param {HTMLElement} container - The container on which created span element is going to append.
|
|
942
952
|
* @param {HTMLElement} input - The inputElement on which created span element is going to prepend.
|
|
943
953
|
*/
|
|
944
|
-
/* eslint-disable @typescript-eslint/indent */
|
|
945
954
|
function addIcon(position, icons, container, input, internalCreate) {
|
|
946
|
-
/* eslint-enable @typescript-eslint/indent */
|
|
947
955
|
const result = typeof (icons) === 'string' ? icons.split(',')
|
|
948
956
|
: icons;
|
|
949
957
|
if (position.toLowerCase() === 'append') {
|
|
@@ -972,9 +980,7 @@ var Input;
|
|
|
972
980
|
* @param {HTMLElement} container - The container on which created span element is going to append.
|
|
973
981
|
* @param {HTMLElement} inputElement - The inputElement on which created span element is going to prepend.
|
|
974
982
|
*/
|
|
975
|
-
/* eslint-disable @typescript-eslint/indent */
|
|
976
983
|
function prependSpan(iconClass, container, inputElement, internalCreateElement) {
|
|
977
|
-
/* eslint-enable @typescript-eslint/indent */
|
|
978
984
|
const makeElement = !isNullOrUndefined(internalCreateElement) ? internalCreateElement : createElement;
|
|
979
985
|
const button = createIconEle(iconClass, makeElement);
|
|
980
986
|
container.classList.add('e-float-icon-left');
|
|
@@ -985,7 +991,7 @@ var Input;
|
|
|
985
991
|
const result = container.querySelectorAll(inputElement.tagName + ' ~ *');
|
|
986
992
|
innerWrapper.appendChild(inputElement);
|
|
987
993
|
for (let i = 0; i < result.length; i++) {
|
|
988
|
-
const element = result[parseInt(i.toString())];
|
|
994
|
+
const element = result[parseInt(i.toString(), 10)];
|
|
989
995
|
const parentElement = innerWrapper.parentElement;
|
|
990
996
|
if (!(element.classList.contains('e-float-line')) || (!(parentElement && parentElement.classList.contains('e-filled')) && parentElement)) {
|
|
991
997
|
innerWrapper.appendChild(element);
|
|
@@ -1121,9 +1127,7 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1121
1127
|
*/
|
|
1122
1128
|
constructor(options, element) {
|
|
1123
1129
|
super(options, element);
|
|
1124
|
-
this.isVue = false;
|
|
1125
1130
|
this.preventChange = false;
|
|
1126
|
-
this.isAngular = false;
|
|
1127
1131
|
this.isDynamicChange = false;
|
|
1128
1132
|
this.numericOptions = options;
|
|
1129
1133
|
}
|
|
@@ -1221,6 +1225,9 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1221
1225
|
if (this.element.hasAttribute('data-val')) {
|
|
1222
1226
|
this.element.setAttribute('data-val', 'false');
|
|
1223
1227
|
}
|
|
1228
|
+
if (!this.element.hasAttribute('aria-labelledby') && !this.element.hasAttribute('placeholder')) {
|
|
1229
|
+
this.element.setAttribute('aria-label', 'numerictextbox');
|
|
1230
|
+
}
|
|
1224
1231
|
if (!isNullOrUndefined(closest(this.element, 'fieldset')) && closest(this.element, 'fieldset').disabled) {
|
|
1225
1232
|
this.enabled = false;
|
|
1226
1233
|
}
|
|
@@ -1228,9 +1235,9 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1228
1235
|
}
|
|
1229
1236
|
}
|
|
1230
1237
|
checkAttributes(isDynamic) {
|
|
1231
|
-
const attributes
|
|
1238
|
+
const attributes = isDynamic ? isNullOrUndefined(this.htmlAttributes) ? [] : Object.keys(this.htmlAttributes) :
|
|
1232
1239
|
['value', 'min', 'max', 'step', 'disabled', 'readonly', 'style', 'name', 'placeholder'];
|
|
1233
|
-
for (const prop of attributes
|
|
1240
|
+
for (const prop of attributes) {
|
|
1234
1241
|
if (!isNullOrUndefined(this.element.getAttribute(prop))) {
|
|
1235
1242
|
switch (prop) {
|
|
1236
1243
|
case 'disabled':
|
|
@@ -1679,16 +1686,14 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1679
1686
|
}
|
|
1680
1687
|
if (this.element.selectionStart > 0) {
|
|
1681
1688
|
if ((this.element.value[this.element.selectionStart - 1].charCodeAt(0) === 45) && this.element.selectionStart > 1) {
|
|
1682
|
-
if (isNullOrUndefined(this.prevVal)) {
|
|
1683
|
-
// eslint-disable-next-line no-self-assign
|
|
1684
|
-
this.element.value = this.element.value;
|
|
1685
|
-
}
|
|
1686
|
-
else {
|
|
1689
|
+
if (!isNullOrUndefined(this.prevVal)) {
|
|
1687
1690
|
this.element.value = this.prevVal;
|
|
1688
1691
|
}
|
|
1689
1692
|
this.element.setSelectionRange(this.element.selectionStart, this.element.selectionStart);
|
|
1690
1693
|
}
|
|
1691
|
-
if (this.element.value[this.element.selectionStart - 1] === decimalSeparator &&
|
|
1694
|
+
if (this.element.value[this.element.selectionStart - 1] === decimalSeparator &&
|
|
1695
|
+
this.decimals === 0 &&
|
|
1696
|
+
this.validateDecimalOnType) {
|
|
1692
1697
|
this.element.value = this.element.value.substring(0, prevPos) +
|
|
1693
1698
|
this.element.value.substring(currentPos, this.element.value.length);
|
|
1694
1699
|
}
|
|
@@ -1717,8 +1722,7 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1717
1722
|
}
|
|
1718
1723
|
}
|
|
1719
1724
|
inputHandler(event) {
|
|
1720
|
-
|
|
1721
|
-
const numerictextboxObj = this;
|
|
1725
|
+
const numerictextboxObj = this;
|
|
1722
1726
|
if (!this.enabled || this.readonly) {
|
|
1723
1727
|
return;
|
|
1724
1728
|
}
|
|
@@ -1741,7 +1745,9 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1741
1745
|
const previous = this.instance.getNumberParser({ format: 'n' })(this.elementPrevValue);
|
|
1742
1746
|
//EJ2-54963-if type "." or ".0" or "-.0" it converts to "0" automatically when binding v-model
|
|
1743
1747
|
const nonZeroRegex = new RegExp('[^0-9]+$');
|
|
1744
|
-
if (nonZeroRegex.test(this.element.value) ||
|
|
1748
|
+
if (nonZeroRegex.test(this.element.value) ||
|
|
1749
|
+
((this.elementPrevValue.indexOf('.') !== -1 || this.elementPrevValue.indexOf('-') !== -1) &&
|
|
1750
|
+
this.element.value[this.element.value.length - 1] === '0')) {
|
|
1745
1751
|
current = this.value;
|
|
1746
1752
|
}
|
|
1747
1753
|
const eventArgs = {
|
|
@@ -1765,7 +1771,6 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
1765
1771
|
event.preventDefault();
|
|
1766
1772
|
this.action(DECREMENT, event);
|
|
1767
1773
|
break;
|
|
1768
|
-
default: break;
|
|
1769
1774
|
}
|
|
1770
1775
|
}
|
|
1771
1776
|
}
|
|
@@ -2050,8 +2055,7 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
2050
2055
|
if (!this.getElementData(event)) {
|
|
2051
2056
|
return;
|
|
2052
2057
|
}
|
|
2053
|
-
|
|
2054
|
-
const result = this.getElementData(event);
|
|
2058
|
+
this.getElementData(event);
|
|
2055
2059
|
const target = event.currentTarget;
|
|
2056
2060
|
const action = (target.classList.contains(SPINUP)) ? INCREMENT : DECREMENT;
|
|
2057
2061
|
EventHandler.add(target, 'mouseleave', this.mouseUpClick, this);
|
|
@@ -2196,15 +2200,14 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
2196
2200
|
}, this.clearButton);
|
|
2197
2201
|
super.destroy();
|
|
2198
2202
|
}
|
|
2199
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns */
|
|
2200
2203
|
/**
|
|
2201
2204
|
* Returns the value of NumericTextBox with the format applied to the NumericTextBox.
|
|
2202
2205
|
*
|
|
2206
|
+
* @returns {string} - Returns the formatted value of the NumericTextBox.
|
|
2203
2207
|
*/
|
|
2204
2208
|
getText() {
|
|
2205
2209
|
return this.element.value;
|
|
2206
2210
|
}
|
|
2207
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns */
|
|
2208
2211
|
/**
|
|
2209
2212
|
* Sets the focus to widget for interaction.
|
|
2210
2213
|
*
|
|
@@ -2227,17 +2230,15 @@ let NumericTextBox = class NumericTextBox extends Component {
|
|
|
2227
2230
|
removeClass([this.container], [NUMERIC_FOCUS]);
|
|
2228
2231
|
}
|
|
2229
2232
|
}
|
|
2230
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns-description */
|
|
2231
2233
|
/**
|
|
2232
2234
|
* Gets the properties to be maintained in the persisted state.
|
|
2233
2235
|
*
|
|
2234
|
-
* @returns {string}
|
|
2236
|
+
* @returns {string} - Returns the persisted data.
|
|
2235
2237
|
*/
|
|
2236
2238
|
getPersistData() {
|
|
2237
2239
|
const keyEntity = ['value'];
|
|
2238
2240
|
return this.addOnPersist(keyEntity);
|
|
2239
2241
|
}
|
|
2240
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
2241
2242
|
/**
|
|
2242
2243
|
* Calls internally if any of the property value is changed.
|
|
2243
2244
|
*
|
|
@@ -2451,14 +2452,7 @@ NumericTextBox = __decorate([
|
|
|
2451
2452
|
NotifyPropertyChanges
|
|
2452
2453
|
], NumericTextBox);
|
|
2453
2454
|
|
|
2454
|
-
/**
|
|
2455
|
-
* NumericTextBox modules
|
|
2456
|
-
*/
|
|
2457
|
-
|
|
2458
2455
|
/* eslint-disable valid-jsdoc, jsdoc/require-jsdoc, jsdoc/require-returns, jsdoc/require-param */
|
|
2459
|
-
/**
|
|
2460
|
-
* MaskedTextBox base module
|
|
2461
|
-
*/
|
|
2462
2456
|
const ERROR$1 = 'e-error';
|
|
2463
2457
|
const INPUTGROUP = 'e-input-group';
|
|
2464
2458
|
const FLOATINPUT = 'e-float-input';
|
|
@@ -2617,8 +2611,8 @@ function unwireEvents() {
|
|
|
2617
2611
|
EventHandler.remove(this.element, 'focus', maskInputFocusHandler);
|
|
2618
2612
|
EventHandler.remove(this.element, 'blur', maskInputBlurHandler);
|
|
2619
2613
|
EventHandler.remove(this.element, 'paste', maskInputPasteHandler);
|
|
2620
|
-
EventHandler.remove(this.element, 'drop', maskInputDropHandler);
|
|
2621
2614
|
EventHandler.remove(this.element, 'cut', maskInputCutHandler);
|
|
2615
|
+
EventHandler.remove(this.element, 'drop', maskInputDropHandler);
|
|
2622
2616
|
EventHandler.remove(this.element, 'mousedown', maskInputMouseDownHandler);
|
|
2623
2617
|
EventHandler.remove(this.element, 'mouseup', maskInputMouseUpHandler);
|
|
2624
2618
|
if (this.formElement) {
|
|
@@ -3600,13 +3594,8 @@ function getUtilMaskEle(args) {
|
|
|
3600
3594
|
*/
|
|
3601
3595
|
class MaskUndo {
|
|
3602
3596
|
}
|
|
3603
|
-
|
|
3604
3597
|
/* eslint-enable valid-jsdoc, jsdoc/require-jsdoc, jsdoc/require-returns, jsdoc/require-param */
|
|
3605
3598
|
|
|
3606
|
-
/**
|
|
3607
|
-
* MaskedTextbox base modules
|
|
3608
|
-
*/
|
|
3609
|
-
|
|
3610
3599
|
var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3611
3600
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3612
3601
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -3641,7 +3630,6 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3641
3630
|
constructor(options, element) {
|
|
3642
3631
|
super(options, element);
|
|
3643
3632
|
this.initInputValue = '';
|
|
3644
|
-
this.isAngular = false;
|
|
3645
3633
|
this.preventChange = false;
|
|
3646
3634
|
this.isClicked = false;
|
|
3647
3635
|
this.maskOptions = options;
|
|
@@ -3716,7 +3704,6 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3716
3704
|
const keyEntity = ['value'];
|
|
3717
3705
|
return this.addOnPersist(keyEntity);
|
|
3718
3706
|
}
|
|
3719
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
3720
3707
|
/**
|
|
3721
3708
|
* Initializes the component rendering.
|
|
3722
3709
|
*
|
|
@@ -3748,9 +3735,12 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3748
3735
|
if (this.element.getAttribute('value') || this.value) {
|
|
3749
3736
|
this.element.setAttribute('value', this.element.value);
|
|
3750
3737
|
}
|
|
3751
|
-
if (!isNullOrUndefined(closest(this.element,
|
|
3738
|
+
if (!isNullOrUndefined(closest(this.element, 'fieldset')) && closest(this.element, 'fieldset').disabled) {
|
|
3752
3739
|
this.enabled = false;
|
|
3753
3740
|
}
|
|
3741
|
+
if (!this.element.hasAttribute('aria-labelledby') && !this.element.hasAttribute('placeholder')) {
|
|
3742
|
+
this.element.setAttribute('aria-label', 'maskedtextbox');
|
|
3743
|
+
}
|
|
3754
3744
|
this.renderComplete();
|
|
3755
3745
|
}
|
|
3756
3746
|
}
|
|
@@ -3842,9 +3832,9 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3842
3832
|
}
|
|
3843
3833
|
}
|
|
3844
3834
|
checkHtmlAttributes(isDynamic) {
|
|
3845
|
-
const attributes
|
|
3835
|
+
const attributes = isDynamic ? isNullOrUndefined(this.htmlAttributes) ? [] : Object.keys(this.htmlAttributes)
|
|
3846
3836
|
: ['placeholder', 'disabled', 'value', 'readonly'];
|
|
3847
|
-
for (const key of attributes
|
|
3837
|
+
for (const key of attributes) {
|
|
3848
3838
|
if (!isNullOrUndefined(this.element.getAttribute(key))) {
|
|
3849
3839
|
switch (key) {
|
|
3850
3840
|
case 'placeholder':
|
|
@@ -3910,7 +3900,7 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3910
3900
|
if (this.placeholder && !this.isFocus) {
|
|
3911
3901
|
this.setMaskPlaceholder(false, false);
|
|
3912
3902
|
}
|
|
3913
|
-
if (this.value ===
|
|
3903
|
+
if (this.value === '' && oldProp.value != null) {
|
|
3914
3904
|
this.element.selectionStart = 0;
|
|
3915
3905
|
this.element.selectionEnd = 0;
|
|
3916
3906
|
}
|
|
@@ -3989,17 +3979,15 @@ let MaskedTextBox = class MaskedTextBox extends Component {
|
|
|
3989
3979
|
this.resetMaskedTextBox();
|
|
3990
3980
|
setMaskValue.call(this, strippedVal);
|
|
3991
3981
|
}
|
|
3992
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns-description */
|
|
3993
3982
|
/**
|
|
3994
3983
|
* Gets the value of the MaskedTextBox with the masked format.
|
|
3995
3984
|
* By using `value` property, you can get the raw value of maskedtextbox without literals and prompt characters.
|
|
3996
3985
|
*
|
|
3997
|
-
* @returns {string}
|
|
3986
|
+
* @returns {string} Returns the value with the masked format.
|
|
3998
3987
|
*/
|
|
3999
3988
|
getMaskedValue() {
|
|
4000
3989
|
return unstrippedValue.call(this, this.element);
|
|
4001
3990
|
}
|
|
4002
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
4003
3991
|
/**
|
|
4004
3992
|
* Sets the focus to widget for interaction.
|
|
4005
3993
|
*
|
|
@@ -4115,18 +4103,6 @@ MaskedTextBox = __decorate$1([
|
|
|
4115
4103
|
NotifyPropertyChanges
|
|
4116
4104
|
], MaskedTextBox);
|
|
4117
4105
|
|
|
4118
|
-
/**
|
|
4119
|
-
* MaskedTextbox modules
|
|
4120
|
-
*/
|
|
4121
|
-
|
|
4122
|
-
/**
|
|
4123
|
-
* MaskedTextbox modules
|
|
4124
|
-
*/
|
|
4125
|
-
|
|
4126
|
-
/**
|
|
4127
|
-
* Input box Component
|
|
4128
|
-
*/
|
|
4129
|
-
|
|
4130
4106
|
var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
4131
4107
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4132
4108
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -4311,7 +4287,6 @@ let Slider = class Slider extends Component {
|
|
|
4311
4287
|
this.initialTooltip = true;
|
|
4312
4288
|
}
|
|
4313
4289
|
preRender() {
|
|
4314
|
-
// eslint-disable-next-line
|
|
4315
4290
|
const localeText = { incrementTitle: 'Increase', decrementTitle: 'Decrease' };
|
|
4316
4291
|
this.l10n = new L10n('slider', localeText, this.locale);
|
|
4317
4292
|
this.isElementFocused = false;
|
|
@@ -4390,6 +4365,7 @@ let Slider = class Slider extends Component {
|
|
|
4390
4365
|
/**
|
|
4391
4366
|
* To Initialize the control rendering
|
|
4392
4367
|
*
|
|
4368
|
+
* @returns {void}
|
|
4393
4369
|
* @private
|
|
4394
4370
|
*/
|
|
4395
4371
|
render() {
|
|
@@ -4399,7 +4375,7 @@ let Slider = class Slider extends Component {
|
|
|
4399
4375
|
this.setZindex();
|
|
4400
4376
|
this.renderComplete();
|
|
4401
4377
|
if (this.element.tagName === 'EJS-SLIDER') {
|
|
4402
|
-
if (this.getTheme(this.sliderContainer)
|
|
4378
|
+
if (this.getTheme(this.sliderContainer) === 'none') {
|
|
4403
4379
|
setTimeout(() => {
|
|
4404
4380
|
this.refresh();
|
|
4405
4381
|
}, 0);
|
|
@@ -4451,6 +4427,7 @@ let Slider = class Slider extends Component {
|
|
|
4451
4427
|
/**
|
|
4452
4428
|
* Initialize the rendering
|
|
4453
4429
|
*
|
|
4430
|
+
* @returns {void}
|
|
4454
4431
|
* @private
|
|
4455
4432
|
*/
|
|
4456
4433
|
initRender() {
|
|
@@ -4470,7 +4447,7 @@ let Slider = class Slider extends Component {
|
|
|
4470
4447
|
this.setOrientClass();
|
|
4471
4448
|
this.hiddenInput = (this.createElement('input', {
|
|
4472
4449
|
attrs: {
|
|
4473
|
-
type: 'hidden', value: (isNullOrUndefined(this.value) ? this.min.toString() : this.value.toString()),
|
|
4450
|
+
type: 'hidden', value: (isNullOrUndefined(this.value) ? (isNullOrUndefined(this.min) ? '0' : this.min.toString()) : this.value.toString()),
|
|
4474
4451
|
name: this.element.getAttribute('name') || this.element.getAttribute('id') ||
|
|
4475
4452
|
'_' + (Math.random() * 1000).toFixed(0) + 'slider', class: classNames.sliderHiddenInput
|
|
4476
4453
|
}
|
|
@@ -4485,7 +4462,7 @@ let Slider = class Slider extends Component {
|
|
|
4485
4462
|
this.rangeValueUpdate();
|
|
4486
4463
|
}
|
|
4487
4464
|
else {
|
|
4488
|
-
this.value = isNullOrUndefined(this.value) ? parseFloat(formatUnit(this.min.toString())) : this.value;
|
|
4465
|
+
this.value = isNullOrUndefined(this.value) ? (isNullOrUndefined(this.min) ? 0 : parseFloat(formatUnit(this.min.toString()))) : this.value;
|
|
4489
4466
|
}
|
|
4490
4467
|
this.previousVal = this.type !== 'Range' ? this.checkHandleValue(parseFloat(formatUnit(this.value.toString()))) :
|
|
4491
4468
|
[this.checkHandleValue(parseFloat(formatUnit(this.value[0].toString()))),
|
|
@@ -4528,6 +4505,7 @@ let Slider = class Slider extends Component {
|
|
|
4528
4505
|
this.isTailwind = this.getTheme(this.sliderContainer) === 'tailwind' || this.getTheme(this.sliderContainer) === 'tailwind-dark';
|
|
4529
4506
|
this.isBootstrap5 = this.getTheme(this.sliderContainer) === 'bootstrap5';
|
|
4530
4507
|
this.isFluent = this.getTheme(this.sliderContainer) === 'FluentUI';
|
|
4508
|
+
this.isFluent2 = this.getTheme(this.sliderContainer) === 'fluent2';
|
|
4531
4509
|
this.isMaterialTooltip = (this.isMaterial || this.isMaterial3) && this.type !== 'Range' && this.tooltip.isVisible;
|
|
4532
4510
|
}
|
|
4533
4511
|
createRangeBar() {
|
|
@@ -4588,7 +4566,7 @@ let Slider = class Slider extends Component {
|
|
|
4588
4566
|
}
|
|
4589
4567
|
if (this.type !== 'Range') {
|
|
4590
4568
|
attributes(element, {
|
|
4591
|
-
'aria-valuemin': min.toString(), 'aria-valuemax': max.toString()
|
|
4569
|
+
'aria-valuemin': isNullOrUndefined(min) ? '0' : min.toString(), 'aria-valuemax': (isNullOrUndefined(max) ? '100' : max.toString())
|
|
4592
4570
|
});
|
|
4593
4571
|
}
|
|
4594
4572
|
else {
|
|
@@ -4734,9 +4712,13 @@ let Slider = class Slider extends Component {
|
|
|
4734
4712
|
}
|
|
4735
4713
|
}
|
|
4736
4714
|
setEnableRTL() {
|
|
4737
|
-
this.enableRtl && this.orientation !== 'Vertical'
|
|
4715
|
+
if (this.enableRtl && this.orientation !== 'Vertical') {
|
|
4716
|
+
addClass([this.sliderContainer], classNames.rtl);
|
|
4717
|
+
}
|
|
4718
|
+
else {
|
|
4738
4719
|
removeClass([this.sliderContainer], classNames.rtl);
|
|
4739
|
-
|
|
4720
|
+
}
|
|
4721
|
+
const preDir = (this.orientation !== 'Vertical') ? this.horDir : this.verDir;
|
|
4740
4722
|
if (this.enableRtl) {
|
|
4741
4723
|
this.horDir = 'right';
|
|
4742
4724
|
this.verDir = 'bottom';
|
|
@@ -4745,7 +4727,7 @@ let Slider = class Slider extends Component {
|
|
|
4745
4727
|
this.horDir = 'left';
|
|
4746
4728
|
this.verDir = 'bottom';
|
|
4747
4729
|
}
|
|
4748
|
-
|
|
4730
|
+
const currDir = (this.orientation !== 'Vertical') ? this.horDir : this.verDir;
|
|
4749
4731
|
if (preDir !== currDir) {
|
|
4750
4732
|
if (this.orientation === 'Horizontal') {
|
|
4751
4733
|
setStyleAttribute(this.firstHandle, { 'right': '', 'left': 'auto' });
|
|
@@ -4792,8 +4774,7 @@ let Slider = class Slider extends Component {
|
|
|
4792
4774
|
}
|
|
4793
4775
|
}
|
|
4794
4776
|
setTooltipContent() {
|
|
4795
|
-
|
|
4796
|
-
content = this.formatContent(this.tooltipFormatInfo, false);
|
|
4777
|
+
const content = this.formatContent(this.tooltipFormatInfo, false);
|
|
4797
4778
|
const contentTemp = function () {
|
|
4798
4779
|
return content;
|
|
4799
4780
|
};
|
|
@@ -4854,13 +4835,13 @@ let Slider = class Slider extends Component {
|
|
|
4854
4835
|
}
|
|
4855
4836
|
addTooltipClass(content) {
|
|
4856
4837
|
if (this.isMaterialTooltip) {
|
|
4857
|
-
|
|
4838
|
+
const count = content.toString().length;
|
|
4858
4839
|
if (!this.tooltipElement) {
|
|
4859
|
-
|
|
4840
|
+
const cssClass = count > 4 ? classNames.sliderMaterialRange : classNames.sliderMaterialDefault;
|
|
4860
4841
|
this.tooltipObj.cssClass = classNames.sliderTooltip + ' ' + cssClass;
|
|
4861
4842
|
}
|
|
4862
4843
|
else {
|
|
4863
|
-
|
|
4844
|
+
const cssClass = count > 4 ?
|
|
4864
4845
|
{ oldCss: classNames.sliderMaterialDefault, newCss: classNames.sliderMaterialRange } :
|
|
4865
4846
|
{ oldCss: classNames.sliderMaterialRange, newCss: classNames.sliderMaterialDefault };
|
|
4866
4847
|
this.tooltipElement.classList.remove(cssClass.oldCss);
|
|
@@ -4943,7 +4924,7 @@ let Slider = class Slider extends Component {
|
|
|
4943
4924
|
getTooltipTransformProperties(className) {
|
|
4944
4925
|
let transformProperties;
|
|
4945
4926
|
if (this.tooltipElement) {
|
|
4946
|
-
|
|
4927
|
+
const position = this.orientation === 'Horizontal' ?
|
|
4947
4928
|
((this.tooltipElement.clientHeight + 14) - (this.tooltipElement.clientHeight / 2)) :
|
|
4948
4929
|
((this.tooltipElement.clientWidth + 14) - (this.tooltipElement.clientWidth / 2));
|
|
4949
4930
|
transformProperties = this.orientation === 'Horizontal' ?
|
|
@@ -4957,7 +4938,7 @@ let Slider = class Slider extends Component {
|
|
|
4957
4938
|
openMaterialTooltip() {
|
|
4958
4939
|
if (this.isMaterialTooltip) {
|
|
4959
4940
|
this.refreshTooltip(this.firstHandle);
|
|
4960
|
-
|
|
4941
|
+
const tooltipContentElement = this.tooltipElement.firstElementChild;
|
|
4961
4942
|
tooltipContentElement.classList.remove(classNames.materialTooltipHide);
|
|
4962
4943
|
tooltipContentElement.classList.add(classNames.materialTooltipShow);
|
|
4963
4944
|
this.firstHandle.style.cursor = 'default';
|
|
@@ -4971,18 +4952,20 @@ let Slider = class Slider extends Component {
|
|
|
4971
4952
|
this.tooltipElement.style.transform = this.getTooltipTransformProperties(this.previousTooltipClass).rotate;
|
|
4972
4953
|
}
|
|
4973
4954
|
if (this.type === 'Default') {
|
|
4974
|
-
setTimeout(() => { if (this.tooltipElement)
|
|
4975
|
-
this.tooltipElement.style.transition = this.transition.handle;
|
|
4955
|
+
setTimeout(() => { if (this.tooltipElement) {
|
|
4956
|
+
this.tooltipElement.style.transition = this.transition.handle;
|
|
4957
|
+
} }, 2500);
|
|
4976
4958
|
}
|
|
4977
4959
|
else {
|
|
4978
|
-
setTimeout(() => { if (this.tooltipElement)
|
|
4979
|
-
this.tooltipElement.style.transition = 'none';
|
|
4960
|
+
setTimeout(() => { if (this.tooltipElement) {
|
|
4961
|
+
this.tooltipElement.style.transition = 'none';
|
|
4962
|
+
} }, 2500);
|
|
4980
4963
|
}
|
|
4981
4964
|
}
|
|
4982
4965
|
}
|
|
4983
4966
|
closeMaterialTooltip() {
|
|
4984
4967
|
if (this.isMaterialTooltip) {
|
|
4985
|
-
|
|
4968
|
+
const tooltipContentElement = this.tooltipElement.firstElementChild;
|
|
4986
4969
|
this.tooltipElement.style.transition = this.scaleTransform;
|
|
4987
4970
|
tooltipContentElement.classList.remove(classNames.materialTooltipShow);
|
|
4988
4971
|
tooltipContentElement.classList.add(classNames.materialTooltipHide);
|
|
@@ -4994,12 +4977,13 @@ let Slider = class Slider extends Component {
|
|
|
4994
4977
|
this.tooltipElement.classList.remove(classNames.materialTooltipOpen);
|
|
4995
4978
|
this.setTooltipTransform();
|
|
4996
4979
|
this.tooltipTarget = undefined;
|
|
4997
|
-
setTimeout(() => { if (this.tooltipElement)
|
|
4998
|
-
this.tooltipElement.style.transition = 'none';
|
|
4980
|
+
setTimeout(() => { if (this.tooltipElement) {
|
|
4981
|
+
this.tooltipElement.style.transition = 'none';
|
|
4982
|
+
} }, 2500);
|
|
4999
4983
|
}
|
|
5000
4984
|
}
|
|
5001
4985
|
checkTooltipPosition(args) {
|
|
5002
|
-
|
|
4986
|
+
const tooltipClass = this.tooltipPositionCalculation(args.collidedPosition);
|
|
5003
4987
|
if (this.tooltipCollidedPosition === undefined ||
|
|
5004
4988
|
this.tooltipCollidedPosition !== args.collidedPosition || !args.element.classList.contains(tooltipClass)) {
|
|
5005
4989
|
if (this.isMaterialTooltip) {
|
|
@@ -5020,9 +5004,10 @@ let Slider = class Slider extends Component {
|
|
|
5020
5004
|
}
|
|
5021
5005
|
}
|
|
5022
5006
|
setTooltipTransform() {
|
|
5023
|
-
|
|
5024
|
-
if (isNullOrUndefined(this.tooltipElement))
|
|
5007
|
+
const transformProperties = this.getTooltipTransformProperties(this.previousTooltipClass);
|
|
5008
|
+
if (isNullOrUndefined(this.tooltipElement)) {
|
|
5025
5009
|
return;
|
|
5010
|
+
}
|
|
5026
5011
|
if (this.tooltipElement.firstElementChild.innerText.length > 4) {
|
|
5027
5012
|
this.tooltipElement.style.transform = `${transformProperties.translate} scale(0.01)`;
|
|
5028
5013
|
}
|
|
@@ -5032,7 +5017,8 @@ let Slider = class Slider extends Component {
|
|
|
5032
5017
|
}
|
|
5033
5018
|
renderTooltip() {
|
|
5034
5019
|
this.tooltipObj = new Tooltip({
|
|
5035
|
-
showTipPointer: this.isBootstrap || this.isMaterial || this.isMaterial3 ||
|
|
5020
|
+
showTipPointer: this.isBootstrap || this.isMaterial || this.isMaterial3 ||
|
|
5021
|
+
this.isBootstrap4 || this.isTailwind || this.isBootstrap5 || this.isFluent || this.isFluent2,
|
|
5036
5022
|
cssClass: classNames.sliderTooltip,
|
|
5037
5023
|
height: (this.isMaterial || this.isMaterial3) ? 30 : 'auto',
|
|
5038
5024
|
animation: { open: { effect: 'None' }, close: { effect: 'FadeOut', duration: 500 } },
|
|
@@ -5046,7 +5032,7 @@ let Slider = class Slider extends Component {
|
|
|
5046
5032
|
this.initializeTooltipProps();
|
|
5047
5033
|
}
|
|
5048
5034
|
initializeTooltipProps() {
|
|
5049
|
-
|
|
5035
|
+
const tooltipShowOn = (this.tooltip.showOn === 'Auto' ? 'Hover' : this.tooltip.showOn);
|
|
5050
5036
|
this.setProperties({ tooltip: { showOn: tooltipShowOn } }, true);
|
|
5051
5037
|
this.tooltipObj.position = this.tooltipPlacement();
|
|
5052
5038
|
this.tooltipCollision(this.tooltipObj.position);
|
|
@@ -5086,10 +5072,10 @@ let Slider = class Slider extends Component {
|
|
|
5086
5072
|
this.buttonTitle();
|
|
5087
5073
|
}
|
|
5088
5074
|
buttonTitle() {
|
|
5089
|
-
|
|
5075
|
+
const enabledRTL = this.enableRtl && this.orientation !== 'Vertical';
|
|
5090
5076
|
this.l10n.setLocale(this.locale);
|
|
5091
|
-
|
|
5092
|
-
|
|
5077
|
+
const decrementTitle = this.l10n.getConstant('decrementTitle');
|
|
5078
|
+
const incrementTitle = this.l10n.getConstant('incrementTitle');
|
|
5093
5079
|
attributes(enabledRTL ? this.secondBtn : this.firstBtn, { 'aria-label': decrementTitle, title: decrementTitle });
|
|
5094
5080
|
attributes(enabledRTL ? this.firstBtn : this.secondBtn, { 'aria-label': incrementTitle, title: incrementTitle });
|
|
5095
5081
|
}
|
|
@@ -5099,18 +5085,26 @@ let Slider = class Slider extends Component {
|
|
|
5099
5085
|
}
|
|
5100
5086
|
}
|
|
5101
5087
|
repeatButton(args) {
|
|
5102
|
-
|
|
5103
|
-
|
|
5088
|
+
const hVal = this.handleValueUpdate();
|
|
5089
|
+
const enabledRTL = this.enableRtl && this.orientation !== 'Vertical';
|
|
5104
5090
|
let value;
|
|
5105
5091
|
if (args.target.parentElement.classList.contains(classNames.firstButton)
|
|
5106
5092
|
|| args.target.classList.contains(classNames.firstButton)) {
|
|
5107
|
-
|
|
5108
|
-
|
|
5093
|
+
if (enabledRTL) {
|
|
5094
|
+
value = this.add(hVal, parseFloat(this.step.toString()), true);
|
|
5095
|
+
}
|
|
5096
|
+
else {
|
|
5097
|
+
value = this.add(hVal, parseFloat(this.step.toString()), false);
|
|
5098
|
+
}
|
|
5109
5099
|
}
|
|
5110
5100
|
else if (args.target.parentElement.classList.contains(classNames.secondButton)
|
|
5111
5101
|
|| (args.target.classList.contains(classNames.secondButton))) {
|
|
5112
|
-
|
|
5113
|
-
|
|
5102
|
+
if (enabledRTL) {
|
|
5103
|
+
value = this.add(hVal, parseFloat(this.step.toString()), false);
|
|
5104
|
+
}
|
|
5105
|
+
else {
|
|
5106
|
+
value = this.add(hVal, parseFloat(this.step.toString()), true);
|
|
5107
|
+
}
|
|
5114
5108
|
}
|
|
5115
5109
|
if (this.limits.enabled) {
|
|
5116
5110
|
value = this.getLimitCorrectedValues(value);
|
|
@@ -5161,9 +5155,8 @@ let Slider = class Slider extends Component {
|
|
|
5161
5155
|
}
|
|
5162
5156
|
return tickCount;
|
|
5163
5157
|
}
|
|
5164
|
-
// tslint:disable-next-line:max-func-body-length
|
|
5165
5158
|
renderScale() {
|
|
5166
|
-
|
|
5159
|
+
const orien = this.orientation === 'Vertical' ? 'v' : 'h';
|
|
5167
5160
|
this.noOfDecimals = this.numberOfDecimals(this.step);
|
|
5168
5161
|
this.ul = this.createElement('ul', {
|
|
5169
5162
|
className: classNames.scale + ' ' + 'e-' + orien + '-scale ' + classNames.tick + '-' + this.ticks.placement.toLowerCase(),
|
|
@@ -5175,18 +5168,22 @@ let Slider = class Slider extends Component {
|
|
|
5175
5168
|
}
|
|
5176
5169
|
let smallStep = this.ticks.smallStep;
|
|
5177
5170
|
if (!this.ticks.showSmallTicks) {
|
|
5178
|
-
this.ticks.largeStep > 0
|
|
5179
|
-
|
|
5171
|
+
if (this.ticks.largeStep > 0) {
|
|
5172
|
+
smallStep = this.ticks.largeStep;
|
|
5173
|
+
}
|
|
5174
|
+
else {
|
|
5175
|
+
smallStep = (parseFloat(formatUnit(this.max))) - (parseFloat(formatUnit(this.min)));
|
|
5176
|
+
}
|
|
5180
5177
|
}
|
|
5181
5178
|
else if (smallStep <= 0) {
|
|
5182
5179
|
smallStep = parseFloat(formatUnit(this.step));
|
|
5183
5180
|
}
|
|
5184
|
-
|
|
5185
|
-
|
|
5186
|
-
|
|
5187
|
-
|
|
5188
|
-
|
|
5189
|
-
|
|
5181
|
+
const min = this.fractionalToInteger(this.min);
|
|
5182
|
+
const max = this.fractionalToInteger(this.max);
|
|
5183
|
+
const steps = this.fractionalToInteger(smallStep);
|
|
5184
|
+
const bigNum = !isNullOrUndefined(this.customValues) && this.customValues.length > 0 && this.customValues.length - 1;
|
|
5185
|
+
const customStep = this.customTickCounter(bigNum);
|
|
5186
|
+
const count = !isNullOrUndefined(this.customValues) && this.customValues.length > 0 ?
|
|
5190
5187
|
(bigNum * customStep) + bigNum : Math.abs((max - min) / steps);
|
|
5191
5188
|
this.element.appendChild(this.ul);
|
|
5192
5189
|
let li;
|
|
@@ -5234,8 +5231,8 @@ let Slider = class Slider extends Component {
|
|
|
5234
5231
|
}
|
|
5235
5232
|
}
|
|
5236
5233
|
else {
|
|
5237
|
-
|
|
5238
|
-
|
|
5234
|
+
const largestep = this.fractionalToInteger(this.ticks.largeStep);
|
|
5235
|
+
const startValue = this.fractionalToInteger(start);
|
|
5239
5236
|
if (orien === 'h') {
|
|
5240
5237
|
islargeTick = ((startValue - min) % largestep === 0) ? true : false;
|
|
5241
5238
|
}
|
|
@@ -5247,8 +5244,13 @@ let Slider = class Slider extends Component {
|
|
|
5247
5244
|
if (islargeTick) {
|
|
5248
5245
|
li.classList.add(classNames.large);
|
|
5249
5246
|
}
|
|
5250
|
-
(orien === 'h')
|
|
5251
|
-
|
|
5247
|
+
if (orien === 'h') {
|
|
5248
|
+
li.style.width = tickWidth + '%';
|
|
5249
|
+
}
|
|
5250
|
+
else {
|
|
5251
|
+
li.style.height = tickWidth + '%';
|
|
5252
|
+
}
|
|
5253
|
+
const repeat = islargeTick ? (this.ticks.placement === 'Both' ? 2 : 1) : 0;
|
|
5252
5254
|
if (islargeTick) {
|
|
5253
5255
|
for (let j = 0; j < repeat; j++) {
|
|
5254
5256
|
this.createTick(li, start, tickWidth);
|
|
@@ -5297,20 +5299,20 @@ let Slider = class Slider extends Component {
|
|
|
5297
5299
|
this.firstChild.style.height = tickWidth / 2 + '%';
|
|
5298
5300
|
this.lastChild.style.height = tickWidth / 2 + '%';
|
|
5299
5301
|
}
|
|
5300
|
-
|
|
5302
|
+
const eventArgs = { ticksWrapper: this.ul, tickElements: this.tickElementCollection };
|
|
5301
5303
|
if (triggerEvent) {
|
|
5302
5304
|
this.trigger('renderedTicks', eventArgs);
|
|
5303
5305
|
}
|
|
5304
5306
|
this.scaleAlignment();
|
|
5305
5307
|
}
|
|
5306
5308
|
createTick(li, start, tickWidth) {
|
|
5307
|
-
|
|
5309
|
+
const span = this.createElement('span', {
|
|
5308
5310
|
className: classNames.tickValue + ' ' + classNames.tick + '-' + this.ticks.placement.toLowerCase(),
|
|
5309
5311
|
attrs: { role: 'presentation', tabIndex: '-1', 'aria-hidden': 'true' }
|
|
5310
5312
|
});
|
|
5311
5313
|
li.appendChild(span);
|
|
5312
5314
|
if (isNullOrUndefined(this.customValues)) {
|
|
5313
|
-
this.formatTicksValue(li, start, span
|
|
5315
|
+
this.formatTicksValue(li, start, span);
|
|
5314
5316
|
}
|
|
5315
5317
|
else {
|
|
5316
5318
|
if (this.enableHtmlSanitizer) {
|
|
@@ -5321,7 +5323,7 @@ let Slider = class Slider extends Component {
|
|
|
5321
5323
|
}
|
|
5322
5324
|
}
|
|
5323
5325
|
}
|
|
5324
|
-
formatTicksValue(li, start, spanElement
|
|
5326
|
+
formatTicksValue(li, start, spanElement) {
|
|
5325
5327
|
const tickText = this.formatNumber(start);
|
|
5326
5328
|
const text = !isNullOrUndefined(this.ticks) && !isNullOrUndefined(this.ticks.format) ?
|
|
5327
5329
|
this.formatString(start, this.ticksFormatInfo).formatString : tickText;
|
|
@@ -5340,29 +5342,34 @@ let Slider = class Slider extends Component {
|
|
|
5340
5342
|
}
|
|
5341
5343
|
scaleAlignment() {
|
|
5342
5344
|
this.tickValuePosition();
|
|
5343
|
-
let orien = this.orientation === 'Vertical' ? 'v' : 'h';
|
|
5344
5345
|
if (this.orientation === 'Vertical') {
|
|
5345
|
-
(this.element.getBoundingClientRect().width <= 15)
|
|
5346
|
-
this.sliderContainer.classList.add(classNames.sliderSmallSize)
|
|
5346
|
+
if (this.element.getBoundingClientRect().width <= 15) {
|
|
5347
|
+
this.sliderContainer.classList.add(classNames.sliderSmallSize);
|
|
5348
|
+
}
|
|
5349
|
+
else {
|
|
5347
5350
|
this.sliderContainer.classList.remove(classNames.sliderSmallSize);
|
|
5351
|
+
}
|
|
5348
5352
|
}
|
|
5349
5353
|
else {
|
|
5350
|
-
(this.element.getBoundingClientRect().height <= 15)
|
|
5351
|
-
this.sliderContainer.classList.add(classNames.sliderSmallSize)
|
|
5354
|
+
if (this.element.getBoundingClientRect().height <= 15) {
|
|
5355
|
+
this.sliderContainer.classList.add(classNames.sliderSmallSize);
|
|
5356
|
+
}
|
|
5357
|
+
else {
|
|
5352
5358
|
this.sliderContainer.classList.remove(classNames.sliderSmallSize);
|
|
5359
|
+
}
|
|
5353
5360
|
}
|
|
5354
5361
|
}
|
|
5355
5362
|
tickValuePosition() {
|
|
5356
5363
|
this.firstChild = this.element.querySelector('ul').children[0];
|
|
5357
|
-
|
|
5364
|
+
const first = this.firstChild.getBoundingClientRect();
|
|
5358
5365
|
let firstChild;
|
|
5359
5366
|
let otherChild;
|
|
5360
|
-
|
|
5361
|
-
|
|
5367
|
+
const smallStep = this.ticks.smallStep;
|
|
5368
|
+
const count = Math.abs((parseFloat(formatUnit(this.max))) - (parseFloat(formatUnit(this.min)))) / smallStep;
|
|
5362
5369
|
if (this.firstChild.children.length > 0) {
|
|
5363
5370
|
firstChild = this.firstChild.children[0].getBoundingClientRect();
|
|
5364
5371
|
}
|
|
5365
|
-
|
|
5372
|
+
const tickElements = [this.sliderContainer.querySelectorAll('.' + classNames.tick + '.' +
|
|
5366
5373
|
classNames.large + ' .' + classNames.tickValue)];
|
|
5367
5374
|
let other;
|
|
5368
5375
|
if (this.ticks.placement === 'Both') {
|
|
@@ -5371,7 +5378,7 @@ let Slider = class Slider extends Component {
|
|
|
5371
5378
|
else {
|
|
5372
5379
|
other = [].slice.call(tickElements[0], 1);
|
|
5373
5380
|
}
|
|
5374
|
-
|
|
5381
|
+
const tickWidth = this.orientation === 'Vertical' ?
|
|
5375
5382
|
(first.height * 2) : (first.width * 2);
|
|
5376
5383
|
for (let i = 0; i < this.firstChild.children.length; i++) {
|
|
5377
5384
|
if (this.orientation === 'Vertical') {
|
|
@@ -5443,13 +5450,22 @@ let Slider = class Slider extends Component {
|
|
|
5443
5450
|
attributes(element, { 'aria-valuenow': valuenow, 'aria-valuetext': text });
|
|
5444
5451
|
}
|
|
5445
5452
|
else {
|
|
5446
|
-
|
|
5447
|
-
|
|
5448
|
-
|
|
5449
|
-
|
|
5450
|
-
|
|
5451
|
-
attributes(element, { 'aria-valuenow': valuenow.split(' - ')[1], 'aria-valuetext': ariaValueText[1] })
|
|
5452
|
-
|
|
5453
|
+
if (!this.enableRtl) {
|
|
5454
|
+
if (element === this.firstHandle) {
|
|
5455
|
+
attributes(element, { 'aria-valuenow': valuenow.split(' - ')[0], 'aria-valuetext': ariaValueText[0] });
|
|
5456
|
+
}
|
|
5457
|
+
else {
|
|
5458
|
+
attributes(element, { 'aria-valuenow': valuenow.split(' - ')[1], 'aria-valuetext': ariaValueText[1] });
|
|
5459
|
+
}
|
|
5460
|
+
}
|
|
5461
|
+
else {
|
|
5462
|
+
if (element === this.firstHandle) {
|
|
5463
|
+
attributes(element, { 'aria-valuenow': valuenow.split(' - ')[1], 'aria-valuetext': ariaValueText[1] });
|
|
5464
|
+
}
|
|
5465
|
+
else {
|
|
5466
|
+
attributes(element, { 'aria-valuenow': valuenow.split(' - ')[0], 'aria-valuetext': ariaValueText[0] });
|
|
5467
|
+
}
|
|
5468
|
+
}
|
|
5453
5469
|
}
|
|
5454
5470
|
}
|
|
5455
5471
|
handleValueUpdate() {
|
|
@@ -5494,27 +5510,39 @@ let Slider = class Slider extends Component {
|
|
|
5494
5510
|
const hVal = this.handleValueUpdate();
|
|
5495
5511
|
if ((args.keyCode === 40) || (args.keyCode === 37)
|
|
5496
5512
|
|| args.currentTarget.classList.contains(classNames.firstButton)) {
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5513
|
+
if (enabledRTL) {
|
|
5514
|
+
value = this.add(hVal, parseFloat(this.step.toString()), true);
|
|
5515
|
+
}
|
|
5516
|
+
else {
|
|
5517
|
+
value = this.add(hVal, parseFloat(this.step.toString()), false);
|
|
5518
|
+
}
|
|
5500
5519
|
}
|
|
5501
5520
|
else if ((args.keyCode === 38) || (args.keyCode === 39) ||
|
|
5502
5521
|
args.currentTarget.classList.contains(classNames.secondButton)) {
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5522
|
+
if (enabledRTL) {
|
|
5523
|
+
value = this.add(hVal, parseFloat(this.step.toString()), false);
|
|
5524
|
+
}
|
|
5525
|
+
else {
|
|
5526
|
+
value = this.add(hVal, parseFloat(this.step.toString()), true);
|
|
5527
|
+
}
|
|
5506
5528
|
}
|
|
5507
5529
|
else if ((args.keyCode === 33
|
|
5508
5530
|
|| args.currentTarget.classList.contains(classNames.firstButton))) {
|
|
5509
|
-
|
|
5510
|
-
|
|
5511
|
-
|
|
5531
|
+
if (enabledRTL) {
|
|
5532
|
+
value = this.add(hVal, parseFloat(this.ticks.largeStep.toString()), false);
|
|
5533
|
+
}
|
|
5534
|
+
else {
|
|
5535
|
+
value = this.add(hVal, parseFloat(this.ticks.largeStep.toString()), true);
|
|
5536
|
+
}
|
|
5512
5537
|
}
|
|
5513
5538
|
else if ((args.keyCode === 34) ||
|
|
5514
5539
|
args.currentTarget.classList.contains(classNames.secondButton)) {
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5540
|
+
if (enabledRTL) {
|
|
5541
|
+
value = this.add(hVal, parseFloat(this.ticks.largeStep.toString()), true);
|
|
5542
|
+
}
|
|
5543
|
+
else {
|
|
5544
|
+
value = this.add(hVal, parseFloat(this.ticks.largeStep.toString()), false);
|
|
5545
|
+
}
|
|
5518
5546
|
}
|
|
5519
5547
|
else if ((args.keyCode === 36)) {
|
|
5520
5548
|
value = parseFloat(this.min < this.max ? this.min.toString() : this.max.toString());
|
|
@@ -5542,13 +5570,20 @@ let Slider = class Slider extends Component {
|
|
|
5542
5570
|
}
|
|
5543
5571
|
tooltipToggle(target) {
|
|
5544
5572
|
if (this.isMaterialTooltip) {
|
|
5545
|
-
|
|
5546
|
-
|
|
5547
|
-
|
|
5573
|
+
if (!this.tooltipElement.classList.contains(classNames.materialTooltipOpen)) {
|
|
5574
|
+
this.openMaterialTooltip();
|
|
5575
|
+
}
|
|
5576
|
+
else {
|
|
5577
|
+
this.refreshTooltip(this.firstHandle);
|
|
5578
|
+
}
|
|
5548
5579
|
}
|
|
5549
5580
|
else {
|
|
5550
|
-
|
|
5551
|
-
|
|
5581
|
+
if (!this.tooltipElement) {
|
|
5582
|
+
this.openTooltip(target);
|
|
5583
|
+
}
|
|
5584
|
+
else {
|
|
5585
|
+
this.refreshTooltip(target);
|
|
5586
|
+
}
|
|
5552
5587
|
}
|
|
5553
5588
|
}
|
|
5554
5589
|
buttonUp(args) {
|
|
@@ -5562,14 +5597,21 @@ let Slider = class Slider extends Component {
|
|
|
5562
5597
|
setRangeBar() {
|
|
5563
5598
|
if (this.orientation === 'Horizontal' && !isNullOrUndefined(this.rangeBar)) {
|
|
5564
5599
|
if (this.type === 'MinRange') {
|
|
5565
|
-
|
|
5566
|
-
|
|
5600
|
+
if (this.enableRtl) {
|
|
5601
|
+
this.rangeBar.style.right = '0px';
|
|
5602
|
+
}
|
|
5603
|
+
else {
|
|
5604
|
+
this.rangeBar.style.left = '0px';
|
|
5605
|
+
}
|
|
5567
5606
|
setStyleAttribute(this.rangeBar, { 'width': isNullOrUndefined(this.handlePos1) ? 0 : this.handlePos1 + 'px' });
|
|
5568
5607
|
}
|
|
5569
5608
|
else {
|
|
5570
|
-
|
|
5571
|
-
|
|
5572
|
-
|
|
5609
|
+
if (this.enableRtl) {
|
|
5610
|
+
this.rangeBar.style.right = this.handlePos1 + 'px';
|
|
5611
|
+
}
|
|
5612
|
+
else {
|
|
5613
|
+
this.rangeBar.style.left = this.handlePos1 + 'px';
|
|
5614
|
+
}
|
|
5573
5615
|
setStyleAttribute(this.rangeBar, { 'width': this.handlePos2 - this.handlePos1 + 'px' });
|
|
5574
5616
|
}
|
|
5575
5617
|
}
|
|
@@ -5673,10 +5715,9 @@ let Slider = class Slider extends Component {
|
|
|
5673
5715
|
this.checkHandleValue(parseFloat(this.value.toString()));
|
|
5674
5716
|
this.handlePos1 = this.checkHandlePosition(this.handleVal1);
|
|
5675
5717
|
this.preHandlePos1 = this.handlePos1;
|
|
5676
|
-
|
|
5677
|
-
|
|
5678
|
-
|
|
5679
|
-
this.activeHandle = this.activeHandle;
|
|
5718
|
+
if (isNullOrUndefined(this.activeHandle)) {
|
|
5719
|
+
this.activeHandle = this.type === 'Range' ? 2 : 1;
|
|
5720
|
+
}
|
|
5680
5721
|
if (this.type === 'Default' || this.type === 'MinRange') {
|
|
5681
5722
|
if (this.limits.enabled) {
|
|
5682
5723
|
const values = this.getLimitValueAndPosition(this.handleVal1, this.limits.minStart, this.limits.minEnd);
|
|
@@ -5735,10 +5776,16 @@ let Slider = class Slider extends Component {
|
|
|
5735
5776
|
}
|
|
5736
5777
|
this.handleStart();
|
|
5737
5778
|
handle.forEach((handle) => {
|
|
5779
|
+
if (isNullOrUndefined(handle)) {
|
|
5780
|
+
return;
|
|
5781
|
+
}
|
|
5738
5782
|
if (this.orientation === 'Horizontal') {
|
|
5739
|
-
|
|
5740
|
-
|
|
5741
|
-
|
|
5783
|
+
if (this.enableRtl) {
|
|
5784
|
+
handle.style.right = `${pos}px`;
|
|
5785
|
+
}
|
|
5786
|
+
else {
|
|
5787
|
+
handle.style.left = `${pos}px`;
|
|
5788
|
+
}
|
|
5742
5789
|
}
|
|
5743
5790
|
else {
|
|
5744
5791
|
handle.style.bottom = `${pos}px`;
|
|
@@ -5758,7 +5805,7 @@ let Slider = class Slider extends Component {
|
|
|
5758
5805
|
this.activeHandle = 1;
|
|
5759
5806
|
}
|
|
5760
5807
|
changeEvent(eventName, e) {
|
|
5761
|
-
|
|
5808
|
+
const previous = eventName === 'change' ? this.previousVal : this.previousChanged;
|
|
5762
5809
|
if (this.type !== 'Range') {
|
|
5763
5810
|
this.setProperties({ 'value': this.handleVal1 }, true);
|
|
5764
5811
|
if (previous !== this.value && (!this.isMaterialTooltip || !this.initialTooltip)) {
|
|
@@ -5769,7 +5816,7 @@ let Slider = class Slider extends Component {
|
|
|
5769
5816
|
this.setAriaAttrValue(this.firstHandle);
|
|
5770
5817
|
}
|
|
5771
5818
|
else {
|
|
5772
|
-
|
|
5819
|
+
const value = this.value = [this.handleVal1, this.handleVal2];
|
|
5773
5820
|
this.setProperties({ 'value': value }, true);
|
|
5774
5821
|
if (previous.length === this.value.length
|
|
5775
5822
|
&& this.value[0] !== previous[0] || this.value[1] !== previous[1]) {
|
|
@@ -5878,7 +5925,7 @@ let Slider = class Slider extends Component {
|
|
|
5878
5925
|
if (this.min === this.max) {
|
|
5879
5926
|
return (parseFloat(formatUnit(this.max)));
|
|
5880
5927
|
}
|
|
5881
|
-
|
|
5928
|
+
const handle = this.tempStartEnd();
|
|
5882
5929
|
if (value < handle.start) {
|
|
5883
5930
|
value = handle.start;
|
|
5884
5931
|
}
|
|
@@ -5890,11 +5937,12 @@ let Slider = class Slider extends Component {
|
|
|
5890
5937
|
/**
|
|
5891
5938
|
* It is used to reposition slider.
|
|
5892
5939
|
*
|
|
5893
|
-
* @returns void
|
|
5940
|
+
* @returns {void}
|
|
5894
5941
|
*/
|
|
5895
5942
|
reposition() {
|
|
5896
|
-
if (!isNullOrUndefined(this.firstHandle))
|
|
5943
|
+
if (!isNullOrUndefined(this.firstHandle)) {
|
|
5897
5944
|
this.firstHandle.style.transition = 'none';
|
|
5945
|
+
}
|
|
5898
5946
|
if (this.type !== 'Default' && !isNullOrUndefined(this.rangeBar)) {
|
|
5899
5947
|
this.rangeBar.style.transition = 'none';
|
|
5900
5948
|
}
|
|
@@ -5906,26 +5954,38 @@ let Slider = class Slider extends Component {
|
|
|
5906
5954
|
this.handlePos2 = this.checkHandlePosition(this.handleVal2);
|
|
5907
5955
|
}
|
|
5908
5956
|
if (this.orientation === 'Horizontal') {
|
|
5909
|
-
|
|
5910
|
-
|
|
5911
|
-
|
|
5957
|
+
if (this.enableRtl) {
|
|
5958
|
+
this.firstHandle.style.right = `${this.handlePos1}px`;
|
|
5959
|
+
}
|
|
5960
|
+
else {
|
|
5961
|
+
this.firstHandle.style.left = `${this.handlePos1}px`;
|
|
5962
|
+
}
|
|
5912
5963
|
if (this.isMaterialTooltip && !isNullOrUndefined(this.materialHandle)) {
|
|
5913
|
-
|
|
5914
|
-
|
|
5915
|
-
|
|
5964
|
+
if (this.enableRtl) {
|
|
5965
|
+
this.materialHandle.style.right = `${this.handlePos1}px`;
|
|
5966
|
+
}
|
|
5967
|
+
else {
|
|
5968
|
+
this.materialHandle.style.left = `${this.handlePos1}px`;
|
|
5969
|
+
}
|
|
5916
5970
|
}
|
|
5917
5971
|
if (this.type === 'MinRange' && !isNullOrUndefined(this.rangeBar)) {
|
|
5918
|
-
|
|
5919
|
-
|
|
5972
|
+
if (this.enableRtl) {
|
|
5973
|
+
this.rangeBar.style.right = '0px';
|
|
5974
|
+
}
|
|
5975
|
+
else {
|
|
5976
|
+
this.rangeBar.style.left = '0px';
|
|
5977
|
+
}
|
|
5920
5978
|
setStyleAttribute(this.rangeBar, { 'width': isNullOrUndefined(this.handlePos1) ? 0 : this.handlePos1 + 'px' });
|
|
5921
5979
|
}
|
|
5922
5980
|
else if (this.type === 'Range' && !isNullOrUndefined(this.secondHandle) && !isNullOrUndefined(this.rangeBar)) {
|
|
5923
|
-
|
|
5924
|
-
|
|
5925
|
-
|
|
5926
|
-
|
|
5927
|
-
|
|
5928
|
-
this.
|
|
5981
|
+
if (this.enableRtl) {
|
|
5982
|
+
this.secondHandle.style.right = `${this.handlePos2}px`;
|
|
5983
|
+
this.rangeBar.style.right = this.handlePos1 + 'px';
|
|
5984
|
+
}
|
|
5985
|
+
else {
|
|
5986
|
+
this.secondHandle.style.left = `${this.handlePos2}px`;
|
|
5987
|
+
this.rangeBar.style.left = this.handlePos1 + 'px';
|
|
5988
|
+
}
|
|
5929
5989
|
setStyleAttribute(this.rangeBar, { 'width': this.handlePos2 - this.handlePos1 + 'px' });
|
|
5930
5990
|
}
|
|
5931
5991
|
}
|
|
@@ -5955,8 +6015,9 @@ let Slider = class Slider extends Component {
|
|
|
5955
6015
|
this.handleStart();
|
|
5956
6016
|
if (!this.tooltip.isVisible) {
|
|
5957
6017
|
setTimeout(() => {
|
|
5958
|
-
if (!isNullOrUndefined(this.firstHandle))
|
|
6018
|
+
if (!isNullOrUndefined(this.firstHandle)) {
|
|
5959
6019
|
this.firstHandle.style.transition = this.scaleTransform;
|
|
6020
|
+
}
|
|
5960
6021
|
if (this.type === 'Range' && !isNullOrUndefined(this.secondHandle)) {
|
|
5961
6022
|
this.secondHandle.style.transition = this.scaleTransform;
|
|
5962
6023
|
}
|
|
@@ -6002,7 +6063,6 @@ let Slider = class Slider extends Component {
|
|
|
6002
6063
|
this.setHandlePosition(null);
|
|
6003
6064
|
}
|
|
6004
6065
|
}
|
|
6005
|
-
// eslint-disable-next-line
|
|
6006
6066
|
tempStartEnd() {
|
|
6007
6067
|
if (this.min > this.max) {
|
|
6008
6068
|
return {
|
|
@@ -6017,20 +6077,19 @@ let Slider = class Slider extends Component {
|
|
|
6017
6077
|
};
|
|
6018
6078
|
}
|
|
6019
6079
|
}
|
|
6020
|
-
// eslint-disable-next-line
|
|
6021
6080
|
xyToPosition(position) {
|
|
6022
6081
|
let pos;
|
|
6023
6082
|
if (this.min === this.max) {
|
|
6024
6083
|
return 100;
|
|
6025
6084
|
}
|
|
6026
6085
|
if (this.orientation === 'Horizontal') {
|
|
6027
|
-
|
|
6028
|
-
|
|
6086
|
+
const left = position.x - this.element.getBoundingClientRect().left;
|
|
6087
|
+
const num = this.element.offsetWidth / 100;
|
|
6029
6088
|
this.val = (left / num);
|
|
6030
6089
|
}
|
|
6031
6090
|
else {
|
|
6032
|
-
|
|
6033
|
-
|
|
6091
|
+
const top = position.y - this.element.getBoundingClientRect().top;
|
|
6092
|
+
const num = this.element.offsetHeight / 100;
|
|
6034
6093
|
this.val = 100 - (top / num);
|
|
6035
6094
|
}
|
|
6036
6095
|
let val = this.stepValueCalculation(this.val);
|
|
@@ -6055,8 +6114,8 @@ let Slider = class Slider extends Component {
|
|
|
6055
6114
|
if (this.step === 0) {
|
|
6056
6115
|
this.step = 1;
|
|
6057
6116
|
}
|
|
6058
|
-
|
|
6059
|
-
|
|
6117
|
+
const percentStep = (parseFloat(formatUnit(this.step))) / ((parseFloat(formatUnit(this.max)) - parseFloat(formatUnit(this.min))) / 100);
|
|
6118
|
+
const remain = value % Math.abs(percentStep);
|
|
6060
6119
|
if (remain !== 0) {
|
|
6061
6120
|
if ((percentStep / 2) > remain) {
|
|
6062
6121
|
value -= remain;
|
|
@@ -6068,8 +6127,7 @@ let Slider = class Slider extends Component {
|
|
|
6068
6127
|
return value;
|
|
6069
6128
|
}
|
|
6070
6129
|
add(a, b, addition) {
|
|
6071
|
-
|
|
6072
|
-
let x = Math.pow(10, precision || 3);
|
|
6130
|
+
const x = Math.pow(10, 3);
|
|
6073
6131
|
let val;
|
|
6074
6132
|
if (addition) {
|
|
6075
6133
|
val = (Math.round(a * x) + Math.round(b * x)) / x;
|
|
@@ -6081,19 +6139,18 @@ let Slider = class Slider extends Component {
|
|
|
6081
6139
|
}
|
|
6082
6140
|
positionToValue(pos) {
|
|
6083
6141
|
let val;
|
|
6084
|
-
|
|
6142
|
+
const diff = parseFloat(formatUnit(this.max)) - parseFloat(formatUnit(this.min));
|
|
6085
6143
|
if (this.orientation === 'Horizontal') {
|
|
6086
6144
|
val = (pos / this.element.getBoundingClientRect().width) * diff;
|
|
6087
6145
|
}
|
|
6088
6146
|
else {
|
|
6089
6147
|
val = (pos / this.element.getBoundingClientRect().height) * diff;
|
|
6090
6148
|
}
|
|
6091
|
-
|
|
6149
|
+
const total = this.add(val, parseFloat(this.min.toString()), true);
|
|
6092
6150
|
return (total);
|
|
6093
6151
|
}
|
|
6094
6152
|
sliderBarClick(evt) {
|
|
6095
6153
|
evt.preventDefault();
|
|
6096
|
-
// eslint-disable-next-line
|
|
6097
6154
|
let pos;
|
|
6098
6155
|
if (evt.type === 'mousedown' || evt.type === 'mouseup' || evt.type === 'click') {
|
|
6099
6156
|
pos = { x: evt.clientX, y: evt.clientY };
|
|
@@ -6107,7 +6164,7 @@ let Slider = class Slider extends Component {
|
|
|
6107
6164
|
this.activeHandle = 2;
|
|
6108
6165
|
if (!(this.limits.enabled && this.limits.endHandleFixed)) {
|
|
6109
6166
|
if (this.limits.enabled) {
|
|
6110
|
-
|
|
6167
|
+
const value = this.getLimitValueAndPosition(handleVal, this.limits.maxStart, this.limits.maxEnd);
|
|
6111
6168
|
handleVal = value[0];
|
|
6112
6169
|
handlepos = value[1];
|
|
6113
6170
|
}
|
|
@@ -6122,7 +6179,7 @@ let Slider = class Slider extends Component {
|
|
|
6122
6179
|
this.activeHandle = 1;
|
|
6123
6180
|
if (!(this.limits.enabled && this.limits.startHandleFixed)) {
|
|
6124
6181
|
if (this.limits.enabled) {
|
|
6125
|
-
|
|
6182
|
+
const value = this.getLimitValueAndPosition(handleVal, this.limits.minStart, this.limits.minEnd);
|
|
6126
6183
|
handleVal = value[0];
|
|
6127
6184
|
handlepos = value[1];
|
|
6128
6185
|
}
|
|
@@ -6136,17 +6193,17 @@ let Slider = class Slider extends Component {
|
|
|
6136
6193
|
if (this.isMaterialTooltip) {
|
|
6137
6194
|
this.tooltipElement.classList.add(classNames.materialTooltipActive);
|
|
6138
6195
|
}
|
|
6139
|
-
|
|
6196
|
+
const focusedElement = this.element.querySelector('.' + classNames.sliderTabHandle);
|
|
6140
6197
|
if (focusedElement && this.getHandle() !== focusedElement) {
|
|
6141
6198
|
focusedElement.classList.remove(classNames.sliderTabHandle);
|
|
6142
6199
|
}
|
|
6143
|
-
|
|
6200
|
+
const handle = this.activeHandle === 1 ? this.firstHandle : this.secondHandle;
|
|
6144
6201
|
let behindElement;
|
|
6145
6202
|
if ((evt.type === 'click' || evt.type === 'mousedown') && evt.target === handle) {
|
|
6146
6203
|
const { clientX: eventX, clientY: eventY } = evt;
|
|
6147
6204
|
behindElement = document.elementFromPoint(eventX, eventY);
|
|
6148
6205
|
}
|
|
6149
|
-
if (evt.target === handle && behindElement
|
|
6206
|
+
if (evt.target === handle && behindElement !== handle) {
|
|
6150
6207
|
if ((this.isMaterial || this.isMaterial3) && !this.tooltip.isVisible &&
|
|
6151
6208
|
!this.getHandle().classList.contains(classNames.sliderTabHandle)) {
|
|
6152
6209
|
this.materialChange();
|
|
@@ -6158,7 +6215,7 @@ let Slider = class Slider extends Component {
|
|
|
6158
6215
|
if (!this.checkRepeatedValue(handleVal)) {
|
|
6159
6216
|
return;
|
|
6160
6217
|
}
|
|
6161
|
-
|
|
6218
|
+
const transition = (this.isMaterial || this.isMaterial3) && this.tooltip.isVisible ?
|
|
6162
6219
|
this.transitionOnMaterialTooltip : this.transition;
|
|
6163
6220
|
this.getHandle().style.transition = transition.handle;
|
|
6164
6221
|
if (this.type !== 'Default') {
|
|
@@ -6168,7 +6225,7 @@ let Slider = class Slider extends Component {
|
|
|
6168
6225
|
if (this.isMaterialTooltip) {
|
|
6169
6226
|
this.initialTooltip = false;
|
|
6170
6227
|
}
|
|
6171
|
-
if (evt.target
|
|
6228
|
+
if (evt.target !== handle) {
|
|
6172
6229
|
this.changeEvent('changed', evt);
|
|
6173
6230
|
}
|
|
6174
6231
|
if (this.type !== 'Default') {
|
|
@@ -6302,7 +6359,7 @@ let Slider = class Slider extends Component {
|
|
|
6302
6359
|
if (this.type !== 'Range' && this.activeHandle === 1) {
|
|
6303
6360
|
if (!(this.limits.enabled && this.limits.startHandleFixed)) {
|
|
6304
6361
|
if (this.limits.enabled) {
|
|
6305
|
-
|
|
6362
|
+
const valueAndPostion = this.getLimitValueAndPosition(handleVal, this.limits.minStart, this.limits.minEnd);
|
|
6306
6363
|
handlepos = valueAndPostion[1];
|
|
6307
6364
|
handleVal = valueAndPostion[0];
|
|
6308
6365
|
}
|
|
@@ -6321,7 +6378,7 @@ let Slider = class Slider extends Component {
|
|
|
6321
6378
|
}
|
|
6322
6379
|
if (handlepos !== this.preHandlePos1) {
|
|
6323
6380
|
if (this.limits.enabled) {
|
|
6324
|
-
|
|
6381
|
+
const value = this.getLimitValueAndPosition(handleVal, this.limits.minStart, this.limits.minEnd);
|
|
6325
6382
|
handleVal = value[0];
|
|
6326
6383
|
handlepos = value[1];
|
|
6327
6384
|
}
|
|
@@ -6340,7 +6397,7 @@ let Slider = class Slider extends Component {
|
|
|
6340
6397
|
}
|
|
6341
6398
|
if (handlepos !== this.preHandlePos2) {
|
|
6342
6399
|
if (this.limits.enabled) {
|
|
6343
|
-
|
|
6400
|
+
const value = this.getLimitValueAndPosition(handleVal, this.limits.maxStart, this.limits.maxEnd);
|
|
6344
6401
|
handleVal = value[0];
|
|
6345
6402
|
handlepos = value[1];
|
|
6346
6403
|
}
|
|
@@ -6384,7 +6441,7 @@ let Slider = class Slider extends Component {
|
|
|
6384
6441
|
}
|
|
6385
6442
|
checkRepeatedValue(currentValue) {
|
|
6386
6443
|
if (this.type === 'Range') {
|
|
6387
|
-
|
|
6444
|
+
const previousVal = this.enableRtl && this.orientation !== 'Vertical' ? (this.activeHandle === 1 ?
|
|
6388
6445
|
this.previousVal[1] : this.previousVal[0]) :
|
|
6389
6446
|
(this.activeHandle === 1 ? this.previousVal[0] : this.previousVal[1]);
|
|
6390
6447
|
if (currentValue === previousVal) {
|
|
@@ -6480,7 +6537,7 @@ let Slider = class Slider extends Component {
|
|
|
6480
6537
|
}
|
|
6481
6538
|
this.minDiff = this.handleVal2 - this.handleVal1;
|
|
6482
6539
|
this.tooltipToggle(this.rangeBar);
|
|
6483
|
-
|
|
6540
|
+
const focusedElement = this.element.querySelector('.' + classNames.sliderTabHandle);
|
|
6484
6541
|
if (focusedElement) {
|
|
6485
6542
|
focusedElement.classList.remove(classNames.sliderTabHandle);
|
|
6486
6543
|
}
|
|
@@ -6554,7 +6611,7 @@ let Slider = class Slider extends Component {
|
|
|
6554
6611
|
this.element.querySelector('.' + classNames.sliderTabHandle).classList.remove(classNames.sliderTabHandle);
|
|
6555
6612
|
}
|
|
6556
6613
|
event.target.classList.add(classNames.sliderTabHandle);
|
|
6557
|
-
|
|
6614
|
+
const parentElement = event.target.parentElement;
|
|
6558
6615
|
if (parentElement === this.element) {
|
|
6559
6616
|
parentElement.querySelector('.' + classNames.sliderTrack).classList.add(classNames.sliderTabTrack);
|
|
6560
6617
|
if (this.type === 'Range' || this.type === 'MinRange') {
|
|
@@ -6562,8 +6619,13 @@ let Slider = class Slider extends Component {
|
|
|
6562
6619
|
}
|
|
6563
6620
|
}
|
|
6564
6621
|
if (this.type === 'Range') {
|
|
6565
|
-
|
|
6566
|
-
|
|
6622
|
+
const previousSibling = event.target.previousSibling;
|
|
6623
|
+
if (previousSibling && previousSibling.classList.contains(classNames.sliderHandle)) {
|
|
6624
|
+
this.activeHandle = 2;
|
|
6625
|
+
}
|
|
6626
|
+
else {
|
|
6627
|
+
this.activeHandle = 1;
|
|
6628
|
+
}
|
|
6567
6629
|
}
|
|
6568
6630
|
this.getHandle().focus();
|
|
6569
6631
|
this.tooltipToggle(this.getHandle());
|
|
@@ -6687,7 +6749,7 @@ let Slider = class Slider extends Component {
|
|
|
6687
6749
|
this.tooltipObj.refresh(this.firstHandle);
|
|
6688
6750
|
}
|
|
6689
6751
|
if (this.showButtons) {
|
|
6690
|
-
|
|
6752
|
+
const enabledRTL = this.enableRtl && this.orientation !== 'Vertical';
|
|
6691
6753
|
attributes(enabledRTL ? this.secondBtn : this.firstBtn, { 'aria-label': 'Decrease', title: 'Decrease' });
|
|
6692
6754
|
attributes(enabledRTL ? this.firstBtn : this.secondBtn, { 'aria-label': 'Increase', title: 'Increase' });
|
|
6693
6755
|
}
|
|
@@ -6733,10 +6795,11 @@ let Slider = class Slider extends Component {
|
|
|
6733
6795
|
/**
|
|
6734
6796
|
* Get the properties to be maintained in the persisted state.
|
|
6735
6797
|
*
|
|
6798
|
+
* @returns {string} - Returns the string
|
|
6736
6799
|
* @private
|
|
6737
6800
|
*/
|
|
6738
6801
|
getPersistData() {
|
|
6739
|
-
|
|
6802
|
+
const keyEntity = ['value'];
|
|
6740
6803
|
return this.addOnPersist(keyEntity);
|
|
6741
6804
|
}
|
|
6742
6805
|
/**
|
|
@@ -6744,7 +6807,7 @@ let Slider = class Slider extends Component {
|
|
|
6744
6807
|
* Also it removes the attributes and classes.
|
|
6745
6808
|
*
|
|
6746
6809
|
* @method destroy
|
|
6747
|
-
* @
|
|
6810
|
+
* @returns {void}
|
|
6748
6811
|
*/
|
|
6749
6812
|
destroy() {
|
|
6750
6813
|
super.destroy();
|
|
@@ -6755,7 +6818,9 @@ let Slider = class Slider extends Component {
|
|
|
6755
6818
|
if (this.type === 'Range') {
|
|
6756
6819
|
this.secondHandle.removeAttribute('aria-orientation');
|
|
6757
6820
|
}
|
|
6758
|
-
this.sliderContainer.parentNode
|
|
6821
|
+
if (this.sliderContainer.parentNode) {
|
|
6822
|
+
this.sliderContainer.parentNode.insertBefore(this.element, this.sliderContainer);
|
|
6823
|
+
}
|
|
6759
6824
|
detach(this.sliderContainer);
|
|
6760
6825
|
if (this.tooltip.isVisible) {
|
|
6761
6826
|
this.tooltipObj.destroy();
|
|
@@ -6783,18 +6848,20 @@ let Slider = class Slider extends Component {
|
|
|
6783
6848
|
/**
|
|
6784
6849
|
* Calls internally if any of the property value is changed.
|
|
6785
6850
|
*
|
|
6851
|
+
* @param {SliderModel} newProp - Specifies the new properties
|
|
6852
|
+
* @param {SliderModel} oldProp - Specifies the old properties
|
|
6853
|
+
* @returns {void}
|
|
6786
6854
|
* @private
|
|
6787
6855
|
*/
|
|
6788
|
-
// tslint:disable-next-line
|
|
6789
6856
|
onPropertyChanged(newProp, oldProp) {
|
|
6790
|
-
for (
|
|
6857
|
+
for (const prop of Object.keys(newProp)) {
|
|
6791
6858
|
switch (prop) {
|
|
6792
6859
|
case 'cssClass':
|
|
6793
6860
|
this.setCSSClass(oldProp.cssClass);
|
|
6794
6861
|
break;
|
|
6795
6862
|
case 'value':
|
|
6796
6863
|
if (newProp && oldProp) {
|
|
6797
|
-
|
|
6864
|
+
const value = isNullOrUndefined(newProp.value) ?
|
|
6798
6865
|
(this.type === 'Range' ? [this.min, this.max] : this.min) : newProp.value;
|
|
6799
6866
|
this.setProperties({ 'value': value }, true);
|
|
6800
6867
|
if (!isNullOrUndefined(oldProp.value) && oldProp.value.toString() !== value.toString()) {
|
|
@@ -6942,8 +7009,9 @@ let Slider = class Slider extends Component {
|
|
|
6942
7009
|
if (!this.isMaterial && !this.isMaterial3 && !isNullOrUndefined(this.ticks) && this.ticks.placement === 'Both') {
|
|
6943
7010
|
this.element.style.zIndex = (this.zIndex + 2) + '';
|
|
6944
7011
|
}
|
|
6945
|
-
if (!isNullOrUndefined(this.firstHandle))
|
|
7012
|
+
if (!isNullOrUndefined(this.firstHandle)) {
|
|
6946
7013
|
this.firstHandle.style.zIndex = (this.zIndex + 3) + '';
|
|
7014
|
+
}
|
|
6947
7015
|
if (this.type === 'Range' && !isNullOrUndefined(this.secondHandle)) {
|
|
6948
7016
|
this.secondHandle.style.zIndex = (this.zIndex + 4) + '';
|
|
6949
7017
|
}
|
|
@@ -6977,7 +7045,8 @@ let Slider = class Slider extends Component {
|
|
|
6977
7045
|
trackClassName = classNames.sliderHorizantalColor;
|
|
6978
7046
|
if (this.enableRtl) {
|
|
6979
7047
|
if (isNullOrUndefined(this.customValues)) {
|
|
6980
|
-
trackPosition =
|
|
7048
|
+
trackPosition =
|
|
7049
|
+
this.checkHandlePosition(this.max) - this.checkHandlePosition(this.colorRange[i].end);
|
|
6981
7050
|
}
|
|
6982
7051
|
else {
|
|
6983
7052
|
trackPosition = this.checkHandlePosition(this.customValues.length - this.colorRange[i].end - 1);
|
|
@@ -7004,6 +7073,7 @@ let Slider = class Slider extends Component {
|
|
|
7004
7073
|
/**
|
|
7005
7074
|
* Gets the component name
|
|
7006
7075
|
*
|
|
7076
|
+
* @returns {string} - Returns the string
|
|
7007
7077
|
* @private
|
|
7008
7078
|
*/
|
|
7009
7079
|
getModuleName() {
|
|
@@ -7086,10 +7156,6 @@ Slider = __decorate$2([
|
|
|
7086
7156
|
NotifyPropertyChanges
|
|
7087
7157
|
], Slider);
|
|
7088
7158
|
|
|
7089
|
-
/**
|
|
7090
|
-
* Slider modules
|
|
7091
|
-
*/
|
|
7092
|
-
|
|
7093
7159
|
var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
7094
7160
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7095
7161
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -7100,7 +7166,6 @@ var FormValidator_1;
|
|
|
7100
7166
|
/**
|
|
7101
7167
|
* global declarations
|
|
7102
7168
|
*/
|
|
7103
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
7104
7169
|
const regex = {
|
|
7105
7170
|
/* eslint-disable no-useless-escape */
|
|
7106
7171
|
EMAIL: new RegExp('^[A-Za-z0-9._%+-]{1,}@[A-Za-z0-9._%+-]{1,}([.]{1}[a-zA-Z0-9]{2,}' +
|
|
@@ -7244,20 +7309,19 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7244
7309
|
}
|
|
7245
7310
|
else if (!isNullOrUndefined(this.rules[`${name}`] && rules)) {
|
|
7246
7311
|
for (let i = 0; i < rules.length; i++) {
|
|
7247
|
-
delete this.rules[`${name}`][rules[parseInt(i.toString())]];
|
|
7312
|
+
delete this.rules[`${name}`][rules[parseInt(i.toString(), 10)]];
|
|
7248
7313
|
}
|
|
7249
7314
|
}
|
|
7250
7315
|
else {
|
|
7251
7316
|
return;
|
|
7252
7317
|
}
|
|
7253
7318
|
}
|
|
7254
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns-description */
|
|
7255
7319
|
/**
|
|
7256
7320
|
* Validate the current form values using defined rules.
|
|
7257
7321
|
* Returns `true` when the form is valid otherwise `false`
|
|
7258
7322
|
*
|
|
7259
7323
|
* @param {string} selected - Optional parameter to validate specified element.
|
|
7260
|
-
* @returns {boolean}
|
|
7324
|
+
* @returns {boolean} - Returns form validation status.
|
|
7261
7325
|
*/
|
|
7262
7326
|
validate(selected) {
|
|
7263
7327
|
const rules = Object.keys(this.rules);
|
|
@@ -7276,7 +7340,6 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7276
7340
|
return this.errorRules.length === 0;
|
|
7277
7341
|
}
|
|
7278
7342
|
}
|
|
7279
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
7280
7343
|
/**
|
|
7281
7344
|
* Reset the value of all the fields in form.
|
|
7282
7345
|
*
|
|
@@ -7286,18 +7349,16 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7286
7349
|
this.element.reset();
|
|
7287
7350
|
this.clearForm();
|
|
7288
7351
|
}
|
|
7289
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns-description */
|
|
7290
7352
|
/**
|
|
7291
7353
|
* Get input element by name.
|
|
7292
7354
|
*
|
|
7293
7355
|
* @param {string} name - Input element name attribute value.
|
|
7294
|
-
* @returns {HTMLInputElement}
|
|
7356
|
+
* @returns {HTMLInputElement} - Returns the input element.
|
|
7295
7357
|
*/
|
|
7296
7358
|
getInputElement(name) {
|
|
7297
7359
|
this.inputElement = (select('[name="' + name + '"]', this.element));
|
|
7298
7360
|
return this.inputElement;
|
|
7299
7361
|
}
|
|
7300
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
7301
7362
|
/**
|
|
7302
7363
|
* Destroy the form validator object and error elements.
|
|
7303
7364
|
*
|
|
@@ -7351,9 +7412,9 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7351
7412
|
}
|
|
7352
7413
|
/**
|
|
7353
7414
|
* @param {any} args - Specifies the culture name.
|
|
7415
|
+
* @returns {void}
|
|
7354
7416
|
* @private
|
|
7355
7417
|
*/
|
|
7356
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types
|
|
7357
7418
|
afterLocalization(args) {
|
|
7358
7419
|
this.locale = args.locale;
|
|
7359
7420
|
this.localeFunc();
|
|
@@ -7377,10 +7438,12 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7377
7438
|
input.removeAttribute('aria-invalid');
|
|
7378
7439
|
const inputParent = input.parentElement;
|
|
7379
7440
|
const grandParent = inputParent.parentElement;
|
|
7380
|
-
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7441
|
+
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7442
|
+
(input.classList.contains('e-input') && inputParent.classList.contains('e-input-group'))) {
|
|
7381
7443
|
inputParent.classList.remove(this.errorClass);
|
|
7382
7444
|
}
|
|
7383
|
-
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7445
|
+
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7446
|
+
grandParent.classList.contains('e-wrapper'))) {
|
|
7384
7447
|
grandParent.classList.remove(this.errorClass);
|
|
7385
7448
|
}
|
|
7386
7449
|
else {
|
|
@@ -7391,10 +7454,12 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7391
7454
|
this.getErrorElement(input.name);
|
|
7392
7455
|
this.hideMessage(input.name);
|
|
7393
7456
|
}
|
|
7394
|
-
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7457
|
+
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7458
|
+
(input.classList.contains('e-input') && inputParent.classList.contains('e-input-group'))) {
|
|
7395
7459
|
inputParent.classList.remove(this.validClass);
|
|
7396
7460
|
}
|
|
7397
|
-
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7461
|
+
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7462
|
+
grandParent.classList.contains('e-wrapper'))) {
|
|
7398
7463
|
grandParent.classList.remove(this.validClass);
|
|
7399
7464
|
}
|
|
7400
7465
|
else {
|
|
@@ -7644,11 +7709,13 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7644
7709
|
this.inputElement.setAttribute('aria-describedby', this.inputElement.id + '-info');
|
|
7645
7710
|
const inputParent = this.inputElement.parentElement;
|
|
7646
7711
|
const grandParent = inputParent.parentElement;
|
|
7647
|
-
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7712
|
+
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7713
|
+
(this.inputElement.classList.contains('e-input') && inputParent.classList.contains('e-input-group'))) {
|
|
7648
7714
|
inputParent.classList.add(this.errorClass);
|
|
7649
7715
|
inputParent.classList.remove(this.validClass);
|
|
7650
7716
|
}
|
|
7651
|
-
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7717
|
+
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7718
|
+
grandParent.classList.contains('e-wrapper'))) {
|
|
7652
7719
|
grandParent.classList.add(this.errorClass);
|
|
7653
7720
|
grandParent.classList.remove(this.validClass);
|
|
7654
7721
|
}
|
|
@@ -7664,11 +7731,13 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7664
7731
|
}
|
|
7665
7732
|
eventArgs.errorElement = this.infoElement;
|
|
7666
7733
|
eventArgs.status = 'failure';
|
|
7667
|
-
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7734
|
+
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7735
|
+
(this.inputElement.classList.contains('e-input') && inputParent.classList.contains('e-input-group'))) {
|
|
7668
7736
|
inputParent.classList.add(this.errorClass);
|
|
7669
7737
|
inputParent.classList.remove(this.validClass);
|
|
7670
7738
|
}
|
|
7671
|
-
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7739
|
+
else if ((grandParent != null) && (grandParent.classList.contains('e-control-wrapper') ||
|
|
7740
|
+
grandParent.classList.contains('e-wrapper'))) {
|
|
7672
7741
|
grandParent.classList.add(this.errorClass);
|
|
7673
7742
|
grandParent.classList.remove(this.validClass);
|
|
7674
7743
|
}
|
|
@@ -7737,8 +7806,8 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7737
7806
|
const formats = message.match(/{(\d)}/g);
|
|
7738
7807
|
if (!isNullOrUndefined(formats)) {
|
|
7739
7808
|
for (let i = 0; i < formats.length; i++) {
|
|
7740
|
-
const value = ruleValue instanceof Array ? ruleValue[parseInt(i.toString())] : ruleValue;
|
|
7741
|
-
message = message.replace(formats[parseInt(i.toString())], value);
|
|
7809
|
+
const value = ruleValue instanceof Array ? ruleValue[parseInt(i.toString(), 10)] : ruleValue;
|
|
7810
|
+
message = message.replace(formats[parseInt(i.toString(), 10)], value);
|
|
7742
7811
|
}
|
|
7743
7812
|
}
|
|
7744
7813
|
return message;
|
|
@@ -7800,7 +7869,7 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7800
7869
|
// Remove existing rule from errorRules object
|
|
7801
7870
|
removeErrorRules(name) {
|
|
7802
7871
|
for (let i = 0; i < this.errorRules.length; i++) {
|
|
7803
|
-
const rule = this.errorRules[parseInt(i.toString())];
|
|
7872
|
+
const rule = this.errorRules[parseInt(i.toString(), 10)];
|
|
7804
7873
|
if (rule.name === name) {
|
|
7805
7874
|
this.errorRules.splice(i, 1);
|
|
7806
7875
|
}
|
|
@@ -7819,7 +7888,8 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7819
7888
|
this.removeErrorRules(name);
|
|
7820
7889
|
const inputParent = this.inputElement.parentElement;
|
|
7821
7890
|
const grandParent = inputParent.parentElement;
|
|
7822
|
-
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7891
|
+
if (inputParent.classList.contains('e-control-wrapper') || inputParent.classList.contains('e-wrapper') ||
|
|
7892
|
+
(this.inputElement.classList.contains('e-input') && inputParent.classList.contains('e-input-group'))) {
|
|
7823
7893
|
inputParent.classList.add(this.validClass);
|
|
7824
7894
|
inputParent.classList.remove(this.errorClass);
|
|
7825
7895
|
}
|
|
@@ -7842,7 +7912,7 @@ let FormValidator = FormValidator_1 = class FormValidator extends Base {
|
|
|
7842
7912
|
this.hideMessage(name);
|
|
7843
7913
|
}
|
|
7844
7914
|
}
|
|
7845
|
-
// Return boolean result if the input have
|
|
7915
|
+
// Return boolean result if the input have checkable or submit types
|
|
7846
7916
|
static isCheckable(input) {
|
|
7847
7917
|
const inputType = input.getAttribute('type');
|
|
7848
7918
|
return inputType && (inputType === 'checkbox' || inputType === 'radio' || inputType === 'submit');
|
|
@@ -7875,10 +7945,10 @@ FormValidator.checkValidator = {
|
|
|
7875
7945
|
return regex.DIGITS.test(option.value);
|
|
7876
7946
|
},
|
|
7877
7947
|
maxLength: (option) => {
|
|
7878
|
-
return option.value.length <= option.param;
|
|
7948
|
+
return option.value.length <= Number(option.param);
|
|
7879
7949
|
},
|
|
7880
7950
|
minLength: (option) => {
|
|
7881
|
-
return option.value.length >= option.param;
|
|
7951
|
+
return option.value.length >= Number(option.param);
|
|
7882
7952
|
},
|
|
7883
7953
|
rangeLength: (option) => {
|
|
7884
7954
|
const param = option.param;
|
|
@@ -7890,9 +7960,9 @@ FormValidator.checkValidator = {
|
|
|
7890
7960
|
},
|
|
7891
7961
|
date: (option) => {
|
|
7892
7962
|
if (!isNullOrUndefined(option.param) && (typeof (option.param) === 'string' && option.param !== '')) {
|
|
7893
|
-
|
|
7894
|
-
|
|
7895
|
-
|
|
7963
|
+
const globalize = new Internationalization;
|
|
7964
|
+
const dateOptions = { format: option.param.toString(), type: 'dateTime', skeleton: 'yMd' };
|
|
7965
|
+
const dateValue = globalize.parseDate(option.value, dateOptions);
|
|
7896
7966
|
return (!isNullOrUndefined(dateValue) && dateValue instanceof Date && !isNaN(+dateValue));
|
|
7897
7967
|
}
|
|
7898
7968
|
else {
|
|
@@ -7902,7 +7972,7 @@ FormValidator.checkValidator = {
|
|
|
7902
7972
|
max: (option) => {
|
|
7903
7973
|
if (!isNaN(Number(option.value))) {
|
|
7904
7974
|
// Maximum rule validation for number
|
|
7905
|
-
return +option.value <= option.param;
|
|
7975
|
+
return +option.value <= +option.param;
|
|
7906
7976
|
}
|
|
7907
7977
|
// Maximum rule validation for date
|
|
7908
7978
|
return new Date(option.value).getTime() <= new Date(JSON.parse(JSON.stringify(option.param))).getTime();
|
|
@@ -7910,11 +7980,11 @@ FormValidator.checkValidator = {
|
|
|
7910
7980
|
min: (option) => {
|
|
7911
7981
|
if (!isNaN(Number(option.value))) {
|
|
7912
7982
|
// Minimum rule validation for number
|
|
7913
|
-
return +option.value >= option.param;
|
|
7983
|
+
return +option.value >= +option.param;
|
|
7914
7984
|
}
|
|
7915
7985
|
else if ((option.value).indexOf(',') !== -1) {
|
|
7916
7986
|
const uNum = (option.value).replace(/,/g, '');
|
|
7917
|
-
return parseFloat(uNum) >= option.param;
|
|
7987
|
+
return parseFloat(uNum) >= Number(option.param); // Convert option.param to a number
|
|
7918
7988
|
}
|
|
7919
7989
|
else {
|
|
7920
7990
|
// Minimum rule validation for date
|
|
@@ -7983,17 +8053,12 @@ FormValidator = FormValidator_1 = __decorate$3([
|
|
|
7983
8053
|
NotifyPropertyChanges
|
|
7984
8054
|
], FormValidator);
|
|
7985
8055
|
|
|
7986
|
-
/**
|
|
7987
|
-
* Input box Component
|
|
7988
|
-
*/
|
|
7989
|
-
|
|
7990
8056
|
var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
7991
8057
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7992
8058
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
7993
8059
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
7994
8060
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7995
8061
|
};
|
|
7996
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7997
8062
|
const CONTROL_WRAPPER = 'e-upload e-control-wrapper';
|
|
7998
8063
|
const INPUT_WRAPPER = 'e-file-select';
|
|
7999
8064
|
const DROP_AREA = 'e-file-drop';
|
|
@@ -8114,7 +8179,6 @@ let Uploader = class Uploader extends Component {
|
|
|
8114
8179
|
this.newFileRef = 0;
|
|
8115
8180
|
this.isFirstFileOnSelection = false;
|
|
8116
8181
|
this.dragCounter = 0;
|
|
8117
|
-
this.isAngular = false;
|
|
8118
8182
|
/**
|
|
8119
8183
|
* Get the file item(li) which are shown in file list.
|
|
8120
8184
|
*
|
|
@@ -8176,8 +8240,7 @@ let Uploader = class Uploader extends Component {
|
|
|
8176
8240
|
this.updateDirectoryAttributes();
|
|
8177
8241
|
break;
|
|
8178
8242
|
case 'template':
|
|
8179
|
-
|
|
8180
|
-
if (ejInstance[0].isReact) {
|
|
8243
|
+
if (this.isReact) {
|
|
8181
8244
|
this.reRenderFileList();
|
|
8182
8245
|
}
|
|
8183
8246
|
else {
|
|
@@ -9106,10 +9169,8 @@ let Uploader = class Uploader extends Component {
|
|
|
9106
9169
|
}
|
|
9107
9170
|
return false;
|
|
9108
9171
|
}
|
|
9109
|
-
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
9110
9172
|
/* istanbul ignore next */
|
|
9111
9173
|
traverseFileTree(item, event) {
|
|
9112
|
-
/* eslint-enable @typescript-eslint/explicit-module-boundary-types */
|
|
9113
9174
|
if (item.isFile) {
|
|
9114
9175
|
this.filesEntries.push(item);
|
|
9115
9176
|
}
|
|
@@ -9222,8 +9283,8 @@ let Uploader = class Uploader extends Component {
|
|
|
9222
9283
|
if (this.enableHtmlSanitizer) {
|
|
9223
9284
|
for (let i = 0; i < fileData.length; i++) {
|
|
9224
9285
|
const sanitizeFile = SanitizeHtmlHelper.beforeSanitize();
|
|
9225
|
-
const sanitizeFileName = SanitizeHtmlHelper.serializeValue(sanitizeFile, fileData[parseInt(i.toString())].name);
|
|
9226
|
-
const currentFileName = fileData[parseInt(i.toString())].name;
|
|
9286
|
+
const sanitizeFileName = SanitizeHtmlHelper.serializeValue(sanitizeFile, fileData[parseInt(i.toString(), 10)].name);
|
|
9287
|
+
const currentFileName = fileData[parseInt(i.toString(), 10)].name;
|
|
9227
9288
|
let isUTF8 = false;
|
|
9228
9289
|
for (let i = 0; i < currentFileName.length; i++) {
|
|
9229
9290
|
if (currentFileName.charCodeAt(i) > 127) {
|
|
@@ -9231,15 +9292,15 @@ let Uploader = class Uploader extends Component {
|
|
|
9231
9292
|
break;
|
|
9232
9293
|
}
|
|
9233
9294
|
}
|
|
9234
|
-
|
|
9235
|
-
|
|
9236
|
-
if ((sanitizeFileName !== fileData[parseInt(i.toString())].name) && !(isUTF8 && !hasHTMLString)) {
|
|
9237
|
-
const encodedFileName = targetFiles[parseInt(i.toString())].name.replace(/[\u00A0-\u9999
|
|
9295
|
+
const htmlTagRegex = /<([a-z][a-z0-9]*)\b[^>]*>(.*?)<\/\1>/i;
|
|
9296
|
+
const hasHTMLString = htmlTagRegex.test(currentFileName);
|
|
9297
|
+
if ((sanitizeFileName !== fileData[parseInt(i.toString(), 10)].name) && !(isUTF8 && !hasHTMLString)) {
|
|
9298
|
+
const encodedFileName = targetFiles[parseInt(i.toString(), 10)].name.replace(/[\u00A0-\u9999<>\\&]/g, function (i) {
|
|
9238
9299
|
return '&#' + i.charCodeAt(0) + ';';
|
|
9239
9300
|
});
|
|
9240
|
-
fileData[parseInt(i.toString())].name = encodedFileName;
|
|
9241
|
-
fileData[parseInt(i.toString())].status = this.localizedTexts('invalidFileName');
|
|
9242
|
-
fileData[parseInt(i.toString())].statusCode = '0';
|
|
9301
|
+
fileData[parseInt(i.toString(), 10)].name = encodedFileName;
|
|
9302
|
+
fileData[parseInt(i.toString(), 10)].status = this.localizedTexts('invalidFileName');
|
|
9303
|
+
fileData[parseInt(i.toString(), 10)].statusCode = '0';
|
|
9243
9304
|
}
|
|
9244
9305
|
}
|
|
9245
9306
|
}
|
|
@@ -9250,9 +9311,7 @@ let Uploader = class Uploader extends Component {
|
|
|
9250
9311
|
this._internalRenderSelect(eventArgs, fileData);
|
|
9251
9312
|
});
|
|
9252
9313
|
}
|
|
9253
|
-
updateInitialFileDetails(args,
|
|
9254
|
-
// eslint-disable-next-line @typescript-eslint/indent
|
|
9255
|
-
targetFiles, file, i, fileData, directory, paste) {
|
|
9314
|
+
updateInitialFileDetails(args, targetFiles, file, i, fileData, directory, paste) {
|
|
9256
9315
|
const fileName = directory ? targetFiles[i].path.substring(1, targetFiles[i].path.length) : paste ?
|
|
9257
9316
|
getUniqueID(file.name.substring(0, file.name.lastIndexOf('.'))) + '.' + this.getFileType(file.name) :
|
|
9258
9317
|
this.directoryUpload ? targetFiles[i].webkitRelativePath : file.name;
|
|
@@ -9396,7 +9455,8 @@ let Uploader = class Uploader extends Component {
|
|
|
9396
9455
|
allowedExtensions.push(extension.trim().toLocaleLowerCase());
|
|
9397
9456
|
}
|
|
9398
9457
|
for (let i = 0; i < files.length; i++) {
|
|
9399
|
-
|
|
9458
|
+
const checkFileType = files[i].type.indexOf('.') !== -1 ?
|
|
9459
|
+
files[i].type.replace('.', '') : files[i].type;
|
|
9400
9460
|
if (allowedExtensions.indexOf(('.' + checkFileType).toLocaleLowerCase()) === -1) {
|
|
9401
9461
|
files[i].status = this.localizedTexts('invalidFileType');
|
|
9402
9462
|
files[i].statusCode = '0';
|
|
@@ -9424,7 +9484,8 @@ let Uploader = class Uploader extends Component {
|
|
|
9424
9484
|
isPreLoadFile(fileData) {
|
|
9425
9485
|
let isPreload = false;
|
|
9426
9486
|
for (let i = 0; i < this.files.length; i++) {
|
|
9427
|
-
if (this.files[i].name === fileData.name.slice(0, fileData.name.lastIndexOf('.')) &&
|
|
9487
|
+
if (this.files[i].name === fileData.name.slice(0, fileData.name.lastIndexOf('.')) &&
|
|
9488
|
+
this.files[i].type === fileData.type) {
|
|
9428
9489
|
isPreload = true;
|
|
9429
9490
|
}
|
|
9430
9491
|
}
|
|
@@ -9667,7 +9728,6 @@ let Uploader = class Uploader extends Component {
|
|
|
9667
9728
|
this.fileList.push(fileList);
|
|
9668
9729
|
this.renderReactTemplates();
|
|
9669
9730
|
}
|
|
9670
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-param */
|
|
9671
9731
|
/**
|
|
9672
9732
|
* Create the file list for specified files data.
|
|
9673
9733
|
*
|
|
@@ -9679,7 +9739,6 @@ let Uploader = class Uploader extends Component {
|
|
|
9679
9739
|
this.internalCreateFileList(fileData);
|
|
9680
9740
|
}
|
|
9681
9741
|
internalCreateFileList(fileData) {
|
|
9682
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-param */
|
|
9683
9742
|
this.createParentUL();
|
|
9684
9743
|
if (this.template !== '' && !isNullOrUndefined(this.template)) {
|
|
9685
9744
|
if (this.isFormUpload()) {
|
|
@@ -9829,7 +9888,7 @@ let Uploader = class Uploader extends Component {
|
|
|
9829
9888
|
if (!isNullOrUndefined(li) && !li.classList.contains(UPLOAD_SUCCESS)) {
|
|
9830
9889
|
filterFiles.push(files[i]);
|
|
9831
9890
|
}
|
|
9832
|
-
else if (!this.showFileList && files[i].status !==
|
|
9891
|
+
else if (!this.showFileList && files[i].status !== 'File uploaded successfully') {
|
|
9833
9892
|
filterFiles.push(files[i]);
|
|
9834
9893
|
}
|
|
9835
9894
|
}
|
|
@@ -10149,7 +10208,8 @@ let Uploader = class Uploader extends Component {
|
|
|
10149
10208
|
for (let selectFileIndex = 0; selectFileIndex < selectedFiles.length; selectFileIndex++) {
|
|
10150
10209
|
const selectedFileData = selectedFiles[selectFileIndex];
|
|
10151
10210
|
for (let fileDataIndex = 0; fileDataIndex < this.filesData.length; fileDataIndex++) {
|
|
10152
|
-
if (this.filesData[fileDataIndex].name === selectedFileData.name &&
|
|
10211
|
+
if (this.filesData[fileDataIndex].name === selectedFileData.name &&
|
|
10212
|
+
this.filesData[fileDataIndex].status === selectedFileData.status) {
|
|
10153
10213
|
matchFiles[matchFilesIndex] = this.filesData[fileDataIndex];
|
|
10154
10214
|
++matchFilesIndex;
|
|
10155
10215
|
}
|
|
@@ -10259,9 +10319,9 @@ let Uploader = class Uploader extends Component {
|
|
|
10259
10319
|
}
|
|
10260
10320
|
}
|
|
10261
10321
|
checkHTMLAttributes(isDynamic) {
|
|
10262
|
-
const attributes
|
|
10322
|
+
const attributes = isDynamic ? isNullOrUndefined(this.htmlAttributes) ? [] : Object.keys(this.htmlAttributes) :
|
|
10263
10323
|
['accept', 'multiple', 'disabled'];
|
|
10264
|
-
for (const prop of attributes
|
|
10324
|
+
for (const prop of attributes) {
|
|
10265
10325
|
if (!isNullOrUndefined(this.element.getAttribute(prop))) {
|
|
10266
10326
|
switch (prop) {
|
|
10267
10327
|
case 'accept':
|
|
@@ -10477,13 +10537,17 @@ let Uploader = class Uploader extends Component {
|
|
|
10477
10537
|
this.updateStatus(metaData.file, this.localizedTexts('fileUploadCancel'), '5');
|
|
10478
10538
|
this.updateProgressBarClasses(liElement, UPLOAD_FAILED);
|
|
10479
10539
|
this.removeProgressbar(liElement, 'failure');
|
|
10480
|
-
(deleteIcon
|
|
10481
|
-
|
|
10482
|
-
|
|
10540
|
+
if (deleteIcon) {
|
|
10541
|
+
deleteIcon.classList.remove(ABORT_ICON);
|
|
10542
|
+
deleteIcon.classList.add(REMOVE_ICON);
|
|
10543
|
+
deleteIcon.setAttribute('title', this.localizedTexts('remove'));
|
|
10544
|
+
}
|
|
10483
10545
|
const pauseIcon = liElement.querySelector('.' + PAUSE_UPLOAD);
|
|
10484
|
-
(pauseIcon
|
|
10485
|
-
|
|
10486
|
-
|
|
10546
|
+
if (pauseIcon) {
|
|
10547
|
+
pauseIcon.classList.add(RETRY_ICON);
|
|
10548
|
+
pauseIcon.classList.remove(PAUSE_UPLOAD);
|
|
10549
|
+
pauseIcon.setAttribute('title', this.localizedTexts('retry'));
|
|
10550
|
+
}
|
|
10487
10551
|
if (!isNullOrUndefined(liElement) && !isNullOrUndefined(deleteIcon)
|
|
10488
10552
|
&& !isNullOrUndefined(liElement.querySelector('.e-spinner-pane'))) {
|
|
10489
10553
|
hideSpinner(spinnerTarget);
|
|
@@ -10764,13 +10828,12 @@ let Uploader = class Uploader extends Component {
|
|
|
10764
10828
|
}, false);
|
|
10765
10829
|
}
|
|
10766
10830
|
}
|
|
10767
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns-description */
|
|
10768
10831
|
/**
|
|
10769
10832
|
* It is used to convert bytes value into kilobytes or megabytes depending on the size based
|
|
10770
10833
|
* on [binary prefix](https://en.wikipedia.org/wiki/Binary_prefix).
|
|
10771
10834
|
*
|
|
10772
10835
|
* @param { number } bytes - Specifies the file size in bytes.
|
|
10773
|
-
* @returns {string}
|
|
10836
|
+
* @returns {string} - Returns the file size.
|
|
10774
10837
|
*/
|
|
10775
10838
|
bytesToSize(bytes) {
|
|
10776
10839
|
let i = -1;
|
|
@@ -10812,7 +10875,6 @@ let Uploader = class Uploader extends Component {
|
|
|
10812
10875
|
}
|
|
10813
10876
|
return sortedFilesData;
|
|
10814
10877
|
}
|
|
10815
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns-description */
|
|
10816
10878
|
/**
|
|
10817
10879
|
* Removes the component from the DOM and detaches all its related event handlers. Also it removes the attributes and classes.
|
|
10818
10880
|
*
|
|
@@ -10833,8 +10895,8 @@ let Uploader = class Uploader extends Component {
|
|
|
10833
10895
|
}
|
|
10834
10896
|
this.element.removeAttribute('accept');
|
|
10835
10897
|
this.setInitialAttributes();
|
|
10836
|
-
const attributes
|
|
10837
|
-
for (const key of attributes
|
|
10898
|
+
const attributes = ['aria-label', 'directory', 'webkitdirectory', 'tabindex'];
|
|
10899
|
+
for (const key of attributes) {
|
|
10838
10900
|
this.element.removeAttribute(key);
|
|
10839
10901
|
}
|
|
10840
10902
|
if (!isNullOrUndefined(this.uploadWrapper)) {
|
|
@@ -10939,20 +11001,6 @@ let Uploader = class Uploader extends Component {
|
|
|
10939
11001
|
this.fileStreams[fileCount] = file;
|
|
10940
11002
|
return fileCount;
|
|
10941
11003
|
}
|
|
10942
|
-
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
10943
|
-
/* istanbul ignore next */
|
|
10944
|
-
getFileInfo(index, ele) {
|
|
10945
|
-
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
10946
|
-
const files = this.filesData;
|
|
10947
|
-
if (!files || files.length === 0) {
|
|
10948
|
-
return null;
|
|
10949
|
-
}
|
|
10950
|
-
const file = files[index];
|
|
10951
|
-
if (!file) {
|
|
10952
|
-
return null;
|
|
10953
|
-
}
|
|
10954
|
-
return this.filesData[index];
|
|
10955
|
-
}
|
|
10956
11004
|
uploadFiles(files, custom) {
|
|
10957
11005
|
let selectedFiles = [];
|
|
10958
11006
|
if (this.asyncSettings.saveUrl === '' || isNullOrUndefined(this.asyncSettings.saveUrl)) {
|
|
@@ -11431,20 +11479,14 @@ __decorate$4([
|
|
|
11431
11479
|
Uploader = __decorate$4([
|
|
11432
11480
|
NotifyPropertyChanges
|
|
11433
11481
|
], Uploader);
|
|
11434
|
-
|
|
11435
11482
|
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
11436
11483
|
|
|
11437
|
-
/**
|
|
11438
|
-
* Uploader modules
|
|
11439
|
-
*/
|
|
11440
|
-
|
|
11441
11484
|
var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
11442
11485
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
11443
11486
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
11444
11487
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11445
11488
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
11446
11489
|
};
|
|
11447
|
-
/* eslint-disable prefer-spread */
|
|
11448
11490
|
const APPLY = 'e-apply';
|
|
11449
11491
|
const CANCEL = 'e-cancel';
|
|
11450
11492
|
const CURRENT = 'e-current';
|
|
@@ -12479,7 +12521,6 @@ let ColorPicker = class ColorPicker extends Component {
|
|
|
12479
12521
|
if (this.element.parentElement && this.element.parentElement.parentElement && this.element.parentElement.parentElement.classList.contains('e-ie-ddb-popup')) {
|
|
12480
12522
|
this.refreshImageEditorPopupPos();
|
|
12481
12523
|
}
|
|
12482
|
-
|
|
12483
12524
|
this.wireEvents();
|
|
12484
12525
|
this.trigger('onModeSwitch', { element: this.container, mode: 'Palette' });
|
|
12485
12526
|
}
|
|
@@ -12619,7 +12660,6 @@ let ColorPicker = class ColorPicker extends Component {
|
|
|
12619
12660
|
if (this.element.parentElement && this.element.parentElement.parentElement && this.element.parentElement.parentElement.classList.contains('e-ie-ddb-popup')) {
|
|
12620
12661
|
this.refreshImageEditorPopupPos();
|
|
12621
12662
|
}
|
|
12622
|
-
|
|
12623
12663
|
this.wireEvents();
|
|
12624
12664
|
this.trigger('onModeSwitch', { element: this.container, mode: 'Picker' });
|
|
12625
12665
|
}
|
|
@@ -13377,10 +13417,6 @@ ColorPicker = __decorate$5([
|
|
|
13377
13417
|
NotifyPropertyChanges
|
|
13378
13418
|
], ColorPicker);
|
|
13379
13419
|
|
|
13380
|
-
/**
|
|
13381
|
-
* ColorPicker modules
|
|
13382
|
-
*/
|
|
13383
|
-
|
|
13384
13420
|
var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
13385
13421
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
13386
13422
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -13410,11 +13446,9 @@ let TextBox = class TextBox extends Component {
|
|
|
13410
13446
|
constructor(options, element) {
|
|
13411
13447
|
super(options, element);
|
|
13412
13448
|
this.previousValue = null;
|
|
13413
|
-
this.isAngular = false;
|
|
13414
13449
|
this.isHiddenInput = false;
|
|
13415
13450
|
this.isForm = false;
|
|
13416
13451
|
this.inputPreviousValue = null;
|
|
13417
|
-
this.isVue = false;
|
|
13418
13452
|
this.textboxOptions = options;
|
|
13419
13453
|
}
|
|
13420
13454
|
/**
|
|
@@ -13468,7 +13502,12 @@ let TextBox = class TextBox extends Component {
|
|
|
13468
13502
|
this.updateHTMLAttributesToElement();
|
|
13469
13503
|
this.updateHTMLAttributesToWrapper();
|
|
13470
13504
|
this.checkAttributes(true);
|
|
13471
|
-
this.multiline && !isNullOrUndefined(this.textarea)
|
|
13505
|
+
if (this.multiline && !isNullOrUndefined(this.textarea)) {
|
|
13506
|
+
Input.validateInputType(this.textboxWrapper.container, this.textarea);
|
|
13507
|
+
}
|
|
13508
|
+
else {
|
|
13509
|
+
Input.validateInputType(this.textboxWrapper.container, this.element);
|
|
13510
|
+
}
|
|
13472
13511
|
}
|
|
13473
13512
|
break;
|
|
13474
13513
|
case 'readonly':
|
|
@@ -13559,7 +13598,7 @@ let TextBox = class TextBox extends Component {
|
|
|
13559
13598
|
if (this.element.tagName !== 'TEXTAREA') {
|
|
13560
13599
|
this.element.setAttribute('type', this.type);
|
|
13561
13600
|
}
|
|
13562
|
-
if (this.type === 'text') {
|
|
13601
|
+
if (this.type === 'text' || (this.element.tagName === 'INPUT' && this.multiline && this.isReact)) {
|
|
13563
13602
|
this.element.setAttribute('role', 'textbox');
|
|
13564
13603
|
}
|
|
13565
13604
|
this.globalize = new Internationalization(this.locale);
|
|
@@ -13696,13 +13735,17 @@ let TextBox = class TextBox extends Component {
|
|
|
13696
13735
|
if (!isNullOrUndefined(closest(this.element, 'fieldset')) && closest(this.element, 'fieldset').disabled) {
|
|
13697
13736
|
this.enabled = false;
|
|
13698
13737
|
}
|
|
13738
|
+
if (!this.element.hasAttribute('aria-labelledby') && !this.element.hasAttribute('placeholder')) {
|
|
13739
|
+
this.element.setAttribute('aria-label', 'textbox');
|
|
13740
|
+
}
|
|
13699
13741
|
this.renderComplete();
|
|
13700
13742
|
}
|
|
13701
13743
|
updateHTMLAttributesToWrapper() {
|
|
13702
13744
|
Input.updateHTMLAttributesToWrapper(this.htmlAttributes, this.textboxWrapper.container);
|
|
13703
13745
|
}
|
|
13704
13746
|
updateHTMLAttributesToElement() {
|
|
13705
|
-
Input.updateHTMLAttributesToElement(this.htmlAttributes, this.respectiveElement ? this.respectiveElement :
|
|
13747
|
+
Input.updateHTMLAttributesToElement(this.htmlAttributes, this.respectiveElement ? this.respectiveElement :
|
|
13748
|
+
(this.multiline && !isNullOrUndefined(this.textarea) ? this.textarea : this.element));
|
|
13706
13749
|
}
|
|
13707
13750
|
setInitialValue() {
|
|
13708
13751
|
if (!this.isAngular) {
|
|
@@ -13786,13 +13829,12 @@ let TextBox = class TextBox extends Component {
|
|
|
13786
13829
|
this.trigger('blur', eventArgs);
|
|
13787
13830
|
}
|
|
13788
13831
|
keydownHandler(args) {
|
|
13789
|
-
if ((args.keyCode === 13 || args.keyCode === 9) && !((this.previousValue === null || this.previousValue ===
|
|
13832
|
+
if ((args.keyCode === 13 || args.keyCode === 9) && !((this.previousValue === null || this.previousValue === '') && (this.value === null || this.value === '') && this.respectiveElement.value === '')) {
|
|
13790
13833
|
this.setProperties({ value: this.respectiveElement.value }, true);
|
|
13791
13834
|
}
|
|
13792
13835
|
}
|
|
13793
13836
|
inputHandler(args) {
|
|
13794
|
-
|
|
13795
|
-
const textboxObj = this;
|
|
13837
|
+
const textboxObj = this;
|
|
13796
13838
|
const eventArgs = {
|
|
13797
13839
|
event: args,
|
|
13798
13840
|
value: this.respectiveElement.value,
|
|
@@ -13813,7 +13855,7 @@ let TextBox = class TextBox extends Component {
|
|
|
13813
13855
|
}
|
|
13814
13856
|
changeHandler(args) {
|
|
13815
13857
|
this.setProperties({ value: this.respectiveElement.value }, true);
|
|
13816
|
-
if (this.previousValue
|
|
13858
|
+
if (this.previousValue !== this.value) {
|
|
13817
13859
|
this.raiseChangeEvent(args, true);
|
|
13818
13860
|
}
|
|
13819
13861
|
args.stopPropagation();
|
|
@@ -13928,24 +13970,23 @@ let TextBox = class TextBox extends Component {
|
|
|
13928
13970
|
addIcon(position, icons) {
|
|
13929
13971
|
Input.addIcon(position, icons, this.textboxWrapper.container, this.respectiveElement, this.createElement);
|
|
13930
13972
|
}
|
|
13931
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns */
|
|
13932
13973
|
/**
|
|
13933
13974
|
* Gets the properties to be maintained in the persisted state.
|
|
13934
13975
|
*
|
|
13976
|
+
* @returns {string} Returns the persisted data.
|
|
13935
13977
|
*/
|
|
13936
13978
|
getPersistData() {
|
|
13937
13979
|
const keyEntity = ['value'];
|
|
13938
13980
|
return this.addOnPersist(keyEntity);
|
|
13939
13981
|
}
|
|
13940
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns */
|
|
13941
13982
|
/**
|
|
13942
13983
|
* Adding the multiple attributes as key-value pair to the TextBox element.
|
|
13943
13984
|
*
|
|
13944
13985
|
* @param {string} attributes - Specifies the attributes to be add to TextBox element.
|
|
13945
13986
|
* @returns {void}
|
|
13946
13987
|
*/
|
|
13947
|
-
addAttributes(attributes
|
|
13948
|
-
for (const key of Object.keys(attributes
|
|
13988
|
+
addAttributes(attributes) {
|
|
13989
|
+
for (const key of Object.keys(attributes)) {
|
|
13949
13990
|
if (key === 'disabled') {
|
|
13950
13991
|
this.setProperties({ enabled: false }, true);
|
|
13951
13992
|
Input.setEnabled(this.enabled, this.respectiveElement, this.floatLabelType, this.textboxWrapper.container);
|
|
@@ -13955,17 +13996,17 @@ let TextBox = class TextBox extends Component {
|
|
|
13955
13996
|
Input.setReadonly(this.readonly, this.respectiveElement);
|
|
13956
13997
|
}
|
|
13957
13998
|
else if (key === 'class') {
|
|
13958
|
-
this.respectiveElement.classList.add(attributes
|
|
13999
|
+
this.respectiveElement.classList.add(attributes[`${key}`]);
|
|
13959
14000
|
}
|
|
13960
14001
|
else if (key === 'placeholder') {
|
|
13961
|
-
this.setProperties({ placeholder: attributes
|
|
14002
|
+
this.setProperties({ placeholder: attributes[`${key}`] }, true);
|
|
13962
14003
|
Input.setPlaceholder(this.placeholder, this.respectiveElement);
|
|
13963
14004
|
}
|
|
13964
14005
|
else if (key === 'rows' && this.respectiveElement.tagName === 'TEXTAREA') {
|
|
13965
|
-
this.respectiveElement.setAttribute(key, attributes
|
|
14006
|
+
this.respectiveElement.setAttribute(key, attributes[`${key}`]);
|
|
13966
14007
|
}
|
|
13967
14008
|
else {
|
|
13968
|
-
this.respectiveElement.setAttribute(key, attributes
|
|
14009
|
+
this.respectiveElement.setAttribute(key, attributes[`${key}`]);
|
|
13969
14010
|
}
|
|
13970
14011
|
}
|
|
13971
14012
|
}
|
|
@@ -13975,8 +14016,8 @@ let TextBox = class TextBox extends Component {
|
|
|
13975
14016
|
* @param { string[] } attributes - Specifies the attributes name to be removed from TextBox element.
|
|
13976
14017
|
* @returns {void}
|
|
13977
14018
|
*/
|
|
13978
|
-
removeAttributes(attributes
|
|
13979
|
-
for (const key of attributes
|
|
14019
|
+
removeAttributes(attributes) {
|
|
14020
|
+
for (const key of attributes) {
|
|
13980
14021
|
if (key === 'disabled') {
|
|
13981
14022
|
this.setProperties({ enabled: true }, true);
|
|
13982
14023
|
Input.setEnabled(this.enabled, this.respectiveElement, this.floatLabelType, this.textboxWrapper.container);
|
|
@@ -14086,10 +14127,6 @@ TextBox = __decorate$6([
|
|
|
14086
14127
|
NotifyPropertyChanges
|
|
14087
14128
|
], TextBox);
|
|
14088
14129
|
|
|
14089
|
-
/**
|
|
14090
|
-
* Uploader modules
|
|
14091
|
-
*/
|
|
14092
|
-
|
|
14093
14130
|
var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
14094
14131
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
14095
14132
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -14108,8 +14145,6 @@ let TextArea = class TextArea extends Component {
|
|
|
14108
14145
|
this.previousValue = null;
|
|
14109
14146
|
this.isForm = false;
|
|
14110
14147
|
this.inputPreviousValue = null;
|
|
14111
|
-
this.isAngular = false;
|
|
14112
|
-
this.isVue = false;
|
|
14113
14148
|
this.textareaOptions = options;
|
|
14114
14149
|
}
|
|
14115
14150
|
/**
|
|
@@ -14211,14 +14246,14 @@ let TextArea = class TextArea extends Component {
|
|
|
14211
14246
|
this.setProperties({ placeholder: this.l10n.getConstant('placeholder') }, true);
|
|
14212
14247
|
Input.setPlaceholder(this.placeholder, this.element);
|
|
14213
14248
|
break;
|
|
14214
|
-
case '
|
|
14215
|
-
if (this.
|
|
14216
|
-
this.element.setAttribute('rows', this.
|
|
14249
|
+
case 'rows':
|
|
14250
|
+
if (this.rows) {
|
|
14251
|
+
this.element.setAttribute('rows', this.rows.toString());
|
|
14217
14252
|
}
|
|
14218
14253
|
break;
|
|
14219
|
-
case '
|
|
14220
|
-
if (this.
|
|
14221
|
-
this.element.setAttribute('cols', this.
|
|
14254
|
+
case 'cols':
|
|
14255
|
+
if (this.cols) {
|
|
14256
|
+
this.element.setAttribute('cols', this.cols.toString());
|
|
14222
14257
|
if (this.width == null) {
|
|
14223
14258
|
this.textareaWrapper.container.classList.add(AUTO_WIDTH);
|
|
14224
14259
|
}
|
|
@@ -14295,11 +14330,11 @@ let TextArea = class TextArea extends Component {
|
|
|
14295
14330
|
if (!this.element.hasAttribute('name')) {
|
|
14296
14331
|
this.element.setAttribute('name', this.element.getAttribute('id'));
|
|
14297
14332
|
}
|
|
14298
|
-
if (this.
|
|
14299
|
-
this.element.setAttribute('rows', this.
|
|
14333
|
+
if (this.rows) {
|
|
14334
|
+
this.element.setAttribute('rows', this.rows.toString());
|
|
14300
14335
|
}
|
|
14301
|
-
if (this.
|
|
14302
|
-
this.element.setAttribute('cols', this.
|
|
14336
|
+
if (this.cols) {
|
|
14337
|
+
this.element.setAttribute('cols', this.cols.toString());
|
|
14303
14338
|
}
|
|
14304
14339
|
if (this.maxLength) {
|
|
14305
14340
|
this.element.setAttribute('maxlength', this.maxLength.toString());
|
|
@@ -14355,10 +14390,10 @@ let TextArea = class TextArea extends Component {
|
|
|
14355
14390
|
getModuleName() {
|
|
14356
14391
|
return 'textarea';
|
|
14357
14392
|
}
|
|
14358
|
-
/* eslint-disable valid-jsdoc, jsdoc/require-returns */
|
|
14359
14393
|
/**
|
|
14360
14394
|
* Gets the properties to be maintained in the persisted state.
|
|
14361
14395
|
*
|
|
14396
|
+
* @returns {string} - Returns the string value.
|
|
14362
14397
|
*/
|
|
14363
14398
|
getPersistData() {
|
|
14364
14399
|
const keyEntity = ['value'];
|
|
@@ -14439,12 +14474,12 @@ let TextArea = class TextArea extends Component {
|
|
|
14439
14474
|
detach(this.textareaWrapper.container);
|
|
14440
14475
|
}
|
|
14441
14476
|
this.textareaWrapper = null;
|
|
14442
|
-
this.formElement = null;
|
|
14443
14477
|
Input.destroy({
|
|
14444
14478
|
element: this.element,
|
|
14445
14479
|
floatLabelType: this.floatLabelType,
|
|
14446
14480
|
properties: this.properties
|
|
14447
14481
|
}, this.clearButton);
|
|
14482
|
+
this.formElement = null;
|
|
14448
14483
|
super.destroy();
|
|
14449
14484
|
}
|
|
14450
14485
|
focusHandler(args) {
|
|
@@ -14473,8 +14508,7 @@ let TextArea = class TextArea extends Component {
|
|
|
14473
14508
|
}
|
|
14474
14509
|
}
|
|
14475
14510
|
inputHandler(args) {
|
|
14476
|
-
|
|
14477
|
-
const textareaObj = this;
|
|
14511
|
+
const textareaObj = this;
|
|
14478
14512
|
const eventArgs = {
|
|
14479
14513
|
event: args,
|
|
14480
14514
|
value: this.element.value,
|
|
@@ -14551,15 +14585,14 @@ let TextArea = class TextArea extends Component {
|
|
|
14551
14585
|
element.dispatchEvent(keyupEvent);
|
|
14552
14586
|
}
|
|
14553
14587
|
}
|
|
14554
|
-
/* eslint-enable valid-jsdoc, jsdoc/require-returns */
|
|
14555
14588
|
/**
|
|
14556
14589
|
* Adding the multiple attributes as key-value pair to the TextArea element.
|
|
14557
14590
|
*
|
|
14558
14591
|
* @param {string} attributes - Specifies the attributes to be add to TextArea element.
|
|
14559
14592
|
* @returns {void}
|
|
14560
14593
|
*/
|
|
14561
|
-
addAttributes(attributes
|
|
14562
|
-
for (const key of Object.keys(attributes
|
|
14594
|
+
addAttributes(attributes) {
|
|
14595
|
+
for (const key of Object.keys(attributes)) {
|
|
14563
14596
|
if (key === 'disabled') {
|
|
14564
14597
|
this.setProperties({ enabled: false }, true);
|
|
14565
14598
|
Input.setEnabled(this.enabled, this.element, this.floatLabelType, this.textareaWrapper.container);
|
|
@@ -14569,14 +14602,14 @@ let TextArea = class TextArea extends Component {
|
|
|
14569
14602
|
Input.setReadonly(this.readonly, this.element);
|
|
14570
14603
|
}
|
|
14571
14604
|
else if (key === 'class') {
|
|
14572
|
-
this.element.classList.add(attributes
|
|
14605
|
+
this.element.classList.add(attributes[`${key}`]);
|
|
14573
14606
|
}
|
|
14574
14607
|
else if (key === 'placeholder') {
|
|
14575
|
-
this.setProperties({ placeholder: attributes
|
|
14608
|
+
this.setProperties({ placeholder: attributes[`${key}`] }, true);
|
|
14576
14609
|
Input.setPlaceholder(this.placeholder, this.element);
|
|
14577
14610
|
}
|
|
14578
14611
|
else {
|
|
14579
|
-
this.element.setAttribute(key, attributes
|
|
14612
|
+
this.element.setAttribute(key, attributes[`${key}`]);
|
|
14580
14613
|
}
|
|
14581
14614
|
}
|
|
14582
14615
|
}
|
|
@@ -14586,8 +14619,8 @@ let TextArea = class TextArea extends Component {
|
|
|
14586
14619
|
* @param { string[] } attributes - Specifies the attributes name to be removed from TextArea element.
|
|
14587
14620
|
* @returns {void}
|
|
14588
14621
|
*/
|
|
14589
|
-
removeAttributes(attributes
|
|
14590
|
-
for (const key of attributes
|
|
14622
|
+
removeAttributes(attributes) {
|
|
14623
|
+
for (const key of attributes) {
|
|
14591
14624
|
if (key === 'disabled') {
|
|
14592
14625
|
this.setProperties({ enabled: true }, true);
|
|
14593
14626
|
Input.setEnabled(this.enabled, this.element, this.floatLabelType, this.textareaWrapper.container);
|
|
@@ -14641,7 +14674,7 @@ let TextArea = class TextArea extends Component {
|
|
|
14641
14674
|
* @returns {void}
|
|
14642
14675
|
*/
|
|
14643
14676
|
setWrapperWidth() {
|
|
14644
|
-
if (this.enabled && ((this.resizeMode !== 'None' && this.resizeMode !== 'Vertical') || (this.
|
|
14677
|
+
if (this.enabled && ((this.resizeMode !== 'None' && this.resizeMode !== 'Vertical') || (this.cols || this.element.getAttribute('cols')))) {
|
|
14645
14678
|
if (this.resizeMode !== 'None' && this.resizeMode !== 'Vertical') {
|
|
14646
14679
|
if (this.textareaWrapper.container.style.width) {
|
|
14647
14680
|
this.setElementWidth(this.textareaWrapper.container.style.width);
|
|
@@ -14730,17 +14763,17 @@ __decorate$7([
|
|
|
14730
14763
|
Property(null)
|
|
14731
14764
|
], TextArea.prototype, "width", void 0);
|
|
14732
14765
|
__decorate$7([
|
|
14733
|
-
Property('
|
|
14766
|
+
Property('Both')
|
|
14734
14767
|
], TextArea.prototype, "resizeMode", void 0);
|
|
14735
14768
|
__decorate$7([
|
|
14736
14769
|
Property(null)
|
|
14737
14770
|
], TextArea.prototype, "maxLength", void 0);
|
|
14738
14771
|
__decorate$7([
|
|
14739
14772
|
Property(null)
|
|
14740
|
-
], TextArea.prototype, "
|
|
14773
|
+
], TextArea.prototype, "cols", void 0);
|
|
14741
14774
|
__decorate$7([
|
|
14742
14775
|
Property(null)
|
|
14743
|
-
], TextArea.prototype, "
|
|
14776
|
+
], TextArea.prototype, "rows", void 0);
|
|
14744
14777
|
__decorate$7([
|
|
14745
14778
|
Event()
|
|
14746
14779
|
], TextArea.prototype, "created", void 0);
|
|
@@ -14763,10 +14796,6 @@ TextArea = __decorate$7([
|
|
|
14763
14796
|
NotifyPropertyChanges
|
|
14764
14797
|
], TextArea);
|
|
14765
14798
|
|
|
14766
|
-
/**
|
|
14767
|
-
* Uploader modules
|
|
14768
|
-
*/
|
|
14769
|
-
|
|
14770
14799
|
class SignatureBase extends Component {
|
|
14771
14800
|
constructor() {
|
|
14772
14801
|
super(...arguments);
|
|
@@ -15050,7 +15079,6 @@ class SignatureBase extends Component {
|
|
|
15050
15079
|
if (isNullOrUndefined(this.pointColl)) {
|
|
15051
15080
|
return;
|
|
15052
15081
|
}
|
|
15053
|
-
|
|
15054
15082
|
const canDrawCurve = this.pointColl.length > 2;
|
|
15055
15083
|
const point = this.pointColl[0];
|
|
15056
15084
|
if (!canDrawCurve && point) {
|
|
@@ -15893,10 +15921,6 @@ Signature = __decorate$8([
|
|
|
15893
15921
|
NotifyPropertyChanges
|
|
15894
15922
|
], Signature);
|
|
15895
15923
|
|
|
15896
|
-
/**
|
|
15897
|
-
* Signature modules
|
|
15898
|
-
*/
|
|
15899
|
-
|
|
15900
15924
|
var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
15901
15925
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
15902
15926
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -16064,10 +16088,10 @@ let Rating = class Rating extends Component {
|
|
|
16064
16088
|
}
|
|
16065
16089
|
touchMoveHandler(e) {
|
|
16066
16090
|
if (!this.isTouchSelected) {
|
|
16067
|
-
this.wrapper.classList.add(
|
|
16091
|
+
this.wrapper.classList.add('e-rating-touch');
|
|
16068
16092
|
this.isTouchSelected = true;
|
|
16069
16093
|
}
|
|
16070
|
-
this.wrapper.classList.add(
|
|
16094
|
+
this.wrapper.classList.add('e-touch-select');
|
|
16071
16095
|
const rect = this.ratingItemList.getBoundingClientRect();
|
|
16072
16096
|
const x = e.touches[0].clientX - rect.x;
|
|
16073
16097
|
let currValue = (x / rect.width) * this.itemsCount;
|
|
@@ -16098,7 +16122,7 @@ let Rating = class Rating extends Component {
|
|
|
16098
16122
|
}
|
|
16099
16123
|
touchEndHandler() {
|
|
16100
16124
|
this.closeRatingTooltip();
|
|
16101
|
-
this.wrapper.classList.remove(
|
|
16125
|
+
this.wrapper.classList.remove('e-touch-select');
|
|
16102
16126
|
}
|
|
16103
16127
|
updateTemplateFunction() {
|
|
16104
16128
|
this.emptyTemplateFunction = this.emptyTemplate ? this.getTemplateString(this.emptyTemplate) : null;
|
|
@@ -16253,14 +16277,14 @@ let Rating = class Rating extends Component {
|
|
|
16253
16277
|
this.tooltipObj.setProperties({ content: content }, isChange);
|
|
16254
16278
|
if (this.isAngular) {
|
|
16255
16279
|
setTimeout(() => {
|
|
16256
|
-
|
|
16280
|
+
const ratingSpan = this.ratingItemList.querySelectorAll('.' + ITEMCONTAINER + '.' + SELECTED);
|
|
16257
16281
|
this.tooltipObj.refresh(ratingSpan[ratingSpan.length - 1]);
|
|
16258
16282
|
});
|
|
16259
16283
|
}
|
|
16260
16284
|
}
|
|
16261
16285
|
else {
|
|
16262
16286
|
content = this.currentValue.toString();
|
|
16263
|
-
this.tooltipObj.setProperties({ content: initializeCSPTemplate(
|
|
16287
|
+
this.tooltipObj.setProperties({ content: initializeCSPTemplate(() => { return content; }) }, isChange);
|
|
16264
16288
|
}
|
|
16265
16289
|
this.renderReactTemplates();
|
|
16266
16290
|
}
|
|
@@ -16380,7 +16404,7 @@ let Rating = class Rating extends Component {
|
|
|
16380
16404
|
}
|
|
16381
16405
|
mouseMoveHandler(index, e) {
|
|
16382
16406
|
if (this.isTouchSelected) {
|
|
16383
|
-
this.wrapper.classList.remove(
|
|
16407
|
+
this.wrapper.classList.remove('e-rating-touch');
|
|
16384
16408
|
this.isTouchSelected = false;
|
|
16385
16409
|
}
|
|
16386
16410
|
let currValue = this.calculateCurrentValue(index, e);
|
|
@@ -16717,17 +16741,635 @@ Rating = __decorate$9([
|
|
|
16717
16741
|
NotifyPropertyChanges
|
|
16718
16742
|
], Rating);
|
|
16719
16743
|
|
|
16744
|
+
var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
16745
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
16746
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
16747
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
16748
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
16749
|
+
};
|
|
16750
|
+
const INPUTFIELD = 'e-otp-input-field';
|
|
16751
|
+
const RTL$3 = 'e-rtl';
|
|
16720
16752
|
/**
|
|
16721
|
-
*
|
|
16753
|
+
* Specifies the type of input for the Otp (One-Time Password) input component.
|
|
16722
16754
|
*/
|
|
16723
|
-
|
|
16755
|
+
var OtpInputType;
|
|
16756
|
+
(function (OtpInputType) {
|
|
16757
|
+
/**
|
|
16758
|
+
* Specifies the type of input to be number for the Otp input.
|
|
16759
|
+
*/
|
|
16760
|
+
OtpInputType["Number"] = "number";
|
|
16761
|
+
/**
|
|
16762
|
+
* Specifies the type of input to be text for the Otp input.
|
|
16763
|
+
*/
|
|
16764
|
+
OtpInputType["Text"] = "text";
|
|
16765
|
+
/**
|
|
16766
|
+
* Specifies the type of input to be password for the Otp input.
|
|
16767
|
+
*/
|
|
16768
|
+
OtpInputType["Password"] = "password";
|
|
16769
|
+
})(OtpInputType || (OtpInputType = {}));
|
|
16724
16770
|
/**
|
|
16725
|
-
*
|
|
16771
|
+
* Specifies the style variant for the Otp (One-Time Password) input component.
|
|
16726
16772
|
*/
|
|
16727
|
-
|
|
16773
|
+
var OtpInputStyle;
|
|
16774
|
+
(function (OtpInputStyle) {
|
|
16775
|
+
/**
|
|
16776
|
+
* Specifies the style of the Otp input to be outlined.
|
|
16777
|
+
*/
|
|
16778
|
+
OtpInputStyle["Outlined"] = "outlined";
|
|
16779
|
+
/**
|
|
16780
|
+
* Specifies the style of the Otp input to be underlined.
|
|
16781
|
+
*/
|
|
16782
|
+
OtpInputStyle["Underlined"] = "underlined";
|
|
16783
|
+
/**
|
|
16784
|
+
* Specifies the style of the Otp input to be filled.
|
|
16785
|
+
*/
|
|
16786
|
+
OtpInputStyle["Filled"] = "filled";
|
|
16787
|
+
})(OtpInputStyle || (OtpInputStyle = {}));
|
|
16728
16788
|
/**
|
|
16729
|
-
*
|
|
16789
|
+
* Represents the Otp component that allows the user to enter the otp values.
|
|
16790
|
+
* ```html
|
|
16791
|
+
* <div id='OTPInput'></div>
|
|
16792
|
+
* ```
|
|
16793
|
+
* ```typescript
|
|
16794
|
+
* <script>
|
|
16795
|
+
* var OtpinputObj = new OtpInput();
|
|
16796
|
+
* OtpinputObj.appendTo('#OTPInput');
|
|
16797
|
+
* </script>
|
|
16798
|
+
* ```
|
|
16730
16799
|
*/
|
|
16800
|
+
let OtpInput = class OtpInput extends Component {
|
|
16801
|
+
constructor(options, element) {
|
|
16802
|
+
super(options, element);
|
|
16803
|
+
/* Private variables */
|
|
16804
|
+
this.inputs = [];
|
|
16805
|
+
this.previousValue = '';
|
|
16806
|
+
this.separatorElements = [];
|
|
16807
|
+
this.shouldFireFocus = true;
|
|
16808
|
+
this.shouldFireBlur = true;
|
|
16809
|
+
this.isFocusInCalled = false;
|
|
16810
|
+
this.isFocusOutCalled = false;
|
|
16811
|
+
}
|
|
16812
|
+
preRender() {
|
|
16813
|
+
if (!this.element.id) {
|
|
16814
|
+
this.element.id = getUniqueID('e-' + this.getModuleName());
|
|
16815
|
+
}
|
|
16816
|
+
}
|
|
16817
|
+
render() {
|
|
16818
|
+
this.initialize();
|
|
16819
|
+
}
|
|
16820
|
+
initialize() {
|
|
16821
|
+
attributes(this.element, { 'role': 'group' });
|
|
16822
|
+
this.renderInputs();
|
|
16823
|
+
this.renderSeparator(1, this.inputs.length);
|
|
16824
|
+
this.addPlaceHolder();
|
|
16825
|
+
this.updateCssClass(this.cssClass);
|
|
16826
|
+
this.updateVariantClass();
|
|
16827
|
+
this.updateAriaLabel(this.ariaLabels);
|
|
16828
|
+
this.setElementAttributes(this.htmlAttributes, this.element);
|
|
16829
|
+
if (this.enableRtl) {
|
|
16830
|
+
this.element.classList.add(RTL$3);
|
|
16831
|
+
}
|
|
16832
|
+
this.previousValue = this.value.toString();
|
|
16833
|
+
}
|
|
16834
|
+
renderInputs() {
|
|
16835
|
+
this.hiddenInputEle = this.createElement('input', {
|
|
16836
|
+
id: 'otpInput_hidden',
|
|
16837
|
+
attrs: {
|
|
16838
|
+
name: this.element.id,
|
|
16839
|
+
type: 'hidden',
|
|
16840
|
+
value: this.type === 'number' ? this.value.toString().replace(/\D/g, '') : this.value.toString(),
|
|
16841
|
+
autoComplete: 'off'
|
|
16842
|
+
}
|
|
16843
|
+
});
|
|
16844
|
+
this.element.appendChild(this.hiddenInputEle);
|
|
16845
|
+
for (let i = 0; i < this.length; i++) {
|
|
16846
|
+
this.createOtpInput(i);
|
|
16847
|
+
}
|
|
16848
|
+
}
|
|
16849
|
+
createOtpInput(index) {
|
|
16850
|
+
const valueContainer = this.getDefaultValue();
|
|
16851
|
+
let inputValue = '';
|
|
16852
|
+
if (valueContainer) {
|
|
16853
|
+
if (this.type === 'number') {
|
|
16854
|
+
const valueAtIndex = valueContainer[parseInt(index.toString(), 10)];
|
|
16855
|
+
if (!isNaN(Number(valueAtIndex))) {
|
|
16856
|
+
inputValue = valueAtIndex;
|
|
16857
|
+
}
|
|
16858
|
+
}
|
|
16859
|
+
else {
|
|
16860
|
+
inputValue = valueContainer[parseInt(index.toString(), 10)] || '';
|
|
16861
|
+
}
|
|
16862
|
+
}
|
|
16863
|
+
const inputEle = this.createElement('input', {
|
|
16864
|
+
id: `${this.element.id}-${index + 1}`,
|
|
16865
|
+
className: INPUTFIELD + ' ' + 'e-input',
|
|
16866
|
+
attrs: {
|
|
16867
|
+
maxlength: '1',
|
|
16868
|
+
type: this.type,
|
|
16869
|
+
inputmode: (this.type === 'number' ? 'numeric' : 'text')
|
|
16870
|
+
}
|
|
16871
|
+
});
|
|
16872
|
+
if (this.disabled) {
|
|
16873
|
+
inputEle.setAttribute('disabled', 'disabled');
|
|
16874
|
+
}
|
|
16875
|
+
this.element.appendChild(inputEle);
|
|
16876
|
+
this.inputs.push(inputEle);
|
|
16877
|
+
if (inputValue) {
|
|
16878
|
+
inputEle.value = inputValue;
|
|
16879
|
+
}
|
|
16880
|
+
this.wireEvents(inputEle, index);
|
|
16881
|
+
}
|
|
16882
|
+
renderSeparator(index, length) {
|
|
16883
|
+
if (this.separator.length > 0) {
|
|
16884
|
+
for (let i = index; i < length; i++) {
|
|
16885
|
+
const separatorElement = this.createElement('span', {
|
|
16886
|
+
className: 'e-otp-separator'
|
|
16887
|
+
});
|
|
16888
|
+
separatorElement.textContent = this.separator;
|
|
16889
|
+
this.separatorElements.push(separatorElement);
|
|
16890
|
+
this.element.insertBefore(separatorElement, this.inputs[parseInt(i.toString(), 10)]);
|
|
16891
|
+
}
|
|
16892
|
+
}
|
|
16893
|
+
}
|
|
16894
|
+
updateSeparatorValue() {
|
|
16895
|
+
if (this.separator === '') {
|
|
16896
|
+
for (let i = 0; i < this.separatorElements.length; i++) {
|
|
16897
|
+
remove(this.separatorElements[parseInt(i.toString(), 10)]);
|
|
16898
|
+
}
|
|
16899
|
+
this.separatorElements = [];
|
|
16900
|
+
return;
|
|
16901
|
+
}
|
|
16902
|
+
for (let i = 0; i < this.separatorElements.length; i++) {
|
|
16903
|
+
this.separatorElements[parseInt(i.toString(), 10)].textContent = this.separator;
|
|
16904
|
+
}
|
|
16905
|
+
}
|
|
16906
|
+
addPlaceHolder() {
|
|
16907
|
+
for (let i = 0; i < this.inputs.length; i++) {
|
|
16908
|
+
this.setElementAttributes({ 'placeholder': this.placeholder.length === 1 || this.placeholder.length === 0 ? this.placeholder : this.placeholder.charAt(i) }, this.inputs[parseInt(i.toString(), 10)]);
|
|
16909
|
+
}
|
|
16910
|
+
}
|
|
16911
|
+
updateInputType(inputType) {
|
|
16912
|
+
this.inputs.forEach((input) => {
|
|
16913
|
+
input.type = inputType;
|
|
16914
|
+
input.setAttribute('inputmode', (inputType === 'number' ? 'numeric' : 'text'));
|
|
16915
|
+
});
|
|
16916
|
+
}
|
|
16917
|
+
getDefaultValue() {
|
|
16918
|
+
const extractedValue = typeof this.value === 'number' ? this.value.toString() : this.value;
|
|
16919
|
+
// To remove the white space if present.
|
|
16920
|
+
const value = extractedValue.replace(/\s/g, '');
|
|
16921
|
+
if (value.length > 0) {
|
|
16922
|
+
return value.split('');
|
|
16923
|
+
}
|
|
16924
|
+
return undefined;
|
|
16925
|
+
}
|
|
16926
|
+
handleInputChange(index, event) {
|
|
16927
|
+
const currentInputElement = this.inputs[parseInt(index.toString(), 10)];
|
|
16928
|
+
if (currentInputElement && index < this.length - 1 && currentInputElement.value.length > 0) {
|
|
16929
|
+
const nextInputElement = this.inputs[parseInt(index.toString(), 10) + 1];
|
|
16930
|
+
this.shouldFireFocus = this.shouldFireBlur = false;
|
|
16931
|
+
nextInputElement.focus();
|
|
16932
|
+
if (nextInputElement && nextInputElement.value.length > 0) {
|
|
16933
|
+
nextInputElement.select();
|
|
16934
|
+
}
|
|
16935
|
+
}
|
|
16936
|
+
const target = event.target;
|
|
16937
|
+
if (target.value.length > 1) {
|
|
16938
|
+
target.value = target.value.slice(0, 1);
|
|
16939
|
+
}
|
|
16940
|
+
this.triggerInputEvent(event);
|
|
16941
|
+
this.triggerValuechanged(event, true);
|
|
16942
|
+
}
|
|
16943
|
+
handleKeyAction(index, event) {
|
|
16944
|
+
if (event.key.length > 1 && !((index === 0 && event.key === 'Backspace') ||
|
|
16945
|
+
(index === this.length - 1 && event.key === 'Delete'))) {
|
|
16946
|
+
this.shouldFireFocus = this.shouldFireBlur = false;
|
|
16947
|
+
}
|
|
16948
|
+
const currentInputElement = this.inputs[parseInt(index.toString(), 10)];
|
|
16949
|
+
const previousInputElement = this.inputs[parseInt(index.toString(), 10) - 1];
|
|
16950
|
+
const nextInputElement = this.inputs[parseInt(index.toString(), 10) + 1];
|
|
16951
|
+
if (event.key === 'Delete') {
|
|
16952
|
+
let value = '';
|
|
16953
|
+
if (currentInputElement.value.length > 0) {
|
|
16954
|
+
value = currentInputElement.value;
|
|
16955
|
+
currentInputElement.value = '';
|
|
16956
|
+
}
|
|
16957
|
+
else {
|
|
16958
|
+
if (index !== this.inputs.length - 1) {
|
|
16959
|
+
value = nextInputElement.value;
|
|
16960
|
+
nextInputElement.value = '';
|
|
16961
|
+
nextInputElement.focus();
|
|
16962
|
+
}
|
|
16963
|
+
}
|
|
16964
|
+
if (value.length > 0) {
|
|
16965
|
+
this.triggerInputEvent(event);
|
|
16966
|
+
}
|
|
16967
|
+
}
|
|
16968
|
+
else if (event.key === 'Backspace') {
|
|
16969
|
+
if (index !== 0 && currentInputElement.value.length === 0) {
|
|
16970
|
+
const previousValue = previousInputElement.value;
|
|
16971
|
+
previousInputElement.value = '';
|
|
16972
|
+
previousInputElement.focus();
|
|
16973
|
+
if (previousValue.length > 0) {
|
|
16974
|
+
this.triggerInputEvent(event);
|
|
16975
|
+
}
|
|
16976
|
+
}
|
|
16977
|
+
}
|
|
16978
|
+
else if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {
|
|
16979
|
+
if (event.key === 'ArrowLeft') {
|
|
16980
|
+
if (index > 0) {
|
|
16981
|
+
previousInputElement.focus();
|
|
16982
|
+
previousInputElement.select();
|
|
16983
|
+
}
|
|
16984
|
+
}
|
|
16985
|
+
else {
|
|
16986
|
+
if (index < this.inputs.length - 1) {
|
|
16987
|
+
nextInputElement.focus();
|
|
16988
|
+
nextInputElement.select();
|
|
16989
|
+
}
|
|
16990
|
+
}
|
|
16991
|
+
event.preventDefault();
|
|
16992
|
+
}
|
|
16993
|
+
else if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {
|
|
16994
|
+
event.preventDefault();
|
|
16995
|
+
}
|
|
16996
|
+
else {
|
|
16997
|
+
if (event.key !== 'Tab' && !event.shiftKey && !event.ctrlKey) {
|
|
16998
|
+
if (this.type === 'number' && (/\D/.test(event.key.toLocaleLowerCase()))) {
|
|
16999
|
+
event.preventDefault();
|
|
17000
|
+
}
|
|
17001
|
+
}
|
|
17002
|
+
}
|
|
17003
|
+
}
|
|
17004
|
+
handleSelection(index) {
|
|
17005
|
+
const currentInputElement = this.inputs[parseInt(index.toString(), 10)];
|
|
17006
|
+
if (currentInputElement.value) {
|
|
17007
|
+
currentInputElement.select();
|
|
17008
|
+
}
|
|
17009
|
+
}
|
|
17010
|
+
handleFocus(index, event) {
|
|
17011
|
+
addClass([this.inputs[parseInt(index.toString(), 10)]], 'e-otp-input-focus');
|
|
17012
|
+
if (this.shouldFireFocus) {
|
|
17013
|
+
const eventArgs = {
|
|
17014
|
+
element: this.element,
|
|
17015
|
+
event: event,
|
|
17016
|
+
isInteracted: this.isFocusInCalled ? false : true,
|
|
17017
|
+
value: this.value
|
|
17018
|
+
};
|
|
17019
|
+
this.trigger('focus', eventArgs);
|
|
17020
|
+
}
|
|
17021
|
+
this.shouldFireFocus = true;
|
|
17022
|
+
}
|
|
17023
|
+
handleBlur(index, event) {
|
|
17024
|
+
removeClass([this.inputs[parseInt(index.toString(), 10)]], 'e-otp-input-focus');
|
|
17025
|
+
if (this.shouldFireBlur) {
|
|
17026
|
+
const eventArgs = {
|
|
17027
|
+
element: this.element,
|
|
17028
|
+
event: event,
|
|
17029
|
+
isInteracted: this.isFocusOutCalled ? false : true,
|
|
17030
|
+
value: this.value
|
|
17031
|
+
};
|
|
17032
|
+
this.trigger('blur', eventArgs);
|
|
17033
|
+
}
|
|
17034
|
+
this.shouldFireBlur = true;
|
|
17035
|
+
}
|
|
17036
|
+
handlePaste(index, event) {
|
|
17037
|
+
const clipboardData = event.clipboardData;
|
|
17038
|
+
if (clipboardData) {
|
|
17039
|
+
const pastedText = clipboardData.getData('text');
|
|
17040
|
+
const pastedValues = pastedText.split('');
|
|
17041
|
+
let pastedValueIndex = 0;
|
|
17042
|
+
for (let i = index; i < this.inputs.length; i++) {
|
|
17043
|
+
if (pastedValues.length > 0 && pastedValues[parseInt(pastedValueIndex.toString(), 10)]) {
|
|
17044
|
+
this.inputs[parseInt(i.toString(), 10)].value = pastedValues[parseInt(pastedValueIndex.toString(), 10)];
|
|
17045
|
+
pastedValueIndex++;
|
|
17046
|
+
this.updateValueProperty();
|
|
17047
|
+
}
|
|
17048
|
+
}
|
|
17049
|
+
this.focusIn();
|
|
17050
|
+
this.triggerValuechanged(event, true);
|
|
17051
|
+
}
|
|
17052
|
+
}
|
|
17053
|
+
triggerInputEvent(event) {
|
|
17054
|
+
const previousValue = this.value.toString();
|
|
17055
|
+
this.updateValueProperty();
|
|
17056
|
+
const inputEventArgs = {
|
|
17057
|
+
element: this.element,
|
|
17058
|
+
event: event,
|
|
17059
|
+
previousValue: previousValue,
|
|
17060
|
+
value: this.value.toString()
|
|
17061
|
+
};
|
|
17062
|
+
this.trigger('input', inputEventArgs);
|
|
17063
|
+
}
|
|
17064
|
+
triggerValuechanged(event, isInteracted) {
|
|
17065
|
+
if (this.length === this.value.toString().length) {
|
|
17066
|
+
if (this.previousValue !== this.value) {
|
|
17067
|
+
const eventArgs = {
|
|
17068
|
+
element: this.element,
|
|
17069
|
+
event: event,
|
|
17070
|
+
isInteracted: isInteracted ? isInteracted : false,
|
|
17071
|
+
previousValue: this.previousValue,
|
|
17072
|
+
value: this.value
|
|
17073
|
+
};
|
|
17074
|
+
this.trigger('valueChanged', eventArgs);
|
|
17075
|
+
this.previousValue = this.value.toString();
|
|
17076
|
+
}
|
|
17077
|
+
}
|
|
17078
|
+
}
|
|
17079
|
+
wireEvents(inputEle, index) {
|
|
17080
|
+
inputEle.addEventListener('focus', this.handleFocus.bind(this, index));
|
|
17081
|
+
inputEle.addEventListener('blur', this.handleBlur.bind(this, index));
|
|
17082
|
+
inputEle.addEventListener('input', this.handleInputChange.bind(this, index));
|
|
17083
|
+
inputEle.addEventListener('keydown', this.handleKeyAction.bind(this, index));
|
|
17084
|
+
inputEle.addEventListener('click', this.handleSelection.bind(this, index));
|
|
17085
|
+
inputEle.addEventListener('paste', this.handlePaste.bind(this, index));
|
|
17086
|
+
}
|
|
17087
|
+
unWireEvents() {
|
|
17088
|
+
for (let i = 0; i < this.inputs.length; i++) {
|
|
17089
|
+
const currentInputElement = this.inputs[parseInt(i.toString(), 10)];
|
|
17090
|
+
currentInputElement.removeEventListener('focus', this.handleFocus.bind(this, i));
|
|
17091
|
+
currentInputElement.removeEventListener('blur', this.handleBlur.bind(this, i));
|
|
17092
|
+
currentInputElement.removeEventListener('input', this.handleInputChange.bind(this, i));
|
|
17093
|
+
currentInputElement.removeEventListener('keydown', this.handleKeyAction.bind(this, i));
|
|
17094
|
+
currentInputElement.removeEventListener('click', this.handleSelection.bind(this, i));
|
|
17095
|
+
currentInputElement.removeEventListener('paste', this.handlePaste.bind(this, i));
|
|
17096
|
+
}
|
|
17097
|
+
}
|
|
17098
|
+
updateValueProperty() {
|
|
17099
|
+
let value = '';
|
|
17100
|
+
this.inputs.forEach((input) => {
|
|
17101
|
+
value += input.value;
|
|
17102
|
+
});
|
|
17103
|
+
const prevOnChange = this.isProtectedOnChange;
|
|
17104
|
+
this.isProtectedOnChange = true;
|
|
17105
|
+
this.value = typeof this.value === 'number' ? parseInt(value, 10) : value;
|
|
17106
|
+
this.isProtectedOnChange = prevOnChange;
|
|
17107
|
+
this.hiddenInputEle.value = this.value.toString();
|
|
17108
|
+
}
|
|
17109
|
+
updateInputValue(previousValue) {
|
|
17110
|
+
const stringifiedValue = this.value.toString();
|
|
17111
|
+
for (let i = 0; i < this.inputs.length; i++) {
|
|
17112
|
+
const isValueChanged = previousValue.toString().charAt(i) !== stringifiedValue.charAt(i);
|
|
17113
|
+
if (isValueChanged) {
|
|
17114
|
+
this.inputs[parseInt(i.toString(), 10)].value = stringifiedValue.charAt(i);
|
|
17115
|
+
this.hiddenInputEle.value = stringifiedValue;
|
|
17116
|
+
}
|
|
17117
|
+
}
|
|
17118
|
+
this.focusIn();
|
|
17119
|
+
}
|
|
17120
|
+
updateCssClass(addCss, removeCss = '') {
|
|
17121
|
+
let cssClasses;
|
|
17122
|
+
if (removeCss) {
|
|
17123
|
+
cssClasses = removeCss.trim().split(' ');
|
|
17124
|
+
this.element.classList.remove(...cssClasses);
|
|
17125
|
+
}
|
|
17126
|
+
if (addCss) {
|
|
17127
|
+
cssClasses = addCss.trim().split(' ');
|
|
17128
|
+
this.element.classList.add(...cssClasses);
|
|
17129
|
+
}
|
|
17130
|
+
}
|
|
17131
|
+
updateVariantClass() {
|
|
17132
|
+
let variantClass = this.stylingMode.toLocaleLowerCase();
|
|
17133
|
+
variantClass = variantClass === 'outlined' ? 'outline' : variantClass;
|
|
17134
|
+
if (variantClass === 'underlined' || variantClass === 'filled' || variantClass === 'outline') {
|
|
17135
|
+
removeClass([this.element], ['e-underlined', 'e-filled', 'e-outline']);
|
|
17136
|
+
addClass([this.element], `e-${variantClass}`);
|
|
17137
|
+
}
|
|
17138
|
+
}
|
|
17139
|
+
updateAriaLabel(customAriaLabel) {
|
|
17140
|
+
this.inputs.forEach((input, index) => {
|
|
17141
|
+
const defaultLabel = `Enter Otp Character ${index + 1}`;
|
|
17142
|
+
const ariaLabel = customAriaLabel && customAriaLabel.length > 0
|
|
17143
|
+
? customAriaLabel[parseInt(index.toString(), 10)] || defaultLabel
|
|
17144
|
+
: defaultLabel;
|
|
17145
|
+
input.setAttribute('aria-label', ariaLabel);
|
|
17146
|
+
});
|
|
17147
|
+
}
|
|
17148
|
+
updateDisabledState() {
|
|
17149
|
+
this.inputs.forEach((input) => {
|
|
17150
|
+
if (this.disabled) {
|
|
17151
|
+
input.setAttribute('disabled', 'disabled');
|
|
17152
|
+
}
|
|
17153
|
+
else {
|
|
17154
|
+
input.removeAttribute('disabled');
|
|
17155
|
+
}
|
|
17156
|
+
});
|
|
17157
|
+
}
|
|
17158
|
+
setElementAttributes(htmlAttributes, element) {
|
|
17159
|
+
if (!isNullOrUndefined(htmlAttributes)) {
|
|
17160
|
+
for (const key in htmlAttributes) {
|
|
17161
|
+
if (key === 'class') {
|
|
17162
|
+
const elementClass = htmlAttributes['class'].replace(/\s+/g, ' ').trim();
|
|
17163
|
+
if (elementClass) {
|
|
17164
|
+
addClass([element], elementClass.split(' '));
|
|
17165
|
+
}
|
|
17166
|
+
}
|
|
17167
|
+
else if (key === 'name' && this.element.id === element.id) {
|
|
17168
|
+
this.hiddenInputEle.setAttribute(key, htmlAttributes[`${key}`]);
|
|
17169
|
+
}
|
|
17170
|
+
else {
|
|
17171
|
+
element.setAttribute(key, htmlAttributes[`${key}`]);
|
|
17172
|
+
}
|
|
17173
|
+
}
|
|
17174
|
+
}
|
|
17175
|
+
}
|
|
17176
|
+
handleLengthChange(currentValue, previousValue) {
|
|
17177
|
+
const isLengthAdded = (currentValue - previousValue) > 0;
|
|
17178
|
+
if (isLengthAdded) {
|
|
17179
|
+
for (let i = previousValue; i < currentValue; i++) {
|
|
17180
|
+
this.createOtpInput(i);
|
|
17181
|
+
}
|
|
17182
|
+
this.renderSeparator(previousValue, currentValue);
|
|
17183
|
+
this.addPlaceHolder();
|
|
17184
|
+
this.updateAriaLabel(this.ariaLabels);
|
|
17185
|
+
}
|
|
17186
|
+
else {
|
|
17187
|
+
if (currentValue >= 0 && this.inputs.length > 0) {
|
|
17188
|
+
for (let i = currentValue; i < this.inputs.length; i++) {
|
|
17189
|
+
remove(this.inputs[parseInt(i.toString(), 10)]);
|
|
17190
|
+
}
|
|
17191
|
+
this.inputs.splice(currentValue);
|
|
17192
|
+
if (this.separatorElements.length > 0) {
|
|
17193
|
+
// separator should be completely removed when length is 0 or 1;
|
|
17194
|
+
const index = currentValue === 0 ? 0 : currentValue - 1;
|
|
17195
|
+
for (let i = index; i < this.separatorElements.length; i++) {
|
|
17196
|
+
remove(this.separatorElements[parseInt(i.toString(), 10)]);
|
|
17197
|
+
}
|
|
17198
|
+
this.separatorElements.splice(index);
|
|
17199
|
+
}
|
|
17200
|
+
}
|
|
17201
|
+
}
|
|
17202
|
+
}
|
|
17203
|
+
/**
|
|
17204
|
+
* To get component name.
|
|
17205
|
+
*
|
|
17206
|
+
* @returns {string} - Module Name
|
|
17207
|
+
* @private
|
|
17208
|
+
*/
|
|
17209
|
+
getModuleName() {
|
|
17210
|
+
return 'otpinput';
|
|
17211
|
+
}
|
|
17212
|
+
/**
|
|
17213
|
+
* To get the properties to be maintained in the persisted state.
|
|
17214
|
+
*
|
|
17215
|
+
* @returns {string} - Persist data
|
|
17216
|
+
*/
|
|
17217
|
+
getPersistData() {
|
|
17218
|
+
return this.addOnPersist([]);
|
|
17219
|
+
}
|
|
17220
|
+
/**
|
|
17221
|
+
* Destroy the Otp input.
|
|
17222
|
+
*
|
|
17223
|
+
* @returns {void}
|
|
17224
|
+
*/
|
|
17225
|
+
destroy() {
|
|
17226
|
+
super.destroy();
|
|
17227
|
+
this.unWireEvents();
|
|
17228
|
+
for (let i = 0; i < this.inputs.length; i++) {
|
|
17229
|
+
remove(this.inputs[parseInt(i.toString(), 10)]);
|
|
17230
|
+
}
|
|
17231
|
+
for (let i = 0; i < this.separatorElements.length; i++) {
|
|
17232
|
+
remove(this.separatorElements[parseInt(i.toString(), 10)]);
|
|
17233
|
+
}
|
|
17234
|
+
remove(this.hiddenInputEle);
|
|
17235
|
+
removeClass([this.element], ['e-underlined', 'e-filled', 'e-outline', 'e-rtl']);
|
|
17236
|
+
if (this.cssClass) {
|
|
17237
|
+
removeClass([this.element], this.cssClass.trim().split(' '));
|
|
17238
|
+
}
|
|
17239
|
+
this.element.removeAttribute('role');
|
|
17240
|
+
this.inputs = [];
|
|
17241
|
+
this.separatorElements = [];
|
|
17242
|
+
this.hiddenInputEle = null;
|
|
17243
|
+
}
|
|
17244
|
+
/**
|
|
17245
|
+
* Sets the focus to the Otp input for interaction.
|
|
17246
|
+
*
|
|
17247
|
+
* @returns {void}
|
|
17248
|
+
*/
|
|
17249
|
+
focusIn() {
|
|
17250
|
+
this.isFocusInCalled = true;
|
|
17251
|
+
let focusIndex = 0;
|
|
17252
|
+
this.inputs.forEach((input, index) => {
|
|
17253
|
+
if (input.value.length > 0) {
|
|
17254
|
+
focusIndex = index;
|
|
17255
|
+
}
|
|
17256
|
+
});
|
|
17257
|
+
this.inputs[parseInt(focusIndex.toString(), 10)].focus();
|
|
17258
|
+
this.isFocusInCalled = false;
|
|
17259
|
+
}
|
|
17260
|
+
/**
|
|
17261
|
+
* Remove the focus from Otp input, if it is in focus state.
|
|
17262
|
+
*
|
|
17263
|
+
* @returns {void}
|
|
17264
|
+
*/
|
|
17265
|
+
focusOut() {
|
|
17266
|
+
this.isFocusOutCalled = true;
|
|
17267
|
+
this.inputs.forEach((input) => {
|
|
17268
|
+
input.blur();
|
|
17269
|
+
});
|
|
17270
|
+
this.isFocusOutCalled = false;
|
|
17271
|
+
}
|
|
17272
|
+
/**
|
|
17273
|
+
* Called internally if any of the property value changed.
|
|
17274
|
+
*
|
|
17275
|
+
* @param {OtpInputModel} newProp - Specifies new properties
|
|
17276
|
+
* @param {OtpInputModel} oldProp - Specifies old properties
|
|
17277
|
+
* @returns {void}
|
|
17278
|
+
* @private
|
|
17279
|
+
*/
|
|
17280
|
+
onPropertyChanged(newProp, oldProp) {
|
|
17281
|
+
for (const prop of Object.keys(newProp)) {
|
|
17282
|
+
switch (prop) {
|
|
17283
|
+
case 'value':
|
|
17284
|
+
{
|
|
17285
|
+
this.updateInputValue(oldProp.value);
|
|
17286
|
+
this.triggerValuechanged();
|
|
17287
|
+
}
|
|
17288
|
+
break;
|
|
17289
|
+
case 'placeholder':
|
|
17290
|
+
this.addPlaceHolder();
|
|
17291
|
+
break;
|
|
17292
|
+
case 'disabled':
|
|
17293
|
+
this.updateDisabledState();
|
|
17294
|
+
break;
|
|
17295
|
+
case 'cssClass':
|
|
17296
|
+
this.updateCssClass(newProp.cssClass, oldProp.cssClass);
|
|
17297
|
+
break;
|
|
17298
|
+
case 'separator':
|
|
17299
|
+
if (oldProp.separator === '') {
|
|
17300
|
+
this.renderSeparator(1, this.inputs.length);
|
|
17301
|
+
}
|
|
17302
|
+
else {
|
|
17303
|
+
this.updateSeparatorValue();
|
|
17304
|
+
}
|
|
17305
|
+
break;
|
|
17306
|
+
case 'type':
|
|
17307
|
+
this.updateInputType(newProp.type);
|
|
17308
|
+
break;
|
|
17309
|
+
case 'stylingMode':
|
|
17310
|
+
this.updateVariantClass();
|
|
17311
|
+
break;
|
|
17312
|
+
case 'ariaLabels':
|
|
17313
|
+
this.updateAriaLabel(newProp.ariaLabels);
|
|
17314
|
+
break;
|
|
17315
|
+
case 'length':
|
|
17316
|
+
this.handleLengthChange(newProp.length, oldProp.length);
|
|
17317
|
+
break;
|
|
17318
|
+
case 'enableRtl':
|
|
17319
|
+
this.element.classList[this.enableRtl ? 'add' : 'remove'](RTL$3);
|
|
17320
|
+
break;
|
|
17321
|
+
}
|
|
17322
|
+
}
|
|
17323
|
+
}
|
|
17324
|
+
};
|
|
17325
|
+
__decorate$a([
|
|
17326
|
+
Property(4)
|
|
17327
|
+
], OtpInput.prototype, "length", void 0);
|
|
17328
|
+
__decorate$a([
|
|
17329
|
+
Property('')
|
|
17330
|
+
], OtpInput.prototype, "value", void 0);
|
|
17331
|
+
__decorate$a([
|
|
17332
|
+
Property(OtpInputType.Number)
|
|
17333
|
+
], OtpInput.prototype, "type", void 0);
|
|
17334
|
+
__decorate$a([
|
|
17335
|
+
Property('')
|
|
17336
|
+
], OtpInput.prototype, "separator", void 0);
|
|
17337
|
+
__decorate$a([
|
|
17338
|
+
Property('')
|
|
17339
|
+
], OtpInput.prototype, "placeholder", void 0);
|
|
17340
|
+
__decorate$a([
|
|
17341
|
+
Property(OtpInputStyle.Outlined)
|
|
17342
|
+
], OtpInput.prototype, "stylingMode", void 0);
|
|
17343
|
+
__decorate$a([
|
|
17344
|
+
Property(false)
|
|
17345
|
+
], OtpInput.prototype, "disabled", void 0);
|
|
17346
|
+
__decorate$a([
|
|
17347
|
+
Property('')
|
|
17348
|
+
], OtpInput.prototype, "cssClass", void 0);
|
|
17349
|
+
__decorate$a([
|
|
17350
|
+
Property({})
|
|
17351
|
+
], OtpInput.prototype, "htmlAttributes", void 0);
|
|
17352
|
+
__decorate$a([
|
|
17353
|
+
Property([])
|
|
17354
|
+
], OtpInput.prototype, "ariaLabels", void 0);
|
|
17355
|
+
__decorate$a([
|
|
17356
|
+
Event()
|
|
17357
|
+
], OtpInput.prototype, "created", void 0);
|
|
17358
|
+
__decorate$a([
|
|
17359
|
+
Event()
|
|
17360
|
+
], OtpInput.prototype, "valueChanged", void 0);
|
|
17361
|
+
__decorate$a([
|
|
17362
|
+
Event()
|
|
17363
|
+
], OtpInput.prototype, "focus", void 0);
|
|
17364
|
+
__decorate$a([
|
|
17365
|
+
Event()
|
|
17366
|
+
], OtpInput.prototype, "blur", void 0);
|
|
17367
|
+
__decorate$a([
|
|
17368
|
+
Event()
|
|
17369
|
+
], OtpInput.prototype, "input", void 0);
|
|
17370
|
+
OtpInput = __decorate$a([
|
|
17371
|
+
NotifyPropertyChanges
|
|
17372
|
+
], OtpInput);
|
|
16731
17373
|
|
|
16732
|
-
export {
|
|
17374
|
+
export { AsyncSettings, ButtonsProps, ColorPicker, ColorRangeData, ErrorOption, FilesProp, FormValidator, Input, LabelPosition, LimitData, MaskUndo, MaskedTextBox, NumericTextBox, OtpInput, OtpInputStyle, OtpInputType, PrecisionType, Rating, Signature, SignatureBase, Slider, TEXTBOX_FOCUS, TextArea, TextBox, TicksData, TooltipData, Uploader, applyMask, bindClearEvent, containerAttributes, createMask, escapeRegExp, getMaskedVal, getVal, maskInput, maskInputBlurHandler, maskInputDropHandler, maskInputFocusHandler, maskInputMouseDownHandler, maskInputMouseUpHandler, mobileRemoveFunction, regex, regularExpressions, setElementValue, setMaskValue, strippedValue, triggerFocus, unstrippedValue, unwireEvents, wireEvents };
|
|
16733
17375
|
//# sourceMappingURL=ej2-inputs.es2015.js.map
|