@syncfusion/ej2-inputs 20.2.45 → 20.3.47

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.
Files changed (241) hide show
  1. package/dist/ej2-inputs.min.js +10 -0
  2. package/dist/ej2-inputs.umd.min.js +2 -2
  3. package/dist/ej2-inputs.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-inputs.es2015.js +83 -47
  5. package/dist/es6/ej2-inputs.es2015.js.map +1 -1
  6. package/dist/es6/ej2-inputs.es5.js +83 -47
  7. package/dist/es6/ej2-inputs.es5.js.map +1 -1
  8. package/dist/global/ej2-inputs.min.js +2 -2
  9. package/dist/global/ej2-inputs.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +11 -10
  12. package/src/color-picker/color-picker.js +3 -3
  13. package/src/common/signature-base.d.ts +77 -1
  14. package/src/common/signature-base.js +41 -8
  15. package/src/input/input.d.ts +11 -11
  16. package/src/input/input.js +19 -19
  17. package/src/maskedtextbox/base/mask-base.js +2 -3
  18. package/src/maskedtextbox/maskedtextbox/maskedtextbox.js +1 -3
  19. package/src/numerictextbox/numerictextbox.js +10 -8
  20. package/src/textbox/textbox.js +3 -3
  21. package/src/uploader/uploader.d.ts +1 -0
  22. package/src/uploader/uploader.js +4 -0
  23. package/styles/bootstrap-dark.css +31 -13
  24. package/styles/bootstrap.css +31 -13
  25. package/styles/bootstrap4.css +31 -13
  26. package/styles/bootstrap5-dark.css +32 -13
  27. package/styles/bootstrap5.css +32 -13
  28. package/styles/color-picker/_all.scss +1 -1
  29. package/styles/color-picker/_bootstrap-dark-definition.scss +2 -1
  30. package/styles/color-picker/_bootstrap5-definition.scss +0 -1
  31. package/styles/color-picker/_fabric-dark-definition.scss +2 -1
  32. package/styles/color-picker/_fluent-definition.scss +0 -1
  33. package/styles/color-picker/_fusionnew-definition.scss +0 -1
  34. package/styles/color-picker/_highcontrast-light-definition.scss +2 -1
  35. package/styles/color-picker/_layout.scss +2 -3
  36. package/styles/color-picker/_material-dark-definition.scss +2 -1
  37. package/styles/color-picker/_material3-definition.scss +0 -1
  38. package/styles/color-picker/_theme.scss +3 -3
  39. package/styles/color-picker/bootstrap-dark.css +2 -0
  40. package/styles/color-picker/bootstrap.css +2 -0
  41. package/styles/color-picker/bootstrap4.css +2 -0
  42. package/styles/color-picker/bootstrap5-dark.css +3 -0
  43. package/styles/color-picker/bootstrap5.css +3 -0
  44. package/styles/color-picker/fabric-dark.css +2 -0
  45. package/styles/color-picker/fabric.css +2 -0
  46. package/styles/color-picker/fluent-dark.css +3 -0
  47. package/styles/color-picker/fluent.css +3 -0
  48. package/styles/color-picker/highcontrast-light.css +2 -0
  49. package/styles/color-picker/highcontrast.css +2 -0
  50. package/styles/color-picker/icons/_bootstrap4.scss +1 -2
  51. package/styles/color-picker/icons/_bootstrap5.scss +1 -2
  52. package/styles/color-picker/icons/_fabric-dark.scss +2 -3
  53. package/styles/color-picker/icons/_fluent.scss +1 -2
  54. package/styles/color-picker/icons/_fusionnew.scss +1 -2
  55. package/styles/color-picker/icons/_material3.scss +1 -2
  56. package/styles/color-picker/icons/_tailwind-dark.scss +1 -2
  57. package/styles/color-picker/icons/_tailwind.scss +1 -2
  58. package/styles/color-picker/material-dark.css +2 -0
  59. package/styles/color-picker/material.css +2 -0
  60. package/styles/color-picker/tailwind-dark.css +3 -0
  61. package/styles/color-picker/tailwind.css +3 -0
  62. package/styles/fabric-dark.css +31 -13
  63. package/styles/fabric.css +31 -13
  64. package/styles/fluent-dark.css +32 -13
  65. package/styles/fluent.css +32 -13
  66. package/styles/highcontrast-light.css +31 -13
  67. package/styles/highcontrast.css +31 -13
  68. package/styles/input/_all.scss +1 -1
  69. package/styles/input/_bootstrap-dark-definition.scss +19 -1
  70. package/styles/input/_bootstrap-definition.scss +18 -2
  71. package/styles/input/_bootstrap4-definition.scss +17 -1
  72. package/styles/input/_bootstrap5-definition.scss +17 -2
  73. package/styles/input/_definition.scss +16 -1
  74. package/styles/input/_fabric-dark-definition.scss +16 -2
  75. package/styles/input/_fabric-definition.scss +15 -1
  76. package/styles/input/_fluent-definition.scss +19 -4
  77. package/styles/input/_fusionnew-definition.scss +17 -2
  78. package/styles/input/_highcontrast-definition.scss +17 -1
  79. package/styles/input/_highcontrast-light-definition.scss +18 -2
  80. package/styles/input/_layout.scss +313 -351
  81. package/styles/input/_material-dark-definition.scss +24 -7
  82. package/styles/input/_material-definition.scss +23 -7
  83. package/styles/input/_material3-definition.scss +17 -2
  84. package/styles/input/_responsive.scss +1 -1
  85. package/styles/input/_tailwind-definition.scss +17 -1
  86. package/styles/input/_theme.scss +248 -256
  87. package/styles/input/bootstrap-dark.css +22 -14
  88. package/styles/input/bootstrap.css +22 -14
  89. package/styles/input/bootstrap4.css +22 -14
  90. package/styles/input/bootstrap5-dark.css +22 -14
  91. package/styles/input/bootstrap5.css +22 -14
  92. package/styles/input/fabric-dark.css +22 -14
  93. package/styles/input/fabric.css +22 -14
  94. package/styles/input/fluent-dark.css +22 -14
  95. package/styles/input/fluent.css +22 -14
  96. package/styles/input/highcontrast-light.css +22 -14
  97. package/styles/input/highcontrast.css +22 -14
  98. package/styles/input/material-dark.css +26 -18
  99. package/styles/input/material.css +26 -18
  100. package/styles/input/tailwind-dark.css +22 -14
  101. package/styles/input/tailwind.css +22 -14
  102. package/styles/maskedtextbox/_all.scss +1 -1
  103. package/styles/maskedtextbox/_bootstrap-dark-definition.scss +2 -1
  104. package/styles/maskedtextbox/_bootstrap-definition.scss +0 -1
  105. package/styles/maskedtextbox/_bootstrap4-definition.scss +0 -1
  106. package/styles/maskedtextbox/_fabric-dark-definition.scss +1 -0
  107. package/styles/maskedtextbox/_highcontrast-light-definition.scss +1 -0
  108. package/styles/maskedtextbox/_layout.scss +7 -6
  109. package/styles/maskedtextbox/_material-dark-definition.scss +1 -0
  110. package/styles/maskedtextbox/_theme.scss +4 -3
  111. package/styles/maskedtextbox/bootstrap-dark.css +1 -0
  112. package/styles/maskedtextbox/bootstrap.css +1 -0
  113. package/styles/maskedtextbox/bootstrap4.css +1 -0
  114. package/styles/maskedtextbox/bootstrap5-dark.css +1 -0
  115. package/styles/maskedtextbox/bootstrap5.css +1 -0
  116. package/styles/maskedtextbox/fabric-dark.css +1 -0
  117. package/styles/maskedtextbox/fabric.css +1 -0
  118. package/styles/maskedtextbox/fluent-dark.css +1 -0
  119. package/styles/maskedtextbox/fluent.css +1 -0
  120. package/styles/maskedtextbox/highcontrast-light.css +1 -0
  121. package/styles/maskedtextbox/highcontrast.css +1 -0
  122. package/styles/maskedtextbox/material-dark.css +1 -0
  123. package/styles/maskedtextbox/material.css +1 -0
  124. package/styles/maskedtextbox/tailwind-dark.css +1 -0
  125. package/styles/maskedtextbox/tailwind.css +1 -0
  126. package/styles/material-dark.css +50 -18
  127. package/styles/material.css +50 -18
  128. package/styles/numerictextbox/_all.scss +1 -1
  129. package/styles/numerictextbox/_bootstrap-dark-definition.scss +2 -1
  130. package/styles/numerictextbox/_fabric-dark-definition.scss +2 -1
  131. package/styles/numerictextbox/_highcontrast-light-definition.scss +2 -1
  132. package/styles/numerictextbox/_material-dark-definition.scss +2 -1
  133. package/styles/numerictextbox/bootstrap-dark.css +1 -0
  134. package/styles/numerictextbox/bootstrap.css +1 -0
  135. package/styles/numerictextbox/bootstrap4.css +1 -0
  136. package/styles/numerictextbox/bootstrap5-dark.css +1 -0
  137. package/styles/numerictextbox/bootstrap5.css +1 -0
  138. package/styles/numerictextbox/fabric-dark.css +1 -0
  139. package/styles/numerictextbox/fabric.css +1 -0
  140. package/styles/numerictextbox/fluent-dark.css +1 -0
  141. package/styles/numerictextbox/fluent.css +1 -0
  142. package/styles/numerictextbox/highcontrast-light.css +1 -0
  143. package/styles/numerictextbox/highcontrast.css +1 -0
  144. package/styles/numerictextbox/icons/_bootstrap5.scss +0 -1
  145. package/styles/numerictextbox/icons/_fluent.scss +0 -1
  146. package/styles/numerictextbox/icons/_fusionnew.scss +0 -1
  147. package/styles/numerictextbox/icons/_material3.scss +0 -1
  148. package/styles/numerictextbox/icons/_tailwind.scss +0 -1
  149. package/styles/numerictextbox/material-dark.css +1 -0
  150. package/styles/numerictextbox/material.css +1 -0
  151. package/styles/numerictextbox/tailwind-dark.css +1 -0
  152. package/styles/numerictextbox/tailwind.css +1 -0
  153. package/styles/signature/_all.scss +1 -1
  154. package/styles/slider/_all.scss +1 -1
  155. package/styles/slider/_bootstrap-dark-definition.scss +1 -0
  156. package/styles/slider/_fabric-dark-definition.scss +1 -0
  157. package/styles/slider/_highcontrast-light-definition.scss +1 -0
  158. package/styles/slider/_icons.scss +1 -0
  159. package/styles/slider/_layout.scss +23 -26
  160. package/styles/slider/_material-dark-definition.scss +1 -0
  161. package/styles/slider/_theme.scss +2 -1
  162. package/styles/slider/bootstrap-dark.css +4 -0
  163. package/styles/slider/bootstrap.css +4 -0
  164. package/styles/slider/bootstrap4.css +4 -0
  165. package/styles/slider/bootstrap5-dark.css +4 -0
  166. package/styles/slider/bootstrap5.css +4 -0
  167. package/styles/slider/fabric-dark.css +4 -0
  168. package/styles/slider/fabric.css +4 -0
  169. package/styles/slider/fluent-dark.css +4 -0
  170. package/styles/slider/fluent.css +4 -0
  171. package/styles/slider/highcontrast-light.css +4 -0
  172. package/styles/slider/highcontrast.css +4 -0
  173. package/styles/slider/material-dark.css +19 -1
  174. package/styles/slider/material.css +19 -1
  175. package/styles/slider/tailwind-dark.css +4 -0
  176. package/styles/slider/tailwind.css +4 -0
  177. package/styles/tailwind-dark.css +33 -13
  178. package/styles/tailwind.css +33 -13
  179. package/styles/textbox/_all.scss +1 -1
  180. package/styles/textbox/_bootstrap-dark-definition.scss +1 -1
  181. package/styles/textbox/_bootstrap-definition.scss +1 -1
  182. package/styles/textbox/_bootstrap4-definition.scss +1 -1
  183. package/styles/textbox/_bootstrap5-definition.scss +1 -0
  184. package/styles/textbox/_fabric-dark-definition.scss +1 -1
  185. package/styles/textbox/_fabric-definition.scss +1 -1
  186. package/styles/textbox/_fluent-definition.scss +1 -0
  187. package/styles/textbox/_fusionnew-definition.scss +1 -0
  188. package/styles/textbox/_highcontrast-definition.scss +1 -1
  189. package/styles/textbox/_highcontrast-light-definition.scss +1 -1
  190. package/styles/textbox/_material-dark-definition.scss +1 -1
  191. package/styles/textbox/_material-definition.scss +1 -1
  192. package/styles/textbox/_material3-definition.scss +1 -0
  193. package/styles/textbox/_tailwind-definition.scss +1 -0
  194. package/styles/textbox/_theme.scss +1 -0
  195. package/styles/textbox/bootstrap-dark.css +2 -0
  196. package/styles/textbox/bootstrap.css +2 -0
  197. package/styles/textbox/bootstrap4.css +2 -0
  198. package/styles/textbox/bootstrap5-dark.css +2 -0
  199. package/styles/textbox/bootstrap5.css +2 -0
  200. package/styles/textbox/fabric-dark.css +2 -0
  201. package/styles/textbox/fabric.css +2 -0
  202. package/styles/textbox/fluent-dark.css +2 -0
  203. package/styles/textbox/fluent.css +2 -0
  204. package/styles/textbox/highcontrast-light.css +2 -0
  205. package/styles/textbox/highcontrast.css +2 -0
  206. package/styles/textbox/material-dark.css +3 -1
  207. package/styles/textbox/material.css +3 -1
  208. package/styles/textbox/tailwind-dark.css +3 -1
  209. package/styles/textbox/tailwind.css +3 -1
  210. package/styles/uploader/_all.scss +1 -1
  211. package/styles/uploader/_bootstrap-dark-definition.scss +3 -1
  212. package/styles/uploader/_bootstrap-definition.scss +2 -1
  213. package/styles/uploader/_bootstrap4-definition.scss +2 -1
  214. package/styles/uploader/_bootstrap5-definition.scss +1 -1
  215. package/styles/uploader/_fabric-dark-definition.scss +3 -1
  216. package/styles/uploader/_fabric-definition.scss +2 -0
  217. package/styles/uploader/_fluent-definition.scss +1 -1
  218. package/styles/uploader/_fusionnew-definition.scss +1 -1
  219. package/styles/uploader/_highcontrast-definition.scss +2 -0
  220. package/styles/uploader/_highcontrast-light-definition.scss +5 -2
  221. package/styles/uploader/_layout.scss +2 -3
  222. package/styles/uploader/_material-dark-definition.scss +4 -1
  223. package/styles/uploader/_material-definition.scss +1 -0
  224. package/styles/uploader/_material3-definition.scss +1 -1
  225. package/styles/uploader/_tailwind-definition.scss +2 -1
  226. package/styles/uploader/_theme.scss +2 -5
  227. package/styles/uploader/bootstrap-dark.css +1 -0
  228. package/styles/uploader/bootstrap.css +1 -0
  229. package/styles/uploader/bootstrap4.css +1 -0
  230. package/styles/uploader/bootstrap5-dark.css +1 -0
  231. package/styles/uploader/bootstrap5.css +1 -0
  232. package/styles/uploader/fabric-dark.css +1 -0
  233. package/styles/uploader/fabric.css +1 -0
  234. package/styles/uploader/fluent-dark.css +1 -0
  235. package/styles/uploader/fluent.css +1 -0
  236. package/styles/uploader/highcontrast-light.css +1 -0
  237. package/styles/uploader/highcontrast.css +1 -0
  238. package/styles/uploader/material-dark.css +1 -0
  239. package/styles/uploader/material.css +1 -0
  240. package/styles/uploader/tailwind-dark.css +2 -0
  241. package/styles/uploader/tailwind.css +2 -0
