tdesign-react
Version:
TDesign Component for React
85 lines (81 loc) • 3.35 kB
JavaScript
/**
* tdesign v1.15.1
* (c) 2025 tdesign
* @license MIT
*/
import React, { useMemo, useCallback } from 'react';
import { RefreshIcon, CheckCircleFilledIcon } from 'tdesign-icons-react';
import { Loading } from '../loading/index.js';
import '../loading/Loading.js';
import '../_chunks/dep-cb0a3966.js';
import '../_chunks/dep-eca3a3de.js';
import '../_chunks/dep-48805ab8.js';
import '../_chunks/dep-026a4c6b.js';
import 'classnames';
import '../_chunks/dep-3a09424a.js';
import 'lodash-es';
import '../hooks/useConfig.js';
import '../config-provider/ConfigContext.js';
import '../_chunks/dep-f97636ce.js';
import '../_chunks/dep-9dbbf468.js';
import 'dayjs';
import '../common/Portal.js';
import 'react-dom';
import '../hooks/useLayoutEffect.js';
import '../loading/gradient.js';
import '../_chunks/dep-c48e2ca1.js';
import '../_chunks/dep-6af6bc60.js';
import '../_chunks/dep-87d110df.js';
import '../hooks/useDomRefCallback.js';
import '../loading/defaultProps.js';
import '../hooks/useDefaultProps.js';
import '../loading/plugin.js';
import '../_util/react-render.js';
import '../_chunks/dep-52ff3837.js';
import '../common/PluginContainer.js';
import '../config-provider/ConfigProvider.js';
var defaultSpin = /* @__PURE__ */React.createElement(Loading, {
size: "32px"
});
function QRcodeStatus(_ref) {
var locale = _ref.locale,
classPrefix = _ref.classPrefix,
onRefresh = _ref.onRefresh,
statusRender = _ref.statusRender,
status = _ref.status;
var defaultExpiredNode = useMemo(function () {
return /* @__PURE__ */React.createElement(React.Fragment, null, /* @__PURE__ */React.createElement("p", {
className: "".concat(classPrefix, "-expired__text")
}, locale === null || locale === void 0 ? void 0 : locale.expiredText), onRefresh && /* @__PURE__ */React.createElement("p", {
className: "".concat(classPrefix, "-expired__button"),
onClick: onRefresh
}, /* @__PURE__ */React.createElement(RefreshIcon, {
size: 16
}), locale === null || locale === void 0 ? void 0 : locale.refreshText));
}, [classPrefix, locale === null || locale === void 0 ? void 0 : locale.expiredText, locale === null || locale === void 0 ? void 0 : locale.refreshText, onRefresh]);
var defaultScannedNode = useMemo(function () {
return /* @__PURE__ */React.createElement("p", {
className: "".concat(classPrefix, "-scanned")
}, /* @__PURE__ */React.createElement(CheckCircleFilledIcon, {
size: 16,
className: "".concat(classPrefix, "-scanned__icon")
}), locale === null || locale === void 0 ? void 0 : locale.scannedText);
}, [classPrefix, locale === null || locale === void 0 ? void 0 : locale.scannedText]);
var defaultNodes = useMemo(function () {
return {
expired: defaultExpiredNode,
loading: defaultSpin,
scanned: defaultScannedNode
};
}, [defaultExpiredNode, defaultScannedNode]);
var defaultStatusRender = useCallback(function (info) {
return defaultNodes[info.status];
}, [defaultNodes]);
var mergedStatusRender = statusRender !== null && statusRender !== void 0 ? statusRender : defaultStatusRender;
return /* @__PURE__ */React.createElement(React.Fragment, null, mergedStatusRender({
status: status,
onRefresh: onRefresh
}) || null);
}
export { QRcodeStatus as default };
//# sourceMappingURL=QRCodeStatus.js.map