@infrab4a/connect-angular 4.2.10-beta.4 → 4.2.11-beta.2

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.
Files changed (64) hide show
  1. package/esm2020/angular-connect.module.mjs +97 -0
  2. package/esm2020/angular-elastic-search.module.mjs +34 -0
  3. package/esm2020/angular-firebase-auth.module.mjs +115 -0
  4. package/esm2020/angular-firestore.module.mjs +483 -0
  5. package/esm2020/angular-hasura-graphql.module.mjs +265 -0
  6. package/{esm2022 → esm2020}/consts/category-structure.mjs +1 -1
  7. package/{esm2022 → esm2020}/consts/default-shop.const.mjs +1 -1
  8. package/{esm2022 → esm2020}/consts/es-config.const.mjs +1 -1
  9. package/{esm2022 → esm2020}/consts/firebase-const.mjs +1 -1
  10. package/{esm2022 → esm2020}/consts/hasura-options.const.mjs +1 -1
  11. package/{esm2022 → esm2020}/consts/index.mjs +1 -1
  12. package/{esm2022 → esm2020}/helpers/index.mjs +1 -1
  13. package/{esm2022 → esm2020}/helpers/mobile-operation-system-checker.helper.mjs +1 -1
  14. package/{esm2022 → esm2020}/index.mjs +1 -1
  15. package/{esm2022 → esm2020}/services/auth.service.mjs +6 -6
  16. package/{esm2022 → esm2020}/services/cart.service.mjs +6 -6
  17. package/{esm2022 → esm2020}/services/catalog/adapters/category-structure.adapter.mjs +1 -1
  18. package/{esm2022 → esm2020}/services/catalog/adapters/index.mjs +1 -1
  19. package/{esm2022 → esm2020}/services/catalog/adapters/new-category-structure.adapter.mjs +6 -6
  20. package/{esm2022 → esm2020}/services/catalog/adapters/old-category-structure.adapter.mjs +6 -6
  21. package/esm2020/services/catalog/catalog.service.mjs +170 -0
  22. package/{esm2022 → esm2020}/services/catalog/category.service.mjs +6 -6
  23. package/{esm2022 → esm2020}/services/catalog/enums/index.mjs +1 -1
  24. package/{esm2022 → esm2020}/services/catalog/enums/product-sorts.enum.mjs +1 -1
  25. package/{esm2022 → esm2020}/services/catalog/index.mjs +1 -1
  26. package/{esm2022 → esm2020}/services/catalog/models/category-with-tree.model.mjs +1 -1
  27. package/{esm2022 → esm2020}/services/catalog/models/index.mjs +1 -1
  28. package/{esm2022 → esm2020}/services/catalog/types/index.mjs +1 -1
  29. package/{esm2022 → esm2020}/services/catalog/types/product-sort.type.mjs +1 -1
  30. package/{esm2022 → esm2020}/services/catalog/wishlist.service.mjs +6 -6
  31. package/{esm2022 → esm2020}/services/checkout-subscription.service.mjs +6 -6
  32. package/{esm2022 → esm2020}/services/checkout.service.mjs +6 -6
  33. package/esm2020/services/coupon.service.mjs +218 -0
  34. package/{esm2022 → esm2020}/services/helpers/index.mjs +1 -1
  35. package/{esm2022 → esm2020}/services/helpers/util.helper.mjs +1 -1
  36. package/esm2020/services/home-shop.service.mjs +125 -0
  37. package/{esm2022 → esm2020}/services/index.mjs +1 -1
  38. package/{esm2022 → esm2020}/services/order.service.mjs +6 -6
  39. package/{esm2022 → esm2020}/services/shipping.service.mjs +6 -6
  40. package/{esm2022 → esm2020}/services/types/index.mjs +1 -1
  41. package/{esm2022 → esm2020}/services/types/required-checkout-data.type.mjs +1 -1
  42. package/{esm2022 → esm2020}/services/types/required-checkout-subscription-data.type.mjs +1 -1
  43. package/esm2020/services/types/shipping-methods.type.mjs +2 -0
  44. package/{esm2022 → esm2020}/types/firebase-app-config.type.mjs +1 -1
  45. package/{esm2022 → esm2020}/types/index.mjs +1 -1
  46. package/fesm2015/infrab4a-connect-angular.mjs +2322 -0
  47. package/fesm2015/infrab4a-connect-angular.mjs.map +1 -0
  48. package/{fesm2022 → fesm2020}/infrab4a-connect-angular.mjs +532 -553
  49. package/fesm2020/infrab4a-connect-angular.mjs.map +1 -0
  50. package/package.json +12 -6
  51. package/services/coupon.service.d.ts +0 -1
  52. package/services/home-shop.service.d.ts +1 -0
  53. package/esm2022/angular-connect.module.mjs +0 -97
  54. package/esm2022/angular-elastic-search.module.mjs +0 -34
  55. package/esm2022/angular-firebase-auth.module.mjs +0 -115
  56. package/esm2022/angular-firestore.module.mjs +0 -483
  57. package/esm2022/angular-hasura-graphql.module.mjs +0 -265
  58. package/esm2022/services/catalog/catalog.service.mjs +0 -184
  59. package/esm2022/services/coupon.service.mjs +0 -235
  60. package/esm2022/services/home-shop.service.mjs +0 -115
  61. package/esm2022/services/types/shipping-methods.type.mjs +0 -2
  62. package/fesm2022/infrab4a-connect-angular.mjs.map +0 -1
  63. /package/{esm2022 → esm2020}/consts/backend-url.const.mjs +0 -0
  64. /package/{esm2022 → esm2020}/infrab4a-connect-angular.mjs +0 -0
