PageSourceSearch

https://aeroscreen.ru/bitrix/js/ui/entity-selector/dist/entity-selector.bundle.min.js?1781860496175954

js aeroscreen.ru collected 2026-10-08 23:48:45 UTC 175,954 bytes, 188 lines download raw bytes

1this.BX=this.BX||{};this.BX.UI=this.BX.UI||{};(function(e,t,i,n,s,r,o){"use strict";let l=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"makeMultipleComparator",value:function e(i){const n=Object.keys(i).map((e=>`get${t.Text.capitalize(e)}`));const s=[];Object.values(i).forEach((e=>{const t=e.toLowerCase().trim();let i=true;let n=true;if(t==="desc"||t==="desc nulls first"){i=false}else if(t==="asc nulls first"){n=false}else if(t==="desc nulls last"){i=false;n=false}s.push({ascOrdering:i,nullsOrdering:n})}));const r=n.length;return(e,t)=>{let i=0;let o=0;while(o===0&&i<r){const r=n[i];const l=s[i];o=this.compareItemNodes(e,t,r,l.ascOrdering,l.nullsOrdering);i+=1}return o}}},{key:"compareItemNodes",value:function e(i,n,s,r,o){const l=i.getItem();const a=n.getItem();l.getCustomData().get();const u=l[s]();const h=a[s]();let c=0;if(u!==null&&h===null){c=o?-1:1}else if(u===null&&h!==null){c=o?1:-1}else if(u===null&&h===null){c=r?-1:1}else{if(t.Type.isString(u)){c=u.localeCompare(h)}else{c=u-h}}const d=r?1:-1;return c*d}}])}();let a=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"isValid",value:function e(i){return t.Type.isString(i)&&(i===this.HTML||i===this.TEXT)}}])}();babelHelpers.defineProperty(a,"TEXT","text");babelHelpers.defineProperty(a,"HTML","html");let u=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"text",null);babelHelpers.defineProperty(this,"type",null);if(t.Type.isPlainObject(i)){if(t.Type.isString(i.text)){this.text=i.text}if(a.isValid(i.type)){this.type=i.type}}else if(t.Type.isString(i)){this.text=i}}return babelHelpers.createClass(e,[{key:"getText",value:function e(){return this.text}},{key:"getType",value:function e(){return this.type}},{key:"isNullable",value:function e(){return this.getText()===null}},{key:"renderTo",value:function e(t){const i=this.getText();if(i===null){return}if(this.getType()===null||this.getType()===a.TEXT){t.textContent=i}else if(this.getType()===a.HTML){t.innerHTML=i}}},{key:"toString",value:function e(){return this.getText()??""}},{key:"toJSON",value:function e(){if(this.getType()===null){return this.getText()}else{return{text:this.getText(),type:this.getType()}}}}])}();let h=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"mark",value:function e(i,n){let s=true;if(i instanceof u){if(i.getType()==="html"){s=false}i=i.getText()}if(!t.Type.isStringFilled(i)||!n||n.count()===0){return i}let r="";let o=0;let l="";n.forEach((e=>{if(o>e.getStartIndex()){return}l=i.substring(o,e.getStartIndex());r+=s?t.Text.encode(l):l;r+='<span class="ui-selector-highlight-mark">';l=i.substring(e.getStartIndex(),e.getEndIndex());r+=s?t.Text.encode(l):l;r+="</span>";o=e.getEndIndex()}));l=i.substring(o);r+=s?t.Text.encode(l):l;return r}}])}();let c=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"title",null);babelHelpers.defineProperty(this,"textColor",null);babelHelpers.defineProperty(this,"bgColor",null);babelHelpers.defineProperty(this,"border",null);babelHelpers.defineProperty(this,"containers",new WeakMap);const n=t.Type.isPlainObject(i)?i:{};this.setTitle(n.title);this.setTextColor(n.textColor);this.setBgColor(n.bgColor);this.setBorder(n.border)}return babelHelpers.createClass(e,[{key:"getTitle",value:function e(){const t=this.getTitleNode();return t!==null&&!t.isNullable()?t.getText():""}},{key:"getTitleNode",value:function e(){return this.title}},{key:"setTitle",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isPlainObject(i)||i===null){this.title=i===null?null:new u(i)}}},{key:"getTextColor",value:function e(){return this.textColor}},{key:"setTextColor",value:function e(i){if(t.Type.isString(i)||i===null){this.textColor=i}}},{key:"getBgColor",value:function e(){return this.bgColor}},{key:"setBgColor",value:function e(i){if(t.Type.isString(i)||i===null){this.bgColor=i}}},{key:"getBorder",value:function e(){return this.border}},{key:"setBorder",value:function e(i){if(t.Type.isString(i)||i===null){this.border=i}}},{key:"getContainer",value:function e(t){let i=this.containers.get(t);if(!i){i=document.createElement("span");i.className="ui-selector-item-badge";this.containers.set(t,i)}return i}},{key:"renderTo",value:function e(i){const n=this.getContainer(i);const s=this.getTitleNode();if(s){this.getTitleNode().renderTo(n)}else{n.textContent=""}t.Dom.style(n,"color",this.getTextColor());t.Dom.style(n,"background-color",this.getBgColor());t.Dom.style(n,"border",this.getBorder());t.Dom.append(n,i)}},{key:"toJSON",value:function e(){return{title:this.getTitleNode(),textColor:this.getTextColor(),bgColor:this.getBgColor(),border:this.getBorder()}}}])}();let d=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"name",null);babelHelpers.defineProperty(this,"type","string");babelHelpers.defineProperty(this,"searchable",true);babelHelpers.defineProperty(this,"system",false);babelHelpers.defineProperty(this,"sort",null);const n=t.Type.isPlainObject(i)?i:{};if(!t.Type.isStringFilled(n.name)){throw new Error('EntitySelector.SearchField: "name" parameter is required.')}this.name=n.name;this.setType(n.type);this.setSystem(n.system);this.setSort(n.sort);this.setSearchable(n.searchable)}return babelHelpers.createClass(e,[{key:"getName",value:function e(){return this.name}},{key:"getType",value:function e(){return this.type}},{key:"setType",value:function e(i){if(t.Type.isStringFilled(i)){this.type=i}}},{key:"getSort",value:function e(){return this.sort}},{key:"setSort",value:function e(i){if(t.Type.isNumber(i)||i===null){this.sort=i}}},{key:"setSearchable",value:function e(i){if(t.Type.isBoolean(i)){this.searchable=i}}},{key:"isSearchable",value:function e(){return this.searchable}},{key:"setSystem",value:function e(i){if(t.Type.isBoolean(i)){this.system=i}}}
1,{key:"isCustom",value:function e(){return!this.isSystem()}},{key:"isSystem",value:function e(){return this.system}}])}();let g=function(){function e(t,i,n){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"field",null);babelHelpers.defineProperty(this,"queryWord",null);babelHelpers.defineProperty(this,"startIndex",null);babelHelpers.defineProperty(this,"endIndex",null);this.field=t;this.queryWord=i;this.startIndex=n;this.endIndex=n+i.length}return babelHelpers.createClass(e,[{key:"getField",value:function e(){return this.field}},{key:"getQueryWord",value:function e(){return this.queryWord}},{key:"getStartIndex",value:function e(){return this.startIndex}},{key:"getEndIndex",value:function e(){return this.endIndex}}])}();const f=(e,t)=>{if(e.getStartIndex()===t.getStartIndex()){return e.getEndIndex()>t.getEndIndex()?-1:1}else{return e.getStartIndex()>t.getStartIndex()?1:-1}};let p=function(){function e(t,i=[]){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"field",null);babelHelpers.defineProperty(this,"matchIndexes",new r.OrderedArray(f));this.field=t;this.addIndexes(i)}return babelHelpers.createClass(e,[{key:"getField",value:function e(){return this.field}},{key:"getMatches",value:function e(){return this.matchIndexes}},{key:"addIndex",value:function e(t){this.matchIndexes.add(t)}},{key:"addIndexes",value:function e(i){if(t.Type.isArray(i)){i.forEach((e=>{this.addIndex(e)}))}}}])}();let y=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"handleTransitionEnd",value:function e(i,n){const s=t.Type.isArray(n)?new Set(n):new Set([n]);const r=getComputedStyle(i);const o=r.transitionDuration.split(",").map((e=>parseFloat(e)*1e3));const l=r.transitionDelay.split(",").map((e=>parseFloat(e)*1e3));const a=Math.max(...o.map(((e,t)=>e+(l[t]??l[0]??0))),0)+50;return new Promise((e=>{let n=false;let r=null;const o=s=>{if(n){return}n=true;if(r!==null){clearTimeout(r)}t.Event.unbind(i,"transitionend",l);e(s)};const l=e=>{if(e.target!==i||!s.has(e.propertyName)){return}s.delete(e.propertyName);if(s.size===0){o(e)}};if(a<=50){queueMicrotask((()=>o(null)));return}t.Event.bind(i,"transitionend",l);r=setTimeout((()=>{o(null)}),a)}))}},{key:"handleAnimationEnd",value:function e(i,n){return new Promise((e=>{const s=r=>{if(!n||r.animationName===n){e(r);t.Event.unbind(i,"animationend",s)}};t.Event.bind(i,"animationend",s)}))}}])}();const b=/^data:((?:\w+\/(?:(?!;).)+)?)((?:;[\w\W]*?[^;])*),(.+)$/;const v=e=>typeof e==="string"?e.match(b):false;function m(e){if(v(e)){return e}return encodeURI(e)}var T;function k(e,t){C(e,t),t.add(e)}function C(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function S(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i;throw new TypeError("Private element is not present on this object")}let O=babelHelpers.createClass((function e(){babelHelpers.classCallCheck(this,e)}));babelHelpers.defineProperty(O,"PARTIAL","partial");babelHelpers.defineProperty(O,"OVERRIDE","override");var x=new WeakSet;let H=function(){function e(i,n){babelHelpers.classCallCheck(this,e);k(this,x);babelHelpers.defineProperty(this,"item",null);babelHelpers.defineProperty(this,"tab",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);babelHelpers.defineProperty(this,"parentNode",null);babelHelpers.defineProperty(this,"children",null);babelHelpers.defineProperty(this,"childItems",new WeakMap);babelHelpers.defineProperty(this,"loaded",false);babelHelpers.defineProperty(this,"dynamic",false);babelHelpers.defineProperty(this,"dynamicPromise",null);babelHelpers.defineProperty(this,"loader",null);babelHelpers.defineProperty(this,"open",false);babelHelpers.defineProperty(this,"autoOpen",false);babelHelpers.defineProperty(this,"focused",false);babelHelpers.defineProperty(this,"renderMode",O.PARTIAL);babelHelpers.defineProperty(this,"title",null);babelHelpers.defineProperty(this,"subtitle",null);babelHelpers.defineProperty(this,"supertitle",null);babelHelpers.defineProperty(this,"caption",null);babelHelpers.defineProperty(this,"captionOptions",{});babelHelpers.defineProperty(this,"avatar",null);babelHelpers.defineProperty(this,"avatarOptions",null);babelHelpers.defineProperty(this,"link",null);babelHelpers.defineProperty(this,"linkTitle",null);babelHelpers.defineProperty(this,"textColor",null);babelHelpers.defineProperty(this,"badges",null);babelHelpers.defineProperty(this,"badgesOptions",{});babelHelpers.defineProperty(this,"hidden",false);babelHelpers.defineProperty(this,"highlights",[]);babelHelpers.defineProperty(this,"renderWithDebounce",t.Runtime.debounce(this.render,50,this));const s=t.Type.isPlainObject(n)?n:{};if(t.Type.isObject(i)){this.item=i}let o=null;if(t.Type.isFunction(s.itemOrder)){o=s.itemOrder}else if(t.Type.isPlainObject(s.itemOrder)){o=l.makeMultipleComparator(s.itemOrder)}this.children=new r.OrderedArray(o);this.renderMode=s.renderMode===O.OVERRIDE?O.OVERRIDE:O.PARTIAL;if(this.renderMode===O.OVERRIDE){this.setTitle("");this.setSubtitle("");this.setSupertitle("");this.setCaption("");this.setLinkTitle("");this.avatar="";this.avatarOptions={bgSize:null,bgColor:null,bgImage:null,border:null,borderRadius:null,outline:null,outlineOffset:null,icon:null,iconColor:null};this.textColor="";this.link="";this.badges=[];this.captionOptions={fitContent:null,maxWidth:null,justifyContent:null};this.badgesOptions={fitContent:null,maxWidth:null,justifyContent:null}}this.setTitle(s.title);this.setSubtitle(s.subtitle);this.setSupertitle(s.supertitle);this.setCaption(s.caption);this.setCaptionOptions(s.captionOptions);this.setAvatar(s.avatar);this.setAvatarOptions(s.avatarOptions);this.setTextColor(s.textColor);this.setLink(s.link);this.setLinkTitle(s.linkTitle);this.setBadges(s.badges);this.setBadgesOptions(s.badgesOptions);this.setDynamic(s.dynamic);this.setOpen(s.open)}return babelHelpers.createClass(e,[{key:"getItem",value:function e(){return this.item}},{key:"isRoot",value:function e(){return this.getParentNode()===null}},{key:"getDialog",value:function e(){return this.getTab().getDialog()}},{key:"setTab",value:function e(t){this.tab=t}},{key:"getTab",value:function e(){return this.tab}},{key:"getParentNode",value:function e(){return this.parentNode}},{key:"setParentNode",value:function e(t){this.parentNode=t}},{key:"getNextSibling",value:function e(){if(!this.getParentNode()){return null}const t=this.getParentNode().getChildren();const i=t.getIndex(this);return t.getByIndex(i+1)}},{key:"getPreviousSibling",value:function e(){if(!this.getParentNode()){return null}const t=this.getParentNode().getChildren();const i=t.getIndex(this);return t.getByIndex(i-1)}},{key:"addChildren",value:function e(i){if(!t.Type.isArray(i)){return}i.forEach((e=>{delete e.tabs;const t=this.getDialog().addItem(e);const i=this.addItem(t,e.nodeOptions);i.addChildren(e.children)}))}},{key:"addChild",value:function t(i){if(!(i instanceof e)){throw new Error("EntitySelector.ItemNode: an item must be an instance of EntitySelector.ItemNode.")}if(this.isChildOf(i)||i===this){throw new Error("EntitySelector.ItemNode: a child item cannot be a parent of current item.")}if(this.getChildren().has(i)||this.childItems.has(i.getItem())){return null}this.getChildren().add(i);this.childItems.set(i.getItem(),i);i.setTab(this.getTab());i.setParentNode(this);if(this.isRendered()){this.renderWithDebounce()}return i}},{key:"getDepthLevel",value:function e(){return this.isRoot()?0:this.getParentNode().getDepthLevel()+1}},{key:"addItem",value:function e(t,i){let n=this.childItems.get(t);if(!n){n=t.createNode(i);this.addChild(n)}return n}},{key:"addItems",value:function e(i){if(t.Type.isArray(i)){this.disableRender();
1i.forEach((e=>{if(t.Type.isArray(e)&&e.length===2){this.addItem(e[0],e[1])}else if(e instanceof Le){this.addItem(e)}}));this.enableRender();if(this.isRendered()){this.renderWithDebounce()}}}},{key:"hasItem",value:function e(t){return this.childItems.has(t)}},{key:"removeChild",value:function e(i){if(!this.getChildren().has(i)){return false}i.removeChildren();if(i.isFocused()){i.unfocus()}i.setParentNode(null);i.getItem().removeNode(i);this.getChildren().delete(i);this.childItems.delete(i.getItem());if(this.isRendered()){t.Dom.remove(i.getOuterContainer())}return true}},{key:"removeChildren",value:function e(){if(!this.hasChildren()){return}this.getChildren().forEach((e=>{e.removeChildren();if(e.isFocused()){e.unfocus()}e.setParentNode(null);e.getItem().removeNode(e)}));this.getChildren().clear();this.childItems=new WeakMap;if(this.isRendered()){if(t.Browser.isIE()){t.Dom.clean(this.getChildrenContainer())}else{this.getChildrenContainer().textContent=""}}}},{key:"hasChild",value:function e(t){return this.getChildren().has(t)}},{key:"isChildOf",value:function e(t){let i=this.getParentNode();while(i!==null){if(i===t){return true}i=i.getParentNode()}return false}},{key:"getFirstChild",value:function e(){return this.children.getFirst()}},{key:"getLastChild",value:function e(){return this.children.getLast()}},{key:"getChildren",value:function e(){return this.children}},{key:"hasChildren",value:function e(){return this.children.count()>0}},{key:"loadChildren",value:function e(){if(!this.isDynamic()){throw new Error("EntitySelector.ItemNode.loadChildren: an item node is not dynamic.")}if(this.dynamicPromise){return this.dynamicPromise}this.dynamicPromise=t.ajax.runAction("ui.entityselector.getChildren",{json:{parentItem:this.getItem().getAjaxJson(),dialog:this.getDialog().getAjaxJson()},getParameters:{context:this.getDialog().getContext()}});this.dynamicPromise.then((e=>{if(e&&e.data&&t.Type.isPlainObject(e.data.dialog)){this.addChildren(e.data.dialog.items);this.render()}this.loaded=true}));this.dynamicPromise.catch((e=>{this.loaded=false;this.dynamicPromise=null;console.error(e)}));return this.dynamicPromise}},{key:"setOpen",value:function e(i){if(t.Type.isBoolean(i)){if(i&&this.isDynamic()&&!this.isLoaded()){this.setAutoOpen(true)}else{this.open=i}}}},{key:"isOpen",value:function e(){return this.open}},{key:"isAutoOpen",value:function e(){return this.autoOpen&&this.isDynamic()&&!this.isLoaded()}},{key:"setAutoOpen",value:function e(i){if(t.Type.isBoolean(i)){this.autoOpen=i}}},{key:"setDynamic",value:function e(i){if(t.Type.isBoolean(i)){this.dynamic=i}}},{key:"isDynamic",value:function e(){return this.dynamic}},{key:"isLoaded",value:function e(){return this.loaded}},{key:"getLoader",value:function e(){if(this.loader===null){this.loader=new s.Loader({target:this.getIndicatorContainer(),size:30})}return this.loader}},{key:"showLoader",value:function e(){void this.getLoader().show();t.Dom.addClass(this.getIndicatorContainer(),"ui-selector-item-indicator-hidden")}},{key:"hideLoader",value:function e(){void this.getLoader().hide();t.Dom.removeClass(this.getIndicatorContainer(),"ui-selector-item-indicator-hidden")}},{key:"destroyLoader",value:function e(){this.getLoader().destroy();this.loader=null;t.Dom.removeClass(this.getIndicatorContainer(),"ui-selector-item-indicator-hidden")}},{key:"expand",value:function e(){if(this.isOpen()||!this.hasChildren()&&!this.isDynamic()){return}if(this.isDynamic()&&!this.isLoaded()){this.loadChildren().then((()=>{this.destroyLoader();this.expand()}));this.showLoader();return}t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-open");t.Dom.style(this.getChildrenContainer(),"height","0px");t.Dom.style(this.getChildrenContainer(),"opacity",0);requestAnimationFrame((()=>{requestAnimationFrame((()=>{t.Dom.style(this.getChildrenContainer(),"height",`${this.getChildrenContainer().scrollHeight}px`);t.Dom.style(this.getChildrenContainer(),"opacity",1);y.handleTransitionEnd(this.getChildrenContainer(),"height").then((()=>{t.Dom.style(this.getChildrenContainer(),"height",null);t.Dom.style(this.getChildrenContainer(),"opacity",null);t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-open");this.setOpen(true)}))}))}))}},{key:"collapse",value:function e(){if(!this.isOpen()){return}
1t.Dom.style(this.getChildrenContainer(),"height",`${this.getChildrenContainer().offsetHeight}px`);requestAnimationFrame((()=>{requestAnimationFrame((()=>{t.Dom.style(this.getChildrenContainer(),"height","0px");t.Dom.style(this.getChildrenContainer(),"opacity",0);y.handleTransitionEnd(this.getChildrenContainer(),"height").then((()=>{t.Dom.style(this.getChildrenContainer(),"height",null);t.Dom.style(this.getChildrenContainer(),"opacity",null);t.Dom.removeClass(this.getOuterContainer(),"ui-selector-item-box-open");this.setOpen(false)}))}))}))}},{key:"render",value:function e(i=false){if(this.isRoot()){this.renderRoot(i);return}const n=this.getTitleNode();if(n){n.renderTo(this.getTitleContainer())}else{this.getTitleContainer().textContent=""}const s=this.getSupertitleNode();if(s){s.renderTo(this.getSupertitleContainer())}else{this.getSupertitleContainer().textContent=""}const r=this.getSubtitleNode();if(r){r.renderTo(this.getSubtitleContainer())}else{this.getSubtitleContainer().textContent=""}const l=this.getCaptionNode();if(l){l.renderTo(this.getCaptionContainer())}else{this.getCaptionContainer().textContent=""}const a=this.getCaptionOption("fitContent");if(t.Type.isBoolean(a)){t.Dom.style(this.getCaptionContainer(),"flex-shrink",a?0:null)}const u=this.getCaptionOption("justifyContent");if(t.Type.isStringFilled(u)||u===null){t.Dom.style(this.getCaptionContainer(),{flexGrow:u?"1":null,textAlign:u||null})}const h=this.getCaptionOption("maxWidth");if(t.Type.isString(h)||t.Type.isNumber(h)){t.Dom.style(this.getCaptionContainer(),"max-width",t.Type.isNumber(h)?`${h}px`:h)}if(t.Type.isStringFilled(this.getTextColor())){this.getTitleContainer().style.color=this.getTextColor()}else{this.getTitleContainer().style.removeProperty("color")}t.Dom.clean(this.getAvatarContainer());const c=this.getAvatar();if(t.Type.isStringFilled(c)){this.getAvatarContainer().style.backgroundImage=`url('${m(c)}')`}else{const e=this.getAvatarOption("bgImage");if(t.Type.isStringFilled(e)){this.getAvatarContainer().style.backgroundImage=e}else{this.getAvatarContainer().style.removeProperty("background-image")}}const d=this.getAvatarOption("bgColor");
1if(t.Type.isStringFilled(d)){this.getAvatarContainer().style.backgroundColor=d}else{this.getAvatarContainer().style.removeProperty("background-color")}const g=this.getAvatarOption("bgSize");if(t.Type.isStringFilled(g)){this.getAvatarContainer().style.backgroundSize=g}else{this.getAvatarContainer().style.removeProperty("background-size")}const f=this.getAvatarOption("border");if(t.Type.isStringFilled(f)){this.getAvatarContainer().style.border=f}else{this.getAvatarContainer().style.removeProperty("border")}const p=this.getAvatarOption("borderRadius");if(t.Type.isStringFilled(p)){this.getAvatarContainer().style.borderRadius=p}else{this.getAvatarContainer().style.removeProperty("border-radius")}const y=this.getAvatarOption("outline");t.Dom.style(this.getAvatarContainer(),"outline",y);const b=this.getAvatarOption("outlineOffset");t.Dom.style(this.getAvatarContainer(),"outline-offset",b);const v={icon:this.getAvatarOption("icon"),size:g??undefined,color:this.getAvatarOption("iconColor")??undefined};if(o.Icon.isValid(v)){t.Dom.style(this.getAvatarContainer(),"background-image","none");t.Dom.append(new o.Icon(v).render(),this.getAvatarContainer())}t.Dom.clean(this.getBadgeContainer());
1this.getBadges().forEach((e=>{e.renderTo(this.getBadgeContainer())}));const T=this.getBadgesOption("fitContent");if(t.Type.isBoolean(T)){t.Dom.style(this.getBadgeContainer(),"flex-shrink",T?0:null)}const k=this.getBadgesOption("justifyContent");if(t.Type.isStringFilled(k)||k===null){t.Dom.style(this.getBadgeContainer(),{flexGrow:k?"1":null,justifyContent:k||null})}const C=this.getBadgesOption("maxWidth");if(t.Type.isString(C)||t.Type.isNumber(C)){t.Dom.style(this.getBadgeContainer(),"max-width",t.Type.isNumber(C)?`${C}px`:C)}const O=this.getLinkTitleNode();if(O){O.renderTo(this.getLinkTextContainer())}else{this.getLinkTextContainer().textContent=""}if(this.hasChildren()||this.isDynamic()){t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-has-children");if(this.getDepthLevel()>=this.getTab().getItemMaxDepth()){t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-max-depth")}}else if(this.getOuterContainer().classList.contains("ui-selector-item-box-has-children")){t.Dom.removeClass(this.getOuterContainer(),["ui-selector-item-box-has-children","ui-selector-item-box-max-depth"])}if(this.hasChildren()){const e=this.getChildren().getAll().some((e=>e.isHidden()!==true));if(!e){S(x,this,I).call(this,true)}}this.toggleVisibility();this.highlight();this.renderChildren(i);if(this.isAutoOpen()){this.setAutoOpen(false);requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.expand()}))}))}this.rendered=true}},{key:"renderRoot",value:function e(t=false){this.renderChildren(t);this.rendered=true;const i=this.getTab().getStub();if(i&&i.isAutoShow()&&(this.getDialog().isLoaded()||!this.getDialog().hasDynamicLoad())){if(this.hasChildren()){i.hide()}else{i.show()}}}},{key:"renderChildren",value:function e(i=false){if(!i){if(t.Browser.isIE()){t.Dom.clean(this.getChildrenContainer())}else{this.getChildrenContainer().textContent=""}}if(this.hasChildren()){let e=null;
1this.getChildren().forEach((n=>{n.render(i);const s=n.getOuterContainer();if(!i){t.Dom.append(s,this.getChildrenContainer())}if(!s.parentNode){if(e!==null){t.Dom.insertAfter(s,e.getOuterContainer())}else{t.Dom.append(s,this.getChildrenContainer())}}e=n}))}}},{key:"isRendered",value:function e(){return this.rendered&&this.getDialog()&&this.getDialog().isRendered()}},{key:"enableRender",value:function e(){this.rendered=true}},{key:"disableRender",value:function e(){this.rendered=false}},{key:"getRenderMode",value:function e(){return this.renderMode}},{key:"isHidden",value:function e(){return this.hidden===true||this.getItem().isHidden()===true}},{key:"setHidden",value:function e(i){if(!t.Type.isBoolean(i)||this.isRoot()){return}S(x,this,I).call(this,i);if(this.isRendered()){this.toggleVisibility();let e=this.getParentNode();const t=this.isHidden();while(e.isRoot()===false){if(t){const t=e.getChildren().getAll().some((e=>e.isHidden()!==true));if(!t){var n;S(x,n=e,I).call(n,true)}e.toggleVisibility()}else{var s;S(x,s=e,I).call(s,false);e.toggleVisibility();if(e.isHidden()){break}}e=e.getParentNode()}}}},{key:"toggleVisibility",value:function e(){if(this.isHidden()){t.Dom.addClass(this.getOuterContainer(),"--hidden")}else if(this.getOuterContainer().classList.contains("--hidden")){t.Dom.removeClass(this.getOuterContainer(),"--hidden")}}},{key:"lock",value:function e(){if(this.hasChildren()||this.isDynamic()){return}t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-locked")}},{key:"unlock",value:function e(){if(this.hasChildren()||this.isDynamic()){return}t.Dom.removeClass(this.getOuterContainer(),"ui-selector-item-box-locked")}},{key:"getTitle",value:function e(){const t=this.getTitleNode();return t!==null?t.getText():null}},{key:"getTitleNode",value:function e(){return this.title!==null?this.title:this.getItem().getTitleNode()}},{key:"setTitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)){this.title=new u(i)}else if(i===null){this.title=null}}},{key:"getSubtitle",value:function e(){const t=this.getSubtitleNode();return t!==null?t.getText():null}},{key:"getSubtitleNode",value:function e(){return this.subtitle!==null?this.subtitle:this.getItem().getSubtitleNode()}},{key:"setSubtitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)){this.subtitle=new u(i)}else if(i===null){this.subtitle=null}}},{key:"getSupertitle",value:function e(){const t=this.getSupertitleNode();return t!==null?t.getText():null}},{key:"getSupertitleNode",value:function e(){return this.supertitle!==null?this.supertitle:this.getItem().getSupertitleNode()}},{key:"setSupertitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)){this.supertitle=new u(i)}else if(i===null){this.supertitle=null}}},{key:"getCaption",value:function e(){const t=this.getCaptionNode();return t!==null?t.getText():null}},{key:"getCaptionNode",value:function e(){return this.caption!==null?this.caption:this.getItem().getCaptionNode()}},{key:"setCaption",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)){this.caption=new u(i)}else if(i===null){this.caption=null}}},{key:"getCaptionOption",value:function e(i){if(!t.Type.isUndefined(this.captionOptions[i])){return this.captionOptions[i]}return this.getItem().getCaptionOption(i)}},{key:"setCaptionOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){this.captionOptions[i]=n}}},{key:"setCaptionOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEac
1h((e=>{this.setCaptionOption(e,i[e])}))}}},{key:"getAvatar",value:function e(){return this.avatar!==null?this.avatar:this.getItem().getAvatar()}},{key:"setAvatar",value:function e(i){if(t.Type.isString(i)||i===null){this.avatar=i}}},{key:"getAvatarOption",value:function e(i){return this.avatarOptions===null||t.Type.isUndefined(this.avatarOptions[i])?this.getItem().getAvatarOption(i):this.avatarOptions[i]}},{key:"setAvatarOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){if(this.avatarOptions===null){this.avatarOptions={}}this.avatarOptions[i]=n}}},{key:"setAvatarOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEach((e=>{this.setAvatarOption(e,i[e])}))}}},{key:"getTextColor",value:function e(){return this.textColor!==null?this.textColor:this.getItem().getTextColor()}},{key:"setTextColor",value:function e(i){if(t.Type.isString(i)||i===null){this.textColor=i}}},{key:"getLink",value:function e(){return this.link!==null?this.getItem().replaceMacros(this.link):this.getItem().getLink()}},{key:"setLink",value:function e(i){if(t.Type.isString(i)||i===null){this.link=i}}},{key:"getLinkTitle",value:function e(){const t=this.getLinkTitleNode();return t!==null?t.getText():null}},{key:"getLinkTitleNode",value:function e(){return this.linkTitle!==null?this.linkTitle:this.getItem().getLinkTitleNode()}},{key:"setLinkTitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)){this.linkTitle=new u(i)}else if(i===null){this.linkTitle=null}}},{key:"getBadges",value:function e(){return this.badges!==null?this.badges:this.getItem().getBadges()}},{key:"setBadges",value:function e(i){if(t.Type.isArray(i)){this.badges=[];i.forEach((e=>{this.badges.push(new c(e))}))}else if(i===null){this.badges=null}}},{key:"getBadgesOption",value:function e(i){if(!t.Type.isUndefined(this.badgesOptions[i])){return this.badgesOptions[i]}return this.getItem().getBadgesOption(i)}},{key:"setBadgesOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){this.badgesOptions[i]=n}}},{key:"setBadgesOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEac
1h((e=>{this.setBadgesOption(e,i[e])}))}}},{key:"getOuterContainer",value:function e(){return this.cache.remember("outer-container",(()=>{let e="";if(this.hasChildren()||this.isDynamic()){e+=" ui-selector-item-box-has-children";if(this.getDepthLevel()>=this.getTab().getItemMaxDepth()){e+=" ui-selector-item-box-max-depth"}}else if(this.getItem().isLocked()){e+=" ui-selector-item-box-locked"}else if(this.getItem().isSelected()){e+=" ui-selector-item-box-selected"}if(this.isOpen()){e+=" ui-selector-item-box-open"}const t=document.createElement("div");t.className=`ui-selector-item-box${e}`;t.appendChild(this.getContainer());t.appendChild(this.getChildrenContainer());return t}))}},{key:"getChildrenContainer",value:function e(){if(this.isRoot()&&this.getTab()){return this.getTab().getItemsContainer()}return this.cache.remember("children-container",(()=>{const e=document.createElement("div");e.className="ui-selector-item-children";return e}))}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>{const e=document.createElement("div");e.className="ui-selector-item --ui-hoverable";t.Event.bind(e,"click",this.handleClick.bind(this));t.Event.bind(e,"mouseenter",this.handleMouseEnter.bind(this));t.Event.bind(e,"mouseleave",this.handleMouseLeave.bind(this));e.appendChild(this.getAvatarContainer());e.appendChild(this.getTitlesContainer());e.appendChild(this.getIndicatorContainer());if(t.Type.isStringFilled(this.getLink())){e.appendChild(this.getLinkContainer())}return e}))}},{key:"getAvatarContainer",value:function e(){return this.cache.remember("avatar",(()=>{const e=document.createElement("div");e.className="ui-selector-item-avatar";return e}))}},{key:"getTitlesContainer",value:function e(){return this.cache.remember("titles",(()=>{const e=document.createElement("div");e.className="ui-selector-item-titles";e.appendChild(this.getSupertitleContainer());e.appendChild(this.getTitleBoxContainer());e.appendChild(this.getSubtitleContainer());return e}))}},{key:"getTitleBoxContainer",value:function e(){return this.cache.remember("title-box",(()=>{const e=document.createElement("div");e.className="ui-selector-item-title-box";e.appendChild(this.getTitleContainer());e.appendChild(this.getBadgeContainer());e.appendChild(this.getCaptionContainer());return e}))}},{key:"getTitleContainer",value:function e(){return this.cache.remember("title",(()=>{const e=document.createElement("div");e.className="ui-selector-item-title";return e}))}},{key:"getSubtitleContainer",value:function e(){return this.cache.remember("subtitle",(()=>{const e=document.createElement("div");e.className="ui-selector-item-subtitle";return e}))}},{key:"getSupertitleContainer",value:function e(){return this.cache.remember("supertitle",(()=>{const e=document.createElement("div");e.className="ui-selector-item-supertitle";return e}))}},{key:"getCaptionContainer",value:function e(){return this.cache.remember("caption",(()=>{const e=document.createElement("div");e.className="ui-selector-item-caption";return e}))}},{key:"getIndicatorContainer",value:function e(){return this.cache.remember("indicator",(()=>{const e=document.createElement("div");e.className="ui-selector-item-indicator ui-icon-set__scope";return e}))}},{key:"getBadgeContainer",value:function e(){return this.cache.remember("badge",(()=>{const e=document.createElement("div");e.className="ui-selector-item-badges";return e}))}},{key:"getLinkContainer",value:function e(){return this.cache.remember("link",(()=>{const e=document.createElement("a");e.className="ui-selector-item-link";e.href=this.getLink();e.target="_blank";e.title="";t.Event.bind(e,"click",this.handleLinkClick.bind(this));e.appendChild(this.getLinkTextContainer());return e}))}},{key:"getLinkTextContainer",value:function e(){return this.cache.remember("link-text",(()=>{const e=document.createElement("span");e.className="ui-selector-item-link-text";return e}))}},{key:"showLink",value:function e(){if(t.Type.isStringFilled(this.getLink())){t.Dom.addClass(this.getLinkContainer(),"ui-selector-item-link--show");requestAnimationFrame((()=>{requestAnimationFrame((()=>{t.Dom.addClass(this.getLinkContainer(),"ui-selector-item-link--animate")}))}))}}},{key:"hideLink",value:function e(){if(t.Type.isStringFilled(this.getLink())){t.Dom.removeClass(this.getLinkContainer(),["ui-selector-item-link--show","ui-selector-item-link--animate"])}}},{key:"setHighlights",value:function e(t){this.highlights=t}},{key:"getHighlights",value:function e(){return this.highlights}},{key:"highlight",value:function e(){this.getHighlights().forEac
1h((e=>{const t=e.getField();const i=t.getName();if(t.isCustom()){const t=this.getItem().getCustomData().get(i);this.getSubtitleContainer().innerHTML=h.mark(t,e.getMatches())}else if(t.getName()==="title"){this.getTitleContainer().innerHTML=h.mark(this.getItem().getTitleNode(),e.getMatches())}else if(t.getName()==="subtitle"){this.getSubtitleContainer().innerHTML=h.mark(this.getItem().getSubtitleNode(),e.getMatches())}else if(t.getName()==="supertitle"){this.getSupertitleContainer().innerHTML=h.mark(this.getItem().getSupertitleNode(),e.getMatches())}else if(t.getName()==="caption"){this.getCaptionContainer().innerHTML=h.mark(this.getItem().getCaptionNode(),e.getMatches())}}))}},{key:"select",value:function e(){if(this.hasChildren()||this.isDynamic()){return}t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-selected")}},{key:"deselect",value:function e(){if(this.hasChildren()||this.isDynamic()){return}t.Dom.removeClass(this.getOuterContainer(),"ui-selector-item-box-selected")}},{key:"focus",value:function e(){if(this.isFocused()){return}this.focused=true;t.Dom.addClass(this.getOuterContainer(),"ui-selector-item-box-focused");this.getDialog().emit("ItemNode:onFocus",{node:this})}},{key:"unfocus",value:function e(){if(!this.isFocused()){return}this.focused=false;t.Dom.removeClass(this.getOuterContainer(),"ui-selector-item-box-focused");this.getDialog().emit("ItemNode:onUnfocus",{node:this})}},{key:"isFocused",value:function e(){return this.focused}},{key:"click",value:function e(){if(this.hasChildren()||this.isDynamic()){if(this.isOpen()){this.collapse()}else{this.expand()}}else if(this.getItem().isSelected()){if(this.getItem().isDeselectable()){this.getItem().deselect({node:this})}if(!this.getItem().isSelected()&&this.getDialog().shouldHideOnDeselect()){this.getDialog().hide()}}else{this.getItem().select({node:this});if(this.getDialog().shouldClearSearchOnSelect()){this.getDialog().clearSearch()}if(this.getItem().isSelected()&&this.getDialog().shouldHideOnSelect()){this.getDialog().hide()}}this.getDialog().focusSearch()}},{key:"scrollIntoView",value:function e(){const i=this.getTab().getContainer();const n=this.getContainer();const s=t.Dom.getPosition(i);const r=t.Dom.getPosition(n);const o=9;if(r.top<s.top){i.scrollTop-=s.top-r.top+o}else if(r.bottom>s.bottom){i.scrollTop+=r.bottom-s.bottom+o}}},{key:"handleClick",value:function e(){this.click()}},{key:"handleLinkClick",value:function e(t){this.getDialog().emit("ItemNode:onLinkClick",{node:this,event:t});t.stopPropagation()}},{key:"handleMouseEnter",value:function e(){this.focus();this.showLink();S(x,this,D).call(this)}},{key:"handleMouseLeave",value:function e(){this.unfocus();this.hideLink()}}])}();T=H;function I(e){if(t.Type.isBoolean(e)&&!this.isRoot()){this.hidden=e}}function D(){var e;if(S(T,e=this.constructor,P).call(e,this.getTitleContainer())){var i;this.getContainer().setAttribute("title",S(T,i=this.constructor,E).call(i,this.getTitleContainer().textContent))}else{t.Dom.attr(this.getContainer(),"title",null)}const n=[this.getSupertitleContainer(),this.getSubtitleContainer(),this.getCaptionContainer(),...this.getBadges().map((e=>e.getContainer(this.getBadgeContainer())))];n.forEach((e=>{var i;if(S(T,i=this.constructor,P).call(i,e)){var n;e.setAttribute("title",S(T,n=this.constructor,E).call(n,e.textContent))}else{t.Dom.attr(e,"title",null)}}))}function P(e){return e.offsetWidth<e.scrollWidth}function E(e){return e.replace(/[\t ]+/gm," ").replace(/\n+/gm,"\n").trim()}let A=function(){function e(t,i=[]){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"field",null);babelHelpers.defineProperty(this,"indexes",[]);this.field=t;this.addIndexes(i)}return babelHelpers.createClass(e,[{key:"getField",value:function e(){return this.field}},{key:"getIndexes",value:function e(){return this.indexes}},{key:"addIndex",value:function e(t){this.getIndexes().push(t)}},{key:"addIndexes",value:function e(t){t.forEach((e=>{this.addIndex(e)}))}}])}();let w=function(){function e(t,i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"word","");babelHelpers.defineProperty(this,"startIndex",0);this.setWord(t);this.setStartIndex(i)}return babelHelpers.createClass(e,[{key:"getWord",value:function e(){return this.word}},{key:"setWord",value:function e(i){if(t.Type.isStringFilled(i)){this.word=i}return this}},{key:"getStartIndex",value:function e(){return this.startIndex}},{key:"setStartIndex",value:function e(i){if(t.Type.isNumber(i)&&i>=0){this.startIndex=i}return this}}])}();
2/**
3	 * @license
4	 * Lodash <https://lodash.com/>
5	 * Copyright OpenJS Foundation and other contributors <https://
5openjsf.org/>
6	 * Released under MIT license <https://lodash.com/license>
7	 * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
8	 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
9	 */const B="\\ud800-\\udfff";const L="\\u0300-\\u036f";const N="\\ufe20-\\ufe2f";const F="\\u20d0-\\u20ff";const R="\\u1ab0-\\u1aff";const M="\\u1dc0-\\u1dff";const j=L+N+F+R+M;const $="\\u2700-\\u27bf";const W="a-z\\xdf-\\xf6\\xf8-\\xff";const U="\\xac\\xb1\\xd7\\xf7";const _="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf";const V="\\u2000-\\u206f";const z=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000";const q="A-Z\\xc0-\\xd6\\xd8-\\xde";const Q="\\ufe0e\\ufe0f";const G=U+_+V+z;const X="['\u2019]";const J=`[${G}]`;const K=`[${j}]`;const Z="\\d";const Y=`[${$}]`;const ee=`[${W}]`;const te=`[^${B}${G+Z+$+W+q}]`;const ie="\\ud83c[\\udffb-\\udfff]";const ne=`(?:${K}|${ie})`;const se=`[^${B}]`;const re="(?:\\ud83c[\\udde6-\\uddff]){2}";const oe="[\\ud800-\\udbff][\\udc00-\\udfff]";const le=`[${q}]`;const ae="\\u200d";const ue=`(?:${ee}|${te})`;const he=`(?:${le}|${te})`;const ce=`(?:${X}(?:d|ll|m|re|s|t|ve))?`;const de=`(?:${X}(?:D|LL|M|RE|S|T|VE))?`;const ge=`${ne}?`;const fe=`[${Q}]?`;const pe=`(?:${ae}(?:${[se,re,oe].join("|")})${fe+ge})*`;const ye="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])";const be="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])";const ve=fe+ge+pe;const me=`(?:${[Y,re,oe].join("|")})${ve}`;const Te=new RegExp([`${le}?${ee}+${ce}(?=${[J,le,"$"].join("|")})`,`${he}+${de}(?=${[J,le+ue,"$"].join("|")})`,`${le}?${ue}+${ce}`,`${le}+${de}`,be,ye,`${Z}+`,me].join("|"),"g");const ke=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;const Ce=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;const Se=/[^\s]+/g;const Oe=`!"#$%&'()*+,-./:;<=>?@[\\]^_\`{|}`;const xe=new RegExp(`[${Oe}]`);let He=function(){function e(){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"indexes",[])}return babelHelpers.createClass(e,[{key:"addIndex",value:function e(i){if(t.Type.isObject(i)){this.getIndexes().push(i)}}},{key:"getIndexes",value:function e(){return this.indexes}}],[{key:"create",value:function i(n){const s=new e;const r=n.getEntity();if(!n.isSearchable()||!r.isSearchable()||n.isHidden()){return s}const o=r.getSearchFields();o.forEach((e=>{if(!e.isSearchable()){return}if(e.isSystem()){if(e.getName()==="title"){const t=n.getTitleNode();const i=t!==null&&t.getType()==="html";s.addIndex(this.createIndex(e,n.getTitle(),i))}else if(e.getName()==="subtitle"){const t=n.getSubtitleNode();const i=t!==null&&t.getType()==="html";s.addIndex(this.createIndex(e,n.getSubtitle(),i))}else if(e.getName()==="supertitle"){const t=n.getSupertitleNode();const i=t!==null&&t.getType()==="html";s.addIndex(this.createIndex(e,n.getSupertitle(),i))}else if(e.getName()==="caption"){const t=n.getCaptionNode();const i=t!==null&&t.getType()==="html";s.addIndex(this.createIndex(e,n.getCaption(),i))}}else{const i=n.getCustomData().get(e.getName());if(!t.Type.isUndefined(i)){s.addIndex(this.createIndex(e,i))}}}));return s}},{key:"createIndex",value:function e(i,n,s=false){if(!t.Type.isStringFilled(n)){return null}if(s){n=n.replace(/<\/?[^>]+>/g,(e=>" ".repeat(e.length)));n=n.replace(/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,(e=>" ".repeat(e.length)))}let r=null;if(i.getType()==="string"){const e=this.splitText(n);if(t.Type.isArrayFilled(e)){this.fillComplexWords(e);this.fillNonCharWords(e,n);r=new A(i,e)}}else if(i.getType()==="email"){const e=n.indexOf("@");if(e!==-1){r=new A(i,[new w(n.toLowerCase(),0),new w(n.substr(e+1).toLowerCase(),e+1)])}}return r}},{key:"splitText",value:function e(i){if(!t.Type.isStringFilled(i)){return[]}return this.hasUnicodeWord(i)?this.splitUnicodeText(i):this.splitAsciiText(i)}},{key:"splitUnicodeText",value:function e(t){return this.splitTextInternal(t,Te)}},{key:"splitAsciiText",value:function e(t){return this.splitTextInternal(t,ke)}},{key:"hasUnicodeWord",value:function e(t){return Ce.test(t)}},{key:"splitTextInternal",value:function e(t,i){let n;const s=[];i.lastIndex=0;while((n=i.exec(t))!==null){if(n.index===i.lastIndex){i.lastIndex++}s.push(new w(n[0].toLowerCase(),n.index))}return s}},{key:"fillComplexWords",value:function e(t){if(t.length<2){return}let i=null;let n=null;t.forEach(((e,s)=>{const r=t[s+1];if(r){const s=e.getStartIndex()+e.getWord().length===r.getStartIndex();if(s){if(i===null){i=e.getWord();n=e.getStartIndex()}i+=r.getWord()}else if(i!==null){t.push(new w(i,n));i=null;n=null}}else if(i!==null){t.push(new w(i,n));i=null;n=null}}))}},{key:"fillNonCharWords",value:function e(t,i){if(!xe.test(i)){return}let n;while((n=Se.exec(i))!==null){if(n.index===Se.lastIndex){Se.lastIndex++}const e=n[0];if(xe.test(e)){t.push(new w(e.toLowerCase(),n.index));for(let i=0;i<e.length;i++){const s=e[i];if(!Oe.includes(s)){break}const r=e.substr(i+1);if(r.length){t.push(new w(r.toLowerCase(),n.index+i+1))}}}}Se.lastIndex=0}}])}();let Ie=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"id",null);babelHelpers.defineProperty(this,"options",{});const n=t.Type.isPlainObject(i)?i:{};this.id=n.id;this.options=n.options}return babelHelpers.createClass(e,[{key:"getId",value:function e(){return this.id}},{key:"getOptions",value:function e(){return this.options}},{key:"toJSON",value:function e(){return{id:this.getId(),options:this.getOptions()}}}])}();let De=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"id",null);babelHelpers.defineProperty(this,"options",{});babelHelpers.defineProperty(this,"searchable",true);babelHelpers.defineProperty(this,"searchFields",null);babelHelpers.defineProperty(this,"dynamicLoad",false);babelHelpers.defineProperty(this,"dynamicSearch",false);babelHelpers.defineProperty(this,"dynamicSearchMatchMode","exact");babelHelpers.defineProperty(this,"substituteEntityId",null);babelHelpers.defineProperty(this,"fillRecentItems",true);babelHelpers.defineProperty(this,"searchCacheLimits",[]);babelHelpers.defineProperty(this,"filters",new Map);babelHelpers.defineProperty(this,"itemOptions",{});babelHelpers.defineProperty(this,"tagOptions",{});babelHelpers.defineProperty(this,"badgeOptions",[]);babelHelpers.defineProperty(this,"textNodes",new Map);let n=t.Type.isPlainObject(i)?i:{};if(!t.Type.isStringFilled(n.id)){throw new Error('EntitySelector.Entity: "id" parameter is required.')}const s=this.constructor.getEntityDefaultOptions(n.id)||{};n=t.Runtime.merge(JSON.parse(JSON.stringify(s)),n);this.id=n.id.toLowerCase();this.options=t.Type.isPlainObject(n.options)?n.options:{};this.itemOptions=t.Type.isPlainObject(n.itemOptions)?n.itemOptions:{};this.tagOptions=t.Type.isPlainObject(n.tagOptions)?n.tagOptions:{};this.badgeOptions=t.Type.isArray(n.badgeOptions)?n.badgeOptions:[];this.substituteEntityId=t.Type.isStringFilled(n.substituteEntityId)?n.substituteEntityId:null;this.fillRecentItems=t.Type.isBoolean(n.fillRecentItems)?n.fillRecentItems:true;
9if(t.Type.isArray(n.filters)){n.filters.forEach((e=>{this.addFilter(e)}))}this.searchFields=new r.OrderedArray(((e,t)=>{if(e.getSort()!==null&&t.getSort()===null){return-1}else if(e.getSort()===null&&t.getSort()!==null){return 1}else if(e.getSort()===null&&t.getSort()===null){return-1}else{return e.getSort()-t.getSort()}}));this.setSearchable(n.searchable);this.setDynamicLoad(n.dynamicLoad);this.setDynamicSearch(n.dynamicSearch);this.setDynamicSearchMatchMode(n.dynamicSearchMatchMode);this.setSearchFields(n.searchFields);this.setSearchCacheLimits(n.searchCacheLimits)}return babelHelpers.createClass(e,[{key:"getId",value:function e(){return this.id}},{key:"getOptions",value:function e(){return this.options}},{key:"getItemOptions",value:function e(){return this.itemOptions}},{key:"getItemOption",value:function e(t,i){return this.constructor.getOptionInternal(this.itemOptions,t,i)}},{key:"getTagOptions",value:function e(){return this.tagOptions}},{key:"getTagOption",value:function e(t,i){return this.constructor.getOptionInternal(this.tagOptions,t,i)}},{key:"getBadges",value:function e(i){const n=this.getItemOption("badges",i.getEntityType())||[];const s=[...n];this.badgeOptions.forEach((e=>{if(t.Type.isPlainObject(e.conditions)){for(const t in e.conditions){if(i.getCustomData().get(t)!==e.conditions[t]){return}}s.push(e)}}));return s}},{key:"getOptionTextNode",value:function e(i,n){if(!t.Type.isString(i)){return null}if(!t.Type.isString(n)){n="default"}let s=this.textNodes.get(i);let r=s?s.get(n):undefined;if(t.Type.isUndefined(r)){if(!s){s=new Map;this.textNodes.set(i,s)}const e=this.getItemOption(i,n);r=t.Type.isString(e)||t.Type.isPlainObject(e)?new u(e):null;s.set(n,r)}return r}},{key:"isSearchable",value:function e(){return this.searchable}},{key:"setSearchable",value:function e(i){if(t.Type.isBoolean(i)){this.searchable=i}}},{key:"getSearchFields",value:function e(){return this.searchFields}},{key:"setSearchFields",value:function e(i){this.searchFields.clear();const n=new d({name:"title",searchable:true,system:true,type:"string"});const s=new d({name:"subtitle",searchable:true,system:true,type:"string"});this.searchFields.add(n);this.searchFields.add(s);const r=t.Type.isArray(i)?i:[];r.forEach((e=>{const t=new d(e);if(t.isSystem()){if(t.getName()==="title"){this.searchFields.delete(n)}else if(t.getName()==="subtitle"){this.searchFields.delete(s)}}this.searchFields.add(t)}));this.searchFields.forEach(((e,t)=>{e.setSort(t)}))}},{key:"setSearchCacheLimits",value:function e(i){if(t.Type.isArrayFilled(i)){i.forEach((e=>{if(t.Type.isStringFilled(e)){this.searchCacheLimits.push(new RegExp(e,"i"))}}))}}},{key:"getSearchCacheLimits",value:function e(){return this.searchCacheLimits}},{key:"hasDynamicLoad",value:function e(){return this.dynamicLoad}},{key:"setDynamicLoad",value:function e(i){if(t.Type.isBoolean(i)){this.dynamicLoad=i}}},{key:"hasDynamicSearch",value:function e(){return this.dynamicSearch}},{key:"setDynamicSearch",value:function e(i){if(t.Type.isBoolean(i)){this.dynamicSearch=i}}},{key:"setDynamicSearchMatchMode",value:function e(t){if(t==="all"||t==="exact"){this.dynamicSearchMatchMode=t}}},{key:"getDynamicSearchMatchMode",value:function e(){return this.dynamicSearchMatchMode}},{key:"getFilters",value:function e(){return Array.from(this.filters.values())}},{key:"addFilters",value:function e(i){if(t.Type.isArray(i)){i.forEach((e=>{this.addFilter(e)}))}}},{key:"addFilter",value:function e(i){if(t.Type.isPlainObject(i)){const e=new Ie(i);this.filters.set(e.getId(),e)}}},{key:"getFilter",value:function e(t){return this.filters.get(t)||null}},{key:"getSubstituteEntityId",value:function e(){return this.substituteEntityId}},{key:"shouldFillRecentItems",value:function e(){return this.fillRecentItems}},{key:"toJSON",value:function e(){return{id:this.getId(),options:this.getOptions(),searchable:this.isSearchable(),dynamicLoad:this.hasDynamicLoad(),dynamicSearch:this.hasDynamicSearch(),filters:this.getFilters(),substituteEntityId:this.getSubstituteEntityId(),fillRecentItems:this.shouldFillRecentItems()}}}],[{key:"getDefaultOptions",value:function e(){if(this.defaultOptions===null){this.defaultOptions={};
9this.getExtensions().forEach((e=>{const i=t.Extension.getSettings(e);const n=i.get("entities",[]);n.forEach((e=>{if(t.Type.isStringFilled(e.id)&&t.Type.isPlainObject(e.options)){this.defaultOptions[e.id]=JSON.parse(JSON.stringify(e.options))}}))}))}return this.defaultOptions}},{key:"getExtensions",value:function e(){if(this.extensions===null){const e=t.Extension.getSettings("ui.entity-selector");this.extensions=e.get("extensions",[])}return this.extensions}},{key:"getEntityDefaultOptions",value:function e(t){return this.getDefaultOptions()[t]||null}},{key:"getItemOptions",value:function e(i,n){if(!t.Type.isStringFilled(i)){return null}const s=this.getEntityDefaultOptions(i);const r=s&&s["itemOptions"]?s["itemOptions"]:null;if(t.Type.isUndefined(n)){return r}else{return r&&!t.Type.isUndefined(r[n])?r[n]:null}}},{key:"getTagOptions",value:function e(i,n){if(!t.Type.isStringFilled(i)){return null}const s=this.getEntityDefaultOptions(i);const r=s&&s["tagOptions"]?s["tagOptions"]:null;if(t.Type.isUndefined(n)){return r}else{return r&&!t.Type.isUndefined(r[n])?r[n]:null}}},{key:"getItemOption",value:function e(t,i,n){return this.getOptionInternal(this.getItemOptions(t),i,n)}},{key:"getTagOption",value:function e(t,i,n){return this.getOptionInternal(this.getTagOptions(t),i,n)}},{key:"getOptionInternal",value:function e(i,n,s){if(!t.Type.isPlainObject(i)){return null}if(i[s]&&!t.Type.isUndefined(i[s][n])){return i[s][n]}else if(i["default"]&&!t.Type.isUndefined(i["default"][n])){return i["default"][n]}return null}}])}();babelHelpers.defineProperty(De,"extensions",null);babelHelpers.defineProperty(De,"defaultOptions",null);let Pe=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"createMapFromOptions",value:function e(i){if(t.Type.isPlainObject(i)){return new Map(Object.entries(i))}const n=new Map;if(t.Type.isArrayFilled(i)){i.forEach((e=>{if(t.Type.isArray(e)&&e.length===2&&t.Type.isString(e[0])){n.set(e[0],e[1])}}))}return n}},{key:"convertMapToObject",value:function e(i){const n={};if(t.Type.isMap(i)){i.forEach(((e,i)=>{if(t.Type.isString(i)){n[i]=e}}))}return n}}])}();function Ee(e,t){Ae(e,t),t.add(e)}function Ae(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function we(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i;throw new TypeError("Private element is not present on this object")}var Be=new WeakSet;let Le=function(){function e(i){babelHelpers.classCallCheck(this,e);Ee(this,Be);babelHelpers.defineProperty(this,"id",null);babelHelpers.defineProperty(this,"entityId",null);babelHelpers.defineProperty(this,"entityType",null);babelHelpers.defineProperty(this,"title",null);babelHelpers.defineProperty(this,"subtitle",null);babelHelpers.defineProperty(this,"supertitle",null);babelHelpers.defineProperty(this,"caption",null);babelHelpers.defineProperty(this,"captionOptions",{});babelHelpers.defineProperty(this,"avatar",null);babelHelpers.defineProperty(this,"avatarOptions",null);babelHelpers.defineProperty(this,"textColor",null);babelHelpers.defineProperty(this,"link",null);babelHelpers.defineProperty(this,"linkTitle",null);babelHelpers.defineProperty(this,"tagOptions",null);babelHelpers.defineProperty(this,"badges",null);babelHelpers.defineProperty(this,"badgesOptions",{});babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"nodes",new Set);
9babelHelpers.defineProperty(this,"selected",false);babelHelpers.defineProperty(this,"searchable",true);babelHelpers.defineProperty(this,"saveable",true);babelHelpers.defineProperty(this,"deselectable",true);babelHelpers.defineProperty(this,"hidden",false);babelHelpers.defineProperty(this,"locked",false);babelHelpers.defineProperty(this,"searchIndex",null);babelHelpers.defineProperty(this,"customData",null);babelHelpers.defineProperty(this,"sort",null);babelHelpers.defineProperty(this,"contextSort",null);babelHelpers.defineProperty(this,"globalSort",null);const n=t.Type.isPlainObject(i)?i:{};if(!t.Type.isStringFilled(n.id)&&!t.Type.isNumber(n.id)){throw new Error('EntitySelector.Item: "id" parameter is required.')}if(!t.Type.isStringFilled(n.entityId)){throw new Error('EntitySelector.Item: "entityId" parameter is required.')}this.id=n.id;this.entityId=n.entityId.toLowerCase();this.entityType=t.Type.isStringFilled(n.entityType)?n.entityType:"default";this.locked=t.Type.isBoolean(n.locked)?n.locked:false;this.selected=t.Type.isBoolean(n.selected)&&!this.locked?n.selected:false;this.customData=Pe.createMapFromOptions(n.customData);this.tagOptions=Pe.createMapFromOptions(n.tagOptions);this.setTitle(n.title);this.setSubtitle(n.subtitle);this.setSupertitle(n.supertitle);this.setCaption(n.caption);this.setCaptionOptions(n.captionOptions);this.setAvatar(n.avatar);this.setAvatarOptions(n.avatarOptions);this.setTextColor(n.textColor);this.setLink(n.link);this.setLinkTitle(n.linkTitle);this.setBadges(n.badges);this.setBadgesOptions(n.badgesOptions);this.setSearchable(n.searchable);this.setSaveable(n.saveable);this.setDeselectable(n.deselectable);this.setHidden(n.hidden);this.setContextSort(n.contextSort);this.setGlobalSort(n.globalSort);this.setSort(n.sort)}return babelHelpers.createClass(e,[{key:"getId",value:function e(){return this.id}},{key:"getEntityId",value:function e(){return this.entityId}},{key:"getEntity",value:function e(){let t=this.getDialog().getEntity(this.getEntityId());if(t===null){t=new De({id:this.getEntityId()});this.getDialog().addEntity(t)}return t}},{key:"getEntityType",value:function e(){return this.entityType}},{key:"getTitle",value:function e(){const t=this.getTitleNode();return t!==null&&!t.isNullable()?t.getText():""}},{key:"getTitleNode",value:function e(){return this.title}},{key:"setTitle",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isPlainObject(i)||i===null){this.title=i===null?null:new u(i);this.resetSearchIndex();we(Be,this,Ne).call(this)}}},{key:"getSubtitle",value:function e(){const t=this.getSubtitleNode();return t!==null?t.getText():null}},{key:"getSubtitleNode",value:function e(){return this.subtitle!==null?this.subtitle:this.getEntityTextNode("subtitle")}},{key:"setSubtitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)||i===null){this.subtitle=i===null?null:new u(i);this.resetSearchIndex();we(Be,this,Ne).call(this)}}},{key:"getSupertitle",value:function e(){const t=this.getSupertitleNode();return t!==null?t.getText():null}},{key:"getSupertitleNode",value:function e(){return this.supertitle!==null?this.supertitle:this.getEntityTextNode("supertitle")}},{key:"setSupertitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)||i===null){this.supertitle=i===null?null:new u(i);this.resetSearchIndex();we(Be,this,Ne).call(this)}}},{key:"getCaption",value:function e(){const t=this.getCaptionNode();return t!==null?t.getText():null}},{key:"getCaptionNode",value:function e(){return this.caption!==null?this.caption:this.getEntityTextNode("caption")}},{key:"setCaption",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)||i===null){this.caption=i===null?null:new u(i);this.resetSearchIndex();we(Be,this,Ne).call(this)}}},{key:"getCaptionOption",value:function e(i){if(!t.Type.isUndefined(this.captionOptions[i])){return this.captionOptions[i]}const n=this.getEntityItemOption("captionOptions");if(t.Type.isPlainObject(n)&&!t.Type.isUndefined(n[i])){return n[i]}return null}},{key:"setCaptionOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){this.captionOptions[i]=n;we(Be,this,Ne).call(this)}}},{key:"setCaptionOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEac
9h((e=>{this.setCaptionOption(e,i[e])}))}}},{key:"getAvatar",value:function e(){return this.avatar!==null?this.avatar:this.getEntityItemOption("avatar")}},{key:"setAvatar",value:function e(i){if(t.Type.isString(i)||i===null){this.avatar=i;we(Be,this,Ne).call(this)}}},{key:"getAvatarOption",value:function e(i){if(this.avatarOptions!==null&&!t.Type.isUndefined(this.avatarOptions[i])){return this.avatarOptions[i]}const n=this.getEntityItemOption("avatarOptions");if(t.Type.isPlainObject(n)&&!t.Type.isUndefined(n[i])){return n[i]}return null}},{key:"setAvatarOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){if(this.avatarOptions===null){this.avatarOptions={}}this.avatarOptions[i]=n;we(Be,this,Ne).call(this)}}},{key:"setAvatarOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEach((e=>{this.setAvatarOption(e,i[e])}))}}},{key:"getTextColor",value:function e(){return this.textColor!==null?this.textColor:this.getEntityItemOption("textColor")}},{key:"setTextColor",value:function e(i){if(t.Type.isString(i)||i===null){this.textColor=i;we(Be,this,Ne).call(this)}}},{key:"getLink",value:function e(){const t=this.link!==null?this.link:this.getEntityItemOption("link");return this.replaceMacros(t)}},{key:"setLink",value:function e(i){if(t.Type.isString(i)||i===null){this.link=i;we(Be,this,Ne).call(this)}}},{key:"getLinkTitle",value:function e(){const i=this.getLinkTitleNode();return i!==null?i.getText():t.Loc.getMessage("UI_SELECTOR_ITEM_LINK_TITLE")}},{key:"getLinkTitleNode",value:function e(){return this.linkTitle!==null?this.linkTitle:this.getEntityTextNode("linkTitle")}},{key:"setLinkTitle",value:function e(i){if(t.Type.isString(i)||t.Type.isPlainObject(i)||i===null){this.linkTitle=i===null?null:new u(i);we(Be,this,Ne).call(this)}}},{key:"getBadges",value:function e(){if(this.badges!==null){return this.badges}const i=this.getEntity().getBadges(this);if(t.Type.isArray(i)){this.badges=[];i.forEach((e=>{this.badges.push(new c(e))}))}else{this.badges=[]}return this.badges}},{key:"setBadges",value:function e(i){if(t.Type.isArray(i)){this.badges=[];i.forEach((e=>{this.badges.push(new c(e))}));we(Be,this,Ne).call(this)}else if(i===null){this.badges=null;we(Be,this,Ne).call(this)}}},{key:"getBadgesOption",value:function e(i){if(!t.Type.isUndefined(this.badgesOptions[i])){return this.badgesOptions[i]}const n=this.getEntityItemOption("badgesOptions");if(t.Type.isPlainObject(n)&&!t.Type.isUndefined(n[i])){return n[i]}return null}},{key:"setBadgesOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){this.badgesOptions[i]=n;we(Be,this,Ne).call(this)}}},{key:"setBadgesOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEac
9h((e=>{this.setBadgesOption(e,i[e])}))}}},{key:"setDialog",value:function e(t){this.dialog=t}},{key:"getDialog",value:function e(){return this.dialog}},{key:"createNode",value:function e(t){const i=new H(this,t);this.nodes.add(i);return i}},{key:"removeNode",value:function e(t){this.nodes.delete(t)}},{key:"getNodes",value:function e(){return this.nodes}},{key:"select",value:function e(n={}){if(this.selected){return}const s=t.Type.isBoolean(n)?{emitEvents:!n,animate:!n}:n;const{emitEvents:r,animate:o,node:l}={emitEvents:true,animate:true,node:null,...s};const a=this.getDialog();if(a&&r){const e=new i.BaseEvent({data:{item:this,node:l}});a.emit("Item:onBeforeSelect",e);if(e.isDefaultPrevented()){return}}if(this.isLocked()){return}this.selected=true;if(a){a.handleItemSelect(this,o)}if(this.isRendered()){this.getNodes().forEach((e=>{e.select()}))}if(a&&r){a.emit("Item:onSelect",{item:this,node:l});a.saveRecentItem(this)}}},{key:"deselect",value:function e(n={}){if(!this.selected){return}const s=t.Type.isBoolean(n)?{emitEvents:!n,animate:!n}:n;const{emitEvents:r,animate:o,node:l}={emitEvents:true,animate:true,node:null,...s};const a=this.getDialog();if(a&&r){const e=new i.BaseEvent({data:{item:this,node:l}});a.emit("Item:onBeforeDeselect",e);if(e.isDefaultPrevented()){return}}this.selected=false;if(this.isRendered()){this.getNodes().forEach((e=>{e.deselect()}))}if(a){a.handleItemDeselect(this,o)}if(a&&r){a.emit("Item:onDeselect",{item:this,node:l})}}},{key:"isSelected",value:function e(){return this.selected}},{key:"setSearchable",value:function e(i){if(t.Type.isBoolean(i)){this.searchable=i}}},{key:"isSearchable",value:function e(){return this.searchable}},{key:"setSaveable",value:function e(i){if(t.Type.isBoolean(i)){this.saveable=i}}},{key:"isSaveable",value:function e(){return this.saveable}},{key:"setDeselectable",value:function e(i){if(t.Type.isBoolean(i)){this.deselectable=i;if(this.getDialog()&&this.getDialog().getTagSelector()){const e=this.getDialog().getTagSelector().getTag({id:this.getId(),entityId:this.getEntityId()});if(e){e.setDeselectable(i)}}}}},{key:"isDeselectable",value:function e(){return this.deselectable}},{key:"setHidden",value:function e(i){if(t.Type.isBoolean(i)){this.hidden=i;if(this.isRendered()){this.getNodes().forEach((e=>{e.setHidden(i)}))}}}},{key:"isHidden",value:function e(){return this.hidden}},{key:"lock",value:function e(){if(this.locked){return}const t=this.getDialog();if(t){const e=new i.BaseEvent({data:{item:this}});t.emit("Item:onBeforeLock",e);if(e.isDefaultPrevented()){return}}if(this.isSelected()){return}this.locked=true;if(this.isRendered()){this.getNodes().forEach((e=>{e.lock()}))}if(t){t.emit("Item:onLock",{item:this})}}},{key:"unlock",value:function e(){if(!this.locked){return}const t=this.getDialog();if(t){const e=new i.BaseEvent({data:{item:this}});t.emit("Item:onBeforeUnlock",e);if(e.isDefaultPrevented()){return}}this.locked=false;if(this.isRendered()){this.getNodes().forEach((e=>{e.unlock()}))}if(t){t.emit("Item:onUnlock",{item:this})}}},{key:"isLocked",value:function e(){return this.locked}},{key:"setContextSort",value:function e(i){if(t.Type.isNumber(i)||i===null){this.contextSort=i}}},{key:"getContextSort",value:function e(){return this.contextSort}},{key:"setGlobalSort",value:function e(i){if(t.Type.isNumber(i)||i===null){this.globalSort=i}}},{key:"getGlobalSort",value:function e(){return this.globalSort}},{key:"setSort",value:function e(i){if(t.Type.isNumber(i)||i===null){this.sort=i}}},{key:"getSort",value:function e(){return this.sort}},{key:"getSearchIndex",value:function e(){if(this.searchIndex===null){this.searchIndex=He.create(this)}return this.searchIndex}},{key:"resetSearchIndex",value:function e(){this.searchIndex=null}},{key:"getCustomData",value:function e(){return this.customData}},{key:"setCustomData",value:function e(i,n){if(t.Type.isNull(i)){this.customData=new Map;we(Be,this,Ne).call(this)}else if(t.Type.isPlainObject(i)){Object.entries(i).forEach((e=>{const[t,i]=e;this.customData.set(t,i)}));we(Be,this,Ne).call(this)}else if(t.Type.isString(i)){if(t.Type.isNull(n)){this.customData.delete(i);we(Be,this,Ne).call(this)}else if(!t.Type.isUndefined(n)){this.customData.set(i,n);we(Be,this,Ne).call(this)}}}},{key:"isRendered",value:function e(){return this.getDialog()&&this.getDialog().isRendered()}},{key:"getEntityItemOption",value:function e(t){return this.getEntity().getItemOption(t,this.getEntityType())}},{key:"getEntityTagOption",value:function e(t){return this.getEntity().getTagOption(t,this.getEntityType())}},{key:"getEntityTextNode",value:function e(t){return this.getEntity().getOptionTextNode(t,this.getEntityType())}},{key:"getTagOptions",value:function e(){return this.tagOptions}},{key:"getTagOption",value:function e(i){const n=this.getTagOptions().get(i);if(!t.Type.isUndefined(n)){return n}return null}},{key:"getTagGlobalOption",value:function e(i,n=false){if(!t.Type.isStringFilled(i)){return null}let s=this.getTagOption(i);if(s===null&&n===true&&this[i]!==null){s=this[i]}if(s===null&&this.getDialog().getTagSelector()){const e=`getTag${t.Text.toPascalCase(i)}`;if(t.Type.isFunction(this.getDialog().getTagSelector()[e])){s=this.getDialog().getTagSelector()[e]()}}if(s===null){s=this.getEntityTagOption(i)}if(s===null&&n===true){s=this.getEntityItemOption(i)}return s}},{key:"getTagBgColor",value:function e(){return this.getTagGlobalOption("bgColor")}},{key:"getTagTextColor",value:function e(){return this.getTagGlobalOption("textColor")}},{key:"getTagMaxWidth",value:function e(){return this.getTagGlobalOption("maxWidth")}},{key:"getTagFontWeight",value:function e(){return this.getTagGlobalOption("fontWeight")}},{key:"getTagAvatar",value:function e(){return this.getTagGlobalOption("avatar",true)}},{key:"getTagAvatarOptions",value:function e(){return this.getTagGlobalOption("avatarOptions",true)}},{key:"getTagLink",value:function e(){return this.replaceMacros(this.getTagGlobalOption("link",true))}},{key:"replaceMacros",value:function e(i){if(!t.Type.isStringFilled(i)){return i}return i.replace(/#id#/i,this.getId()).replace(/#element_id#/i,this.getId())}},{key:"createTag",value:function e(){return{id:this.getId(),entityId:this.getEntityId(),entityType:this.getEntityType(),title:this.getTagOption("title")||this.getTitleNode()&&this.getTitleNode().toJSON()||"",deselectable:this.isDeselectable(),avatar:this.getTagAvatar(),avatarOptions:this.getTagAvatarOptions(),link:this.getTagLink(),maxWidth:this.getTagMaxWidth(),textColor:this.getTagTextColor(),bgColor:this.getTagBgColor(),fontWeight:this.getTagFontWeight(),onclick:this.getTagOption("onclick")}}},{key:"getAjaxJson",value:function e(){return this.toJSON()}},{key:"toJSON",value:function e(){return{id:this.getId(),entityId:this.getEntityId(),entityType:this.getEntityType(),selected:this.isSelected(),deselectable:this.isDeselectable(),searchable:this.isSearchable(),saveable:this.isSaveable(),hidden:this.isHidden(),locked:this.isLocked(),title:this.getTitleNode(),link:this.getLink(),linkTitle:this.getLinkTitleNode(),subtitle:this.getSubtitleNode(),supertitle:this.getSupertitleNode(),caption:this.getCaptionNode(),avatar:this.getAvatar(),textColor:this.getTextColor(),sort:this.getSort(),contextSort:this.getContextSort(),globalSort:this.getGlobalSort(),customData:Pe.convertMapToObject(this.getCustomData()),tagOptions:Pe.convertMapToObject(this.getTagOptions()),badges:this.getBadges()}}}])}();
9function Ne(){if(this.isRendered()){this.getNodes().forEach((e=>{e.render()}))}}let Fe=function(){function e(i,n){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"tab",null);babelHelpers.defineProperty(this,"autoShow",true);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);babelHelpers.defineProperty(this,"content",null);this.options=t.Type.isPlainObject(n)?n:{};this.tab=i;this.autoShow=this.getOption("autoShow",true)}return babelHelpers.createClass(e,[{key:"render",value:function e(){throw new Error("You must implement render() method.")}},{key:"getTab",value:function e(){return this.tab}},{key:"getOuterContainer",value:function e(){return this.cache.remember("outer-container",(()=>t.Tag.render`
10				<div class="ui-selector-tab-stub">${this.render()}</div>
11			`))}},{key:"isAutoShow",value:function e(){return this.autoShow}},{key:"show",value:function e(){t.Dom.append(this.getOuterContainer(),this.getTab().getContainer())}},{key:"hide",value:function e(){t.Dom.remove(this.getOuterContainer())}},{key:"getOptions",value:function e(){return this.options}},{key:"getOption",value:function e(i,n){if(!t.Type.isUndefined(this.options[i])){return this.options[i]}else if(!t.Type.isUndefined(n)){return n}return null}}])}();function Re(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,Me()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function Me(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Me=function(){return!!e})()}let je=function(e){function i(e,t){var n;babelHelpers.classCallCheck(this,i);n=Re(this,i,[e,t]);babelHelpers.defineProperty(n,"content",null);return n}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>{const e=this.getOption("subtitle");const i=t.Type.isStringFilled(this.getOption("title"))?this.getOption("title"):this.getDefaultTitle();const n=this.getOption("icon")||this.getTab().getIcon("default");let s=35;if(t.Type.isNumber(this.getOption("iconOpacity"))){s=Math.min(100,Math.max(0,this.getOption("iconOpacity")))}const r=t.Type.isStringFilled(n)&&!o.Icon.isValid({icon:n})?`style="background-image: url('${m(n)}'); opacity: ${s/100};"`:"";const l=this.getOption("arrow",false)&&this.getTab().getDialog().getActiveFooter()!==null;return t.Tag.render`
12				<div class="ui-selector-tab-default-stub">
13					<div class="ui-selector-tab-default-stub-icon" ${r}></div>
14					<div class="ui-selector-tab-default-stub-titles">
15						<div class="ui-selector-tab-default-stub-title">${i}</div>
16						${e?t.Tag.render`<div class="ui-selector-tab-default-stub-subtitle">${e}</div>`:""}
17					</div>
18					${l?t.Tag.render`<div class="ui-selector-tab-default-stub-arrow"></div>`:""}
19				</div>
20			`}))}},{key:"getDefaultTitle",value:function e(){const i=this.getTab().getTitleNode();if(i===null){return t.Loc.getMessage("UI_SELECTOR_TAB_STUB_TITLE").replace(/#TAB_TITLE#/,"")}const n=t.Tag.render`<span class="ui-selector-tab-default-stub-title"></span>`;i.renderTo(n);return t.Loc.getMessage("UI_SELECTOR_TAB_STUB_TITLE").replace(/#TAB_TITLE#/,n.innerHTML)}},{key:"render",value:function e(){return this.getContainer()}}])}(Fe);let $e=function(){function e(i,n){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"tab",null);babelHelpers.defineProperty(this,"container",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);this.options=t.Type.isPlainObject(n)?n:{};if(i instanceof Mt){this.dialog=i}else{this.tab=i;this.dialog=this.tab.getDialog()}}return babelHelpers.createClass(e,[{key:"getDialog",value:function e(){return this.dialog}},{key:"getTab",value:function e(){return this.tab}},{key:"show",value:function e(){t.Dom.addClass(this.getContainer(),"ui-selector-header--show")}},{key:"hide",value:function e(){t.Dom.removeClass(this.getContainer(),"ui-selector-header--show")}},{key:"getOptions",value:function e(){return this.options}}
20,{key:"getOption",value:function e(i,n){if(!t.Type.isUndefined(this.options[i])){return this.options[i]}else if(!t.Type.isUndefined(n)){return n}return null}},{key:"getContainer",value:function e(){if(this.container===null){this.container=t.Tag.render`
21				<div class="ui-selector-header">${this.render()}</div>
22			`}return this.container}},{key:"render",value:function e(){throw new Error("You must implement render() method.")}}])}();let We=function(){function e(i,n){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"tab",null);babelHelpers.defineProperty(this,"container",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);this.options=t.Type.isPlainObject(n)?n:{};if(i instanceof Mt){this.dialog=i}else{this.tab=i;this.dialog=this.tab.getDialog()}}return babelHelpers.createClass(e,[{key:"getDialog",value:function e(){return this.dialog}},{key:"getTab",value:function e(){return this.tab}},{key:"show",value:function e(){t.Dom.addClass(this.getContainer(),"ui-selector-footer--show")}},{key:"hide",value:function e(){t.Dom.removeClass(this.getContainer(),"ui-selector-footer--show")}},{key:"getOptions",value:function e(){return this.options}},{key:"getOption",value:function e(i,n){if(!t.Type.isUndefined(this.options[i])){return this.options[i]}else if(!t.Type.isUndefined(n)){return n}return null}},{key:"getContainer",value:function e(){if(this.container===null){this.container=t.Tag.render`
23				<div class="ui-selector-footer">${this.render()}</div>
24			`}return this.container}},{key:"render",value:function e(){throw new Error("You must implement render() method.")}}])}();let Ue=function(){function e(i,n){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"id",null);babelHelpers.defineProperty(this,"title",null);babelHelpers.defineProperty(this,"rootNode",null);babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"stub",null);babelHelpers.defineProperty(this,"visible",true);babelHelpers.defineProperty(this,"rendered",false);babelHelpers.defineProperty(this,"locked",false);
24babelHelpers.defineProperty(this,"selected",false);babelHelpers.defineProperty(this,"hovered",false);babelHelpers.defineProperty(this,"icon",{});babelHelpers.defineProperty(this,"textColor",{});babelHelpers.defineProperty(this,"bgColor",{});babelHelpers.defineProperty(this,"itemMaxDepth",5);babelHelpers.defineProperty(this,"header",null);babelHelpers.defineProperty(this,"showDefaultHeader",true);babelHelpers.defineProperty(this,"footer",null);babelHelpers.defineProperty(this,"showDefaultFooter",true);babelHelpers.defineProperty(this,"showAvatars",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);const s=t.Type.isPlainObject(n)?n:{};if(!t.Type.isStringFilled(s.id)){throw new Error('EntitySelector.Tab: "id" parameter is required.')}this.setDialog(i);this.id=s.id;this.showDefaultHeader=s.showDefaultHeader!==false;this.showDefaultFooter=s.showDefaultFooter!==false;this.rootNode=new H(null,{itemOrder:s.itemOrder});this.rootNode.setTab(this);this.setVisible(s.visible);this.setTitle(s.title);this.setItemMaxDepth(s.itemMaxDepth);this.setIcon(s.icon??o.Outline.ARROW_RIGHT_L);this.setTextColor(s.textColor);this.setBgColor(s.bgColor);this.setStub(s.stub,s.stubOptions);this.setHeader(s.header,s.headerOptions);this.setFooter(s.footer,s.footerOptions);this.setShowAvatars(s.showAvatars)}return babelHelpers.createClass(e,[{key:"getId",value:function e(){return this.id}},{key:"setDialog",value:function e(t){this.dialog=t}},{key:"getDialog",value:function e(){return this.dialog}},{key:"getStub",value:function e(){return this.stub}},{key:"setStub",value:function e(i,n){let s=null;const r=t.Type.isPlainObject(n)?n:{};if(t.Type.isString(i)||t.Type.isFunction(i)){const e=t.Type.isString(i)?t.Reflection.getClass(i):i;if(t.Type.isFunction(e)){s=new e(this,r);if(!(s instanceof Fe)){console.error("EntitySelector: stub is not an instance of BaseStub.");s=null}}}if(!s&&i!==false){s=new je(this,r)}this.stub=s}},{key:"getHeader",value:function e(){return this.header}},{key:"setHeader",value:function e(i,n){let s=null;if(i!==null){s=Mt.createHeader(this,i,n);if(s===null){return}}if(this.isRendered()&&this.getHeader()!==null){t.Dom.remove(this.getHeader().getContainer());this.getDialog().adjustHeader()}this.header=s;if(this.isRendered()){this.getDialog().appendHeader(s);this.getDialog().adjustHeader()}}},{key:"canShowDefaultHeader",value:function e(){return this.showDefaultHeader}},{key:"enableDefaultHeader",value:function e(){this.showDefaultHeader=true;this.getDialog().adjustHeader()}},{key:"disableDefaultHeader",value:function e(){this.showDefaultHeader=false;this.getDialog().adjustHeader()}},{key:"getFooter",value:function e(){return this.footer}},{key:"setFooter",value:function e(i,n){let s=null;if(i!==null){s=Mt.createFooter(this,i,n);if(s===null){return}}if(this.isRendered()&&this.getFooter()!==null){t.Dom.remove(this.getFooter().getContainer());this.getDialog().adjustFooter()}this.footer=s;if(this.isRendered()){this.getDialog().appendFooter(s);this.getDialog().adjustFooter()}}},{key:"canShowDefaultFooter",value:function e(){return this.showDefaultFooter}},{key:"enableDefaultFooter",value:function e(){this.showDefaultFooter=true;this.getDialog().adjustFooter()}},{key:"disableDefaultFooter",value:function e(){this.showDefaultFooter=false;this.getDialog().adjustFooter()}},{key:"setShowAvatars",value:function e(i){if(t.Type.isBoolean(i)||i===null){this.showAvatars=i;if(this.isRendered()){this.renderContainer()}}}},{key:"shouldShowAvatars",value:function e(){return this.showAvatars??this.getDialog().shouldShowAvatars()}},{key:"getRootNode",value:function e(){return this.rootNode}},{key:"setTitle",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isPlainObject(i)||i===null){this.title=i===null?null:new u(i);if(this.isRendered()){this.renderLabel()}}}},{key:"getTitle",value:function e(){const t=this.getTitleNode();return t!==null&&!t.isNullable()?t.getText():""}},{key:"getTitleNode",value:function e(){return this.title}},{key:"setIcon",value:function e(t){return this.setProperty("icon",t)}},{key:"getIcon",value:function e(t){return this.getPropertyByState("icon",t)}},{key:"setBgColor",value:function e(t){return this.setProperty("bgColor",t)}},{key:"getBgColor",value:function e(t){return this.getPropertyByState("bgColor",t)}},{key:"setTextColor",value:function e(t){return this.setProperty("textColor",t)}},{key:"getTextColor",value:function e(t){return this.getPropertyByState("textColor",t)}},{key:"setProperty",value:function e(i,n){const s=this[i];if(!s){return}
24if(t.Type.isPlainObject(n)){Object.keys(n).forEach((e=>{if(t.Type.isStringFilled(n[e])){s[e]=n[e]}}))}else if(t.Type.isStringFilled(n)){s["default"]=n}}},{key:"getPropertyByState",value:function e(i,n){const s=this[i];const r=t.Type.isStringFilled(n)?n:"default";if(!t.Type.isUndefined(s)&&!t.Type.isUndefined(s[r])){return s[r]}return null}},{key:"getPropertyByCurrentState",value:function e(t){const i=this[t];if(this.isSelected()&&this.isHovered()&&i.selectedHovered){return i.selectedHovered}else if(this.isSelected()&&i.selected){return i.selected}else if(this.isHovered()&&i.hovered){return i.hovered}else if(i.default){return i.default}return null}},{key:"setItemMaxDepth",value:function e(i){if(t.Type.isNumber(i)&&i>0){this.itemMaxDepth=i}}},{key:"getItemMaxDepth",value:function e(){return this.itemMaxDepth}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>t.Tag.render`
25				<div class="ui-selector-tab-content">${this.getItemsContainer()}</div>
26			`))}},{key:"getLabelContainer",value:function e(){return this.cache.remember("label",(()=>{const e=this.isVisible()?"":" ui-selector-tab-label-hidden";return t.Tag.render`
27				<div
28					class="ui-selector-tab-label${e} --ui-hoverable"
29					onclick="${this.handleLabelClick.bind(this)}"
30					onmouseenter="${this.handleLabelMouseEnter.bind(this)}"
31					onmouseleave="${this.handleLabelMouseLeave.bind(this)}"
32				>
33					${this.getIconContainer()}
34					${this.getTitleContainer()}
35				</div>
36			`}))}},{key:"getIconContainer",value:function e(){return this.cache.remember("icon",(()=>t.Tag.render`
37				<div class="ui-selector-tab-icon"></div>
38			`))}},{key:"getTitleContainer",value:function e(){return this.cache.remember("title",(()=>t.Tag.render`
39				<div class="ui-selector-tab-title"></div>
40			`))}},{key:"getItemsContainer",value:function e(){return this.cache.remember("items",(()=>t.Tag.render`
41				<div class="ui-selector-items"></div>
42			`))}},{key:"render",value:function e(){this.getRootNode().render();this.rendered=true}},{key:"renderLabel",value:function e(){t.Dom.style(this.getTitleContainer(),"color",this.getPropertyByCurrentState("textColor"));t.Dom.style(this.getLabelContainer(),"background-color",this.getPropertyByCurrentState("bgColor"));const i=this.getPropertyByCurrentState("icon");t.Dom.clean(this.getIconContainer());try{t.Dom.append(new o.Icon({icon:i}).render(),this.getIconContainer());t.Dom.style(this.getIconContainer(),"mask-image","none");t.Dom.style(this.getIconContainer(),"background-color","transparent")}catch{t.Dom.style(this.getIconContainer(),"mask-image",i?`url('${m(i)}')`:null)}const n=this.getTitleNode();if(n){this.getTitleNode().renderTo(this.getTitleContainer())}else{this.getTitleContainer().textContent=""}}},{key:"renderContainer",value:function e(){const i="ui-selector-tab-content--hide-avatars";if(this.shouldShowAvatars()){t.Dom.removeClass(this.getContainer(),i)}else{t.Dom.addClass(this.getContainer(),i)}}},{key:"isVisible",value:function e(){return this.visible}},{key:"setVisible",value:function e(i){if(t.Type.isBoolean(i)){this.visible=i;if(this.isRendered()){if(this.visible){t.Dom.remove(this.getLabelContainer(),"ui-selector-tab-label-hidden")}else{t.Dom.addClass(this.getLabelContainer(),"ui-selector-tab-label-hidden")}}}}},{key:"isRendered",value:function e(){return this.rendered&&this.getDialog()&&this.getDialog().isRendered()}},{key:"select",value:function e(){if(this.isSelected()){return}t.Dom.addClass(this.getContainer(),"ui-selector-tab-content-active");if(this.isVisible()){t.Dom.addClass(this.getLabelContainer(),"ui-selector-tab-label-active");this.renderLabel()}this.selected=true;if(this.isVisible()){this.renderLabel()}if(this.getHeader()){this.getHeader().show()}if(this.getFooter()){this.getFooter().show()}this.getDialog().emit("Tab:onSelect",{tab:this})}},{key:"deselect",value:function e(){if(!this.isSelected()){return}t.Dom.removeClass(this.getContainer(),"ui-selector-tab-content-active");if(this.isVisible()){t.Dom.removeClass(this.getLabelContainer(),"ui-selector-tab-label-active")}this.selected=false;if(this.isVisible()){this.renderLabel()}if(this.getHeader()){this.getHeader().hide()}if(this.getFooter()){this.getFooter().hide()}this.getDialog().emit("Tab:onDeselect",{tab:this})}},{key:"hover",value:function e(){if(this.isHovered()){return}t.Dom.addClass(this.getLabelContainer(),"ui-selector-tab-label-hover");this.hovered=true;this.renderLabel()}},{key:"unhover",value:function e(){if(!this.isHovered()){return}t.Dom.removeClass(this.getLabelContainer(),"ui-selector-tab-label-hover");this.hovered=false;this.renderLabel()}},{key:"isSelected",value:function e(){return this.selected}},{key:"isHovered",value:function e(){return this.hovered}},{key:"lock",value:function e(){this.locked=true;t.Dom.addClass(this.getContainer(),"ui-selector-tab-content-locked")}},{key:"unlock",value:function e(){this.locked=false;t.Dom.removeClass(this.getContainer(),"ui-selector-tab-content-locked")}},{key:"isLocked",value:function e(){return this.locked}},{key:"handleLabelClick",value:function e(){this.getDialog().selectTab(this.getId())}},{key:"handleLabelMouseEnter",value:function e(){this.hover()}},{key:"handleLabelMouseLeave",value:function e(){this.unhover()}}])}();function _e(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,Ve()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function Ve(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Ve=function(){return!!e})()}function ze(e,t,i){qe(e,t),t.set(e,i)}function qe(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function Qe(e,t){return e.get(Xe(e,t))}function Ge(e,t,i){return e.set(Xe(e,t),i),i}function Xe(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i;throw new TypeError("Private element is not present on this object")}var Je=new WeakMap;let Ke=function(e){function i(...e){var t;babelHelpers.classCallCheck(this,i);t=_e(this,i,[...e]);ze(t,Je,void 0);return t}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"setEntityId",value:function e(i){if(t.Type.isStringFilled(i)){Ge(Je,this,i)}}},{key:"getEntityId",value:function e(){return Qe(Je,this)}}])}(t.BaseError);function Ze(e,t,i){Ye(e,t),t.set(e,i)}function Ye(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function et(e,t,i){return e.set(it(e,t),i),i}function tt(e,t){return e.get(it(e,t))}function it(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i;throw new TypeError("Private element is not present on this object")}var nt=new WeakMap;let st=function(){function e(){babelHelpers.classCallCheck(this,e);Ze(this,nt,[])}return babelHelpers.createClass(e,[{key:"getByEntityId",value:function e(t){return tt(nt,this).filter((e=>e.getEntityId()===t))}},{key:"add",value:function e(t){tt(nt,this).push(t)}},{key:"has",value:function e(t){return tt(nt,this).includes(t)}},{key:"clear",value:function e(){et(nt,this,[])}},{key:"getIndex",value:function e(t){return tt(nt,this).indexOf(t)}},{key:"getByIndex",value:function e(i){if(t.Type.isNumber(i)&&i>=0){const e=tt(nt,this)[i];return t.Type.isUndefined(e)?null:e}return null}},{key:Symbol.iterator,value:function(){return tt(nt,this)[Symbol.iterator]()}}],[{key:"create",value:function e(i){const n=new this;
42i.forEach((e=>{if(!t.Type.isStringFilled(e.entityId)){return}const i=new Ke;i.setEntityId(e.entityId);if(t.Type.isStringFilled(e.message)){i.setMessage(e.message)}if(!t.Type.isNil(e.code)){i.setCode(e.code)}if(t.Type.isArrayFilled(e.customData)){i.setCustomData(e.customData)}n.add(i)}));return n}}])}();function rt(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i;throw new TypeError("Private element is not present on this object")}let ot=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"id",null);babelHelpers.defineProperty(this,"entityId",null);babelHelpers.defineProperty(this,"entityType",null);babelHelpers.defineProperty(this,"title",null);babelHelpers.defineProperty(this,"avatar",null);babelHelpers.defineProperty(this,"avatarOptions",null);babelHelpers.defineProperty(this,"maxWidth",null);babelHelpers.defineProperty(this,"textColor",null);babelHelpers.defineProperty(this,"bgColor",null);babelHelpers.defineProperty(this,"fontWeight",null);babelHelpers.defineProperty(this,"link",null);babelHelpers.defineProperty(this,"onclick",null);babelHelpers.defineProperty(this,"clickable",null);babelHelpers.defineProperty(this,"deselectable",null);babelHelpers.defineProperty(this,"customData",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);babelHelpers.defineProperty(this,"selector",null);babelHelpers.defineProperty(this,"rendered",false);const n=t.Type.isPlainObject(i)?i:{};if(!t.Type.isStringFilled(n.id)&&!t.Type.isNumber(n.id)){throw new Error('TagSelector.TagItem: "id" parameter is required.')}if(!t.Type.isStringFilled(n.entityId)){throw new Error('TagSelector.TagItem: "entityId" parameter is required.')}this.id=n.id;this.entityId=n.entityId.toLowerCase();this.entityType=t.Type.isStringFilled(n.entityType)?n.entityType:"default";this.customData=Pe.createMapFromOptions(n.customData);this.onclick=t.Type.isFunction(n.onclick)?n.onclick:null;this.link=t.Type.isStringFilled(n.link)?n.link:null;this.setTitle(n.title);this.setDeselectable(n.deselectable);this.setAvatar(n.avatar);this.setAvatarOptions(n.avatarOptions);this.setMaxWidth(n.maxWidth);this.setTextColor(n.textColor);this.setBgColor(n.bgColor);this.setFontWeight(n.fontWeight);this.setClickable(n.clickable)}return babelHelpers.createClass(e,[{key:"getId",value:function e(){return this.id}},{key:"getEntityId",value:function e(){return this.entityId}},{key:"getEntityType",value:function e(){return this.entityType}},{key:"getSelector",value:function e(){return this.selector}},{key:"setSelector",value:function e(t){this.selector=t}},{key:"getTitle",value:function e(){return this.getTitleNode()&&!this.getTitleNode().isNullable()?this.getTitleNode().getText():""}},{key:"getTitleNode",value:function e(){return this.title}},{key:"setTitle",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isPlainObject(i)||i===null){this.title=i===null?null:new u(i)}}},{key:"getAvatar",value:function e(){if(this.avatar!==null){return this.avatar}if(this.getSelector().getTagAvatar()!==null){return this.getSelector().getTagAvatar()}if(this.getEntityTagOption("avatar")!==null){return this.getEntityTagOption("avatar")}return this.getEntityItemOption("avatar")}},{key:"setAvatar",value:function e(i){if(t.Type.isString(i)||i===null){this.avatar=i}}},{key:"getAvatarOption",value:function e(i){if(this.avatarOptions!==null&&!t.Type.isUndefined(this.avatarOptions[i])){return this.avatarOptions[i]}const n=this.getSelector().getTagAvatarOption(i);if(n!==null){return n[i]}const s=this.getEntityTagOption("avatarOptions");if(t.Type.isPlainObject(s)&&!t.Type.isUndefined(s[i])){return s[i]}const r=this.getEntityItemOption("avatarOptions");if(t.Type.isPlainObject(r)&&!t.Type.isUndefined(r[i])){return r[i]}return null}},{key:"setAvatarOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){if(this.avatarOptions===null){this.avatarOptions={}}this.avatarOptions[i]=n}}},{key:"setAvatarOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEac
42h((e=>{this.setAvatarOption(e,i[e])}))}}},{key:"getTextColor",value:function e(){if(this.textColor!==null){return this.textColor}if(this.getSelector().getTagTextColor()!==null){return this.getSelector().getTagTextColor()}return this.getEntityTagOption("textColor")}},{key:"setTextColor",value:function e(i){if(t.Type.isString(i)||i===null){this.textColor=i}}},{key:"getBgColor",value:function e(){if(this.bgColor!==null){return this.bgColor}if(this.getSelector().getTagBgColor()!==null){return this.getSelector().getTagBgColor()}return this.getEntityTagOption("bgColor")}},{key:"setBgColor",value:function e(i){if(t.Type.isString(i)||i===null){this.bgColor=i}}},{key:"getFontWeight",value:function e(){if(this.fontWeight!==null){return this.fontWeight}if(this.getSelector().getTagFontWeight()!==null){return this.getSelector().getTagFontWeight()}return this.getEntityTagOption("fontWeight")}},{key:"setFontWeight",value:function e(i){if(t.Type.isString(i)||i===null){this.fontWeight=i}}},{key:"getMaxWidth",value:function e(){if(this.maxWidth!==null){return this.maxWidth}if(this.getSelector().getTagMaxWidth()!==null){return this.getSelector().getTagMaxWidth()}return this.getEntityTagOption("maxWidth")}},{key:"setMaxWidth",value:function e(i){if(t.Type.isNumber(i)&&i>=0||i===null){this.maxWidth=i}}},{key:"setDeselectable",value:function e(i){if(t.Type.isBoolean(i)){this.deselectable=i;if(this.isRendered()){t.Dom.toggleClass(this.getContainer(),"ui-tag-selector-tag-readonly",!i)}}}},{key:"isDeselectable",value:function e(){return this.deselectable===null?this.getSelector().isDeselectable():this.deselectable}},{key:"getCustomData",value:function e(){return this.customData}},{key:"getLink",value:function e(){return this.link}},{key:"getOnclick",value:function e(){return this.onclick}},{key:"setClickable",value:function e(i){if(t.Type.isBoolean(i)){this.clickable=i}}},{key:"isClickable",value:function e(){if(this.clickable!==null){return this.clickable}if(this.getSelector().getTagClickable()!==null){return this.getSelector().getTagClickable()}if(this.getEntityTagOption("clickable")!==null){return this.getEntityTagOption("clickable")}if(this.getEntityItemOption("clickable")!==null){return this.getEntityItemOption("clickable")}return false}},{key:"render",value:function i(){const n=this.getTitleNode();if(n){var s;n.renderTo(this.getTitleContainer());const t=this.getTitleContainer().textContent;this.getContentContainer().setAttribute("title",rt(e,s=this.constructor,lt).call(s,t))}else{this.getTitleContainer().textContent="";t.Dom.attr(this.getContentContainer(),"title",null)}const r=this.getAvatar();const l=this.getAvatarOption("bgImage");if(t.Type.isStringFilled(r)){t.Dom.style(this.getAvatarContainer(),"background-image",`url('${m(r)}')`)}else{t.Dom.style(this.getAvatarContainer(),"background-image",l)}const a=this.getAvatarOption("bgColor");const u=this.getAvatarOption("bgSize");const h=this.getAvatarOption("border");const c=this.getAvatarOption("borderRadius");const d=this.getAvatarOption("outline");const g=this.getAvatarOption("outlineOffset");t.Dom.clean(this.getAvatarContainer());t.Dom.style(this.getAvatarContainer(),"background-color",a);t.Dom.style(this.getAvatarContainer(),"background-size",u);t.Dom.style(this.getAvatarContainer(),"border",h);t.Dom.style(this.getAvatarContainer(),"border-radius",c);t.Dom.style(this.getAvatarContainer(),"outline",d);t.Dom.style(this.getAvatarContainer(),"outline-offset",g);const f={icon:this.getAvatarOption("icon"),size:u??undefined,color:this.getAvatarOption("iconColor")??undefined};if(o.Icon.isValid(f)){t.Dom.style(this.getAvatarContainer(),"background-image","none");t.Dom.append(new o.Icon(f).render(),this.getAvatarContainer())}const p=r||a&&a!=="none"||l&&l!=="none"||o.Icon.isValid(f);if(p){t.Dom.addClass(this.getContainer(),"ui-tag-selector-tag--has-avatar")}else{t.Dom.removeClass(this.getContainer(),"ui-tag-selector-tag--has-avatar")}const y=this.getMaxWidth();if(y>0){t.Dom.style(this.getContainer(),"max-width",`${y}px`)}else{t.Dom.style(this.getContainer(),"max-width",null)}if(this.isDeselectable()){t.Dom.removeClass(this.getContainer(),"ui-tag-selector-tag-readonly")}else{t.Dom.addClass(this.getContainer(),"ui-tag-selector-tag-readonly")}t.Dom.style(this.getTitleContainer(),"color",this.getTextColor());t.Dom.style(this.getTitleContainer(),"font-weight",this.getFontWeight());t.Dom.style(this.getContainer(),"background-color",this.getBgColor());this.rendered=true}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>t.Tag.render`
43				<div class="ui-tag-selector-item ui-tag-selector-tag">
44					${this.getContentContainer()}
45					${this.getRemoveIcon()}
46				</div>
47			`))}},{key:"getContentContainer",value:function e(){return this.cache.remember("content-container",(()=>{if(t.Type.isStringFilled(this.getLink())){return t.Tag.render`
48					<a
49						class="ui-tag-selector-tag-content"
50						onclick="${this.handleContainerClick.bind(this)}"
51						href="${this.getLink()}"
52						target="_blank"
53					>
54						${this.getAvatarContainer()}
55						${this.getTitleContainer()}
56					</a>
57				`}const e=this.isClickable()||this.getOnclick()!==null?" ui-tag-selector-tag-content--clickable":"";return t.Tag.render`
58				<div
59					class="ui-tag-selector-tag-content${e}"
60					onclick="${this.handleContainerClick.bind(this)}"
61				>
62					${this.getAvatarContainer()}
63					${this.getTitleContainer()}
64				</div>
65			`}))}},{key:"getAvatarContainer",value:function e(){return this.cache.remember("avatar",(()=>t.Tag.render`
66				<div class="ui-tag-selector-tag-avatar"></div>
67			`))}},{key:"getTitleContainer",value:function e(){return this.cache.remember("title",(()=>t.Tag.render`
68				<div class="ui-tag-selector-tag-title"></div>
69			`))}},{key:"getRemoveIcon",value:function e(){return this.cache.remember("remove-icon",(()=>t.Tag.render`
70				<div
71					class="ui-tag-selector-tag-remove ui-icon-set__scope"
72					onclick="${this.handleRemoveIconClick.bind(this)}"
73					data-testid="ui-tag-selector-remove-item-button"
74					data-item-entity-id="${this.getEntityId()}"
75					data-item-id="${this.getId()}"
76				></div>
77			`))}},{key:"getEntityTagOption",value:function e(t){return De.getTagOption(this.getEntityId(),t,this.getEntityType())}},{key:"getEntityItemOption",value:function e(t){return De.getItemOption(this.getEntityId(),t,this.getEntityType())}},{key:"isRendered",value:function e(){return this.rendered&&this.getSelector()&&this.getSelector().isRendered()}},{key:"remove",value:function e(i=true){if(i===false){t.Dom.remove(this.getContainer());return Promise.resolve()}return new Promise((e=>{t.Dom.style(this.getContainer(),"width",`${this.getContainer().offsetWidth}px`);t.Dom.addClass(this.getContainer(),"ui-tag-selector-tag--remove");y.handleAnimationEnd(this.getContainer(),"ui-tag-selector-tag-remove").then((()=>{t.Dom.remove(this.getContainer());e()})).catch((()=>{}))}))}},{key:"show",value:function e(){return new Promise((e=>{t.Dom.addClass(this.getContainer(),"ui-tag-selector-tag--show");y.handleAnimationEnd(this.getContainer(),"ui-tag-selector-tag-show").then((()=>{t.Dom.removeClass(this.getContainer(),"ui-tag-selector-tag--show");e()})).catch((()=>{}))}))}},{key:"handleContainerClick",value:function e(){const i=this.getOnclick();if(t.Type.isFunction(i)){i(this)}const n=this.getSelector();n.emit("TagItem:onClick",{item:this})}},{key:"handleRemoveIconClick",value:function e(t){t.stopPropagation();if(this.isDeselectable()){this.getSelector().removeTag(this)}}}])}();function lt(e){return e.replaceAll(/[\t ]+/gm," ").replaceAll(/\n+/gm,"\n").trim()}function at(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,ut()?Reflect.construct(t,[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function ut(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ut=function(){return!!e})()}let ht=function(e){function n(e){var i;babelHelpers.classCallCheck(this,n);i=at(this,n);babelHelpers.defineProperty(i,"tags",[]);babelHelpers.defineProperty(i,"cache",new t.Cache.MemoryCache);babelHelpers.defineProperty(i,"multiple",true);babelHelpers.defineProperty(i,"readonly",false);babelHelpers.defineProperty(i,"locked",false);babelHelpers.defineProperty(i,"deselectable",true);babelHelpers.defineProperty(i,"addButtonCaption",null);babelHelpers.defineProperty(i,"addButtonCaptionMore",null);babelHelpers.defineProperty(i,"createButtonCaption",null);babelHelpers.defineProperty(i,"addButtonVisible",true);babelHelpers.defineProperty(i,"createButtonVisible",false);babelHelpers.defineProperty(i,"textBoxVisible",false);babelHelpers.defineProperty(i,"textBoxWidth",null);babelHelpers.defineProperty(i,"maxHeight",null);babelHelpers.defineProperty(i,"placeholder","");babelHelpers.defineProperty(i,"textBoxAutoHide",false);babelHelpers.defineProperty(i,"textBoxOldValue","");babelHelpers.defineProperty(i,"tagAvatar",null);babelHelpers.defineProperty(i,"tagAvatarOptions",null);babelHelpers.defineProperty(i,"tagTextColor",null);babelHelpers.defineProperty(i,"tagBgColor",null);babelHelpers.defineProperty(i,"tagFontWeight",null);babelHelpers.defineProperty(i,"tagMaxWidth",null);babelHelpers.defineProperty(i,"tagClickable",null);babelHelpers.defineProperty(i,"dialog",null);i.setEventNamespace("BX.UI.EntitySelector.TagSelector");const s=t.Type.isPlainObject(e)?e:{};i.id=t.Type.isStringFilled(s.id)?s.id:`ui-tag-selector-${t.Text.getRandom().toLowerCase()}`;i.multiple=t.Type.isBoolean(s.multiple)?s.multiple:true;i.addButtonVisible=s.showAddButton!==false;i.createButtonVisible=s.showCreateButton===true;i.textBoxVisible=s.showTextBox===true;i.setReadonly(s.readonly);
77i.setLocked(s.locked);i.setAddButtonCaption(s.addButtonCaption);i.setAddButtonCaptionMore(s.addButtonCaptionMore);i.setCreateButtonCaption(s.createButtonCaption);i.setPlaceholder(s.placeholder);i.setTextBoxAutoHide(s.textBoxAutoHide);i.setTextBoxWidth(s.textBoxWidth);i.setDeselectable(s.deselectable);i.setMaxHeight(s.maxHeight);i.setTagAvatar(s.tagAvatar);i.setTagAvatarOptions(s.tagAvatarOptions);i.setTagMaxWidth(s.tagMaxWidth);i.setTagTextColor(s.tagTextColor);i.setTagBgColor(s.tagBgColor);i.setTagFontWeight(s.tagFontWeight);i.setTagClickable(s.tagClickable);if(t.Type.isPlainObject(s.dialogOptions)){let e=t.Type.isArray(s.items)?s.items:[];if(t.Type.isArray(s.dialogOptions.selectedItems)){e=e.concat(s.dialogOptions.selectedItems)}const n=Object.assign({},s.dialogOptions,{tagSelectorOptions:null,selectedItems:e,multiple:i.isMultiple(),tagSelector:i});new Mt(n)}else if(t.Type.isArray(s.items)){s.items.forEach((e=>{i.addTag(e)}))}i.subscribeFromOptions(s.events);return i}babelHelpers.inherits(n,e);return babelHelpers.createClass(n,[{key:"getDialog",value:function e(){return this.dialog}},{key:"setDialog",value:function e(t){this.dialog=t}},{key:"setReadonly",value:function e(i){if(t.Type.isBoolean(i)){this.readonly=i;if(this.isRendered()){if(i){t.Dom.addClass(this.getOuterContainer(),"ui-tag-selector-container-readonly")}else{t.Dom.removeClass(this.getOuterContainer(),"ui-tag-selector-container-readonly")}}}}},{key:"isReadonly",value:function e(){return this.readonly}},{key:"setLocked",value:function e(i){if(t.Type.isBoolean(i)){this.locked=i;if(i){t.Dom.addClass(this.getOuterContainer(),"ui-tag-selector-container-locked");this.getTextBox().disabled=true}else{t.Dom.removeClass(this.getOuterContainer(),"ui-tag-selector-container-locked");this.getTextBox().disabled=false}}}},{key:"lock",value:function e(){if(!this.isLocked()){this.setLocked(true)}}},{key:"unlock",value:function e(){if(this.isLocked()){this.setLocked(false)}}},{key:"isLocked",value:function e(){return this.locked}},{key:"isMultiple",value:function e(){return this.multiple}},{key:"setDeselectable",value:function e(i){if(t.Type.isBoolean(i)){const e=this.deselectable!==i;this.deselectable=i;if(e){this.updateTags()}}}},{key:"isDeselectable",value:function e(){return this.deselectable}},{key:"getTag",value:function e(i){if(i instanceof ot){return this.getTags().find((e=>e===i))}else if(t.Type.isPlainObject(i)){const{id:e,entityId:t}=i;return this.getTags().find((i=>i.getId()===e&&i.getEntityId()===t))}return null}},{key:"addTag",value:function e(n){if(!t.Type.isObjectLike(n)){throw new Error("TagSelector.addTag: wrong item options.")}if(this.getTag(n)){return null}const s=new ot(n);s.setSelector(this);const r=new i.BaseEvent({data:{tag:s}});this.emit("onBeforeTagAdd",r);if(r.isDefaultPrevented()){return null}if(!this.isMultiple()){this.removeTags()}this.tags.push(s);this.emit("onTagAdd",{tag:s});if(this.isRendered()){s.render();this.getItemsContainer().insertBefore(s.getContainer(),this.getTextBox());if(n.animate!==false){s.show().then((()=>{this.getContainer().scrollTop=this.getContainer().scrollHeight-this.getContainer().offsetHeight;this.emit("onAfterTagAdd",{tag:s})}))}else{this.emit("onAfterTagAdd",{tag:s})}this.toggleAddButtonCaption()}else{this.emit("onAfterTagAdd",{tag:s})}return s}},{key:"removeTag",value:function e(t,n=true){const s=this.getTag(t);if(!s){return}const r=new i.BaseEvent({data:{tag:s}});this.emit("onBeforeTagRemove",r);if(r.isDefaultPrevented()){return}this.tags=this.tags.filter((e=>e!==s));this.emit("onTagRemove",{tag:s});if(this.isRendered()){s.remove(n).then((()=>{this.toggleAddButtonCaption();this.emit("onAfterTagRemove",{tag:s})}))}else{this.emit("onAfterTagRemove",{tag:s})}}}
77,{key:"removeTags",value:function e(){this.getTags().forEach((e=>{this.removeTag(e,false)}))}},{key:"getTags",value:function e(){return this.tags}},{key:"renderTo",value:function e(i){this.rendered=true;this.getTags().forEach((e=>{e.render();this.getItemsContainer().insertBefore(e.getContainer(),this.getTextBox())}));if(t.Type.isDomNode(i)){t.Dom.append(this.getOuterContainer(),i)}}},{key:"isRendered",value:function e(){return this.rendered}},{key:"updateTags",value:function e(){if(this.isRendered()){this.getTags().forEach((e=>{e.render()}))}}},{key:"getOuterContainer",value:function e(){return this.cache.remember("outer-container",(()=>{let e=this.isReadonly()?" ui-tag-selector-container-readonly":"";e+=this.isLocked()?" ui-tag-selector-container-locked":"";return t.Tag.render`
78				<div class="ui-tag-selector-outer-container --air --ui-context-content-light${e}">${this.getContainer()}</div>
79			`}))}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>{const e=this.getMaxHeight()?` style="max-height: ${this.getMaxHeight()}px; -ms-overflow-style: -ms-autohiding-scrollbar;"`:"";return t.Tag.render`
80				<div 
81					class="ui-tag-selector-container" 
82					onclick="${this.handleContainerClick.bind(this)}"
83					${e}
84				>
85					${this.getItemsContainer()}
86					${this.getCreateButton()}
87				</div>
88			`}))}},{key:"getItemsContainer",value:function e(){return this.cache.remember("items-container",(()=>t.Tag.render`
89				<div class="ui-tag-selector-items">
90					${this.getTextBox()}
91					${this.getAddButton()}
92				</div>
93			`))}},{key:"getTextBox",value:function e(){return this.cache.remember("text-box",(()=>{const e=this.textBoxVisible?"":" ui-tag-selector-item-hidden";const i=t.Tag.render`
94				<input 
95					type="text" 
96					class="ui-tag-selector-item ui-tag-selector-text-box${e}" 
97					autocomplete="off"
98					placeholder="${t.Text.encode(this.getPlaceholder())}"
99					oninput="${this.handleTextBoxInput.bind(this)}"
100					onblur="${this.handleTextBoxBlur.bind(this)}"
101					onkeyup="${this.handleTextBoxKeyUp.bind(this)}"
102					onkeydown="${this.handleTextBoxKeyDown.bind(this)}"
103					value=""
104				>
105			`;const n=this.getTextBoxWidth();if(n!==null){t.Dom.style(i,"min-width",t.Type.isStringFilled(n)?n:`${n}px`)}if(this.isLocked()){i.disabled=true}return i}))}},{key:"getItemsHeight",value:function e(){return this.getItemsContainer().scrollHeight}},{key:"calcHeight",value:function e(){if(this.getMaxHeight()!==null){return Math.min(this.getItemsHeight(),this.getMaxHeight())}return Math.max(this.getItemsHeight(),this.getMinHeight())}},{key:"getTextBoxValue",value:function e(){return this.getTextBox().value}},{key:"clearTextBox",value:function e(){this.getTextBox().value="";this.textBoxOldValue=""}},{key:"showTextBox",value:function e(){this.textBoxVisible=true;t.Dom.removeClass(this.getTextBox(),"ui-tag-selector-item-hidden")}},{key:"hideTextBox",value:function e(){this.textBoxVisible=false;t.Dom.addClass(this.getTextBox(),"ui-tag-selector-item-hidden")}},{key:"focusTextBox",value:function e(){this.getTextBox().focus()}},{key:"setTextBoxAutoHide",value:function e(i){if(t.Type.isBoolean(i)){this.textBoxAutoHide=i}}},{key:"getTextBoxWidth",value:function e(){return this.textBoxWidth}},{key:"setTextBoxWidth",value:function e(i){if(t.Type.isStringFilled(i)||i===null){this.textBoxWidth=i;if(this.isRendered()){t.Dom.style(this.getTextBox(),"min-width",i)}}else if(t.Type.isNumber(i)&&i>0){this.textBoxWidth=i;if(this.isRendered()){t.Dom.style(this.getTextBox(),"min-width",`${i}px`)}}}},{key:"getTagMaxWidth",value:function e(){return this.tagMaxWidth}},{key:"setTagMaxWidth",value:function e(i){if(t.Type.isNumber(i)&&i>=0||i===null){this.tagMaxWidth=i;this.updateTags()}}},{key:"getTagAvatar",value:function e(){return this.tagAvatar}},{key:"setTagAvatar",value:function e(i){if(t.Type.isString(i)||i===null){this.tagAvatar=i;this.updateTags()}}},{key:"getTagClickable",value:function e(){return this.tagClickable}},{key:"setTagClickable",value:function e(i){if(t.Type.isBoolean(i)||i===null){this.tagClickable=i;this.updateTags()}}},{key:"getTagAvatarOptions",value:function e(){return this.tagAvatarOptions}},{key:"getTagAvatarOption",value:function e(i){if(this.tagAvatarOptions!==null&&!t.Type.isUndefined(this.tagAvatarOptions[i])){return this.tagAvatarOptions[i]}return null}}
105,{key:"setTagAvatarOption",value:function e(i,n){if(t.Type.isStringFilled(i)&&!t.Type.isUndefined(n)){if(this.tagAvatarOptions===null){this.tagAvatarOptions={}}this.tagAvatarOptions[i]=n;this.updateTags()}}},{key:"setTagAvatarOptions",value:function e(i){if(t.Type.isPlainObject(i)){Object.keys(i).forEach((e=>{this.setTagAvatarOption(e,i[e])}))}}},{key:"getTagTextColor",value:function e(){return this.tagTextColor}},{key:"setTagTextColor",value:function e(i){if(t.Type.isString(i)||i===null){this.tagTextColor=i;this.updateTags()}}},{key:"getTagBgColor",value:function e(){return this.tagBgColor}},{key:"setTagBgColor",value:function e(i){if(t.Type.isString(i)||i===null){this.tagBgColor=i;this.updateTags()}}},{key:"getTagFontWeight",value:function e(){return this.tagFontWeight}},{key:"setTagFontWeight",value:function e(i){if(t.Type.isString(i)||i===null){this.tagFontWeight=i;this.updateTags()}}},{key:"getPlaceholder",value:function e(){return this.placeholder}},{key:"setPlaceholder",value:function e(i){if(t.Type.isStringFilled(i)){this.placeholder=i;if(this.isRendered()){this.getTextBox().placeholder=i}}}},{key:"getMaxHeight",value:function e(){return this.maxHeight}},{key:"getMinHeight",value:function e(){return 34}},{key:"setMaxHeight",value:function e(i){if(t.Type.isNumber(i)&&i>0||i===null){this.maxHeight=i;if(this.isRendered()){t.Dom.style(this.getContainer(),"max-height",i>0?`${i}px`:null);t.Dom.style(this.getContainer(),"-ms-overflow-style",i>0?"-ms-autohiding-scrollbar":null)}}}},{key:"getAddButton",value:function e(){return this.cache.remember("add-button",(()=>{const e=this.addButtonVisible?"":" ui-tag-selector-item-hidden";return t.Tag.render`
106				<span
107					class="ui-tag-selector-item ui-tag-selector-add-button${e}"
108					data-testid="ui-tag-selector-add-item-button"
109				>
110					${this.getAddButtonLink()}
111				</span>
112			`}))}},{key:"getAddButtonLink",value:function e(){return this.cache.remember("add-button-link",(()=>{const e=t.Text.encode(this.getActualButtonCaption());return t.Tag.render`
113				<button
114					type="button"
115					tabindex="0"
116					class="ui-tag-selector-add-button-caption" 
117					onclick="${this.handleAddButtonClick.bind(this)}"
118				>${e}</button>
119			`}))}},{key:"getAddButtonCaption",value:function e(){return this.addButtonCaption===null?t.Loc.getMessage("UI_TAG_SELECTOR_ADD_BUTTON_CAPTION"):this.addButtonCaption}},{key:"setAddButtonCaption",value:function e(i){if(t.Type.isStringFilled(i)){this.addButtonCaption=i;if(this.isRendered()){this.toggleAddButtonCaption()}}}},{key:"getAddButtonCaptionMore",value:function e(){return this.addButtonCaptionMore===null?this.isMultiple()?t.Loc.getMessage("UI_TAG_SELECTOR_ADD_BUTTON_CAPTION"):t.Loc.getMessage("UI_TAG_SELECTOR_ADD_BUTTON_CAPTION_SINGLE"):this.addButtonCaptionMore}},{key:"setAddButtonCaptionMore",value:function e(i){if(t.Type.isStringFilled(i)){this.addButtonCaptionMore=i;if(this.isRendered()){this.toggleAddButtonCaption()}}}},{key:"toggleAddButtonCaption",value:function e(){if(this.getAddButtonCaptionMore()===null){return}this.getAddButtonLink().textContent=this.getActualButtonCaption()}},{key:"getActualButtonCaption",value:function e(){return this.getTags().length>0&&this.getAddButtonCaptionMore()!==null?this.getAddButtonCaptionMore():this.getAddButtonCaption()}},{key:"showAddButton",value:function e(){this.addButtonVisible=true;t.Dom.removeClass(this.getAddButton(),"ui-tag-selector-item-hidden")}},{key:"hideAddButton",value:function e(){this.addButtonVisible=false;t.Dom.addClass(this.getAddButton(),"ui-tag-selector-item-hidden")}},{key:"getCreateButton",value:function e(){return this.cache.remember("create-button",(()=>{const e=this.createButtonVisible?"":" ui-tag-selector-item-hidden";return t.Tag.render`
120				<div class="ui-tag-selector-create-button${e}">
121					<button
122						type="button"
123						tabindex="0"
124						class="ui-tag-selector-create-button-caption"
125						onclick="${this.handleCreateButtonClick.bind(this)}"
126					>${t.Text.encode(this.getCreateButtonCaption())}</button>
127				</div>
128			`}))}},{key:"showCreateButton",value:function e(){this.createButtonVisible=true;t.Dom.removeClass(this.getCreateButton(),"ui-tag-selector-item-hidden")}},{key:"hideCreateButton",value:function e(){this.createButtonVisible=false;t.Dom.addClass(this.getCreateButton(),"ui-tag-selector-item-hidden")}},{key:"getCreateButtonCaption",value:function e(){return this.createButtonCaption===null?t.Loc.getMessage("UI_TAG_SELECTOR_CREATE_BUTTON_CAPTION"):this.createButtonCaption}},{key:"setCreateButtonCaption",value:function e(i){if(t.Type.isStringFilled(i)){this.createButtonCaption=i;if(this.isRendered()){this.getCreateButton().children[0].textContent=i}}}}
128,{key:"handleContainerClick",value:function e(t){this.emit("onContainerClick",{event:t})}},{key:"handleTextBoxInput",value:function e(t){const i=this.getTextBoxValue();if(i!==this.textBoxOldValue){this.textBoxOldValue=i;this.emit("onInput",{event:t})}}},{key:"handleTextBoxBlur",value:function e(t){this.emit("onBlur",{event:t});if(this.textBoxAutoHide){this.clearTextBox();this.showAddButton();this.hideTextBox()}}},{key:"handleTextBoxKeyUp",value:function e(t){this.emit("onKeyUp",{event:t});if(t.key==="Enter"){this.emit("onEnter",{event:t});if(this.textBoxAutoHide){this.clearTextBox();this.showAddButton();this.hideTextBox()}}}},{key:"handleTextBoxKeyDown",value:function e(i){if(i.key==="Enter"){i.preventDefault();if(t.Browser.isMac()&&i.metaKey||i.ctrlKey){this.emit("onMetaEnter",{event:i})}}this.emit("onKeyDown",{event:i})}},{key:"handleAddButtonClick",value:function e(t){this.hideAddButton();this.showTextBox();this.focusTextBox();this.emit("onAddButtonClick",{event:t})}},{key:"handleCreateButtonClick",value:function e(t){this.emit("onCreateButtonClick",{event:t})}}])}(i.EventEmitter);let ct=function(){function e(t){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"lockedTab",null);babelHelpers.defineProperty(this,"enabled",false);this.dialog=t;this.dialog.subscribe("onShow",this.handleDialogShow.bind(this));this.dialog.subscribe("onHide",this.handleDialogHide.bind(this));this.dialog.subscribe("onDestroy",this.handleDialogDestroy.bind(this));this.handleDocumentKeyDown=this.handleDocumentKeyDown.bind(this);this.handleDocumentMouseMove=this.handleDocumentMouseMove.bind(this)}return babelHelpers.createClass(e,[{key:"getDialog",value:function e(){return this.dialog}},{key:"enable",value:function e(){if(!this.isEnabled()){this.bindEvents()}this.enabled=true}},{key:"disable",value:function e(){if(this.isEnabled()){this.unbindEvents();this.unlockTab()}this.enabled=false}},{key:"isEnabled",value:function e(){return this.enabled}},{key:"bindEvents",value:function e(){t.Event.bind(document,"keydown",this.handleDocumentKeyDown)}},{key:"unbindEvents",value:function e(){t.Event.unbind(document,"keydown",this.handleDocumentKeyDown)}},{key:"getNextNode",value:function e(){if(!this.getActiveNode()){return null}let t=null;let i=this.getActiveNode();if(i.hasChildren()&&i.isOpen()){t=i.getFirstChild()}while(t===null&&i!==null){t=i.getNextSibling();if(t){break}i=i.getParentNode()}return t}},{key:"getPreviousNode",value:function e(){if(!this.getActiveNode()){return null}let t=this.getActiveNode().getPreviousSibling();if(t){while(t.hasChildren()&&t.isOpen()){const e=t.getLastChild();if(e===null){break}t=e}}else{if(this.getActiveNode().getParentNode()&&!this.getActiveNode().getParentNode().isRoot()){t=this.getActiveNode().getParentNode()}}return t}},{key:"getFirstNode",value:function e(){const t=this.getDialog().getActiveTab();return t&&t.getRootNode().getFirstChild()}},{key:"getLastNode",value:function e(){const t=this.getDialog().getActiveTab();if(!t){return null}let i=t.getRootNode().getLastChild();if(i!==null){while(i.hasChildren()&&i.isOpen()){const e=i.getLastChild();if(e===null){break}i=e}}return i}},{key:"getActiveNode",value:function e(){return this.getDialog().getFocusedNode()}},{key:"focusOnNode",value:function e(t){if(t){t.focus();t.scrollIntoView()}}},{key:"lockTab",value:function e(){const i=this.getDialog().getActiveTab();if(this.lockedTab===i){return}else if(this.lockedTab!==null){this.unlockTab()}this.lockedTab=i;this.lockedTab.lock();t.Event.bind(document,"mousemove",this.handleDocumentMouseMove)}},{key:"unlockTab",value:function e(){if(this.lockedTab===null){return}this.lockedTab.unlock();this.lockedTab=null;t.Event.unbind(document,"mousemove",this.handleDocumentMouseMove)}},{key:"handleDialogShow",value:function e(){this.enable()}},{key:"handleDialogHide",value:function e(){this.disable()}},{key:"handleDialogDestroy",value:function e(){this.disable()}},{key:"handleDocumentMouseMove",value:function e(){this.unlockTab()}},{key:"handleDocumentKeyDown",value:function e(t){if(!this.getDialog().isOpen()){this.unbindEvents();return}if(t.metaKey||t.ctrlKey||t.altKey){return}const i=this.getDialog().getActiveTab();if(!i){return}const n=this.constructor.keyMap[t.key]||t.key;if(i===this.getDialog().getSearchTab()&&["ArrowLeft","ArrowRight"].includes(n)){return}const s=this[`handle${n}Press`];
128if(s){s.call(this,t);this.lockTab(i);t.preventDefault()}}},{key:"handleArrowDownPress",value:function e(){if(!this.getActiveNode()){const e=this.getFirstNode();this.focusOnNode(e)}else{const e=this.getNextNode();if(e){this.focusOnNode(e)}else{const e=this.getFirstNode();this.focusOnNode(e)}}}},{key:"handleArrowUpPress",value:function e(){if(!this.getActiveNode()){const e=this.getLastNode();this.focusOnNode(e)}else{const e=this.getPreviousNode();if(e){this.focusOnNode(e)}else{const e=this.getLastNode();this.focusOnNode(e)}}}},{key:"handleArrowRightPress",value:function e(){if(this.getActiveNode()){this.getActiveNode().expand()}}},{key:"handleArrowLeftPress",value:function e(){if(!this.getActiveNode()){return}if(this.getActiveNode().isOpen()){this.getActiveNode().collapse()}else{const e=this.getActiveNode().getParentNode();if(e&&!e.isRoot()){this.focusOnNode(e)}}}},{key:"handleEnterPress",value:function e(){if(this.getActiveNode()){this.getActiveNode().click()}}},{key:"handleTabPress",value:function e(t){const i=this.getDialog().getActiveTab();if(!i){this.getDialog().selectFirstTab();return}if(t.shiftKey){const e=this.getDialog().getPreviousTab();if(e){this.getDialog().selectTab(e.getId())}else{this.getDialog().selectLastTab()}}else{const e=this.getDialog().getNextTab();if(e){this.getDialog().selectTab(e.getId())}else{this.getDialog().selectFirstTab()}}}}])}();babelHelpers.defineProperty(ct,"keyMap",{Down:"ArrowDown",Up:"ArrowUp",Left:"ArrowLeft",Right:"ArrowRight",Spacebar:"Space"," ":"Space"});let dt=function(){function e(t){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"dialog",null);babelHelpers.defineProperty(this,"sliders",new Set);this.dialog=t;this.dialog.subscribe("onShow",this.handleDialogShow.bind(this));this.dialog.subscribe("onHide",this.handleDialogHide.bind(this));this.dialog.subscribe("onDestroy",this.handleDialogDestroy.bind(this));this.handleSliderOpen=this.handleSliderOpen.bind(this);this.handleSliderClose=this.handleSliderClose.bind(this);this.handleSliderDestroy=this.handleSliderDestroy.bind(this)}return babelHelpers.createClass(e,[{key:"getDialog",value:function e(){return this.dialog}},{key:"bindEvents",value:function e(){this.unbindEvents();if(top.BX){top.BX.Event.EventEmitter.subscribe("SidePanel.Slider:onOpen",this.handleSliderOpen);top.BX.Event.EventEmitter.subscribe("SidePanel.Slider:onCloseComplete",this.handleSliderClose);top.BX.Event.EventEmitter.subscribe("SidePanel.Slider:onDestroy",this.handleSliderDestroy)}}},{key:"unbindEvents",value:function e(){if(top.BX){top.BX.Event.EventEmitter.unsubscribe("SidePanel.Slider:onOpen",this.handleSliderOpen);top.BX.Event.EventEmitter.unsubscribe("SidePanel.Slider:onCloseComplete",this.handleSliderClose);top.BX.Event.EventEmitter.unsubscribe("SidePanel.Slider:onDestroy",this.handleSliderDestroy)}}},{key:"isDialogInSlider",value:function e(t){if(t.getFrameWindow()){return t.getFrameWindow().document.contains(this.getDialog().getContainer())}else{return t.getContainer().contains(this.getDialog().getContainer())}}},{key:"handleDialogShow",value:function e(){this.bindEvents()}},{key:"handleDialogHide",value:function e(){this.sliders.clear();this.unbindEvents();this.getDialog().unfreeze()}},{key:"handleDialogDestroy",value:function e(){this.sliders.clear();this.unbindEvents()}},{key:"handleSliderOpen",value:function e(t){const[i]=t.getData();const n=i.getSlider();if(!this.isDialogInSlider(n)){this.sliders.add(n);this.getDialog().freeze()}}},{key:"handleSliderClose",value:function e(t){const[i]=t.getData();const n=i.getSlider();this.sliders.delete(n);if(this.sliders.size===0){this.getDialog().unfreeze()}}},{key:"handleSliderDestroy",value:function e(t){const[i]=t.getData();const n=i.getSlider();if(this.isDialogInSlider(n)){this.unbindEvents();this.dialog.destroy()}else{this.sliders.delete(n);if(this.sliders.size===0){this.getDialog().unfreeze()}}}}])}();function gt(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,ft()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function ft(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ft=function(){return!!e})()}let pt=function(e){function i(e,t){var n;babelHelpers.classCallCheck(this,i);n=gt(this,i,[e,t]);babelHelpers.defineProperty(n,"content",null);
128n.setContent(n.getOption("content"));return n}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"render",value:function e(){const i=t.Tag.render`
129			<div>
130				${this.getContent()?this.getContent():""}
131			</div>
132		`;const n=this.getOption("containerClass","ui-selector-header-default");const s=this.getOption("containerStyles",{});t.Dom.addClass(i,n);t.Dom.style(i,s);return i}},{key:"getContent",value:function e(){return this.content}},{key:"setContent",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isDomNode(i)||t.Type.isArrayFilled(i)){this.content=i}}}])}($e);function yt(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,bt()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function bt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(bt=function(){return!!e})()}let vt=function(e){function i(e,t){var n;babelHelpers.classCallCheck(this,i);n=yt(this,i,[e,t]);babelHelpers.defineProperty(n,"content",null);n.setContent(n.getOption("content"));return n}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"render",value:function e(){const i=t.Tag.render`
133			<div>
134				${this.getContent()?this.getContent():""}
135			</div>
136		`;const n=this.getOption("containerClass","ui-selector-footer-default");const s=this.getOption("containerStyles",{});t.Dom.addClass(i,n);t.Dom.style(i,s);return i}},{key:"getContent",value:function e(){return this.content}},{key:"setContent",value:function e(i){if(t.Type.isStringFilled(i)||t.Type.isDomNode(i)||t.Type.isArrayFilled(i)){this.content=i}}}])}(We);function mt(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,Tt()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function Tt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Tt=function(){return!!e})()}let kt=function(e){function i(e,n){babelHelpers.classCallCheck(this,i);const s={title:t.Loc.getMessage("UI_SELECTOR_RECENT_TAB_TITLE"),itemOrder:{sort:"asc"},visible:!e.isDropdownMode(),stub:!e.isDropdownMode(),icon:o.Outline.SEARCH};const r=Object.assign({},s,n);r.id="recents";return mt(this,i,[e,r])}babelHelpers.inherits(i,e);return babelHelpers.createClass(i)}(Ue);let Ct=function(){function e(t,i=[]){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"item",null);babelHelpers.defineProperty(this,"matchFields",new Map);babelHelpers.defineProperty(this,"sort",null);this.item=t;this.addIndexes(i)}return babelHelpers.createClass(e,[{key:"getItem",value:function e(){return this.item}},{key:"getMatchFields",value:function e(){return this.matchFields}},{key:"getSort",value:function e(){return this.sort}},{key:"addIndex",value:function e(t){let i=this.matchFields.get(t.getField());if(!i){i=new p(t.getField());this.matchFields.set(t.getField(),i);const e=t.getField().getSort();if(e!==null){this.sort=this.sort===null?e:Math.min(this.sort,e)}}i.addIndex(t)}},{key:"addIndexes",value:function e(t){t.forEach((e=>{this.addIndex(e)}))}}])}();const St=new Intl.Collator(undefined,{sensitivity:"base"});let Ot=function(){function e(){babelHelpers.classCallCheck(this,e)}return babelHelpers.createClass(e,null,[{key:"matchItems",value:function e(t,i,n={}){const s=[];const r=i.getQueryWords();let o=i.getResultLimit();const l=n.matchAll===true;for(let e=0;e<t.length;e++){if(o===0){break}const i=t[e];if(i.isSelected()||!i.isSearchable()||i.isHidden()||!i.getEntity().isSearchable()){continue}const n=this.matchItem(i,r);if(n){s.push(n);o--}else if(l&&i.getEntity().getDynamicSearchMatchMode()==="all"){s.push(new Ct(i,[]));o--}}return s}},{key:"matchItem",value:function e(t,i){let n=[];for(let e=0;e<i.length;e++){const s=i[e];const r=this.matchWord(t,s);if(r.length===0){return null}else{n=n.concat(r)}}if(n.length>0){return new Ct(t,n)}else{return null}}},{key:"matchWord",value:function e(t,i){const n=t.getSearchIndex().getIndexes();const s=[];for(let e=0;e<n.length;e++){const t=n[e];const r=t.getIndexes();for(let e=0;e<r.length;e++){const n=r[e];const o=n.getWord().substring(0,i.length);if(St.compare(i,o)===0){s.push(new g(t.getField(),i,n.getStartIndex()))}}if(s.length>0){break}}return s}}])}();let xt=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"queryWords",[]);babelHelpers.defineProperty(this,"query","");
136babelHelpers.defineProperty(this,"cacheable",true);babelHelpers.defineProperty(this,"dynamicSearchEntities",[]);babelHelpers.defineProperty(this,"resultLimit",100);this.query=i.trim().replace(/\s\s+/g," ");this.queryWords=t.Type.isStringFilled(this.query)?this.query.split(" "):[]}return babelHelpers.createClass(e,[{key:"getQueryWords",value:function e(){return this.queryWords}},{key:"getQuery",value:function e(){return this.query}},{key:"isEmpty",value:function e(){return this.getQueryWords().length===0}},{key:"setCacheable",value:function e(i){if(t.Type.isBoolean(i)){this.cacheable=i}}},{key:"isCacheable",value:function e(){return this.cacheable}},{key:"setResultLimit",value:function e(i){if(t.Type.isNumber(i)&&i>=0){this.resultLimit=i}}},{key:"getResultLimit",value:function e(){return this.resultLimit}},{key:"hasDynamicSearch",value:function e(){return this.getDynamicSearchEntities().length>0}},{key:"hasDynamicSearchEntity",value:function e(t){return this.getDynamicSearchEntities().includes(t)}},{key:"setDynamicSearchEntities",value:function e(i){if(t.Type.isArrayFilled(i)){i.forEach((e=>{if(t.Type.isStringFilled(e)&&!this.hasDynamicSearchEntity(e)){this.dynamicSearchEntities.push(e)}}))}return this.dynamicSearchEntities}},{key:"getDynamicSearchEntities",value:function e(){return this.dynamicSearchEntities}},{key:"getAjaxJson",value:function e(){return this.toJSON()}},{key:"toJSON",value:function e(){return{queryWords:this.getQueryWords(),query:this.getQuery(),dynamicSearchEntities:this.getDynamicSearchEntities()}}}])}();let Ht=function(){function e(i){babelHelpers.classCallCheck(this,e);babelHelpers.defineProperty(this,"tab",null);babelHelpers.defineProperty(this,"loader",null);babelHelpers.defineProperty(this,"cache",new t.Cache.MemoryCache);this.tab=i}return babelHelpers.createClass(e,[{key:"getTab",value:function e(){return this.tab}},{key:"getLoader",value:function e(){if(this.loader===null){this.loader=new s.Loader({target:this.getIconContainer(),size:32})}return this.loader}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>t.Tag.render`
137				<div class="ui-selector-search-loader">
138					${this.getBoxContainer()}
139					${this.getSpacerContainer()}
140				</div>
141			`))}},{key:"getBoxContainer",value:function e(){return this.cache.remember("box-container",(()=>t.Tag.render`
142				<div class="ui-selector-search-loader-box">
143					${this.getIconContainer()}
144					${this.getTextContainer()}
145				</div>`))}},{key:"getIconContainer",value:function e(){return this.cache.remember("icon",(()=>t.Tag.render`<div class="ui-selector-search-loader-icon"></div>`))}},{key:"getTextContainer",value:function e(){return this.cache.remember("text",(()=>t.Tag.render`
146				<div class="ui-selector-search-loader-text">${t.Loc.getMessage("UI_SELECTOR_SEARCH_LOADER_TEXT")}</div>
147			`))}},{key:"getSpacerContainer",value:function e(){return this.cache.remember("spacer",(()=>t.Tag.render`<div class="ui-selector-search-loader-spacer"></div>`))}},{key:"show",value:function e(){if(!this.getContainer().parentNode){t.Dom.append(this.getContainer(),this.getTab().getContainer())}void this.getLoader().show();t.Dom.addClass(this.getContainer(),"ui-selector-search-loader--show");requestAnimationFrame((()=>{t.Dom.addClass(this.getContainer(),"ui-selector-search-loader--animate")}))}},{key:"hide",value:function e(){if(this.loader===null){return}t.Dom.removeClass(this.getContainer(),["ui-selector-search-loader--show","ui-selector-search-loader--animate"]);void this.getLoader().hide()}},{key:"isShown",value:function e(){return this.loader!==null&&this.loader.isShown()}}])}();function It(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,Dt()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function Dt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Dt=function(){return!!e})()}let Pt=function(e){function i(e,t){var n;babelHelpers.classCallCheck(this,i);n=It(this,i,[e,t]);babelHelpers.defineProperty(n,"loader",null);n.getDialog().subscribe("onSearch",n.handleOnSearch.bind(n));const s=n.getDialog().getTagSelector();if(s){s.subscribe("onMetaEnter",n.handleMetaEnter.bind(n))}return n}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"render",value:function e(){return t.Tag.render`
148			<div class="ui-selector-search-footer" onclick="${this.handleClick.bind(this)}">
149				<div class="ui-selector-search-footer-box">
150					${this.getLabelContainer()}
151					${this.getQueryContainer()}
152					${this.getLoaderContainer()}
153				</div>
154				<div class="ui-selector-search-footer-cmd">${t.Browser.isMac()?"&#8984;+Enter":"Ctrl+Enter"}</div>
155			</div>
156		`}},{key:"getLoader",value:function e(){if(this.loader===null){this.loader=new s.Loader({target:this.getLoaderContainer(),size:17,color:"rgba(82, 92, 105, 0.9)"})}return this.loader}},{key:"showLoader",value:function e(){void this.getLoader().show()}},{key:"hideLoader",value:function e(){void this.getLoader().hide()}},{key:"setLabel",value:function e(i){if(t.Type.isString(i)){this.getLabelContainer().textContent=i}}},{key:"getLabelContainer",value:function e(){return this.cache.remember("label",(()=>t.Tag.render`
157				<span class="ui-selector-search-footer-label">${this.getOption("label",t.Loc.getMessage("UI_SELECTOR_CREATE_ITEM_LABEL"))}</span>
158			`))}},{key:"getQueryContainer",value:function e(){return this.cache.remember("name-container",(()=>t.Tag.render`
159				<span class="ui-selector-search-footer-query"></span>
160			`))}},{key:"getLoaderContainer",value:function e(){return this.cache.remember("loader",(()=>t.Tag.render`
161				<div class="ui-selector-search-footer-loader"></div>
162			`))}},{key:"createItem",value:function e(){const t=this.getDialog().getTagSelector();if(t&&t.isLocked()){return}const i=()=>{this.hideLoader();if(this.getDialog().getTagSelector()){this.getDialog().getTagSelector().unlock();this.getDialog().focusSearch()}};event.preventDefault();this.showLoader();if(t){t.lock()}this.getDialog().emitAsync("Search:onItemCreateAsync",{searchQuery:this.getTab().getLastSearchQuery()}).then((()=>{this.getTab().clearResults();this.getDialog().clearSearch();if(this.getDialog().getActiveTab()===this.getTab()){this.getDialog().selectFirstTab()}i()})).catch((()=>{i()}))}},{key:"handleClick",value:function e(){this.createItem()}},{key:"handleMetaEnter",value:function e(t){const i=t.getData().event;i.stopPropagation();if(this.getDialog().getActiveTab()!==this.getTab()){return}this.handleClick()}},{key:"handleOnSearch",value:function e(t){const{query:i}=t.getData();this.getQueryContainer().textContent=i}}])}(We);function Et(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,At()?Reflect.construct(t,i||[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function At(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(At=function(){return!!e})()}let wt=function(e){function i(e,n,s){var r;babelHelpers.classCallCheck(this,i);const o={title:t.Loc.getMessage("UI_SELECTOR_SEARCH_TAB_TITLE"),visible:false,stub:true,stubOptions:{autoShow:false,title:t.Loc.getMessage("UI_SELECTOR_SEARCH_STUB_TITLE"),subtitle:t.Loc.getMessage("UI_SELECTOR_SEARCH_STUB_SUBTITLE_MSGVER_1")}};const l={...o,...n};l.id="search";l.stubOptions.autoShow=false;r=Et(this,i,[e,l]);babelHelpers.defineProperty(r,"lastSearchQuery",null);babelHelpers.defineProperty(r,"queryCache",new Set);babelHelpers.defineProperty(r,"queryXhr",null);babelHelpers.defineProperty(r,"searchLoader",new Ht(r));babelHelpers.defineProperty(r,"allowCreateItem",false);s=t.Type.isPlainObject(s)?s:{};r.setAllowCreateItem(s.allowCreateItem,s.footerOptions);r.loadWithDebounce=t.Runtime.debounce((()=>{r.load(r.getLastSearchQuery())}),500);return r}babelHelpers.inherits(i,e);return babelHelpers.createClass(i,[{key:"search",value:function e(t){const i=new xt(t);const n=this.getDynamicEntities(i);i.setDynamicSearchEntities(n);if(i.isEmpty()){this.getSearchLoader().hide();return}this.lastSearchQuery=i;const s=Ot.matchItems(this.getDialog().getItems(),i);this.clearResults();this.appendResults(s);if(this.getDialog().shouldFocusOnFirst()){this.getDialog().focusOnFirstNode()}if(this.shouldLoad(i)){this.loadWithDebounce();if(!this.isEmptyResult()){this.getStub().hide()}}else if(!this.getSearchLoader().isShown()){this.toggleEmptyResult()}}},{key:"getLastSearchQuery",value:function e(){return this.lastSearchQuery}},{key:"setAllowCreateItem",value:function e(i,n){if(t.Type.isBoolean(i)){this.allowCreateItem=i;if(i){this.setFooter(Pt,n)}else{this.setFooter(null)}}}},{key:"canCreateItem",value:function e(){return this.allowCreateItem}},{key:"appendResults",value:function e(t){t.sort(((e,t)=>{const i=e.getSort();const n=t.getSort();if(i!==null&&n!==null&&i!==n){return i-n}if(i!==null&&n===null){return-1}if(i===null&&n!==null){return 1}const s=e.getItem().getContextSort();const r=t.getItem().getContextSort();if(s!==null&&r===null){return-1}if(s===null&&r!==null){return 1}if(s!==null&&r!==null){return r-s}const o=e.getItem().getGlobalSort();const l=t.getItem().getGlobalSort();if(o!==null&&l===null){return-1}if(o===null&&l!==null){return 1}if(o!==null&&l!==null){return l-o}return 0}));this.getRootNode().disableRender();t.forEach((e=>{const t=e.getItem();if(!this.getRootNode().hasItem(t)){const i=this.getRootNode().addItem(t);i.setHighlights(e.getMatchFields())}}));this.getRootNode().enableRender();this.getRootNode().render(true)}},{key:"getDynamicEntities",value:function e(t){const i=[];
162this.getDialog().getEntities().forEach((e=>{if(e.isSearchable()){const n=e.getSearchCacheLimits().some((e=>e.test(t.getQuery())));if(n){i.push(e.getId())}}}));return i}},{key:"isQueryCacheable",value:function e(t){return t.isCacheable()&&!t.hasDynamicSearch()}},{key:"isQueryLoaded",value:function e(t){let i=false;this.queryCache.forEach((e=>{if(i===false&&t.getQuery().startsWith(e)){i=true}}));return i}},{key:"addCacheQuery",value:function e(t){if(this.isQueryCacheable(t)){this.queryCache.add(t.getQuery())}}},{key:"removeCacheQuery",value:function e(t){this.queryCache.delete(t.getQuery())}},{key:"shouldLoad",value:function e(t){if(!this.isQueryCacheable(t)){return true}if(!this.getDialog().hasDynamicSearch()){return false}return!this.isQueryLoaded(t)}},{key:"load",value:function e(i){if(!this.shouldLoad(i)){return}this.addCacheQuery(i);this.getStub().hide();this.getSearchLoader().show();t.ajax.runAction("ui.entityselector.doSearch",{json:{dialog:this.getDialog().getAjaxJson(),searchQuery:i.getAjaxJson()},onrequeststart:e=>{this.queryXhr=e},getParameters:{context:this.getDialog().getContext()}}).then((e=>{this.getSearchLoader().hide();if(!e||!e.data||!e.data.dialog||!e.data.dialog.items){this.removeCacheQuery(i);this.toggleEmptyResult();this.getDialog().emit("SearchTab:onLoad",{searchTab:this});return}if(e.data.searchQuery&&e.data.searchQuery.cacheable===false){this.removeCacheQuery(i);if(this.getLastSearchQuery()?.getQuery()!==i.getQuery()){this.loadWithDebounce()}}if(t.Type.isArrayFilled(e.data.dialog.items)){const t=new Set;e.data.dialog.items.forEach((e=>{delete e.tabs;delete e.children;const i=this.getDialog().addItem(e);t.add(i)}));const i=this.isEmptyResult();const n=Ot.matchItems([...t.values()],this.getLastSearchQuery(),{matchAll:true});this.appendResults(n);if(i&&this.getDialog().shouldFocusOnFirst()){this.getDialog().focusOnFirstNode()}}if(t.Type.isArrayFilled(e.data.dialog.errors)){this.getDialog().emitEntityErrors(e.data.dialog.errors)}this.toggleEmptyResult();this.getDialog().emit("SearchTab:onLoad",{searchTab:this})})).catch((e=>{this.removeCacheQuery(i);this.getSearchLoader().hide();this.toggleEmptyResult();console.error(e)}))}},{key:"getSearchLoader",value:function e(){return this.searchLoader}},{key:"clearResults",value:function e(){this.getRootNode().removeChildren()}},{key:"isEmptyResult",value:function e(){return!this.getRootNode().hasChildren()}},{key:"toggleEmptyResult",value:function e(){if(this.isEmptyResult()){this.getStub().show()}else{this.getStub().hide()}}}])}(Ue);function Bt(e,t,i){return t=babelHelpers.getPrototypeOf(t),babelHelpers.possibleConstructorReturn(e,Lt()?Reflect.construct(t,[],babelHelpers.getPrototypeOf(e).constructor):t.apply(e,i))}function Lt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Lt=function(){return!!e})()}let Nt=babelHelpers.createClass((function e(){babelHelpers.classCallCheck(this,e)}));babelHelpers.defineProperty(Nt,"UNSENT","UNSENT");babelHelpers.defineProperty(Nt,"LOADING","LOADING");babelHelpers.defineProperty(Nt,"DONE","DONE");let Ft=babelHelpers.createClass((function e(){babelHelpers.classCallCheck(this,e)}));babelHelpers.defineProperty(Ft,"INSIDE","INSIDE");babelHelpers.defineProperty(Ft,"OUTSIDE","OUTSIDE");const Rt=new Map;let Mt=function(e){function r(e){var i;babelHelpers.classCallCheck(this,r);i=Bt(this,r);babelHelpers.defineProperty(i,"id",null);babelHelpers.defineProperty(i,"items",new Map);babelHelpers.defineProperty(i,"tabs",new Map);babelHelpers.defineProperty(i,"entities",new Map);babelHelpers.defineProperty(i,"targetNode",null);babelHelpers.defineProperty(i,"popup",null);babelHelpers.defineProperty(i,"cache",new t.Cache.MemoryCache);babelHelpers.defineProperty(i,"multiple",true);babelHelpers.defineProperty(i,"hideOnSelect",null);babelHelpers.defineProperty(i,"hideOnDeselect",null);babelHelpers.defineProperty(i,"addTagOnSelect",null);babelHelpers.defineProperty(i,"clearSearchOnSelect",true);babelHelpers.defineProperty(i,"context",null);babelHelpers.defineProperty(i,"selectedItems",new Set);babelHelpers.defineProperty(i,"preselectedItems",[]);babelHelpers.defineProperty(i,"undeselectedItems",[]);babelHelpers.defineProperty(i,"dropdownMode",false);babelHelpers.defineProperty(i,"frozen",false);babelHelpers.defineProperty(i,"frozenProps",{});babelHelpers.defineProperty(i,"hideByEsc",true);babelHelpers.defineProperty(i,"autoHide",true);babelHelpers.defineProperty(i,"autoHideHandler",null);babelHelpers.defineProperty(i,"offsetTop",5);babelHelpers.defineProperty(i,"offsetLeft",0);
162babelHelpers.defineProperty(i,"cacheable",true);babelHelpers.defineProperty(i,"width",565);babelHelpers.defineProperty(i,"height",420);babelHelpers.defineProperty(i,"maxLabelWidth",160);babelHelpers.defineProperty(i,"minLabelWidth",38);babelHelpers.defineProperty(i,"alwaysShowLabels",false);babelHelpers.defineProperty(i,"showAvatars",true);babelHelpers.defineProperty(i,"compactView",false);babelHelpers.defineProperty(i,"activeTab",null);babelHelpers.defineProperty(i,"recentTab",null);babelHelpers.defineProperty(i,"searchTab",null);babelHelpers.defineProperty(i,"rendered",false);babelHelpers.defineProperty(i,"loadState",Nt.UNSENT);babelHelpers.defineProperty(i,"loader",null);babelHelpers.defineProperty(i,"tagSelector",null);babelHelpers.defineProperty(i,"tagSelectorMode",null);babelHelpers.defineProperty(i,"tagSelectorHeight",null);babelHelpers.defineProperty(i,"saveRecentItemsWithDebounce",t.Runtime.debounce(i.saveRecentItems,2e3,i));babelHelpers.defineProperty(i,"recentItemsToSave",[]);babelHelpers.defineProperty(i,"recentItemsLimit",null);babelHelpers.defineProperty(i,"navigation",null);babelHelpers.defineProperty(i,"header",null);babelHelpers.defineProperty(i,"footer",null);babelHelpers.defineProperty(i,"popupOptions",{});babelHelpers.defineProperty(i,"focusOnFirst",true);babelHelpers.defineProperty(i,"focusedNode",null);babelHelpers.defineProperty(i,"clearUnavailableItems",false);babelHelpers.defineProperty(i,"overlappingObserver",null);babelHelpers.defineProperty(i,"offsetAnimation",true);babelHelpers.defineProperty(i,"customData",Object.create(null));i.setEventNamespace("BX.UI.EntitySelector.Dialog");const n=t.Type.isPlainObject(e)?e:{};i.id=t.Type.isStringFilled(n.id)?n.id:`ui-selector-${t.Text.getRandom().toLowerCase()}`;i.multiple=t.Type.isBoolean(n.multiple)?n.multiple:true;i.context=t.Type.isStringFilled(n.context)?n.context:null;i.clearUnavailableItems=n.clearUnavailableItems===true;i.compactView=n.compactView===true;i.dropdownMode=t.Type.isBoolean(n.dropdownMode)?n.dropdownMode:false;i.alwaysShowLabels=t.Type.isBoolean(n.alwaysShowLabels)?n.alwaysShowLabels:false;if(t.Type.isArray(n.entities)){n.entities.forEach((e=>{i.addEntity(e)}))}if(n.tagSelector instanceof ht){i.tagSelectorMode=Ft.OUTSIDE;i.setTagSelector(n.tagSelector)}else if(n.enableSearch===true){const e={placeholder:t.Loc.getMessage("UI_TAG_SELECTOR_SEARCH_PLACEHOLDER"),maxHeight:102,textBoxWidth:105};const s=t.Type.isPlainObject(n.tagSelectorOptions)?n.tagSelectorOptions:{};const r={dialogOptions:null,showTextBox:true,showAddButton:false,showCreateButton:false,multiple:i.isMultiple()};const o=Object.assign(e,s,r);const l=new ht(o);i.tagSelectorMode=Ft.INSIDE;i.setTagSelector(l)}i.setTargetNode(n.targetNode);i.setHideOnSelect(n.hideOnSelect);i.setHideOnDeselect(n.hideOnDeselect);i.setAddTagOnSelect(n.addTagOnSelect);i.setClearSearchOnSelect(n.clearSearchOnSelect);i.setWidth(n.width);void i.setHeight(n.height);i.setAutoHide(n.autoHide);i.setAutoHideHandler(n.autoHideHandler);i.setHideByEsc(n.hideByEsc);i.setOffsetLeft(n.offsetLeft);i.setOffsetTop(n.offsetTop);i.setCacheable(n.cacheable);i.setFocusOnFirst(n.focusOnFirst);i.setShowAvatars(n.showAvatars);i.setRecentItemsLimit(n.recentItemsLimit);i.setOffsetAnimation(n.offsetAnimation);i.recentTab=new kt(i,n.recentTabOptions);i.searchTab=new wt(i,n.searchTabOptions,n.searchOptions);i.addTab(i.recentTab);i.addTab(i.searchTab);i.setPreselectedItems(n.preselectedItems);i.setUndeselectedItems(n.undeselectedItems);i.setOptions(n);const s=n.preload===true||i.getPreselectedItems().length>0;if(s){i.load()}if(t.Type.isPlainObject(n.popupOptions)){const e=new Set(["overlay","bindOptions","targetContainer","zIndexOptions","events","animation","className","focusTrap"]);const t={};Object.keys(n.popupOptions).forEach((i=>{if(e.has(i)){t[i]=n.popupOptions[i]}}));i.popupOptions=t}i.navigation=new ct(i);new dt(i);i.subscribe("ItemNode:onFocus",i.handleItemNodeFocus.bind(i));i.subscribe("ItemNode:onUnfocus",i.handleItemNodeUnfocus.bind(i));i.subscribeFromOptions(n.events);Rt.set(i.id,i);return i}babelHelpers.inherits(r,e);return babelHelpers.createClass(r,[{key:"show",value:function e(){this.load();this.getPopup().show()}},{key:"hide",value:function e(){this.getPopup().close()}},{key:"destroy",value:function e(){if(this.destroyed){return}this.destroyed=true;
162this.emit("onDestroy");this.disconnectTabOverlapping();Rt.delete(this.getId());if(this.isRendered()){this.getPopup().destroy()}for(const e in this){if(this.hasOwnProperty(e)){delete this[e]}}Object.setPrototypeOf(this,null);this.destroyed=true}},{key:"isOpen",value:function e(){return this.popup&&this.popup.isShown()}},{key:"adjustPosition",value:function e(){if(this.isRendered()){this.getPopup().adjustPosition()}}},{key:"search",value:function e(n){const s=t.Type.isStringFilled(n)?n.trim():"";const r=new i.BaseEvent({data:{query:s}});this.emit("onBeforeSearch",r);if(r.isDefaultPrevented()){return}if(!t.Type.isStringFilled(s)){this.selectFirstTab();if(this.getSearchTab()){this.getSearchTab().clearResults()}}else if(this.getSearchTab()){this.selectTab(this.getSearchTab().getId());this.getSearchTab().search(s)}this.emit("onSearch",{query:s})}},{key:"addItem",value:function e(i){if(!t.Type.isPlainObject(i)){throw new Error("EntitySelector.addItem: wrong item options.")}let n=this.getItem(i);if(!n){n=new Le(i);const e=this.getUndeselectedItems().some((e=>e[0]===n.getEntityId()&&String(e[1])===String(n.getId())));if(e){n.setDeselectable(false)}n.setDialog(this);const t=this.getEntity(n.getEntityId());if(t===null){this.addEntity({id:n.getEntityId()})}let s=this.items.get(n.getEntityId());if(!s){s=new Map;this.items.set(n.getEntityId(),s)}s.set(String(n.getId()),n);if(n.isSelected()){this.handleItemSelect(n)}}let s=[];if(t.Type.isArray(i.tabs)){s=i.tabs}else if(t.Type.isStringFilled(i.tabs)){s=[i.tabs]}const r=t.Type.isArray(i.children)?i.children:[];s.forEach((e=>{const t=this.getTab(e);if(t){const e=t.getRootNode().addItem(n,i.nodeOptions);e.addChildren(r)}}));return n}},{key:"removeItem",value:function e(t){t=this.getItem(t);if(t){this.handleItemDeselect(t);t.getNodes().forEach((e=>{e.getParentNode().removeChild(e)}));const e=this.getEntityItemsInternal(t.getEntityId());if(e){e.delete(String(t.getId()));if(e.size===0){this.items.delete(t.getEntityId())}}}return t}},{key:"removeItems",value:function e(){this.getItemsInternal().forEach((e=>{e.forEach((e=>{this.removeItem(e)}))}))}},{key:"getItem",value:function e(i){let n=null;let s=null;if(t.Type.isArray(i)&&i.length===2){[s,n]=i}else if(i instanceof Le){n=i.getId();s=i.getEntityId()}else if(t.Type.isObjectLike(i)){({id:n,entityId:s}=i)}const r=this.getEntityItemsInternal(s);if(r){return r.get(String(n))||null}return null}},{key:"getSelectedItems",value:function e(){return Array.from(this.selectedItems)}},{key:"getItems",value:function e(){const t=[];this.getItemsInternal().forEach((e=>{Array.prototype.push.apply(t,Array.from(e.values()))}));return t}},{key:"getItemsInternal",value:function e(){return this.items}},{key:"getEntityItems",value:function e(t){const i=this.getEntityItemsInternal(t);return i===null?[]:Array.from(i.values())}},{key:"getEntityItemsInternal",value:function e(t){return this.items.get(t)||null}},{key:"validateItemIds",value:function e(i){if(!t.Type.isArrayFilled(i)){return[]}const n=[];i.forEach((e=>{if(!t.Type.isArray(e)||e.length!==2){return}const[i,s]=e;if(t.Type.isStringFilled(i)&&(t.Type.isStringFilled(s)||t.Type.isNumber(s))){n.push(e)}}));return n}},{key:"addTab",value:function e(i){if(t.Type.isPlainObject(i)){i=new Ue(this,i)}if(!(i instanceof Ue)){throw new Error("EntitySelector: a tab must be an instance of EntitySelector.Tab.")}if(this.getTab(i.getId())){console.error(`EntitySelector: the "${i.getId()}" tab is already existed.`);return i}i.setDialog(this);this.tabs.set(i.getId(),i);if(this.isRendered()){this.insertTab(i)}return i}},{key:"getTabs",value:function e(){return Array.from(this.tabs.values())}},{key:"getTab",value:function e(t){return this.tabs.get(t)||null}},{key:"getRecentTab",value:function e(){return this.recentTab}},{key:"getSearchTab",value:function e(){return this.searchTab}},{key:"selectTab",value:function e(t){const i=this.getTab(t);if(!i||i===this.getActiveTab()){return i}if(this.getActiveTab()){this.getActiveTab().deselect()}this.activeTab=i;i.select();if(!i.isRendered()){i.render()}requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.focusSearch()}))}));this.clearNodeFocus();if(this.shouldFocusOnFirst()){this.focusOnFirstNode()}this.adjustHeader();this.adjustFooter();return i}},{key:"insertTab",value:function e(i){i.renderLabel();i.renderContainer();t.Dom.append(i.getLabelContainer(),this.getLabelsContainer());t.Dom.append(i.getContainer(),this.getTabContentsContainer());if(i.getHeader()){t.Dom.append(i.getHeader().getContainer(),this.getHeaderContainer())}if(i.getFooter()){t.Dom.append(i.getFooter().getContainer(),this.getFooterContainer())}}},{key:"selectFirstTab",value:function e(t=true){const i=this.getTabs();for(let e=0;e<i.length;e++){const n=i[e];if(t===false||n.isVisible()){return this.selectTab(n.getId())}}if(this.isDropdownMode()){return this.selectTab(this.getRecentTab().getId())}return null}},{key:"selectLastTab",value:function e(t=true){const i=this.getTabs();for(let e=i.length-1;e>=0;e--){const n=i[e];if(t===false||n.isVisible()){return this.selectTab(n.getId())}}if(this.isDropdownMode()){return this.selectTab(this.getRecentTab().getId())}return null}},{key:"getActiveTab",value:function e(){return this.activeTab}},{key:"getNextTab",value:function e(t=true){let i=null;let n=false;const s=this.getTabs();for(let e=0;e<s.length;e++){const r=s[e];if(t&&!r.isVisible()){continue}if(r===this.getActiveTab()){n=true}else if(n){i=r;break}}return i}},{key:"getPreviousTab",value:function e(t=true){let i=null;let n=false;const s=this.getTabs();for(let e=s.length-1;e>=0;e--){const r=s[e];if(t&&!r.isVisible()){continue}if(r===this.getActiveTab()){n=true}else if(n){i=r;break}}return i}},{key:"removeTab",value:function e(i){const n=this.getTab(i);if(!n){return}n.getRootNode().removeChildren();this.tabs.delete(i);t.Dom.remove(n.getLabelContainer(),this.getLabelsContainer());t.Dom.remove(n.getContainer(),this.getTabContentsContainer());if(n.getHeader()){t.Dom.remove(n.getHeader().getContainer(),this.getHeaderContainer())}if(n.getFooter()){t.Dom.remove(n.getFooter().getContainer(),this.getFooterContainer())}this.selectFirstTab()}},{key:"addEntity",value:function e(i){if(t.Type.isPlainObject(i)){i=new De(i)}if(!(i instanceof De)){throw new Error("EntitySelector: an entity must be an instance of EntitySelector.Entity.")}if(this.hasEntity(i.getId())){console.error(`EntitySelector: the "${i.getId()}" entity is already existed.`);return i}this.entities.set(i.getId(),i);return i}},{key:"getEntity",value:function e(t){return this.entities.get(t)||null}},{key:"hasEntity",value:function e(t){return this.entities.has(t)}},{key:"getEntities",value:function e(){return Array.from(this.entities.values())}},{key:"removeEntity",value:function e(t){this.removeEntityItems(t);this.entities.delete(t)}},{key:"removeEntityItems",value:function e(t){const i=this.getEntityItemsInternal(t);
162if(i){i.forEach((e=>{this.removeItem(e)}))}}},{key:"getHeader",value:function e(){return this.header}},{key:"getActiveHeader",value:function e(){if(!this.getActiveTab()){return null}if(this.getActiveTab().getHeader()){return this.getActiveTab().getHeader()}return this.getHeader()&&this.getActiveTab().canShowDefaultHeader()?this.getHeader():null}},{key:"adjustHeader",value:function e(){if(!this.getActiveTab()){return}if(this.getActiveTab().getHeader()){if(this.getHeader()){this.getHeader().hide()}this.getActiveTab().getHeader().show()}else{if(this.getHeader()){if(this.getActiveTab().canShowDefaultHeader()){this.getHeader().show()}else{this.getHeader().hide()}}}}},{key:"setHeader",value:function e(i,n){let s=null;if(i!==null){s=this.constructor.createHeader(this,i,n);if(s===null){return null}}if(this.isRendered()&&this.getHeader()!==null){t.Dom.remove(this.getHeader().getContainer());this.adjustHeader()}this.header=s;if(this.isRendered()){this.appendHeader(s);this.adjustHeader()}return s}},{key:"appendHeader",value:function e(i){if(i instanceof $e){t.Dom.append(i.getContainer(),this.getHeaderContainer())}}},{key:"getFooter",value:function e(){return this.footer}},{key:"getActiveFooter",value:function e(){if(!this.getActiveTab()){return null}if(this.getActiveTab().getFooter()){return this.getActiveTab().getFooter()}return this.getFooter()&&this.getActiveTab().canShowDefaultFooter()?this.getFooter():null}},{key:"adjustFooter",value:function e(){if(!this.getActiveTab()){return}if(this.getActiveTab().getFooter()){if(this.getFooter()){this.getFooter().hide()}this.getActiveTab().getFooter().show()}else{if(this.getFooter()){if(this.getActiveTab().canShowDefaultFooter()){this.getFooter().show()}else{this.getFooter().hide()}}}}},{key:"setFooter",value:function e(i,n){let s=null;if(i!==null){s=this.constructor.createFooter(this,i,n);if(s===null){return null}}if(this.isRendered()&&this.getFooter()!==null){t.Dom.remove(this.getFooter().getContainer());this.adjustFooter()}this.footer=s;if(this.isRendered()){this.appendFooter(s);this.adjustFooter()}return s}},{key:"appendFooter",value:function e(i){if(i instanceof We){t.Dom.append(i.getContainer(),this.getFooterContainer())}}},{key:"getId",value:function e(){return this.id}},{key:"getContext",value:function e(){return this.context}},{key:"getNavigation",value:function e(){return this.navigation}},{key:"deselectAll",value:function e(){this.getSelectedItems().forEac
162h((e=>{e.deselect()}))}},{key:"isMultiple",value:function e(){return this.multiple}},{key:"setTargetNode",value:function e(i){if(!t.Type.isDomNode(i)&&!t.Type.isNull(i)&&!t.Type.isObject(i)){return}this.targetNode=i;if(this.isRendered()){this.getPopup().setBindElement(this.targetNode);this.getPopup().adjustPosition()}}},{key:"getTargetNode",value:function e(){if(this.targetNode===null){if(this.getTagSelectorMode()===Ft.OUTSIDE){return this.getTagSelector().getOuterContainer()}}return this.targetNode}},{key:"setHideOnSelect",value:function e(i){if(t.Type.isBoolean(i)){this.hideOnSelect=i}}},{key:"shouldHideOnSelect",value:function e(){if(this.hideOnSelect!==null){return this.hideOnSelect}return!this.isMultiple()}},{key:"setHideOnDeselect",value:function e(i){if(t.Type.isBoolean(i)){this.hideOnDeselect=i}}},{key:"shouldHideOnDeselect",value:function e(){if(this.hideOnDeselect!==null){return this.hideOnDeselect}return false}},{key:"setClearSearchOnSelect",value:function e(i){if(t.Type.isBoolean(i)){this.clearSearchOnSelect=i}}},{key:"shouldClearSearchOnSelect",value:function e(){return this.clearSearchOnSelect}},{key:"setAddTagOnSelect",value:function e(i){if(t.Type.isBoolean(i)){this.addTagOnSelect=i}}},{key:"shouldAddTagOnSelect",value:function e(){if(this.addTagOnSelect!==null){return this.addTagOnSelect}return this.isMultiple()||this.isTagSelectorOutside()}},{key:"setShowAvatars",value:function e(i){if(t.Type.isBoolean(i)){this.showAvatars=i;
162if(this.isRendered()){this.getTabs().forEach((e=>{e.renderContainer()}))}}}},{key:"shouldShowAvatars",value:function e(){return this.showAvatars}},{key:"setRecentItemsLimit",value:function e(i){if(t.Type.isNumber(i)&&i>0){this.recentItemsLimit=i}}},{key:"getRecentItemsLimit",value:function e(){return this.recentItemsLimit}},{key:"setOffsetAnimation",value:function e(i){if(t.Type.isBoolean(i)){this.offsetAnimation=i;if(this.isRendered()&&!this.offsetAnimation){t.Dom.removeClass(this.getPopup().getPopupContainer(),"ui-selector-popup-offset-animation")}}}},{key:"isCompactView",value:function e(){return this.compactView}},{key:"setAutoHide",value:function e(i){if(t.Type.isBoolean(i)){this.autoHide=i;if(this.isRendered()){this.getPopup().setAutoHide(i)}}}},{key:"isAutoHide",value:function e(){return this.autoHide}},{key:"setAutoHideHandler",value:function e(i){if(t.Type.isFunction(i)||i===null){this.autoHideHandler=i}}},{key:"setHideByEsc",value:function e(i){if(t.Type.isBoolean(i)){this.hideByEsc=i;if(this.isRendered()){this.getPopup().setClosingByEsc(i)}}}},{key:"shouldHideByEsc",value:function e(){return this.hideByEsc}},{key:"getWidth",value:function e(){return this.width}},{key:"setWidth",value:function e(i){if(t.Type.isNumber(i)&&i>0){this.width=i;if(this.isRendered()){t.Dom.style(this.getContainer(),"width",`${i}px`)}}}},{key:"getHeight",value:function e(){return this.height}},{key:"setHeight",value:function e(i){if(t.Type.isNumber(i)&&i>0){this.height=i;if(this.isRendered()){t.Dom.style(this.getContainer(),"height",`${i}px`);return y.handleTransitionEnd(this.getContainer(),"height")}else{return Promise.resolve()}}else{return Promise.resolve()}}},{key:"getOffsetLeft",value:function e(){return this.offsetLeft}},{key:"setOffsetLeft",value:function e(i){if(t.Type.isNumber(i)&&i>=0){this.offsetLeft=i;if(this.isRendered()){this.getPopup().setOffset({offsetLeft:i});this.adjustPosition()}}}},{key:"getOffsetTop",value:function e(){return this.offsetTop}},{key:"setOffsetTop",value:function e(i){if(t.Type.isNumber(i)&&i>=0){this.offsetTop=i;if(this.isRendered()){this.getPopup().setOffset({offsetTop:i});this.adjustPosition()}}}},{key:"getZindex",value:function e(){return this.getPopup().getZindex()}},{key:"isCacheable",value:function e(){return this.cacheable}},{key:"setCacheable",value:function e(i){if(t.Type.isBoolean(i)){this.cacheable=i;if(this.isRendered()){this.getPopup().setCacheable(i)}}}},{key:"shouldFocusOnFirst",value:function e(){return this.focusOnFirst}},{key:"setFocusOnFirst",value:function e(i){if(t.Type.isBoolean(i)){this.focusOnFirst=i}}},{key:"focusOnFirstNode",value:function e(){if(this.getActiveTab()){const e=this.getActiveTab().getRootNode().getFirstChild();if(e){e.focus();return e}}return null}},{key:"getFocusedNode",value:function e(){return this.focusedNode}},{key:"clearNodeFocus",value:function e(){if(this.focusedNode){this.focusedNode.unfocus();this.focusedNode=null}}},{key:"isDropdownMode",value:function e(){return this.dropdownMode}},{key:"setPreselectedItems",value:function e(t){this.preselectedItems=this.validateItemIds(t)}},{key:"getPreselectedItems",value:function e(){return this.preselectedItems}},{key:"setUndeselectedItems",value:function e(t){this.undeselectedItems=this.validateItemIds(t)}},{key:"getUndeselectedItems",value:function e(){return this.undeselectedItems}},{key:"setCustomData",value:function e(i,n){if(t.Type.isNull(i)){this.customData=Object.create(null)}else if(t.Type.isPlainObject(i)){Object.entries(i).forEach((e=>{const[t,i]=e;this.setCustomData(t,i)}))}else if(t.Type.isString(i)){if(t.Type.isNull(n)){delete this.customData[i]}else if(!t.Type.isUndefined(n)){this.customData[i]=n}}}},{key:"getCustomData",value:function e(i){if(t.Type.isUndefined(i)){return this.customData}if(t.Type.isStringFilled(i)){return this.customData[i]}return undefined}},{key:"setOptions",value:function e(i){const n=t.Type.isPlainObject(i)?i:{};this.setCustomData(n.customData);
162if(t.Type.isArray(n.tabs)){n.tabs.forEach((e=>{this.addTab(e)}))}if(t.Type.isArray(n.selectedItems)){n.selectedItems.forEach((e=>{const i=Object.assign({},t.Type.isPlainObject(e)?e:{});i.selected=true;this.addItem(i)}))}if(t.Type.isArray(n.items)){n.items.forEach((e=>{this.addItem(e)}))}this.setHeader(n.header,n.headerOptions);this.setFooter(n.footer,n.footerOptions)}},{key:"getMaxLabelWidth",value:function e(){return this.maxLabelWidth}},{key:"getMinLabelWidth",value:function e(){return this.minLabelWidth}},{key:"expandLabels",value:function e(i=true){const n=parseInt(this.getPopup().getPopupContainer().style.left,10);if(n>this.getMinLabelWidth()){t.Dom.removeClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-hide");if(i){t.Dom.addClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-show");t.Dom.style(this.getLabelsContainer(),"max-width",`${Math.min(n,this.getMaxLabelWidth())}px`);y.handleTransitionEnd(this.getLabelsContainer(),"max-width").then((()=>{t.Dom.removeClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-show");t.Dom.addClass(this.getLabelsContainer(),"ui-selector-tab-labels--active")})).catch((()=>{}))}else{t.Dom.style(this.getLabelsContainer(),"max-width",`${Math.min(n,this.getMaxLabelWidth())}px`)}}else{t.Dom.addClass(this.getLabelsContainer(),"ui-selector-tab-labels--active")}}},{key:"collapseLabels",value:function e(i=true){t.Dom.removeClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-show");t.Dom.removeClass(this.getLabelsContainer(),"ui-selector-tab-labels--active");if(i){t.Dom.addClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-hide");y.handleTransitionEnd(this.getLabelsContainer(),"max-width").then((()=>{t.Dom.removeClass(this.getLabelsContainer(),"ui-selector-tab-labels--animate-hide")})).catch((()=>{}))}t.Dom.style(this.getLabelsContainer(),"max-width",null)}},{key:"getTagSelector",value:function e(){return this.tagSelector}},{key:"getTagSelectorMode",value:function e(){return this.tagSelectorMode}},{key:"isTagSelectorInside",value:function e(){return this.getTagSelector()&&this.getTagSelectorMode()===Ft.INSIDE}},{key:"isTagSelectorOutside",value:function e(){return this.getTagSelector()&&this.getTagSelectorMode()===Ft.OUTSIDE}},{key:"getTagSelectorQuery",value:function e(){return this.getTagSelector()?this.getTagSelector().getTextBoxValue():""}},{key:"setTagSelector",value:function e(i){this.tagSelector=i;this.tagSelector.subscribe("onInput",t.Runtime.debounce(this.handleTagSelectorInput,200,this));this.tagSelector.subscribe("onAddButtonClick",this.handleTagSelectorAddButtonClick.bind(this));this.tagSelector.subscribe("onTagRemove",this.handleTagSelectorTagRemove.bind(this));this.tagSelector.subscribe("onAfterTagRemove",this.handleTagSelectorAfterTagRemove.bind(this));this.tagSelector.subscribe("onAfterTagAdd",this.handleTagSelectorAfterTagAdd.bind(this));this.tagSelector.subscribe("onContainerClick",this.handleTagSelectorClick.bind(this));this.tagSelector.setDialog(this)}},{key:"focusSearch",value:function e(){if(this.getTagSelector()){if(this.getActiveTab()!==this.getSearchTab()){this.getTagSelector().clearTextBox()}this.getTagSelector().focusTextBox()}}},{key:"clearSearch",value:function e(){if(this.getTagSelector()){this.getTagSelector().clearTextBox();if(this.getActiveTab()===this.getSearchTab()){this.selectFirstTab()}}}},{key:"getLoader",value:function e(){if(this.loader===null){this.loader=new s.Loader({target:this.getTabsContainer(),size:100})}return this.loader}},{key:"showLoader",value:function e(){void this.getLoader().show()}},{key:"hideLoader",value:function e(){if(this.loader!==null){void this.getLoader().hide()}}},{key:"destroyLoader",value:function e(){if(this.loader!==null){this.getLoader().destroy()}this.loader=null}},{key:"getPopup",value:function e(){if(this.popup!==null){return this.popup}
162this.getTabs().forEach((e=>{this.insertTab(e)}));const t={...this.popupOptions};const i=t.events;delete t.events;this.popup=new n.Popup({contentPadding:0,padding:0,offsetTop:this.getOffsetTop(),offsetLeft:this.getOffsetLeft(),animation:{showClassName:"ui-selector-popup-animation-show",closeClassName:"ui-selector-popup-animation-close",closeAnimationType:"animation"},bindElement:this.getTargetNode(),bindOptions:{forceBindPosition:true},focusTrap:this.getTagSelector()===null?undefined:false,autoHide:this.isAutoHide(),autoHideHandler:this.handleAutoHide.bind(this),closeByEsc:this.shouldHideByEsc(),cacheable:this.isCacheable(),events:{onFirstShow:this.handlePopupFirstShow.bind(this),onShow:this.handlePopupShow.bind(this),onAfterShow:this.handlePopupAfterShow.bind(this),onAfterClose:this.handlePopupAfterClose.bind(this),onDestroy:this.handlePopupDestroy.bind(this)},content:this.getContainer(),...t});this.popup.subscribeFromOptions(i);this.rendered=true;this.selectFirstTab();return this.popup}},{key:"isRendered",value:function e(){return this.rendered}},{key:"getContainer",value:function e(){return this.cache.remember("container",(()=>{let e="";if(this.getTagSelectorMode()===Ft.INSIDE){e=t.Tag.render`<div class="ui-selector-search"></div>`;this.getTagSelector().renderTo(e)}const i=this.isCompactView()?" ui-selector-dialog--compact-view":"";return t.Tag.render`
163				<div
164					class="ui-selector-dialog${i}"
165					style="width:${this.getWidth()}px; height:${this.getHeight()}px;"
166				>
167					${this.getHeaderContainer()}
168					${e}
169					${this.getTabsContainer()}
170					${this.getFooterContainer()}
171				</div>
172			`}))}},{key:"getTabsContainer",value:function e(){return this.cache.remember("tabs-container",(()=>t.Tag.render`
173				<div class="ui-selector-tabs">
174					${this.getTabContentsContainer()}
175					${this.getLabelsContainer()}
176				</div>
177			`))}},{key:"getTabContentsContainer",value:function e(){return this.cache.remember("tab-contents",(()=>t.Tag.render`<div class="ui-selector-tab-contents"></div>`))}},{key:"getLabelsContainer",value:function e(){return this.cache.remember("labels-container",(()=>t.Tag.render`
178				<div
179					class="ui-selector-tab-labels"
180					onmouseenter="${this.alwaysShowLabels?null:this.handleLabelsMouseEnter.bind(this)}"
181					onmouseleave="${this.alwaysShowLabels?null:this.handleLabelsMouseLeave.bind(this)}"
182				></div>
183			`))}},{key:"getHeaderContainer",value:function e(){return this.cache.remember("header",(()=>{const e=this.getHeader()&&this.getHeader().getContainer();return t.Tag.render`
184				<div class="ui-selector-header-container">${e?e:""}</div>
185			`}))}},{key:"getFooterContainer",value:function e(){return this.cache.remember("footer",(()=>{const e=this.getFooter()&&this.getFooter().getContainer();return t.Tag.render`
186				<div class="ui-selector-footer-container">${e?e:""}</div>
187			`}))}},{key:"freeze",value:function e(){if(this.isFrozen()){return}this.frozenProps={autoHide:this.isAutoHide(),hideByEsc:this.shouldHideByEsc()};this.setAutoHide(false);this.setHideByEsc(false);this.getNavigation().disable();t.Dom.addClass(this.getContainer(),"ui-selector-dialog--freeze");this.frozen=true}},{key:"unfreeze",value:function e(){if(!this.isFrozen()){return}this.setAutoHide(this.frozenProps.autoHide!==false);this.setHideByEsc(this.frozenProps.hideByEsc!==false);this.getNavigation().enable();t.Dom.removeClass(this.getContainer(),"ui-selector-dialog--freeze");this.frozen=false}},{key:"isFrozen",value:function e(){return this.frozen}},{key:"hasRecentItems",value:function e(){return new Promise(((e,i)=>{t.ajax.runAction("ui.entityselector.load",{json:{dialog:this.getAjaxJson()},getParameters:{context:this.getContext()}}).then((i=>{e(i.data&&i.data.dialog&&t.Type.isArrayFilled(i.data.dialog.recentItems))})).catch((e=>{i(e)}))}))}},{key:"load",value:function e(){if(this.loadState!==Nt.UNSENT||!this.hasDynamicLoad()){return}if(this.getTagSelector()){this.getTagSelector().lock()}setTimeout((()=>{if(this.destroyed){return}if(this.isLoading()){this.showLoader()}}),400);this.loadState=Nt.LOADING;t.ajax.runAction("ui.entityselector.load",{json:{dialog:this.getAjaxJson()},getParameters:{context:this.getContext()}}).then((e=>{if(this.destroyed){return}if(e&&e.data&&t.Type.isPlainObject(e.data.dialog)){this.loadState=Nt.DONE;const i=t.Type.isArrayFilled(e.data.dialog.entities)?e.data.dialog.entities:[];
187i.forEach((e=>{const t=this.getEntity(e.id);if(t){t.setDynamicSearch(e.dynamicSearch)}}));this.setOptions(e.data.dialog);this.getPreselectedItems().forEach((e=>{const t=this.getItem(e);if(t){t.select(true)}}));const n=e.data.dialog.recentItems;if(t.Type.isArray(n)){const i=new Map;const s=e.data.dialog.items;if(t.Type.isArray(s)){s.forEach((e=>{if(e.nodeOptions){const t=this.getItem(e);if(t){const n={...e.nodeOptions};delete n.dynamic;delete n.open;delete n.itemOrder;i.set(t,n)}}}))}const r=n.map((e=>{const t=this.getItem(e);return[t,i.get(t)]}));this.getRecentTab().getRootNode().addItems(r)}if(!this.getRecentTab().getRootNode().hasChildren()&&this.getRecentTab().getStub()){this.getRecentTab().getStub().show()}if(this.getTagSelector()){this.getTagSelector().unlock()}if(this.isRendered()){if(this.isDropdownMode()&&this.getActiveTab()===this.getRecentTab()){this.selectFirstTab()}else if(!this.getActiveTab()){this.selectFirstTab()}}this.focusSearch();this.destroyLoader();if(this.shouldFocusOnFirst()){this.focusOnFirstNode()}if(t.Type.isArrayFilled(e.data.dialog.errors)){this.emitEntityErrors(e.data.dialog.errors)}this.emit("onLoad")}})).catch((e=>{this.loadState=Nt.UNSENT;if(this.getTagSelector()){this.getTagSelector().unlock()}this.focusSearch();this.destroyLoader();this.emit("onLoadError",{error:e});console.error(e)}))}},{key:"isLoaded",value:function e(){return this.loadState===Nt.DONE}},{key:"isLoading",value:function e(){return this.loadState===Nt.LOADING}},{key:"hasDynamicLoad",value:function e(){let e=false;this.entities.forEach((t=>{e=e||t.hasDynamicLoad()}));return e}},{key:"hasDynamicSearch",value:function e(){let e=false;this.entities.forEach((t=>{e=e||t.isSearchable()&&t.hasDynamicSearch()}));return e}},{key:"saveRecentItem",value:function e(t){if(this.getContext()===null||!t.isSaveable()){return}this.recentItemsToSave.push(t);this.saveRecentItemsWithDebounce()}},{key:"saveRecentItems",value:function e(){if(!t.Type.isArrayFilled(this.recentItemsToSave)){return}t.ajax.runAction("ui.entityselector.saveRecentItems",{json:{dialog:this.getAjaxJson(),recentItems:this.recentItemsToSave.map((e=>e.getAjaxJson()))},getParameters:{context:this.getContext()}}).then((e=>{})).catch((e=>{console.error(e)}));this.recentItemsToSave=[]}},{key:"shouldClearUnavailableItems",value:function e(){return this.clearUnavailableItems}},{key:"handleTagSelectorInput",value:function e(){if(this.getTagSelectorMode()===Ft.OUTSIDE&&!this.isOpen()){this.show()}const t=this.getTagSelector().getTextBoxValue();this.search(t);this.adjustByTagSelector()}},{key:"handleTagSelectorAddButtonClick",value:function e(){this.show()}},{key:"handleTagSelectorTagRemove",value:function e(t){const{tag:i}=t.getData();const n=this.getItem({id:i.getId(),entityId:i.getEntityId()});if(n){n.deselect()}this.focusSearch()}},{key:"handleTagSelectorAfterTagRemove",value:function e(){this.adjustByTagSelector()}},{key:"handleTagSelectorAfterTagAdd",value:function e(){this.adjustByTagSelector()}},{key:"adjustByTagSelector",value:function e(){if(this.getTagSelectorMode()===Ft.OUTSIDE){this.adjustPosition()}else if(this.getTagSelectorMode()===Ft.INSIDE){const e=this.getTagSelector().calcHeight();if(e>0){const t=e-(this.tagSelectorHeight||this.getTagSelector().getMinHeight());this.tagSelectorHeight=e;if(t!==0){const e=this.getHeight();this.setHeight(e+t).then((()=>{this.adjustPosition()}))}}}}},{key:"handleTagSelectorClick",value:function e(){this.focusSearch()}},{key:"handleItemSelect",value:function e(t,i=true){const n=this.isMultiple()?i:this.getSelectedItems().length===0;if(!this.isMultiple()){this.deselectAll();if(this.getSelectedItems().length>0){console.error("EntitySelector: some items are still selected.",this.getSelectedItems())}}if(this.getTagSelector()&&this.shouldAddTagOnSelect()){const e=t.createTag();e.animate=n;this.getTagSelector().addTag(e)}this.selectedItems.add(t)}},{key:"handleItemDeselect",value:function e(t,i=true){const n=i&&this.isMultiple();this.selectedItems.delete(t);if(this.getTagSelector()){this.getTagSelector().removeTag({id:t.getId(),entityId:t.getEntityId()},n)}}},{key:"handlePopupAfterShow",value:function e(){this.focusSearch();this.adjustByTagSelector();
187this.emit("onShow")}},{key:"handlePopupFirstShow",value:function e(){this.emit("onFirstShow");this.observeTabOverlapping()}},{key:"handlePopupShow",value:function e(){if(this.offsetAnimation){requestAnimationFrame((()=>{requestAnimationFrame((()=>{t.Dom.addClass(this.getPopup().getPopupContainer(),"ui-selector-popup-offset-animation")}))}))}if(this.alwaysShowLabels){setTimeout((()=>{this.expandLabels(false)}),0)}}},{key:"handleAutoHide",value:function e(i){const n=i.target;const s=this.getPopup().getPopupContainer();if(n===s||s.contains(n)){return false}if(this.isTagSelectorOutside()&&n===this.getTagSelector().getTextBox()&&t.Type.isStringFilled(this.getTagSelector().getTextBoxValue())){return false}if(this.autoHideHandler!==null){const e=this.autoHideHandler(i,this);if(t.Type.isBoolean(e)){return e}}return true}},{key:"observeTabOverlapping",value:function e(){this.disconnectTabOverlapping();this.overlappingObserver=new MutationObserver((()=>{if(this.getLabelsContainer().offsetWidth>0){const e=parseInt(this.getPopup().getPopupContainer().style.left,10);if(e<this.getMinLabelWidth()){t.Dom.style(this.getPopup().getPopupContainer(),"left",`${this.getMinLabelWidth()}px`);this.collapseLabels(false)}else if(this.alwaysShowLabels){this.expandLabels(false)}}}));this.overlappingObserver.observe(this.getPopup().getPopupContainer(),{attributes:true,attributeFilter:["style"]})}},{key:"disconnectTabOverlapping",value:function e(){if(this.overlappingObserver){this.overlappingObserver.disconnect()}}},{key:"handlePopupAfterClose",value:function e(){if(this.isTagSelectorOutside()){if(this.getActiveTab()&&this.getActiveTab()===this.getSearchTab()){this.selectFirstTab()}this.getTagSelector().clearTextBox();this.getTagSelector().showAddButton();this.getTagSelector().hideTextBox()}if(this.offsetAnimation){t.Dom.removeClass(this.getPopup().getPopupContainer(),"ui-selector-popup-offset-animation")}this.emit("onHide")}},{key:"handlePopupDestroy",value:function e(){this.destroy()}},{key:"handleLabelsMouseEnter",value:function e(){this.expandLabels()}},{key:"handleLabelsMouseLeave",value:function e(){this.collapseLabels()}},{key:"handleItemNodeFocus",value:function e(t){const{node:i}=t.getData();if(this.focusedNode===i){return}this.clearNodeFocus();this.focusedNode=i}},{key:"handleItemNodeUnfocus",value:function e(){this.clearNodeFocus()}},{key:"getAjaxJson",value:function e(){return{id:this.getId(),context:this.getContext(),entities:this.getEntities(),preselectedItems:this.getPreselectedItems(),recentItemsLimit:this.getRecentItemsLimit(),clearUnavailableItems:this.shouldClearUnavailableItems()}}},{key:"emitEntityErrors",value:function e(t){const i=st.create(t);this.emit("Entity:onError",{errors:[...i]});this.getEntities().forEach((e=>{const t=e.getId();this.emit(`Entity:${t}:onError`,{errors:i.getByEntityId(t)})}))}}],[{key:"getById",value:function e(t){return Rt.get(t)||null}},{key:"getInstances",value:function e(){return Array.from(Rt.values())}},{key:"createHeader",value:function e(i,n,s){if(!t.Type.isStringFilled(n)&&!t.Type.isArrayFilled(n)&&!t.Type.isDomNode(n)&&!t.Type.isFunction(n)){return null}let r=null;const o=t.Type.isPlainObject(s)?s:{};if(t.Type.isFunction(n)||t.Type.isString(n)){const e=t.Type.isString(n)?t.Reflection.getClass(n):n;if(t.Type.isFunction(e)){r=new e(i,o);if(!(r instanceof $e)){console.error("EntitySelector: header is not an instance of BaseHeader.");r=null}}}if(n!==null&&!r){r=new pt(i,Object.assign({},o,{content:n}))}return r}},{key:"createFooter",value:function e(i,n,s){if(!t.Type.isStringFilled(n)&&!t.Type.isArrayFilled(n)&&!t.Type.isDomNode(n)&&!t.Type.isFunction(n)){return null}let r=null;const o=t.Type.isPlainObject(s)?s:{};if(t.Type.isFunction(n)||t.Type.isString(n)){const e=t.Type.isString(n)?t.Reflection.getClass(n):n;if(t.Type.isFunction(e)){r=new e(i,o);if(!(r instanceof We)){console.error("EntitySelector: footer is not an instance of BaseFooter.");r=null}}}if(n!==null&&!r){r=new vt(i,Object.assign({},o,{content:n}))}return r}}])}(i.EventEmitter);const jt={Dialog:Mt,Item:Le,Tab:Ue,Entity:De,TagSelector:ht,TagItem:ot,BaseHeader:$e,DefaultHeader:pt,BaseFooter:We,DefaultFooter:vt,BaseStub:Fe,DefaultStub:je,EntityError:Ke};e.BaseFooter=We;e.BaseHeader=$e;e.BaseStub=Fe;e.DefaultFooter=vt;e.DefaultHeader=pt;e.DefaultStub=je;e.Dialog=Mt;e.Entity=De;
187e.EntityError=Ke;e.EntitySelector=jt;e.Item=Le;e.Tab=Ue;e.TagItem=ot;e.TagSelector=ht})(this.BX.UI.EntitySelector=this.BX.UI.EntitySelector||{},BX,BX.Event,BX.Main,BX,BX.Collections,BX.UI.IconSet);
188//# sourceMappingURL=entity-selector.bundle.map.js

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.