@syncfusion/ej2-inplace-editor 20.4.42 → 20.4.54

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 20.4.42
3
+ * version : 20.4.54
4
4
  * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-inplace-editor@*",
3
- "_id": "@syncfusion/ej2-inplace-editor@20.4.38",
3
+ "_id": "@syncfusion/ej2-inplace-editor@20.4.48",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-SEjiZ6ECUMpSKePb/64IK7xdIGk2tG8ZtDmaM7m6uJOGo1itwR8mNAypz5u4OMMbv2nTk4bd0BtmfZbWRnrPPg==",
5
+ "_integrity": "sha512-CiaEa6rE/qq8iglhSI9KdsjPMkNSoM8bNu9S6UU4MhmUbDAYysbFXGyhboO8dF0bl6BxQfAbrMG0DEMKQ0EGxA==",
6
6
  "_location": "/@syncfusion/ej2-inplace-editor",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -24,8 +24,8 @@
24
24
  "/@syncfusion/ej2-react-inplace-editor",
25
25
  "/@syncfusion/ej2-vue-inplace-editor"
26
26
  ],
27
- "_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-inplace-editor/-/ej2-inplace-editor-20.4.38.tgz",
28
- "_shasum": "fcc133670af0cf1ae0044b2aff9a2f736711adf3",
27
+ "_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-inplace-editor/-/ej2-inplace-editor-20.4.48.tgz",
28
+ "_shasum": "5429d7334162027ee255a439740d7a70eb0753b9",
29
29
  "_spec": "@syncfusion/ej2-inplace-editor@*",
30
30
  "_where": "/jenkins/workspace/ease-automation_release_19.1.0.1/packages/included",
31
31
  "author": {
@@ -36,17 +36,17 @@
36
36
  },
37
37
  "bundleDependencies": false,
38
38
  "dependencies": {
39
- "@syncfusion/ej2-base": "~20.4.42",
40
- "@syncfusion/ej2-buttons": "~20.4.42",
41
- "@syncfusion/ej2-calendars": "~20.4.42",
42
- "@syncfusion/ej2-data": "~20.4.42",
43
- "@syncfusion/ej2-dropdowns": "~20.4.42",
44
- "@syncfusion/ej2-inputs": "~20.4.42",
45
- "@syncfusion/ej2-lists": "~20.4.42",
46
- "@syncfusion/ej2-navigations": "~20.4.42",
47
- "@syncfusion/ej2-popups": "~20.4.42",
48
- "@syncfusion/ej2-richtexteditor": "~20.4.42",
49
- "@syncfusion/ej2-splitbuttons": "~20.4.42"
39
+ "@syncfusion/ej2-base": "~20.4.51",
40
+ "@syncfusion/ej2-buttons": "~20.4.53",
41
+ "@syncfusion/ej2-calendars": "~20.4.54",
42
+ "@syncfusion/ej2-data": "~20.4.48",
43
+ "@syncfusion/ej2-dropdowns": "~20.4.54",
44
+ "@syncfusion/ej2-inputs": "~20.4.54",
45
+ "@syncfusion/ej2-lists": "~20.4.50",
46
+ "@syncfusion/ej2-navigations": "~20.4.53",
47
+ "@syncfusion/ej2-popups": "~20.4.53",
48
+ "@syncfusion/ej2-richtexteditor": "~20.4.53",
49
+ "@syncfusion/ej2-splitbuttons": "~20.4.50"
50
50
  },
51
51
  "deprecated": false,
52
52
  "description": "A package of Essential JS 2 Inplace editor components, which is used to edit and update the value dynamically in server.",
@@ -69,6 +69,6 @@
69
69
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
70
70
  },
71
71
  "typings": "index.d.ts",
72
- "version": "20.4.42",
72
+ "version": "20.4.54",
73
73
  "sideEffects": false
74
74
  }
