dtable-utils 4.3.4 → 4.3.5-beta1

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.
Files changed (54) hide show
  1. package/dist/index.js +1 -1
  2. package/es/archive/clause-module/search.js +182 -0
  3. package/es/archive/clause-module/update.js +120 -0
  4. package/es/archive/sql-generator/filter-condition.js +15 -7
  5. package/es/cell-value-get/auto-number.js +16 -0
  6. package/es/cell-value-get/collaborator.js +14 -1
  7. package/es/cell-value-set/auto-number.js +85 -0
  8. package/es/cell-value-set/checkbox.js +5 -0
  9. package/es/cell-value-set/duration.js +56 -0
  10. package/es/cell-value-set/geolocation.js +68 -0
  11. package/es/cell-value-set/image.js +20 -0
  12. package/es/cell-value-set/long-text.js +27 -0
  13. package/es/cell-value-set/multiple-select.js +81 -0
  14. package/es/cell-value-set/number.js +16 -1
  15. package/es/cell-value-set/single-select.js +47 -0
  16. package/es/column/file.js +13 -0
  17. package/es/column/long-text.js +68 -0
  18. package/es/constants/auto-number.js +7 -0
  19. package/es/constants/column.js +2 -1
  20. package/es/constants/formula.js +2 -1
  21. package/es/constants/limit.js +7 -1
  22. package/es/constants/permission.js +7 -0
  23. package/es/filter/filter-column/long-text.js +11 -3
  24. package/es/helper/patch-utils.js +38 -0
  25. package/es/index.js +19 -4
  26. package/es/row/convert.js +200 -2
  27. package/es/view/summaries.js +11 -2
  28. package/lib/archive/clause-module/search.js +197 -0
  29. package/lib/archive/clause-module/update.js +125 -0
  30. package/lib/archive/sql-generator/filter-condition.js +15 -7
  31. package/lib/cell-value-get/auto-number.js +20 -0
  32. package/lib/cell-value-get/collaborator.js +14 -0
  33. package/lib/cell-value-set/auto-number.js +94 -0
  34. package/lib/cell-value-set/checkbox.js +9 -0
  35. package/lib/cell-value-set/duration.js +60 -0
  36. package/lib/cell-value-set/geolocation.js +72 -0
  37. package/lib/cell-value-set/image.js +24 -0
  38. package/lib/cell-value-set/long-text.js +31 -0
  39. package/lib/cell-value-set/multiple-select.js +86 -0
  40. package/lib/cell-value-set/number.js +16 -0
  41. package/lib/cell-value-set/single-select.js +51 -0
  42. package/lib/column/file.js +21 -0
  43. package/lib/column/long-text.js +72 -0
  44. package/lib/constants/auto-number.js +12 -0
  45. package/lib/constants/column.js +2 -0
  46. package/lib/constants/formula.js +2 -0
  47. package/lib/constants/limit.js +8 -0
  48. package/lib/constants/permission.js +11 -0
  49. package/lib/filter/filter-column/long-text.js +15 -3
  50. package/lib/helper/patch-utils.js +47 -0
  51. package/lib/index.js +64 -20
  52. package/lib/row/convert.js +203 -0
  53. package/lib/view/summaries.js +11 -2
  54. package/package.json +1 -1
package/lib/index.js CHANGED
@@ -14,6 +14,8 @@ var tablePermission = require('./constants/table-permission.js');
14
14
  var reg = require('./constants/reg.js');
15
15
  var color = require('./constants/color.js');
16
16
  var gridHeader = require('./constants/grid-header.js');
17
+ var autoNumber = require('./constants/auto-number.js');
18
+ var permission = require('./constants/permission.js');
17
19
  var common = require('./common.js');
18
20
  var core = require('./table/core.js');
19
21
  var column$1 = require('./table/column.js');
@@ -36,44 +38,55 @@ var digitalSign = require('./cell-value-get/digital-sign.js');
36
38
  var longText = require('./cell-value-get/long-text.js');
37
39
  var cellValue = require('./cell-value-get/cell-value.js');
38
40
  var rate = require('./cell-value-get/rate.js');
41
+ var autoNumber$1 = require('./cell-value-get/auto-number.js');
39
42
  var number$1 = require('./cell-value-set/number.js');
