jsl-ui 9.13.2 → 9.14.1
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/core/jq.js +3 -1
- package/lib/grid/slick.creator.d.ts +8 -0
- package/lib/grid/slick.creator.js +25 -20
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/core/jq.js
CHANGED
|
@@ -136,7 +136,9 @@ function jQWrapper(elements) {
|
|
|
136
136
|
_elements.remove = function () {
|
|
137
137
|
for (var i = 0; i < _elements.length; i++) {
|
|
138
138
|
var el = _elements[i];
|
|
139
|
-
el.parentNode
|
|
139
|
+
if (el.parentNode) {
|
|
140
|
+
el.parentNode.removeChild(el);
|
|
141
|
+
}
|
|
140
142
|
}
|
|
141
143
|
};
|
|
142
144
|
_elements.data = function (name, value) {
|
|
@@ -63,6 +63,14 @@ export interface IJSLGrid<T> extends ISlickGrid<T> {
|
|
|
63
63
|
column: ISlickColumn;
|
|
64
64
|
item: T;
|
|
65
65
|
}>;
|
|
66
|
+
onAfterFillDown: ISlickEvent<{
|
|
67
|
+
grid: IJSLGrid<T>;
|
|
68
|
+
items: T[];
|
|
69
|
+
direction: "up" | "down";
|
|
70
|
+
range: any;
|
|
71
|
+
column: ISlickColumn;
|
|
72
|
+
value: any;
|
|
73
|
+
}>;
|
|
66
74
|
onFiltersChanged: ISlickEvent<void>;
|
|
67
75
|
getHeaderMenu: () => any;
|
|
68
76
|
getFilterDialog: () => any;
|
|
@@ -117,42 +117,46 @@ export function createJSLGrid(selector, data, columns, option) {
|
|
|
117
117
|
}
|
|
118
118
|
// Find the initial value
|
|
119
119
|
dataView.beginUpdate();
|
|
120
|
+
var value;
|
|
121
|
+
var items = [];
|
|
120
122
|
if (args.direction === "down") {
|
|
121
123
|
var item = dataView.getItem(args.range.fromRow);
|
|
122
|
-
|
|
124
|
+
value = grid.getDataItemValueForColumn(item, column); // item[column.field];
|
|
123
125
|
// Copy the value down
|
|
124
126
|
for (var i = args.range.fromRow + 1; i <= args.range.toRow; i++) {
|
|
125
127
|
if (grid.onBeforeEditCell.notify({ row: i, cell: args.range.fromCell, item: dataView.getItem(i), column: column }, e) !== false) {
|
|
126
|
-
var
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
else {
|
|
131
|
-
|
|
132
|
-
}
|
|
133
|
-
grid.invalidateRow(i);
|
|
134
|
-
grid.onAfterEdit.notify({ grid
|
|
128
|
+
var currentItem = dataView.getItem(i);
|
|
129
|
+
items.push(currentItem);
|
|
130
|
+
// if (options.setDataItemValueForColumn != null) {
|
|
131
|
+
// options.setDataItemValueForColumn(currentItem, column, value);
|
|
132
|
+
// } else {
|
|
133
|
+
// dataView.getItem(i)[column.field] = value;
|
|
134
|
+
// }
|
|
135
|
+
// grid.invalidateRow(i);
|
|
136
|
+
// grid.onAfterEdit.notify({ grid, oldValue, newValue: value, column, item: dataView.getItem(i) }, e);
|
|
135
137
|
}
|
|
136
138
|
}
|
|
137
139
|
}
|
|
138
140
|
else {
|
|
139
141
|
var item = dataView.getItem(args.range.toRow);
|
|
140
|
-
|
|
142
|
+
items.push(item);
|
|
143
|
+
value = grid.getDataItemValueForColumn(item, column); // item[column.field];
|
|
141
144
|
// Copy the value up
|
|
142
145
|
for (var i = args.range.fromRow; i <= args.range.toRow - 1; i++) {
|
|
143
146
|
if (grid.onBeforeEditCell.notify({ row: i, cell: args.range.fromCell, item: dataView.getItem(i), column: column }, e) !== false) {
|
|
144
|
-
var
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
else {
|
|
149
|
-
|
|
150
|
-
}
|
|
151
|
-
grid.invalidateRow(i);
|
|
152
|
-
grid.onAfterEdit.notify({ grid
|
|
147
|
+
var currentItem = dataView.getItem(i);
|
|
148
|
+
items.push(currentItem);
|
|
149
|
+
// if (options.setDataItemValueForColumn != null) {
|
|
150
|
+
// options.setDataItemValueForColumn(currentItem, column, value);
|
|
151
|
+
// } else {
|
|
152
|
+
// dataView.getItem(i)[column.field] = value;
|
|
153
|
+
// }
|
|
154
|
+
// grid.invalidateRow(i);
|
|
155
|
+
// grid.onAfterEdit.notify({ grid, oldValue, newValue: value, column, item: dataView.getItem(i) }, e);
|
|
153
156
|
}
|
|
154
157
|
}
|
|
155
158
|
}
|
|
159
|
+
grid.onAfterFillDown.notify({ grid: grid, value: value, column: column, direction: args.direction, range: args.range, items: items }, e);
|
|
156
160
|
dataView.endUpdate();
|
|
157
161
|
grid.render();
|
|
158
162
|
});
|
|
@@ -269,6 +273,7 @@ export function createJSLGrid(selector, data, columns, option) {
|
|
|
269
273
|
function addCustomEvents() {
|
|
270
274
|
grid.onAfterEdit = new Slick.Event();
|
|
271
275
|
grid.onFiltersChanged = new Slick.Event();
|
|
276
|
+
grid.onAfterFillDown = new Slick.Event();
|
|
272
277
|
}
|
|
273
278
|
function setupChangeEvents() {
|
|
274
279
|
dataView.onRowsChanged.subscribe(function (e, args) {
|