@@ -1,34 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { AxiosAdapter, ProductsIndex } from '@infrab4a/connect';
3
- import { ES_CONFIG } from './consts/es-config.const';
4
- import * as i0 from "@angular/core";
5
- export class AngularElasticSeachModule {
6
- static initializeApp(options) {
7
- return {
8
- ngModule: AngularElasticSeachModule,
9
- providers: [{ provide: ES_CONFIG, useValue: options }],
10
- };
11
- }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularElasticSeachModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: AngularElasticSeachModule }); }
14
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularElasticSeachModule, providers: [
15
- {
16
- provide: ProductsIndex,
17
- useFactory: (configuration) => new ProductsIndex(new AxiosAdapter(configuration)),
18
- deps: [ES_CONFIG],
19
- },
20
- ] }); }
21
- }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularElasticSeachModule, decorators: [{
23
- type: NgModule,
24
- args: [{
25
- providers: [
26
- {
27
- provide: ProductsIndex,
28
- useFactory: (configuration) => new ProductsIndex(new AxiosAdapter(configuration)),
29
- deps: [ES_CONFIG],
30
- },
31
- ],
32
- }]
33
- }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1lbGFzdGljLXNlYXJjaC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL2FuZ3VsYXItZWxhc3RpYy1zZWFyY2gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQTRCLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXpGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7QUFZcEQsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQWlDO1FBQ3BELE9BQU87WUFDTCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7U0FDdkQsQ0FBQTtJQUNILENBQUM7OEdBTlUseUJBQXlCOytHQUF6Qix5QkFBeUI7K0dBQXpCLHlCQUF5QixhQVR6QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixVQUFVLEVBQUUsQ0FBQyxhQUF1QyxFQUFpQixFQUFFLENBQ3JFLElBQUksYUFBYSxDQUFDLElBQUksWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUNwRCxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUM7YUFDbEI7U0FDRjs7MkZBRVUseUJBQXlCO2tCQVZyQyxRQUFRO21CQUFDO29CQUNSLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsVUFBVSxFQUFFLENBQUMsYUFBdUMsRUFBaUIsRUFBRSxDQUNyRSxJQUFJLGFBQWEsQ0FBQyxJQUFJLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQzs0QkFDcEQsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO3lCQUNsQjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQXhpb3NBZGFwdGVyLCBBeGlvc0VsYXN0aWNTZWFyY2hDb25maWcsIFByb2R1Y3RzSW5kZXggfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcclxuXHJcbmltcG9ydCB7IEVTX0NPTkZJRyB9IGZyb20gJy4vY29uc3RzL2VzLWNvbmZpZy5jb25zdCdcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IFByb2R1Y3RzSW5kZXgsXHJcbiAgICAgIHVzZUZhY3Rvcnk6IChjb25maWd1cmF0aW9uOiBBeGlvc0VsYXN0aWNTZWFyY2hDb25maWcpOiBQcm9kdWN0c0luZGV4ID0+XHJcbiAgICAgICAgbmV3IFByb2R1Y3RzSW5kZXgobmV3IEF4aW9zQWRhcHRlcihjb25maWd1cmF0aW9uKSksXHJcbiAgICAgIGRlcHM6IFtFU19DT05GSUddLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhckVsYXN0aWNTZWFjaE1vZHVsZSB7XHJcbiAgc3RhdGljIGluaXRpYWxpemVBcHAob3B0aW9uczogQXhpb3NFbGFzdGljU2VhcmNoQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBbmd1bGFyRWxhc3RpY1NlYWNoTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQW5ndWxhckVsYXN0aWNTZWFjaE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBFU19DT05GSUcsIHVzZVZhbHVlOiBvcHRpb25zIH1dLFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,115 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { FirebaseApp } from '@angular/fire/app';
3
- import { Auth, getAuth, provideAuth } from '@angular/fire/auth';
4
- import { Authentication, AuthenticationFirebaseAuthService, RecoveryPassword, Register, RegisterFirebaseAuthService, SignOut, } from '@infrab4a/connect';
5
- import { FIREBASE_APP_NAME, FIREBASE_OPTIONS } from './consts';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/fire/auth";
8
- export class AngularFirebaseAuthModule {
9
- static initializeApp(options, nameOrConfig) {
10
- return {
11
- ngModule: AngularFirebaseAuthModule,
12
- providers: [
13
- { provide: FIREBASE_OPTIONS, useValue: options },
14
- { provide: FIREBASE_APP_NAME, useValue: nameOrConfig },
15
- ],
16
- };
17
- }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularFirebaseAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
19
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: AngularFirebaseAuthModule, imports: [i1.AuthModule] }); }
20
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularFirebaseAuthModule, providers: [
21
- {
22
- provide: 'Authentication',
23
- useFactory: (authenticationService, userRepository) => {
24
- return new Authentication(authenticationService, userRepository);
25
- },
26
- deps: ['AuthenticationService', 'UserRepository'],
27
- },
28
- {
29
- provide: 'AuthenticationService',
30
- useFactory: (angularFireAuth) => {
31
- return new AuthenticationFirebaseAuthService(angularFireAuth);
32
- },
33
- deps: [Auth],
34
- },
35
- {
36
- provide: 'Register',
37
- useFactory: (registerService, userRepository) => {
38
- return new Register(registerService, userRepository);
39
- },
40
- deps: ['RegisterService', 'UserRepository'],
41
- },
42
- {
43
- provide: 'RegisterService',
44
- useFactory: (angularFireAuth) => {
45
- return new RegisterFirebaseAuthService(angularFireAuth);
46
- },
47
- deps: [Auth],
48
- },
49
- {
50
- provide: 'SignOut',
51
- useFactory: (authenticationService) => {
52
- return new SignOut(authenticationService);
53
- },
54
- deps: ['AuthenticationService'],
55
- },
56
- {
57
- provide: 'RecoveryPassword',
58
- useFactory: (authenticationService) => {
59
- return new RecoveryPassword(authenticationService);
60
- },
61
- deps: ['AuthenticationService'],
62
- },
63
- ], imports: [provideAuth((injector) => getAuth(injector.get(FirebaseApp)))] }); }
64
- }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: AngularFirebaseAuthModule, decorators: [{
66
- type: NgModule,
67
- args: [{
68
- imports: [provideAuth((injector) => getAuth(injector.get(FirebaseApp)))],
69
- providers: [
70
- {
71
- provide: 'Authentication',
72
- useFactory: (authenticationService, userRepository) => {
73
- return new Authentication(authenticationService, userRepository);
74
- },
75
- deps: ['AuthenticationService', 'UserRepository'],
76
- },
77
- {
78
- provide: 'AuthenticationService',
79
- useFactory: (angularFireAuth) => {
80
- return new AuthenticationFirebaseAuthService(angularFireAuth);
81
- },
82
- deps: [Auth],
83
- },
84
- {
85
- provide: 'Register',
86
- useFactory: (registerService, userRepository) => {
87
- return new Register(registerService, userRepository);
88
- },
89
- deps: ['RegisterService', 'UserRepository'],
90
- },
91
- {
92
- provide: 'RegisterService',
93
- useFactory: (angularFireAuth) => {
94
- return new RegisterFirebaseAuthService(angularFireAuth);
95
- },
96
- deps: [Auth],
97
- },
98
- {
99
- provide: 'SignOut',
100
- useFactory: (authenticationService) => {
101
- return new SignOut(authenticationService);
102
- },
103
- deps: ['AuthenticationService'],
104
- },
105
- {
106
- provide: 'RecoveryPassword',
107
- useFactory: (authenticationService) => {
108
- return new RecoveryPassword(authenticationService);
109
- },
110
- deps: ['AuthenticationService'],
111
- },
112
- ],
113
- }]
114
- }] });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1maXJlYmFzZS1hdXRoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvYW5ndWxhci1maXJlYmFzZS1hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlDLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsV0FBVyxFQUFtQixNQUFNLG1CQUFtQixDQUFBO0FBQ2hFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQy9ELE9BQU8sRUFDTCxjQUFjLEVBQ2QsaUNBQWlDLEVBRWpDLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsMkJBQTJCLEVBRTNCLE9BQU8sR0FFUixNQUFNLG1CQUFtQixDQUFBO0FBRTFCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQTs7O0FBa0Q5RCxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLE1BQU0sQ0FBQyxhQUFhLENBQ2xCLE9BQXdCLEVBQ3hCLFlBQXlDO1FBRXpDLE9BQU87WUFDTCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFO2dCQUNoRCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFO2FBQ3ZEO1NBQ0YsQ0FBQTtJQUNILENBQUM7OEdBWlUseUJBQXlCOytHQUF6Qix5QkFBeUI7K0dBQXpCLHlCQUF5QixhQTdDekI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixVQUFVLEVBQUUsQ0FBQyxxQkFBNEMsRUFBRSxjQUE4QixFQUFrQixFQUFFO29CQUMzRyxPQUFPLElBQUksY0FBYyxDQUFDLHFCQUFxQixFQUFF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QUFPLElBQUksMkJBQTJCLENBQUMsZUFBZSxDQUFDLENBQUE7NEJBQ3pELENBQUM7NEJBQ0QsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDO3lCQUNiO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxTQUFTOzRCQUNsQixVQUFVLEVBQUUsQ0FBQyxxQkFBNEMsRUFBVyxFQUFFO2dDQUNwRSxPQUFPLElBQUksT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUE7NEJBQzNDLENBQUM7NEJBQ0QsSUFBSSxFQUFFLENBQUMsdUJBQXVCLENBQUM7eUJBQ2hDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFVBQVUsRUFBRSxDQUFDLHFCQUE0QyxFQUFvQixFQUFFO2dDQUM3RSxPQUFPLElBQUksZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsQ0FBQTs0QkFDcEQsQ0FBQzs0QkFDRCxJQUFJLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzt5QkFDaEM7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RvciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBGaXJlYmFzZUFwcCwgRmlyZWJhc2VPcHRpb25zIH0gZnJvbSAnQGFuZ3VsYXIvZmlyZS9hcHAnXHJcbmltcG9ydCB7IEF1dGgsIGdldEF1dGgsIHByb3ZpZGVBdXRoIH0gZnJvbSAnQGFuZ3VsYXIvZmlyZS9hdXRoJ1xyXG5pbXBvcnQge1xyXG4gIEF1dGhlbnRpY2F0aW9uLFxyXG4gIEF1dGhlbnRpY2F0aW9uRmlyZWJhc2VBdXRoU2VydmljZSxcclxuICBBdXRoZW50aWNhdGlvblNlcnZpY2UsXHJcbiAgUmVjb3ZlcnlQYXNzd29yZCxcclxuICBSZWdpc3RlcixcclxuICBSZWdpc3RlckZpcmViYXNlQXV0aFNlcnZpY2UsXHJcbiAgUmVnaXN0ZXJTZXJ2aWNlLFxyXG4gIFNpZ25PdXQsXHJcbiAgVXNlclJlcG9zaXRvcnksXHJcbn0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBGSVJFQkFTRV9BUFBfTkFNRSwgRklSRUJBU0VfT1BUSU9OUyB9IGZyb20gJy4vY29uc3RzJ1xyXG5pbXBvcnQgeyBGaXJlYmFzZUFwcENvbmZpZyB9IGZyb20gJy4vdHlwZXMnXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtwcm92aWRlQXV0aCgoaW5qZWN0b3I6IEluamVjdG9yKSA9PiBnZXRBdXRoKGluamVjdG9yLmdldChGaXJlYmFzZUFwcCkpKV0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdBdXRoZW50aWNhdGlvbicsXHJcbiAgICAgIHVzZUZhY3Rvcnk6IChhdXRoZW50aWNhdGlvblNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSwgdXNlclJlcG9zaXRvcnk6IFVzZXJSZXBvc2l0b3J5KTogQXV0aGVudGljYXRpb24gPT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgQXV0aGVudGljYXRpb24oYXV0aGVudGljYXRpb25TZXJ2aWNlLCB1c2VyUmVwb3NpdG9yeSlcclxuICAgICAgfSxcclxuICAgICAgZGVwczogWydBdXRoZW50aWNhdGlvblNlcnZpY2UnLCAnVXNlclJlcG9zaXRvcnknXSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdBdXRoZW50aWNhdGlvblNlcnZpY2UnLFxyXG4gICAgICB1c2VGYWN0b3J5OiAoYW5ndWxhckZpcmVBdXRoOiBBdXRoKTogQXV0aGVudGljYXRpb25TZXJ2aWNlID0+IHtcclxuICAgICAgICByZXR1cm4gbmV3IEF1dGhlbnRpY2F0aW9uRmlyZWJhc2VBdXRoU2VydmljZShhbmd1bGFyRmlyZUF1dGgpXHJcbiAgICAgIH0sXHJcbiAgICAgIGRlcHM6IFtBdXRoXSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdSZWdpc3RlcicsXHJcbiAgICAgIHVzZUZhY3Rvcnk6IChyZWdpc3RlclNlcnZpY2U6IFJlZ2lzdGVyU2VydmljZSwgdXNlclJlcG9zaXRvcnk6IFVzZXJSZXBvc2l0b3J5KTogUmVnaXN0ZXIgPT4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUmVnaXN0ZXIocmVnaXN0ZXJTZXJ2aWNlLCB1c2VyUmVwb3NpdG9yeSlcclxuICAgICAgfSxcclxuICAgICAgZGVwczogWydSZWdpc3RlclNlcnZpY2UnLCAnVXNlclJlcG9zaXRvcnknXSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdSZWdpc3RlclNlcnZpY2UnLFxyXG4gICAgICB1c2VGYWN0b3J5OiAoYW5ndWxhckZpcmVBdXRoOiBBdXRoKTogUmVnaXN0ZXJTZXJ2aWNlID0+IHtcclxuICAgICAgICByZXR1cm4gbmV3IFJlZ2lzdGVyRmlyZWJhc2VBdXRoU2VydmljZShhbmd1bGFyRmlyZUF1dGgpXHJcbiAgICAgIH0sXHJcbiAgICAgIGRlcHM6IFtBdXRoXSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdTaWduT3V0JyxcclxuICAgICAgdXNlRmFjdG9yeTogKGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlKTogU2lnbk91dCA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBTaWduT3V0KGF1dGhlbnRpY2F0aW9uU2VydmljZSlcclxuICAgICAgfSxcclxuICAgICAgZGVwczogWydBdXRoZW50aWNhdGlvblNlcnZpY2UnXSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6ICdSZWNvdmVyeVBhc3N3b3JkJyxcclxuICAgICAgdXNlRmFjdG9yeTogKGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlKTogUmVjb3ZlcnlQYXNzd29yZCA9PiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBSZWNvdmVyeVBhc3N3b3JkKGF1dGhlbnRpY2F0aW9uU2VydmljZSlcclxuICAgICAgfSxcclxuICAgICAgZGVwczogWydBdXRoZW50aWNhdGlvblNlcnZpY2UnXSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJGaXJlYmFzZUF1dGhNb2R1bGUge1xyXG4gIHN0YXRpYyBpbml0aWFsaXplQXBwKFxyXG4gICAgb3B0aW9uczogRmlyZWJhc2VPcHRpb25zLFxyXG4gICAgbmFtZU9yQ29uZmlnPzogc3RyaW5nIHwgRmlyZWJhc2VBcHBDb25maWcsXHJcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBbmd1bGFyRmlyZWJhc2VBdXRoTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQW5ndWxhckZpcmViYXNlQXV0aE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBGSVJFQkFTRV9PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogRklSRUJBU0VfQVBQX05BTUUsIHVzZVZhbHVlOiBuYW1lT3JDb25maWcgfSxcclxuICAgICAgXSxcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19