43
+ var checkbox = require('./cell-value-set/checkbox.js');
40
44
  var date$1 = require('./cell-value-set/date.js');
45
+ var singleSelect = require('./cell-value-set/single-select.js');
46
+ var multipleSelect = require('./cell-value-set/multiple-select.js');
47
+ var longText$1 = require('./cell-value-set/long-text.js');
48
+ var image = require('./cell-value-set/image.js');
49
+ var geolocation$1 = require('./cell-value-set/geolocation.js');
50
+ var duration$1 = require('./cell-value-set/duration.js');
51
+ var autoNumber$2 = require('./cell-value-set/auto-number.js');
52
+ var longText$2 = require('./column/long-text.js');
41
53
  var core$4 = require('./column/core.js');
42
54
  var option$1 = require('./column/option.js');
43
55
  var date$2 = require('./column/date.js');
44
56
  var number$2 = require('./column/number.js');
57
+ var file = require('./column/file.js');
45
58
  var date$3 = require('./date.js');
46
59
  var number$3 = require('./number.js');
47
60
  var filter = require('./validate/filter.js');
48
61
  var email = require('./validate/email.js');
49
- var geolocation$1 = require('./validate/geolocation.js');
62
+ var geolocation$2 = require('./validate/geolocation.js');
50
63
  var core$5 = require('./filter/core.js');
51
- var checkbox = require('./filter/filter-column/checkbox.js');
64
+ var checkbox$1 = require('./filter/filter-column/checkbox.js');
52
65
  var collaborator$1 = require('./filter/filter-column/collaborator.js');
53
66
  var creator = require('./filter/filter-column/creator.js');
54
67
  var date$4 = require('./filter/filter-column/date.js');
55
68
  var digitalSign$1 = require('./filter/filter-column/digital-sign.js');
56
- var file = require('./filter/filter-column/file.js');
69
+ var file$1 = require('./filter/filter-column/file.js');
57
70
  var formula$2 = require('./filter/filter-column/formula.js');
58
- var geolocation$2 = require('./filter/filter-column/geolocation.js');
71
+ var geolocation$3 = require('./filter/filter-column/geolocation.js');
59
72
  var text = require('./filter/filter-column/text.js');
60
- var longText$1 = require('./filter/filter-column/long-text.js');
61
- var multipleSelect = require('./filter/filter-column/multiple-select.js');
73
+ var longText$3 = require('./filter/filter-column/long-text.js');
74
+ var multipleSelect$1 = require('./filter/filter-column/multiple-select.js');
62
75
  var number$4 = require('./filter/filter-column/number.js');
63
- var singleSelect = require('./filter/filter-column/single-select.js');
76
+ var singleSelect$1 = require('./filter/filter-column/single-select.js');
64
77
  var link = require('./filter/filter-column/link.js');
65
78
  var filterPredicate = require('./constants/filter/filter-predicate.js');
66
79
  var filterRow = require('./filter/filter-row.js');
67
80
  var core$6 = require('./sort/core.js');
68
- var checkbox$1 = require('./sort/sort-column/checkbox.js');
81
+ var checkbox$2 = require('./sort/sort-column/checkbox.js');
69
82
  var collaborator$2 = require('./sort/sort-column/collaborator.js');
70
83
  var date$5 = require('./sort/sort-column/date.js');
71
84
  var array = require('./sort/sort-column/array.js');
72
85
  var formula$3 = require('./sort/sort-column/formula.js');
73
86
  var link$1 = require('./sort/sort-column/link.js');
74
- var multipleSelect$1 = require('./sort/sort-column/multiple-select.js');
87
+ var multipleSelect$2 = require('./sort/sort-column/multiple-select.js');
75
88
  var number$5 = require('./sort/sort-column/number.js');
76
- var singleSelect$1 = require('./sort/sort-column/single-select.js');
89
+ var singleSelect$2 = require('./sort/sort-column/single-select.js');
77
90
  var text$1 = require('./sort/sort-column/text.js');
78
91
  var sortRow = require('./sort/sort-row.js');
79
92
  var core$7 = require('./group/core.js');
@@ -81,6 +94,8 @@ var groupRow = require('./group/group-row.js');
81
94
  var gradientColor = require('./color/gradient-color.js');
82
95
  var columnColor = require('./color/column-color.js');
83
96
  var rowColor = require('./color/row-color.js');
97
+ var search = require('./archive/clause-module/search.js');
98
+ var update = require('./archive/clause-module/update.js');
84
99
  var filterCondition = require('./archive/sql-generator/filter-condition.js');
85
100
  var filterColumnOptions = require('./constants/filter/filter-column-options.js');
86
101
  var filterModifier = require('./constants/filter/filter-modifier.js');
@@ -112,6 +127,7 @@ exports.UTC_FORMAT_DEFAULT = column.UTC_FORMAT_DEFAULT;
112
127
  exports.FILTER_CONJUNCTION_TYPE = index.FILTER_CONJUNCTION_TYPE;
113
128
  exports.FILTER_ERR_MSG = index.FILTER_ERR_MSG;
114
129
  exports.DISPLAY_INTERNAL_ERRORS = formula.DISPLAY_INTERNAL_ERRORS;
130
+ exports.FORMULA_COLUMN_TYPES = formula.FORMULA_COLUMN_TYPES;
115
131
  exports.FORMULA_COLUMN_TYPES_MAP = formula.FORMULA_COLUMN_TYPES_MAP;
116
132
  exports.FORMULA_RESULT_TYPE = formula.FORMULA_RESULT_TYPE;
117
133
  exports.HIGHLIGHT_COLORS = selectOption.HIGHLIGHT_COLORS;
@@ -132,6 +148,9 @@ exports.REG_NUMBER_DIGIT = reg.REG_NUMBER_DIGIT;
132
148
  exports.REG_STRING_NUMBER_PARTS = reg.REG_STRING_NUMBER_PARTS;
133
149
  exports.COLOR_GRADATION_OPTIONS = color.COLOR_GRADATION_OPTIONS;
134
150
  exports.HEADER_HEIGHT_TYPE = gridHeader.HEADER_HEIGHT_TYPE;
151
+ exports.AUTO_NUMBER_DATE_FORMAT = autoNumber.AUTO_NUMBER_DATE_FORMAT;
152
+ exports.AUTO_NUMBER_PREFIX_TYPE = autoNumber.AUTO_NUMBER_PREFIX_TYPE;
153
+ exports.PERMISSION_TYPES = permission.PERMISSION_TYPES;
135
154
  exports.generatorBase64Code = common.generatorBase64Code;
136
155
  exports.isEmpty = common.isEmpty;
137
156
  exports.isEmptyObject = common.isEmptyObject;
@@ -144,6 +163,7 @@ exports.getRowById = row.getRowById;
144
163
  exports.getRowsByIds = row.getRowsByIds;
145
164
  exports.isTableRows = core$1.isTableRows;
146
165
  exports.convertRow = convert.convertRow;
166
+ exports.convertRowBack = convert.convertRowBack;
147
167
  exports.getLinkColumnsUsedInFilters = core$2.getLinkColumnsUsedInFilters;
148
168
  exports.getNonArchiveViews = core$2.getNonArchiveViews;
149
169
  exports.getViewById = core$2.getViewById;
@@ -179,6 +199,7 @@ exports.getMultipleOptionName = option.getMultipleOptionName;
179
199
  exports.getOption = option.getOption;
180
200
  exports.getOptionName = option.getOptionName;
181
201
  exports.getCollaborator = collaborator.getCollaborator;
202
+ exports.getCollaboratorEmailsByNames = collaborator.getCollaboratorEmailsByNames;
182
203
  exports.getCollaboratorsName = collaborator.getCollaboratorsName;
183
204
  exports.getCollaboratorsNames = collaborator.getCollaboratorsNames;
184
205
  exports.getGeolocationByGranularity = geolocation.getGeolocationByGranularity;
@@ -190,10 +211,23 @@ exports.getCellValueDisplayString = cellValue.getCellValueDisplayString;
190
211
  exports.getCellValueStringResult = cellValue.getCellValueStringResult;
191
212
  exports.getFormulaDisplayString = cellValue.getFormulaDisplayString;
192
213
  exports.getRateDisplayString = rate.getRateDisplayString;
214
+ exports.getFormattedAutoNumber = autoNumber$1.getFormattedAutoNumber;
193
215
  exports.formatDurationToNumber = number$1.formatDurationToNumber;
194
216
  exports.formatStringToNumber = number$1.formatStringToNumber;
