Socket
Socket
Sign inDemoInstall

ngx-editor

Package Overview
Dependencies
28
Maintainers
1
Versions
145
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 9.0.0 to 9.0.1

2

bundles/ngx-editor.umd.min.js

@@ -1,2 +0,2 @@

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("prosemirror-state"),require("prosemirror-view"),require("prosemirror-model"),require("ngx-editor/schema"),require("rxjs"),require("rxjs/operators"),require("@angular/platform-browser"),require("@angular/common"),require("prosemirror-commands"),require("ngx-editor/commands"),require("ngx-editor/helpers"),require("prosemirror-schema-list"),require("ngx-editor/utils"),require("prosemirror-keymap"),require("prosemirror-history"),require("prosemirror-inputrules")):"function"==typeof define&&define.amd?define("ngx-editor",["exports","@angular/core","@angular/forms","prosemirror-state","prosemirror-view","prosemirror-model","ngx-editor/schema","rxjs","rxjs/operators","@angular/platform-browser","@angular/common","prosemirror-commands","ngx-editor/commands","ngx-editor/helpers","prosemirror-schema-list","ngx-editor/utils","prosemirror-keymap","prosemirror-history","prosemirror-inputrules"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["ngx-editor"]={},t.ng.core,t.ng.forms,t.prosemirrorState,t.prosemirrorView,t.prosemirrorModel,t["ngx-editor"].schema,t.rxjs,t.rxjs.operators,t.ng.platformBrowser,t.ng.common,t.prosemirrorCommands,t["ngx-editor"].commands,t["ngx-editor"].helpers,t.prosemirroSchemaList,t["ngx-editor"].utils,t.prosemirrorKeymap,t.prosemirrorHistory,t.prosemirrorInputRules)}(this,(function(t,e,n,o,r,i,s,a,u,c,p,l,d,h,g,f,m,v,b){"use strict";var x=function(t){return void 0===t&&(t=!0),new o.Plugin({key:new o.PluginKey("editable"),state:{init:function(){return t},apply:function(t,e){var n;return null!==(n=t.getMeta("UPDATE_EDITABLE"))&&void 0!==n?n:e}},props:{editable:function(t){return this.getState(t)},attributes:function(t){return this.getState(t)?null:{class:"NgxEditor__Content--Disabled"}}}})},y=function(t){return new o.Plugin({key:new o.PluginKey("placeholder"),state:{init:function(){return null!=t?t:""},apply:function(t,e){var n;return null!==(n=t.getMeta("UPDATE_PLACEHOLDER"))&&void 0!==n?n:e}},props:{decorations:function(t){var e=t.doc,n=e.textContent,o=e.childCount,i=this.getState(t);if(!i||o>1)return r.DecorationSet.empty;var s=[];return e.descendants((function(t,e){var o;if(t.type.isBlock&&0===t.childCount&&0===n.length){var a=r.Decoration.node(e,e+t.nodeSize,{class:"NgxEditor__Placeholder","data-placeholder":i,"data-align":null!==(o=t.attrs.align)&&void 0!==o?o:null});s.push(a)}return!1})),r.DecorationSet.create(e,s)}}})},_=function(t){return void 0===t&&(t={}),new o.Plugin({key:new o.PluginKey("attributes"),props:{attributes:t}})},w=function(t){return new o.Plugin({key:new o.PluginKey("focus"),props:{handleDOMEvents:{focus:function(){return t(),!1}}}})},E=function(t){return new o.Plugin({key:new o.PluginKey("blur"),props:{handleDOMEvents:{blur:function(){return t(),!1}}}})},N=function(){function t(){this.alt="",this.title="",this.outerWidth="",this.selected=!1,this.imageResize=new e.EventEmitter}return t.prototype.startResizing=function(t,e){t.preventDefault(),this.resizeImage(t,e)},t.prototype.resizeImage=function(t,e){var n=this,o=t.pageX,r=this.imgEl.nativeElement.clientWidth,i="left"===e,s=window.getComputedStyle(this.view.dom).width,a=parseInt(s,10),u=function(t){var e=t.pageX-o,s=i?r-e:r+e;s>a||s<20||(n.outerWidth=s+"px")},c=function(t){t.preventDefault(),document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",c),n.imageResize.emit()};document.addEventListener("mousemove",u),document.addEventListener("mouseup",c)},t}();N.decorators=[{type:e.Component,args:[{selector:"ngx-image-view",template:'<span class="NgxEditor__ImageWrapper" [ngClass]="{\'NgxEditor__Resizer--Active\': selected}" [style.width]="outerWidth">\n <span class="NgxEditor__ResizeHandle" *ngIf="selected">\n <span class="NgxEditor__ResizeHandle--TL" (mousedown)="startResizing($event, \'left\')"></span>\n <span class="NgxEditor__ResizeHandle--TR" (mousedown)="startResizing($event, \'right\')"></span>\n <span class="NgxEditor__ResizeHandle--BL" (mousedown)="startResizing($event, \'left\')"></span>\n <span class="NgxEditor__ResizeHandle--BR" (mousedown)="startResizing($event, \'right\')"></span>\n </span>\n <img [src]="src" [alt]="alt" [title]="title" #imgEl />\n</span>\n',styles:["*,:after,:before{box-sizing:border-box}img{width:100%;height:100%}.NgxEditor__ImageWrapper{position:relative;display:inline-block;line-height:0;padding:2px}.NgxEditor__ImageWrapper.NgxEditor__Resizer--Active{padding:1px;border:1px solid #1a73e8}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle{position:absolute;height:100%;width:100%}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BL,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BR,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TL,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TR{position:absolute;width:7px;height:7px;background-color:#1a73e8;border:1px solid #fff}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BR{bottom:-5px;right:-5px;cursor:se-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TR{top:-5px;right:-5px;cursor:ne-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TL{top:-5px;left:-5px;cursor:nw-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BL{bottom:-5px;left:-5px;cursor:sw-resize}"]}]}],N.propDecorators={src:[{type:e.Input}],alt:[{type:e.Input}],title:[{type:e.Input}],outerWidth:[{type:e.Input}],selected:[{type:e.Input}],view:[{type:e.Input}],imageResize:[{type:e.Output}],imgEl:[{type:e.ViewChild,args:["imgEl",{static:!0}]}]};var I=function(){function t(t,n,r,i){var s=this;this.updating=!1,this.handleResize=function(){if(!s.updating){var t=s.view,e=t.state,n=t.dispatch,r=e.tr.setNodeMarkup(s.getPos(),void 0,{src:s.imageComponentRef.instance.src,width:s.imageComponentRef.instance.outerWidth}),i=r.doc.resolve(s.getPos()),a=new o.NodeSelection(i);r.setSelection(a),n(r)}};var a=document.createElement("image-view"),u=i.get(e.ComponentFactoryResolver);this.applicationRef=i.get(e.ApplicationRef);var c=u.resolveComponentFactory(N);this.imageComponentRef=c.create(i,[],a),this.applicationRef.attachView(this.imageComponentRef.hostView),this.setNodeAttributes(t.attrs),this.imageComponentRef.instance.view=n,this.dom=a,this.view=n,this.node=t,this.getPos=r,this.resizeSubscription=this.imageComponentRef.instance.imageResize.subscribe((function(){s.handleResize()}))}return t.prototype.computeChanges=function(t,e){return JSON.stringify(t)===JSON.stringify(e)},t.prototype.setNodeAttributes=function(t){this.imageComponentRef.instance.src=t.src,this.imageComponentRef.instance.alt=t.alt,this.imageComponentRef.instance.title=t.title,this.imageComponentRef.instance.outerWidth=t.width},t.prototype.update=function(t){return t.type===this.node.type&&(this.node=t,this.computeChanges(this.node.attrs,t.attrs)&&(this.updating=!0,this.setNodeAttributes(t.attrs),this.updating=!1),!0)},t.prototype.ignoreMutation=function(){return!0},t.prototype.selectNode=function(){this.imageComponentRef.instance.selected=!0},t.prototype.deselectNode=function(){this.imageComponentRef.instance.selected=!1},t.prototype.destroy=function(){this.resizeSubscription.unsubscribe(),this.applicationRef.detachView(this.imageComponentRef.hostView)},t}(),C=function(t){return new o.Plugin({key:new o.PluginKey("link"),props:{nodeViews:{image:function(e,n,o){return new I(e,n,o,t)}}}})},k=/((https?:\/\/)?[\w-]+(\.[\w-]+)+\.?(:\d+)?(\/\S*)?)$/,M=function(t){var e=[];return t.forEach((function(t){if(t.isText){var n=t.text,o=0,r=k.exec(n);if(r){var i=r.index,s=i+r[0].length,a=t.type.schema.marks.link;i>0&&e.push(t.cut(o,i));var u=n.slice(i,s);e.push(t.cut(i,s).mark(a.create({href:u}).addToSet(t.marks))),o=s}o<n.length&&e.push(t.cut(o))}else e.push(t.copy(M(t.content)))})),i.Fragment.fromArray(e)},P=function(){return new o.Plugin({key:new o.PluginKey("link"),props:{transformPasted:function(t){return new i.Slice(M(t.content),t.openStart,t.openEnd)}}})},z={type:"doc",content:[{type:"paragraph"}]},D=function(t,e){var n=null!=e?e:s.schema,o=n.nodeFromJSON(t),r=i.DOMSerializer.fromSchema(n).serializeFragment(o.content),a=document.createElement("div");return a.appendChild(r),a.innerHTML},H=function(t,e){var n=null!=e?e:s.schema,o=document.createElement("div");return o.innerHTML=t,i.DOMParser.fromSchema(n).parse(o).toJSON()},S=function(t,e){if(!t)return e.nodeFromJSON(z);if("string"!=typeof t)return e.nodeFromJSON(t);var n=H(t,e);return e.nodeFromJSON(n)},R=function(){function t(t,n,o){this._renderer=t,this._injector=n,this._elementRef=o,this.placeholder="Type Here...",this.focusOut=new e.EventEmitter,this.focusIn=new e.EventEmitter,this.subscriptions=[],this.onChange=function(){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this.outputFormat||"string"!=typeof t||(this.outputFormat="html"),this.editor.setContent(t)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this.setMeta("UPDATE_EDITABLE",!t),this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype.handleChange=function(t){if("html"!==this.outputFormat)this.onChange(t);else{var e=D(t,this.editor.schema);this.onChange(e)}},t.prototype.setMeta=function(t,e){var n=this.editor.view;(0,n.dispatch)(n.state.tr.setMeta(t,e))},t.prototype.setPlaceholder=function(t){this.setMeta("UPDATE_PLACEHOLDER",t)},t.prototype.registerPlugins=function(){var t=this;this.editor.registerPlugin(x()),this.editor.registerPlugin(y(this.placeholder)),this.editor.registerPlugin(_({class:"NgxEditor__Content"})),this.editor.registerPlugin(w((function(){t.focusIn.emit()}))),this.editor.registerPlugin(w((function(){t.focusIn.emit()}))),this.editor.registerPlugin(E((function(){t.focusOut.emit(),t.onTouched()}))),this.editor.registerPlugin(C(this._injector)),this.editor.registerPlugin(P())},t.prototype.ngOnInit=function(){var t=this;if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.registerPlugins(),this._renderer.appendChild(this.ngxEditor.nativeElement,this.editor.view.dom);var e=this.editor.valueChanges.subscribe((function(e){t.handleChange(e)}));this.subscriptions.push(e)},t.prototype.ngOnChanges=function(t){(null==t?void 0:t.placeholder)&&!t.placeholder.isFirstChange()&&this.setPlaceholder(t.placeholder.currentValue)},t.prototype.ngOnDestroy=function(){this.subscriptions.forEach((function(t){t.unsubscribe()}))},t}();R.decorators=[{type:e.Component,args:[{selector:"ngx-editor",template:'<div class="NgxEditor" #ngxEditor>\n <ng-content></ng-content>\n</div>\n',providers:[{provide:n.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return R})),multi:!0}],encapsulation:e.ViewEncapsulation.None,styles:['.NgxEditor{background:#fff;color:#000;background-clip:padding-box;border-radius:4px;border:1px solid rgba(0,0,0,.2);position:relative}.NgxEditor--Disabled{opacity:.5;pointer-events:none}.NgxEditor__Placeholder:before{color:#6c757d;opacity:1;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;cursor:text;content:attr(data-placeholder)}.NgxEditor__Placeholder[data-align=right]:before{position:relative}.NgxEditor__Content{padding:.5rem;white-space:pre-wrap;outline:none;font-variant-ligatures:none;font-feature-settings:"liga" 0}.NgxEditor__Content p{margin:0 0 .7rem}.NgxEditor__Content blockquote{padding-left:1rem;border-left:3px solid #ddd;margin-left:0;margin-right:0}.NgxEditor__Content--Disabled{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}.NgxEditor__Wrapper{border:1px solid rgba(0,0,0,.4);border-radius:4px}.NgxEditor__Wrapper .NgxEditor__MenuBar{border-top-left-radius:4px;border-top-right-radius:4px;border-bottom:1px solid rgba(0,0,0,.2)}.NgxEditor__Wrapper .NgxEditor{border-top-left-radius:0;border-top-right-radius:0;border:none}.NgxEditor__MenuBar{display:flex;padding:.2rem;cursor:default;background-color:#fff}.NgxEditor__MenuItem{border-radius:2px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.NgxEditor__MenuItem:hover{background-color:#f1f1f1}.NgxEditor__MenuItem.NgxEditor__MenuItem--Icon{height:1.85rem;width:1.85rem;transition:.3s ease-in-out}.NgxEditor__MenuItem.NgxEditor__MenuItem--Icon+.NgxEditor__MenuItem--Icon{margin-left:2px}.NgxEditor__MenuItem .NgxEditor__MenuItem--IconContainer{display:flex;height:100%;width:100%;align-items:center;justify-content:center}.NgxEditor__MenuItem.NgxEditor__MenuItem--Text{padding:0 .3rem}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active{background-color:#e8f0fe}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active.NgxEditor__MenuItem--Text{color:#1a73e8}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active svg{fill:#1a73e8}.NgxEditor__Dropdown{min-width:4rem;position:relative;display:flex;align-items:center;flex-shrink:0}.NgxEditor__Dropdown:hover{background-color:#f1f1f1}.NgxEditor__Dropdown .NgxEditor__Dropdown--Text{display:flex;align-items:center;justify-content:center;padding:0 .3rem;height:100%;width:100%}.NgxEditor__Dropdown .NgxEditor__Dropdown--Text:after{display:inline-block;content:"";margin-left:1.5rem;vertical-align:.25rem;border-top:.25rem solid;border-right:.25rem solid transparent;border-bottom:0;border-left:.25rem solid transparent}.NgxEditor__Dropdown .NgxEditor__Dropdown--DropdownMenu{position:absolute;left:0;box-shadow:0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px;background-color:#fff;z-index:10;width:100%;top:calc(1.85rem + 2px)}.NgxEditor__Dropdown .NgxEditor__Dropdown--Item{padding:.5rem;white-space:nowrap;color:inherit}.NgxEditor__Dropdown .NgxEditor__Dropdown--Item:hover{background-color:#ececec}.NgxEditor__Dropdown.NgxEditor__Dropdown--Open,.NgxEditor__Dropdown.NgxEditor__Dropdown--Selected{background-color:#e8f0fe}.NgxEditor__Dropdown.NgxEditor__Dropdown--Open .NgxEditor__Dropdown--Text,.NgxEditor__Dropdown.NgxEditor__Dropdown--Selected .NgxEditor__Dropdown--Text{color:#1a73e8}.NgxEditor__Dropdown .NgxEditor__Dropdown--Active{background-color:#f1f1f1}.NgxEditor__Dropdown .NgxEditor__Dropdown--Active:hover{background-color:#e7e7e7}.NgxEditor__MenuBar--Reverse .NgxEditor__Dropdown--DropdownMenu{top:unset;bottom:calc(1.85rem + 2px)}.NgxEditor__MenuBar--Reverse .NgxEditor__Dropdown--Text:after{transform:rotate(180deg)}.NgxEditor__MenuBar--Reverse .NgxEditor__Popup{top:unset;bottom:calc(1.85rem + 2px)}.NgxEditor__Popup{position:absolute;top:calc(1.85rem + 2px);box-shadow:0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px;background-color:#fff;z-index:10;min-width:12rem;padding:8px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup{margin-bottom:8px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup label{margin-bottom:3px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup input[type=text],.NgxEditor__Popup .NgxEditor__Popup--FormGroup input[type=url]{padding:2px 4px}.NgxEditor__Popup .NgxEditor__Popup--Col{display:flex;flex-direction:column;position:relative}.NgxEditor__Popup .NgxEditor__Popup--Label{font-size:85%}.NgxEditor__Seperator{border-left:1px solid #ccc;margin:0 .3rem}.NgxEditor__HelpText{font-size:80%}.NgxEditor__HelpText.NgxEditor__HelpText--Error{color:red}']}]}],R.ctorParameters=function(){return[{type:e.Renderer2},{type:e.Injector},{type:e.ElementRef}]},R.propDecorators={ngxEditor:[{type:e.ViewChild,args:["ngxEditor",{static:!0}]}],editor:[{type:e.Input}],outputFormat:[{type:e.Input}],placeholder:[{type:e.Input}],focusOut:[{type:e.Output}],focusIn:[{type:e.Output}]};var L=function(){function t(){this.customMenuRefChange=new a.Subject}return t.prototype.setCustomMenuRef=function(t){this.customMenuRefChange.next(t)},t}();L.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new L},token:L,providedIn:"root"}),L.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}];var T=[["bold","italic"],["code","blockquote"],["underline","strike"],["ordered_list","bullet_list"],[{heading:["h1","h2","h3","h4","h5","h6"]}],["link","image"],["text_color","background_color"],["align_left","align_center","align_right","align_justify"]],O=["#b60205","#d93f0b","#fbca04","#0e8a16","#006b75","#1d76db","#0052cc","#5319e7","#e99695","#f9d0c4","#fef2c0","#c2e0c6","#bfdadc","#c5def5","#bfd4f2","#d4c5f9"],A=function(){function t(t){this.menuService=t,this.toolbar=T,this.colorPresets=O,this.disabled=!1,this.customMenuRef=null,this.dropdownPlacement="bottom",this.toggleCommands=["bold","italic","underline","strike","code","blockquote","ordered_list","bullet_list","align_left","align_center","align_right","align_justify"],this.iconContainerClass=["NgxEditor__MenuItem","NgxEditor__MenuItem--Icon"],this.dropdownContainerClass=["NgxEditor__Dropdown"],this.seperatorClass=["NgxEditor__Seperator"]}return Object.defineProperty(t.prototype,"presets",{get:function(){var t=[];return this.colorPresets.forEach((function(e,n){var o=Math.floor(n/8);t[o]||t.push([]),t[o].push(e)})),t},enumerable:!1,configurable:!0}),t.prototype.isDropDown=function(t){var e;return!!(null===(e=t)||void 0===e?void 0:e.heading)},t.prototype.getDropdownItems=function(t){return t},t.prototype.ngOnInit=function(){if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.menuService.editor=this.editor},t}();A.decorators=[{type:e.Component,args:[{selector:"ngx-editor-menu",template:'<div class="NgxEditor__MenuBar" [ngClass]="{\'NgxEditor--Disabled\': disabled, \'NgxEditor__MenuBar--Reverse\': dropdownPlacement === \'top\'}">\n\n <ng-container *ngFor="let toolbarItem of toolbar; let lastToolbarItem = last">\n <ng-container *ngFor="let item of toolbarItem; let lastItem = last">\n\n \x3c!-- toggle icons --\x3e\n <ngx-toggle-command [toolbarItem]="item" [class]="iconContainerClass" *ngIf="toggleCommands.includes(item)">\n </ngx-toggle-command>\n\n \x3c!-- link --\x3e\n <ngx-link [class]="iconContainerClass" *ngIf="item === \'link\'"></ngx-link>\n\n \x3c!-- image --\x3e\n <ngx-image [class]="iconContainerClass" *ngIf="item === \'image\'">\n </ngx-image>\n\n \x3c!-- dropdown --\x3e\n <ng-container *ngIf="isDropDown(item)">\n <ngx-dropdown *ngFor="let dropdownItem of getDropdownItems(item) | keyvalue" [class]="dropdownContainerClass"\n [group]="dropdownItem.key" [items]="dropdownItem.value">\n </ngx-dropdown>\n </ng-container>\n\n \x3c!-- text color picker --\x3e\n <ngx-color-picker [class]="iconContainerClass" *ngIf="item === \'text_color\'" type="text_color"\n [presets]="presets">\n </ngx-color-picker>\n \x3c!-- background color picker --\x3e\n <ngx-color-picker [class]="iconContainerClass" *ngIf="item === \'background_color\'" type="background_color"\n [presets]="presets">\n </ngx-color-picker>\n\n \x3c!-- seperator --\x3e\n <div [class]="seperatorClass" *ngIf="lastItem && !lastToolbarItem"></div>\n </ng-container>\n </ng-container>\n\n \x3c!-- custom menu --\x3e\n <ng-container *ngIf="customMenuRef">\n <ng-container [ngTemplateOutlet]="customMenuRef"></ng-container>\n </ng-container>\n\n</div>\n',providers:[L],styles:[""]}]}],A.ctorParameters=function(){return[{type:L}]},A.propDecorators={toolbar:[{type:e.Input}],colorPresets:[{type:e.Input}],disabled:[{type:e.Input}],editor:[{type:e.Input}],customMenuRef:[{type:e.Input}],dropdownPlacement:[{type:e.Input}]};var j={bold:'\n <path d="M15.6 10.79c.97-.67 1.65-1.77 1.65-2.79 0-2.26-1.75-4-4-4H7v14h7.04c2.09 0 3.71-1.7 3.71-3.79 0-1.52-.86-2.82-2.15-3.42zM10 6.5h3c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-3v-3zm3.5 9H10v-3h3.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5z" />\n',italic:'\n <path d="M10 4v3h2.21l-3.42 8H6v3h8v-3h-2.21l3.42-8H18V4z" />\n',code:'\n<path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"/>\n',underline:'\n<path d="M12 17c3.31 0 6-2.69 6-6V3h-2.5v8c0 1.93-1.57 3.5-3.5 3.5S8.5 12.93 8.5 11V3H6v8c0 3.31 2.69 6 6 6zm-7 2v2h14v-2H5z"/>\n',strike:'\n<path d="M6.85,7.08C6.85,4.37,9.45,3,12.24,3c1.64,0,3,0.49,3.9,1.28c0.77,0.65,1.46,1.73,1.46,3.24h-3.01 c0-0.31-0.05-0.59-0.15-0.85c-0.29-0.86-1.2-1.28-2.25-1.28c-1.86,0-2.34,1.02-2.34,1.7c0,0.48,0.25,0.88,0.74,1.21 C10.97,8.55,11.36,8.78,12,9H7.39C7.18,8.66,6.85,8.11,6.85,7.08z M21,12v-2H3v2h9.62c1.15,0.45,1.96,0.75,1.96,1.97 c0,1-0.81,1.67-2.28,1.67c-1.54,0-2.93-0.54-2.93-2.51H6.4c0,0.55,0.08,1.13,0.24,1.58c0.81,2.29,3.29,3.3,5.67,3.3 c2.27,0,5.3-0.89,5.3-4.05c0-0.3-0.01-1.16-0.48-1.94H21V12z"/>\n',ordered_list:'\n<path d="M2 17h2v.5H3v1h1v.5H2v1h3v-4H2v1zm1-9h1V4H2v1h1v3zm-1 3h1.8L2 13.1v.9h3v-1H3.2L5 10.9V10H2v1zm5-6v2h14V5H7zm0 14h14v-2H7v2zm0-6h14v-2H7v2z"/>\n',bullet_list:'\n<path d="M4 10.5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0-6c-.83 0-1.5.67-1.5 1.5S3.17 7.5 4 7.5 5.5 6.83 5.5 6 4.83 4.5 4 4.5zm0 12c-.83 0-1.5.68-1.5 1.5s.68 1.5 1.5 1.5 1.5-.68 1.5-1.5-.67-1.5-1.5-1.5zM7 19h14v-2H7v2zm0-6h14v-2H7v2zm0-8v2h14V5H7z"/>\n',blockquote:'\n<path d="M0 0h24v24H0z" fill="none"/><path d="M6 17h3l2-4V7H5v6h3zm8 0h3l2-4V7h-6v6h3z"/>\n',link:'\n<path d="M0 0h24v24H0z" fill="none"/><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"/>\n',unlink:'\n<path d="M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5zm-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11C3.29 8.12 2 9.91 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3 2 4.27z"/>\n',image:'\n<path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>\n',align_left:'\n<path d="M15 15H3v2h12v-2zm0-8H3v2h12V7zM3 13h18v-2H3v2zm0 8h18v-2H3v2zM3 3v2h18V3H3z"/>\n',align_center:'\n<path d="M7 15v2h10v-2H7zm-4 6h18v-2H3v2zm0-8h18v-2H3v2zm4-6v2h10V7H7zM3 3v2h18V3H3z"/>\n',align_right:'\n<path d="M3 21h18v-2H3v2zm6-4h12v-2H9v2zm-6-4h18v-2H3v2zm6-4h12V7H9v2zM3 3v2h18V3H3z"/>\n',align_justify:'\n<path d="M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"/>\n',text_color:'\n<path d="M2,20h20v4H2V20z M5.49,17h2.42l1.27-3.58h5.65L16.09,17h2.42L13.25,3h-2.5L5.49,17z M9.91,11.39l2.03-5.79h0.12l2.03,5.79 H9.91z"/>\n',color_fill:'\n<path d="M16.56,8.94L7.62,0L6.21,1.41l2.38,2.38L3.44,8.94c-0.59,0.59-0.59,1.54,0,2.12l5.5,5.5C9.23,16.85,9.62,17,10,17 s0.77-0.15,1.06-0.44l5.5-5.5C17.15,10.48,17.15,9.53,16.56,8.94z M5.21,10L10,5.21L14.79,10H5.21z M19,11.5c0,0-2,2.17-2,3.5 c0,1.1,0.9,2,2,2s2-0.9,2-2C21,13.67,19,11.5,19,11.5z M2,20h20v4H2V20z"/>\n'},V=function(){function t(){}return t.get=function(t,e){return void 0===e&&(e="#000"),'\n <svg\n xmlns="http://www.w3.org/2000/svg"\n viewBox="0 0 24 24"\n fill='+e+"\n height=20\n width=20\n >\n "+(j[t]||"<path></path>")+"\n </svg>\n "},t.getPath=function(t){return j[t]||"<path></path>"},t}(),B=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustHtml(t)},t}();B.decorators=[{type:e.Pipe,args:[{name:"sanitizeHtml"}]}],B.ctorParameters=function(){return[{type:c.DomSanitizer}]};var F=function(){function t(t,e){this.el=t,this.sanitizeHTML=e,this.posLeft=0,this.posTop=0,this.showMenu=!1,this.dragging=!1,this.execulableItems=[],this.activeItems=[]}return Object.defineProperty(t.prototype,"display",{get:function(){return{visibility:this.showMenu?"visible":"hidden",opacity:this.showMenu?"1":"0",top:this.posTop+"px",left:this.posLeft+"px"}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"view",{get:function(){return this.editor.view},enumerable:!1,configurable:!0}),t.prototype.onMouseDown=function(t){this.el.nativeElement.contains(t.target)?t.preventDefault():this.dragging=!0},t.prototype.onKeyDown=function(){this.dragging=!0,this.hide()},t.prototype.onMouseUp=function(){this.dragging=!1,this.useUpdate()},t.prototype.onKeyUp=function(){this.dragging=!1,this.useUpdate()},t.prototype.useUpdate=function(){this.view&&this.update(this.view)},t.prototype.getIcon=function(t){var e=V.getPath(t);return this.sanitizeHTML.transform(e)},t.prototype.hide=function(){this.showMenu=!1},t.prototype.show=function(){this.showMenu=!0},t.prototype.calculateBubblePosition=function(t){var e=t.state.selection.from,n=this.el.nativeElement,o=n.getBoundingClientRect(),r=n.parentElement.getBoundingClientRect(),i=t.coordsAtPos(e),s=i.left-r.left;(r.right<i.left+o.width||o.right>r.right)&&(s=r.width-o.width),s<0&&(s=0);var a=o.height+parseInt(getComputedStyle(n).marginBottom,10);return{left:s,top:i.top-r.top-a}},t.prototype.update=function(t){var e=t.state.selection,n=e.empty;if(e instanceof o.NodeSelection&&"image"===e.node.type.name)this.hide();else if(!this.view.hasFocus()||n||this.dragging)this.hide();else{var r=this.calculateBubblePosition(this.view),i=r.top,s=r.left;this.posLeft=s,this.posTop=i,this.show()}},t.prototype.ngOnInit=function(){var t=this;if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.updateSubscription=this.editor.update.subscribe((function(e){t.update(e)})),this.resizeSubscription=a.fromEvent(window,"resize").pipe(u.throttleTime(500,a.asyncScheduler,{leading:!0,trailing:!0})).subscribe((function(){t.useUpdate()}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe(),this.resizeSubscription.unsubscribe()},t}();F.decorators=[{type:e.Component,args:[{selector:"ngx-editor-floating-menu",template:'<div #ref>\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf="ref.children.length === 0">\n <ngx-bubble [editor]="editor"></ngx-bubble>\n</ng-container>\n',styles:["*,:after,:before{box-sizing:border-box}:host{position:absolute;z-index:20;margin-bottom:.35rem;visibility:hidden;opacity:0}"]}]}],F.ctorParameters=function(){return[{type:e.ElementRef},{type:B}]},F.propDecorators={display:[{type:e.HostBinding,args:["style"]}],editor:[{type:e.Input}],onMouseDown:[{type:e.HostListener,args:["document:mousedown",["$event"]]}],onKeyDown:[{type:e.HostListener,args:["document:keydown"]}],onMouseUp:[{type:e.HostListener,args:["document:mouseup"]}],onKeyUp:[{type:e.HostListener,args:["document:keyup"]}]};var q={bold:"Bold",italic:"Italic",code:"Code",underline:"Underline",strike:"Strike",blockquote:"Blockquote",bullet_list:"Bullet List",ordered_list:"Ordered List",heading:"Heading",h1:"Header 1",h2:"Header 2",h3:"Header 3",h4:"Header 4",h5:"Header 5",h6:"Header 6",align_left:"Left Align",align_center:"Center Align",align_right:"Right Align",align_justify:"Justify",text_color:"Text Color",background_color:"Background Color",url:"URL",text:"Text",openInNewTab:"Open in new tab",insert:"Insert",altText:"Alt Text",title:"Title",remove:"Remove"},$=function(t){var e=this;void 0===t&&(t={}),this.locals=q,this.get=function(t){var n;return null!==(n=e.locals[t])&&void 0!==n?n:""},this.locals=Object.assign({},q,t)},W=function(){this.locals={}};W.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new W},token:W,providedIn:"root"}),W.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}];var G=function(){function t(t){this.config=t}return Object.defineProperty(t.prototype,"locals",{get:function(){return new $(this.config.locals)},enumerable:!1,configurable:!0}),t}();G.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new G(e.ɵɵinject(W,8))},token:G,providedIn:"root"}),G.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],G.ctorParameters=function(){return[{type:W,decorators:[{type:e.Optional}]}]};var U=function(t){var e;return{locals:null!==(e=t.locals)&&void 0!==e?e:{}}},K=function(){function t(t){this.name=t}return t.prototype.apply=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&d.applyMark(o)(e,n)}},t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&l.toggleMark(o)(e,n)}},t.prototype.isActive=function(t){var e=t.schema.marks[this.name];return!!e&&h.isMarkActive(t,e)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),J=function(){function t(){}return t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema.nodes.blockquote;return!!o&&(t.isActive(e)?l.lift(e,n):l.wrapIn(o)(e,n))}},t.prototype.isActive=function(t){var e=t.schema.nodes.blockquote;return!!e&&h.isNodeActive(t,e)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),X=function(){function t(t){void 0===t&&(t=!1),this.isBulletList=!1,this.isBulletList=t}return t.prototype.getType=function(t){return this.isBulletList?t.nodes.bullet_list:t.nodes.ordered_list},t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema,r=t.getType(o);return!!r&&(t.isActive(e)?g.liftListItem(o.nodes.list_item)(e,n):g.wrapInList(r)(e,n))}},t.prototype.isActive=function(t){var e=t.schema,n=this.getType(e);return!!n&&h.isNodeActive(t,n)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Q=function(){function t(t){this.level=t}return t.prototype.apply=function(){return function(t,e){var n=t.schema.nodes.heading;return!!n&&l.setBlockType(n)(t,e)}},t.prototype.toggle=function(){var t=this;return function(e,n){var o,r=e.schema,i=e.selection,s=e.doc,a=r.nodes.heading;if(!a)return!1;var u=i.$from.before(1),c=s.nodeAt(u),p=null!==(o=null==c?void 0:c.attrs)&&void 0!==o?o:{};return t.isActive(e)?l.setBlockType(r.nodes.paragraph,p)(e,n):l.setBlockType(a,Object.assign(Object.assign({},p),{level:t.level}))(e,n)}},t.prototype.isActive=function(t){var e=this,n=t.schema,o=h.getSelectionNodes(t),r=n.nodes.heading;if(!r)return!1;var i=[r,n.nodes.text,n.nodes.blockquote],s=o.filter((function(t){return i.includes(t.type)})).find((function(t){return t.attrs.level===e.level}));return Boolean(s)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Y=function(){function t(t){this.align=t}return t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.doc,r=e.selection,i=e.tr,s=e.schema,a=r.from,u=r.to,c=!1;return o.nodesBetween(a,u,(function(e,n){var o=e.type;return[s.nodes.paragraph,s.nodes.heading].includes(o)&&(c=!0,i.setNodeMarkup(n,o,Object.assign(Object.assign({},e.attrs),{align:t.align}))),!0})),!!c&&(i.docChanged&&(null==n||n(i)),!0)}},t.prototype.isActive=function(t){var e=this,n=h.getSelectionNodes(t).find((function(t){return t.attrs.align===e.align}));return Boolean(n)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Z={strict:!0},tt=function(){function t(){}return t.prototype.update=function(t){return void 0===t&&(t={}),function(e,n){var o=e.schema,r=e.selection,i=o.marks.link;return!!i&&(!r.empty&&l.toggleMark(i,t)(e,n))}},t.prototype.insert=function(t,e){return function(n,o){var r,i,s=n.schema,a=n.tr;if(!s.marks.link)return!1;var u={href:e.href,title:null!==(r=e.title)&&void 0!==r?r:t,target:null!==(i=e.target)&&void 0!==i?i:"_blank"},c=s.text(t,[s.marks.link.create(u)]);return a.replaceSelectionWith(c,!1).scrollIntoView(),!!a.docChanged&&(null==o||o(a),!0)}},t.prototype.isActive=function(t,e){if(void 0===e&&(e=Z),e.strict)return!0;var n=t.schema.marks.link;return!!n&&h.isMarkActive(t,n)},t.prototype.remove=function(t,e){return d.removeLink()(t,e)},t.prototype.canExecute=function(t){return this.update({})(t)},t}(),et=function(){function t(){}return t.prototype.insert=function(t,e){return function(n,r){var i=n.schema,s=n.tr,a=n.selection,u=i.nodes.image;if(!u)return!1;var c=Object.assign({width:null,src:t},e);!c.width&&a instanceof o.NodeSelection&&a.node.type===u&&(c.width=a.node.attrs.width),s.replaceSelectionWith(u.createAndFill(c));var p=s.doc.resolve(s.selection.anchor-s.selection.$anchor.nodeBefore.nodeSize);return s.setSelection(new o.NodeSelection(p)).scrollIntoView(),!!s.docChanged&&(null==r||r(s),!0)}},t.prototype.isActive=function(t){var e=t.selection;return e instanceof o.NodeSelection&&"image"===e.node.type.name},t}(),nt=function(){function t(t){this.name=t}return t.prototype.apply=function(t){var e=this;return function(n,o){var r=n.schema,i=n.selection,s=n.doc,a=r.marks[e.name];if(!a)return!1;var u=i.from,c=i.to;if(!i.empty&&u+1===c){var p=s.nodeAt(u);if((null==p?void 0:p.isAtom)&&!p.isText&&p.isLeaf)return!1}return d.applyMark(a,t)(n,o)}},t.prototype.isActive=function(t){var e=t.schema.marks[this.name];return!!e&&h.isMarkActive(t,e)},t.prototype.getActiveColors=function(t){var e=this;if(!this.isActive(t))return[];var n=t.schema;return h.getSelectionMarks(t).filter((function(t){return t.type===n.marks[e.name]})).map((function(t){return t.attrs.color})).filter(Boolean)},t.prototype.remove=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&d.removeMark(o)(e,n)}},t.prototype.canExecute=function(t){var e="text_color"===this.name?{color:""}:{backgroundColor:""};return this.apply(e)(t)},t}(),ot=new K("strong"),rt=new K("em"),it=new K("code"),st=new K("u"),at=new K("s"),ut=new J,ct=new X(!0),pt=new X(!1),lt=new Q(1),dt=new Q(2),ht=new Q(3),gt=new Q(4),ft=new Q(5),mt=new Q(6),vt=new Y("left"),bt=new Y("center"),xt=new Y("right"),yt=new Y("justify"),_t=new tt,wt=new et,Et=new nt("text_color"),Nt=new nt("text_background_color"),It={bold:ot,italic:rt,code:it,underline:st,strike:at,blockquote:ut,bullet_list:ct,ordered_list:pt,h1:lt,h2:dt,h3:ht,h4:gt,h5:ft,h6:mt,align_left:vt,align_center:bt,align_right:xt,align_justify:yt},Ct=_t,kt=wt,Mt=Et,Pt=Nt,zt=function(){function t(t,e){var n=this;this.ngxeService=t,this.menuService=e,this.isActive=!1,this.disabled=!1,this.update=function(t){var e=t.state,o=It[n.name];n.isActive=o.isActive(e),n.disabled=!o.canExecute(e)}}return Object.defineProperty(t.prototype,"name",{get:function(){return this.toolbarItem},enumerable:!1,configurable:!0}),t.prototype.toggle=function(t){if(t.preventDefault(),0===t.button){var e=this.editorView,n=e.state,o=e.dispatch;It[this.name].toggle()(n,o)}},t.prototype.getTitle=function(t){return this.ngxeService.locals.get(t)},t.prototype.ngOnInit=function(){var t=this;this.html=V.get(this.name),this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();zt.decorators=[{type:e.Component,args:[{selector:"ngx-toggle-command",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="html | sanitizeHtml" (mousedown)="toggle($event)"\n [title]="getTitle(name)">\n</div>\n',styles:[""]}]}],zt.ctorParameters=function(){return[{type:G},{type:L}]},zt.propDecorators={toolbarItem:[{type:e.Input}],isActive:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}]};var Dt=function(){function t(t,e,o){var r=this;this.el=t,this.ngxeService=e,this.menuService=o,this.showPopup=!1,this.isActive=!1,this.canExecute=!0,this.form=new n.FormGroup({href:new n.FormControl("",[n.Validators.required,n.Validators.pattern("(https?://)?([\\da-z.-]+)\\.([a-z.]{2,6})[/\\w .-]*/?")]),text:new n.FormControl("",[n.Validators.required]),openInNewTab:new n.FormControl(!0)}),this.setText=function(){var t=r.editorView.state,e=t.selection,n=t.doc,o=e.empty,i=e.from,s=e.to,a=o?"":n.textBetween(i,s);a&&(r.text.patchValue(a),r.text.disable())},this.update=function(t){var e=t.state;r.isActive=Ct.isActive(e,{strict:!1}),r.canExecute=Ct.canExecute(e)}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return!this.canExecute},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get(this.isActive?"unlink":"link")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"href",{get:function(){return this.form.get("href")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"text",{get:function(){return this.form.get("text")},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hideForm()},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.hideForm=function(){this.showPopup=!1,this.form.reset({href:"",text:"",openInNewTab:!0}),this.text.enable()},t.prototype.onMouseDown=function(t){if(t.preventDefault(),0===t.button){var e=this.editorView,n=e.state,o=e.dispatch;this.isActive?Ct.remove(n,o):(this.showPopup=!this.showPopup,this.showPopup&&this.setText())}},t.prototype.insertLink=function(t){t.preventDefault();var e=this.form.getRawValue(),n=e.text,o=e.href,r=e.openInNewTab,i=this.editorView,s=i.dispatch,a=i.state,u={title:o,href:o,target:r?"_blank":"_self"};a.selection.empty?(Ct.insert(n,u)(a,s),this.editorView.focus()):Ct.update(u)(a,s),this.hideForm()},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Dt.decorators=[{type:e.Component,args:[{selector:"ngx-link",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="onMouseDown($event)">\n</div>\n\n\x3c!-- popup --\x3e\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <form class="NgxEditor__Popup--Form" [formGroup]="form" (ngSubmit)="insertLink($event)">\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'url\')}}</label>\n <input type="href" id="href" formControlName="href" autofocus autocomplete="off" />\n <div *ngIf="href.touched && href.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ href.errors?.pattern && \'Please enter valid url.\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'text\')}}</label>\n <input type="text" formControlName="text" autocomplete="off" />\n <div *ngIf="text.touched && text.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ text.errors?.required && \'This is required\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label>\n <input type="checkbox" formControlName="openInNewTab" />\n {{getLabel(\'openInNewTab\')}}\n </label>\n </div>\n </div>\n\n <button type="submit" [disabled]="!form.valid">{{getLabel(\'insert\')}}</button>\n\n </form>\n</div>\n',styles:[""]}]}],Dt.ctorParameters=function(){return[{type:e.ElementRef},{type:G},{type:L}]},Dt.propDecorators={valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Ht=function(){function t(t,e,n){var o=this;this.ngxeService=t,this.menuService=e,this.el=n,this.isDropdownOpen=!1,this.activeItems=[],this.disabledItems=[],this.update=function(t){var e=t.state;o.activeItems=[],o.disabledItems=[],o.items.forEach((function(t){var n=It[t];n.isActive(e)&&o.activeItems.push(t),n.canExecute(e)||o.disabledItems.push(t)})),1===o.activeItems.length?o.activeItem=o.activeItems[0]:o.activeItem=null}}return Object.defineProperty(t.prototype,"isSelected",{get:function(){return Boolean(this.activeItem||this.isDropdownOpen)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isDropdownDisabled",{get:function(){return this.disabledItems.length===this.items.length},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t)&&this.isDropdownOpen&&(this.isDropdownOpen=!1)},t.prototype.getName=function(t){return this.ngxeService.locals.get(t)},t.prototype.toggleDropdown=function(t){t.preventDefault(),this.isDropdownOpen=!this.isDropdownOpen},t.prototype.onClick=function(t,e){if(t.preventDefault(),0===t.button){var n=It[e],o=this.editorView,r=o.state,i=o.dispatch;n.toggle()(r,i),this.isDropdownOpen=!1}},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Ht.decorators=[{type:e.Component,args:[{selector:"ngx-dropdown",template:'<div class="NgxEditor__Dropdown--Text" (mousedown)="toggleDropdown($event)">\n {{getName(activeItem || group)}}\n</div>\n\n<div class="NgxEditor__Dropdown--DropdownMenu" *ngIf="isDropdownOpen">\n <div class="NgxEditor__Dropdown--Item" *ngFor="let item of items" (mousedown)="onClick($event, item)"\n [ngClass]="{\'NgxEditor__Dropdown--Active\': item === activeItem, \'NgxEditor--Disabled\':disabledItems.includes(item)}">\n {{getName(item)}}\n </div>\n</div>\n',styles:[""]}]}],Ht.ctorParameters=function(){return[{type:G},{type:L},{type:e.ElementRef}]},Ht.propDecorators={group:[{type:e.Input}],items:[{type:e.Input}],isSelected:[{type:e.HostBinding,args:["class.NgxEditor__Dropdown--Selected"]}],isDropdownDisabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event.target"]]}]};var St=function(){function t(t,e,o){var r=this;this.el=t,this.ngxeService=e,this.menuService=o,this.showPopup=!1,this.isActive=!1,this.form=new n.FormGroup({src:new n.FormControl("",[n.Validators.required,n.Validators.pattern("(https?://)?([\\da-z.-]+)\\.([a-z.]{2,6})[/\\w .-]*/?")]),alt:new n.FormControl(""),title:new n.FormControl("")}),this.update=function(t){var e=t.state;r.isActive=kt.isActive(e)}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get("image")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"src",{get:function(){return this.form.get("src")},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hideForm()},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.hideForm=function(){this.showPopup=!1,this.form.reset({src:"",alt:"",title:""})},t.prototype.onMouseDown=function(t){t.preventDefault(),0===t.button&&(this.showPopup=!this.showPopup,this.showPopup&&this.fillForm())},t.prototype.fillForm=function(){var t=this.editorView.state.selection;if(t instanceof o.NodeSelection&&this.isActive){var e=t.node.attrs,n=e.src,r=e.alt,i=void 0===r?"":r,s=e.title,a=void 0===s?"":s;this.form.setValue({src:n,alt:i,title:a})}},t.prototype.insertLink=function(t){t.preventDefault();var e=this.form.getRawValue(),n=e.src,o=e.alt,r=e.title,i=this.editorView,s=i.dispatch,a=i.state,u={alt:o,title:r};kt.insert(n,u)(a,s),this.editorView.focus(),this.hideForm()},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();St.decorators=[{type:e.Component,args:[{selector:"ngx-image",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="onMouseDown($event)">\n</div>\n\n\x3c!-- popup --\x3e\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <form class="NgxEditor__Popup--Form" [formGroup]="form" (ngSubmit)="insertLink($event)">\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'url\')}}</label>\n <input type="href" id="href" formControlName="src" autofocus autocomplete="off" />\n <div *ngIf="src.touched && src.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ src.errors?.pattern && \'Please enter valid url.\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'altText\')}}</label>\n <input type="text" formControlName="alt" autocomplete="off" />\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'title\')}}</label>\n <input type="text" formControlName="title" autocomplete="off" />\n </div>\n </div>\n\n <button type="submit" [disabled]="!form.valid || !form.dirty">{{getLabel(\'insert\')}}</button>\n\n </form>\n</div>\n',styles:[""]}]}],St.ctorParameters=function(){return[{type:e.ElementRef},{type:G},{type:L}]},St.propDecorators={valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Rt=function(){function t(t,e,n){var o=this;this.el=t,this.menuService=e,this.ngxeService=n,this.showPopup=!1,this.isActive=!1,this.activeColors=[],this.canExecute=!0,this.update=function(t){var e=t.state;o.canExecute=o.command.canExecute(e),o.isActive=o.command.isActive(e),o.activeColors=[],o.isActive&&(o.activeColors=o.command.getActiveColors(e))}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return!this.canExecute},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"title",{get:function(){return this.getLabel("text_color"===this.type?"text_color":"background_color")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get("text_color"===this.type?"text_color":"color_fill")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"command",{get:function(){return"text_color"===this.type?Mt:Pt},enumerable:!1,configurable:!0}),t.prototype.getContrastYIQ=function(t){return t=t.replace("#",""),(299*parseInt(t.substr(0,2),16)+587*parseInt(t.substr(2,2),16)+114*parseInt(t.substr(4,2),16))/1e3>=128?"black":"white"},t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hidePopup()},t.prototype.hidePopup=function(){this.showPopup=!1},t.prototype.togglePopup=function(t){t.preventDefault(),0===t.button&&(this.showPopup=!this.showPopup)},t.prototype.remove=function(t){t.preventDefault();var e=this.editorView,n=e.state,o=e.dispatch;this.command.remove()(n,o),this.hidePopup()},t.prototype.onColorSelect=function(t,e){if(t.preventDefault(),0===t.button){var n=this.editorView,o=n.state,r=n.dispatch;if("text_color"===this.type){var i={color:e};this.command.apply(i)(o,r)}else{i={backgroundColor:e};this.command.apply(i)(o,r)}this.editorView.hasFocus()||this.editorView.focus(),this.hidePopup()}},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Rt.decorators=[{type:e.Component,args:[{selector:"ngx-color-picker",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="togglePopup($event)"\n [title]="title">\n</div>\n\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <div *ngFor="let colorGroup of presets" class="NgxEditor__ColorContainer">\n <button class="NgxEditor__Color" *ngFor="let color of colorGroup"\n [ngStyle]="{backgroundColor: color, color:getContrastYIQ(color)}" [title]="color"\n (mousedown)="onColorSelect($event, color)"\n [ngClass]="{\'NgxEditor__Color--Active\': activeColors.includes(color)}"></button>\n </div>\n\n <button class="NgxEditor__MenuItem--Button" (mousedown)="remove($event)" [disabled]="!isActive">\n {{getLabel(\'remove\')}}\n </button>\n</div>\n',styles:['@charset "UTF-8";.NgxEditor__Popup{width:230px}.NgxEditor__ColorContainer{display:flex;justify-content:space-between}.NgxEditor__ColorContainer+.NgxEditor__ColorContainer{margin-top:5px}.NgxEditor__Color{border:none;outline:none;border-radius:6px;width:24px;height:24px;flex-shrink:0}.NgxEditor__Color--Active:after{content:"✔";font-size:90%}.NgxEditor__MenuItem--Button{margin-top:5px}']}]}],Rt.ctorParameters=function(){return[{type:e.ElementRef},{type:L},{type:G}]},Rt.propDecorators={presets:[{type:e.Input}],type:[{type:e.Input}],valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Lt=function(){function t(t,e){this.sanitizeHTML=t,this.ngxeService=e,this.execulableItems=[],this.activeItems=[],this.toolbar=[["bold","italic","underline","strike"],["ordered_list","bullet_list","blockquote","code"],["align_left","align_center","align_right","align_justify"]],this.toggleCommands=["bold","italic","underline","strike","ordered_list","bullet_list","blockquote","code","align_left","align_center","align_right","align_justify"]}return Object.defineProperty(t.prototype,"view",{get:function(){return this.editor.view},enumerable:!1,configurable:!0}),t.prototype.getIcon=function(t){var e=V.getPath(t);return this.sanitizeHTML.transform(e)},t.prototype.getTitle=function(t){return this.ngxeService.locals.get(t)},t.prototype.onClick=function(t,e){if(t.preventDefault(),t.stopPropagation(),0===t.button){var n=this.view,o=n.state,r=n.dispatch;It[e].toggle()(o,r)}},t.prototype.update=function(t){var e=this;this.activeItems=[],this.execulableItems=[];var n=t.state;this.toggleCommands.forEach((function(t){var o=It[t];o.isActive(n)&&e.activeItems.push(t),o.canExecute(n)&&e.execulableItems.push(t)}))},t.prototype.ngOnInit=function(){var t=this;this.updateSubscription=this.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Lt.decorators=[{type:e.Component,args:[{selector:"ngx-bubble",template:'<ng-container *ngFor="let toolbarItem of toolbar; let lastToolbarItem = last">\n <ng-container *ngFor="let item of toolbarItem; let lastItem = last">\n <div class="NgxBubbleMenu__Icon" [ngClass]="{\'NgxBubbleMenu__Icon--Active\': this.activeItems.includes(item),\n \'NgxEditor--Disabled\': !this.execulableItems.includes(item)}" (mousedown)="onClick($event, item)"\n *ngIf="toggleCommands.includes(item)" [title]="getTitle(item)">\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" height="20" width="20"\n [innerHTML]="getIcon(item)"></svg>\n </div>\n <div class="NgxBubbleMenu__Seperator" *ngIf="lastItem && !lastToolbarItem"></div>\n </ng-container>\n</ng-container>\n',styles:["*,:after,:before{box-sizing:border-box}:host{display:flex;background-color:#000;color:#fff;padding:.3rem;border-radius:4px}.NgxBubbleMenu__Icon{height:1.8rem;width:1.8rem;transition:.3s ease-in-out;border-radius:2px;display:flex;align-items:center;justify-content:center}.NgxBubbleMenu__Icon svg{fill:#fff}.NgxBubbleMenu__Icon:hover{background-color:#636262}.NgxBubbleMenu__Icon+.NgxBubbleMenu__Icon{margin-left:.3rem}.NgxBubbleMenu__Icon.NgxBubbleMenu__Icon--Active{background-color:#fff}.NgxBubbleMenu__Icon.NgxBubbleMenu__Icon--Active svg{fill:#000}.NgxBubbleMenu__Seperator{border-left:1px solid #fff;margin:0 5px}"]}]}],Lt.ctorParameters=function(){return[{type:B},{type:G}]},Lt.propDecorators={editor:[{type:e.Input}]};var Tt=function(){};Tt.decorators=[{type:e.NgModule,args:[{imports:[p.CommonModule,n.ReactiveFormsModule],declarations:[B,A,zt,Dt,Ht,St,Rt,F,Lt],providers:[B],exports:[A,F]}]}];var Ot=new e.InjectionToken("NgxEditorConfig"),At=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[{provide:Ot,useValue:e},{provide:W,useFactory:U,deps:[Ot]}]}},t.forChild=function(e){return{ngModule:t,providers:[{provide:Ot,useValue:e},{provide:W,useFactory:U,deps:[Ot]},G]}},t}();At.decorators=[{type:e.NgModule,args:[{imports:[p.CommonModule,Tt],providers:[],declarations:[R,N],exports:[R,A,F]}]}];var jt=function(t){return null===t||0===t.length},Vt=jt,Bt=function(t){return null!=t&&"number"==typeof t.length},Ft=Bt,qt=function(t){if(!t)return!0;var e=t.childCount,n=t.firstChild;return Boolean(1===e&&(null==n?void 0:n.isTextblock)&&0===n.content.size)},$t=qt,Wt=function(){function t(){}return t.required=function(t){return function(e){var n=t||s.schema,o=S(e.value,n);return qt(o)?{required:!0}:null}},t.maxLength=function(t,e){return function(n){var o=e||s.schema,r=S(n.value,o).textContent;return Bt(r)&&r.length>t?{maxlength:{requiredLength:t,actualLength:r.length}}:null}},t.minLength=function(t,e){return function(n){var o=e||s.schema,r=S(n.value,o).textContent;return jt(r)||!Bt(r)?null:r.length<t?{minlength:{requiredLength:t,actualLength:r.length}}:null}},t}();Object.create;function Gt(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function Ut(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Gt(arguments[e]));return t}Object.create;var Kt=function(t,e){return void 0===e&&(e=!1),function(n,o){var r=new K(t);return e?r.toggle()(n,o):r.apply()(n,o)}},Jt=function(){function t(t){var e=this;if(this.applyTrx=function(t){e.state=e.state.apply(null!=t?t:e.tr),e.tr=e.state.tr,e.tr.setMeta("APPLIED_TRX",!0)},this.dispatch=function(t){e.applyTrx(t)},!t)throw Error("NgxEditor: Required view to initialize commands.");this.view=t,this.state=t.state,this.tr=this.view.state.tr}return t.prototype.exec=function(){if(!this.tr.getMeta("APPLIED_TRX"))return!1;var t=!this.view.state.doc.eq(this.state.doc);this.view.updateState(this.state);var e=this.tr.setMeta("FORCE_EMIT",t);return this.view.dispatch(e),!0},t.prototype.focus=function(){return this.view.focus(),this},t.prototype.scrollIntoView=function(){return this.tr.scrollIntoView(),this.applyTrx(),this},t.prototype.insertText=function(t){return this.tr.insertText(t),this.applyTrx(),this},t.prototype.insertNewLine=function(){var t=[l.newlineInCode,l.createParagraphNear,l.liftEmptyBlock,l.splitBlock];return l.chainCommands.apply(void 0,Ut(t))(this.state,this.dispatch),this},t.prototype.applyMark=function(t){return Kt(t,!1)(this.state,this.dispatch),this},t.prototype.toggleMark=function(t){return Kt(t,!0)(this.state,this.dispatch),this},t.prototype.bold=function(){return Kt("strong")(this.state,this.dispatch),this},t.prototype.toggleBold=function(){return Kt("strong",!0)(this.state,this.dispatch),this},t.prototype.italics=function(){return Kt("em")(this.state,this.dispatch),this},t.prototype.toggleItalics=function(){return Kt("em",!0)(this.state,this.dispatch),this},t.prototype.underline=function(){return Kt("u")(this.state,this.dispatch),this},t.prototype.toggleUnderline=function(){return Kt("u",!0)(this.state,this.dispatch),this},t.prototype.strike=function(){return Kt("s")(this.state,this.dispatch),this},t.prototype.toggleStrike=function(){return Kt("s",!0)(this.state,this.dispatch),this},t.prototype.code=function(){return Kt("code")(this.state,this.dispatch),this},t.prototype.toggleCode=function(){return Kt("code",!0)(this.state,this.dispatch),this},t.prototype.toggleOrderedList=function(){return new X(!1).toggle()(this.state,this.dispatch),this},t.prototype.toggleBulletList=function(){return new X(!0).toggle()(this.state,this.dispatch),this},t.prototype.toggleHeading=function(t){return new Q(t).toggle()(this.state,this.dispatch),this},t.prototype.insertLink=function(t,e){return(new tt).insert(t,e)(this.state,this.dispatch),this},t.prototype.updateLink=function(t){return(new tt).update(t)(this.state,this.dispatch),this},t.prototype.insertImage=function(t,e){return void 0===e&&(e={}),(new et).insert(t,e)(this.state,this.dispatch),this},t.prototype.textColor=function(t){return new nt("text_color").apply({color:t})(this.state,this.dispatch),this},t.prototype.backgroundColor=function(t){return new nt("text_background_color").apply({backgroundColor:t})(this.state,this.dispatch),this},t.prototype.removeTextColor=function(){return new nt("text_color").remove()(this.state,this.dispatch),this},t.prototype.removeBackgroundColor=function(){return new nt("text_background_color").remove()(this.state,this.dispatch),this},t.prototype.align=function(t){return new Y(t).toggle()(this.state,this.dispatch),this},t.prototype.insertHTML=function(t){var e=this.state,n=e.selection,o=e.schema,r=e.tr,s=n.from,a=n.to,u=document.createElement("div");u.innerHTML=t.trim();var c=i.DOMParser.fromSchema(o).parseSlice(u),p=r.replaceRange(s,a,c);return this.applyTrx(p),this},t}(),Xt=/Mac/.test(navigator.platform),Qt=function(t){return b.wrappingInputRule(/^\s*>\s$/,t)},Yt=function(t){return b.wrappingInputRule(/^(\d+)\.\s$/,t,(function(t){return{order:+t[1]}}),(function(t,e){return e.childCount+e.attrs.order===+t[1]}))},Zt=function(t){return b.wrappingInputRule(/^\s*([-+*])\s$/,t)},te=function(t){return b.textblockTypeInputRule(/^```$/,t)},ee=function(t,e){return b.textblockTypeInputRule(new RegExp("^(#{1,"+e+"})\\s$"),t,(function(t){return{level:t[1].length}}))},ne=function(t){var e=b.smartQuotes.concat(b.ellipsis,b.emDash);return e.push(Qt(t.nodes.blockquote)),e.push(Yt(t.nodes.ordered_list)),e.push(Zt(t.nodes.bullet_list)),e.push(te(t.nodes.code_block)),e.push(ee(t.nodes.heading,6)),b.inputRules({rules:e})},oe=function(t,e){var n={};n["Mod-z"]=v.undo,Xt?n["Shift-Mod-z"]=v.redo:n["Mod-y"]=v.redo;var o=[m.keymap({"Mod-b":l.toggleMark(t.marks.strong),"Mod-i":l.toggleMark(t.marks.em),"Mod-`":l.toggleMark(t.marks.code)}),m.keymap({Enter:g.splitListItem(t.nodes.list_item),"Shift-Enter":l.chainCommands(l.exitCode,(function(e,n){var o=e.tr,r=t.nodes.hard_break;return n(o.replaceSelectionWith(r.create()).scrollIntoView()),!0})),"Mod-[":g.liftListItem(t.nodes.list_item),"Mod-]":g.sinkListItem(t.nodes.list_item),Tab:g.sinkListItem(t.nodes.list_item)}),m.keymap(l.baseKeymap)];return e.history&&o.push(m.keymap(n)),o},re=function(t,e){var n=[];return e.keyboardShortcuts&&n.push.apply(n,Ut(oe(t,{history:e.history}))),e.history&&n.push(v.history()),e.inputRules&&n.push(ne(t)),n},ie={content:null,history:!0,keyboardShortcuts:!0,inputRules:!0,schema:s.schema,plugins:[],nodeViews:{}},se=function(){function t(t){void 0===t&&(t=ie),this.valueChangesSubject=new a.Subject,this.updateSubject=new a.Subject,this.options=Object.assign({},ie,t),this.createEditor()}return Object.defineProperty(t.prototype,"valueChanges",{get:function(){return this.valueChangesSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"update",{get:function(){return this.updateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"schema",{get:function(){return this.options.schema||s.schema},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"commands",{get:function(){return new Jt(this.view)},enumerable:!1,configurable:!0}),t.prototype.setContent=function(t){if(!f.isNil(t)){var e=this.view.state,n=e.tr,o=e.doc,r=S(t,this.schema);n.replaceWith(0,e.doc.content.size,r),o.eq(n.doc)||n.docChanged&&this.view.dispatch(n)}},t.prototype.handleTransactions=function(t){var e=this.view.state.apply(t);if(this.view.updateState(e),this.updateSubject.next(this.view),t.docChanged||t.getMeta("FORCE_EMIT")){var n=e.doc.toJSON();this.valueChangesSubject.next(n)}},t.prototype.createEditor=function(){var t,e=this.options,n=e.content,i=void 0===n?null:n,s=e.nodeViews,a=e.history,u=void 0===a||a,c=e.keyboardShortcuts,p=void 0===c||c,l=e.inputRules,d=void 0===l||l,h=this.schema,g=S(i,h),f=null!==(t=e.plugins)&&void 0!==t?t:[],m=re(h,{history:u,keyboardShortcuts:p,inputRules:d});this.view=new r.EditorView(null,{state:o.EditorState.create({doc:g,schema:h,plugins:Ut(m,f)}),nodeViews:s,dispatchTransaction:this.handleTransactions.bind(this)})},t.prototype.registerPlugin=function(t){var e=this.view.state,n=Ut(e.plugins,[t]),o=e.reconfigure({plugins:n});this.view.updateState(o)},t.prototype.destroy=function(){this.view.destroy()},t}();Object.defineProperty(t,"marks",{enumerable:!0,get:function(){return s.marks}}),Object.defineProperty(t,"nodes",{enumerable:!0,get:function(){return s.nodes}}),Object.defineProperty(t,"schema",{enumerable:!0,get:function(){return s.schema}}),t.Editor=se,t.FloatingMenuComponent=F,t.MenuComponent=A,t.NgxEditorComponent=R,t.NgxEditorModule=At,t.Validators=Wt,t.emptyDoc=z,t.parseContent=S,t.toDoc=H,t.toHTML=D,t.ɵ0=Vt,t.ɵ1=Ft,t.ɵ2=$t,t.ɵa=L,t.ɵb=B,t.ɵc=Tt,t.ɵd=zt,t.ɵe=W,t.ɵf=G,t.ɵg=U,t.ɵh=Dt,t.ɵi=Ht,t.ɵj=St,t.ɵk=Rt,t.ɵl=Lt,t.ɵm=N,Object.defineProperty(t,"__esModule",{value:!0})}));
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("prosemirror-state"),require("prosemirror-view"),require("prosemirror-model"),require("ngx-editor/schema"),require("rxjs"),require("rxjs/operators"),require("@angular/platform-browser"),require("@angular/common"),require("prosemirror-commands"),require("ngx-editor/commands"),require("ngx-editor/helpers"),require("prosemirror-schema-list"),require("ngx-editor/utils"),require("prosemirror-keymap"),require("prosemirror-history"),require("prosemirror-inputrules")):"function"==typeof define&&define.amd?define("ngx-editor",["exports","@angular/core","@angular/forms","prosemirror-state","prosemirror-view","prosemirror-model","ngx-editor/schema","rxjs","rxjs/operators","@angular/platform-browser","@angular/common","prosemirror-commands","ngx-editor/commands","ngx-editor/helpers","prosemirror-schema-list","ngx-editor/utils","prosemirror-keymap","prosemirror-history","prosemirror-inputrules"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["ngx-editor"]={},t.ng.core,t.ng.forms,t.prosemirrorState,t.prosemirrorView,t.prosemirrorModel,t["ngx-editor"].schema,t.rxjs,t.rxjs.operators,t.ng.platformBrowser,t.ng.common,t.prosemirrorCommands,t["ngx-editor"].commands,t["ngx-editor"].helpers,t.prosemirroSchemaList,t["ngx-editor"].utils,t.prosemirrorKeymap,t.prosemirrorHistory,t.prosemirrorInputRules)}(this,(function(t,e,n,o,r,i,s,a,u,c,p,l,d,h,g,f,m,v,b){"use strict";var x=function(t){return void 0===t&&(t=!0),new o.Plugin({key:new o.PluginKey("editable"),state:{init:function(){return t},apply:function(t,e){var n;return null!==(n=t.getMeta("UPDATE_EDITABLE"))&&void 0!==n?n:e}},props:{editable:function(t){return this.getState(t)},attributes:function(t){return this.getState(t)?null:{class:"NgxEditor__Content--Disabled"}}}})},y=function(t){return new o.Plugin({key:new o.PluginKey("placeholder"),state:{init:function(){return null!=t?t:""},apply:function(t,e){var n;return null!==(n=t.getMeta("UPDATE_PLACEHOLDER"))&&void 0!==n?n:e}},props:{decorations:function(t){var e=t.doc,n=e.textContent,o=e.childCount,i=this.getState(t);if(!i||o>1)return r.DecorationSet.empty;var s=[];return e.descendants((function(t,e){var o;if(t.type.isBlock&&0===t.childCount&&0===n.length){var a=r.Decoration.node(e,e+t.nodeSize,{class:"NgxEditor__Placeholder","data-placeholder":i,"data-align":null!==(o=t.attrs.align)&&void 0!==o?o:null});s.push(a)}return!1})),r.DecorationSet.create(e,s)}}})},_=function(t){return void 0===t&&(t={}),new o.Plugin({key:new o.PluginKey("attributes"),props:{attributes:t}})},w=function(t){return new o.Plugin({key:new o.PluginKey("focus"),props:{handleDOMEvents:{focus:function(){return t(),!1}}}})},E=function(t){return new o.Plugin({key:new o.PluginKey("blur"),props:{handleDOMEvents:{blur:function(){return t(),!1}}}})},N=function(){function t(){this.alt="",this.title="",this.outerWidth="",this.selected=!1,this.imageResize=new e.EventEmitter}return t.prototype.startResizing=function(t,e){t.preventDefault(),this.resizeImage(t,e)},t.prototype.resizeImage=function(t,e){var n=this,o=t.pageX,r=this.imgEl.nativeElement.clientWidth,i="left"===e,s=window.getComputedStyle(this.view.dom).width,a=parseInt(s,10),u=function(t){var e=t.pageX-o,s=i?r-e:r+e;s>a||s<20||(n.outerWidth=s+"px")},c=function(t){t.preventDefault(),document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",c),n.imageResize.emit()};document.addEventListener("mousemove",u),document.addEventListener("mouseup",c)},t}();N.decorators=[{type:e.Component,args:[{selector:"ngx-image-view",template:'<span class="NgxEditor__ImageWrapper" [ngClass]="{\'NgxEditor__Resizer--Active\': selected}" [style.width]="outerWidth">\n <span class="NgxEditor__ResizeHandle" *ngIf="selected">\n <span class="NgxEditor__ResizeHandle--TL" (mousedown)="startResizing($event, \'left\')"></span>\n <span class="NgxEditor__ResizeHandle--TR" (mousedown)="startResizing($event, \'right\')"></span>\n <span class="NgxEditor__ResizeHandle--BL" (mousedown)="startResizing($event, \'left\')"></span>\n <span class="NgxEditor__ResizeHandle--BR" (mousedown)="startResizing($event, \'right\')"></span>\n </span>\n <img [src]="src" [alt]="alt" [title]="title" #imgEl />\n</span>\n',styles:["*,:after,:before{box-sizing:border-box}img{width:100%;height:100%}.NgxEditor__ImageWrapper{position:relative;display:inline-block;line-height:0;padding:2px}.NgxEditor__ImageWrapper.NgxEditor__Resizer--Active{padding:1px;border:1px solid #1a73e8}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle{position:absolute;height:100%;width:100%}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BL,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BR,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TL,.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TR{position:absolute;width:7px;height:7px;background-color:#1a73e8;border:1px solid #fff}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BR{bottom:-5px;right:-5px;cursor:se-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TR{top:-5px;right:-5px;cursor:ne-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--TL{top:-5px;left:-5px;cursor:nw-resize}.NgxEditor__ImageWrapper .NgxEditor__ResizeHandle .NgxEditor__ResizeHandle--BL{bottom:-5px;left:-5px;cursor:sw-resize}"]}]}],N.propDecorators={src:[{type:e.Input}],alt:[{type:e.Input}],title:[{type:e.Input}],outerWidth:[{type:e.Input}],selected:[{type:e.Input}],view:[{type:e.Input}],imageResize:[{type:e.Output}],imgEl:[{type:e.ViewChild,args:["imgEl",{static:!0}]}]};var I=function(){function t(t,n,r,i){var s=this;this.updating=!1,this.handleResize=function(){if(!s.updating){var t=s.view,e=t.state,n=t.dispatch,r=e.tr.setNodeMarkup(s.getPos(),void 0,{src:s.imageComponentRef.instance.src,width:s.imageComponentRef.instance.outerWidth}),i=r.doc.resolve(s.getPos()),a=new o.NodeSelection(i);r.setSelection(a),n(r)}};var a=document.createElement("image-view"),u=i.get(e.ComponentFactoryResolver);this.applicationRef=i.get(e.ApplicationRef);var c=u.resolveComponentFactory(N);this.imageComponentRef=c.create(i,[],a),this.applicationRef.attachView(this.imageComponentRef.hostView),this.setNodeAttributes(t.attrs),this.imageComponentRef.instance.view=n,this.dom=a,this.view=n,this.node=t,this.getPos=r,this.resizeSubscription=this.imageComponentRef.instance.imageResize.subscribe((function(){s.handleResize()}))}return t.prototype.computeChanges=function(t,e){return JSON.stringify(t)===JSON.stringify(e)},t.prototype.setNodeAttributes=function(t){this.imageComponentRef.instance.src=t.src,this.imageComponentRef.instance.alt=t.alt,this.imageComponentRef.instance.title=t.title,this.imageComponentRef.instance.outerWidth=t.width},t.prototype.update=function(t){return t.type===this.node.type&&(this.node=t,this.computeChanges(this.node.attrs,t.attrs)&&(this.updating=!0,this.setNodeAttributes(t.attrs),this.updating=!1),!0)},t.prototype.ignoreMutation=function(){return!0},t.prototype.selectNode=function(){this.imageComponentRef.instance.selected=!0},t.prototype.deselectNode=function(){this.imageComponentRef.instance.selected=!1},t.prototype.destroy=function(){this.resizeSubscription.unsubscribe(),this.applicationRef.detachView(this.imageComponentRef.hostView)},t}(),C=function(t){return new o.Plugin({key:new o.PluginKey("link"),props:{nodeViews:{image:function(e,n,o){return new I(e,n,o,t)}}}})},k=/((https?:\/\/)?[\w-]+(\.[\w-]+)+\.?(:\d+)?(\/\S*)?)$/,M=function(t){var e=[];return t.forEach((function(t){if(t.isText){var n=t.text,o=0,r=k.exec(n);if(r){var i=r.index,s=i+r[0].length,a=t.type.schema.marks.link;i>0&&e.push(t.cut(o,i));var u=n.slice(i,s);e.push(t.cut(i,s).mark(a.create({href:u}).addToSet(t.marks))),o=s}o<n.length&&e.push(t.cut(o))}else e.push(t.copy(M(t.content)))})),i.Fragment.fromArray(e)},P=function(){return new o.Plugin({key:new o.PluginKey("link"),props:{transformPasted:function(t){return new i.Slice(M(t.content),t.openStart,t.openEnd)}}})},z={type:"doc",content:[{type:"paragraph"}]},D=function(t,e){var n=null!=e?e:s.schema,o=n.nodeFromJSON(t),r=i.DOMSerializer.fromSchema(n).serializeFragment(o.content),a=document.createElement("div");return a.appendChild(r),a.innerHTML},H=function(t,e){var n=null!=e?e:s.schema,o=document.createElement("div");return o.innerHTML=t,i.DOMParser.fromSchema(n).parse(o).toJSON()},S=function(t,e){if(!t)return e.nodeFromJSON(z);if("string"!=typeof t)return e.nodeFromJSON(t);var n=H(t,e);return e.nodeFromJSON(n)},R=function(){function t(t,n,o){this._renderer=t,this._injector=n,this._elementRef=o,this.placeholder="Type Here...",this.focusOut=new e.EventEmitter,this.focusIn=new e.EventEmitter,this.subscriptions=[],this.onChange=function(){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this.outputFormat||"string"!=typeof t||(this.outputFormat="html"),this.editor.setContent(t)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this.setMeta("UPDATE_EDITABLE",!t),this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype.handleChange=function(t){if("html"!==this.outputFormat)this.onChange(t);else{var e=D(t,this.editor.schema);this.onChange(e)}},t.prototype.setMeta=function(t,e){var n=this.editor.view;(0,n.dispatch)(n.state.tr.setMeta(t,e))},t.prototype.setPlaceholder=function(t){this.setMeta("UPDATE_PLACEHOLDER",t)},t.prototype.registerPlugins=function(){var t=this;this.editor.registerPlugin(x()),this.editor.registerPlugin(y(this.placeholder)),this.editor.registerPlugin(_({class:"NgxEditor__Content"})),this.editor.registerPlugin(w((function(){t.focusIn.emit()}))),this.editor.registerPlugin(w((function(){t.focusIn.emit()}))),this.editor.registerPlugin(E((function(){t.focusOut.emit(),t.onTouched()}))),this.editor.registerPlugin(C(this._injector)),this.editor.registerPlugin(P())},t.prototype.ngOnInit=function(){var t=this;if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.registerPlugins(),this._renderer.appendChild(this.ngxEditor.nativeElement,this.editor.view.dom);var e=this.editor.valueChanges.subscribe((function(e){t.handleChange(e)}));this.subscriptions.push(e)},t.prototype.ngOnChanges=function(t){(null==t?void 0:t.placeholder)&&!t.placeholder.isFirstChange()&&this.setPlaceholder(t.placeholder.currentValue)},t.prototype.ngOnDestroy=function(){this.subscriptions.forEach((function(t){t.unsubscribe()}))},t}();R.decorators=[{type:e.Component,args:[{selector:"ngx-editor",template:'<div class="NgxEditor" #ngxEditor>\n <ng-content></ng-content>\n</div>\n',providers:[{provide:n.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return R})),multi:!0}],encapsulation:e.ViewEncapsulation.None,styles:['.NgxEditor{background:#fff;color:#000;background-clip:padding-box;border-radius:4px;border:1px solid rgba(0,0,0,.2);position:relative}.NgxEditor--Disabled{opacity:.5;pointer-events:none}.NgxEditor__Placeholder:before{color:#6c757d;opacity:1;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;cursor:text;content:attr(data-placeholder)}.NgxEditor__Placeholder[data-align=right]:before{position:relative}.NgxEditor__Content{padding:.5rem;white-space:pre-wrap;outline:none;font-variant-ligatures:none;font-feature-settings:"liga" 0}.NgxEditor__Content p{margin:0 0 .7rem}.NgxEditor__Content blockquote{padding-left:1rem;border-left:3px solid #ddd;margin-left:0;margin-right:0}.NgxEditor__Content--Disabled{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}.NgxEditor__Wrapper{border:1px solid rgba(0,0,0,.4);border-radius:4px}.NgxEditor__Wrapper .NgxEditor__MenuBar{border-top-left-radius:4px;border-top-right-radius:4px;border-bottom:1px solid rgba(0,0,0,.2)}.NgxEditor__Wrapper .NgxEditor{border-top-left-radius:0;border-top-right-radius:0;border:none}.NgxEditor__MenuBar{display:flex;padding:.2rem;cursor:default;background-color:#fff}.NgxEditor__MenuItem{border-radius:2px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.NgxEditor__MenuItem:hover{background-color:#f1f1f1}.NgxEditor__MenuItem.NgxEditor__MenuItem--Icon{height:1.85rem;width:1.85rem;transition:.3s ease-in-out}.NgxEditor__MenuItem.NgxEditor__MenuItem--Icon+.NgxEditor__MenuItem--Icon{margin-left:2px}.NgxEditor__MenuItem .NgxEditor__MenuItem--IconContainer{display:flex;height:100%;width:100%;align-items:center;justify-content:center}.NgxEditor__MenuItem.NgxEditor__MenuItem--Text{padding:0 .3rem}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active{background-color:#e8f0fe}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active.NgxEditor__MenuItem--Text{color:#1a73e8}.NgxEditor__MenuItem.NgxEditor__MenuItem--Active svg{fill:#1a73e8}.NgxEditor__Dropdown{min-width:4rem;position:relative;display:flex;align-items:center;flex-shrink:0}.NgxEditor__Dropdown:hover{background-color:#f1f1f1}.NgxEditor__Dropdown .NgxEditor__Dropdown--Text{display:flex;align-items:center;justify-content:center;padding:0 .3rem;height:100%;width:100%}.NgxEditor__Dropdown .NgxEditor__Dropdown--Text:after{display:inline-block;content:"";margin-left:1.5rem;vertical-align:.25rem;border-top:.25rem solid;border-right:.25rem solid transparent;border-bottom:0;border-left:.25rem solid transparent}.NgxEditor__Dropdown .NgxEditor__Dropdown--DropdownMenu{position:absolute;left:0;box-shadow:0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px;background-color:#fff;z-index:10;width:100%;top:calc(1.85rem + 2px)}.NgxEditor__Dropdown .NgxEditor__Dropdown--Item{padding:.5rem;white-space:nowrap;color:inherit}.NgxEditor__Dropdown .NgxEditor__Dropdown--Item:hover{background-color:#ececec}.NgxEditor__Dropdown.NgxEditor__Dropdown--Open,.NgxEditor__Dropdown.NgxEditor__Dropdown--Selected{background-color:#e8f0fe}.NgxEditor__Dropdown.NgxEditor__Dropdown--Open .NgxEditor__Dropdown--Text,.NgxEditor__Dropdown.NgxEditor__Dropdown--Selected .NgxEditor__Dropdown--Text{color:#1a73e8}.NgxEditor__Dropdown .NgxEditor__Dropdown--Active{background-color:#f1f1f1}.NgxEditor__Dropdown .NgxEditor__Dropdown--Active:hover{background-color:#e7e7e7}.NgxEditor__MenuBar--Reverse .NgxEditor__Dropdown--DropdownMenu{top:unset;bottom:calc(1.85rem + 2px)}.NgxEditor__MenuBar--Reverse .NgxEditor__Dropdown--Text:after{transform:rotate(180deg)}.NgxEditor__MenuBar--Reverse .NgxEditor__Popup{top:unset;bottom:calc(1.85rem + 2px)}.NgxEditor__Popup{position:absolute;top:calc(1.85rem + 2px);box-shadow:0 2px 6px 2px rgba(60,64,67,.15);border-radius:4px;background-color:#fff;z-index:10;min-width:12rem;padding:8px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup{margin-bottom:8px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup label{margin-bottom:3px}.NgxEditor__Popup .NgxEditor__Popup--FormGroup input[type=text],.NgxEditor__Popup .NgxEditor__Popup--FormGroup input[type=url]{padding:2px 4px}.NgxEditor__Popup .NgxEditor__Popup--Col{display:flex;flex-direction:column;position:relative}.NgxEditor__Popup .NgxEditor__Popup--Label{font-size:85%}.NgxEditor__Seperator{border-left:1px solid #ccc;margin:0 .3rem}.NgxEditor__HelpText{font-size:80%}.NgxEditor__HelpText.NgxEditor__HelpText--Error{color:red}']}]}],R.ctorParameters=function(){return[{type:e.Renderer2},{type:e.Injector},{type:e.ElementRef}]},R.propDecorators={ngxEditor:[{type:e.ViewChild,args:["ngxEditor",{static:!0}]}],editor:[{type:e.Input}],outputFormat:[{type:e.Input}],placeholder:[{type:e.Input}],focusOut:[{type:e.Output}],focusIn:[{type:e.Output}]};var L=function(){function t(){this.customMenuRefChange=new a.Subject}return t.prototype.setCustomMenuRef=function(t){this.customMenuRefChange.next(t)},t}();L.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new L},token:L,providedIn:"root"}),L.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}];var T=[["bold","italic"],["code","blockquote"],["underline","strike"],["ordered_list","bullet_list"],[{heading:["h1","h2","h3","h4","h5","h6"]}],["link","image"],["text_color","background_color"],["align_left","align_center","align_right","align_justify"]],O=["#b60205","#d93f0b","#fbca04","#0e8a16","#006b75","#1d76db","#0052cc","#5319e7","#e99695","#f9d0c4","#fef2c0","#c2e0c6","#bfdadc","#c5def5","#bfd4f2","#d4c5f9"],A=function(){function t(t){this.menuService=t,this.toolbar=T,this.colorPresets=O,this.disabled=!1,this.customMenuRef=null,this.dropdownPlacement="bottom",this.toggleCommands=["bold","italic","underline","strike","code","blockquote","ordered_list","bullet_list","align_left","align_center","align_right","align_justify"],this.iconContainerClass=["NgxEditor__MenuItem","NgxEditor__MenuItem--Icon"],this.dropdownContainerClass=["NgxEditor__Dropdown"],this.seperatorClass=["NgxEditor__Seperator"]}return Object.defineProperty(t.prototype,"presets",{get:function(){var t=[];return this.colorPresets.forEach((function(e,n){var o=Math.floor(n/8);t[o]||t.push([]),t[o].push(e)})),t},enumerable:!1,configurable:!0}),t.prototype.isDropDown=function(t){var e;return!!(null===(e=t)||void 0===e?void 0:e.heading)},t.prototype.getDropdownItems=function(t){return t},t.prototype.ngOnInit=function(){if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.menuService.editor=this.editor},t}();A.decorators=[{type:e.Component,args:[{selector:"ngx-editor-menu",template:'<div class="NgxEditor__MenuBar" [ngClass]="{\'NgxEditor--Disabled\': disabled, \'NgxEditor__MenuBar--Reverse\': dropdownPlacement === \'top\'}">\n\n <ng-container *ngFor="let toolbarItem of toolbar; let lastToolbarItem = last">\n <ng-container *ngFor="let item of toolbarItem; let lastItem = last">\n\n \x3c!-- toggle icons --\x3e\n <ngx-toggle-command [toolbarItem]="item" [class]="iconContainerClass" *ngIf="toggleCommands.includes(item)">\n </ngx-toggle-command>\n\n \x3c!-- link --\x3e\n <ngx-link [class]="iconContainerClass" *ngIf="item === \'link\'"></ngx-link>\n\n \x3c!-- image --\x3e\n <ngx-image [class]="iconContainerClass" *ngIf="item === \'image\'">\n </ngx-image>\n\n \x3c!-- dropdown --\x3e\n <ng-container *ngIf="isDropDown(item)">\n <ngx-dropdown *ngFor="let dropdownItem of getDropdownItems(item) | keyvalue" [class]="dropdownContainerClass"\n [group]="dropdownItem.key" [items]="dropdownItem.value">\n </ngx-dropdown>\n </ng-container>\n\n \x3c!-- text color picker --\x3e\n <ngx-color-picker [class]="iconContainerClass" *ngIf="item === \'text_color\'" type="text_color"\n [presets]="presets">\n </ngx-color-picker>\n \x3c!-- background color picker --\x3e\n <ngx-color-picker [class]="iconContainerClass" *ngIf="item === \'background_color\'" type="background_color"\n [presets]="presets">\n </ngx-color-picker>\n\n \x3c!-- seperator --\x3e\n <div [class]="seperatorClass" *ngIf="lastItem && !lastToolbarItem"></div>\n </ng-container>\n </ng-container>\n\n \x3c!-- custom menu --\x3e\n <ng-container *ngIf="customMenuRef">\n <ng-container [ngTemplateOutlet]="customMenuRef"></ng-container>\n </ng-container>\n\n</div>\n',providers:[L],styles:[""]}]}],A.ctorParameters=function(){return[{type:L}]},A.propDecorators={toolbar:[{type:e.Input}],colorPresets:[{type:e.Input}],disabled:[{type:e.Input}],editor:[{type:e.Input}],customMenuRef:[{type:e.Input}],dropdownPlacement:[{type:e.Input}]};var j={bold:'\n <path d="M15.6 10.79c.97-.67 1.65-1.77 1.65-2.79 0-2.26-1.75-4-4-4H7v14h7.04c2.09 0 3.71-1.7 3.71-3.79 0-1.52-.86-2.82-2.15-3.42zM10 6.5h3c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-3v-3zm3.5 9H10v-3h3.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5z" />\n',italic:'\n <path d="M10 4v3h2.21l-3.42 8H6v3h8v-3h-2.21l3.42-8H18V4z" />\n',code:'\n<path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"/>\n',underline:'\n<path d="M12 17c3.31 0 6-2.69 6-6V3h-2.5v8c0 1.93-1.57 3.5-3.5 3.5S8.5 12.93 8.5 11V3H6v8c0 3.31 2.69 6 6 6zm-7 2v2h14v-2H5z"/>\n',strike:'\n<path d="M6.85,7.08C6.85,4.37,9.45,3,12.24,3c1.64,0,3,0.49,3.9,1.28c0.77,0.65,1.46,1.73,1.46,3.24h-3.01 c0-0.31-0.05-0.59-0.15-0.85c-0.29-0.86-1.2-1.28-2.25-1.28c-1.86,0-2.34,1.02-2.34,1.7c0,0.48,0.25,0.88,0.74,1.21 C10.97,8.55,11.36,8.78,12,9H7.39C7.18,8.66,6.85,8.11,6.85,7.08z M21,12v-2H3v2h9.62c1.15,0.45,1.96,0.75,1.96,1.97 c0,1-0.81,1.67-2.28,1.67c-1.54,0-2.93-0.54-2.93-2.51H6.4c0,0.55,0.08,1.13,0.24,1.58c0.81,2.29,3.29,3.3,5.67,3.3 c2.27,0,5.3-0.89,5.3-4.05c0-0.3-0.01-1.16-0.48-1.94H21V12z"/>\n',ordered_list:'\n<path d="M2 17h2v.5H3v1h1v.5H2v1h3v-4H2v1zm1-9h1V4H2v1h1v3zm-1 3h1.8L2 13.1v.9h3v-1H3.2L5 10.9V10H2v1zm5-6v2h14V5H7zm0 14h14v-2H7v2zm0-6h14v-2H7v2z"/>\n',bullet_list:'\n<path d="M4 10.5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0-6c-.83 0-1.5.67-1.5 1.5S3.17 7.5 4 7.5 5.5 6.83 5.5 6 4.83 4.5 4 4.5zm0 12c-.83 0-1.5.68-1.5 1.5s.68 1.5 1.5 1.5 1.5-.68 1.5-1.5-.67-1.5-1.5-1.5zM7 19h14v-2H7v2zm0-6h14v-2H7v2zm0-8v2h14V5H7z"/>\n',blockquote:'\n<path d="M0 0h24v24H0z" fill="none"/><path d="M6 17h3l2-4V7H5v6h3zm8 0h3l2-4V7h-6v6h3z"/>\n',link:'\n<path d="M0 0h24v24H0z" fill="none"/><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"/>\n',unlink:'\n<path d="M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5zm-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11C3.29 8.12 2 9.91 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3 2 4.27z"/>\n',image:'\n<path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>\n',align_left:'\n<path d="M15 15H3v2h12v-2zm0-8H3v2h12V7zM3 13h18v-2H3v2zm0 8h18v-2H3v2zM3 3v2h18V3H3z"/>\n',align_center:'\n<path d="M7 15v2h10v-2H7zm-4 6h18v-2H3v2zm0-8h18v-2H3v2zm4-6v2h10V7H7zM3 3v2h18V3H3z"/>\n',align_right:'\n<path d="M3 21h18v-2H3v2zm6-4h12v-2H9v2zm-6-4h18v-2H3v2zm6-4h12V7H9v2zM3 3v2h18V3H3z"/>\n',align_justify:'\n<path d="M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"/>\n',text_color:'\n<path d="M2,20h20v4H2V20z M5.49,17h2.42l1.27-3.58h5.65L16.09,17h2.42L13.25,3h-2.5L5.49,17z M9.91,11.39l2.03-5.79h0.12l2.03,5.79 H9.91z"/>\n',color_fill:'\n<path d="M16.56,8.94L7.62,0L6.21,1.41l2.38,2.38L3.44,8.94c-0.59,0.59-0.59,1.54,0,2.12l5.5,5.5C9.23,16.85,9.62,17,10,17 s0.77-0.15,1.06-0.44l5.5-5.5C17.15,10.48,17.15,9.53,16.56,8.94z M5.21,10L10,5.21L14.79,10H5.21z M19,11.5c0,0-2,2.17-2,3.5 c0,1.1,0.9,2,2,2s2-0.9,2-2C21,13.67,19,11.5,19,11.5z M2,20h20v4H2V20z"/>\n'},V=function(){function t(){}return t.get=function(t,e){return void 0===e&&(e="#000"),'\n <svg\n xmlns="http://www.w3.org/2000/svg"\n viewBox="0 0 24 24"\n fill='+e+"\n height=20\n width=20\n >\n "+(j[t]||"<path></path>")+"\n </svg>\n "},t.getPath=function(t){return j[t]||"<path></path>"},t}(),B=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t){return this.sanitizer.bypassSecurityTrustHtml(t)},t}();B.decorators=[{type:e.Pipe,args:[{name:"sanitizeHtml"}]}],B.ctorParameters=function(){return[{type:c.DomSanitizer}]};var F=function(){function t(t,e){this.el=t,this.sanitizeHTML=e,this.posLeft=0,this.posTop=0,this.showMenu=!1,this.dragging=!1,this.execulableItems=[],this.activeItems=[]}return Object.defineProperty(t.prototype,"display",{get:function(){return{visibility:this.showMenu?"visible":"hidden",opacity:this.showMenu?"1":"0",top:this.posTop+"px",left:this.posLeft+"px"}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"view",{get:function(){return this.editor.view},enumerable:!1,configurable:!0}),t.prototype.onMouseDown=function(t){this.el.nativeElement.contains(t.target)?t.preventDefault():this.dragging=!0},t.prototype.onKeyDown=function(){this.dragging=!0,this.hide()},t.prototype.onMouseUp=function(){this.dragging=!1,this.useUpdate()},t.prototype.onKeyUp=function(){this.dragging=!1,this.useUpdate()},t.prototype.useUpdate=function(){this.view&&this.update(this.view)},t.prototype.getIcon=function(t){var e=V.getPath(t);return this.sanitizeHTML.transform(e)},t.prototype.hide=function(){this.showMenu=!1},t.prototype.show=function(){this.showMenu=!0},t.prototype.calculateBubblePosition=function(t){var e=t.state.selection.from,n=this.el.nativeElement,o=n.getBoundingClientRect(),r=n.parentElement.getBoundingClientRect(),i=t.coordsAtPos(e),s=i.left-r.left;(r.right<i.left+o.width||o.right>r.right)&&(s=r.width-o.width),s<0&&(s=0);var a=o.height+parseInt(getComputedStyle(n).marginBottom,10);return{left:s,top:i.top-r.top-a}},t.prototype.update=function(t){var e=t.state.selection,n=e.empty;if(e instanceof o.NodeSelection&&"image"===e.node.type.name)this.hide();else if(!this.view.hasFocus()||n||this.dragging)this.hide();else{var r=this.calculateBubblePosition(this.view),i=r.top,s=r.left;this.posLeft=s,this.posTop=i,this.show()}},t.prototype.ngOnInit=function(){var t=this;if(!this.editor)throw new Error("NgxEditor: Required editor instance");this.updateSubscription=this.editor.update.subscribe((function(e){t.update(e)})),this.resizeSubscription=a.fromEvent(window,"resize").pipe(u.throttleTime(500,a.asyncScheduler,{leading:!0,trailing:!0})).subscribe((function(){t.useUpdate()}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe(),this.resizeSubscription.unsubscribe()},t}();F.decorators=[{type:e.Component,args:[{selector:"ngx-editor-floating-menu",template:'<div #ref>\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf="ref.children.length === 0">\n <ngx-bubble [editor]="editor"></ngx-bubble>\n</ng-container>\n',styles:["*,:after,:before{box-sizing:border-box}:host{position:absolute;z-index:20;margin-bottom:.35rem;visibility:hidden;opacity:0}"]}]}],F.ctorParameters=function(){return[{type:e.ElementRef},{type:B}]},F.propDecorators={display:[{type:e.HostBinding,args:["style"]}],editor:[{type:e.Input}],onMouseDown:[{type:e.HostListener,args:["document:mousedown",["$event"]]}],onKeyDown:[{type:e.HostListener,args:["document:keydown"]}],onMouseUp:[{type:e.HostListener,args:["document:mouseup"]}],onKeyUp:[{type:e.HostListener,args:["document:keyup"]}]};var q={bold:"Bold",italic:"Italic",code:"Code",underline:"Underline",strike:"Strike",blockquote:"Blockquote",bullet_list:"Bullet List",ordered_list:"Ordered List",heading:"Heading",h1:"Header 1",h2:"Header 2",h3:"Header 3",h4:"Header 4",h5:"Header 5",h6:"Header 6",align_left:"Left Align",align_center:"Center Align",align_right:"Right Align",align_justify:"Justify",text_color:"Text Color",background_color:"Background Color",url:"URL",text:"Text",openInNewTab:"Open in new tab",insert:"Insert",altText:"Alt Text",title:"Title",remove:"Remove"},$=function(t){var e=this;void 0===t&&(t={}),this.locals=q,this.get=function(t){var n;return null!==(n=e.locals[t])&&void 0!==n?n:""},this.locals=Object.assign({},q,t)},W=function(){this.locals={}};W.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new W},token:W,providedIn:"root"}),W.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}];var G=function(){function t(t){this.config=t}return Object.defineProperty(t.prototype,"locals",{get:function(){return new $(this.config.locals)},enumerable:!1,configurable:!0}),t}();G.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new G(e.ɵɵinject(W,8))},token:G,providedIn:"root"}),G.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],G.ctorParameters=function(){return[{type:W,decorators:[{type:e.Optional}]}]};var U=function(t){var e;return{locals:null!==(e=t.locals)&&void 0!==e?e:{}}},K=function(){function t(t){this.name=t}return t.prototype.apply=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&d.applyMark(o)(e,n)}},t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&l.toggleMark(o)(e,n)}},t.prototype.isActive=function(t){var e=t.schema.marks[this.name];return!!e&&h.isMarkActive(t,e)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),J=function(){function t(){}return t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema.nodes.blockquote;return!!o&&(t.isActive(e)?l.lift(e,n):l.wrapIn(o)(e,n))}},t.prototype.isActive=function(t){var e=t.schema.nodes.blockquote;return!!e&&h.isNodeActive(t,e)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),X=function(){function t(t){void 0===t&&(t=!1),this.isBulletList=!1,this.isBulletList=t}return t.prototype.getType=function(t){return this.isBulletList?t.nodes.bullet_list:t.nodes.ordered_list},t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.schema,r=t.getType(o);return!!r&&(t.isActive(e)?g.liftListItem(o.nodes.list_item)(e,n):g.wrapInList(r)(e,n))}},t.prototype.isActive=function(t){var e=t.schema,n=this.getType(e);return!!n&&h.isNodeActive(t,n)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Q=function(){function t(t){this.level=t}return t.prototype.apply=function(){return function(t,e){var n=t.schema.nodes.heading;return!!n&&l.setBlockType(n)(t,e)}},t.prototype.toggle=function(){var t=this;return function(e,n){var o,r=e.schema,i=e.selection,s=e.doc,a=r.nodes.heading;if(!a)return!1;var u=i.$from.before(1),c=s.nodeAt(u),p=null!==(o=null==c?void 0:c.attrs)&&void 0!==o?o:{};return t.isActive(e)?l.setBlockType(r.nodes.paragraph,p)(e,n):l.setBlockType(a,Object.assign(Object.assign({},p),{level:t.level}))(e,n)}},t.prototype.isActive=function(t){var e=this,n=t.schema,o=h.getSelectionNodes(t),r=n.nodes.heading;if(!r)return!1;var i=[r,n.nodes.text,n.nodes.blockquote],s=o.filter((function(t){return i.includes(t.type)})).find((function(t){return t.attrs.level===e.level}));return Boolean(s)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Y=function(){function t(t){this.align=t}return t.prototype.toggle=function(){var t=this;return function(e,n){var o=e.doc,r=e.selection,i=e.tr,s=e.schema,a=r.from,u=r.to,c=!1;return o.nodesBetween(a,u,(function(e,n){var o=e.type;return[s.nodes.paragraph,s.nodes.heading].includes(o)&&(c=!0,i.setNodeMarkup(n,o,Object.assign(Object.assign({},e.attrs),{align:t.align}))),!0})),!!c&&(i.docChanged&&(null==n||n(i)),!0)}},t.prototype.isActive=function(t){var e=this,n=h.getSelectionNodes(t).find((function(t){return t.attrs.align===e.align}));return Boolean(n)},t.prototype.canExecute=function(t){return this.toggle()(t)},t}(),Z={strict:!0},tt=function(){function t(){}return t.prototype.update=function(t){return void 0===t&&(t={}),function(e,n){var o=e.schema,r=e.selection,i=o.marks.link;return!!i&&(!r.empty&&l.toggleMark(i,t)(e,n))}},t.prototype.insert=function(t,e){return function(n,o){var r,i,s=n.schema,a=n.tr;if(!s.marks.link)return!1;var u={href:e.href,title:null!==(r=e.title)&&void 0!==r?r:t,target:null!==(i=e.target)&&void 0!==i?i:"_blank"},c=s.text(t,[s.marks.link.create(u)]);return a.replaceSelectionWith(c,!1).scrollIntoView(),!!a.docChanged&&(null==o||o(a),!0)}},t.prototype.isActive=function(t,e){if(void 0===e&&(e=Z),e.strict)return!0;var n=t.schema.marks.link;return!!n&&h.isMarkActive(t,n)},t.prototype.remove=function(t,e){return d.removeLink()(t,e)},t.prototype.canExecute=function(t){return this.update({})(t)},t}(),et=function(){function t(){}return t.prototype.insert=function(t,e){return function(n,r){var i=n.schema,s=n.tr,a=n.selection,u=i.nodes.image;if(!u)return!1;var c=Object.assign({width:null,src:t},e);!c.width&&a instanceof o.NodeSelection&&a.node.type===u&&(c.width=a.node.attrs.width),s.replaceSelectionWith(u.createAndFill(c));var p=s.doc.resolve(s.selection.anchor-s.selection.$anchor.nodeBefore.nodeSize);return s.setSelection(new o.NodeSelection(p)).scrollIntoView(),!!s.docChanged&&(null==r||r(s),!0)}},t.prototype.isActive=function(t){var e=t.selection;return e instanceof o.NodeSelection&&"image"===e.node.type.name},t}(),nt=function(){function t(t){this.name=t}return t.prototype.apply=function(t){var e=this;return function(n,o){var r=n.schema,i=n.selection,s=n.doc,a=r.marks[e.name];if(!a)return!1;var u=i.from,c=i.to;if(!i.empty&&u+1===c){var p=s.nodeAt(u);if((null==p?void 0:p.isAtom)&&!p.isText&&p.isLeaf)return!1}return d.applyMark(a,t)(n,o)}},t.prototype.isActive=function(t){var e=t.schema.marks[this.name];return!!e&&h.isMarkActive(t,e)},t.prototype.getActiveColors=function(t){var e=this;if(!this.isActive(t))return[];var n=t.schema;return h.getSelectionMarks(t).filter((function(t){return t.type===n.marks[e.name]})).map((function(t){return t.attrs.color})).filter(Boolean)},t.prototype.remove=function(){var t=this;return function(e,n){var o=e.schema.marks[t.name];return!!o&&d.removeMark(o)(e,n)}},t.prototype.canExecute=function(t){var e="text_color"===this.name?{color:""}:{backgroundColor:""};return this.apply(e)(t)},t}(),ot=new K("strong"),rt=new K("em"),it=new K("code"),st=new K("u"),at=new K("s"),ut=new J,ct=new X(!0),pt=new X(!1),lt=new Q(1),dt=new Q(2),ht=new Q(3),gt=new Q(4),ft=new Q(5),mt=new Q(6),vt=new Y("left"),bt=new Y("center"),xt=new Y("right"),yt=new Y("justify"),_t=new tt,wt=new et,Et=new nt("text_color"),Nt=new nt("text_background_color"),It={bold:ot,italic:rt,code:it,underline:st,strike:at,blockquote:ut,bullet_list:ct,ordered_list:pt,h1:lt,h2:dt,h3:ht,h4:gt,h5:ft,h6:mt,align_left:vt,align_center:bt,align_right:xt,align_justify:yt},Ct=_t,kt=wt,Mt=Et,Pt=Nt,zt=function(){function t(t,e){var n=this;this.ngxeService=t,this.menuService=e,this.isActive=!1,this.disabled=!1,this.update=function(t){var e=t.state,o=It[n.name];n.isActive=o.isActive(e),n.disabled=!o.canExecute(e)}}return Object.defineProperty(t.prototype,"name",{get:function(){return this.toolbarItem},enumerable:!1,configurable:!0}),t.prototype.toggle=function(t){if(t.preventDefault(),0===t.button){var e=this.editorView,n=e.state,o=e.dispatch;It[this.name].toggle()(n,o)}},t.prototype.getTitle=function(t){return this.ngxeService.locals.get(t)},t.prototype.ngOnInit=function(){var t=this;this.html=V.get(this.name),this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();zt.decorators=[{type:e.Component,args:[{selector:"ngx-toggle-command",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="html | sanitizeHtml" (mousedown)="toggle($event)"\n [title]="getTitle(name)">\n</div>\n',styles:[""]}]}],zt.ctorParameters=function(){return[{type:G},{type:L}]},zt.propDecorators={toolbarItem:[{type:e.Input}],isActive:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}]};var Dt=function(){function t(t,e,o){var r=this;this.el=t,this.ngxeService=e,this.menuService=o,this.showPopup=!1,this.isActive=!1,this.canExecute=!0,this.form=new n.FormGroup({href:new n.FormControl("",[n.Validators.required,n.Validators.pattern("(https?://)?([\\da-z.-]+)\\.([a-z.]{2,6})[/\\w .-]*/?")]),text:new n.FormControl("",[n.Validators.required]),openInNewTab:new n.FormControl(!0)}),this.setText=function(){var t=r.editorView.state,e=t.selection,n=t.doc,o=e.empty,i=e.from,s=e.to,a=o?"":n.textBetween(i,s);a&&(r.text.patchValue(a),r.text.disable())},this.update=function(t){var e=t.state;r.isActive=Ct.isActive(e,{strict:!1}),r.canExecute=Ct.canExecute(e)}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return!this.canExecute},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get(this.isActive?"unlink":"link")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"href",{get:function(){return this.form.get("href")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"text",{get:function(){return this.form.get("text")},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hideForm()},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.hideForm=function(){this.showPopup=!1,this.form.reset({href:"",text:"",openInNewTab:!0}),this.text.enable()},t.prototype.onMouseDown=function(t){if(t.preventDefault(),0===t.button){var e=this.editorView,n=e.state,o=e.dispatch;this.isActive?Ct.remove(n,o):(this.showPopup=!this.showPopup,this.showPopup&&this.setText())}},t.prototype.insertLink=function(t){t.preventDefault();var e=this.form.getRawValue(),n=e.text,o=e.href,r=e.openInNewTab,i=this.editorView,s=i.dispatch,a=i.state,u={title:o,href:o,target:r?"_blank":"_self"};a.selection.empty?(Ct.insert(n,u)(a,s),this.editorView.focus()):Ct.update(u)(a,s),this.hideForm()},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Dt.decorators=[{type:e.Component,args:[{selector:"ngx-link",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="onMouseDown($event)">\n</div>\n\n\x3c!-- popup --\x3e\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <form class="NgxEditor__Popup--Form" [formGroup]="form" (ngSubmit)="insertLink($event)">\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'url\')}}</label>\n <input type="href" id="href" formControlName="href" autofocus autocomplete="off" />\n <div *ngIf="href.touched && href.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ href.errors?.pattern && \'Please enter valid url.\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'text\')}}</label>\n <input type="text" formControlName="text" autocomplete="off" />\n <div *ngIf="text.touched && text.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ text.errors?.required && \'This is required\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label>\n <input type="checkbox" formControlName="openInNewTab" />\n {{getLabel(\'openInNewTab\')}}\n </label>\n </div>\n </div>\n\n <button type="submit" [disabled]="!form.valid">{{getLabel(\'insert\')}}</button>\n\n </form>\n</div>\n',styles:[""]}]}],Dt.ctorParameters=function(){return[{type:e.ElementRef},{type:G},{type:L}]},Dt.propDecorators={valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Ht=function(){function t(t,e,n){var o=this;this.ngxeService=t,this.menuService=e,this.el=n,this.isDropdownOpen=!1,this.activeItems=[],this.disabledItems=[],this.update=function(t){var e=t.state;o.activeItems=[],o.disabledItems=[],o.items.forEach((function(t){var n=It[t];n.isActive(e)&&o.activeItems.push(t),n.canExecute(e)||o.disabledItems.push(t)})),1===o.activeItems.length?o.activeItem=o.activeItems[0]:o.activeItem=null}}return Object.defineProperty(t.prototype,"isSelected",{get:function(){return Boolean(this.activeItem||this.isDropdownOpen)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isDropdownDisabled",{get:function(){return this.disabledItems.length===this.items.length},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t)&&this.isDropdownOpen&&(this.isDropdownOpen=!1)},t.prototype.getName=function(t){return this.ngxeService.locals.get(t)},t.prototype.toggleDropdown=function(t){t.preventDefault(),this.isDropdownOpen=!this.isDropdownOpen},t.prototype.onClick=function(t,e){if(t.preventDefault(),0===t.button){var n=It[e],o=this.editorView,r=o.state,i=o.dispatch;n.toggle()(r,i),this.isDropdownOpen=!1}},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Ht.decorators=[{type:e.Component,args:[{selector:"ngx-dropdown",template:'<div class="NgxEditor__Dropdown--Text" (mousedown)="toggleDropdown($event)">\n {{getName(activeItem || group)}}\n</div>\n\n<div class="NgxEditor__Dropdown--DropdownMenu" *ngIf="isDropdownOpen">\n <div class="NgxEditor__Dropdown--Item" *ngFor="let item of items" (mousedown)="onClick($event, item)"\n [ngClass]="{\'NgxEditor__Dropdown--Active\': item === activeItem, \'NgxEditor--Disabled\':disabledItems.includes(item)}">\n {{getName(item)}}\n </div>\n</div>\n',styles:[""]}]}],Ht.ctorParameters=function(){return[{type:G},{type:L},{type:e.ElementRef}]},Ht.propDecorators={group:[{type:e.Input}],items:[{type:e.Input}],isSelected:[{type:e.HostBinding,args:["class.NgxEditor__Dropdown--Selected"]}],isDropdownDisabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event.target"]]}]};var St=function(){function t(t,e,o){var r=this;this.el=t,this.ngxeService=e,this.menuService=o,this.showPopup=!1,this.isActive=!1,this.form=new n.FormGroup({src:new n.FormControl("",[n.Validators.required,n.Validators.pattern("(https?://)?([\\da-z.-]+)\\.([a-z.]{2,6})[/\\w .-]*/?")]),alt:new n.FormControl(""),title:new n.FormControl("")}),this.update=function(t){var e=t.state;r.isActive=kt.isActive(e)}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get("image")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"src",{get:function(){return this.form.get("src")},enumerable:!1,configurable:!0}),t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hideForm()},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.hideForm=function(){this.showPopup=!1,this.form.reset({src:"",alt:"",title:""})},t.prototype.onMouseDown=function(t){t.preventDefault(),0===t.button&&(this.showPopup=!this.showPopup,this.showPopup&&this.fillForm())},t.prototype.fillForm=function(){var t=this.editorView.state.selection;if(t instanceof o.NodeSelection&&this.isActive){var e=t.node.attrs,n=e.src,r=e.alt,i=void 0===r?"":r,s=e.title,a=void 0===s?"":s;this.form.setValue({src:n,alt:i,title:a})}},t.prototype.insertLink=function(t){t.preventDefault();var e=this.form.getRawValue(),n=e.src,o=e.alt,r=e.title,i=this.editorView,s=i.dispatch,a=i.state,u={alt:o,title:r};kt.insert(n,u)(a,s),this.editorView.focus(),this.hideForm()},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();St.decorators=[{type:e.Component,args:[{selector:"ngx-image",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="onMouseDown($event)">\n</div>\n\n\x3c!-- popup --\x3e\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <form class="NgxEditor__Popup--Form" [formGroup]="form" (ngSubmit)="insertLink($event)">\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'url\')}}</label>\n <input type="href" id="href" formControlName="src" autofocus autocomplete="off" />\n <div *ngIf="src.touched && src.invalid" class="NgxEditor__HelpText NgxEditor__HelpText--Error">\n {{ src.errors?.pattern && \'Please enter valid url.\' }}\n </div>\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'altText\')}}</label>\n <input type="text" formControlName="alt" autocomplete="off" />\n </div>\n </div>\n\n <div class="NgxEditor__Popup--FormGroup">\n <div class="NgxEditor__Popup--Col">\n <label class="NgxEditor__Popup--Label">{{getLabel(\'title\')}}</label>\n <input type="text" formControlName="title" autocomplete="off" />\n </div>\n </div>\n\n <button type="submit" [disabled]="!form.valid || !form.dirty">{{getLabel(\'insert\')}}</button>\n\n </form>\n</div>\n',styles:[""]}]}],St.ctorParameters=function(){return[{type:e.ElementRef},{type:G},{type:L}]},St.propDecorators={valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Rt=function(){function t(t,e,n){var o=this;this.el=t,this.menuService=e,this.ngxeService=n,this.showPopup=!1,this.isActive=!1,this.activeColors=[],this.canExecute=!0,this.update=function(t){var e=t.state;o.canExecute=o.command.canExecute(e),o.isActive=o.command.isActive(e),o.activeColors=[],o.isActive&&(o.activeColors=o.command.getActiveColors(e))}}return Object.defineProperty(t.prototype,"valid",{get:function(){return this.isActive||this.showPopup},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return!this.canExecute},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"title",{get:function(){return this.getLabel("text_color"===this.type?"text_color":"background_color")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return V.get("text_color"===this.type?"text_color":"color_fill")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"command",{get:function(){return"text_color"===this.type?Mt:Pt},enumerable:!1,configurable:!0}),t.prototype.getContrastYIQ=function(t){return t=t.replace("#",""),(299*parseInt(t.substr(0,2),16)+587*parseInt(t.substr(2,2),16)+114*parseInt(t.substr(4,2),16))/1e3>=128?"black":"white"},t.prototype.onDocumentClick=function(t){!this.el.nativeElement.contains(t.target)&&this.showPopup&&this.hidePopup()},t.prototype.hidePopup=function(){this.showPopup=!1},t.prototype.togglePopup=function(t){t.preventDefault(),0===t.button&&(this.showPopup=!this.showPopup)},t.prototype.remove=function(t){t.preventDefault();var e=this.editorView,n=e.state,o=e.dispatch;this.command.remove()(n,o),this.hidePopup()},t.prototype.onColorSelect=function(t,e){if(t.preventDefault(),0===t.button){var n=this.editorView,o=n.state,r=n.dispatch;if("text_color"===this.type){var i={color:e};this.command.apply(i)(o,r)}else{i={backgroundColor:e};this.command.apply(i)(o,r)}this.editorView.hasFocus()||this.editorView.focus(),this.hidePopup()}},t.prototype.getLabel=function(t){return this.ngxeService.locals.get(t)},t.prototype.ngOnInit=function(){var t=this;this.editorView=this.menuService.editor.view,this.updateSubscription=this.menuService.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Rt.decorators=[{type:e.Component,args:[{selector:"ngx-color-picker",template:'<div class="NgxEditor__MenuItem--IconContainer" [innerHTML]="icon | sanitizeHtml" (mousedown)="togglePopup($event)"\n [title]="title">\n</div>\n\n<div *ngIf="showPopup" class="NgxEditor__Popup">\n <div *ngFor="let colorGroup of presets" class="NgxEditor__ColorContainer">\n <button class="NgxEditor__Color" *ngFor="let color of colorGroup"\n [ngStyle]="{backgroundColor: color, color:getContrastYIQ(color)}" [title]="color"\n (mousedown)="onColorSelect($event, color)"\n [ngClass]="{\'NgxEditor__Color--Active\': activeColors.includes(color)}"></button>\n </div>\n\n <button class="NgxEditor__MenuItem--Button" (mousedown)="remove($event)" [disabled]="!isActive">\n {{getLabel(\'remove\')}}\n </button>\n</div>\n',styles:['@charset "UTF-8";.NgxEditor__Popup{width:230px}.NgxEditor__ColorContainer{display:flex;justify-content:space-between}.NgxEditor__ColorContainer+.NgxEditor__ColorContainer{margin-top:5px}.NgxEditor__Color{border:none;outline:none;border-radius:6px;width:24px;height:24px;flex-shrink:0}.NgxEditor__Color--Active:after{content:"✔";font-size:90%}.NgxEditor__MenuItem--Button{margin-top:5px}']}]}],Rt.ctorParameters=function(){return[{type:e.ElementRef},{type:L},{type:G}]},Rt.propDecorators={presets:[{type:e.Input}],type:[{type:e.Input}],valid:[{type:e.HostBinding,args:["class.NgxEditor__MenuItem--Active"]}],disabled:[{type:e.HostBinding,args:["class.NgxEditor--Disabled"]}],onDocumentClick:[{type:e.HostListener,args:["document:mousedown",["$event"]]}]};var Lt=function(){function t(t,e){this.sanitizeHTML=t,this.ngxeService=e,this.execulableItems=[],this.activeItems=[],this.toolbar=[["bold","italic","underline","strike"],["ordered_list","bullet_list","blockquote","code"],["align_left","align_center","align_right","align_justify"]],this.toggleCommands=["bold","italic","underline","strike","ordered_list","bullet_list","blockquote","code","align_left","align_center","align_right","align_justify"]}return Object.defineProperty(t.prototype,"view",{get:function(){return this.editor.view},enumerable:!1,configurable:!0}),t.prototype.getIcon=function(t){var e=V.getPath(t);return this.sanitizeHTML.transform(e)},t.prototype.getTitle=function(t){return this.ngxeService.locals.get(t)},t.prototype.onClick=function(t,e){if(t.preventDefault(),t.stopPropagation(),0===t.button){var n=this.view,o=n.state,r=n.dispatch;It[e].toggle()(o,r)}},t.prototype.update=function(t){var e=this;this.activeItems=[],this.execulableItems=[];var n=t.state;this.toggleCommands.forEach((function(t){var o=It[t];o.isActive(n)&&e.activeItems.push(t),o.canExecute(n)&&e.execulableItems.push(t)}))},t.prototype.ngOnInit=function(){var t=this;this.updateSubscription=this.editor.update.subscribe((function(e){t.update(e)}))},t.prototype.ngOnDestroy=function(){this.updateSubscription.unsubscribe()},t}();Lt.decorators=[{type:e.Component,args:[{selector:"ngx-bubble",template:'<ng-container *ngFor="let toolbarItem of toolbar; let lastToolbarItem = last">\n <ng-container *ngFor="let item of toolbarItem; let lastItem = last">\n <div class="NgxBubbleMenu__Icon" [ngClass]="{\'NgxBubbleMenu__Icon--Active\': this.activeItems.includes(item),\n \'NgxEditor--Disabled\': !this.execulableItems.includes(item)}" (mousedown)="onClick($event, item)"\n *ngIf="toggleCommands.includes(item)" [title]="getTitle(item)">\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" height="20" width="20"\n [innerHTML]="getIcon(item)"></svg>\n </div>\n <div class="NgxBubbleMenu__Seperator" *ngIf="lastItem && !lastToolbarItem"></div>\n </ng-container>\n</ng-container>\n',styles:["*,:after,:before{box-sizing:border-box}:host{display:flex;background-color:#000;color:#fff;padding:.3rem;border-radius:4px}.NgxBubbleMenu__Icon{height:1.8rem;width:1.8rem;transition:.3s ease-in-out;border-radius:2px;display:flex;align-items:center;justify-content:center}.NgxBubbleMenu__Icon svg{fill:#fff}.NgxBubbleMenu__Icon:hover{background-color:#636262}.NgxBubbleMenu__Icon+.NgxBubbleMenu__Icon{margin-left:.3rem}.NgxBubbleMenu__Icon.NgxBubbleMenu__Icon--Active{background-color:#fff}.NgxBubbleMenu__Icon.NgxBubbleMenu__Icon--Active svg{fill:#000}.NgxBubbleMenu__Seperator{border-left:1px solid #fff;margin:0 5px}"]}]}],Lt.ctorParameters=function(){return[{type:B},{type:G}]},Lt.propDecorators={editor:[{type:e.Input}]};var Tt=function(){};Tt.decorators=[{type:e.NgModule,args:[{imports:[p.CommonModule,n.ReactiveFormsModule],declarations:[B,A,zt,Dt,Ht,St,Rt,F,Lt],providers:[B],exports:[A,F]}]}];var Ot=new e.InjectionToken("NgxEditorConfig"),At=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[{provide:Ot,useValue:e},{provide:W,useFactory:U,deps:[Ot]}]}},t.forChild=function(e){return{ngModule:t,providers:[{provide:Ot,useValue:e},{provide:W,useFactory:U,deps:[Ot]},G]}},t}();At.decorators=[{type:e.NgModule,args:[{imports:[p.CommonModule,Tt],providers:[],declarations:[R,N],exports:[R,A,F]}]}];var jt=function(t){return null===t||0===t.length},Vt=jt,Bt=function(t){return null!=t&&"number"==typeof t.length},Ft=Bt,qt=function(t){if(!t)return!0;var e=t.childCount,n=t.firstChild;return Boolean(1===e&&(null==n?void 0:n.isTextblock)&&0===n.content.size)},$t=qt,Wt=function(){function t(){}return t.required=function(t){return function(e){var n=t||s.schema,o=S(e.value,n);return qt(o)?{required:!0}:null}},t.maxLength=function(t,e){return function(n){var o=e||s.schema,r=S(n.value,o).textContent;return Bt(r)&&r.length>t?{maxlength:{requiredLength:t,actualLength:r.length}}:null}},t.minLength=function(t,e){return function(n){var o=e||s.schema,r=S(n.value,o).textContent;return jt(r)||!Bt(r)?null:r.length<t?{minlength:{requiredLength:t,actualLength:r.length}}:null}},t}();Object.create;function Gt(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function Ut(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Gt(arguments[e]));return t}Object.create;var Kt=function(t,e){return void 0===e&&(e=!1),function(n,o){var r=new K(t);return e?r.toggle()(n,o):r.apply()(n,o)}},Jt=function(){function t(t){var e=this;if(this.applyTrx=function(t){e.state=e.state.apply(null!=t?t:e.tr),e.tr=e.state.tr,e.tr.setMeta("APPLIED_TRX",!0)},this.dispatch=function(t){e.applyTrx(t)},!t)throw Error("NgxEditor: Required view to initialize commands.");this.view=t,this.state=t.state,this.tr=this.view.state.tr}return t.prototype.exec=function(){if(!this.tr.getMeta("APPLIED_TRX"))return!1;var t=!this.view.state.doc.eq(this.state.doc);this.view.updateState(this.state);var e=this.tr.setMeta("FORCE_EMIT",t);return this.view.dispatch(e),!0},t.prototype.focus=function(){return this.view.focus(),this},t.prototype.scrollIntoView=function(){return this.tr.scrollIntoView(),this.applyTrx(),this},t.prototype.insertText=function(t){return this.tr.insertText(t),this.applyTrx(),this},t.prototype.insertNewLine=function(){var t=[l.newlineInCode,l.createParagraphNear,l.liftEmptyBlock,l.splitBlock];return l.chainCommands.apply(void 0,Ut(t))(this.state,this.dispatch),this},t.prototype.applyMark=function(t){return Kt(t,!1)(this.state,this.dispatch),this},t.prototype.toggleMark=function(t){return Kt(t,!0)(this.state,this.dispatch),this},t.prototype.bold=function(){return Kt("strong")(this.state,this.dispatch),this},t.prototype.toggleBold=function(){return Kt("strong",!0)(this.state,this.dispatch),this},t.prototype.italics=function(){return Kt("em")(this.state,this.dispatch),this},t.prototype.toggleItalics=function(){return Kt("em",!0)(this.state,this.dispatch),this},t.prototype.underline=function(){return Kt("u")(this.state,this.dispatch),this},t.prototype.toggleUnderline=function(){return Kt("u",!0)(this.state,this.dispatch),this},t.prototype.strike=function(){return Kt("s")(this.state,this.dispatch),this},t.prototype.toggleStrike=function(){return Kt("s",!0)(this.state,this.dispatch),this},t.prototype.code=function(){return Kt("code")(this.state,this.dispatch),this},t.prototype.toggleCode=function(){return Kt("code",!0)(this.state,this.dispatch),this},t.prototype.toggleOrderedList=function(){return new X(!1).toggle()(this.state,this.dispatch),this},t.prototype.toggleBulletList=function(){return new X(!0).toggle()(this.state,this.dispatch),this},t.prototype.toggleHeading=function(t){return new Q(t).toggle()(this.state,this.dispatch),this},t.prototype.insertLink=function(t,e){return(new tt).insert(t,e)(this.state,this.dispatch),this},t.prototype.updateLink=function(t){return(new tt).update(t)(this.state,this.dispatch),this},t.prototype.insertImage=function(t,e){return void 0===e&&(e={}),(new et).insert(t,e)(this.state,this.dispatch),this},t.prototype.textColor=function(t){return new nt("text_color").apply({color:t})(this.state,this.dispatch),this},t.prototype.backgroundColor=function(t){return new nt("text_background_color").apply({backgroundColor:t})(this.state,this.dispatch),this},t.prototype.removeTextColor=function(){return new nt("text_color").remove()(this.state,this.dispatch),this},t.prototype.removeBackgroundColor=function(){return new nt("text_background_color").remove()(this.state,this.dispatch),this},t.prototype.align=function(t){return new Y(t).toggle()(this.state,this.dispatch),this},t.prototype.insertHTML=function(t){var e=this.state,n=e.selection,o=e.schema,r=e.tr,s=n.from,a=n.to,u=document.createElement("div");u.innerHTML=t.trim();var c=i.DOMParser.fromSchema(o).parseSlice(u),p=r.replaceRange(s,a,c);return this.applyTrx(p),this},t}(),Xt="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),Qt=function(t){return b.wrappingInputRule(/^\s*>\s$/,t)},Yt=function(t){return b.wrappingInputRule(/^(\d+)\.\s$/,t,(function(t){return{order:+t[1]}}),(function(t,e){return e.childCount+e.attrs.order===+t[1]}))},Zt=function(t){return b.wrappingInputRule(/^\s*([-+*])\s$/,t)},te=function(t){return b.textblockTypeInputRule(/^```$/,t)},ee=function(t,e){return b.textblockTypeInputRule(new RegExp("^(#{1,"+e+"})\\s$"),t,(function(t){return{level:t[1].length}}))},ne=function(t){var e=b.smartQuotes.concat(b.ellipsis,b.emDash);return e.push(Qt(t.nodes.blockquote)),e.push(Yt(t.nodes.ordered_list)),e.push(Zt(t.nodes.bullet_list)),e.push(te(t.nodes.code_block)),e.push(ee(t.nodes.heading,6)),b.inputRules({rules:e})},oe=function(t,e){var n={};n["Mod-z"]=v.undo,Xt?n["Shift-Mod-z"]=v.redo:n["Mod-y"]=v.redo;var o=[m.keymap({"Mod-b":l.toggleMark(t.marks.strong),"Mod-i":l.toggleMark(t.marks.em),"Mod-`":l.toggleMark(t.marks.code)}),m.keymap({Enter:g.splitListItem(t.nodes.list_item),"Shift-Enter":l.chainCommands(l.exitCode,(function(e,n){var o=e.tr,r=t.nodes.hard_break;return n(o.replaceSelectionWith(r.create()).scrollIntoView()),!0})),"Mod-[":g.liftListItem(t.nodes.list_item),"Mod-]":g.sinkListItem(t.nodes.list_item),Tab:g.sinkListItem(t.nodes.list_item)}),m.keymap(l.baseKeymap)];return e.history&&o.push(m.keymap(n)),o},re=function(t,e){var n=[];return e.keyboardShortcuts&&n.push.apply(n,Ut(oe(t,{history:e.history}))),e.history&&n.push(v.history()),e.inputRules&&n.push(ne(t)),n},ie={content:null,history:!0,keyboardShortcuts:!0,inputRules:!0,schema:s.schema,plugins:[],nodeViews:{}},se=function(){function t(t){void 0===t&&(t=ie),this.valueChangesSubject=new a.Subject,this.updateSubject=new a.Subject,this.options=Object.assign({},ie,t),this.createEditor()}return Object.defineProperty(t.prototype,"valueChanges",{get:function(){return this.valueChangesSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"update",{get:function(){return this.updateSubject.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"schema",{get:function(){return this.options.schema||s.schema},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"commands",{get:function(){return new Jt(this.view)},enumerable:!1,configurable:!0}),t.prototype.handleTransactions=function(t){var e=this.view.state.apply(t);if(this.view.updateState(e),this.updateSubject.next(this.view),t.docChanged||t.getMeta("FORCE_EMIT")){var n=e.doc.toJSON();this.valueChangesSubject.next(n)}},t.prototype.createEditor=function(){var t,e=this.options,n=e.content,i=void 0===n?null:n,s=e.nodeViews,a=e.history,u=void 0===a||a,c=e.keyboardShortcuts,p=void 0===c||c,l=e.inputRules,d=void 0===l||l,h=this.schema,g=S(i,h),f=null!==(t=e.plugins)&&void 0!==t?t:[],m=re(h,{history:u,keyboardShortcuts:p,inputRules:d});this.view=new r.EditorView(null,{state:o.EditorState.create({doc:g,schema:h,plugins:Ut(m,f)}),nodeViews:s,dispatchTransaction:this.handleTransactions.bind(this)})},t.prototype.setContent=function(t){if(!f.isNil(t)){var e=this.view.state,n=e.tr,o=e.doc,r=S(t,this.schema);n.replaceWith(0,e.doc.content.size,r),o.eq(n.doc)||n.docChanged&&this.view.dispatch(n)}},t.prototype.registerPlugin=function(t){var e=this.view.state,n=Ut(e.plugins,[t]),o=e.reconfigure({plugins:n});this.view.updateState(o)},t.prototype.destroy=function(){this.view.destroy()},t}();Object.defineProperty(t,"marks",{enumerable:!0,get:function(){return s.marks}}),Object.defineProperty(t,"nodes",{enumerable:!0,get:function(){return s.nodes}}),Object.defineProperty(t,"schema",{enumerable:!0,get:function(){return s.schema}}),t.Editor=se,t.FloatingMenuComponent=F,t.MenuComponent=A,t.NgxEditorComponent=R,t.NgxEditorModule=At,t.Validators=Wt,t.emptyDoc=z,t.parseContent=S,t.toDoc=H,t.toHTML=D,t.ɵ0=Vt,t.ɵ1=Ft,t.ɵ2=$t,t.ɵa=L,t.ɵb=B,t.ɵc=Tt,t.ɵd=zt,t.ɵe=W,t.ɵf=G,t.ɵg=U,t.ɵh=Dt,t.ɵi=Ht,t.ɵj=St,t.ɵk=Rt,t.ɵl=Lt,t.ɵm=N,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=ngx-editor.umd.min.js.map

@@ -16,2 +16,8 @@ # CHANGELOG

## v9.0.1 (2021-05-05)
#### Bug Fixes
- check `navigator` before access for SSR ([2a58a3a](https://github.com/sibiraj-s/ngx-editor/commit/2a58a3a))
## v9.0.0 (2021-05-01)

@@ -18,0 +24,0 @@

@@ -6,3 +6,3 @@ import { keymap } from 'prosemirror-keymap';

import { inputRules, wrappingInputRule, textblockTypeInputRule, smartQuotes, emDash, ellipsis } from 'prosemirror-inputrules';
const isMacOs = /Mac/.test(navigator.platform);
const isMacOs = typeof navigator !== 'undefined' ? /Mac/.test(navigator.platform) : false;
// Input rules ref: https://github.com/ProseMirror/prosemirror-example-setup/

@@ -111,2 +111,2 @@ // : (NodeType) → InputRule

export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdFBsdWdpbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL3NyYy9saWIvZGVmYXVsdFBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RixPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsVUFBVSxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUNyRCxXQUFXLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFDOUIsTUFBTSx3QkFBd0IsQ0FBQztBQVloQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUUvQyw2RUFBNkU7QUFFN0UsMkJBQTJCO0FBQzNCLHdFQUF3RTtBQUN4RSxpREFBaUQ7QUFDakQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxRQUFrQixFQUFhLEVBQUU7SUFDdkQsT0FBTyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDakQsQ0FBQyxDQUFDOztBQUVGLDJCQUEyQjtBQUMzQixvRUFBb0U7QUFDcEUsc0VBQXNFO0FBQ3RFLE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBa0IsRUFBYSxFQUFFO0lBQ3hELE9BQU8saUJBQWlCLENBQ3RCLGFBQWEsRUFDYixRQUFRLEVBQ1IsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMs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QUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDN0U7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUU7UUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0tBQ3pCO0lBRUQsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7S0FDdkM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7O0FBRUYsZUFBZSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGVUeXBlLCBTY2hlbWEgfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICdwcm9zZW1pcnJvci1zdGF0ZSc7XG5pbXBvcnQgeyBrZXltYXAgfSBmcm9tICdwcm9zZW1pcnJvci1rZXltYXAnO1xuaW1wb3J0IHsgdG9nZ2xlTWFyaywgYmFzZUtleW1hcCwgY2hhaW5Db21tYW5kcywgZXhpdENvZGUgfSBmcm9tICdwcm9zZW1pcnJvci1jb21tYW5kcyc7XG5pbXBvcnQgeyBzcGxpdExpc3RJdGVtLCBsaWZ0TGlzdEl0ZW0sIHNpbmtMaXN0SXRlbSB9IGZyb20gJ3Byb3NlbWlycm9yLXNjaGVtYS1saXN0JztcbmltcG9ydCB7IGhpc3RvcnksIHVuZG8sIHJlZG8gfSBmcm9tICdwcm9zZW1pcnJvci1oaXN0b3J5JztcbmltcG9ydCB7XG4gIGlucHV0UnVsZXMsIHdyYXBwaW5nSW5wdXRSdWxlLCB0ZXh0YmxvY2tUeXBlSW5wdXRSdWxlLFxuICBzbWFydFF1b3RlcywgZW1EYXNoLCBlbGxpcHNpcywgSW5wdXRSdWxlXG59IGZyb20gJ3Byb3NlbWlycm9yLWlucHV0cnVsZXMnO1xuXG5pbnRlcmZhY2UgT3B0aW9ucyB7XG4gIGhpc3Rvcnk6IGJvb2xlYW47XG4gIGtleWJvYXJkU2hvcnRjdXRzOiBib29sZWFuO1xuICBpbnB1dFJ1bGVzOiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgU2hvcnRjdXRPcHRpb25zIHtcbiAgaGlzdG9yeTogYm9vbGVhbjtcbn1cblxuY29uc3QgaXNNYWNPcyA9IC9NYWMvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKTtcblxuLy8gSW5wdXQgcnVsZXMgcmVmOiBodHRwczovL2dpdGh1Yi5jb20vUHJvc2VNaXJyb3IvcHJvc2VtaXJyb3ItZXhhbXBsZS1zZXR1cC9cblxuLy8gOiAoTm9kZVR5cGUpIOKGkiBJbnB1dFJ1bGVcbi8vIEdpdmVuIGEgYmxvY2txdW90ZSBub2RlIHR5cGUsIHJldHVybnMgYW4gaW5wdXQgcnVsZSB0aGF0IHR1cm5zIGBcIj4gXCJgXG4vLyBhdCB0aGUgc3RhcnQgb2YgYSB0ZXh0YmxvY2sgaW50byBhIGJsb2NrcXVvdGUuXG5jb25zdCBibG9ja1F1b3RlUnVsZSA9IChub2RlVHlwZTogTm9kZVR5cGUpOiBJbnB1dFJ1bGUgPT4ge1xuICByZXR1cm4gd3JhcHBpbmdJbnB1dFJ1bGUoL15cXHMqPlxccyQvLCBub2RlVHlwZSk7XG59O1xuXG4vLyA6IChOb2RlVHlwZSkg4oaSIElucHV0UnVsZVxuLy8gR2l2ZW4gYSBsaXN0IG5vZGUgdHlwZSwgcmV0dXJucyBhbiBpbnB1dCBydWxlIHRoYXQgdHVybnMgYSBudW1iZXJcbi8vIGZvbGxvd2VkIGJ5IGEgZG90IGF0IHRoZSBzdGFydCBvZiBhIHRleHRibG9jayBpbnRvIGFuIG9yZGVyZWQgbGlzdC5cbmNvbnN0IG9yZGVyZWRMaXN0UnVsZSA9IChub2RlVHlwZTogTm9kZVR5cGUpOiBJbnB1dFJ1bGUgPT4ge1xuICByZXR1cm4gd3JhcHBpbmdJbnB1dFJ1bGUoXG4gICAgL14oXFxkKylcXC5cXHMkLyxcbiAgICBub2RlVHlwZSxcbiAgICBtYXRjaCA9PiAoeyBvcmRlcjogK21hdGNoWzFdIH0pLFxuICAgIChtYXRjaCwgbm9kZSkgPT4gbm9kZS5jaGlsZENvdW50ICsgbm9kZS5hdHRycy5vcmRlciA9PT0gK21hdGNoWzFdXG4gICk7XG59O1xuXG4vLyA6IChOb2RlVHlwZSkg4oaSIElucHV0UnVsZVxuLy8gR2l2ZW4gYSBsaXN0IG5vZGUgdHlwZSwgcmV0dXJucyBhbiBpbnB1dCBydWxlIHRoYXQgdHVybnMgYSBidWxsZXRcbi8vIChkYXNoLCBwbHVzaCwgb3IgYXN0ZXJpc2spIGF0IHRoZSBzdGFydCBvZiBhIHRleHRibG9jayBpbnRvIGFcbi8vIGJ1bGxldCBsaXN0LlxuY29uc3QgYnVsbGV0TGlzdFJ1bGUgPSAobm9kZVR5cGU6IE5vZGVUeXBlKTogSW5wdXRSdWxlID0+IHtcbiAgcmV0dXJuIHdyYXBwaW5nSW5wdXRSdWxlKC9eXFxzKihbLSsqXSlcXHMkLywgbm9kZVR5cGUpO1xufTtcblxuLy8gOiAoTm9kZVR5cGUpIOKGkiBJbnB1dFJ1bGVcbi8vIEdpdmVuIGEgY29kZSBibG9jayBub2RlIHR5cGUsIHJldHVybnMgYW4gaW5wdXQgcnVsZSB0aGF0IHR1cm5zIGFcbi8vIHRleHRibG9jayBzdGFydGluZyB3aXRoIHRocmVlIGJhY2t0aWNrcyBpbnRvIGEgY29kZSBibG9jay5cbmNvbnN0IGNvZGVCbG9ja1J1bGUgPSAobm9kZVR5cGU6IE5vZGVUeXBlKTogSW5wdXRSdWxlID0+IHtcbiAgcmV0dXJuIHRleHRibG9ja1R5cGVJbnB1dFJ1bGUoL15gYGAkLywgbm9kZVR5cGUpO1xufTtcblxuLy8gOiAoTm9kZVR5cGUsIG51bWJlcikg4oaSIElucHV0UnVsZVxuLy8gR2l2ZW4gYSBub2RlIHR5cGUgYW5kIGEgbWF4aW11bSBsZXZlbCwgY3JlYXRlcyBhbiBpbnB1dCBydWxlIHRoYXRcbi8vIHR1cm5zIHVwIHRvIHRoYXQgbnVtYmVyIG9mIGAjYCBjaGFyYWN0ZXJzIGZvbGxvd2VkIGJ5IGEgc3BhY2UgYXRcbi8vIHRoZSBzdGFydCBvZiBhIHRleHRibG9jayBpbnRvIGEgaGVhZGluZyB3aG9zZSBsZXZlbCBjb3JyZXNwb25kcyB0b1xuLy8gdGhlIG51bWJlciBvZiBgI2Agc2lnbnMuXG5jb25zdCBoZWFkaW5nUnVsZSA9IChub2RlVHlwZTogTm9kZVR5cGUsIG1heExldmVsOiBudW1iZXIpOiBJbnB1dFJ1bGUgPT4ge1xuICByZXR1cm4gdGV4dGJsb2NrVHlwZUlucHV0UnVsZShcbiAgICBuZXcgUmVnRXhwKCdeKCN7MSwnICsgbWF4TGV2ZWwgKyAnfSlcXFxccyQnKSxcbiAgICBub2RlVHlwZSxcbiAgICAobWF0Y2gpID0+ICh7IGxldmVsOiBtYXRjaFsxXS5sZW5ndGggfSlcbiAgKTtcbn07XG5cbi8vIDogKFNjaGVtYSkg4oaSIFBsdWdpblxuLy8gQSBzZXQgb2YgaW5wdXQgcnVsZXMgZm9yIGNyZWF0aW5nIHRoZSBiYXNpYyBibG9jayBxdW90ZXMsIGxpc3RzLFxuLy8gY29kZSBibG9ja3MsIGFuZCBoZWFkaW5nLlxuY29uc3QgYnVpbGRJbnB1dFJ1bGVzID0gKHNjaGVtYTogU2NoZW1hKTogUGx1Z2luID0+IHtcbiAgY29uc3QgcnVsZXMgPSBzbWFydFF1b3Rlcy5jb25jYXQoZWxsaXBzaXMsIGVtRGFzaCk7XG5cbiAgcnVsZXMucHVzaChibG9ja1F1b3RlUnVsZShzY2hlbWEubm9kZXMuYmxvY2txdW90ZSkpO1xuICBydWxlcy5wdXNoKG9yZGVyZWRMaXN0UnVsZShzY2hlbWEubm9kZXMub3JkZXJlZF9saXN0KSk7XG4gIHJ1bGVzLnB1c2goYnVsbGV0TGlzdFJ1bGUoc2NoZW1hLm5vZGVzLmJ1bGxldF9saXN0KSk7XG4gIHJ1bGVzLnB1c2goY29kZUJsb2NrUnVsZShzY2hlbWEubm9kZXMuY29kZV9ibG9jaykpO1xuICBydWxlcy5wdXNoKGhlYWRpbmdSdWxlKHNjaGVtYS5ub2Rlcy5oZWFkaW5nLCA2KSk7XG5cbiAgcmV0dXJuIGlucHV0UnVsZXMoeyBydWxlcyB9KTtcbn07XG5cbmNvbnN0IGdldEtleWJvYXJkU2hvcnRjdXRzID0gKHNjaGVtYTogU2NoZW1hLCBvcHRpb25zOiBTaG9ydGN1dE9wdGlvbnMpID0+IHtcbiAgY29uc3QgaGlzdG9yeUtleU1hcDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gIGhpc3RvcnlLZXlNYXBbJ01vZC16J10gPSB1bmRvO1xuICBpZiAoaXNNYWNPcykge1xuICAgIGhpc3RvcnlLZXlNYXBbJ1NoaWZ0LU1vZC16J10gPSByZWRvO1xuICB9IGVsc2Uge1xuICAgIGhpc3RvcnlLZXlNYXBbJ01vZC15J10gPSByZWRvO1xuICB9XG5cbiAgY29uc3QgcGx1Z2lucyA9IFtcbiAgICBrZXltYXAoe1xuICAgICAgJ01vZC1iJzogdG9nZ2xlTWFyayhzY2hlbWEubWFya3Muc3Ryb25nKSxcbiAgICAgICdNb2QtaSc6IHRvZ2dsZU1hcmsoc2NoZW1hLm1hcmtzLmVtKSxcbiAgICAgICdNb2QtYCc6IHRvZ2dsZU1hcmsoc2NoZW1hLm1hcmtzLmNvZGUpLFxuICAgIH0pLFxuICAgIGtleW1hcCh7XG4gICAgICBFbnRlcjogc3BsaXRMaXN0SXRlbShzY2hlbWEubm9kZXMubGlzdF9pdGVtKSxcbiAgICAgICdTaGlmdC1FbnRlcic6IGNoYWluQ29tbWFuZHMoZXhpdENvZGUsIChzdGF0ZSwgZGlzcGF0Y2gpID0+IHtcbiAgICAgICAgY29uc3QgdHIgPSBzdGF0ZS50cjtcbiAgICAgICAgY29uc3QgYnIgPSBzY2hlbWEubm9kZXMuaGFyZF9icmVhaztcbiAgICAgICAgZGlzcGF0Y2godHIucmVwbGFjZVNlbGVjdGlvbldpdGgoYnIuY3JlYXRlKCkpLnNjcm9sbEludG9WaWV3KCkpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0pLFxuICAgICAgJ01vZC1bJzogbGlmdExpc3RJdGVtKHNjaGVtYS5ub2Rlcy5saXN0X2l0ZW0pLFxuICAgICAgJ01vZC1dJzogc2lua0xpc3RJdGVtKHNjaGVtYS5ub2Rlcy5saXN0X2l0ZW0pLFxuICAgICAgVGFiOiBzaW5rTGlzdEl0ZW0oc2NoZW1hLm5vZGVzLmxpc3RfaXRlbSlcbiAgICB9KSxcbiAgICBrZXltYXAoYmFzZUtleW1hcClcbiAgXTtcblxuICBpZiAob3B0aW9ucy5oaXN0b3J5KSB7XG4gICAgcGx1Z2lucy5wdXNoKGtleW1hcChoaXN0b3J5S2V5TWFwKSk7XG4gIH1cblxuICByZXR1cm4gcGx1Z2lucztcbn07XG5cbmNvbnN0IGdldERlZmF1bHRQbHVnaW5zID0gKHNjaGVtYTogU2NoZW1hLCBvcHRpb25zOiBPcHRpb25zKTogUGx1Z2luW10gPT4ge1xuICBjb25zdCBwbHVnaW5zOiBQbHVnaW5bXSA9IFtdO1xuXG4gIGlmIChvcHRpb25zLmtleWJvYXJkU2hvcnRjdXRzKSB7XG4gICAgcGx1Z2lucy5wdXNoKC4uLmdldEtleWJvYXJkU2hvcnRjdXRzKHNjaGVtYSwgeyBoaXN0b3J5OiBvcHRpb25zLmhpc3RvcnkgfSkpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuaGlzdG9yeSkge1xuICAgIHBsdWdpbnMucHVzaChoaXN0b3J5KCkpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuaW5wdXRSdWxlcykge1xuICAgIHBsdWdpbnMucHVzaChidWlsZElucHV0UnVsZXMoc2NoZW1hKSk7XG4gIH1cblxuICByZXR1cm4gcGx1Z2lucztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGdldERlZmF1bHRQbHVnaW5zO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdFBsdWdpbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL3NyYy9saWIvZGVmYXVsdFBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RixPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsVUFBVSxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUNyRCxXQUFXLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFDOUIsTUFBTSx3QkFBd0IsQ0FBQztBQVloQyxNQUFNLE9BQU8sR0FBRyxPQUFPLFNBQVMsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFFekYsNkVBQTZFO0FBRTdFLDJCQUEyQjtBQUMzQix3RUFBd0U7QUFDeEUsaURBQWlEO0FBQ2pELE1BQU0sY0FBYyxHQUFHLENBQUMsUUFBa0IsRUFBYSxFQUFFO0lBQ3ZELE9BQU8saUJBQWlCLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ2pELENBQUMsQ0FBQzs7QUFFRiwyQkFBMkI7QUFDM0Isb0VBQW9FO0FBQ3BFLHNFQUFzRTtBQUN0RSxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQWtCLEVBQWEsRUFBRTtJQUN4RCxPQUFPLGlCQUFpQixDQUN0QixhQUFhLEVBQ2IsUUFBUSxFQUNSLEtBQUss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UUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQzdFO0lBRUQsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUN6QjtJQUVELElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRTtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0tBQ3ZDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDOztBQUVGLGVBQWUsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlVHlwZSwgU2NoZW1hIH0gZnJvbSAncHJvc2VtaXJyb3ItbW9kZWwnO1xuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAncHJvc2VtaXJyb3Itc3RhdGUnO1xuaW1wb3J0IHsga2V5bWFwIH0gZnJvbSAncHJvc2VtaXJyb3Ita2V5bWFwJztcbmltcG9ydCB7IHRvZ2dsZU1hcmssIGJhc2VLZXltYXAsIGNoYWluQ29tbWFuZHMsIGV4aXRDb2RlIH0gZnJvbSAncHJvc2VtaXJyb3ItY29tbWFuZHMnO1xuaW1wb3J0IHsgc3BsaXRMaXN0SXRlbSwgbGlmdExpc3RJdGVtLCBzaW5rTGlzdEl0ZW0gfSBmcm9tICdwcm9zZW1pcnJvci1zY2hlbWEtbGlzdCc7XG5pbXBvcnQgeyBoaXN0b3J5LCB1bmRvLCByZWRvIH0gZnJvbSAncHJvc2VtaXJyb3ItaGlzdG9yeSc7XG5pbXBvcnQge1xuICBpbnB1dFJ1bGVzLCB3cmFwcGluZ0lucHV0UnVsZSwgdGV4dGJsb2NrVHlwZUlucHV0UnVsZSxcbiAgc21hcnRRdW90ZXMsIGVtRGFzaCwgZWxsaXBzaXMsIElucHV0UnVsZVxufSBmcm9tICdwcm9zZW1pcnJvci1pbnB1dHJ1bGVzJztcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBoaXN0b3J5OiBib29sZWFuO1xuICBrZXlib2FyZFNob3J0Y3V0czogYm9vbGVhbjtcbiAgaW5wdXRSdWxlczogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFNob3J0Y3V0T3B0aW9ucyB7XG4gIGhpc3Rvcnk6IGJvb2xlYW47XG59XG5cbmNvbnN0IGlzTWFjT3MgPSB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyA/IC9NYWMvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSA6IGZhbHNlXG5cbi8vIElucHV0IHJ1bGVzIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL1Byb3NlTWlycm9yL3Byb3NlbWlycm9yLWV4YW1wbGUtc2V0dXAvXG5cbi8vIDogKE5vZGVUeXBlKSDihpIgSW5wdXRSdWxlXG4vLyBHaXZlbiBhIGJsb2NrcXVvdGUgbm9kZSB0eXBlLCByZXR1cm5zIGFuIGlucHV0IHJ1bGUgdGhhdCB0dXJucyBgXCI+IFwiYFxuLy8gYXQgdGhlIHN0YXJ0IG9mIGEgdGV4dGJsb2NrIGludG8gYSBibG9ja3F1b3RlLlxuY29uc3QgYmxvY2tRdW90ZVJ1bGUgPSAobm9kZVR5cGU6IE5vZGVUeXBlKTogSW5wdXRSdWxlID0+IHtcbiAgcmV0dXJuIHdyYXBwaW5nSW5wdXRSdWxlKC9eXFxzKj5cXHMkLywgbm9kZVR5cGUpO1xufTtcblxuLy8gOiAoTm9kZVR5cGUpIOKGkiBJbnB1dFJ1bGVcbi8vIEdpdmVuIGEgbGlzdCBub2RlIHR5cGUsIHJldHVybnMgYW4gaW5wdXQgcnVsZSB0aGF0IHR1cm5zIGEgbnVtYmVyXG4vLyBmb2xsb3dlZCBieSBhIGRvdCBhdCB0aGUgc3RhcnQgb2YgYSB0ZXh0YmxvY2sgaW50byBhbiBvcmRlcmVkIGxpc3QuXG5jb25zdCBvcmRlcmVkTGlzdFJ1bGUgPSAobm9kZVR5cGU6IE5vZGVUeXBlKTogSW5wdXRSdWxlID0+IHtcbiAgcmV0dXJuIHdyYXBwaW5nSW5wdXRSdWxlKFxuICAgIC9eKFxcZCspXFwuXFxzJC8sXG4gICAgbm9kZVR5cGUsXG4gICAgbWF0Y2ggPT4gKHsgb3JkZXI6ICttYXRjaFsxXSB9KSxcbiAgICAobWF0Y2gsIG5vZGUpID0+IG5vZGUuY2hpbGRDb3VudCArIG5vZGUuYXR0cnMub3JkZXIgPT09ICttYXRjaFsxXVxuICApO1xufTtcblxuLy8gOiAoTm9kZVR5cGUpIOKGkiBJbnB1dFJ1bGVcbi8vIEdpdmVuIGEgbGlzdCBub2RlIHR5cGUsIHJldHVybnMgYW4gaW5wdXQgcnVsZSB0aGF0IHR1cm5zIGEgYnVsbGV0XG4vLyAoZGFzaCwgcGx1c2gsIG9yIGFzdGVyaXNrKSBhdCB0aGUgc3RhcnQgb2YgYSB0ZXh0YmxvY2sgaW50byBhXG4vLyBidWxsZXQgbGlzdC5cbmNvbnN0IGJ1bGxldExpc3RSdWxlID0gKG5vZGVUeXBlOiBOb2RlVHlwZSk6IElucHV0UnVsZSA9PiB7XG4gIHJldHVybiB3cmFwcGluZ0lucHV0UnVsZSgvXlxccyooWy0rKl0pXFxzJC8sIG5vZGVUeXBlKTtcbn07XG5cbi8vIDogKE5vZGVUeXBlKSDihpIgSW5wdXRSdWxlXG4vLyBHaXZlbiBhIGNvZGUgYmxvY2sgbm9kZSB0eXBlLCByZXR1cm5zIGFuIGlucHV0IHJ1bGUgdGhhdCB0dXJucyBhXG4vLyB0ZXh0YmxvY2sgc3RhcnRpbmcgd2l0aCB0aHJlZSBiYWNrdGlja3MgaW50byBhIGNvZGUgYmxvY2suXG5jb25zdCBjb2RlQmxvY2tSdWxlID0gKG5vZGVUeXBlOiBOb2RlVHlwZSk6IElucHV0UnVsZSA9PiB7XG4gIHJldHVybiB0ZXh0YmxvY2tUeXBlSW5wdXRSdWxlKC9eYGBgJC8sIG5vZGVUeXBlKTtcbn07XG5cbi8vIDogKE5vZGVUeXBlLCBudW1iZXIpIOKGkiBJbnB1dFJ1bGVcbi8vIEdpdmVuIGEgbm9kZSB0eXBlIGFuZCBhIG1heGltdW0gbGV2ZWwsIGNyZWF0ZXMgYW4gaW5wdXQgcnVsZSB0aGF0XG4vLyB0dXJucyB1cCB0byB0aGF0IG51bWJlciBvZiBgI2AgY2hhcmFjdGVycyBmb2xsb3dlZCBieSBhIHNwYWNlIGF0XG4vLyB0aGUgc3RhcnQgb2YgYSB0ZXh0YmxvY2sgaW50byBhIGhlYWRpbmcgd2hvc2UgbGV2ZWwgY29ycmVzcG9uZHMgdG9cbi8vIHRoZSBudW1iZXIgb2YgYCNgIHNpZ25zLlxuY29uc3QgaGVhZGluZ1J1bGUgPSAobm9kZVR5cGU6IE5vZGVUeXBlLCBtYXhMZXZlbDogbnVtYmVyKTogSW5wdXRSdWxlID0+IHtcbiAgcmV0dXJuIHRleHRibG9ja1R5cGVJbnB1dFJ1bGUoXG4gICAgbmV3IFJlZ0V4cCgnXigjezEsJyArIG1heExldmVsICsgJ30pXFxcXHMkJyksXG4gICAgbm9kZVR5cGUsXG4gICAgKG1hdGNoKSA9PiAoeyBsZXZlbDogbWF0Y2hbMV0ubGVuZ3RoIH0pXG4gICk7XG59O1xuXG4vLyA6IChTY2hlbWEpIOKGkiBQbHVnaW5cbi8vIEEgc2V0IG9mIGlucHV0IHJ1bGVzIGZvciBjcmVhdGluZyB0aGUgYmFzaWMgYmxvY2sgcXVvdGVzLCBsaXN0cyxcbi8vIGNvZGUgYmxvY2tzLCBhbmQgaGVhZGluZy5cbmNvbnN0IGJ1aWxkSW5wdXRSdWxlcyA9IChzY2hlbWE6IFNjaGVtYSk6IFBsdWdpbiA9PiB7XG4gIGNvbnN0IHJ1bGVzID0gc21hcnRRdW90ZXMuY29uY2F0KGVsbGlwc2lzLCBlbURhc2gpO1xuXG4gIHJ1bGVzLnB1c2goYmxvY2tRdW90ZVJ1bGUoc2NoZW1hLm5vZGVzLmJsb2NrcXVvdGUpKTtcbiAgcnVsZXMucHVzaChvcmRlcmVkTGlzdFJ1bGUoc2NoZW1hLm5vZGVzLm9yZGVyZWRfbGlzdCkpO1xuICBydWxlcy5wdXNoKGJ1bGxldExpc3RSdWxlKHNjaGVtYS5ub2Rlcy5idWxsZXRfbGlzdCkpO1xuICBydWxlcy5wdXNoKGNvZGVCbG9ja1J1bGUoc2NoZW1hLm5vZGVzLmNvZGVfYmxvY2spKTtcbiAgcnVsZXMucHVzaChoZWFkaW5nUnVsZShzY2hlbWEubm9kZXMuaGVhZGluZywgNikpO1xuXG4gIHJldHVybiBpbnB1dFJ1bGVzKHsgcnVsZXMgfSk7XG59O1xuXG5jb25zdCBnZXRLZXlib2FyZFNob3J0Y3V0cyA9IChzY2hlbWE6IFNjaGVtYSwgb3B0aW9uczogU2hvcnRjdXRPcHRpb25zKSA9PiB7XG4gIGNvbnN0IGhpc3RvcnlLZXlNYXA6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblxuICBoaXN0b3J5S2V5TWFwWydNb2QteiddID0gdW5kbztcbiAgaWYgKGlzTWFjT3MpIHtcbiAgICBoaXN0b3J5S2V5TWFwWydTaGlmdC1Nb2QteiddID0gcmVkbztcbiAgfSBlbHNlIHtcbiAgICBoaXN0b3J5S2V5TWFwWydNb2QteSddID0gcmVkbztcbiAgfVxuXG4gIGNvbnN0IHBsdWdpbnMgPSBbXG4gICAga2V5bWFwKHtcbiAgICAgICdNb2QtYic6IHRvZ2dsZU1hcmsoc2NoZW1hLm1hcmtzLnN0cm9uZyksXG4gICAgICAnTW9kLWknOiB0b2dnbGVNYXJrKHNjaGVtYS5tYXJrcy5lbSksXG4gICAgICAnTW9kLWAnOiB0b2dnbGVNYXJrKHNjaGVtYS5tYXJrcy5jb2RlKSxcbiAgICB9KSxcbiAgICBrZXltYXAoe1xuICAgICAgRW50ZXI6IHNwbGl0TGlzdEl0ZW0oc2NoZW1hLm5vZGVzLmxpc3RfaXRlbSksXG4gICAgICAnU2hpZnQtRW50ZXInOiBjaGFpbkNvbW1hbmRzKGV4aXRDb2RlLCAoc3RhdGUsIGRpc3BhdGNoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRyID0gc3RhdGUudHI7XG4gICAgICAgIGNvbnN0IGJyID0gc2NoZW1hLm5vZGVzLmhhcmRfYnJlYWs7XG4gICAgICAgIGRpc3BhdGNoKHRyLnJlcGxhY2VTZWxlY3Rpb25XaXRoKGJyLmNyZWF0ZSgpKS5zY3JvbGxJbnRvVmlldygpKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9KSxcbiAgICAgICdNb2QtWyc6IGxpZnRMaXN0SXRlbShzY2hlbWEubm9kZXMubGlzdF9pdGVtKSxcbiAgICAgICdNb2QtXSc6IHNpbmtMaXN0SXRlbShzY2hlbWEubm9kZXMubGlzdF9pdGVtKSxcbiAgICAgIFRhYjogc2lua0xpc3RJdGVtKHNjaGVtYS5ub2Rlcy5saXN0X2l0ZW0pXG4gICAgfSksXG4gICAga2V5bWFwKGJhc2VLZXltYXApXG4gIF07XG5cbiAgaWYgKG9wdGlvbnMuaGlzdG9yeSkge1xuICAgIHBsdWdpbnMucHVzaChrZXltYXAoaGlzdG9yeUtleU1hcCkpO1xuICB9XG5cbiAgcmV0dXJuIHBsdWdpbnM7XG59O1xuXG5jb25zdCBnZXREZWZhdWx0UGx1Z2lucyA9IChzY2hlbWE6IFNjaGVtYSwgb3B0aW9uczogT3B0aW9ucyk6IFBsdWdpbltdID0+IHtcbiAgY29uc3QgcGx1Z2luczogUGx1Z2luW10gPSBbXTtcblxuICBpZiAob3B0aW9ucy5rZXlib2FyZFNob3J0Y3V0cykge1xuICAgIHBsdWdpbnMucHVzaCguLi5nZXRLZXlib2FyZFNob3J0Y3V0cyhzY2hlbWEsIHsgaGlzdG9yeTogb3B0aW9ucy5oaXN0b3J5IH0pKTtcbiAgfVxuXG4gIGlmIChvcHRpb25zLmhpc3RvcnkpIHtcbiAgICBwbHVnaW5zLnB1c2goaGlzdG9yeSgpKTtcbiAgfVxuXG4gIGlmIChvcHRpb25zLmlucHV0UnVsZXMpIHtcbiAgICBwbHVnaW5zLnB1c2goYnVpbGRJbnB1dFJ1bGVzKHNjaGVtYSkpO1xuICB9XG5cbiAgcmV0dXJuIHBsdWdpbnM7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnZXREZWZhdWx0UGx1Z2lucztcbiJdfQ==

@@ -37,19 +37,2 @@ import { EditorState } from 'prosemirror-state';

}
setContent(content) {
if (isNil(content)) {
return;
}
const { state } = this.view;
const { tr, doc } = state;
const newDoc = parseContent(content, this.schema);
tr.replaceWith(0, state.doc.content.size, newDoc);
// don't emit if both content is same
if (doc.eq(tr.doc)) {
return;
}
if (!tr.docChanged) {
return;
}
this.view.dispatch(tr);
}
handleTransactions(tr) {

@@ -88,2 +71,19 @@ const state = this.view.state.apply(tr);

}
setContent(content) {
if (isNil(content)) {
return;
}
const { state } = this.view;
const { tr, doc } = state;
const newDoc = parseContent(content, this.schema);
tr.replaceWith(0, state.doc.content.size, newDoc);
// don't emit if both content is same
if (doc.eq(tr.doc)) {
return;
}
if (!tr.docChanged) {
return;
}
this.view.dispatch(tr);
}
registerPlugin(plugin) {

@@ -100,2 +100,2 @@ const { state } = this.view;

export default Editor;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWVkaXRvci9zcmMvbGliL0VkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUF1QixNQUFNLG1CQUFtQixDQUFDO0FBQ3JFLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV6QyxPQUFPLGNBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLGFBQWEsTUFBTSxVQUFVLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLGlCQUFpQixNQUFNLGtCQUFrQixDQUFDO0FBZWpELE1BQU0sZUFBZSxHQUFZO0lBQy9CLE9BQU8sRUFBRSxJQUFJO0lBQ2IsT0FBTyxFQUFFLElBQUk7SUFDYixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE1BQU0sRUFBRSxhQUFhO0lBQ3JCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsU0FBUyxFQUFFLEVBQUU7Q0FDZCxDQUFDO0FBRUYsTUFBTSxNQUFNO0lBSVYsWUFBWSxVQUFtQixlQUFlO1FBS3RDLHdCQUFtQixHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDN0Msa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBTGhELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsZUFBZSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBS0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENB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QU8sRUFBRzthQUMzQyxDQUFDO1lBQ0YsU0FBUztZQUNULG1CQUFtQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3hELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYztRQUMzQixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM1QixNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUzQyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBRUQsZUFBZSxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY2hlbWEgfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5pbXBvcnQgeyBFZGl0b3JTdGF0ZSwgUGx1Z2luLCBUcmFuc2FjdGlvbiB9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7IEVkaXRvclByb3BzLCBFZGl0b3JWaWV3IH0gZnJvbSAncHJvc2VtaXJyb3Itdmlldyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGlzTmlsIH0gZnJvbSAnbmd4LWVkaXRvci91dGlscyc7XG5cbmltcG9ydCBFZGl0b3JDb21tYW5kcyBmcm9tICcuL0VkaXRvckNvbW1hbmRzJztcbmltcG9ydCBkZWZhdXRsU2NoZW1hIGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB7IHBhcnNlQ29udGVudCB9IGZyb20gJy4vcGFyc2Vycyc7XG5pbXBvcnQgZ2V0RGVmYXVsdFBsdWdpbnMgZnJvbSAnLi9kZWZhdWx0UGx1Z2lucyc7XG5cbnR5cGUgSlNPTkRvYyA9IFJlY29yZDxzdHJpbmcsIGFueT47XG50eXBlIENvbnRlbnQgPSBzdHJpbmcgfCBudWxsIHwgSlNPTkRvYztcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBjb250ZW50PzogQ29udGVudDtcbiAgaGlzdG9yeT86IGJvb2xlYW47XG4gIGtleWJvYXJkU2hvcnRjdXRzPzogYm9vbGVhbjtcbiAgaW5wdXRSdWxlcz86IGJvb2xlYW47XG4gIHNjaGVtYT86IFNjaGVtYTtcbiAgcGx1Z2lucz86IFBsdWdpbltdO1xuICBub2RlVmlld3M/OiBFZGl0b3JQcm9wc1snbm9kZVZpZXdzJ107XG59XG5cbmNvbnN0IERFRkFVTFRfT1BUSU9OUzogT3B0aW9ucyA9IHtcbiAgY29udGVudDogbnVsbCxcbiAgaGlzdG9yeTogdHJ1ZSxcbiAga2V5Ym9hcmRTaG9ydGN1dHM6IHRydWUsXG4gIGlucHV0UnVsZXM6IHRydWUsXG4gIHNjaGVtYTogZGVmYXV0bFNjaGVtYSxcbiAgcGx1Z2luczogW10sXG4gIG5vZGVWaWV3czoge31cbn07XG5cbmNsYXNzIEVkaXRvciB7XG4gIHByaXZhdGUgb3B0aW9uczogT3B0aW9ucztcbiAgdmlldzogRWRpdG9yVmlldztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBPcHRpb25zID0gREVGQVVMVF9PUFRJT05TKSB7XG4gICAgdGhpcy5vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9PUFRJT05TLCBvcHRpb25zKTtcbiAgICB0aGlzLmNyZWF0ZUVkaXRvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWx1ZUNoYW5nZXNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8SlNPTkRvYz4oKTtcbiAgcHJpdmF0ZSB1cGRhdGVTdWJqZWN0ID0gbmV3IFN1YmplY3Q8RWRpdG9yVmlldz4oKTtcblxuICBnZXQgdmFsdWVDaGFuZ2VzKCk6IE9ic2VydmFibGU8SlNPTkRvYz4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgdXBkYXRlKCk6IE9ic2VydmFibGU8RWRpdG9yVmlldz4ge1xuICAgIHJldHVybiB0aGlzLnVwZGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgc2NoZW1hKCk6IFNjaGVtYSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5zY2hlbWEgfHwgZGVmYXV0bFNjaGVtYTtcbiAgfVxuXG4gIGdldCBjb21tYW5kcygpOiBFZGl0b3JDb21tYW5kcyB7XG4gICAgcmV0dXJuIG5ldyBFZGl0b3JDb21tYW5kcyh0aGlzLnZpZXcpO1xuICB9XG5cbiAgc2V0Q29udGVudChjb250ZW50OiBDb250ZW50KTogdm9pZCB7XG4gICAgaWYgKGlzTmlsKGNvbnRlbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgeyBzdGF0ZSB9ID0gdGhpcy52aWV3O1xuICAgIGNvbnN0IHsgdHIsIGRvYyB9ID0gc3RhdGU7XG5cbiAgICBjb25zdCBuZXdEb2MgPSBwYXJzZUNvbnRlbnQoY29udGVudCwgdGhpcy5zY2hlbWEpO1xuXG4gICAgdHIucmVwbGFjZVdpdGgoMCwgc3RhdGUuZG9jLmNvbnRlbnQuc2l6ZSwgbmV3RG9jKTtcblxuICAgIC8vIGRvbid0IGVtaXQgaWYgYm90aCBjb250ZW50IGlzIHNhbWVcbiAgICBpZiAoZG9jLmVxKHRyLmRvYykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRyLmRvY0NoYW5nZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnZpZXcuZGlzcGF0Y2godHIpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVUcmFuc2FjdGlvbnModHI6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLnZpZXcuc3RhdGUuYXBwbHkodHIpO1xuICAgIHRoaXMudmlldy51cGRhdGVTdGF0ZShzdGF0ZSk7XG5cbiAgICB0aGlzLnVwZGF0ZVN1YmplY3QubmV4dCh0aGlzLnZpZXcpO1xuXG4gICAgaWYgKCF0ci5kb2NDaGFuZ2VkICYmICF0ci5nZXRNZXRhKCdGT1JDRV9FTUlUJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBqc29uID0gc3RhdGUuZG9jLnRvSlNPTigpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzU3ViamVjdC5uZXh0KGpzb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVFZGl0b3IoKTogdm9pZCB7XG4gICAgY29uc3QgeyBvcHRpb25zIH0gPSB0aGlzO1xuICAgIGNvbnN0IHsgY29udGVudCA9IG51bGwsIG5vZGVWaWV3cyB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IGhpc3RvcnkgPSB0cnVlLCBrZXlib2FyZFNob3J0Y3V0cyA9IHRydWUsIGlucHV0UnVsZXMgPSB0cnVlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHNjaGVtYSA9IHRoaXMuc2NoZW1hO1xuXG4gICAgY29uc3QgZG9jID0gcGFyc2VDb250ZW50KGNvbnRlbnQsIHNjaGVtYSk7XG5cbiAgICBjb25zdCBwbHVnaW5zOiBQbHVnaW5bXSA9IG9wdGlvbnMucGx1Z2lucyA/PyBbXTtcblxuICAgIGNvbnN0IGRlZmF1bHRQbHVnaW5zID0gZ2V0RGVmYXVsdFBsdWdpbnMoc2NoZW1hLCB7XG4gICAgICBoaXN0b3J5LFxuICAgICAga2V5Ym9hcmRTaG9ydGN1dHMsXG4gICAgICBpbnB1dFJ1bGVzXG4gICAgfSk7XG5cbiAgICB0aGlzLnZpZXcgPSBuZXcgRWRpdG9yVmlldyhudWxsLCB7XG4gICAgICBzdGF0ZTogRWRpdG9yU3RhdGUuY3JlYXRlKHtcbiAgICAgICAgZG9jLFxuICAgICAgICBzY2hlbWEsXG4gICAgICAgIHBsdWdpbnM6IFsuLi5kZWZhdWx0UGx1Z2lucywgLi4ucGx1Z2lucywgXSxcbiAgICAgIH0pLFxuICAgICAgbm9kZVZpZXdzLFxuICAgICAgZGlzcGF0Y2hUcmFuc2FjdGlvbjogdGhpcy5oYW5kbGVUcmFuc2FjdGlvbnMuYmluZCh0aGlzKVxuICAgIH0pO1xuICB9XG5cbiAgcmVnaXN0ZXJQbHVnaW4ocGx1Z2luOiBQbHVnaW4pOiB2b2lkIHtcbiAgICBjb25zdCB7IHN0YXRlIH0gPSB0aGlzLnZpZXc7XG4gICAgY29uc3QgcGx1Z2lucyA9IFsuLi5zdGF0ZS5wbHVnaW5zLCBwbHVnaW5dO1xuXG4gICAgY29uc3QgbmV3U3RhdGUgPSBzdGF0ZS5yZWNvbmZpZ3VyZSh7IHBsdWdpbnMgfSk7XG4gICAgdGhpcy52aWV3LnVwZGF0ZVN0YXRlKG5ld1N0YXRlKTtcbiAgfVxuXG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy52aWV3LmRlc3Ryb3koKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBFZGl0b3I7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWVkaXRvci9zcmMvbGliL0VkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUF1QixNQUFNLG1CQUFtQixDQUFDO0FBQ3JFLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV6QyxPQUFPLGNBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLGFBQWEsTUFBTSxVQUFVLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLGlCQUFpQixNQUFNLGtCQUFrQixDQUFDO0FBZWpELE1BQU0sZUFBZSxHQUFZO0lBQy9CLE9BQU8sRUFBRSxJQUFJO0lBQ2IsT0FBTyxFQUFFLElBQUk7SUFDYixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE1BQU0sRUFBRSxhQUFhO0lBQ3JCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsU0FBUyxFQUFFLEVBQUU7Q0FDZCxDQUFDO0FBRUYsTUFBTSxNQUFNO0lBSVYsWUFBWSxVQUFtQixlQUFlO1FBS3RDLHdCQUFtQixHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDN0Msa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBTGhELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsZUFBZSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBS0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENB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UjtRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFO1lBQ2xCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYztRQUMzQixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM1QixNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUzQyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBRUQsZUFBZSxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY2hlbWEgfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5pbXBvcnQgeyBFZGl0b3JTdGF0ZSwgUGx1Z2luLCBUcmFuc2FjdGlvbiB9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7IEVkaXRvclByb3BzLCBFZGl0b3JWaWV3IH0gZnJvbSAncHJvc2VtaXJyb3Itdmlldyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGlzTmlsIH0gZnJvbSAnbmd4LWVkaXRvci91dGlscyc7XG5cbmltcG9ydCBFZGl0b3JDb21tYW5kcyBmcm9tICcuL0VkaXRvckNvbW1hbmRzJztcbmltcG9ydCBkZWZhdXRsU2NoZW1hIGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB7IHBhcnNlQ29udGVudCB9IGZyb20gJy4vcGFyc2Vycyc7XG5pbXBvcnQgZ2V0RGVmYXVsdFBsdWdpbnMgZnJvbSAnLi9kZWZhdWx0UGx1Z2lucyc7XG5cbnR5cGUgSlNPTkRvYyA9IFJlY29yZDxzdHJpbmcsIGFueT47XG50eXBlIENvbnRlbnQgPSBzdHJpbmcgfCBudWxsIHwgSlNPTkRvYztcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBjb250ZW50PzogQ29udGVudDtcbiAgaGlzdG9yeT86IGJvb2xlYW47XG4gIGtleWJvYXJkU2hvcnRjdXRzPzogYm9vbGVhbjtcbiAgaW5wdXRSdWxlcz86IGJvb2xlYW47XG4gIHNjaGVtYT86IFNjaGVtYTtcbiAgcGx1Z2lucz86IFBsdWdpbltdO1xuICBub2RlVmlld3M/OiBFZGl0b3JQcm9wc1snbm9kZVZpZXdzJ107XG59XG5cbmNvbnN0IERFRkFVTFRfT1BUSU9OUzogT3B0aW9ucyA9IHtcbiAgY29udGVudDogbnVsbCxcbiAgaGlzdG9yeTogdHJ1ZSxcbiAga2V5Ym9hcmRTaG9ydGN1dHM6IHRydWUsXG4gIGlucHV0UnVsZXM6IHRydWUsXG4gIHNjaGVtYTogZGVmYXV0bFNjaGVtYSxcbiAgcGx1Z2luczogW10sXG4gIG5vZGVWaWV3czoge31cbn07XG5cbmNsYXNzIEVkaXRvciB7XG4gIHByaXZhdGUgb3B0aW9uczogT3B0aW9ucztcbiAgdmlldzogRWRpdG9yVmlldztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBPcHRpb25zID0gREVGQVVMVF9PUFRJT05TKSB7XG4gICAgdGhpcy5vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9PUFRJT05TLCBvcHRpb25zKTtcbiAgICB0aGlzLmNyZWF0ZUVkaXRvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWx1ZUNoYW5nZXNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8SlNPTkRvYz4oKTtcbiAgcHJpdmF0ZSB1cGRhdGVTdWJqZWN0ID0gbmV3IFN1YmplY3Q8RWRpdG9yVmlldz4oKTtcblxuICBnZXQgdmFsdWVDaGFuZ2VzKCk6IE9ic2VydmFibGU8SlNPTkRvYz4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgdXBkYXRlKCk6IE9ic2VydmFibGU8RWRpdG9yVmlldz4ge1xuICAgIHJldHVybiB0aGlzLnVwZGF0ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgc2NoZW1hKCk6IFNjaGVtYSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5zY2hlbWEgfHwgZGVmYXV0bFNjaGVtYTtcbiAgfVxuXG4gIGdldCBjb21tYW5kcygpOiBFZGl0b3JDb21tYW5kcyB7XG4gICAgcmV0dXJuIG5ldyBFZGl0b3JDb21tYW5kcyh0aGlzLnZpZXcpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVUcmFuc2FjdGlvbnModHI6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLnZpZXcuc3RhdGUuYXBwbHkodHIpO1xuICAgIHRoaXMudmlldy51cGRhdGVTdGF0ZShzdGF0ZSk7XG5cbiAgICB0aGlzLnVwZGF0ZVN1YmplY3QubmV4dCh0aGlzLnZpZXcpO1xuXG4gICAgaWYgKCF0ci5kb2NDaGFuZ2VkICYmICF0ci5nZXRNZXRhKCdGT1JDRV9FTUlUJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBqc29uID0gc3RhdGUuZG9jLnRvSlNPTigpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzU3ViamVjdC5uZXh0KGpzb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVFZGl0b3IoKTogdm9pZCB7XG4gICAgY29uc3QgeyBvcHRpb25zIH0gPSB0aGlzO1xuICAgIGNvbnN0IHsgY29udGVudCA9IG51bGwsIG5vZGVWaWV3cyB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IGhpc3RvcnkgPSB0cnVlLCBrZXlib2FyZFNob3J0Y3V0cyA9IHRydWUsIGlucHV0UnVsZXMgPSB0cnVlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHNjaGVtYSA9IHRoaXMuc2NoZW1hO1xuXG4gICAgY29uc3QgZG9jID0gcGFyc2VDb250ZW50KGNvbnRlbnQsIHNjaGVtYSk7XG5cbiAgICBjb25zdCBwbHVnaW5zOiBQbHVnaW5bXSA9IG9wdGlvbnMucGx1Z2lucyA/PyBbXTtcblxuICAgIGNvbnN0IGRlZmF1bHRQbHVnaW5zID0gZ2V0RGVmYXVsdFBsdWdpbnMoc2NoZW1hLCB7XG4gICAgICBoaXN0b3J5LFxuICAgICAga2V5Ym9hcmRTaG9ydGN1dHMsXG4gICAgICBpbnB1dFJ1bGVzXG4gICAgfSk7XG5cbiAgICB0aGlzLnZpZXcgPSBuZXcgRWRpdG9yVmlldyhudWxsLCB7XG4gICAgICBzdGF0ZTogRWRpdG9yU3RhdGUuY3JlYXRlKHtcbiAgICAgICAgZG9jLFxuICAgICAgICBzY2hlbWEsXG4gICAgICAgIHBsdWdpbnM6IFsuLi5kZWZhdWx0UGx1Z2lucywgLi4ucGx1Z2lucywgXSxcbiAgICAgIH0pLFxuICAgICAgbm9kZVZpZXdzLFxuICAgICAgZGlzcGF0Y2hUcmFuc2FjdGlvbjogdGhpcy5oYW5kbGVUcmFuc2FjdGlvbnMuYmluZCh0aGlzKVxuICAgIH0pO1xuICB9XG5cbiAgc2V0Q29udGVudChjb250ZW50OiBDb250ZW50KTogdm9pZCB7XG4gICAgaWYgKGlzTmlsKGNvbnRlbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgeyBzdGF0ZSB9ID0gdGhpcy52aWV3O1xuICAgIGNvbnN0IHsgdHIsIGRvYyB9ID0gc3RhdGU7XG5cbiAgICBjb25zdCBuZXdEb2MgPSBwYXJzZUNvbnRlbnQoY29udGVudCwgdGhpcy5zY2hlbWEpO1xuXG4gICAgdHIucmVwbGFjZVdpdGgoMCwgc3RhdGUuZG9jLmNvbnRlbnQuc2l6ZSwgbmV3RG9jKTtcblxuICAgIC8vIGRvbid0IGVtaXQgaWYgYm90aCBjb250ZW50IGlzIHNhbWVcbiAgICBpZiAoZG9jLmVxKHRyLmRvYykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRyLmRvY0NoYW5nZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnZpZXcuZGlzcGF0Y2godHIpO1xuICB9XG5cbiAgcmVnaXN0ZXJQbHVnaW4ocGx1Z2luOiBQbHVnaW4pOiB2b2lkIHtcbiAgICBjb25zdCB7IHN0YXRlIH0gPSB0aGlzLnZpZXc7XG4gICAgY29uc3QgcGx1Z2lucyA9IFsuLi5zdGF0ZS5wbHVnaW5zLCBwbHVnaW5dO1xuXG4gICAgY29uc3QgbmV3U3RhdGUgPSBzdGF0ZS5yZWNvbmZpZ3VyZSh7IHBsdWdpbnMgfSk7XG4gICAgdGhpcy52aWV3LnVwZGF0ZVN0YXRlKG5ld1N0YXRlKTtcbiAgfVxuXG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy52aWV3LmRlc3Ryb3koKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBFZGl0b3I7XG4iXX0=

@@ -27,5 +27,5 @@ import { Schema } from 'prosemirror-model';

get commands(): EditorCommands;
setContent(content: Content): void;
private handleTransactions;
private createEditor;
setContent(content: Content): void;
registerPlugin(plugin: Plugin): void;

@@ -32,0 +32,0 @@ destroy(): void;

{
"name": "ngx-editor",
"version": "9.0.0",
"version": "9.0.1",
"description": "Rich Text Editor for angular using ProseMirror",

@@ -5,0 +5,0 @@ "license": "MIT",

@@ -84,3 +84,3 @@ # NgxEditor

[ngModel]="html"
[editable]="true"
[disabled]="false"
[placeholder]="'Type here...'"

@@ -87,0 +87,0 @@ ></ngx-editor>

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc