Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/accessrights/dist/ |
Upload File : |
this.BX=this.BX||{};(function(e,t,s,i,o,r,n,a){"use strict";var l=babelHelpers.classPrivateFieldLooseKey("options");var c=babelHelpers.classPrivateFieldLooseKey("onItemSelect");var h=babelHelpers.classPrivateFieldLooseKey("onDeselect");var u=babelHelpers.classPrivateFieldLooseKey("normalizeType");var d=babelHelpers.classPrivateFieldLooseKey("decodeId");var p=babelHelpers.classPrivateFieldLooseKey("encoderId");class g{constructor(e){Object.defineProperty(this,p,{value:C});Object.defineProperty(this,d,{value:b});Object.defineProperty(this,u,{value:f});Object.defineProperty(this,h,{value:v});Object.defineProperty(this,c,{value:m});Object.defineProperty(this,l,{writable:true,value:void 0});babelHelpers.classPrivateFieldLooseBase(this,l)[l]=e}show(e,t,s){const i=[];for(const e in t){if(!Object.hasOwn(t,e)){continue}const s=babelHelpers.classPrivateFieldLooseBase(this,p)[p](e);i.push([s.entityName,s.id])}const o={...babelHelpers.classPrivateFieldLooseBase(this,l)[l].options,targetNode:s,preselectedItems:i,events:{"Item:onSelect":t=>{const s=t.data.item;babelHelpers.classPrivateFieldLooseBase(this,c)[c](s,e)},"Item:onDeselect":t=>{const s=t.data.item;babelHelpers.classPrivateFieldLooseBase(this,h)[h](s,e)}}};const r=new BX.UI.EntitySelector.Dialog(o);r.show()}}function m(e,t){let s=e.id;const i=babelHelpers.classPrivateFieldLooseBase(this,l)[l].entitiesIdsDecoder;if(a.Type.isFunction(i)){s=i(e)}let o=e.entityId;const n=babelHelpers.classPrivateFieldLooseBase(this,l)[l].normalizeType;if(a.Type.isFunction(n)){o=n(e.entityId)}const c={accessCodes:{[s]:o},columnId:t,item:{id:s,entityId:e.id,name:e.title.text,avatar:e.avatar}};r.EventEmitter.emit("BX.UI.AccessRights:addToAccessCodes",c)}function v(e,t){const s=babelHelpers.classPrivateFieldLooseBase(this,d)[d](e);const i=babelHelpers.classPrivateFieldLooseBase(this,u)[u](e.entityId);const o={accessCodes:{[s]:i},columnId:t};r.EventEmitter.emit("BX.UI.AccessRights:removeFromAccessCodes",o)}function f(e){const t=babelHelpers.classPrivateFieldLooseBase(this,l)[l].normalizeType;if(a.Type.isFunction(t)){return t(e)}return e}function b(e){const t=babelHelpers.classPrivateFieldLooseBase(this,l)[l].entitiesIdsDecoder;if(a.Type.isFunction(t)){return t(e)}return e.id}function C(e){const t=babelHelpers.classPrivateFieldLooseBase(this,l)[l].entitiesIdsEncoder;if(a.Type.isFunction(t)){return t(e)}return e}let E=e=>e,S,y;const T=a.Reflection.namespace("BX");var I=babelHelpers.classPrivateFieldLooseKey("makeChangedHash");var R=babelHelpers.classPrivateFieldLooseKey("storeChangedAccessId");var A=babelHelpers.classPrivateFieldLooseKey("filterOnlyChangedAccessRight");class P{constructor(e){var t;Object.defineProperty(this,A,{value:U});Object.defineProperty(this,R,{value:G});Object.defineProperty(this,I,{value:D});e=e||{};this.options=e;this.renderTo=e.renderTo;this.buttonPanel=T.UI.ButtonPanel||null;this.layout={container:null};this.component=e.component?e.component:null;this.actionSave=e.actionSave||P.ACTION_SAVE;this.actionDelete=e.actionDelete||P.ACTION_DELETE;this.actionLoad=e.actionLoad||P.ACTION_LOAD;this.mode=e.mode||P.MODE;this.openPopupEvent=e.openPopupEvent?e.openPopupEvent:null;this.popupContainer=e.popupContainer?e.popupContainer:null;this.additionalSaveParams=e.additionalSaveParams?e.additionalSaveParams:null;this.loadParams=e.loadParams?e.loadParams:null;this.loader=null;this.timer=null;this.needToLoadUserGroups=(t=e.needToLoadUserGroups)!=null?t:true;this.isSaveOnlyChangedRights=e.isSaveOnlyChangedRights||false;this.useEntitySelectorDialogAsPopup=e.useEntitySelectorDialogAsPopup||false;this.entitySelectorDialogOptions=e.entitySelectorDialogOptions||null;this.expandedGroups=[];this.groupElements=[];this.changedAccessIds=new Map;this.initData();if(e.userGroups){this.userGroups=e.userGroups}if(e.accessRights){this.accessRights=e.accessRights}this.isRequested=false;this.loadData();this.bindEvents()}bindEvents(){r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:updateRole",this.updateRole.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:selectAccessItems",this.updateAccessVariationRight.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:accessOn",this.updateAccessRight.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:accessOff",this.updateAccessRight.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:update",this.adjustButtonPanel.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:addRole",this.addUserGroup.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:addRole",this.addRoleColumn.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:copyRole",this.addRoleColumn.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:copyRole",this.addUserGroup.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:removeRole",this.removeRoleColumn.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:removeRole",this.adjustButtonPanel.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:toggleGroup",this.toggleGroup.bind(this));r.EventEmitter.subscribe("BX.Main.SelectorV2:onGetEntityTypes",this.onGetEntityTypes.bind(this))}initData(){this.accessRights=[];this.userGroups=[];this.accessRightsSections=[];this.headSection=null;this.members=[];this.columns=[];this.changedAccessIds=new Map}fireEventReset(){r.EventEmitter.emit("BX.UI.AccessRights:reset",this)}fireEventRefresh(){r.EventEmitter.emit("BX.UI.AccessRights:refresh",this)}getButtonPanel(){return this.buttonPanel}showNotification(e){T.UI.Notification.Center.notify({content:e,position:"top-right",autoHideDelay:3e3})}sendActionRequest(){if(this.isRequested){return}this.isRequested=true;r.EventEmitter.emit(this,"onBeforeSave",this);this.timer=setTimeout((()=>{this.blockGrid()}),1e3);let e=false;const t=[];for(let s=0;s<this.userGroups.length;s++){const i=this.userGroups[s];if(a.Text.toNumber(i.id)===0){e=true}let o=i.accessRights;if(this.isSaveOnlyChangedRights===true){o=babelHelpers.classPrivateFieldLooseBase(this,A)[A](o,i)}t.push({accessCodes:i.accessCodes,id:i.id,title:i.title,type:i.type,accessRights:o})}T.ajax.runComponentAction(this.component,this.actionSave,{mode:this.mode,data:{userGroups:t,parameters:this.additionalSaveParams}}).then((()=>{if(e){this.reloadGrid()}this.isRequested=false;this.showNotification(a.Loc.getMessage("JS_UI_ACCESSRIGHTS_STTINGS_HAVE_BEEN_SAVED"));this.unBlockGrid();this.fireEventRefresh();setTimeout((()=>{this.adjustButtonPanel()}));clearTimeout(this.timer);const t=this.buttonPanel.getContainer().querySelector(".ui-btn-wait");a.Dom.removeClass(t,"ui-btn-wait");this.changedAccessIds=new Map}),(e=>{let t="Error message";if(e.errors){t=e.errors[0].message}this.isRequested=false;this.showNotification(t);this.unBlockGrid();clearTimeout(this.timer);const s=this.buttonPanel.getContainer().querySelector(".ui-btn-wait");a.Dom.removeClass(s,"ui-btn-wait")}));r.EventEmitter.emit("BX.UI.AccessRights:preservation",this)}lock(){a.Dom.addClass(this.getMainContainer(),"--lock")}unlock(){a.Dom.removeClass(this.getMainContainer(),"--lock")}deleteActionRequest(e){if(this.isRequested){return}this.isRequested=true;this.timer=setTimeout((()=>{this.blockGrid()}),1e3);T.ajax.runComponentAction(this.component,this.actionDelete,{mode:this.mode,data:{roleId:e}}).then((()=>{this.isRequested=false;this.showNotification(a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ROLE_REMOVE"));this.unBlockGrid();clearTimeout(this.timer)}),(e=>{let t="Error message";if(e.errors){t=e.errors[0].message}this.isRequested=false;this.showNotification(t);this.unBlockGrid();clearTimeout(this.timer)}))}reloadGrid(){this.initData();T.ajax.runComponentAction(this.component,this.actionLoad,{mode:this.mode,data:{parameters:this.loadParams}}).then((e=>{if(e.data["ACCESS_RIGHTS"]&&e.data["USER_GROUPS"]){this.accessRights=e.data.ACCESS_RIGHTS;this.userGroups=e.data.USER_GROUPS;this.loadData();this.draw()}this.unBlockGrid()}),(e=>{console.error(e);this.unBlockGrid}))}blockGrid(){const e=this.layout.container.getBoundingClientRect().top<0?"0":this.layout.container.getBoundingClientRect().top;a.Dom.addClass(this.layout.container,"ui-access-rights-block");a.Dom.style(this.layout.container,"height","calc(100vh - "+e+"px)");setTimeout((()=>{a.Dom.style(this.layout.container,"height","calc(100vh - "+e+"px)")}));this.getLoader().show()}unBlockGrid(){a.Dom.removeClass(this.layout.container,"ui-access-rights-block");a.Dom.style(this.layout.container,"height",null);this.getLoader().hide()}getLoader(){if(!this.loader){this.loader=new t.Loader({target:this.layout.container})}return this.loader}removeRoleColumn(e){this.headSection.removeColumn(e.data);this.accessRightsSections.map((t=>{t.removeColumn(e.data)}));const t=this.userGroups.indexOf(e.data.userGroup);this.userGroups.splice(t,1);const s=e.data.userGroup.id;if(s>0){this.deleteActionRequest(s)}}addRoleColumn(e){const[t]=e.getData();if(!t){return}const s=this.accessRightsSections;for(let e=0;e<s.length;e++){t.headSection=false;t.newColumn=true;s[e].addColumn(t);s[e].scrollToRight(s[e].getColumnsContainer().scrollWidth-s[e].getColumnsContainer().offsetWidth,"stop")}t.headSection=true;t.newColumn=true;this.headSection.addColumn(t);this.actualizeExpandedGroups()}addUserGroup(e){let[t]=e.getData();t=t||{};this.userGroups.push(t)}updateRole(e){const t=e.getData();const s=this.userGroups.indexOf(t.userGroup);if(s>=0){this.userGroups[s].title=t.text}}adjustButtonPanel(){const e=this.getMainContainer().querySelectorAll(".ui-access-rights-column-item-changer-on");const t=this.getMainContainer().querySelectorAll(".ui-access-rights-column-new");const s=this.getMainContainer().querySelectorAll(".ui-access-rights-members-item-new");const i=this.getMainContainer().querySelectorAll(".ui-tag-selector-container");if(e.length>0||t.length>0||s.length>0||i.length>0){this.buttonPanel.show()}else{this.buttonPanel.hide()}}updateAccessRight(e){const t=e.getData();const s=this.userGroups[this.userGroups.indexOf(t.userGroup)];const i=t.access.id;setTimeout((()=>{babelHelpers.classPrivateFieldLooseBase(this,R)[R](t)}),0);for(let e=0;e<s.accessRights.length;e++){const t=s.accessRights[e];if(t&&String(t.id)===String(i)){t.value=String(t.value)==="0"?"1":"0";return}}s.accessRights.push({id:i,value:t.switcher.isChecked()?"1":"0"})}updateAccessVariationRight(e){const t=e.getData();const s=this.userGroups[this.userGroups.indexOf(t.userGroup)];const i=t.access.id;babelHelpers.classPrivateFieldLooseBase(this,R)[R](t);const o=[];for(let e=0;e<s.accessRights.length;e++){const t=s.accessRights[e];if(t&&String(t.id)===String(i)){o.push(e)}}o.forEach((e=>{delete s.accessRights[e]}));const r=t.selectedValues||[];r.forEach((e=>{s.accessRights.push({id:i,value:e})}))}loadData(){this.accessRights.map(((e,t)=>{e.id=t;this.accessRightsSections.push(this.addSection(e))}))}getColumns(){return this.columns}getSections(){return this.accessRightsSections}getUserGroups(){this.userGroups.forEach((e=>{if(e.accessCodes){for(const t in e.members){e.accessCodes[t]=e.members[t].type}}}));return this.userGroups}getHeadSection(){if(!this.headSection){this.headSection=new St({headSection:true,userGroups:this.userGroups,grid:this})}return this.headSection}addSection(e){e=e||{};return new St({id:e.id,hint:e.sectionHint,title:e.sectionTitle,rights:e.rights?e.rights:[],grid:this})}getSectionNode(){return a.Tag.render(S||(S=E`<div class='ui-access-rights-section'></div>`))}getMainContainer(){if(!this.layout.container){this.layout.container=a.Tag.render(y||(y=E`<div class='ui-access-rights'></div>`))}return this.layout.container}draw(){const e=document.createDocumentFragment();a.Dom.append(this.getHeadSection().render(),e);this.getSections().map((t=>{a.Dom.append(t.render(),e)}));this.layout.container=null;a.Dom.append(e,this.getMainContainer());this.renderTo.innerHTML="";a.Dom.append(this.getMainContainer(),this.renderTo);this.afterRender()}afterRender(){this.getHeadSection().adjustEars();this.getSections().map((e=>{e.adjustEars()}))}onMemberSelect(e){const t=P.buildOption(e);if(!t){return}if(e.state==="select"){r.EventEmitter.emit("BX.UI.AccessRights:addToAccessCodes",t)}}onMemberUnselect(e){const t=P.buildOption(e);if(!t){return}r.EventEmitter.emit("BX.UI.AccessRights:removeFromAccessCodes",t)}onGetEntityTypes(){if(!this.needToLoadUserGroups){return}const e=T.Main.selectorManagerV2.controls;const t=e[Object.keys(e)[0]];t.entityTypes.USERGROUPS={options:{enableSearch:"Y",searchById:"Y",addTab:"Y",returnItemUrl:t.getOption("returnItemUrl")==="N"?"N":"Y"}}}toggleGroup(e){const t=e.getData().id;var s=this.expandedGroups.indexOf(t);if(s>-1){this.expandedGroups.splice(s,1)}else{this.expandedGroups.push(t)}this.actualizeExpandedGroups()}actualizeExpandedGroups(){for(const e of this.groupElements){if(this.igGroupsExpanded(e.group)){e.container.classList.add("--expanded")}else{e.container.classList.remove("--expanded")}}}igGroupsExpanded(e){return this.expandedGroups.includes(e)}static buildOption(e){const t=T.Main.selectorManagerV2.controls;const s=t[Object.keys(t)[0]].selectorInstance;const i="bx-data-column-id";const o=s.bindOptions.node;if(!o.hasAttribute(i)||a.Type.isUndefined(e.item)){return false}const r=o.getAttribute(i);const n=e.item.id;const l=e.entityType;const c={};c[n]=l;return{accessCodes:c,columnId:r,item:e.item}}}function D(e,t){return`r${e}_a${t}`}function G(e){const t=e.access.id;const s=e.isModify;const i=this.userGroups[this.userGroups.indexOf(e.userGroup)];const o=babelHelpers.classPrivateFieldLooseBase(this,I)[I](i.id,t);if(s&&!this.changedAccessIds.has(o)){this.changedAccessIds.set(o,{accessId:t,roleId:i.id})}else if(!s&&this.changedAccessIds.has(o)){this.changedAccessIds.delete(o)}}function U(e,t){const s=new Map(this.changedAccessIds);const i=e.filter((e=>{if(Number(t.id)===0){return true}const i=babelHelpers.classPrivateFieldLooseBase(this,I)[I](t.id,e.id);const o=this.changedAccessIds.has(i);if(o){s.delete(i)}return o}));for(const[e,o]of s){if(o.roleId!=t.id){continue}i.push({id:o.accessId,value:null})}return i}P.ACTION_SAVE="save";P.ACTION_DELETE="delete";P.ACTION_LOAD="load";P.MODE="ajax";const L=a.Reflection.namespace("BX.UI");L.AccessRights=P;let B=e=>e,M;class w{constructor(e){this.changerOptions=e.changerOptions||{};const t=this.changerOptions.replaceNullValueTo||null;this.currentValue=e.currentValue||t;this.identificator=`col-${Math.random()}`;this.parentContainer=e.container;this.grid=e.grid;this.text=e.text;this.userGroup=e.userGroup;this.access=e.access;this.bindEvents()}bindEvents(){}render(){return a.Tag.render(M||(M=B`<div></div>`))}getId(){return this.identificator}}let _=e=>e,H,O;class x extends w{constructor(e){super(e);this.rightId=e.id;this.group=e.group;this.groupHead=e.groupHead;this.isExpanded=false;this.node=null;this.toggleIndicator=null}render(){const e=a.Tag.render(H||(H=_` <div class='ui-access-rights-column-item-text ui-access-rights-column-item-title' data-id='${0}' > ${0} </div> `),this.getId(),a.Text.encode(this.text));if(this.groupHead){this.toggleIndicator=a.Tag.render(O||(O=_` <span class="ui-access-rights-column-item-text-toggle-indicator ui-icon-set --chevron-down"></span> `));a.Dom.prepend(this.toggleIndicator,e)}if(this.group){a.Dom.addClass(e,"--group-children")}a.Event.bind(e,"mouseenter",this.adjustPopupHelper.bind(this));a.Event.bind(e,"mouseleave",(()=>{if(this.popupHelper){this.popupHelper.close()}}));a.Event.bind(e,"click",this.onGroupToggle.bind(this));this.node=e;return e}onGroupToggle(){r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:toggleGroup",{id:this.rightId});if(!this.node||!this.groupHead){return}if(this.grid.igGroupsExpanded(this.rightId)){a.Dom.removeClass(this.toggleIndicator,"--chevron-down");a.Dom.addClass(this.toggleIndicator,"--chevron-up")}else{a.Dom.addClass(this.toggleIndicator,"--chevron-down");a.Dom.removeClass(this.toggleIndicator,"--chevron-up")}}adjustPopupHelper(){const e=this.parentContainer.cloneNode(true);a.Dom.style(e,"position","absolute");a.Dom.style(e,"display","inline");a.Dom.style(e,"visibility","hidden");a.Dom.style(e,"height","0");a.Dom.append(e,document.body);setTimeout((()=>{a.Dom.remove(e)}));if(e.offsetWidth>this.parentContainer.offsetWidth){a.Dom.style(e,"visibility","visible");this.getPopupHelper().show()}}getPopupHelper(){if(!this.popupHelper){this.popupHelper=o.PopupWindowManager.create(null,this.parentContainer,{autoHide:true,darkMode:true,content:this.text,maxWidth:this.parentContainer.offsetWidth,offsetTop:-9,offsetLeft:5,animation:"fading-slide"})}return this.popupHelper}}x.TYPE="title";let k=e=>e,V;class X extends w{constructor(e){super(e);this.hint=e.hint;this.className=e.className;this.hintNode=null}render(){if(!this.hintNode&&this.hint){const e=BX.UI.Hint.createInstance({id:"access-rights-ui-hint-"+this.getId(),popupParameters:{className:"ui-access-rights-popup-pointer-events ui-hint-popup",autoHide:true,darkMode:true,maxWidth:280,offsetTop:0,offsetLeft:8,angle:true,animation:"fading-slide"}});this.hintNode=a.Tag.render(V||(V=k`<span class='${0}'></span>`),this.className);this.hintNode.setAttribute(e.attributeName,this.hint);this.hintNode.setAttribute(e.attributeHtmlName,true);this.hintNode.setAttribute(e.attributeInteractivityName,true);e.initNode(this.hintNode)}return this.hintNode}}let N=e=>e,F,j,$,Y,q,J,K,W,z,Q,Z,ee,te,se,ie,oe,re,ne,ae,le;const ce=a.Reflection.namespace("BX");var he=babelHelpers.classPrivateFieldLooseKey("showSelectorV2");var ue=babelHelpers.classPrivateFieldLooseKey("showEntitySelector");class de extends w{constructor(e){super(e);Object.defineProperty(this,ue,{value:ge});Object.defineProperty(this,he,{value:pe});this.openPopupEvent=e.openPopupEvent;this.popupContainer=e.popupContainer;this.accessCodes=e.accessCodes||[]}bindEvents(){r.EventEmitter.subscribe("BX.UI.AccessRights:addToAccessCodes",this.addToAccessCodes.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:removeFromAccessCodes",this.removeFromAccessCodes.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:reset",this.resetNewMembers.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:refresh",this.resetNewMembers.bind(this))}getMember(){if(!this.member){const e=this.userGroup.members||{};const t=document.createDocumentFragment();let s=0;this.validateVariables();Object.keys(e).reverse().forEach((i=>{s++;if(s<7){const s=e[i];const o=a.Tag.render(F||(F=N` <div class='ui-access-rights-members-item'></div> `));if(s.new){a.Dom.addClass(o,"ui-access-rights-members-item-new")}if(s.avatar){const e=a.Tag.render(j||(j=N`<a class='ui-access-rights-members-item-avatar' title="${0}"></a>`),a.Text.encode(s.name));a.Dom.style(e,"backgroundImage","url('"+encodeURI(s.avatar)+"')");a.Dom.style(e,"backgroundSize","cover");a.Dom.append(e,o)}else{let e="ui-icon-common-user";if(s.type==="groups"){e="ui-icon-common-user-group"}else if(s.type==="sonetgroups"){e="ui-icon-common-company"}else if(s.type==="usergroups"){e="ui-icon-common-user-group"}const t=a.Tag.render($||($=N`<a class='ui-icon ui-icon-xs' title="${0}"><i></i></a>`),a.Text.encode(s.name));a.Dom.addClass(t,e);a.Dom.append(t,o)}a.Dom.append(o,t)}}));a.Dom.append(this.getAddUserToRole(),t);this.member=a.Tag.render(Y||(Y=N`<div class='ui-access-rights-members'>${0}</div>`),t);a.Event.bind(this.member,"click",this.adjustPopupUserControl.bind(this))}return this.member}render(){return this.getMember()}resetNewMembers(){const e=this.getMember().querySelectorAll(".ui-access-rights-members-item-new");e.forEach((e=>{a.Dom.removeClass(e,"ui-access-rights-members-item-new")}))}validateVariables(){if(a.Type.isUndefined(this.userGroup.accessCodes)){this.userGroup.accessCodes=[]}}updateMembers(){a.Dom.remove(this.member);this.member=null;a.Dom.append(this.getMember(),this.parentContainer);this.grid.getButtonPanel().show()}addToAccessCodes(e){const t=e.getData();if(t.columnId!==this.getId()){return}const s=Object.keys(t.accessCodes)[0];const i=t.accessCodes[s].toUpperCase();this.userGroup.accessCodes=Object.keys(this.accessCodes);const o=t.item;if(!a.Type.isUndefined(o)&&Object.keys(o).length){this.userGroup.members[s]={id:o.entityId,name:o.name,avatar:o.avatar,url:"",new:true,type:i.toLowerCase()};this.updateMembers()}this.userGroup.accessCodes=[];for(const e in this.userGroup.members){this.userGroup.accessCodes[e]=this.userGroup.members[e].type}}removeFromAccessCodes(e){const t=e.data;if(t.columnId!==this.identificator){return}const s=Object.keys(t.accessCodes)[0];delete this.userGroup.members[s];this.updateMembers();this.userGroup.accessCodes=[];for(const e in this.userGroup.members){this.userGroup.accessCodes[e]=this.userGroup.members[e].type}}adjustPopupUserControl(){const e=[];const t=[];const s=[];const i=[];for(const o in this.userGroup.members){this.userGroup.members[o].key=o;if(this.userGroup.members[o].type==="users"){e.push(this.userGroup.members[o])}else if(this.userGroup.members[o].type==="groups"){t.push(this.userGroup.members[o])}else if(this.userGroup.members[o].type==="usergroups"){t.push(this.userGroup.members[o])}else if(this.userGroup.members[o].type==="departments"){s.push(this.userGroup.members[o])}else if(this.userGroup.members[o].type==="sonetgroups"){i.push(this.userGroup.members[o])}}const o=[];for(const e in this.userGroup.members){o.push(this.userGroup.members[e])}if(o.length===0){this.showUserSelectorPopup();return}this.getUserPopup(e,t,s,i).show()}getAddUserToRole(){if(!this.addUserToRole){this.addUserToRole=a.Tag.render(q||(q=N` <span class='ui-access-rights-members-item ui-access-rights-members-item-add' bx-data-column-id='${0}' > </span> `),this.getId())}return this.addUserToRole}getUserPopup(e,t,s,i){if(!this.popupUsers){e=e||[];t=t||[];s=s||[];i=i||[];const r=a.Tag.render(J||(J=N`<div class='ui-access-rights-popup-toggler'></div>`));const n=a.Tag.render(K||(K=N`<div class='ui-access-rights-popup-toggler-title'></div>`));const l=e=>{const t=e.target;d(t);u(t)};if(t.length>0){const e=a.Tag.render(W||(W=N` <div class='ui-access-rights-popup-toggler-title-item ui-access-rights-popup-toggler-title-item-active' data-role='ui-access-rights-popup-toggler-content-groups' > ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_USER_GROUPS"));a.Event.bind(e,"click",l.bind(this));a.Dom.append(e,n)}if(s.length>0){const e=a.Tag.render(z||(z=N` <div class='ui-access-rights-popup-toggler-title-item' data-role='ui-access-rights-popup-toggler-content-departments' > ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_DEPARTMENTS"));a.Event.bind(e,"click",l.bind(this));a.Dom.append(e,n)}if(e.length>0){const e=a.Tag.render(Q||(Q=N` <div class='ui-access-rights-popup-toggler-title-item' data-role='ui-access-rights-popup-toggler-content-users' > ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_STAFF"));a.Event.bind(e,"click",l.bind(this));a.Dom.append(e,n)}if(i.length>0){const e=a.Tag.render(Z||(Z=N` <div class='ui-access-rights-popup-toggler-title-item' data-role='ui-access-rights-popup-toggler-content-sonetgroups' > ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_SOCNETGROUP"));a.Event.bind(e,"click",l.bind(this));a.Dom.append(e,n)}a.Dom.append(a.Tag.render(ee||(ee=N`<div class='ui-access-rights-popup-toggler-title-slicker'></div>`)),n);a.Dom.append(n,r);if(t.length>0){a.Dom.append(this.getUserPopupTogglerGroup(t,"groups"),r)}if(s.length>0){a.Dom.append(this.getUserPopupTogglerGroup(s,"departments"),r)}if(e.length>0){a.Dom.append(this.getUserPopupTogglerGroup(e,"users"),r)}if(i.length>0){a.Dom.append(this.getUserPopupTogglerGroup(i,"sonetgroups"),r)}const c=a.Tag.render(te||(te=N`<div class='ui-access-rights-popup-toggler-footer'></div>`));const h=a.Tag.render(se||(se=N` <div class='ui-access-rights-popup-toggler-footer-link'> ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ADD"));a.Event.bind(h,"click",(e=>{this.popupUsers.close();this.showUserSelectorPopup();e.preventDefault()}));a.Dom.append(h,c);a.Dom.append(c,r);const u=e=>{if(!a.Type.isDomNode(e)){e=r.querySelector(".ui-access-rights-popup-toggler-title-item-active")}const t=r.querySelector(".ui-access-rights-popup-toggler-title-slicker");a.Dom.style(t,"left",e.offsetLeft+"px");a.Dom.style(t,"width",e.offsetWidth+"px")};const d=e=>{const t=r.querySelectorAll(".ui-access-rights-popup-toggler-title-item");const s=r.querySelectorAll(".ui-access-rights-popup-toggler-content");const i=r.querySelector("."+e.getAttribute("data-role"));t.forEach((e=>{a.Dom.removeClass(e,"ui-access-rights-popup-toggler-title-item-active")}));s.forEach((e=>{a.Dom.style(e,"display","none")}));a.Dom.style(i,"display","block");a.Dom.addClass(e,"ui-access-rights-popup-toggler-title-item-active")};this.popupUsers=o.PopupWindowManager.create(null,this.getAddUserToRole(),{contentPadding:10,animation:"fading-slide",content:r,padding:0,offsetTop:5,angle:{position:"top",offset:35},autoHide:true,closeEsc:true,events:{onPopupShow:()=>{setTimeout((()=>{const e=r.querySelector(".ui-access-rights-popup-toggler-title-item");if(!e){return}a.Dom.addClass(e,"ui-access-rights-popup-toggler-title-item-active");u(e)}))},onPopupClose:()=>{this.popupUsers.destroy();this.popupUsers=null}}})}return this.popupUsers}getUserPopupTogglerGroup(e,t){const s=a.Tag.render(ie||(ie=N`<div class='ui-access-rights-popup-toggler-content'></div>`));a.Dom.addClass(s,"ui-access-rights-popup-toggler-content-"+t);e.forEach((e=>{const i=a.Tag.render(oe||(oe=N`<div class='ui-access-rights-popup-toggler-content-item'></div>`));if(e.avatar){const t=a.Tag.render(re||(re=N` <a class='ui-access-rights-popup-toggler-content-item-userpic' title="${0}" ></a> `),a.Text.encode(e.name));a.Dom.style(t,"backgroundImage","url('"+encodeURI(e.avatar)+"')");a.Dom.style(t,"backgroundSize","cover");a.Dom.append(t,i)}else{let s="";if(t==="users"){s="ui-icon-common-user"}else if(t==="groups"){s="ui-icon-common-user-group"}else if(t==="sonetgroups"||t==="departments"){s="ui-icon-common-company"}const o=a.Tag.render(ne||(ne=N`<a class='ui-icon ui-icon-sm' title="${0}"><i></i></a>`),a.Text.encode(e.name));a.Dom.addClass(o,s);a.Dom.style(o,"margin","5px 10px");a.Dom.append(o,i)}a.Dom.append(a.Tag.render(ae||(ae=N`<div class='ui-access-rights-popup-toggler-content-item-name'>${0}</div>`),a.Text.encode(e.name)),i);const o=a.Tag.render(le||(le=N` <div class='ui-access-rights-popup-toggler-content-item-remove'>${0}</div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_REMOVE"));a.Event.bind(o,"click",(()=>{this.userGroup.accessCodes.splice(this.userGroup.accessCodes.indexOf(e.key),1);delete this.userGroup.accessCodes[e.key];delete this.userGroup.members[e.key];a.Dom.remove(i);this.updateMembers();this.adjustPopupUserControl();this.grid.getButtonPanel().show()}));a.Dom.append(o,i);a.Dom.append(i,s)}));return s}showUserSelectorPopup(){if(this.grid.useEntitySelectorDialogAsPopup){babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]()}else{babelHelpers.classPrivateFieldLooseBase(this,he)[he]()}}}function pe(){var e;const t=(e=ce.Main.selectorManagerV2.controls[this.popupContainer])==null?void 0:e.selectorInstance;if(t){t.itemsSelected={}}ce.onCustomEvent(this.openPopupEvent,[{id:this.popupContainer,bindNode:this.getAddUserToRole()}]);ce.onCustomEvent("BX.Main.SelectorV2:reInitDialog",[{selectorId:this.popupContainer,selectedItems:this.userGroup.accessCodes}])}function ge(){if(!this.entitySelectorAdapter){this.entitySelectorAdapter=new g(this.grid.entitySelectorDialogOptions)}this.entitySelectorAdapter.show(this.getId(),this.userGroup.accessCodes,this.addUserToRole)}de.TYPE="members";let me=e=>e,ve,fe,be,Ce,Ee,Se;class ye extends w{constructor(e){super(e);this.column=e.column}bindEvents(){a.Event.bind(window,"click",(e=>{if(e.target===this.getRole()||e.target.closest(".ui-access-rights-role")){return}this.updateRole();this.offRoleEditMode()}));r.EventEmitter.subscribe(this.grid,"onBeforeSave",(()=>{this.updateRole();this.offRoleEditMode()}))}getRole(){if(this.role){return this.role}r.EventEmitter.subscribe("BX.UI.AccessRights:preservation",this.updateRole.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:preservation",this.offRoleEditMode.bind(this));this.roleInput=a.Tag.render(ve||(ve=me` <input type='text' class='ui-access-rights-role-input' value='${0}' placeholder='${0}' /> `),a.Text.encode(this.text),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ROLE_NAME"));a.Event.bind(this.roleInput,"keydown",(e=>{if(e.keyCode===13){this.updateRole();this.offRoleEditMode()}}));a.Event.bind(this.roleInput,"input",(()=>{this.grid.getButtonPanel().show()}));this.roleValue=a.Tag.render(fe||(fe=me`<div class='ui-access-rights-role-value'>${0}</div>`),a.Text.encode(this.text));const e=a.Tag.render(be||(be=me`<div class='ui-access-rights-role-edit'></div>`));a.Event.bind(e,"click",this.onRoleEditMode.bind(this));const t=a.Tag.render(Ce||(Ce=me`<div class='ui-access-rights-role-remove'></div>`));a.Event.bind(t,"click",this.showPopupConfirm.bind(this));const s=a.Tag.render(Ee||(Ee=me` <div class='ui-access-rights-role-controls'> ${0} ${0} </div> `),e,t);this.role=a.Tag.render(Se||(Se=me` <div class='ui-access-rights-role'> ${0} ${0} ${0} </div> `),this.roleInput,this.roleValue,s);return this.role}render(){return this.getRole()}onRoleEditMode(){a.Dom.addClass(this.getRole(),"ui-access-rights-role-edit-mode");this.roleInput.focus()}showPopupConfirm(){if(!this.popupConfirm){this.popupConfirm=o.PopupWindowManager.create(null,this.getRole(),{width:250,overlay:true,contentPadding:10,content:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_POPUP_REMOVE_THIS_ROLE"),animation:"fading-slide"});this.popupConfirm.setButtons([new BX.UI.Button({text:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_POPUP_REMOVE"),className:"ui-btn ui-btn-sm ui-btn-primary",events:{click:()=>{this.popupConfirm.close();r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:removeRole",this)}}}),new BX.UI.Button({text:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_POPUP_CANCEL"),className:"ui-btn ui-btn-sm ui-btn-link",events:{click:()=>{this.popupConfirm.close()}}})])}this.popupConfirm.show()}updateRole(){if(this.roleValue.innerHTML===this.roleInput.value||this.roleInput.value===""){return}this.text=this.roleInput.value;this.userGroup=this.column.getUserGroup();this.roleValue.innerText=this.roleInput.value;r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:updateRole",this)}offRoleEditMode(){a.Dom.removeClass(this.getRole(),"ui-access-rights-role-edit-mode")}}ye.TYPE="role";let Te=e=>e,Ie;class Re extends w{constructor(e){super(e);this.isModify=false}getChanger(){if(!this.changer){this.changer=a.Tag.render(Ie||(Ie=Te`<a class='ui-access-rights-column-item-changer'></a>`))}return this.changer}bindEvents(){r.EventEmitter.subscribe("BX.UI.AccessRights:reset",this.offChanger.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:refresh",this.refreshStatus.bind(this))}refreshStatus(){this.isModify=false;a.Dom.removeClass(this.getChanger(),"ui-access-rights-column-item-changer-on")}offChanger(){if(this.isModify){setTimeout((()=>{this.refreshStatus()}))}}adjustChanger(){this.isModify=!this.isModify;this.toggleChangerHtmlClass()}toggleChangerHtmlClass(){a.Dom.toggleClass(this.getChanger(),"ui-access-rights-column-item-changer-on")}addChangerHtmlClass(){a.Dom.addClass(this.getChanger(),"ui-access-rights-column-item-changer-on")}removeChangerHtmlClass(){a.Dom.removeClass(this.getChanger(),"ui-access-rights-column-item-changer-on")}}class Ae extends Re{constructor(e){super(e);this.switcher=new BX.UI.Switcher({size:"small",checked:this.currentValue==="1",handlers:{checked:()=>{r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:accessOn",this)},unchecked:()=>{r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:accessOff",this)},toggled:()=>{this.adjustChanger();r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:update",this)}}})}offChanger(){if(this.isModify){this.switcher.check(!this.switcher.isChecked())}super.offChanger()}render(){a.Dom.append(this.switcher.getNode(),this.getChanger());return this.getChanger()}}Ae.TYPE="toggler";let Pe=e=>e,De,Ge,Ue;class Le extends w{render(){if(!this.controller){this.controllerLink=a.Tag.render(De||(De=Pe` <div class='ui-access-rights-column-item-controller-link'> ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_CREATE_ROLE"));this.controllerMenu=a.Tag.render(Ge||(Ge=Pe` <div class='ui-access-rights-column-item-controller-link'> ${0} </div> `),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_COPY_ROLE"));a.Event.bind(this.controllerMenu,"click",(()=>{if(this.popupMenu){this.popupMenu.close()}else if(this.grid.getUserGroups().length>0){this.getPopupMenu(this.grid.getUserGroups()).show()}}));this.toggleControllerMenu();this.controller=a.Tag.render(Ue||(Ue=Pe` <div class='ui-access-rights-column-item-controller'> ${0} ${0} </div> `),this.controllerLink,this.controllerMenu);a.Event.bind(this.controllerLink,"click",(()=>{r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:addRole",[{id:"0",title:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ROLE_NAME"),accessRights:[],members:[],accessCodes:[],type:ye.TYPE}]);r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:update",this);this.toggleControllerMenu();this.grid.lock()}));r.EventEmitter.subscribe("BX.UI.AccessRights.ColumnItem:removeRole",this.toggleControllerMenu.bind(this))}return this.controller}getPopupMenu(e){if(!e){return}const t=[];e.map((e=>{t.push({text:a.Text.encode(e.title),onclick:()=>{const t=Object.assign([],e.accessRights);const s=Object.assign([],e.accessCodes);r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:copyRole",[{id:"0",title:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ROLE_NAME"),accessRights:t,accessCodes:s,type:ye.TYPE,members:e.members}]);r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:update",this);this.popupMenu.destroy()}})}));return this.popupMenu=new o.Menu("ui_accessrights_copy_role_list",this.controllerMenu,t,{events:{onPopupClose:()=>{this.popupMenu.destroy();this.popupMenu=null}}})}toggleControllerMenu(){if(this.grid.getUserGroups().length===0){a.Dom.addClass(this.controllerMenu,"ui-access-rights-column-item-controller-link--disabled")}else{a.Dom.removeClass(this.controllerMenu,"ui-access-rights-column-item-controller-link--disabled")}}}let Be=e=>e,Me;class we extends Re{constructor(e){var t;super(e);this.variables=e.variables||[];this.selectedValues=[(t=this.currentValue)!=null?t:"0"]}bindEvents(){r.EventEmitter.subscribe("BX.UI.AccessRights:reset",this.reset.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:refresh",this.refresh.bind(this))}render(){var e,t;const s=(e=(t=this.getSelected())==null?void 0:t.title)!=null?e:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ADD");const i=a.Tag.render(Me||(Me=Be` <div class='ui-access-rights-column-item-text-link'> ${0} </div> `),a.Text.encode(s));a.Event.bind(i,"click",this.showVariablesPopup.bind(this));a.Dom.append(i,this.getChanger());return this.getChanger()}refresh(){if(this.isModify){this.currentValue=this.selectedValues[0];this.reset()}}reset(){if(this.isModify){this.selectedValues=[this.currentValue];this.getChanger().innerHTML="";this.adjustChanger();this.render()}}getSelected(){const e=this.variables.filter((e=>this.selectedValues.map(String).includes(String(e.id))));return e[0]}showVariablesPopup(e){const t=[];this.variables.map((e=>{t.push({id:e.id,text:e.title,onclick:this.select.bind(this)})}));o.PopupMenu.show("ui-access-rights-column-item-popup-variables",e.target,t,{autoHide:true,events:{onPopupClose:()=>{o.PopupMenu.destroy("ui-access-rights-column-item-popup-variables")}}})}select(e,t){var s;this.selectedValues=[t.options.id];(s=t.getMenuWindow())==null?void 0:s.close();this.getChanger().innerHTML="";this.render();this.adjustChanger();r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:selectAccessItems",this);r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:update",this)}adjustChanger(){const e=this.changerOptions.replaceNullValueTo||null;const t=this.selectedValues[0]||e;if(t===this.currentValue){this.isModify=false;this.removeChangerHtmlClass()}else{this.isModify=true;this.addChangerHtmlClass()}}}we.TYPE="variables";let _e=e=>e,He;class Oe extends x{render(){return a.Tag.render(He||(He=_e` <div class='ui-access-rights-column-item-text' data-id='${0}' > ${0} </div> `),this.getId(),a.Text.encode(this.text))}}Oe.TYPE="userGroupTitle";let xe=e=>e,ke,Ve,Xe;class Ne extends n.DefaultFooter{constructor(e,t){super(e,t);this.selectAllButton=a.Tag.render(ke||(ke=xe`<div class="ui-selector-footer-link ui-selector-search-footer-label--hide">${0}</div>`),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ALL_SELECT_LABEL"));a.Event.bind(this.selectAllButton,"click",this.selectAll.bind(this));this.deselectAllButton=a.Tag.render(Ve||(Ve=xe`<div class="ui-selector-footer-link ui-selector-search-footer-label--hide">${0}</div>`),a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ALL_DESELECT_LABEL"));a.Event.bind(this.deselectAllButton,"click",this.deselectAll.bind(this));this.getDialog().subscribe("Item:onSelect",this.onItemStatusChange.bind(this));this.getDialog().subscribe("Item:onDeselect",this.onItemStatusChange.bind(this))}getContent(){this.toggleSelectButtons();return a.Tag.render(Xe||(Xe=xe` <div class="ui-selector-search-footer-box"> ${0} ${0} </div> `),this.selectAllButton,this.deselectAllButton)}toggleSelectButtons(){if(this.getDialog().getSelectedItems().length===this.getDialog().getItems().length){if(a.Dom.hasClass(this.deselectAllButton,"ui-selector-search-footer-label--hide")){a.Dom.addClass(this.selectAllButton,"ui-selector-search-footer-label--hide");a.Dom.removeClass(this.deselectAllButton,"ui-selector-search-footer-label--hide")}}else if(a.Dom.hasClass(this.selectAllButton,"ui-selector-search-footer-label--hide")){a.Dom.addClass(this.deselectAllButton,"ui-selector-search-footer-label--hide");a.Dom.removeClass(this.selectAllButton,"ui-selector-search-footer-label--hide")}}selectAll(){if(this.getDialog().getSelectedItems().length===this.getDialog().getItems().length){return}this.getDialog().getItems().forEach((e=>{e.select()}))}deselectAll(){this.getDialog().getSelectedItems().forEach((e=>{e.deselect()}))}onItemStatusChange(){this.toggleSelectButtons()}}let Fe=e=>e,je;var $e=babelHelpers.classPrivateFieldLooseKey("obSelectItem");var Ye=babelHelpers.classPrivateFieldLooseKey("onDeselectItem");var qe=babelHelpers.classPrivateFieldLooseKey("afterSetupItems");var Je=babelHelpers.classPrivateFieldLooseKey("getDialogFooter");var Ke=babelHelpers.classPrivateFieldLooseKey("useSelectedActionLogic");var We=babelHelpers.classPrivateFieldLooseKey("isArraysEqual");class ze extends Re{constructor(e){var t,s,i;super(e);Object.defineProperty(this,We,{value:it});Object.defineProperty(this,Ke,{value:st});Object.defineProperty(this,Je,{value:tt});Object.defineProperty(this,qe,{value:et});Object.defineProperty(this,Ye,{value:Ze});Object.defineProperty(this,$e,{value:Qe});this.variables=e.variables||[];this.enableSearch=(t=e.enableSearch)!=null?t:false;this.placeholder=e.placeholder||"";this.hintTitle=e.hintTitle||"";this.allSelectedCode=String(e.allSelectedCode||-1);this.showAvatars=(s=e.showAvatars)!=null?s:true;this.compactView=(i=e.compactView)!=null?i:false;this.currentValue=a.Type.isArray(e.currentValue)?e.currentValue.map((e=>String(e))):[];this.selectedValues=this.currentValue.filter((e=>Boolean(e)));this.variables=this.variables.map((e=>{e.entityId=e.entityId||"editor-right-item";e.tabs="recents";if(e.selectedAction){e.customData={...e.customData,selectedAction:e.selectedAction}}return e}));this.selector=this.createSelector()}bindEvents(){r.EventEmitter.subscribe("BX.UI.AccessRights:reset",this.reset.bind(this));r.EventEmitter.subscribe("BX.UI.AccessRights:refresh",this.refresh.bind(this))}createSelector(){return new n.Dialog({height:300,id:this.getId(),context:"editor-right-items",enableSearch:this.enableSearch,multiple:true,dropdownMode:true,compactView:this.compactView,showAvatars:this.showAvatars,selectedItems:this.getSelected(),searchOptions:{allowCreateItem:false},events:{"Item:onSelect":babelHelpers.classPrivateFieldLooseBase(this,$e)[$e].bind(this),"Item:onDeselect":babelHelpers.classPrivateFieldLooseBase(this,Ye)[Ye].bind(this)},entities:[{id:"editor-right-item"}],items:this.variables,footer:babelHelpers.classPrivateFieldLooseBase(this,Je)[Je]()})}render(){let e="";if(this.includesSelected(this.allSelectedCode)){e=a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ALL_ACCEPTED")}else{var t;const s=[];(t=this.getSelected())==null?void 0:t.forEach((e=>{s.push(e.title)}));if(s.length>0){const t=s[0];e=s.length-1>0?a.Loc.getMessage("JS_UI_ACCESSRIGHTS_HAS_SELECTED_ITEMS",{"#FIRST_ITEM_NAME#":t.length>10?t.slice(0,10)+"...":t,"#COUNT_REST_ITEMS#":s.length-1}):t}else{e=a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ADD")}}let s="";if(this.selector.getSelectedItems().length>0){const e=a.Type.isStringFilled(this.hintTitle)?this.hintTitle:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_SELECTED_ITEMS_TITLE_MSGVER_1");s+="<p>"+e+"</p>";s+="<ul>";this.selector.getSelectedItems().forEach((e=>s+="<li>"+a.Text.encode(e.getTitle())));s+="</ul>"}const i=a.Tag.render(je||(je=Fe` <div class='ui-access-rights-column-item-text-link' data-hint-html data-hint-no-icon data-hint="${0}"> ${0} </div> `),a.Text.encode(s),a.Text.encode(e));a.Event.bind(i,"click",this.showSelector.bind(this));a.Dom.append(i,this.getChanger());BX.UI.Hint.init(this.getChanger());this.selector.setTargetNode(this.getChanger());return this.getChanger()}refresh(){if(this.isModify){this.currentValue=[...this.selectedValues];this.reset()}}reset(){if(this.isModify){this.selectedValues=[...this.currentValue];this.selector=this.createSelector();this.getChanger().innerHTML="";this.adjustChanger();this.render()}}getSelected(){if(this.includesSelected(this.allSelectedCode)){return this.variables}return this.variables.filter((e=>this.includesSelected(e.id)))}includesSelected(e){return this.selectedValues.some((t=>String(t)===String(e)))}showSelector(e){this.selector.show()}}function Qe(e){const t=e.getData().item;const s=String(t.id);if(this.changerOptions.useSelectedActions){babelHelpers.classPrivateFieldLooseBase(this,Ke)[Ke](t)}if(!this.selectedValues.includes(s)){this.selectedValues.push(s)}if(this.selectedValues.length===this.variables.length){this.selectedValues=[this.allSelectedCode]}babelHelpers.classPrivateFieldLooseBase(this,qe)[qe]()}function Ze(e){const t=e.getData().item;const s=String(t.id);if(this.selectedValues.includes(this.allSelectedCode)){const e=this.variables.map((e=>String(e.id))).filter((e=>e!==s));this.selectedValues=e}else{this.selectedValues=this.selectedValues.filter((e=>e!==s))}babelHelpers.classPrivateFieldLooseBase(this,qe)[qe]()}function et(){this.isModify=!babelHelpers.classPrivateFieldLooseBase(this,We)[We](this.selectedValues,this.currentValue);this.getChanger().innerHTML="";if(this.isModify){this.addChangerHtmlClass()}else{this.removeChangerHtmlClass()}this.render();r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:update",this);r.EventEmitter.emit("BX.UI.AccessRights.ColumnItem:selectAccessItems",this)}function tt(){if(this.changerOptions.disableSelectAll){return null}return Ne}function st(e){const t=e.customData.get("selectedAction",null);if(t==="clear-other"){const t=this.selector.getSelectedItems();for(const s of t){if(e.id===s.id){continue}s.deselect()}}else{const t=this.selector.getSelectedItems();for(const s of t){if(e.id===s.id){continue}const t=s.customData.get("selectedAction",null);if(t){s.deselect()}}}}function it(e,t){if(e===t){return true}if(e===null||t===null){return false}if(e.length!==t.length){return false}const s=[...e];const i=[...t];s.sort();i.sort();for(let t=0;t<e.length;t++){if(s[t]!==i[t]){return false}}return true}ze.TYPE="multivariables";let ot=e=>e,rt;class nt{constructor(e){this.options=e;this.type=e.type?e.type:null;this.hint=e.hint?e.hint:null;this.controller=e.controller?e.controller:null;this.column=e.column}render(){let e=null;const t=a.Tag.render(rt||(rt=ot`<div class='ui-access-rights-column-item'></div>`));if(this.options.group){a.Dom.addClass(t,"ui-access-rights-group-children");t.dataset.group=this.options.group;this.options.grid.groupElements.push({container:t,group:this.options.group,isHidden:true})}this.options.container=t;if(this.type===ye.TYPE){e=new ye(this.options);if(this.column.newColumn){setTimeout((()=>{e.onRoleEditMode();e.roleInput.value=""}))}}else if(this.type===de.TYPE){e=new de(this.options)}else if(this.type===x.TYPE){e=new x(this.options)}else if(this.type===we.TYPE){e=new we(this.options)}else if(this.type===ze.TYPE){e=new ze(this.options)}else if(this.type===Ae.TYPE){e=new Ae(this.options)}if(e){a.Dom.append(e.render(),t)}if(this.hint){const e={className:"ui-access-rights-column-item-notify",...this.options};a.Dom.append(new X(e).render(),t)}if(this.type===Oe.TYPE){a.Dom.append(new Oe(this.options).render(),t)}if(this.controller){a.Dom.append(new Le(this.options).render(),t)}return t}}const at=a.Reflection.namespace("BX.UI.AccessRights");at.ColumnItem=nt;let lt=e=>e,ct;class ht{constructor(e){this.layout={container:null};this.grid=e.grid?e.grid:null;this.items=e.items?e.items:[];this.userGroup=e.userGroup?e.userGroup:null;this.accessCodes=e.accessCodes?e.accessCodes:null;this.section=e.section?e.section:null;this.headSection=e.headSection;this.newColumn=e.newColumn?e.newColumn:null;this.openPopupEvent=e.grid.openPopupEvent?e.grid.openPopupEvent:null;this.popupContainer=e.grid.popupContainer?e.grid.popupContainer:null}getItem(e){e=e||{};const t={group:e.group,changerOptions:e.changerOptions};let s={...t};if(e.type===Oe.TYPE){s={type:e.type,text:e.title,controller:e.controller,...t}}if(e.type===x.TYPE){s={...t,id:e.id,groupHead:e.groupHead,type:e.type,hint:e.hint,text:e.title,controller:e.controller}}if(e.type===Ae.TYPE){s={...t,type:e.type,access:e.access}}if(e.type===we.TYPE||e.type===ze.TYPE){s={...t,type:e.type,text:e.title,variables:e.variables,access:e.access}}if(e.type===ze.TYPE){s.allSelectedCode=e.allSelectedCode;s.enableSearch=e.enableSearch;s.showAvatars=e.showAvatars;s.compactView=e.compactView;s.hintTitle=e.hintTitle;s.disableSelectAll=e.disableSelectAll||false}if(e.type===ye.TYPE){s={...t,type:e.type,text:e.title}}if(e.type===de.TYPE){const t=[];for(const s in e.members){t[s]=e.members[s].type}s={type:e.type,accessCodes:t}}s.column=this;s.userGroup=this.userGroup;s.openPopupEvent=this.openPopupEvent;s.popupContainer=this.popupContainer;s.currentValue=null;s.grid=this.grid;if(e.type===we.TYPE||e.type===ze.TYPE||e.type===Ae.TYPE){var i,o;const t=s.access.id.toString();const n=(i=(o=s.userGroup)==null?void 0:o.accessRights)!=null?i:[];for(let i=0;i<n.length;i++){if(t!==n[i].id.toString()){continue}if(e.type===ze.TYPE){var r;s.currentValue=(r=s.currentValue)!=null?r:[];if(a.Type.isArray(n[i].value)){s.currentValue=[...s.currentValue,...n[i].value]}else{s.currentValue.push(n[i].value)}}else{s.currentValue=n[i].value}}}return new nt(s)}getUserGroup(){return this.userGroup}remove(){if(a.Dom.hasClass(this.layout.container,"ui-access-rights-column-new")){this.resetClassNew()}a.Dom.addClass(this.layout.container,"ui-access-rights-column-remove");a.Dom.style(this.layout.container,"width",this.layout.container.offsetWidth+"px");a.Event.bind(this.layout.container,"animationend",(()=>{a.Dom.style(this.layout.container,"minWidth","0px");a.Dom.style(this.layout.container,"maxWidth","0px")}));setTimeout((()=>{a.Dom.remove(this.layout.container)}),500)}resetClassNew(){a.Dom.removeClass(this.layout.container,"ui-access-rights-column-new")}render(){if(!this.layout.container){const e=document.createDocumentFragment();if(this.headSection){this.userGroup.type=ye.TYPE;a.Dom.append(this.getItem(this.userGroup).render(),e);this.userGroup.type=de.TYPE;a.Dom.append(this.getItem(this.userGroup).render(),e)}for(const t of this.items){const s=this.getItem(t);a.Dom.append(s.render(),e)}this.layout.container=a.Tag.render(ct||(ct=lt`<div class='ui-access-rights-column'></div>`));if(this.newColumn){a.Dom.addClass("ui-access-rights-column-new",this.layout.container)}r.EventEmitter.subscribe("BX.UI.AccessRights:refresh",this.resetClassNew.bind(this));a.Dom.append(e,this.layout.container);return this.layout.container}}}const ut=a.Reflection.namespace("BX.UI.AccessRights");ut.Column=ht;let dt=e=>e,pt,gt,mt,vt,ft,bt,Ct,Et;class St{constructor(e){var t;this.id=(t=e.id)!=null?t:null;this.headSection=e.headSection?e.headSection:null;this.title=e.title;this.hint=e.hint;this.rights=e.rights?e.rights:[];this.userGroups=e.userGroups?e.userGroups:[];this.grid=e.grid?e.grid:null;this.layout={title:null,headColumn:null,columns:null,content:null,earLeft:null,earRight:null};this.scroll=0;this.earTimer=null;this.earLeftTimer=null;this.earRightTimer=null;this.columns=[];this.bindEvents()}bindEvents(){r.EventEmitter.subscribe(this.grid,"AccessRights.Section:scroll",(e=>{const[t]=e.getData();if(this.title!==t.title){this.getColumnsContainer().scrollLeft=t.getScroll()}t.adjustEars();o.PopupMenu.destroy("ui-access-rights-column-item-popup-variables")}));a.Event.bind(window,"resize",this.adjustEars.bind(this))}getGrid(){return this.grid}addColumn(e){if(!e){return}const t=Object.assign({},e);t.userGroup=e;const s=this.getColumn(t);a.Dom.append(s.render(),this.layout.columns);this.columns.push(s)}getColumn(e){const t=[];this.rights.map((e=>{const s=e.type===we.TYPE||e.type===ze.TYPE;t.push({type:e.type,title:s?e.title:null,hint:e.hint,group:e.group,variables:s?e.variables:[],enableSearch:s?e.enableSearch:null,showAvatars:s?e.showAvatars:false,compactView:s?e.compactView:false,hintTitle:s?e.hintTitle:null,allSelectedCode:s?e.allSelectedCode:null,changerOptions:e.changerOptions||{},access:e})}));return new ht({items:t,userGroup:e.userGroup?e.userGroup:null,section:this,headSection:e.headSection,grid:this.grid,newColumn:e.newColumn?e.newColumn:null})}removeColumn(e){if(!e){return}for(let t=0;t<this.columns.length;t++){if(e.userGroup===this.columns[t].userGroup){this.columns[t].remove();break}}}addHeadColumn(){let e=[];if(!this.headSection){this.rights.map((t=>{e.push({id:t.id,type:x.TYPE,title:t.title,hint:t.hint,group:t.group,groupHead:t.groupHead})}))}if(this.headSection){e=[{type:Oe.TYPE,title:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_ROLES"),controller:true},{type:Oe.TYPE,title:a.Loc.getMessage("JS_UI_ACCESSRIGHTS_EMPLOYEES_AND_DEPARTMENTS"),controller:false}]}const t=new ht({items:e,section:this,grid:this.grid});a.Dom.append(t.render(),this.layout.headColumn);return t}getColumnsContainer(){if(!this.layout.columns){const e=a.Tag.render(pt||(pt=dt`<div class='ui-access-rights-section-wrapper'></div>`));a.Event.bind(e,"scroll",this.adjustScroll.bind(this));this.layout.columns=e}return this.layout.columns}getTitleNode(){const e=a.Tag.render(gt||(gt=dt`<div class='ui-access-rights-section-title'>${0}</div>`),a.Text.encode(this.title));if(this.hint){const t=new X({hint:this.hint,className:"ui-access-rights-section-title-hint"});e.appendChild(t.render())}return e}adjustScroll(){if(a.Text.toNumber(this.scroll)!==a.Text.toNumber(this.getColumnsContainer().scrollLeft)){this.scroll=this.getColumnsContainer().scrollLeft;r.EventEmitter.emit(this.grid,"AccessRights.Section:scroll",[this])}}adjustEars(){const e=this.getColumnsContainer();const t=e.scrollLeft;const s=t>0;const i=e.scrollWidth>Math.round(t+e.offsetWidth);this.getContentContainer().classList[s?"add":"remove"]("ui-access-rights-section-ear-left-shown");this.getContentContainer().classList[i?"add":"remove"]("ui-access-rights-section-ear-right-shown")}getContentContainer(){if(!this.layout.content){this.layout.content=a.Tag.render(mt||(mt=dt` <div class='ui-access-rights-section-content'> ${0} ${0} ${0} </div> `),this.getColumnsContainer(),this.getEarLeft(),this.getEarRight())}return this.layout.content}getEarLeft(){if(!this.layout.earLeft){this.layout.earLeft=a.Tag.render(vt||(vt=dt`<div class='ui-access-rights-section-ear-left'></div>`));a.Event.bind(this.layout.earLeft,"mouseenter",(()=>{this.stopAutoScroll();this.earLeftTimer=setTimeout((()=>{this.scrollToLeft()}),110)}));a.Event.bind(this.layout.earLeft,"mouseleave",(()=>{clearTimeout(this.earLeftTimer);this.stopAutoScroll()}))}return this.layout.earLeft}getEarRight(){if(!this.layout.earRight){this.layout.earRight=a.Tag.render(ft||(ft=dt`<div class='ui-access-rights-section-ear-right'></div>`));a.Event.bind(this.layout.earRight,"mouseenter",(()=>{this.stopAutoScroll();this.earRightTimer=setTimeout((()=>{this.scrollToRight()}),110)}));a.Event.bind(this.layout.earRight,"mouseleave",(()=>{clearTimeout(this.earRightTimer);this.stopAutoScroll()}))}return this.layout.earRight}scrollToRight(e,t){const s=e?2:20;this.earTimer=setInterval((()=>{this.getColumnsContainer().scrollLeft+=10;if(e&&e<=this.getColumnsContainer().scrollLeft){this.stopAutoScroll()}}),s);if(t==="stop"){setTimeout((()=>{this.stopAutoScroll();this.getGrid().unlock()}),e*2)}}scrollToLeft(){this.earTimer=setInterval((()=>{this.getColumnsContainer().scrollLeft-=10}),20)}stopAutoScroll(){clearInterval(this.earTimer)}getScroll(){return this.scroll}render(){var e;const t=this.title?this.getTitleNode():null;const s=a.Tag.render(bt||(bt=dt` <div class='ui-access-rights-section'> ${0} ${0} </div> `),t,this.getMainContainer());if(this.headSection){a.Dom.addClass(s,"ui-access-rights--head-section")}this.addHeadColumn();const i=document.createDocumentFragment();const o=(e=this.grid.getUserGroups())!=null?e:[];for(let e=0;e<o.length;e++){const t=this.getColumn({headSection:this.headSection?this.headSection:null,userGroup:o[e]});this.columns.push(t);a.Dom.append(t.render(),i)}a.Dom.append(i,this.getColumnsContainer());return s}getMainContainer(){this.layout.headColumn=a.Tag.render(Ct||(Ct=dt`<div class='ui-access-rights-section-head'></div>`));return a.Tag.render(Et||(Et=dt` <div class='ui-access-rights-section-container'> ${0} ${0} </div> `),this.layout.headColumn,this.getContentContainer())}}const yt=a.Reflection.namespace("BX.UI.AccessRights");yt.Section=St;e.Grid=P;e.Section=St;e.Column=ht;e.ColumnItem=nt})(this.BX.UI=this.BX.UI||{},BX,BX,BX.UI,BX.Main,BX.Event,BX.UI.EntitySelector,BX); //# sourceMappingURL=accessrights.bundle.map.js