217
+ exports.formatTextToNumber = number$1.formatTextToNumber;
195
218
  exports.getFloatNumber = number$1.getFloatNumber;
219
+ exports.formatTextToCheckbox = checkbox.formatTextToCheckbox;
196
220
  exports.formatTextToDate = date$1.formatTextToDate;
221
+ exports.formatTextToSingleOption = singleSelect.formatTextToSingleOption;
222
+ exports.formatTextToMultipleOption = multipleSelect.formatTextToMultipleOption;
223
+ exports.formatValueToMultipleOption = multipleSelect.formatValueToMultipleOption;
224
+ exports.formatTextToLongText = longText$1.formatTextToLongText;
225
+ exports.formatTextToImage = image.formatTextToImage;
226
+ exports.formatTextToGeolocation = geolocation$1.formatTextToGeolocation;
227
+ exports.formatTextToDuration = duration$1.formatTextToDuration;
228
+ exports.formatRateMaxNumberToNumber = autoNumber$2.formatRateMaxNumberToNumber;
229
+ exports.formatTextToAutoNumber = autoNumber$2.formatTextToAutoNumber;
230
+ exports.getPreviewContent = longText$2["default"];
197
231
  exports.getColumnType = core$4.getColumnType;
198
232
  exports.getColumnsByType = core$4.getColumnsByType;
199
233
  exports.createOption = option$1.createOption;
@@ -205,13 +239,14 @@ exports.isDateColumn = date$2.isDateColumn;
205
239
  exports.isSupportDateColumnFormat = date$2.isSupportDateColumnFormat;
206
240
  exports.isNumberColumn = number$2.isNumberColumn;
207
241
  exports.isNumericColumn = number$2.isNumericColumn;
242
+ exports.isFileValue = file.isFileValue;
208
243
  exports.DateUtils = date$3.DateUtils;
209
244
  exports.isNumber = number$3.isNumber;
210
245
  exports.isNumberEqual = number$3.isNumberEqual;
211
246
  exports.round = number$3.round;
212
247
  exports.ValidateFilter = filter.ValidateFilter;
213
248
  exports.isValidEmail = email.isValidEmail;
214
- exports.isValidPosition = geolocation$1.isValidPosition;
249
+ exports.isValidPosition = geolocation$2.isValidPosition;
215
250
  exports.deleteInvalidFilter = core$5.deleteInvalidFilter;
216
251
  exports.getFormattedFilter = core$5.getFormattedFilter;
217
252
  exports.getFormattedFilterOtherDate = core$5.getFormattedFilterOtherDate;
@@ -219,19 +254,19 @@ exports.getFormattedFilters = core$5.getFormattedFilters;
219
254
  exports.getValidFilters = core$5.getValidFilters;
220
255
  exports.getValidFiltersWithoutError = core$5.getValidFiltersWithoutError;
221
256
  exports.otherDate = core$5.otherDate;
222
- exports.checkboxFilter = checkbox.checkboxFilter;
257
+ exports.checkboxFilter = checkbox$1.checkboxFilter;
223
258
  exports.collaboratorFilter = collaborator$1.collaboratorFilter;
224
259
  exports.creatorFilter = creator.creatorFilter;
225
260
  exports.dateFilter = date$4.dateFilter;
226
261
  exports.digitalSignFilter = digitalSign$1.digitalSignFilter;
227
- exports.fileFilter = file.fileFilter;
262
+ exports.fileFilter = file$1.fileFilter;
228
263
  exports.formulaFilter = formula$2.formulaFilter;
229
- exports.geolocationFilter = geolocation$2.geolocationFilter;
264
+ exports.geolocationFilter = geolocation$3.geolocationFilter;
230
265
  exports.textFilter = text.textFilter;
231
- exports.longTextFilter = longText$1.longTextFilter;
232
- exports.multipleSelectFilter = multipleSelect.multipleSelectFilter;
266
+ exports.longTextFilter = longText$3.longTextFilter;
267
+ exports.multipleSelectFilter = multipleSelect$1.multipleSelectFilter;
233
268
  exports.numberFilter = number$4.numberFilter;
234
- exports.singleSelectFilter = singleSelect.singleSelectFilter;
269
+ exports.singleSelectFilter = singleSelect$1.singleSelectFilter;
235
270
  exports.linkFilter = link.linkFilter;
