@nitsanzo/ngx-zendesk-webwidget 4.0.0 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,284 @@
1
+ # ngx-zendesk-webwidget
2
+
3
+ [![Maintainability](https://api.codeclimate.com/v1/badges/75bc5877b3bf6939fe44/maintainability)](https://codeclimate.com/github/AlisonVilela/ngx-zendesk-webwidget/maintainability)
4
+ [![Build Status](https://travis-ci.org/AlisonVilela/ngx-zendesk-webwidget.svg?branch=master)](https://travis-ci.org/AlisonVilela/ngx-zendesk-webwidget)
5
+ [![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues)
6
+
7
+ Zendesk-Webwidget for Angular 2+
8
+
9
+ Zendesk-Webwidget for Angular 1.x see [here](https://github.com/CrossLead/angular-zendesk-widget)
10
+
11
+ ## Installation
12
+
13
+ Via [npm](https://www.npmjs.com/package/ngx-zendesk-webwidget):
14
+
15
+ ```bash
16
+ npm install @nitsanzo/ngx-zendesk-webwidget
17
+ ```
18
+
19
+ ## Usage
20
+
21
+ Add to your `tsconfig.json` file, to `paths` `ngx-zendesk-webwidget`:
22
+ ```json
23
+ "compilerOptions": {
24
+ "paths": {
25
+ "ngx-zendesk-webwidget": ["node_modules/@nitsanzo/ngx-zendesk-webwidget"]
26
+ }
27
+ ```
28
+
29
+
30
+ The examples were made using the classic web widget
31
+
32
+ ### 1. Import the `NgxZendeskWebwidgetModule`
33
+
34
+ ```ts
35
+ import { BrowserModule } from '@angular/platform-browser';
36
+ import { NgModule } from '@angular/core';
37
+
38
+ import { AppComponent } from './app.component';
39
+
40
+ import { NgxZendeskWebwidgetModule } from 'ngx-zendesk-webwidget';
41
+
42
+ @NgModule({
43
+ declarations: [
44
+ AppComponent
45
+ ],
46
+ imports: [
47
+ BrowserModule,
48
+ NgxZendeskWebwidgetModule.forRoot()
49
+ ],
50
+ bootstrap: [AppComponent]
51
+ })
52
+ export class AppModule { }
53
+ ```
54
+
55
+ #### SharedModule
56
+
57
+ ```ts
58
+ @NgModule({
59
+ exports: [
60
+ CommonModule,
61
+ NgxZendeskWebwidgetModule
62
+ ]
63
+ })
64
+ export class SharedModule { }
65
+ ```
66
+
67
+ ##### Configuration
68
+
69
+ ```ts
70
+ import { NgModule } from '@angular/core';
71
+ import { BrowserModule } from '@angular/platform-browser';
72
+
73
+ import { NgxZendeskWebwidgetModule, NgxZendeskWebwidgetConfig } from 'ngx-zendesk-webwidget';
74
+
75
+ import { AppComponent } from './app';
76
+
77
+ export class ZendeskConfig extends NgxZendeskWebwidgetConfig {
78
+ accountUrl = 'yourdomain.zendesk.com';
79
+ callback(zE) {
80
+ // You can call every command you want in here
81
+ // zE('webWidget', 'hide');
82
+ // zE('webWidget', 'show');
83
+ }
84
+ }
85
+
86
+ @NgModule({
87
+ imports: [
88
+ BrowserModule,
89
+ HttpClientModule,
90
+ NgxZendeskWebwidgetModule.forRoot(ZendeskConfig)
91
+ ],
92
+ bootstrap: [AppComponent]
93
+ })
94
+ export class AppModule { }
95
+ ```
96
+
97
+ ##### Configuration with Lazyload
98
+
99
+ ```ts
100
+ import { NgModule } from '@angular/core';
101
+ import { BrowserModule } from '@angular/platform-browser';
102
+
103
+ import { NgxZendeskWebwidgetModule, NgxZendeskWebwidgetConfig } from 'ngx-zendesk-webwidget';
104
+
105
+ import { AppComponent } from './app';
106
+
107
+ export class ZendeskConfig extends NgxZendeskWebwidgetConfig {
108
+ override lazyLoad = true;
109
+ accountUrl = 'yourdomain.zendesk.com';
110
+ callback(zE) {
111
+ // You can call every command you want in here
112
+ // zE('webWidget', 'hide');
113
+ // zE('webWidget', 'show');
114
+ }
115
+ }
116
+
117
+ @NgModule({
118
+ imports: [
119
+ BrowserModule,
120
+ HttpClientModule,
121
+ NgxZendeskWebwidgetModule.forRoot(ZendeskConfig)
122
+ ],
123
+ bootstrap: [ AppComponent ]
124
+ })
125
+ export class AppModule { }
126
+ ```
127
+
128
+ #### 2. Init the `NgxZendeskWebwidgetService`
129
+
130
+ ##### For your application
131
+
132
+ ```ts
133
+ import { NgxZendeskWebwidgetService } from 'ngx-zendesk-webwidget';
134
+
135
+ @Component({
136
+ selector: 'app',
137
+ templateUrl: './app.html'
138
+ })
139
+ export class app {
140
+
141
+ constructor(private _NgxZendeskWebwidgetService: NgxZendeskWebwidgetService) { }
142
+
143
+ }
144
+ ```
145
+
146
+ ##### With Lazyload
147
+
148
+ ```ts
149
+ import { NgxZendeskWebwidgetService } from 'ngx-zendesk-webwidget';
150
+
151
+ @Component({
152
+ selector: 'app',
153
+ templateUrl: './app.html'
154
+ })
155
+ export class app {
156
+
157
+ constructor(private _NgxZendeskWebwidgetService: NgxZendeskWebwidgetService) {
158
+ this._NgxZendeskWebwidgetService_.initZendesk();
159
+ }
160
+
161
+ }
162
+ ```
163
+
164
+ #### 3. Example to usage
165
+
166
+ ```ts
167
+ constructor(private _NgxZendeskWebwidgetService: NgxZendeskWebwidgetService) {
168
+ this._NgxZendeskWebwidgetService.zE('webWidget', 'identify', {
169
+ name: 'Fulano de Tal',
170
+ email: 'your_user_email@email.com'
171
+ });
172
+
173
+ this._NgxZendeskWebwidgetService.zE('webWidget', 'prefill', {
174
+ name: {
175
+ value: 'Fulano de Tal',
176
+ readOnly: true
177
+ },
178
+ email: {
179
+ value: 'your_user_email@email.com',
180
+ readOnly: true
181
+ }
182
+ });
183
+
184
+ this._NgxZendeskWebwidgetService.zE('webWidget', 'show');
185
+ }
186
+
187
+ logout() {
188
+ this._NgxZendeskWebwidgetService.zE('webWidget', 'hide');
189
+ }
190
+ ```
191
+
192
+ ## API
193
+
194
+ ### NgxZendeskWebwidgetService
195
+
196
+ ### Web Widget (Messenger)
197
+
198
+ - The new web widget is not as supported as the classic one, you can check the documentation [here](https://developer.zendesk.com/documentation/zendesk-web-widget-sdks/sdks/web/sdk_api_reference/).
199
+
200
+ ### Web widget (Classic)
201
+
202
+ - `zE('webWidget:<action>', '<event|property>', <parameters>)`: All commands follow the same basic syntax. Please see [Zendesk Documentation](https://developer.zendesk.com/embeddables/docs/widget/introduction) for more information.
203
+
204
+ #### NgxZendeskWebwidgetConfig
205
+
206
+ - `lazyLoad`: Boolean for activate Lazyload initialization of Zendesk Web Widget
207
+ - `timeOut`: Timeout in milliseconds of the timer before opening the widget, zendesk unfortunately needs to load more files after the initial promise has been resolved, such as translation files. (default: 30 seconds)
208
+ - `injectionTag`: You can identify which tag will be used as a reference for widget injection('head', 'body', 'script'). (Default: 'head')
209
+ - `accountUrl`: Url of your domain (example.zendesk.com)
210
+ - `callback`: Callback, executed after Zendesk loaded
211
+
212
+ ## Issues
213
+
214
+ Please report bugs and issues [here](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues).
215
+
216
+ ## To do
217
+
218
+ - Tests with jest
219
+ - Error handler
220
+
221
+ ## License
222
+
223
+ MIT © [Alison Vilela](https://github.com/AlisonVilela)
224
+
225
+ ## Change log
226
+
227
+ ### v3.0.1
228
+
229
+ - Fix documentation
230
+
231
+ ### v3.0.0
232
+
233
+ - Support Angular 13
234
+ - Changed the library core
235
+ - Fix initZendesk parameters based on [issue 47](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues/47) and [issue 43](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues/43)
236
+
237
+ ### v2.1.1
238
+
239
+ - Fix injectionTag in NgxZendeskWebwidgetConfig based on [issue 30](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues/30) by [mps2209](https://github.com/mps2209)
240
+
241
+ ### v2.1.0
242
+
243
+ - Include injectionTag in NgxZendeskWebwidgetConfig based on [issue 30](https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues/30)
244
+
245
+ ### V2.0.0
246
+
247
+ - API services that used legacy zE methods (setLocale, identify, hide, show, activate, setHelpCenterSuggestions, setSettings) have been removed, you now need to use the new command syntax for greater flexibility (breaking changes)
248
+ - beforePageLoad(zE) changed to callback(zE) (breaking changes)
249
+
250
+ ### V1.0.1
251
+
252
+ - Fix bugs
253
+
254
+ ### v1.0.0
255
+
256
+ - Update Packages
257
+ - Change Class name to pascal case (breaking changes)
258
+ - Lazyload Implemented, based on [Pull 23](https://github.com/AlisonVilela/ngx-zendesk-webwidget/pull/23)
259
+ - Configure Timeout on Webwidget initialization
260
+
261
+ ### v0.1.5
262
+
263
+ - Support Angular 8
264
+
265
+ ### v0.1.4
266
+
267
+ - Support Angular 6
268
+
269
+ ### v0.1.3
270
+
271
+ - Support Angular 5
272
+
273
+ ### v0.1.2
274
+
275
+ - Added custom settings
276
+
277
+ ### v0.1.1
278
+
279
+ - Change documentation
280
+
281
+ ### v0.1.0
282
+
283
+ - Added documentation
284
+ - Initial version
@@ -0,0 +1,6 @@
1
+ export class NgxZendeskWebwidgetConfig {
2
+ lazyLoad;
3
+ timeOut;
4
+ injectionTag;
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9uZ3gtemVuZGVzay13ZWJ3aWRnZXQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQix5QkFBeUI7SUFDN0MsUUFBUSxDQUFVO0lBQ2xCLE9BQU8sQ0FBUztJQUNoQixZQUFZLENBQXNDO0NBR25EIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcge1xuICBsYXp5TG9hZDogYm9vbGVhbjtcbiAgdGltZU91dDogbnVtYmVyO1xuICBpbmplY3Rpb25UYWc6ICdoZWFkJyB8ICdib2R5JyB8ICdzY3JpcHQnIHwgc3RyaW5nO1xuICBhYnN0cmFjdCBhY2NvdW50VXJsOiBzdHJpbmc7XG4gIGFic3RyYWN0IGNhbGxiYWNrKHpFOiBhbnkpOiBhbnk7XG59XG4iXX0=
@@ -12,12 +12,12 @@ export class NgxZendeskWebwidgetModule {
12
12
  ]
13
13
  };
14
14
  }
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule });
17
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule });
15
18
  }
16
- NgxZendeskWebwidgetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- NgxZendeskWebwidgetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
18
- NgxZendeskWebwidgetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule, decorators: [{
20
20
  type: NgModule,
21
21
  args: [{}]
22
22
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUE2QixNQUFNLGVBQWUsQ0FBQTtBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFHNUUsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQThDO1FBQzNELE9BQU87WUFDTCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLFNBQVMsRUFBRTtnQkFDVCxFQUFDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO2dCQUM5RCxFQUFDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsSUFBSSxFQUFFLENBQUMseUJBQXlCLENBQUMsRUFBRTthQUNoSDtTQUNGLENBQUE7SUFDSCxDQUFDOzt1SEFUVSx5QkFBeUI7d0hBQXpCLHlCQUF5Qjt3SEFBekIseUJBQXlCOzRGQUF6Qix5QkFBeUI7a0JBRHJDLFFBQVE7bUJBQUMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcgfSBmcm9tICcuL25neC16ZW5kZXNrLXdlYndpZGdldC5tb2RlbCdcbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRTZXJ2aWNlIH0gZnJvbSAnLi9uZ3gtemVuZGVzay13ZWJ3aWRnZXQuc2VydmljZSdcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIE5neFplbmRlc2tXZWJ3aWRnZXRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCh6ZW5kZXNrQ29uZmlnOiBUeXBlPE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWc+KTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3haZW5kZXNrV2Vid2lkZ2V0TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ3haZW5kZXNrV2Vid2lkZ2V0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiBOZ3haZW5kZXNrV2Vid2lkZ2V0Q29uZmlnLCB1c2VDbGFzczogemVuZGVza0NvbmZpZyB9LFxuICAgICAgICB7cHJvdmlkZTogTmd4WmVuZGVza1dlYndpZGdldFNlcnZpY2UsIHVzZUNsYXNzOiBOZ3haZW5kZXNrV2Vid2lkZ2V0U2VydmljZSwgZGVwczogW05neFplbmRlc2tXZWJ3aWRnZXRDb25maWddIH1cbiAgICAgIF1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUE2QixNQUFNLGVBQWUsQ0FBQTtBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFHNUUsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQThDO1FBQzNELE9BQU87WUFDTCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLFNBQVMsRUFBRTtnQkFDVCxFQUFDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO2dCQUM5RCxFQUFDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsSUFBSSxFQUFFLENBQUMseUJBQXlCLENBQUMsRUFBRTthQUNoSDtTQUNGLENBQUE7SUFDSCxDQUFDO3VHQVRVLHlCQUF5Qjt3R0FBekIseUJBQXlCO3dHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFFBQVE7bUJBQUMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcgfSBmcm9tICcuL25neC16ZW5kZXNrLXdlYndpZGdldC5tb2RlbCdcbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRTZXJ2aWNlIH0gZnJvbSAnLi9uZ3gtemVuZGVzay13ZWJ3aWRnZXQuc2VydmljZSdcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIE5neFplbmRlc2tXZWJ3aWRnZXRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCh6ZW5kZXNrQ29uZmlnOiBUeXBlPE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWc+KTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3haZW5kZXNrV2Vid2lkZ2V0TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ3haZW5kZXNrV2Vid2lkZ2V0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiBOZ3haZW5kZXNrV2Vid2lkZ2V0Q29uZmlnLCB1c2VDbGFzczogemVuZGVza0NvbmZpZyB9LFxuICAgICAgICB7cHJvdmlkZTogTmd4WmVuZGVza1dlYndpZGdldFNlcnZpY2UsIHVzZUNsYXNzOiBOZ3haZW5kZXNrV2Vid2lkZ2V0U2VydmljZSwgZGVwczogW05neFplbmRlc2tXZWJ3aWRnZXRDb25maWddIH1cbiAgICAgIF1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,96 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./ngx-zendesk-webwidget.model";
5
+ function getWindow() {
6
+ return window;
7
+ }
8
+ export class NgxZendeskWebwidgetService {
9
+ ngxZendeskWebwidgetConfig;
10
+ window;
11
+ initialized = false;
12
+ _zE;
13
+ constructor(ngxZendeskWebwidgetConfig) {
14
+ this.ngxZendeskWebwidgetConfig = ngxZendeskWebwidgetConfig;
15
+ if (!this.ngxZendeskWebwidgetConfig.accountUrl) {
16
+ throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');
17
+ }
18
+ this.window = getWindow();
19
+ if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {
20
+ this.initZendesk();
21
+ }
22
+ }
23
+ initZendesk() {
24
+ const window = this.window;
25
+ const config = this.ngxZendeskWebwidgetConfig;
26
+ // tslint:disable
27
+ window.zEmbed || function (e, t) {
28
+ let n, o, d, i, s, a = [];
29
+ let r = document.createElement("iframe");
30
+ window.zEmbed = function () {
31
+ a.push(arguments);
32
+ };
33
+ window.zE = window.zE || window.zEmbed;
34
+ r.src = "javascript:false";
35
+ r.title = "";
36
+ r.style.cssText = "display: none";
37
+ d = document.getElementsByTagName(config.injectionTag || "head");
38
+ d = d[d.length - 1];
39
+ d.parentNode.insertBefore(r, d);
40
+ i = r.contentWindow;
41
+ s = i.document;
42
+ try {
43
+ o = s;
44
+ }
45
+ catch (e) {
46
+ n = document.domain;
47
+ r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);';
48
+ o = s;
49
+ }
50
+ o.open()._l = function () {
51
+ let e = this.createElement("script");
52
+ n && (this.domain = n);
53
+ e.id = "js-iframe-async";
54
+ e.src = "https://static.zdassets.com/ekr/snippet.js";
55
+ this.t += new Date;
56
+ this.zendeskHost = config.accountUrl;
57
+ this.zEQueue = a;
58
+ this.body.appendChild(e);
59
+ };
60
+ o.write('<body onload="document._l();">');
61
+ o.close();
62
+ }();
63
+ // tslint:enable
64
+ return this.finishLoading();
65
+ }
66
+ finishLoading() {
67
+ return new Promise((resolve, reject) => {
68
+ const timeout = setTimeout(() => {
69
+ this.initialized = false;
70
+ reject(Error('timeout'));
71
+ }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds
72
+ this.window.zE(() => {
73
+ this.ngxZendeskWebwidgetConfig.callback(this.window.zE);
74
+ this.initialized = true;
75
+ this._zE = this.window.zE;
76
+ clearTimeout(timeout);
77
+ resolve(true);
78
+ });
79
+ });
80
+ }
81
+ get isInitialized() {
82
+ return this.initialized;
83
+ }
84
+ get zE() {
85
+ return this._zE;
86
+ }
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, deps: [{ token: i1.NgxZendeskWebwidgetConfig }], target: i0.ɵɵFactoryTarget.Injectable });
88
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, providedIn: 'root' });
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, decorators: [{
91
+ type: Injectable,
92
+ args: [{
93
+ providedIn: 'root'
94
+ }]
95
+ }], ctorParameters: function () { return [{ type: i1.NgxZendeskWebwidgetConfig }]; } });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL25neC16ZW5kZXNrLXdlYndpZGdldC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0JBQStCLENBQUM7OztBQUUxRSxTQUFTLFNBQVM7SUFDaEIsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUtELE1BQU0sT0FBTywwQkFBMEI7SUFNakI7SUFKSCxNQUFNLENBQU07SUFDckIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixHQUFHLENBQU07SUFFakIsWUFBb0IseUJBQW9EO1FBQXBELDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFDdEUsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLEVBQUU7WUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO1NBQzNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLEVBQUUsQ0FBQztRQUUxQixJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRTtZQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztRQUU5QyxpQkFBaUI7UUFDakIsTUFBTSxDQUFDLE1BQU0sSUFBSSxVQUFTLENBQUMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFBO1lB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LElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUMxQixZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFBO0lBQ2pCLENBQUM7dUdBdkZVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLGNBRnpCLE1BQU07OzJGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcgfSBmcm9tICcuL25neC16ZW5kZXNrLXdlYndpZGdldC5tb2RlbCc7XG5cbmZ1bmN0aW9uIGdldFdpbmRvdygpOiBhbnkge1xuICByZXR1cm4gd2luZG93O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3haZW5kZXNrV2Vid2lkZ2V0U2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IGFueTtcbiAgcHJpdmF0ZSBpbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF96RTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmd4WmVuZGVza1dlYndpZGdldENvbmZpZzogTmd4WmVuZGVza1dlYndpZGdldENvbmZpZykge1xuICAgIGlmICghdGhpcy5uZ3haZW5kZXNrV2Vid2lkZ2V0Q29uZmlnLmFjY291bnRVcmwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyBhY2NvdW50VXJsLiBQbGVhc2Ugc2V0IGluIGFwcCBjb25maWcgdmlhIFplbmRlc2tXaWRnZXRQcm92aWRlcicpO1xuICAgIH1cblxuICAgIHRoaXMud2luZG93ID0gZ2V0V2luZG93KCk7XG5cbiAgICBpZiAoIXRoaXMubmd4WmVuZGVza1dlYndpZGdldENvbmZpZy5sYXp5TG9hZCkge1xuICAgICAgdGhpcy5pbml0WmVuZGVzaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpbml0WmVuZGVzaygpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCB3aW5kb3cgPSB0aGlzLndpbmRvdztcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWc7XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZVxuICAgIHdpbmRvdy56RW1iZWQgfHwgZnVuY3Rpb24oZSwgdCkge1xuICAgICAgbGV0IG4sIG8sIGQsIGksIHMsIGEgPSBbXVxuICAgICAgbGV0IHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaWZyYW1lXCIpXG4gICAgICB3aW5kb3cuekVtYmVkID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIGEucHVzaChhcmd1bWVudHMpXG4gICAgICB9XG4gICAgICB3aW5kb3cuekUgPSB3aW5kb3cuekUgfHwgd2luZG93LnpFbWJlZFxuICAgICAgci5zcmMgPSBcImphdmFzY3JpcHQ6ZmFsc2VcIlxuICAgICAgci50aXRsZSA9IFwiXCJcbiAgICAgIHIuc3R5bGUuY3NzVGV4dCA9IFwiZGlzcGxheTogbm9uZVwiXG4gICAgICBkID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoY29uZmlnLmluamVjdGlvblRhZyB8fCBcImhlYWRcIilcbiAgICAgIGQgPSBkW2QubGVuZ3RoIC0gMV1cbiAgICAgIGQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUociwgZClcbiAgICAgIGkgPSByLmNvbnRlbnRXaW5kb3dcbiAgICAgIHMgPSBpLmRvY3VtZW50XG4gICAgICB0cnkge1xuICAgICAgICBvID0gc1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBuID0gZG9jdW1lbnQuZG9tYWluXG4gICAgICAgIHIuc3JjID0gJ2phdmFzY3JpcHQ6dmFyIGQ9ZG9jdW1lbnQub3BlbigpO2QuZG9tYWluPVwiJyArIG4gKyAnXCI7dm9pZCgwKTsnXG4gICAgICAgIG8gPSBzXG4gICAgICB9XG4gICAgICBvLm9wZW4oKS5fbCA9IGZ1bmN0aW9uKCkge1xuICAgICAgICBsZXQgZSA9IHRoaXMuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKVxuICAgICAgICBuICYmICh0aGlzLmRvbWFpbiA9IG4pXG4gICAgICAgIGUuaWQgPSBcImpzLWlmcmFtZS1hc3luY1wiXG4gICAgICAgIGUuc3JjID0gXCJodHRwczovL3N0YXRpYy56ZGFzc2V0cy5jb20vZWtyL3NuaXBwZXQuanNcIlxuICAgICAgICB0aGlzLnQgKz0gbmV3IERhdGVcbiAgICAgICAgdGhpcy56ZW5kZXNrSG9zdCA9IGNvbmZpZy5hY2NvdW50VXJsXG4gICAgICAgIHRoaXMuekVRdWV1ZSA9IGFcbiAgICAgICAgdGhpcy5ib2R5LmFwcGVuZENoaWxkKGUpXG4gICAgICB9XG4gICAgICBvLndyaXRlKCc8Ym9keSBvbmxvYWQ9XCJkb2N1bWVudC5fbCgpO1wiPicpXG4gICAgICBvLmNsb3NlKClcbiAgICB9KCk7XG4gICAgLy8gdHNsaW50OmVuYWJsZVxuXG4gICAgcmV0dXJuIHRoaXMuZmluaXNoTG9hZGluZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5pc2hMb2FkaW5nKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cbiAgICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgICAgICByZWplY3QoRXJyb3IoJ3RpbWVvdXQnKSk7XG4gICAgICB9LCB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcudGltZU91dCB8fCAzMDAwMCk7IC8vIDMwIHNlY29uZHNcblxuICAgICAgdGhpcy53aW5kb3cuekUoKCkgPT4ge1xuICAgICAgICB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcuY2FsbGJhY2sodGhpcy53aW5kb3cuekUpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fekUgPSB0aGlzLndpbmRvdy56RTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgaXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplZDtcbiAgfVxuXG4gIGdldCB6RSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl96RVxuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibml0c2Fuem8tbmd4LXplbmRlc2std2Vid2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL25pdHNhbnpvLW5neC16ZW5kZXNrLXdlYndpZGdldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -2,15 +2,21 @@ import * as i0 from '@angular/core';
2
2
  import { Injectable, NgModule } from '@angular/core';
3
3
 
4
4
  class NgxZendeskWebwidgetConfig {
5
+ lazyLoad;
6
+ timeOut;
7
+ injectionTag;
5
8
  }
6
9
 
7
10
  function getWindow() {
8
11
  return window;
9
12
  }
10
13
  class NgxZendeskWebwidgetService {
14
+ ngxZendeskWebwidgetConfig;
15
+ window;
16
+ initialized = false;
17
+ _zE;
11
18
  constructor(ngxZendeskWebwidgetConfig) {
12
19
  this.ngxZendeskWebwidgetConfig = ngxZendeskWebwidgetConfig;
13
- this.initialized = false;
14
20
  if (!this.ngxZendeskWebwidgetConfig.accountUrl) {
15
21
  throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');
16
22
  }
@@ -83,10 +89,10 @@ class NgxZendeskWebwidgetService {
83
89
  get zE() {
84
90
  return this._zE;
85
91
  }
92
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, deps: [{ token: NgxZendeskWebwidgetConfig }], target: i0.ɵɵFactoryTarget.Injectable });
93
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, providedIn: 'root' });
86
94
  }
87
- NgxZendeskWebwidgetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, deps: [{ token: NgxZendeskWebwidgetConfig }], target: i0.ɵɵFactoryTarget.Injectable });
88
- NgxZendeskWebwidgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, providedIn: 'root' });
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetService, decorators: [{
90
96
  type: Injectable,
91
97
  args: [{
92
98
  providedIn: 'root'
@@ -103,11 +109,11 @@ class NgxZendeskWebwidgetModule {
103
109
  ]
104
110
  };
105
111
  }
112
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
113
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule });
114
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule });
106
115
  }
