@coko/client
Version:
Client side common code for coko apps
70 lines (69 loc) • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _Spin = _interopRequireDefault(require("../common/Spin"));
var _Result = _interopRequireDefault(require("../common/Result"));
var _templateObject;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
var Wrapper = _styledComponents["default"].div(_templateObject || (_templateObject = _taggedTemplateLiteral([""])));
var ProviderConnection = function ProviderConnection(props) {
var className = props.className,
closeOnSuccess = props.closeOnSuccess,
connecting = props.connecting,
redirectUrlLabel = props.redirectUrlLabel,
successfullyConnected = props.successfullyConnected;
var resultProps;
if (connecting) {
resultProps = {
icon: /*#__PURE__*/_react["default"].createElement(_Spin["default"], {
size: 18,
spinning: true
}),
title: 'Authenticating...'
};
} else if (successfullyConnected) {
var nextPageSubTitle = '';
if (closeOnSuccess) {
nextPageSubTitle = 'This window should close automatically...';
} else if (redirectUrlLabel) {
nextPageSubTitle = "Redirecting you to ".concat(redirectUrlLabel, "...");
} else {
nextPageSubTitle = 'Redirecting you...';
}
resultProps = {
status: 'success',
subTitle: nextPageSubTitle,
title: 'Connection established!'
};
} else {
// Connection must have failed
resultProps = {
status: 'error',
subTitle: 'Try reconnecting or contact us',
title: 'Something went wrong!'
};
}
return /*#__PURE__*/_react["default"].createElement(Wrapper, {
className: className
}, /*#__PURE__*/_react["default"].createElement(_Result["default"], resultProps));
};
ProviderConnection.propTypes = {
closeOnSuccess: _propTypes["default"].bool,
connecting: _propTypes["default"].bool,
redirectUrlLabel: _propTypes["default"].string,
successfullyConnected: _propTypes["default"].bool
};
ProviderConnection.defaultProps = {
closeOnSuccess: false,
connecting: false,
redirectUrlLabel: null,
successfullyConnected: false
};
var _default = ProviderConnection;
exports["default"] = _default;