236
271
  exports.FILTER_PREDICATE_SHOW = filterPredicate.FILTER_PREDICATE_SHOW;
237
272
  exports.FILTER_PREDICATE_TYPE = filterPredicate.FILTER_PREDICATE_TYPE;
@@ -242,15 +277,15 @@ exports.deleteInvalidSort = core$6.deleteInvalidSort;
242
277
  exports.getMultipleIndexesOrderbyOptions = core$6.getMultipleIndexesOrderbyOptions;
243
278
  exports.getValidSorts = core$6.getValidSorts;
244
279
  exports.isValidSort = core$6.isValidSort;
245
- exports.sortCheckbox = checkbox$1.sortCheckbox;
280
+ exports.sortCheckbox = checkbox$2.sortCheckbox;
246
281
  exports.sortCollaborator = collaborator$2.sortCollaborator;
247
282
  exports.sortDate = date$5.sortDate;
248
283
  exports.sortByArrayType = array.sortByArrayType;
249
284
  exports.sortFormula = formula$3.sortFormula;
250
285
  exports.sortLink = link$1.sortLink;
251
- exports.sortMultipleSelect = multipleSelect$1.sortMultipleSelect;
286
+ exports.sortMultipleSelect = multipleSelect$2.sortMultipleSelect;
252
287
  exports.sortNumber = number$5.sortNumber;
253
- exports.sortSingleSelect = singleSelect$1.sortSingleSelect;
288
+ exports.sortSingleSelect = singleSelect$2.sortSingleSelect;
254
289
  exports.compareString = text$1.compareString;
255
290
  exports.sortText = text$1.sortText;
256
291
  exports.sortRowsWithMultiSorts = sortRow.sortRowsWithMultiSorts;
@@ -264,6 +299,15 @@ exports.groupViewRows = groupRow.groupViewRows;
264
299
  exports.GradientColorUtils = gradientColor["default"];
265
300
  exports.ColumnColorUtils = columnColor["default"];
266
301
  exports.RowColorUtils = rowColor["default"];
302
+ exports.customFilter2SqlCondition = search.customFilter2SqlCondition;
303
+ exports.customSort2SqlCondition = search.customSort2SqlCondition;
304
+ exports.generateSearchColumnsString = search.generateSearchColumnsString;
305
+ exports.generateViewSearchColumnsString = search.generateViewSearchColumnsString;
306
+ exports.generatorCustomSearchSQL = search.generatorCustomSearchSQL;
307
+ exports.generatorSearchSQL = search.generatorSearchSQL;
308
+ exports.sort2SqlCondition = search.sort2SqlCondition;
309
+ exports.generatorUpdateSql = update.generatorUpdateSql;
310
+ exports.getConvertedUpdatedValue = update.getConvertedUpdatedValue;
267
311
  exports.checkboxSqlCondition = filterCondition.checkboxSqlCondition;
268
312
  exports.collaboratorSqlCondition = filterCondition.collaboratorSqlCondition;
269
313
  exports.creatorSqlCondition = filterCondition.creatorSqlCondition;
@@ -2,12 +2,39 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var _typeof = require('@babel/runtime/helpers/typeof');
5
6
  var cellValue = require('../cell-value-get/cell-value.js');
6
7
  var option = require('../cell-value-get/option.js');
7
8
  var core = require('../link/core.js');
8
9
  var common = require('../common.js');
9
10
  var limit = require('../constants/limit.js');
10
11
  var cellType = require('../constants/cell-type.js');
12
+ var column = require('../table/column.js');
13
+ var number = require('../cell-value-set/number.js');
14
+ var checkbox = require('../cell-value-set/checkbox.js');
15
+ var date = require('../cell-value-set/date.js');
16
+ var singleSelect = require('../cell-value-set/single-select.js');
17
+ var multipleSelect = require('../cell-value-set/multiple-select.js');
18
+ var longText = require('../cell-value-set/long-text.js');
19
+ var image = require('../cell-value-set/image.js');
20
+ var geolocation = require('../cell-value-set/geolocation.js');
21
+ var duration = require('../cell-value-set/duration.js');
22
+ require('dayjs');
23
+ require('../constants/column.js');
24
+ require('../constants/formula.js');
25
+ var collaborator = require('../cell-value-get/collaborator.js');
26
+ require('../constants/group.js');
27
+ require('../date.js');
28
+ require('../constants/filter/filter-column-options.js');
29
+ require('../constants/filter/filter-modifier.js');
30
+ require('../constants/filter/filter-predicate.js');
31
+ require('../constants/filter/filter-is-within.js');
32
+ require('../constants/sort.js');
33
+ var file = require('../column/file.js');
34
+
35
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
36
+
37
+ var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
11
38
 