107
- NgxZendeskWebwidgetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
108
- NgxZendeskWebwidgetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
109
- NgxZendeskWebwidgetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NgxZendeskWebwidgetModule, decorators: [{
111
117
  type: NgModule,
112
118
  args: [{}]
113
119
  }] });
@@ -117,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
117
123
  */
118
124
 
119
125
  export { NgxZendeskWebwidgetConfig, NgxZendeskWebwidgetModule, NgxZendeskWebwidgetService };
120
- //# sourceMappingURL=ngx-zendesk-webwidget.mjs.map
126
+ //# sourceMappingURL=nitsanzo-ngx-zendesk-webwidget.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nitsanzo-ngx-zendesk-webwidget.mjs","sources":["../../../src/lib/ngx-zendesk-webwidget.model.ts","../../../src/lib/ngx-zendesk-webwidget.service.ts","../../../src/lib/ngx-zendesk-webwidget.module.ts","../../../src/nitsanzo-ngx-zendesk-webwidget.ts"],"sourcesContent":["export abstract class NgxZendeskWebwidgetConfig {\n lazyLoad: boolean;\n timeOut: number;\n injectionTag: 'head' | 'body' | 'script' | string;\n abstract accountUrl: string;\n abstract callback(zE: any): any;\n}\n","import { Injectable } from '@angular/core';\n\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model';\n\nfunction getWindow(): any {\n return window;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxZendeskWebwidgetService {\n\n private readonly window: any;\n private initialized = false;\n private _zE: any;\n\n constructor(private ngxZendeskWebwidgetConfig: NgxZendeskWebwidgetConfig) {\n if (!this.ngxZendeskWebwidgetConfig.accountUrl) {\n throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');\n }\n\n this.window = getWindow();\n\n if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {\n this.initZendesk();\n }\n }\n\n public initZendesk(): Promise<boolean> {\n const window = this.window;\n const config = this.ngxZendeskWebwidgetConfig;\n\n // tslint:disable\n window.zEmbed || function(e, t) {\n let n, o, d, i, s, a = []\n let r = document.createElement(\"iframe\")\n window.zEmbed = function() {\n a.push(arguments)\n }\n window.zE = window.zE || window.zEmbed\n r.src = \"javascript:false\"\n r.title = \"\"\n r.style.cssText = \"display: none\"\n d = document.getElementsByTagName(config.injectionTag || \"head\")\n d = d[d.length - 1]\n d.parentNode.insertBefore(r, d)\n i = r.contentWindow\n s = i.document\n try {\n o = s\n } catch (e) {\n n = document.domain\n r.src = 'javascript:var d=document.open();d.domain=\"' + n + '\";void(0);'\n o = s\n }\n o.open()._l = function() {\n let e = this.createElement(\"script\")\n n && (this.domain = n)\n e.id = \"js-iframe-async\"\n e.src = \"https://static.zdassets.com/ekr/snippet.js\"\n this.t += new Date\n this.zendeskHost = config.accountUrl\n this.zEQueue = a\n this.body.appendChild(e)\n }\n o.write('<body onload=\"document._l();\">')\n o.close()\n }();\n // tslint:enable\n\n return this.finishLoading();\n }\n\n private finishLoading(): Promise<boolean> {\n return new Promise<boolean>((resolve, reject) => {\n\n const timeout = setTimeout(() => {\n this.initialized = false;\n reject(Error('timeout'));\n }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds\n\n this.window.zE(() => {\n this.ngxZendeskWebwidgetConfig.callback(this.window.zE);\n this.initialized = true;\n this._zE = this.window.zE;\n clearTimeout(timeout);\n resolve(true);\n });\n });\n }\n\n get isInitialized(): boolean {\n return this.initialized;\n }\n\n get zE(): any {\n return this._zE\n }\n}\n","import { NgModule, ModuleWithProviders, Type } from '@angular/core'\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model'\nimport { NgxZendeskWebwidgetService } from './ngx-zendesk-webwidget.service'\n\n@NgModule({})\nexport class NgxZendeskWebwidgetModule {\n static forRoot(zendeskConfig: Type<NgxZendeskWebwidgetConfig>): ModuleWithProviders<NgxZendeskWebwidgetModule> {\n return {\n ngModule: NgxZendeskWebwidgetModule,\n providers: [\n {provide: NgxZendeskWebwidgetConfig, useClass: zendeskConfig },\n {provide: NgxZendeskWebwidgetService, useClass: NgxZendeskWebwidgetService, deps: [NgxZendeskWebwidgetConfig] }\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NgxZendeskWebwidgetConfig"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- /// <amd-module name="ngx-zendesk-webwidget" />
4
+ /// <amd-module name="@nitsanzo/ngx-zendesk-webwidget" />
5
5
  export * from './public-api';
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@nitsanzo/ngx-zendesk-webwidget",
3
- "version": "4.0.0",
3
+ "version": "16.0.0",
4
4
  "repository": {
5
5
  "type": "git",
6
- "url": "https://github.com/nitsan/ngx-zendesk-webwidget.git"
6
+ "url": "https://github.com/AlisonVilela/ngx-zendesk-webwidget.git"
7
7
  },
