UNPKG

@kiwicom/smart-faq

Version:

Smart FAQ

136 lines (118 loc) 3.79 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.withToken = exports.withKwAuthToken = exports.withLoginToken = exports.withSimpleToken = exports.withUser = exports.withLogin = exports.UserContext = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var React = _interopRequireWildcard(require("react")); // @flow var UserContext = React.createContext(({ user: null, brand: 'kiwicom', loginToken: null, simpleToken: null, kwAuthToken: null, onLogin: function onLogin() {}, onLogout: function onLogout() { return Promise.resolve(null); } } /*: UserContextType*/ )); exports.UserContext = UserContext; var withLogin = function withLogin(Component /*: React.ComponentType<{ onLogin: onLogin } & Props>*/ ) { return function withLoginHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref) { var onLogin = _ref.onLogin; return React.createElement(Component, (0, _extends2.default)({}, props, { onLogin: onLogin })); }); }; }; exports.withLogin = withLogin; var withUser = function withUser(Component /*: React.ComponentType<{ user: User } & Props>*/ ) { return function withUserHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref2) { var user = _ref2.user; return React.createElement(Component, (0, _extends2.default)({}, props, { user: user })); }); }; }; exports.withUser = withUser; var withSimpleToken = function withSimpleToken(Component /*: React.ComponentType<{ simpleToken: ?string } & Props>*/ ) { return function withSimpleTokenHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref3) { var simpleToken = _ref3.simpleToken; return React.createElement(Component, (0, _extends2.default)({}, props, { simpleToken: simpleToken })); }); }; }; exports.withSimpleToken = withSimpleToken; var withLoginToken = function withLoginToken(Component /*: React.ComponentType<{ loginToken: ?string } & Props>*/ ) { return function withLoginTokenHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref4) { var loginToken = _ref4.loginToken; return React.createElement(Component, (0, _extends2.default)({}, props, { loginToken: loginToken })); }); }; }; exports.withLoginToken = withLoginToken; var withKwAuthToken = function withKwAuthToken(Component /*: React.ComponentType<{ kwAuthToken: ?string } & Props>*/ ) { return function withKwAuthTokenHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref5) { var kwAuthToken = _ref5.kwAuthToken; return React.createElement(Component, (0, _extends2.default)({}, props, { kwAuthToken: kwAuthToken })); }); }; }; exports.withKwAuthToken = withKwAuthToken; var withToken = function withToken(Component /*: React.ComponentType<{ ...TokenTypes } & Props>*/ ) { return function withTokenHOC(props /*: Props*/ ) { return React.createElement(UserContext.Consumer, null, function (_ref6) { var simpleToken = _ref6.simpleToken, loginToken = _ref6.loginToken, kwAuthToken = _ref6.kwAuthToken; return React.createElement(Component, (0, _extends2.default)({}, props, { simpleToken: simpleToken, loginToken: loginToken, kwAuthToken: kwAuthToken })); }); }; }; exports.withToken = withToken;