define(["exports","./../../modules/common/globalize.js","./../../modules/layoutmanager.js","./../../modules/loading/loading.js","./../../modules/dialoghelper/dialoghelper.js","./../libraryoptionseditor/libraryoptionseditor.js","./../../modules/listview/listview.js","./../../modules/emby-elements/emby-scroller/emby-scroller.js","./../../modules/emby-elements/emby-button/emby-button.js","./../../modules/emby-elements/emby-button/paper-icon-button-light.js","./../../modules/emby-elements/emby-input/emby-input.js","./../../modules/emby-elements/emby-select/emby-select.js","./../../modules/emby-elements/emby-toggle/emby-toggle.js","./../../modules/emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js","./../../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js"],function(_exports,_globalize,_layoutmanager,_loading,_dialoghelper,_libraryoptionseditor,_listview,_embyScroller,_embyButton,_paperIconButtonLight,_embyInput,_embySelect,_embyToggle,_embyDialogclosebutton,_embyItemscontainer){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["flexStyles","formDialogStyle"]);var currentResolve,hasChanges,currentOptions,pathInfos=[];function showAlert(options){Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function onSubmit(e){var form,dlg,type,libraryOptions;return e.preventDefault(),e.stopPropagation(),0===pathInfos.length?showAlert({text:_globalize.default.translate("PleaseAddAtLeastOneFolder"),type:"error"}):(dlg=(form=this).closest(".dialog"),e=(form.querySelector(".button-submit").setAttribute("disabled","disabled"),form.querySelector(".txtValue").value),"mixed"===(type=form.querySelector(".selectCollectionType").value)&&(type=null),(libraryOptions=_libraryoptionseditor.default.getLibraryOptions(dlg.querySelector(".libraryOptions"))).PathInfos=pathInfos,libraryOptions.ContentType=type,ApiClient.addVirtualFolder(e,type,currentOptions.refresh,libraryOptions).then(function(){hasChanges=!0,_dialoghelper.default.close(dlg)},function(){form.querySelector(".button-submit").removeAttribute("disabled"),showAlert(_globalize.default.translate("ErrorAddingMediaPathToVirtualFolder"))})),!1}function onAddButtonClick(){var dlg=this.closest(".dlg-librarycreator");Emby.importModule("./modules/directorybrowser/directorybrowser.js").then(function(directoryBrowser){var picker=new directoryBrowser;picker.show({enableNetworkSharePath:!0,enableLoginCredentials:!0,callback:function(path,networkSharePath,username,password){path&&!function(page,path,networkSharePath,username,password){var pathLower=path.toLowerCase();0===pathInfos.filter(function(p){return p.Path.toLowerCase()===pathLower}).length&&(path={Path:path},networkSharePath&&(path.NetworkPath=networkSharePath),username&&(path.Username=username),password&&(path.Password=password),pathInfos.push(path),renderPaths(page))}(dlg,path,networkSharePath,username,password),picker.close()}})})}function renderPaths(page){var folderList=page.querySelector(".folderList");folderList.waitForCustomElementUpgrade().then(function(){folderList.resume({refresh:!0})})}function getFolderListOptions(items){return{renderer:_listview.default,options:{moreButton:!1,defaultBackground:!1,action:_layoutmanager.default.tv?"menu":"none",buttonCommands:["delete"],fields:["Name","ShortOverview"],draggable:!1,dragReorder:!1,roundImage:!0,image:!1,multiSelect:!1,playQueueIndicator:!1,commandActions:{deleteItems:function(options){var items=options.items.map(function(i){return i.OriginalItem});return pathInfos=pathInfos.filter(function(p){return!items.includes(p)}),Promise.resolve()}.bind(this)}}}}function onDialogClosed(){_loading.default.hide(),currentResolve(hasChanges)}function initLibraryOptions(dlg){_libraryoptionseditor.default.embed(dlg.querySelector(".libraryOptions"),!0).then(function(){dlg.querySelector(".selectCollectionType").dispatchEvent(new CustomEvent("change",{bubbles:!0}))})}_exports.default=function(){this.show=function(options){return new Promise(function(resolve,reject){currentOptions=options,currentResolve=resolve,hasChanges=!1;resolve=new XMLHttpRequest;resolve.open("GET","components/medialibrarycreator/medialibrarycreator.template.html",!0),resolve.onload=function(e){var collectionTypeOptions,template=this.response,dlg=_dialoghelper.default.createDialog({size:_layoutmanager.default.tv?"fullscreen":"medium-tall",modal:!1,removeOnClose:!0,scrollY:!1}),selectCollectionType=(dlg.classList.add("ui-body-a"),dlg.classList.add("background-theme-a"),dlg.classList.add("dlg-librarycreator"),dlg.classList.add("formDialog"),dlg.innerHTML=_globalize.default.translateDocument(template),template=dlg,collectionTypeOptions=options.collectionTypeOptions,(selectCollectionType=template.querySelector(".selectCollectionType")).innerHTML=function(collectionTypeOptions){return collectionTypeOptions.filter(function(i){return!1!==i.isSelectable}).map(function(i){return'"}).join("")}(collectionTypeOptions),selectCollectionType.value="",selectCollectionType.addEventListener("change",function(){var value=this.value,dlg=this.closest(".dialog"),index=(_libraryoptionseditor.default.setContentType(dlg.querySelector(".libraryOptions"),"mixed"===value?"":value),value?dlg.querySelector(".libraryOptions").classList.remove("hide"):dlg.querySelector(".libraryOptions").classList.add("hide"),this.selectedIndex);-1!==index&&(index=this.options[index].innerHTML.replace("*","").replace("&","&"),dlg.querySelector(".txtValue").value=index,index=collectionTypeOptions.filter(function(i){return i.value===value})[0],dlg.querySelector(".collectionTypeFieldDescription").innerHTML=index.message||"")}),template.querySelector(".btnAddFolder").addEventListener("click",onAddButtonClick),template.querySelector("form").addEventListener("submit",onSubmit),dlg.addEventListener("close",onDialogClosed),dlg.querySelector(".folderList"));selectCollectionType.fetchData=function(){var items=pathInfos.map(function(i,index){return{Type:"GenericListItem",Name:i.Path,CanDelete:!0,Icon:"folder",DeleteType:"remove",ShortOverview:i.NetworkPath,OriginalItem:i}});return Promise.resolve({Items:items,TotalRecordCount:items.length})}.bind(dlg),selectCollectionType.getListOptions=getFolderListOptions.bind(dlg),_dialoghelper.default.open(dlg),pathInfos=[],renderPaths(dlg),initLibraryOptions(dlg)},resolve.send()})}}});