12
39
  /**
13
40
  * Convert row
@@ -166,5 +193,181 @@ var convertRow = function convertRow(row, value, table, view, formulaResults, co
166
193
  }
167
194
  return result;
168
195
  };
196
+ var convertRowBack = function convertRowBack(row, table) {
197
+ var collaborators = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
198
+ var result = {};
199
+ for (var key in row) {
200
+ var cellValue = row[key];
201
+ if (key === '_id') {
202
+ result['_id'] = cellValue;
203
+ continue;
204
+ }
205
+ var column$1 = column.getTableColumnByName(table, key);
206
+ if (!column$1) {
207
+ continue;
208
+ }
209
+ switch (column$1.type) {
210
+ case cellType.CellType.TEXT:
211
+ if (cellValue == null) {
212
+ result[column$1.key] = '';
213
+ break;
214
+ }
215
+ result[column$1.key] = (cellValue + '').slice(0, limit.TEXT_CELL_VALUE_LIMIT);
216
+ break;
217
+ case cellType.CellType.EMAIL:
218
+ case cellType.CellType.URL:
219
+ result[column$1.key] = cellValue == null ? '' : cellValue + '';
220
+ break;
221
+ case cellType.CellType.NUMBER:
222
+ result[column$1.key] = number.formatTextToNumber(cellValue);
223
+ break;
224
+ case cellType.CellType.CHECKBOX:
225
+ result[column$1.key] = checkbox.formatTextToCheckbox(cellValue);
226
+ break;
227
+ case cellType.CellType.DATE:
228
+ // eslint-disable-next-line
229
+ var format = column$1.data && column$1.data.format;
230
+ result[column$1.key] = date.formatTextToDate(cellValue, format);
231
+ break;
232
+ case cellType.CellType.COLLABORATOR:
233
+ // todo
234
+ if (collaborators) {
235
+ result[column$1.key] = collaborator.getCollaboratorEmailsByNames(cellValue, collaborators);
236
+ } else {
237
+ result[column$1.key] = cellValue;
238
+ }
239
+ break;
240
+ case cellType.CellType.SINGLE_SELECT:
241
+ result[column$1.key] = singleSelect.formatTextToSingleOption(cellValue, column$1);
242
+ break;
243
+ case cellType.CellType.MULTIPLE_SELECT:
244
+ if (!cellValue) {
245
+ result[column$1.key] = null;
246
+ break;
247
+ }
248
+ if (Array.isArray(cellValue)) {
249
+ result[column$1.key] = multipleSelect.formatValueToMultipleOption(cellValue, column$1);
250
+ break;
251
+ }
252
+ if (typeof cellValue === 'string') {
253
+ if (!cellValue.trim()) {
254
+ result[column$1.key] = null;
255
+ } else {
256
+ result[column$1.key] = multipleSelect.formatTextToMultipleOption(cellValue, column$1);
257
+ }
258
+ break;
259
+ }
260
+ result[column$1.key] = null;
261
+ break;
262
+ case cellType.CellType.LONG_TEXT:
263
+ // eslint-disable-next-line
264
+ var text = cellValue;
265
+ if (!text) {
266
+ result[column$1.key] = null;
267
+ break;
268
+ }
269
+ if (_typeof__default["default"](text) === 'object') {
270
+ result[column$1.key] = text;
271
+ break;
272
+ }
273
+ if (typeof text === 'string') {
274
+ if (!text.trim()) {
275
+ result[column$1.key] = null;
276
+ } else {
277
+ result[column$1.key] = longText.formatTextToLongText(text);
278
+ }
279
+ break;
280
+ }
281
+ result[column$1.key] = null;
282
+ break;
283
+ case cellType.CellType.IMAGE:
284
+ if (!cellValue) {
285
+ result[column$1.key] = null;
286
+ break;
287
+ }
288
+ if (Array.isArray(cellValue)) {
289
+ result[column$1.key] = cellValue;
290
+ break;
291
+ }
292
+ if (typeof cellValue === 'string') {
293
+ if (!cellValue.trim()) {
294
+ result[column$1.key] = null;
295
+ } else {
296
+ result[column$1.key] = image.formatTextToImage(cellValue);
297
+ }
298
+ break;
299
+ }
300
+ result[column$1.key] = null;
301
+ break;
302
+ case cellType.CellType.FILE:
303
+ if (!cellValue) {
304
+ result[column$1.key] = null;
305
+ break;
306
+ }
307
+ // add data from api
308
+ if (Array.isArray(cellValue)) {
309
+ var fileValue = cellValue.filter(function (value) {
310
+ return file.isFileValue(value);
311
+ });
312
+ result[column$1.key] = fileValue.length > 0 ? fileValue : null;
313
+ break;
314
+ }
315
+ // add data form other app
316
+ if (typeof cellValue === 'string') {
317
+ result[column$1.key] = null;
318
+ break;
319
+ }
320
+ result[column$1.key] = null;
321
+ break;
322
+ // don't support link/formula/digital-sign column convertRowBack
323
+ case cellType.CellType.LINK:
324
+ case cellType.CellType.FORMULA:
325
+ case cellType.CellType.LINK_FORMULA:
326
+ {
327
+ result[column$1.key] = null;
328
+ break;
329
+ }
330
+ case cellType.CellType.DIGITAL_SIGN:
331
+ if (!cellValue) {
332
+ result[column$1.key] = null;
333
+ break;
334
+ }
335
+ if (_typeof__default["default"](cellValue) === 'object') {
336
+ result[column$1.key] = cellValue;
337
+ break;
338
+ }
339
+ result[column$1.key] = null;
340
+ break;
341
+ case cellType.CellType.GEOLOCATION:
342
+ if (!cellValue) {
343
+ result[column$1.key] = null;
344
+ break;
345
+ }
346
+ if (_typeof__default["default"](cellValue) === 'object') {
347
+ result[column$1.key] = cellValue;
348
+ break;
349
+ }
350
+ if (typeof cellValue === 'string') {
351
+ if (!cellValue.trim()) {
352
+ result[column$1.key] = null;
353
+ } else {
354
+ result[column$1.key] = geolocation.formatTextToGeolocation(cellValue, column$1.data);
355
+ }
356
+ break;
357
+ }
358
+ result[column$1.key] = null;
359
+ break;
360
+ case cellType.CellType.DURATION:
361
+ {
362
+ result[column$1.key] = duration.formatTextToDuration(cellValue, column$1.data);
363
+ break;
364
+ }
365
+ default:
366
+ result[column$1.key] = cellValue;
367
+ }
368
+ }
369
+ return result;
370
+ };
169
371
 
170
372
  exports.convertRow = convertRow;
373
+ exports.convertRowBack = convertRowBack;
@@ -4,13 +4,22 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var row = require('../table/row.js');
6
6
  var core = require('../row/core.js');
7
+ require('@babel/runtime/helpers/typeof');
7
8
  require('../cell-value-get/cell-value.js');
8
9
  require('@babel/runtime/helpers/defineProperty');
9
10
  require('@babel/runtime/helpers/toConsumableArray');
10
11
  var formula = require('../constants/formula.js');
11
- require('@babel/runtime/helpers/typeof');
12
- var number = require('../column/number.js');
13
12
  var number$1 = require('../number.js');
13
+ require('../constants/column.js');
14
+ require('../date.js');
15
+ require('../constants/filter/filter-column-options.js');
16
+ require('../constants/filter/filter-modifier.js');
17
+ require('../constants/filter/filter-predicate.js');
18
+ require('../constants/filter/filter-is-within.js');
19
+ require('../constants/sort.js');
20
+ require('../constants/group.js');
21
+ var number = require('../column/number.js');
22
+ require('dayjs');
14
23
 
15
24
  /**
16
25
  * Calculate summaries of table numeric columns
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dtable-utils",
3
- "version": "4.3.4",
3
+ "version": "4.3.5beta1",
4
4
  "description": "dtable common utils",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./es/index.js",