ngx-freshchat
Advanced tools
Comparing version 0.1.0 to 0.1.1
@@ -234,2 +234,62 @@ (function (global, factory) { | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.isOpen = /** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
return this.getWidget().isOpen(); | ||
}; | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @param payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.open = /** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
function (payload) { | ||
this.getWidget().open(payload); | ||
}; | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.close = /** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
this.getWidget().close(); | ||
}; | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -236,0 +296,0 @@ * @param eventName The event name to track. |
@@ -1,2 +0,2 @@ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("ngx-freshchat",["exports","@angular/core","rxjs","rxjs/operators"],e):e((t=t||self)["ngx-freshchat"]={},t.ng.core,t.rxjs,t.rxjs.operators)}(this,function(t,e,r,n){"use strict";var o=function(){function t(){}return t.prototype.init=function(t){var e=this;return this.loadScript("https://wchat.freshchat.com/js/widget.js").pipe(n.first(),n.flatMap(function(r){return e.initWidget(t)}))},t.prototype.initWidget=function(t){var e=this;return new r.Observable(function(r){e.getWidget().on("widget:loaded",function(t){return r.next(t)}),e.getWidget().init(t)})},t.prototype.onUserCreate=function(){var t=this;return new r.Observable(function(e){t.getWidget().on("user:created",function(t){200!==t.status?e.error(t.status):e.next(t.data||null)})})},t.prototype.getUser=function(){var t=this;return new r.Observable(function(e){t.getWidget().user.get(function(t){200!==t.status?e.error(t.status):e.next(t.data)})})},t.prototype.setUserProperties=function(t){var e=this;return new r.Observable(function(r){e.getWidget().user.setProperties(t,function(t){200!==t.status?r.error(t.status):r.next(t.data||null)})})},t.prototype.updateUser=function(t){this.getWidget().user.update(t)},t.prototype.clearUser=function(){var t=this;return new r.Observable(function(e){t.getWidget().user.clear(function(t){200!==t.status?e.error(t.status):e.next(t.data||null)})})},t.prototype.track=function(t,e){this.getWidget().track(t,e)},t.prototype.setTags=function(t){this.getWidget().setTags(t)},t.prototype.setLocale=function(t){this.getWidget().setLocale(t)},t.prototype.destroy=function(){this.getWidget().destroy()},t.prototype.isInitialized=function(){return this.getWidget().isInitialized()},t.prototype.getWidget=function(){return window.fcWidget},t.prototype.loadScript=function(t){return new r.Observable(function(e){var r=document.createElement("script");r.type="text/javascript",r.src=t,r.onload=function(){e.next(t),e.complete()},r.onerror=function(){return e.error("Couldn't load "+t)},document.getElementsByTagName("body")[0].appendChild(r)})},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}(),i=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[],providers:[o],declarations:[],exports:[]}]}],t}();t.NgxFreshChatModule=i,t.NgxFreshChatService=o,Object.defineProperty(t,"__esModule",{value:!0})}); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("ngx-freshchat",["exports","@angular/core","rxjs","rxjs/operators"],e):e((t=t||self)["ngx-freshchat"]={},t.ng.core,t.rxjs,t.rxjs.operators)}(this,function(t,e,r,n){"use strict";var o=function(){function t(){}return t.prototype.init=function(t){var e=this;return this.loadScript("https://wchat.freshchat.com/js/widget.js").pipe(n.first(),n.flatMap(function(r){return e.initWidget(t)}))},t.prototype.initWidget=function(t){var e=this;return new r.Observable(function(r){e.getWidget().on("widget:loaded",function(t){return r.next(t)}),e.getWidget().init(t)})},t.prototype.onUserCreate=function(){var t=this;return new r.Observable(function(e){t.getWidget().on("user:created",function(t){200!==t.status?e.error(t.status):e.next(t.data||null)})})},t.prototype.getUser=function(){var t=this;return new r.Observable(function(e){t.getWidget().user.get(function(t){200!==t.status?e.error(t.status):e.next(t.data)})})},t.prototype.setUserProperties=function(t){var e=this;return new r.Observable(function(r){e.getWidget().user.setProperties(t,function(t){200!==t.status?r.error(t.status):r.next(t.data||null)})})},t.prototype.updateUser=function(t){this.getWidget().user.update(t)},t.prototype.clearUser=function(){var t=this;return new r.Observable(function(e){t.getWidget().user.clear(function(t){200!==t.status?e.error(t.status):e.next(t.data||null)})})},t.prototype.isOpen=function(){return this.getWidget().isOpen()},t.prototype.open=function(t){this.getWidget().open(t)},t.prototype.close=function(){this.getWidget().close()},t.prototype.track=function(t,e){this.getWidget().track(t,e)},t.prototype.setTags=function(t){this.getWidget().setTags(t)},t.prototype.setLocale=function(t){this.getWidget().setLocale(t)},t.prototype.destroy=function(){this.getWidget().destroy()},t.prototype.isInitialized=function(){return this.getWidget().isInitialized()},t.prototype.getWidget=function(){return window.fcWidget},t.prototype.loadScript=function(t){return new r.Observable(function(e){var r=document.createElement("script");r.type="text/javascript",r.src=t,r.onload=function(){e.next(t),e.complete()},r.onerror=function(){return e.error("Couldn't load "+t)},document.getElementsByTagName("body")[0].appendChild(r)})},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}(),i=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[],providers:[o],declarations:[],exports:[]}]}],t}();t.NgxFreshChatModule=i,t.NgxFreshChatService=o,Object.defineProperty(t,"__esModule",{value:!0})}); | ||
//# sourceMappingURL=ngx-freshchat.umd.min.js.map |
@@ -19,2 +19,8 @@ /** | ||
/** @type {?} */ | ||
FCWidget.prototype.isOpen; | ||
/** @type {?} */ | ||
FCWidget.prototype.open; | ||
/** @type {?} */ | ||
FCWidget.prototype.close; | ||
/** @type {?} */ | ||
FCWidget.prototype.track; | ||
@@ -178,2 +184,29 @@ /** @type {?} */ | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
isOpen() { | ||
return this.getWidget().isOpen(); | ||
} | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
open(payload) { | ||
this.getWidget().open(payload); | ||
} | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
close() { | ||
this.getWidget().close(); | ||
} | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -267,2 +300,2 @@ * @author beyondsanity | ||
/** @nocollapse */ NgxFreshChatService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function NgxFreshChatService_Factory() { return new NgxFreshChatService(); }, token: NgxFreshChatService, providedIn: "root" }); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1mcmVzaGNoYXQvIiwic291cmNlcyI6WyJsaWIvbmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRWhELHVCQVNDOzs7SUFSQyx3QkFBSzs7SUFDTCx3QkFBSzs7SUFDTCx5QkFBTTs7SUFDTiwyQkFBUTs7SUFDUiw2QkFBVTs7SUFDViwyQkFBUTs7SUFDUixpQ0FBYzs7SUFDZCxzQkFBRzs7QUFNTCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGdCQUFlLENBQUM7Ozs7Ozs7SUFRaEIsSUFBSSxDQUFDLElBQWtCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQywwQ0FBMEMsQ0FBQzthQUMvRCxJQUFJLENBQ0gsS0FBSyxFQUFFLEVBQ1AsT0FBTzs7OztRQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUN2QyxDQUFDO0lBQ04sQ0FBQzs7Ozs7O0lBRU8sVUFBVSxDQUFDLElBQUk7UUFDckIsT0FBTyxJQUFJLFVBQVU7Ozs7UUFBRSxRQUFRLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDLGVBQWU7Ozs7WUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLENBQUMsRUFBQyxDQUFDO0lB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bmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNJbml0T2JqZWN0LCBGQ1VzZXIgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIGZsYXRNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmludGVyZmFjZSBGQ1dpZGdldCB7XG4gIGluaXQ7XG4gIHVzZXI7XG4gIHRyYWNrO1xuICBzZXRUYWdzO1xuICBzZXRMb2NhbGU7XG4gIGRlc3Ryb3k7XG4gIGlzSW5pdGlhbGl6ZWQ7XG4gIG9uO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3hGcmVzaENoYXRTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBGcmVzaGNoYXQgV2lkZ2V0LlxuICAgKiBAcGFyYW0gZGF0YSBUaGUgRnJlc2hjaGF0IGluaXQgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gdGhlIHdpZGdldCBoYXMgbG9hZGVkLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgaW5pdChkYXRhOiBGQ0luaXRPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRTY3JpcHQoJ2h0dHBzOi8vd2NoYXQuZnJlc2hjaGF0LmNvbS9qcy93aWRnZXQuanMnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIGZsYXRNYXAoIHJlcyA9PiB0aGlzLmluaXRXaWRnZXQoZGF0YSkpXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0V2lkZ2V0KGRhdGEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS5vbignd2lkZ2V0OmxvYWRlZCcsIHJlcyA9PiBvYnNlcnZlci5uZXh0KHJlcykgKTtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkuaW5pdChkYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGNhcHR1cmUgdGhlIHVzZXIgY3JlYXRpb24gZXZlbnQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2F2ZSB0aGUgcmVzdG9yZUlELlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQuXG4gICAqIEBhdXRob3IgV2lsbCBQb3Vsc29uXG4gICAqL1xuICBvblVzZXJDcmVhdGUoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLm9uKCd1c2VyOmNyZWF0ZWQnLCAocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhIHx8IG51bGwpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHRoZSBjdXJyZW50IHVzZXIuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBnZXRVc2VyKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKCBvYnNlcnZlciA9PiB7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLnVzZXIuZ2V0KFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHJlcy5zdGF0dXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlcnMgcHJvcGVydGllc1xuICAgKiBAcGFyYW0gdXNlciBUaGUgbmV3IHByb3BlcnRpZXMgZm9yIHRoZSB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIGFmdGVyIHRoZSB1c2VyIGhhcyBiZWVuIHVwZGF0ZWQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRVc2VyUHJvcGVydGllcyh1c2VyOiBGQ1VzZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLnNldFByb3BlcnRpZXModXNlcixcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHBhcmFtIHVzZXIgVGhlIG5ldyBwcm9wZXJ0aWVzIHRvIHVwZGF0ZSB0aGUgdXNlciB3aXRoLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgdXBkYXRlVXNlcih1c2VyOiBGQ1VzZXIpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnVzZXIudXBkYXRlKHVzZXIpO1xuICB9XG5cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gdGhlIHVzZXIgaGFzIGJlZW4gY2xlYXJlZC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGNsZWFyVXNlcigpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLmNsZWFyKFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHJlcy5zdGF0dXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhIHx8IG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFja3MgYW4gZXZlbnQgYWdhaW5zdCB0aGUgY3VycmVudCB1c2VyLlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIFRoZSBldmVudCBuYW1lIHRvIHRyYWNrLlxuICAgKiBAcGFyYW0gcGF5bG9hZCBPcHRpb25hbCAtIFRoZSBwYXlsb2FkIHRvIHBhc3MgdG8gdGhlIGV2ZW50LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgdHJhY2soZXZlbnROYW1lOiBzdHJpbmcsIHBheWxvYWQ/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnRyYWNrKGV2ZW50TmFtZSwgcGF5bG9hZCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdGFncyBhZ2FpbnN0IHRoZSBjdXJyZW50IHVzZXJcbiAgICogQHBhcmFtIHRhZ3MgQW4gYXJyYXkgb2YgdGFncyB0byBzZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRUYWdzKHRhZ3M6IFtzdHJpbmddKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS5zZXRUYWdzKHRhZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxvY2FsZSBmb3IgdGhlIGN1cnJlbnQgdXNlclxuICAgKiBAcGFyYW0gbG9jYWxlIFRoZSBsb2NhbGUuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnNldExvY2FsZShsb2NhbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlc3Ryb3lzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB3aWRnZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkuZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgd2lkZ2V0IGhhcyBiZWVuIGluaXRpYWxpemVkXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBvZiBpZiB0aGUgd2lkZ2V0IGhhcyBiZWVuIGluaXRpYWxpemVkXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBpc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldFdpZGdldCgpLmlzSW5pdGlhbGl6ZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0V2lkZ2V0KCk6IEZDV2lkZ2V0IHtcbiAgICByZXR1cm4gKHdpbmRvdyBhcyBhbnkpLmZjV2lkZ2V0O1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkU2NyaXB0KHNyYzogc3RyaW5nKTogT2JzZXJ2YWJsZSA8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4oKG9ic2VydmVyOiBPYnNlcnZlcjxhbnk+KSA9PiB7XG4gICAgICBjb25zdCBzY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHRFbGVtZW50LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcbiAgICAgIHNjcmlwdEVsZW1lbnQuc3JjID0gc3JjO1xuICAgICAgc2NyaXB0RWxlbWVudC5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChzcmMpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9O1xuICAgICAgc2NyaXB0RWxlbWVudC5vbmVycm9yID0gKCkgPT4gb2JzZXJ2ZXIuZXJyb3IoJ0NvdWxkblxcJ3QgbG9hZCAnICsgc3JjKTtcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0uYXBwZW5kQ2hpbGQoc2NyaXB0RWxlbWVudCk7XG4gICAgfSk7XG4gIH1cblxufVxuXG4vLyBUT0RPOiBldmVudHNcbi8vIFRPRE86IG1lc3NlbmdlciBBUElcblxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1mcmVzaGNoYXQvIiwic291cmNlcyI6WyJsaWIvbmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRWhELHVCQVlDOzs7SUFYQyx3QkFBSzs7SUFDTCx3QkFBSzs7SUFDTCwwQkFBTzs7SUFDUCx3QkFBSzs7SUFDTCx5QkFBTTs7SUFDTix5QkFBTTs7SUFDTiwyQkFBUTs7SUFDUiw2QkFBVTs7SUFDViwyQkFBUTs7SUFDUixpQ0FBYzs7SUFDZCxzQkFBRzs7QUFNTCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGdCQUFlLENBQUM7Ozs7Ozs7SUFRaEIsSUFBSSxDQUFDLElBQWtCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQywwQ0FBMEMsQ0FBQzthQUMvRCxJQUFJLENBQ0gsS0FBSyxFQUFFLEVBQ1AsT0FBTzs7OztRQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUN2QyxDQUFDO0lBQ04sQ0FBQzs7Ozs7O0lBRU8sVUFBVSxDQUFDLElBQUk7UUFDckIsT0FBTyxJQUFJLFVBQVU7Ozs7UUFBRSxRQUFRLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDLGVBQWU7Ozs7WUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLElB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QUcsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsQ0FBQSxDQUFDO1lBQ3RFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7WUF6TUYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNJbml0T2JqZWN0LCBGQ1VzZXIgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIGZsYXRNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmludGVyZmFjZSBGQ1dpZGdldCB7XG4gIGluaXQ7XG4gIHVzZXI7XG4gIGlzT3BlbjtcbiAgb3BlbjtcbiAgY2xvc2U7XG4gIHRyYWNrO1xuICBzZXRUYWdzO1xuICBzZXRMb2NhbGU7XG4gIGRlc3Ryb3k7XG4gIGlzSW5pdGlhbGl6ZWQ7XG4gIG9uO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3hGcmVzaENoYXRTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBGcmVzaGNoYXQgV2lkZ2V0LlxuICAgKiBAcGFyYW0gZGF0YSBUaGUgRnJlc2hjaGF0IGluaXQgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gdGhlIHdpZGdldCBoYXMgbG9hZGVkLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgaW5pdChkYXRhOiBGQ0luaXRPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRTY3JpcHQoJ2h0dHBzOi8vd2NoYXQuZnJlc2hjaGF0LmNvbS9qcy93aWRnZXQuanMnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIGZsYXRNYXAoIHJlcyA9PiB0aGlzLmluaXRXaWRnZXQoZGF0YSkpXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0V2lkZ2V0KGRhdGEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS5vbignd2lkZ2V0OmxvYWRlZCcsIHJlcyA9PiBvYnNlcnZlci5uZXh0KHJlcykgKTtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkuaW5pdChkYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGNhcHR1cmUgdGhlIHVzZXIgY3JlYXRpb24gZXZlbnQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2F2ZSB0aGUgcmVzdG9yZUlELlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQuXG4gICAqIEBhdXRob3IgV2lsbCBQb3Vsc29uXG4gICAqL1xuICBvblVzZXJDcmVhdGUoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLm9uKCd1c2VyOmNyZWF0ZWQnLCAocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhIHx8IG51bGwpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHRoZSBjdXJyZW50IHVzZXIuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBnZXRVc2VyKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKCBvYnNlcnZlciA9PiB7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLnVzZXIuZ2V0KFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHJlcy5zdGF0dXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlcnMgcHJvcGVydGllc1xuICAgKiBAcGFyYW0gdXNlciBUaGUgbmV3IHByb3BlcnRpZXMgZm9yIHRoZSB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIGFmdGVyIHRoZSB1c2VyIGhhcyBiZWVuIHVwZGF0ZWQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRVc2VyUHJvcGVydGllcyh1c2VyOiBGQ1VzZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLnNldFByb3BlcnRpZXModXNlcixcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHBhcmFtIHVzZXIgVGhlIG5ldyBwcm9wZXJ0aWVzIHRvIHVwZGF0ZSB0aGUgdXNlciB3aXRoLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgdXBkYXRlVXNlcih1c2VyOiBGQ1VzZXIpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnVzZXIudXBkYXRlKHVzZXIpO1xuICB9XG5cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB1c2VyLlxuICAgKiBAcmV0dXJucyBBbiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gdGhlIHVzZXIgaGFzIGJlZW4gY2xlYXJlZC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGNsZWFyVXNlcigpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLmNsZWFyKFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDApIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHJlcy5zdGF0dXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcy5kYXRhIHx8IG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3Mgd2hldGhlciB0aGUgRnJlc2hjaGF0IFdpZGdldCBpcyBvcGVuLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldFdpZGdldCgpLmlzT3BlbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIHRoZSBGcmVzaGNoYXQgV2lkZ2V0LlxuICAgKlxuICAgKiBAcGFyYW0gcGF5bG9hZCBPcHRpb25hbCAtIHBhcmFtZXRlcnMgaW5jbHVkaW5nIGNoYW5uZWwgaWQgb3IgbmFtZS5cbiAgICogVGhlIHJlcGx5VGV4dCBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc2V0IHVwIGN1c3RvbSB0ZXh0IGluIHRoZSB0ZXh0IGFyZWEgb2YgdGhlIHdpZGdldC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIG9wZW4ocGF5bG9hZDogeyBuYW1lPzogc3RyaW5nLCBjaGFubmVsSWQ/OiBzdHJpbmcsIHJlcGx5VGV4dD86IHN0cmluZyB9KTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS5vcGVuKHBheWxvYWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgRnJlc2hjaGF0IFdpZGdldC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkuY2xvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFja3MgYW4gZXZlbnQgYWdhaW5zdCB0aGUgY3VycmVudCB1c2VyLlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIFRoZSBldmVudCBuYW1lIHRvIHRyYWNrLlxuICAgKiBAcGFyYW0gcGF5bG9hZCBPcHRpb25hbCAtIFRoZSBwYXlsb2FkIHRvIHBhc3MgdG8gdGhlIGV2ZW50LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgdHJhY2soZXZlbnROYW1lOiBzdHJpbmcsIHBheWxvYWQ/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnRyYWNrKGV2ZW50TmFtZSwgcGF5bG9hZCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdGFncyBhZ2FpbnN0IHRoZSBjdXJyZW50IHVzZXJcbiAgICogQHBhcmFtIHRhZ3MgQW4gYXJyYXkgb2YgdGFncyB0byBzZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRUYWdzKHRhZ3M6IFtzdHJpbmddKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS5zZXRUYWdzKHRhZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxvY2FsZSBmb3IgdGhlIGN1cnJlbnQgdXNlclxuICAgKiBAcGFyYW0gbG9jYWxlIFRoZSBsb2NhbGUuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBzZXRMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLnNldExvY2FsZShsb2NhbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlc3Ryb3lzIHRoZSBjdXJyZW50IEZyZXNoY2hhdCB3aWRnZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkuZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgd2lkZ2V0IGhhcyBiZWVuIGluaXRpYWxpemVkXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBvZiBpZiB0aGUgd2lkZ2V0IGhhcyBiZWVuIGluaXRpYWxpemVkXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBpc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldFdpZGdldCgpLmlzSW5pdGlhbGl6ZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0V2lkZ2V0KCk6IEZDV2lkZ2V0IHtcbiAgICByZXR1cm4gKHdpbmRvdyBhcyBhbnkpLmZjV2lkZ2V0O1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkU2NyaXB0KHNyYzogc3RyaW5nKTogT2JzZXJ2YWJsZSA8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4oKG9ic2VydmVyOiBPYnNlcnZlcjxhbnk+KSA9PiB7XG4gICAgICBjb25zdCBzY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHRFbGVtZW50LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcbiAgICAgIHNjcmlwdEVsZW1lbnQuc3JjID0gc3JjO1xuICAgICAgc2NyaXB0RWxlbWVudC5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChzcmMpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9O1xuICAgICAgc2NyaXB0RWxlbWVudC5vbmVycm9yID0gKCkgPT4gb2JzZXJ2ZXIuZXJyb3IoJ0NvdWxkblxcJ3QgbG9hZCAnICsgc3JjKTtcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0uYXBwZW5kQ2hpbGQoc2NyaXB0RWxlbWVudCk7XG4gICAgfSk7XG4gIH1cblxufVxuXG4vLyBUT0RPOiBldmVudHNcbi8vIFRPRE86IG1lc3NlbmdlciBBUElcblxuIl19 |
@@ -19,2 +19,8 @@ /** | ||
/** @type {?} */ | ||
FCWidget.prototype.isOpen; | ||
/** @type {?} */ | ||
FCWidget.prototype.open; | ||
/** @type {?} */ | ||
FCWidget.prototype.close; | ||
/** @type {?} */ | ||
FCWidget.prototype.track; | ||
@@ -255,2 +261,62 @@ /** @type {?} */ | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.isOpen = /** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
return this.getWidget().isOpen(); | ||
}; | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @param payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.open = /** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
function (payload) { | ||
this.getWidget().open(payload); | ||
}; | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.close = /** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
this.getWidget().close(); | ||
}; | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -409,2 +475,2 @@ * @param eventName The event name to track. | ||
export { NgxFreshChatService }; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1mcmVzaGNoYXQvIiwic291cmNlcyI6WyJsaWIvbmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRWhELHVCQVNDOzs7SUFSQyx3QkFBSzs7SUFDTCx3QkFBSzs7SUFDTCx5QkFBTTs7SUFDTiwyQkFBUTs7SUFDUiw2QkFBVTs7SUFDViwyQkFBUTs7SUFDUixpQ0FBYzs7SUFDZCxzQkFBRzs7QUFHTDtJQUtFO0lBQWUsQ0FBQztJQUVoQjs7Ozs7T0FLRzs7Ozs7OztJQUNILGtDQUFJOzs7Ozs7SUFBSixVQUFLLElBQWtCO1FBQXZCLGlCQU1DO1FBTEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLDBDQUEwQyxDQUFDO2FBQy9ELElBQUksQ0FDSCxLQUFLLEVBQUUsRUFDUCxPQUFPOzs7O1FBQUUsVUFBQSxHQUFHLElBQUksT0FBQSxLQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFyQixDQUFxQixFQUFDLENBQ3ZDLENBQUM7SUFDTixDQUFDOzs7Ozs7SUFFTyx3Q0FBVTs7Ozs7SUFBbEIsVUFBbUIsSUFBSTtRQUF2QixpQkFLQztRQUpDLE9BQU8sSUFBSSxVQUFVOzs7O1FBQUUsVUFBQSxRQUFRO1lBQzdCLEtBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFBZTs7OztZQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBbEIsQ0FBa0IsRUFBRSxDQUFDO1lBQ2pFLEtBQUksQ0FBQyxTQUFT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Q0FBQyxPQUFPOzs7WUFBRyxjQUFNLE9BQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsRUFBdkMsQ0FBdUMsQ0FBQSxDQUFDO1lBQ3RFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOztnQkE5S0YsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7Ozs7OEJBbEJEO0NBZ01DLEFBaExELElBZ0xDO1NBN0tZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDSW5pdE9iamVjdCwgRkNVc2VyIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0LCBmbGF0TWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbnRlcmZhY2UgRkNXaWRnZXQge1xuICBpbml0O1xuICB1c2VyO1xuICB0cmFjaztcbiAgc2V0VGFncztcbiAgc2V0TG9jYWxlO1xuICBkZXN0cm95O1xuICBpc0luaXRpYWxpemVkO1xuICBvbjtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmd4RnJlc2hDaGF0U2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgRnJlc2hjaGF0IFdpZGdldC5cbiAgICogQHBhcmFtIGRhdGEgVGhlIEZyZXNoY2hhdCBpbml0IG9iamVjdC5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIHRoZSB3aWRnZXQgaGFzIGxvYWRlZC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGluaXQoZGF0YTogRkNJbml0T2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkU2NyaXB0KCdodHRwczovL3djaGF0LmZyZXNoY2hhdC5jb20vanMvd2lkZ2V0LmpzJylcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBmbGF0TWFwKCByZXMgPT4gdGhpcy5pbml0V2lkZ2V0KGRhdGEpKVxuICAgICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFdpZGdldChkYXRhKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkub24oJ3dpZGdldDpsb2FkZWQnLCByZXMgPT4gb2JzZXJ2ZXIubmV4dChyZXMpICk7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLmluaXQoZGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXNlZCB0byBjYXB0dXJlIHRoZSB1c2VyIGNyZWF0aW9uIGV2ZW50LiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNhdmUgdGhlIHJlc3RvcmVJRC5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIGEgdXNlciBpcyBjcmVhdGVkLlxuICAgKiBAYXV0aG9yIFdpbGwgUG91bHNvblxuICAgKi9cbiAgb25Vc2VyQ3JlYXRlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS5vbigndXNlcjpjcmVhdGVkJywgKHJlcykgPT4ge1xuICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IocmVzLnN0YXR1cyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB0aGUgY3VycmVudCB1c2VyLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgZ2V0VXNlcigpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLmdldChcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGN1cnJlbnQgRnJlc2hjaGF0IHVzZXJzIHByb3BlcnRpZXNcbiAgICogQHBhcmFtIHVzZXIgVGhlIG5ldyBwcm9wZXJ0aWVzIGZvciB0aGUgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyBhZnRlciB0aGUgdXNlciBoYXMgYmVlbiB1cGRhdGVkLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0VXNlclByb3BlcnRpZXModXNlcjogRkNVc2VyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkudXNlci5zZXRQcm9wZXJ0aWVzKHVzZXIsXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlcy5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IocmVzLnN0YXR1cyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9ic2VydmVyLm5leHQocmVzLmRhdGEgfHwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGN1cnJlbnQgRnJlc2hjaGF0IHVzZXIuXG4gICAqIEBwYXJhbSB1c2VyIFRoZSBuZXcgcHJvcGVydGllcyB0byB1cGRhdGUgdGhlIHVzZXIgd2l0aC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIHVwZGF0ZVVzZXIodXNlcjogRkNVc2VyKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLnVwZGF0ZSh1c2VyKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIHRoZSB1c2VyIGhhcyBiZWVuIGNsZWFyZWQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBjbGVhclVzZXIoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkudXNlci5jbGVhcihcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhY2tzIGFuIGV2ZW50IGFnYWluc3QgdGhlIGN1cnJlbnQgdXNlci5cbiAgICogQHBhcmFtIGV2ZW50TmFtZSBUaGUgZXZlbnQgbmFtZSB0byB0cmFjay5cbiAgICogQHBhcmFtIHBheWxvYWQgT3B0aW9uYWwgLSBUaGUgcGF5bG9hZCB0byBwYXNzIHRvIHRoZSBldmVudC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIHRyYWNrKGV2ZW50TmFtZTogc3RyaW5nLCBwYXlsb2FkPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS50cmFjayhldmVudE5hbWUsIHBheWxvYWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHRhZ3MgYWdhaW5zdCB0aGUgY3VycmVudCB1c2VyXG4gICAqIEBwYXJhbSB0YWdzIEFuIGFycmF5IG9mIHRhZ3MgdG8gc2V0LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0VGFncyh0YWdzOiBbc3RyaW5nXSk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkuc2V0VGFncyh0YWdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsb2NhbGUgZm9yIHRoZSBjdXJyZW50IHVzZXJcbiAgICogQHBhcmFtIGxvY2FsZSBUaGUgbG9jYWxlLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS5zZXRMb2NhbGUobG9jYWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgd2lkZ2V0LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLmRlc3Ryb3koKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIHdpZGdldCBoYXMgYmVlbiBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gb2YgaWYgdGhlIHdpZGdldCBoYXMgYmVlbiBpbml0aWFsaXplZFxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgaXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRXaWRnZXQoKS5pc0luaXRpYWxpemVkKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZGdldCgpOiBGQ1dpZGdldCB7XG4gICAgcmV0dXJuICh3aW5kb3cgYXMgYW55KS5mY1dpZGdldDtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFNjcmlwdChzcmM6IHN0cmluZyk6IE9ic2VydmFibGUgPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KChvYnNlcnZlcjogT2JzZXJ2ZXI8YW55PikgPT4ge1xuICAgICAgY29uc3Qgc2NyaXB0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0RWxlbWVudC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7XG4gICAgICBzY3JpcHRFbGVtZW50LnNyYyA9IHNyYztcbiAgICAgIHNjcmlwdEVsZW1lbnQub25sb2FkID0gKCkgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoc3JjKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgfTtcbiAgICAgIHNjcmlwdEVsZW1lbnQub25lcnJvciA9ICgpID0+IG9ic2VydmVyLmVycm9yKCdDb3VsZG5cXCd0IGxvYWQgJyArIHNyYyk7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnYm9keScpWzBdLmFwcGVuZENoaWxkKHNjcmlwdEVsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbn1cblxuLy8gVE9ETzogZXZlbnRzXG4vLyBUT0RPOiBtZXNzZW5nZXIgQVBJXG5cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1mcmVzaGNoYXQvIiwic291cmNlcyI6WyJsaWIvbmd4LWZyZXNoY2hhdC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRWhELHVCQVlDOzs7SUFYQyx3QkFBSzs7SUFDTCx3QkFBSzs7SUFDTCwwQkFBTzs7SUFDUCx3QkFBSzs7SUFDTCx5QkFBTTs7SUFDTix5QkFBTTs7SUFDTiwyQkFBUTs7SUFDUiw2QkFBVTs7SUFDViwyQkFBUTs7SUFDUixpQ0FBYzs7SUFDZCxzQkFBRzs7QUFHTDtJQUtFO0lBQWUsQ0FBQztJQUVoQjs7Ozs7T0FLRzs7Ozs7OztJQUNILGtDQUFJOzs7Ozs7SUFBSixVQUFLLElBQWtCO1FBQXZCLGlCQU1DO1FBTEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLDBDQUEwQyxDQUFDO2FBQy9ELElBQUksQ0FDSCxLQUFLLEVBQUUsRUFDUCxPQUFPOzs7O1FBQUUsVUFBQSxHQUFHLElBQUksT0FBQSxLQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFyQixDQUFxQixFQUFDLENBQ3ZDLENBQUM7SUFDTixDQUFDOzs7Ozs7SUFFTyx3Q0FBVTs7Ozs7SUFBbEIsVUFBbUIsSUFBSTtRQUF2QixpQkFLQztRQUpDLE9BQU8sSUFBSSxVQUFVOzs7O1FBQUUsVUFBQSxRQUFRO1lBQzdCLEtBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFBZTs7OztZQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBbEIs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QVEsQ0FBQztJQUNsQyxDQUFDOzs7Ozs7SUFFTyx3Q0FBVTs7Ozs7SUFBbEIsVUFBbUIsR0FBVztRQUM1QixPQUFPLElBQUksVUFBVTs7OztRQUFNLFVBQUMsUUFBdUI7O2dCQUMzQyxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7WUFDdEQsYUFBYSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztZQUN2QyxhQUFhLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUN4QixhQUFhLENBQUMsTUFBTTs7O1lBQUc7Z0JBQ25CLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ25CLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4QixDQUFDLENBQUEsQ0FBQztZQUNGLGFBQWEsQ0FBQyxPQUFPOzs7WUFBRyxjQUFNLE9BQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsRUFBdkMsQ0FBdUMsQ0FBQSxDQUFDO1lBQ3RFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOztnQkF6TUYsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7Ozs7OEJBckJEO0NBOE5DLEFBM01ELElBMk1DO1NBeE1ZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDSW5pdE9iamVjdCwgRkNVc2VyIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0LCBmbGF0TWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbnRlcmZhY2UgRkNXaWRnZXQge1xuICBpbml0O1xuICB1c2VyO1xuICBpc09wZW47XG4gIG9wZW47XG4gIGNsb3NlO1xuICB0cmFjaztcbiAgc2V0VGFncztcbiAgc2V0TG9jYWxlO1xuICBkZXN0cm95O1xuICBpc0luaXRpYWxpemVkO1xuICBvbjtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmd4RnJlc2hDaGF0U2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgRnJlc2hjaGF0IFdpZGdldC5cbiAgICogQHBhcmFtIGRhdGEgVGhlIEZyZXNoY2hhdCBpbml0IG9iamVjdC5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIHRoZSB3aWRnZXQgaGFzIGxvYWRlZC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGluaXQoZGF0YTogRkNJbml0T2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkU2NyaXB0KCdodHRwczovL3djaGF0LmZyZXNoY2hhdC5jb20vanMvd2lkZ2V0LmpzJylcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBmbGF0TWFwKCByZXMgPT4gdGhpcy5pbml0V2lkZ2V0KGRhdGEpKVxuICAgICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFdpZGdldChkYXRhKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkub24oJ3dpZGdldDpsb2FkZWQnLCByZXMgPT4gb2JzZXJ2ZXIubmV4dChyZXMpICk7XG4gICAgICB0aGlzLmdldFdpZGdldCgpLmluaXQoZGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXNlZCB0byBjYXB0dXJlIHRoZSB1c2VyIGNyZWF0aW9uIGV2ZW50LiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNhdmUgdGhlIHJlc3RvcmVJRC5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIGEgdXNlciBpcyBjcmVhdGVkLlxuICAgKiBAYXV0aG9yIFdpbGwgUG91bHNvblxuICAgKi9cbiAgb25Vc2VyQ3JlYXRlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS5vbigndXNlcjpjcmVhdGVkJywgKHJlcykgPT4ge1xuICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IocmVzLnN0YXR1cyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB0aGUgY3VycmVudCB1c2VyLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgZ2V0VXNlcigpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSggb2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLmdldChcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGN1cnJlbnQgRnJlc2hjaGF0IHVzZXJzIHByb3BlcnRpZXNcbiAgICogQHBhcmFtIHVzZXIgVGhlIG5ldyBwcm9wZXJ0aWVzIGZvciB0aGUgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyBhZnRlciB0aGUgdXNlciBoYXMgYmVlbiB1cGRhdGVkLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0VXNlclByb3BlcnRpZXModXNlcjogRkNVc2VyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkudXNlci5zZXRQcm9wZXJ0aWVzKHVzZXIsXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlcy5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IocmVzLnN0YXR1cyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9ic2VydmVyLm5leHQocmVzLmRhdGEgfHwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGN1cnJlbnQgRnJlc2hjaGF0IHVzZXIuXG4gICAqIEBwYXJhbSB1c2VyIFRoZSBuZXcgcHJvcGVydGllcyB0byB1cGRhdGUgdGhlIHVzZXIgd2l0aC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIHVwZGF0ZVVzZXIodXNlcjogRkNVc2VyKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS51c2VyLnVwZGF0ZSh1c2VyKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgY3VycmVudCBGcmVzaGNoYXQgdXNlci5cbiAgICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIHRoZSB1c2VyIGhhcyBiZWVuIGNsZWFyZWQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBjbGVhclVzZXIoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoIG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuZ2V0V2lkZ2V0KCkudXNlci5jbGVhcihcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyAhPT0gMjAwKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMuc3RhdHVzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMuZGF0YSB8fCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIEZyZXNoY2hhdCBXaWRnZXQgaXMgb3Blbi5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRXaWRnZXQoKS5pc09wZW4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgRnJlc2hjaGF0IFdpZGdldC5cbiAgICpcbiAgICogQHBhcmFtIHBheWxvYWQgT3B0aW9uYWwgLSBwYXJhbWV0ZXJzIGluY2x1ZGluZyBjaGFubmVsIGlkIG9yIG5hbWUuXG4gICAqIFRoZSByZXBseVRleHQgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNldCB1cCBjdXN0b20gdGV4dCBpbiB0aGUgdGV4dCBhcmVhIG9mIHRoZSB3aWRnZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBvcGVuKHBheWxvYWQ6IHsgbmFtZT86IHN0cmluZywgY2hhbm5lbElkPzogc3RyaW5nLCByZXBseVRleHQ/OiBzdHJpbmcgfSk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkub3BlbihwYXlsb2FkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIEZyZXNoY2hhdCBXaWRnZXQuXG4gICAqIEBhdXRob3IgYmV5b25kc2FuaXR5XG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLmNsb3NlKCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhY2tzIGFuIGV2ZW50IGFnYWluc3QgdGhlIGN1cnJlbnQgdXNlci5cbiAgICogQHBhcmFtIGV2ZW50TmFtZSBUaGUgZXZlbnQgbmFtZSB0byB0cmFjay5cbiAgICogQHBhcmFtIHBheWxvYWQgT3B0aW9uYWwgLSBUaGUgcGF5bG9hZCB0byBwYXNzIHRvIHRoZSBldmVudC5cbiAgICogQGF1dGhvciBiZXlvbmRzYW5pdHlcbiAgICovXG4gIHRyYWNrKGV2ZW50TmFtZTogc3RyaW5nLCBwYXlsb2FkPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS50cmFjayhldmVudE5hbWUsIHBheWxvYWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHRhZ3MgYWdhaW5zdCB0aGUgY3VycmVudCB1c2VyXG4gICAqIEBwYXJhbSB0YWdzIEFuIGFycmF5IG9mIHRhZ3MgdG8gc2V0LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0VGFncyh0YWdzOiBbc3RyaW5nXSk6IHZvaWQge1xuICAgIHRoaXMuZ2V0V2lkZ2V0KCkuc2V0VGFncyh0YWdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsb2NhbGUgZm9yIHRoZSBjdXJyZW50IHVzZXJcbiAgICogQHBhcmFtIGxvY2FsZSBUaGUgbG9jYWxlLlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5nZXRXaWRnZXQoKS5zZXRMb2NhbGUobG9jYWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95cyB0aGUgY3VycmVudCBGcmVzaGNoYXQgd2lkZ2V0LlxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmdldFdpZGdldCgpLmRlc3Ryb3koKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIHdpZGdldCBoYXMgYmVlbiBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gb2YgaWYgdGhlIHdpZGdldCBoYXMgYmVlbiBpbml0aWFsaXplZFxuICAgKiBAYXV0aG9yIGJleW9uZHNhbml0eVxuICAgKi9cbiAgaXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRXaWRnZXQoKS5pc0luaXRpYWxpemVkKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZGdldCgpOiBGQ1dpZGdldCB7XG4gICAgcmV0dXJuICh3aW5kb3cgYXMgYW55KS5mY1dpZGdldDtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFNjcmlwdChzcmM6IHN0cmluZyk6IE9ic2VydmFibGUgPGFueT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KChvYnNlcnZlcjogT2JzZXJ2ZXI8YW55PikgPT4ge1xuICAgICAgY29uc3Qgc2NyaXB0RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0RWxlbWVudC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7XG4gICAgICBzY3JpcHRFbGVtZW50LnNyYyA9IHNyYztcbiAgICAgIHNjcmlwdEVsZW1lbnQub25sb2FkID0gKCkgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoc3JjKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgfTtcbiAgICAgIHNjcmlwdEVsZW1lbnQub25lcnJvciA9ICgpID0+IG9ic2VydmVyLmVycm9yKCdDb3VsZG5cXCd0IGxvYWQgJyArIHNyYyk7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnYm9keScpWzBdLmFwcGVuZENoaWxkKHNjcmlwdEVsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbn1cblxuLy8gVE9ETzogZXZlbnRzXG4vLyBUT0RPOiBtZXNzZW5nZXIgQVBJXG5cbiJdfQ== |
@@ -155,2 +155,29 @@ import { Injectable, ɵɵdefineInjectable, NgModule } from '@angular/core'; | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
isOpen() { | ||
return this.getWidget().isOpen(); | ||
} | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
open(payload) { | ||
this.getWidget().open(payload); | ||
} | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
close() { | ||
this.getWidget().close(); | ||
} | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -157,0 +184,0 @@ * @author beyondsanity |
@@ -232,2 +232,62 @@ import { Injectable, ɵɵdefineInjectable, NgModule } from '@angular/core'; | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.isOpen = /** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
return this.getWidget().isOpen(); | ||
}; | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @param payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.open = /** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @author beyondsanity | ||
* @param {?} payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @return {?} | ||
*/ | ||
function (payload) { | ||
this.getWidget().open(payload); | ||
}; | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
*/ | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
NgxFreshChatService.prototype.close = /** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
* @return {?} | ||
*/ | ||
function () { | ||
this.getWidget().close(); | ||
}; | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -234,0 +294,0 @@ * @param eventName The event name to track. |
@@ -45,2 +45,24 @@ import { FCInitObject, FCUser } from './models'; | ||
/** | ||
* Checks whether the Freshchat Widget is open. | ||
* @author beyondsanity | ||
*/ | ||
isOpen(): boolean; | ||
/** | ||
* Opens the Freshchat Widget. | ||
* | ||
* @param payload Optional - parameters including channel id or name. | ||
* The replyText parameter can be used to set up custom text in the text area of the widget. | ||
* @author beyondsanity | ||
*/ | ||
open(payload: { | ||
name?: string; | ||
channelId?: string; | ||
replyText?: string; | ||
}): void; | ||
/** | ||
* Closes the Freshchat Widget. | ||
* @author beyondsanity | ||
*/ | ||
close(): void; | ||
/** | ||
* Tracks an event against the current user. | ||
@@ -47,0 +69,0 @@ * @param eventName The event name to track. |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":4,"metadata":{"NgxFreshChatService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":16,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"init":[{"__symbolic":"method"}],"initWidget":[{"__symbolic":"method"}],"onUserCreate":[{"__symbolic":"method"}],"getUser":[{"__symbolic":"method"}],"setUserProperties":[{"__symbolic":"method"}],"updateUser":[{"__symbolic":"method"}],"clearUser":[{"__symbolic":"method"}],"track":[{"__symbolic":"method"}],"setTags":[{"__symbolic":"method"}],"setLocale":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"isInitialized":[{"__symbolic":"method"}],"getWidget":[{"__symbolic":"method"}],"loadScript":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"NgxFreshChatModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"imports":[],"providers":[{"__symbolic":"reference","name":"NgxFreshChatService"}],"declarations":[],"exports":[]}]}],"members":{}},"FCInitObject":{"__symbolic":"interface"},"FCUser":{"__symbolic":"interface"}},"origins":{"NgxFreshChatService":"./lib/ngx-freshchat-lib.service","NgxFreshChatModule":"./lib/ngx-freshchat-lib.module","FCInitObject":"./lib/models","FCUser":"./lib/models"},"importAs":"ngx-freshchat"} | ||
{"__symbolic":"module","version":4,"metadata":{"NgxFreshChatService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":19,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"init":[{"__symbolic":"method"}],"initWidget":[{"__symbolic":"method"}],"onUserCreate":[{"__symbolic":"method"}],"getUser":[{"__symbolic":"method"}],"setUserProperties":[{"__symbolic":"method"}],"updateUser":[{"__symbolic":"method"}],"clearUser":[{"__symbolic":"method"}],"isOpen":[{"__symbolic":"method"}],"open":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}],"track":[{"__symbolic":"method"}],"setTags":[{"__symbolic":"method"}],"setLocale":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"isInitialized":[{"__symbolic":"method"}],"getWidget":[{"__symbolic":"method"}],"loadScript":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"NgxFreshChatModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"imports":[],"providers":[{"__symbolic":"reference","name":"NgxFreshChatService"}],"declarations":[],"exports":[]}]}],"members":{}},"FCInitObject":{"__symbolic":"interface"},"FCUser":{"__symbolic":"interface"}},"origins":{"NgxFreshChatService":"./lib/ngx-freshchat-lib.service","NgxFreshChatModule":"./lib/ngx-freshchat-lib.module","FCInitObject":"./lib/models","FCUser":"./lib/models"},"importAs":"ngx-freshchat"} |
{ | ||
"name": "ngx-freshchat", | ||
"version": "0.1.0", | ||
"version": "0.1.1", | ||
"peerDependencies": { | ||
@@ -5,0 +5,0 @@ "@angular/common": "^6.0.0-rc.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No README
QualityPackage does not have a README. This may indicate a failed publish or a low quality package.
Found 1 instance in 1 package
418324
41
3002
1
62