@seafile/sdoc-editor 2.0.18-alph-0.0.3 → 2.0.18-alph-0.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.
- package/dist/basic-sdk/extension/plugins/seatable-row/constants/index.js +10 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/formatters/RateFormatter.js +111 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/formatters/SimpleCellFormatter.js +41 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/formatters/SingleSelectOption.js +65 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/formatters/rate-formatter.css +23 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/formatters/widget/rate-item.js +78 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/helpers.js +416 -2
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/index.css +351 -32
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/index.js +9 -15
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/link-content.js +134 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/record-content.js +29 -16
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/resize-handle/ResizeHandle.js +38 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/resize-handle/index.css +384 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-header-cell.js +34 -15
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-item.js +39 -86
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/seatable-table-record.js +22 -9
- package/dist/basic-sdk/extension/plugins/seatable-row/helpers.js +4 -4
- package/dist/basic-sdk/extension/plugins/seatable-row/menu/index.css +3 -0
- package/dist/basic-sdk/extension/plugins/seatable-row/menu/index.js +3 -1
- package/dist/basic-sdk/extension/plugins/seatable-row/menu/seatable-list.js +3 -1
- package/dist/basic-sdk/extension/plugins/seatable-row/model.js +1 -1
- package/dist/basic-sdk/extension/plugins/seatable-row/render-elem/index.css +4 -3
- package/dist/basic-sdk/extension/plugins/seatable-row/render-elem/index.js +11 -10
- package/dist/constants/index.js +1 -0
- package/package.json +1 -1
- package/public/locales/en/sdoc-editor.json +3 -1
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/record-item.js +0 -41
- package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/seatable-table.js +0 -134
package/dist/basic-sdk/extension/plugins/seatable-row/dialog/add-seatable-row-dialog/helpers.js
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
|
-
exports.getRowName = void 0;
|
|
7
|
+
exports.getRowRecord = exports.getRowName = exports.getFormattedCell = exports.getAllCollaborators = exports.UNSHOW_COLUMN_TYPE = void 0;
|
|
8
|
+
exports.getSelectColumnOptions = getSelectColumnOptions;
|
|
9
|
+
exports.isFunction = void 0;
|
|
10
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
7
11
|
var _dtableUtils = require("dtable-utils");
|
|
12
|
+
var _SimpleCellFormatter = _interopRequireDefault(require("./formatters/SimpleCellFormatter"));
|
|
13
|
+
var _SingleSelectOption = _interopRequireDefault(require("./formatters/SingleSelectOption"));
|
|
14
|
+
var _RateFormatter = _interopRequireDefault(require("./formatters/RateFormatter"));
|
|
8
15
|
const getRowName = (columns, row, formula_rows) => {
|
|
9
16
|
if (!row) return '';
|
|
10
17
|
const displayColumn = columns.find(column => column.key === '0000');
|
|
@@ -20,10 +27,22 @@ const getRowName = (columns, row, formula_rows) => {
|
|
|
20
27
|
} else {
|
|
21
28
|
const view = window.app.getSelectedView();
|
|
22
29
|
formulaRows = view.formula_rows || {};
|
|
30
|
+
// formulaRows = { VMjdqn_yQAWIdPFwvp_72g: { I3hm: null } };
|
|
23
31
|
}
|
|
24
32
|
const tables = window.app.state.value.tables;
|
|
33
|
+
// const tables = null;
|
|
25
34
|
const departments = window.app.state;
|
|
35
|
+
// const departments = null;
|
|
26
36
|
const collaborators = window.app.state.collaboratorsWithAppUsers;
|
|
37
|
+
// const collaborators = [{
|
|
38
|
+
// avatar_url: 'http://127.0.0.1:80/media/avatars/default.png',
|
|
39
|
+
// contact_email: '',
|
|
40
|
+
// email: 'cf496c43676c427e8bf1acb8736b2491@auth.local',
|
|
41
|
+
// id: '',
|
|
42
|
+
// name: 'admin',
|
|
43
|
+
// name_pinyin: 'admin',
|
|
44
|
+
// }];
|
|
45
|
+
// console.log(1, formulaRows, data, tables, collaborators, departments);
|
|
27
46
|
return (0, _dtableUtils.getCellValueDisplayString)(row, type, key, {
|
|
28
47
|
formulaRows,
|
|
29
48
|
data,
|
|
@@ -32,4 +51,399 @@ const getRowName = (columns, row, formula_rows) => {
|
|
|
32
51
|
departments
|
|
33
52
|
});
|
|
34
53
|
};
|
|
35
|
-
exports.getRowName = getRowName;
|
|
54
|
+
exports.getRowName = getRowName;
|
|
55
|
+
const getFormattedCell = function (column, row) {
|
|
56
|
+
let {
|
|
57
|
+
formulaRow = {},
|
|
58
|
+
searchValue = null,
|
|
59
|
+
tableId = null
|
|
60
|
+
} = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
61
|
+
let columnWidth = arguments.length > 3 ? arguments[3] : undefined;
|
|
62
|
+
let isShowColumnName = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
|
|
63
|
+
let {
|
|
64
|
+
key,
|
|
65
|
+
type
|
|
66
|
+
} = column;
|
|
67
|
+
let {
|
|
68
|
+
_id: rowId
|
|
69
|
+
} = row;
|
|
70
|
+
let value = row[key];
|
|
71
|
+
let displayValue;
|
|
72
|
+
let isNonEmptyArray = Array.isArray(value) && value.length > 0;
|
|
73
|
+
switch (type) {
|
|
74
|
+
case _dtableUtils.CellType.TEXT:
|
|
75
|
+
{
|
|
76
|
+
if (value && typeof value === 'string') {
|
|
77
|
+
if (searchValue) {
|
|
78
|
+
// displayValue = _renderSearch(value, searchValue);
|
|
79
|
+
} else {
|
|
80
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
81
|
+
className: "cell-value-ellipsis text-truncate",
|
|
82
|
+
title: value
|
|
83
|
+
}, value);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
case _dtableUtils.CellType.DATE:
|
|
89
|
+
{
|
|
90
|
+
if (value && typeof value === 'string') {
|
|
91
|
+
const format = column.data && column.data.format ? column.data.format : 'YYYY-MM-DD';
|
|
92
|
+
const formatValue = (0, _dtableUtils.getDateDisplayString)(value, format);
|
|
93
|
+
// displayValue = searchValue ? _renderSearch(formatValue, searchValue) : formatValue;
|
|
94
|
+
displayValue = formatValue;
|
|
95
|
+
}
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
case _dtableUtils.CellType.CTIME:
|
|
99
|
+
case _dtableUtils.CellType.MTIME:
|
|
100
|
+
{
|
|
101
|
+
if (value && typeof value === 'string') {
|
|
102
|
+
if (searchValue) {
|
|
103
|
+
// displayValue = (
|
|
104
|
+
// <Highlighter highlight={searchValue}>
|
|
105
|
+
// {dayjs(value).format('YYYY-MM-DD HH:mm:ss')}
|
|
106
|
+
// </Highlighter>
|
|
107
|
+
// );
|
|
108
|
+
} else {
|
|
109
|
+
displayValue = (0, _dayjs.default)(value).format('YYYY-MM-DD HH:mm:ss');
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
case _dtableUtils.CellType.NUMBER:
|
|
115
|
+
{
|
|
116
|
+
if ((0, _dtableUtils.isNumber)(value)) {
|
|
117
|
+
const {
|
|
118
|
+
data = {}
|
|
119
|
+
} = column;
|
|
120
|
+
const formatedValue = (0, _dtableUtils.getNumberDisplayString)(value, data);
|
|
121
|
+
if (searchValue) {
|
|
122
|
+
// displayValue = _renderSearch(formatedValue, searchValue);
|
|
123
|
+
} else {
|
|
124
|
+
displayValue = /*#__PURE__*/React.createElement("div", {
|
|
125
|
+
className: "number-formatter"
|
|
126
|
+
}, formatedValue);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
case _dtableUtils.CellType.LINK:
|
|
132
|
+
{
|
|
133
|
+
displayValue = null;
|
|
134
|
+
const {
|
|
135
|
+
data
|
|
136
|
+
} = column;
|
|
137
|
+
// if (!LinksUtils.isValidLink(data)) break;
|
|
138
|
+
|
|
139
|
+
// is default view: row data can get from formula row
|
|
140
|
+
// is archive view: row data can get form rowdata
|
|
141
|
+
// value = isArchiveViewRowData(row, column) ? value : formulaRow[key];
|
|
142
|
+
value = formulaRow[key];
|
|
143
|
+
if (!value || !Array.isArray(value) || value.length === 0) break;
|
|
144
|
+
const {
|
|
145
|
+
collaborators,
|
|
146
|
+
departments
|
|
147
|
+
} = window.app.state;
|
|
148
|
+
const {
|
|
149
|
+
display_column_key,
|
|
150
|
+
array_type,
|
|
151
|
+
array_data
|
|
152
|
+
} = data;
|
|
153
|
+
// linked table's linked column
|
|
154
|
+
const linkedColumn = {
|
|
155
|
+
key: display_column_key,
|
|
156
|
+
type: array_type,
|
|
157
|
+
data: array_data
|
|
158
|
+
};
|
|
159
|
+
displayValue = /*#__PURE__*/React.createElement("div", {
|
|
160
|
+
className: "links-formatter"
|
|
161
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
162
|
+
className: "formatter-show"
|
|
163
|
+
}, value.map(item => {
|
|
164
|
+
const {
|
|
165
|
+
row_id: rowId,
|
|
166
|
+
display_value: cellValue
|
|
167
|
+
} = item;
|
|
168
|
+
const linkedRow = {
|
|
169
|
+
_id: rowId,
|
|
170
|
+
[display_column_key]: cellValue
|
|
171
|
+
};
|
|
172
|
+
const formulaRows = {
|
|
173
|
+
[rowId]: linkedRow
|
|
174
|
+
};
|
|
175
|
+
const displayResult = (0, _dtableUtils.getCellValueStringResult)(linkedRow, linkedColumn, {
|
|
176
|
+
formulaRows,
|
|
177
|
+
collaborators,
|
|
178
|
+
departments
|
|
179
|
+
});
|
|
180
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
181
|
+
key: `${rowId}_${display_column_key}`,
|
|
182
|
+
className: "link"
|
|
183
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
184
|
+
className: "link-name"
|
|
185
|
+
}, displayResult));
|
|
186
|
+
})));
|
|
187
|
+
break;
|
|
188
|
+
}
|
|
189
|
+
case _dtableUtils.CellType.COLLABORATOR:
|
|
190
|
+
{
|
|
191
|
+
if (value && isNonEmptyArray) {
|
|
192
|
+
const allCollaborators = getAllCollaborators();
|
|
193
|
+
let validValue = value.filter(item => {
|
|
194
|
+
return allCollaborators.find(collaborator => collaborator.email === item);
|
|
195
|
+
});
|
|
196
|
+
displayValue = validValue.length > 0 ? createColumnFormatter(type, {
|
|
197
|
+
value: validValue
|
|
198
|
+
}) : '';
|
|
199
|
+
}
|
|
200
|
+
break;
|
|
201
|
+
}
|
|
202
|
+
case _dtableUtils.CellType.SINGLE_SELECT:
|
|
203
|
+
{
|
|
204
|
+
if (value && typeof value === 'string') {
|
|
205
|
+
displayValue = /*#__PURE__*/React.createElement(_SingleSelectOption.default, {
|
|
206
|
+
column: column,
|
|
207
|
+
value: value
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
break;
|
|
211
|
+
}
|
|
212
|
+
case _dtableUtils.CellType.MULTIPLE_SELECT:
|
|
213
|
+
{
|
|
214
|
+
if (value && isNonEmptyArray) {
|
|
215
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
216
|
+
className: "multiple-select-formatter"
|
|
217
|
+
}, value.map((item, index) => {
|
|
218
|
+
return /*#__PURE__*/React.createElement(_SingleSelectOption.default, {
|
|
219
|
+
column: column,
|
|
220
|
+
value: item,
|
|
221
|
+
key: `row-operation-multiple-select-${index}`
|
|
222
|
+
});
|
|
223
|
+
}));
|
|
224
|
+
}
|
|
225
|
+
break;
|
|
226
|
+
}
|
|
227
|
+
case _dtableUtils.CellType.FILE:
|
|
228
|
+
{
|
|
229
|
+
if (value) {
|
|
230
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
231
|
+
className: "row-cell-value-empty"
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
break;
|
|
235
|
+
}
|
|
236
|
+
case _dtableUtils.CellType.IMAGE:
|
|
237
|
+
{
|
|
238
|
+
if (value) {
|
|
239
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
240
|
+
className: "row-cell-value-empty"
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
break;
|
|
244
|
+
}
|
|
245
|
+
case _dtableUtils.CellType.DIGITAL_SIGN:
|
|
246
|
+
{
|
|
247
|
+
if (value) {
|
|
248
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
249
|
+
className: "row-cell-value-empty"
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
case _dtableUtils.CellType.DEPARTMENT_SINGLE_SELECT:
|
|
255
|
+
{
|
|
256
|
+
if (value) {
|
|
257
|
+
displayValue = createColumnFormatter(type, {
|
|
258
|
+
value
|
|
259
|
+
});
|
|
260
|
+
}
|
|
261
|
+
break;
|
|
262
|
+
}
|
|
263
|
+
case _dtableUtils.CellType.CHECKBOX:
|
|
264
|
+
{
|
|
265
|
+
if (value) {
|
|
266
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
267
|
+
className: "row-cell-value-empty"
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
break;
|
|
271
|
+
}
|
|
272
|
+
case _dtableUtils.CellType.GEOLOCATION:
|
|
273
|
+
{
|
|
274
|
+
if (value && typeof value === 'object') {
|
|
275
|
+
displayValue = /*#__PURE__*/React.createElement("div", {
|
|
276
|
+
className: "geolocation-formatter"
|
|
277
|
+
}, createColumnFormatter(type, {
|
|
278
|
+
value,
|
|
279
|
+
column,
|
|
280
|
+
row,
|
|
281
|
+
isCellSelected: false
|
|
282
|
+
}));
|
|
283
|
+
}
|
|
284
|
+
break;
|
|
285
|
+
}
|
|
286
|
+
case _dtableUtils.CellType.CREATOR:
|
|
287
|
+
case _dtableUtils.CellType.LAST_MODIFIER:
|
|
288
|
+
{
|
|
289
|
+
if (value) {
|
|
290
|
+
displayValue = createColumnFormatter(type, {
|
|
291
|
+
value
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
break;
|
|
295
|
+
}
|
|
296
|
+
case _dtableUtils.CellType.LONG_TEXT:
|
|
297
|
+
{
|
|
298
|
+
if (value) {
|
|
299
|
+
displayValue = createColumnFormatter(type, {
|
|
300
|
+
value,
|
|
301
|
+
column
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
break;
|
|
305
|
+
}
|
|
306
|
+
case _dtableUtils.CellType.FORMULA:
|
|
307
|
+
case _dtableUtils.CellType.LINK_FORMULA:
|
|
308
|
+
{
|
|
309
|
+
if (!formulaRow) {
|
|
310
|
+
break;
|
|
311
|
+
}
|
|
312
|
+
if (value) {
|
|
313
|
+
displayValue = createColumnFormatter(type, {
|
|
314
|
+
value
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
break;
|
|
318
|
+
}
|
|
319
|
+
// email, url, audo_number are same
|
|
320
|
+
case _dtableUtils.CellType.EMAIL:
|
|
321
|
+
case _dtableUtils.CellType.URL:
|
|
322
|
+
case _dtableUtils.CellType.AUTO_NUMBER:
|
|
323
|
+
{
|
|
324
|
+
if (value) {
|
|
325
|
+
displayValue = createColumnFormatter(type, {
|
|
326
|
+
value
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
break;
|
|
330
|
+
}
|
|
331
|
+
case _dtableUtils.CellType.DURATION:
|
|
332
|
+
{
|
|
333
|
+
if (value) {
|
|
334
|
+
displayValue = createColumnFormatter(type, {
|
|
335
|
+
value,
|
|
336
|
+
column
|
|
337
|
+
});
|
|
338
|
+
}
|
|
339
|
+
break;
|
|
340
|
+
}
|
|
341
|
+
case _dtableUtils.CellType.RATE:
|
|
342
|
+
{
|
|
343
|
+
if (value) {
|
|
344
|
+
displayValue = /*#__PURE__*/React.createElement(_RateFormatter.default, {
|
|
345
|
+
value: value,
|
|
346
|
+
column: column,
|
|
347
|
+
editable: false
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
break;
|
|
351
|
+
}
|
|
352
|
+
case _dtableUtils.CellType.BUTTON:
|
|
353
|
+
{
|
|
354
|
+
if (value) {
|
|
355
|
+
displayValue = /*#__PURE__*/React.createElement("span", {
|
|
356
|
+
className: "row-cell-value-empty"
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
break;
|
|
360
|
+
}
|
|
361
|
+
default:
|
|
362
|
+
{
|
|
363
|
+
break;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
return _getCellRecord(displayValue, rowId, column, columnWidth, isShowColumnName);
|
|
367
|
+
};
|
|
368
|
+
exports.getFormattedCell = getFormattedCell;
|
|
369
|
+
const getAllCollaborators = () => {
|
|
370
|
+
const {
|
|
371
|
+
collaboratorsCache,
|
|
372
|
+
state
|
|
373
|
+
} = window.app;
|
|
374
|
+
return [...state.collaboratorsWithAppUsers, ...Object.values(collaboratorsCache)];
|
|
375
|
+
};
|
|
376
|
+
exports.getAllCollaborators = getAllCollaborators;
|
|
377
|
+
const createColumnFormatter = (columnType, formatterProps) => {
|
|
378
|
+
// const Formatter = cellFormatterFactory.createFormatter(columnType);
|
|
379
|
+
// if (React.isValidElement(Formatter)) {
|
|
380
|
+
// return React.cloneElement(Formatter, { ...formatterProps });
|
|
381
|
+
// } else if (isFunction(Formatter)) {
|
|
382
|
+
// return <Formatter {...formatterProps} />;
|
|
383
|
+
// }
|
|
384
|
+
return /*#__PURE__*/React.createElement(_SimpleCellFormatter.default, formatterProps);
|
|
385
|
+
};
|
|
386
|
+
const _getCellRecord = function (displayValue, rowId, column, columnWidth) {
|
|
387
|
+
let isShowColumnName = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
|
|
388
|
+
let {
|
|
389
|
+
key,
|
|
390
|
+
name
|
|
391
|
+
} = column;
|
|
392
|
+
if (!isShowColumnName) {
|
|
393
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
394
|
+
className: "row-cell-value text-truncate",
|
|
395
|
+
key: rowId + '_' + key,
|
|
396
|
+
style: {
|
|
397
|
+
width: columnWidth
|
|
398
|
+
}
|
|
399
|
+
}, displayValue ? displayValue : /*#__PURE__*/React.createElement("span", {
|
|
400
|
+
className: "row-cell-value-empty"
|
|
401
|
+
}));
|
|
402
|
+
}
|
|
403
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
404
|
+
className: `row-cell-value text-truncate ${isShowColumnName && 'show-name'}`,
|
|
405
|
+
key: rowId + '_' + key,
|
|
406
|
+
style: {
|
|
407
|
+
width: columnWidth
|
|
408
|
+
}
|
|
409
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
410
|
+
className: "column-name text-truncate"
|
|
411
|
+
}, name), /*#__PURE__*/React.createElement("div", {
|
|
412
|
+
className: "row-cell-value-content",
|
|
413
|
+
style: {
|
|
414
|
+
width: columnWidth
|
|
415
|
+
}
|
|
416
|
+
}, displayValue ? displayValue : /*#__PURE__*/React.createElement("span", {
|
|
417
|
+
className: "row-cell-value-empty"
|
|
418
|
+
})));
|
|
419
|
+
};
|
|
420
|
+
const UNSHOW_COLUMN_TYPE = exports.UNSHOW_COLUMN_TYPE = [_dtableUtils.CellType.LINK, _dtableUtils.CellType.LONG_TEXT, _dtableUtils.CellType.FORMULA, _dtableUtils.CellType.LINK_FORMULA];
|
|
421
|
+
const getRowRecord = function (currentTableId, row, columns, unShowColumnKeyList) {
|
|
422
|
+
let matchedResult = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
|
|
423
|
+
if (!Array.isArray(unShowColumnKeyList)) {
|
|
424
|
+
unShowColumnKeyList = [];
|
|
425
|
+
}
|
|
426
|
+
return columns.filter(column => {
|
|
427
|
+
if (unShowColumnKeyList.includes(column.key)) return false;
|
|
428
|
+
if (UNSHOW_COLUMN_TYPE.includes(column.type)) return false;
|
|
429
|
+
return true;
|
|
430
|
+
}).map(column => {
|
|
431
|
+
const searchValue = matchedResult && matchedResult[column.key];
|
|
432
|
+
return getFormattedCell(column, row, {
|
|
433
|
+
tableId: currentTableId,
|
|
434
|
+
searchValue
|
|
435
|
+
}, column.width);
|
|
436
|
+
});
|
|
437
|
+
};
|
|
438
|
+
exports.getRowRecord = getRowRecord;
|
|
439
|
+
const isFunction = functionToCheck => {
|
|
440
|
+
const getType = {};
|
|
441
|
+
return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
|
442
|
+
};
|
|
443
|
+
exports.isFunction = isFunction;
|
|
444
|
+
function getSelectColumnOptions(column) {
|
|
445
|
+
if (!column || !column.data || !Array.isArray(column.data.options)) {
|
|
446
|
+
return [];
|
|
447
|
+
}
|
|
448
|
+
return column.data.options;
|
|
449
|
+
}
|