UNPKG

@chief-editor/ui

Version:

UI Component for chief editor

1 lines 2.24 kB
var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(n){for(var e,t=1,o=arguments.length;t<o;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}).apply(this,arguments)},__rest=this&&this.__rest||function(n,e){var t={};for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&e.indexOf(o)<0&&(t[o]=n[o]);if(null!=n&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(n);r<o.length;r++)e.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(n,o[r])&&(t[o[r]]=n[o[r]])}return t};import React from"react";import ReactDOM from"react-dom";import{Alert}from"./Alert";import{Confirm}from"./Confirm";function wrapFunction(n){return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];try{var o=n.apply(void 0,e);return null!=o&&"object"==typeof o&&"function"==typeof o.then?o:Promise.resolve(o)}catch(n){return Promise.reject(n)}}}function wrapManualModal(n){var e,t=n.onOk,o=void 0===t?function(){return null}:t,r=n.onCancel,a=void 0===r?function(){return null}:r,l=wrapFunction(o),c=wrapFunction(a),i=document.createElement("div");document.body.appendChild(i);var u=function(){i.parentNode&&(ReactDOM.unmountComponentAtNode(i),document.body.removeChild(i))},f=function(){var n;null===(n=e.ref.current)||void 0===n||n.hide(),setTimeout(u,300)};return e={onOk:function(){l().then(f,(function(){return null}))},onCancel:function(){c().then(f,(function(){return null}))},destroy:u,container:i,ref:{current:null}}}export function confirm(n){var e=n.afterClose,t=n.onOk,o=n.onCancel,r=__rest(n,["afterClose","onOk","onCancel"]),a=wrapManualModal({onOk:t,onCancel:o}),l=a.ref,c=a.destroy,i=a.container,u=a.onOk,f=a.onCancel;ReactDOM.render(React.createElement(Confirm,__assign({},r,{defaultShow:!0,ref:l,afterClose:function(){c(),null==e||e()},onOk:u,onCancel:f})),i)}export function alert(n){var e=n.afterClose,t=n.onOk,o=n.onClose,r=__rest(n,["afterClose","onOk","onClose"]),a=wrapManualModal({onOk:t,onCancel:o}),l=a.ref,c=a.destroy,i=a.container,u=a.onOk,f=a.onCancel;ReactDOM.render(React.createElement(Alert,__assign({},r,{defaultShow:!0,ref:l,afterClose:function(){c(),null==e||e()},onOk:u,onClose:f})),i)}