UNPKG

refire-react

Version:

React components and helpers for Refire

54 lines 2.23 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var PropTypes = require("prop-types"); var React = require("react"); var react_1 = require("react"); var react_redux_1 = require("react-redux"); var refire_1 = require("refire"); var oAuthLogin = refire_1.firebaseActions.oAuthLogin; var validProviders = ["facebook", "google", "twitter", "github"]; var validFlows = ["popup", "redirect"]; var FirebaseOAuth = /** @class */ (function (_super) { __extends(FirebaseOAuth, _super); function FirebaseOAuth() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.authenticate = function () { var flow = _this.props.flow || "popup"; _this.props.dispatch(oAuthLogin(flow, _this.props.provider, _this.props.scopes)).catch(function (error) { if (typeof _this.props.onError === "function") { _this.props.onError(error); } }); if (typeof _this.props.onClick === "function") { _this.props.onClick(); } }; return _this; } FirebaseOAuth.prototype.render = function () { return React.Children.only(React.cloneElement(this.props.children, { onClick: this.authenticate })); }; FirebaseOAuth.propTypes = { flow: PropTypes.oneOf(validFlows), onClick: PropTypes.func, onError: PropTypes.func, provider: PropTypes.oneOf(validProviders), scopes: PropTypes.array }; return FirebaseOAuth; }(react_1.Component)); exports.FirebaseOAuth = FirebaseOAuth; exports.default = react_redux_1.connect()(FirebaseOAuth); //# sourceMappingURL=FirebaseOAuth.js.map