UNPKG

zmp-react

Version:

Build full featured iOS & Android apps using ZMP & React

43 lines (42 loc) 1.37 kB
import _extends from "@babel/runtime/helpers/extends"; import React, { forwardRef, useRef, useImperativeHandle } from 'react'; import { classNames, getExtraAttrs, extend } from '../shared/utils'; import Preloader from './preloader'; /* dts-props id?: string | number; className?: string; style?: React.CSSProperties; visible?: boolean text?: string ref?: React.MutableRefObject<{el: HTMLElement | null;}>; CHILDREN_PROP */ var ToastPreloader = /*#__PURE__*/forwardRef(function (props, ref) { var className = props.className, id = props.id, style = props.style, text = props.text, visible = props.visible; var extraAttrs = getExtraAttrs(props); var elRef = useRef(null); useImperativeHandle(ref, function () { return { el: elRef.current }; }); var preloaderStyle = {}; if (style) extend(preloaderStyle, style || {}); var classes = classNames(className, { 'preloader-toast-visible': visible }, 'preloader-toast'); return /*#__PURE__*/React.createElement("div", _extends({ ref: elRef, id: id, style: style, className: classes }, extraAttrs), /*#__PURE__*/React.createElement(Preloader, null), text && /*#__PURE__*/React.createElement("span", { className: "preloader-toast-text" }, text)); }); ToastPreloader.displayName = 'zmp-toast-preloader'; export default ToastPreloader;