{"version":3,"sources":["ng-wig.js"],"names":[],"mappings":";;;;;AAGA,IAAI,UAAU,QAAd;AACA,QAAQ,MAAR,CAAe,OAAf,EAAwB,CAAC,qBAAD,CAAxB;AACA,QAAQ,KAAR,GAAgB;AACd,WAAS;AADK,CAAhB;;AAIA,QAAQ,MAAR,CAAe,OAAf,EACG,SADH,CACa,OADb,EACsB;AAClB,YAAU;AACR,aAAS,UADD;AAER,aAAS,IAFD;AAGR,aAAS,GAHD;AAIR,aAAS,GAJD;AAKR,uBAAmB,GALX;AAMR,sBAAkB,GANV;AAOR,iBAAa;AAPL,GADQ;AAUlB,WAAS;AACP,uBAAmB;AADZ,GAVS;AAalB,eAAa,0BAbK;AAclB,cAAY,CAAC,QAAD,EAAW,UAAX,EAAuB,IAAvB,EAA6B,QAA7B,EAAuC,SAAvC,EAAkD,WAAlD,EAA+D,cAA/D,EAA+E,UAAS,MAAT,EAAiB,QAAjB,EAA2B,EAA3B,EAA+B,MAA/B,EAAuC,OAAvC,EAAgD,SAAhD,EAA2D,YAA3D,EAAyE;AAAA;;AAElK,QAAI,aAAa,QAAQ,OAAR,CAAgB,SAAS,CAAT,EAAY,aAAZ,CAA0B,kBAA1B,CAAhB,CAAjB;;;AAGA,SAAK,QAAL,GAAgB,cAAc,MAA9B;AACA,SAAK,mBAAL,GAA2B,uBAAuB,MAAlD;AACA,SAAK,QAAL,GAAgB,KAAhB;AACA,SAAK,cAAL,GAAsB,aAAa,iBAAb,CAA+B,KAAK,OAAL,IAAgB,aAAa,KAAK,OAAlB,CAA/C,CAAtB;AACA,WAAO,QAAP,CAAgB,UAAhB,EAA4B,UAAC,UAAD,EAAgB;AAC1C,YAAK,QAAL,GAAgB,UAAhB;AACA,iBAAW,IAAX,CAAgB,iBAAhB,EAAmC,CAAC,UAApC;AACD,KAHD;AAIA,SAAK,cAAL,GAAsB;AAAA,aAAM,WAAW,CAAX,MAAkB,UAAU,CAAV,EAAa,aAArC;AAAA,KAAtB;AACA,SAAK,cAAL,GAAsB,YAAM;AAC1B,YAAK,QAAL,GAAgB,CAAC,MAAK,QAAtB;AACA,UAAI,QAAQ,YAAR,GAAuB,eAA3B,EAA4C;AAC1C,gBAAQ,YAAR,GAAuB,eAAvB;AACD;AACF,KALD;;AAOA,SAAK,WAAL,GAAmB,UAAC,OAAD,EAAU,OAAV,EAAsB;AACvC,UAAI,MAAK,QAAT,EAAmB,OAAO,KAAP;;AAEnB,UAAI,UAAU,CAAV,EAAa,qBAAb,IAAsC,CAAC,UAAU,CAAV,EAAa,qBAAb,CAAmC,OAAnC,CAA3C,EAAwF;AACtF,cAAM,kBAAkB,OAAlB,GAA4B,oBAAlC;AACD;;AAED,UAAI,YAAY,YAAZ,IAA4B,YAAY,aAA5C,EAA2D;AACzD,kBAAU,QAAQ,MAAR,CAAe,sBAAf,EAAuC,SAAvC,CAAV;AACA,YAAI,CAAC,OAAL,EAAc;AACZ;AACD;AACF;;AAED,YAAK,iBAAL,CAAuB,EAAC,SAAS,OAAV,EAAmB,SAAS,OAA5B,EAAvB;;;AAGA,UAAI,YAAY,UAAU,CAAV,EAAa,YAAb,GAA4B,QAA5B,EAAhB;AACA,UAAG,YAAY,YAAZ,IAA4B,cAAc,EAA7C,EAAgD;AAC9C,kBAAU,CAAV,EAAa,WAAb,CAAyB,YAAzB,EAAuC,KAAvC,EAA8C,cAAc,OAAd,GAAwB,IAAxB,GAA+B,OAA/B,GAAyC,MAAvF;AACD,OAFD,MAGI;AACF,kBAAU,CAAV,EAAa,WAAb,CAAyB,OAAzB,EAAkC,KAAlC,EAAyC,OAAzC;AACD;;AAED,YAAK,gBAAL,CAAsB,EAAC,SAAS,OAAV,EAAmB,SAAS,OAA5B,EAAtB;;;AAGA,UAAG,WAAW,MAAd,EAAqB;AACnB,mBAAW,CAAX,EAAc,KAAd;AACD;AACF,KA/BD;;AAiCA,SAAK,OAAL,GAAe,YAAM;AACnB,UAAI,cAAc,QAAQ,MAAK,WAAb,CAAlB;;AAEA,YAAK,iBAAL,CAAuB,OAAvB,GAAiC;AAAA,eAAM,MAAK,iBAAL,CAAuB,UAAvB,GACnC,WAAW,IAAX,CAAgB,MAAK,iBAAL,CAAuB,UAAvC,CADmC,GAEnC,cAAc,WAAW,KAAX,EAAd,GACA,WAAW,IAAX,CAAgB,SAAhB,CAH6B;AAAA,OAAjC;;AAKA,iBAAW,IAAX,CAAgB,+BAAhB,EAAiD,YAAM;;AAErD,YAAI,gBAAgB,CAAC,WAAW,IAAX,GAAkB,MAAnB,IAA6B,WAAW,IAAX,OAAsB,MAAnE,CAAJ,EAAgF,WAAW,KAAX;AAChF,cAAK,iBAAL,CAAuB,aAAvB,CAAqC,WAAW,IAAX,EAArC;AACA,eAAO,WAAP;AACD,OALD;AAMD,KAdD;;AAgBA,eAAW,EAAX,CAAc,OAAd,EAAuB,UAAC,KAAD,EAAW;AAChC,UAAG,CAAC,OAAO,OAAX,EAAmB;AACjB;AACD;;AAED,UAAI,qBAAJ;AACA,UAAI,OAAO,aAAP,IAAwB,OAAO,aAAP,CAAqB,OAAjD,EAA0D;;AACxD,uBAAe,OAAO,aAAP,CAAqB,OAArB,CAA6B,MAA7B,CAAf;AACD,OAFD,MAGI;AACF,uBAAe,CAAC,MAAM,aAAN,IAAuB,KAAxB,EAA+B,aAA/B,CAA6C,OAA7C,CAAqD,YAArD,CAAf;AACD;AACD,YAAM,cAAN;AACA,SAAG,IAAH,CAAQ,MAAK,OAAL,CAAa,EAAC,QAAQ,KAAT,EAAgB,cAAc,YAA9B,EAAb,CAAR,EAAmE,IAAnE,CAAwE,UAAC,SAAD,EAAe;AACrF,yBAAiB,SAAjB;AACD,OAFD;AAGD,KAhBD;AAiBD,GAvFW;AAdM,CADtB;;;AA2GA,SAAS,YAAT,CAAsB,UAAtB,EAAkC;AAChC,SAAO,WAAW,KAAX,CAAiB,GAAjB,EAAsB,GAAtB,CAA0B,SAAS,SAAT,CAAmB,IAA7C,EAAmD,OAAO,SAAP,CAAiB,IAApE,CAAP;AACD;;;AAID,SAAS,gBAAT,CAA0B,IAA1B,EAAgC;AAC9B,MAAI,GAAJ,EAAS,KAAT;AACA,MAAI,OAAO,YAAX,EAAyB;AACvB,UAAM,OAAO,YAAP,EAAN;AACA,QAAI,IAAI,UAAJ,IAAkB,IAAI,UAA1B,EAAsC;AACpC,cAAQ,IAAI,UAAJ,CAAe,CAAf,CAAR;AACA,YAAM,cAAN;;;;AAIA,UAAI,KAAK,SAAS,aAAT,CAAuB,KAAvB,CAAT;AACA,SAAG,SAAH,GAAe,IAAf;AACA,UAAI,OAAO,SAAS,sBAAT,EAAX;UAA8C,IAA9C;UAAoD,QAApD;AACA,aAAS,OAAO,GAAG,UAAnB,EAAiC;AAC/B,mBAAW,KAAK,WAAL,CAAiB,IAAjB,CAAX;AACD;AACD,YAAM,UAAN,CAAiB,IAAjB;;;AAGA,UAAI,QAAJ,EAAc;AACZ,gBAAQ,MAAM,UAAN,EAAR;AACA,cAAM,aAAN,CAAoB,QAApB;AACA,cAAM,QAAN,CAAe,IAAf;AACA,YAAI,eAAJ;AACA,YAAI,QAAJ,CAAa,KAAb;AACD;AACF;AACF,GAzBD,MAyBO,IAAI,SAAS,SAAT,IAAsB,SAAS,SAAT,CAAmB,IAAnB,IAA2B,SAArD,EAAgE;;AAErE,aAAS,SAAT,CAAmB,WAAnB,GAAiC,SAAjC,CAA2C,IAA3C;AACD;AACF;;AAED,QAAQ,MAAR,CAAe,OAAf,EAAwB,QAAxB,CAAiC,cAAjC,EAAiD,YAAY;;AAE3D,MAAI,gBAAgB;AAClB,WAAO,EAAC,OAAO,gBAAR,EAA0B,SAAS,qBAAnC,EAA0D,YAAY,SAAtE,EADW;AAElB,WAAO,EAAC,OAAO,cAAR,EAAwB,SAAS,mBAAjC,EAAsD,YAAY,SAAlE,EAFW;AAGlB,UAAM,EAAC,OAAO,MAAR,EAAgB,SAAS,MAAzB,EAAiC,YAAY,MAA7C,EAHY;AAIlB,YAAQ,EAAC,OAAO,QAAR,EAAkB,SAAS,QAA3B,EAAqC,YAAY,QAAjD,EAJU;AAKlB,UAAM,EAAC,OAAO,MAAR,EAAgB,SAAS,YAAzB,EAAuC,YAAY,MAAnD;AALY,GAApB;;AAQA,MAAI,qBAAqB,CAAC,OAAD,EAAU,OAAV,EAAmB,MAAnB,EAA2B,QAA3B,EAAqC,MAArC,CAAzB;;AAEA,MAAI,iBAAiB,SAAjB,cAAiB,GAAY;AAC/B,WAAO,CAAC,CAAC,KAAK,OAAP,IAAkB,SAAS,iBAAT,CAA2B,KAAK,OAAhC,CAAzB;AACD,GAFD;;AAIA,OAAK,UAAL,GAAkB,UAAS,OAAT,EAAkB;AAClC,QAAG,CAAC,QAAQ,OAAR,CAAgB,OAAhB,CAAJ,EAA8B;AAC5B,YAAM,uCAAN;AACD;;AAED,yBAAqB,OAArB;AACD,GAND;;AAQA,OAAK,iBAAL,GAAyB,UAAU,IAAV,EAAgB,KAAhB,EAAuB,OAAvB,EAAgC,UAAhC,EAA4C;AACnE,QAAG,CAAC,IAAD,IAAS,CAAC,KAAV,IAAmB,CAAC,OAAvB,EAAgC;AAC9B,YAAM,sDAAN;AACD;;AAED,iBAAa,cAAc,EAA3B;AACA,kBAAc,IAAd,IAAsB,EAAC,OAAO,KAAR,EAAe,SAAS,OAAxB,EAAiC,YAAY,UAA7C,EAAtB;AACA,uBAAmB,IAAnB,CAAwB,IAAxB;AACD,GARD;;AAUA,OAAK,eAAL,GAAuB,UAAU,IAAV,EAAgB,UAAhB,EAA4B;AACjD,QAAG,CAAC,IAAD,IAAS,CAAC,UAAb,EAAyB;AACvB,YAAM,gDAAN;AACD;;AAED,kBAAc,IAAd,IAAsB,EAAC,YAAY,UAAb,EAAyB,WAAW,IAApC,EAAtB;AACA,uBAAmB,IAAnB,CAAwB,IAAxB;AACD,GAPD;;AASA,OAAK,IAAL,GAAY,YAAY;AACtB,WAAO;AACL,yBAAmB,2BAAS,IAAT,EAAe;AAChC,YAAI,iBAAiB,EAArB;AACA,SAAC,QAAQ,kBAAT,EAA6B,OAA7B,CAAqC,UAAS,SAAT,EAAoB;AACvD,cAAG,CAAC,cAAc,SAAd,CAAJ,EAA8B;AAC5B,kBAAM,kBAAkB,SAAlB,GAA8B,wCAA9B,GAAyE,OAAO,IAAP,CAAY,aAAZ,CAA/E;AACD;;AAED,cAAI,SAAS,QAAQ,IAAR,CAAa,cAAc,SAAd,CAAb,CAAb;AACA,iBAAO,QAAP,GAAkB,cAAlB;AACA,yBAAe,IAAf,CAAoB,MAApB;AACD,SARD;AASA,eAAO,cAAP;AACD;AAbI,KAAP;AAeD,GAhBD;AAkBD,CA7DD;AA8DA,QAAQ,MAAR,CAAe,OAAf,EACG,SADH,CACa,aADb,EAC4B;AACxB,YAAU;AACR,YAAQ,GADA;AAER,iBAAa,GAFL;AAGR,cAAU,GAHF;AAIR,cAAU,GAJF;AAKR,aAAS,GALD;AAMR,aAAS;AAND,GADc;AASxB,cAAY,CAAC,QAAD,EAAW,UAAX,EAAuB,UAAvB,EAAmC,UAAS,MAAT,EAAiB,QAAjB,EAA2B,QAA3B,EAAqC;AAClF,aAAS,WAAT,CAAqB,SAAS,MAAM,KAAK,MAAL,CAAY,UAAlB,GAA+B,GAA/B,GAC5B,SAD4B,GAChB,gBADgB,GAE5B,eAF4B,GAEV,qBAFU,GAG5B,YAH4B,GAGb,kBAHa,GAI5B,WAJ4B,GAId,kBAJc,GAK5B,UAL4B,GAKf,iBALe,GAM5B,UAN4B,GAMf,iBANe,GAO5B,IAPmB,EAOb,MAPa,CAArB;AAQD,GATW;AATY,CAD5B;AAqBA,QAAQ,MAAR,CAAe,qBAAf,EAAsC,CAAC,0BAAD,CAAtC;;AAEA,QAAQ,MAAR,CAAe,0BAAf,EAA2C,EAA3C,EAA+C,GAA/C,CAAmD,CAAC,gBAAD,EAAmB,UAAS,cAAT,EAAyB;AAC7F,iBAAe,GAAf,CAAmB,0BAAnB,EACE,6BACA,+BADA,GAEA,oFAFA,GAGA,6CAHA,GAIA,qCAJA,GAKA,+DALA,GAMA,gDANA,GAOA,oEAPA,GAQA,0HARA,GASA,uEATA,GAUA,kCAVA,GAWA,uBAXA,GAYA,kBAZA,GAaA,4CAbA,GAcA,4BAdA,GAeA,oDAfA,GAgBA,mCAhBA,GAiBA,8CAjBA,GAkBA,6CAlBA,GAmBA,2CAnBA,GAoBA,4DApBA,GAqBA,kBArBA,GAsBA,iBAtBA,GAuBA,0CAvBA,GAwBA,iCAxBA,GAyBA,uDAzBA,GA0BA,qCA1BA,GA2BA,sEA3BA,GA4BA,qDA5BA,GA6BA,qDA7BA,GA8BA,iDA9BA,GA+BA,qBA/BA,GAgCA,mBAhCA,GAiCA,aAjCA,GAkCA,WAlCA,GAmCA,IAnCA,GAoCA,yCApCA,GAqCA,2EArCA,GAsCA,8CAtCA,GAuCA,kDAvCA,GAwCA,wDAxCA,GAyCA,cAzCA,GA0CA,gFA1CA,GA2CA,qCA3CA,GA4CA,uCA5CA,GA6CA,4DA7CA,GA8CA,6CA9CA,GA+CA,8BA/CA,GAgDA,qDAhDA,GAiDA,gBAjDA,GAkDA,cAlDA,GAmDA,YAnDA,GAoDA,UApDA,GAqDA,EAtDF;AAuDD,CAxDkD,CAAnD","file":"ng-wig.js","sourcesContent":["/**\n * version: 3.0.10\n */\nvar VERSION = '3.0.10';\nangular.module('ngWig', ['ngwig-app-templates']);\nangular.ngWig = {\n version: VERSION\n};\n\nangular.module('ngWig')\n .component('ngWig', {\n bindings: {\n content: '=ngModel',\n options: '',\n onPaste: '&',\n buttons: '@',\n beforeExecCommand: '&',\n afterExecCommand: '&' ,\n placeholder: '@?'\n },\n require: {\n ngModelController: 'ngModel'\n },\n templateUrl: 'ng-wig/views/ng-wig.html',\n controller: [\"$scope\", \"$element\", \"$q\", \"$attrs\", \"$window\", \"$document\", \"ngWigToolbar\", function($scope, $element, $q, $attrs, $window, $document, ngWigToolbar) {\n\n var $container = angular.element($element[0].querySelector('#ng-wig-editable'));\n\n //TODO: clean-up this attrs solution\n this.required = 'required' in $attrs;\n this.isSourceModeAllowed = 'sourceModeAllowed' in $attrs;\n this.editMode = false;\n this.toolbarButtons = ngWigToolbar.getToolbarButtons(this.buttons && string2array(this.buttons));\n $attrs.$observe('disabled', (isDisabled) => {\n this.disabled = isDisabled;\n $container.attr('contenteditable', !isDisabled);\n });\n this.isEditorActive = () => $container[0] === $document[0].activeElement;\n this.toggleEditMode = () => {\n this.editMode = !this.editMode;\n if ($window.getSelection().removeAllRanges) {\n $window.getSelection().removeAllRanges();\n }\n };\n\n this.execCommand = (command, options) => {\n if (this.editMode) return false;\n\n if ($document[0].queryCommandSupported && !$document[0].queryCommandSupported(command)) {\n throw 'The command \"' + command + '\" is not supported';\n }\n\n if (command === 'createlink' || command === 'insertImage') {\n options = $window.prompt('Please enter the URL', 'http://');\n if (!options) {\n return;\n }\n }\n\n this.beforeExecCommand({command: command, options: options});\n\n // use insertHtml for `createlink` command to account for IE/Edge purposes, in case there is no selection\n let selection = $document[0].getSelection().toString();\n if(command === 'createlink' && selection === ''){\n $document[0].execCommand('insertHtml', false, '' + options + '');\n }\n else{\n $document[0].execCommand(command, false, options);\n }\n\n this.afterExecCommand({command: command, options: options});\n\n // added temporarily to pass the tests. For some reason $container[0] is undefined during testing.\n if($container.length){\n $container[0].focus();\n }\n };\n\n this.$onInit = () => {\n let placeholder = Boolean(this.placeholder);\n\n this.ngModelController.$render = () => this.ngModelController.$viewValue\n ? $container.html(this.ngModelController.$viewValue)\n : placeholder ? $container.empty()\n : $container.html('
');\n\n $container.bind('blur keyup change focus click', () => {\n //view --> model\n if (placeholder && (!$container.html().length || $container.html() === \"