1"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[6156],{60338:(q,P,c)=>{c.d(P,{W:()=>S});var i=c(91368),f=c(83068),M=c(44716),_=c(79992),E=c(32116);let S=(()=>{class w{static \u0275fac=function(e){return new(e||w)};static \u0275mod=E.a4G({type:w});static \u0275inj=E.s3X({imports:[i.MD,f.wZ,M.y,_.Y1]})}return w})()},26156:(q,P,c)=>{c.r(P),c.d(P,{MsgTemplateModule:()=>x});var i=c(91368),f=c(83068),M=c(89192),_=c(44716),E=c(55988),S=c(48396),w=c(87560),G=c(60338),y=c(73448),e=c(32116),N=c(2132),v=c(77816),W=c(87264),U=c(94292),D=c(36032),$=c(45552);function z(p,r){1&p&&e.wR5(0,"ion-spinner")}function Y(p,r){if(1&p&&(e.I0R(0,"option",43),e.OEk(1),e.C$Y()),2&p){const n=r.$implicit;e._6D("value",n.id),e.yG2(),e.oRS(" ",n.name," ")}}function K(p,r){if(1&p){const n=e.KQA();e.I0R(0,"select",40),e.iHE("ngModelChange",function(l){e.usT(n);const h=e.GaO();return e.kNx(h.selectedTemplate,l)||(h.selectedTemplate=l),e.CGJ(l)}),e.qCj("change",function(){e.usT(n);const l=e.GaO();return e.CGJ(l.chooseTemplate())}),e.I0R(1,"option",41),e.OEk(2,"New Template"),e.C$Y(),e.yuY(3,Y,2,2,"option",42),e.C$Y()}if(2&p){const n=e.GaO();e.OKB("ngModel",n.selectedTemplate),e.yG2(3),e.E7m("ngForOf",n.userProvider.myTemplates)}}function j(p,r){if(1&p){const n=e.KQA();e.I0R(0,"div",33)(1,"div",34)(2,"div",44)(3,"ion-icon",45),e.qCj("click",function(){const h=e.usT(n).index,u=e.GaO();return e.CGJ(u.deleteImage(h))}),e.C$Y()()(),e.I0R(4,"p"),e.OEk(5),e.C$Y()()}if(2&p){const n=r.$implicit;e.yG2(5),e.cNF(n.name)}}function I(p,r){1&p&&e.wR5(0,"ion-icon",46)}function R(p,r){if(1&p){const n=e.KQA();e.I0R(0,"input",47,48),e.qCj("change",function(l){e.usT(n);const h=e.GaO();return e.CGJ(h.onFileAdd(l))}),e.C$Y()}}function L(p,r){1&p&&e.wR5(0,"ion-spinner")}function H(p,r){1&p&&(e.I0R(0,"span"),e.OEk(1,"Save Template"),e.C$Y())}function b(p,r){1&p&&e.wR5(0,"ion-spinner")}function k(p,r){1&p&&(e.I0R(0,"div",49),e.OEk(1," Template Saved "),e.C$Y())}const V=()=>({height:500}),B=[{path:"",component:(()=>{class p{util;userProvider;firebaseApi;modalCtrl;photoService;editorModel;_editorModel;proposal;templateName="";defaultTemplate=!1;templates=[];editTemp=!1;selectedTemplate="";templateFiles=[];savingTemplate=!1;uploadingFile=!1;_spinner=!1;_templ_saved=!1;constructor(n,o,l,h,u){this.util=n,this.userProvider=o,this.firebaseApi=l,this.modalCtrl=h,this.photoService=u}
1ngOnInit(){var n=this;return(0,y.c)(function*(){n.init()})()}init(){var n=this;return(0,y.c)(function*(){n.editorModel="",n._editorModel="",n.templateName="",n.defaultTemplate=!1;try{n._spinner=!0,n.userProvider.myTemplates=yield n.firebaseApi.findAll("templates",o=>o.where("vendorId","==",n.userProvider.loggedInUser.id).orderBy("createdAt","desc"))}catch(o){n._spinner=!1,console.log("err =->",o)}finally{n._spinner=!1}})()}chooseTemplate(){this._templ_saved=!1,console.log("selected template ->",this.selectedTemplate);const n=this.userProvider.myTemplates.find(o=>o.id===this.selectedTemplate);this.editorModel=n?.message?n.message:"",this._editorModel=this.cleanMesage(this.editorModel),this.templateFiles=n?.templateFiles?n?.templateFiles:[],this.templateName=n?.name,this.defaultTemplate=n?.defaultTemplate}onFileAdd(n){var o=this;return(0,y.c)(function*(){const l=n.target.files[0];try{o.uploadingFile=!0,yield o.uploadDocAWS(l)}catch{o.util.createErrorAlert(null,"Could not upload file")}finally{o.uploadingFile=!1}})()}uploadDocAWS(n){var o=this;return(0,y.c)(function*(){try{const l=new FormData;l.append("fi",n);const u=(yield o.photoService.uploadPhotoToS3(l)).Location;o.templateFiles.push({name:n.name,url:u,createdAt:new Date})}catch{o.util.createErrorAlert(null,"Error uploading file")}})()}addFile(){}deleteImage(n){var o=this;return(0,y.c)(function*(){try{o.templateFiles.splice(n,1)}catch{o.util.createErrorAlert(null,"Could not delete doc")}})()}saveTemplate(){var n=this;return(0,y.c)(function*(){let o={};if(console.log("saving templ ->",n.defaultTemplate,n.userProvider.myTemplates),n.defaultTemplate&&n.userProvider.myTemplates&&n.userProvider.myTemplates.length>0&&(o=n.userProvider.myTemplates.find(l=>l.defaultTemplate)),o&&o.id&&(o.defaultTemplate=!1,yield n.firebaseApi.updateOne("templates",o.id,o)),n.editorModel&&n.templateName)try{if(n.savingTemplate=!0,n.selectedTemplate)yield n.firebaseApi.updateOne("templates",n.selectedTemplate,{message:n.editorModel,name:n.templateName,templateFiles:n.templateFiles,defaultTemplate:!!n.defaultTemplate}),n._templ_saved=!0,n.init();else{const l={vendorId:n.userProvider.loggedInUser.id,name:n.templateName,message:n.editorModel,templateFiles:n.templateFiles,defaultTemplate:!!n.defaultTemplate};yield n.firebaseApi.insertOne("templates",l),n._templ_saved=!0,n.init()}n.userProvider.myTemplates=yield n.firebaseApi.findAll("templates",l=>l.where("vendorId","==",n.userProvider.loggedInUser.id).orderBy("createdAt","desc")),n._editorModel=n.cleanMesage(n.editorModel)}catch{n.util.createErrorAlert(null,"Could not save template")}finally{n.savingTemplate=!1}else n.util.createErrorAlert(null,"Please check your template name & content.")})()}onChangeText(){console.log("..."),this._editorModel=this.cleanMesage(this.editorModel)}cleanMesage(n){if(!n)return;const o=this.userProvider.loggedInUser;return n.replace(/\(f\)/gi,o?.firstName?o.firstName:"").replace(/\(l\)/gi,o?.lastName?o.lastName:"").replace(/\(a\)/gi,o?.address?.line1?o.address.line1:"").replace(/\(c\)/gi,o?.address?.city?o.address.city:"").replace(/\(s\)/gi,o?.address?.state&&o?.address?.zipcode?o.address.state+" "+o.address.zipcode:"").replace(/\(p\)/gi,o?.phoneNumber).replace(/\(e\)/gi,o?.email).replace(/\(c_f\)/gi,"Firstname").replace(/\(c_l\)/gi,"Lastname").replace(/\(c_a\)/gi,"Address").replace(/\(c_c\)/gi,"City").replace(/\(c_s\)/gi,"State-Zip").replace(/\(c_p\)/gi,"Phone").replace(/\(c_e\)/gi,"Email")}static \u0275fac=function(o){return new(o||p)(e.GI1(N.e),e.GI1(v.e),e.GI1(W.H),e.GI1(f.qS),e.GI1(U.s))};static \u0275cmp=e.In1({type:p,selectors:[["app-msg-template"]],decls:131,vars:16,consts:[[1,"body-bg"],[1,"main-div"],[1,"main-section"],[1,"bg-white"],[1,"main-msg"],["sizeLg","2","sizeMd","4","size","7"],["name","name","type","text","placeholder","Template Name","required","","minlength","1",3,"ngModel","ngModelChange"],["name","ngModel"],["sizeLg","9","sizeMd","7","size","2",1,"flex-rowend"],[1,"info-icon-container"],["name","information-circle-outline",1,"info-icon"],[1,"tooltip-content"],[1,"left"],[2,"padding","10px 0"],[1,"center","bold-500"],[1,"margin-top-05"],[1,"f1-0","bold-600"],[2,"padding-top","1rem"],["size","12","sizeMd","6",1,"flex-rowstart"],[1,"flex-rowstart"],[3,"ngModel","ngModelChange"],["size","12","sizeMd","6",1,"flex-rowend"],[4,"ngIf"],[3,"ngModel","ngModelChange","change",4,"ngIf"],["name","subject","type","text","placeholder","Subject","required","","minlength","1",1,"edit-sub"],["size","12","sizeMd","6"],[1,"start","prv-head"],["apiKey","p77xsed1rznknj5kf5my5ur0jh2aqd23x9bl8sns8tui6dc5","name","editorModel",3,"ngModel","init","ngModelChange"],[1,"end","prv-head"],[1,"msg-prev","scroll",3,"innerHTML"],[1,"header-and-action"],["size","12",1,"image-list"],["class","media-item",4,"ngFor","ngForOf"],[1,"media-item"],[1,"media"],[1,"add-icon"],["class","other-icons","name","add","color","primary ","id","addButton",4,"ngIf"],["type","file","accept","image/*, application/msword, text/plain, application/pdf","class","file-upload-input",3,"change",4,"ngIf"],[1,"custom-btn","max-200px","right",3,"disabled","click"],["class","center b-c",4,"ngIf"],[3,"ngModel","ngModelChange","change"],["value",""],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"delete-icon"],["name","trash-outline","color","danger ","id","deleteButton",1,"other-icons",3,"click"],["name","add","color","primary ","id","addButton",1,"other-icons"],["type","file","accept","image/*, application/msword, text/plain, application/pdf",1,"file-upload-input",3,"change"],["filePicker",""],[1,"center","b-c"]],template:function(o,l){1&o&&(e.wR5(0,"app-header"),e.I0R(1,"ion-content",0)(2,"div",1)(3,"div"),e.wR5(4,"app-menu-module"),e.C$Y(),e.I0R(5,"div",2)(6,"ion-grid",3)(7,"section",4)(8,"ion-row")(9,"ion-col",5)(10,"input",6,7),e.iHE("ngModelChange",function(u){return e.kNx(l.templateName,u)||(l.templateName=u),u}),e.C$Y()(),e.I0R(12,"ion-col",8)(13,"div",9),e.wR5(14,"ion-icon",10),e.I0R(15,"div",11)(16,"div",12),e.OEk(17," You may use the following "),e.I0R(18,"strong"),e.OEk(19,"(tags)"),e.C$Y(),e.OEk(20," in your template "),e.C$Y(),e.I0R(21,"section",13)(22,"
1ion-row")(23,"ion-col")(24,"div",14),e.OEk(25," Your Details "),e.C$Y(),e.I0R(26,"div")(27,"ion-row",15)(28,"ion-col")(29,"span",16),e.OEk(30,"(f)"),e.C$Y(),e.OEk(31," : First Name "),e.wR5(32,"br"),e.I0R(33,"span",16),e.OEk(34,"(l)"),e.C$Y(),e.OEk(35," : Last Name "),e.C$Y(),e.I0R(36,"ion-col")(37,"span",16),e.OEk(38,"(a)"),e.C$Y(),e.OEk(39," : Address "),e.wR5(40,"br"),e.I0R(41,"span",16),e.OEk(42,"(c)"),e.C$Y(),e.OEk(43," : City "),e.C$Y(),e.I0R(44,"ion-col")(45,"span",16),e.OEk(46,"(s)"),e.C$Y(),e.OEk(47," : State "),e.wR5(48,"br"),e.I0R(49,"span",16),e.OEk(50,"(p)"),e.C$Y(),e.OEk(51," : Phone # "),e.C$Y(),e.I0R(52,"ion-col")(53,"span",16),e.OEk(54,"(e)"),e.C$Y(),e.OEk(55," : Email "),e.C$Y()()()()(),e.I0R(56,"ion-row")(57,"ion-col")(58,"div",14),e.OEk(59," Client Details "),e.C$Y(),e.I0R(60,"div")(61,"ion-row",15)(62,"ion-col")(63,"span",16),e.OEk(64,"(c_f)"),e.C$Y(),e.OEk(65," : First Name "),e.wR5(66,"br"),e.I0R(67,"span",16),e.OEk(68,"(c_l)"),e.C$Y(),e.OEk(69," : Last Name "),e.C$Y(),e.I0R(70,"ion-col")(71,"span",16),e.OEk(72,"(c_a)"),e.C$Y(),e.OEk(73," : Address "),e.wR5(74,"br"),e.I0R(75,"span",16),e.OEk(76,"(c_c)"),e.C$Y(),e.OEk(77," : City "),e.C$Y(),e.I0R(78,"ion-col")(79,"span",16),e.OEk(80,"(c_s)"),e.C$Y(),e.OEk(81," : State "),e.wR5(82,"br"),e.I0R(83,"span",16),e.OEk(84,"(c_p)"),e.C$Y(),e.OEk(85," : Phone # "),e.C$Y(),e.I0R(86,"ion-col")(87,"span",16),e.OEk(88,"(c_e)"),e.C$Y(),e.OEk(89," : Email "),e.C$Y()()()()()()()()()(),e.I0R(90,"ion-row",17)(91,"ion-col",18)(92,"div",19)(93,"ion-checkbox",20),e.iHE("ngModelChange",function(u){return e.kNx(l.defaultTemplate,u)||(l.defaultTemplate=u),u}),e.C$Y(),e.OEk(94," \xa0 Use as default template "),e.C$Y()(),e.I0R(95,"ion-col",21),e.yuY(96,z,1,0,"ion-spinner",22)(97,K,4,2,"select",23),e.C$Y()(),e.I0R(98,"ion-row")(99,"ion-col")(100,"div"),e.wR5(101,"ion-input",24),e.C$Y()()(),e.I0R(102,"ion-row")(103,"ion-col",25)(104,"div",26),e.OEk(105,"Edit Template"),e.C$Y(),e.I0R(106,"editor",27),e.iHE("ngModelChange",function(u){return e.kNx(l.editorModel,u)||(l.editorModel=u),u}),e.qCj("ngModelChange",function(){return l.onChangeText()}),e.C$Y()(),e.I0R(107,"ion-col",25)(108,"div",28),e.OEk(109,"Template preview"),e.C$Y(),e.wR5(110,"div",29),e.C$Y()(),e.I0R(111,"ion-row")(112,"ion-col")(113,"div",30)(114,"h4"),e.OEk(115,"Add Documents"),e.C$Y()()()(),e.I0R(116,"ion-row",3)(117,"ion-col",31),e.yuY(118,j,6,1,"div",32),e.I0R(119,"div",33)(120,"div",34)(121,"div",35),e.yuY(122,I,1,0,"ion-icon",36),e.C$Y(),e.yuY(123,R,2,0,"input",37)(124,L,1,0,"ion-spinner",22),e.C$Y()()()()(),e.I0R(125,"ion-row")(126,"ion-col")(127,"ion-button",38),e.qCj("click",function(){return l.saveTemplate()}),e.yuY(128,H,2,0,"span",22)(129,b,1,0,"ion-spinner",22),e.C$Y(),e.yuY(130,k,2,0,"div",39),e.C$Y()()()()()()),2&o&&(e.yG2(10),e.OKB("ngModel",l.templateName),e.yG2(83),e.OKB("ngModel",l.defaultTemplate),e.yG2(3),e.E7m("ngIf",l._spinner),e.yG2(),e.E7m("ngIf",!l._spinner),e.yG2(9),e.OKB("ngModel",l.editorModel),e.E7m("init",e.q4q(15,V)),e.yG2(4),e.E7m("innerHTML",l._editorModel,e.E3n),e.yG2(8),e.E7m("ngForOf",l.templateFiles),e.yG2(4),e.E7m("ngIf",!l.uploadingFile),e.yG2(),e.E7m("ngIf",!l.uploadingFile),e.yG2(),e.E7m("ngIf",l.uploadingFile),e.yG2(3),e.E7m("disabled",!l._editorModel||l._editorModel.length<10),e.yG2(),e.E7m("ngIf",!l.savingTemplate),e.yG2(),e.E7m("ngIf",l.savingTemplate),e.yG2(),e.E7m("ngIf",l._templ_saved))},dependencies:[i.ay,i.u_,f.sn,f.ew,f.Kk,f._i,f.YP,f.Ko,f.A5,f.qo,f.YA,f.UJ,f.qG,_.wd,_.GO,_.ot,_.GC,_.ue,_.eJ,_.El,_._G,E.gZ,D.k,$.a],styles:["ion-grid[_ngcontent-%COMP%]{margin:0}.input-container[_ngcontent-%COMP%]{width:160px}.ql-toolbar[_ngcontent-%COMP%]{display:flex;flex-wrap:nowrap;align-items:center}.input-with-actions[_ngcontent-%COMP%]{display:flex;align-items:center;
1min-width:200px}.input-with-actions[_ngcontent-%COMP%] .action[_ngcontent-%COMP%]{margin-left:10px}.input-with-actions[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] ion-icon[_ngcontent-%COMP%]{cursor:pointer}.media[_ngcontent-%COMP%]{width:80px;height:80px;border:2px dashed gray;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.media[_ngcontent-%COMP%] ion-icon[_ngcontent-%COMP%]{font-size:1.5rem}.image-list[_ngcontent-%COMP%]{display:flex}.image-list[_ngcontent-%COMP%] .media-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center}.image-list[_ngcontent-%COMP%] .media-item[_ngcontent-%COMP%] .media[_ngcontent-%COMP%]{margin-right:5px;position:relative}.image-list[_ngcontent-%COMP%] .media-item[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:.6rem;color:gray}.file-upload-input[_ngcontent-%COMP%]{cursor:pointer;position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;z-index:20}quill-editor[_ngcontent-%COMP%]{display:block}.ql-formats[_ngcontent-%COMP%]{display:flex}.custom-btn[_ngcontent-%COMP%]{margin-top:10px}.white-btn[_ngcontent-%COMP%]{background-color:transparent;color:gray;border:2px solid grey}.preview[_ngcontent-%COMP%]{height:233px;padding:0 1rem;font-size:.8rem}.msg-prev[_ngcontent-%COMP%]{background-color:#f4f6f7;border:1px solid rgb(229,227,227);border-radius:6px;padding:1rem;height:500px}select[_ngcontent-%COMP%]{padding:2px;background:#fff;border:2px solid #efefef;border-radius:3px;width:200px;height:40px;color:var(--ion-color-primary)}.main-msg[_ngcontent-%COMP%]{padding:1rem;border-radius:15px;box-shadow:#0000 0 0 2px;border:1px solid #efefef}.main-msg[_ngcontent-%COMP%] ion-row[_ngcontent-%COMP%]:nth-child(1){border-bottom:1px solid #efefef}.prv-head[_ngcontent-%COMP%]{text-align:start;color:#000!important;font-weight:700;font-size:1.4rem;padding:10px}.edit-sub[_ngcontent-%COMP%]{border:1px solid #efefef;border-radius:10px;font-size:1.2rem;padding:10px!important}.info-icon-container[_ngcontent-%COMP%]{position:relative;display:inline-block}.info-icon[_ngcontent-%COMP%]{color:#6863ef;border-radius:50%;padding:5px 8px;font-size:1.5rem;font-weight:700;text-align:center;cursor:pointer}.tooltip-content[_ngcontent-%COMP%]{display:none;position:absolute;top:120%;right:-860%;transform:translate(-50%);border:1px solid #d1d1d1;background-color:#fff;box-shadow:#0000 0 0 2px;padding:10px;border-radius:4px;z-index:1000;width:500px}.info-icon-container[_ngcontent-%COMP%]:hover .tooltip-content[_ngcontent-%COMP%]{display:block}[_nghost-%COMP%] input[_ngcontent-%COMP%]{border-radius:6px;padding:.5rem!important;border:1px solid #d7d7d7}"]})}return p})()}];let Z=(()=>{class p{static \u0275fac=function(o){return new(o||p)};static \u0275mod=e.a4G({type:p});static \u0275inj=e.s3X({imports:[M.qQ.forChild(B),M.qQ]})}return p})(),x=(()=>{class p{static \u0275fac=function(o){return new(o||p)};static \u0275mod=e.a4G({type:p});static \u0275inj=e.s3X({imports:[i.MD,f.wZ,M.qQ,_.y,E.gZ,Z,S.S,w.l,G.W]})}return p})()},55988:(q,P,c)=>{c.d(P,{gZ:()=>x,kV:()=>p});var i=c(32116),f=c(91368),M=c(44716),_=c(70800),E=c(41424),S=c(95657),w=c(53616),G=c(3992),y=c(32700),e=c(8716);function N(r,n){}const v=()=>{const r=typeof window<"u"?window:void 0;return r&&r.tinymce?r.tinymce:null};let W=(()=>{class r{constructor(){this.onBeforePaste=new i._w7,this.onBlur=new i._w7,this.onClick=new i._w7,this.onContextMenu=new i._w7,this.onCopy=new i._w7,this.onCut=new i._w7,this.onDblclick=new i._w7,this.onDrag=new i._w7,this.onDragDrop=new i._w7,this.onDragEnd=new i._w7,this.onDragGesture=new i._w7,this.onDragOver=new i._w7,this.onDrop=new i._w7,this.onFocus=new i._w7,this.onFocusIn=new i._w7,this.onFocusOut=new i._w7,this.onKeyDown=new i._w7,this.onKeyPress=new i._w7,this.onKeyUp=new i._w7,this.onMouseDown=new i._w7,this.onMouseEnter=new i._w7,this.onMouseLeave=new i._w7,this.onMouseMove=new i._w7,this.onMouseOut=new i._w7,this.onMouseOver=new i._w7,this.onMouseUp=new i._w7,this.onPaste=new i._w7,this.onSelectionChange=new i._w7,this.onActivate=new i._w7,this.onAddUndo=new i._w7,this.onBeforeAddUndo=new i._w7,this.onBeforeExecCommand=new i._w7,this.onBeforeGetContent=new i._w7,this.onBeforeRenderUI=new i._w7,this.onBeforeSetContent=new i._w7,this.onChange=new i._w7,this.onClearUndos=new i._w7,this.onDeactivate=new i._w7,this.onDirty=new i._w7,this.onExecCommand=new i._w7,this.onGetContent=new i._w7,this.onHide=new i._w7,this.onInit=new i._w7,this.onInitNgModel=new i._w7,this.onLoadContent=new i._w7,this.onNodeChange=new i._w7,this.onPostProcess=new i._w7,this.onPostRender=new i._w7,this.onPreInit=new i._w7,this.onPreProcess=new i._w7,this.onProgressState=new i._w7,this.onRedo=new i._w7,this.onRemove=new i._w7,this.onReset=new i._w7,this.onResizeEditor=new i._w7,this.onSaveContent=new i._w7,this.onSetAttrib=new i._w7,this.onObjectResizeStart=new i._w7,this.onObjectResized=new i._w7,this.onObjectSelected=new i._w7,this.onSetContent=new i._w7,this.onShow=new i._w7,this.onSubmit=new i._w7,this.onUndo=new i._w7,this.onVisualAid=new i._w7}}return r.\u0275fac=function(o){return new(o||r)},r.\u0275dir=i.Sc5({type:r,outputs:{onBeforePaste:"onBeforePaste",onBlur:"onBlur",onClick:"onClick",onContextMenu:"onContextMenu",onCopy:"onCopy",onCut:"onCut",onDblclick:"onDblclick",onDrag:"onDrag",onDragDrop:"onDragDrop",onDragEnd:"onDragEnd",onDragGesture:"onDragGesture",onDragOver:"onDragOver",onDrop:"onDrop",onFocus:"onFocus",onF
1ocusIn:"onFocusIn",onFocusOut:"onFocusOut",onKeyDown:"onKeyDown",onKeyPress:"onKeyPress",onKeyUp:"onKeyUp",onMouseDown:"onMouseDown",onMouseEnter:"onMouseEnter",onMouseLeave:"onMouseLeave",onMouseMove:"onMouseMove",onMouseOut:"onMouseOut",onMouseOver:"onMouseOver",onMouseUp:"onMouseUp",onPaste:"onPaste",onSelectionChange:"onSelectionChange",onActivate:"onActivate",onAddUndo:"onAddUndo",onBeforeAddUndo:"onBeforeAddUndo",onBeforeExecCommand:"onBeforeExecCommand",onBeforeGetContent:"onBeforeGetContent",onBeforeRenderUI:"onBeforeRenderUI",onBeforeSetContent:"onBeforeSetContent",onChange:"onChange",onClearUndos:"onClearUndos",onDeactivate:"onDeactivate",onDirty:"onDirty",onExecCommand:"onExecCommand",onGetContent:"onGetContent",onHide:"onHide",onInit:"onInit",onInitNgModel:"onInitNgModel",onLoadContent:"onLoadContent",onNodeChange:"onNodeChange",onPostProcess:"onPostProcess",onPostRender:"onPostRender",onPreInit:"onPreInit",onPreProcess:"onPreProcess",onProgressState:"onProgressState",onRedo:"onRedo",onRemove:"onRemove",onReset:"onReset",onResizeEditor:"onResizeEditor",onSaveContent:"onSaveContent",onSetAttrib:"onSetAttrib",onObjectResizeStart:"onObjectResizeStart",onObjectResized:"onObjectResized",onObjectSelected:"onObjectSelected",onSetContent:"onSetContent",onShow:"onShow",onSubmit:"onSubmit",onUndo:"onUndo",onVisualAid:"onVisualAid"}}),r})();const U=["onActivate","onAddUndo","onBeforeAddUndo","onBeforeExecCommand","onBeforeGetContent","onBeforeRenderUI","onBeforeSetContent","onBeforePaste","onBlur","onChange","onClearUndos","onClick","onContextMenu","onCopy","onCut","onDblclick","onDeactivate","onDirty","onDrag","onDragDrop","onDragEnd","onDragGesture","onDragOver","onDrop","onExecCommand","onFocus","onFocusIn","onFocusOut","onGetContent","onHide","onInit","onKeyDown","onKeyPress","onKeyUp","onLoadContent","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onNodeChange","onObjectResizeStart","onObjectResized","onObjectSelected","onPaste","onPostProcess","onPostRender","onPreProcess","onProgressState","onRedo","onRemove","onReset","onResizeEditor","onSaveContent","onSelectionChange","onSetAttrib","onSetContent","onShow","onSubmit","onUndo","onVisualAid"],D=(r,n,o)=>(0,_.w)(r,n).pipe((0,w.a)(o)),Y=(r,n)=>"string"==typeof r?r.split(",").map(o=>o.trim()):Array.isArray(r)?r:n;let K=0;const I=r=>typeof r<"u"&&"textarea"===r.tagName.toLowerCase(),R=r=>typeof r>"u"||""===r?[]:Array.isArray(r)?r:r.split(" "),L=(r,n)=>R(r).concat(R(n)),H=()=>{},b=r=>null==r,Q=(()=>{let r={script$:null};return{load:(l,h)=>r.script$||(r.script$=(0,E.Q)(()=>{const u=l.createElement("script");return u.referrerPolicy="origin",u.type="application/javascript",u.src=h,l.head.appendChild(u),(0,_.w)(u,"load").pipe((0,G.U)(1),(0,y.e)(void 0))}).pipe((0,e.C)({bufferSize:1,refCount:!0}))),reinitialize:()=>{r={script$:null}}}})(),B=new i.UbH("TINYMCE_SCRIPT_SRC"),Z={provide:M.Y6,useExisting:(0,i.wd)(()=>x),multi:!0};let x=(()=>{class r extends W{constructor(o,l,h,u){super(),this.platformId=h,this.tinymceScriptSrc=u,this.cloudChannel="6",this.apiKey="no-api-key",this.id="",this.modelEvents="change input undo redo",this.onTouchedCallback=H,this.destroy$=new S.E,this.initialise=()=>{const X={...this.init,selector:void 0,target:this._element,inline:this.inline,readonly:this.disabled,plugins:L(this.init&&this.init.plugins,this.plugins),toolbar:this.toolbar||this.init&&this.init.toolbar,setup:A=>{this._editor=A,D(A,"init",this.destroy$).subscribe(()=>{this.initEditor(A)}),((r,n,o)=>{(r=>{const n=Y(r.ignoreEvents,[]);return Y(r.allowedEvents,U).filter(l=>U.includes(l)&&!n.includes(l))})(r).forEach(h=>{const u=r[h];D(n,h.substring(2),o).subscribe(X=>{u.observers.length>0&&r.ngZone.run(()=>u.emit({event:X,editor:n}))})})})(this,A,this.destroy$),this.init&&"function"==typeof this.init.setup&&this.init.setup(A)}};I(this._element)&&(this._element.style.visibility=""),this.ngZone.runOutsideAngular(()=>{v().init(X)})},this._elementRef=o,this.ngZone=l}set disabled(o){this._disabled=o,this._editor&&this._editor.initialized&&("function"==typeof this._editor.mode?.set?this._editor.mode.set(o?"readonly":"design"):this._editor.setMode(o?"readonly":"design"))}get disabled(){return this._disabled}get editor(){return this._editor}writeValue(o){this._editor&&this._editor.initialized?this._editor.setContent(b(o)?"":o):this.initialValue=null===o?void 0:o}registerOnChange(o){this.onChangeCallback=o}registerOnTouched(o){this.onTouchedCallback=o}setDisabledState(o){this.disabled=o}ngAfterViewInit(){(0,f.c0)(this.platformId)&&(this.id=this.id||(r=>{const o=(new Date).getTime(),l=Math.floor(1e9*Math.random());return K++,"tiny-angular_"+l+K+String(o)}
1)(),this.inline=void 0!==this.inline?!1!==this.inline:!!this.init?.inline,this.createElement(),null!==v()?this.initialise():this._element&&this._element.ownerDocument&&Q.load(this._element.ownerDocument,this.getScriptSrc()).pipe((0,w.a)(this.destroy$)).subscribe(this.initialise))}ngOnDestroy(){this.destroy$.next(),null!==v()&&v().remove(this._editor)}createElement(){this._element=document.createElement(this.inline?"string"==typeof this.tagName?this.tagName:"div":"textarea"),this._element&&(document.getElementById(this.id)&&console.warn(`TinyMCE-Angular: an element with id [${this.id}] already exists. Editors with duplicate Id will not be able to mount`),this._element.id=this.id,I(this._element)&&(this._element.style.visibility="hidden"),this._elementRef.nativeElement.appendChild(this._element))}getScriptSrc(){return b(this.tinymceScriptSrc)?`https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js`:this.tinymceScriptSrc}initEditor(o){D(o,"blur",this.destroy$).subscribe(()=>{this.ngZone.run(()=>this.onTouchedCallback())}),D(o,this.modelEvents,this.destroy$).subscribe(()=>{this.ngZone.run(()=>this.emitOnChange(o))}),"string"==typeof this.initialValue&&this.ngZone.run(()=>{o.setContent(this.initialValue),o.getContent()!==this.initialValue&&this.emitOnChange(o),void 0!==this.onInitNgModel&&this.onInitNgModel.emit(o)})}emitOnChange(o){this.onChangeCallback&&this.onChangeCallback(o.getContent({format:this.outputFormat}))}}return r.\u0275fac=function(o){return new(o||r)(i.GI1(i.GMv),i.GI1(i.WW2),i.GI1(i.AHE),i.GI1(B,8))},r.\u0275cmp=i.In1({type:r,selectors:[["editor"]],inputs:{cloudChannel:"cloudChannel",apiKey:"apiKey",init:"init",id:"id",initialValue:"initialValue",outputFormat:"outputFormat",inline:"inline",tagName:"tagName",plugins:"plugins",toolbar:"toolbar",modelEvents:"modelEvents",allowedEvents:"allowedEvents",ignoreEvents:"ignoreEvents",disabled:"disabled"},standalone:!0,features:[i.M5G([Z]),i.eg9,i.UHJ],decls:1,vars:0,template:function(o,l){1&o&&i.yuY(0,N,0,0,"ng-template")},dependencies:[f.MD,M.y],styles:["[_nghost-%COMP%]{display:block}"]}),r})(),p=(()=>{class r{}return r.\u0275fac=function(o){return new(o||r)},r.\u0275mod=i.a4G({type:r}),r.\u0275inj=i.s3X({imports:[x]}),r})()},79992:(q,P,c)=>{c.d(P,{Y1:()=>re,mO:()=>ie});var i=c(32116),f=c(82700),M=c(70800),_=c(7400),E=c(54704),S=c(19212),w=c(66684),G=c(65800);function e(t,s,a,d){const g=window&&!!window.document&&window.document.documentElement;let m=g&&s?window:a;if(t&&(m=t&&g&&"string"==typeof t?function N(t,s,a){return(a?window.document:s).querySelector(t)}(t,a.nativeElement,d):t,!m))throw new Error("ngx-infinite-scroll {resolveContainerElement()}: selector for");return m}function v(t){return t&&!t.firstChange}const U={clientHeight:"clientHeight",offsetHeight:"offsetHeight",scrollHeight:"scrollHeight",pageYOffset:"pageYOffset",offsetTop:"offsetTop",scrollTop:"scrollTop",top:"top"},D={clientHeight:"clientWidth",offsetHeight:"offsetWidth",scrollHeight:"scrollWidth",pageYOffset:"pageXOffset",offsetTop:"offsetLeft",scrollTop:"scrollLeft",top:"left"};class ${constructor(s=!0){this.vertical=s,this.propsMap=s?U:D}clientHeightKey(){return this.propsMap.clientHeight}offsetHeightKey(){return this.propsMap.offsetHeight}scrollHeightKey(){return this.propsMap.scrollHeight}pageYOffsetKey(){return this.propsMap.pageYOffset}offsetTopKey(){return this.propsMap.offsetTop}scrollTopKey(){return this.propsMap.scrollTop}topKey(){return this.propsMap.top}}function j(t){return["Window","global"].some(a=>Object.prototype.toString.call(t).includes(a))}function I(t,s){return t?s.document.documentElement:null}function R(t,s){const a=function k({container:t,isWindow:s,axis:a}){const{offsetHeightKey:d,clientHeightKey:g}=b(a);return V(t,s,d,g)}(s);return s.isWindow?function L(t,s,a){const{axis:d,container:g,isWindow:m}=a,{offsetHeightKey:C,clientHeightKey:T}=b(d),F=t+B(I(m,g),d,m),O=V(s.nativeElement,m,C,T),J=function Q(t,s,a){const d=s.topKey();if(t.getBoundingClientRect)return t.getBoundingClientRect()[d]+B(t,s,a)}(s.nativeElement,d,m)+O;return{height:t,scrolled:F,totalToScroll:J,isWindow:m}}(a,t,s):function H(t,s,a){const{axis:d,container:g}=a;return{height:t,scrolled:g[d.scrollTopKey()],totalToScroll:g[d.scrollHeightKey()],isWindow:!1}}(a,0,s)}function b(t){return{offsetHeightKey:t.offsetHeightKey(),clientHeightKey:t.clientHeightKey()}}function V(t,s,a,d){if(isNaN(t[a])){const g=I(s,t);return g?g[d]:0}return t[a]}function B(t,s,a){const d=s.pageYOffsetKey(),g=s.scrollTopKey(),m=s.offsetTopKey();return isNaN(window.pageYOffset)?I(a,t)[g]:t.ownerDocument?t.ownerDocument.defaultView[d]:t[m]}function Z(t,s={down:0,up:0},a){let d,g;if(t.totalToScroll<=0)return!1;const m=t.isWindow?t.scrolled:t.height+t.scrolled;return a?(d=(t.totalToScroll-m)/t.totalToScroll,g=(s?.down?s.down:0)/10):(d=t.scrolled/(t.scrolled+(t.totalToScroll-m)),g=(s?.up?s.up:0)/10),d<=g}class X{constructor(s){this.lastScrollPosition=0,this.lastTotalToScroll=0,this.totalToScroll=0,this.triggered={down:0,up:0},Object.assign(this,s)}updateScrollPosition(s){return this.lastScrollPosition=s}updateTotalToScroll(s){this.lastTotalToScroll!==s&&(this.lastTotalToScroll=this.totalToScroll,this.totalToScroll=s)}updateScroll(s,a){this.updateScrollPosition(s),this.updateTotalToScroll(a)}updateTriggeredFlag(s,a){a?this.triggered.down=s:this.triggered.up=s}isTriggeredScroll(s,a){return a?this.triggered.down===s:this.triggered.up===s}}const ee={DOWN:"[NGX_ISE] DOWN",UP:"[NGX_ISE] UP"};function oe(t){const{scrollDown:s,stats:{scrolled:a}}=t;return{type:s?ee.DOWN:ee.UP,payload:{currentScrollPosition:a}}}let ie=(()=>{class t{constructor(a,d){this.element=a,this.zone=d,this.scrolled=new i._w7,this.scrolledUp=new i._w7,this.infiniteScrollDistance=2,this.infiniteScrollUpDistance=1.5,this.infiniteScrollThrottle=150,this.infiniteScrollDisabled=!1,this.infiniteScrollContainer=null,this.scrollWindow=!0,this.immediateCheck=!1,this.horizontal=!1,this.alwaysCallback=!1,this.fromRoot=!1}ngAfterViewInit(){this.infiniteScrollDisabled||this.setup()}ngOnChanges({infiniteScrollContainer:a,infiniteScrollDisabled:d,infiniteScrollDistance:g}){const m=v(a),C=v(d),T=v(g),F=!C&&!this.infiniteScrollDisabled||C&&!d.currentValue||T;(m||C||T)&&(this.destroyScroller(),F&&this.setup())}setup(){(function W(){return typeof window<"u"})()&&this.zone.runOutsideAngular(()=>{this.disposeScroller=function A(t){const{scrollContainer:s,scrollWindow:a,element:d,fromRoot:g}=t,m=function Y({windowElement:t,axis:s}){return function K(t,s){const a=t.isWindow||s&&!s.nativeElement?s:s.nativeElement;return{...t,container:a}}({axis:s,isWindow:j(t)},t)}({axis:new $(!t.horizontal),windowElement:e(s,a,d,g)}),C=new X({totalToScroll:R(d,m).totalToScroll}),F={up:t.upDistance,down:t.downDistance};return function te(t){let s=(0,M.w)(t.container,"scroll");return t.throttle&&(s=s.pipe((0,G.U)(t.throttle,void 0,{leading:!0,trailing:!0}))),s}({container:m.container,throttle:t.throttle}).pipe((0,_.O)(()=>(0,f.of)(R(d,m))),(0,E.k)(O=>function ne(t,s,a){const{scrollDown:d,fire:g}=function p(t,s,a){const d=function x(t,s){return t<s.scrolled}
1(t,s);return{fire:Z(s,a,d),scrollDown:d}}(t,s,a);return{scrollDown:d,fire:g,stats:s}}(C.lastScrollPosition,O,F)),(0,S.y)(({stats:O})=>C.updateScroll(O.scrolled,O.totalToScroll)),(0,w.I)(({fire:O,scrollDown:J,stats:{totalToScroll:le}})=>function z(t,s,a){return!!(t&&s||!a&&s)}(t.alwaysCallback,O,C.isTriggeredScroll(le,J))),(0,S.y)(({scrollDown:O,stats:{totalToScroll:J}})=>{C.updateTriggeredFlag(J,O)}),(0,E.k)(oe))}({fromRoot:this.fromRoot,alwaysCallback:this.alwaysCallback,disable:this.infiniteScrollDisabled,downDistance:this.infiniteScrollDistance,element:this.element,horizontal:this.horizontal,scrollContainer:this.infiniteScrollContainer,scrollWindow:this.scrollWindow,throttle:this.infiniteScrollThrottle,upDistance:this.infiniteScrollUpDistance}).subscribe(a=>this.handleOnScroll(a))})}handleOnScroll({type:a,payload:d}){const g=a===ee.DOWN?this.scrolled:this.scrolledUp;(function se(t){return t.observed??t.observers.length>0})(g)&&this.zone.run(()=>g.emit(d))}ngOnDestroy(){this.destroyScroller()}destroyScroller(){this.disposeScroller&&this.disposeScroller.unsubscribe()}static#e=this.\u0275fac=function(d){return new(d||t)(i.GI1(i.GMv),i.GI1(i.WW2))};static#t=this.\u0275dir=i.Sc5({type:t,selectors:[["","infiniteScroll",""],["","infinite-scroll",""],["","data-infinite-scroll",""]],inputs:{infiniteScrollDistance:"infiniteScrollDistance",infiniteScrollUpDistance:"infiniteScrollUpDistance",infiniteScrollThrottle:"infiniteScrollThrottle",infiniteScrollDisabled:"infiniteScrollDisabled",infiniteScrollContainer:"infiniteScrollContainer",scrollWindow:"scrollWindow",immediateCheck:"immediateCheck",horizontal:"horizontal",alwaysCallback:"alwaysCallback",fromRoot:"fromRoot"},outputs:{scrolled:"scrolled",scrolledUp:"scrolledUp"},features:[i.SYr]})}return t})(),re=(()=>{class t{static#e=this.\u0275fac=function(d){return new(d||t)};static#t=this.\u0275mod=i.a4G({type:t});static#n=this.\u0275inj=i.s3X({})}return t})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.