UNPKG

@krowdy/kds-auth

Version:

React components that implement Google's Material Design.

96 lines (79 loc) 3.95 kB
"use strict"; var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = _interopRequireWildcard(require("react")); var _reactLinkedinLoginOauth = require("react-linkedin-login-oauth2"); var _kdsCore = require("@krowdy/kds-core"); var _constants = require("./constants"); var _utils = require("../utils"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(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; } var _ref2 = /*#__PURE__*/_react["default"].createElement(_kdsCore.Typography, { variant: "body2" }, "Ingresa con LinkedIn"); var Linkedin = function Linkedin() { var classes = useStyles(); var _useAuth = (0, _utils.useAuth)(), _useAuth$linkedinCred = _useAuth.linkedinCredentials, linkedinCredentials = _useAuth$linkedinCred === void 0 ? {} : _useAuth$linkedinCred, validateSocialNetwork = _useAuth.validateSocialNetwork; var _handleSuccess = (0, _react.useCallback)(function (code) { validateSocialNetwork('linkedin', { method: _constants.METHODS_SESSION['linkedin'], tokenId: code }); // eslint-disable-next-line react-hooks/exhaustive-deps }, [validateSocialNetwork, linkedinCredentials]); if (!linkedinCredentials || !linkedinCredentials.clientId) return null; return /*#__PURE__*/_react["default"].createElement(_reactLinkedinLoginOauth.LinkedIn, { clientId: linkedinCredentials.clientId, onFailure: function onFailure() {}, onSuccess: _handleSuccess, redirectUri: linkedinCredentials.redirectUri, scope: linkedinCredentials.scope || 'r_liteprofile r_emailaddress w_member_social', state: linkedinCredentials.state || '34232423' }, function (_ref) { var linkedInLogin = _ref.linkedInLogin; return /*#__PURE__*/_react["default"].createElement(_kdsCore.Button, { className: classes.linkedinButton, onClick: linkedInLogin, variant: "contained" }, /*#__PURE__*/_react["default"].createElement("img", { alt: "Log in with Linked In", className: classes.iconLinkedin, src: _constants.IMAGES_SOCIAL['linkedin'] }), _ref2); }); }; var useStyles = (0, _kdsCore.makeStyles)(function (_ref3) { var spacing = _ref3.spacing, palette = _ref3.palette; return { iconLinkedin: { marginRight: spacing(1.5), marginTop: spacing(-.75) }, linkedinButton: { // color de boton de linkedin '&:hover': { background: '#007AB9' }, alignItems: 'center', background: '#007AB9', borderRadius: spacing(.5), color: palette.common.white, display: 'flex', flex: 1, height: 40, justifyContent: 'center', marginTop: spacing(2), width: '100%' } }; }, { name: 'Linkedin' }); var _default = _react["default"].memo(Linkedin); exports["default"] = _default;