8
8
  "author": {
9
- "name": "Nitsan Zohar",
10
- "email": "nitsanzo@gmail.com"
9
+ "name": "Alison Vilela",
10
+ "email": "alison.vilela@live.nl"
11
11
  },
12
12
  "keywords": [
13
13
  "angular"
@@ -17,16 +17,12 @@
17
17
  "url": "https://github.com/AlisonVilela/ngx-zendesk-webwidget/issues"
18
18
  },
19
19
  "peerDependencies": {
20
- "@angular/core": "^14.0.0"
20
+ "@angular/core": "^16.0.0"
21
21
  },
22
22
  "dependencies": {
23
23
  "tslib": "^2.3.0"
24
24
  },
25
- "module": "fesm2015/ngx-zendesk-webwidget.mjs",
26
- "es2020": "fesm2020/ngx-zendesk-webwidget.mjs",
27
- "esm2020": "esm2020/ngx-zendesk-webwidget.mjs",
28
- "fesm2020": "fesm2020/ngx-zendesk-webwidget.mjs",
29
- "fesm2015": "fesm2015/ngx-zendesk-webwidget.mjs",
25
+ "module": "fesm2022/nitsanzo-ngx-zendesk-webwidget.mjs",
30
26
  "typings": "index.d.ts",
31
27
  "exports": {
32
28
  "./package.json": {
@@ -34,12 +30,10 @@
34
30
  },
35
31
  ".": {
36
32
  "types": "./index.d.ts",
37
- "esm2020": "./esm2020/ngx-zendesk-webwidget.mjs",
38
- "es2020": "./fesm2020/ngx-zendesk-webwidget.mjs",
39
- "es2015": "./fesm2015/ngx-zendesk-webwidget.mjs",
40
- "node": "./fesm2015/ngx-zendesk-webwidget.mjs",
41
- "default": "./fesm2020/ngx-zendesk-webwidget.mjs"
33
+ "esm2022": "./esm2022/nitsanzo-ngx-zendesk-webwidget.mjs",
34
+ "esm": "./esm2022/nitsanzo-ngx-zendesk-webwidget.mjs",
35
+ "default": "./fesm2022/nitsanzo-ngx-zendesk-webwidget.mjs"
42
36
  }
43
37
  },
