EmbyCrackedClient/web/modules/imagedownloader/imagedownloader.js

1 line
8 KiB
JavaScript
Raw Normal View History

2025-06-25 11:46:04 +08:00
import connectionManager from"./../emby-apiclient/connectionmanager.js";import globalize from"./../common/globalize.js";import layoutManager from"./../layoutmanager.js";import loading from"./../loading/loading.js";import dialogHelper from"./../dialoghelper/dialoghelper.js";import cardBuilder from"./../cardbuilder/cardbuilder.js";import focusManager from"./../focusmanager.js";import"./../mediainfo/mediainfo.js";import"./../emby-elements/emby-button/emby-button.js";import"./../emby-elements/emby-select/emby-select.js";import"./../emby-elements/emby-scroller/emby-scroller.js";import"./../emby-elements/emby-toggle/emby-toggle.js";import"./../emby-elements/emby-itemscontainer/emby-itemscontainer.js";import"./../emby-elements/emby-button/paper-icon-button-light.js";import"./../emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js";function ImageDownloader(){}function getEditorHtml(options){var html="";return(html+='<div class="formDialogContent flex flex-direction-column" style="overflow:hidden;">')+'<div is="emby-scroller" data-horizontal="false" data-forcescrollbar="true" data-focusscroll="true" class="flex flex-grow virtualScrollerScrollContainer">'+'<div class="scrollSlider padded-left padded-right flex-grow">'+'<div class=" padded-bottom flex align-items-center justify-content-center flex-wrap-wrap focuscontainer-x fieldItems">'+'<div class="selectContainer selectContainer-inline fieldItems-item">'+('<select is="emby-select" label="'+globalize.translate("LabelSource")+'" class="selectImageProvider emby-select-inline">')+('<option value="">'+globalize.translate("All")+"</option>")+"</select>"+"</div>"+'<div class="selectContainer selectContainer-inline fieldItems-item fldSelectImageType hide">'+('<select is="emby-select" label="'+globalize.translate("LabelType")+'" class="selectBrowsableImageType emby-select-inline">')+('<option value="Primary">'+globalize.translate("Primary")+"</option>")+('<option value="Art">'+globalize.translate("Art")+"</option>")+('<option value="Backdrop">'+globalize.translate("Backdrop")+"</option>")+('<option value="Banner">'+globalize.translate("Banner")+"</option>")+('<option value="Disc">'+globalize.translate("Disc")+"</option>")+('<option value="Logo">'+globalize.translate("Logo")+"</option>")+('<option value="Thumb">'+globalize.translate("Thumb")+"</option>")+"</select>"+"</div>"+'<label class="toggleContainer fieldItems-item" style="width:auto;margin-bottom:0;">'+('<input class="chkAllLanguages" type="checkbox" is="emby-toggle" label="'+globalize.translate("HeaderAllLanguages")+'" />')+"</label>"+"</div>"+'<div is="emby-itemscontainer" data-virtualscrolllayout="vertical-grid" class="itemsContainer vertical-wrap padded-bottom-page">'+"</div>"+"</div>"+"</div>"+"</div>"}function autoFocus(){var dlg=this.dlg;loading.hide(),focusManager.autoFocus(dlg,{skipIfNotEnabled:!0})}function onDialogClosed(){var result=this.result;return this.cleanup(),loading.hide(),result?Promise.resolve():Promise.reject()}function onCardAction(e){var options=this.options,e=e.detail.item,mediaItem=options.item,downloadOptions={itemId:mediaItem.Id},options=(downloadOptions.Type=e.Type,null!=options.imageIndex&&(downloadOptions.ImageIndex=options.imageIndex),downloadOptions.ImageUrl=e.Url,downloadOptions.ProviderName=e.ProviderName,loading.show(),connectionManager.getApiClient(mediaItem));let instance=this;options.downloadRemoteImage(downloadOptions).then(function(){instance.result=!0,instance.closeDialog()})}function getDisplayUrl(url,apiClient){return apiClient.getUrl("Images/Remote",{api_key:apiClient.accessToken(),imageUrl:url})}function normalizeImage(image){var options=this.options,options=connectionManager.getApiClient(options.item);return image.Name=image.ProviderName,image.ImageUrl=getDisplayUrl(image.ThumbnailUrl||image.Url,options),image.OriginalImageUrl=getDisplayUrl(image.Url,options),image}function normalizeResult(result){var providersHtml=result.Providers.map(function(p){return'<option value="'+p+'">'+p+"</option>"}),selectImageProvider=this.dlg.querySelector(".selectImageProvider");return selectI