UNPKG

matrix-react-sdk

Version:
61 lines (58 loc) 11.2 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var React = _interopRequireWildcard(require("react")); var _qrcode = require("qrcode"); var _classnames = _interopRequireDefault(require("classnames")); var _languageHandler = require("../../../languageHandler"); var _Spinner = _interopRequireDefault(require("./Spinner")); const _excluded = ["data", "className"]; /* Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } const defaultOptions = { errorCorrectionLevel: "L" // we want it as trivial-looking as possible }; const QRCode = _ref => { let { data, className } = _ref, options = (0, _objectWithoutProperties2.default)(_ref, _excluded); const [dataUri, setUri] = React.useState(null); React.useEffect(() => { if (data === null) { setUri(null); return; } let cancelled = false; (0, _qrcode.toDataURL)(data, _objectSpread(_objectSpread({}, defaultOptions), options)).then(uri => { if (cancelled) return; setUri(uri); }); return () => { cancelled = true; }; }, [JSON.stringify(data), options]); // eslint-disable-line react-hooks/exhaustive-deps return /*#__PURE__*/React.createElement("div", { className: (0, _classnames.default)("mx_QRCode", className) }, dataUri ? /*#__PURE__*/React.createElement("img", { src: dataUri, className: "mx_VerificationQRCode", alt: (0, _languageHandler._t)("common|qr_code") }) : /*#__PURE__*/React.createElement(_Spinner.default, null)); }; var _default = exports.default = QRCode; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9xcmNvZGUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfbGFuZ3VhZ2VIYW5kbGVyIiwiX1NwaW5uZXIiLCJfZXhjbHVkZWQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZhdWx0T3B0aW9ucyIsImVycm9yQ29ycmVjdGlvbkxldmVsIiwiUVJDb2RlIiwiX3JlZiIsImRhdGEiLCJjbGFzc05hbWUiLCJvcHRpb25zIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsImRhdGFVcmkiLCJzZXRVcmkiLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsImNhbmNlbGxlZCIsInRvRGF0YVVSTCIsInRoZW4iLCJ1cmkiLCJKU09OIiwic3RyaW5naWZ5IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZXMiLCJzcmMiLCJhbHQiLCJfdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL2VsZW1lbnRzL1FSQ29kZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjAgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyB0b0RhdGFVUkwsIFFSQ29kZVNlZ21lbnQsIFFSQ29kZVRvRGF0YVVSTE9wdGlvbnMsIFFSQ29kZVJlbmRlcmVyc09wdGlvbnMgfSBmcm9tIFwicXJjb2RlXCI7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xuXG5pbXBvcnQgeyBfdCB9IGZyb20gXCIuLi8uLi8uLi9sYW5ndWFnZUhhbmRsZXJcIjtcbmltcG9ydCBTcGlubmVyIGZyb20gXCIuL1NwaW5uZXJcIjtcblxuaW50ZXJmYWNlIElQcm9wcyBleHRlbmRzIFFSQ29kZVJlbmRlcmVyc09wdGlvbnMge1xuICAgIC8qKiBUaGUgZGF0YSBmb3IgdGhlIFFSIGNvZGUuIElmIGBudWxsYCwgYSBzcGlubmVyIGlzIHNob3duLiAqL1xuICAgIGRhdGE6IG51bGwgfCBzdHJpbmcgfCBRUkNvZGVTZWdtZW50W107XG4gICAgY2xhc3NOYW1lPzogc3RyaW5nO1xufVxuXG5jb25zdCBkZWZhdWx0T3B0aW9uczogUVJDb2RlVG9EYXRhVVJMT3B0aW9ucyA9IHtcbiAgICBlcnJvckNvcnJlY3Rpb25MZXZlbDogXCJMXCIsIC8vIHdlIHdhbnQgaXQgYXMgdHJpdmlhbC1sb29raW5nIGFzIHBvc3NpYmxlXG59O1xuXG5jb25zdCBRUkNvZGU6IFJlYWN0LkZDPElQcm9wcz4gPSAoeyBkYXRhLCBjbGFzc05hbWUsIC4uLm9wdGlvbnMgfSkgPT4ge1xuICAgIGNvbnN0IFtkYXRhVXJpLCBzZXRVcmldID0gUmVhY3QudXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKGRhdGEgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHNldFVyaShudWxsKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgY2FuY2VsbGVkID0gZmFsc2U7XG4gICAgICAgIHRvRGF0YVVSTChkYXRhLCB7IC4uLmRlZmF1bHRPcHRpb25zLCAuLi5vcHRpb25zIH0pLnRoZW4oKHVyaSkgPT4ge1xuICAgICAgICAgICAgaWYgKGNhbmNlbGxlZCkgcmV0dXJuO1xuICAgICAgICAgICAgc2V0VXJpKHVyaSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgY2FuY2VsbGVkID0gdHJ1ZTtcbiAgICAgICAgfTtcbiAgICB9LCBbSlNPTi5zdHJpbmdpZnkoZGF0YSksIG9wdGlvbnNdKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFwibXhfUVJDb2RlXCIsIGNsYXNzTmFtZSl9PlxuICAgICAgICAgICAge2RhdGFVcmkgPyA8aW1nIHNyYz17ZGF0YVVyaX0gY2xhc3NOYW1lPVwibXhfVmVyaWZpY2F0aW9uUVJDb2RlXCIgYWx0PXtfdChcImNvbW1vbnxxcl9jb2RlXCIpfSAvPiA6IDxTcGlubmVyIC8+fVxuICAgICAgICA8L2Rpdj5cbiAgICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgUVJDb2RlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFRQSxJQUFBQSxLQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFDLHNC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