UNPKG

netlify-cms-widget-inline-select

Version:
70 lines (59 loc) 2.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = InlineSelectPreview; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _netlifyCmsUiDefault = require("netlify-cms-ui-default"); var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes")); var _utils = require("./utils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function InlineSelectPreview(_ref) { var rawValue = _ref.value, field = _ref.field; var options = (0, _utils.getOptions)({ field: field }); var value = (0, _utils.getValue)(rawValue, { field: field }); var values = Array.isArray(value) ? value : [value]; var items = options.filter(function (optionsItem) { return values.find(function (item) { return item === optionsItem.value; }); }); var name = field.get('name'); if (options.length === 0) { return /*#__PURE__*/_react["default"].createElement("div", null, "Error rendering inline-select control for ", name, ": No options"); } return /*#__PURE__*/_react["default"].createElement(_netlifyCmsUiDefault.WidgetPreviewContainer, null, /*#__PURE__*/_react["default"].createElement("div", { className: "netlify-cms-widget-inline-select-preview", style: { fontFamily: _netlifyCmsUiDefault.fonts.primary, margin: '0 -2px', display: 'flex', flexWrap: 'wrap' } }, items.map(function (item) { return /*#__PURE__*/_react["default"].createElement("span", { key: item.value, className: "netlify-cms-widget-inline-select-preview__badge", style: { padding: '4px 8px', margin: '2px', background: _netlifyCmsUiDefault.colorsRaw.grayLight, borderRadius: '5px', color: _netlifyCmsUiDefault.colorsRaw.grayDark } }, item.label); }))); } InlineSelectPreview.propTypes = { value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].arrayOf(_propTypes["default"].string), _reactImmutableProptypes["default"].listOf(_propTypes["default"].string)]), field: _propTypes["default"].shape({ get: _propTypes["default"].func.isRequired }).isRequired }; //# sourceMappingURL=InlineSelectPreview.js.map