@builttocreate/engine-utils 2.8.0 → 2.9.0-beta.0
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/dist/activityHelper.js +15 -40
- package/dist/changedKeys.js +1 -4
- package/dist/chartHelper.js +4 -13
- package/dist/constants/ActivityTypes.js +5 -9
- package/dist/constants/DocumentTypes.js +1 -2
- package/dist/constants/FieldDisplayTypes.js +5 -6
- package/dist/constants/FieldPresentationModes.js +4 -8
- package/dist/constants/FieldTableColumnTypes.js +5 -4
- package/dist/constants/FieldTableCustomColumnIds.js +2 -3
- package/dist/constants/FieldTypes.js +3 -3
- package/dist/constants/FileTypes.js +4 -7
- package/dist/constants/FileViews.js +2 -4
- package/dist/constants/FormStyleOptions.js +2 -3
- package/dist/constants/ListTypes.js +2 -3
- package/dist/constants/PageLayoutModes.js +2 -4
- package/dist/constants/PageTypes.js +1 -3
- package/dist/constants/Roles.js +1 -3
- package/dist/constants/Table.js +6 -11
- package/dist/fieldHelper.js +25 -85
- package/dist/fileHelper.js +3 -11
- package/dist/generateObjectId.js +2 -5
- package/dist/index.js +4 -31
- package/dist/joyDocHelper.js +140 -203
- package/dist/paginationHelper.js +3 -7
- package/dist/reduxApiMiddleware.js +12 -27
- package/dist/roleHelper.js +4 -13
- package/dist/tableHelper.js +136 -292
- package/dist/validateObjectId.js +2 -5
- package/package.json +4 -4
package/dist/tableHelper.js
CHANGED
|
@@ -1,77 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
exports.validFormulaString = exports.spreadOperandRange = exports.sortRows = exports.sortColumns = exports.resolveOperandValue = exports.hasOperandRange = exports.hasCircularOperandReference = exports.handleTableCellChange = exports.handleMoveTableRowUp = exports.handleMoveTableRowDown = exports.handleMoveColumnRight = exports.handleMoveColumnLeft = exports.handleInsertTableRow = exports.handleDuplicateTableRow = exports.handleCreateTableRow = exports.getTemplateColumnOperandLookup = exports.getTargetColumnWithOperand = exports.getTableRowLookupWithPopulatedDropdownCells = exports.getTableFieldRowOrder = exports.getTableFieldLookupKey = exports.getRows = exports.getRowOrder = exports.getRowMap = exports.getRowIndexLookup = exports.getInputGroupRowLookupWithPopulatedDropdownCells = exports.getIndexesFromTableCellOperand = exports.getFormulaResult = exports.getFilteredRowOrder = exports.getDefaultTextColumn = exports.getDefaultRow = exports.getDefaultImageColumn = exports.getDefaultDropdownColumn = exports.getDefaultColumnOption = exports.getColumns = exports.getColumnOrder = exports.getColumnOperand = exports.getCleanedRowOrder = exports.getCleanedColumnOrder = exports.getCellOperand = exports.generateTableLookupForRows = exports.generateTableLookup = exports.generateTableFieldLookups = exports.generateRowTableLookup = exports.generateInputGroupFields = exports["default"] = void 0;
|
|
11
|
-
|
|
8
|
+
exports.validFormulaString = exports.spreadOperandRange = exports.sortRows = exports.sortColumns = exports.resolveOperandValue = exports.hasOperandRange = exports.hasCircularOperandReference = exports.handleTableCellChange = exports.handleMoveTableRowUp = exports.handleMoveTableRowDown = exports.handleMoveColumnRight = exports.handleMoveColumnLeft = exports.handleInsertTableRow = exports.handleDuplicateTableRow = exports.handleCreateTableRow = exports.getTemplateColumnOperandLookup = exports.getTargetColumnWithOperand = exports.getTableRowLookupWithPopulatedDropdownCells = exports.getTableFieldRowOrder = exports.getTableFieldLookupKey = exports.getRows = exports.getRowOrder = exports.getRowMap = exports.getRowIndexLookup = exports.getInputGroupRowLookupWithPopulatedDropdownCells = exports.getIndexesFromTableCellOperand = exports.getFormulaResult = exports.getFilteredRowOrder = exports.getDefaultTextColumn = exports.getDefaultRow = exports.getDefaultNumberColumn = exports.getDefaultImageColumn = exports.getDefaultDropdownColumn = exports.getDefaultColumnOption = exports.getColumns = exports.getColumnOrder = exports.getColumnOperand = exports.getCleanedRowOrder = exports.getCleanedColumnOrder = exports.getCellOperand = exports.generateTableLookupForRows = exports.generateTableLookup = exports.generateTableFieldLookups = exports.generateRowTableLookup = exports.generateInputGroupFields = exports["default"] = void 0;
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
11
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
17
|
-
|
|
18
12
|
var _hotFormulaParser = require("@builttocreate/hot-formula-parser");
|
|
19
|
-
|
|
20
13
|
var _generateObjectId = _interopRequireDefault(require("./generateObjectId"));
|
|
21
|
-
|
|
22
14
|
var _Table = _interopRequireWildcard(require("./constants/Table"));
|
|
23
|
-
|
|
24
15
|
var _FieldTypes = _interopRequireDefault(require("./constants/FieldTypes"));
|
|
25
|
-
|
|
26
16
|
var _FieldTableColumnTypes = _interopRequireDefault(require("./constants/FieldTableColumnTypes"));
|
|
27
|
-
|
|
28
17
|
var _FieldTableCustomColumnIds = _interopRequireDefault(require("./constants/FieldTableCustomColumnIds"));
|
|
29
|
-
|
|
30
|
-
function
|
|
31
|
-
|
|
32
|
-
function
|
|
33
|
-
|
|
34
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
35
|
-
|
|
36
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
37
|
-
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) { if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } } return n["default"] = e, t && t.set(e, n), n; }
|
|
20
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
21
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
38
22
|
var parser = new _hotFormulaParser.Parser();
|
|
39
|
-
|
|
40
|
-
var getTableFieldLookupKey = function getTableFieldLookupKey(fieldId, rowIndex, columnId) {
|
|
23
|
+
var getTableFieldLookupKey = exports.getTableFieldLookupKey = function getTableFieldLookupKey(fieldId, rowIndex, columnId) {
|
|
41
24
|
return "".concat(fieldId, "-").concat(rowIndex, "-").concat(columnId);
|
|
42
25
|
};
|
|
43
|
-
|
|
44
|
-
exports.getTableFieldLookupKey = getTableFieldLookupKey;
|
|
45
|
-
|
|
46
|
-
var getDefaultRow = function getDefaultRow() {
|
|
26
|
+
var getDefaultRow = exports.getDefaultRow = function getDefaultRow() {
|
|
47
27
|
return {
|
|
48
28
|
_id: (0, _generateObjectId["default"])(),
|
|
49
29
|
deleted: false,
|
|
50
30
|
cells: {}
|
|
51
31
|
};
|
|
52
32
|
};
|
|
53
|
-
|
|
54
|
-
exports.getDefaultRow = getDefaultRow;
|
|
55
|
-
|
|
56
|
-
var getRows = function getRows(rows) {
|
|
33
|
+
var getRows = exports.getRows = function getRows(rows) {
|
|
57
34
|
var parsedRows = rows;
|
|
58
|
-
|
|
59
35
|
if (typeof parsedRows === 'string') {
|
|
60
36
|
parsedRows = JSON.parse(parsedRows);
|
|
61
37
|
}
|
|
62
|
-
|
|
63
38
|
return parsedRows ? parsedRows.filter(function (row) {
|
|
64
39
|
return !row.deleted;
|
|
65
40
|
}) : [];
|
|
66
41
|
};
|
|
42
|
+
|
|
67
43
|
/**
|
|
68
44
|
* Sort rows based on rowOrder
|
|
69
45
|
*/
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
exports.getRows = getRows;
|
|
73
|
-
|
|
74
|
-
var sortRows = function sortRows(rows, rowOrder) {
|
|
46
|
+
var sortRows = exports.sortRows = function sortRows(rows, rowOrder) {
|
|
75
47
|
if (!rowOrder) return rows;
|
|
76
48
|
var rowLookup = {};
|
|
77
49
|
rows.forEach(function (row) {
|
|
@@ -83,6 +55,7 @@ var sortRows = function sortRows(rows, rowOrder) {
|
|
|
83
55
|
});
|
|
84
56
|
return sortedRows;
|
|
85
57
|
};
|
|
58
|
+
|
|
86
59
|
/**
|
|
87
60
|
* Filter table row order by cell values
|
|
88
61
|
*
|
|
@@ -90,32 +63,25 @@ var sortRows = function sortRows(rows, rowOrder) {
|
|
|
90
63
|
* @param {Array} rows
|
|
91
64
|
* @param {Object} filters //{ colId: value, colId: value, ....}
|
|
92
65
|
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
exports.sortRows = sortRows;
|
|
96
|
-
|
|
97
|
-
var getFilteredRowOrder = function getFilteredRowOrder(rowOrder, rows, filters) {
|
|
66
|
+
var getFilteredRowOrder = exports.getFilteredRowOrder = function getFilteredRowOrder(rowOrder, rows, filters) {
|
|
98
67
|
var filteredColumnIds = filters ? Object.keys(filters) : [];
|
|
99
68
|
var validRowOrder = rowOrder;
|
|
100
|
-
|
|
101
69
|
if (!validRowOrder) {
|
|
102
70
|
var validRows = rows ? getRows(rows) : [];
|
|
103
71
|
validRowOrder = validRows.map(function (row) {
|
|
104
72
|
return row._id;
|
|
105
73
|
});
|
|
106
74
|
}
|
|
75
|
+
|
|
107
76
|
/**
|
|
108
77
|
* Remove any duplicate rowIds. We have had instances where
|
|
109
78
|
* users encounter duplicate rowIds in the rowOrder.
|
|
110
79
|
* See: https://github.com/zionlabs/Issues/issues/1589
|
|
111
80
|
*/
|
|
112
|
-
|
|
113
|
-
|
|
114
81
|
var cleanedValidRowOrder = [];
|
|
115
82
|
validRowOrder.forEach(function (rowId) {
|
|
116
83
|
if (cleanedValidRowOrder.indexOf(rowId) === -1) cleanedValidRowOrder.push(rowId);
|
|
117
84
|
});
|
|
118
|
-
|
|
119
85
|
if (filteredColumnIds.length > 0) {
|
|
120
86
|
var matchedRows = {};
|
|
121
87
|
rows.forEach(function (row) {
|
|
@@ -135,6 +101,7 @@ var getFilteredRowOrder = function getFilteredRowOrder(rowOrder, rows, filters)
|
|
|
135
101
|
return cleanedValidRowOrder;
|
|
136
102
|
}
|
|
137
103
|
};
|
|
104
|
+
|
|
138
105
|
/**
|
|
139
106
|
* Create a table row map for simple value lookup
|
|
140
107
|
*
|
|
@@ -148,11 +115,7 @@ var getFilteredRowOrder = function getFilteredRowOrder(rowOrder, rows, filters)
|
|
|
148
115
|
* @param {Array} rows
|
|
149
116
|
* @return {Object}
|
|
150
117
|
*/
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
exports.getFilteredRowOrder = getFilteredRowOrder;
|
|
154
|
-
|
|
155
|
-
var getRowMap = function getRowMap() {
|
|
118
|
+
var getRowMap = exports.getRowMap = function getRowMap() {
|
|
156
119
|
var rows = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
157
120
|
var items = getRows(rows);
|
|
158
121
|
var rowMap = {};
|
|
@@ -161,6 +124,7 @@ var getRowMap = function getRowMap() {
|
|
|
161
124
|
});
|
|
162
125
|
return rowMap;
|
|
163
126
|
};
|
|
127
|
+
|
|
164
128
|
/**
|
|
165
129
|
* Get row order
|
|
166
130
|
*
|
|
@@ -169,15 +133,12 @@ var getRowMap = function getRowMap() {
|
|
|
169
133
|
*
|
|
170
134
|
* @return {Array}
|
|
171
135
|
*/
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
exports.getRowMap = getRowMap;
|
|
175
|
-
|
|
176
|
-
var getRowOrder = function getRowOrder(rowOrder, rows) {
|
|
136
|
+
var getRowOrder = exports.getRowOrder = function getRowOrder(rowOrder, rows) {
|
|
177
137
|
return rowOrder || getRows(rows).map(function (row) {
|
|
178
138
|
return row._id;
|
|
179
139
|
});
|
|
180
140
|
};
|
|
141
|
+
|
|
181
142
|
/**
|
|
182
143
|
* Get row order for table field. If there isn't a row order set in the
|
|
183
144
|
* fieldSettings then it will default to the normal row array Ids.
|
|
@@ -188,16 +149,13 @@ var getRowOrder = function getRowOrder(rowOrder, rows) {
|
|
|
188
149
|
*
|
|
189
150
|
* @return {Array}
|
|
190
151
|
*/
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
exports.getRowOrder = getRowOrder;
|
|
194
|
-
|
|
195
|
-
var getTableFieldRowOrder = function getTableFieldRowOrder(fieldId, fieldSettings, rows) {
|
|
152
|
+
var getTableFieldRowOrder = exports.getTableFieldRowOrder = function getTableFieldRowOrder(fieldId, fieldSettings, rows) {
|
|
196
153
|
var filteredRows = rows ? getRows(rows) : [];
|
|
197
154
|
return fieldSettings && fieldSettings[fieldId] && fieldSettings[fieldId].rowOrder ? (0, _toConsumableArray2["default"])(fieldSettings[fieldId].rowOrder) : filteredRows.map(function (row) {
|
|
198
155
|
return row._id;
|
|
199
156
|
});
|
|
200
157
|
};
|
|
158
|
+
|
|
201
159
|
/**
|
|
202
160
|
* This method removes the rowIds of the deleted rows (or) any duplicate rowIds
|
|
203
161
|
* from the rowOrder there by returning a cleaned rowOrder
|
|
@@ -206,16 +164,12 @@ var getTableFieldRowOrder = function getTableFieldRowOrder(fieldId, fieldSetting
|
|
|
206
164
|
*
|
|
207
165
|
* @returns {Array}
|
|
208
166
|
**/
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
exports.getTableFieldRowOrder = getTableFieldRowOrder;
|
|
212
|
-
|
|
213
|
-
var getCleanedRowOrder = function getCleanedRowOrder(rowOrder, rows) {
|
|
167
|
+
var getCleanedRowOrder = exports.getCleanedRowOrder = function getCleanedRowOrder(rowOrder, rows) {
|
|
214
168
|
var nextRowOrder = [];
|
|
169
|
+
|
|
215
170
|
/**
|
|
216
171
|
* Step 1: Handle generating or retrieving proper row order.
|
|
217
172
|
*/
|
|
218
|
-
|
|
219
173
|
if (rowOrder && rowOrder.length > 0) {
|
|
220
174
|
nextRowOrder = rowOrder;
|
|
221
175
|
} else if (rows && rows.length > 0) {
|
|
@@ -223,11 +177,10 @@ var getCleanedRowOrder = function getCleanedRowOrder(rowOrder, rows) {
|
|
|
223
177
|
if (!row.deleted) nextRowOrder.push(row._id);
|
|
224
178
|
});
|
|
225
179
|
}
|
|
180
|
+
|
|
226
181
|
/**
|
|
227
182
|
* Step 2: Remove row Ids from rowOrder for rows that no longer exist or have been deleted
|
|
228
183
|
*/
|
|
229
|
-
|
|
230
|
-
|
|
231
184
|
var rowLookup = {};
|
|
232
185
|
rows.forEach(function (row) {
|
|
233
186
|
return rowLookup[row._id] = row && !row.deleted;
|
|
@@ -235,27 +188,24 @@ var getCleanedRowOrder = function getCleanedRowOrder(rowOrder, rows) {
|
|
|
235
188
|
nextRowOrder = nextRowOrder.filter(function (rowId) {
|
|
236
189
|
return rowLookup[rowId];
|
|
237
190
|
});
|
|
191
|
+
|
|
238
192
|
/**
|
|
239
193
|
* Step 3: Remove any duplicate row Id references in the row order.
|
|
240
194
|
*/
|
|
241
|
-
|
|
242
195
|
var filteredNextRowOrder = [];
|
|
243
196
|
nextRowOrder.forEach(function (rowId) {
|
|
244
197
|
if (rowId && filteredNextRowOrder.indexOf(rowId) === -1) filteredNextRowOrder.push(rowId);
|
|
245
198
|
});
|
|
246
199
|
return filteredNextRowOrder;
|
|
247
200
|
};
|
|
201
|
+
|
|
248
202
|
/**
|
|
249
203
|
* Handle Move Column Left
|
|
250
204
|
*
|
|
251
205
|
* @param {Number} columnIndex
|
|
252
206
|
* @param {Func} callback
|
|
253
207
|
*/
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
exports.getCleanedRowOrder = getCleanedRowOrder;
|
|
257
|
-
|
|
258
|
-
var handleMoveColumnLeft = function handleMoveColumnLeft(columnIndex, callback) {
|
|
208
|
+
var handleMoveColumnLeft = exports.handleMoveColumnLeft = function handleMoveColumnLeft(columnIndex, callback) {
|
|
259
209
|
//If first index then ignore
|
|
260
210
|
if (columnIndex === 0) return;
|
|
261
211
|
var targetIndex = columnIndex - 1;
|
|
@@ -263,6 +213,7 @@ var handleMoveColumnLeft = function handleMoveColumnLeft(columnIndex, callback)
|
|
|
263
213
|
targetIndex: targetIndex
|
|
264
214
|
});
|
|
265
215
|
};
|
|
216
|
+
|
|
266
217
|
/**
|
|
267
218
|
* Handle Move Column Right
|
|
268
219
|
*
|
|
@@ -270,11 +221,7 @@ var handleMoveColumnLeft = function handleMoveColumnLeft(columnIndex, callback)
|
|
|
270
221
|
* @param {Number} columnIndex
|
|
271
222
|
* @param {Func} callback
|
|
272
223
|
*/
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
exports.handleMoveColumnLeft = handleMoveColumnLeft;
|
|
276
|
-
|
|
277
|
-
var handleMoveColumnRight = function handleMoveColumnRight(columns, columnIndex, callback) {
|
|
224
|
+
var handleMoveColumnRight = exports.handleMoveColumnRight = function handleMoveColumnRight(columns, columnIndex, callback) {
|
|
278
225
|
//If last column index then ignore
|
|
279
226
|
if (columnIndex >= columns.length - 1) return;
|
|
280
227
|
var targetIndex = columnIndex + 1;
|
|
@@ -282,23 +229,21 @@ var handleMoveColumnRight = function handleMoveColumnRight(columns, columnIndex,
|
|
|
282
229
|
targetIndex: targetIndex
|
|
283
230
|
});
|
|
284
231
|
};
|
|
232
|
+
|
|
285
233
|
/**
|
|
286
234
|
* Get default column option
|
|
287
235
|
*
|
|
288
236
|
* @param {String} value
|
|
289
237
|
* @return {Object}
|
|
290
238
|
*/
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
exports.handleMoveColumnRight = handleMoveColumnRight;
|
|
294
|
-
|
|
295
|
-
var getDefaultColumnOption = function getDefaultColumnOption(value) {
|
|
239
|
+
var getDefaultColumnOption = exports.getDefaultColumnOption = function getDefaultColumnOption(value) {
|
|
296
240
|
return {
|
|
297
241
|
_id: (0, _generateObjectId["default"])(),
|
|
298
242
|
value: value || 'Option',
|
|
299
243
|
deleted: false
|
|
300
244
|
};
|
|
301
245
|
};
|
|
246
|
+
|
|
302
247
|
/**
|
|
303
248
|
* Get default text column for table field
|
|
304
249
|
*
|
|
@@ -306,11 +251,7 @@ var getDefaultColumnOption = function getDefaultColumnOption(value) {
|
|
|
306
251
|
*
|
|
307
252
|
* @return {Object}
|
|
308
253
|
*/
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
exports.getDefaultColumnOption = getDefaultColumnOption;
|
|
312
|
-
|
|
313
|
-
var getDefaultTextColumn = function getDefaultTextColumn() {
|
|
254
|
+
var getDefaultTextColumn = exports.getDefaultTextColumn = function getDefaultTextColumn() {
|
|
314
255
|
var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
315
256
|
return _objectSpread({
|
|
316
257
|
_id: (0, _generateObjectId["default"])(),
|
|
@@ -320,18 +261,33 @@ var getDefaultTextColumn = function getDefaultTextColumn() {
|
|
|
320
261
|
deleted: false
|
|
321
262
|
}, defaults);
|
|
322
263
|
};
|
|
264
|
+
|
|
323
265
|
/**
|
|
324
|
-
* Get default
|
|
266
|
+
* Get default Number column for table field
|
|
325
267
|
*
|
|
326
268
|
* @param {Object} defaults //Overwrite any values with this defaults object
|
|
327
269
|
*
|
|
328
270
|
* @return {Object}
|
|
329
271
|
*/
|
|
272
|
+
var getDefaultNumberColumn = exports.getDefaultNumberColumn = function getDefaultNumberColumn() {
|
|
273
|
+
var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
274
|
+
return _objectSpread({
|
|
275
|
+
_id: (0, _generateObjectId["default"])(),
|
|
276
|
+
type: _FieldTableColumnTypes["default"].number,
|
|
277
|
+
title: 'Number Column',
|
|
278
|
+
deleted: false,
|
|
279
|
+
width: 200
|
|
280
|
+
}, defaults);
|
|
281
|
+
};
|
|
330
282
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
283
|
+
/**
|
|
284
|
+
* Get default dropdown column for table field
|
|
285
|
+
*
|
|
286
|
+
* @param {Object} defaults //Overwrite any values with this defaults object
|
|
287
|
+
*
|
|
288
|
+
* @return {Object}
|
|
289
|
+
*/
|
|
290
|
+
var getDefaultImageColumn = exports.getDefaultImageColumn = function getDefaultImageColumn() {
|
|
335
291
|
var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
336
292
|
return _objectSpread({
|
|
337
293
|
_id: (0, _generateObjectId["default"])(),
|
|
@@ -343,6 +299,7 @@ var getDefaultImageColumn = function getDefaultImageColumn() {
|
|
|
343
299
|
maxImageHeight: 120
|
|
344
300
|
}, defaults);
|
|
345
301
|
};
|
|
302
|
+
|
|
346
303
|
/**
|
|
347
304
|
* Get default dropdown column for table field
|
|
348
305
|
*
|
|
@@ -350,11 +307,7 @@ var getDefaultImageColumn = function getDefaultImageColumn() {
|
|
|
350
307
|
*
|
|
351
308
|
* @return {Object}
|
|
352
309
|
*/
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
exports.getDefaultImageColumn = getDefaultImageColumn;
|
|
356
|
-
|
|
357
|
-
var getDefaultDropdownColumn = function getDefaultDropdownColumn() {
|
|
310
|
+
var getDefaultDropdownColumn = exports.getDefaultDropdownColumn = function getDefaultDropdownColumn() {
|
|
358
311
|
var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
359
312
|
var options = defaults.options || [getDefaultColumnOption('Yes'), getDefaultColumnOption('No'), getDefaultColumnOption('N/A')];
|
|
360
313
|
return _objectSpread({
|
|
@@ -369,6 +322,7 @@ var getDefaultDropdownColumn = function getDefaultDropdownColumn() {
|
|
|
369
322
|
})
|
|
370
323
|
}, defaults);
|
|
371
324
|
};
|
|
325
|
+
|
|
372
326
|
/**
|
|
373
327
|
* Get column order
|
|
374
328
|
*
|
|
@@ -377,15 +331,12 @@ var getDefaultDropdownColumn = function getDefaultDropdownColumn() {
|
|
|
377
331
|
*
|
|
378
332
|
* @return {Array}
|
|
379
333
|
*/
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
exports.getDefaultDropdownColumn = getDefaultDropdownColumn;
|
|
383
|
-
|
|
384
|
-
var getColumnOrder = function getColumnOrder(columnOrder, columns) {
|
|
334
|
+
var getColumnOrder = exports.getColumnOrder = function getColumnOrder(columnOrder, columns) {
|
|
385
335
|
return columnOrder || getColumns(columns).map(function (column) {
|
|
386
336
|
return column._id;
|
|
387
337
|
});
|
|
388
338
|
};
|
|
339
|
+
|
|
389
340
|
/**
|
|
390
341
|
* This method removes the columnIds of the deleted columns (or) any duplicate columnIds
|
|
391
342
|
* from the tableColumnOrder there by returning a cleaned tableColumnOrder
|
|
@@ -395,16 +346,12 @@ var getColumnOrder = function getColumnOrder(columnOrder, columns) {
|
|
|
395
346
|
*
|
|
396
347
|
* @returns {Array}
|
|
397
348
|
**/
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
exports.getColumnOrder = getColumnOrder;
|
|
401
|
-
|
|
402
|
-
var getCleanedColumnOrder = function getCleanedColumnOrder(columnOrder, columns) {
|
|
349
|
+
var getCleanedColumnOrder = exports.getCleanedColumnOrder = function getCleanedColumnOrder(columnOrder, columns) {
|
|
403
350
|
var nextColumnOrder = [];
|
|
351
|
+
|
|
404
352
|
/**
|
|
405
353
|
* Step 1: Handle generating or retrieving proper column order.
|
|
406
354
|
*/
|
|
407
|
-
|
|
408
355
|
if (columnOrder && columnOrder.length > 0) {
|
|
409
356
|
nextColumnOrder = columnOrder;
|
|
410
357
|
} else if (columns && columns.length > 0) {
|
|
@@ -412,11 +359,10 @@ var getCleanedColumnOrder = function getCleanedColumnOrder(columnOrder, columns)
|
|
|
412
359
|
if (!column.deleted) nextColumnOrder.push(column._id);
|
|
413
360
|
});
|
|
414
361
|
}
|
|
362
|
+
|
|
415
363
|
/**
|
|
416
364
|
* Step 2: Remove column Ids from columnOrder for columns that no longer exist or have been deleted
|
|
417
365
|
*/
|
|
418
|
-
|
|
419
|
-
|
|
420
366
|
var columnLookup = {};
|
|
421
367
|
columns.forEach(function (column) {
|
|
422
368
|
return columnLookup[column._id] = column && !column.deleted;
|
|
@@ -424,47 +370,38 @@ var getCleanedColumnOrder = function getCleanedColumnOrder(columnOrder, columns)
|
|
|
424
370
|
nextColumnOrder = nextColumnOrder.filter(function (columnId) {
|
|
425
371
|
return columnLookup[columnId];
|
|
426
372
|
});
|
|
373
|
+
|
|
427
374
|
/**
|
|
428
375
|
* Step 3: Remove any duplicate column Id references in the column order.
|
|
429
376
|
*/
|
|
430
|
-
|
|
431
377
|
var filteredNextColumnOrder = [];
|
|
432
378
|
nextColumnOrder.forEach(function (columnId) {
|
|
433
379
|
if (columnId && filteredNextColumnOrder.indexOf(columnId) === -1) filteredNextColumnOrder.push(columnId);
|
|
434
380
|
});
|
|
435
381
|
return filteredNextColumnOrder;
|
|
436
382
|
};
|
|
383
|
+
|
|
437
384
|
/**
|
|
438
385
|
* Get table columns with added operands. Operands are the A, B, C, etc.
|
|
439
386
|
*/
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
exports.getCleanedColumnOrder = getCleanedColumnOrder;
|
|
443
|
-
|
|
444
|
-
var getColumns = function getColumns(columns) {
|
|
387
|
+
var getColumns = exports.getColumns = function getColumns(columns) {
|
|
445
388
|
var parsedColumns = columns;
|
|
446
|
-
|
|
447
389
|
if (typeof parsedColumns === 'string') {
|
|
448
390
|
parsedColumns = JSON.parse(parsedColumns);
|
|
449
391
|
}
|
|
450
|
-
|
|
451
392
|
return !parsedColumns ? [] : parsedColumns.filter(function (column) {
|
|
452
393
|
return !column.deleted;
|
|
453
394
|
}).map(function (column, i) {
|
|
454
395
|
var nextColumn = _objectSpread({}, column);
|
|
455
|
-
|
|
456
396
|
nextColumn.operand = getColumnOperand(i);
|
|
457
397
|
return nextColumn;
|
|
458
398
|
});
|
|
459
399
|
};
|
|
400
|
+
|
|
460
401
|
/**
|
|
461
402
|
* Sort columns based on columnOrder
|
|
462
403
|
*/
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
exports.getColumns = getColumns;
|
|
466
|
-
|
|
467
|
-
var sortColumns = function sortColumns(columns, columnOrder) {
|
|
404
|
+
var sortColumns = exports.sortColumns = function sortColumns(columns, columnOrder) {
|
|
468
405
|
if (!columnOrder) return columns;
|
|
469
406
|
var columnLookup = {};
|
|
470
407
|
columns.forEach(function (col) {
|
|
@@ -476,20 +413,15 @@ var sortColumns = function sortColumns(columns, columnOrder) {
|
|
|
476
413
|
});
|
|
477
414
|
return sortedColumns;
|
|
478
415
|
};
|
|
416
|
+
|
|
479
417
|
/**
|
|
480
418
|
* Get the targetColumn with added operand. Operands are A, B ,C etc...
|
|
481
419
|
*/
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
exports.sortColumns = sortColumns;
|
|
485
|
-
|
|
486
|
-
var getTargetColumnWithOperand = function getTargetColumnWithOperand(columnOrder, columns, columnId) {
|
|
420
|
+
var getTargetColumnWithOperand = exports.getTargetColumnWithOperand = function getTargetColumnWithOperand(columnOrder, columns, columnId) {
|
|
487
421
|
var targetColumn = columns.find(function (col) {
|
|
488
422
|
return col._id === columnId;
|
|
489
423
|
});
|
|
490
|
-
|
|
491
424
|
var nextTargetColumn = _objectSpread({}, targetColumn);
|
|
492
|
-
|
|
493
425
|
var targetColumnIndex = columnOrder.findIndex(function (item) {
|
|
494
426
|
return item === targetColumn._id;
|
|
495
427
|
});
|
|
@@ -497,18 +429,16 @@ var getTargetColumnWithOperand = function getTargetColumnWithOperand(columnOrder
|
|
|
497
429
|
nextTargetColumn.operand = targetColumnOperand;
|
|
498
430
|
return nextTargetColumn;
|
|
499
431
|
};
|
|
432
|
+
|
|
500
433
|
/**
|
|
501
434
|
* Return letter for a column index. For intance: A, B, C
|
|
502
435
|
*
|
|
503
436
|
* Used to create the table lookup operands: A1, B12, etc.
|
|
504
437
|
*/
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
exports.getTargetColumnWithOperand = getTargetColumnWithOperand;
|
|
508
|
-
|
|
509
|
-
var getColumnOperand = function getColumnOperand(index) {
|
|
438
|
+
var getColumnOperand = exports.getColumnOperand = function getColumnOperand(index) {
|
|
510
439
|
return String.fromCharCode(65 + index);
|
|
511
440
|
};
|
|
441
|
+
|
|
512
442
|
/**
|
|
513
443
|
* Return rowIndex and columnIndex for cellOperand
|
|
514
444
|
*
|
|
@@ -517,11 +447,7 @@ var getColumnOperand = function getColumnOperand(index) {
|
|
|
517
447
|
* @param {String} cellOperand
|
|
518
448
|
* @returns {Object}
|
|
519
449
|
*/
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
exports.getColumnOperand = getColumnOperand;
|
|
523
|
-
|
|
524
|
-
var getIndexesFromTableCellOperand = function getIndexesFromTableCellOperand(cellOperand) {
|
|
450
|
+
var getIndexesFromTableCellOperand = exports.getIndexesFromTableCellOperand = function getIndexesFromTableCellOperand(cellOperand) {
|
|
525
451
|
var letter = cellOperand.match(/[A-Z]*/gi).find(function (value) {
|
|
526
452
|
return value;
|
|
527
453
|
});
|
|
@@ -530,7 +456,6 @@ var getIndexesFromTableCellOperand = function getIndexesFromTableCellOperand(cel
|
|
|
530
456
|
});
|
|
531
457
|
return {
|
|
532
458
|
columnIndex: _Table.operandLetterIndexes[letter],
|
|
533
|
-
|
|
534
459
|
/**
|
|
535
460
|
* Cell operands start at an index of 1. So to get the true
|
|
536
461
|
* index for the rowIndex we need to substract 1 so we can
|
|
@@ -539,6 +464,7 @@ var getIndexesFromTableCellOperand = function getIndexesFromTableCellOperand(cel
|
|
|
539
464
|
rowIndex: rowIndex - 1
|
|
540
465
|
};
|
|
541
466
|
};
|
|
467
|
+
|
|
542
468
|
/**
|
|
543
469
|
* Get operand lookup for all table/inputGroup fields in a template.
|
|
544
470
|
*
|
|
@@ -547,11 +473,7 @@ var getIndexesFromTableCellOperand = function getIndexesFromTableCellOperand(cel
|
|
|
547
473
|
* ....
|
|
548
474
|
* }
|
|
549
475
|
*/
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
exports.getIndexesFromTableCellOperand = getIndexesFromTableCellOperand;
|
|
553
|
-
|
|
554
|
-
var getTemplateColumnOperandLookup = function getTemplateColumnOperandLookup(template) {
|
|
476
|
+
var getTemplateColumnOperandLookup = exports.getTemplateColumnOperandLookup = function getTemplateColumnOperandLookup(template) {
|
|
555
477
|
var operandLookup = {};
|
|
556
478
|
template.fields.forEach(function (field) {
|
|
557
479
|
if (field.type !== _FieldTypes["default"].table && field.type !== _FieldTypes["default"].inputGroup) return;
|
|
@@ -563,19 +485,17 @@ var getTemplateColumnOperandLookup = function getTemplateColumnOperandLookup(tem
|
|
|
563
485
|
});
|
|
564
486
|
return operandLookup;
|
|
565
487
|
};
|
|
488
|
+
|
|
566
489
|
/**
|
|
567
490
|
* Return operand for cell. For intance: A1, B2, C1
|
|
568
491
|
*
|
|
569
492
|
* @param {String} columnOperand //A, B, C, etc.
|
|
570
493
|
* @param {Number} rowIndex
|
|
571
494
|
*/
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
exports.getTemplateColumnOperandLookup = getTemplateColumnOperandLookup;
|
|
575
|
-
|
|
576
|
-
var getCellOperand = function getCellOperand(columnOperand, rowIndex) {
|
|
495
|
+
var getCellOperand = exports.getCellOperand = function getCellOperand(columnOperand, rowIndex) {
|
|
577
496
|
return "".concat(columnOperand).concat(rowIndex);
|
|
578
497
|
};
|
|
498
|
+
|
|
579
499
|
/**
|
|
580
500
|
* Generate table lookup by rowIndex and column operand
|
|
581
501
|
*
|
|
@@ -594,11 +514,7 @@ var getCellOperand = function getCellOperand(columnOperand, rowIndex) {
|
|
|
594
514
|
* @return {Object}
|
|
595
515
|
|
|
596
516
|
*/
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
exports.getCellOperand = getCellOperand;
|
|
600
|
-
|
|
601
|
-
var generateRowTableLookup = function generateRowTableLookup(rows, columns, tableLookup) {
|
|
517
|
+
var generateRowTableLookup = exports.generateRowTableLookup = function generateRowTableLookup(rows, columns, tableLookup) {
|
|
602
518
|
if (!rows || !columns || !tableLookup) return {};
|
|
603
519
|
var rowTableLookup = {};
|
|
604
520
|
rows.forEach(function (row, rowIndex) {
|
|
@@ -611,6 +527,7 @@ var generateRowTableLookup = function generateRowTableLookup(rows, columns, tabl
|
|
|
611
527
|
});
|
|
612
528
|
return rowTableLookup;
|
|
613
529
|
};
|
|
530
|
+
|
|
614
531
|
/**
|
|
615
532
|
* Generate table lookups for each table field in template. It takes
|
|
616
533
|
* all table & inputGroup fields and generates a table lookup object for them.
|
|
@@ -633,11 +550,7 @@ var generateRowTableLookup = function generateRowTableLookup(rows, columns, tabl
|
|
|
633
550
|
* ...
|
|
634
551
|
* }
|
|
635
552
|
*/
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
exports.generateRowTableLookup = generateRowTableLookup;
|
|
639
|
-
|
|
640
|
-
var generateTableFieldLookups = function generateTableFieldLookups(doc, template) {
|
|
553
|
+
var generateTableFieldLookups = exports.generateTableFieldLookups = function generateTableFieldLookups(doc, template) {
|
|
641
554
|
var tableFields = template.fields.filter(function (field) {
|
|
642
555
|
return (field.type === _FieldTypes["default"].table || field.type === _FieldTypes["default"].inputGroup) && !field.deleted;
|
|
643
556
|
});
|
|
@@ -656,6 +569,7 @@ var generateTableFieldLookups = function generateTableFieldLookups(doc, template
|
|
|
656
569
|
});
|
|
657
570
|
return tableLookups;
|
|
658
571
|
};
|
|
572
|
+
|
|
659
573
|
/**
|
|
660
574
|
* Organize the table lookup on a row by row basis
|
|
661
575
|
* @param {Array} rows
|
|
@@ -676,11 +590,7 @@ var generateTableFieldLookups = function generateTableFieldLookups(doc, template
|
|
|
676
590
|
* }
|
|
677
591
|
*
|
|
678
592
|
*/
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
exports.generateTableFieldLookups = generateTableFieldLookups;
|
|
682
|
-
|
|
683
|
-
var generateTableLookupForRows = function generateTableLookupForRows(rows, columns) {
|
|
593
|
+
var generateTableLookupForRows = exports.generateTableLookupForRows = function generateTableLookupForRows(rows, columns) {
|
|
684
594
|
var tableLookup = generateTableLookup(rows, columns);
|
|
685
595
|
var rowLookup = {};
|
|
686
596
|
Object.keys(tableLookup).forEach(function (key) {
|
|
@@ -692,6 +602,7 @@ var generateTableLookupForRows = function generateTableLookupForRows(rows, colum
|
|
|
692
602
|
});
|
|
693
603
|
return rowLookup;
|
|
694
604
|
};
|
|
605
|
+
|
|
695
606
|
/**
|
|
696
607
|
* Generate Lookup Operand Lookup Table for Table Data. Supports converting
|
|
697
608
|
* formula cells to the calculated value.
|
|
@@ -710,11 +621,7 @@ var generateTableLookupForRows = function generateTableLookupForRows(rows, colum
|
|
|
710
621
|
* B2: 4,
|
|
711
622
|
* }
|
|
712
623
|
*/
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
exports.generateTableLookupForRows = generateTableLookupForRows;
|
|
716
|
-
|
|
717
|
-
var generateTableLookup = function generateTableLookup(rows, columns) {
|
|
624
|
+
var generateTableLookup = exports.generateTableLookup = function generateTableLookup(rows, columns) {
|
|
718
625
|
var tableLookup = {};
|
|
719
626
|
var columnOptionsLookup = {};
|
|
720
627
|
var tableColumns = [];
|
|
@@ -725,10 +632,8 @@ var generateTableLookup = function generateTableLookup(rows, columns) {
|
|
|
725
632
|
});
|
|
726
633
|
filteredColumns.forEach(function (column, i) {
|
|
727
634
|
var nextColumn = _objectSpread({}, column);
|
|
728
|
-
|
|
729
635
|
nextColumn.operand = String.fromCharCode(65 + i);
|
|
730
636
|
tableColumns.push(nextColumn);
|
|
731
|
-
|
|
732
637
|
if (column.type === _FieldTableColumnTypes["default"].dropdown) {
|
|
733
638
|
columnOptionsLookup[column._id] = {};
|
|
734
639
|
column.options.forEach(function (option) {
|
|
@@ -751,7 +656,6 @@ var generateTableLookup = function generateTableLookup(rows, columns) {
|
|
|
751
656
|
if (cellRawValue && typeof cellRawValue === 'number') cellValue = cellRawValue.toString();
|
|
752
657
|
var formulaCell = cellValue !== undefined && cellValue.charAt(0) === '=';
|
|
753
658
|
var containsOperands = cellValue !== undefined && cellValue.match(/[A-Z]([0-9]{1,10})/gi);
|
|
754
|
-
|
|
755
659
|
if (cellValue && column.type === _FieldTableColumnTypes["default"].dropdown) {
|
|
756
660
|
tableLookup[cellKey] = columnOptionsLookup[column._id][cellValue];
|
|
757
661
|
} else if ((cellValue || cellRawValue) && column.type === _FieldTableColumnTypes["default"].image) {
|
|
@@ -772,10 +676,7 @@ var generateTableLookup = function generateTableLookup(rows, columns) {
|
|
|
772
676
|
});
|
|
773
677
|
return tableLookup;
|
|
774
678
|
};
|
|
775
|
-
|
|
776
|
-
exports.generateTableLookup = generateTableLookup;
|
|
777
|
-
|
|
778
|
-
var getFormulaResult = function getFormulaResult(sourceOperand, formula, tableLookup) {
|
|
679
|
+
var getFormulaResult = exports.getFormulaResult = function getFormulaResult(sourceOperand, formula, tableLookup) {
|
|
779
680
|
formula = spreadOperandRange(formula);
|
|
780
681
|
var invalidFormulaError = validFormulaString(sourceOperand, formula);
|
|
781
682
|
if (invalidFormulaError) return tableLookup[sourceOperand] = invalidFormulaError;
|
|
@@ -785,15 +686,14 @@ var getFormulaResult = function getFormulaResult(sourceOperand, formula, tableLo
|
|
|
785
686
|
var operandValue = resolveOperandValue(sourceOperand, operand, tableLookup);
|
|
786
687
|
formula = formula.replace(operand, operandValue);
|
|
787
688
|
});
|
|
689
|
+
|
|
788
690
|
/**
|
|
789
691
|
* Add leading zeros to decimal numbers. hot-formula-parser throws an
|
|
790
692
|
* error if we try to parse non leading decimal numbers. For instace,
|
|
791
693
|
* a non leading decimal number is: .7 .001 etc. We convert these
|
|
792
694
|
* values to 0.7 & 0.001
|
|
793
695
|
*/
|
|
794
|
-
|
|
795
696
|
var noLeadingZeroDecimalMatches = formula.match(/\D\./);
|
|
796
|
-
|
|
797
697
|
if (noLeadingZeroDecimalMatches && noLeadingZeroDecimalMatches.length > 0) {
|
|
798
698
|
noLeadingZeroDecimalMatches.forEach(function (val) {
|
|
799
699
|
var splitVals = val.split('');
|
|
@@ -802,13 +702,13 @@ var getFormulaResult = function getFormulaResult(sourceOperand, formula, tableLo
|
|
|
802
702
|
formula = formula.replace(val, newValue);
|
|
803
703
|
});
|
|
804
704
|
}
|
|
805
|
-
|
|
806
705
|
formula = formula.replace('=', '');
|
|
807
706
|
var parsedValue = parser.parse(formula);
|
|
808
707
|
if (parsedValue.result) parsedValue.result = Math.round(100 * parsedValue.result) / 100;
|
|
809
708
|
tableLookup[sourceOperand] = parsedValue.result ? parsedValue.result.toString() : parsedValue.error;
|
|
810
709
|
return parsedValue;
|
|
811
710
|
};
|
|
711
|
+
|
|
812
712
|
/**
|
|
813
713
|
* Resolve operand value
|
|
814
714
|
* An operand is A1, B1, etc.
|
|
@@ -817,77 +717,61 @@ var getFormulaResult = function getFormulaResult(sourceOperand, formula, tableLo
|
|
|
817
717
|
* @param targetOperand //The cell you are trying to retrieve a value from
|
|
818
718
|
* @param tableLookup //The lookup of values contained in the table;
|
|
819
719
|
*/
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
exports.getFormulaResult = getFormulaResult;
|
|
823
|
-
|
|
824
|
-
var resolveOperandValue = function resolveOperandValue(sourceOperand, targetOperand, tableLookup) {
|
|
720
|
+
var resolveOperandValue = exports.resolveOperandValue = function resolveOperandValue(sourceOperand, targetOperand, tableLookup) {
|
|
825
721
|
var targetValue = tableLookup[targetOperand] && typeof tableLookup[targetOperand] === 'string' ? tableLookup[targetOperand].trim() : tableLookup[targetOperand];
|
|
826
722
|
/**
|
|
827
723
|
* 1. If tableLookup doesn't have a value (or) if the targetValue
|
|
828
724
|
* appears to be an object (image column cell values) return 0.
|
|
829
725
|
*/
|
|
726
|
+
if (!targetValue || (0, _typeof2["default"])(targetValue) === 'object') return 0;
|
|
830
727
|
|
|
831
|
-
|
|
728
|
+
// 2. If tableLookup is already a number return the number value
|
|
729
|
+
if (typeof targetValue === 'number') return targetValue;
|
|
832
730
|
|
|
833
|
-
|
|
731
|
+
// 3. If targetCell has circular reference return invalid.
|
|
834
732
|
//
|
|
835
733
|
// A circular reference can occur when C1 reference B1 and B1 references C1.
|
|
836
734
|
// It creates and infinite circular loop of trying to resovle a value
|
|
837
735
|
// because they both depend on eachother.
|
|
736
|
+
if (sourceOperand && hasCircularOperandReference(targetValue, sourceOperand) || targetOperand && hasCircularOperandReference(targetValue, targetOperand)) return '* INVALID - Circular Reference';
|
|
838
737
|
|
|
839
|
-
|
|
840
|
-
|
|
738
|
+
// 4. If targetCell has a formula value
|
|
841
739
|
if (targetValue !== undefined && targetValue.charAt(0) === '=') {
|
|
842
740
|
var result = getFormulaResult(sourceOperand, targetValue, tableLookup);
|
|
843
741
|
return result.result || result.error;
|
|
844
|
-
}
|
|
845
|
-
// formula cell then just return the cell value
|
|
846
|
-
|
|
742
|
+
}
|
|
847
743
|
|
|
744
|
+
// 5. If targetCell has a normal value or an already resolved
|
|
745
|
+
// formula cell then just return the cell value
|
|
848
746
|
if (targetValue) return targetValue;
|
|
849
747
|
};
|
|
850
|
-
|
|
851
|
-
exports.resolveOperandValue = resolveOperandValue;
|
|
852
|
-
|
|
853
|
-
var hasCircularOperandReference = function hasCircularOperandReference(targetValue, lookupOperand) {
|
|
748
|
+
var hasCircularOperandReference = exports.hasCircularOperandReference = function hasCircularOperandReference(targetValue, lookupOperand) {
|
|
854
749
|
var regExp = new RegExp(lookupOperand, 'gi');
|
|
855
750
|
var foundOperandReferences = targetValue.match(regExp);
|
|
856
751
|
return !!(foundOperandReferences && foundOperandReferences.length > 0);
|
|
857
752
|
};
|
|
858
|
-
|
|
859
|
-
exports.hasCircularOperandReference = hasCircularOperandReference;
|
|
860
|
-
|
|
861
|
-
var hasOperandRange = function hasOperandRange(targetValue) {
|
|
753
|
+
var hasOperandRange = exports.hasOperandRange = function hasOperandRange(targetValue) {
|
|
862
754
|
return /[A-Z]([0-9]{1,10}):[A-Z]([0-9]{1,10})/gi.test(targetValue);
|
|
863
755
|
};
|
|
756
|
+
|
|
864
757
|
/**
|
|
865
758
|
* Check for any invalid patterns inside of the formula string
|
|
866
759
|
*/
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
exports.hasOperandRange = hasOperandRange;
|
|
870
|
-
|
|
871
|
-
var validFormulaString = function validFormulaString(sourceOperand, formula) {
|
|
760
|
+
var validFormulaString = exports.validFormulaString = function validFormulaString(sourceOperand, formula) {
|
|
872
761
|
if (sourceOperand && hasCircularOperandReference(formula, sourceOperand)) {
|
|
873
762
|
return '*INVALID - Circular Reference';
|
|
874
763
|
}
|
|
875
|
-
|
|
876
764
|
var lowercaseOperands = formula.match(/[a-z]/g);
|
|
877
|
-
|
|
878
765
|
if (lowercaseOperands && lowercaseOperands.length > 0) {
|
|
879
766
|
return '*INVALID - Lowercase Letters Not Supported';
|
|
880
767
|
}
|
|
881
768
|
};
|
|
769
|
+
|
|
882
770
|
/**
|
|
883
771
|
* Spread the operand range into individual operands.
|
|
884
772
|
* For instance: SUM(A1:A4) turns into SUM(A1, A2, A3, A4);
|
|
885
773
|
*/
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
exports.validFormulaString = validFormulaString;
|
|
889
|
-
|
|
890
|
-
var spreadOperandRange = function spreadOperandRange(targetValue) {
|
|
774
|
+
var spreadOperandRange = exports.spreadOperandRange = function spreadOperandRange(targetValue) {
|
|
891
775
|
if (!hasOperandRange(targetValue)) return targetValue;
|
|
892
776
|
var operandRangeMatches = targetValue.match(/[A-Z]([0-9]{1,10}):[A-Z]([0-9]{1,10})/gi);
|
|
893
777
|
var operandRange = operandRangeMatches[0];
|
|
@@ -897,46 +781,43 @@ var spreadOperandRange = function spreadOperandRange(targetValue) {
|
|
|
897
781
|
var operandAIndex = operandA.match(/[0-9]+/gi) ? operandA.match(/[0-9]+/gi)[0] : null;
|
|
898
782
|
var operandB = operands[1];
|
|
899
783
|
var operandBLetter = operandB.match(/[A-Z]+/gi) ? operandB.match(/[A-Z]+/gi)[0] : null;
|
|
900
|
-
var operandBIndex = operandB.match(/[0-9]+/gi) ? operandB.match(/[0-9]+/gi)[0] : null;
|
|
784
|
+
var operandBIndex = operandB.match(/[0-9]+/gi) ? operandB.match(/[0-9]+/gi)[0] : null;
|
|
901
785
|
|
|
902
|
-
|
|
903
|
-
|
|
786
|
+
// If any values are missing return orignal targetValue
|
|
787
|
+
if (!operandALetter || !operandAIndex || !operandBLetter || !operandBIndex) return targetValue;
|
|
904
788
|
|
|
789
|
+
// Handle row range.
|
|
790
|
+
// For instance: C1:C8
|
|
905
791
|
if (operandALetter === operandBLetter) {
|
|
906
792
|
var columnOperand = operandALetter;
|
|
907
793
|
var startIndex = parseInt(operandAIndex, 10);
|
|
908
794
|
var endIndex = parseInt(operandBIndex, 10);
|
|
909
795
|
var operandRangeValues = operandA;
|
|
910
796
|
var i = startIndex + 1;
|
|
911
|
-
|
|
912
797
|
while (i <= endIndex) {
|
|
913
798
|
operandRangeValues += ",".concat(columnOperand).concat(i);
|
|
914
799
|
i++;
|
|
915
800
|
}
|
|
916
|
-
|
|
917
801
|
targetValue = targetValue.replace(/[A-Z](\d{1,10}):[A-Z](\d{1,10})/gi, operandRangeValues);
|
|
918
|
-
}
|
|
802
|
+
}
|
|
803
|
+
|
|
804
|
+
// Handle column range
|
|
919
805
|
// For instance, A1:D1
|
|
920
806
|
else {
|
|
921
807
|
var _startIndex = parseInt(_Table["default"].operandLetters.indexOf(operandALetter.toUpperCase()), 10);
|
|
922
|
-
|
|
923
808
|
var _endIndex = parseInt(_Table["default"].operandLetters.indexOf(operandBLetter.toUpperCase()), 10);
|
|
924
|
-
|
|
925
809
|
var _operandRangeValues = operandA;
|
|
926
|
-
|
|
927
810
|
var _i = _startIndex + 1;
|
|
928
|
-
|
|
929
811
|
while (_i <= _endIndex) {
|
|
930
812
|
var nextOperandLetter = _Table["default"].operandLetters[_i];
|
|
931
813
|
_operandRangeValues += ",".concat(nextOperandLetter).concat(operandAIndex);
|
|
932
814
|
_i++;
|
|
933
815
|
}
|
|
934
|
-
|
|
935
816
|
targetValue = targetValue.replace(/[A-Z](\d{1,10}):[A-Z](\d{1,10})/gi, _operandRangeValues);
|
|
936
817
|
}
|
|
937
|
-
|
|
938
818
|
return targetValue;
|
|
939
819
|
};
|
|
820
|
+
|
|
940
821
|
/**
|
|
941
822
|
* Primarily used for Mobile
|
|
942
823
|
*
|
|
@@ -948,11 +829,7 @@ var spreadOperandRange = function spreadOperandRange(targetValue) {
|
|
|
948
829
|
* @param {Array} rows
|
|
949
830
|
*
|
|
950
831
|
*/
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
exports.spreadOperandRange = spreadOperandRange;
|
|
954
|
-
|
|
955
|
-
var generateInputGroupFields = function generateInputGroupFields(field, columns) {
|
|
832
|
+
var generateInputGroupFields = exports.generateInputGroupFields = function generateInputGroupFields(field, columns) {
|
|
956
833
|
var rows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [getDefaultRow()];
|
|
957
834
|
var fieldSettings = arguments.length > 3 ? arguments[3] : undefined;
|
|
958
835
|
var activity = arguments.length > 4 ? arguments[4] : undefined;
|
|
@@ -971,7 +848,6 @@ var generateInputGroupFields = function generateInputGroupFields(field, columns)
|
|
|
971
848
|
var rowOrder = getTableFieldRowOrder(field._id, fieldSettings, tableRows);
|
|
972
849
|
var sortedTableRows = sortRows(tableRows, rowOrder);
|
|
973
850
|
var cellActivityLookup = {};
|
|
974
|
-
|
|
975
851
|
if (activity && activity.length > 0) {
|
|
976
852
|
activity.forEach(function (act) {
|
|
977
853
|
var rowId = act.document.row;
|
|
@@ -981,14 +857,13 @@ var generateInputGroupFields = function generateInputGroupFields(field, columns)
|
|
|
981
857
|
cellActivityLookup[cellKey] += 1;
|
|
982
858
|
});
|
|
983
859
|
}
|
|
984
|
-
|
|
985
860
|
sortedTableRows.forEach(function (row, rowIndex) {
|
|
986
861
|
var firstRowIndex = rowIndex === 0;
|
|
987
862
|
var lastRowIndex = rowIndex === sortedTableRows.length - 1;
|
|
863
|
+
|
|
988
864
|
/**
|
|
989
865
|
* Step 1: Add InputGroup Row Header
|
|
990
866
|
*/
|
|
991
|
-
|
|
992
867
|
tableReferences.push({
|
|
993
868
|
uniqueId: "".concat(field._id).concat(row._id),
|
|
994
869
|
_id: field._id,
|
|
@@ -1001,10 +876,10 @@ var generateInputGroupFields = function generateInputGroupFields(field, columns)
|
|
|
1001
876
|
firstIndex: rowIndex === 0,
|
|
1002
877
|
lastIndex: false
|
|
1003
878
|
});
|
|
879
|
+
|
|
1004
880
|
/**
|
|
1005
881
|
* Step 2: Add Input Group Row Cells
|
|
1006
882
|
*/
|
|
1007
|
-
|
|
1008
883
|
tableColumns.forEach(function (column, columnIndex) {
|
|
1009
884
|
var lastColumnIndex = columnIndex === tableColumns.length - 1;
|
|
1010
885
|
var value = row && row.cells ? row.cells[column._id] : '';
|
|
@@ -1031,6 +906,7 @@ var generateInputGroupFields = function generateInputGroupFields(field, columns)
|
|
|
1031
906
|
});
|
|
1032
907
|
return tableReferences;
|
|
1033
908
|
};
|
|
909
|
+
|
|
1034
910
|
/**
|
|
1035
911
|
* Populate table rows with values
|
|
1036
912
|
* - Dropdown cells will have chosen values
|
|
@@ -1044,10 +920,7 @@ var generateInputGroupFields = function generateInputGroupFields(field, columns)
|
|
|
1044
920
|
* @returns
|
|
1045
921
|
*/
|
|
1046
922
|
|
|
1047
|
-
|
|
1048
|
-
exports.generateInputGroupFields = generateInputGroupFields;
|
|
1049
|
-
|
|
1050
|
-
var getTableRowLookupWithPopulatedDropdownCells = function getTableRowLookupWithPopulatedDropdownCells(columns, rows) {
|
|
923
|
+
var getTableRowLookupWithPopulatedDropdownCells = exports.getTableRowLookupWithPopulatedDropdownCells = function getTableRowLookupWithPopulatedDropdownCells(columns, rows) {
|
|
1051
924
|
var rowsLookup = {};
|
|
1052
925
|
var tableLookup = generateTableLookup(rows, columns);
|
|
1053
926
|
var validRows = getRows(rows);
|
|
@@ -1056,11 +929,9 @@ var getTableRowLookupWithPopulatedDropdownCells = function getTableRowLookupWith
|
|
|
1056
929
|
var nextRow = _objectSpread(_objectSpread({}, row), {}, {
|
|
1057
930
|
cells: _objectSpread({}, row.cells)
|
|
1058
931
|
});
|
|
1059
|
-
|
|
1060
932
|
validColumns.forEach(function (column) {
|
|
1061
933
|
var cellOperand = getCellOperand(column.operand, rowIndex + 1);
|
|
1062
934
|
var value = tableLookup[cellOperand];
|
|
1063
|
-
|
|
1064
935
|
if (value && column.type === _FieldTableColumnTypes["default"].dropdown) {
|
|
1065
936
|
nextRow.cells[column._id] = column.optionsLookup[value] ? column.optionsLookup[value].value : value;
|
|
1066
937
|
} else {
|
|
@@ -1071,6 +942,7 @@ var getTableRowLookupWithPopulatedDropdownCells = function getTableRowLookupWith
|
|
|
1071
942
|
});
|
|
1072
943
|
return rowsLookup;
|
|
1073
944
|
};
|
|
945
|
+
|
|
1074
946
|
/**
|
|
1075
947
|
* Populate inputGroup dropdown questions with chosen value
|
|
1076
948
|
*
|
|
@@ -1082,20 +954,15 @@ var getTableRowLookupWithPopulatedDropdownCells = function getTableRowLookupWith
|
|
|
1082
954
|
* @returns
|
|
1083
955
|
*/
|
|
1084
956
|
|
|
1085
|
-
|
|
1086
|
-
exports.getTableRowLookupWithPopulatedDropdownCells = getTableRowLookupWithPopulatedDropdownCells;
|
|
1087
|
-
|
|
1088
|
-
var getInputGroupRowLookupWithPopulatedDropdownCells = function getInputGroupRowLookupWithPopulatedDropdownCells(columns, rows) {
|
|
957
|
+
var getInputGroupRowLookupWithPopulatedDropdownCells = exports.getInputGroupRowLookupWithPopulatedDropdownCells = function getInputGroupRowLookupWithPopulatedDropdownCells(columns, rows) {
|
|
1089
958
|
var rowsLookup = {};
|
|
1090
959
|
var validRows = typeof rows === 'string' ? JSON.parse(rows) : rows;
|
|
1091
960
|
validRows.forEach(function (row) {
|
|
1092
961
|
var nextRow = _objectSpread(_objectSpread({}, row), {}, {
|
|
1093
962
|
cells: _objectSpread({}, row.cells)
|
|
1094
963
|
});
|
|
1095
|
-
|
|
1096
964
|
columns.forEach(function (column) {
|
|
1097
965
|
var optionId = nextRow.cells[column._id];
|
|
1098
|
-
|
|
1099
966
|
if (optionId && column.type === _FieldTableColumnTypes["default"].dropdown) {
|
|
1100
967
|
nextRow.cells[column._id] = column.optionsLookup[optionId] ? column.optionsLookup[optionId].value : optionId;
|
|
1101
968
|
}
|
|
@@ -1104,6 +971,7 @@ var getInputGroupRowLookupWithPopulatedDropdownCells = function getInputGroupRow
|
|
|
1104
971
|
});
|
|
1105
972
|
return rowsLookup;
|
|
1106
973
|
};
|
|
974
|
+
|
|
1107
975
|
/**
|
|
1108
976
|
* Generate row index lookup:
|
|
1109
977
|
* @param {*} fieldId
|
|
@@ -1111,11 +979,7 @@ var getInputGroupRowLookupWithPopulatedDropdownCells = function getInputGroupRow
|
|
|
1111
979
|
* @param {*} rows
|
|
1112
980
|
* @returns
|
|
1113
981
|
*/
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
exports.getInputGroupRowLookupWithPopulatedDropdownCells = getInputGroupRowLookupWithPopulatedDropdownCells;
|
|
1117
|
-
|
|
1118
|
-
var getRowIndexLookup = function getRowIndexLookup(fieldId, fieldSettings, rows) {
|
|
982
|
+
var getRowIndexLookup = exports.getRowIndexLookup = function getRowIndexLookup(fieldId, fieldSettings, rows) {
|
|
1119
983
|
var rowOrder = getTableFieldRowOrder(fieldId, fieldSettings, rows);
|
|
1120
984
|
var rowIndexLookup = {};
|
|
1121
985
|
rowOrder.forEach(function (rowId, index) {
|
|
@@ -1123,6 +987,7 @@ var getRowIndexLookup = function getRowIndexLookup(fieldId, fieldSettings, rows)
|
|
|
1123
987
|
});
|
|
1124
988
|
return rowIndexLookup;
|
|
1125
989
|
};
|
|
990
|
+
|
|
1126
991
|
/**
|
|
1127
992
|
* Handle Table Cell Change
|
|
1128
993
|
*
|
|
@@ -1132,17 +997,14 @@ var getRowIndexLookup = function getRowIndexLookup(fieldId, fieldSettings, rows)
|
|
|
1132
997
|
* @param {String} value
|
|
1133
998
|
* @param {Func} callback
|
|
1134
999
|
*/
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
exports.getRowIndexLookup = getRowIndexLookup;
|
|
1138
|
-
|
|
1139
|
-
var handleTableCellChange = function handleTableCellChange(rows, rowId, columnId, val, callback) {
|
|
1000
|
+
var handleTableCellChange = exports.handleTableCellChange = function handleTableCellChange(rows, rowId, columnId, val, callback) {
|
|
1140
1001
|
var targetRowIndex = rows.findIndex(function (row) {
|
|
1141
1002
|
return row._id === rowId;
|
|
1142
1003
|
});
|
|
1143
1004
|
var row = rows[targetRowIndex];
|
|
1144
|
-
var cells = row ? row.cells : {};
|
|
1005
|
+
var cells = row ? row.cells : {};
|
|
1145
1006
|
|
|
1007
|
+
//Only save data if value has changed
|
|
1146
1008
|
if (cells[columnId] !== val && callback) {
|
|
1147
1009
|
callback({
|
|
1148
1010
|
targetRowIndex: targetRowIndex,
|
|
@@ -1153,39 +1015,34 @@ var handleTableCellChange = function handleTableCellChange(rows, rowId, columnId
|
|
|
1153
1015
|
});
|
|
1154
1016
|
}
|
|
1155
1017
|
};
|
|
1018
|
+
|
|
1156
1019
|
/**
|
|
1157
1020
|
* Handle Insert Table Row
|
|
1158
1021
|
*
|
|
1159
1022
|
* @param {Number} rowIndex
|
|
1160
1023
|
* @param {Func} callback
|
|
1161
1024
|
*/
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
exports.handleTableCellChange = handleTableCellChange;
|
|
1165
|
-
|
|
1166
|
-
var handleInsertTableRow = function handleInsertTableRow(rowIndex, callback) {
|
|
1025
|
+
var handleInsertTableRow = exports.handleInsertTableRow = function handleInsertTableRow(rowIndex, callback) {
|
|
1167
1026
|
if (callback) callback({
|
|
1168
1027
|
targetRowIndex: rowIndex + 1,
|
|
1169
1028
|
row: getDefaultRow()
|
|
1170
1029
|
});
|
|
1171
1030
|
};
|
|
1031
|
+
|
|
1172
1032
|
/**
|
|
1173
1033
|
* Handle Create New Table Row
|
|
1174
1034
|
*
|
|
1175
1035
|
* @param {Array} rows //List of current table rows
|
|
1176
1036
|
* @param {Func} callback
|
|
1177
1037
|
*/
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
exports.handleInsertTableRow = handleInsertTableRow;
|
|
1181
|
-
|
|
1182
|
-
var handleCreateTableRow = function handleCreateTableRow(rows, callback) {
|
|
1038
|
+
var handleCreateTableRow = exports.handleCreateTableRow = function handleCreateTableRow(rows, callback) {
|
|
1183
1039
|
var targetRowIndex = rows.length;
|
|
1184
1040
|
if (callback) callback({
|
|
1185
1041
|
targetRowIndex: targetRowIndex,
|
|
1186
1042
|
row: getDefaultRow()
|
|
1187
1043
|
});
|
|
1188
1044
|
};
|
|
1045
|
+
|
|
1189
1046
|
/**
|
|
1190
1047
|
* Handle Duplicate Table Row
|
|
1191
1048
|
*
|
|
@@ -1194,11 +1051,7 @@ var handleCreateTableRow = function handleCreateTableRow(rows, callback) {
|
|
|
1194
1051
|
* @param {Number} rowIndex
|
|
1195
1052
|
* @param {Func} callback
|
|
1196
1053
|
*/
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
exports.handleCreateTableRow = handleCreateTableRow;
|
|
1200
|
-
|
|
1201
|
-
var handleDuplicateTableRow = function handleDuplicateTableRow(rows, rowId, rowIndex, callback) {
|
|
1054
|
+
var handleDuplicateTableRow = exports.handleDuplicateTableRow = function handleDuplicateTableRow(rows, rowId, rowIndex, callback) {
|
|
1202
1055
|
var duplicateRow = rows.find(function (row) {
|
|
1203
1056
|
return row._id === rowId;
|
|
1204
1057
|
});
|
|
@@ -1210,17 +1063,14 @@ var handleDuplicateTableRow = function handleDuplicateTableRow(rows, rowId, rowI
|
|
|
1210
1063
|
row: newRow
|
|
1211
1064
|
});
|
|
1212
1065
|
};
|
|
1066
|
+
|
|
1213
1067
|
/**
|
|
1214
1068
|
* Handle Move Table Row Up
|
|
1215
1069
|
*
|
|
1216
1070
|
* @param {Number} rowIndex
|
|
1217
1071
|
* @param {Func} callback
|
|
1218
1072
|
*/
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
exports.handleDuplicateTableRow = handleDuplicateTableRow;
|
|
1222
|
-
|
|
1223
|
-
var handleMoveTableRowUp = function handleMoveTableRowUp(rowIndex, callback) {
|
|
1073
|
+
var handleMoveTableRowUp = exports.handleMoveTableRowUp = function handleMoveTableRowUp(rowIndex, callback) {
|
|
1224
1074
|
//If first row then ignore
|
|
1225
1075
|
if (rowIndex === 0) return;
|
|
1226
1076
|
var targetRowIndex = rowIndex - 1;
|
|
@@ -1228,6 +1078,7 @@ var handleMoveTableRowUp = function handleMoveTableRowUp(rowIndex, callback) {
|
|
|
1228
1078
|
targetRowIndex: targetRowIndex
|
|
1229
1079
|
});
|
|
1230
1080
|
};
|
|
1081
|
+
|
|
1231
1082
|
/**
|
|
1232
1083
|
* Handle Move Table Row Down
|
|
1233
1084
|
*
|
|
@@ -1235,11 +1086,7 @@ var handleMoveTableRowUp = function handleMoveTableRowUp(rowIndex, callback) {
|
|
|
1235
1086
|
* @param {Number} rowIndex
|
|
1236
1087
|
* @param {Func} callback
|
|
1237
1088
|
*/
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
exports.handleMoveTableRowUp = handleMoveTableRowUp;
|
|
1241
|
-
|
|
1242
|
-
var handleMoveTableRowDown = function handleMoveTableRowDown(rows, rowIndex, callback) {
|
|
1089
|
+
var handleMoveTableRowDown = exports.handleMoveTableRowDown = function handleMoveTableRowDown(rows, rowIndex, callback) {
|
|
1243
1090
|
//If last row then ignore
|
|
1244
1091
|
if (rowIndex >= rows.length - 1) return;
|
|
1245
1092
|
var targetRowIndex = rowIndex + 1;
|
|
@@ -1247,9 +1094,7 @@ var handleMoveTableRowDown = function handleMoveTableRowDown(rows, rowIndex, cal
|
|
|
1247
1094
|
targetRowIndex: targetRowIndex
|
|
1248
1095
|
});
|
|
1249
1096
|
};
|
|
1250
|
-
|
|
1251
|
-
exports.handleMoveTableRowDown = handleMoveTableRowDown;
|
|
1252
|
-
var _default = {
|
|
1097
|
+
var _default = exports["default"] = {
|
|
1253
1098
|
generateTableLookup: generateTableLookup,
|
|
1254
1099
|
generateTableLookupForRows: generateTableLookupForRows,
|
|
1255
1100
|
generateInputGroupFields: generateInputGroupFields,
|
|
@@ -1291,5 +1136,4 @@ var _default = {
|
|
|
1291
1136
|
handleMoveTableRowDown: handleMoveTableRowDown,
|
|
1292
1137
|
FieldTableColumnTypes: _FieldTableColumnTypes["default"],
|
|
1293
1138
|
FieldTableCustomColumnIds: _FieldTableCustomColumnIds["default"]
|
|
1294
|
-
};
|
|
1295
|
-
exports["default"] = _default;
|
|
1139
|
+
};
|