UNPKG

wix-style-react

Version:
112 lines (110 loc) 3.36 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _system = require("@wix/wix-ui-icons-common/system"); var _Text = _interopRequireDefault(require("../Text")); var _SocialButtonSt = require("./SocialButton.st.css"); var _constants = require("./constants"); var _ButtonCore = _interopRequireDefault(require("../Button/ButtonCore")); var _jsxFileName = "/home/builduser/work/a9c1ac8876d5057c/packages/wix-style-react/dist/cjs/SocialButton/SocialButton.js"; var iconMap = { facebook: _system.SocialButtonFacebook, instagram: _system.SocialButtonInstagram, twitter: _system.SocialButtonTwitter, linkedin: _system.SocialButtonLinkedIn, pinterest: _system.SocialButtonPinterest, youtube: _system.SocialButtonYoutube, xcorp: _system.SocialButtonX }; var Icon = /*#__PURE__*/_react.default.memo(props => { var { icon, disabled, dataHook, text } = props; var SocialIcon = iconMap[icon]; return /*#__PURE__*/_react.default.createElement(_ButtonCore.default, { className: (0, _SocialButtonSt.st)(_SocialButtonSt.classes.icon, { type: icon, disabled, single: !text }), "data-hook": dataHook, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 34, columnNumber: 5 } }, !!iconMap[icon] && /*#__PURE__*/_react.default.createElement(SocialIcon, { __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 38, columnNumber: 27 } })); }); /** Social networks share button with title */ var SocialButton = _ref => { var { dataHook, text, onClick, icon, disabled } = _ref; return /*#__PURE__*/_react.default.createElement("div", { className: (0, _SocialButtonSt.st)(_SocialButtonSt.classes.root, { disabled }), "data-hook": dataHook, onClick: disabled ? undefined : onClick, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 46, columnNumber: 5 } }, /*#__PURE__*/_react.default.createElement(Icon, { dataHook: _constants.dataHooks.socialIcon, text: text, icon: icon, disabled: disabled, __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 51, columnNumber: 7 } }), text && /*#__PURE__*/_react.default.createElement(_Text.default, { size: "small", dataHook: _constants.dataHooks.socialTitle, skin: disabled ? 'disabled' : 'standard', __self: void 0, __source: { fileName: _jsxFileName, lineNumber: 58, columnNumber: 9 } }, text)); }; SocialButton.propTypes = { /** hook for testing purposes */ dataHook: _propTypes.default.string, /** Text for the button */ text: _propTypes.default.node, /** Click handler */ onClick: _propTypes.default.func, /** Share button social network type */ icon: _propTypes.default.oneOf(['facebook', 'instagram', 'twitter', 'linkedin', 'pinterest', 'youtube', 'xcorp']), /** Disable button */ disabled: _propTypes.default.bool }; SocialButton.displayName = 'SocialButton'; var _default = exports.default = SocialButton; //# sourceMappingURL=SocialButton.js.map