dtable-utils 5.0.5-beta.3 → 5.0.5

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.
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
5
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
7
6
  var dayjs = require('dayjs');
8
7
  var utc = require('dayjs/plugin/utc');
@@ -19,13 +18,10 @@ var filterModifier = require('../../constants/filter/filter-modifier.js');
19
18
 
20
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
20
 
22
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
23
21
  var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
24
22
  var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
25
23
  var utc__default = /*#__PURE__*/_interopDefaultLegacy(utc);
26
24
 
27
- 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; }
28
- 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) { _defineProperty__default["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; }
29
25
  dayjs__default["default"].extend(utc__default["default"]);
30
26
 
31
27
  // TEXT | GEOLOCATION | EMAIL | AUTO_NUMBER
@@ -128,7 +124,7 @@ var dateSqlCondition = function dateSqlCondition(column, filterItem) {
128
124
  filter_term = filterItem.filter_term,
129
125
  filter_term_modifier = filterItem.filter_term_modifier;
130
126
  var filterLabel = [filterPredicate.FILTER_PREDICATE_TYPE.EMPTY, filterPredicate.FILTER_PREDICATE_TYPE.NOT_EMPTY];
131
- if ((!filter_term || filter_term.length === 0) && filterLabel.indexOf(filter_predicate) < 0 && filter_term_modifier === filterModifier.FILTER_TERM_MODIFIER_TYPE.EXACT_DATE) {
127
+ if (filter_term.length === 0 && filterLabel.indexOf(filter_predicate) < 0 && filter_term_modifier === filterModifier.FILTER_TERM_MODIFIER_TYPE.EXACT_DATE) {
132
128
  return '';
133
129
  }
134
130
  if (filter_predicate === filterPredicate.FILTER_PREDICATE_TYPE.IS) {
@@ -187,7 +183,7 @@ var ctimeSqlCondition = function ctimeSqlCondition(column, filterItem) {
187
183
  filter_term = filterItem.filter_term,
188
184
  filter_term_modifier = filterItem.filter_term_modifier;
189
185
  var filterLabel = [filterPredicate.FILTER_PREDICATE_TYPE.EMPTY, filterPredicate.FILTER_PREDICATE_TYPE.NOT_EMPTY];
190
- if ((!filter_term || filter_term.length === 0) && filterLabel.indexOf(filter_predicate) < 0 && filter_term_modifier === filterModifier.FILTER_TERM_MODIFIER_TYPE.EXACT_DATE) {
186
+ if (filter_term.length === 0 && filterLabel.indexOf(filter_predicate) < 0 && filter_term_modifier === filterModifier.FILTER_TERM_MODIFIER_TYPE.EXACT_DATE) {
191
187
  return '';
192
188
  }
193
189
 
@@ -706,103 +702,32 @@ var getSqlConditionByFilter = function getSqlConditionByFilter(column, filterIte
706
702
  }
707
703
  return '';
708
704
  };
709
-
710
- /**
711
- * FilterGroup: {"filter_conjunction": "And", filters: [Filter, ...]}
712
- * Filter: {"column_key": "xxx", filter_predicate: "xxx", ...}
713
- * @param {array} filters
714
- * @param {object} table
715
- * @param {string} username
716
- * @param {string} userId
717
- * @param {object} userDepartmentIdsMap
718
- * @returns string
719
- */
720
- var getSqlConditionsByFilters = function getSqlConditionsByFilters(filters, table, username, userId, userDepartmentIdsMap) {
721
- var columns = table.columns;
705
+ var filter2SqlCondition = function filter2SqlCondition(table, view, username, userId, userDepartmentIdsMap) {
722
706
  var patchedUsername = patchUtils["default"].getUsername(username);
723
707
  var patchedUserId = patchUtils["default"].getUserId(userId);
724
708
  var patchedUserDepartmentIdsMap = patchUtils["default"].getUserDepartmentIdsMap(userDepartmentIdsMap);
725
- var sqlConditions = [];
726
- filters.forEach(function (filter) {
727
- if (core.checkIsFilterGroup(filter)) {
728
- var subFilters = filter.filters,
729
- sub_filter_conjunction = filter.filter_conjunction;
730
- var subSqlConditions = subFilters.map(function (subFilter) {
731
- var filterColumn = column$1.getTableColumnByKey(table, subFilter.column_key);
732
- return getSqlConditionByFilter(filterColumn, subFilter, patchedUsername, patchedUserId, patchedUserDepartmentIdsMap);
733
- });
734
- var subSqlConditionsLength = subSqlConditions.length;
735
- if (subSqlConditionsLength > 0) {
736
- var subSqlConditionsString = subSqlConditions.length === 1 ? subSqlConditions + '' : "(".concat(subSqlConditions.join(' ' + sub_filter_conjunction + ' '), ")");
737
- sqlConditions.push(subSqlConditionsString);
738
- }
739
- } else {
740
- var column_key = filter.column_key;
741
- var filterColumn = columns.find(function (column) {
742
- return column.key === column_key;
743
- });
744
- sqlConditions.push(getSqlConditionByFilter(filterColumn, filter, patchedUsername, patchedUserId, patchedUserDepartmentIdsMap));
745
- }
746
- });
747
- return sqlConditions;
748
- };
749
- var checkFilter = function checkFilter(filter$1, columns) {
750
- var _ValidateFilter$valid = filter.ValidateFilter.validate(filter$1, columns),
751
- error_message = _ValidateFilter$valid.error_message;
752
- if (error_message) {
753
- if (error_message === index.FILTER_ERR_MSG.INCOMPLETE_FILTER) {
754
- return false;
755
- }
756
- throw new Error(error_message);
757
- }
758
- return true;
759
- };
760
- var validateFilters = function validateFilters(filters, columns) {
761
- var validFilters = [];
762
- filters.forEach(function (filter) {
763
- if (core.checkIsFilterGroup(filter)) {
764
- var subFilters = filter.filters;
765
- if (!Array.isArray(subFilters) || subFilters.length === 0) {
766
- return;
767
- }
768
- var validSubFilters = subFilters.filter(function (subFilter) {
769
- return checkFilter(subFilter, columns);
770
- });
771
- if (validSubFilters.length === 0) {
772
- return;
773
- }
774
- validFilters.push(_objectSpread(_objectSpread({}, filter), {}, {
775
- filters: validSubFilters
776
- }));
777
- } else {
778
- if (!checkFilter(filter, columns)) {
779
- return;
780
- }
781
- validFilters.push(filter);
782
- }
783
- });
784
- return validFilters;
785
- };
786
- var filter2SqlCondition = function filter2SqlCondition(table, view, username, userId, userDepartmentIdsMap) {
787
709
  var columns = table.columns;
788
710
  var filter_conjunction = view.filter_conjunction,
789
711
  filters = view.filters;
790
712
  if (typeof filter_conjunction !== 'string' || !Array.isArray(filters) || filters.length === 0) {
791
713
  return '';
792
714
  }
793
- var validFilters = [];
794
- try {
795
- validFilters = validateFilters(filters, columns);
796
- } catch (err) {
797
- throw new Error(err.message);
798
- }
799
- if (validFilters.length === 0) {
800
- return '';
801
- }
802
715
 
803
716
  // 1. add WHERE condition
804
717
  var filterHeader = 'WHERE ';
805
- var stringList = getSqlConditionsByFilters(validFilters, table, username, userId, userDepartmentIdsMap);
718
+ var stringList = filters.map(function (filterItem) {
719
+ var _ValidateFilter$valid = filter.ValidateFilter.validate(filterItem, columns),
720
+ error_message = _ValidateFilter$valid.error_message;
721
+ if (error_message) {
722
+ if (error_message === index.FILTER_ERR_MSG.INCOMPLETE_FILTER) {
723
+ return '';
724
+ }
725
+ throw new Error(error_message);
726
+ }
727
+ var column_key = filterItem.column_key;
728
+ var column = column$1.getTableColumnByKey(table, column_key);
729
+ return getSqlConditionByFilter(column, filterItem, patchedUsername, patchedUserId, patchedUserDepartmentIdsMap);
730
+ });
806
731
 
807
732
  // 2. filtered '' sql clause
808
733
  stringList = stringList.filter(function (item) {
@@ -814,29 +739,21 @@ var filter2SqlCondition = function filter2SqlCondition(table, view, username, us
814
739
  // const filterContent = stringList.join(' ' + filter_conjunction + ' ');
815
740
  var filterContent = stringList[0];
816
741
  for (var i = 1; i < stringList.length; i++) {
817
- var currStr = stringList[i];
818
- if (currStr.startsWith('(') && currStr.endsWith(')')) {
819
- filterContent += " ".concat(filter_conjunction, " ").concat(stringList[i]);
820
- } else {
821
- filterContent += " ".concat(filter_conjunction, " (").concat(stringList[i], ")");
822
- }
742
+ filterContent += " ".concat(filter_conjunction, " (").concat(stringList[i], ")");
823
743
  }
824
744
  return filterHeader + filterContent;
825
745
  };
826
746
 
827
- exports.arrayColumnCondition = arrayColumnCondition;
828
747
  exports.checkboxSqlCondition = checkboxSqlCondition;
829
748
  exports.collaboratorSqlCondition = collaboratorSqlCondition;
830
749
  exports.creatorSqlCondition = creatorSqlCondition;
831
750
  exports.ctimeSqlCondition = ctimeSqlCondition;
832
751
  exports.dateSqlCondition = dateSqlCondition;
833
- exports.departmentMultipleSelectSqlCondition = departmentMultipleSelectSqlCondition;
834
752
  exports.departmentSingleSelectSqlCondition = departmentSingleSelectSqlCondition;
835
753
  exports.fileSqlCondition = fileSqlCondition;
836
754
  exports.filter2SqlCondition = filter2SqlCondition;
837
755
  exports.formulaSqlCondition = formulaSqlCondition;
838
756
  exports.getSqlConditionByFilter = getSqlConditionByFilter;
839
- exports.getSqlConditionsByFilters = getSqlConditionsByFilters;
840
757
  exports.linkSqlCondition = linkSqlCondition;
841
758
  exports.longtextSqlCondition = longtextSqlCondition;
842
759
  exports.multipleSelectSqlCondition = multipleSelectSqlCondition;
package/lib/common.js CHANGED
@@ -50,11 +50,7 @@ var isEmptyObject = function isEmptyObject(obj) {
50
50
  }
51
51
  return true;
52
52
  };
53
- var hasOwnProperty = function hasOwnProperty(obj, key) {
54
- return Object.prototype.hasOwnProperty.call(obj, key);
55
- };
56
53
 
57
54
  exports.generatorBase64Code = generatorBase64Code;
58
- exports.hasOwnProperty = hasOwnProperty;
59
55
  exports.isEmpty = isEmpty;
60
56
  exports.isEmptyObject = isEmptyObject;
@@ -8,7 +8,6 @@ var date = require('../date.js');
8
8
  var index = require('../constants/filter/index.js');
9
9
  var cellType = require('../constants/cell-type.js');
10
10
  var formula = require('../constants/formula.js');
11
- var common = require('../common.js');
12
11
  var filterModifier = require('../constants/filter/filter-modifier.js');
13
12
 
14
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -18,25 +17,6 @@ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_definePropert
18
17
  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; }
19
18
  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) { _defineProperty__default["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; }
20
19
  var EXACT_DATE_TERM_MODIFIER_TYPES = [filterModifier.FILTER_TERM_MODIFIER_TYPE.TODAY, filterModifier.FILTER_TERM_MODIFIER_TYPE.TOMORROW, filterModifier.FILTER_TERM_MODIFIER_TYPE.YESTERDAY, filterModifier.FILTER_TERM_MODIFIER_TYPE.ONE_WEEK_AGO, filterModifier.FILTER_TERM_MODIFIER_TYPE.ONE_WEEK_FROM_NOW, filterModifier.FILTER_TERM_MODIFIER_TYPE.ONE_MONTH_AGO, filterModifier.FILTER_TERM_MODIFIER_TYPE.ONE_MONTH_FROM_NOW, filterModifier.FILTER_TERM_MODIFIER_TYPE.NUMBER_OF_DAYS_AGO, filterModifier.FILTER_TERM_MODIFIER_TYPE.NUMBER_OF_DAYS_FROM_NOW, filterModifier.FILTER_TERM_MODIFIER_TYPE.EXACT_DATE];
21
-
22
- /**
23
- * Check if is filter group
24
- * @param {object} filter
25
- * @returns bool
26
- */
27
- var checkIsFilterGroup = function checkIsFilterGroup(filter) {
28
- return common.hasOwnProperty(filter, 'filters');
29
- };
30
-
31
- /**
32
- * Check if is formula/link filter
33
- * @param {object} filter
34
- * @returns bool
35
- */
36
- var checkIsFormulaFilter = function checkIsFormulaFilter(filter) {
37
- var column = filter.column;
38
- return formula.FORMULA_COLUMN_TYPES_MAP[column.type] || column.type === cellType.CellType.LINK;
39
- };
40
20
  var isCurrentUserDepartment = function isCurrentUserDepartment(departmentId, userDepartmentIdsMap) {
41
21
  var _ref = userDepartmentIdsMap || {},
42
22
  current_user_department_ids = _ref.current_user_department_ids;
@@ -52,24 +32,9 @@ var isSpecificDepartment = function isSpecificDepartment(departmentId, filterTer
52
32
  return filterTerm.includes(departmentId);
53
33
  };
54
34
 
55
- /**
56
- * Check if the filter is available to display
57
- * @param {object} filter
58
- * @param {array} columns
59
- * @returns bool
60
- */
61
- var checkIsAvailableFilter = function checkIsAvailableFilter(filter$1, columns) {
62
- var _ValidateFilter$valid = filter.ValidateFilter.validate(filter$1, columns),
63
- error_message = _ValidateFilter$valid.error_message;
64
- if (error_message && error_message === index.FILTER_ERR_MSG.INCOMPLETE_FILTER) {
65
- return false;
66
- }
67
- return true;
68
- };
69
-
70
35
  /**
71
36
  * Get filters which excludes incomplete
72
- * @param {array} filters e.g. [{ column_key, filter_predicate, ... }, { filters: [...]}]
37
+ * @param {array} filters e.g. [{ column_key, filter_predicate, ... }]
73
38
  * @param {array} columns
74
39
  * @returns valid filters, array
75
40
  */
@@ -77,24 +42,11 @@ var getValidFilters = function getValidFilters(filters, columns) {
77
42
  if (!Array.isArray(filters) || !Array.isArray(columns)) {
78
43
  return [];
79
44
  }
80
- var availableFilters = [];
81
- filters.forEach(function (filter) {
82
- if (checkIsFilterGroup(filter)) {
83
- var subFilters = filter.filters;
84
- var availableSubFilters = [];
85
- if (Array.isArray(subFilters) && subFilters.length > 0) {
86
- availableSubFilters = subFilters.filter(function (subFilter) {
87
- return checkIsAvailableFilter(subFilter, columns);
88
- });
89
- }
90
- availableFilters.push(_objectSpread(_objectSpread({}, filter), {}, {
91
- filters: availableSubFilters
92
- }));
93
- } else if (checkIsAvailableFilter(filter, columns)) {
94
- availableFilters.push(filter);
95
- }
45
+ return filters.filter(function (filter$1) {
46
+ var _ValidateFilter$valid = filter.ValidateFilter.validate(filter$1, columns),
47
+ error_message = _ValidateFilter$valid.error_message;
48
+ return !error_message || error_message !== index.FILTER_ERR_MSG.INCOMPLETE_FILTER;
96
49
  });
97
- return availableFilters;
98
50
  };
99
51
 
100
52
  /**
@@ -356,37 +308,9 @@ var _getFormattedFilter = function getFormattedFilter(filter, column) {
356
308
  */
357
309
  var getFormattedFilters = function getFormattedFilters(filters) {
358
310
  return filters.map(function (filter) {
359
- if (checkIsFilterGroup(filter)) {
360
- var subFilters = filter.filters;
361
- var formattedSubFilters = [];
362
- if (Array.isArray(subFilters) && subFilters.length > 0) {
363
- formattedSubFilters = subFilters.map(function (subFilter) {
364
- return _getFormattedFilter(subFilter, subFilter.column);
365
- });
366
- }
367
- return _objectSpread(_objectSpread({}, filter), {}, {
368
- filters: formattedSubFilters
369
- });
370
- }
371
311
  return _getFormattedFilter(filter, filter.column);
372
312
  });
373
313
  };
374
- var checkFilter = function checkFilter(filter$1, columns) {
375
- var _ValidateFilter$valid2 = filter.ValidateFilter.validate(filter$1, columns),
376
- error_message = _ValidateFilter$valid2.error_message;
377
- if (error_message) {
378
- if (error_message === index.FILTER_ERR_MSG.INCOMPLETE_FILTER) {
379
- return null;
380
- }
381
- throw new Error(error_message);
382
- }
383
- var newFilter = _objectSpread({}, filter$1);
384
- var column_key = filter$1.column_key;
385
- newFilter.column = columns.find(function (column) {
386
- return column.key === column_key;
387
- });
388
- return newFilter;
389
- };
390
314
 
391
315
  /**
392
316
  * Get filters without error messages and formatted with filter column
@@ -399,65 +323,28 @@ var deleteInvalidFilter = function deleteInvalidFilter(filters, columns) {
399
323
  return [];
400
324
  }
401
325
  var cleanFilters = [];
402
- filters.forEach(function (filter) {
403
- if (checkIsFilterGroup(filter)) {
404
- var subFilters = filter.filters;
405
- if (Array.isArray(subFilters) && subFilters.length > 0) {
406
- var cleanSubFilters = [];
407
- subFilters.forEach(function (subFilter) {
408
- var newSubFilter = checkFilter(subFilter, columns);
409
- if (newSubFilter) {
410
- cleanSubFilters.push(newSubFilter);
411
- }
412
- });
413
-
414
- // just keep the filter group which has valid sub-filters
415
- if (cleanSubFilters.length > 0) {
416
- cleanFilters.push(_objectSpread(_objectSpread({}, filter), {}, {
417
- filters: cleanSubFilters
418
- }));
419
- }
326
+ filters.forEach(function (filter$1) {
327
+ var column_key = filter$1.column_key;
328
+ var _ValidateFilter$valid2 = filter.ValidateFilter.validate(filter$1, columns),
329
+ error_message = _ValidateFilter$valid2.error_message;
330
+ if (error_message) {
331
+ if (error_message !== index.FILTER_ERR_MSG.INCOMPLETE_FILTER) {
332
+ throw new Error(error_message);
420
333
  }
421
334
  } else {
422
- var newFilter = checkFilter(filter, columns);
423
- if (newFilter) {
424
- cleanFilters.push(newFilter);
425
- }
335
+ var filterColumn = columns.find(function (column) {
336
+ return column.key === column_key;
337
+ });
338
+ var newFilter = _objectSpread(_objectSpread({}, filter$1), {}, {
339
+ column: filterColumn
340
+ });
341
+ cleanFilters.push(newFilter);
426
342
  }
427
343
  });
428
344
  return cleanFilters;
429
345
  };
430
346
 
431
- /**
432
- * Categorize filters
433
- * @param {array} filters
434
- * @returns {object} { generalFilters, formulaFilters, filterGroups }
435
- */
436
- var getClassifiedFilters = function getClassifiedFilters(filters) {
437
- var generalFilters = [];
438
- var formulaFilters = [];
439
- var filterGroups = [];
440
- filters.forEach(function (filter) {
441
- if (checkIsFilterGroup(filter)) {
442
- filterGroups.push(filter);
443
- } else if (checkIsFormulaFilter(filter)) {
444
- formulaFilters.push(filter);
445
- } else {
446
- generalFilters.push(filter);
447
- }
448
- });
449
- return {
450
- generalFilters: generalFilters,
451
- formulaFilters: formulaFilters,
452
- filterGroups: filterGroups
453
- };
454
- };
455
-
456
- exports.checkIsAvailableFilter = checkIsAvailableFilter;
457
- exports.checkIsFilterGroup = checkIsFilterGroup;
458
- exports.checkIsFormulaFilter = checkIsFormulaFilter;
459
347
  exports.deleteInvalidFilter = deleteInvalidFilter;
460
- exports.getClassifiedFilters = getClassifiedFilters;
461
348
  exports.getFormattedFilter = _getFormattedFilter;
462
349
  exports.getFormattedFilterOtherDate = getFormattedFilterOtherDate;
463
350
  exports.getFormattedFilters = getFormattedFilters;
@@ -141,7 +141,7 @@ var getFilterResult = function getFilterResult(row, filter, _ref) {
141
141
  * @param {object} userDepartmentIdsMap e.g. { current_user_department_ids: [8, 10], current_user_department_and_sub_ids: [8, 10, 12, 34] }
142
142
  * @returns filter result, bool
143
143
  */
144
- var _filterRow = function filterRow(row, filterConjunction, filters) {
144
+ var filterRow = function filterRow(row, filterConjunction, filters) {
145
145
  var _ref2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
146
146
  formulaRow = _ref2.formulaRow,
147
147
  _ref2$username = _ref2.username,
@@ -151,14 +151,6 @@ var _filterRow = function filterRow(row, filterConjunction, filters) {
151
151
  userDepartmentIdsMap = _ref2$userDepartmentI === void 0 ? {} : _ref2$userDepartmentI;
152
152
  if (filterConjunction === index.FILTER_CONJUNCTION_TYPE.AND) {
153
153
  return filters.every(function (filter) {
154
- if (core.checkIsFilterGroup(filter)) {
155
- return _filterRow(row, filter.filter_conjunction, filter.filters, {
156
- formulaRow: formulaRow,
157
- username: username,
158
- userId: userId,
159
- userDepartmentIdsMap: userDepartmentIdsMap
160
- });
161
- }
162
154
  return getFilterResult(row, filter, {
163
155
  formulaRow: formulaRow,
164
156
  username: username,
@@ -169,14 +161,6 @@ var _filterRow = function filterRow(row, filterConjunction, filters) {
169
161
  }
170
162
  if (filterConjunction === index.FILTER_CONJUNCTION_TYPE.OR) {
171
163
  return filters.some(function (filter) {
172
- if (core.checkIsFilterGroup(filter)) {
173
- return _filterRow(row, filter.filter_conjunction, filter.filters, {
174
- formulaRow: formulaRow,
175
- username: username,
176
- userId: userId,
177
- userDepartmentIdsMap: userDepartmentIdsMap
178
- });
179
- }
180
164
  return getFilterResult(row, filter, {
181
165
  formulaRow: formulaRow,
182
166
  username: username,
@@ -209,7 +193,7 @@ var filterRows = function filterRows(filterConjunction, filters, rows, _ref3) {
209
193
  rows.forEach(function (row) {
210
194
  var rowId = row._id;
211
195
  var formulaRow = formulaRows ? formulaRows[rowId] : null;
212
- if (_filterRow(row, filterConjunction, formattedFilters, {
196
+ if (filterRow(row, filterConjunction, formattedFilters, {
213
197
  formulaRow: formulaRow,
214
198
  username: username,
215
199
  userId: userId,
@@ -273,6 +257,6 @@ var getFilteredRowsWithoutFormulaCalculation = function getFilteredRowsWithoutFo
273
257
  };
274
258
  };
275
259
 
276
- exports.filterRow = _filterRow;
260
+ exports.filterRow = filterRow;
277
261
  exports.filterRows = filterRows;
278
262
  exports.getFilteredRowsWithoutFormulaCalculation = getFilteredRowsWithoutFormulaCalculation;
package/lib/index.js CHANGED
@@ -253,9 +253,7 @@ exports.searchCollaborators = search.searchCollaborators;
253
253
  exports.ValidateFilter = filter.ValidateFilter;
254
254
  exports.isValidEmail = email.isValidEmail;
255
255
  exports.isValidPosition = geolocation$2.isValidPosition;
256
- exports.checkIsFilterGroup = core$5.checkIsFilterGroup;
257
256
  exports.deleteInvalidFilter = core$5.deleteInvalidFilter;
258
- exports.getClassifiedFilters = core$5.getClassifiedFilters;
259
257
  exports.getFormattedFilter = core$5.getFormattedFilter;
260
258
  exports.getFormattedFilterOtherDate = core$5.getFormattedFilterOtherDate;
261
259
  exports.getFormattedFilters = core$5.getFormattedFilters;
@@ -114,7 +114,7 @@ var convertRow = function convertRow(row, value, table, view, formulaResults, co
114
114
  }
115
115
  case cellType.CellType.DATE:
116
116
  {
117
- var timeTextWithoutTimezone = cellValue$1.replace(/([+-]\d{2}:?\d{2})|Z$/g, '');
117
+ var timeTextWithoutTimezone = cellValue$1 ? cellValue$1.replace(/([+-]\d{2}:?\d{2})|Z$/g, '') : '';
118
118
  var format = column.data && column.data.format;
119
119
  result[columnName] = date.formatTextToDate(timeTextWithoutTimezone, format);
120
120
  break;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dtable-utils",
3
- "version": "5.0.5-beta.3",
3
+ "version": "5.0.5",
4
4
  "description": "dtable common utils",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./es/index.js",