| Current Path : /var/www/homesaver/www/bitrix/js/ui/dialogs/messagebox/dist/ |
| Current File : /var/www/homesaver/www/bitrix/js/ui/dialogs/messagebox/dist/dialogs.bundle.min.js |
this.BX=this.BX||{};this.BX.UI=this.BX.UI||{};(function(t,e,i){"use strict";class s{}s.NONE="none";s.OK="ok";s.CANCEL="cancel";s.YES="yes";s.NO="no";s.OK_CANCEL="ok_cancel";s.YES_NO="yes_no";s.YES_CANCEL="yes_cancel";s.YES_NO_CANCEL="yes_no_cancel";class n{constructor(t={}){this.popupWindow=null;this.title=null;this.message=null;this.modal=true;this.popupOptions={};this.minWidth=300;this.minHeight=130;this.maxWidth=400;this.buttons=[];this.okCallback=null;this.cancelCallback=null;this.yesCallback=null;this.noCallback=null;t=e.Type.isPlainObject(t)?t:{};this.popupOptions=e.Type.isPlainObject(t.popupOptions)?t.popupOptions:{};this.cache=new e.Cache.MemoryCache;this.handleButtonClick=this.handleButtonClick.bind(this);this.modal=t.modal!==false;this.cacheable=t.cacheable===true;this.setTitle(t.title);this.setMessage(t.message);this.setOkCallback(t.onOk);this.setCancelCallback(t.onCancel);this.setYesCallback(t.onYes);this.setNoCallback(t.onNo);if(e.Type.isBoolean(t.mediumButtonSize)){this.mediumButtonSize=t.mediumButtonSize}else if(this.getTitle()!==null){this.mediumButtonSize=true}if(this.getTitle()!==null){this.popupOptions.closeIcon=true}if(this.isMediumButtonSize()){this.minWidth=400;this.minHeight=200;this.maxWidth=420}this.minWidth=e.Type.isNumber(t.minWidth)?t.minWidth:this.minWidth;this.minHeight=e.Type.isNumber(t.minHeight)?t.minHeight:this.minHeight;this.maxWidth=e.Type.isNumber(t.maxWidth)?t.maxWidth:this.maxWidth;this.setOkCaption(t.okCaption);this.setCancelCaption(t.cancelCaption);this.setYesCaption(t.yesCaption);this.setNoCaption(t.noCaption);this.setButtons(t.buttons)}static alert(t,...i){let s=null;let n=null;let o=null;if(i.length>0){if(e.Type.isString(i[0])){[s,n,o]=i}else{[n,o]=i}}const l=this.create({message:t,title:s,okCaption:o,onOk:n,buttons:BX.UI.Dialogs.MessageBoxButtons.OK});l.show();return l}static confirm(t,...i){let s=null;let n=null;let o=null;let l=null;let a=null;if(i.length>0){if(e.Type.isString(i[0])){[s,n,o,l,a]=i}else{[n,o,l,a]=i}}const h=this.create({message:t,title:s,okCaption:o,cancelCaption:a,onOk:n,onCancel:l,buttons:BX.UI.Dialogs.MessageBoxButtons.OK_CANCEL});h.show();return h}static show(t={}){const e=this.create(t);e.show()}static create(t={}){return new this(t)}show(){if(this.getPopupWindow().isDestroyed()){this.popupWindow=null}this.getPopupWindow().show()}close(){this.getPopupWindow().close()}getPopupWindow(){if(this.popupWindow===null){this.popupWindow=new i.Popup({bindElement:null,className:this.isMediumButtonSize()?"ui-message-box ui-message-box-medium-buttons":"ui-message-box",content:this.getMessage(),titleBar:this.getTitle(),minWidth:this.minWidth,minHeight:this.minHeight,maxWidth:this.maxWidth,overlay:this.modal?{opacity:20}:null,cacheable:this.cacheable,closeIcon:false,contentBackground:"transparent",padding:0,buttons:this.getButtons(),...this.popupOptions})}return this.popupWindow}setMessage(t){if(e.Type.isString(t)||e.Type.isDomNode(t)){this.message=t;if(this.popupWindow!==null){this.popupWindow.setContent(t)}}}getMessage(){return this.message}setTitle(t){if(e.Type.isString(t)){this.title=t;if(this.popupWindow!==null){this.popupWindow.setTitleBar(t)}}}getTitle(){return this.title}setButtons(t){if(e.Type.isArray(t)){this.buttons=t}else if(e.Type.isString(t)){this.buttons=this.getButtonsLayout(t)}if(this.popupWindow!==null){this.popupWindow.setButtons(this.buttons)}}getButtons(){return this.buttons}setOkCaption(t){if(e.Type.isString(t)){this.getOkButton().setText(t)}}setCancelCaption(t){if(e.Type.isString(t)){this.getCancelButton().setText(t)}}setYesCaption(t){if(e.Type.isString(t)){this.getYesButton().setText(t)}}setNoCaption(t){if(e.Type.isString(t)){this.getNoButton().setText(t)}}setOkCallback(t){if(e.Type.isFunction(t)){this.okCallback=t}}setCancelCallback(t){if(e.Type.isFunction(t)){this.cancelCallback=t}}setYesCallback(t){if(e.Type.isFunction(t)){this.yesCallback=t}}setNoCallback(t){if(e.Type.isFunction(t)){this.noCallback=t}}isMediumButtonSize(){return this.mediumButtonSize}getOkButton(){return this.cache.remember("okBtn",(()=>new BX.UI.Button({id:s.OK,size:this.isMediumButtonSize()?BX.UI.Button.Size.MEDIUM:BX.UI.Button.Size.SMALL,color:BX.UI.Button.Color.PRIMARY,text:e.Loc.getMessage("UI_MESSAGE_BOX_OK_CAPTION"),events:{click:this.handleButtonClick}})))}getCancelButton(){return this.cache.remember("cancelBtn",(()=>new BX.UI.CancelButton({id:s.CANCEL,size:this.isMediumButtonSize()?BX.UI.Button.Size.MEDIUM:BX.UI.Button.Size.SMALL,text:e.Loc.getMessage("UI_MESSAGE_BOX_CANCEL_CAPTION"),events:{click:this.handleButtonClick}})))}getYesButton(){return this.cache.remember("yesBtn",(()=>new BX.UI.Button({id:s.YES,size:this.isMediumButtonSize()?BX.UI.Button.Size.MEDIUM:BX.UI.Button.Size.SMALL,color:BX.UI.Button.Color.PRIMARY,text:e.Loc.getMessage("UI_MESSAGE_BOX_YES_CAPTION"),events:{click:this.handleButtonClick}})))}getNoButton(){return this.cache.remember("noBtn",(()=>new BX.UI.Button({id:s.NO,size:this.isMediumButtonSize()?BX.UI.Button.Size.MEDIUM:BX.UI.Button.Size.SMALL,color:BX.UI.Button.Color.LIGHT_BORDER,text:e.Loc.getMessage("UI_MESSAGE_BOX_NO_CAPTION"),events:{click:this.handleButtonClick}})))}getButtonsLayout(t){switch(t){case s.OK:return[this.getOkButton()];case s.CANCEL:return[this.getCancelButton()];case s.YES:return[this.getYesButton()];case s.NO:return[this.getNoButton()];case s.OK_CANCEL:return[this.getOkButton(),this.getCancelButton()];case s.YES_NO:return[this.getYesButton(),this.getNoButton()];case s.YES_CANCEL:return[this.getYesButton(),this.getCancelButton()];case s.YES_NO_CANCEL:return[this.getYesButton(),this.getNoButton(),this.getCancelButton()];default:return[]}}handleButtonClick(t,e){if(t.isDisabled()){return}t.setDisabled();const i=this[`${t.getId()}Callback`];if(!i){t.setDisabled(false);this.close();return}const s=i(this,t,e);if(s===true){t.setDisabled(false);this.close()}else if(s===false){t.setDisabled(false)}else if(s&&(Object.prototype.toString.call(s)==="[object Promise]"||s.toString()==="[object BX.Promise]")){t.setWaiting();s.then((e=>{t.setWaiting(false);this.close()}),(e=>{t.setWaiting(false)}))}}}t.MessageBox=n;t.MessageBoxButtons=s})(this.BX.UI.Dialogs=this.BX.UI.Dialogs||{},BX,BX.Main);
//# sourceMappingURL=dialogs.bundle.map.js