113 lines
3.3 KiB
JavaScript
113 lines
3.3 KiB
JavaScript
|
"use strict";
|
||
|
"use client";
|
||
|
|
||
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
||
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
||
|
Object.defineProperty(exports, "__esModule", {
|
||
|
value: true
|
||
|
});
|
||
|
exports.default = void 0;
|
||
|
var React = _interopRequireWildcard(require("react"));
|
||
|
var _Cell = _interopRequireDefault(require("./Cell"));
|
||
|
var _DescriptionsContext = _interopRequireDefault(require("./DescriptionsContext"));
|
||
|
function renderCells(items, _ref, _ref2) {
|
||
|
let {
|
||
|
colon,
|
||
|
prefixCls,
|
||
|
bordered
|
||
|
} = _ref;
|
||
|
let {
|
||
|
component,
|
||
|
type,
|
||
|
showLabel,
|
||
|
showContent,
|
||
|
labelStyle: rootLabelStyle,
|
||
|
contentStyle: rootContentStyle
|
||
|
} = _ref2;
|
||
|
return items.map((_ref3, index) => {
|
||
|
let {
|
||
|
label,
|
||
|
children,
|
||
|
prefixCls: itemPrefixCls = prefixCls,
|
||
|
className,
|
||
|
style,
|
||
|
labelStyle,
|
||
|
contentStyle,
|
||
|
span = 1,
|
||
|
key
|
||
|
} = _ref3;
|
||
|
if (typeof component === 'string') {
|
||
|
return /*#__PURE__*/React.createElement(_Cell.default, {
|
||
|
key: `${type}-${key || index}`,
|
||
|
className: className,
|
||
|
style: style,
|
||
|
labelStyle: Object.assign(Object.assign({}, rootLabelStyle), labelStyle),
|
||
|
contentStyle: Object.assign(Object.assign({}, rootContentStyle), contentStyle),
|
||
|
span: span,
|
||
|
colon: colon,
|
||
|
component: component,
|
||
|
itemPrefixCls: itemPrefixCls,
|
||
|
bordered: bordered,
|
||
|
label: showLabel ? label : null,
|
||
|
content: showContent ? children : null
|
||
|
});
|
||
|
}
|
||
|
return [/*#__PURE__*/React.createElement(_Cell.default, {
|
||
|
key: `label-${key || index}`,
|
||
|
className: className,
|
||
|
style: Object.assign(Object.assign(Object.assign({}, rootLabelStyle), style), labelStyle),
|
||
|
span: 1,
|
||
|
colon: colon,
|
||
|
component: component[0],
|
||
|
itemPrefixCls: itemPrefixCls,
|
||
|
bordered: bordered,
|
||
|
label: label
|
||
|
}), /*#__PURE__*/React.createElement(_Cell.default, {
|
||
|
key: `content-${key || index}`,
|
||
|
className: className,
|
||
|
style: Object.assign(Object.assign(Object.assign({}, rootContentStyle), style), contentStyle),
|
||
|
span: span * 2 - 1,
|
||
|
component: component[1],
|
||
|
itemPrefixCls: itemPrefixCls,
|
||
|
bordered: bordered,
|
||
|
content: children
|
||
|
})];
|
||
|
});
|
||
|
}
|
||
|
const Row = props => {
|
||
|
const descContext = React.useContext(_DescriptionsContext.default);
|
||
|
const {
|
||
|
prefixCls,
|
||
|
vertical,
|
||
|
row,
|
||
|
index,
|
||
|
bordered
|
||
|
} = props;
|
||
|
if (vertical) {
|
||
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("tr", {
|
||
|
key: `label-${index}`,
|
||
|
className: `${prefixCls}-row`
|
||
|
}, renderCells(row, props, Object.assign({
|
||
|
component: 'th',
|
||
|
type: 'label',
|
||
|
showLabel: true
|
||
|
}, descContext))), /*#__PURE__*/React.createElement("tr", {
|
||
|
key: `content-${index}`,
|
||
|
className: `${prefixCls}-row`
|
||
|
}, renderCells(row, props, Object.assign({
|
||
|
component: 'td',
|
||
|
type: 'content',
|
||
|
showContent: true
|
||
|
}, descContext))));
|
||
|
}
|
||
|
return /*#__PURE__*/React.createElement("tr", {
|
||
|
key: index,
|
||
|
className: `${prefixCls}-row`
|
||
|
}, renderCells(row, props, Object.assign({
|
||
|
component: bordered ? ['th', 'td'] : 'td',
|
||
|
type: 'item',
|
||
|
showLabel: true,
|
||
|
showContent: true
|
||
|
}, descContext)));
|
||
|
};
|
||
|
var _default = exports.default = Row;
|