{"version":3,"file":"default-node_modules_ngx-quill_fesm2020_ngx-quill_mjs.5d7b2e6aedc835b4.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CACA;;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AA8E+FI,IAAAA,uDA+mB3F;;;;;;AA/mB2FA,IAAAA,uDAgnB3F;;;;;;AAhnB2FA,IAAAA,qEA8mB7F;AA9mB6FA,IAAAA,wDA+mB3F;AA/mB2FA,IAAAA,wDAgnB3F;AAhnB2FA,IAAAA,mEAinB7F;;;;iBAjnB6FA;AAAAA,IAAAA,uDA+mBhE;AA/mBgEA,IAAAA,wDA+mBhE;AA/mBgEA,IAAAA,uDAgnBhE;AAhnBgEA,IAAAA,wDAgnBhE;;;;;;AAhnBgEA,IAAAA,uDAonB3F;;;;;;AApnB2FA,IAAAA,uDAqnB3F;;;;;;AArnB2FA,IAAAA,qEAmnB7F;AAnnB6FA,IAAAA,wDAonB3F;AApnB2FA,IAAAA,wDAqnB3F;AArnB2FA,IAAAA,mEAsnB7F;;;;iBAtnB6FA;AAAAA,IAAAA,uDAonBhE;AApnBgEA,IAAAA,wDAonBhE;AApnBgEA,IAAAA,uDAqnBhE;AArnBgEA,IAAAA,wDAqnBhE;;;;;;;;;AArnBgEA,IAAAA,uDAi2B/F;;;;;;AAj2B+FA,IAAAA,uDAk2B/F;;;;AA96BA,IAAM4B,cAAc,GAAG;AACnBC,EAAAA,OAAO,EAAE,CACL,CAAC,MAAD,EAAS,QAAT,EAAmB,WAAnB,EAAgC,QAAhC,CADK,EAEL,CAAC,YAAD,EAAe,YAAf,CAFK,EAGL,CAAC;AAAEC,IAAAA,MAAM,EAAE;AAAV,GAAD,EAAgB;AAAEA,IAAAA,MAAM,EAAE;AAAV,GAAhB,CAHK,EAIL,CAAC;AAAEC,IAAAA,IAAI,EAAE;AAAR,GAAD,EAAsB;AAAEA,IAAAA,IAAI,EAAE;AAAR,GAAtB,CAJK,EAKL,CAAC;AAAEC,IAAAA,MAAM,EAAE;AAAV,GAAD,EAAoB;AAAEA,IAAAA,MAAM,EAAE;AAAV,GAApB,CALK,EAML,CAAC;AAAEC,IAAAA,MAAM,EAAE;AAAV,GAAD,EAAmB;AAAEA,IAAAA,MAAM,EAAE;AAAV,GAAnB,CANK,EAOL,CAAC;AAAEC,IAAAA,SAAS,EAAE;AAAb,GAAD,CAPK,EAQL,CAAC;AAAEC,IAAAA,IAAI,EAAE,CAAC,OAAD,EAAU,KAAV,EAAiB,OAAjB,EAA0B,MAA1B;AAAR,GAAD,CARK,EASL,CAAC;AAAEL,IAAAA,MAAM,EAAE,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAU,CAAV,EAAa,CAAb,EAAgB,CAAhB,EAAmB,KAAnB;AAAV,GAAD,CATK,EAUL,CACI;AAAEM,IAAAA,KAAK,EAAE;AAAT,GADJ,EAEI;AAAEC,IAAAA,UAAU,EAAE;AAAd,GAFJ,CAVK,EAcL,CAAC;AAAEC,IAAAA,IAAI,EAAE;AAAR,GAAD,CAdK,EAeL,CAAC;AAAEC,IAAAA,KAAK,EAAE;AAAT,GAAD,CAfK,EAgBL,CAAC,OAAD,CAhBK,EAiBL,CAAC,MAAD,EAAS,OAAT,EAAkB,OAAlB,CAjBK,CAiBsB;AAjBtB;AADU,CAAvB;;AAsBA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAACC,MAAD,EAASC,YAAT,EAA0B;AACxC,MAAMC,YAAY,GAAGF,MAAM,IAAIC,YAA/B;AACA,SAAOC,YAAY,IAAI,MAAvB;AACH,CAHD;;AAKA,IAAMC,kBAAkB,GAAG,IAAI3C,yDAAJ,CAAmB,QAAnB,EAA6B;AACpD4C,EAAAA,UAAU,EAAE,MADwC;AAEpDC,EAAAA,OAAO,EAAE,SAATA,OAAS;AAAA,WAAO;AAAEC,MAAAA,OAAO,EAAEnB;AAAX,KAAP;AAAA;AAF2C,CAA7B,CAA3B;;IAKMoB;AACF,wBAAYC,QAAZ,EAAsBC,MAAtB,EAA8B;AAAA;;AAAA;;AAC1B,SAAKA,MAAL,GAAcA,MAAd;AACA,SAAKC,MAAL,GAAc9B,4CAAK,gOAAC;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,gBACX,KAAI,CAAC+B,KADM;AAAA;AAAA;AAAA;;AAEZ;AACA;AACA;AACMC,YAAAA,4BALM,GAKyB,KAAI,CAACC,QAAL,CAAcC,gBALvC,EAMZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,iBAAI,CAACD,QAAL,CAAcC,gBAAd,GAAiC,KAAI,CAACD,QAAL,CAAc,iCAAd,KAAoD,KAAI,CAACA,QAAL,CAAcC,gBAAnG;AAhBY;AAAA,mBAiBc,uJAjBd;;AAAA;AAiBNC,YAAAA,WAjBM;AAkBZ,iBAAI,CAACF,QAAL,CAAcC,gBAAd,GAAiCF,4BAAjC;AACA,iBAAI,CAACD,KAAL,GAAcI,WAAW,CAACC,OAAZ,GAAsBD,WAAW,CAACC,OAAlC,GAA4CD,WAA1D;;AAnBY;AAqBhB;AACA,0CAAI,CAACN,MAAL,CAAYQ,aAAZ,gFAA2BC,OAA3B,CAAmC,UAACC,YAAD,EAAkB;AACjD,kBAAMC,eAAe,GAAG,KAAI,CAACT,KAAL,CAAWU,MAAX,CAAkBF,YAAY,CAACE,MAA/B,CAAxB;;AACAD,cAAAA,eAAe,CAACE,SAAhB,GAA4BH,YAAY,CAACG,SAAzC;;AACA,mBAAI,CAACX,KAAL,CAAWY,QAAX,CAAoBH,eAApB,EAAqC,IAArC,EAA2C,KAAI,CAACX,MAAL,CAAYe,6BAAvD;AACH,aAJD;AAKA,0CAAI,CAACf,MAAL,CAAYgB,aAAZ,gFAA2BP,OAA3B,CAAmC,iBAA8B;AAAA,kBAA3BQ,cAA2B,SAA3BA,cAA2B;AAAA,kBAAXC,IAAW,SAAXA,IAAW;;AAC7D,mBAAI,CAAChB,KAAL,CAAWY,QAAX,CAAoBI,IAApB,EAA0BD,cAA1B,EAA0C,KAAI,CAACjB,MAAL,CAAYe,6BAAtD;AACH,aAFD;AA3BgB,6CA8BT,KAAI,CAACb,KA9BI;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAD,GAAL,CA+BXiB,IA/BW,CA+BN7C,4DAAW,CAAC;AAAE8C,MAAAA,UAAU,EAAE,CAAd;AAAiBC,MAAAA,QAAQ,EAAE;AAA3B,KAAD,CA/BL,CAAd;AAgCA,SAAKjB,QAAL,GAAgBL,QAAQ,CAACuB,GAAT,CAAa3E,sDAAb,CAAhB;;AACA,QAAI,CAAC,KAAKqD,MAAV,EAAkB;AACd,WAAKA,MAAL,GAAc;AAAEH,QAAAA,OAAO,EAAEnB;AAAX,OAAd;AACH;AACJ;;;;WACD,SAAA6C,QAAQ,GAAG;AACP,aAAO,KAAKtB,MAAZ;AACH;;;;AAELH,YAAY,CAAC0B,IAAb;AAAA,mBAAyG1B,YAAzG,EAA+FhD,sDAA/F,CAAuIA,mDAAvI,GAA+FA,sDAA/F,CAA+J4C,kBAA/J;AAAA;;AACAI,YAAY,CAAC4B,KAAb,kBAD+F5E,gEAC/F;AAAA,SAA6GgD,YAA7G;AAAA,WAA6GA,YAA7G;AAAA,cAAuI;AAAvI;;AACA;AAAA,qDAF+FhD,+DAE/F,CAA2FgD,YAA3F,EAAqH,CAAC;AAC1G6B,IAAAA,IAAI,EAAE3E,qDADoG;AAE1G4E,IAAAA,IAAI,EAAE,CAAC;AACCjC,MAAAA,UAAU,EAAE;AADb,KAAD;AAFoG,GAAD,CAArH,EAK4B,YAAY;AAAE,WAAO,CAAC;AAAEgC,MAAAA,IAAI,EAAE7E,mDAAW2E;AAAnB,KAAD,EAAwB;AAAEE,MAAAA,IAAI,EAAEE,SAAR;AAAmBC,MAAAA,UAAU,EAAE,CAAC;AACrFH,QAAAA,IAAI,EAAE1E,mDAAQA;AADuE,OAAD,EAErF;AACC0E,QAAAA,IAAI,EAAEzE,iDADP;AAEC0E,QAAAA,IAAI,EAAE,CAAClC,kBAAD;AAFP,OAFqF;AAA/B,KAAxB,CAAP;AAKlB,GAVxB;AAAA,MAYA;;;IACMqC;AACF,2BAAYhC,QAAZ,EAAsBiC,UAAtB,EAAkCC,EAAlC,EAAsCC,YAAtC,EAAoDC,UAApD,EAAgEC,QAAhE,EAA0EC,IAA1E,EAAgFC,OAAhF,EAAyF;AAAA;;AAAA;;AACrF,SAAKN,UAAL,GAAkBA,UAAlB;AACA,SAAKC,EAAL,GAAUA,EAAV;AACA,SAAKC,YAAL,GAAoBA,YAApB;AACA,SAAKC,UAAL,GAAkBA,UAAlB;AACA,SAAKC,QAAL,GAAgBA,QAAhB;AACA,SAAKC,IAAL,GAAYA,IAAZ;AACA,SAAKC,OAAL,GAAeA,OAAf;AACA,SAAKC,QAAL,GAAgB,KAAhB;AACA,SAAKC,qBAAL,GAA6B,KAA7B;AACA,SAAKC,MAAL,GAAc,IAAd;AACA,SAAKC,MAAL,GAAc,IAAd;AACA,SAAKlC,aAAL,GAAqB,EAArB;AACA,SAAKQ,aAAL,GAAqB,EAArB;AACA,SAAK2B,kBAAL,GAA0B,KAA1B;AACA,SAAKC,gBAAL,GAAwB,KAAxB;AACA,SAAKC,aAAL,GAAqB,KAArB;AACA,SAAKC,UAAL,GAAkB,KAAlB;AACA;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIQ,SAAKC,iBAAL,GAAyB,IAAzB;AACA,SAAKC,eAAL,GAAuB,IAAI7F,uDAAJ,EAAvB;AACA,SAAK8F,eAAL,GAAuB,IAAI9F,uDAAJ,EAAvB;AACA,SAAK+F,gBAAL,GAAwB,IAAI/F,uDAAJ,EAAxB;AACA,SAAKgG,kBAAL,GAA0B,IAAIhG,uDAAJ,EAA1B;AACA,SAAKiG,OAAL,GAAe,IAAIjG,uDAAJ,EAAf;AACA,SAAKkG,MAAL,GAAc,IAAIlG,uDAAJ,EAAd;AACA,SAAKmG,QAAL,GAAgB,KAAhB,CAtCqF,CAsC9D;;AACvB,SAAKC,QAAL,GAAgB,KAAhB;AACA,SAAKC,eAAL,GAAuB,KAAvB;AACA,SAAKC,YAAL,GAAoB,IAApB;AACA,SAAKC,iBAAL,GAAyB,IAAzB;;AACA,SAAKC,WAAL,GAAmB,UAACC,WAAD,EAAcC,aAAd,EAAgC;AAC/C,UAAIC,IAAI,GAAGD,aAAa,CAACE,aAAd,CAA4B,YAA5B,EAA0CC,SAArD;;AACA,UAAIF,IAAI,KAAK,aAAT,IAA0BA,IAAI,KAAK,iBAAvC,EAA0D;AACtDA,QAAAA,IAAI,GAAG,MAAI,CAACf,iBAAZ;AACH;;AACD,UAAIkB,UAAU,GAAGH,IAAjB;AACA,UAAMvE,MAAM,GAAGD,SAAS,CAAC,MAAI,CAACC,MAAN,EAAc,MAAI,CAAC+C,OAAL,CAAatC,MAAb,CAAoBT,MAAlC,CAAxB;;AACA,UAAIA,MAAM,KAAK,MAAf,EAAuB;AACnB0E,QAAAA,UAAU,GAAGL,WAAW,CAACM,OAAZ,EAAb;AACH,OAFD,MAGK,IAAI3E,MAAM,KAAK,QAAf,EAAyB;AAC1B0E,QAAAA,UAAU,GAAGL,WAAW,CAACO,WAAZ,EAAb;AACH,OAFI,MAGA,IAAI5E,MAAM,KAAK,MAAf,EAAuB;AACxB,YAAI;AACA0E,UAAAA,UAAU,GAAGG,IAAI,CAACC,SAAL,CAAeT,WAAW,CAACO,WAAZ,EAAf,CAAb;AACH,SAFD,CAGA,OAAOG,CAAP,EAAU;AACNL,UAAAA,UAAU,GAAGL,WAAW,CAACM,OAAZ,EAAb;AACH;AACJ;;AACD,aAAOD,UAAP;AACH,KAtBD;;AAuBA,SAAKM,WAAL,GAAmB,UAACX,WAAD,EAAcY,KAAd,EAAwB;AACvC,UAAMjF,MAAM,GAAGD,SAAS,CAAC,MAAI,CAACC,MAAN,EAAc,MAAI,CAAC+C,OAAL,CAAatC,MAAb,CAAoBT,MAAlC,CAAxB;;AACA,UAAIA,MAAM,KAAK,MAAf,EAAuB;AACnB,YAAMkF,QAAQ,GAAG,CAAC,IAAD,EAAO,KAAP,EAAcC,QAAd,CAAuB,MAAI,CAACD,QAA5B,IAAwC,MAAI,CAACA,QAA7C,GAAyD,MAAI,CAACnC,OAAL,CAAatC,MAAb,CAAoByE,QAApB,IAAgC,KAA1G;;AACA,YAAIA,QAAJ,EAAc;AACVD,UAAAA,KAAK,GAAG,MAAI,CAACtC,YAAL,CAAkBuC,QAAlB,CAA2BrH,+DAA3B,EAAiDoH,KAAjD,CAAR;AACH;;AACD,eAAOZ,WAAW,CAACgB,SAAZ,CAAsBC,OAAtB,CAA8BL,KAA9B,CAAP;AACH,OAND,MAOK,IAAIjF,MAAM,KAAK,MAAf,EAAuB;AACxB,YAAI;AACA,iBAAO6E,IAAI,CAACU,KAAL,CAAWN,KAAX,CAAP;AACH,SAFD,CAGA,OAAOF,CAAP,EAAU;AACN,iBAAO,CAAC;AAAES,YAAAA,MAAM,EAAEP;AAAV,WAAD,CAAP;AACH;AACJ;;AACD,aAAOA,KAAP;AACH,KAlBD;;AAmBA,SAAKQ,sBAAL,GAA8B,UAACC,KAAD,EAAQC,QAAR,EAAkBC,MAAlB,EAA6B;AACvD,UAAMC,2BAA2B,GAAG,CAACH,KAAD,IAAU,CAAC,CAAC,MAAI,CAACI,cAArD,CADuD,CAEvD;;AACA,UAAI,CAAC,MAAI,CAAChC,MAAL,CAAYiC,SAAZ,CAAsBC,MAAvB,IACA,CAAC,MAAI,CAACnC,OAAL,CAAakC,SAAb,CAAuBC,MADxB,IAEA,CAAC,MAAI,CAACpC,kBAAL,CAAwBmC,SAAxB,CAAkCC,MAFnC,IAGA,CAACH,2BAHL,EAGkC;AAC9B;AACH;;AACD,YAAI,CAAC/C,IAAL,CAAUmD,GAAV,CAAc,YAAM;AAChB,YAAIP,KAAK,KAAK,IAAd,EAAoB;AAChB,gBAAI,CAAC5B,MAAL,CAAYoC,IAAZ,CAAiB;AACbC,YAAAA,MAAM,EAAE,MAAI,CAAC9B,WADA;AAEbuB,YAAAA,MAAM,EAANA;AAFa,WAAjB;AAIH,SALD,MAMK,IAAID,QAAQ,KAAK,IAAjB,EAAuB;AACxB,gBAAI,CAAC9B,OAAL,CAAaqC,IAAb,CAAkB;AACdC,YAAAA,MAAM,EAAE,MAAI,CAAC9B,WADC;AAEduB,YAAAA,MAAM,EAANA;AAFc,WAAlB;AAIH;;AACD,cAAI,CAAChC,kBAAL,CAAwBsC,IAAxB,CAA6B;AACzBC,UAAAA,MAAM,EAAE,MAAI,CAAC9B,WADY;AAEzBsB,UAAAA,QAAQ,EAARA,QAFyB;AAGzBD,UAAAA,KAAK,EAALA,KAHyB;AAIzBE,UAAAA,MAAM,EAANA;AAJyB,SAA7B;;AAMA,YAAIC,2BAAJ,EAAiC;AAC7B,gBAAI,CAACC,cAAL;AACH;;AACD,cAAI,CAACpD,EAAL,CAAQ0D,YAAR;AACH,OAvBD;AAwBH,KAjCD;;AAkCA,SAAKC,iBAAL,GAAyB,UAACC,KAAD,EAAQC,QAAR,EAAkBX,MAAlB,EAA6B;AAClD;AACA,UAAMY,IAAI,GAAG,MAAI,CAACnC,WAAL,CAAiBM,OAAjB,EAAb;;AACA,UAAM8B,OAAO,GAAG,MAAI,CAACpC,WAAL,CAAiBO,WAAjB,EAAhB;;AACA,UAAIL,IAAI,GAAG,MAAI,CAACmC,UAAL,CAAgBlC,aAAhB,CAA8B,YAA9B,EAA4CC,SAAvD;;AACA,UAAIF,IAAI,KAAK,aAAT,IAA0BA,IAAI,KAAK,iBAAvC,EAA0D;AACtDA,QAAAA,IAAI,GAAG,MAAI,CAACf,iBAAZ;AACH;;AACD,UAAMmD,YAAY,GAAG,MAAI,CAACA,YAAL,IAAqB,MAAI,CAAC5D,OAAL,CAAatC,MAAb,CAAoBkG,YAA9D;AACA,UAAMC,0BAA0B,GAAG,CAAChB,MAAM,KAAK,MAAX,IAAqBe,YAAY,IAAIA,YAAY,KAAK,KAAvD,KAAiE,CAAC,CAAC,MAAI,CAACE,aAA3G,CATkD,CAUlD;;AACA,UAAI,CAAC,MAAI,CAAClD,gBAAL,CAAsBoC,SAAtB,CAAgCC,MAAjC,IAA2C,CAACY,0BAAhD,EAA4E;AACxE;AACH;;AACD,YAAI,CAAC9D,IAAL,CAAUmD,GAAV,CAAc,YAAM;AAChB,YAAIW,0BAAJ,EAAgC;AAC5B,gBAAI,CAACC,aAAL,CAAmB,MAAI,CAACzC,WAAL,CAAiB,MAAI,CAACC,WAAtB,EAAmC,MAAI,CAACqC,UAAxC,CAAnB;AACH;;AACD,cAAI,CAAC/C,gBAAL,CAAsBuC,IAAtB,CAA2B;AACvBO,UAAAA,OAAO,EAAPA,OADuB;AAEvBH,UAAAA,KAAK,EAALA,KAFuB;AAGvBH,UAAAA,MAAM,EAAE,MAAI,CAAC9B,WAHU;AAIvBE,UAAAA,IAAI,EAAJA,IAJuB;AAKvBgC,UAAAA,QAAQ,EAARA,QALuB;AAMvBX,UAAAA,MAAM,EAANA,MANuB;AAOvBY,UAAAA,IAAI,EAAJA;AAPuB,SAA3B;;AASA,cAAI,CAAC9D,EAAL,CAAQ0D,YAAR;AACH,OAdD;AAeH,KA7BD,CAvHqF,CAqJrF;;;AACA,SAAKU,mBAAL,GAA2B,UAACC,KAAD,EAAQC,OAAR,EAAiBC,GAAjB,EAAsBrB,MAAtB,EAAiC;AACxD;AACA,UAAI,CAAC,MAAI,CAAClC,eAAL,CAAqBqC,SAArB,CAA+BC,MAApC,EAA4C;AACxC;AACH,OAJuD,CAKxD;;;AACA,UAAIe,KAAK,KAAK,aAAd,EAA6B;AACzB,YAAMP,IAAI,GAAG,MAAI,CAACnC,WAAL,CAAiBM,OAAjB,EAAb;;AACA,YAAM8B,OAAO,GAAG,MAAI,CAACpC,WAAL,CAAiBO,WAAjB,EAAhB;;AACA,YAAIL,IAAI,GAAG,MAAI,CAACmC,UAAL,CAAgBlC,aAAhB,CAA8B,YAA9B,EAA4CC,SAAvD;;AACA,YAAIF,IAAI,KAAK,aAAT,IAA0BA,IAAI,KAAK,iBAAvC,EAA0D;AACtDA,UAAAA,IAAI,GAAG,MAAI,CAACf,iBAAZ;AACH;;AACD,cAAI,CAACV,IAAL,CAAUmD,GAAV,CAAc,YAAM;AAChB,gBAAI,CAACvC,eAAL,CAAqBwC,IAArB,CAA0B;AACtBO,YAAAA,OAAO,EAAPA,OADsB;AAEtBH,YAAAA,KAAK,EAAEU,OAFe;AAGtBb,YAAAA,MAAM,EAAE,MAAI,CAAC9B,WAHS;AAItB0C,YAAAA,KAAK,EAALA,KAJsB;AAKtBxC,YAAAA,IAAI,EAAJA,IALsB;AAMtBgC,YAAAA,QAAQ,EAAEU,GANY;AAOtBrB,YAAAA,MAAM,EAANA,MAPsB;AAQtBY,YAAAA,IAAI,EAAJA;AARsB,WAA1B;;AAUA,gBAAI,CAAC9D,EAAL,CAAQ0D,YAAR;AACH,SAZD;AAaH,OApBD,MAqBK;AACD,cAAI,CAACtD,IAAL,CAAUmD,GAAV,CAAc,YAAM;AAChB,gBAAI,CAACvC,eAAL,CAAqBwC,IAArB,CAA0B;AACtBC,YAAAA,MAAM,EAAE,MAAI,CAAC9B,WADS;AAEtB0C,YAAAA,KAAK,EAALA,KAFsB;AAGtBpB,YAAAA,QAAQ,EAAEsB,GAHY;AAItBvB,YAAAA,KAAK,EAAEsB,OAJe;AAKtBpB,YAAAA,MAAM,EAANA;AALsB,WAA1B;;AAOA,gBAAI,CAAClD,EAAL,CAAQ0D,YAAR;AACH,SATD;AAUH;AACJ,KAvCD;;AAwCA,SAAKvF,QAAL,GAAgBL,QAAQ,CAACuB,GAAT,CAAa3E,sDAAb,CAAhB;AACH;;;;WAWD,SAAA8J,QAAQ,GAAG;AACP,WAAKlD,QAAL,GAAgB,KAAKZ,kBAArB;AACA,WAAKa,eAAL,GAAuB,KAAKhB,qBAA5B;AACH;;;WACD,SAAAkE,eAAe,GAAG;AAAA;;AACd,UAAI9J,kEAAgB,CAAC,KAAKuF,UAAN,CAApB,EAAuC;AACnC;AACH,OAHa,CAId;AACA;AACA;;;AACA,WAAKuB,iBAAL,GAAyB,KAAKpB,OAAL,CAAaf,QAAb,GAAwBoF,SAAxB,CAAkC,UAAAzG,KAAK,EAAI;AAChE,cAAI,CAAC+F,UAAL,GAAkB,MAAI,CAACjE,UAAL,CAAgB4E,aAAhB,CAA8B7C,aAA9B,CAA4C,wBAA5C,CAAlB;;AACA,YAAM8C,WAAW,GAAG,MAAI,CAAC7E,UAAL,CAAgB4E,aAAhB,CAA8B7C,aAA9B,CAA4C,wBAA5C,CAApB;;AACA,YAAMlE,OAAO,GAAGiH,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB,MAAI,CAAClH,OAAL,IAAgB,MAAI,CAACyC,OAAL,CAAatC,MAAb,CAAoBH,OAAtD,CAAhB;;AACA,YAAIgH,WAAJ,EAAiB;AACbhH,UAAAA,OAAO,CAAClB,OAAR,GAAkBkI,WAAlB;AACH,SAFD,MAGK,IAAIhH,OAAO,CAAClB,OAAR,KAAoBkD,SAAxB,EAAmC;AACpChC,UAAAA,OAAO,CAAClB,OAAR,GAAkBD,cAAc,CAACC,OAAjC;AACH;;AACD,YAAIqI,WAAW,GAAG,MAAI,CAACA,WAAL,KAAqBnF,SAArB,GAAiC,MAAI,CAACmF,WAAtC,GAAoD,MAAI,CAAC1E,OAAL,CAAatC,MAAb,CAAoBgH,WAA1F;;AACA,YAAIA,WAAW,KAAKnF,SAApB,EAA+B;AAC3BmF,UAAAA,WAAW,GAAG,sBAAd;AACH;;AACD,YAAI,MAAI,CAACvE,MAAT,EAAiB;AACbqE,UAAAA,MAAM,CAACG,IAAP,CAAY,MAAI,CAACxE,MAAjB,EAAyBhC,OAAzB,CAAiC,UAACyG,GAAD,EAAS;AACtC,kBAAI,CAAC9E,QAAL,CAAc+E,QAAd,CAAuB,MAAI,CAAClB,UAA5B,EAAwCiB,GAAxC,EAA6C,MAAI,CAACzE,MAAL,CAAYyE,GAAZ,CAA7C;AACH,WAFD;AAGH;;AACD,YAAI,MAAI,CAACE,OAAT,EAAkB;AACd,gBAAI,CAACC,UAAL,CAAgB,MAAI,CAACD,OAArB;AACH;;AACD,cAAI,CAAC5G,aAAL,CAAmBC,OAAnB,CAA2B,UAACC,YAAD,EAAkB;AACzC,cAAMC,eAAe,GAAGT,KAAK,CAACU,MAAN,CAAaF,YAAY,CAACE,MAA1B,CAAxB;AACAD,UAAAA,eAAe,CAACE,SAAhB,GAA4BH,YAAY,CAACG,SAAzC;AACAX,UAAAA,KAAK,CAACY,QAAN,CAAeH,eAAf,EAAgC,IAAhC;AACH,SAJD;;AAKA,cAAI,CAACK,aAAL,CAAmBP,OAAnB,CAA2B,iBAA8B;AAAA,cAA3BQ,cAA2B,SAA3BA,cAA2B;AAAA,cAAXC,IAAW,SAAXA,IAAW;AACrDhB,UAAAA,KAAK,CAACY,QAAN,CAAeI,IAAf,EAAqBD,cAArB;AACH,SAFD;;AAGA,YAAIqG,MAAM,GAAG,MAAI,CAACA,MAAL,IAAe,MAAI,CAACA,MAAL,KAAgB,MAA/B,GAAwC,MAAI,CAACrB,UAA7C,GAA0D,MAAI,CAACqB,MAA5E;;AACA,YAAI,CAACA,MAAL,EAAa;AACTA,UAAAA,MAAM,GAAG,MAAI,CAAChF,OAAL,CAAatC,MAAb,CAAoBsH,MAApB,GAA6B,MAAI,CAAChF,OAAL,CAAatC,MAAb,CAAoBsH,MAAjD,GAA0D,MAAI,CAAClH,QAAL,CAAcmH,IAAjF;AACH;;AACD,YAAIC,KAAK,GAAG,MAAI,CAACA,KAAjB;;AACA,YAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,KAApB,IAA6B,MAAI,CAAClF,OAAL,CAAatC,MAAb,CAAoBwH,KAArD,EAA4D;AACxDA,UAAAA,KAAK,GAAG,MAAI,CAAClF,OAAL,CAAatC,MAAb,CAAoBwH,KAA5B;AACH;;AACD,YAAIC,QAAQ,GAAG,MAAI,CAACA,QAApB;;AACA,YAAI,CAACA,QAAD,IAAa,MAAI,CAACA,QAAL,KAAkB,KAAnC,EAA0C;AACtCA,UAAAA,QAAQ,GAAG,MAAI,CAACnF,OAAL,CAAatC,MAAb,CAAoByH,QAApB,KAAiC5F,SAAjC,GAA6C,MAAI,CAACS,OAAL,CAAatC,MAAb,CAAoByH,QAAjE,GAA4E,KAAvF;AACH;;AACD,YAAI1E,iBAAiB,GAAG,MAAI,CAACA,iBAA7B;;AACA,YAAI,MAAI,CAACT,OAAL,CAAatC,MAAb,CAAoB0H,cAApB,CAAmC,mBAAnC,CAAJ,EAA6D;AACzD3E,UAAAA,iBAAiB,GAAG,MAAI,CAACT,OAAL,CAAatC,MAAb,CAAoB+C,iBAAxC;AACH;;AACD,YAAI4E,kBAAkB,GAAG,MAAI,CAACA,kBAA9B;;AACA,YAAI,CAACA,kBAAD,IAAuB,MAAI,CAACA,kBAAL,KAA4B,IAAvD,EAA6D;AACzDA,UAAAA,kBAAkB,GACd,MAAI,CAACrF,OAAL,CAAatC,MAAb,CAAoB2H,kBAApB,KAA2C,IAA3C,IACO,MAAI,CAACrF,OAAL,CAAatC,MAAb,CAAoB2H,kBAD3B,GACgD,MAAI,CAACrF,OAAL,CAAatC,MAAb,CAAoB2H,kBADpE,GACyF,IAF7F;AAGH;;AACD,YAAIC,OAAO,GAAG,MAAI,CAACA,OAAnB;;AACA,YAAI,CAACA,OAAD,IAAYA,OAAO,KAAK/F,SAA5B,EAAuC;AACnC+F,UAAAA,OAAO,GAAG,MAAI,CAACtF,OAAL,CAAatC,MAAb,CAAoB4H,OAApB,4KAAkC,MAAI,CAACtF,OAAL,CAAatC,MAAb,CAAoB4H,OAAtD,IAAkE,MAAI,CAACtF,OAAL,CAAatC,MAAb,CAAoB4H,OAApB,KAAgC,IAAhC,GAAuC,IAAvC,GAA8C/F,SAA1H;AACH;;AACD,cAAI,CAACQ,IAAL,CAAUwF,iBAAV,CAA4B,YAAM;AAC9B,gBAAI,CAACjE,WAAL,GAAmB,IAAI1D,KAAJ,CAAU,MAAI,CAAC+F,UAAf,EAA2B;AAC1CqB,YAAAA,MAAM,EAANA,MAD0C;AAE1CE,YAAAA,KAAK,EAAEA,KAFmC;AAG1CI,YAAAA,OAAO,EAAEA,OAHiC;AAI1C/H,YAAAA,OAAO,EAAPA,OAJ0C;AAK1CmH,YAAAA,WAAW,EAAXA,WAL0C;AAM1CS,YAAAA,QAAQ,EAARA,QAN0C;AAO1C1E,YAAAA,iBAAiB,EAAjBA,iBAP0C;AAQ1C4E,YAAAA,kBAAkB,EAAEA,kBARsB;AAS1CjF,YAAAA,MAAM,EAAE,MAAI,CAACA,MAT6B;AAU1CoF,YAAAA,KAAK,EAAE,MAAI,CAACA,KAAL,KAAe,MAAI,CAACxF,OAAL,CAAatC,MAAb,CAAoB8H,KAApB,GAA4B,MAAI,CAACxF,OAAL,CAAatC,MAAb,CAAoB8H,KAAhD,GAAwD,MAAvE;AAVmC,WAA3B,CAAnB,CAD8B,CAa9B;;AACA,cAAI,MAAI,CAACC,eAAT,EAA0B;AAAA;;AACtB,gBAAMC,OAAO,yBAAG,MAAI,CAACpE,WAAR,gFAAG,mBAAkBkE,KAArB,0DAAG,sBAAyBE,OAAzC;AACA,gBAAMC,KAAK,GAAGD,OAAH,aAAGA,OAAH,wCAAGA,OAAO,CAAEE,IAAZ,kDAAG,cAAenE,aAAf,CAA6B,kBAA7B,CAAd;;AACA,gBAAIkE,KAAJ,aAAIA,KAAJ,eAAIA,KAAK,CAAEE,OAAX,EAAoB;AAChBF,cAAAA,KAAK,CAACE,OAAN,CAAcC,IAAd,GAAqB,MAAI,CAACL,eAA1B;AACH;AACJ;AACJ,SArBD;;AAsBA,YAAI,MAAI,CAAC/B,OAAT,EAAkB;AACd,cAAMzG,MAAM,GAAGD,SAAS,CAAC,MAAI,CAACC,MAAN,EAAc,MAAI,CAAC+C,OAAL,CAAatC,MAAb,CAAoBT,MAAlC,CAAxB;;AACA,cAAIA,MAAM,KAAK,MAAf,EAAuB;AACnB,kBAAI,CAACqE,WAAL,CAAiByE,OAAjB,CAAyB,MAAI,CAACrC,OAA9B,EAAuC,QAAvC;AACH,WAFD,MAGK;AACD,gBAAMsC,QAAQ,GAAG,MAAI,CAAC/D,WAAL,CAAiB,MAAI,CAACX,WAAtB,EAAmC,MAAI,CAACoC,OAAxC,CAAjB;;AACA,kBAAI,CAACpC,WAAL,CAAiB2E,WAAjB,CAA6BD,QAA7B,EAAuC,QAAvC;AACH;;AACD,gBAAI,CAAC1E,WAAL,CAAiB4E,SAAjB,CAA2B,SAA3B,EAAsCC,KAAtC;AACH,SAxF+D,CAyFhE;;;AACA,cAAI,CAACC,gBAAL;;AACA,cAAI,CAACC,sBAAL,GA3FgE,CA4FhE;AACA;;;AACA,YAAI,CAAC,MAAI,CAAC3F,eAAL,CAAqBsC,SAArB,CAA+BC,MAAhC,IAA0C,CAAC,MAAI,CAACqD,kBAApD,EAAwE;AACpE;AACH,SAhG+D,CAiGhE;AACA;AACA;;;AACAC,QAAAA,qBAAqB,CAAC,YAAM;AACxB,cAAI,MAAI,CAACD,kBAAT,EAA6B;AACzB,kBAAI,CAACA,kBAAL;AACH;;AACD,gBAAI,CAAC5F,eAAL,CAAqByC,IAArB,CAA0B,MAAI,CAAC7B,WAA/B;AACH,SALoB,CAArB;AAMH,OA1GwB,CAAzB;AA2GH;;;WACD,SAAAkF,WAAW,GAAG;AAAA;;AACV,WAAKC,OAAL;AACA,oCAAKrF,iBAAL,gFAAwBsF,WAAxB;AACA,WAAKtF,iBAAL,GAAyB,IAAzB;AACH;;;WACD,SAAAuF,WAAW,CAACC,OAAD,EAAU;AAAA;;AACjB,UAAI,CAAC,KAAKtF,WAAV,EAAuB;AACnB;AACH;AACD;;;AACA,UAAIsF,OAAO,CAACzB,QAAZ,EAAsB;AAClB,aAAK7D,WAAL,CAAiBuF,MAAjB,CAAwB,CAACD,OAAO,CAACzB,QAAR,CAAiB2B,YAA1C;AACH;;AACD,UAAIF,OAAO,CAAClC,WAAZ,EAAyB;AACrB,aAAKpD,WAAL,CAAiBsE,IAAjB,CAAsBC,OAAtB,CAA8BnB,WAA9B,GACIkC,OAAO,CAAClC,WAAR,CAAoBoC,YADxB;AAEH;;AACD,UAAIF,OAAO,CAACnG,iBAAZ,EAA+B;AAC3B,aAAKa,WAAL,CAAiBsE,IAAjB,CAAsBC,OAAtB,CAA8BpF,iBAA9B,GACImG,OAAO,CAACnG,iBAAR,CAA0BqG,YAD9B;AAEH;;AACD,UAAIF,OAAO,CAACzG,MAAZ,EAAoB;AAChB,YAAM4G,cAAc,GAAGH,OAAO,CAACzG,MAAR,CAAe2G,YAAtC;AACA,YAAME,eAAe,GAAGJ,OAAO,CAACzG,MAAR,CAAe8G,aAAvC;;AACA,YAAID,eAAJ,EAAqB;AACjBxC,UAAAA,MAAM,CAACG,IAAP,CAAYqC,eAAZ,EAA6B7I,OAA7B,CAAqC,UAACyG,GAAD,EAAS;AAC1C,kBAAI,CAAC9E,QAAL,CAAcoH,WAAd,CAA0B,MAAI,CAACvD,UAA/B,EAA2CiB,GAA3C;AACH,WAFD;AAGH;;AACD,YAAImC,cAAJ,EAAoB;AAChBvC,UAAAA,MAAM,CAACG,IAAP,CAAYoC,cAAZ,EAA4B5I,OAA5B,CAAoC,UAACyG,GAAD,EAAS;AACzC,kBAAI,CAAC9E,QAAL,CAAc+E,QAAd,CAAuB,MAAI,CAAClB,UAA5B,EAAwCiB,GAAxC,EAA6C,MAAI,CAACzE,MAAL,CAAYyE,GAAZ,CAA7C;AACH,WAFD;AAGH;AACJ;;AACD,UAAIgC,OAAO,CAAC9B,OAAZ,EAAqB;AACjB,YAAMqC,cAAc,GAAGP,OAAO,CAAC9B,OAAR,CAAgBgC,YAAvC;AACA,YAAMM,eAAe,GAAGR,OAAO,CAAC9B,OAAR,CAAgBmC,aAAxC;;AACA,YAAIG,eAAJ,EAAqB;AACjB,eAAKC,aAAL,CAAmBD,eAAnB;AACH;;AACD,YAAID,cAAJ,EAAoB;AAChB,eAAKpC,UAAL,CAAgBoC,cAAhB;AACH;AACJ,OAvCgB,CAwCjB;AACA;;;AACA,UAAIP,OAAO,CAAC3K,YAAZ,EAA0B;AACtB,aAAKoK,sBAAL;AACH;AACD;;AACH;;;WACD,SAAAtB,UAAU,CAACuC,SAAD,EAAY;AAAA;;AAClB7H,MAAAA,eAAe,CAAC8H,mBAAhB,CAAoCD,SAApC,EAA+CnJ,OAA/C,CAAuD,UAACqJ,CAAD,EAAO;AAC1D,cAAI,CAAC1H,QAAL,CAAc2H,QAAd,CAAuB,MAAI,CAAC9D,UAA5B,EAAwC6D,CAAxC;AACH,OAFD;AAGH;;;WACD,SAAAH,aAAa,CAACC,SAAD,EAAY;AAAA;;AACrB7H,MAAAA,eAAe,CAAC8H,mBAAhB,CAAoCD,SAApC,EAA+CnJ,OAA/C,CAAuD,UAACqJ,CAAD,EAAO;AAC1D,cAAI,CAAC1H,QAAL,CAAc4H,WAAd,CAA0B,MAAI,CAAC/D,UAA/B,EAA2C6D,CAA3C;AACH,OAFD;AAGH;;;WACD,SAAAG,UAAU,CAACb,YAAD,EAAe;AACrB;AACA,UAAI,KAAKtG,UAAL,IAAmBsG,YAAY,KAAK,IAAxC,EAA8C;AAC1C;AACH;;AACD,WAAKpD,OAAL,GAAeoD,YAAf;;AACA,UAAI,CAAC,KAAKxF,WAAV,EAAuB;AACnB;AACH;;AACD,UAAMrE,MAAM,GAAGD,SAAS,CAAC,KAAKC,MAAN,EAAc,KAAK+C,OAAL,CAAatC,MAAb,CAAoBT,MAAlC,CAAxB;AACA,UAAM+I,QAAQ,GAAG,KAAK/D,WAAL,CAAiB,KAAKX,WAAtB,EAAmCwF,YAAnC,CAAjB;;AACA,UAAI,KAAKvG,aAAT,EAAwB;AACpB,YAAMqH,kBAAkB,GAAG,KAAKtG,WAAL,CAAiBO,WAAjB,EAA3B;;AACA,YAAIC,IAAI,CAACC,SAAL,CAAe6F,kBAAf,MAAuC9F,IAAI,CAACC,SAAL,CAAeiE,QAAf,CAA3C,EAAqE;AACjE;AACH;AACJ;;AACD,UAAIc,YAAJ,EAAkB;AACd,YAAI7J,MAAM,KAAK,MAAf,EAAuB;AACnB,eAAKqE,WAAL,CAAiByE,OAAjB,CAAyBe,YAAzB;AACH,SAFD,MAGK;AACD,eAAKxF,WAAL,CAAiB2E,WAAjB,CAA6BD,QAA7B;AACH;;AACD;AACH;;AACD,WAAK1E,WAAL,CAAiByE,OAAjB,CAAyB,EAAzB;AACH;;;WACD,SAAAK,gBAAgB,GAA6B;AAAA,UAA5ByB,UAA4B,uEAAf,KAAK7G,QAAU;AACzC;AACA,WAAKA,QAAL,GAAgB6G,UAAhB;;AACA,UAAI,KAAKvG,WAAT,EAAsB;AAClB,YAAIuG,UAAJ,EAAgB;AACZ,eAAKvG,WAAL,CAAiBwG,OAAjB;AACA,eAAKhI,QAAL,CAAciI,YAAd,CAA2B,KAAKrI,UAAL,CAAgB4E,aAA3C,EAA0D,UAA1D,EAAsE,UAAtE;AACH,SAHD,MAIK;AACD,cAAI,CAAC,KAAKa,QAAV,EAAoB;AAChB,iBAAK7D,WAAL,CAAiBuF,MAAjB;AACH;;AACD,eAAK/G,QAAL,CAAckI,eAAd,CAA8B,KAAKtI,UAAL,CAAgB4E,aAA9C,EAA6D,UAA7D;AACH;AACJ;AACJ;;;WACD,SAAA2D,gBAAgB,CAACC,EAAD,EAAK;AACjB,WAAKpE,aAAL,GAAqBoE,EAArB;AACH;;;WACD,SAAAC,iBAAiB,CAACD,EAAD,EAAK;AAClB,WAAKnF,cAAL,GAAsBmF,EAAtB;AACH;;;WACD,SAAAE,yBAAyB,CAACF,EAAD,EAAK;AAC1B,WAAK5B,kBAAL,GAA0B4B,EAA1B;AACH;;;WACD,SAAAG,QAAQ,GAAG;AACP,UAAI,CAAC,KAAK/G,WAAV,EAAuB;AACnB,eAAO,IAAP;AACH;;AACD,UAAMgH,GAAG,GAAG,EAAZ;AACA,UAAIC,KAAK,GAAG,IAAZ;AACA,UAAM9E,IAAI,GAAG,KAAKnC,WAAL,CAAiBM,OAAjB,EAAb,CANO,CAOP;;AACA,UAAM4G,UAAU,GAAG,KAAKlI,gBAAL,GAAwBmD,IAAI,CAACgF,IAAL,GAAYxF,MAApC,GAA8CQ,IAAI,CAACR,MAAL,KAAgB,CAAhB,IAAqBQ,IAAI,CAACgF,IAAL,GAAYxF,MAAZ,KAAuB,CAA5C,GAAgD,CAAhD,GAAoDQ,IAAI,CAACR,MAAL,GAAc,CAAnI;AACA,UAAMyF,eAAe,GAAG,KAAKpH,WAAL,CAAiBO,WAAjB,GAA+B8G,GAAvD;AACA,UAAMC,kBAAkB,GAAGF,eAAe,IAAIA,eAAe,CAACzF,MAAhB,KAA2B,CAA9C,IAAmD,CAAC,IAAD,EAAO,EAAP,EAAWb,QAAX,CAAoBsG,eAAe,CAAC,CAAD,CAAf,CAAmBjG,MAAvC,CAA9E;;AACA,UAAI,KAAKoG,SAAL,IAAkBL,UAAlB,IAAgCA,UAAU,GAAG,KAAKK,SAAtD,EAAiE;AAC7DP,QAAAA,GAAG,CAACQ,cAAJ,GAAqB;AACjBC,UAAAA,KAAK,EAAEP,UADU;AAEjBK,UAAAA,SAAS,EAAE,KAAKA;AAFC,SAArB;AAIAN,QAAAA,KAAK,GAAG,KAAR;AACH;;AACD,UAAI,KAAKS,SAAL,IAAkBR,UAAU,GAAG,KAAKQ,SAAxC,EAAmD;AAC/CV,QAAAA,GAAG,CAACW,cAAJ,GAAqB;AACjBF,UAAAA,KAAK,EAAEP,UADU;AAEjBQ,UAAAA,SAAS,EAAE,KAAKA;AAFC,SAArB;AAIAT,QAAAA,KAAK,GAAG,KAAR;AACH;;AACD,UAAI,KAAKtI,QAAL,IAAiB,CAACuI,UAAlB,IAAgCI,kBAApC,EAAwD;AACpDN,QAAAA,GAAG,CAACY,aAAJ,GAAoB;AAChBC,UAAAA,KAAK,EAAE;AADS,SAApB;AAGAZ,QAAAA,KAAK,GAAG,KAAR;AACH;;AACD,aAAOA,KAAK,GAAG,IAAH,GAAUD,GAAtB;AACH;;;WACD,SAAAjC,sBAAsB,GAAG;AAAA;;AACrB,WAAKI,OAAL,GADqB,CAErB;AACA;AACA;;AACA,WAAK1G,IAAL,CAAUwF,iBAAV,CAA4B,YAAM;AAC9B,cAAI,CAACpE,YAAL,GAAoB,IAAIrF,+CAAJ,EAApB;;AACA,cAAI,CAACqF,YAAL,CAAkBiI,GAAlB,EACA;AACArN,QAAAA,gDAAS,CAAC,MAAI,CAACuF,WAAN,EAAmB,kBAAnB,CAAT,CAAgD+C,SAAhD,CAA0D,iBAA+B;AAAA;AAAA,cAA7B1B,KAA6B;AAAA,cAAtBC,QAAsB;AAAA,cAAZC,MAAY;;AACrF,gBAAI,CAACH,sBAAL,CAA4BC,KAA5B,EAAmCC,QAAnC,EAA6CC,MAA7C;AACH,SAFD,CAFA,EAF8B,CAO9B;AACA;;;AACA,YAAIwG,WAAW,GAAGtN,gDAAS,CAAC,MAAI,CAACuF,WAAN,EAAmB,aAAnB,CAA3B;AACA,YAAIgI,aAAa,GAAGvN,gDAAS,CAAC,MAAI,CAACuF,WAAN,EAAmB,eAAnB,CAA7B;;AACA,YAAI,OAAO,MAAI,CAACrF,YAAZ,KAA6B,QAAjC,EAA2C;AACvCoN,UAAAA,WAAW,GAAGA,WAAW,CAACxK,IAAZ,CAAiB5C,6DAAY,CAAC,MAAI,CAACA,YAAN,CAA7B,CAAd;AACAqN,UAAAA,aAAa,GAAGA,aAAa,CAACzK,IAAd,CAAmB5C,6DAAY,CAAC,MAAI,CAACA,YAAN,CAA/B,CAAhB;AACH;;AACD,cAAI,CAACkF,YAAL,CAAkBiI,GAAlB,EACA;AACAC,QAAAA,WAAW,CAAChF,SAAZ,CAAsB,iBAA+B;AAAA;AAAA,cAA7Bd,KAA6B;AAAA,cAAtBC,QAAsB;AAAA,cAAZX,MAAY;;AACjD,gBAAI,CAACS,iBAAL,CAAuBC,KAAvB,EAA8BC,QAA9B,EAAwCX,MAAxC;AACH,SAFD,CAFA;;AAKA,cAAI,CAAC1B,YAAL,CAAkBiI,GAAlB,EACA;AACAE,QAAAA,aAAa,CAACjF,SAAd,CAAwB,iBAAmC;AAAA;AAAA,cAAjCL,KAAiC;AAAA,cAA1BC,OAA0B;AAAA,cAAjBC,GAAiB;AAAA,cAAZrB,MAAY;;AACvD,gBAAI,CAACkB,mBAAL,CAAyBC,KAAzB,EAAgCC,OAAhC,EAAyCC,GAAzC,EAA8CrB,MAA9C;AACH,SAFD,CAFA;AAKH,OAzBD;AA0BH;;;WACD,SAAA4D,OAAO,GAAG;AACN,UAAI,KAAKtF,YAAL,KAAsB,IAA1B,EAAgC;AAC5B,aAAKA,YAAL,CAAkBuF,WAAlB;AACA,aAAKvF,YAAL,GAAoB,IAApB;AACH;AACJ;;;WA1TD,SAAOoG,mBAAP,CAA2BzC,OAA3B,EAAoC;AAChC,UAAMwC,SAAS,GAAGxC,OAAO,CAAC2D,IAAR,GAAec,KAAf,CAAqB,GAArB,CAAlB;AACA,aAAOjC,SAAS,CAACkC,MAAV,CAAiB,UAACC,IAAD,EAAOC,GAAP,EAAe;AACnC,YAAMC,OAAO,GAAGD,GAAG,CAACjB,IAAJ,EAAhB;;AACA,YAAIkB,OAAJ,EAAa;AACTF,UAAAA,IAAI,CAACG,IAAL,CAAUD,OAAV;AACH;;AACD,eAAOF,IAAP;AACH,OANM,EAMJ,EANI,CAAP;AAOH;;;;AAmTLhK,eAAe,CAACP,IAAhB;AAAA,mBAA4GO,eAA5G,EA5gB+FjF,+DA4gB/F,CAA6IA,mDAA7I,GA5gB+FA,+DA4gB/F,CAAqKA,qDAArK,GA5gB+FA,+DA4gB/F,CAA+LA,4DAA/L,GA5gB+FA,+DA4gB/F,CAAgOmB,oEAAhO,GA5gB+FnB,+DA4gB/F,CAA4PO,sDAA5P,GA5gB+FP,+DA4gB/F,CAAoRA,oDAApR,GA5gB+FA,+DA4gB/F,CAA6SA,iDAA7S,GA5gB+FA,+DA4gB/F,CAAmUgD,YAAnU;AAAA;;AACAiC,eAAe,CAACoK,IAAhB,kBA7gB+FrP,+DA6gB/F;AAAA,QAAgGiF,eAAhG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aA7gB+FjF,kEA6gB/F;AAAA;;AACA;AAAA,qDA9gB+FA,+DA8gB/F,CAA2FiF,eAA3F,EAAwH,CAAC;AAC7GJ,IAAAA,IAAI,EAAErE,oDAASA;AAD8F,GAAD,CAAxH,EAE4B,YAAY;AAAE,WAAO,CAAC;AAAEqE,MAAAA,IAAI,EAAE7E,mDAAW2E;AAAnB,KAAD,EAAwB;AAAEE,MAAAA,IAAI,EAAE7E,qDAAaW;AAArB,KAAxB,EAAiD;AAAEkE,MAAAA,IAAI,EAAE7E,4DAAoBY;AAA5B,KAAjD,EAAiF;AAAEiE,MAAAA,IAAI,EAAE1D,oEAAeC;AAAvB,KAAjF,EAA4G;AAAEyD,MAAAA,IAAI,EAAEE,SAAR;AAAmBC,MAAAA,UAAU,EAAE,CAAC;AACzKH,QAAAA,IAAI,EAAEzE,iDADmK;AAEzK0E,QAAAA,IAAI,EAAE,CAACvE,sDAAD;AAFmK,OAAD;AAA/B,KAA5G,EAG3B;AAAEsE,MAAAA,IAAI,EAAE7E,oDAAYa;AAApB,KAH2B,EAGH;AAAEgE,MAAAA,IAAI,EAAE7E,iDAASc;AAAjB,KAHG,EAGkB;AAAE+D,MAAAA,IAAI,EAAE7B;AAAR,KAHlB,CAAP;AAGmD,GAL7F,EAK+G;AAAEP,IAAAA,MAAM,EAAE,CAAC;AAC1GoC,MAAAA,IAAI,EAAEpE,gDAAKA;AAD+F,KAAD,CAAV;AAE/FuK,IAAAA,KAAK,EAAE,CAAC;AACRnG,MAAAA,IAAI,EAAEpE,gDAAKA;AADH,KAAD,CAFwF;AAI/FsC,IAAAA,OAAO,EAAE,CAAC;AACV8B,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CAJsF;AAM/FiK,IAAAA,KAAK,EAAE,CAAC;AACR7F,MAAAA,IAAI,EAAEpE,gDAAKA;AADH,KAAD,CANwF;AAQ/FkK,IAAAA,QAAQ,EAAE,CAAC;AACX9F,MAAAA,IAAI,EAAEpE,gDAAKA;AADA,KAAD,CARqF;AAU/FyJ,IAAAA,WAAW,EAAE,CAAC;AACdrF,MAAAA,IAAI,EAAEpE,gDAAKA;AADG,KAAD,CAVkF;AAY/F+N,IAAAA,SAAS,EAAE,CAAC;AACZ3J,MAAAA,IAAI,EAAEpE,gDAAKA;AADC,KAAD,CAZoF;AAc/F4N,IAAAA,SAAS,EAAE,CAAC;AACZxJ,MAAAA,IAAI,EAAEpE,gDAAKA;AADC,KAAD,CAdoF;AAgB/FgF,IAAAA,QAAQ,EAAE,CAAC;AACXZ,MAAAA,IAAI,EAAEpE,gDAAKA;AADA,KAAD,CAhBqF;AAkB/FqK,IAAAA,OAAO,EAAE,CAAC;AACVjG,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CAlBsF;AAoB/FiF,IAAAA,qBAAqB,EAAE,CAAC;AACxBb,MAAAA,IAAI,EAAEpE,gDAAKA;AADa,KAAD,CApBwE;AAsB/FkH,IAAAA,QAAQ,EAAE,CAAC;AACX9C,MAAAA,IAAI,EAAEpE,gDAAKA;AADA,KAAD,CAtBqF;AAwB/FkF,IAAAA,MAAM,EAAE,CAAC;AACTd,MAAAA,IAAI,EAAEpE,gDAAKA;AADF,KAAD,CAxBuF;AA0B/FmF,IAAAA,MAAM,EAAE,CAAC;AACTf,MAAAA,IAAI,EAAEpE,gDAAKA;AADF,KAAD,CA1BuF;AA4B/FoK,IAAAA,kBAAkB,EAAE,CAAC;AACrBhG,MAAAA,IAAI,EAAEpE,gDAAKA;AADU,KAAD,CA5B2E;AA8B/F+J,IAAAA,MAAM,EAAE,CAAC;AACT3F,MAAAA,IAAI,EAAEpE,gDAAKA;AADF,KAAD,CA9BuF;AAgC/FiD,IAAAA,aAAa,EAAE,CAAC;AAChBmB,MAAAA,IAAI,EAAEpE,gDAAKA;AADK,KAAD,CAhCgF;AAkC/FyD,IAAAA,aAAa,EAAE,CAAC;AAChBW,MAAAA,IAAI,EAAEpE,gDAAKA;AADK,KAAD,CAlCgF;AAoC/F2I,IAAAA,YAAY,EAAE,CAAC;AACfvE,MAAAA,IAAI,EAAEpE,gDAAKA;AADI,KAAD,CApCiF;AAsC/FoF,IAAAA,kBAAkB,EAAE,CAAC;AACrBhB,MAAAA,IAAI,EAAEpE,gDAAKA;AADU,KAAD,CAtC2E;AAwC/F6J,IAAAA,OAAO,EAAE,CAAC;AACVzF,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CAxCsF;AA0C/FqF,IAAAA,gBAAgB,EAAE,CAAC;AACnBjB,MAAAA,IAAI,EAAEpE,gDAAKA;AADQ,KAAD,CA1C6E;AA4C/FwK,IAAAA,eAAe,EAAE,CAAC;AAClBpG,MAAAA,IAAI,EAAEpE,gDAAKA;AADO,KAAD,CA5C8E;AA8C/FsF,IAAAA,aAAa,EAAE,CAAC;AAChBlB,MAAAA,IAAI,EAAEpE,gDAAKA;AADK,KAAD,CA9CgF;AAgD/FuF,IAAAA,UAAU,EAAE,CAAC;AACbnB,MAAAA,IAAI,EAAEpE,gDAAKA;AADE,KAAD,CAhDmF;AAkD/FgB,IAAAA,YAAY,EAAE,CAAC;AACfoD,MAAAA,IAAI,EAAEpE,gDAAKA;AADI,KAAD,CAlDiF;AAoD/FwF,IAAAA,iBAAiB,EAAE,CAAC;AACpBpB,MAAAA,IAAI,EAAEpE,gDAAKA;AADS,KAAD,CApD4E;AAsD/FyF,IAAAA,eAAe,EAAE,CAAC;AAClBrB,MAAAA,IAAI,EAAEnE,iDAAMA;AADM,KAAD,CAtD8E;AAwD/FyF,IAAAA,eAAe,EAAE,CAAC;AAClBtB,MAAAA,IAAI,EAAEnE,iDAAMA;AADM,KAAD,CAxD8E;AA0D/F0F,IAAAA,gBAAgB,EAAE,CAAC;AACnBvB,MAAAA,IAAI,EAAEnE,iDAAMA;AADO,KAAD,CA1D6E;AA4D/F2F,IAAAA,kBAAkB,EAAE,CAAC;AACrBxB,MAAAA,IAAI,EAAEnE,iDAAMA;AADS,KAAD,CA5D2E;AA8D/F4F,IAAAA,OAAO,EAAE,CAAC;AACVzB,MAAAA,IAAI,EAAEnE,iDAAMA;AADF,KAAD,CA9DsF;AAgE/F6F,IAAAA,MAAM,EAAE,CAAC;AACT1B,MAAAA,IAAI,EAAEnE,iDAAMA;AADH,KAAD,CAhEuF;AAkE/FmG,IAAAA,WAAW,EAAE,CAAC;AACdhC,MAAAA,IAAI,EAAEpE,gDAAKA;AADG,KAAD,CAlEkF;AAoE/FgH,IAAAA,WAAW,EAAE,CAAC;AACd5C,MAAAA,IAAI,EAAEpE,gDAAKA;AADG,KAAD;AApEkF,GAL/G;AAAA;;IA4EM6O;AACF,gCAAYrM,QAAZ,EAAsBiC,UAAtB,EAAkCC,EAAlC,EAAsCC,YAAtC,EAAoDC,UAApD,EAAgEC,QAAhE,EAA0EC,IAA1E,EAAgFC,OAAhF,EAAyF;AAAA;;AAAA,mDAC/EvC,QAD+E,EACrEiC,UADqE,EACzDC,EADyD,EACrDC,YADqD,EACvCC,UADuC,EAC3BC,QAD2B,EACjBC,IADiB,EACXC,OADW;AAExF;;;;;EAH8BP;;AAKnCqK,oBAAoB,CAAC5K,IAArB;AAAA,mBAAiH4K,oBAAjH,EA/lB+FtP,+DA+lB/F,CAAuJA,mDAAvJ,GA/lB+FA,+DA+lB/F,CAA+KW,qDAA/K,GA/lB+FX,+DA+lB/F,CAAsMY,4DAAtM,GA/lB+FZ,+DA+lB/F,CAAoOoB,oEAApO,GA/lB+FpB,+DA+lB/F,CAA6PO,sDAA7P,GA/lB+FP,+DA+lB/F,CAAqRa,oDAArR,GA/lB+Fb,+DA+lB/F,CAA2Sc,iDAA3S,GA/lB+Fd,+DA+lB/F,CAA8TgD,YAA9T;AAAA;;AACAsM,oBAAoB,CAACC,IAArB,kBAhmB+FvP,+DAgmB/F;AAAA,QAAqGsP,oBAArG;AAAA;AAAA,aAhmB+FtP,gEAgmB/F,CAAgK,CACxJ;AACIwP,IAAAA,KAAK,EAAE,IADX;AAEIC,IAAAA,OAAO,EAAE/N,8DAFb;AAGI;AACAgO,IAAAA,WAAW,EAAE3O,yDAAU,CAAC;AAAA,aAAMuO,oBAAN;AAAA,KAAD;AAJ3B,GADwJ,EAOxJ;AACIE,IAAAA,KAAK,EAAE,IADX;AAEIC,IAAAA,OAAO,EAAE9N,0DAFb;AAGI;AACA+N,IAAAA,WAAW,EAAE3O,yDAAU,CAAC;AAAA,aAAMuO,oBAAN;AAAA,KAAD;AAJ3B,GAPwJ,CAAhK,GAhmB+FtP,wEAgmB/F;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAhmB+FA,MAAAA,6DAgmB/F;AAhmB+FA,MAAAA,wDA8mB7F,0EAdF;AAhmB+FA,MAAAA,0DAknB7F,GAlBF;AAhmB+FA,MAAAA,wDAmnB7F,0EAnBF;AAAA;;AAAA;AAhmB+FA,MAAAA,wDA8mB9E,uCAdjB;AAhmB+FA,MAAAA,uDAmnB9E,GAnBjB;AAhmB+FA,MAAAA,wDAmnB9E,uCAnBjB;AAAA;AAAA;AAAA,eAuBmFJ,kDAvBnF;AAAA;AAAA;AAAA;;AAwBA;AAAA,qDAxnB+FI,+DAwnB/F,CAA2FsP,oBAA3F,EAA6H,CAAC;AAClHzK,IAAAA,IAAI,EAAE7D,oDAD4G;AAElH8D,IAAAA,IAAI,EAAE,CAAC;AACC8K,MAAAA,aAAa,EAAE3O,iEADhB;AAEC6O,MAAAA,SAAS,EAAE,CACP;AACIN,QAAAA,KAAK,EAAE,IADX;AAEIC,QAAAA,OAAO,EAAE/N,8DAFb;AAGI;AACAgO,QAAAA,WAAW,EAAE3O,yDAAU,CAAC;AAAA,iBAAMuO,oBAAN;AAAA,SAAD;AAJ3B,OADO,EAOP;AACIE,QAAAA,KAAK,EAAE,IADX;AAEIC,QAAAA,OAAO,EAAE9N,0DAFb;AAGI;AACA+N,QAAAA,WAAW,EAAE3O,yDAAU,CAAC;AAAA,iBAAMuO,oBAAN;AAAA,SAAD;AAJ3B,OAPO,CAFZ;AAgBCS,MAAAA,QAAQ,EAAE,cAhBX;AAiBCC,MAAAA,QAAQ,6bAjBT;AA4BCrK,MAAAA,MAAM,EAAE;AA5BT,KAAD;AAF4G,GAAD,CAA7H,EAsC4B,YAAY;AAAE,WAAO,CAAC;AAAEd,MAAAA,IAAI,EAAE7E,mDAAW2E;AAAnB,KAAD,EAAwB;AAAEE,MAAAA,IAAI,EAAE7E,qDAAR;AAAuBgF,MAAAA,UAAU,EAAE,CAAC;AACzFH,QAAAA,IAAI,EAAEzE,iDADmF;AAEzF0E,QAAAA,IAAI,EAAE,CAACnE,qDAAD;AAFmF,OAAD;AAAnC,KAAxB,EAG3B;AAAEkE,MAAAA,IAAI,EAAE7E,4DAAR;AAA8BgF,MAAAA,UAAU,EAAE,CAAC;AAC7CH,QAAAA,IAAI,EAAEzE,iDADuC;AAE7C0E,QAAAA,IAAI,EAAE,CAAClE,4DAAD;AAFuC,OAAD;AAA1C,KAH2B,EAM3B;AAAEiE,MAAAA,IAAI,EAAE1D,oEAAR;AAAyB6D,MAAAA,UAAU,EAAE,CAAC;AACxCH,QAAAA,IAAI,EAAEzE,iDADkC;AAExC0E,QAAAA,IAAI,EAAE,CAAC1D,oEAAD;AAFkC,OAAD;AAArC,KAN2B,EAS3B;AAAEyD,MAAAA,IAAI,EAAEE,SAAR;AAAmBC,MAAAA,UAAU,EAAE,CAAC;AAClCH,QAAAA,IAAI,EAAEzE,iDAD4B;AAElC0E,QAAAA,IAAI,EAAE,CAACvE,sDAAD;AAF4B,OAAD;AAA/B,KAT2B,EAY3B;AAAEsE,MAAAA,IAAI,EAAE7E,oDAAR;AAAsBgF,MAAAA,UAAU,EAAE,CAAC;AACrCH,QAAAA,IAAI,EAAEzE,iDAD+B;AAErC0E,QAAAA,IAAI,EAAE,CAACjE,oDAAD;AAF+B,OAAD;AAAlC,KAZ2B,EAe3B;AAAEgE,MAAAA,IAAI,EAAE7E,iDAAR;AAAmBgF,MAAAA,UAAU,EAAE,CAAC;AAClCH,QAAAA,IAAI,EAAEzE,iDAD4B;AAElC0E,QAAAA,IAAI,EAAE,CAAChE,iDAAD;AAF4B,OAAD;AAA/B,KAf2B,EAkB3B;AAAE+D,MAAAA,IAAI,EAAE7B,YAAR;AAAsBgC,MAAAA,UAAU,EAAE,CAAC;AACrCH,QAAAA,IAAI,EAAEzE,iDAD+B;AAErC0E,QAAAA,IAAI,EAAE,CAAC9B,YAAD;AAF+B,OAAD;AAAlC,KAlB2B,CAAP;AAqBlB,GA3DxB;AAAA;;IA6DMiN;AACF,kCAAYC,SAAZ,EAAuB1K,OAAvB,EAAgC;AAAA;;AAC5B,SAAK0K,SAAL,GAAiBA,SAAjB;AACA,SAAK1K,OAAL,GAAeA,OAAf;AACA,SAAK0D,OAAL,GAAe,EAAf;AACA,SAAKhC,SAAL,GAAiB,EAAjB;AACA,SAAKiJ,UAAL,GAAkB,SAAlB;AACH;;;;WACD,SAAAhE,WAAW,CAACC,OAAD,EAAU;AACjB,UAAIA,OAAO,CAACpB,KAAZ,EAAmB;AACf,YAAMA,KAAK,GAAGoB,OAAO,CAACpB,KAAR,CAAcsB,YAAd,KAA+B,KAAK9G,OAAL,CAAatC,MAAb,CAAoB8H,KAApB,GAA4B,KAAKxF,OAAL,CAAatC,MAAb,CAAoB8H,KAAhD,GAAwD,MAAvF,CAAd;AACA,aAAKmF,UAAL,gBAAwBnF,KAAxB;AACH,OAHD,MAIK,IAAI,CAAC,KAAKA,KAAV,EAAiB;AAClB,YAAMA,MAAK,GAAG,KAAKxF,OAAL,CAAatC,MAAb,CAAoB8H,KAApB,GAA4B,KAAKxF,OAAL,CAAatC,MAAb,CAAoB8H,KAAhD,GAAwD,MAAtE;;AACA,aAAKmF,UAAL,gBAAwBnF,MAAxB;AACH;;AACD,UAAIoB,OAAO,CAAClD,OAAZ,EAAqB;AACjB,YAAMA,OAAO,GAAGkD,OAAO,CAAClD,OAAR,CAAgBoD,YAAhC;AACA,YAAM3E,QAAQ,GAAG,CAAC,IAAD,EAAO,KAAP,EAAcC,QAAd,CAAuB,KAAKD,QAA5B,IAAwC,KAAKA,QAA7C,GAAyD,KAAKnC,OAAL,CAAatC,MAAb,CAAoByE,QAApB,IAAgC,KAA1G;AACA,aAAKT,SAAL,GAAiBS,QAAQ,GAAGuB,OAAH,GAAa,KAAKgH,SAAL,CAAeE,uBAAf,CAAuClH,OAAvC,CAAtC;AACH;AACJ;;;;AAEL+G,sBAAsB,CAACvL,IAAvB;AAAA,mBAAmHuL,sBAAnH,EA7sB+FjQ,+DA6sB/F,CAA2JoB,oEAA3J,GA7sB+FpB,+DA6sB/F,CAAoLgD,YAApL;AAAA;;AACAiN,sBAAsB,CAACV,IAAvB,kBA9sB+FvP,+DA8sB/F;AAAA,QAAuGiQ,sBAAvG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aA9sB+FjQ,kEA8sB/F;AAAA;AAAA;AAAA;AAAA;AAAA;AA9sB+FA,MAAAA,4DA+sB7F,aADF;AA9sB+FA,MAAAA,uDAgtB3F,aAFJ;AA9sB+FA,MAAAA,0DAktB7F,EAJF;AAAA;;AAAA;AA9sB+FA,MAAAA,wDA+sBnE,2BAD5B;AA9sB+FA,MAAAA,uDAgtBpE,GAF3B;AA9sB+FA,MAAAA,wDAgtBpE,6BAhtBoEA,4DAgtBpE,CAF3B;AAAA;AAAA;AAAA,eAKmGJ,qDALnG;AAAA;AAAA;AAAA;;AAMA;AAAA,qDAptB+FI,+DAotB/F,CAA2FiQ,sBAA3F,EAA+H,CAAC;AACpHpL,IAAAA,IAAI,EAAE7D,oDAD8G;AAEpH8D,IAAAA,IAAI,EAAE,CAAC;AACC8K,MAAAA,aAAa,EAAE3O,iEADhB;AAEC8O,MAAAA,QAAQ,EAAE,iBAFX;AAGCpK,MAAAA,MAAM,EAAE,4DAHT;AAQCqK,MAAAA,QAAQ;AART,KAAD;AAF8G,GAAD,CAA/H,EAiB4B,YAAY;AAAE,WAAO,CAAC;AAAEnL,MAAAA,IAAI,EAAE1D,oEAAR;AAAyB6D,MAAAA,UAAU,EAAE,CAAC;AACpEH,QAAAA,IAAI,EAAEzE,iDAD8D;AAEpE0E,QAAAA,IAAI,EAAE,CAAC1D,oEAAD;AAF8D,OAAD;AAArC,KAAD,EAG3B;AAAEyD,MAAAA,IAAI,EAAE7B;AAAR,KAH2B,CAAP;AAGM,GApBhD,EAoBkE;AAAEkG,IAAAA,OAAO,EAAE,CAAC;AAC9DrE,MAAAA,IAAI,EAAEpE,gDAAKA;AADmD,KAAD,CAAX;AAElDuK,IAAAA,KAAK,EAAE,CAAC;AACRnG,MAAAA,IAAI,EAAEpE,gDAAKA;AADH,KAAD,CAF2C;AAIlDkH,IAAAA,QAAQ,EAAE,CAAC;AACX9C,MAAAA,IAAI,EAAEpE,gDAAKA;AADA,KAAD;AAJwC,GApBlE;AAAA;;IA4BM6P;AACF,8BAAYpL,UAAZ,EAAwBI,QAAxB,EAAkCC,IAAlC,EAAwCC,OAAxC,EAAiDJ,YAAjD,EAA+DC,UAA/D,EAA2E;AAAA;;AAAA;;AACvE,SAAKH,UAAL,GAAkBA,UAAlB;AACA,SAAKI,QAAL,GAAgBA,QAAhB;AACA,SAAKC,IAAL,GAAYA,IAAZ;AACA,SAAKC,OAAL,GAAeA,OAAf;AACA,SAAKJ,YAAL,GAAoBA,YAApB;AACA,SAAKC,UAAL,GAAkBA,UAAlB;AACA,SAAKO,MAAL,GAAc,IAAd;AACA,SAAK1B,aAAL,GAAqB,EAArB;AACA,SAAKR,aAAL,GAAqB,EAArB;AACA,SAAKmC,kBAAL,GAA0B,KAA1B;AACA,SAAKK,eAAL,GAAuB,IAAI7F,uDAAJ,EAAvB;AACA,SAAKoG,QAAL,GAAgB,KAAhB;AACA,SAAKG,iBAAL,GAAyB,IAAzB;;AACA,SAAKa,WAAL,GAAmB,UAACX,WAAD,EAAcY,KAAd,EAAwB;AACvC,UAAMjF,MAAM,GAAGD,SAAS,CAAC,MAAI,CAACC,MAAN,EAAc,MAAI,CAAC+C,OAAL,CAAatC,MAAb,CAAoBT,MAAlC,CAAxB;AACA,UAAIyG,OAAO,GAAGxB,KAAd;;AACA,UAAIjF,MAAM,KAAK,MAAf,EAAuB;AACnBqE,QAAAA,WAAW,CAACyE,OAAZ,CAAoBrC,OAApB;AACH,OAFD,MAGK;AACD,YAAIzG,MAAM,KAAK,MAAf,EAAuB;AACnB,cAAMkF,QAAQ,GAAG,CAAC,IAAD,EAAO,KAAP,EAAcC,QAAd,CAAuB,MAAI,CAACD,QAA5B,IAAwC,MAAI,CAACA,QAA7C,GAAyD,MAAI,CAACnC,OAAL,CAAatC,MAAb,CAAoByE,QAApB,IAAgC,KAA1G;;AACA,cAAIA,QAAJ,EAAc;AACVD,YAAAA,KAAK,GAAG,MAAI,CAACtC,YAAL,CAAkBuC,QAAlB,CAA2BrH,+DAA3B,EAAiDoH,KAAjD,CAAR;AACH;;AACDwB,UAAAA,OAAO,GAAGpC,WAAW,CAACgB,SAAZ,CAAsBC,OAAtB,CAA8BL,KAA9B,CAAV;AACH,SAND,MAOK,IAAIjF,MAAM,KAAK,MAAf,EAAuB;AACxB,cAAI;AACAyG,YAAAA,OAAO,GAAG5B,IAAI,CAACU,KAAL,CAAWN,KAAX,CAAV;AACH,WAFD,CAGA,OAAOF,CAAP,EAAU;AACN0B,YAAAA,OAAO,GAAG,CAAC;AAAEjB,cAAAA,MAAM,EAAEP;AAAV,aAAD,CAAV;AACH;AACJ;;AACDZ,QAAAA,WAAW,CAAC2E,WAAZ,CAAwBvC,OAAxB;AACH;AACJ,KAxBD;AAyBH;;;;WACD,SAAAS,QAAQ,GAAG;AACP,WAAKlD,QAAL,GAAgB,KAAKZ,kBAArB;AACH;;;WACD,SAAAsG,WAAW,CAACC,OAAD,EAAU;AACjB,UAAI,CAAC,KAAKtF,WAAV,EAAuB;AACnB;AACH;;AACD,UAAIsF,OAAO,CAAClD,OAAZ,EAAqB;AACjB,aAAKzB,WAAL,CAAiB,KAAKX,WAAtB,EAAmCsF,OAAO,CAAClD,OAAR,CAAgBoD,YAAnD;AACH;AACJ;;;WACD,SAAA1C,eAAe,GAAG;AAAA;;AACd,UAAI9J,kEAAgB,CAAC,KAAKuF,UAAN,CAApB,EAAuC;AACnC;AACH,OAHa,CAId;;;AACA,WAAKuB,iBAAL,GAAyB,KAAKpB,OAAL,CAAaf,QAAb,GAAwBoF,SAAxB,CAAkC,UAAAzG,KAAK,EAAI;AAChE,YAAML,OAAO,GAAGiH,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB,MAAI,CAAClH,OAAL,IAAgB,MAAI,CAACyC,OAAL,CAAatC,MAAb,CAAoBH,OAAtD,CAAhB;AACAA,QAAAA,OAAO,CAAClB,OAAR,GAAkB,KAAlB;;AACA,cAAI,CAAC6B,aAAL,CAAmBC,OAAnB,CAA2B,UAACC,YAAD,EAAkB;AACzC,cAAMC,eAAe,GAAGT,KAAK,CAACU,MAAN,CAAaF,YAAY,CAACE,MAA1B,CAAxB;AACAD,UAAAA,eAAe,CAACE,SAAhB,GAA4BH,YAAY,CAACG,SAAzC;AACAX,UAAAA,KAAK,CAACY,QAAN,CAAeH,eAAf,EAAgC,IAAhC;AACH,SAJD;;AAKA,cAAI,CAACK,aAAL,CAAmBP,OAAnB,CAA2B,kBAA8B;AAAA,cAA3BQ,cAA2B,UAA3BA,cAA2B;AAAA,cAAXC,IAAW,UAAXA,IAAW;AACrDhB,UAAAA,KAAK,CAACY,QAAN,CAAeI,IAAf,EAAqBD,cAArB;AACH,SAFD;;AAGA,YAAIuG,KAAK,GAAG,MAAI,CAACA,KAAjB;;AACA,YAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,KAApB,IAA6B,MAAI,CAAClF,OAAL,CAAatC,MAAb,CAAoBwH,KAArD,EAA4D;AACxDA,UAAAA,KAAK,GAAG,MAAI,CAAClF,OAAL,CAAatC,MAAb,CAAoBwH,KAA5B;AACH;;AACD,YAAII,OAAO,GAAG,MAAI,CAACA,OAAnB;;AACA,YAAI,CAACA,OAAD,IAAYA,OAAO,KAAK/F,SAA5B,EAAuC;AACnC+F,UAAAA,OAAO,GAAG,MAAI,CAACtF,OAAL,CAAatC,MAAb,CAAoB4H,OAApB,GACNd,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB,MAAI,CAACzE,OAAL,CAAatC,MAAb,CAAoB4H,OAAtC,CADM,GAC4C,MAAI,CAACtF,OAAL,CAAatC,MAAb,CAAoB4H,OAApB,KAAgC,IAAhC,GAAuC,IAAvC,GAA8C/F,SADpG;AAEH;;AACD,YAAMiG,KAAK,GAAG,MAAI,CAACA,KAAL,KAAe,MAAI,CAACxF,OAAL,CAAatC,MAAb,CAAoB8H,KAApB,GAA4B,MAAI,CAACxF,OAAL,CAAatC,MAAb,CAAoB8H,KAAhD,GAAwD,MAAvE,CAAd;AACA,cAAI,CAAC7B,UAAL,GAAkB,MAAI,CAACjE,UAAL,CAAgB4E,aAAhB,CAA8B7C,aAA9B,CAA4C,sBAA5C,CAAlB;;AACA,cAAI,CAAC1B,IAAL,CAAUwF,iBAAV,CAA4B,YAAM;AAC9B,gBAAI,CAACjE,WAAL,GAAmB,IAAI1D,KAAJ,CAAU,MAAI,CAAC+F,UAAf,EAA2B;AAC1CuB,YAAAA,KAAK,EAAEA,KADmC;AAE1CI,YAAAA,OAAO,EAAEA,OAFiC;AAG1C/H,YAAAA,OAAO,EAAPA,OAH0C;AAI1C4H,YAAAA,QAAQ,EAAE,IAJgC;AAK1C/E,YAAAA,MAAM,EAAE,MAAI,CAACA,MAL6B;AAM1CoF,YAAAA,KAAK,EAALA;AAN0C,WAA3B,CAAnB;AAQH,SATD;;AAUA,cAAI,CAAC1F,QAAL,CAAc2H,QAAd,CAAuB,MAAI,CAAC9D,UAA5B,EAAwC,gBAAxC;;AACA,YAAI,MAAI,CAACD,OAAT,EAAkB;AACd,gBAAI,CAACzB,WAAL,CAAiB,MAAI,CAACX,WAAtB,EAAmC,MAAI,CAACoC,OAAxC;AACH,SAnC+D,CAoChE;AACA;;;AACA,YAAI,CAAC,MAAI,CAAChD,eAAL,CAAqBsC,SAArB,CAA+BC,MAApC,EAA4C;AACxC;AACH,SAxC+D,CAyChE;AACA;AACA;;;AACAsD,QAAAA,qBAAqB,CAAC,YAAM;AACxB,gBAAI,CAAC7F,eAAL,CAAqByC,IAArB,CAA0B,MAAI,CAAC7B,WAA/B;AACH,SAFoB,CAArB;AAGH,OA/CwB,CAAzB;AAgDH;;;WACD,SAAAkF,WAAW,GAAG;AAAA;;AACV,qCAAKpF,iBAAL,kFAAwBsF,WAAxB;AACA,WAAKtF,iBAAL,GAAyB,IAAzB;AACH;;;;AAEL0J,kBAAkB,CAAC5L,IAAnB;AAAA,mBAA+G4L,kBAA/G,EA/1B+FtQ,+DA+1B/F,CAAmJA,qDAAnJ,GA/1B+FA,+DA+1B/F,CAA6KA,oDAA7K,GA/1B+FA,+DA+1B/F,CAAsMA,iDAAtM,GA/1B+FA,+DA+1B/F,CAA4NgD,YAA5N,GA/1B+FhD,+DA+1B/F,CAAqPmB,oEAArP,GA/1B+FnB,+DA+1B/F,CAAiRO,sDAAjR;AAAA;;AACA+P,kBAAkB,CAACf,IAAnB,kBAh2B+FvP,+DAg2B/F;AAAA,QAAmGsQ,kBAAnG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAh2B+FtQ,kEAg2B/F;AAAA;AAAA;AAAA;AAAA;AAAA;AAh2B+FA,MAAAA,wDAi2B/F,sDADA;AAh2B+FA,MAAAA,wDAk2B/F,sDAFA;AAAA;;AAAA;AAh2B+FA,MAAAA,wDAi2BtE,uBADzB;AAh2B+FA,MAAAA,uDAk2BtE,GAFzB;AAh2B+FA,MAAAA,wDAk2BtE,sBAFzB;AAAA;AAAA;AAAA,eAG8FJ,kDAH9F;AAAA;AAAA;AAAA;;AAIA;AAAA,qDAp2B+FI,+DAo2B/F,CAA2FsQ,kBAA3F,EAA2H,CAAC;AAChHzL,IAAAA,IAAI,EAAE7D,oDAD0G;AAEhH8D,IAAAA,IAAI,EAAE,CAAC;AACC8K,MAAAA,aAAa,EAAE3O,iEADhB;AAEC8O,MAAAA,QAAQ,EAAE,YAFX;AAGCpK,MAAAA,MAAM,EAAE,uDAHT;AAQCqK,MAAAA,QAAQ;AART,KAAD;AAF0G,GAAD,CAA3H,EAe4B,YAAY;AAAE,WAAO,CAAC;AAAEnL,MAAAA,IAAI,EAAE7E,qDAAaW;AAArB,KAAD,EAA0B;AAAEkE,MAAAA,IAAI,EAAE7E,oDAAYa;AAApB,KAA1B,EAAkD;AAAEgE,MAAAA,IAAI,EAAE7E,iDAASc;AAAjB,KAAlD,EAAuE;AAAE+D,MAAAA,IAAI,EAAE7B;AAAR,KAAvE,EAA+F;AAAE6B,MAAAA,IAAI,EAAE1D,oEAAeC;AAAvB,KAA/F,EAA0H;AAAEyD,MAAAA,IAAI,EAAEE,SAAR;AAAmBC,MAAAA,UAAU,EAAE,CAAC;AACvLH,QAAAA,IAAI,EAAEzE,iDADiL;AAEvL0E,QAAAA,IAAI,EAAE,CAACvE,sDAAD;AAFiL,OAAD;AAA/B,KAA1H,CAAP;AAGlB,GAlBxB,EAkB0C;AAAEkC,IAAAA,MAAM,EAAE,CAAC;AACrCoC,MAAAA,IAAI,EAAEpE,gDAAKA;AAD0B,KAAD,CAAV;AAE1BuK,IAAAA,KAAK,EAAE,CAAC;AACRnG,MAAAA,IAAI,EAAEpE,gDAAKA;AADH,KAAD,CAFmB;AAI1BsC,IAAAA,OAAO,EAAE,CAAC;AACV8B,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CAJiB;AAM1BiK,IAAAA,KAAK,EAAE,CAAC;AACR7F,MAAAA,IAAI,EAAEpE,gDAAKA;AADH,KAAD,CANmB;AAQ1BqK,IAAAA,OAAO,EAAE,CAAC;AACVjG,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CARiB;AAU1BkH,IAAAA,QAAQ,EAAE,CAAC;AACX9C,MAAAA,IAAI,EAAEpE,gDAAKA;AADA,KAAD,CAVgB;AAY1BmF,IAAAA,MAAM,EAAE,CAAC;AACTf,MAAAA,IAAI,EAAEpE,gDAAKA;AADF,KAAD,CAZkB;AAc1ByI,IAAAA,OAAO,EAAE,CAAC;AACVrE,MAAAA,IAAI,EAAEpE,gDAAKA;AADD,KAAD,CAdiB;AAgB1ByD,IAAAA,aAAa,EAAE,CAAC;AAChBW,MAAAA,IAAI,EAAEpE,gDAAKA;AADK,KAAD,CAhBW;AAkB1BiD,IAAAA,aAAa,EAAE,CAAC;AAChBmB,MAAAA,IAAI,EAAEpE,gDAAKA;AADK,KAAD,CAlBW;AAoB1BoF,IAAAA,kBAAkB,EAAE,CAAC;AACrBhB,MAAAA,IAAI,EAAEpE,gDAAKA;AADU,KAAD,CApBM;AAsB1ByF,IAAAA,eAAe,EAAE,CAAC;AAClBrB,MAAAA,IAAI,EAAEnE,iDAAMA;AADM,KAAD;AAtBS,GAlB1C;AAAA;;IA4CM6P;;;;;;;WACF,SAAOC,OAAP,CAAetN,MAAf,EAAuB;AACnB,aAAO;AACHuN,QAAAA,QAAQ,EAAEF,WADP;AAEHT,QAAAA,SAAS,EAAE,CACP;AACIL,UAAAA,OAAO,EAAE7M,kBADb;AAEI8N,UAAAA,QAAQ,EAAExN;AAFd,SADO;AAFR,OAAP;AASH;;;;AAELqN,WAAW,CAAC7L,IAAZ;AAAA,mBAAwG6L,WAAxG;AAAA;;AACAA,WAAW,CAACI,IAAZ,kBA95B+F3Q,8DA85B/F;AAAA,QAAyGuQ;AAAzG;AAGAA,WAAW,CAACK,IAAZ,kBAj6B+F5Q,8DAi6B/F;AAAA,YAAgI,CAACD,0DAAD,CAAhI;AAAA;;AACA;AAAA,qDAl6B+FC,+DAk6B/F,CAA2FuQ,WAA3F,EAAoH,CAAC;AACzG1L,IAAAA,IAAI,EAAE3D,mDADmG;AAEzG4D,IAAAA,IAAI,EAAE,CAAC;AACC+L,MAAAA,YAAY,EAAE,CACVvB,oBADU,EAEVgB,kBAFU,EAGVL,sBAHU,CADf;AAMCa,MAAAA,OAAO,EAAE,CAACxB,oBAAD,EAAuBgB,kBAAvB,EAA2CL,sBAA3C,CANV;AAOCc,MAAAA,OAAO,EAAE,CAAChR,0DAAD;AAPV,KAAD;AAFmG,GAAD,CAApH;AAAA;AAaA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;AC3gCA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA","sources":["./node_modules/ngx-quill/fesm2020/ngx-quill.mjs","./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"],"sourcesContent":["import * as i3 from '@angular/common';\nimport { DOCUMENT, isPlatformServer, CommonModule } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { InjectionToken, Injectable, Optional, Inject, EventEmitter, SecurityContext, PLATFORM_ID, Directive, Input, Output, ElementRef, ChangeDetectorRef, Renderer2, NgZone, forwardRef, Component, ViewEncapsulation, NgModule } from '@angular/core';\nimport * as i1 from '@angular/platform-browser';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { defer, Subscription, fromEvent } from 'rxjs';\nimport { shareReplay, debounceTime } from 'rxjs/operators';\nimport { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';\n\nconst defaultModules = {\n toolbar: [\n ['bold', 'italic', 'underline', 'strike'],\n ['blockquote', 'code-block'],\n [{ header: 1 }, { header: 2 }],\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ script: 'sub' }, { script: 'super' }],\n [{ indent: '-1' }, { indent: '+1' }],\n [{ direction: 'rtl' }],\n [{ size: ['small', false, 'large', 'huge'] }],\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n [\n { color: [] },\n { background: [] }\n ],\n [{ font: [] }],\n [{ align: [] }],\n ['clean'],\n ['link', 'image', 'video'] // link and image, video\n ]\n};\n\nconst getFormat = (format, configFormat) => {\n const passedFormat = format || configFormat;\n return passedFormat || 'html';\n};\n\nconst QUILL_CONFIG_TOKEN = new InjectionToken('config', {\n providedIn: 'root',\n factory: () => ({ modules: defaultModules })\n});\n\nclass QuillService {\n constructor(injector, config) {\n this.config = config;\n this.quill$ = defer(async () => {\n if (!this.Quill) {\n // Quill adds events listeners on import https://github.com/quilljs/quill/blob/develop/core/emitter.js#L8\n // We'd want to use the unpatched `addEventListener` method to have all event callbacks to be run outside of zone.\n // We don't know yet if the `zone.js` is used or not, just save the value to restore it back further.\n const maybePatchedAddEventListener = this.document.addEventListener;\n // There're 2 types of Angular applications:\n // 1) zone-full (by default)\n // 2) zone-less\n // The developer can avoid importing the `zone.js` package and tells Angular that he/she is responsible for running\n // the change detection by himself. This is done by \"nooping\" the zone through `CompilerOptions` when bootstrapping\n // the root module. We fallback to `document.addEventListener` if `__zone_symbol__addEventListener` is not defined,\n // this means the `zone.js` is not imported.\n // The `__zone_symbol__addEventListener` is basically a native DOM API, which is not patched by zone.js, thus not even going\n // through the `zone.js` task lifecycle. You can also access the native DOM API as follows `target[Zone.__symbol__('methodName')]`.\n // eslint-disable-next-line @typescript-eslint/dot-notation\n this.document.addEventListener = this.document['__zone_symbol__addEventListener'] || this.document.addEventListener;\n const quillImport = await import('quill');\n this.document.addEventListener = maybePatchedAddEventListener;\n this.Quill = (quillImport.default ? quillImport.default : quillImport);\n }\n // Only register custom options and modules once\n this.config.customOptions?.forEach((customOption) => {\n const newCustomOption = this.Quill.import(customOption.import);\n newCustomOption.whitelist = customOption.whitelist;\n this.Quill.register(newCustomOption, true, this.config.suppressGlobalRegisterWarning);\n });\n this.config.customModules?.forEach(({ implementation, path }) => {\n this.Quill.register(path, implementation, this.config.suppressGlobalRegisterWarning);\n });\n return this.Quill;\n }).pipe(shareReplay({ bufferSize: 1, refCount: true }));\n this.document = injector.get(DOCUMENT);\n if (!this.config) {\n this.config = { modules: defaultModules };\n }\n }\n getQuill() {\n return this.quill$;\n }\n}\nQuillService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillService, deps: [{ token: i0.Injector }, { token: QUILL_CONFIG_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nQuillService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillService, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: function () { return [{ type: i0.Injector }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [QUILL_CONFIG_TOKEN]\n }] }]; } });\n\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nclass QuillEditorBase {\n constructor(injector, elementRef, cd, domSanitizer, platformId, renderer, zone, service) {\n this.elementRef = elementRef;\n this.cd = cd;\n this.domSanitizer = domSanitizer;\n this.platformId = platformId;\n this.renderer = renderer;\n this.zone = zone;\n this.service = service;\n this.required = false;\n this.customToolbarPosition = 'top';\n this.styles = null;\n this.strict = true;\n this.customOptions = [];\n this.customModules = [];\n this.preserveWhitespace = false;\n this.trimOnValidation = false;\n this.compareValues = false;\n this.filterNull = false;\n /*\n https://github.com/KillerCodeMonkey/ngx-quill/issues/1257 - fix null value set\n \n provide default empty value\n by default null\n \n e.g. defaultEmptyValue=\"\" - empty string\n \n \n */\n this.defaultEmptyValue = null;\n this.onEditorCreated = new EventEmitter();\n this.onEditorChanged = new EventEmitter();\n this.onContentChanged = new EventEmitter();\n this.onSelectionChanged = new EventEmitter();\n this.onFocus = new EventEmitter();\n this.onBlur = new EventEmitter();\n this.disabled = false; // used to store initial value before ViewInit\n this.preserve = false;\n this.toolbarPosition = 'top';\n this.subscription = null;\n this.quillSubscription = null;\n this.valueGetter = (quillEditor, editorElement) => {\n let html = editorElement.querySelector('.ql-editor').innerHTML;\n if (html === '


' || html === '

') {\n html = this.defaultEmptyValue;\n }\n let modelValue = html;\n const format = getFormat(this.format, this.service.config.format);\n if (format === 'text') {\n modelValue = quillEditor.getText();\n }\n else if (format === 'object') {\n modelValue = quillEditor.getContents();\n }\n else if (format === 'json') {\n try {\n modelValue = JSON.stringify(quillEditor.getContents());\n }\n catch (e) {\n modelValue = quillEditor.getText();\n }\n }\n return modelValue;\n };\n this.valueSetter = (quillEditor, value) => {\n const format = getFormat(this.format, this.service.config.format);\n if (format === 'html') {\n const sanitize = [true, false].includes(this.sanitize) ? this.sanitize : (this.service.config.sanitize || false);\n if (sanitize) {\n value = this.domSanitizer.sanitize(SecurityContext.HTML, value);\n }\n return quillEditor.clipboard.convert(value);\n }\n else if (format === 'json') {\n try {\n return JSON.parse(value);\n }\n catch (e) {\n return [{ insert: value }];\n }\n }\n return value;\n };\n this.selectionChangeHandler = (range, oldRange, source) => {\n const shouldTriggerOnModelTouched = !range && !!this.onModelTouched;\n // only emit changes when there's any listener\n if (!this.onBlur.observers.length &&\n !this.onFocus.observers.length &&\n !this.onSelectionChanged.observers.length &&\n !shouldTriggerOnModelTouched) {\n return;\n }\n this.zone.run(() => {\n if (range === null) {\n this.onBlur.emit({\n editor: this.quillEditor,\n source\n });\n }\n else if (oldRange === null) {\n this.onFocus.emit({\n editor: this.quillEditor,\n source\n });\n }\n this.onSelectionChanged.emit({\n editor: this.quillEditor,\n oldRange,\n range,\n source\n });\n if (shouldTriggerOnModelTouched) {\n this.onModelTouched();\n }\n this.cd.markForCheck();\n });\n };\n this.textChangeHandler = (delta, oldDelta, source) => {\n // only emit changes emitted by user interactions\n const text = this.quillEditor.getText();\n const content = this.quillEditor.getContents();\n let html = this.editorElem.querySelector('.ql-editor').innerHTML;\n if (html === '


' || html === '

') {\n html = this.defaultEmptyValue;\n }\n const trackChanges = this.trackChanges || this.service.config.trackChanges;\n const shouldTriggerOnModelChange = (source === 'user' || trackChanges && trackChanges === 'all') && !!this.onModelChange;\n // only emit changes when there's any listener\n if (!this.onContentChanged.observers.length && !shouldTriggerOnModelChange) {\n return;\n }\n this.zone.run(() => {\n if (shouldTriggerOnModelChange) {\n this.onModelChange(this.valueGetter(this.quillEditor, this.editorElem));\n }\n this.onContentChanged.emit({\n content,\n delta,\n editor: this.quillEditor,\n html,\n oldDelta,\n source,\n text\n });\n this.cd.markForCheck();\n });\n };\n // eslint-disable-next-line max-len\n this.editorChangeHandler = (event, current, old, source) => {\n // only emit changes when there's any listener\n if (!this.onEditorChanged.observers.length) {\n return;\n }\n // only emit changes emitted by user interactions\n if (event === 'text-change') {\n const text = this.quillEditor.getText();\n const content = this.quillEditor.getContents();\n let html = this.editorElem.querySelector('.ql-editor').innerHTML;\n if (html === '


' || html === '

') {\n html = this.defaultEmptyValue;\n }\n this.zone.run(() => {\n this.onEditorChanged.emit({\n content,\n delta: current,\n editor: this.quillEditor,\n event,\n html,\n oldDelta: old,\n source,\n text\n });\n this.cd.markForCheck();\n });\n }\n else {\n this.zone.run(() => {\n this.onEditorChanged.emit({\n editor: this.quillEditor,\n event,\n oldRange: old,\n range: current,\n source\n });\n this.cd.markForCheck();\n });\n }\n };\n this.document = injector.get(DOCUMENT);\n }\n static normalizeClassNames(classes) {\n const classList = classes.trim().split(' ');\n return classList.reduce((prev, cur) => {\n const trimmed = cur.trim();\n if (trimmed) {\n prev.push(trimmed);\n }\n return prev;\n }, []);\n }\n ngOnInit() {\n this.preserve = this.preserveWhitespace;\n this.toolbarPosition = this.customToolbarPosition;\n }\n ngAfterViewInit() {\n if (isPlatformServer(this.platformId)) {\n return;\n }\n // The `quill-editor` component might be destroyed before the `quill` chunk is loaded and its code is executed\n // this will lead to runtime exceptions, since the code will be executed on DOM nodes that don't exist within the tree.\n // eslint-disable-next-line @typescript-eslint/naming-convention\n this.quillSubscription = this.service.getQuill().subscribe(Quill => {\n this.editorElem = this.elementRef.nativeElement.querySelector('[quill-editor-element]');\n const toolbarElem = this.elementRef.nativeElement.querySelector('[quill-editor-toolbar]');\n const modules = Object.assign({}, this.modules || this.service.config.modules);\n if (toolbarElem) {\n modules.toolbar = toolbarElem;\n }\n else if (modules.toolbar === undefined) {\n modules.toolbar = defaultModules.toolbar;\n }\n let placeholder = this.placeholder !== undefined ? this.placeholder : this.service.config.placeholder;\n if (placeholder === undefined) {\n placeholder = 'Insert text here ...';\n }\n if (this.styles) {\n Object.keys(this.styles).forEach((key) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n if (this.classes) {\n this.addClasses(this.classes);\n }\n this.customOptions.forEach((customOption) => {\n const newCustomOption = Quill.import(customOption.import);\n newCustomOption.whitelist = customOption.whitelist;\n Quill.register(newCustomOption, true);\n });\n this.customModules.forEach(({ implementation, path }) => {\n Quill.register(path, implementation);\n });\n let bounds = this.bounds && this.bounds === 'self' ? this.editorElem : this.bounds;\n if (!bounds) {\n bounds = this.service.config.bounds ? this.service.config.bounds : this.document.body;\n }\n let debug = this.debug;\n if (!debug && debug !== false && this.service.config.debug) {\n debug = this.service.config.debug;\n }\n let readOnly = this.readOnly;\n if (!readOnly && this.readOnly !== false) {\n readOnly = this.service.config.readOnly !== undefined ? this.service.config.readOnly : false;\n }\n let defaultEmptyValue = this.defaultEmptyValue;\n if (this.service.config.hasOwnProperty('defaultEmptyValue')) {\n defaultEmptyValue = this.service.config.defaultEmptyValue;\n }\n let scrollingContainer = this.scrollingContainer;\n if (!scrollingContainer && this.scrollingContainer !== null) {\n scrollingContainer =\n this.service.config.scrollingContainer === null\n || this.service.config.scrollingContainer ? this.service.config.scrollingContainer : null;\n }\n let formats = this.formats;\n if (!formats && formats === undefined) {\n formats = this.service.config.formats ? [...this.service.config.formats] : (this.service.config.formats === null ? null : undefined);\n }\n this.zone.runOutsideAngular(() => {\n this.quillEditor = new Quill(this.editorElem, {\n bounds,\n debug: debug,\n formats: formats,\n modules,\n placeholder,\n readOnly,\n defaultEmptyValue,\n scrollingContainer: scrollingContainer,\n strict: this.strict,\n theme: this.theme || (this.service.config.theme ? this.service.config.theme : 'snow')\n });\n // Set optional link placeholder, Quill has no native API for it so using workaround\n if (this.linkPlaceholder) {\n const tooltip = this.quillEditor?.theme?.tooltip;\n const input = tooltip?.root?.querySelector('input[data-link]');\n if (input?.dataset) {\n input.dataset.link = this.linkPlaceholder;\n }\n }\n });\n if (this.content) {\n const format = getFormat(this.format, this.service.config.format);\n if (format === 'text') {\n this.quillEditor.setText(this.content, 'silent');\n }\n else {\n const newValue = this.valueSetter(this.quillEditor, this.content);\n this.quillEditor.setContents(newValue, 'silent');\n }\n this.quillEditor.getModule('history').clear();\n }\n // initialize disabled status based on this.disabled as default value\n this.setDisabledState();\n this.addQuillEventListeners();\n // The `requestAnimationFrame` triggers change detection. There's no sense to invoke the `requestAnimationFrame` if anyone is\n // listening to the `onEditorCreated` event inside the template, for instance ``.\n if (!this.onEditorCreated.observers.length && !this.onValidatorChanged) {\n return;\n }\n // The `requestAnimationFrame` will trigger change detection and `onEditorCreated` will also call `markDirty()`\n // internally, since Angular wraps template event listeners into `listener` instruction. We're using the `requestAnimationFrame`\n // to prevent the frame drop and avoid `ExpressionChangedAfterItHasBeenCheckedError` error.\n requestAnimationFrame(() => {\n if (this.onValidatorChanged) {\n this.onValidatorChanged();\n }\n this.onEditorCreated.emit(this.quillEditor);\n });\n });\n }\n ngOnDestroy() {\n this.dispose();\n this.quillSubscription?.unsubscribe();\n this.quillSubscription = null;\n }\n ngOnChanges(changes) {\n if (!this.quillEditor) {\n return;\n }\n /* eslint-disable @typescript-eslint/dot-notation */\n if (changes.readOnly) {\n this.quillEditor.enable(!changes.readOnly.currentValue);\n }\n if (changes.placeholder) {\n this.quillEditor.root.dataset.placeholder =\n changes.placeholder.currentValue;\n }\n if (changes.defaultEmptyValue) {\n this.quillEditor.root.dataset.defaultEmptyValue =\n changes.defaultEmptyValue.currentValue;\n }\n if (changes.styles) {\n const currentStyling = changes.styles.currentValue;\n const previousStyling = changes.styles.previousValue;\n if (previousStyling) {\n Object.keys(previousStyling).forEach((key) => {\n this.renderer.removeStyle(this.editorElem, key);\n });\n }\n if (currentStyling) {\n Object.keys(currentStyling).forEach((key) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n }\n if (changes.classes) {\n const currentClasses = changes.classes.currentValue;\n const previousClasses = changes.classes.previousValue;\n if (previousClasses) {\n this.removeClasses(previousClasses);\n }\n if (currentClasses) {\n this.addClasses(currentClasses);\n }\n }\n // We'd want to re-apply event listeners if the `debounceTime` binding changes to apply the\n // `debounceTime` operator or vice-versa remove it.\n if (changes.debounceTime) {\n this.addQuillEventListeners();\n }\n /* eslint-enable @typescript-eslint/dot-notation */\n }\n addClasses(classList) {\n QuillEditorBase.normalizeClassNames(classList).forEach((c) => {\n this.renderer.addClass(this.editorElem, c);\n });\n }\n removeClasses(classList) {\n QuillEditorBase.normalizeClassNames(classList).forEach((c) => {\n this.renderer.removeClass(this.editorElem, c);\n });\n }\n writeValue(currentValue) {\n // optional fix for https://github.com/angular/angular/issues/14988\n if (this.filterNull && currentValue === null) {\n return;\n }\n this.content = currentValue;\n if (!this.quillEditor) {\n return;\n }\n const format = getFormat(this.format, this.service.config.format);\n const newValue = this.valueSetter(this.quillEditor, currentValue);\n if (this.compareValues) {\n const currentEditorValue = this.quillEditor.getContents();\n if (JSON.stringify(currentEditorValue) === JSON.stringify(newValue)) {\n return;\n }\n }\n if (currentValue) {\n if (format === 'text') {\n this.quillEditor.setText(currentValue);\n }\n else {\n this.quillEditor.setContents(newValue);\n }\n return;\n }\n this.quillEditor.setText('');\n }\n setDisabledState(isDisabled = this.disabled) {\n // store initial value to set appropriate disabled status after ViewInit\n this.disabled = isDisabled;\n if (this.quillEditor) {\n if (isDisabled) {\n this.quillEditor.disable();\n this.renderer.setAttribute(this.elementRef.nativeElement, 'disabled', 'disabled');\n }\n else {\n if (!this.readOnly) {\n this.quillEditor.enable();\n }\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'disabled');\n }\n }\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n registerOnValidatorChange(fn) {\n this.onValidatorChanged = fn;\n }\n validate() {\n if (!this.quillEditor) {\n return null;\n }\n const err = {};\n let valid = true;\n const text = this.quillEditor.getText();\n // trim text if wanted + handle special case that an empty editor contains a new line\n const textLength = this.trimOnValidation ? text.trim().length : (text.length === 1 && text.trim().length === 0 ? 0 : text.length - 1);\n const deltaOperations = this.quillEditor.getContents().ops;\n const onlyEmptyOperation = deltaOperations && deltaOperations.length === 1 && ['\\n', ''].includes(deltaOperations[0].insert);\n if (this.minLength && textLength && textLength < this.minLength) {\n err.minLengthError = {\n given: textLength,\n minLength: this.minLength\n };\n valid = false;\n }\n if (this.maxLength && textLength > this.maxLength) {\n err.maxLengthError = {\n given: textLength,\n maxLength: this.maxLength\n };\n valid = false;\n }\n if (this.required && !textLength && onlyEmptyOperation) {\n err.requiredError = {\n empty: true\n };\n valid = false;\n }\n return valid ? null : err;\n }\n addQuillEventListeners() {\n this.dispose();\n // We have to enter the `` zone when adding event listeners, so `debounceTime` will spawn the\n // `AsyncAction` there w/o triggering change detections. We still re-enter the Angular's zone through\n // `zone.run` when we emit an event to the parent component.\n this.zone.runOutsideAngular(() => {\n this.subscription = new Subscription();\n this.subscription.add(\n // mark model as touched if editor lost focus\n fromEvent(this.quillEditor, 'selection-change').subscribe(([range, oldRange, source]) => {\n this.selectionChangeHandler(range, oldRange, source);\n }));\n // The `fromEvent` supports passing JQuery-style event targets, the editor has `on` and `off` methods which\n // will be invoked upon subscription and teardown.\n let textChange$ = fromEvent(this.quillEditor, 'text-change');\n let editorChange$ = fromEvent(this.quillEditor, 'editor-change');\n if (typeof this.debounceTime === 'number') {\n textChange$ = textChange$.pipe(debounceTime(this.debounceTime));\n editorChange$ = editorChange$.pipe(debounceTime(this.debounceTime));\n }\n this.subscription.add(\n // update model if text changes\n textChange$.subscribe(([delta, oldDelta, source]) => {\n this.textChangeHandler(delta, oldDelta, source);\n }));\n this.subscription.add(\n // triggered if selection or text changed\n editorChange$.subscribe(([event, current, old, source]) => {\n this.editorChangeHandler(event, current, old, source);\n }));\n });\n }\n dispose() {\n if (this.subscription !== null) {\n this.subscription.unsubscribe();\n this.subscription = null;\n }\n }\n}\nQuillEditorBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillEditorBase, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: QuillService }], target: i0.ɵɵFactoryTarget.Directive });\nQuillEditorBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.3\", type: QuillEditorBase, inputs: { format: \"format\", theme: \"theme\", modules: \"modules\", debug: \"debug\", readOnly: \"readOnly\", placeholder: \"placeholder\", maxLength: \"maxLength\", minLength: \"minLength\", required: \"required\", formats: \"formats\", customToolbarPosition: \"customToolbarPosition\", sanitize: \"sanitize\", styles: \"styles\", strict: \"strict\", scrollingContainer: \"scrollingContainer\", bounds: \"bounds\", customOptions: \"customOptions\", customModules: \"customModules\", trackChanges: \"trackChanges\", preserveWhitespace: \"preserveWhitespace\", classes: \"classes\", trimOnValidation: \"trimOnValidation\", linkPlaceholder: \"linkPlaceholder\", compareValues: \"compareValues\", filterNull: \"filterNull\", debounceTime: \"debounceTime\", defaultEmptyValue: \"defaultEmptyValue\", valueGetter: \"valueGetter\", valueSetter: \"valueSetter\" }, outputs: { onEditorCreated: \"onEditorCreated\", onEditorChanged: \"onEditorChanged\", onContentChanged: \"onContentChanged\", onSelectionChanged: \"onSelectionChanged\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillEditorBase, decorators: [{\n type: Directive\n }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }, { type: undefined, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: QuillService }]; }, propDecorators: { format: [{\n type: Input\n }], theme: [{\n type: Input\n }], modules: [{\n type: Input\n }], debug: [{\n type: Input\n }], readOnly: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], maxLength: [{\n type: Input\n }], minLength: [{\n type: Input\n }], required: [{\n type: Input\n }], formats: [{\n type: Input\n }], customToolbarPosition: [{\n type: Input\n }], sanitize: [{\n type: Input\n }], styles: [{\n type: Input\n }], strict: [{\n type: Input\n }], scrollingContainer: [{\n type: Input\n }], bounds: [{\n type: Input\n }], customOptions: [{\n type: Input\n }], customModules: [{\n type: Input\n }], trackChanges: [{\n type: Input\n }], preserveWhitespace: [{\n type: Input\n }], classes: [{\n type: Input\n }], trimOnValidation: [{\n type: Input\n }], linkPlaceholder: [{\n type: Input\n }], compareValues: [{\n type: Input\n }], filterNull: [{\n type: Input\n }], debounceTime: [{\n type: Input\n }], defaultEmptyValue: [{\n type: Input\n }], onEditorCreated: [{\n type: Output\n }], onEditorChanged: [{\n type: Output\n }], onContentChanged: [{\n type: Output\n }], onSelectionChanged: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], valueGetter: [{\n type: Input\n }], valueSetter: [{\n type: Input\n }] } });\nclass QuillEditorComponent extends QuillEditorBase {\n constructor(injector, elementRef, cd, domSanitizer, platformId, renderer, zone, service) {\n super(injector, elementRef, cd, domSanitizer, platformId, renderer, zone, service);\n }\n}\nQuillEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillEditorComponent, deps: [{ token: i0.Injector }, { token: ElementRef }, { token: ChangeDetectorRef }, { token: DomSanitizer }, { token: PLATFORM_ID }, { token: Renderer2 }, { token: NgZone }, { token: QuillService }], target: i0.ɵɵFactoryTarget.Component });\nQuillEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.3.3\", type: QuillEditorComponent, selector: \"quill-editor\", providers: [\n {\n multi: true,\n provide: NG_VALUE_ACCESSOR,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: forwardRef(() => QuillEditorComponent)\n },\n {\n multi: true,\n provide: NG_VALIDATORS,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: forwardRef(() => QuillEditorComponent)\n }\n ], usesInheritance: true, ngImport: i0, template: `\n \n
\n
\n  
\n \n \n
\n
\n  
\n`, isInline: true, styles: [\":host{display:inline-block}\\n\"], directives: [{ type: i3.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillEditorComponent, decorators: [{\n type: Component,\n args: [{\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n multi: true,\n provide: NG_VALUE_ACCESSOR,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: forwardRef(() => QuillEditorComponent)\n },\n {\n multi: true,\n provide: NG_VALIDATORS,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: forwardRef(() => QuillEditorComponent)\n }\n ],\n selector: 'quill-editor',\n template: `\n \n
\n
\n  
\n \n \n
\n
\n  
\n`,\n styles: [\n `\n :host {\n display: inline-block;\n }\n `\n ]\n }]\n }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef, decorators: [{\n type: Inject,\n args: [ElementRef]\n }] }, { type: i0.ChangeDetectorRef, decorators: [{\n type: Inject,\n args: [ChangeDetectorRef]\n }] }, { type: i1.DomSanitizer, decorators: [{\n type: Inject,\n args: [DomSanitizer]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: i0.Renderer2, decorators: [{\n type: Inject,\n args: [Renderer2]\n }] }, { type: i0.NgZone, decorators: [{\n type: Inject,\n args: [NgZone]\n }] }, { type: QuillService, decorators: [{\n type: Inject,\n args: [QuillService]\n }] }]; } });\n\nclass QuillViewHTMLComponent {\n constructor(sanitizer, service) {\n this.sanitizer = sanitizer;\n this.service = service;\n this.content = '';\n this.innerHTML = '';\n this.themeClass = 'ql-snow';\n }\n ngOnChanges(changes) {\n if (changes.theme) {\n const theme = changes.theme.currentValue || (this.service.config.theme ? this.service.config.theme : 'snow');\n this.themeClass = `ql-${theme} ngx-quill-view-html`;\n }\n else if (!this.theme) {\n const theme = this.service.config.theme ? this.service.config.theme : 'snow';\n this.themeClass = `ql-${theme} ngx-quill-view-html`;\n }\n if (changes.content) {\n const content = changes.content.currentValue;\n const sanitize = [true, false].includes(this.sanitize) ? this.sanitize : (this.service.config.sanitize || false);\n this.innerHTML = sanitize ? content : this.sanitizer.bypassSecurityTrustHtml(content);\n }\n }\n}\nQuillViewHTMLComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillViewHTMLComponent, deps: [{ token: DomSanitizer }, { token: QuillService }], target: i0.ɵɵFactoryTarget.Component });\nQuillViewHTMLComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.3.3\", type: QuillViewHTMLComponent, selector: \"quill-view-html\", inputs: { content: \"content\", theme: \"theme\", sanitize: \"sanitize\" }, usesOnChanges: true, ngImport: i0, template: `\n
\n
\n
\n
\n`, isInline: true, styles: [\".ql-container.ngx-quill-view-html{border:0}\\n\"], directives: [{ type: i3.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillViewHTMLComponent, decorators: [{\n type: Component,\n args: [{\n encapsulation: ViewEncapsulation.None,\n selector: 'quill-view-html',\n styles: [`\n.ql-container.ngx-quill-view-html {\n border: 0;\n}\n`],\n template: `\n
\n
\n
\n
\n`\n }]\n }], ctorParameters: function () { return [{ type: i1.DomSanitizer, decorators: [{\n type: Inject,\n args: [DomSanitizer]\n }] }, { type: QuillService }]; }, propDecorators: { content: [{\n type: Input\n }], theme: [{\n type: Input\n }], sanitize: [{\n type: Input\n }] } });\n\nclass QuillViewComponent {\n constructor(elementRef, renderer, zone, service, domSanitizer, platformId) {\n this.elementRef = elementRef;\n this.renderer = renderer;\n this.zone = zone;\n this.service = service;\n this.domSanitizer = domSanitizer;\n this.platformId = platformId;\n this.strict = true;\n this.customModules = [];\n this.customOptions = [];\n this.preserveWhitespace = false;\n this.onEditorCreated = new EventEmitter();\n this.preserve = false;\n this.quillSubscription = null;\n this.valueSetter = (quillEditor, value) => {\n const format = getFormat(this.format, this.service.config.format);\n let content = value;\n if (format === 'text') {\n quillEditor.setText(content);\n }\n else {\n if (format === 'html') {\n const sanitize = [true, false].includes(this.sanitize) ? this.sanitize : (this.service.config.sanitize || false);\n if (sanitize) {\n value = this.domSanitizer.sanitize(SecurityContext.HTML, value);\n }\n content = quillEditor.clipboard.convert(value);\n }\n else if (format === 'json') {\n try {\n content = JSON.parse(value);\n }\n catch (e) {\n content = [{ insert: value }];\n }\n }\n quillEditor.setContents(content);\n }\n };\n }\n ngOnInit() {\n this.preserve = this.preserveWhitespace;\n }\n ngOnChanges(changes) {\n if (!this.quillEditor) {\n return;\n }\n if (changes.content) {\n this.valueSetter(this.quillEditor, changes.content.currentValue);\n }\n }\n ngAfterViewInit() {\n if (isPlatformServer(this.platformId)) {\n return;\n }\n // eslint-disable-next-line @typescript-eslint/naming-convention\n this.quillSubscription = this.service.getQuill().subscribe(Quill => {\n const modules = Object.assign({}, this.modules || this.service.config.modules);\n modules.toolbar = false;\n this.customOptions.forEach((customOption) => {\n const newCustomOption = Quill.import(customOption.import);\n newCustomOption.whitelist = customOption.whitelist;\n Quill.register(newCustomOption, true);\n });\n this.customModules.forEach(({ implementation, path }) => {\n Quill.register(path, implementation);\n });\n let debug = this.debug;\n if (!debug && debug !== false && this.service.config.debug) {\n debug = this.service.config.debug;\n }\n let formats = this.formats;\n if (!formats && formats === undefined) {\n formats = this.service.config.formats ?\n Object.assign({}, this.service.config.formats) : (this.service.config.formats === null ? null : undefined);\n }\n const theme = this.theme || (this.service.config.theme ? this.service.config.theme : 'snow');\n this.editorElem = this.elementRef.nativeElement.querySelector('[quill-view-element]');\n this.zone.runOutsideAngular(() => {\n this.quillEditor = new Quill(this.editorElem, {\n debug: debug,\n formats: formats,\n modules,\n readOnly: true,\n strict: this.strict,\n theme\n });\n });\n this.renderer.addClass(this.editorElem, 'ngx-quill-view');\n if (this.content) {\n this.valueSetter(this.quillEditor, this.content);\n }\n // The `requestAnimationFrame` triggers change detection. There's no sense to invoke the `requestAnimationFrame` if anyone is\n // listening to the `onEditorCreated` event inside the template, for instance ``.\n if (!this.onEditorCreated.observers.length) {\n return;\n }\n // The `requestAnimationFrame` will trigger change detection and `onEditorCreated` will also call `markDirty()`\n // internally, since Angular wraps template event listeners into `listener` instruction. We're using the `requestAnimationFrame`\n // to prevent the frame drop and avoid `ExpressionChangedAfterItHasBeenCheckedError` error.\n requestAnimationFrame(() => {\n this.onEditorCreated.emit(this.quillEditor);\n });\n });\n }\n ngOnDestroy() {\n this.quillSubscription?.unsubscribe();\n this.quillSubscription = null;\n }\n}\nQuillViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillViewComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: QuillService }, { token: i1.DomSanitizer }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });\nQuillViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.3.3\", type: QuillViewComponent, selector: \"quill-view\", inputs: { format: \"format\", theme: \"theme\", modules: \"modules\", debug: \"debug\", formats: \"formats\", sanitize: \"sanitize\", strict: \"strict\", content: \"content\", customModules: \"customModules\", customOptions: \"customOptions\", preserveWhitespace: \"preserveWhitespace\" }, outputs: { onEditorCreated: \"onEditorCreated\" }, usesOnChanges: true, ngImport: i0, template: `\n
\n
\n`, isInline: true, styles: [\".ql-container.ngx-quill-view{border:0}\\n\"], directives: [{ type: i3.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillViewComponent, decorators: [{\n            type: Component,\n            args: [{\n                    encapsulation: ViewEncapsulation.None,\n                    selector: 'quill-view',\n                    styles: [`\n.ql-container.ngx-quill-view {\n  border: 0;\n}\n`],\n                    template: `\n
\n
\n`\n                }]\n        }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: QuillService }, { type: i1.DomSanitizer }, { type: undefined, decorators: [{\n                    type: Inject,\n                    args: [PLATFORM_ID]\n                }] }]; }, propDecorators: { format: [{\n                type: Input\n            }], theme: [{\n                type: Input\n            }], modules: [{\n                type: Input\n            }], debug: [{\n                type: Input\n            }], formats: [{\n                type: Input\n            }], sanitize: [{\n                type: Input\n            }], strict: [{\n                type: Input\n            }], content: [{\n                type: Input\n            }], customModules: [{\n                type: Input\n            }], customOptions: [{\n                type: Input\n            }], preserveWhitespace: [{\n                type: Input\n            }], onEditorCreated: [{\n                type: Output\n            }] } });\n\nclass QuillModule {\n    static forRoot(config) {\n        return {\n            ngModule: QuillModule,\n            providers: [\n                {\n                    provide: QUILL_CONFIG_TOKEN,\n                    useValue: config\n                }\n            ]\n        };\n    }\n}\nQuillModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nQuillModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillModule, declarations: [QuillEditorComponent,\n        QuillViewComponent,\n        QuillViewHTMLComponent], imports: [CommonModule], exports: [QuillEditorComponent, QuillViewComponent, QuillViewHTMLComponent] });\nQuillModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillModule, imports: [[CommonModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.3\", ngImport: i0, type: QuillModule, decorators: [{\n            type: NgModule,\n            args: [{\n                    declarations: [\n                        QuillEditorComponent,\n                        QuillViewComponent,\n                        QuillViewHTMLComponent\n                    ],\n                    exports: [QuillEditorComponent, QuillViewComponent, QuillViewHTMLComponent],\n                    imports: [CommonModule],\n                }]\n        }] });\n\n/*\n * Public API Surface of ngx-quill\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { QUILL_CONFIG_TOKEN, QuillEditorBase, QuillEditorComponent, QuillModule, QuillService, QuillViewComponent, QuillViewHTMLComponent, defaultModules };\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n  try {\n    var info = gen[key](arg);\n    var value = info.value;\n  } catch (error) {\n    reject(error);\n    return;\n  }\n\n  if (info.done) {\n    resolve(value);\n  } else {\n    Promise.resolve(value).then(_next, _throw);\n  }\n}\n\nexport default function _asyncToGenerator(fn) {\n  return function () {\n    var self = this,\n        args = arguments;\n    return new Promise(function (resolve, reject) {\n      var gen = fn.apply(self, args);\n\n      function _next(value) {\n        asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n      }\n\n      function _throw(err) {\n        asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n      }\n\n      _next(undefined);\n    });\n  };\n}"],"names":["i3","DOCUMENT","isPlatformServer","CommonModule","i0","InjectionToken","Injectable","Optional","Inject","EventEmitter","SecurityContext","PLATFORM_ID","Directive","Input","Output","ElementRef","ChangeDetectorRef","Renderer2","NgZone","forwardRef","Component","ViewEncapsulation","NgModule","i1","DomSanitizer","defer","Subscription","fromEvent","shareReplay","debounceTime","NG_VALUE_ACCESSOR","NG_VALIDATORS","defaultModules","toolbar","header","list","script","indent","direction","size","color","background","font","align","getFormat","format","configFormat","passedFormat","QUILL_CONFIG_TOKEN","providedIn","factory","modules","QuillService","injector","config","quill$","Quill","maybePatchedAddEventListener","document","addEventListener","quillImport","default","customOptions","forEach","customOption","newCustomOption","import","whitelist","register","suppressGlobalRegisterWarning","customModules","implementation","path","pipe","bufferSize","refCount","get","getQuill","ɵfac","Injector","ɵprov","type","args","undefined","decorators","QuillEditorBase","elementRef","cd","domSanitizer","platformId","renderer","zone","service","required","customToolbarPosition","styles","strict","preserveWhitespace","trimOnValidation","compareValues","filterNull","defaultEmptyValue","onEditorCreated","onEditorChanged","onContentChanged","onSelectionChanged","onFocus","onBlur","disabled","preserve","toolbarPosition","subscription","quillSubscription","valueGetter","quillEditor","editorElement","html","querySelector","innerHTML","modelValue","getText","getContents","JSON","stringify","e","valueSetter","value","sanitize","includes","HTML","clipboard","convert","parse","insert","selectionChangeHandler","range","oldRange","source","shouldTriggerOnModelTouched","onModelTouched","observers","length","run","emit","editor","markForCheck","textChangeHandler","delta","oldDelta","text","content","editorElem","trackChanges","shouldTriggerOnModelChange","onModelChange","editorChangeHandler","event","current","old","ngOnInit","ngAfterViewInit","subscribe","nativeElement","toolbarElem","Object","assign","placeholder","keys","key","setStyle","classes","addClasses","bounds","body","debug","readOnly","hasOwnProperty","scrollingContainer","formats","runOutsideAngular","theme","linkPlaceholder","tooltip","input","root","dataset","link","setText","newValue","setContents","getModule","clear","setDisabledState","addQuillEventListeners","onValidatorChanged","requestAnimationFrame","ngOnDestroy","dispose","unsubscribe","ngOnChanges","changes","enable","currentValue","currentStyling","previousStyling","previousValue","removeStyle","currentClasses","previousClasses","removeClasses","classList","normalizeClassNames","c","addClass","removeClass","writeValue","currentEditorValue","isDisabled","disable","setAttribute","removeAttribute","registerOnChange","fn","registerOnTouched","registerOnValidatorChange","validate","err","valid","textLength","trim","deltaOperations","ops","onlyEmptyOperation","minLength","minLengthError","given","maxLength","maxLengthError","requiredError","empty","add","textChange$","editorChange$","split","reduce","prev","cur","trimmed","push","ɵdir","QuillEditorComponent","ɵcmp","multi","provide","useExisting","NgIf","encapsulation","None","providers","selector","template","QuillViewHTMLComponent","sanitizer","themeClass","bypassSecurityTrustHtml","NgClass","QuillViewComponent","QuillModule","forRoot","ngModule","useValue","ɵmod","ɵinj","declarations","exports","imports"],"sourceRoot":"webpack:///"}