@syncfusion/ej2-inputs 35.1.37 → 35.1.42
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.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 +87 -15
- package/dist/es6/ej2-inputs.es2015.js.map +1 -1
- package/dist/es6/ej2-inputs.es5.js +87 -15
- 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 +3 -3
- package/src/color-picker/color-picker.js +54 -12
- package/src/input/input.js +33 -10
|
@@ -40,6 +40,30 @@ var Input;
|
|
|
40
40
|
var floatType;
|
|
41
41
|
var isBindClearAction = true;
|
|
42
42
|
var resizeHandlers = new Map();
|
|
43
|
+
var mutationObservers = new Map();
|
|
44
|
+
var observeElementDetach = function (element, container, resizeHandler) {
|
|
45
|
+
var parent = container.parentElement;
|
|
46
|
+
if (!parent) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
var observer = new MutationObserver(function () {
|
|
50
|
+
if (!document.documentElement.contains(container)) {
|
|
51
|
+
window.removeEventListener('resize', resizeHandler);
|
|
52
|
+
resizeHandlers.delete(element);
|
|
53
|
+
observer.disconnect();
|
|
54
|
+
mutationObservers.delete(element);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
var host = parent;
|
|
58
|
+
while (host && host.parentElement && host.parentElement !== document.body) {
|
|
59
|
+
host = host.parentElement;
|
|
60
|
+
}
|
|
61
|
+
observer.observe(host || parent, {
|
|
62
|
+
childList: true,
|
|
63
|
+
subtree: true
|
|
64
|
+
});
|
|
65
|
+
mutationObservers.set(element, observer);
|
|
66
|
+
};
|
|
43
67
|
/**
|
|
44
68
|
* Create a wrapper to input element with multiple span elements and set the basic properties to input based components.
|
|
45
69
|
* ```
|
|
@@ -464,8 +488,11 @@ var Input;
|
|
|
464
488
|
if (!isNullOrUndefined(resizeHandlers)) {
|
|
465
489
|
var resizeHandler = resizeHandlers.get(args.element);
|
|
466
490
|
if (resizeHandler) {
|
|
467
|
-
|
|
468
|
-
|
|
491
|
+
var observer = mutationObservers.get(args.element);
|
|
492
|
+
if (observer) {
|
|
493
|
+
observer.disconnect();
|
|
494
|
+
mutationObservers.delete(args.element);
|
|
495
|
+
}
|
|
469
496
|
if (isReactMode) {
|
|
470
497
|
resizeHandlers = null;
|
|
471
498
|
}
|
|
@@ -483,7 +510,9 @@ var Input;
|
|
|
483
510
|
var parent = getParentNode(element);
|
|
484
511
|
if (parent.classList.contains(CLASSNAMES.FLOATINPUT) && floatLabelType === 'Auto') {
|
|
485
512
|
var label = getParentNode(element).getElementsByClassName('e-float-text')[0];
|
|
486
|
-
|
|
513
|
+
if (label) {
|
|
514
|
+
updateLabelState(element.value, label, element);
|
|
515
|
+
}
|
|
487
516
|
}
|
|
488
517
|
}
|
|
489
518
|
/**
|
|
@@ -606,6 +635,7 @@ var Input;
|
|
|
606
635
|
};
|
|
607
636
|
resizeHandlers.set(element, resizeHandler_1);
|
|
608
637
|
window.addEventListener('resize', resizeHandler_1);
|
|
638
|
+
observeElementDetach(element, container, resizeHandler_1);
|
|
609
639
|
}
|
|
610
640
|
if (moduleName !== 'multiselect' && !_isElementVisible(element)) {
|
|
611
641
|
return;
|
|
@@ -12702,11 +12732,26 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
12702
12732
|
};
|
|
12703
12733
|
ColorPicker.prototype.firstPaletteFocus = function () {
|
|
12704
12734
|
if (!select('.' + SELECT, this.container.children[0])) {
|
|
12705
|
-
|
|
12735
|
+
var firstTile = select('.' + TILE, this.container);
|
|
12736
|
+
if (firstTile) {
|
|
12737
|
+
firstTile.focus();
|
|
12738
|
+
}
|
|
12739
|
+
else {
|
|
12740
|
+
selectAll('.' + PALETTES, this.container)[0].focus();
|
|
12741
|
+
}
|
|
12706
12742
|
}
|
|
12707
12743
|
};
|
|
12708
12744
|
ColorPicker.prototype.appendPalette = function (colors, key, refEle) {
|
|
12709
|
-
var
|
|
12745
|
+
var rowCount = Math.ceil(colors.length / this.columns);
|
|
12746
|
+
var palette = this.createElement('div', {
|
|
12747
|
+
className: PALETTES,
|
|
12748
|
+
attrs: {
|
|
12749
|
+
'tabindex': '0', 'role': 'grid',
|
|
12750
|
+
'aria-label': (key === 'recent-color' ? 'Recent ' : '') + 'Color palette, ' + rowCount +
|
|
12751
|
+
(rowCount === 1 ? ' row and ' : ' rows and ') + this.columns +
|
|
12752
|
+
(this.columns === 1 ? ' column' : ' columns')
|
|
12753
|
+
}
|
|
12754
|
+
});
|
|
12710
12755
|
if (key === 'recent-color') {
|
|
12711
12756
|
palette.classList.add('e-recent-palette');
|
|
12712
12757
|
}
|
|
@@ -12719,34 +12764,51 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
12719
12764
|
var row;
|
|
12720
12765
|
var tile;
|
|
12721
12766
|
var roundedColor;
|
|
12767
|
+
var rowIdx = 0;
|
|
12768
|
+
var colIdx;
|
|
12722
12769
|
for (var i = 0, len = colors.length; i < len; i++) {
|
|
12723
12770
|
if (i === 0 || i % this.columns === 0) {
|
|
12771
|
+
rowIdx++;
|
|
12772
|
+
colIdx = 0;
|
|
12724
12773
|
row = this.createElement('div', {
|
|
12725
|
-
className: 'e-row',
|
|
12774
|
+
className: 'e-row',
|
|
12775
|
+
attrs: { 'role': 'row', 'aria-label': 'Row ' + rowIdx }
|
|
12726
12776
|
});
|
|
12727
12777
|
palette.appendChild(row);
|
|
12728
12778
|
}
|
|
12779
|
+
colIdx++;
|
|
12729
12780
|
roundedColor = this.roundValue(colors[i]).toLowerCase();
|
|
12730
12781
|
tile = this.createElement('span', {
|
|
12731
|
-
className: TILE, attrs: {
|
|
12782
|
+
className: TILE, attrs: {
|
|
12783
|
+
'role': 'gridcell', 'aria-label': roundedColor, 'aria-selected': 'false',
|
|
12784
|
+
'tabindex': '-1',
|
|
12785
|
+
'aria-rowindex': rowIdx.toString(), 'aria-colindex': colIdx.toString()
|
|
12786
|
+
}
|
|
12732
12787
|
});
|
|
12733
12788
|
this.trigger('beforeTileRender', { element: tile, presetName: key, value: colors[i] });
|
|
12734
12789
|
row.appendChild(tile);
|
|
12735
12790
|
if (this.value === roundedColor && key !== 'recent-color') {
|
|
12736
12791
|
this.addTileSelection(tile);
|
|
12737
|
-
palette.focus();
|
|
12738
12792
|
}
|
|
12739
12793
|
tile.style.backgroundColor = this.convertToRgbString(this.hexToRgb(roundedColor));
|
|
12740
12794
|
}
|
|
12795
|
+
var selectedTile = palette.querySelector('.' + TILE + '.' + SELECT);
|
|
12796
|
+
if (selectedTile) {
|
|
12797
|
+
selectedTile.focus();
|
|
12798
|
+
}
|
|
12741
12799
|
};
|
|
12742
12800
|
ColorPicker.prototype.setNoColor = function () {
|
|
12743
12801
|
var noColorEle = this.container.querySelector('.e-row').children[0];
|
|
12744
12802
|
noColorEle.classList.add(NOCOLOR);
|
|
12803
|
+
noColorEle.setAttribute('aria-label', 'No color');
|
|
12745
12804
|
if (!this.value) {
|
|
12746
12805
|
noColorEle.classList.add(SELECT);
|
|
12747
|
-
|
|
12806
|
+
noColorEle.setAttribute('aria-selected', 'true');
|
|
12807
|
+
noColorEle.focus();
|
|
12808
|
+
}
|
|
12809
|
+
else {
|
|
12810
|
+
noColorEle.setAttribute('aria-selected', 'false');
|
|
12748
12811
|
}
|
|
12749
|
-
['aria-selected', 'aria-label'].forEach(function (attr) { noColorEle.removeAttribute(attr); });
|
|
12750
12812
|
noColorEle.style.backgroundColor = '';
|
|
12751
12813
|
};
|
|
12752
12814
|
ColorPicker.prototype.appendElement = function (ele, insertPos) {
|
|
@@ -13325,7 +13387,7 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
13325
13387
|
else {
|
|
13326
13388
|
this.setProperties({ 'value': hex }, true);
|
|
13327
13389
|
}
|
|
13328
|
-
this.element.value = hex ? hex : '#000000';
|
|
13390
|
+
this.element.value = hex ? hex : (this.mode === 'Palette' && !this.modeSwitcher && this.noColor ? '' : '#000000');
|
|
13329
13391
|
};
|
|
13330
13392
|
ColorPicker.prototype.handlerDragPosition = function (prob, value, e) {
|
|
13331
13393
|
e.preventDefault();
|
|
@@ -13609,10 +13671,12 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
13609
13671
|
}
|
|
13610
13672
|
};
|
|
13611
13673
|
ColorPicker.prototype.paletteKeyDown = function (e) {
|
|
13612
|
-
var
|
|
13613
|
-
if (!
|
|
13674
|
+
var eventTarget = e.target;
|
|
13675
|
+
if (!eventTarget.classList.contains(PALETTES) && !eventTarget.classList.contains(TILE)) {
|
|
13614
13676
|
return;
|
|
13615
13677
|
}
|
|
13678
|
+
var target = eventTarget.classList.contains(TILE) ?
|
|
13679
|
+
closest(eventTarget, '.' + PALETTES) : eventTarget;
|
|
13616
13680
|
var selectedEle;
|
|
13617
13681
|
var idx;
|
|
13618
13682
|
var tiles = [].slice.call(selectAll('.' + TILE, target));
|
|
@@ -13670,8 +13734,13 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
13670
13734
|
case 13:
|
|
13671
13735
|
e.preventDefault();
|
|
13672
13736
|
if (prevSelectedEle) {
|
|
13673
|
-
|
|
13674
|
-
|
|
13737
|
+
if (prevSelectedEle.classList.contains(NOCOLOR)) {
|
|
13738
|
+
this.enterKeyHandler('');
|
|
13739
|
+
}
|
|
13740
|
+
else {
|
|
13741
|
+
var cValue = prevSelectedEle.getAttribute('aria-label');
|
|
13742
|
+
this.enterKeyHandler(cValue ? cValue : '');
|
|
13743
|
+
}
|
|
13675
13744
|
}
|
|
13676
13745
|
break;
|
|
13677
13746
|
}
|
|
@@ -13692,6 +13761,9 @@ var ColorPicker = /** @__PURE__ @class */ (function (_super) {
|
|
|
13692
13761
|
}
|
|
13693
13762
|
this.triggerEvent(cValue, pValue, this.convertToRgbString(this.rgb), true);
|
|
13694
13763
|
}
|
|
13764
|
+
if (newEle) {
|
|
13765
|
+
newEle.focus();
|
|
13766
|
+
}
|
|
13695
13767
|
};
|
|
13696
13768
|
ColorPicker.prototype.tilePosition = function (items, element, cIdx) {
|
|
13697
13769
|
items = Array.prototype.slice.call(items);
|