@@ -69,7 +69,7 @@ var Input;
69
69
  }
70
70
  validateInputType(inputObject.container, args.element);
71
71
  inputObject = setPropertyValue(args, inputObject);
72
- createSpanElement(inputObject, makeElement);
72
+ createSpanElement(inputObject.container, makeElement);
73
73
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
74
74
  return inputObject;
75
75
  }
@@ -417,11 +417,12 @@ var Input;
417
417
  * @param {HTMLElement} container - The parent element which is need to get the label span to calculate width
418
418
  */
419
419
  function calculateWidth(element, container) {
420
+ let elementWidth = element.clientWidth - parseInt(getComputedStyle(element, null).getPropertyValue('padding-left'));
420
421
  if (!isNullOrUndefined(container.getElementsByClassName('e-float-text-content')[0])) {
421
422
  if (container.getElementsByClassName('e-float-text-content')[0].classList.contains('e-float-text-overflow')) {
422
423
  container.getElementsByClassName('e-float-text-content')[0].classList.remove('e-float-text-overflow');
423
424
  }
424
- 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) {
425
+ if (elementWidth < container.getElementsByClassName('e-float-text-content')[0].clientWidth || elementWidth === container.getElementsByClassName('e-float-text-content')[0].clientWidth) {
425
426
  container.getElementsByClassName('e-float-text-content')[0].classList.add('e-float-text-overflow');
426
427
  }
427
428
  }
@@ -471,11 +472,10 @@ var Input;
471
472
  }
