@refinitiv-ui/efx-grid 6.0.93 → 6.0.94
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/lib/formatters/es6/CoralButtonFormatter.d.ts +0 -2
- package/lib/formatters/es6/CoralButtonFormatter.js +9 -4
- package/lib/formatters/es6/CoralCheckboxFormatter.js +10 -5
- package/lib/formatters/es6/CoralComboBoxFormatter.js +13 -12
- package/lib/formatters/es6/CoralIconFormatter.d.ts +0 -2
- package/lib/formatters/es6/CoralIconFormatter.js +9 -4
- package/lib/formatters/es6/CoralInputFormatter.js +9 -4
- package/lib/formatters/es6/CoralRadioButtonFormatter.d.ts +0 -2
- package/lib/formatters/es6/CoralRadioButtonFormatter.js +20 -15
- package/lib/formatters/es6/CoralSelectFormatter.js +12 -7
- package/lib/formatters/es6/CoralToggleFormatter.js +4 -4
- package/lib/formatters/es6/DuplexEmeraldDateTimePickerFormatter.js +20 -20
- package/lib/formatters/es6/EFButtonFormatter.d.ts +0 -2
- package/lib/formatters/es6/EFButtonFormatter.js +9 -4
- package/lib/formatters/es6/EFCheckboxFormatter.js +10 -5
- package/lib/formatters/es6/EFComboBoxFormatter.js +17 -7
- package/lib/formatters/es6/EFDateTimePickerFormatter.js +11 -6
- package/lib/formatters/es6/EFIconFormatter.d.ts +0 -2
- package/lib/formatters/es6/EFIconFormatter.js +9 -4
- package/lib/formatters/es6/EFNumberFieldFormatter.js +9 -4
- package/lib/formatters/es6/EFRadioButtonFormatter.d.ts +0 -2
- package/lib/formatters/es6/EFRadioButtonFormatter.js +25 -15
- package/lib/formatters/es6/EFSelectFormatter.js +17 -7
- package/lib/formatters/es6/EFTextFieldFormatter.js +4 -4
- package/lib/formatters/es6/EFToggleFormatter.js +4 -4
- package/lib/formatters/es6/EmeraldDateTimePickerFormatter.js +6 -6
- package/lib/formatters/es6/FormatterBuilder.js +32 -32
- package/lib/formatters/es6/NumericInputFormatter.js +7 -7
- package/lib/formatters/es6/PercentBarFormatter.js +5 -5
- package/lib/formatters/es6/SimpleImageFormatter.js +3 -3
- package/lib/formatters/es6/SimpleInputFormatter.js +4 -4
- package/lib/formatters/es6/SimpleLinkFormatter.js +4 -4
- package/lib/formatters/es6/SimpleTickerFormatter.js +5 -5
- package/lib/formatters/es6/SimpleToggleFormatter.js +16 -16
- package/lib/formatters/es6/TextFormatter.js +4 -4
- package/lib/grid/index.js +1 -1
- package/lib/tr-grid-cell-selection/es6/CellSelection.js +1 -1
- package/lib/tr-grid-row-dragging/es6/RowDragging.js +1 -1
- package/lib/tr-grid-row-grouping/es6/RowGrouping.js +139 -137
- package/lib/tr-grid-row-selection/es6/RowSelection.js +260 -279
- package/lib/tr-grid-util/es6/DragUI.js +1 -1
- package/lib/types/es6/ColumnGrouping.d.ts +1 -2
- package/lib/versions.json +6 -6
- package/package.json +1 -1
@@ -6,19 +6,24 @@ import ElfDate from "../../tr-grid-util/es6/ElfDate.js";
|
|
6
6
|
* @param {Object} ctx Context object
|
7
7
|
* @param {Object} options User options
|
8
8
|
*/
|
9
|
-
|
9
|
+
let onContextCreated = function (ctx, options) {
|
10
10
|
ctx.ElfDate = ElfDate;
|
11
11
|
};
|
12
12
|
|
13
|
-
|
13
|
+
/** @private
|
14
|
+
* @function
|
15
|
+
* @param {Element} element
|
16
|
+
* @param {Object} ctx
|
17
|
+
*/
|
18
|
+
let onElementUpdated = function (element, ctx) {
|
14
19
|
if (!ctx.ElfDate.equal(element.value, ctx.value)) {
|
15
20
|
ctx.ElfDate.setDate(element, ctx.value);
|
16
21
|
}
|
17
22
|
};
|
18
23
|
|
19
|
-
|
24
|
+
let _changeHandler = function (e, ctx) {
|
20
25
|
ctx.value = ctx.ElfDate.getDate(e.detail);
|
21
|
-
|
26
|
+
let currentData = ctx.getData(ctx.field);
|
22
27
|
if (!ctx.ElfDate.equal(currentData, ctx.value)) {
|
23
28
|
ctx.setData(ctx.field, ctx.value);
|
24
29
|
}
|
@@ -27,7 +32,7 @@ var _changeHandler = function (e, ctx) {
|
|
27
32
|
/** @constructor
|
28
33
|
* @param {*=} options
|
29
34
|
*/
|
30
|
-
|
35
|
+
let EFDateTimePickerFormatter = function (options) {
|
31
36
|
|
32
37
|
};
|
33
38
|
|
@@ -36,7 +41,7 @@ var EFDateTimePickerFormatter = function (options) {
|
|
36
41
|
* @return {Object}
|
37
42
|
*/
|
38
43
|
EFDateTimePickerFormatter.create = function (options) {
|
39
|
-
|
44
|
+
let defaultOpt = {
|
40
45
|
tagName: "ef-datetime-picker",
|
41
46
|
refName: "EFDateTimePickerFormatter",
|
42
47
|
onContextCreated: onContextCreated,
|
@@ -6,8 +6,13 @@ import FormatterBuilder from "./FormatterBuilder.js";
|
|
6
6
|
* @property {(number|string)=} size
|
7
7
|
*/
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
/** @private
|
10
|
+
* @function
|
11
|
+
* @param {Element} element
|
12
|
+
* @param {Object} ctx
|
13
|
+
*/
|
14
|
+
let onElementUpdated = function (element, ctx) {
|
15
|
+
let icon = ctx.value;
|
11
16
|
if (ctx.icon != null && typeof ctx.icon === "object") {
|
12
17
|
icon = ctx.icon[ctx.value];
|
13
18
|
}
|
@@ -21,7 +26,7 @@ var onElementUpdated = function (element, ctx) {
|
|
21
26
|
/** @constructor
|
22
27
|
* @param {*=} options
|
23
28
|
*/
|
24
|
-
|
29
|
+
let EFIconFormatter = function (options) {
|
25
30
|
|
26
31
|
};
|
27
32
|
|
@@ -30,7 +35,7 @@ var EFIconFormatter = function (options) {
|
|
30
35
|
* @return {Object}
|
31
36
|
*/
|
32
37
|
EFIconFormatter.create = function (options) {
|
33
|
-
|
38
|
+
let defaultOpt = {
|
34
39
|
tagName: "ef-icon",
|
35
40
|
refName: "EFIconFormatter",
|
36
41
|
onElementUpdated: onElementUpdated,
|
@@ -1,10 +1,15 @@
|
|
1
1
|
import FormatterBuilder from "./FormatterBuilder.js";
|
2
2
|
|
3
|
-
|
3
|
+
/** @private
|
4
|
+
* @function
|
5
|
+
* @param {Element} element
|
6
|
+
* @param {Object} ctx
|
7
|
+
*/
|
8
|
+
let onElementUpdated = function (element, ctx) {
|
4
9
|
element.value = ctx.value;
|
5
10
|
};
|
6
11
|
|
7
|
-
|
12
|
+
let _changeHandler = function (e, ctx) {
|
8
13
|
ctx.value = e.detail.value;
|
9
14
|
ctx.setData(ctx.field, ctx.value);
|
10
15
|
};
|
@@ -12,7 +17,7 @@ var _changeHandler = function (e, ctx) {
|
|
12
17
|
/** @constructor
|
13
18
|
* @param {*=} options
|
14
19
|
*/
|
15
|
-
|
20
|
+
let EFNumberFieldFormatter = function (options) {
|
16
21
|
|
17
22
|
};
|
18
23
|
|
@@ -21,7 +26,7 @@ var EFNumberFieldFormatter = function (options) {
|
|
21
26
|
* @return {Object}
|
22
27
|
*/
|
23
28
|
EFNumberFieldFormatter.create = function (options) {
|
24
|
-
|
29
|
+
let defaultOpt = {
|
25
30
|
tagName: "ef-number-field",
|
26
31
|
refName: "EFNumberFieldFormatter",
|
27
32
|
onElementUpdated: onElementUpdated,
|
@@ -5,11 +5,16 @@ import FormatterBuilder from "./FormatterBuilder.js";
|
|
5
5
|
* @property {number=} initialIndex
|
6
6
|
*/
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
8
|
+
/** @private
|
9
|
+
* @function
|
10
|
+
* @param {Element} element
|
11
|
+
* @param {Object} ctx
|
12
|
+
*/
|
13
|
+
let onElementCreated = function (element, ctx) {
|
14
|
+
let dv = ctx.grid.getDataSource();
|
15
|
+
let rid = dv.getRowId(ctx.rowIndex);
|
16
|
+
let index = dv.getRowIndex(rid);
|
17
|
+
let checked = index === ctx.initialIndex;
|
13
18
|
if (checked) {
|
14
19
|
ctx.previousId = rid;
|
15
20
|
ctx.setData(ctx.field, checked);
|
@@ -17,10 +22,15 @@ var onElementCreated = function (element, ctx) {
|
|
17
22
|
ctx.value = checked;
|
18
23
|
};
|
19
24
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
25
|
+
/** @private
|
26
|
+
* @function
|
27
|
+
* @param {Element} element
|
28
|
+
* @param {Object} ctx
|
29
|
+
*/
|
30
|
+
let onElementUpdated = function (element, ctx) {
|
31
|
+
let dv = ctx.grid.getDataSource();
|
32
|
+
let rid = dv.getRowId(ctx.rowIndex);
|
33
|
+
let checked = (rid === ctx.previousId) && ctx.value;
|
24
34
|
element.checked = checked;
|
25
35
|
};
|
26
36
|
|
@@ -29,14 +39,14 @@ var onElementUpdated = function (element, ctx) {
|
|
29
39
|
* @param {*} e
|
30
40
|
* @param {*} ctx
|
31
41
|
*/
|
32
|
-
|
42
|
+
let _changeHandler = function (e, ctx) {
|
33
43
|
ctx.value = e.detail.value;
|
34
44
|
ctx.setData(ctx.field, ctx.value);
|
35
45
|
|
36
|
-
|
37
|
-
|
46
|
+
let dv = ctx.grid.getDataSource();
|
47
|
+
let rid = dv.getRowId(ctx.rowIndex);
|
38
48
|
if (ctx.previousId && ctx.previousId !== rid) {
|
39
|
-
|
49
|
+
let row = dv.getRowData(ctx.previousId);
|
40
50
|
if (row) {
|
41
51
|
if (row["ROW_DEF"]) {
|
42
52
|
row["ROW_DEF"].setData(ctx.field, false);
|
@@ -51,7 +61,7 @@ var _changeHandler = function (e, ctx) {
|
|
51
61
|
/** @constructor
|
52
62
|
* @param {*=} options
|
53
63
|
*/
|
54
|
-
|
64
|
+
let EFRadioButtonFormatter = function (options) {
|
55
65
|
|
56
66
|
};
|
57
67
|
|
@@ -60,7 +70,7 @@ var EFRadioButtonFormatter = function (options) {
|
|
60
70
|
* @return {Object}
|
61
71
|
*/
|
62
72
|
EFRadioButtonFormatter.create = function (options) {
|
63
|
-
|
73
|
+
let defaultOpt = {
|
64
74
|
tagName: "ef-radio-button",
|
65
75
|
refName: "EFRadioButtonFormatter",
|
66
76
|
styles: {
|
@@ -12,22 +12,32 @@ import CoralItems from "../../tr-grid-util/es6/CoralItems.js";
|
|
12
12
|
* @param {Object} ctx Context object
|
13
13
|
* @param {Object} options User options
|
14
14
|
*/
|
15
|
-
|
16
|
-
|
15
|
+
let onContextCreated = function (ctx, options) {
|
16
|
+
let userItems = options.data || options.entries || options.items;
|
17
17
|
ctx.data = CoralItems.create(userItems);
|
18
18
|
};
|
19
19
|
|
20
|
-
|
20
|
+
/** @private
|
21
|
+
* @function
|
22
|
+
* @param {Element} element
|
23
|
+
* @param {Object} ctx
|
24
|
+
*/
|
25
|
+
let onElementCreated = function (element, ctx) {
|
21
26
|
if (ctx.data) {
|
22
27
|
element.data = ctx.data;
|
23
28
|
}
|
24
29
|
};
|
25
30
|
|
26
|
-
|
31
|
+
/** @private
|
32
|
+
* @function
|
33
|
+
* @param {Element} element
|
34
|
+
* @param {Object} ctx
|
35
|
+
*/
|
36
|
+
let onElementUpdated = function (element, ctx) {
|
27
37
|
element.value = ctx.value;
|
28
38
|
};
|
29
39
|
|
30
|
-
|
40
|
+
let _changeHandler = function (e, ctx) {
|
31
41
|
ctx.value = e.detail.value;
|
32
42
|
ctx.setData(ctx.field, ctx.value);
|
33
43
|
};
|
@@ -35,7 +45,7 @@ var _changeHandler = function (e, ctx) {
|
|
35
45
|
/** @constructor
|
36
46
|
* @param {*=} options
|
37
47
|
*/
|
38
|
-
|
48
|
+
let EFSelectFormatter = function (options) {
|
39
49
|
|
40
50
|
};
|
41
51
|
|
@@ -44,7 +54,7 @@ var EFSelectFormatter = function (options) {
|
|
44
54
|
* @return {Object}
|
45
55
|
*/
|
46
56
|
EFSelectFormatter.create = function (options) {
|
47
|
-
|
57
|
+
let defaultOpt = {
|
48
58
|
tagName: "ef-select",
|
49
59
|
refName: "EFSelectFormatter",
|
50
60
|
styles: {
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import FormatterBuilder from "./FormatterBuilder.js";
|
2
2
|
|
3
|
-
|
3
|
+
let onElementUpdated = function (element, ctx) {
|
4
4
|
element.value = ctx.value;
|
5
5
|
};
|
6
6
|
|
7
|
-
|
7
|
+
let _changeHandler = function (e, ctx) {
|
8
8
|
ctx.value = e.detail.value;
|
9
9
|
ctx.setData(ctx.field, ctx.value);
|
10
10
|
};
|
@@ -12,7 +12,7 @@ var _changeHandler = function (e, ctx) {
|
|
12
12
|
/** @constructor
|
13
13
|
* @param {*=} options
|
14
14
|
*/
|
15
|
-
|
15
|
+
let EFTextFieldFormatter = function (options) {
|
16
16
|
|
17
17
|
};
|
18
18
|
|
@@ -21,7 +21,7 @@ var EFTextFieldFormatter = function (options) {
|
|
21
21
|
* @return {Object}
|
22
22
|
*/
|
23
23
|
EFTextFieldFormatter.create = function (options) {
|
24
|
-
|
24
|
+
let defaultOpt = {
|
25
25
|
tagName: "ef-text-field",
|
26
26
|
refName: "EFTextFieldFormatter",
|
27
27
|
onElementUpdated: onElementUpdated,
|
@@ -5,7 +5,7 @@ import FormatterBuilder from "./FormatterBuilder.js";
|
|
5
5
|
* @param {Element} element
|
6
6
|
* @param {Object} ctx
|
7
7
|
*/
|
8
|
-
|
8
|
+
let onElementUpdated = function (element, ctx) {
|
9
9
|
element.checked = ctx.value;
|
10
10
|
};
|
11
11
|
|
@@ -15,7 +15,7 @@ var onElementUpdated = function (element, ctx) {
|
|
15
15
|
* @param {*} e
|
16
16
|
* @param {*} ctx
|
17
17
|
*/
|
18
|
-
|
18
|
+
let _changeHandler = function (e, ctx) {
|
19
19
|
ctx.value = e.detail.value;
|
20
20
|
ctx.setData(ctx.field, ctx.value);
|
21
21
|
};
|
@@ -23,7 +23,7 @@ var _changeHandler = function (e, ctx) {
|
|
23
23
|
/** @constructor
|
24
24
|
* @param {*=} options
|
25
25
|
*/
|
26
|
-
|
26
|
+
let EFToggleFormatter = function (options) {
|
27
27
|
|
28
28
|
};
|
29
29
|
|
@@ -32,7 +32,7 @@ var EFToggleFormatter = function (options) {
|
|
32
32
|
* @return {Object}
|
33
33
|
*/
|
34
34
|
EFToggleFormatter.create = function (options) {
|
35
|
-
|
35
|
+
let defaultOpt = {
|
36
36
|
tagName: "ef-toggle",
|
37
37
|
refName: "EFToggleFormatter",
|
38
38
|
onElementUpdated: onElementUpdated,
|
@@ -6,19 +6,19 @@ import ElfDate from "../../tr-grid-util/es6/ElfDate.js";
|
|
6
6
|
* @param {Object} ctx Context object
|
7
7
|
* @param {Object} options User options
|
8
8
|
*/
|
9
|
-
|
9
|
+
let onContextCreated = function (ctx, options) {
|
10
10
|
ctx.ElfDate = ElfDate;
|
11
11
|
};
|
12
12
|
|
13
|
-
|
13
|
+
let onElementUpdated = function (element, ctx) {
|
14
14
|
if (!ctx.ElfDate.equal(element.value, ctx.value)) {
|
15
15
|
ctx.ElfDate.setDate(element, ctx.value);
|
16
16
|
}
|
17
17
|
};
|
18
18
|
|
19
|
-
|
19
|
+
let _changeHandler = function (e, ctx) {
|
20
20
|
ctx.value = ctx.ElfDate.getDate(e.detail);
|
21
|
-
|
21
|
+
let currentData = ctx.getData(ctx.field);
|
22
22
|
if (!ctx.ElfDate.equal(currentData, ctx.value)) {
|
23
23
|
ctx.setData(ctx.field, ctx.value);
|
24
24
|
}
|
@@ -27,7 +27,7 @@ var _changeHandler = function (e, ctx) {
|
|
27
27
|
/** @constructor
|
28
28
|
* @param {*=} options
|
29
29
|
*/
|
30
|
-
|
30
|
+
let EmeraldDateTimePickerFormatter = function (options) {
|
31
31
|
|
32
32
|
};
|
33
33
|
|
@@ -36,7 +36,7 @@ var EmeraldDateTimePickerFormatter = function (options) {
|
|
36
36
|
* @return {Object}
|
37
37
|
*/
|
38
38
|
EmeraldDateTimePickerFormatter.create = function (options) {
|
39
|
-
|
39
|
+
let defaultOpt = {
|
40
40
|
tagName: "ef-datetime-picker",
|
41
41
|
refName: "EmeraldDateTimePickerFormatter",
|
42
42
|
onContextCreated: onContextCreated,
|
@@ -14,7 +14,7 @@
|
|
14
14
|
* @private
|
15
15
|
* @constant
|
16
16
|
*/
|
17
|
-
|
17
|
+
let ReservedAttributes = {
|
18
18
|
"api": true,
|
19
19
|
"wrapper": true, // wrapper is generated during runtime binding
|
20
20
|
"grid": true,
|
@@ -51,7 +51,7 @@ var ReservedAttributes = {
|
|
51
51
|
* @param {Object} master Master object. There will be no modification on this object
|
52
52
|
*/
|
53
53
|
function _assignProperties(base, master) {
|
54
|
-
for (
|
54
|
+
for (let key in master) {
|
55
55
|
if (!ReservedAttributes[key]) {
|
56
56
|
base[key] = master[key];
|
57
57
|
}
|
@@ -65,17 +65,17 @@ function _assignProperties(base, master) {
|
|
65
65
|
* @returns {boolean} Returns true, if there is any change
|
66
66
|
*/
|
67
67
|
function _assignAttributes(base, master) {
|
68
|
-
|
68
|
+
let mObj = master.attributes;
|
69
69
|
if(!mObj) {
|
70
70
|
return false;
|
71
71
|
}
|
72
72
|
|
73
|
-
|
74
|
-
|
73
|
+
let dirty = false;
|
74
|
+
let bObj = base.attributes;
|
75
75
|
if(!bObj) {
|
76
76
|
bObj = {};
|
77
77
|
}
|
78
|
-
for(
|
78
|
+
for(let key in mObj) {
|
79
79
|
dirty = true;
|
80
80
|
bObj[key] = mObj[key];
|
81
81
|
}
|
@@ -96,19 +96,19 @@ function _assignAttributes(base, master) {
|
|
96
96
|
* @returns {boolean} Returns true, if there is any change
|
97
97
|
*/
|
98
98
|
function _assignStyles(base, master) {
|
99
|
-
|
99
|
+
let mObj = master.styles;
|
100
100
|
if(!mObj) {
|
101
101
|
return false;
|
102
102
|
}
|
103
103
|
|
104
|
-
|
105
|
-
|
104
|
+
let dirty = false;
|
105
|
+
let bObj = base.styles;
|
106
106
|
if(!bObj) {
|
107
107
|
bObj = {};
|
108
108
|
}
|
109
|
-
for(
|
109
|
+
for(let key in mObj) {
|
110
110
|
dirty = true;
|
111
|
-
|
111
|
+
let val = mObj[key];
|
112
112
|
if(key === "width" || key === "height") {
|
113
113
|
if(typeof val === "number") {
|
114
114
|
val = val + "px";
|
@@ -147,18 +147,18 @@ function _positionLocator(ctx, userFunc, e) {
|
|
147
147
|
* @returns {boolean} Returns true, if there is any change
|
148
148
|
*/
|
149
149
|
function _assignListener(base, master, optionType) {
|
150
|
-
|
150
|
+
let mObj = master.events;
|
151
151
|
if(!mObj) {
|
152
152
|
return false;
|
153
153
|
}
|
154
154
|
|
155
|
-
|
156
|
-
|
155
|
+
let dirty = false;
|
156
|
+
let bObj = base[optionType];
|
157
157
|
if(!bObj) {
|
158
158
|
bObj = {};
|
159
159
|
}
|
160
|
-
for (
|
161
|
-
|
160
|
+
for (let key in mObj) {
|
161
|
+
let func = mObj[key];
|
162
162
|
if (typeof func === "function") {
|
163
163
|
dirty = true;
|
164
164
|
bObj[key] = _positionLocator.bind(null, base, func);
|
@@ -201,7 +201,7 @@ function _onInitContextObject(ctx, colDef, grid) { // Executed once per column
|
|
201
201
|
* @param {*} value
|
202
202
|
*/
|
203
203
|
function _setRtGridData(field, value) {
|
204
|
-
|
204
|
+
let rowDef = this.api.getRowDefinition(this.rowIndex);
|
205
205
|
if(rowDef) {
|
206
206
|
rowDef.setStaticData(field, value);
|
207
207
|
}
|
@@ -212,7 +212,7 @@ function _setRtGridData(field, value) {
|
|
212
212
|
* @returns {*} Value
|
213
213
|
*/
|
214
214
|
function _getRtGridData(field) {
|
215
|
-
|
215
|
+
let rowDef = this.api.getRowDefinition(this.rowIndex);
|
216
216
|
return rowDef ? rowDef.getData(field) : null;
|
217
217
|
}
|
218
218
|
/** @private
|
@@ -276,7 +276,7 @@ function _predefinedBinding(ctx, e) {
|
|
276
276
|
ctx.setData = _setRtGridData;
|
277
277
|
ctx.getData = _getRtGridData;
|
278
278
|
}
|
279
|
-
|
279
|
+
let rowData = ctx.rowData = e["rowData"];
|
280
280
|
if(ctx.field) {
|
281
281
|
ctx.value = rowData ? rowData[ctx.field] : null;
|
282
282
|
} else {
|
@@ -308,7 +308,7 @@ function _predefinedFormatter(ctx, rowIndex, columnIndex, value, cell, colDef, d
|
|
308
308
|
ctx.setData = _setCoreGridData;
|
309
309
|
ctx.getData = _getCoreGridData;
|
310
310
|
}
|
311
|
-
|
311
|
+
let rowData = ctx.rowData = dataRow;
|
312
312
|
if (ctx.field) {
|
313
313
|
ctx.value = rowData ? rowData[ctx.field] : null;
|
314
314
|
} else {
|
@@ -325,7 +325,7 @@ function _predefinedFormatter(ctx, rowIndex, columnIndex, value, cell, colDef, d
|
|
325
325
|
* @param {Object} ctx
|
326
326
|
*/
|
327
327
|
function _commonBinding(ctx) {
|
328
|
-
|
328
|
+
let elem = ctx.cell.getContent();
|
329
329
|
if(!elem || (elem._formatterName !== ctx.refName)) {
|
330
330
|
elem = document.createElement(ctx.tagName);
|
331
331
|
elem._formatterName = ctx.refName;
|
@@ -333,21 +333,21 @@ function _commonBinding(ctx) {
|
|
333
333
|
ctx.onElementCreated(elem, ctx);
|
334
334
|
}
|
335
335
|
|
336
|
-
|
336
|
+
let attrs = ctx.attributes;
|
337
337
|
if(attrs) {
|
338
|
-
for(
|
338
|
+
for(let attrName in attrs) {
|
339
339
|
elem.setAttribute(attrName, attrs[attrName] || "");
|
340
340
|
}
|
341
341
|
}
|
342
342
|
|
343
|
-
|
343
|
+
let stys = ctx.styles;
|
344
344
|
if(stys) {
|
345
|
-
for(
|
345
|
+
for(let styName in stys) {
|
346
346
|
elem.style[styName] = stys[styName];
|
347
347
|
}
|
348
348
|
}
|
349
349
|
|
350
|
-
|
350
|
+
let evts, evtName;
|
351
351
|
evts = ctx.defaultEvents;
|
352
352
|
if(evts) {
|
353
353
|
for (evtName in evts) {
|
@@ -368,7 +368,7 @@ function _commonBinding(ctx) {
|
|
368
368
|
}
|
369
369
|
}
|
370
370
|
|
371
|
-
|
371
|
+
let rowData = ctx.rowData;
|
372
372
|
if(ctx.disablingField) {
|
373
373
|
if(rowData && rowData[ctx.disablingField]){
|
374
374
|
elem.setAttribute("disabled", "");
|
@@ -436,7 +436,7 @@ function _emptyFunc() {}
|
|
436
436
|
/** @constructor
|
437
437
|
* @param {*=} options
|
438
438
|
*/
|
439
|
-
|
439
|
+
let FormatterBuilder = function (options) {
|
440
440
|
// TODO: FormatterBuilder should not be initializable
|
441
441
|
};
|
442
442
|
|
@@ -450,22 +450,22 @@ FormatterBuilder.create = function (userOptions, defaultOpt) {
|
|
450
450
|
defaultOpt = defaultOpt || {};
|
451
451
|
|
452
452
|
if (defaultOpt.changeHook) {
|
453
|
-
|
453
|
+
let changeHandler = userOptions.changeHandler || defaultOpt.changeHandler;
|
454
454
|
if (!defaultOpt.events) {
|
455
455
|
defaultOpt.events = {};
|
456
456
|
}
|
457
457
|
defaultOpt.events[defaultOpt.changeHook] = changeHandler;
|
458
458
|
} else if (defaultOpt.changeHooks) {
|
459
|
-
|
459
|
+
let changeHandlers = userOptions.changeHandlers || defaultOpt.changeHandlers;
|
460
460
|
if (!defaultOpt.events) {
|
461
461
|
defaultOpt.events = {};
|
462
462
|
}
|
463
|
-
for (
|
463
|
+
for (let i = 0; i < changeHandlers.length; i++) {
|
464
464
|
defaultOpt.events[defaultOpt.changeHooks[i]] = changeHandlers[i];
|
465
465
|
}
|
466
466
|
}
|
467
467
|
|
468
|
-
|
468
|
+
let ctx = {};
|
469
469
|
_buildContextObject(ctx, userOptions, defaultOpt);
|
470
470
|
|
471
471
|
if (defaultOpt.onContextCreated) {
|
@@ -1,20 +1,20 @@
|
|
1
1
|
import FormatterBuilder from "./FormatterBuilder.js";
|
2
2
|
import ElfUtil from "../../tr-grid-util/es6/ElfUtil.js";
|
3
3
|
|
4
|
-
|
4
|
+
let onElementUpdated = function (element, ctx) {
|
5
5
|
element.value = ctx.value;
|
6
6
|
};
|
7
7
|
|
8
|
-
|
8
|
+
let onElementCreated = function (element, ctx) {
|
9
9
|
element.setAttribute("type", "number");
|
10
10
|
};
|
11
11
|
|
12
|
-
|
12
|
+
let _changeHandler = function (e, ctx) {
|
13
13
|
ctx.value = e.detail.value;
|
14
14
|
ctx.setData(ctx.field, ctx.value);
|
15
15
|
};
|
16
16
|
|
17
|
-
|
17
|
+
let _inputChangeHandler = function (e, ctx) {
|
18
18
|
ctx.value = +e.currentTarget.value;
|
19
19
|
ctx.setData(ctx.field, ctx.value);
|
20
20
|
};
|
@@ -22,7 +22,7 @@ var _inputChangeHandler = function (e, ctx) {
|
|
22
22
|
/** @constructor
|
23
23
|
* @param {*=} options
|
24
24
|
*/
|
25
|
-
|
25
|
+
let NumericInputFormatter = function (options) {
|
26
26
|
|
27
27
|
};
|
28
28
|
|
@@ -31,14 +31,14 @@ var NumericInputFormatter = function (options) {
|
|
31
31
|
* @return {Object}
|
32
32
|
*/
|
33
33
|
NumericInputFormatter.create = function (options) {
|
34
|
-
|
34
|
+
let tn = "input";
|
35
35
|
if(ElfUtil.hasComponent("ef-number-field")) {
|
36
36
|
tn = "ef-number-field";
|
37
37
|
} else if(ElfUtil.hasComponent("ef-input")) {
|
38
38
|
tn = "ef-input";
|
39
39
|
}
|
40
40
|
|
41
|
-
|
41
|
+
let defaultOpt = {
|
42
42
|
tagName: tn,
|
43
43
|
refName: "NumericInputFormatter",
|
44
44
|
onElementUpdated: onElementUpdated,
|
@@ -15,7 +15,7 @@ import {PercentBar} from "../../tr-grid-util/es6/PercentBar.js";
|
|
15
15
|
* @param {Object} ctx Context object
|
16
16
|
* @param {Object} options User options
|
17
17
|
*/
|
18
|
-
|
18
|
+
let onContextCreated = function (ctx, options) {
|
19
19
|
ctx.PercentBar = PercentBar;
|
20
20
|
};
|
21
21
|
|
@@ -23,7 +23,7 @@ var onContextCreated = function (ctx, options) {
|
|
23
23
|
* @param {Element} element
|
24
24
|
* @param {Object} ctx Context object
|
25
25
|
*/
|
26
|
-
|
26
|
+
let onElementCreated = function (element, ctx) {
|
27
27
|
element["_percentBar"] = new ctx.PercentBar(element, ctx);
|
28
28
|
};
|
29
29
|
|
@@ -31,14 +31,14 @@ var onElementCreated = function (element, ctx) {
|
|
31
31
|
* @param {Element} element
|
32
32
|
* @param {Object} ctx Context object
|
33
33
|
*/
|
34
|
-
|
34
|
+
let onElementUpdated = function (element, ctx) {
|
35
35
|
element["_percentBar"].setValue(ctx.value);
|
36
36
|
};
|
37
37
|
|
38
38
|
/** @constructor
|
39
39
|
* @param {*=} options
|
40
40
|
*/
|
41
|
-
|
41
|
+
let PercentBarFormatter = function (options) {
|
42
42
|
|
43
43
|
};
|
44
44
|
|
@@ -47,7 +47,7 @@ var PercentBarFormatter = function (options) {
|
|
47
47
|
* @return {Object}
|
48
48
|
*/
|
49
49
|
PercentBarFormatter.create = function (options) {
|
50
|
-
|
50
|
+
let defaultOpt = {
|
51
51
|
tagName: "div",
|
52
52
|
refName: "PercentBarFormatter",
|
53
53
|
onContextCreated: onContextCreated,
|