@builttocreate/engine-utils 2.9.0 → 2.9.1-beta.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.
@@ -7,8 +7,12 @@ exports["default"] = void 0;
7
7
  var text = 'text';
8
8
  var dropdown = 'dropdown';
9
9
  var image = 'image';
10
+ var number = 'number';
11
+ var date = 'date';
10
12
  var _default = exports["default"] = {
11
13
  text: text,
12
14
  dropdown: dropdown,
13
- image: image
15
+ image: image,
16
+ number: number,
17
+ date: date
14
18
  };
@@ -5,7 +5,7 @@ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
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.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;
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.getDefaultDateColumn = 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;
9
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
@@ -88,9 +88,29 @@ var getFilteredRowOrder = exports.getFilteredRowOrder = function getFilteredRowO
88
88
  if (row.deleted) return;
89
89
  var rowMatched = true;
90
90
  filteredColumnIds.forEach(function (columnId) {
91
- var filter = filters[columnId] ? filters[columnId].toLowerCase() : '';
92
- var value = row.cells && row.cells[columnId] ? row.cells[columnId].toLowerCase() : '';
93
- if (filter && (!value || value.indexOf(filter) === -1)) rowMatched = false;
91
+ /**
92
+ * The following logic compares the filter value with the cell value.
93
+ *
94
+ * 1. For table text columns, the cell value is a string.
95
+ * 2. For table number columns, the cell value is a number.
96
+ */
97
+
98
+ var filter = '';
99
+ if (filters[columnId] && typeof filters[columnId] === 'string') {
100
+ filter = filters[columnId].toLowerCase();
101
+ } else if (filters[columnId] && typeof filters[columnId] === 'number') {
102
+ filter = filters[columnId];
103
+ }
104
+ var value = '';
105
+ if (row.cells && row.cells[columnId]) {
106
+ if (typeof row.cells[columnId] === 'string') {
107
+ value = row.cells[columnId].toLowerCase();
108
+ } else if (typeof row.cells[columnId] === 'number') {
109
+ value = row.cells[columnId];
110
+ }
111
+ }
112
+ if (filter && typeof value === 'string' && (!value || value.indexOf(filter) === -1)) rowMatched = false;
113
+ if (filter && typeof value === 'number' && (!value || value !== filter)) rowMatched = false;
94
114
  });
95
115
  if (rowMatched) matchedRows[row._id] = true;
96
116
  });
@@ -262,6 +282,42 @@ var getDefaultTextColumn = exports.getDefaultTextColumn = function getDefaultTex
262
282
  }, defaults);
263
283
  };
264
284
 
285
+ /**
286
+ * Get default Number column for table field
287
+ *
288
+ * @param {Object} defaults //Overwrite any values with this defaults object
289
+ *
290
+ * @return {Object}
291
+ */
292
+ var getDefaultNumberColumn = exports.getDefaultNumberColumn = function getDefaultNumberColumn() {
293
+ var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
294
+ return _objectSpread({
295
+ _id: (0, _generateObjectId["default"])(),
296
+ type: _FieldTableColumnTypes["default"].number,
297
+ title: 'Number Column',
298
+ deleted: false,
299
+ width: 200
300
+ }, defaults);
301
+ };
302
+
303
+ /**
304
+ * Get default Number column for table field
305
+ *
306
+ * @param {Object} defaults //Overwrite any values with this defaults object
307
+ *
308
+ * @return {Object}
309
+ */
310
+ var getDefaultDateColumn = exports.getDefaultDateColumn = function getDefaultDateColumn() {
311
+ var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
312
+ return _objectSpread({
313
+ _id: (0, _generateObjectId["default"])(),
314
+ type: _FieldTableColumnTypes["default"].date,
315
+ title: 'Date Column',
316
+ deleted: false,
317
+ width: 200
318
+ }, defaults);
319
+ };
320
+
265
321
  /**
266
322
  * Get default dropdown column for table field
267
323
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builttocreate/engine-utils",
3
- "version": "2.9.0",
3
+ "version": "2.9.1-beta.1",
4
4
  "description": "Utility library for common logic shared across web and mobile",
5
5
  "main": "dist/index.js",
6
6
  "files": [