soundcite-1.1.2/js/build/soundcite.js

js/build/soundcite.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.soundcite=t())}(self,()=>(()=>{var e={"ckeditor5/src/core.js":(e,t,i)=>{e.exports=i("dll-reference CKEditor5.dll")("./src/core.js")},"ckeditor5/src/engine.js":(e,t,i)=>{e.exports=i("dll-reference CKEditor5.dll")("./src/engine.js")},"ckeditor5/src/icons.js":(e,t,i)=>{e.exports=i("dll-reference CKEditor5.dll")("./src/icons.js")},"ckeditor5/src/ui.js":(e,t,i)=>{e.exports=i("dll-reference CKEditor5.dll")("./src/ui.js")},"ckeditor5/src/widget.js":(e,t,i)=>{e.exports=i("dll-reference CKEditor5.dll")("./src/widget.js")},"dll-reference CKEditor5.dll":e=>{"use strict";e.exports=CKEditor5.dll}},t={};function i(s){var r=t[s];if(void 0!==r)return r.exports;var n=t[s]={exports:{}};return e[s](n,n.exports,i),n.exports}i.d=(e,t)=>{for(var s in t)i.o(t,s)&&!i.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var s={};return(()=>{"use strict";i.d(s,{default:()=>h});var e=i("ckeditor5/src/core.js"),t=i("ckeditor5/src/widget.js");class r extends e.Command{execute(e){const{model:t}=this.editor;t.change(i=>{t.insertContent(function(e,t){const i=e.createElement("Soundcite",{"data-url":t.url,"data-start":t.start?t.start:0,"data-end":t.end?t.end:null,"data-plays":t.plays?t.plays:1,text:t.text});return i}(i,e))})}refresh(){const{model:e}=this.editor,{selection:t}=e.document,i=e.schema.findAllowedParent(t.getFirstPosition(),"Soundcite");this.isEnabled=null!==i}}class n extends e.Plugin{static get requires(){return[t.Widget]}init(){this._defineSchema(),this._defineConverters(),this.editor.commands.add("insertSoundcite",new r(this.editor))}_defineSchema(){const e=this.editor.model.schema;e.register("Soundcite",{isObject:!0,isInline:!0,allowWhere:"$text",allowAttributes:["data-url","data-start","data-end","data-plays","text"]}),e.addChildCheck((e,t)=>{if(e.endsWith("Soundcite")&&"Soundcite"===t.name)return!1})}_defineConverters(){const{conversion:e}=this.editor;e.for("upcast").elementToElement({model:(e,{writer:t})=>t.createElement("Soundcite",{"data-url":e.getAttribute("data-url"),"data-start":e.getAttribute("data-start"),"data-end":e.getAttribute("data-end"),"data-plays":e.getAttribute("data-plays"),text:e.getChild(0).data}),view:{name:"span",classes:"soundcite"}}),e.for("downcast").elementToElement({model:"Soundcite",view:(e,{writer:i})=>{const s=i.createContainerElement("span",{class:"soundcite","data-url":e.getAttribute("data-url"),"data-start":e.getAttribute("data-start"),"data-end":e.getAttribute("data-end"),"data-plays":e.getAttribute("data-plays")}),r=i.createText(e.getAttribute("text"));return i.insert(i.createPositionAt(s,0),r),(0,t.toWidget)(s,i,{label:"Soundcite widget"})}})}}var o=i("ckeditor5/src/ui.js");var a=i("ckeditor5/src/icons.js");class l extends o.View{constructor(e){super(e),this.url=this._createInput("Url"),this.start=this._createInput("Start"),this.end=this._createInput("End"),this.plays=this._createInput("Plays"),this.text=this._createInput("Link Text"),this.saveButtonView=this._createButton("Save",a.IconCheck,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton("Cancel",a.IconCancel,"ck-button-cancel"),this.cancelButtonView.delegate("execute").to(this,"cancel"),this.childViews=this.createCollection([this.url,this.start,this.end,this.plays,this.text,this.saveButtonView,this.cancelButtonView]),this.setTemplate({tag:"form",attributes:{class:["ck","ck-abbr-Soundcite"],tabindex:"-1"},children:this.childViews})}render(){super.render(),(0,o.submitHandler)({view:this})}focus(){this.childViews.first.focus()}_createInput(e){const t=new o.LabeledFieldView(this.locale,o.createLabeledInputText);return t.label=e,t}_createButton(e,t,i){const s=new o.ButtonView;return s.set({label:e,icon:t,tooltip:!0,class:i}),s}}var d=i("ckeditor5/src/engine.js");class c extends e.Plugin{static get requires(){return[o.ContextualBalloon]}init(){const e=this.editor;this._balloon=this.editor.plugins.get(o.ContextualBalloon),this.formView=this._createFormView(),e.ui.componentFactory.add("Soundcite",t=>{const i=e.commands.get("insertSoundcite"),s=new o.ButtonView(t);return s.set({label:e.t("Soundcite"),icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"/></svg>',tooltip:!0}),s.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(s,"execute",()=>this._showUI()),s}),e.editing.view.addObserver(d.ClickObserver),e.listenTo(e.editing.view.document,"click",(t,i)=>{const s=e.editing.mapper.toModelElement(i.target);"Soundcite"==s.name&&(this.formView.url.fieldView.value=s.getAttribute("data-url"),this.formView.start.fieldView.value=s.getAttribute("data-start"),this.formView.end.fieldView.value=s.getAttribute("data-end"),this.formView.plays.fieldView.value=s.getAttribute("data-plays"),this.formView.text.fieldView.value=s.getAttribute("text"),this._showUI())})}_createFormView(){const e=this.editor,t=new l(e.locale);return this.listenTo(t,"submit",()=>{const i={url:t.url.fieldView.element.value,start:t.start.fieldView.element.value,end:t.end.fieldView.element.value,plays:t.plays.fieldView.element.value,text:t.text.fieldView.element.value};e.execute("insertSoundcite",i),this._hideUI()}),this.listenTo(t,"cancel",()=>{this._hideUI()}),(0,o.clickOutsideHandler)({emitter:t,activator:()=>this._balloon.visibleView===t,contextElements:[this._balloon.view.element],callback:()=>this._hideUI()}),t}_showUI(){this._balloon.add({view:this.formView,position:this._getBalloonPositionData()}),this.formView.focus()}_hideUI(){this.formView.url.fieldView.value="",this.formView.start.fieldView.value="",this.formView.end.fieldView.value="",this.formView.plays.fieldView.value="",this.formView.text.fieldView.value="",this.formView.element.reset(),this._balloon.remove(this.formView),this.editor.editing.view.focus()}_getBalloonPositionData(){const e=this.editor.editing.view,t=e.document;let i=null;return i=()=>e.domConverter.viewRangeToDom(t.selection.getFirstRange()),{target:i}}}class u extends e.Plugin{static get requires(){return[n,c]}}const h={Soundcite:u}})(),s=s.default})());

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

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