44
38
  "sideEffects": false
45
- }
39
+ }
@@ -1,3 +0,0 @@
1
- export class NgxZendeskWebwidgetConfig {
2
- }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9uZ3gtemVuZGVzay13ZWJ3aWRnZXQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQix5QkFBeUI7Q0FNOUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgTmd4WmVuZGVza1dlYndpZGdldENvbmZpZyB7XG4gIGxhenlMb2FkOiBib29sZWFuO1xuICB0aW1lT3V0OiBudW1iZXI7XG4gIGluamVjdGlvblRhZzogJ2hlYWQnIHwgJ2JvZHknIHwgJ3NjcmlwdCcgfCBzdHJpbmc7XG4gIGFic3RyYWN0IGFjY291bnRVcmw6IHN0cmluZztcbiAgYWJzdHJhY3QgY2FsbGJhY2soekU6IGFueSk6IGFueTtcbn1cbiJdfQ==
@@ -1,92 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "./ngx-zendesk-webwidget.model";
4
- function getWindow() {
5
- return window;
6
- }
7
- export class NgxZendeskWebwidgetService {
8
- constructor(ngxZendeskWebwidgetConfig) {
9
- this.ngxZendeskWebwidgetConfig = ngxZendeskWebwidgetConfig;
10
- this.initialized = false;
11
- if (!this.ngxZendeskWebwidgetConfig.accountUrl) {
12
- throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');
13
- }
14
- this.window = getWindow();
15
- if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {
16
- this.initZendesk();
17
- }
18
- }
19
- initZendesk() {
20
- const window = this.window;
21
- const config = this.ngxZendeskWebwidgetConfig;
22
- // tslint:disable
23
- window.zEmbed || function (e, t) {
24
- let n, o, d, i, s, a = [];
25
- let r = document.createElement("iframe");
26
- window.zEmbed = function () {
27
- a.push(arguments);
28
- };
29
- window.zE = window.zE || window.zEmbed;
30
- r.src = "javascript:false";
31
- r.title = "";
32
- r.style.cssText = "display: none";
33
- d = document.getElementsByTagName(config.injectionTag || "head");
34
- d = d[d.length - 1];
35
- d.parentNode.insertBefore(r, d);
36
- i = r.contentWindow;
37
- s = i.document;
38
- try {
39
- o = s;
40
- }
41
- catch (e) {
42
- n = document.domain;
43
- r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);';
44
- o = s;
45
- }
46
- o.open()._l = function () {
47
- let e = this.createElement("script");
48
- n && (this.domain = n);
49
- e.id = "js-iframe-async";
50
- e.src = "https://static.zdassets.com/ekr/snippet.js";
51
- this.t += new Date;
52
- this.zendeskHost = config.accountUrl;
53
- this.zEQueue = a;
54
- this.body.appendChild(e);
55
- };
56
- o.write('<body onload="document._l();">');
57
- o.close();
58
- }();
59
- // tslint:enable
60
- return this.finishLoading();
61
- }
62
- finishLoading() {
63
- return new Promise((resolve, reject) => {
64
- const timeout = setTimeout(() => {
65
- this.initialized = false;
66
- reject(Error('timeout'));
67
- }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds
68
- this.window.zE(() => {
69
- this.ngxZendeskWebwidgetConfig.callback(this.window.zE);
70
- this.initialized = true;
71
- this._zE = this.window.zE;
72
- clearTimeout(timeout);
73
- resolve(true);
74
- });
75
- });
76
- }
77
- get isInitialized() {
78
- return this.initialized;
79
- }
80
- get zE() {
81
- return this._zE;
82
- }
83
- }
84
- NgxZendeskWebwidgetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, deps: [{ token: i1.NgxZendeskWebwidgetConfig }], target: i0.ɵɵFactoryTarget.Injectable });
85
- NgxZendeskWebwidgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, providedIn: 'root' });
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, decorators: [{
87
- type: Injectable,
88
- args: [{
89
- providedIn: 'root'
90
- }]
91
- }], ctorParameters: function () { return [{ type: i1.NgxZendeskWebwidgetConfig }]; } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL25neC16ZW5kZXNrLXdlYndpZGdldC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUkzQyxTQUFTLFNBQVM7SUFDaEIsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUtELE1BQU0sT0FBTywwQkFBMEI7SUFNckMsWUFBb0IseUJBQW9EO1FBQXBELDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFIaEUsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFJMUIsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLEVBQUU7WUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO1NBQzNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLEVBQUUsQ0FBQztRQUUxQixJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRTtZQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztRQUU5QyxpQkFBaUI7UUFDakIsTUFBTSxDQUFDLE1BQU0sSUFBSSxVQUFTLENBQUMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFBO1lBQ3pCLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDeEMsTUFBTSxDQUFDLE1BQU0sR0FBRztn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QUFJLENBQUMsQ0FBQztZQUNoQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFBO0lBQ2pCLENBQUM7O3dIQXZGVSwwQkFBMEI7NEhBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzRGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcgfSBmcm9tICcuL25neC16ZW5kZXNrLXdlYndpZGdldC5tb2RlbCc7XG5cbmZ1bmN0aW9uIGdldFdpbmRvdygpOiBhbnkge1xuICByZXR1cm4gd2luZG93O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3haZW5kZXNrV2Vid2lkZ2V0U2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IGFueTtcbiAgcHJpdmF0ZSBpbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF96RTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmd4WmVuZGVza1dlYndpZGdldENvbmZpZzogTmd4WmVuZGVza1dlYndpZGdldENvbmZpZykge1xuICAgIGlmICghdGhpcy5uZ3haZW5kZXNrV2Vid2lkZ2V0Q29uZmlnLmFjY291bnRVcmwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyBhY2NvdW50VXJsLiBQbGVhc2Ugc2V0IGluIGFwcCBjb25maWcgdmlhIFplbmRlc2tXaWRnZXRQcm92aWRlcicpO1xuICAgIH1cblxuICAgIHRoaXMud2luZG93ID0gZ2V0V2luZG93KCk7XG5cbiAgICBpZiAoIXRoaXMubmd4WmVuZGVza1dlYndpZGdldENvbmZpZy5sYXp5TG9hZCkge1xuICAgICAgdGhpcy5pbml0WmVuZGVzaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpbml0WmVuZGVzaygpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCB3aW5kb3cgPSB0aGlzLndpbmRvdztcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWc7XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZVxuICAgIHdpbmRvdy56RW1iZWQgfHwgZnVuY3Rpb24oZSwgdCkge1xuICAgICAgbGV0IG4sIG8sIGQsIGksIHMsIGEgPSBbXVxuICAgICAgbGV0IHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaWZyYW1lXCIpXG4gICAgICB3aW5kb3cuekVtYmVkID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIGEucHVzaChhcmd1bWVudHMpXG4gICAgICB9XG4gICAgICB3aW5kb3cuekUgPSB3aW5kb3cuekUgfHwgd2luZG93LnpFbWJlZFxuICAgICAgci5zcmMgPSBcImphdmFzY3JpcHQ6ZmFsc2VcIlxuICAgICAgci50aXRsZSA9IFwiXCJcbiAgICAgIHIuc3R5bGUuY3NzVGV4dCA9IFwiZGlzcGxheTogbm9uZVwiXG4gICAgICBkID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoY29uZmlnLmluamVjdGlvblRhZyB8fCBcImhlYWRcIilcbiAgICAgIGQgPSBkW2QubGVuZ3RoIC0gMV1cbiAgICAgIGQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUociwgZClcbiAgICAgIGkgPSByLmNvbnRlbnRXaW5kb3dcbiAgICAgIHMgPSBpLmRvY3VtZW50XG4gICAgICB0cnkge1xuICAgICAgICBvID0gc1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBuID0gZG9jdW1lbnQuZG9tYWluXG4gICAgICAgIHIuc3JjID0gJ2phdmFzY3JpcHQ6dmFyIGQ9ZG9jdW1lbnQub3BlbigpO2QuZG9tYWluPVwiJyArIG4gKyAnXCI7dm9pZCgwKTsnXG4gICAgICAgIG8gPSBzXG4gICAgICB9XG4gICAgICBvLm9wZW4oKS5fbCA9IGZ1bmN0aW9uKCkge1xuICAgICAgICBsZXQgZSA9IHRoaXMuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKVxuICAgICAgICBuICYmICh0aGlzLmRvbWFpbiA9IG4pXG4gICAgICAgIGUuaWQgPSBcImpzLWlmcmFtZS1hc3luY1wiXG4gICAgICAgIGUuc3JjID0gXCJodHRwczovL3N0YXRpYy56ZGFzc2V0cy5jb20vZWtyL3NuaXBwZXQuanNcIlxuICAgICAgICB0aGlzLnQgKz0gbmV3IERhdGVcbiAgICAgICAgdGhpcy56ZW5kZXNrSG9zdCA9IGNvbmZpZy5hY2NvdW50VXJsXG4gICAgICAgIHRoaXMuekVRdWV1ZSA9IGFcbiAgICAgICAgdGhpcy5ib2R5LmFwcGVuZENoaWxkKGUpXG4gICAgICB9XG4gICAgICBvLndyaXRlKCc8Ym9keSBvbmxvYWQ9XCJkb2N1bWVudC5fbCgpO1wiPicpXG4gICAgICBvLmNsb3NlKClcbiAgICB9KCk7XG4gICAgLy8gdHNsaW50OmVuYWJsZVxuXG4gICAgcmV0dXJuIHRoaXMuZmluaXNoTG9hZGluZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5pc2hMb2FkaW5nKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cbiAgICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgICAgICByZWplY3QoRXJyb3IoJ3RpbWVvdXQnKSk7XG4gICAgICB9LCB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcudGltZU91dCB8fCAzMDAwMCk7IC8vIDMwIHNlY29uZHNcblxuICAgICAgdGhpcy53aW5kb3cuekUoKCkgPT4ge1xuICAgICAgICB0aGlzLm5neFplbmRlc2tXZWJ3aWRnZXRDb25maWcuY2FsbGJhY2sodGhpcy53aW5kb3cuekUpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fekUgPSB0aGlzLndpbmRvdy56RTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgaXNJbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplZDtcbiAgfVxuXG4gIGdldCB6RSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl96RVxuICB9XG59XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXplbmRlc2std2Vid2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL25neC16ZW5kZXNrLXdlYndpZGdldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"ngx-zendesk-webwidget.mjs","sources":["../../../src/lib/ngx-zendesk-webwidget.model.ts","../../../src/lib/ngx-zendesk-webwidget.service.ts","../../../src/lib/ngx-zendesk-webwidget.module.ts","../../../src/ngx-zendesk-webwidget.ts"],"sourcesContent":["export abstract class NgxZendeskWebwidgetConfig {\n lazyLoad: boolean;\n timeOut: number;\n injectionTag: 'head' | 'body' | 'script' | string;\n abstract accountUrl: string;\n abstract callback(zE: any): any;\n}\n","import { Injectable } from '@angular/core';\n\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model';\n\nfunction getWindow(): any {\n return window;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxZendeskWebwidgetService {\n\n private readonly window: any;\n private initialized = false;\n private _zE: any;\n\n constructor(private ngxZendeskWebwidgetConfig: NgxZendeskWebwidgetConfig) {\n if (!this.ngxZendeskWebwidgetConfig.accountUrl) {\n throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');\n }\n\n this.window = getWindow();\n\n if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {\n this.initZendesk();\n }\n }\n\n public initZendesk(): Promise<boolean> {\n const window = this.window;\n const config = this.ngxZendeskWebwidgetConfig;\n\n // tslint:disable\n window.zEmbed || function(e, t) {\n let n, o, d, i, s, a = []\n let r = document.createElement(\"iframe\")\n window.zEmbed = function() {\n a.push(arguments)\n }\n window.zE = window.zE || window.zEmbed\n r.src = \"javascript:false\"\n r.title = \"\"\n r.style.cssText = \"display: none\"\n d = document.getElementsByTagName(config.injectionTag || \"head\")\n d = d[d.length - 1]\n d.parentNode.insertBefore(r, d)\n i = r.contentWindow\n s = i.document\n try {\n o = s\n } catch (e) {\n n = document.domain\n r.src = 'javascript:var d=document.open();d.domain=\"' + n + '\";void(0);'\n o = s\n }\n o.open()._l = function() {\n let e = this.createElement(\"script\")\n n && (this.domain = n)\n e.id = \"js-iframe-async\"\n e.src = \"https://static.zdassets.com/ekr/snippet.js\"\n this.t += new Date\n this.zendeskHost = config.accountUrl\n this.zEQueue = a\n this.body.appendChild(e)\n }\n o.write('<body onload=\"document._l();\">')\n o.close()\n }();\n // tslint:enable\n\n return this.finishLoading();\n }\n\n private finishLoading(): Promise<boolean> {\n return new Promise<boolean>((resolve, reject) => {\n\n const timeout = setTimeout(() => {\n this.initialized = false;\n reject(Error('timeout'));\n }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds\n\n this.window.zE(() => {\n this.ngxZendeskWebwidgetConfig.callback(this.window.zE);\n this.initialized = true;\n this._zE = this.window.zE;\n clearTimeout(timeout);\n resolve(true);\n });\n });\n }\n\n get isInitialized(): boolean {\n return this.initialized;\n }\n\n get zE(): any {\n return this._zE\n }\n}\n","import { NgModule, ModuleWithProviders, Type } from '@angular/core'\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model'\nimport { NgxZendeskWebwidgetService } from './ngx-zendesk-webwidget.service'\n\n@NgModule({})\nexport class NgxZendeskWebwidgetModule {\n static forRoot(zendeskConfig: Type<NgxZendeskWebwidgetConfig>): ModuleWithProviders<NgxZendeskWebwidgetModule> {\n return {\n ngModule: NgxZendeskWebwidgetModule,\n providers: [\n {provide: NgxZendeskWebwidgetConfig, useClass: zendeskConfig },\n {provide: NgxZendeskWebwidgetService, useClass: NgxZendeskWebwidgetService, deps: [NgxZendeskWebwidgetConfig] }\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NgxZendeskWebwidgetConfig"],"mappings":"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"}
@@ -1,120 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { Injectable, NgModule } from '@angular/core';
3
-
4
- class NgxZendeskWebwidgetConfig {
5
- }
6
-
7
- function getWindow() {
8
- return window;
9
- }
10
- class NgxZendeskWebwidgetService {
11
- constructor(ngxZendeskWebwidgetConfig) {
12
- this.ngxZendeskWebwidgetConfig = ngxZendeskWebwidgetConfig;
13
- this.initialized = false;
14
- if (!this.ngxZendeskWebwidgetConfig.accountUrl) {
15
- throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');
16
- }
17
- this.window = getWindow();
18
- if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {
19
- this.initZendesk();
20
- }
21
- }
22
- initZendesk() {
23
- const window = this.window;
24
- const config = this.ngxZendeskWebwidgetConfig;
25
- // tslint:disable
26
- window.zEmbed || function (e, t) {
27
- let n, o, d, i, s, a = [];
28
- let r = document.createElement("iframe");
29
- window.zEmbed = function () {
30
- a.push(arguments);
31
- };
32
- window.zE = window.zE || window.zEmbed;
33
- r.src = "javascript:false";
34
- r.title = "";
35
- r.style.cssText = "display: none";
36
- d = document.getElementsByTagName(config.injectionTag || "head");
37
- d = d[d.length - 1];
38
- d.parentNode.insertBefore(r, d);
39
- i = r.contentWindow;
40
- s = i.document;
41
- try {
42
- o = s;
43
- }
44
- catch (e) {
45
- n = document.domain;
46
- r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);';
47
- o = s;
48
- }
49
- o.open()._l = function () {
50
- let e = this.createElement("script");
51
- n && (this.domain = n);
52
- e.id = "js-iframe-async";
53
- e.src = "https://static.zdassets.com/ekr/snippet.js";
54
- this.t += new Date;
55
- this.zendeskHost = config.accountUrl;
56
- this.zEQueue = a;
57
- this.body.appendChild(e);
58
- };
59
- o.write('<body onload="document._l();">');
60
- o.close();
61
- }();
62
- // tslint:enable
63
- return this.finishLoading();
64
- }
65
- finishLoading() {
66
- return new Promise((resolve, reject) => {
67
- const timeout = setTimeout(() => {
68
- this.initialized = false;
69
- reject(Error('timeout'));
70
- }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds
71
- this.window.zE(() => {
72
- this.ngxZendeskWebwidgetConfig.callback(this.window.zE);
73
- this.initialized = true;
74
- this._zE = this.window.zE;
75
- clearTimeout(timeout);
76
- resolve(true);
77
- });
78
- });
79
- }
80
- get isInitialized() {
81
- return this.initialized;
82
- }
83
- get zE() {
84
- return this._zE;
85
- }
86
- }
87
- NgxZendeskWebwidgetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, deps: [{ token: NgxZendeskWebwidgetConfig }], target: i0.ɵɵFactoryTarget.Injectable });
88
- NgxZendeskWebwidgetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, providedIn: 'root' });
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetService, decorators: [{
90
- type: Injectable,
91
- args: [{
92
- providedIn: 'root'
93
- }]
94
- }], ctorParameters: function () { return [{ type: NgxZendeskWebwidgetConfig }]; } });
95
-
96
- class NgxZendeskWebwidgetModule {
97
- static forRoot(zendeskConfig) {
98
- return {
99
- ngModule: NgxZendeskWebwidgetModule,
100
- providers: [
101
- { provide: NgxZendeskWebwidgetConfig, useClass: zendeskConfig },
102
- { provide: NgxZendeskWebwidgetService, useClass: NgxZendeskWebwidgetService, deps: [NgxZendeskWebwidgetConfig] }
103
- ]
104
- };
105
- }
106
- }
107
- NgxZendeskWebwidgetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
108
- NgxZendeskWebwidgetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
109
- NgxZendeskWebwidgetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NgxZendeskWebwidgetModule, decorators: [{
111
- type: NgModule,
112
- args: [{}]
113
- }] });
114
-
115
- /**
116
- * Generated bundle index. Do not edit.
117
- */
118
-
119
- export { NgxZendeskWebwidgetConfig, NgxZendeskWebwidgetModule, NgxZendeskWebwidgetService };
120
- //# sourceMappingURL=ngx-zendesk-webwidget.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ngx-zendesk-webwidget.mjs","sources":["../../../src/lib/ngx-zendesk-webwidget.model.ts","../../../src/lib/ngx-zendesk-webwidget.service.ts","../../../src/lib/ngx-zendesk-webwidget.module.ts","../../../src/ngx-zendesk-webwidget.ts"],"sourcesContent":["export abstract class NgxZendeskWebwidgetConfig {\n lazyLoad: boolean;\n timeOut: number;\n injectionTag: 'head' | 'body' | 'script' | string;\n abstract accountUrl: string;\n abstract callback(zE: any): any;\n}\n","import { Injectable } from '@angular/core';\n\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model';\n\nfunction getWindow(): any {\n return window;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxZendeskWebwidgetService {\n\n private readonly window: any;\n private initialized = false;\n private _zE: any;\n\n constructor(private ngxZendeskWebwidgetConfig: NgxZendeskWebwidgetConfig) {\n if (!this.ngxZendeskWebwidgetConfig.accountUrl) {\n throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider');\n }\n\n this.window = getWindow();\n\n if (!this.ngxZendeskWebwidgetConfig.lazyLoad) {\n this.initZendesk();\n }\n }\n\n public initZendesk(): Promise<boolean> {\n const window = this.window;\n const config = this.ngxZendeskWebwidgetConfig;\n\n // tslint:disable\n window.zEmbed || function(e, t) {\n let n, o, d, i, s, a = []\n let r = document.createElement(\"iframe\")\n window.zEmbed = function() {\n a.push(arguments)\n }\n window.zE = window.zE || window.zEmbed\n r.src = \"javascript:false\"\n r.title = \"\"\n r.style.cssText = \"display: none\"\n d = document.getElementsByTagName(config.injectionTag || \"head\")\n d = d[d.length - 1]\n d.parentNode.insertBefore(r, d)\n i = r.contentWindow\n s = i.document\n try {\n o = s\n } catch (e) {\n n = document.domain\n r.src = 'javascript:var d=document.open();d.domain=\"' + n + '\";void(0);'\n o = s\n }\n o.open()._l = function() {\n let e = this.createElement(\"script\")\n n && (this.domain = n)\n e.id = \"js-iframe-async\"\n e.src = \"https://static.zdassets.com/ekr/snippet.js\"\n this.t += new Date\n this.zendeskHost = config.accountUrl\n this.zEQueue = a\n this.body.appendChild(e)\n }\n o.write('<body onload=\"document._l();\">')\n o.close()\n }();\n // tslint:enable\n\n return this.finishLoading();\n }\n\n private finishLoading(): Promise<boolean> {\n return new Promise<boolean>((resolve, reject) => {\n\n const timeout = setTimeout(() => {\n this.initialized = false;\n reject(Error('timeout'));\n }, this.ngxZendeskWebwidgetConfig.timeOut || 30000); // 30 seconds\n\n this.window.zE(() => {\n this.ngxZendeskWebwidgetConfig.callback(this.window.zE);\n this.initialized = true;\n this._zE = this.window.zE;\n clearTimeout(timeout);\n resolve(true);\n });\n });\n }\n\n get isInitialized(): boolean {\n return this.initialized;\n }\n\n get zE(): any {\n return this._zE\n }\n}\n","import { NgModule, ModuleWithProviders, Type } from '@angular/core'\nimport { NgxZendeskWebwidgetConfig } from './ngx-zendesk-webwidget.model'\nimport { NgxZendeskWebwidgetService } from './ngx-zendesk-webwidget.service'\n\n@NgModule({})\nexport class NgxZendeskWebwidgetModule {\n static forRoot(zendeskConfig: Type<NgxZendeskWebwidgetConfig>): ModuleWithProviders<NgxZendeskWebwidgetModule> {\n return {\n ngModule: NgxZendeskWebwidgetModule,\n providers: [\n {provide: NgxZendeskWebwidgetConfig, useClass: zendeskConfig },\n {provide: NgxZendeskWebwidgetService, useClass: NgxZendeskWebwidgetService, deps: [NgxZendeskWebwidgetConfig] }\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NgxZendeskWebwidgetConfig"],"mappings":"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"}
Binary file
File without changes