1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
| 'use strict';
|
| Object.defineProperty(exports, '__esModule', { value: true });
|
| var vue = require('vue');
| var lodashUnified = require('lodash-unified');
| require('../../../../utils/index.js');
| require('../components/index.js');
| var constants = require('../constants.js');
| var _private = require('../private.js');
| var utils = require('../utils.js');
| var cell = require('../components/cell.js');
| var shared = require('@vue/shared');
| var expandIcon = require('../components/expand-icon.js');
|
| const CellRenderer = ({
| columns,
| column,
| columnIndex,
| depth,
| expandIconProps,
| isScrolling,
| rowData,
| rowIndex,
| style,
| expandedRowKeys,
| ns,
| cellProps: _cellProps,
| expandColumnKey,
| indentSize,
| iconSize,
| rowKey
| }, {
| slots
| }) => {
| const cellStyle = utils.enforceUnit(style);
| if (column.placeholderSign === _private.placeholderSign) {
| return vue.createVNode("div", {
| "class": ns.em("row-cell", "placeholder"),
| "style": cellStyle
| }, null);
| }
| const {
| cellRenderer,
| dataKey,
| dataGetter
| } = column;
| const columnCellRenderer = utils.componentToSlot(cellRenderer);
| const CellComponent = columnCellRenderer || slots.default || ((props) => vue.createVNode(cell["default"], props, null));
| const cellData = shared.isFunction(dataGetter) ? dataGetter({
| columns,
| column,
| columnIndex,
| rowData,
| rowIndex
| }) : lodashUnified.get(rowData, dataKey != null ? dataKey : "");
| const extraCellProps = utils.tryCall(_cellProps, {
| cellData,
| columns,
| column,
| columnIndex,
| rowIndex,
| rowData
| });
| const cellProps = {
| class: ns.e("cell-text"),
| columns,
| column,
| columnIndex,
| cellData,
| isScrolling,
| rowData,
| rowIndex
| };
| const Cell = CellComponent(cellProps);
| const kls = [ns.e("row-cell"), column.class, column.align === constants.Alignment.CENTER && ns.is("align-center"), column.align === constants.Alignment.RIGHT && ns.is("align-right")];
| const expandable = rowIndex >= 0 && expandColumnKey && column.key === expandColumnKey;
| const expanded = rowIndex >= 0 && expandedRowKeys.includes(rowData[rowKey]);
| let IconOrPlaceholder;
| const iconStyle = `margin-inline-start: ${depth * indentSize}px;`;
| if (expandable) {
| if (shared.isObject(expandIconProps)) {
| IconOrPlaceholder = vue.createVNode(expandIcon["default"], vue.mergeProps(expandIconProps, {
| "class": [ns.e("expand-icon"), ns.is("expanded", expanded)],
| "size": iconSize,
| "expanded": expanded,
| "style": iconStyle,
| "expandable": true
| }), null);
| } else {
| IconOrPlaceholder = vue.createVNode("div", {
| "style": [iconStyle, `width: ${iconSize}px; height: ${iconSize}px;`].join(" ")
| }, null);
| }
| }
| return vue.createVNode("div", vue.mergeProps({
| "class": kls,
| "style": cellStyle
| }, extraCellProps, {
| "role": "cell"
| }), [IconOrPlaceholder, Cell]);
| };
| CellRenderer.inheritAttrs = false;
|
| exports["default"] = CellRenderer;
| //# sourceMappingURL=cell.js.map
|
|