Proyectos de Subversion Moodle

Rev

Autoría | Ultima modificación | Ver Log |

define("tiny_media/embed/embedpreview",["exports","../selectors","../common","core/str","../helpers","./embedhandler","../mediabase","core/notification","../embedmodal","./embedhelpers","core_filters/events"],(function(_exports,_selectors,_common,_str,_helpers,_embedhandler,_mediabase,_notification,_embedmodal,_embedhelpers,_events){function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.EmbedPreview=void 0,_selectors=_interopRequireDefault(_selectors),_notification=_interopRequireDefault(_notification),_embedmodal=_interopRequireDefault(_embedmodal);class EmbedPreview extends _mediabase.MediaBase{constructor(data){super(),_defineProperty(this,"selectorType",_selectors.default.EMBED.type),_defineProperty(this,"linkMediaAspectRatio",1.78),_defineProperty(this,"init",(async()=>{var _this$fetchedMediaLin;this.currentModal.setTitle((0,_str.getString)("mediadetails",_common.component)),(0,_helpers.sourceTypeChecked)({fetchedTitle:null!==(_this$fetchedMediaLin=this.fetchedMediaLinkTitle)&&void 0!==_this$fetchedMediaLin?_this$fetchedMediaLin:null,source:this.originalUrl,root:this.root,urlSelector:_selectors.default.EMBED.elements.fromUrl,fileNameSelector:_selectors.default.EMBED.elements.fileNameLabel}),this.setMediaSourceAndPoster(),this.registerMediaDetailsEventListeners(this.currentModal)})),_defineProperty(this,"setMediaSourceAndPoster",(async()=>{const box=this.root.querySelector(_selectors.default.EMBED.elements.previewBox),previewArea=document.querySelector(_selectors.default.EMBED.elements.mediaPreviewContainer);if(previewArea.setAttribute("data-original-url",this.originalUrl),"link"===this.mediaType||this.newMediaLink&&!["video","audio"].includes(this.mediaType))previewArea.setAttribute("data-media-type","link"),previewArea.innerHTML=await(0,_embedhelpers.fetchPreview)(this.originalUrl,this.contextId),(0,_events.notifyFilterContentUpdated)(previewArea);else if("video"===this.mediaType){const video=document.createElement("video");video.src=this.originalUrl,video.addEventListener("loadedmetadata",(()=>{const videoHeight=video.videoHeight,videoWidth=video.videoWidth,isLandscape=videoWidth-videoHeight>0;this.mediaDimensions={width:videoWidth,height:videoHeight},isLandscape?video.width=box.offsetWidth:video.height=box.offsetHeight;const height=this.root.querySelector(_selectors.default.EMBED.elements.height),width=this.root.querySelector(_selectors.default.EMBED.elements.width);""===height.value&&""===width.value&&(height.value=videoHeight,width.value=videoWidth),videoHeight===parseInt(height.value)&&videoWidth===parseInt(width.value)?(this.currentWidth=this.mediaDimensions.width,this.currentHeight=this.mediaDimensions.height,this.sizeChecked("original")):(this.currentWidth=parseInt(width.value),this.currentHeight=parseInt(height.value),this.sizeChecked("custom"))})),video.controls=!0,this.media.poster&&(previewArea.setAttribute("data-media-poster",this.media.poster),video.classList.contains("w-100")||video.classList.add("w-100"),video.poster=this.media.poster),video.load(),previewArea.setAttribute("data-media-type","video"),previewArea.innerHTML=video.outerHTML,(0,_events.notifyFilterContentUpdated)(previewArea)}else{if("audio"!==this.mediaType){return this.root.querySelector(_selectors.default.EMBED.elements.urlWarning).innerHTML=await(0,_str.getString)("medianotavailabledesc",_common.component,this.originalUrl),(0,_helpers.showElements)(_selectors.default.EMBED.elements.urlWarning,this.root),(0,_helpers.stopMediaLoading)(this.root,_selectors.default.EMBED.type),void new _embedhandler.EmbedHandler(this).resetUploadForm()}{const audio=document.createElement("audio");audio.src=this.originalUrl,audio.controls=!0,audio.load(),previewArea.setAttribute("data-media-type","audio"),previewArea.innerHTML=audio.outerHTML,(0,_events.notifyFilterContentUpdated)(previewArea)}}(0,_helpers.stopMediaLoading)(this.root,_selectors.default.EMBED.type),(0,_helpers.showElements)(_selectors.default.EMBED.elements.mediaDetailsBody,this.root),this.root.querySelector(_selectors.default.EMBED.elements.title).value=this.setMediaTitle()})),_defineProperty(this,"setMediaTitle",(()=>{let fileName=null;return fileName=["video","audio"].includes(this.mediaType)?(0,_helpers.getFileName)(this.originalUrl):this.fetchedMediaLinkTitle?this.fetchedMediaLinkTitle:this.originalUrl,this.isUpdating&&(this.newMediaLink||(fileName=this.mediaTitle)),fileName})),_defineProperty(this,"deleteMedia",(()=>{_notification.default.deleteCancelPromise((0,_str.getString)("deletemedia",_common.component),(0,_str.getString)("deletemediawarning",_common.component)).then((()=>{new _embedhandler.EmbedHandler(this).resetUploadForm(),delete this.mediaData})).catch((error=>{window.console.log(error)}))})),_defineProperty(this,"deleteEmbeddedThumbnail",(()=>{_notification.default.deleteCancelPromise((0,_str.getString)("deleteembeddedthumbnail",_common.component),(0,_str.getString)("deleteembeddedthumbnailwarning",_common.component)).then((async()=>{if("video"===this.mediaType){const video=this.root.querySelector("video");if(video){video.removeAttribute("poster");this.root.querySelector(_selectors.default.EMBED.elements.mediaPreviewContainer).removeAttribute("data-media-poster")}}this.root.querySelector(_selectors.default.EMBED.actions.deleteCustomThumbnail).remove();this.root.querySelector(_selectors.default.EMBED.actions.uploadCustomThumbnail).textContent=await(0,_str.getString)("uploadthumbnail",_common.component)})).catch((error=>{window.console.log(error)}))})),_defineProperty(this,"showUploadThumbnail",(async()=>{const uploadThumbnailModal=await _embedmodal.default.create({large:!0,templateContext:{elementid:this.editor.getElement().id}}),root=uploadThumbnailModal.getRoot()[0],mediaData=(0,_embedhelpers.getEmbeddedMediaDetails)(this);mediaData.isUpdating=this.isUpdating;const embedHandler=new _embedhandler.EmbedHandler(this);embedHandler.loadInsertThumbnailTemplatePromise((0,_embedhelpers.insertMediaThumbnailTemplateContext)(this),{root:root,uploadThumbnailModal:uploadThumbnailModal},await embedHandler.getMediaTemplateContext(mediaData))})),_defineProperty(this,"registerMediaDetailsEventListeners",(async()=>{const sizeOriginalEle=this.root.querySelector(_selectors.default.EMBED.elements.sizeOriginal);sizeOriginalEle&&sizeOriginalEle.addEventListener("change",(()=>{this.sizeChecked("original")}));const sizeCustomEle=this.root.querySelector(_selectors.default.EMBED.elements.sizeCustom);sizeCustomEle&&sizeCustomEle.addEventListener("change",(()=>{this.sizeChecked("custom")}));const widthEle=this.root.querySelector(_selectors.default.EMBED.elements.width),heightEle=this.root.querySelector(_selectors.default.EMBED.elements.height);widthEle&&widthEle.addEventListener("input",(()=>{"link"===this.mediaType?heightEle.value=Math.round(widthEle.value/this.linkMediaAspectRatio):(widthEle.value=""===widthEle.value?0:Number(widthEle.value),this.autoAdjustSize())})),heightEle&&heightEle.addEventListener("input",(()=>{"link"===this.mediaType?widthEle.value=Math.round(heightEle.value*this.linkMediaAspectRatio):(heightEle.value=""===heightEle.value?0:Number(heightEle.value),this.autoAdjustSize(!0))}));const deleteMedia=this.root.querySelector(_selectors.default.EMBED.actions.deleteMedia);deleteMedia&&deleteMedia.addEventListener("click",(e=>{e.preventDefault(),this.deleteMedia()}));const showSubtitleCaption=this.root.querySelector(_selectors.default.EMBED.actions.showSubtitleCaption);showSubtitleCaption&&showSubtitleCaption.addEventListener("click",(e=>{e.preventDefault(),(0,_helpers.hideElements)([_selectors.default.EMBED.actions.showSubtitleCaption,_selectors.default.EMBED.actions.cancelMediaDetails,_selectors.default.EMBED.elements.mediaDetailsBody],this.root),(0,_helpers.showElements)([_selectors.default.EMBED.actions.backToMediaDetails,_selectors.default.EMBED.elements.mediaSubtitleCaptionBody],this.root)}));const backToMediaDetails=this.root.querySelector(_selectors.default.EMBED.actions.backToMediaDetails);backToMediaDetails&&backToMediaDetails.addEventListener("click",(()=>{(0,_helpers.hideElements)([_selectors.default.EMBED.actions.backToMediaDetails,_selectors.default.EMBED.elements.mediaSubtitleCaptionBody],this.root),(0,_helpers.showElements)([_selectors.default.EMBED.actions.showSubtitleCaption,_selectors.default.EMBED.actions.cancelMediaDetails,_selectors.default.EMBED.elements.mediaDetailsBody],this.root)}));const uploadCustomThumbnail=this.root.querySelector(_selectors.default.EMBED.actions.uploadCustomThumbnail);uploadCustomThumbnail&&uploadCustomThumbnail.addEventListener("click",(()=>{this.showUploadThumbnail()}));const deleteCustomThumbnail=this.root.querySelector(_selectors.default.EMBED.actions.deleteCustomThumbnail);deleteCustomThumbnail&&deleteCustomThumbnail.addEventListener("click",(()=>{this.deleteEmbeddedThumbnail()}));const langTracks=this.root.querySelectorAll(_selectors.default.EMBED.elements.trackLang);langTracks&&langTracks.forEach((dropdown=>{const defaultVal=dropdown.getAttribute("data-value");defaultVal&&Array.from(dropdown.options).some((option=>(option.dataset.languageCode===defaultVal||option.value===defaultVal)&&(option.selected=!0,!0)))}))})),(0,_helpers.setPropertiesFromData)(this,data)}}_exports.EmbedPreview=EmbedPreview}));

//# sourceMappingURL=embedpreview.min.js.map