@posiwise/common-services 0.1.87 → 0.1.89
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/fesm2022/posiwise-common-services.mjs +268 -226
- package/fesm2022/posiwise-common-services.mjs.map +1 -1
- package/lib/common-services.interface.d.ts +5 -0
- package/lib/user.service.d.ts +15 -1
- package/package.json +8 -10
- package/esm2022/index.mjs +0 -47
- package/esm2022/lib/ab-test.service.mjs +0 -55
- package/esm2022/lib/ahoy.service.mjs +0 -93
- package/esm2022/lib/auth.service.mjs +0 -322
- package/esm2022/lib/base-http.service.mjs +0 -98
- package/esm2022/lib/brain-api-http.service.mjs +0 -26
- package/esm2022/lib/brain.service.mjs +0 -21
- package/esm2022/lib/common-services.interface.mjs +0 -2
- package/esm2022/lib/common-services.module.mjs +0 -23
- package/esm2022/lib/common.service.mjs +0 -134
- package/esm2022/lib/custom-preloading.service.mjs +0 -38
- package/esm2022/lib/dashboard.service.mjs +0 -21
- package/esm2022/lib/data.service.mjs +0 -21
- package/esm2022/lib/date-formatter.service.mjs +0 -82
- package/esm2022/lib/effects/user.effects.mjs +0 -27
- package/esm2022/lib/form-helper.service.mjs +0 -27
- package/esm2022/lib/geo.service.mjs +0 -40
- package/esm2022/lib/google-analytics.service.mjs +0 -121
- package/esm2022/lib/group.service.mjs +0 -122
- package/esm2022/lib/hopscotch.service.mjs +0 -48
- package/esm2022/lib/integrations-api-http.service.mjs +0 -28
- package/esm2022/lib/link-loader.service.mjs +0 -50
- package/esm2022/lib/local-storage.service.mjs +0 -32
- package/esm2022/lib/logo-caching.service.mjs +0 -65
- package/esm2022/lib/mailbox.service.mjs +0 -66
- package/esm2022/lib/main-api-http.service.mjs +0 -26
- package/esm2022/lib/notification.service.mjs +0 -70
- package/esm2022/lib/number-picker.service.mjs +0 -43
- package/esm2022/lib/permission.service.mjs +0 -252
- package/esm2022/lib/primeNgHelper.mjs +0 -18
- package/esm2022/lib/product.service.mjs +0 -78
- package/esm2022/lib/profile.service.mjs +0 -64
- package/esm2022/lib/qualification.service.mjs +0 -29
- package/esm2022/lib/script-loader.service.mjs +0 -79
- package/esm2022/lib/secure-token-storage.service.mjs +0 -264
- package/esm2022/lib/sentry.service.mjs +0 -384
- package/esm2022/lib/seo.service.mjs +0 -43
- package/esm2022/lib/socket.service.mjs +0 -29
- package/esm2022/lib/subscription.service.mjs +0 -129
- package/esm2022/lib/tag.service.mjs +0 -101
- package/esm2022/lib/tips.service.mjs +0 -38
- package/esm2022/lib/toast.service.mjs +0 -85
- package/esm2022/lib/user.service.mjs +0 -115
- package/esm2022/lib/validation.service.mjs +0 -36
- package/esm2022/lib/window.service.mjs +0 -20
- package/esm2022/posiwise-common-services.mjs +0 -5
|
@@ -4,6 +4,11 @@ export interface ProfileData {
|
|
|
4
4
|
id?: number;
|
|
5
5
|
send_marketing_emails?: string[];
|
|
6
6
|
avatar?: string;
|
|
7
|
+
/**
|
|
8
|
+
* UTC datetime when the user accepted the latest Terms of Service.
|
|
9
|
+
* This is written via the generic `/user` profile update endpoint.
|
|
10
|
+
*/
|
|
11
|
+
tos_accepted_at?: string;
|
|
7
12
|
}
|
|
8
13
|
export interface WindowData {
|
|
9
14
|
ga: (command: string, fieldName: string, fieldValue: string) => void;
|
package/lib/user.service.d.ts
CHANGED
|
@@ -1,18 +1,32 @@
|
|
|
1
1
|
import { Router } from '@angular/router';
|
|
2
|
+
import { AppConfigService } from '@posiwise/app-config-service';
|
|
2
3
|
import { AppState, UserState } from '@posiwise/app-store';
|
|
3
4
|
import { Paging, User } from '@posiwise/common-utilities';
|
|
4
5
|
import { Observable } from 'rxjs';
|
|
5
6
|
import { Store } from '@ngrx/store';
|
|
6
7
|
import { MainApiHttpService } from './main-api-http.service';
|
|
8
|
+
import { ProfileService } from './profile.service';
|
|
9
|
+
import { CustomToastService } from './toast.service';
|
|
7
10
|
import * as i0 from "@angular/core";
|
|
8
11
|
export declare class UserService {
|
|
9
12
|
private readonly api;
|
|
10
13
|
private readonly store;
|
|
11
14
|
private readonly router;
|
|
15
|
+
private readonly appConfigService;
|
|
16
|
+
private readonly profileService;
|
|
17
|
+
private readonly toast;
|
|
12
18
|
private readonly endpoint;
|
|
13
|
-
|
|
19
|
+
private isTosModalOpen;
|
|
20
|
+
constructor(api: MainApiHttpService, store: Store<AppState>, router: Router, appConfigService: AppConfigService, profileService: ProfileService, toast: CustomToastService);
|
|
14
21
|
getUserState(): Observable<UserState>;
|
|
15
22
|
getUserInfo(): Observable<User>;
|
|
23
|
+
/**
|
|
24
|
+
* Ensure the current user has accepted the latest Terms of Service for this domain.
|
|
25
|
+
* If the domain has a newer TOS version than the user's accepted timestamp, a blocking
|
|
26
|
+
* SweetAlert2 modal is shown that forces the user to accept before continuing.
|
|
27
|
+
*/
|
|
28
|
+
private checkAndHandleTosAcceptance;
|
|
29
|
+
private handleTosAcceptanceError;
|
|
16
30
|
followUser(id: number): Observable<any>;
|
|
17
31
|
sendSSOActivationEmail(): Observable<any>;
|
|
18
32
|
updateSlug(slug: string): Observable<any>;
|
package/package.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@posiwise/common-services",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.89",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "
|
|
6
|
-
"@angular/core": "
|
|
7
|
-
"@angular/forms": "
|
|
8
|
-
"@angular/localize": "
|
|
9
|
-
"@angular/platform-browser": "
|
|
5
|
+
"@angular/common": "^19.2.18",
|
|
6
|
+
"@angular/core": "^19.2.18",
|
|
7
|
+
"@angular/forms": "^19.2.18",
|
|
8
|
+
"@angular/localize": "^19.2.18",
|
|
9
|
+
"@angular/platform-browser": "^19.2.18",
|
|
10
10
|
"@types/crypto-js": "4.2.2",
|
|
11
11
|
"@types/jquery": "^3.5.29",
|
|
12
12
|
"@types/jstree": "^3.3.46",
|
|
13
13
|
"jquery": "^3.5.29",
|
|
14
14
|
"jstree": "^3.3.15",
|
|
15
15
|
"moment": "^2.29.4",
|
|
16
|
-
"ng-packagr": "
|
|
17
|
-
"ngx-toastr": "^
|
|
16
|
+
"ng-packagr": "^19.0.0",
|
|
17
|
+
"ngx-toastr": "^19.0.0",
|
|
18
18
|
"rxjs": "7.8.1",
|
|
19
19
|
"ngx-cookie": "^6.0.1"
|
|
20
20
|
},
|
|
@@ -30,8 +30,6 @@
|
|
|
30
30
|
},
|
|
31
31
|
".": {
|
|
32
32
|
"types": "./index.d.ts",
|
|
33
|
-
"esm2022": "./esm2022/posiwise-common-services.mjs",
|
|
34
|
-
"esm": "./esm2022/posiwise-common-services.mjs",
|
|
35
33
|
"default": "./fesm2022/posiwise-common-services.mjs"
|
|
36
34
|
}
|
|
37
35
|
}
|
package/esm2022/index.mjs
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of pw-services
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/google-analytics.service';
|
|
5
|
-
export * from './lib/script-loader.service';
|
|
6
|
-
export * from './lib/base-http.service';
|
|
7
|
-
export * from './lib/common-services.module';
|
|
8
|
-
export * from './lib/seo.service';
|
|
9
|
-
export * from './lib/main-api-http.service';
|
|
10
|
-
export * from './lib/permission.service';
|
|
11
|
-
export * from './lib/toast.service';
|
|
12
|
-
export * from './lib/auth.service';
|
|
13
|
-
export * from './lib/local-storage.service';
|
|
14
|
-
export * from './lib/secure-token-storage.service';
|
|
15
|
-
export * from './lib/integrations-api-http.service';
|
|
16
|
-
export * from './lib/link-loader.service';
|
|
17
|
-
export * from './lib/user.service';
|
|
18
|
-
export * from './lib/custom-preloading.service';
|
|
19
|
-
export * from './lib/ab-test.service';
|
|
20
|
-
export * from './lib/geo.service';
|
|
21
|
-
export * from './lib/profile.service';
|
|
22
|
-
export * from './lib/subscription.service';
|
|
23
|
-
export * from './lib/product.service';
|
|
24
|
-
export * from './lib/validation.service';
|
|
25
|
-
export * from './lib/form-helper.service';
|
|
26
|
-
export * from './lib/ahoy.service';
|
|
27
|
-
export * from './lib/common.service';
|
|
28
|
-
export * from './lib/date-formatter.service';
|
|
29
|
-
export * from './lib/primeNgHelper';
|
|
30
|
-
export * from './lib/tag.service';
|
|
31
|
-
export * from './lib/tips.service';
|
|
32
|
-
export * from './lib/window.service';
|
|
33
|
-
export * from './lib/group.service';
|
|
34
|
-
export * from './lib/qualification.service';
|
|
35
|
-
export * from './lib/dashboard.service';
|
|
36
|
-
export * from './lib/mailbox.service';
|
|
37
|
-
export * from './lib/notification.service';
|
|
38
|
-
export * from './lib/socket.service';
|
|
39
|
-
export * from './lib/effects/user.effects';
|
|
40
|
-
export * from './lib/data.service';
|
|
41
|
-
export * from './lib/number-picker.service';
|
|
42
|
-
export * from './lib/sentry.service';
|
|
43
|
-
export * from './lib/logo-caching.service';
|
|
44
|
-
export * from './lib/hopscotch.service';
|
|
45
|
-
export * from './lib/brain.service';
|
|
46
|
-
export * from './lib/brain-api-http.service';
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2NvbW1vbi1zZXJ2aWNlcy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwdy1zZXJ2aWNlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9nb29nbGUtYW5hbHl0aWNzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2NyaXB0LWxvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jhc2UtaHR0cC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbW1vbi1zZXJ2aWNlcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VvLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbWFpbi1hcGktaHR0cC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Blcm1pc3Npb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2FzdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F1dGguc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VjdXJlLXRva2VuLXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlZ3JhdGlvbnMtYXBpLWh0dHAuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWxvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VzZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jdXN0b20tcHJlbG9hZGluZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FiLXRlc3Quc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9nZW8uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wcm9maWxlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvZHVjdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ZhbGlkYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWhlbHBlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Fob3kuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21tb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLWZvcm1hdHRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByaW1lTmdIZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFnLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGlwcy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3dpbmRvdy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dyb3VwLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcXVhbGlmaWNhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rhc2hib2FyZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21haWxib3guc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zb2NrZXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lZmZlY3RzL3VzZXIuZWZmZWN0cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRhLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbnVtYmVyLXBpY2tlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlbnRyeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvZ28tY2FjaGluZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hvcHNjb3RjaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2JyYWluLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnJhaW4tYXBpLWh0dHAuc2VydmljZSc7XG4iXX0=
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { Injectable, Injector } from '@angular/core';
|
|
3
|
-
import { AB_TEST_ACTIONS } from '@posiwise/common-utilities';
|
|
4
|
-
import { HelperService } from '@posiwise/helper-service';
|
|
5
|
-
import { MainApiHttpService } from './main-api-http.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common/http";
|
|
8
|
-
export class AbTestService {
|
|
9
|
-
constructor(injector, http) {
|
|
10
|
-
this.injector = injector;
|
|
11
|
-
this.http = http;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* POST: start or stop observable
|
|
15
|
-
* payload: {
|
|
16
|
-
"test_name": "my_first_experiment",
|
|
17
|
-
"action_type": "ab_test"
|
|
18
|
-
}
|
|
19
|
-
*/
|
|
20
|
-
getExperiment(test_name, action_type, service) {
|
|
21
|
-
return this.getServiceInstance(service).post('/ab_test', { test_name, action_type });
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Finish the experiment and remove from the cookie app-store
|
|
25
|
-
*/
|
|
26
|
-
finishExperiment(test_name, service) {
|
|
27
|
-
return this.getServiceInstance(service).post('/ab_test', {
|
|
28
|
-
test_name,
|
|
29
|
-
action_type: AB_TEST_ACTIONS.FINISH
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
finishABExperiment(test_name, shard_name) {
|
|
33
|
-
const baseUrl = HelperService.getBaseUrlMicroService({ name: shard_name });
|
|
34
|
-
return this.http.post(`${baseUrl}/ab_test`, {
|
|
35
|
-
test_name,
|
|
36
|
-
action_type: AB_TEST_ACTIONS.FINISH
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* dynamically loads the microservice
|
|
41
|
-
*/
|
|
42
|
-
getServiceInstance(service) {
|
|
43
|
-
console.log(typeof service);
|
|
44
|
-
return service ? this.injector.get(service) : this.injector.get(MainApiHttpService); // fallback to Core Microservice
|
|
45
|
-
}
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AbTestService, deps: [{ token: i0.Injector }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
47
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AbTestService, providedIn: 'root' }); }
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AbTestService, decorators: [{
|
|
50
|
-
type: Injectable,
|
|
51
|
-
args: [{
|
|
52
|
-
providedIn: 'root'
|
|
53
|
-
}]
|
|
54
|
-
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.HttpClient }] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWItdGVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24tc2VydmljZXMvc3JjL2xpYi9hYi10ZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUs3RCxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUNxQixRQUFrQixFQUNsQixJQUFnQjtRQURoQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDbEMsQ0FBQztJQUVKOzs7Ozs7S0FNQztJQUNELGFBQWEsQ0FBQyxTQUFpQixFQUFFLFdBQW1CLEVBQUUsT0FBZ0I7UUFDbEUsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLFNBQWlCLEVBQUUsT0FBZ0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNyRCxTQUFTO1lBQ1QsV0FBVyxFQUFFLGVBQWUsQ0FBQyxNQUFNO1NBQ3RDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFpQixFQUFFLFVBQW1CO1FBQ3JELE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLFVBQVUsRUFBRTtZQUN4QyxTQUFTO1lBQ1QsV0FBVyxFQUFFLGVBQWUsQ0FBQyxNQUFNO1NBQ3RDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQixDQUFDLE9BQU87UUFDOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxDQUFDO1FBQzVCLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLGdDQUFnQztJQUN6SCxDQUFDOytHQXpDUSxhQUFhO21IQUFiLGFBQWEsY0FGVixNQUFNOzs0RkFFVCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBQl9URVNUX0FDVElPTlMgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXV0aWxpdGllcyc7XG5pbXBvcnQgeyBIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2hlbHBlci1zZXJ2aWNlJztcblxuaW1wb3J0IHsgTWFpbkFwaUh0dHBTZXJ2aWNlIH0gZnJvbSAnLi9tYWluLWFwaS1odHRwLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFiVGVzdFNlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50XG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAqIFBPU1Q6IHN0YXJ0IG9yIHN0b3Agb2JzZXJ2YWJsZVxuICAgKiBwYXlsb2FkOiB7XG4gICAgICAgIFwidGVzdF9uYW1lXCI6IFwibXlfZmlyc3RfZXhwZXJpbWVudFwiLFxuICAgICAgICBcImFjdGlvbl90eXBlXCI6IFwiYWJfdGVzdFwiXG4gICAgICB9XG4gICAqL1xuICAgIGdldEV4cGVyaW1lbnQodGVzdF9uYW1lOiBzdHJpbmcsIGFjdGlvbl90eXBlOiBzdHJpbmcsIHNlcnZpY2U6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VydmljZUluc3RhbmNlKHNlcnZpY2UpLnBvc3QoJy9hYl90ZXN0JywgeyB0ZXN0X25hbWUsIGFjdGlvbl90eXBlIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmlzaCB0aGUgZXhwZXJpbWVudCBhbmQgcmVtb3ZlIGZyb20gdGhlIGNvb2tpZSBhcHAtc3RvcmVcbiAgICAgKi9cbiAgICBmaW5pc2hFeHBlcmltZW50KHRlc3RfbmFtZTogc3RyaW5nLCBzZXJ2aWNlOiB1bmtub3duKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFNlcnZpY2VJbnN0YW5jZShzZXJ2aWNlKS5wb3N0KCcvYWJfdGVzdCcsIHtcbiAgICAgICAgICAgIHRlc3RfbmFtZSxcbiAgICAgICAgICAgIGFjdGlvbl90eXBlOiBBQl9URVNUX0FDVElPTlMuRklOSVNIXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZpbmlzaEFCRXhwZXJpbWVudCh0ZXN0X25hbWU6IHN0cmluZywgc2hhcmRfbmFtZTogdW5rbm93bikge1xuICAgICAgICBjb25zdCBiYXNlVXJsID0gSGVscGVyU2VydmljZS5nZXRCYXNlVXJsTWljcm9TZXJ2aWNlKHsgbmFtZTogc2hhcmRfbmFtZSB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke2Jhc2VVcmx9L2FiX3Rlc3RgLCB7XG4gICAgICAgICAgICB0ZXN0X25hbWUsXG4gICAgICAgICAgICBhY3Rpb25fdHlwZTogQUJfVEVTVF9BQ1RJT05TLkZJTklTSFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBkeW5hbWljYWxseSBsb2FkcyB0aGUgbWljcm9zZXJ2aWNlXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRTZXJ2aWNlSW5zdGFuY2Uoc2VydmljZSkge1xuICAgICAgICBjb25zb2xlLmxvZyh0eXBlb2Ygc2VydmljZSk7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlID8gdGhpcy5pbmplY3Rvci5nZXQoc2VydmljZSkgOiB0aGlzLmluamVjdG9yLmdldChNYWluQXBpSHR0cFNlcnZpY2UpOyAvLyBmYWxsYmFjayB0byBDb3JlIE1pY3Jvc2VydmljZVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { HttpClient, HttpErrorResponse } from '@angular/common/http';
|
|
2
|
-
import { Injectable, Injector } from '@angular/core';
|
|
3
|
-
import { HelperService } from '@posiwise/helper-service';
|
|
4
|
-
import { throwError } from 'rxjs';
|
|
5
|
-
import { catchError } from 'rxjs/operators';
|
|
6
|
-
import { CustomToastService } from './toast.service';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common/http";
|
|
9
|
-
export class AhoyService {
|
|
10
|
-
constructor(http, injector) {
|
|
11
|
-
this.http = http;
|
|
12
|
-
this.injector = injector;
|
|
13
|
-
this.ahoy = '/ahoy';
|
|
14
|
-
this.toast = injector.get(CustomToastService);
|
|
15
|
-
}
|
|
16
|
-
getAhoyEvents(params, service, paging) {
|
|
17
|
-
const baseUrl = HelperService.getBaseUrlMicroService(service);
|
|
18
|
-
const page = HelperService.getPagingParams(paging);
|
|
19
|
-
return this.http
|
|
20
|
-
.get(`${baseUrl}${this.ahoy}/events`, {
|
|
21
|
-
params: { ...page, ...params }
|
|
22
|
-
})
|
|
23
|
-
.pipe(catchError(error => {
|
|
24
|
-
this.handleError(error);
|
|
25
|
-
return throwError(() => new HttpErrorResponse(error));
|
|
26
|
-
}));
|
|
27
|
-
}
|
|
28
|
-
getAhoyMessages(params, service, paging) {
|
|
29
|
-
const baseUrl = HelperService.getBaseUrlMicroService(service);
|
|
30
|
-
const page = HelperService.getPagingParams(paging);
|
|
31
|
-
return this.http
|
|
32
|
-
.get(`${baseUrl}${this.ahoy}/messages`, {
|
|
33
|
-
params: { ...page, ...params }
|
|
34
|
-
})
|
|
35
|
-
.pipe(catchError(error => {
|
|
36
|
-
this.handleError(error);
|
|
37
|
-
return throwError(() => new HttpErrorResponse(error));
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
getAhoyVisits(params, service, paging) {
|
|
41
|
-
const baseUrl = HelperService.getBaseUrlMicroService(service);
|
|
42
|
-
const page = HelperService.getPagingParams(paging);
|
|
43
|
-
return this.http
|
|
44
|
-
.get(`${baseUrl}${this.ahoy}/visits`, {
|
|
45
|
-
params: { ...page, ...params }
|
|
46
|
-
})
|
|
47
|
-
.pipe(catchError(error => {
|
|
48
|
-
this.handleError(error);
|
|
49
|
-
return throwError(() => new HttpErrorResponse(error));
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
getVersions(params, service, paging) {
|
|
53
|
-
const baseUrl = HelperService.getBaseUrlMicroService(service);
|
|
54
|
-
const page = HelperService.getPagingParams(paging);
|
|
55
|
-
return this.http
|
|
56
|
-
.get(`${baseUrl}/versions/get_all`, {
|
|
57
|
-
params: { ...page, ...params }
|
|
58
|
-
})
|
|
59
|
-
.pipe(catchError(error => {
|
|
60
|
-
this.handleError(error);
|
|
61
|
-
return throwError(() => new HttpErrorResponse(error));
|
|
62
|
-
}));
|
|
63
|
-
}
|
|
64
|
-
getEvents(params, service, paging) {
|
|
65
|
-
const baseUrl = HelperService.getBaseUrlMicroService(service);
|
|
66
|
-
const page = HelperService.getPagingParams(paging);
|
|
67
|
-
return this.http
|
|
68
|
-
.get(`${baseUrl}/events/get_all`, {
|
|
69
|
-
params: { ...page, ...params }
|
|
70
|
-
})
|
|
71
|
-
.pipe(catchError(error => {
|
|
72
|
-
this.handleError(error);
|
|
73
|
-
return throwError(() => new HttpErrorResponse(error));
|
|
74
|
-
}));
|
|
75
|
-
}
|
|
76
|
-
handleError(error) {
|
|
77
|
-
if (error?.error?.status_code !== 'unauthorized__REMOVED_X_TESTING') {
|
|
78
|
-
if (error?.error?.status === 401) {
|
|
79
|
-
this.toast.clear();
|
|
80
|
-
}
|
|
81
|
-
this.toast.showToast(error);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AhoyService, deps: [{ token: i1.HttpClient }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
85
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AhoyService, providedIn: 'root' }); }
|
|
86
|
-
}
|
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: AhoyService, decorators: [{
|
|
88
|
-
type: Injectable,
|
|
89
|
-
args: [{
|
|
90
|
-
providedIn: 'root'
|
|
91
|
-
}]
|
|
92
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i0.Injector }] });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWhveS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24tc2VydmljZXMvc3JjL2xpYi9haG95LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RCxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVU1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBS3JELE1BQU0sT0FBTyxXQUFXO0lBS3BCLFlBQ3FCLElBQWdCLEVBQzFCLFFBQWtCO1FBRFIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBTlosU0FBSSxHQUFHLE9BQU8sQ0FBQztRQVE1QixJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQXFCLEVBQUUsT0FBTyxFQUFFLE1BQWM7UUFDeEQsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlELE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkQsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLEdBQUcsQ0FBb0IsR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksU0FBUyxFQUFFO1lBQ3JELE1BQU0sRUFBRSxFQUFFLEdBQUcsSUFBSSxF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Q0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuRCxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUFxQixHQUFHLE9BQU8saUJBQWlCLEVBQUU7WUFDbEQsTUFBTSxFQUFFLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxNQUFNLEVBQUU7U0FDakMsQ0FBQzthQUNELElBQUksQ0FDRCxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXhCLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ1YsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUF3QjtRQUNoQyxJQUFJLEtBQUssRUFBRSxLQUFLLEVBQUUsV0FBVyxLQUFLLGlDQUFpQyxFQUFFLENBQUM7WUFDbEUsSUFBSSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNMLENBQUM7K0dBN0dRLFdBQVc7bUhBQVgsV0FBVyxjQUZSLE1BQU07OzRGQUVULFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYWdpbmcgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXV0aWxpdGllcyc7XG5pbXBvcnQgeyBIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2hlbHBlci1zZXJ2aWNlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBBaG95RXZlbnRSZXNwb25zZSxcbiAgICBBaG95TWVzc2FnZVJlc3BvbnNlLFxuICAgIEFob3lWZXJzaW9uUmVzcG9uc2UsXG4gICAgQWhveVZpc2l0UmVzcG9uc2UsXG4gICAgUmVxdWVzdFBhcmFtcyxcbiAgICBUcmFja0V2ZW50UmVzcG9uc2Vcbn0gZnJvbSAnLi9jb21tb24tc2VydmljZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEN1c3RvbVRvYXN0U2VydmljZSB9IGZyb20gJy4vdG9hc3Quc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWhveVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWhveSA9ICcvYWhveSc7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0OiBDdXN0b21Ub2FzdFNlcnZpY2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwdWJsaWMgaW5qZWN0b3I6IEluamVjdG9yXG4gICAgKSB7XG4gICAgICAgIHRoaXMudG9hc3QgPSBpbmplY3Rvci5nZXQoQ3VzdG9tVG9hc3RTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBnZXRBaG95RXZlbnRzKHBhcmFtczogUmVxdWVzdFBhcmFtcywgc2VydmljZSwgcGFnaW5nOiBQYWdpbmcpOiBPYnNlcnZhYmxlPEFob3lFdmVudFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBIZWxwZXJTZXJ2aWNlLmdldEJhc2VVcmxNaWNyb1NlcnZpY2Uoc2VydmljZSk7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8QWhveUV2ZW50UmVzcG9uc2U+KGAke2Jhc2VVcmx9JHt0aGlzLmFob3l9L2V2ZW50c2AsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHsgLi4ucGFnZSwgLi4ucGFyYW1zIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEh0dHBFcnJvclJlc3BvbnNlKGVycm9yKSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0QWhveU1lc3NhZ2VzKFxuICAgICAgICBwYXJhbXM6IFJlcXVlc3RQYXJhbXMsXG4gICAgICAgIHNlcnZpY2UsXG4gICAgICAgIHBhZ2luZzogUGFnaW5nXG4gICAgKTogT2JzZXJ2YWJsZTxBaG95TWVzc2FnZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBIZWxwZXJTZXJ2aWNlLmdldEJhc2VVcmxNaWNyb1NlcnZpY2Uoc2VydmljZSk7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8QWhveU1lc3NhZ2VSZXNwb25zZT4oYCR7YmFzZVVybH0ke3RoaXMuYWhveX0vbWVzc2FnZXNgLCB7XG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7IC4uLnBhZ2UsIC4uLnBhcmFtcyB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBIdHRwRXJyb3JSZXNwb25zZShlcnJvcikpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIGdldEFob3lWaXNpdHMocGFyYW1zOiBSZXF1ZXN0UGFyYW1zLCBzZXJ2aWNlLCBwYWdpbmc6IFBhZ2luZyk6IE9ic2VydmFibGU8QWhveVZpc2l0UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgYmFzZVVybCA9IEhlbHBlclNlcnZpY2UuZ2V0QmFzZVVybE1pY3JvU2VydmljZShzZXJ2aWNlKTtcbiAgICAgICAgY29uc3QgcGFnZSA9IEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxBaG95VmlzaXRSZXNwb25zZT4oYCR7YmFzZVVybH0ke3RoaXMuYWhveX0vdmlzaXRzYCwge1xuICAgICAgICAgICAgICAgIHBhcmFtczogeyAuLi5wYWdlLCAuLi5wYXJhbXMgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgSHR0cEVycm9yUmVzcG9uc2UoZXJyb3IpKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRWZXJzaW9ucyhwYXJhbXM6IFJlcXVlc3RQYXJhbXMsIHNlcnZpY2UsIHBhZ2luZzogUGFnaW5nKTogT2JzZXJ2YWJsZTxBaG95VmVyc2lvblJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBIZWxwZXJTZXJ2aWNlLmdldEJhc2VVcmxNaWNyb1NlcnZpY2Uoc2VydmljZSk7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8QWhveVZlcnNpb25SZXNwb25zZT4oYCR7YmFzZVVybH0vdmVyc2lvbnMvZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHsgLi4ucGFnZSwgLi4ucGFyYW1zIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEh0dHBFcnJvclJlc3BvbnNlKGVycm9yKSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0RXZlbnRzKHBhcmFtczogUmVxdWVzdFBhcmFtcywgc2VydmljZSwgcGFnaW5nOiBQYWdpbmcpOiBPYnNlcnZhYmxlPFRyYWNrRXZlbnRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCBiYXNlVXJsID0gSGVscGVyU2VydmljZS5nZXRCYXNlVXJsTWljcm9TZXJ2aWNlKHNlcnZpY2UpO1xuICAgICAgICBjb25zdCBwYWdlID0gSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PFRyYWNrRXZlbnRSZXNwb25zZT4oYCR7YmFzZVVybH0vZXZlbnRzL2dldF9hbGxgLCB7XG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7IC4uLnBhZ2UsIC4uLnBhcmFtcyB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBIdHRwRXJyb3JSZXNwb25zZShlcnJvcikpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIGhhbmRsZUVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IHZvaWQge1xuICAgICAgICBpZiAoZXJyb3I/LmVycm9yPy5zdGF0dXNfY29kZSAhPT0gJ3VuYXV0aG9yaXplZF9fUkVNT1ZFRF9YX1RFU1RJTkcnKSB7XG4gICAgICAgICAgICBpZiAoZXJyb3I/LmVycm9yPy5zdGF0dXMgPT09IDQwMSkge1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QuY2xlYXIoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy50b2FzdC5zaG93VG9hc3QoZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|