UNPKG

@vnmfify/core

Version:

```shell npm i @vnmfify/core -S ```

42 lines (37 loc) 1.22 kB
import { cloneIconElement, isIconElement } from "@vnmfify/icons/utils"; import { View } from "@vnxjs/components"; import classNames from "classnames"; import * as React from "react"; import { cloneElement, isValidElement } from "react"; import Loading from "../loading"; import { prefixClassname } from "../styles"; function renderIcon(icon) { if (isIconElement(icon)) { return cloneIconElement(icon, { className: prefixClassname("uploader__mask-icon") }); } if ( /*#__PURE__*/isValidElement(icon) && icon.type === Loading) { var { className } = icon.props; return /*#__PURE__*/cloneElement(icon, { className: classNames(prefixClassname("uploader__loading"), className) }); } } function UploaderMask(props) { var { className, icon, message } = props; return /*#__PURE__*/React.createElement(View, { className: classNames(prefixClassname("uploader__mask"), className) }, renderIcon(icon), message && /*#__PURE__*/React.createElement(View, { className: prefixClassname("uploader__mask-message"), children: message })); } export default UploaderMask; //# sourceMappingURL=uploader-mask.js.map