var __runInitializers=this&&this.__runInitializers||function(thisArg,initializers,value){for(var useValue=arguments.length>2,i=0;i=0;i--){var context={};for(var p in contextIn)context[p]="access"===p?{}:contextIn[p];for(var p in contextIn.access)context.access[p]=contextIn.access[p];context.addInitializer=function(f){if(done)throw new TypeError("Cannot add initializers after decoration has completed");extraInitializers.push(accept(f||null))};var result=(0,decorators[i])("accessor"===kind?{get:descriptor.get,set:descriptor.set}:descriptor[key],context);if("accessor"===kind){if(void 0===result)continue;if(null===result||"object"!=typeof result)throw new TypeError("Object expected");(_=accept(result.get))&&(descriptor.get=_),(_=accept(result.set))&&(descriptor.set=_),(_=accept(result.init))&&initializers.unshift(_)}else(_=accept(result))&&("field"===kind?initializers.unshift(_):descriptor[key]=_)}target&&Object.defineProperty(target,contextIn.name,descriptor),done=!0};import{Callback}from"Beckhoff.TwinCAT.HMI.Framework/index.esm.js";import{UserManagementPopup}from"./UserManagementPopup.js";import{AddUserPopup}from"./AddUserPopup.js";import{DeleteUserPopup}from"./DeleteUserPopup.js";import{ChangeUserPopup}from"./ChangeUserPopup.js";let ManageUserPopup=(()=>{var _a,_b,_c,_d,_e,_f,_g;let ___onClose_decorators,___onAddUser_decorators,___onDeleteUser_decorators,___onChangeUser_decorators,___onDomainSelectionChanged_decorators,___advancedChangedByPopup_decorators,___onSubPopupClosed_decorators,_classSuper=UserManagementPopup,_instanceExtraInitializers=[];return class extends _classSuper{static{const _metadata="function"==typeof Symbol&&Symbol.metadata?Object.create(_classSuper[Symbol.metadata]??null):void 0;___onClose_decorators=[(_a=TcHmi).CallbackMethod.bind(_a)],___onAddUser_decorators=[(_b=TcHmi).CallbackMethod.bind(_b)],___onDeleteUser_decorators=[(_c=TcHmi).CallbackMethod.bind(_c)],___onChangeUser_decorators=[(_d=TcHmi).CallbackMethod.bind(_d)],___onDomainSelectionChanged_decorators=[(_e=TcHmi).CallbackMethod.bind(_e)],___advancedChangedByPopup_decorators=[(_f=TcHmi).CallbackMethod.bind(_f)],___onSubPopupClosed_decorators=[(_g=TcHmi).CallbackMethod.bind(_g)],__esDecorate(this,null,___onClose_decorators,{kind:"method",name:"__onClose",static:!1,private:!1,access:{has:obj=>"__onClose"in obj,get:obj=>obj.__onClose},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___onAddUser_decorators,{kind:"method",name:"__onAddUser",static:!1,private:!1,access:{has:obj=>"__onAddUser"in obj,get:obj=>obj.__onAddUser},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___onDeleteUser_decorators,{kind:"method",name:"__onDeleteUser",static:!1,private:!1,access:{has:obj=>"__onDeleteUser"in obj,get:obj=>obj.__onDeleteUser},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___onChangeUser_decorators,{kind:"method",name:"__onChangeUser",static:!1,private:!1,access:{has:obj=>"__onChangeUser"in obj,get:obj=>obj.__onChangeUser},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___onDomainSelectionChanged_decorators,{kind:"method",name:"__onDomainSelectionChanged",static:!1,private:!1,access:{has:obj=>"__onDomainSelectionChanged"in obj,get:obj=>obj.__onDomainSelectionChanged},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___advancedChangedByPopup_decorators,{kind:"method",name:"__advancedChangedByPopup",static:!1,private:!1,access:{has:obj=>"__advancedChangedByPopup"in obj,get:obj=>obj.__advancedChangedByPopup},metadata:_metadata},null,_instanceExtraInitializers),__esDecorate(this,null,___onSubPopupClosed_decorators,{kind:"method",name:"__onSubPopupClosed",static:!1,private:!1,access:{has:obj=>"__onSubPopupClosed"in obj,get:obj=>obj.__onSubPopupClosed},metadata:_metadata},null,_instanceExtraInitializers),_metadata&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:_metadata})}constructor(parentControl){super(parentControl),this.__elementDomains=document.createElement("div"),this.__elementDomains.classList.add("TcHmi_Controls_Beckhoff_TcHmiUserManagement-popup-content"),this.__elementButtons=document.createElement("div"),this.__elementButtons.classList.add("TcHmi_Controls_Beckhoff_TcHmiUserManagement-popup-content"),this.__elementDomainsHeader=document.createElement("h2"),this.__elementDomains.append(this.__elementDomainsHeader),this.__elementFeedback=document.createElement("div"),this.__elementContent.append(this.__elementDomains,this.__elementButtons);const cancelButton=TcHmi.ControlFactory.createEx("TcHmi.Controls.Beckhoff.TcHmiButton",`${this.__name}.cancelButton`,{"data-tchmi-height":30,"data-tchmi-width-mode":"Content","data-tchmi-min-width":60,"data-tchmi-ignore-escape-sequences":!0,"data-tchmi-text-padding":{left:7,right:7,top:6,bottom:6}},this.__parentControl),addUserButton=TcHmi.ControlFactory.createEx("TcHmi.Controls.Beckhoff.TcHmiButton",`${this.__name}.addUserButton`,{"data-tchmi-text-padding":{left:7,right:7,top:6,bottom:6}},this.__parentControl),deleteUserButton=TcHmi.ControlFactory.createEx("TcHmi.Controls.Beckhoff.TcHmiButton",`${this.__name}.deleteUserButton`,{"data-tchmi-text-padding":{left:7,right:7,top:6,bottom:6}},this.__parentControl),changeUserButton=TcHmi.ControlFactory.createEx("TcHmi.Controls.Beckhoff.TcHmiButton",`${this.__name}.manageUserButton`,{"data-tchmi-text-padding":{left:7,right:7,top:6,bottom:6}},this.__parentControl),domainCombobox=TcHmi.ControlFactory.createEx("TcHmi.Controls.Beckhoff.TcHmiCombobox",`${this.__name}.domainCombobox`,{"data-tchmi-drop-down-font-size":this.__textFontSize,"data-tchmi-drop-down-font-size-unit":this.__textFontSizeUnit},this.__parentControl);if(!(cancelButton&&addUserButton&&deleteUserButton&&changeUserButton&&domainCombobox))throw new Error("Could not create controls for ManageuserPopup.");this.__cancelButton=cancelButton;const cancelButtonElement=this.__cancelButton.getElement()[0];cancelButtonElement.classList.add("cancelbutton"),this.__elementFooter.append(cancelButtonElement),this.__addUserButton=addUserButton,this.__deleteUserButton=deleteUserButton,this.__changeUserButton=changeUserButton,this.__elementButtons.append(this.__addUserButton.getElement()[0],this.__deleteUserButton.getElement()[0],this.__changeUserButton.getElement()[0],this.__elementFeedback),this.__domainCombobox=domainCombobox,this.__elementDomains.append(this.__domainCombobox.getElement()[0]),this.__destroyers.push(TcHmi.EventProvider.register(this.__cancelButton.getId()+".onPressed",this.__onClose),TcHmi.EventProvider.register(this.__addUserButton.getId()+".onPressed",this.__onAddUser),TcHmi.EventProvider.register(this.__deleteUserButton.getId()+".onPressed",this.__onDeleteUser),TcHmi.EventProvider.register(this.__changeUserButton.getId()+".onPressed",this.__onChangeUser),TcHmi.EventProvider.register(this.__domainCombobox.getId()+".onSelectionChanged",this.__onDomainSelectionChanged))}__elementDomains=__runInitializers(this,_instanceExtraInitializers);__elementDomainsHeader;__elementFeedback;__cancelButton;__addUserButton;__deleteUserButton;__changeUserButton;__domainCombobox;__addUserPopup;__deleteUserPopup;__changeUserPopup;__groupList;__elementButtons;__advanced=!1;__advancedChangeCallbacks=new Callback.Collection;onAdvancedChanged=this.__advancedChangeCallbacks.getManipulators();__localizedTexts=null;show(){this.updateDomains(),this.__updateFontSizes(),super.show()}destroy(){super.destroy(),this.__addUserPopup?.onAdvancedChanged.remove(this.__advancedChangedByPopup),this.__addUserPopup?.onHide.remove(this.__onSubPopupClosed),this.__addUserPopup?.destroy(),this.__addUserPopup=void 0,this.__deleteUserPopup?.onAdvancedChanged.remove(this.__advancedChangedByPopup),this.__deleteUserPopup?.onHide.remove(this.__onSubPopupClosed),this.__deleteUserPopup?.destroy(),this.__deleteUserPopup=void 0,this.__changeUserPopup?.onAdvancedChanged.remove(this.__advancedChangedByPopup),this.__changeUserPopup?.onHide.remove(this.__onSubPopupClosed),this.__changeUserPopup?.destroy(),this.__changeUserPopup=void 0}updateDomains(){TcHmi.Server.readSymbol("ListDomains",data=>{const domainList=data.response?.commands?.[0].readValue;if(data.error===TcHmi.Errors.NONE&&domainList){const domains=[];for(let[domainName,domain]of Object.entries(domainList))domain?.authExtension&&domains.push(domainName);if(domains.length<1)this.__elementDomains.classList.add("not-displayed"),this.__selectedDomain=TcHmi.Server.getCurrentUserConfig().defaultAuthExtension,this.__showButtonsBasedOnApiAccess();else if(1===domains.length)this.__selectedDomain=domains[0],this.__elementDomains.classList.add("not-displayed"),this.__showButtonsBasedOnApiAccess();else{this.__elementDomains.classList.remove("not-displayed");let currentDomain=this.__selectedDomain??TcHmi.Server.getCurrentUserConfig().domain;if(this.__domainCombobox){this.__domainCombobox.setSrcData(domains);let index=domains.findIndex(x=>x===currentDomain);-1===index&&(index=0),this.__domainCombobox.setSelectedIndex(index)}}this.__showButtonsBasedOnApiAccess()}})}__showButtonsBasedOnApiAccess(){this.__selectedDomain&&TcHmi.Server.UserManagement.getApiAccess({domain:this.__selectedDomain},data=>{if(data.error===TcHmi.Errors.NONE&&data.result){let showFeedback=!0;data.result.addUser.general&&data.result.listUserGroupNames.general&&data.result.listUsers.general?(this.__addUserButton?.getElement()[0].classList.remove("not-displayed"),showFeedback=!1):this.__addUserButton?.getElement()[0].classList.add("not-displayed"),data.result.listUsers.general&&data.result.listUsers.groups&&data.result.listUserGroupNames.general&&data.result.updateUser.removeGroups&&data.result.updateUser.addGroups?(this.__changeUserButton?.getElement()[0].classList.remove("not-displayed"),showFeedback=!1):this.__changeUserButton?.getElement()[0].classList.add("not-displayed"),data.result.listUsers.general&&data.result.removeUser.general?(this.__deleteUserButton?.getElement()[0].classList.remove("not-displayed"),showFeedback=!1):this.__deleteUserButton?.getElement()[0].classList.add("not-displayed"),this.__elementFeedback.classList.toggle("not-displayed",!showFeedback)}else this.__elementFeedback.classList.remove("not-displayed"),this.__addUserButton?.getElement()[0].classList.add("not-displayed"),this.__changeUserButton?.getElement()[0].classList.add("not-displayed"),this.__deleteUserButton?.getElement()[0].classList.add("not-displayed")})}__performPromptAction(toPerform){this.__onHideManager.trigger()}__onClose(){this.hide()}__onAddUser(){this.__addUserPopup||(this.__addUserPopup=new AddUserPopup(this.__parentControl),this.__addUserPopup.setAdvanced(this.__advanced),this.__addUserPopup.onAdvancedChanged.add(this.__advancedChangedByPopup),this.__addUserPopup.onHide.add(this.__onSubPopupClosed),this.__localizedTexts?.addUserLocalizableTexts&&this.__addUserPopup.setTexts(this.__localizedTexts.addUserLocalizableTexts)),this.__addUserPopup.setDomain(this.__selectedDomain),this.__addUserPopup.show(),this.__updateFontSizes()}__onDeleteUser(){this.__deleteUserPopup||(this.__deleteUserPopup=new DeleteUserPopup(this.__parentControl),this.__deleteUserPopup.setAdvanced(this.__advanced),this.__deleteUserPopup.onAdvancedChanged.add(this.__advancedChangedByPopup),this.__deleteUserPopup.onHide.add(this.__onSubPopupClosed),this.__localizedTexts?.deleteUserLocalizabletexts&&this.__deleteUserPopup?.setTexts(this.__localizedTexts?.deleteUserLocalizabletexts)),this.__deleteUserPopup.setDomain(this.__selectedDomain),this.__deleteUserPopup.show(),this.__updateFontSizes()}__onChangeUser(){this.__changeUserPopup||(this.__changeUserPopup=new ChangeUserPopup(this.__parentControl),this.__changeUserPopup.setAdvanced(this.__advanced),this.__changeUserPopup.onAdvancedChanged.add(this.__advancedChangedByPopup),this.__changeUserPopup.onHide.add(this.__onSubPopupClosed),this.__localizedTexts?.changeUserLocalizableTexts&&this.__changeUserPopup?.setTexts(this.__localizedTexts.changeUserLocalizableTexts)),this.__changeUserPopup.setDomain(this.__selectedDomain),this.__changeUserPopup.show(),this.__updateFontSizes()}__onDomainSelectionChanged(){this.__selectedDomain=this.__domainCombobox?.getSelectedValue()??TcHmi.Server.getCurrentUserConfig().defaultAuthExtension,this.__showButtonsBasedOnApiAccess()}__advancedChangedByPopup(advanced){advanced!==this.__advanced&&(this.__advanced=advanced,this.__advancedChangeCallbacks.trigger(this.__advanced),this.__addUserPopup?.setAdvanced(this.__advanced),this.__changeUserPopup?.setAdvanced(this.__advanced),this.__deleteUserPopup?.setAdvanced(this.__advanced))}__onSubPopupClosed(){this.updateDomains()}setAdvanced(advanced){advanced!==this.__advanced&&(this.__advanced=advanced,this.__addUserPopup?.setAdvanced(this.__advanced),this.__changeUserPopup?.setAdvanced(this.__advanced),this.__deleteUserPopup?.setAdvanced(this.__advanced))}__updateFontSizes(){super.__updateFontSizes(),this.__addUserPopup&&(this.__addUserPopup.setTextFontSize(this.__textFontSize),this.__addUserPopup.setTextFontSizeUnit(this.__textFontSizeUnit),this.__addUserPopup.setDropDownFontSize(this.__dropDownFontSize),this.__addUserPopup.setDropDownFontSizeUnit(this.__dropDownFontSizeUnit),this.__addUserPopup.setHeadlineFontSize(this.__headlineFontSize),this.__addUserPopup.setHeadlineFontSizeUnit(this.__headlineFontSizeUnit),this.__addUserPopup.setSubHeadlineFontSize(this.__subHeadlineFontSize),this.__addUserPopup.setSubHeadlineFontSizeUnit(this.__subHeadlineFontSizeUnit)),this.__deleteUserPopup&&(this.__deleteUserPopup.setTextFontSize(this.__textFontSize),this.__deleteUserPopup.setTextFontSizeUnit(this.__textFontSizeUnit),this.__deleteUserPopup.setDropDownFontSize(this.__dropDownFontSize),this.__deleteUserPopup.setDropDownFontSizeUnit(this.__dropDownFontSizeUnit),this.__deleteUserPopup.setHeadlineFontSize(this.__headlineFontSize),this.__deleteUserPopup.setHeadlineFontSizeUnit(this.__headlineFontSizeUnit),this.__deleteUserPopup.setSubHeadlineFontSize(this.__subHeadlineFontSize),this.__deleteUserPopup.setSubHeadlineFontSizeUnit(this.__subHeadlineFontSizeUnit)),this.__changeUserPopup&&(this.__changeUserPopup.setTextFontSize(this.__textFontSize),this.__changeUserPopup.setTextFontSizeUnit(this.__textFontSizeUnit),this.__changeUserPopup.setDropDownFontSize(this.__dropDownFontSize),this.__changeUserPopup.setDropDownFontSizeUnit(this.__dropDownFontSizeUnit),this.__changeUserPopup.setHeadlineFontSize(this.__headlineFontSize),this.__changeUserPopup.setHeadlineFontSizeUnit(this.__headlineFontSizeUnit),this.__changeUserPopup.setSubHeadlineFontSize(this.__subHeadlineFontSize),this.__changeUserPopup.setSubHeadlineFontSizeUnit(this.__subHeadlineFontSizeUnit)),this.__addUserButton.setTextFontSize(this.__textFontSize),this.__addUserButton.setTextFontSizeUnit(this.__textFontSizeUnit),this.__addUserButton.setHeightMode("Content"),this.__deleteUserButton.setTextFontSize(this.__textFontSize),this.__deleteUserButton.setTextFontSizeUnit(this.__textFontSizeUnit),this.__deleteUserButton.setHeightMode("Content"),this.__changeUserButton.setTextFontSize(this.__textFontSize),this.__changeUserButton.setTextFontSizeUnit(this.__textFontSizeUnit),this.__changeUserButton.setHeightMode("Content"),this.__cancelButton.setTextFontSize(this.__textFontSize),this.__cancelButton.setTextFontSizeUnit(this.__textFontSizeUnit),this.__cancelButton.setHeightMode("Content"),this.__domainCombobox.setTextFontSize(this.__textFontSize),this.__domainCombobox.setTextFontSizeUnit(this.__textFontSizeUnit),"px"===this.__textFontSizeUnit&&this.__textFontSize?this.__domainCombobox.setHeight(this.__textFontSize+10):this.__domainCombobox.setHeight(null),this.__domainCombobox.setDropDownFontSize(this.__dropDownFontSize),this.__domainCombobox.setDropDownFontSizeUnit(this.__dropDownFontSizeUnit),"px"===this.__dropDownFontSizeUnit&&this.__dropDownFontSize?this.__domainCombobox.setDataHeight(1.5*this.__dropDownFontSize):this.__domainCombobox.setDataHeight(null)}setTexts(texts){super.setTexts(texts),this.__applyTextToElement("domainHeaderText",texts.domainHeaderText,this.__elementDomainsHeader),this.__applyTextToElement("feedbackPromptNothingToConfigure",texts.feedbackPromptNothingToConfigure,this.__elementFeedback),this.__applyTextToControl("cancelButtonText",texts.cancelButton?.text,this.__cancelButton,"Text"),this.__applyTextToControl("cancelButtonTooltip",texts.cancelButton?.tooltip,this.__cancelButton,"Tooltip"),this.__applyTextToControl("addUserButtonText",texts.addUserButton?.text,this.__addUserButton,"Text"),this.__applyTextToControl("addUserButtonTooltip",texts.addUserButton?.tooltip,this.__addUserButton,"Tooltip"),this.__applyTextToControl("deleteUserButtonText",texts.deleteUserButton?.text,this.__deleteUserButton,"Text"),this.__applyTextToControl("deleteUserButtonTooltip",texts.deleteUserButton?.tooltip,this.__deleteUserButton,"Tooltip"),this.__applyTextToControl("changeUserButtonText",texts.changeUserButton?.text,this.__changeUserButton,"Text"),this.__applyTextToControl("changeUserButtonTooltip",texts.changeUserButton?.tooltip,this.__changeUserButton,"Tooltip"),texts.addUserLocalizableTexts&&this.__addUserPopup?.setTexts(texts.addUserLocalizableTexts),texts.deleteUserLocalizabletexts&&this.__deleteUserPopup?.setTexts(texts.deleteUserLocalizabletexts),texts.changeUserLocalizableTexts&&this.__changeUserPopup?.setTexts(texts.changeUserLocalizableTexts)}}})();export{ManageUserPopup};