@syncfusion/ej2-inputs 20.2.38 → 20.2.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ej2-inputs.umd.min.js +2 -2
- package/dist/ej2-inputs.umd.min.js.map +1 -1
- package/dist/es6/ej2-inputs.es2015.js +57 -2
- package/dist/es6/ej2-inputs.es2015.js.map +1 -1
- package/dist/es6/ej2-inputs.es5.js +57 -2
- 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/package.json +9 -9
- package/src/input/input.d.ts +22 -0
- package/src/input/input.js +53 -2
- package/src/maskedtextbox/maskedtextbox/maskedtextbox.js +1 -0
- package/src/numerictextbox/numerictextbox.js +2 -0
- package/src/textbox/textbox.js +1 -0
- package/styles/bootstrap5-dark.css +2 -2
- package/styles/bootstrap5.css +2 -2
- package/styles/fluent-dark.css +2 -2
- package/styles/fluent.css +2 -2
- package/styles/input/_layout.scss +38 -1
- package/styles/input/material-dark.css +27 -0
- package/styles/input/material.css +27 -0
- package/styles/material-dark.css +27 -0
- package/styles/material.css +27 -0
- package/styles/tailwind-dark.css +2 -2
- package/styles/tailwind.css +2 -2
- package/styles/uploader/_bootstrap5-definition.scss +1 -1
- package/styles/uploader/_fluent-definition.scss +1 -1
- package/styles/uploader/_tailwind-definition.scss +1 -1
- package/styles/uploader/bootstrap5-dark.css +2 -2
- package/styles/uploader/bootstrap5.css +2 -2
- package/styles/uploader/fluent-dark.css +2 -2
- package/styles/uploader/fluent.css +2 -2
- package/styles/uploader/tailwind-dark.css +2 -2
- package/styles/uploader/tailwind.css +2 -2
|
@@ -12,6 +12,7 @@ var CLASSNAMES = {
|
|
|
12
12
|
FLOATINPUT: 'e-float-input',
|
|
13
13
|
FLOATLINE: 'e-float-line',
|
|
14
14
|
FLOATTEXT: 'e-float-text',
|
|
15
|
+
FLOATTEXTCONTENT: 'e-float-text-content',
|
|
15
16
|
CLEARICON: 'e-clear-icon',
|
|
16
17
|
CLEARICONHIDE: 'e-clear-icon-hide',
|
|
17
18
|
LABELTOP: 'e-label-top',
|
|
@@ -68,6 +69,7 @@ var Input;
|
|
|
68
69
|
}
|
|
69
70
|
validateInputType(inputObject.container, args.element);
|
|
70
71
|
inputObject = setPropertyValue(args, inputObject);
|
|
72
|
+
createSpanElement(inputObject, makeElement);
|
|
71
73
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
72
74
|
return inputObject;
|
|
73
75
|
}
|
|
@@ -364,6 +366,9 @@ var Input;
|
|
|
364
366
|
*/
|
|
365
367
|
function setValue$$1(value, element, floatLabelType, clearButton) {
|
|
366
368
|
element.value = value;
|
|
369
|
+
if (isNullOrUndefined(element.getAttribute('value'))) {
|
|
370
|
+
calculateWidth(element, element.parentElement);
|
|
371
|
+
}
|
|
367
372
|
if ((!isNullOrUndefined(floatLabelType)) && floatLabelType === 'Auto') {
|
|
368
373
|
validateLabel(element, floatLabelType);
|
|
369
374
|
}
|
|
@@ -404,6 +409,26 @@ var Input;
|
|
|
404
409
|
}
|
|
405
410
|
}
|
|
406
411
|
Input.setCssClass = setCssClass;
|
|
412
|
+
/**
|
|
413
|
+
* Set the width to the placeholder when it overflows on the button such as spinbutton, clearbutton, icon etc
|
|
414
|
+
* ```
|
|
415
|
+
* E.g : Input.calculateWidth(element, container);
|
|
416
|
+
* ```
|
|
417
|
+
*
|
|
418
|
+
* @param {any} element - Input element which is need to add.
|
|
419
|
+
* @param {HTMLElement} container - The parent element which is need to get the label span to calculate width
|
|
420
|
+
*/
|
|
421
|
+
function calculateWidth(element, container) {
|
|
422
|
+
if (!isNullOrUndefined(container.getElementsByClassName('e-float-text-content')[0])) {
|
|
423
|
+
if (container.getElementsByClassName('e-float-text-content')[0].classList.contains('e-float-text-overflow')) {
|
|
424
|
+
container.getElementsByClassName('e-float-text-content')[0].classList.remove('e-float-text-overflow');
|
|
425
|
+
}
|
|
426
|
+
if (element.clientWidth < container.getElementsByClassName('e-float-text-content')[0].clientWidth || container.getElementsByClassName('e-control')[0].clientWidth === container.getElementsByClassName('e-float-text-content')[0].clientWidth) {
|
|
427
|
+
container.getElementsByClassName('e-float-text-content')[0].classList.add('e-float-text-overflow');
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
Input.calculateWidth = calculateWidth;
|
|
407
432
|
/**
|
|
408
433
|
* Set the width to the wrapper of input element.
|
|
409
434
|
* ```
|
|
@@ -420,6 +445,7 @@ var Input;
|
|
|
420
445
|
else if (typeof width === 'string') {
|
|
421
446
|
container.style.width = (width.match(/px|%|em/)) ? (width) : (formatUnit(width));
|
|
422
447
|
}
|
|
448
|
+
calculateWidth(container.firstChild, container);
|
|
423
449
|
}
|
|
424
450
|
Input.setWidth = setWidth;
|
|
425
451
|
/**
|
|
@@ -436,13 +462,13 @@ var Input;
|
|
|
436
462
|
var parentElement = getParentNode(element);
|
|
437
463
|
if (parentElement.classList.contains(CLASSNAMES.FLOATINPUT)) {
|
|
438
464
|
if (!isNullOrUndefined(placeholder) && placeholder !== '') {
|
|
439
|
-
parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = placeholder;
|
|
465
|
+
parentElement.getElementsByClassName('e-float-text-content')[0] ? parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].children[0].textContent = placeholder : parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = placeholder;
|
|
440
466
|
parentElement.classList.remove(CLASSNAMES.NOFLOATLABEL);
|
|
441
467
|
element.removeAttribute('placeholder');
|
|
442
468
|
}
|
|
443
469
|
else {
|
|
444
470
|
parentElement.classList.add(CLASSNAMES.NOFLOATLABEL);
|
|
445
|
-
parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = '';
|
|
471
|
+
parentElement.getElementsByClassName('e-float-text-content')[0] ? parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].children[0].textContent = '' : parentElement.getElementsByClassName(CLASSNAMES.FLOATTEXT)[0].textContent = '';
|
|
446
472
|
}
|
|
447
473
|
}
|
|
448
474
|
else {
|
|
@@ -635,6 +661,8 @@ var Input;
|
|
|
635
661
|
var inputObj = { container: container };
|
|
636
662
|
input.classList.remove(CLASSNAMES.INPUT);
|
|
637
663
|
createFloatingInput(args, inputObj, makeElement);
|
|
664
|
+
createSpanElement(inputObj, makeElement);
|
|
665
|
+
calculateWidth(args.element, inputObj.container);
|
|
638
666
|
var isPrependIcon = container.classList.contains('e-float-icon-left');
|
|
639
667
|
if (isNullOrUndefined(iconEle)) {
|
|
640
668
|
if (isPrependIcon) {
|
|
@@ -665,6 +693,26 @@ var Input;
|
|
|
665
693
|
checkFloatLabelType(type, input.parentElement);
|
|
666
694
|
}
|
|
667
695
|
Input.addFloating = addFloating;
|
|
696
|
+
/**
|
|
697
|
+
* Create the span inside the label and add the label text into the span textcontent
|
|
698
|
+
* ```
|
|
699
|
+
* E.g : Input.createSpanElement(inputObject, makeElement);
|
|
700
|
+
* ```
|
|
701
|
+
*
|
|
702
|
+
* @param {InputObject} inputObject
|
|
703
|
+
* - Element which is need to get the label
|
|
704
|
+
* @param {createElementParams} makeElement
|
|
705
|
+
* - Element which is need to create the span
|
|
706
|
+
*/
|
|
707
|
+
function createSpanElement(inputObject, makeElement) {
|
|
708
|
+
if (inputObject.container.classList.contains('e-outline') && inputObject.container.getElementsByClassName('e-float-text')[0]) {
|
|
709
|
+
var labelSpanElement = makeElement('span', { className: CLASSNAMES.FLOATTEXTCONTENT });
|
|
710
|
+
labelSpanElement.innerHTML = inputObject.container.getElementsByClassName('e-float-text')[0].innerHTML;
|
|
711
|
+
inputObject.container.getElementsByClassName('e-float-text')[0].innerHTML = '';
|
|
712
|
+
inputObject.container.getElementsByClassName('e-float-text')[0].appendChild(labelSpanElement);
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
Input.createSpanElement = createSpanElement;
|
|
668
716
|
/**
|
|
669
717
|
* Enable or Disable the ripple effect on the icons inside the Input. Ripple effect is only applicable for material theme.
|
|
670
718
|
* ```
|
|
@@ -755,6 +803,9 @@ var Input;
|
|
|
755
803
|
prependSpan(icon, container, input, internalCreate);
|
|
756
804
|
}
|
|
757
805
|
}
|
|
806
|
+
if (container.getElementsByClassName('e-input-group-icon')[0] && container.getElementsByClassName('e-float-text-overflow')[0]) {
|
|
807
|
+
container.getElementsByClassName('e-float-text-overflow')[0].classList.add('e-icon');
|
|
808
|
+
}
|
|
758
809
|
}
|
|
759
810
|
Input.addIcon = addIcon;
|
|
760
811
|
/**
|
|
@@ -1991,6 +2042,7 @@ var NumericTextBox = /** @__PURE__ @class */ (function (_super) {
|
|
|
1991
2042
|
switch (prop) {
|
|
1992
2043
|
case 'width':
|
|
1993
2044
|
this.setElementWidth(newProp.width);
|
|
2045
|
+
Input.calculateWidth(this.element, this.container);
|
|
1994
2046
|
break;
|
|
1995
2047
|
case 'cssClass':
|
|
1996
2048
|
this.updateCssClass(newProp.cssClass, oldProp.cssClass);
|
|
@@ -2019,6 +2071,7 @@ var NumericTextBox = /** @__PURE__ @class */ (function (_super) {
|
|
|
2019
2071
|
break;
|
|
2020
2072
|
case 'placeholder':
|
|
2021
2073
|
Input.setPlaceholder(newProp.placeholder, this.element);
|
|
2074
|
+
Input.calculateWidth(this.element, this.container);
|
|
2022
2075
|
break;
|
|
2023
2076
|
case 'step':
|
|
2024
2077
|
this.step = newProp.step;
|
|
@@ -3667,6 +3720,7 @@ var MaskedTextBox = /** @__PURE__ @class */ (function (_super) {
|
|
|
3667
3720
|
break;
|
|
3668
3721
|
case 'width':
|
|
3669
3722
|
this.setWidth(newProp.width);
|
|
3723
|
+
Input.calculateWidth(this.element, this.inputObj.container);
|
|
3670
3724
|
break;
|
|
3671
3725
|
case 'cssClass':
|
|
3672
3726
|
this.updateCssClass(newProp.cssClass, oldProp.cssClass);
|
|
@@ -13136,6 +13190,7 @@ var TextBox = /** @__PURE__ @class */ (function (_super) {
|
|
|
13136
13190
|
break;
|
|
13137
13191
|
case 'placeholder':
|
|
13138
13192
|
Input.setPlaceholder(this.placeholder, this.respectiveElement);
|
|
13193
|
+
Input.calculateWidth(this.respectiveElement, this.textboxWrapper.container);
|
|
13139
13194
|
break;
|
|
13140
13195
|
case 'autocomplete':
|
|
13141
13196
|
if (this.autocomplete !== 'on' && this.autocomplete !== '') {
|