Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/buttons/dist/ |
Upload File : |
this.BX=this.BX||{};(function(exports,ui_designTokens_air,ui_iconSet_api_core,ui_buttons,main_core_events,main_popup,ui_switcher,main_core,ui_cnt){"use strict";function _classPrivateFieldInitSpec(e,t,n){_checkPrivateRedeclaration(e,t);t.set(e,n)}function _checkPrivateRedeclaration(e,t){if(t.has(e)){throw new TypeError("Cannot initialize the same private elements twice on an object")}}var _counter=new WeakMap;let ButtonCounter=function(){function e(t){var n,i,o;babelHelpers.classCallCheck(this,e);_classPrivateFieldInitSpec(this,_counter,{writable:true,value:void 0});this.validateOptions(t);babelHelpers.classPrivateFieldSet(this,_counter,new ui_cnt.Counter({color:(n=t.color)!==null&&n!==void 0?n:ui_cnt.CounterColor.DANGER,style:(i=t.style)!==null&&i!==void 0?i:ui_cnt.CounterStyle.FILLED_ALERT,size:(o=t.size)!==null&&o!==void 0?o:ui_cnt.CounterSize.MEDIUM,value:t.value,maxValue:t.maxValue,usePercentSymbol:t.useSymbolPercent,useAirDesign:true}))}babelHelpers.createClass(e,[{key:"render",value:function e(){return babelHelpers.classPrivateFieldGet(this,_counter).render()}},{key:"getValue",value:function e(){return babelHelpers.classPrivateFieldGet(this,_counter).getValue()}},{key:"setValue",value:function e(t){babelHelpers.classPrivateFieldGet(this,_counter).update(t)}},{key:"setColor",value:function e(t){babelHelpers.classPrivateFieldGet(this,_counter).setColor(t)}},{key:"validateOptions",value:function e(t){}}]);return e}();let ButtonSize=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonSize,"EXTRA_LARGE","ui-btn-xl");babelHelpers.defineProperty(ButtonSize,"LARGE","ui-btn-lg");babelHelpers.defineProperty(ButtonSize,"MEDIUM","ui-btn-md");babelHelpers.defineProperty(ButtonSize,"SMALL","ui-btn-sm");babelHelpers.defineProperty(ButtonSize,"EXTRA_SMALL","ui-btn-xs");babelHelpers.defineProperty(ButtonSize,"EXTRA_EXTRA_SMALL","ui-btn-xss");const getCounterSize=e=>{var t;return(t={[ButtonSize.EXTRA_EXTRA_SMALL]:ui_buttons.ButtonCounterSize.SMALL,[ButtonSize.EXTRA_SMALL]:ui_buttons.ButtonCounterSize.SMALL,[ButtonSize.SMALL]:ui_buttons.ButtonCounterSize.SMALL,[ButtonSize.MEDIUM]:ui_buttons.ButtonCounterSize.MEDIUM,[ButtonSize.LARGE]:ui_buttons.ButtonCounterSize.LARGE,[ButtonSize.EXTRA_LARGE]:ui_buttons.ButtonCounterSize.LARGE}[e])!==null&&t!==void 0?t:ui_buttons.ButtonCounterSize.MEDIUM};let ButtonTag=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonTag,"BUTTON",0);babelHelpers.defineProperty(ButtonTag,"LINK",1);babelHelpers.defineProperty(ButtonTag,"SUBMIT",2);babelHelpers.defineProperty(ButtonTag,"INPUT",3);babelHelpers.defineProperty(ButtonTag,"DIV",4);babelHelpers.defineProperty(ButtonTag,"SPAN",5);let _=e=>e,_t,_t2,_t3,_t4,_t5,_t6,_t7,_t8,_t9;function _classPrivateMethodInitSpec(e,t){_checkPrivateRedeclaration$1(e,t);t.add(e)}function _classPrivateFieldInitSpec$1(e,t,n){_checkPrivateRedeclaration$1(e,t);t.set(e,n)}function _checkPrivateRedeclaration$1(e,t){if(t.has(e)){throw new TypeError("Cannot initialize the same private elements twice on an object")}}function _classPrivateMethodGet(e,t,n){if(!t.has(e)){throw new TypeError("attempted to get private field on non-instance")}return n}var _useAirDesign=new WeakMap;var _leftCounter=new WeakMap;var _rightCounter=new WeakMap;var _leftCounterContainer=new WeakMap;var _rightCounterContainer=new WeakMap;var _removeLeftCounter=new WeakSet;var _removeRightCounter=new WeakSet;var _handleEvent=new WeakMap;let BaseButton$$1=function(){function e(t){babelHelpers.classCallCheck(this,e);_classPrivateMethodInitSpec(this,_removeRightCounter);_classPrivateMethodInitSpec(this,_removeLeftCounter);_classPrivateFieldInitSpec$1(this,_useAirDesign,{writable:true,value:false});_classPrivateFieldInitSpec$1(this,_leftCounter,{writable:true,value:void 0});_classPrivateFieldInitSpec$1(this,_rightCounter,{writable:true,value:void 0});_classPrivateFieldInitSpec$1(this,_leftCounterContainer,{writable:true,value:void 0});_classPrivateFieldInitSpec$1(this,_rightCounterContainer,{writable:true,value:void 0});_classPrivateFieldInitSpec$1(this,_handleEvent,{writable:true,value:e=>{var t;(t=this.events[e.type])===null||t===void 0?void 0:t.call(this,this,e)}});this.options=Object.assign(this.getDefaultOptions(),main_core.Type.isPlainObject(t)?t:{});this.button=main_core.Type.isDomNode(this.options.buttonNode)?this.options.buttonNode:null;this.textNode=main_core.Type.isDomNode(this.options.textNode)?this.options.textNode:null;this.counterNode=main_core.Type.isDomNode(this.options.counterNode)?this.options.counterNode:null;this.text="";this.counter=null;this.events={};this.link="";this.maxWidth=null;this.tag=this.isEnumValue(this.options.tag,ButtonTag)?this.options.tag:ButtonTag.BUTTON;if(main_core.Type.isStringFilled(this.options.link)){this.tag=ButtonTag.LINK}this.baseClass=main_core.Type.isStringFilled(this.options.baseClass)?this.options.baseClass:"";this.disabled=false;this.init();if(this.options.disabled===true){this.setDisabled()}this.setAirDesign(this.options.useAirDesign===true);this.setText(this.options.text);this.setCounter(this.options.counter);this.setProps(this.options.props);this.setDataSet(this.options.dataset);this.addClass(this.options.className);this.setLink(this.options.link);this.setMaxWidth(this.options.maxWidth);if(this.hasAirDesign()){if(this.options.leftCounter){this.setLeftCounter({...this.options.leftCounter,size:getCounterSize(this.options.size)})}if(this.options.rightCounter){this.setRightCounter({...this.options.rightCounter,size:getCounterSize(this.options.size)})}}this.bindEvent("click",this.options.onclick);this.bindEvents(this.options.events)}babelHelpers.createClass(e,[{key:"init",value:function e(){}},{key:"setAirDesign",value:function e(t){babelHelpers.classPrivateFieldSet(this,_useAirDesign,t===true);main_core.Dom.toggleClass(this.getContainer(),"--air",babelHelpers.classPrivateFieldGet(this,_useAirDesign))}},{key:"hasAirDesign",value:function e(){return babelHelpers.classPrivateFieldGet(this,_useAirDesign)}},{key:"getDefaultOptions",value:function e(){return{}}},{key:"render",value:function e(){return this.getContainer()}},{key:"renderTo",value:function e(t){main_core.Dom.append(this.getContainer(),t);return this.getContainer()}},{key:"getContainer",value:function e(){var t,n,i,o;(t=this.button)!==null&&t!==void 0?t:this.button=(n=(i=(o={[ButtonTag.LINK]:()=>main_core.Tag.render(_t||(_t=_`<a class="${0}" href=""></a>`),this.getBaseClass()),[ButtonTag.INPUT]:()=>main_core.Tag.render(_t2||(_t2=_`<input class="${0}" type="button">`),this.getBaseClass()),[ButtonTag.SUBMIT]:()=>main_core.Tag.render(_t3||(_t3=_`<input class="${0}" type="submit">`),this.getBaseClass()),[ButtonTag.DIV]:()=>main_core.Tag.render(_t4||(_t4=_`<div class="${0}"></div>`),this.getBaseClass())})[this.getTag()])===null||i===void 0?void 0:i.call(o))!==null&&n!==void 0?n:main_core.Tag.render(_t5||(_t5=_`<button class="${0}"></button>`),this.getBaseClass());return this.button}},{key:"getBaseClass",value:function e(){return this.baseClass}},{key:"setText",value:function e(t){if(!main_core.Type.isString(t)&&!this.hasAirDesign()){return this}this.text=t||"";if(this.isInputType()){this.getContainer().value=this.text}else if(this.text.length>0||this.hasAirDesign()){var n;if(this.textNode===null){this.textNode=main_core.Tag.render(_t6||(_t6=_`<span class="ui-btn-text"><span class="ui-btn-text-inner"></span></span>`))}if(!this.textNode.parentNode){main_core.Dom.prepend(this.textNode,this.getContainer())}const e=(n=this.textNode.querySelector(".ui-btn-text-inner"))!==null&&n!==void 0?n:this.textNode;e.textContent=t}else if(this.textNode!==null){main_core.Dom.remove(this.textNode)}return this}},{key:"getTextContainer",value:function e(){return this.textNode}},{key:"getText",value:function e(){return this.text}},{key:"setLeftCounter",value:function e(t){if(this.hasAirDesign()===false){console.warn("Left counter works only with air buttons. Use setLeftCounter or useAirDesign option in constructor.");return this}if(!t){_classPrivateMethodGet(this,_removeLeftCounter,_removeLeftCounter2).call(this);return this}if(babelHelpers.classPrivateFieldGet(this,_leftCounter)){return this}_classPrivateMethodGet(this,_removeLeftCounter,_removeLeftCounter2).call(this);babelHelpers.classPrivateFieldSet(this,_leftCounter,new ButtonCounter({...t,size:main_core.Type.isString(t.size)?t.size:ui_cnt.CounterSize.MEDIUM}));if(this.textNode){babelHelpers.classPrivateFieldSet(this,_leftCounterContainer,main_core.Tag.render(_t7||(_t7=_` <div class="ui-btn-left-counter"> ${0} </div> `),babelHelpers.classPrivateFieldGet(this,_leftCounter).render()));main_core.Dom.prepend(babelHelpers.classPrivateFieldGet(this,_leftCounterContainer),this.textNode);main_core.Dom.addClass(this.getContainer(),"--with-left-counter")}return this}},{key:"setRightCounter",value:function e(t){if(this.hasAirDesign()===false){console.warn("Right counter works only with air buttons. Use setRightCounter or useAirDesign option in constructor.");return this}if(!t){_classPrivateMethodGet(this,_removeRightCounter,_removeRightCounter2).call(this);return this}_classPrivateMethodGet(this,_removeRightCounter,_removeRightCounter2).call(this);babelHelpers.classPrivateFieldSet(this,_rightCounter,new ButtonCounter({...t,size:main_core.Type.isString(t.size)?t.size:ui_cnt.CounterSize.MEDIUM}));if(this.textNode){babelHelpers.classPrivateFieldSet(this,_rightCounterContainer,main_core.Tag.render(_t8||(_t8=_` <div class="ui-btn-right-counter">${0}</div> `),babelHelpers.classPrivateFieldGet(this,_rightCounter).render()));main_core.Dom.append(babelHelpers.classPrivateFieldGet(this,_rightCounterContainer),this.textNode);main_core.Dom.addClass(this.getContainer(),"--with-right-counter")}return this}},{key:"getLeftCounter",value:function e(){return babelHelpers.classPrivateFieldGet(this,_leftCounter)}},{key:"getRightCounter",value:function e(){return babelHelpers.classPrivateFieldGet(this,_rightCounter)}},{key:"setCounter",value:function e(t){if([0,"0","",null,false].includes(t)){main_core.Dom.remove(this.counterNode);this.counterNode=null;this.counter=null}else if(main_core.Type.isNumber(t)&&t>0||main_core.Type.isStringFilled(t)){if(this.hasAirDesign()){console.warn("Use setCounter or counter option only for not air buttons. For fir buttons use setLeftCounter or setRightCounter methods or leftCounter or rightCounter options.");return this}if(this.isInputType()){throw new Error("BX.UI.Button: an input button cannot have a counter.")}if(this.counterNode===null){this.counterNode=main_core.Tag.render(_t9||(_t9=_`<span class="ui-btn-counter"></span>`));main_core.Dom.append(this.counterNode,this.getContainer())}this.counter=t;this.counterNode.textContent=t}return this}},{key:"getCounter",value:function e(){return this.counter}},{key:"setLink",value:function e(t){if(main_core.Type.isStringFilled(t)){if(this.getTag()!==ButtonTag.LINK){throw new Error("BX.UI.Button: only an anchor button tag supports a link.")}this.getContainer().href=t}return this}},{key:"getLink",value:function e(){return this.getContainer().href}},{key:"setMaxWidth",value:function e(t){this.maxWidth=t>0?t:null;main_core.Dom.style(this.getContainer(),"max-width",t>0?`${t}px`:null);return this}},{key:"getMaxWidth",value:function e(){return this.maxWidth}},{key:"getTag",value:function e(){return this.tag}},{key:"setProps",value:function e(t){if(main_core.Type.isPlainObject(t)){main_core.Dom.attr(this.getContainer(),t)}return this}},{key:"getProps",value:function e(){const t=this.isInputType()?["class","type"]:["class"];return[...this.getContainer().attributes].filter((({name:e})=>!t.includes(e)&&!e.startsWith("data-"))).reduce(((e,{name:t,value:n})=>({...e,[t]:n})),{})}},{key:"setDataSet",value:function e(t){if(!main_core.Type.isPlainObject(t)){return this}Object.entries(t).forEach((([e,t])=>{this.getDataSet()[e]=t;if(t===null){delete this.getDataSet()[e]}}));return this}},{key:"getDataSet",value:function e(){return this.getContainer().dataset}},{key:"addClass",value:function e(t){main_core.Dom.addClass(this.getContainer(),t);return this}},{key:"removeClass",value:function e(t){main_core.Dom.removeClass(this.getContainer(),t);return this}},{key:"setDisabled",value:function e(t=true){this.disabled=t;this.setProps({disabled:t?true:null});return this}},{key:"isDisabled",value:function e(){return this.disabled}},{key:"isInputType",value:function e(){return[ButtonTag.SUBMIT,ButtonTag.INPUT].includes(this.getTag())}},{key:"bindEvents",value:function e(t){if(main_core.Type.isPlainObject(t)){Object.entries(t).forEach((([e,t])=>this.bindEvent(e,t)))}return this}},{key:"unbindEvents",value:function e(t){if(main_core.Type.isArray(t)){t.forEach((e=>this.unbindEvent(e)))}return this}},{key:"bindEvent",value:function e(t,n){if(main_core.Type.isStringFilled(t)&&main_core.Type.isFunction(n)){this.unbindEvent(t);this.events[t]=n;main_core.Event.bind(this.getContainer(),t,babelHelpers.classPrivateFieldGet(this,_handleEvent))}return this}},{key:"unbindEvent",value:function e(t){if(this.events[t]){delete this.events[t];main_core.Event.unbind(this.getContainer(),t,babelHelpers.classPrivateFieldGet(this,_handleEvent))}return this}},{key:"isEnumValue",value:function e(t,n){return Object.values(n).includes(t)}}]);return e}();function _removeLeftCounter2(){main_core.Dom.remove(babelHelpers.classPrivateFieldGet(this,_leftCounterContainer));main_core.Dom.removeClass(this.getContainer(),"--with-left-counter");babelHelpers.classPrivateFieldSet(this,_leftCounterContainer,null);babelHelpers.classPrivateFieldSet(this,_leftCounter,null)}function _removeRightCounter2(){main_core.Dom.remove(babelHelpers.classPrivateFieldGet(this,_rightCounterContainer));main_core.Dom.removeClass(this.getContainer(),"--with-right-counter");babelHelpers.classPrivateFieldSet(this,_rightCounterContainer,null);babelHelpers.classPrivateFieldSet(this,_rightCounter,null)}let ButtonColor=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonColor,"DANGER","ui-btn-danger");babelHelpers.defineProperty(ButtonColor,"DANGER_DARK","ui-btn-danger-dark");babelHelpers.defineProperty(ButtonColor,"DANGER_LIGHT","ui-btn-danger-light");babelHelpers.defineProperty(ButtonColor,"SUCCESS","ui-btn-success");babelHelpers.defineProperty(ButtonColor,"SUCCESS_DARK","ui-btn-success-dark");babelHelpers.defineProperty(ButtonColor,"SUCCESS_LIGHT","ui-btn-success-light");babelHelpers.defineProperty(ButtonColor,"PRIMARY_DARK","ui-btn-primary-dark");babelHelpers.defineProperty(ButtonColor,"PRIMARY","ui-btn-primary");babelHelpers.defineProperty(ButtonColor,"SECONDARY","ui-btn-secondary");babelHelpers.defineProperty(ButtonColor,"SECONDARY_LIGHT","ui-btn-secondary-light");babelHelpers.defineProperty(ButtonColor,"WARNING_LIGHT","ui-btn-warning-light");babelHelpers.defineProperty(ButtonColor,"LINK","ui-btn-link");babelHelpers.defineProperty(ButtonColor,"LIGHT","ui-btn-light");babelHelpers.defineProperty(ButtonColor,"LIGHT_BORDER","ui-btn-light-border");babelHelpers.defineProperty(ButtonColor,"AI","ui-btn-color-ai");babelHelpers.defineProperty(ButtonColor,"BASE_LIGHT","ui-btn-base-light");babelHelpers.defineProperty(ButtonColor,"COLLAB","ui-btn-collab");babelHelpers.defineProperty(ButtonColor,"PRIMARY_BORDER","ui-btn-primary-border");babelHelpers.defineProperty(ButtonColor,"CURTAIN_PRIMARY","ui-btn-primary-curtain");babelHelpers.defineProperty(ButtonColor,"CURTAIN_WARNING","ui-btn-primary-warning");let ButtonIcon=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonIcon,"UNFOLLOW","ui-btn-icon-unfollow");babelHelpers.defineProperty(ButtonIcon,"FOLLOW","ui-btn-icon-follow");babelHelpers.defineProperty(ButtonIcon,"ADD","ui-btn-icon-add");babelHelpers.defineProperty(ButtonIcon,"STOP","ui-btn-icon-stop");babelHelpers.defineProperty(ButtonIcon,"START","ui-btn-icon-start");babelHelpers.defineProperty(ButtonIcon,"PAUSE","ui-btn-icon-pause");babelHelpers.defineProperty(ButtonIcon,"ADD_FOLDER","ui-btn-icon-add-folder");babelHelpers.defineProperty(ButtonIcon,"SETTING","ui-btn-icon-setting");babelHelpers.defineProperty(ButtonIcon,"TASK","ui-btn-icon-task");babelHelpers.defineProperty(ButtonIcon,"INFO","ui-btn-icon-info");babelHelpers.defineProperty(ButtonIcon,"SEARCH","ui-btn-icon-search");babelHelpers.defineProperty(ButtonIcon,"PRINT","ui-btn-icon-print");babelHelpers.defineProperty(ButtonIcon,"LIST","ui-btn-icon-list");babelHelpers.defineProperty(ButtonIcon,"BUSINESS","ui-btn-icon-business");babelHelpers.defineProperty(ButtonIcon,"BUSINESS_CONFIRM","ui-btn-icon-business-confirm");babelHelpers.defineProperty(ButtonIcon,"BUSINESS_WARNING","ui-btn-icon-business-warning");babelHelpers.defineProperty(ButtonIcon,"CAMERA","ui-btn-icon-camera");babelHelpers.defineProperty(ButtonIcon,"PHONE_UP","ui-btn-icon-phone-up");babelHelpers.defineProperty(ButtonIcon,"PHONE_DOWN","ui-btn-icon-phone-down");babelHelpers.defineProperty(ButtonIcon,"PHONE_CALL","ui-btn-icon-phone-call");babelHelpers.defineProperty(ButtonIcon,"BACK","ui-btn-icon-back");babelHelpers.defineProperty(ButtonIcon,"REMOVE","ui-btn-icon-remove");babelHelpers.defineProperty(ButtonIcon,"DOWNLOAD","ui-btn-icon-download");babelHelpers.defineProperty(ButtonIcon,"DOTS","ui-btn-icon-dots");babelHelpers.defineProperty(ButtonIcon,"DONE","ui-btn-icon-done");babelHelpers.defineProperty(ButtonIcon,"CANCEL","ui-btn-icon-cancel");babelHelpers.defineProperty(ButtonIcon,"DISK","ui-btn-icon-disk");babelHelpers.defineProperty(ButtonIcon,"LOCK","ui-btn-icon-lock");babelHelpers.defineProperty(ButtonIcon,"MAIL","ui-btn-icon-mail");babelHelpers.defineProperty(ButtonIcon,"CHAT","ui-btn-icon-chat");babelHelpers.defineProperty(ButtonIcon,"PAGE","ui-btn-icon-page");babelHelpers.defineProperty(ButtonIcon,"CLOUD","ui-btn-icon-cloud");babelHelpers.defineProperty(ButtonIcon,"EDIT","ui-btn-icon-edit");babelHelpers.defineProperty(ButtonIcon,"SHARE","ui-btn-icon-share");babelHelpers.defineProperty(ButtonIcon,"ANGLE_UP","ui-btn-icon-angle-up");babelHelpers.defineProperty(ButtonIcon,"ANGLE_DOWN","ui-btn-icon-angle-down");babelHelpers.defineProperty(ButtonIcon,"EYE_OPENED","ui-btn-icon-eye-opened");babelHelpers.defineProperty(ButtonIcon,"EYE_CLOSED","ui-btn-icon-eye-closed");babelHelpers.defineProperty(ButtonIcon,"ALERT","ui-btn-icon-alert");babelHelpers.defineProperty(ButtonIcon,"FAIL","ui-btn-icon-fail");babelHelpers.defineProperty(ButtonIcon,"SUCCESS","ui-btn-icon-success");babelHelpers.defineProperty(ButtonIcon,"PLAN","ui-btn-icon-plan");babelHelpers.defineProperty(ButtonIcon,"TARIFF","ui-btn-icon-tariff");babelHelpers.defineProperty(ButtonIcon,"BATTERY","ui-btn-icon-battery");babelHelpers.defineProperty(ButtonIcon,"NO_BATTERY","ui-btn-icon-no-battery");babelHelpers.defineProperty(ButtonIcon,"HALF_BATTERY","ui-btn-icon-half-battery");babelHelpers.defineProperty(ButtonIcon,"LOW_BATTERY","ui-btn-icon-low-battery");babelHelpers.defineProperty(ButtonIcon,"CRIT_BATTERY","ui-btn-icon-crit-battery");babelHelpers.defineProperty(ButtonIcon,"DEMO","ui-btn-icon-demo");babelHelpers.defineProperty(ButtonIcon,"ROBOTS","ui-btn-icon-robots");babelHelpers.defineProperty(ButtonIcon,"NOTE","ui-btn-icon-note");babelHelpers.defineProperty(ButtonIcon,"SCRIPT","ui-btn-icon-script");babelHelpers.defineProperty(ButtonIcon,"PRINT2","ui-btn-icon-print-2");babelHelpers.defineProperty(ButtonIcon,"FUNNEL","ui-btn-icon-funnel");babelHelpers.defineProperty(ButtonIcon,"FORWARD","ui-btn-icon-forward");babelHelpers.defineProperty(ButtonIcon,"COPY","ui-btn-icon-copy");babelHelpers.defineProperty(ButtonIcon,"AI","ui-btn-icon-ai ui-icon-set__scope");babelHelpers.defineProperty(ButtonIcon,"BUSINESS_NEW","ui-btn-icon-business-new");babelHelpers.defineProperty(ButtonIcon,"OUTLINE_ADD","ui-btn-icon-outline-add");babelHelpers.defineProperty(ButtonIcon,"HELP","ui-btn-icon-help");babelHelpers.defineProperty(ButtonIcon,"CHECK","ui-btn-icon-check");babelHelpers.defineProperty(ButtonIcon,"CHEVRON_LEFT_S","ui-btn-icon-chevron-left-s");babelHelpers.defineProperty(ButtonIcon,"CHEVRON_RIGHT_S","ui-btn-icon-chevron-right-s");babelHelpers.defineProperty(ButtonIcon,"REFRESH","ui-btn-icon-refresh");babelHelpers.defineProperty(ButtonIcon,"CITY","ui-btn-icon-city");babelHelpers.defineProperty(ButtonIcon,"TWO_PERSONS","ui-btn-icon-two-persons");babelHelpers.defineProperty(ButtonIcon,"COPILOT","ui-btn-icon-copilot");babelHelpers.defineProperty(ButtonIcon,"RELOAD","ui-btn-icon-reload");let ButtonState=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonState,"HOVER","ui-btn-hover");babelHelpers.defineProperty(ButtonState,"ACTIVE","ui-btn-active");babelHelpers.defineProperty(ButtonState,"DISABLED","ui-btn-disabled");babelHelpers.defineProperty(ButtonState,"CLOCKING","ui-btn-clock");babelHelpers.defineProperty(ButtonState,"WAITING","ui-btn-wait");babelHelpers.defineProperty(ButtonState,"AI_WAITING","ui-btn-ai-waiting");let ButtonStyle=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(ButtonStyle,"NO_CAPS","ui-btn-no-caps");babelHelpers.defineProperty(ButtonStyle,"ROUND","ui-btn-round");babelHelpers.defineProperty(ButtonStyle,"DROPDOWN","ui-btn-dropdown");babelHelpers.defineProperty(ButtonStyle,"COLLAPSED","ui-btn-collapsed");babelHelpers.defineProperty(ButtonStyle,"DEPEND_ON_THEME","ui-btn-themes");let AirButtonStyle=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(AirButtonStyle,"FILLED","--style-filled");babelHelpers.defineProperty(AirButtonStyle,"TINTED","--style-tinted");babelHelpers.defineProperty(AirButtonStyle,"TINTED_ALERT","--style-tinted-alert");babelHelpers.defineProperty(AirButtonStyle,"OUTLINE_ACCENT_1","--style-outline-accent-1");babelHelpers.defineProperty(AirButtonStyle,"OUTLINE_ACCENT_2","--style-outline-accent-2");babelHelpers.defineProperty(AirButtonStyle,"OUTLINE","--style-outline");babelHelpers.defineProperty(AirButtonStyle,"OUTLINE_NO_ACCENT","--style-outline-no-accent");babelHelpers.defineProperty(AirButtonStyle,"PLAIN_ACCENT","--style-plain-accent");babelHelpers.defineProperty(AirButtonStyle,"PLAIN","--style-plain");babelHelpers.defineProperty(AirButtonStyle,"PLAIN_NO_ACCENT","--style-plain-no-accent");babelHelpers.defineProperty(AirButtonStyle,"SELECTION","--style-selection");babelHelpers.defineProperty(AirButtonStyle,"FILLED_COPILOT","--style-filled-copilot");babelHelpers.defineProperty(AirButtonStyle,"FILLED_SUCCESS","--style-filled-success");babelHelpers.defineProperty(AirButtonStyle,"FILLED_ALERT","--style-filled-alert");let _$1=e=>e,_t$1;function _classPrivateFieldInitSpec$2(e,t,n){_checkPrivateRedeclaration$2(e,t);t.set(e,n)}function _checkPrivateRedeclaration$2(e,t){if(t.has(e)){throw new TypeError("Cannot initialize the same private elements twice on an object")}}var _style=new WeakMap;var _isWide=new WeakMap;var _layout=new WeakMap;let Button=function(e){babelHelpers.inherits(t,e);function t(e){var n,i;var o;babelHelpers.classCallCheck(this,t);o=babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).call(this,{dependOnTheme:(n=e.className)===null||n===void 0?void 0:n.includes(ButtonStyle.DEPEND_ON_THEME),...main_core.Type.isPlainObject(e)?e:{},baseClass:main_core.Type.isStringFilled(e===null||e===void 0?void 0:e.baseClass)?e.baseClass:t.BASE_CLASS}));_classPrivateFieldInitSpec$2(babelHelpers.assertThisInitialized(o),_style,{writable:true,value:void 0});_classPrivateFieldInitSpec$2(babelHelpers.assertThisInitialized(o),_isWide,{writable:true,value:false});_classPrivateFieldInitSpec$2(babelHelpers.assertThisInitialized(o),_layout,{writable:true,value:{}});o.isDependOnTheme=null;o.size=null;o.color=null;o.icon=null;o.state=null;o.id=null;o.context=null;o.menuWindow=null;o.handleMenuClick=o.handleMenuClick.bind(babelHelpers.assertThisInitialized(o));o.handleMenuClose=o.handleMenuClose.bind(babelHelpers.assertThisInitialized(o));o.setDependOnTheme((i=o.options.dependOnTheme)!==null&&i!==void 0?i:false);o.setSize(o.options.size);o.setColor(o.options.color);o.setIcon(o.options.icon,o.options.iconPosition||"left");o.setState(o.options.state);o.setId(o.options.id);o.setMenu(o.options.menu);o.setContext(o.options.context);o.setWide(o.options.wide===true);o.setLeftCorners(o.options.removeLeftCorners!==true);o.setRightCorners(o.options.removeRightCorners!==true);if(o.options.collapsedIcon){o.setCollapsedIcon(o.options.collapsedIcon)}if(o.hasAirDesign()){o.setStyle(o.options.style||AirButtonStyle.FILLED);o.setNoCaps(true);if(!o.text&&!(babelHelpers.assertThisInitialized(o)instanceof ui_buttons.SplitButton)){o.setCollapsed(true)}}if(o.options.noCaps){o.setNoCaps()}if(o.options.round){o.setRound()}if(o.options.dropdown||o.getMenuWindow()&&o.options.dropdown!==false){o.setDropdown()}return o}babelHelpers.createClass(t,[{key:"setText",value:function e(n){babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setText",this).call(this,n);if(this.hasAirDesign()){main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.COLLAPSED,!this.text)}return this}},{key:"setSize",value:function e(t){return this.setProperty("size",t,ButtonSize)}},{key:"getSize",value:function e(){return this.size}},{key:"setColor",value:function e(t){return this.setProperty("color",t,ButtonColor)}},{key:"getColor",value:function e(){return this.color}},{key:"setIcon",value:function e(t,n="left"){var i;if(t&&!t.startsWith("ui-btn-icon")){var o;(o=babelHelpers.classPrivateFieldGet(this,_layout).icon)===null||o===void 0?void 0:o.remove();babelHelpers.classPrivateFieldGet(this,_layout).icon=new ui_iconSet_api_core.Icon({icon:t}).render();main_core.Dom.addClass(this.getContainer(),"--with-icon");main_core.Dom.prepend(babelHelpers.classPrivateFieldGet(this,_layout).icon,this.getContainer());return this}this.setProperty("icon",t,ButtonIcon);const r=(i={left:"--with-left-icon",right:"--with-right-icon"}[n])!==null&&i!==void 0?i:"";main_core.Dom.removeClass(this.getContainer(),"--with-icon");main_core.Dom.toggleClass(this.getContainer(),["ui-icon-set__scope",r],Boolean(t));if(this.isInputType()&&this.getIcon()!==null){throw new Error("BX.UI.Button: Input type button cannot have an icon.")}return this}},{key:"setCollapsedIcon",value:function e(t){this.setProperty("icon",t,ButtonIcon);main_core.Dom.toggleClass(this.getContainer(),["ui-icon-set__scope","--with-collapsed-icon"],Boolean(t))}},{key:"getIcon",value:function e(){return this.icon}},{key:"setState",value:function e(t){return this.setProperty("state",t,ButtonState)}},{key:"getState",value:function e(){return this.state}},{key:"setNoCaps",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.NO_CAPS,t);return this}},{key:"isNoCaps",value:function e(){return main_core.Dom.hasClass(this.getContainer(),ButtonStyle.NO_CAPS)}},{key:"setRound",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.ROUND,t);return this}},{key:"isRound",value:function e(){return main_core.Dom.hasClass(this.getContainer(),ButtonStyle.ROUND)}},{key:"setDependOnTheme",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.DEPEND_ON_THEME,t);return this}},{key:"setDropdown",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.DROPDOWN,t);return this}},{key:"isDropdown",value:function e(){return main_core.Dom.hasClass(this.getContainer(),ButtonStyle.DROPDOWN)}},{key:"setCollapsed",value:function e(t=true){const n=this.hasAirDesign()&&!this.getText();main_core.Dom.toggleClass(this.getContainer(),ButtonStyle.COLLAPSED,t||n);return this}},{key:"isCollapsed",value:function e(){return main_core.Dom.hasClass(this.getContainer(),ButtonStyle.COLLAPSED)}},{key:"setLeftCorners",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),"--remove-left-corners",!t);return this}},{key:"setRightCorners",value:function e(t=true){main_core.Dom.toggleClass(this.getContainer(),"--remove-right-corners",!t);return this}},{key:"setMenu",value:function e(t){if(main_core.Type.isPlainObject(t)&&main_core.Type.isArray(t.items)&&t.items.length>0){this.setMenu(false);this.menuWindow=new main_popup.Menu({id:`ui-btn-menu-${main_core.Text.getRandom().toLowerCase()}`,bindElement:this.getMenuBindElement(),...t});this.menuWindow.getPopupWindow().subscribe("onClose",this.handleMenuClose);main_core.Event.bind(this.getMenuClickElement(),"click",this.handleMenuClick)}else if(t===false&&this.menuWindow!==null){this.menuWindow.close();this.menuWindow.getPopupWindow().unsubscribe("onClose",this.handleMenuClose);main_core.Event.unbind(this.getMenuClickElement(),"click",this.handleMenuClick);this.menuWindow.destroy();this.menuWindow=null}return this}},{key:"getMenuBindElement",value:function e(){return this.getContainer()}},{key:"getMenuClickElement",value:function e(){return this.getContainer()}},{key:"handleMenuClick",value:function e(t){this.getMenuWindow().show();this.setActive(this.getMenuWindow().getPopupWindow().isShown())}},{key:"setAirDesign",value:function e(n){var i;babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setAirDesign",this).call(this,n);const o=!((i=this.getContainer())!==null&&i!==void 0&&i.querySelector(".ui-btn-text-inner"));if(this.hasAirDesign()&&o){main_core.Dom.remove(this.textNode);this.textNode=null;this.setText(this.getText())}}},{key:"handleMenuClose",value:function e(){this.setActive(false)}},{key:"getMenuWindow",value:function e(){return this.menuWindow}},{key:"setId",value:function e(t){if(main_core.Type.isStringFilled(t)||main_core.Type.isNull(t)){this.id=t}return this}},{key:"getId",value:function e(){return this.id}},{key:"setActive",value:function e(t=true){return this.setState(t?ButtonState.ACTIVE:null)}},{key:"isActive",value:function e(){return this.getState()===ButtonState.ACTIVE}},{key:"setHovered",value:function e(t=true){return this.setState(t?ButtonState.HOVER:null)}},{key:"isHover",value:function e(){return this.getState()===ButtonState.HOVER}},{key:"setDisabled",value:function e(n=true){this.setState(n?ButtonState.DISABLED:null);babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setDisabled",this).call(this,n);return this}},{key:"isDisabled",value:function e(){return this.getState()===ButtonState.DISABLED}},{key:"setWaiting",value:function e(t=true){this.setState(t?ButtonState.WAITING:null);this.setProps({disabled:t?true:null});return this}},{key:"isWaiting",value:function e(){return this.getState()===ButtonState.WAITING}},{key:"setClocking",value:function e(t=true){this.setState(t?ButtonState.CLOCKING:null);this.setProps({disabled:t?true:null});return this}},{key:"isClocking",value:function e(){return this.getState()===ButtonState.CLOCKING}},{key:"setProperty",value:function e(t,n,i){if(this.isEnumValue(n,i)){main_core.Dom.removeClass(this.getContainer(),this[t]);main_core.Dom.addClass(this.getContainer(),n);this[t]=n}else if(n===null){main_core.Dom.removeClass(this.getContainer(),this[t]);this[t]=null}return this}},{key:"setContext",value:function e(t){if(!main_core.Type.isUndefined(t)){this.context=t}return this}},{key:"getContext",value:function e(){return this.context}},{key:"setWide",value:function e(t){babelHelpers.classPrivateFieldSet(this,_isWide,t===true);main_core.Dom.toggleClass(this.getContainer(),"--wide",babelHelpers.classPrivateFieldGet(this,_isWide));return this}},{key:"isWide",value:function e(){return babelHelpers.classPrivateFieldGet(this,_isWide)}},{key:"setStyle",value:function e(t){if(this.hasAirDesign()===false){console.warn("Style option works only with air buttons.");return}if(Object.values(AirButtonStyle).includes(t)===false){console.warn("Undefined style option. Use value from AirButtonStyle");return}main_core.Dom.removeClass(this.getContainer(),babelHelpers.classPrivateFieldGet(this,_style));main_core.Dom.addClass(this.getContainer(),t);babelHelpers.classPrivateFieldSet(this,_style,t)}},{key:"getStyle",value:function e(){return babelHelpers.classPrivateFieldGet(this,_style)}},{key:"setLeftCounter",value:function e(n){babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setLeftCounter",this).call(this,this.prepareCounterOptions(n));return this}},{key:"setRightCounter",value:function e(n){babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setRightCounter",this).call(this,this.prepareCounterOptions(n));return this}},{key:"prepareCounterOptions",value:function e(t){if(!t){return null}return{...t,...this.getSize()?{size:this.getSize()}:{}}}},{key:"startShimmer",value:function e(){const t=main_core.Tag.render(_t$1||(_t$1=_$1`<span class="ui-button__shimmer"></span>`));main_core.Dom.append(t,this.getContainer())}},{key:"stopShimmer",value:function e(){const t=this.getContainer().querySelector(".ui-button__shimmer");main_core.Dom.remove(t)}}]);return t}(BaseButton$$1);babelHelpers.defineProperty(Button,"BASE_CLASS","ui-btn");babelHelpers.defineProperty(Button,"Size",ButtonSize);babelHelpers.defineProperty(Button,"Color",ButtonColor);babelHelpers.defineProperty(Button,"State",ButtonState);babelHelpers.defineProperty(Button,"Icon",ButtonIcon);babelHelpers.defineProperty(Button,"Tag",ButtonTag);babelHelpers.defineProperty(Button,"Style",ButtonStyle);babelHelpers.defineProperty(Button,"AirStyle",AirButtonStyle);let SplitButtonState=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(SplitButtonState,"HOVER","ui-btn-hover");babelHelpers.defineProperty(SplitButtonState,"MAIN_HOVER","ui-btn-main-hover");babelHelpers.defineProperty(SplitButtonState,"MENU_HOVER","ui-btn-menu-hover");babelHelpers.defineProperty(SplitButtonState,"ACTIVE","ui-btn-active");babelHelpers.defineProperty(SplitButtonState,"MAIN_ACTIVE","ui-btn-main-active");babelHelpers.defineProperty(SplitButtonState,"MENU_ACTIVE","ui-btn-menu-active");babelHelpers.defineProperty(SplitButtonState,"DISABLED","ui-btn-disabled");babelHelpers.defineProperty(SplitButtonState,"MAIN_DISABLED","ui-btn-main-disabled");babelHelpers.defineProperty(SplitButtonState,"MENU_DISABLED","ui-btn-menu-disabled");babelHelpers.defineProperty(SplitButtonState,"CLOCKING","ui-btn-clock");babelHelpers.defineProperty(SplitButtonState,"WAITING","ui-btn-wait");babelHelpers.defineProperty(SplitButtonState,"AI_WAITING","ui-btn-ai-waiting");let SplitSubButtonType=function e(){babelHelpers.classCallCheck(this,e)};babelHelpers.defineProperty(SplitSubButtonType,"MAIN","ui-btn-main");babelHelpers.defineProperty(SplitSubButtonType,"MENU","ui-btn-menu");babelHelpers.defineProperty(SplitSubButtonType,"SWITCHER","ui-btn-switcher");function _classPrivateMethodInitSpec$1(e,t){_checkPrivateRedeclaration$3(e,t);t.add(e)}function _checkPrivateRedeclaration$3(e,t){if(t.has(e)){throw new TypeError("Cannot initialize the same private elements twice on an object")}}function _classPrivateMethodGet$1(e,t,n){if(!t.has(e)){throw new TypeError("attempted to get private field on non-instance")}return n}var _renderSwitcher=new WeakSet;var _initSwitcher=new WeakSet;let SplitSubButton=function(e){babelHelpers.inherits(t,e);function t(e){var n;babelHelpers.classCallCheck(this,t);e=main_core.Type.isPlainObject(e)?e:{};e.baseClass=e.buttonType===SplitSubButtonType.MAIN?SplitSubButtonType.MAIN:SplitSubButtonType.MENU;if(e.buttonType===SplitSubButtonType.SWITCHER){e.baseClass+=" --switcher"}n=babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).call(this,e));_classPrivateMethodInitSpec$1(babelHelpers.assertThisInitialized(n),_initSwitcher);_classPrivateMethodInitSpec$1(babelHelpers.assertThisInitialized(n),_renderSwitcher);if(n.isSwitcherButton()){const e=main_core.Type.isPlainObject(n.options.switcherOptions)?n.options.switcherOptions:{};_classPrivateMethodGet$1(babelHelpers.assertThisInitialized(n),_initSwitcher,_initSwitcher2).call(babelHelpers.assertThisInitialized(n),{...e,size:n.options.switcherOptions.size,useAirDesign:n.options.switcherOptions.useAirDesign===true})}if(n.isInputType()){throw new Error("BX.UI.SplitSubButton: Split button cannot be an input tag.")}return n}babelHelpers.createClass(t,[{key:"init",value:function e(){this.buttonType=this.options.buttonType;this.splitButton=this.options.splitButton;babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"init",this).call(this)}},{key:"getSplitButton",value:function e(){return this.splitButton}},{key:"isMainButton",value:function e(){return this.buttonType===SplitSubButtonType.MAIN}},{key:"isMenuButton",value:function e(){return this.buttonType===SplitSubButtonType.MENU}},{key:"isSwitcherButton",value:function e(){return this.buttonType===SplitSubButtonType.SWITCHER}},{key:"setText",value:function e(n){if(main_core.Type.isString(n)&&this.isMenuButton()){throw new Error("BX.UI.SplitButton: a menu button doesn't support a text caption.")}return babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setText",this).call(this,n)}},{key:"getSwitcher",value:function e(){return this.switcher}},{key:"setActive",value:function e(t){this.toggleState(t,SplitButtonState.ACTIVE,SplitButtonState.MAIN_ACTIVE,SplitButtonState.MENU_ACTIVE);return this}},{key:"isActive",value:function e(){const t=this.getSplitButton().getState();if(t===SplitButtonState.ACTIVE){return true}if(this.isMainButton()){return t===SplitButtonState.MAIN_ACTIVE}return t===SplitButtonState.MENU_ACTIVE}},{key:"setDisabled",value:function e(n){this.toggleState(n,SplitButtonState.DISABLED,SplitButtonState.MAIN_DISABLED,SplitButtonState.MENU_DISABLED);if(n){var i;(i=this.getSwitcher())===null||i===void 0?void 0:i.disable()}babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setDisabled",this).call(this,n);return this}},{key:"setHovered",value:function e(t){this.toggleState(t,SplitButtonState.HOVER,SplitButtonState.MAIN_HOVER,SplitButtonState.MENU_HOVER);return this}},{key:"isHovered",value:function e(){const t=this.getSplitButton().getState();if(t===SplitButtonState.HOVER){return true}if(this.isMainButton()){return t===SplitButtonState.MAIN_HOVER}return t===SplitButtonState.MENU_HOVER}},{key:"toggleState",value:function e(t,n,i,o){const r=this.getSplitButton().getState();if(t===false){if(r===n){this.getSplitButton().setState(this.isMainButton()?o:i)}else{this.getSplitButton().setState(null)}}else{if(r===i&&this.isMenuButton()){this.getSplitButton().setState(n)}else if(r===o&&this.isMainButton()){this.getSplitButton().setState(n)}else if(r!==n){this.getSplitButton().setState(this.isMainButton()?i:o)}}}}]);return t}(BaseButton$$1);function _renderSwitcher2(e){var t;main_core.Dom.clean(e);return(t=this.switcher)===null||t===void 0?void 0:t.renderTo(e)}function _initSwitcher2(e={}){if(e.node){this.switcher=new ui_switcher.Switcher({node:e.node,checked:main_core.Dom.hasClass(e.node,ui_switcher.Switcher.classNameOff)===false});return}this.switcher=new ui_switcher.Switcher({size:ui_switcher.SwitcherSize.medium,color:ui_switcher.SwitcherColor.green,style:ui_switcher.AirSwitcherStyle.FILLED,...e});_classPrivateMethodGet$1(this,_renderSwitcher,_renderSwitcher2).call(this,this.getContainer(),e)}babelHelpers.defineProperty(SplitSubButton,"Type",SplitSubButtonType);const switcherSizeByButton=Object.freeze({[ButtonSize.EXTRA_LARGE]:ui_switcher.SwitcherSize.large,[ButtonSize.LARGE]:ui_switcher.SwitcherSize.medium,[ButtonSize.MEDIUM]:ui_switcher.SwitcherSize.small,[ButtonSize.SMALL]:ui_switcher.SwitcherSize.extraSmall,[ButtonSize.EXTRA_SMALL]:ui_switcher.SwitcherSize.extraSmall,[ButtonSize.EXTRA_EXTRA_SMALL]:ui_switcher.SwitcherSize.extraExtraSmall});const getSwitcherSizeByButtonSize=e=>switcherSizeByButton[e];let _$2=e=>e,_t$2;let SplitButton=function(e){babelHelpers.inherits(t,e);function t(e){babelHelpers.classCallCheck(this,t);e=main_core.Type.isPlainObject(e)?e:{};if(main_core.Type.isStringFilled(e.link)){e.mainButton=main_core.Type.isPlainObject(e.mainButton)?e.mainButton:{};e.mainButton.link=e.link;delete e.link}e.tag=ButtonTag.DIV;e.baseClass=t.BASE_CLASS;return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).call(this,e))}babelHelpers.createClass(t,[{key:"init",value:function e(){const n=main_core.Type.isPlainObject(this.options.mainButton)?this.options.mainButton:{};const i=main_core.Type.isPlainObject(this.options.menuButton)?this.options.menuButton:{};n.buttonType=SplitSubButtonType.MAIN;n.splitButton=this;i.buttonType=SplitSubButtonType.MENU;i.splitButton=this;this.mainButton=new SplitSubButton({...n,useAirDesign:this.options.useAirDesign,style:this.options.style});this.menuButton=new SplitSubButton(i);this.menuTarget=SplitSubButtonType.MAIN;if(this.options.menuTarget===SplitSubButtonType.MENU){this.menuTarget=SplitSubButtonType.MENU}if(main_core.Type.isPlainObject(this.options.switcher)||this.options.switcher===true){const e=main_core.Type.isPlainObject(this.options.switcher)?this.options.switcher:{};const t=main_core.Type.isStringFilled(this.options.size)?this.options.size:ButtonSize.MEDIUM;this.switcherButton=new SplitSubButton({buttonType:SplitSubButtonType.SWITCHER,splitButton:this,switcherOptions:{...e,disabled:this.options.disabled,size:getSwitcherSizeByButtonSize(t),useAirDesign:this.options.useAirDesign===true}})}babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"init",this).call(this)}},{key:"getContainer",value:function e(){var t,n;(t=this.button)!==null&&t!==void 0?t:this.button=main_core.Tag.render(_t$2||(_t$2=_$2` <div class="${0}"> ${0} ${0} </div> `),this.getBaseClass(),this.getMainButton().getContainer(),((n=this.getSwitcherButton())!==null&&n!==void 0?n:this.getMenuButton()).getContainer());return this.button}},{key:"getMainButton",value:function e(){return this.mainButton}},{key:"getMenuButton",value:function e(){return this.menuButton}},{key:"getSwitcherButton",value:function e(){return this.switcherButton}},{key:"getSwitcher",value:function e(){var t;return(t=this.getSwitcherButton())===null||t===void 0?void 0:t.getSwitcher()}},{key:"setAirDesign",value:function e(n){var i;babelHelpers.get(babelHelpers.getPrototypeOf(t.prototype),"setAirDesign",this).call(this,n);(i=this.getSwitcher())===null||i===void 0?void 0:i.setAirDesign(n)}},{key:"setText",value:function e(t){if(main_core.Type.isString(t)){this.getMainButton().setText(t)}return this}},{key:"getText",value:function e(){return this.getMainButton().getText()}},{key:"setCounter",value:function e(t){return this.getMainButton().setCounter(t)}},{key:"setLeftCounter",value:function e(t){this.getMainButton().setLeftCounter(this.prepareCounterOptions(t));return this}},{key:"setRightCounter",value:function e(t){this.getMainButton().setRightCounter(this.prepareCounterOptions(t));return this}},{key:"getCounter",value:function e(){return this.getMainButton().getCounter()}},{key:"setLink",value:function e(t){return this.getMainButton().setLink(t)}},{key:"getLink",value:function e(){return this.getMainButton().getLink()}},{key:"setState",value:function e(t){return this.setProperty("state",t,SplitButtonState)}},{key:"setDisabled",value:function e(t=true){var n,i;this.setState(t?ButtonState.DISABLED:null);this.getMainButton().setDisabled(t);(n=this.getMenuButton())===null||n===void 0?void 0:n.setDisabled(t);(i=this.getSwitcherButton())===null||i===void 0?void 0:i.setDisabled(t);return this}},{key:"getMenuBindElement",value:function e(){if(this.getMenuTarget()===SplitSubButtonType.MENU){return this.getMenuButton().getContainer()}return this.getContainer()}},{key:"handleMenuClick",value:function e(t){this.getMenuWindow().show();const n=this.getMenuWindow().getPopupWindow().isShown();this.getMenuButton().setActive(n)}},{key:"handleMenuClose",value:function e(){this.getMenuButton().setActive(false)}},{key:"getMenuClickElement",value:function e(){return this.getMenuButton().getContainer()}},{key:"getMenuTarget",value:function e(){return this.menuTarget}},{key:"setDropdown",value:function e(t=true){return this}},{key:"isDropdown",value:function e(){return true}}]);return t}(Button);babelHelpers.defineProperty(SplitButton,"BASE_CLASS","ui-btn-split");babelHelpers.defineProperty(SplitButton,"State",SplitButtonState);let _$3=e=>e,_t$3,_t2$1;function _classStaticPrivateMethodGet(e,t,n){_classCheckPrivateStaticAccess(e,t);return n}function _classCheckPrivateStaticAccess(e,t){if(e!==t){throw new TypeError("Private static access of wrong provenance")}}let ButtonManager$$1=function(){function e(){babelHelpers.classCallCheck(this,e)}babelHelpers.createClass(e,null,[{key:"createFromNode",value:function t(n){if(!main_core.Type.isDomNode(n)){throw new Error('BX.UI.ButtonManager.createFromNode: "node" must be a DOM node.')}if(!main_core.Dom.hasClass(n,Button.BASE_CLASS)&&!main_core.Dom.hasClass(n,SplitButton.BASE_CLASS)){throw new Error('BX.UI.ButtonManager.createFromNode: "node" is not a button.')}const i=main_core.Dom.hasClass(n,SplitButton.BASE_CLASS);let o=null;let r=null;let s=null;let l=null;let a=null;let u=false;let c={};let p={};if(i){const t=n.querySelector(`.${SplitSubButtonType.MAIN}`);const i=n.querySelector(`.${SplitSubButtonType.MENU}`);if(!t){throw new Error("BX.UI.ButtonManager.createFromNode: a split button doesn't have a main button.")}if(!i){throw new Error("BX.UI.ButtonManager.createFromNode: a split button doesn't have a menu button.")}const o=_classStaticPrivateMethodGet(this,e,_getTag).call(this,t);if(o===ButtonTag.INPUT||o===ButtonTag.SUBMIT){r=t.value}else{[s,l]=_classStaticPrivateMethodGet(this,e,_getTextNode).call(this,t);r=s.textContent}u=main_core.Dom.hasClass(n,SplitButtonState.DISABLED);c={tag:o,textNode:s,counterNode:l,buttonNode:t,disabled:main_core.Dom.hasClass(n,SplitButtonState.MAIN_DISABLED)};p={tag:_classStaticPrivateMethodGet(this,e,_getTag).call(this,i),buttonNode:i,textNode:null,counterNode:null,disabled:main_core.Dom.hasClass(n,SplitButtonState.MENU_DISABLED)};a=i.querySelector(`.${ui_switcher.Switcher.className}`)||null}else{o=_classStaticPrivateMethodGet(this,e,_getTag).call(this,n);if(o===null){throw new Error('BX.UI.ButtonManager.createFromNode: "node" must be a button, link or input.')}u=main_core.Dom.hasClass(n,ButtonState.DISABLED);if(o===ButtonTag.INPUT||o===ButtonTag.SUBMIT){r=n.value}else{[s,l]=_classStaticPrivateMethodGet(this,e,_getTextNode).call(this,n);r=_classStaticPrivateMethodGet(this,e,_getTextNodeValue).call(this,s)}}const b=main_core.Dom.hasClass(n,"--air");const h={useAirDesign:b,id:n.dataset.btnUniqid,buttonNode:n,textNode:i?null:s,counterNode:i?null:l,counter:_classStaticPrivateMethodGet(this,e,_getCounter).call(this,l),tag:o,text:r,disabled:u,mainButton:c,menuButton:p,size:_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonSize),color:_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonColor),state:_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,i?SplitButtonState:ButtonState),noCaps:main_core.Dom.hasClass(n,ButtonStyle.NO_CAPS),round:main_core.Dom.hasClass(n,ButtonStyle.ROUND),dependOnTheme:main_core.Dom.hasClass(n,ButtonStyle.DEPEND_ON_THEME),style:_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,AirButtonStyle),switcher:i?{node:a}:null};if(main_core.Dom.hasClass(n,"--with-collapsed-icon")&&_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonIcon)){h.collapsedIcon=_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonIcon)}else if(_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonIcon)){h.icon=_classStaticPrivateMethodGet(this,e,_getEnumProp).call(this,n,ButtonIcon)}if(b){h.counterNode=undefined;if(_classStaticPrivateMethodGet(this,e,_getCounter).call(this,l)){var d;h.rightCounter={value:_classStaticPrivateMethodGet(this,e,_getCounter).call(this,l)};h.counterNode=undefined;h.counter=undefined;if(main_core.Dom.hasClass((d=l)===null||d===void 0?void 0:d.parentElement,"ui-btn-right-counter")){var f;main_core.Dom.remove((f=l)===null||f===void 0?void 0:f.parentElement)}main_core.Dom.remove(l)}}const S=main_core.Dom.attr(n,"data-json-options")||{};if(main_core.Dom.hasClass(n,ButtonStyle.DROPDOWN)){h.dropdown=true}else if(S.dropdown===false){h.dropdown=false}if(S.onclick){h.onclick=_classStaticPrivateMethodGet(this,e,_convertEventHandler).call(this,S.onclick)}if(main_core.Type.isPlainObject(S.events)){h.events=S.events;_classStaticPrivateMethodGet(this,e,_convertEvents).call(this,h.events)}if(main_core.Type.isPlainObject(S.menu)){h.menu=S.menu;_classStaticPrivateMethodGet(this,e,_convertMenuEvents).call(this,h.menu.items)}["mainButton","menuButton"].forEach((t=>{if(!main_core.Type.isPlainObject(S[t])){return}h[t]=main_core.Runtime.merge(h[t],S[t]);if(h[t].onclick){h[t].onclick=_classStaticPrivateMethodGet(this,e,_convertEventHandler).call(this,h[t].onclick)}_classStaticPrivateMethodGet(this,e,_convertEvents).call(this,h[t].events)}));if(main_core.Type.isStringFilled(S.menuTarget)){h.menuTarget=S.menuTarget}return i?new SplitButton(h):new Button(h)}},{key:"createByUniqId",value:function e(t){if(!main_core.Type.isStringFilled(t)){return null}const n=document.querySelector(`[data-btn-uniqid="${t}"]`);return n?this.createFromNode(n):null}},{key:"getByUniqid",value:function e(t){const n=main_core.Reflection.getClass("BX.UI.ToolbarManager");const i=n===null||n===void 0?void 0:n.getDefaultToolbar();return i?i.getButton(t):null}}]);return e}();function _getTag(e){if(e.nodeName==="A"){return ButtonTag.LINK}else if(e.nodeName==="BUTTON"){return ButtonTag.BUTTON}else if(e.nodeName==="INPUT"&&e.type==="button"){return ButtonTag.INPUT}else if(e.nodeName==="INPUT"&&e.type==="submit"){return ButtonTag.SUBMIT}return null}function _getTextNode(e){let t=e.querySelector(".ui-btn-text");const n=e.querySelector(".ui-btn-counter")||e.querySelector(".ui-counter");const i=main_core.Dom.hasClass(e,"--air");if(!t){if(n){main_core.Dom.remove(n)}if(i){t=main_core.Tag.render(_t$3||(_t$3=_$3`<span class="ui-btn-text">${0}</span>`),_classStaticPrivateMethodGet(this,ButtonManager$$1,_getTextNodeValue).call(this,t))}else{t=main_core.Tag.render(_t2$1||(_t2$1=_$3`<span class="ui-btn-text">${0}</span>`),e.innerHTML.trim())}main_core.Dom.clean(e);main_core.Dom.append(t,e);if(n){main_core.Dom.append(n,e)}}return[t,n]}function _getCounter(e){if(main_core.Type.isDomNode(e)&&main_core.Dom.hasClass(e,ui_cnt.Counter.BaseClassname)){var t;const n=(t=e.querySelector(".ui-counter__value"))===null||t===void 0?void 0:t.innerText;const i=main_core.Dom.attr(e,"data-value");const o=Number(i||n);return main_core.Type.isNumber(o)?o:n}if(main_core.Type.isDomNode(e)){const t=e.textContent;const n=Number(t);return main_core.Type.isNumber(n)?n:t}return null}function _getEnumProp(e,t){for(let n in t){if(!t.hasOwnProperty(n)){continue}if(main_core.Dom.hasClass(e,t[n])){return t[n]}}return null}function _convertEventHandler(handler){if(main_core.Type.isFunction(handler)){return handler}if(!main_core.Type.isObject(handler)){throw new Error("BX.UI.ButtonManager.createFromNode: Event handler must be described as object or function.")}if(main_core.Type.isStringFilled(handler.code)){return function(){eval(handler.code)}}else if(main_core.Type.isStringFilled(handler.event)){return function(...e){let t;if(e[0]instanceof main_core_events.BaseEvent){t=e[0]}else{if(e[0]instanceof BaseButton$$1){t=new main_core_events.BaseEvent({data:{button:e[0],event:e[1]}})}else if(e[1]instanceof main_popup.MenuItem){t=new main_core_events.BaseEvent({data:{item:e[1],event:e[0]}})}else{t=new main_core_events.BaseEvent({data:e})}}main_core_events.EventEmitter.emit(handler.event,t)}}else if(main_core.Type.isStringFilled(handler.handler)){return function(...e){const t=main_core.Reflection.getClass(handler.handler);if(main_core.Type.isFunction(t)){let n=this;if(main_core.Type.isStringFilled(handler.context)){n=main_core.Reflection.getClass(handler.context)}return t.apply(n,e)}else{console.warn(`BX.UI.ButtonManager.createFromNode: be aware, the handler ${handler.handler} is not a function.`)}return null}}return null}function _convertEvents(e){if(main_core.Type.isPlainObject(e)){for(let[t,n]of Object.entries(e)){e[t]=_classStaticPrivateMethodGet(this,ButtonManager$$1,_convertEventHandler).call(this,n)}}}function _convertMenuEvents(e){if(!main_core.Type.isArray(e)){return}e.forEach((e=>{if(e.onclick){e.onclick=_classStaticPrivateMethodGet(this,ButtonManager$$1,_convertEventHandler).call(this,e.onclick)}if(e.events){_classStaticPrivateMethodGet(this,ButtonManager$$1,_convertEvents).call(this,e.events)}if(main_core.Type.isArray(e.items)){_classStaticPrivateMethodGet(this,ButtonManager$$1,_convertMenuEvents).call(this,e.items)}}))}function _getTextNodeValue(e){if(!e){return""}if(e.querySelector(".ui-btn-text-inner")){var t;return((t=e.querySelector(".ui-btn-text-inner"))===null||t===void 0?void 0:t.textContent)||""}const n=e.childNodes;for(const e of n){if(e.nodeType===Node.TEXT_NODE&&e.textContent.trim()!==""){return e.textContent.trim()}}return""}let IButton=function(){function e(){babelHelpers.classCallCheck(this,e)}babelHelpers.createClass(e,[{key:"render",value:function e(){throw new Error("BX.UI.IButton: Must be implemented by a subclass")}}]);return e}();let AddButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_ADD_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(Button);let ApplyButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_APPLY_BTN_TEXT"),color:ButtonColor.LIGHT_BORDER}}}]);return t}(Button);let CancelButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CANCEL_BTN_TEXT"),color:ButtonColor.LINK}}}]);return t}(Button);let CloseButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CLOSE_BTN_TEXT"),color:ButtonColor.LINK}}}]);return t}(Button);let CreateButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CREATE_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(Button);let SaveButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_SAVE_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(Button);let SendButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_SEND_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(Button);let SettingsButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{icon:ButtonIcon.SETTING,color:ButtonColor.LIGHT_BORDER,dropdown:false}}}]);return t}(Button);let AddSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_ADD_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(SplitButton);let ApplySplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_APPLY_BTN_TEXT"),color:ButtonColor.LIGHT_BORDER}}}]);return t}(SplitButton);let CancelSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CANCEL_BTN_TEXT"),color:ButtonColor.LINK}}}]);return t}(SplitButton);let CloseSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CLOSE_BTN_TEXT"),color:ButtonColor.LINK}}}]);return t}(SplitButton);let CreateSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_CREATE_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(SplitButton);let SaveSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_SAVE_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(SplitButton);let SendSplitButton=function(e){babelHelpers.inherits(t,e);function t(){babelHelpers.classCallCheck(this,t);return babelHelpers.possibleConstructorReturn(this,babelHelpers.getPrototypeOf(t).apply(this,arguments))}babelHelpers.createClass(t,[{key:"getDefaultOptions",value:function e(){return{text:main_core.Loc.getMessage("UI_BUTTONS_SEND_BTN_TEXT"),color:ButtonColor.SUCCESS}}}]);return t}(SplitButton);exports.ButtonCounterColor=ui_cnt.CounterColor;exports.ButtonCounterSize=ui_cnt.CounterSize;exports.ButtonCounterStyle=ui_cnt.CounterStyle;exports.IButton=IButton;exports.BaseButton=BaseButton$$1;exports.Button=Button;exports.SplitButton=SplitButton;exports.SplitSubButton=SplitSubButton;exports.ButtonManager=ButtonManager$$1;exports.ButtonIcon=ButtonIcon;exports.ButtonSize=ButtonSize;exports.ButtonState=ButtonState;exports.ButtonColor=ButtonColor;exports.ButtonStyle=ButtonStyle;exports.AirButtonStyle=AirButtonStyle;exports.ButtonTag=ButtonTag;exports.SplitButtonState=SplitButtonState;exports.SplitSubButtonType=SplitSubButtonType;exports.AddButton=AddButton;exports.ApplyButton=ApplyButton;exports.CancelButton=CancelButton;exports.CloseButton=CloseButton;exports.CreateButton=CreateButton;exports.SaveButton=SaveButton;exports.SendButton=SendButton;exports.SettingsButton=SettingsButton;exports.AddSplitButton=AddSplitButton;exports.ApplySplitButton=ApplySplitButton;exports.CancelSplitButton=CancelSplitButton;exports.CloseSplitButton=CloseSplitButton;exports.CreateSplitButton=CreateSplitButton;exports.SaveSplitButton=SaveSplitButton;exports.SendSplitButton=SendSplitButton;exports.ButtonCounter=ButtonCounter})(this.BX.UI=this.BX.UI||{},BX,BX.UI.IconSet,BX.UI,BX.Event,BX.Main,BX.UI,BX,BX.UI); //# sourceMappingURL=ui.buttons.bundle.map.js