472
473
  else {
473
474
  if (!isNullOrUndefined(placeholder) && placeholder !== '') {
474
- attributes(element, { 'placeholder': placeholder, 'aria-placeholder': placeholder });
475
+ attributes(element, { 'placeholder': placeholder });
475
476
  }
476
477
  else {
477
478
  element.removeAttribute('placeholder');
478
- element.removeAttribute('aria-placeholder');
479
479
  }
480
480
  }
481
481
  }
@@ -657,7 +657,7 @@ var Input;
657
657
  const inputObj = { container: container };
658
658
  input.classList.remove(CLASSNAMES.INPUT);
659
659
  createFloatingInput(args, inputObj, makeElement);
660
- createSpanElement(inputObj, makeElement);
660
+ createSpanElement(inputObj.container, makeElement);
661
661
  calculateWidth(args.element, inputObj.container);
662
662
  const isPrependIcon = container.classList.contains('e-float-icon-left');
663
663
  if (isNullOrUndefined(iconEle)) {
@@ -690,22 +690,22 @@ var Input;
690
690
  }
691
691
  Input.addFloating = addFloating;
692
692
  /**
693
- * Create the span inside the label and add the label text into the span textcontent
694
- * ```
695
- * E.g : Input.createSpanElement(inputObject, makeElement);
696
- * ```
697
- *
698
- * @param {InputObject} inputObject
699
- * - Element which is need to get the label
700
- * @param {createElementParams} makeElement
701
- * - Element which is need to create the span
702
- */
693
+ * Create the span inside the label and add the label text into the span textcontent
694
+ * ```
695
+ * E.g : Input.createSpanElement(inputObject, makeElement);
696
+ * ```
697
+ *
698
+ * @param {InputObject} inputObject
699
+ * - Element which is need to get the label
700
+ * @param {createElementParams} makeElement
701
+ * - Element which is need to create the span
702
+ */
703
703
  function createSpanElement(inputObject, makeElement) {
704
- if (inputObject.container.classList.contains('e-outline') && inputObject.container.getElementsByClassName('e-float-text')[0]) {
704
+ if (inputObject.classList.contains('e-outline') && inputObject.getElementsByClassName('e-float-text')[0]) {
705
705
  const labelSpanElement = makeElement('span', { className: CLASSNAMES.FLOATTEXTCONTENT });
706
- labelSpanElement.innerHTML = inputObject.container.getElementsByClassName('e-float-text')[0].innerHTML;
707
- inputObject.container.getElementsByClassName('e-float-text')[0].innerHTML = '';
708
- inputObject.container.getElementsByClassName('e-float-text')[0].appendChild(labelSpanElement);
706
+ labelSpanElement.innerHTML = inputObject.getElementsByClassName('e-float-text')[0].innerHTML;
707
+ inputObject.getElementsByClassName('e-float-text')[0].innerHTML = '';
708
+ inputObject.getElementsByClassName('e-float-text')[0].appendChild(labelSpanElement);
709
709
  }
710
710
  }
711
711
  Input.createSpanElement = createSpanElement;
@@ -1210,13 +1210,11 @@ let NumericTextBox = class NumericTextBox extends Component {
1210
1210
  spinBtnCreation() {
1211
1211
  this.spinDown = Input.appendSpan(SPINICON + ' ' + SPINDOWN, this.container, this.createElement);
1212
1212
  attributes(this.spinDown, {
1213
- 'title': this.l10n.getConstant('decrementTitle'),
1214
- 'aria-label': this.l10n.getConstant('decrementTitle')
1213
+ 'title': this.l10n.getConstant('decrementTitle')
1215
1214
  });
1216
1215
  this.spinUp = Input.appendSpan(SPINICON + ' ' + SPINUP, this.container, this.createElement);
1217
1216
  attributes(this.spinUp, {
1218
- 'title': this.l10n.getConstant('incrementTitle'),
1219
- 'aria-label': this.l10n.getConstant('incrementTitle')
1217
+ 'title': this.l10n.getConstant('incrementTitle')
1220
1218
  });
1221
1219
  this.wireSpinBtnEvents();
1222
1220
  }
@@ -1236,7 +1234,12 @@ let NumericTextBox = class NumericTextBox extends Component {
1236
1234
  }
1237
1235
  }
1238
1236
  this.setProperties({ min: this.min > this.max ? this.max : this.min }, true);
1239
- attributes(this.element, { 'aria-valuemin': this.min.toString(), 'aria-valuemax': this.max.toString() });
1237
+ if (this.min !== -(Number.MAX_VALUE)) {
1238
+ attributes(this.element, { 'aria-valuemin': this.min.toString() });
1239
+ }
1240
+ if (this.max !== (Number.MAX_VALUE)) {
1241
+ attributes(this.element, { 'aria-valuemax': this.max.toString() });
1242
+ }
1240
1243
  }
