UNPKG

10.2 kBSource Map (JSON)View Raw
1{"version":3,"sources":["notification/index.js"],"names":["notificationInstance","defaultDuration","defaultTop","defaultBottom","defaultPlacement","defaultGetContainer","setNotificationConfig","options","duration","placement","bottom","top","getContainer","undefined","getPlacementStyle","style","left","right","getNotificationInstance","prefixCls","callback","cacheKey","Notification","newInstance","className","closeIcon","React","createElement","Icon","type","notification","typeToIcon","success","info","error","warning","notice","args","outerPrefixCls","iconNode","icon","iconType","autoMarginTag","description","content","message","btn","closable","onClose","key","api","open","close","Object","keys","forEach","removeNotice","config","destroy","warn"],"mappings":"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","sourcesContent":["import React from 'react';\nimport Icon from '../icon';\nimport Notification from '../rc-components/notification';\nimport { getPrefixCls } from '../configure';\nconst notificationInstance = {};\nlet defaultDuration = 4.5;\nlet defaultTop = 24;\nlet defaultBottom = 24;\nlet defaultPlacement = 'topRight';\nlet defaultGetContainer;\nfunction setNotificationConfig(options) {\n const { duration, placement, bottom, top, getContainer } = options;\n if (duration !== undefined) {\n defaultDuration = duration;\n }\n if (placement !== undefined) {\n defaultPlacement = placement;\n }\n if (bottom !== undefined) {\n defaultBottom = bottom;\n }\n if (top !== undefined) {\n defaultTop = top;\n }\n if (getContainer !== undefined) {\n defaultGetContainer = getContainer;\n }\n}\nfunction getPlacementStyle(placement) {\n let style;\n switch (placement) {\n case 'topLeft':\n style = {\n left: 0,\n top: defaultTop,\n bottom: 'auto',\n };\n break;\n case 'topRight':\n style = {\n right: 0,\n top: defaultTop,\n bottom: 'auto',\n };\n break;\n case 'bottomLeft':\n style = {\n left: 0,\n top: 'auto',\n bottom: defaultBottom,\n };\n break;\n default:\n style = {\n right: 0,\n top: 'auto',\n bottom: defaultBottom,\n };\n break;\n }\n return style;\n}\nfunction getNotificationInstance(prefixCls, placement, callback) {\n const cacheKey = `${prefixCls}-${placement}`;\n if (notificationInstance[cacheKey]) {\n callback(notificationInstance[cacheKey]);\n return;\n }\n Notification.newInstance({\n prefixCls,\n className: `${prefixCls}-${placement}`,\n style: getPlacementStyle(placement),\n getContainer: defaultGetContainer,\n closeIcon: React.createElement(Icon, { className: `${prefixCls}-close-icon`, type: \"close\" }),\n }, (notification) => {\n notificationInstance[cacheKey] = notification;\n callback(notification);\n });\n}\nconst typeToIcon = {\n success: 'check',\n info: 'info',\n error: 'error',\n warning: 'warning',\n};\nfunction notice(args) {\n const outerPrefixCls = getPrefixCls('notification', args.prefixCls);\n const prefixCls = `${outerPrefixCls}-notice`;\n const duration = args.duration === undefined ? defaultDuration : args.duration;\n let iconNode = null;\n if (args.icon) {\n iconNode = React.createElement(\"span\", { className: `${prefixCls}-icon` }, args.icon);\n }\n else if (args.type) {\n const iconType = typeToIcon[args.type];\n iconNode = (React.createElement(Icon, { className: `${prefixCls}-icon ${prefixCls}-icon-${args.type}`, type: iconType }));\n }\n const autoMarginTag = !args.description && iconNode ? (React.createElement(\"span\", { className: `${prefixCls}-message-single-line-auto-margin` })) : null;\n getNotificationInstance(outerPrefixCls, args.placement || defaultPlacement, (notification) => {\n notification.notice({\n content: (React.createElement(\"div\", { className: iconNode ? `${prefixCls}-with-icon` : '' },\n iconNode,\n React.createElement(\"div\", { className: `${prefixCls}-message` },\n autoMarginTag,\n args.message),\n React.createElement(\"div\", { className: `${prefixCls}-description` }, args.description),\n args.btn ? React.createElement(\"span\", { className: `${prefixCls}-btn` }, args.btn) : null)),\n duration,\n closable: true,\n onClose: args.onClose,\n key: args.key,\n style: args.style || {},\n className: args.className,\n });\n });\n}\nconst api = {\n open: notice,\n close(key) {\n Object.keys(notificationInstance).forEach(cacheKey => notificationInstance[cacheKey].removeNotice(key));\n },\n config: setNotificationConfig,\n destroy() {\n Object.keys(notificationInstance).forEach(cacheKey => {\n notificationInstance[cacheKey].destroy();\n delete notificationInstance[cacheKey];\n });\n },\n};\n['success', 'info', 'warning', 'error'].forEach(type => {\n api[type] = (args) => api.open({\n ...args,\n type,\n });\n});\napi.warn = api.warning;\nexport default api;\n"],"file":"index.js"}
\No newline at end of file