UNPKG

@vtex/styleguide

Version:

> VTEX Styleguide React components ([Docs](https://vtex.github.io/styleguide))

82 lines (61 loc) 2.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _index = require("../../ActionMenu/index.js"); var _index2 = _interopRequireDefault(_index); var _index3 = require("../../ButtonGroup/index.js"); var _index4 = _interopRequireDefault(_index3); var _Plus = require("../../icon/Plus"); var _Plus2 = _interopRequireDefault(_Plus); var _Button = require("./Button"); var _Button2 = _interopRequireDefault(_Button); var _constants = require("../constants"); var _context = require("./context"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } var ButtonNewLine = function ButtonNewLine(_ref) { var actions = _ref.actions, buttonProps = _objectWithoutPropertiesLoose(_ref, ["actions"]); var namespace = _constants.NAMESPACES.TOOLBAR.BUTTON_NEWLINE; var _useButtonGroupContex = (0, _context.useButtonGroupContext)(), testId = _useButtonGroupContex.testId; var newlineTestId = testId + "__new-line"; return actions ? _react2.default.createElement(_index4.default, { buttons: [_react2.default.createElement(_Button2.default, _extends({ isActiveOfGroup: true, id: namespace, testId: newlineTestId, key: namespace, isGrouped: true, isFirstOfGroup: true, variation: _Button.ButtonVariation.Primary, icon: _react2.default.createElement(_Plus2.default, { solid: true, size: _Button.IconSize.Light }) }, buttonProps)), _react2.default.createElement(_index2.default, { isActiveOfGroup: true, id: namespace + "__action-menu", testId: newlineTestId + "__action-menu", key: "actions-button", buttonProps: buttonProps, options: actions })] }) : _react2.default.createElement(_Button2.default, _extends({ id: _constants.NAMESPACES.TOOLBAR.BUTTON_NEWLINE, testId: newlineTestId, icon: _react2.default.createElement(_Plus2.default, { solid: true, size: _Button.IconSize.Light }), variation: _Button.ButtonVariation.Primary }, buttonProps)); }; ButtonNewLine.defaultProps = { size: _Button.ButtonSize.Small }; exports.default = ButtonNewLine;