UNPKG

@ant-design/react-native

Version:

基于蚂蚁金服移动设计规范的 React Native 组件库

1 lines 2.43 kB
"use client";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.remove=remove;exports.removeAll=removeAll;exports.getConfig=getConfig;exports.config=config;exports.notice=notice;exports.methods=exports.defaultConfig=exports.SHORT=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireDefault(require("react"));var _portal=_interopRequireDefault(require("../portal"));var _ToastContainer=_interopRequireDefault(require("./ToastContainer"));var SHORT=3;exports.SHORT=SHORT;var defaultProps={duration:SHORT,onClose:function onClose(){},mask:true,stackable:true};var toastKeyMap={};function remove(key){_portal.default.remove(key);delete toastKeyMap[key];}function removeAll(){Object.keys(toastKeyMap).forEach(function(_key){return _portal.default.remove(Number.parseInt(_key,10));});}var defaultConfig=(0,_extends2.default)({},defaultProps);exports.defaultConfig=defaultConfig;function getConfig(){return(0,_extends2.default)({},defaultProps);}function config(props){defaultProps=(0,_extends2.default)((0,_extends2.default)({},defaultProps),props);}function notice(content,type){var duration=arguments.length>2&&arguments[2]!==undefined?arguments[2]:defaultProps.duration;var onClose=arguments.length>3&&arguments[3]!==undefined?arguments[3]:defaultProps.onClose;var mask=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultProps.mask;var props=(0,_extends2.default)((0,_extends2.default)({},defaultProps),{content:content,type:type,duration:duration,onClose:onClose,mask:mask});if(typeof content!=='string'){props=(0,_extends2.default)((0,_extends2.default)({},props),content);}if(!props.stackable){removeAll();}var key=_portal.default.add(_react.default.createElement(_ToastContainer.default,(0,_extends2.default)({},props,{onAnimationEnd:function onAnimationEnd(){remove(key);}})));toastKeyMap[key]=1;return key;}function base(type){return function(props,duration,onClose,mask){return notice(props,type,duration,onClose,mask);};}var show=function show(props,duration,mask){return notice(props,'info',duration!==null&&duration!==void 0?duration:1.5,function(){},mask!==null&&mask!==void 0?mask:false);};var methods={show:show,info:base('info'),success:base('success'),fail:base('fail'),offline:base('offline'),loading:base('loading')};exports.methods=methods;