@@ -1,4 +1,4 @@
1
- import { Component, INotifyPropertyChanged, NotifyPropertyChanges, Property, Event, EmitType, select } from '@syncfusion/ej2-base';import { detach, addClass, removeClass, EventHandler, setStyleAttribute, Complex, ModuleDeclaration } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, closest, extend, L10n, compile, Browser, Touch, TapEventArgs } from '@syncfusion/ej2-base';import { updateBlazorTemplate, resetBlazorTemplate, SanitizeHtmlHelper, getValue, isBlazor } from '@syncfusion/ej2-base';import { DataManager, UrlAdaptor, Query, WebApiAdaptor, ODataV4Adaptor, ReturnOption, Predicate } from '@syncfusion/ej2-data';import { Button, ButtonModel } from '@syncfusion/ej2-buttons';import { RichTextEditorModel } from '@syncfusion/ej2-richtexteditor';import { DatePicker, DatePickerModel, DateTimePicker, DateRange, RangeEventArgs } from '@syncfusion/ej2-calendars';import { DateTimePickerModel, DateRangePickerModel, TimePickerModel } from '@syncfusion/ej2-calendars';import { createSpinner, hideSpinner, SpinnerArgs, showSpinner} from '@syncfusion/ej2-popups';import { Tooltip, TooltipEventArgs, TipPointerPosition } from '@syncfusion/ej2-popups';import { NumericTextBox, NumericTextBoxModel, TextBox, TextBoxModel, SliderChangeEventArgs } from '@syncfusion/ej2-inputs';import { ColorPickerModel, FormValidator, MaskedTextBox, MaskedTextBoxModel, SliderModel } from '@syncfusion/ej2-inputs';import { ChangeEventArgs as InputChangeEventArgs, ColorPickerEventArgs } from '@syncfusion/ej2-inputs';import { AutoCompleteModel, ComboBoxModel, DropDownList, DropDownListModel, MultiSelectModel } from '@syncfusion/ej2-dropdowns';import { MultiSelectChangeEventArgs, ChangeEventArgs as DropDownsChangeEventArgs } from '@syncfusion/ej2-dropdowns';import { Rte } from '../modules/rte';import { Slider } from '../modules/slider';import { ComboBox } from '../modules/combo-box';import { TimePicker } from '../modules/time-picker';import { MultiSelect } from '../modules/multi-select';import { ColorPicker } from '../modules/color-picker';import { AutoComplete } from '../modules/auto-complete';import { DateRangePicker } from '../modules/date-range-picker';import * as events from './events';import * as classes from './classes';import { PopupSettings, modulesList, localeConstant } from './models';import { PopupSettingsModel } from './models-model';import { ActionBeginEventArgs, ActionEventArgs, FormEventArgs, ValidateEventArgs, IButton, BeginEditEventArgs } from './interface';import { ChangeEventArgs, EndEditEventArgs } from './interface';import { parseValue, getCompValue, encode } from './util';
1
+ import { Component, INotifyPropertyChanged, NotifyPropertyChanges, Property, Event, EmitType, select } from '@syncfusion/ej2-base';import { detach, addClass, removeClass, EventHandler, setStyleAttribute, Complex, ModuleDeclaration } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, closest, extend, L10n, compile, Browser, Touch, TapEventArgs } from '@syncfusion/ej2-base';import { updateBlazorTemplate, resetBlazorTemplate, SanitizeHtmlHelper, getValue, isBlazor } from '@syncfusion/ej2-base';import { DataManager, UrlAdaptor, Query, WebApiAdaptor, ODataV4Adaptor, ReturnOption, Predicate } from '@syncfusion/ej2-data';import { Button, ButtonModel } from '@syncfusion/ej2-buttons';import { RichTextEditorModel } from '@syncfusion/ej2-richtexteditor';import { DatePicker, DatePickerModel, DateTimePicker, DateRange, RangeEventArgs } from '@syncfusion/ej2-calendars';import { DateTimePickerModel, DateRangePickerModel, TimePickerModel } from '@syncfusion/ej2-calendars';import { createSpinner, hideSpinner, SpinnerArgs, showSpinner} from '@syncfusion/ej2-popups';import { Tooltip, TooltipEventArgs, TipPointerPosition } from '@syncfusion/ej2-popups';import { NumericTextBox, NumericTextBoxModel, TextBox, TextBoxModel, SliderChangeEventArgs,ValidArgs } from '@syncfusion/ej2-inputs';import { ColorPickerModel, FormValidator, MaskedTextBox, MaskedTextBoxModel, SliderModel } from '@syncfusion/ej2-inputs';import { ChangeEventArgs as InputChangeEventArgs, ColorPickerEventArgs } from '@syncfusion/ej2-inputs';import { AutoCompleteModel, ComboBoxModel, DropDownList, DropDownListModel, MultiSelectModel } from '@syncfusion/ej2-dropdowns';import { MultiSelectChangeEventArgs, ChangeEventArgs as DropDownsChangeEventArgs } from '@syncfusion/ej2-dropdowns';import { Rte } from '../modules/rte';import { Slider } from '../modules/slider';import { ComboBox } from '../modules/combo-box';import { TimePicker } from '../modules/time-picker';import { MultiSelect } from '../modules/multi-select';import { ColorPicker } from '../modules/color-picker';import { AutoComplete } from '../modules/auto-complete';import { DateRangePicker } from '../modules/date-range-picker';import * as events from './events';import * as classes from './classes';import { PopupSettings, modulesList, localeConstant } from './models';import { PopupSettingsModel } from './models-model';import { ActionBeginEventArgs, ActionEventArgs, FormEventArgs, ValidateEventArgs, IButton, BeginEditEventArgs } from './interface';import { ChangeEventArgs, EndEditEventArgs } from './interface';import { parseValue, getCompValue, encode } from './util';
2
2
  import {RenderMode,AdaptorType,InputType,EditableType,textOptionType,ActionBlur,BeforeSanitizeHtmlArgs} from "./inplace-editor";
