@open-tender/ui
Version:
A component library for use with the Open Tender web app
31 lines (30 loc) • 2.58 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const iconoir_react_1 = require("iconoir-react");
const react_1 = tslib_1.__importDefault(require("react"));
const utils_1 = require("../utils");
const Button_1 = tslib_1.__importDefault(require("./Button"));
const ErrorMessage_1 = tslib_1.__importDefault(require("./ErrorMessage"));
const Image_1 = tslib_1.__importDefault(require("./Image"));
const ModalContent_1 = tslib_1.__importDefault(require("./ModalContent"));
const View_1 = tslib_1.__importDefault(require("./View"));
// const disconnected =
// 'Cannot connect to Barcode Scanner. Please check the connection.'
const notFound = "We couldn't find your account. Please try again.";
const SignInQr = ({ config, handlers, imageUrl, errMsg, errorMessageConfig, modalContentConfig }) => {
const { signInQr__title, signInQr__subtitle } = config;
const title = signInQr__title.props.text || 'Scan QR Code';
const subtitle = signInQr__subtitle.props.text ||
'Please find the scanner below and scan your QR Code.';
const errorMessage = (errMsg === null || errMsg === void 0 ? void 0 : errMsg.includes('exist')) ? notFound : errMsg;
return (react_1.default.createElement(ModalContent_1.default, { config: modalContentConfig, title: title, subtitle: subtitle, cancel: handlers.close },
react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__content')),
imageUrl ? (react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__imageContainer')),
react_1.default.createElement(Image_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__image'), { src: imageUrl })))) : (react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__phone')),
react_1.default.createElement(iconoir_react_1.ScanQrCode, { width: 120, height: 120, strokeWidth: 1 }))),
errorMessage && (react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__error')),
react_1.default.createElement(ErrorMessage_1.default, Object.assign({ config: errorMessageConfig }, (0, utils_1.makeProps)(config, 'signInQr__errorMessage')), errorMessage),
react_1.default.createElement(Button_1.default, Object.assign({}, (0, utils_1.makeProps)(config, 'signInQr__retry'), { onClick: handlers.retry })))))));
};
exports.default = SignInQr;