"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.ItemDetailsPropertySummary = exports.ItemDetailsCard = exports.ItemDetailsAction = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireWildcard(require("react")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _eui = require("@elastic/eui"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } /* * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one * or more contributor license agreements. Licensed under the Elastic License * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ const OTHER_NODES = {}; const groupChildrenByType = (children, types) => { const result = new Map(); types.forEach(type => result.set(type, [])); result.set(OTHER_NODES, []); _react.default.Children.toArray(children).forEach(child => { const key = /*#__PURE__*/(0, _react.isValidElement)(child) ? child.type : OTHER_NODES; if (!result.has(key)) { var _result$get; (_result$get = result.get(OTHER_NODES)) === null || _result$get === void 0 ? void 0 : _result$get.push(child); } else { var _result$get2; (_result$get2 = result.get(key)) === null || _result$get2 === void 0 ? void 0 : _result$get2.push(child); } }); return result; }; const SummarySection = (0, _styledComponents.default)(_eui.EuiFlexItem)` background-color: ${({ theme }) => theme.eui.euiColorLightestShade}; padding: ${({ theme }) => theme.eui.euiSize}; `; const DetailsSection = (0, _styledComponents.default)(_eui.EuiFlexItem)` &&& { margin-left: 0; } padding: ${({ theme }) => theme.eui.euiSizeM} ${({ theme }) => theme.eui.euiSizeL} ${({ theme }) => theme.eui.euiSizeL} 0; .trustedAppsConditionsTable { margin-left: ${({ theme }) => theme.eui.euiSize}; } `; const DescriptionListTitle = (0, _styledComponents.default)(_eui.EuiDescriptionListTitle)` &&& { width: 40%; margin-top: 0; margin-bottom: ${({ theme }) => theme.eui.euiSizeS}; } `; const DescriptionListDescription = (0, _styledComponents.default)(_eui.EuiDescriptionListDescription)` &&& { width: 60%; margin-top: 0; margin-bottom: ${({ theme }) => theme.eui.euiSizeS}; } `; const ItemDetailsPropertySummary = /*#__PURE__*/(0, _react.memo)(({ name, value }) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(DescriptionListTitle, { className: "eui-textTruncate" }, name), /*#__PURE__*/_react.default.createElement(DescriptionListDescription, { className: "eui-textBreakWord" }, value))); exports.ItemDetailsPropertySummary = ItemDetailsPropertySummary; ItemDetailsPropertySummary.displayName = 'ItemPropertySummary'; const ItemDetailsAction = /*#__PURE__*/(0, _react.memo)(({ children, className = '', ...rest }) => /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_eui.EuiButton, (0, _extends2.default)({ className: `eui-fullWidth ${className}` }, rest), children))); exports.ItemDetailsAction = ItemDetailsAction; ItemDetailsAction.displayName = 'ItemDetailsAction'; const ItemDetailsCard = /*#__PURE__*/(0, _react.memo)(({ children, 'data-test-subj': dataTestSubj, className }) => { var _childElements$get; const childElements = (0, _react.useMemo)(() => groupChildrenByType(children, [ItemDetailsPropertySummary, ItemDetailsAction]), [children]); return /*#__PURE__*/_react.default.createElement(_eui.EuiPanel, { paddingSize: "none", "data-test-subj": dataTestSubj, className: className, hasBorder: true }, /*#__PURE__*/_react.default.createElement(_eui.EuiFlexGroup, { direction: "row" }, /*#__PURE__*/_react.default.createElement(SummarySection, { grow: 2 }, /*#__PURE__*/_react.default.createElement(_eui.EuiDescriptionList, { compressed: true, type: "column" }, childElements.get(ItemDetailsPropertySummary))), /*#__PURE__*/_react.default.createElement(DetailsSection, { grow: 5 }, /*#__PURE__*/_react.default.createElement(_eui.EuiFlexGroup, { direction: "column", gutterSize: "m" }, /*#__PURE__*/_react.default.createElement(_eui.EuiFlexItem, { grow: 1 }, /*#__PURE__*/_react.default.createElement("div", null, childElements.get(OTHER_NODES))), childElements.has(ItemDetailsAction) && /*#__PURE__*/_react.default.createElement(_eui.EuiFlexItem, { grow: false }, /*#__PURE__*/_react.default.createElement(_eui.EuiFlexGroup, { gutterSize: "s", justifyContent: "flexEnd" }, (_childElements$get = childElements.get(ItemDetailsAction)) === null || _childElements$get === void 0 ? void 0 : _childElements$get.map((action, index) => /*#__PURE__*/_react.default.createElement(_eui.EuiFlexItem, { grow: false, key: index }, action)))))))); }); exports.ItemDetailsCard = ItemDetailsCard; ItemDetailsCard.displayName = 'ItemDetailsCard';