3
3
  import {ComponentModel} from '@syncfusion/ej2-base';
4
4
 
@@ -686,7 +686,7 @@ var InPlaceEditor = /** @class */ (function (_super) {
686
686
  this.submitBtn = undefined;
687
687
  }
688
688
  if (!isNOU(this.cancelBtn)) {
689
- EventHandler.remove(this.cancelBtn.element, 'mousedown', this.cancelBtnClick);
689
+ EventHandler.remove(this.cancelBtn.element, 'mouseup', this.cancelBtnClick);
690
690
  EventHandler.remove(this.cancelBtn.element, 'keydown', this.btnKeyDownHandler);
691
691
  this.cancelBtn.destroy();
692
692
  this.cancelBtn = undefined;
@@ -830,6 +830,13 @@ var InPlaceEditor = /** @class */ (function (_super) {
830
830
  var count_1 = 0;
831
831
  this.formValidate = new FormValidator(this.formEle, {
832
832
  rules: this.validationRules,
833
+ validationBegin: function (e) {
834
+ if (_this.type === 'RTE') {
835
+ var ele = document.createElement('div');
836
+ ele.innerHTML = e.value;
837
+ e.value = ele.innerText;
838
+ }
839
+ },
833
840
  validationComplete: function (e) {
834
841
  count_1 = count_1 + 1;
835
842
  args = {
@@ -975,7 +982,7 @@ var InPlaceEditor = /** @class */ (function (_super) {
975
982
  EventHandler.add(this.submitBtn.element, 'keydown', this.btnKeyDownHandler, this);
976
983
  }
977
984
  if (!isNOU(this.cancelBtn)) {
978
- EventHandler.add(this.cancelBtn.element, 'mousedown', this.cancelBtnClick, this);
985
+ EventHandler.add(this.cancelBtn.element, 'mouseup', this.cancelBtnClick, this);
979
986
  EventHandler.add(this.cancelBtn.element, 'keydown', this.btnKeyDownHandler, this);
980
987
  }
981
988
  };
@@ -1284,58 +1291,62 @@ var InPlaceEditor = /** @class */ (function (_super) {
1284
1291
  * @private
1285
1292
  */
1286
1293
  InPlaceEditor.prototype.onPropertyChanged = function (newProp, oldProp) {
1287
- if (this.isEditorOpen()) {
1288
- var editModeChanged = 'enableEditMode' in newProp;
1289
- if ((editModeChanged && oldProp.enableEditMode && !newProp.enableEditMode) || (!editModeChanged && this.enableEditMode)) {
1290
- this.triggerEndEdit('cancel');
1291
- }
1292
- else {
1293
- this.removeEditor();
1294
+ var checkValidation = this.validationRules ? !isNOU(this.element.querySelectorAll('.' + classes.ERROR)) &&
1295
+ this.element.querySelectorAll('.' + classes.ERROR).length > 0 ? false : true : true;
1296
+ if (checkValidation) {
1297
+ if (this.isEditorOpen()) {
1298
+ var editModeChanged = 'enableEditMode' in newProp;
1299
+ if ((editModeChanged && oldProp.enableEditMode && !newProp.enableEditMode) || (!editModeChanged && this.enableEditMode)) {
1300
+ this.triggerEndEdit('cancel');
1301
+ }
1302
+ else {
1303
+ this.removeEditor();
1304
+ }
1294
1305
  }
1295
- }
1296
- for (var _i = 0, _a = Object.keys(newProp); _i < _a.length; _i++) {
1297
- var prop = _a[_i];
1298
- switch (prop) {
1299
- case 'showButtons':
1300
- // eslint-disable-next-line
1301
- (newProp.showButtons) ? this.appendButtons(this.formEle) : this.destroyButtons();
1302
- break;
1303
- case 'value':
1304
- this.updateValue();
1305
- // eslint-disable-next-line
1306
- this.textOption === 'Never' ? this.renderValue(this.checkValue(parseValue(this.type, this.value, this.model)))
1307
- : this.renderInitialValue();
1308
- break;
1309
- case 'emptyText':
1310
- // eslint-disable-next-line
1311
- this.textOption === 'Never' ? this.renderValue(this.checkValue(parseValue(this.type, this.value, this.model)))
1312
- : this.renderInitialValue();
1313
- break;
1314
- case 'template':
1315
- this.checkIsTemplate();
1316
- break;
1317
- case 'disabled':
1318
- this.disable(newProp.disabled);
1319
- break;
1320
- case 'enableRtl':
1321
- this.setRtl(newProp.enableRtl);
1322
- break;
1323
- case 'cssClass':
1324
- this.setClass('remove', oldProp.cssClass);
1325
- this.setClass('add', newProp.cssClass);
1326
- break;
1327
- case 'mode':
1328
- this.enableEditor(this.enableEditMode);
1329
- break;
1330
- case 'enableEditMode':
1331
- this.enableEditor(newProp.enableEditMode);
1332
- break;
1333
- case 'editableOn':
1334
- this.unWireEditEvent(oldProp.editableOn);
1335
- if (newProp.editableOn !== 'EditIconClick') {
1336
- this.wireEditEvent(newProp.editableOn);
1337
- }
1338
- break;
1306
+ for (var _i = 0, _a = Object.keys(newProp); _i < _a.length; _i++) {
1307
+ var prop = _a[_i];
1308
+ switch (prop) {
1309
+ case 'showButtons':
1310
+ // eslint-disable-next-line
1311
+ (newProp.showButtons) ? this.appendButtons(this.formEle) : this.destroyButtons();
1312
+ break;
1313
+ case 'value':
1314
+ this.updateValue();
1315
+ // eslint-disable-next-line
1316
+ this.textOption === 'Never' ? this.renderValue(this.checkValue(parseValue(this.type, this.value, this.model)))
1317
+ : this.renderInitialValue();
1318
+ break;
1319
+ case 'emptyText':
1320
+ // eslint-disable-next-line
1321
+ this.textOption === 'Never' ? this.renderValue(this.checkValue(parseValue(this.type, this.value, this.model)))
1322
+ : this.renderInitialValue();
1323
+ break;
1324
+ case 'template':
1325
+ this.checkIsTemplate();
1326
+ break;
1327
+ case 'disabled':
1328
+ this.disable(newProp.disabled);
1329
+ break;
1330
+ case 'enableRtl':
1331
+ this.setRtl(newProp.enableRtl);
1332
+ break;
1333
+ case 'cssClass':
1334
+ this.setClass('remove', oldProp.cssClass);
1335
+ this.setClass('add', newProp.cssClass);
1336
+ break;
1337
+ case 'mode':
1338
+ this.enableEditor(this.enableEditMode);
1339
+ break;
1340
+ case 'enableEditMode':
1341
+ this.enableEditor(newProp.enableEditMode);
1342
+ break;
1343
+ case 'editableOn':
1344
+ this.unWireEditEvent(oldProp.editableOn);
1345
+ if (newProp.editableOn !== 'EditIconClick') {
1346
+ this.wireEditEvent(newProp.editableOn);
1347
+ }
1348
+ break;
1349
+ }
1339
1350
  }
1340
1351
  }
1341
1352
  };
package/tslint.json ADDED
@@ -0,0 +1,111 @@
1
+ {
2
+ "rules": {
3
+ "chai-vague-errors": true,
4
+ "use-isnan": true,
5
+ "missing-jsdoc": true,
6
+ "missing-optional-annotation": true,
7
+ "no-backbone-get-set-outside-model": true,
8
+ "no-banned-terms": true,
9
+ "no-constant-condition": true,
10
+ "no-control-regex": true,
11
+ "no-cookies": true,
12
+ "no-delete-expression": true,
13
+ "no-document-write": true,
14
+ "no-document-domain": true,
15
+ "no-disable-auto-sanitization": true,
16
+ "no-duplicate-case": true,
17
+ "no-duplicate-parameter-names": true,
18
+ "no-empty-interfaces": true,
19
+ "no-exec-script": true,
20
+ "no-function-constructor-with-string-args": true,
21
+ "no-function-expression": true,
22
+ "no-invalid-regexp": true,
23
+ "no-for-in": true,
24
+ "member-access": true,
25
+ "no-multiline-string": true,
26
+ "no-multiple-var-decl": true,
27
+ "no-unnecessary-bind": true,
28
+ "no-unnecessary-semicolons": true,
29
+ "no-octal-literal": true,
30
+ "no-regex-spaces": true,
31
+ "no-sparse-arrays": true,
32
+ "no-string-based-set-immediate": true,
33
+ "no-string-based-set-interval": true,
34
+ "no-unused-imports": true,
35
+ "no-with-statement": true,
36
+ "prefer-array-literal": true,
37
+ "promise-must-complete": false,
38
+ "react-no-dangerous-html": true,
39
+ "use-named-parameter": true,
40
+ "valid-typeof": true,
41
+ "max-func-body-length": [true, 100, {
42
+ "ignore-parameters-to-function-regex": "describe"
43
+ }],
44
+ "class-name": true,
45
+ "curly": true,
46
+ "eofline": false,
47
+ "forin": true,
48
+ "indent": [
49
+ true,
50
+ "spaces"
51
+ ],
52
+ "label-position": true,
53
+ "max-line-length": [true, 140],
54
+ "no-arg": true,
55
+ "no-console": [true,
56
+ "debug",
57
+ "info",
58
+ "log",
59
+ "time",
60
+ "timeEnd",
61
+ "trace"
62
+ ],
63
+ "no-construct": true,
64
+ "no-parameter-properties": true,
65
+ "no-debugger": true,
66
+ "no-duplicate-variable": true,
67
+ "no-empty": true,
68
+ "no-eval": true,
69
+ "no-string-literal": true,
70
+ "no-switch-case-fall-through": true,
71
+ "trailing-comma": true,
72
+ "no-trailing-whitespace": true,
73
+ "no-unused-expression": true,
74
+ "no-use-before-declare": false,
75
+ "no-var-requires": true,
76
+ "one-line": [true,
77
+ "check-open-brace",
78
+ "check-catch",
79
+ "check-else",
80
+ "check-whitespace"
81
+ ],
82
+ "no-any": true,
83
+ "no-conditional-assignment": true,
84
+ "no-angle-bracket-type-assertion": false,
85
+ "align": [true, "parameters", "arguments", "statements"],
86
+ "no-empty-line-after-opening-brace": false,
87
+ "typedef-whitespace": [false],
88
+ "ban": true,
89
+ "quotemark": [true, "single"],
90
+ "semicolon": true,
91
+ "triple-equals": [true, "allow-null-check"],
92
+ "typedef": [true,
93
+ "call-signature",
94
+ "parameter",
95
+ "property-declaration",
96
+ "variable-declaration",
97
+ "arrow-parameter",
98
+ "member-variable-declaration"],
99
+ "variable-name": true,
100
+ "whitespace": [true,
101
+ "check-branch",
102
+ "check-decl",
103
+ "check-operator",
104
+ "check-separator",
105
+ "check-type"
106
+ ],
107
+ "jsdoc-format": true,
108
+ "no-var-keyword": true,
109
+ "radix": true
110
+ }
111
+ }