stencil-quill
Version:
Native web component for quill editor
2 lines • 9.13 kB
JavaScript
System.register(["./p-9a8d1e65.system.js"],(function(t){"use strict";var i,e,s,n,r;return{setters:[function(t){i=t.r;e=t.c;s=t.h;n=t.H;r=t.g}],execute:function(){var h=t("quill_editor",function(){function t(t){i(this,t);this.editorInit=e(this,"editorInit",7);this.editorChange=e(this,"editorChange",7);this.editorContentChange=e(this,"editorContentChange",7);this.editorSelectionChange=e(this,"editorSelectionChange",7);this.editorFocus=e(this,"editorFocus",7);this.editorBlur=e(this,"editorBlur",7);this.format="html";this.debug="warn";this.placeholder="Insert text here ...";this.styles="{}";this.theme="snow";this.customToolbarPosition="top";this.defaultEmptyValue=null;this.defaultModules={toolbar:[["bold","italic","underline","strike"],["blockquote","code-block"],[{header:1},{header:2}],[{list:"ordered"},{list:"bullet"}],[{script:"sub"},{script:"super"}],[{indent:"-1"},{indent:"+1"}],[{direction:"rtl"}],[{size:["small",false,"large","huge"]}],[{header:[1,2,3,4,5,6,false]}],[{color:[].slice()},{background:[].slice()}],[{font:[].slice()}],[{align:[].slice()}],["clean"],["link","image","video"]]}}t.prototype.setEditorContent=function(t){if(this.format==="html"){var i=this.quillEditor.clipboard.convert(t);this.quillEditor.setContents(i,"api")}else if(this.format==="text"){this.quillEditor.setText(t,"api")}else if(this.format==="json"){try{this.quillEditor.setContents(JSON.parse(t),"api")}catch(i){this.quillEditor.setText(t,"api")}}else{this.quillEditor.setText(t,"api")}};t.prototype.getEditorContent=function(){var t=this.quillEditor.getText();var i=this.quillEditor.getContents();var e=this.quillEditor.getSemanticHTML();if(this.isEmptyValue(e)){e=this.defaultEmptyValue}if(this.format==="html"){return e}else if(this.format==="text"){return t}else if(this.format==="json"){try{return JSON.stringify(i)}catch(i){return t}}else{return t}};t.prototype.componentDidLoad=function(){var t=this;this.editorElement=document.createElement("div");this.editorElement.setAttribute("quill-editor","");var i=this.modules?JSON.parse(this.modules):this.defaultModules;var e=this.wrapperElement.querySelector('[slot="quill-toolbar"]');if(e){i["toolbar"]=e;if(this.customToolbarPosition==="bottom"){this.wrapperElement.prepend(this.editorElement)}else{this.wrapperElement.append(this.editorElement)}}else{this.wrapperElement.append(this.editorElement)}this.quillEditor=new Quill(this.editorElement,{debug:this.debug,modules:i,placeholder:this.placeholder,readOnly:this.readOnly||false,theme:this.theme||"snow",formats:this.formats,bounds:this.bounds?this.bounds==="self"?this.editorElement:this.bounds:document.body});if(this.styles){var s=JSON.parse(this.styles);Object.keys(s).forEach((function(i){t.editorElement.style.setProperty(i,s[i])}))}if(this.content){this.setEditorContent(this.content);this.quillEditor["history"].clear()}this.editorChangeEvent=this.quillEditor.on("editor-change",(function(i,e,s,n){if(i==="text-change"){var r=t.quillEditor.getText();var h=t.quillEditor.getContents();var l=t.quillEditor.getSemanticHTML();if(t.isEmptyValue(l)){l=null}t.editorChange.emit({content:h,delta:e,editor:t.quillEditor,event:i,html:l,oldDelta:s,source:n,text:r})}else{t.editorChange.emit({editor:t.quillEditor,event:i,oldRange:s,range:e,source:n})}}));this.selectionChangeEvent=this.quillEditor.on("selection-change",(function(i,e,s){if(i===null){t.editorBlur.emit({editor:t.quillEditor,source:s})}else if(e===null){t.editorFocus.emit({editor:t.quillEditor,source:s})}t.editorSelectionChange.emit({editor:t.quillEditor,range:i,oldRange:e,source:s})}));this.textChangeEvent=this.quillEditor.on("text-change",(function(i,e,s){var n=t.quillEditor.getText();var r=t.quillEditor.getContents();var h=t.quillEditor.getSemanticHTML();if(t.isEmptyValue(h)){h=null}t.editorContentChange.emit({editor:t.quillEditor,content:r,delta:i,html:h,oldDelta:e,source:s,text:n})}));setTimeout((function(){t.editorInit.emit(t.quillEditor)}))};t.prototype.disconnectedCallback=function(){if(this.selectionChangeEvent){this.selectionChangeEvent.removeListener("selection-change")}if(this.textChangeEvent){this.textChangeEvent.removeListener("text-change")}if(this.editorChangeEvent){this.editorChangeEvent.removeListener("editor-change")}};t.prototype.updateContent=function(t){if(!this.quillEditor){return}var i=this.getEditorContent();if(["text","html","json"].indexOf(this.format)>-1&&t===i){return null}else{var e=false;try{var s=JSON.stringify(t);e=JSON.stringify(i)!==s}catch(t){return null}if(!e){return null}}this.setEditorContent(t)};t.prototype.updateReadOnly=function(t,i){if(!this.quillEditor){return}if(t!==i){this.quillEditor.enable(!t)}};t.prototype.updatePlaceholder=function(t,i){if(!this.quillEditor){return}if(t!==i){this.quillEditor.root.dataset.placeholder=t}};t.prototype.updateStyle=function(t,i){var e=this;if(!this.editorElement){return}if(i){var s=JSON.parse(i);Object.keys(s).forEach((function(t){e.editorElement.style.setProperty(t,"")}))}if(t){var n=JSON.parse(t);Object.keys(n).forEach((function(t){e.editorElement.style.setProperty(t,n[t])}))}};t.prototype.render=function(){s(n,null,s("slot",{name:"quill-toolbar","quill-toolbar":""}))};t.prototype.isEmptyValue=function(t){return t==="<p></p>"||t==="<div></div>"||t==="<p><br></p>"||t==="<div><br></div>"};Object.defineProperty(t.prototype,"wrapperElement",{get:function(){return r(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{content:["updateContent"],readOnly:["updateReadOnly"],placeholder:["updatePlaceholder"],styles:["updateStyle"]}},enumerable:false,configurable:true});return t}());var l=".ql-container.quill-view.sc-quill-view{border:0}";var u=l;var a=t("quill_view",function(){function t(t){i(this,t);this.format="html";this.debug="warn";this.strict=true;this.styles="{}";this.theme="snow";this.defaultEmptyValue=null}t.prototype.setEditorContent=function(t){if(!this.quillEditor){return null}if(this.format==="html"){var i=this.quillEditor.clipboard.convert(t);this.quillEditor.setContents(i,"api")}else if(this.format==="text"){this.quillEditor.setText(t,"api")}else if(this.format==="json"){try{this.quillEditor.setContents(JSON.parse(t),"api")}catch(i){this.quillEditor.setText(t,"api")}}else{this.quillEditor.setText(t,"api")}};t.prototype.getEditorContent=function(){if(!this.quillEditor){return null}var t=this.quillEditor.getText();var i=this.quillEditor.getContents();var e=this.quillEditor.getSemanticHTML();if(this.isEmptyValue(e)){e=this.defaultEmptyValue}if(this.format==="html"){return e}else if(this.format==="text"){return t}else if(this.format==="json"){try{return JSON.stringify(i)}catch(i){return t}}else{return t}};t.prototype.componentDidLoad=function(){var t=this;var i=this.modules?JSON.parse(this.modules):{toolbar:false};if(i.toolbar){i.toolbar=false}this.quillEditor=new Quill(this.editorElement,{debug:this.debug,modules:i,readOnly:true,theme:this.theme||"snow",formats:this.formats,strict:this.strict});if(this.styles){var e=JSON.parse(this.styles);Object.keys(e).forEach((function(i){t.editorElement.style.setProperty(i,e[i])}))}this.editorElement.classList.add("quill-view");if(this.content){this.setEditorContent(this.content);this.quillEditor["history"].clear()}};t.prototype.updateStyle=function(t,i){var e=this;if(!this.editorElement){return}if(i){var s=JSON.parse(i);Object.keys(s).forEach((function(t){e.editorElement.style.setProperty(t,"")}))}if(t){var n=JSON.parse(t);Object.keys(n).forEach((function(t){e.editorElement.style.setProperty(t,n[t])}))}};t.prototype.updateContent=function(t){if(!this.quillEditor){return null}var i=this.getEditorContent();if(["text","html","json"].indexOf(this.format)>-1&&t===i){return null}else{var e=false;try{var s=JSON.stringify(t);e=JSON.stringify(i)!==s}catch(t){return null}if(!e){return null}}this.setEditorContent(t)};t.prototype.isEmptyValue=function(t){return t==="<p></p>"||t==="<div></div>"||t==="<p><br></p>"||t==="<div><br></div>"};t.prototype.render=function(){var t=this;return s("div",{key:"b5d966c20180db2d28ee0de2ab8547aa50341bc3","quill-element":true,ref:function(i){t.editorElement=i}})};Object.defineProperty(t.prototype,"wrapperElement",{get:function(){return r(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{styles:["updateStyle"],content:["updateContent"]}},enumerable:false,configurable:true});return t}());a.style=u;var o=".ql-container.quill-view-html.sc-quill-view-html{border:0}";var c=o;var f=t("quill_view_html",function(){function t(t){i(this,t);this.theme="snow";this.themeClass="ql-snow"}t.prototype.updateTheme=function(t){this.themeClass="ql-".concat(t||"snow")};t.prototype.render=function(){var t="ql-container ".concat(this.themeClass," quill-view-html");return s("div",{key:"a7136b962b0fd69180276ef7add2d89b8389ba3a",class:t},s("div",{key:"598a89699ee3255a5406b999b9775f8947a42396",class:"ql-editor",innerHTML:this.content}))};Object.defineProperty(t,"watchers",{get:function(){return{theme:["updateTheme"]}},enumerable:false,configurable:true});return t}());f.style=c}}}));
//# sourceMappingURL=p-65afc9c8.system.entry.js.map