@syncfusion/ej2-inputs 20.2.48 → 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 (240) hide show
  1. package/CHANGELOG.md +0 -6
  2. package/dist/ej2-inputs.min.js +10 -0
  3. package/dist/ej2-inputs.umd.min.js +2 -2
  4. package/dist/ej2-inputs.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-inputs.es2015.js +77 -45
  6. package/dist/es6/ej2-inputs.es2015.js.map +1 -1
  7. package/dist/es6/ej2-inputs.es5.js +77 -45
  8. package/dist/es6/ej2-inputs.es5.js.map +1 -1
  9. package/dist/global/ej2-inputs.min.js +2 -2
  10. package/dist/global/ej2-inputs.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +11 -10
  13. package/src/color-picker/color-picker.js +3 -3
  14. package/src/common/signature-base.d.ts +77 -1
  15. package/src/common/signature-base.js +41 -8
  16. package/src/input/input.d.ts +11 -11
  17. package/src/input/input.js +19 -19
  18. package/src/maskedtextbox/base/mask-base.js +2 -3
  19. package/src/maskedtextbox/maskedtextbox/maskedtextbox.js +1 -3
  20. package/src/numerictextbox/numerictextbox.js +10 -8
  21. package/src/textbox/textbox.js +1 -1
  22. package/styles/bootstrap-dark.css +31 -13
  23. package/styles/bootstrap.css +31 -13
  24. package/styles/bootstrap4.css +31 -13
  25. package/styles/bootstrap5-dark.css +32 -13
  26. package/styles/bootstrap5.css +32 -13
  27. package/styles/color-picker/_all.scss +1 -1
  28. package/styles/color-picker/_bootstrap-dark-definition.scss +2 -1
  29. package/styles/color-picker/_bootstrap5-definition.scss +0 -1
  30. package/styles/color-picker/_fabric-dark-definition.scss +2 -1
  31. package/styles/color-picker/_fluent-definition.scss +0 -1
  32. package/styles/color-picker/_fusionnew-definition.scss +0 -1
  33. package/styles/color-picker/_highcontrast-light-definition.scss +2 -1
  34. package/styles/color-picker/_layout.scss +2 -3
  35. package/styles/color-picker/_material-dark-definition.scss +2 -1
  36. package/styles/color-picker/_material3-definition.scss +0 -1
  37. package/styles/color-picker/_theme.scss +3 -3
  38. package/styles/color-picker/bootstrap-dark.css +2 -0
  39. package/styles/color-picker/bootstrap.css +2 -0
  40. package/styles/color-picker/bootstrap4.css +2 -0
  41. package/styles/color-picker/bootstrap5-dark.css +3 -0
  42. package/styles/color-picker/bootstrap5.css +3 -0
  43. package/styles/color-picker/fabric-dark.css +2 -0
  44. package/styles/color-picker/fabric.css +2 -0
  45. package/styles/color-picker/fluent-dark.css +3 -0
  46. package/styles/color-picker/fluent.css +3 -0
  47. package/styles/color-picker/highcontrast-light.css +2 -0
  48. package/styles/color-picker/highcontrast.css +2 -0
  49. package/styles/color-picker/icons/_bootstrap4.scss +1 -2
  50. package/styles/color-picker/icons/_bootstrap5.scss +1 -2
  51. package/styles/color-picker/icons/_fabric-dark.scss +2 -3
  52. package/styles/color-picker/icons/_fluent.scss +1 -2
  53. package/styles/color-picker/icons/_fusionnew.scss +1 -2
  54. package/styles/color-picker/icons/_material3.scss +1 -2
  55. package/styles/color-picker/icons/_tailwind-dark.scss +1 -2
  56. package/styles/color-picker/icons/_tailwind.scss +1 -2
  57. package/styles/color-picker/material-dark.css +2 -0
  58. package/styles/color-picker/material.css +2 -0
  59. package/styles/color-picker/tailwind-dark.css +3 -0
  60. package/styles/color-picker/tailwind.css +3 -0
  61. package/styles/fabric-dark.css +31 -13
  62. package/styles/fabric.css +31 -13
  63. package/styles/fluent-dark.css +32 -13
  64. package/styles/fluent.css +32 -13
  65. package/styles/highcontrast-light.css +31 -13
  66. package/styles/highcontrast.css +31 -13
  67. package/styles/input/_all.scss +1 -1
  68. package/styles/input/_bootstrap-dark-definition.scss +19 -1
  69. package/styles/input/_bootstrap-definition.scss +18 -2
  70. package/styles/input/_bootstrap4-definition.scss +17 -1
  71. package/styles/input/_bootstrap5-definition.scss +17 -2
  72. package/styles/input/_definition.scss +16 -1
  73. package/styles/input/_fabric-dark-definition.scss +16 -2
  74. package/styles/input/_fabric-definition.scss +15 -1
  75. package/styles/input/_fluent-definition.scss +19 -4
  76. package/styles/input/_fusionnew-definition.scss +17 -2
  77. package/styles/input/_highcontrast-definition.scss +17 -1
  78. package/styles/input/_highcontrast-light-definition.scss +18 -2
  79. package/styles/input/_layout.scss +313 -351
  80. package/styles/input/_material-dark-definition.scss +24 -7
  81. package/styles/input/_material-definition.scss +23 -7
  82. package/styles/input/_material3-definition.scss +17 -2
  83. package/styles/input/_responsive.scss +1 -1
  84. package/styles/input/_tailwind-definition.scss +17 -1
  85. package/styles/input/_theme.scss +248 -256
  86. package/styles/input/bootstrap-dark.css +22 -14
  87. package/styles/input/bootstrap.css +22 -14
  88. package/styles/input/bootstrap4.css +22 -14
  89. package/styles/input/bootstrap5-dark.css +22 -14
  90. package/styles/input/bootstrap5.css +22 -14
  91. package/styles/input/fabric-dark.css +22 -14
  92. package/styles/input/fabric.css +22 -14
  93. package/styles/input/fluent-dark.css +22 -14
  94. package/styles/input/fluent.css +22 -14
  95. package/styles/input/highcontrast-light.css +22 -14
  96. package/styles/input/highcontrast.css +22 -14
  97. package/styles/input/material-dark.css +26 -18
  98. package/styles/input/material.css +26 -18
  99. package/styles/input/tailwind-dark.css +22 -14
  100. package/styles/input/tailwind.css +22 -14
  101. package/styles/maskedtextbox/_all.scss +1 -1
  102. package/styles/maskedtextbox/_bootstrap-dark-definition.scss +2 -1
  103. package/styles/maskedtextbox/_bootstrap-definition.scss +0 -1
  104. package/styles/maskedtextbox/_bootstrap4-definition.scss +0 -1
  105. package/styles/maskedtextbox/_fabric-dark-definition.scss +1 -0
  106. package/styles/maskedtextbox/_highcontrast-light-definition.scss +1 -0
  107. package/styles/maskedtextbox/_layout.scss +7 -6
  108. package/styles/maskedtextbox/_material-dark-definition.scss +1 -0
  109. package/styles/maskedtextbox/_theme.scss +4 -3
  110. package/styles/maskedtextbox/bootstrap-dark.css +1 -0
  111. package/styles/maskedtextbox/bootstrap.css +1 -0
  112. package/styles/maskedtextbox/bootstrap4.css +1 -0
  113. package/styles/maskedtextbox/bootstrap5-dark.css +1 -0
  114. package/styles/maskedtextbox/bootstrap5.css +1 -0
  115. package/styles/maskedtextbox/fabric-dark.css +1 -0
  116. package/styles/maskedtextbox/fabric.css +1 -0
  117. package/styles/maskedtextbox/fluent-dark.css +1 -0
  118. package/styles/maskedtextbox/fluent.css +1 -0
  119. package/styles/maskedtextbox/highcontrast-light.css +1 -0
  120. package/styles/maskedtextbox/highcontrast.css +1 -0
  121. package/styles/maskedtextbox/material-dark.css +1 -0
  122. package/styles/maskedtextbox/material.css +1 -0
  123. package/styles/maskedtextbox/tailwind-dark.css +1 -0
  124. package/styles/maskedtextbox/tailwind.css +1 -0
  125. package/styles/material-dark.css +50 -18
  126. package/styles/material.css +50 -18
  127. package/styles/numerictextbox/_all.scss +1 -1
  128. package/styles/numerictextbox/_bootstrap-dark-definition.scss +2 -1
  129. package/styles/numerictextbox/_fabric-dark-definition.scss +2 -1
  130. package/styles/numerictextbox/_highcontrast-light-definition.scss +2 -1
  131. package/styles/numerictextbox/_material-dark-definition.scss +2 -1
  132. package/styles/numerictextbox/bootstrap-dark.css +1 -0
  133. package/styles/numerictextbox/bootstrap.css +1 -0
  134. package/styles/numerictextbox/bootstrap4.css +1 -0
  135. package/styles/numerictextbox/bootstrap5-dark.css +1 -0
  136. package/styles/numerictextbox/bootstrap5.css +1 -0
  137. package/styles/numerictextbox/fabric-dark.css +1 -0
  138. package/styles/numerictextbox/fabric.css +1 -0
  139. package/styles/numerictextbox/fluent-dark.css +1 -0
  140. package/styles/numerictextbox/fluent.css +1 -0
  141. package/styles/numerictextbox/highcontrast-light.css +1 -0
  142. package/styles/numerictextbox/highcontrast.css +1 -0
  143. package/styles/numerictextbox/icons/_bootstrap5.scss +0 -1
  144. package/styles/numerictextbox/icons/_fluent.scss +0 -1
  145. package/styles/numerictextbox/icons/_fusionnew.scss +0 -1
  146. package/styles/numerictextbox/icons/_material3.scss +0 -1
  147. package/styles/numerictextbox/icons/_tailwind.scss +0 -1
  148. package/styles/numerictextbox/material-dark.css +1 -0
  149. package/styles/numerictextbox/material.css +1 -0
  150. package/styles/numerictextbox/tailwind-dark.css +1 -0
  151. package/styles/numerictextbox/tailwind.css +1 -0
  152. package/styles/signature/_all.scss +1 -1
  153. package/styles/slider/_all.scss +1 -1
  154. package/styles/slider/_bootstrap-dark-definition.scss +1 -0
  155. package/styles/slider/_fabric-dark-definition.scss +1 -0
  156. package/styles/slider/_highcontrast-light-definition.scss +1 -0
  157. package/styles/slider/_icons.scss +1 -0
  158. package/styles/slider/_layout.scss +23 -26
  159. package/styles/slider/_material-dark-definition.scss +1 -0
  160. package/styles/slider/_theme.scss +2 -1
  161. package/styles/slider/bootstrap-dark.css +4 -0
  162. package/styles/slider/bootstrap.css +4 -0
  163. package/styles/slider/bootstrap4.css +4 -0
  164. package/styles/slider/bootstrap5-dark.css +4 -0
  165. package/styles/slider/bootstrap5.css +4 -0
  166. package/styles/slider/fabric-dark.css +4 -0
  167. package/styles/slider/fabric.css +4 -0
  168. package/styles/slider/fluent-dark.css +4 -0
  169. package/styles/slider/fluent.css +4 -0
  170. package/styles/slider/highcontrast-light.css +4 -0
  171. package/styles/slider/highcontrast.css +4 -0
  172. package/styles/slider/material-dark.css +19 -1
  173. package/styles/slider/material.css +19 -1
  174. package/styles/slider/tailwind-dark.css +4 -0
  175. package/styles/slider/tailwind.css +4 -0
  176. package/styles/tailwind-dark.css +33 -13
  177. package/styles/tailwind.css +33 -13
  178. package/styles/textbox/_all.scss +1 -1
  179. package/styles/textbox/_bootstrap-dark-definition.scss +1 -1
  180. package/styles/textbox/_bootstrap-definition.scss +1 -1
  181. package/styles/textbox/_bootstrap4-definition.scss +1 -1
  182. package/styles/textbox/_bootstrap5-definition.scss +1 -0
  183. package/styles/textbox/_fabric-dark-definition.scss +1 -1
  184. package/styles/textbox/_fabric-definition.scss +1 -1
  185. package/styles/textbox/_fluent-definition.scss +1 -0
  186. package/styles/textbox/_fusionnew-definition.scss +1 -0
  187. package/styles/textbox/_highcontrast-definition.scss +1 -1
  188. package/styles/textbox/_highcontrast-light-definition.scss +1 -1
  189. package/styles/textbox/_material-dark-definition.scss +1 -1
  190. package/styles/textbox/_material-definition.scss +1 -1
  191. package/styles/textbox/_material3-definition.scss +1 -0
  192. package/styles/textbox/_tailwind-definition.scss +1 -0
  193. package/styles/textbox/_theme.scss +1 -0
  194. package/styles/textbox/bootstrap-dark.css +2 -0
  195. package/styles/textbox/bootstrap.css +2 -0
  196. package/styles/textbox/bootstrap4.css +2 -0
  197. package/styles/textbox/bootstrap5-dark.css +2 -0
  198. package/styles/textbox/bootstrap5.css +2 -0
  199. package/styles/textbox/fabric-dark.css +2 -0
  200. package/styles/textbox/fabric.css +2 -0
  201. package/styles/textbox/fluent-dark.css +2 -0
  202. package/styles/textbox/fluent.css +2 -0
  203. package/styles/textbox/highcontrast-light.css +2 -0
  204. package/styles/textbox/highcontrast.css +2 -0
  205. package/styles/textbox/material-dark.css +3 -1
  206. package/styles/textbox/material.css +3 -1
  207. package/styles/textbox/tailwind-dark.css +3 -1
  208. package/styles/textbox/tailwind.css +3 -1
  209. package/styles/uploader/_all.scss +1 -1
  210. package/styles/uploader/_bootstrap-dark-definition.scss +3 -1
  211. package/styles/uploader/_bootstrap-definition.scss +2 -1
  212. package/styles/uploader/_bootstrap4-definition.scss +2 -1
  213. package/styles/uploader/_bootstrap5-definition.scss +1 -1
  214. package/styles/uploader/_fabric-dark-definition.scss +3 -1
  215. package/styles/uploader/_fabric-definition.scss +2 -0
  216. package/styles/uploader/_fluent-definition.scss +1 -1
  217. package/styles/uploader/_fusionnew-definition.scss +1 -1
  218. package/styles/uploader/_highcontrast-definition.scss +2 -0
  219. package/styles/uploader/_highcontrast-light-definition.scss +5 -2
  220. package/styles/uploader/_layout.scss +2 -3
  221. package/styles/uploader/_material-dark-definition.scss +4 -1
  222. package/styles/uploader/_material-definition.scss +1 -0
  223. package/styles/uploader/_material3-definition.scss +1 -1
  224. package/styles/uploader/_tailwind-definition.scss +2 -1
  225. package/styles/uploader/_theme.scss +2 -5
  226. package/styles/uploader/bootstrap-dark.css +1 -0
  227. package/styles/uploader/bootstrap.css +1 -0
  228. package/styles/uploader/bootstrap4.css +1 -0
  229. package/styles/uploader/bootstrap5-dark.css +1 -0
  230. package/styles/uploader/bootstrap5.css +1 -0
  231. package/styles/uploader/fabric-dark.css +1 -0
  232. package/styles/uploader/fabric.css +1 -0
  233. package/styles/uploader/fluent-dark.css +1 -0
  234. package/styles/uploader/fluent.css +1 -0
  235. package/styles/uploader/highcontrast-light.css +1 -0
  236. package/styles/uploader/highcontrast.css +1 -0
  237. package/styles/uploader/material-dark.css +1 -0
  238. package/styles/uploader/material.css +1 -0
  239. package/styles/uploader/tailwind-dark.css +2 -0
  240. 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 || element.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
  }
@@ -11042,7 +11041,7 @@ let ColorPicker = class ColorPicker extends Component {
11042
11041
  const wrapper = this.createElement('div', { className: 'e-' + this.getModuleName() + '-wrapper' });
11043
11042
  this.element.parentNode.insertBefore(wrapper, this.element);
11044
11043
  wrapper.appendChild(this.element);
11045
- attributes(this.element, { 'tabindex': '-1', 'spellcheck': 'false' });
11044
+ attributes(this.element, { 'tabindex': '-1', 'spellcheck': 'false', 'aria-label': 'colorpicker' });
11046
11045
  this.container = this.createElement('div', { className: CONTAINER });
11047
11046
  this.getWrapper().appendChild(this.container);
11048
11047
  let value = this.value ? this.roundValue(this.value).toLowerCase() : '#008000ff';
@@ -11239,7 +11238,7 @@ let ColorPicker = class ColorPicker extends Component {
11239
11238
  }
11240
11239
  }
11241
11240
  appendPalette(colors, key, refEle) {
11242
- const palette = this.createElement('div', { className: PALETTES, attrs: { 'tabindex': '0' } });
11241
+ const palette = this.createElement('div', { className: PALETTES, attrs: { 'tabindex': '0', 'role': 'grid' } });
11243
11242
  if (refEle) {
11244
11243
  refEle.appendChild(palette);
11245
11244
  }
@@ -11252,7 +11251,7 @@ let ColorPicker = class ColorPicker extends Component {
11252
11251
  for (let i = 0, len = colors.length; i < len; i++) {
11253
11252
  if (i === 0 || i % this.columns === 0) {
11254
11253
  row = this.createElement('div', {
11255
- className: 'e-row', attrs: { 'role': 'presentation' }
11254
+ className: 'e-row', attrs: { 'role': 'row' }
11256
11255
  });
11257
11256
  palette.appendChild(row);
11258
11257
  }
@@ -13347,7 +13346,7 @@ let TextBox = class TextBox extends Component {
13347
13346
  }
13348
13347
  this.respectiveElement.value = this.respectiveElement.defaultValue;
13349
13348
  this.respectiveElement.classList.remove('e-input');
13350
- this.removeAttributes(['aria-placeholder', 'aria-disabled', 'aria-readonly', 'aria-labelledby']);
13349
+ this.removeAttributes(['aria-disabled', 'aria-readonly', 'aria-labelledby']);
13351
13350
  if (!isNullOrUndefined(this.textboxWrapper)) {
13352
13351
  this.textboxWrapper.container.insertAdjacentElement('afterend', this.respectiveElement);
13353
13352
  detach(this.textboxWrapper.container);
@@ -13542,6 +13541,7 @@ class SignatureBase extends Component {
13542
13541
  this.clearArray = [];
13543
13542
  this.isBlazor = false;
13544
13543
  this.isResponsive = false;
13544
+ this.imageEditorPointsColl = [];
13545
13545
  }
13546
13546
  /**
13547
13547
  * To Initialize the component rendering
@@ -13605,18 +13605,23 @@ class SignatureBase extends Component {
13605
13605
  this.canvasContext.fillStyle = this.strokeColor;
13606
13606
  if (this.backgroundImage) {
13607
13607
  this.canvasContext.canvas.style.backgroundImage = 'url(' + this.backgroundImage + ')';
13608
- this.canvasContext.canvas.style.backgroundRepeat = "no-repeat";
13608
+ this.canvasContext.canvas.style.backgroundRepeat = 'no-repeat';
13609
13609
  }
13610
13610
  else if (this.backgroundColor) {
13611
13611
  this.canvasContext.canvas.style.backgroundColor = this.backgroundColor;
13612
13612
  }
13613
13613
  }
13614
- mouseDownHandler(e) {
13614
+ mouseDownHandler(e, canvas, panStart, zoomState) {
13615
13615
  if (e.buttons === 1 || e.buttons === 2 || e.type === 'touchstart') {
13616
13616
  if (e.type === 'touchstart') {
13617
13617
  e.preventDefault();
13618
13618
  e.stopPropagation();
13619
13619
  }
13620
+ if (canvas) {
13621
+ this.canvasContext = canvas.getContext('2d');
13622
+ this.scale = zoomState;
13623
+ this.panStart = panStart;
13624
+ }
13620
13625
  this.beginStroke(e);
13621
13626
  this.wireEvents();
13622
13627
  }
@@ -13733,10 +13738,34 @@ class SignatureBase extends Component {
13733
13738
  createPoint(e) {
13734
13739
  const rect = this.canvasContext.canvas.getBoundingClientRect();
13735
13740
  if (e.type === 'mousedown' || e.type === 'mousemove') {
13736
- 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
+ }
13737
13754
  }
13738
13755
  else {
13739
- 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
+ }
13740
13769
  }
13741
13770
  }
13742
13771
  /* Returns the current point corrdinates(x, y) and time.*/
@@ -13754,6 +13783,7 @@ class SignatureBase extends Component {
13754
13783
  const isLastPointTooClose = lastPoint ? this.distanceTo(lastPoint) <= this.minDistance : false;
13755
13784
  if (!lastPoint || !(lastPoint && isLastPointTooClose)) {
13756
13785
  points.push(point);
13786
+ this.imageEditorPointsColl.push(point);
13757
13787
  if (points.length > 2) {
13758
13788
  if (points.length === 3) {
13759
13789
  points.unshift(points[0]);
@@ -14391,10 +14421,12 @@ class SignatureBase extends Component {
14391
14421
  * @returns {void}
14392
14422
  */
14393
14423
  destroy() {
14394
- this.unwireEvents(null);
14395
- removeClass([this.element], 'e-' + this.getModuleName());
14396
- this.element.removeAttribute('tabindex');
14397
- 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
+ }
14398
14430
  super.destroy();
14399
14431
  }
14400
14432
  /**