1241
1244
  formattedValue(decimals, value) {
1242
1245
  return this.instance.getNumberFormat({
@@ -1943,9 +1946,8 @@ let NumericTextBox = class NumericTextBox extends Component {
1943
1946
  detach(this.spinDown);
1944
1947
  }
1945
1948
  const attrArray = ['aria-labelledby', 'role', 'autocomplete', 'aria-readonly',
1946
- 'autocorrect', 'aria-disabled', 'aria-placeholder', 'autocapitalize',
1947
- 'spellcheck', 'aria-autocomplete', 'tabindex', 'aria-valuemin',
1948
- 'aria-valuemax', 'aria-live', 'aria-valuenow', 'aria-invalid'];
1949
+ 'aria-disabled', 'autocapitalize', 'spellcheck', 'aria-autocomplete', 'tabindex',
1950
+ 'aria-valuemin', 'aria-valuemax', 'aria-live', 'aria-valuenow', 'aria-invalid'];
1949
1951
  for (let i = 0; i < attrArray.length; i++) {
1950
1952
  this.element.removeAttribute(attrArray[i]);
1951
1953
  }
@@ -2244,8 +2246,8 @@ const regularExpressions = {
2244
2246
  */
2245
2247
  function createMask() {
2246
2248
  attributes(this.element, {
2247
- 'role': 'textbox', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'off',
2248
- 'spellcheck': 'false', 'aria-live': 'assertive', 'aria-valuenow': ''
2249
+ 'role': 'textbox', 'autocomplete': 'off', 'autocapitalize': 'off',
2250
+ 'spellcheck': 'false', 'aria-live': 'assertive'
2249
2251
  });
2250
2252
  if (this.mask) {
2251
2253
  const splitMask = this.mask.split(']');
@@ -2934,7 +2936,6 @@ function triggerMaskChangeEvent(event, oldValue) {
2934
2936
  }
2935
2937
  this.preEleVal = this.element.value;
2936
2938
  this.prevValue = strippedValue.call(this, this.element);
2937
- attributes(this.element, { 'aria-valuenow': this.element.value });
2938
2939
  }
2939
2940
  function maskInputKeyUpHandler(event) {
2940
2941
  if (this.mask && !this.readonly) {
@@ -3769,9 +3770,7 @@ let MaskedTextBox = class MaskedTextBox extends Component {
3769
3770
  destroy() {
3770
3771
  unwireEvents.call(this);
3771
3772
  const attrArray = ['aria-labelledby', 'role', 'autocomplete', 'aria-readonly',
3772
- 'autocorrect', 'aria-disabled', 'aria-placeholder', 'autocapitalize',
3773
- 'spellcheck', 'aria-autocomplete',
3774
- 'aria-live', 'aria-valuenow', 'aria-invalid'];
3773
+ 'aria-disabled', 'autocapitalize', 'spellcheck', 'aria-autocomplete', 'aria-live', 'aria-invalid'];
3775
3774
  for (let i = 0; i < attrArray.length; i++) {
3776
3775
  this.element.removeAttribute(attrArray[i]);
3777
3776
  }
@@ -7688,6 +7687,7 @@ let Uploader = class Uploader extends Component {
7688
7687
  this.newFileRef = 0;
7689
7688
  this.isFirstFileOnSelection = false;
7690
7689
  this.dragCounter = 0;
7690
+ this.isAngular = false;
7691
7691
  /**
7692
7692
  * Get the file item(li) which are shown in file list.
7693
7693
  *
@@ -8728,6 +8728,9 @@ let Uploader = class Uploader extends Component {
8728
8728
  targetFiles = [].slice.call(args.target.files);
8729
8729
  this.renderSelectedFiles(args, targetFiles);
8730
8730
  }
8731
+ if (this.isAngular) {
8732
+ args.stopPropagation();
8733
+ }
8731
8734
  }
8732
8735
  /* istanbul ignore next */
8733
8736
  getBase64(file) {
@@ -11038,7 +11041,7 @@ let ColorPicker = class ColorPicker extends Component {
11038
11041
  const wrapper = this.createElement('div', { className: 'e-' + this.getModuleName() + '-wrapper' });
11039
11042
  this.element.parentNode.insertBefore(wrapper, this.element);
11040
11043
  wrapper.appendChild(this.element);
11041
- attributes(this.element, { 'tabindex': '-1', 'spellcheck': 'false' });
11044
+ attributes(this.element, { 'tabindex': '-1', 'spellcheck': 'false', 'aria-label': 'colorpicker' });
11042
11045
  this.container = this.createElement('div', { className: CONTAINER });
11043
11046
  this.getWrapper().appendChild(this.container);
11044
11047
  let value = this.value ? this.roundValue(this.value).toLowerCase() : '#008000ff';
@@ -11235,7 +11238,7 @@ let ColorPicker = class ColorPicker extends Component {
11235
11238
  }
11236
11239
  }
11237
11240
  appendPalette(colors, key, refEle) {
11238
- const palette = this.createElement('div', { className: PALETTES, attrs: { 'tabindex': '0' } });
11241
+ const palette = this.createElement('div', { className: PALETTES, attrs: { 'tabindex': '0', 'role': 'grid' } });
11239
11242
  if (refEle) {
11240
11243
  refEle.appendChild(palette);
11241
11244
  }
@@ -11248,7 +11251,7 @@ let ColorPicker = class ColorPicker extends Component {
11248
11251
  for (let i = 0, len = colors.length; i < len; i++) {
11249
11252
  if (i === 0 || i % this.columns === 0) {
11250
11253
  row = this.createElement('div', {
11251
- className: 'e-row', attrs: { 'role': 'presentation' }
11254
+ className: 'e-row', attrs: { 'role': 'row' }
11252
11255
  });
11253
11256
  palette.appendChild(row);
11254
11257
  }
@@ -13209,7 +13212,7 @@ let TextBox = class TextBox extends Component {
13209
13212
  }
13210
13213
  if (!isNullOrUndefined(this.textboxWrapper)) {
13211
13214
  const label = this.textboxWrapper.container.querySelector('.e-float-text');
13212
- if (!isNullOrUndefined(label)) {
13215
+ if (!isNullOrUndefined(label) && this.floatLabelType !== 'Always') {
13213
13216
  if ((isNullOrUndefined(this.initialValue) || this.initialValue === '')) {
13214
13217
  label.classList.add('e-label-bottom');
13215
13218
  label.classList.remove('e-label-top');
@@ -13231,7 +13234,7 @@ let TextBox = class TextBox extends Component {
13231
13234
  }
13232
13235
  focusOutHandler(args) {
13233
13236
  if (!(this.previousValue === null && this.value === null && this.respectiveElement.value === '') &&
13234
- (this.previousValue !== this.respectiveElement.value)) {
13237
+ (this.previousValue !== this.value)) {
13235
13238
  this.raiseChangeEvent(args, true);
13236
13239
  }
13237
13240
  const eventArgs = {
@@ -13343,7 +13346,7 @@ let TextBox = class TextBox extends Component {
13343
13346
  }
13344
13347
  this.respectiveElement.value = this.respectiveElement.defaultValue;
13345
13348
  this.respectiveElement.classList.remove('e-input');
13346
- this.removeAttributes(['aria-placeholder', 'aria-disabled', 'aria-readonly', 'aria-labelledby']);
13349
+ this.removeAttributes(['aria-disabled', 'aria-readonly', 'aria-labelledby']);
13347
13350
  if (!isNullOrUndefined(this.textboxWrapper)) {
13348
13351
  this.textboxWrapper.container.insertAdjacentElement('afterend', this.respectiveElement);
13349
13352
  detach(this.textboxWrapper.container);
@@ -13538,6 +13541,7 @@ class SignatureBase extends Component {
13538
13541
  this.clearArray = [];
13539
13542
  this.isBlazor = false;
13540
13543
  this.isResponsive = false;
13544
+ this.imageEditorPointsColl = [];
13541
13545
  }
13542
13546
  /**
13543
13547
  * To Initialize the component rendering
@@ -13601,18 +13605,23 @@ class SignatureBase extends Component {
13601
13605
  this.canvasContext.fillStyle = this.strokeColor;
13602
13606
  if (this.backgroundImage) {
13603
13607
  this.canvasContext.canvas.style.backgroundImage = 'url(' + this.backgroundImage + ')';
13604
- this.canvasContext.canvas.style.backgroundRepeat = "no-repeat";
13608
+ this.canvasContext.canvas.style.backgroundRepeat = 'no-repeat';
13605
13609
  }
13606
13610
  else if (this.backgroundColor) {
13607
13611
  this.canvasContext.canvas.style.backgroundColor = this.backgroundColor;
13608
13612
  }
13609
13613
  }
13610
- mouseDownHandler(e) {
13614
+ mouseDownHandler(e, canvas, panStart, zoomState) {
13611
13615
  if (e.buttons === 1 || e.buttons === 2 || e.type === 'touchstart') {
13612
13616
  if (e.type === 'touchstart') {
13613
13617
  e.preventDefault();
13614
13618
  e.stopPropagation();
13615
13619
  }
13620
+ if (canvas) {
13621
+ this.canvasContext = canvas.getContext('2d');
13622
+ this.scale = zoomState;
13623
+ this.panStart = panStart;
13624
+ }
13616
13625
  this.beginStroke(e);
13617
13626
  this.wireEvents();
13618
13627
  }
@@ -13729,10 +13738,34 @@ class SignatureBase extends Component {
13729
13738
  createPoint(e) {
13730
13739
  const rect = this.canvasContext.canvas.getBoundingClientRect();
13731
13740
  if (e.type === 'mousedown' || e.type === 'mousemove') {
13732
- return this.point(e.clientX - rect.left, e.clientY - rect.top, new Date().getTime());
13741
+ // signature
13742
+ if (this.canvasRatio === undefined) {
13743
+ return this.point(e.clientX - rect.left, e.clientY - rect.top, new Date().getTime());
13744
+ }
13745
+ // image editor
13746
+ else if (this.scale === 1) {
13747
+ return this.point(((e.clientX - rect.left) * this.canvasRatio.width) / this.scale, ((e.clientY - rect.top) * this.canvasRatio.height) / this.scale, new Date().getTime());
13748
+ }
13749
+ else {
13750
+ return this.point((((e.clientX - rect.left) + ((this.panStart.startX) / this.canvasRatio.width
13751
+ * this.scale)) / this.scale) * this.canvasRatio.width, (((e.clientY - rect.top) + ((this.panStart.startY) / this.canvasRatio.height
13752
+ * this.scale)) / this.scale) * this.canvasRatio.height, new Date().getTime());
13753
+ }
13733
13754
  }
13734
13755
  else {
13735
- return this.point(e.touches[0].clientX - rect.left, e.touches[0].clientY - rect.top, new Date().getTime());
13756
+ // signature
13757
+ if (this.canvasRatio === undefined) {
13758
+ return this.point(e.touches[0].clientX - rect.left, e.touches[0].clientY - rect.top, new Date().getTime());
13759
+ }
13760
+ // image editor
13761
+ else if (this.scale === 1) {
13762
+ return this.point(((e.touches[0].clientX - rect.left) * this.canvasRatio.width) / this.scale, ((e.touches[0].clientY - rect.top) * this.canvasRatio.height) / this.scale, new Date().getTime());
13763
+ }
13764
+ else {
13765
+ return this.point((e.touches[0].clientX - rect.left) + this.panStart.startX / (this.canvasRatio.width
13766
+ * this.scale), (e.touches[0].clientY - rect.top) + this.panStart.startY / (this.canvasRatio.height
13767
+ * this.scale), new Date().getTime());
13768
+ }
13736
13769
  }
13737
13770
  }
13738
13771
  /* Returns the current point corrdinates(x, y) and time.*/
@@ -13750,6 +13783,7 @@ class SignatureBase extends Component {
13750
13783
  const isLastPointTooClose = lastPoint ? this.distanceTo(lastPoint) <= this.minDistance : false;
13751
13784
  if (!lastPoint || !(lastPoint && isLastPointTooClose)) {
13752
13785
  points.push(point);
13786
+ this.imageEditorPointsColl.push(point);
13753
13787
  if (points.length > 2) {
13754
13788
  if (points.length === 3) {
13755
13789
  points.unshift(points[0]);
@@ -14387,10 +14421,12 @@ class SignatureBase extends Component {
14387
14421
  * @returns {void}
14388
14422
  */
14389
14423
  destroy() {
14390
- this.unwireEvents(null);
14391
- removeClass([this.element], 'e-' + this.getModuleName());
14392
- this.element.removeAttribute('tabindex');
14393
- this.pointColl = null;
14424
+ if (this.getModuleName() !== 'image-editor') {
14425
+ this.unwireEvents(null);
14426
+ removeClass([this.element], 'e-' + this.getModuleName());
14427
+ this.element.removeAttribute('tabindex');
14428
+ this.pointColl = null;
14429
+ }
14394
14430
  super.destroy();
14395
14431
  }
14396
14432
  /**