monster_menus-9.0.x-dev/modules/mm_media/js/build/MMMediaLibrary.js

modules/mm_media/js/build/MMMediaLibrary.js
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.CKEditor5=t():(e.CKEditor5=e.CKEditor5||{},e.CKEditor5.MMMediaLibrary=t())}(self,(()=>(()=>{var e={"ckeditor5/src/core.js":(e,t,r)=>{e.exports=r("dll-reference CKEditor5.dll")("./src/core.js")},"ckeditor5/src/ui.js":(e,t,r)=>{e.exports=r("dll-reference CKEditor5.dll")("./src/ui.js")},"ckeditor5/src/widget.js":(e,t,r)=>{e.exports=r("dll-reference CKEditor5.dll")("./src/widget.js")},"dll-reference CKEditor5.dll":e=>{"use strict";e.exports=CKEditor5.dll}},t={};function r(i){var a=t[i];if(void 0!==a)return a.exports;var d=t[i]={exports:{}};return e[i](d,d.exports,r),d.exports}r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var i={};return(()=>{"use strict";r.d(i,{default:()=>g});var e=r("ckeditor5/src/core.js"),t=r("ckeditor5/src/widget.js");function a(e){return!!e&&e.is("element","drupalMedia")}function d(e){for(const t of e){if(t.hasAttribute("data-drupal-media-preview"))return t;if(t.childCount){const e=d(t.getChildren());if(e)return e}}return null}function n(e){return`drupalElementStyle${e[0].toUpperCase()+e.substring(1)}`}class s extends e.Command{execute(e){const t=this.editor.plugins.get("DrupalMediaEditing"),r=Object.entries(t.attrs).reduce(((e,[t,r])=>(e[r]=t,e)),{}),i=Object.keys(e).reduce(((t,i)=>(r[i]&&(t[r[i]]=e[i]),t)),{});if(this.editor.plugins.has("DrupalElementStyleEditing")){const t=this.editor.plugins.get("DrupalElementStyleEditing"),{normalizedStyles:r}=t;for(const a of Object.keys(r))for(const r of t.normalizedStyles[a])if(e[r.attributeName]&&r.attributeValue===e[r.attributeName]){const e=n(a);i[e]=r.name}}this.editor.model.change((e=>{this.editor.model.insertObject(function(e,t){return e.createElement("drupalMedia",t)}(e,i))}))}refresh(){const e=this.editor.model,t=e.document.selection,r=e.schema.findAllowedParent(t.getFirstPosition(),"drupalMedia");this.isEnabled=null!==r}}class o extends s{}const l="METADATA_ERROR";class u extends e.Plugin{static get requires(){return[t.Widget]}constructor(e){super(e),this.attrs={drupalMediaAlt:"alt",drupalMediaEntityType:"data-entity-type",drupalMediaEntityUuid:"data-entity-uuid"},this.converterAttributes=["drupalMediaEntityUuid","drupalElementStyleViewMode","drupalMediaEntityType","drupalMediaAlt"]}init(){const e=this.editor.config.get("drupalMedia");if(!e)return;const{previewURL:t,themeError:r}=e;this.previewUrl=t,this.labelError=Drupal.t("Preview failed"),this.themeError=r||`\n      <p>${Drupal.t("An error occurred while trying to preview the media. Save your work and reload this page.")}<p>\n    `,this._defineSchema(),this._defineConverters(),this._defineListeners(),this.editor.commands.add("insertDrupalMedia",new s(this.editor))}upcastDrupalMediaIsImage(e){const{model:t,plugins:r}=this.editor;r.get("DrupalMediaMetadataRepository").getMetadata(e).then((r=>{e&&t.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("drupalMediaIsImage",!!r.imageSourceMetadata,e)}))})).catch((r=>{e&&(console.warn(r.toString()),t.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("drupalMediaIsImage",l,e)})))}))}upcastDrupalMediaType(e){this.editor.plugins.get("DrupalMediaMetadataRepository").getMetadata(e).then((t=>{e&&this.editor.model.enqueueChange({isUndoable:!1},(r=>{r.setAttribute("drupalMediaType",t.type,e)}))})).catch((t=>{e&&(console.warn(t.toString()),this.editor.model.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("drupalMediaType",l,e)})))}))}async _fetchPreview(e){const t={text:this._renderElement(e),uuid:e.getAttribute("drupalMediaEntityUuid")},r=await fetch(`${this.previewUrl}?${new URLSearchParams(t)}`,{headers:{"X-Drupal-MediaPreview-CSRF-Token":this.editor.config.get("drupalMedia").previewCsrfToken}});if(r.ok){return{label:r.headers.get("drupal-media-label"),preview:await r.text()}}return{label:this.labelError,preview:this.themeError}}_defineSchema(){this.editor.model.schema.register("drupalMedia",{inheritAllFrom:"$blockObject",allowAttributes:Object.keys(this.attrs)}),this.editor.editing.view.domConverter.blockElements.push("drupal-media")}_defineConverters(){const e=this.editor.conversion,r=this.editor.plugins.get("DrupalMediaMetadataRepository");e.for("upcast").elementToElement({view:{name:"drupal-media"},model:"drupalMedia"}).add((e=>{e.on("element:drupal-media",((e,t)=>{const[i]=t.modelRange.getItems();r.getMetadata(i).then((e=>{i&&(this.upcastDrupalMediaIsImage(i),this.editor.model.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("drupalMediaType",e.type,i)})))})).catch((e=>{console.warn(e.toString())}))}),{priority:"lowest"})})),e.for("dataDowncast").elementToElement({model:"drupalMedia",view:{name:"drupal-media"}}),e.for("editingDowncast").elementToElement({model:"drupalMedia",view:(e,{writer:r})=>{const i=r.createContainerElement("figure",{class:"drupal-media"});if(!this.previewUrl){const e=r.createRawElement("div",{"data-drupal-media-preview":"unavailable"});r.insert(r.createPositionAt(i,0),e)}return r.setCustomProperty("drupalMedia",!0,i),(0,t.toWidget)(i,r,{label:Drupal.t("Media widget")})}}).add((e=>{const t=(e,t,r)=>{const i=r.writer,a=t.item,n=r.mapper.toViewElement(t.item);let s=d(n.getChildren());if(s){if("ready"!==s.getAttribute("data-drupal-media-preview"))return;i.setAttribute("data-drupal-media-preview","loading",s)}else s=i.createRawElement("div",{"data-drupal-media-preview":"loading"}),i.insert(i.createPositionAt(n,0),s);this._fetchPreview(a).then((({label:e,preview:t})=>{s&&this.editor.editing.view.change((r=>{const i=r.createRawElement("div",{"data-drupal-media-preview":"ready","aria-label":e},(e=>{e.innerHTML=t}));r.insert(r.createPositionBefore(s),i),r.remove(s)}))}))};return this.converterAttributes.forEach((r=>{e.on(`attribute:${r}:drupalMedia`,t)})),e})),e.for("editingDowncast").add((e=>{e.on("attribute:drupalElementStyleAlign:drupalMedia",((e,t,r)=>{const i={left:"drupal-media-style-align-left",right:"drupal-media-style-align-right",center:"drupal-media-style-align-center"},a=r.mapper.toViewElement(t.item),d=r.writer;i[t.attributeOldValue]&&d.removeClass(i[t.attributeOldValue],a),i[t.attributeNewValue]&&r.consumable.consume(t.item,e.name)&&d.addClass(i[t.attributeNewValue],a)}))})),Object.keys(this.attrs).forEach((t=>{const r={model:{key:t,name:"drupalMedia"},view:{name:"drupal-media",key:this.attrs[t]}};e.for("dataDowncast").attributeToAttribute(r),e.for("upcast").attributeToAttribute(r)}))}_defineListeners(){this.editor.model.on("insertContent",((e,[t])=>{a(t)&&(this.upcastDrupalMediaIsImage(t),this.upcastDrupalMediaType(t))}))}_renderElement(e){const t=this.editor.model.change((t=>{const r=t.createDocumentFragment(),i=t.cloneElement(e,!1);return["linkHref"].forEach((e=>{t.removeAttribute(e,i)})),t.append(i,r),r}));return this.editor.data.stringify(t)}static get pluginName(){return"DrupalMediaEditing"}}class c extends u{static get requires(){return[t.Widget]}init(){const e=this.editor.config.get("MMMediaLibrary");if(!e)return;const{previewURL:t,themeError:r}=e;this.previewUrl=t,this.labelError=Drupal.t("Preview failed"),this.themeError=r||`\n      <p>${Drupal.t("An error occurred while trying to preview the media. Please save your work and reload this page.")}<p>\n    `,this.editor.commands.add("insertMMMediaLibrary",new o(this.editor))}static get pluginName(){return"MMMediaLibraryEditing"}}var p=r("ckeditor5/src/ui.js");class m extends e.Plugin{init(){const e=this.editor,t=this.editor.config.get("MMMediaLibrary");if(!t)return;const{libraryURL:r,openDialog:i,dialogSettings:a={}}=t;r&&"function"==typeof i&&e.ui.componentFactory.add("MMMediaLibrary",(t=>{const d=e.commands.get("insertMMMediaLibrary"),n=new p.ButtonView(t);return n.set({label:e.t("Insert Media from This Site"),icon:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M19.1873 4.86414L10.2509 6.86414V7.02335H10.2499V15.5091C9.70972 15.1961 9.01793 15.1048 8.34069 15.3136C7.12086 15.6896 6.41013 16.8967 6.75322 18.0096C7.09631 19.1226 8.3633 19.72 9.58313 19.344C10.6666 19.01 11.3484 18.0203 11.2469 17.0234H11.2499V9.80173L18.1803 8.25067V14.3868C17.6401 14.0739 16.9483 13.9825 16.2711 14.1913C15.0513 14.5674 14.3406 15.7744 14.6836 16.8875C15.0267 18.0004 16.2937 18.5978 17.5136 18.2218C18.597 17.8877 19.2788 16.8982 19.1773 15.9011H19.1803V8.02687L19.1873 8.0253V4.86414Z" /><path fill-rule="evenodd" clip-rule="evenodd" d="M13.5039 0.743652H0.386932V12.1603H13.5039V0.743652ZM12.3379 1.75842H1.55289V11.1454H1.65715L4.00622 8.86353L6.06254 10.861L9.24985 5.91309L11.3812 9.22179L11.7761 8.6676L12.3379 9.45621V1.75842ZM6.22048 4.50869C6.22048 5.58193 5.35045 6.45196 4.27722 6.45196C3.20398 6.45196 2.33395 5.58193 2.33395 4.50869C2.33395 3.43546 3.20398 2.56543 4.27722 2.56543C5.35045 2.56543 6.22048 3.43546 6.22048 4.50869Z" /></svg>\n',tooltip:!0}),n.bind("isOn","isEnabled").to(d,"value","isEnabled"),this.listenTo(n,"execute",(()=>{i(r,(({attributes:t})=>{e.execute("insertMMMediaLibrary",t)}),a)})),n}))}}class h extends e.Plugin{static get requires(){return[c,m]}static get pluginName(){return"MMMediaLibrary"}}const g={MMMediaLibrary:h}})(),i=i.default})()));

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc