@tuki-io/tuki-widgets 0.0.191 → 0.0.193

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 (178) hide show
  1. package/README.md +24 -24
  2. package/esm2020/contact-center/cc-readiness/cc-readiness.module.mjs +1 -1
  3. package/esm2020/contact-center/cc-readiness/cc-readiness.service.mjs +1 -1
  4. package/esm2020/contact-center/cc-readiness/widgets/licences-requirement/licences-requirement.component.mjs +3 -3
  5. package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +3 -3
  6. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +2 -2
  7. package/esm2020/di2mt/widgets/upgrade-overview/cards/pending-activation-users/pending-activation-users.component.mjs +17 -17
  8. package/esm2020/lib/widgets.component.mjs +9 -9
  9. package/esm2020/lib/widgets.module.mjs +1 -1
  10. package/esm2020/lib/widgets.service.mjs +1 -1
  11. package/esm2020/public-api.mjs +1 -1
  12. package/esm2020/user-creation/src/app.constants.mjs +9 -2
  13. package/esm2020/user-creation/src/classes/notification.mjs +1 -1
  14. package/esm2020/user-creation/src/classes/site.mjs +1 -1
  15. package/esm2020/user-creation/src/environments/environment.mjs +1 -1
  16. package/esm2020/user-creation/src/interfaces/user-creation-wizard.interfaces.mjs +19 -0
  17. package/esm2020/user-creation/src/shared/components/notification/notification.component.mjs +3 -3
  18. package/esm2020/user-creation/src/shared/material.module.mjs +35 -7
  19. package/esm2020/user-creation/src/shared/pipes/truncate.pipe.mjs +1 -1
  20. package/esm2020/user-creation/src/shared/services/notification.service.mjs +1 -1
  21. package/esm2020/user-creation/src/shared/services/user-creation-api.service.mjs +42 -19
  22. package/esm2020/user-creation/src/shared/services/utils.mjs +1 -1
  23. package/esm2020/user-creation/src/user-creation.module.mjs +4 -1
  24. package/esm2020/user-creation/src/utils/app-loader/app-loader.mjs +14 -0
  25. package/esm2020/user-creation/src/utils/build-savable-end-user.mjs +147 -0
  26. package/esm2020/user-creation/src/utils/validation.mjs +14 -0
  27. package/esm2020/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.mjs +429 -20
  28. package/esm2020/user-creation/src/widgets/user-creation-wizard/components/user-overview-step/user-overview-step.component.mjs +3 -3
  29. package/esm2020/user-creation/src/widgets/user-creation-wizard/components/user-template-step/user-template-step.component.mjs +80 -34
  30. package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.mjs +61 -11
  31. package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.service.mjs +509 -130
  32. package/esm2020/user-device-manage/public-api.mjs +1 -1
  33. package/esm2020/user-device-manage/src/app.constants.mjs +1 -1
  34. package/esm2020/user-device-manage/src/classes/device.mjs +1 -1
  35. package/esm2020/user-device-manage/src/classes/deviceProfile.mjs +1 -1
  36. package/esm2020/user-device-manage/src/classes/line-association-interface.mjs +1 -1
  37. package/esm2020/user-device-manage/src/classes/line-association.mjs +1 -1
  38. package/esm2020/user-device-manage/src/classes/line-call-info-display.mjs +1 -1
  39. package/esm2020/user-device-manage/src/classes/line-directory.mjs +1 -1
  40. package/esm2020/user-device-manage/src/classes/line.mjs +1 -1
  41. package/esm2020/user-device-manage/src/classes/notification.mjs +1 -1
  42. package/esm2020/user-device-manage/src/classes/recording-options.mjs +1 -1
  43. package/esm2020/user-device-manage/src/classes/simplified-user.mjs +1 -1
  44. package/esm2020/user-device-manage/src/classes/site-defaults.mjs +1 -1
  45. package/esm2020/user-device-manage/src/classes/translation-pattern.mjs +1 -1
  46. package/esm2020/user-device-manage/src/classes/types.mjs +1 -1
  47. package/esm2020/user-device-manage/src/common-functions.mjs +1 -1
  48. package/esm2020/user-device-manage/src/confirm-dialog/info-dialog.component.mjs +3 -3
  49. package/esm2020/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.mjs +3 -3
  50. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.mjs +3 -3
  51. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.mjs +3 -3
  52. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line.component.mjs +1 -1
  53. package/esm2020/user-device-manage/src/device-info/device-info.component.mjs +3 -3
  54. package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +2 -2
  55. package/esm2020/user-device-manage/src/environments/environment.mjs +1 -1
  56. package/esm2020/user-device-manage/src/interseptors/auth.interceptor.mjs +1 -1
  57. package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  58. package/esm2020/user-device-manage/src/material.module.mjs +1 -1
  59. package/esm2020/user-device-manage/src/notifications/notification.component.mjs +3 -3
  60. package/esm2020/user-device-manage/src/pipes/mac-address.pipe.mjs +1 -1
  61. package/esm2020/user-device-manage/src/services/api.service.mjs +1 -1
  62. package/esm2020/user-device-manage/src/services/device.service.mjs +1 -1
  63. package/esm2020/user-device-manage/src/services/dns.service.mjs +1 -1
  64. package/esm2020/user-device-manage/src/services/line.service.mjs +1 -1
  65. package/esm2020/user-device-manage/src/services/notification.service.mjs +1 -1
  66. package/esm2020/user-device-manage/src/services/removeKynFromIBM.service.mjs +1 -1
  67. package/esm2020/user-device-manage/src/services/site-settings.service.mjs +1 -1
  68. package/esm2020/user-device-manage/src/services/sorting-utils.service.mjs +1 -1
  69. package/esm2020/user-device-manage/src/services/user.service.mjs +1 -1
  70. package/esm2020/user-device-manage/src/services/utils.service.mjs +1 -1
  71. package/esm2020/user-device-manage/src/services/validation.service.mjs +1 -1
  72. package/esm2020/user-device-manage/src/shared/tk-page-section/page-section.component.mjs +1 -1
  73. package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +3 -3
  74. package/esm2020/user-manage/public-api.mjs +1 -1
  75. package/esm2020/user-manage/src/app.constants.mjs +1 -1
  76. package/esm2020/user-manage/src/classes/device.mjs +1 -1
  77. package/esm2020/user-manage/src/classes/line-association-interface.mjs +1 -1
  78. package/esm2020/user-manage/src/classes/line-association.mjs +1 -1
  79. package/esm2020/user-manage/src/classes/line-call-info-display.mjs +1 -1
  80. package/esm2020/user-manage/src/classes/line-directory.mjs +1 -1
  81. package/esm2020/user-manage/src/classes/line.mjs +1 -1
  82. package/esm2020/user-manage/src/classes/notification.mjs +1 -1
  83. package/esm2020/user-manage/src/classes/pagination.mjs +1 -1
  84. package/esm2020/user-manage/src/classes/recording-options.mjs +1 -1
  85. package/esm2020/user-manage/src/classes/simplified-user.mjs +1 -1
  86. package/esm2020/user-manage/src/classes/table-data.mjs +1 -1
  87. package/esm2020/user-manage/src/classes/translation-pattern.mjs +1 -1
  88. package/esm2020/user-manage/src/classes/user-list.mjs +1 -1
  89. package/esm2020/user-manage/src/common-functions.mjs +1 -1
  90. package/esm2020/user-manage/src/device-list/device-list.component.mjs +3 -3
  91. package/esm2020/user-manage/src/device-list/device-row/device-row.component.mjs +3 -3
  92. package/esm2020/user-manage/src/environments/environment.mjs +1 -1
  93. package/esm2020/user-manage/src/interseptors/auth.interceptor.mjs +1 -1
  94. package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  95. package/esm2020/user-manage/src/material.module.mjs +1 -1
  96. package/esm2020/user-manage/src/notifications/notification.component.mjs +3 -3
  97. package/esm2020/user-manage/src/removeKynFromIBM.service.mjs +1 -1
  98. package/esm2020/user-manage/src/services/api.service.mjs +1 -1
  99. package/esm2020/user-manage/src/services/dns.service.mjs +1 -1
  100. package/esm2020/user-manage/src/services/line.service.mjs +1 -1
  101. package/esm2020/user-manage/src/services/notification.service.mjs +1 -1
  102. package/esm2020/user-manage/src/services/removeKynFromIBM.service.mjs +1 -1
  103. package/esm2020/user-manage/src/services/site-settings.service.mjs +1 -1
  104. package/esm2020/user-manage/src/services/sorting-utils.service.mjs +1 -1
  105. package/esm2020/user-manage/src/services/user.service.mjs +1 -1
  106. package/esm2020/user-manage/src/services/utils.service.mjs +1 -1
  107. package/esm2020/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.mjs +3 -3
  108. package/esm2020/user-manage/src/user-info/user-info.component.mjs +3 -3
  109. package/esm2020/user-manage/src/user-manage-widget.component.mjs +2 -2
  110. package/esm2020/user-manage/src/user-manage.module.mjs +1 -1
  111. package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +3 -3
  112. package/esm2020/user-manage/src/utils/pagination/pagination.component.mjs +3 -3
  113. package/esm2020/users-list/public-api.mjs +1 -1
  114. package/esm2020/users-list/src/app.constants.mjs +1 -1
  115. package/esm2020/users-list/src/classes/app-location.mjs +1 -1
  116. package/esm2020/users-list/src/classes/device.mjs +1 -1
  117. package/esm2020/users-list/src/classes/line.mjs +1 -1
  118. package/esm2020/users-list/src/classes/move-user.mjs +1 -1
  119. package/esm2020/users-list/src/classes/notification.mjs +1 -1
  120. package/esm2020/users-list/src/classes/simlified-user.mjs +1 -1
  121. package/esm2020/users-list/src/classes/table-data.mjs +1 -1
  122. package/esm2020/users-list/src/classes/user-list.mjs +1 -1
  123. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.mjs +3 -3
  124. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.mjs +3 -3
  125. package/esm2020/users-list/src/move-user-wizard/move-user-wizard.component.mjs +3 -3
  126. package/esm2020/users-list/src/services/api-webex.service.mjs +1 -1
  127. package/esm2020/users-list/src/services/api.service.mjs +1 -1
  128. package/esm2020/users-list/src/services/dns.service.mjs +1 -1
  129. package/esm2020/users-list/src/services/events-communication.service.mjs +1 -1
  130. package/esm2020/users-list/src/services/notification.service.mjs +1 -1
  131. package/esm2020/users-list/src/services/removeKynFromIBM.service.mjs +1 -1
  132. package/esm2020/users-list/src/services/site-settings.service.mjs +1 -1
  133. package/esm2020/users-list/src/services/user.service.mjs +1 -1
  134. package/esm2020/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.mjs +3 -3
  135. package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +3 -3
  136. package/esm2020/users-list/src/utils/common-functions.mjs +1 -1
  137. package/esm2020/users-list/src/utils/utils.service.mjs +1 -1
  138. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  139. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  140. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +20 -20
  141. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  142. package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs +1448 -302
  143. package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
  144. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +18 -18
  145. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  146. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +18 -18
  147. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  148. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +10 -10
  149. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  150. package/fesm2015/tuki-io-tuki-widgets.mjs +8 -8
  151. package/fesm2015/tuki-io-tuki-widgets.mjs.map +1 -1
  152. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  153. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  154. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +20 -20
  155. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  156. package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs +1410 -289
  157. package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
  158. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +18 -18
  159. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  160. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +18 -18
  161. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  162. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +10 -10
  163. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  164. package/fesm2020/tuki-io-tuki-widgets.mjs +8 -8
  165. package/fesm2020/tuki-io-tuki-widgets.mjs.map +1 -1
  166. package/package.json +1 -1
  167. package/user-creation/src/app.constants.d.ts +7 -0
  168. package/user-creation/src/interfaces/user-creation-wizard.interfaces.d.ts +483 -0
  169. package/user-creation/src/shared/material.module.d.ts +5 -1
  170. package/user-creation/src/shared/services/user-creation-api.service.d.ts +8 -2
  171. package/user-creation/src/user-creation.module.d.ts +11 -10
  172. package/user-creation/src/utils/app-loader/app-loader.d.ts +6 -0
  173. package/user-creation/src/utils/build-savable-end-user.d.ts +23 -0
  174. package/user-creation/src/utils/validation.d.ts +4 -0
  175. package/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.d.ts +75 -7
  176. package/user-creation/src/widgets/user-creation-wizard/components/user-template-step/user-template-step.component.d.ts +11 -4
  177. package/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.d.ts +13 -0
  178. package/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.service.d.ts +57 -56
@@ -1,5 +1,8 @@
1
- import { Component, EventEmitter, inject, Input, Output, ViewEncapsulation } from '@angular/core';
1
+ import { Component, EventEmitter, inject, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
2
  import { APIService } from '../../shared/api/api.service';
3
+ import { UserDetailsStepComponent } from './components/user-details-step/user-details-step.component';
4
+ import { UserTemplateStepComponent } from './components/user-template-step/user-template-step.component';
5
+ import { UserCreationWizardService } from './user-creation-wizard.service';
3
6
  import * as i0 from "@angular/core";
4
7
  import * as i1 from "../../shared/services/notification.service";
5
8
  import * as i2 from "@angular/common";
@@ -9,15 +12,22 @@ import * as i5 from "./components/user-template-step/user-template-step.componen
9
12
  import * as i6 from "../../shared/components/notification/notification.component";
10
13
  import * as i7 from "./components/user-details-step/user-details-step.component";
11
14
  import * as i8 from "./components/user-overview-step/user-overview-step.component";
15
+ import * as i9 from "../../utils/app-loader/app-loader";
16
+ export const USER_CREATED_SUCCESSFLLY = 'User created successfully';
12
17
  export class UserCreationWizardComponent {
13
18
  constructor(notificationService) {
14
19
  this.notificationService = notificationService;
15
20
  this.apiService = inject(APIService);
21
+ this.userCreationWizardService = inject(UserCreationWizardService);
16
22
  this.title = 'Create User';
17
23
  this.cancel = new EventEmitter();
18
24
  this.submit = new EventEmitter();
19
25
  this.isSubmitting = false;
20
26
  this.submitTimerId = null;
27
+ this.selectedIndex = 0;
28
+ this.templateStepValid = false;
29
+ this.detailsStepValid = false;
30
+ this.isLoading = false;
21
31
  }
22
32
  ngOnInit() {
23
33
  this.apiService.token = this.token;
@@ -26,18 +36,35 @@ export class UserCreationWizardComponent {
26
36
  onCancel() {
27
37
  this.cancel.emit();
28
38
  }
39
+ onStepperNext(stepper) {
40
+ if (stepper.selectedIndex === 0) {
41
+ if (!this.templateStep?.isStepValid()) {
42
+ this.templateStep?.markStepTouched();
43
+ return;
44
+ }
45
+ }
46
+ if (stepper.selectedIndex === 1) {
47
+ if (!this.detailsStep?.isStepValid()) {
48
+ this.detailsStep?.markAllAsTouched();
49
+ return;
50
+ }
51
+ this.detailsStep?.syncToService();
52
+ }
53
+ stepper.next();
54
+ }
29
55
  onSubmit() {
30
56
  if (this.isSubmitting) {
31
57
  return;
32
58
  }
33
59
  this.isSubmitting = true;
34
- const delayMs = 3000 + Math.floor(Math.random() * 1001);
35
- this.submitTimerId = window.setTimeout(() => {
36
- this.isSubmitting = false;
37
- this.submitTimerId = null;
38
- this.notificationService.success('User created successfully!');
39
- this.submit.emit();
40
- }, delayMs);
60
+ // const delayMs = 3000 + Math.floor(Math.random() * 1001);
61
+ // this.submitTimerId = window.setTimeout(() => {
62
+ // this.isSubmitting = false;
63
+ // this.submitTimerId = null;
64
+ // this.notificationService.success('User created successfully!');
65
+ // this.submit.emit();
66
+ // }, delayMs);
67
+ this._saveChanges();
41
68
  }
42
69
  ngOnDestroy() {
43
70
  if (this.submitTimerId) {
@@ -45,12 +72,29 @@ export class UserCreationWizardComponent {
45
72
  this.submitTimerId = null;
46
73
  }
47
74
  }
75
+ _saveChanges() {
76
+ this.isLoading = true;
77
+ this.userCreationWizardService.saveNewUser()
78
+ .subscribe((res) => {
79
+ this.isLoading = false;
80
+ this.isSubmitting = false;
81
+ this.notificationService.success('User created successfully!');
82
+ this.submit.emit();
83
+ }, (error) => {
84
+ this.isLoading = false;
85
+ this.isSubmitting = false;
86
+ if (typeof error === 'string' && error.indexOf(USER_CREATED_SUCCESSFLLY) > -1) {
87
+ this.notificationService.success('User created successfully!');
88
+ this.submit.emit();
89
+ }
90
+ });
91
+ }
48
92
  }
49
93
  UserCreationWizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserCreationWizardComponent, deps: [{ token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Component });
50
- UserCreationWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UserCreationWizardComponent, selector: "tk-user-creation-wizard", inputs: { title: "title", host: "host", token: "token", customerId: "customerId" }, outputs: { cancel: "cancel", submit: "submit" }, ngImport: i0, template: "<app-notification></app-notification>\n\n<div class=\"move-user-stepper-container\" [attr.aria-busy]=\"isSubmitting\">\n <header class=\"move-user-header\">\n <div class=\"move-user-header__title\">{{ title }}</div>\n <div class=\"move-user-header__close\">\n <span class=\"app-icon user-creation-close-icon\" (click)=\"onCancel()\"></span>\n </div>\n </header>\n\n <div id=\"user-creation-stepper\">\n <mat-stepper [linear]=\"false\" labelPosition=\"bottom\" #stepper>\n <mat-step>\n <div class=\"step-title\">Step 1: User creation with template</div>\n <ng-template matStepLabel>User creation</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-template-step [customerId]=\"customerId\"></tk-user-template-step>\n </div>\n </mat-step>\n\n <mat-step>\n <div class=\"step-title\">Step 2 : User details</div>\n <ng-template matStepLabel>User details</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-details-step></tk-user-details-step>\n </div>\n </mat-step>\n\n <mat-step>\n <div class=\"step-title\">Step 3: Review</div>\n <ng-template matStepLabel>Review</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-overview-step></tk-user-overview-step>\n </div>\n </mat-step>\n </mat-stepper>\n\n <div class=\"wizard-actions\">\n <ng-container [ngSwitch]=\"stepper.selectedIndex\">\n <ng-container *ngSwitchCase=\"0\">\n <button mat-button class=\"uc-btn uc-btn-primary\" type=\"button\" (click)=\"stepper.next()\">\n Next\n </button>\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"onCancel()\">\n Cancel\n </button>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"1\">\n <button mat-button class=\"uc-btn uc-btn-primary\" type=\"button\" (click)=\"stepper.next()\">\n Next\n </button>\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"stepper.previous()\">\n Previous\n </button>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"2\">\n <button\n mat-button\n class=\"uc-btn uc-btn-primary\"\n type=\"button\"\n [disabled]=\"isSubmitting\"\n (click)=\"onSubmit()\"\n >\n <span class=\"uc-btn__inline-content\">\n <span class=\"uc-btn__spinner\" *ngIf=\"isSubmitting\" aria-hidden=\"true\"></span>\n <span>{{ isSubmitting ? 'Creating...' : 'Create' }}</span>\n </span>\n </button>\n <button\n mat-button\n class=\"uc-btn uc-btn-secondary\"\n type=\"button\"\n [disabled]=\"isSubmitting\"\n (click)=\"stepper.previous()\"\n >\n Previous\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <div class=\"wizard-loading-overlay\" [class.wizard-loading-overlay--visible]=\"isSubmitting\" aria-hidden=\"true\"></div>\n</div>", styles: [".move-user-stepper-container{background-color:#f3f3f3;padding:0 0 16px;position:relative;overflow:hidden}.move-user-header{background-color:#1170cf;height:45px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:18px;font-weight:500}.move-user-header__close{cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.move-user-header__close i{font-size:25px;font-weight:100}.app-icon{height:20px;width:20px;display:block;cursor:pointer;background-repeat:no-repeat;background-position:center}.user-creation-close-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M13.0606 11.9998L19.2803 5.78001C19.35 5.71038 19.4052 5.6277 19.4429 5.53672C19.4806 5.44573 19.5 5.34822 19.5 5.24974C19.5 5.15126 19.4806 5.05374 19.4429 4.96276C19.4052 4.87177 19.3499 4.7891 19.2803 4.71947C19.2107 4.64983 19.128 4.5946 19.037 4.55691C18.946 4.51923 18.8485 4.49983 18.75 4.49983C18.6515 4.49984 18.554 4.51924 18.463 4.55692C18.3721 4.59461 18.2894 4.64985 18.2198 4.71949L12 10.9392L5.78026 4.71949C5.71077 4.64921 5.62807 4.59335 5.53691 4.55514C5.44576 4.51692 5.34795 4.49711 5.24911 4.49683C5.15027 4.49655 5.05235 4.51581 4.96098 4.55351C4.86961 4.59121 4.78659 4.64659 4.7167 4.71648C4.64681 4.78638 4.59143 4.8694 4.55374 4.96077C4.51605 5.05214 4.49679 5.15006 4.49707 5.2489C4.49736 5.34774 4.51718 5.44555 4.5554 5.5367C4.59361 5.62786 4.64947 5.71055 4.71976 5.78004L10.9395 11.9998L4.71976 18.2195C4.65013 18.2892 4.59489 18.3718 4.5572 18.4628C4.51951 18.5538 4.50011 18.6513 4.50011 18.7498C4.50011 18.8483 4.51951 18.9458 4.5572 19.0368C4.59488 19.1278 4.65012 19.2105 4.71976 19.2801C4.7894 19.3497 4.87207 19.405 4.96305 19.4427C5.05403 19.4803 5.15155 19.4997 5.25003 19.4997C5.34851 19.4997 5.44603 19.4803 5.53701 19.4427C5.628 19.405 5.71067 19.3497 5.78031 19.2801L12.0001 13.0603L18.2198 19.2801C18.3604 19.4207 18.5512 19.4997 18.7501 19.4997C18.949 19.4997 19.1397 19.4207 19.2804 19.2801C19.421 19.1395 19.5 18.9487 19.5 18.7498C19.5 18.5509 19.421 18.3602 19.2804 18.2195L13.0606 11.9998Z%22 fill%3D%22white%22 fill-opacity%3D%220.95%22%2F%3E%3C%2Fsvg%3E\");background-size:20px 20px}#user-creation-stepper{display:flex;flex-direction:column;width:100%}#user-creation-stepper .mat-stepper-horizontal{margin:0 auto;width:100%;background-color:transparent}#user-creation-stepper .mat-horizontal-stepper-header-container{margin:0 auto;width:800px}#user-creation-stepper .mat-step-icon{width:28px;height:28px;border:3px solid hsl(0,0%,50.2%)}#user-creation-stepper .mat-step-icon-selected{background-color:#c6c6c6!important;border-color:#19487d}#user-creation-stepper .mat-step-icon-state-number{background-color:#fff}#user-creation-stepper .mat-step-icon-state-edit,#user-creation-stepper .mat-step-header .mat-step-icon-state-done{background-color:#1170cf;border-color:#1170cf}#user-creation-stepper .mat-step-icon-content{display:none}#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):before,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):before,#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):after,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):after{border-top-width:3px!important}#user-creation-stepper .mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header:after,#user-creation-stepper .mat-stepper-horizontal-line{border-top-color:#1170cf!important;border-top-width:3px!important;border-top-style:solid!important}#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-stepper-horizontal-line,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:after{border-top-width:3px!important;background-color:#7b7b7b!important;border-top-color:#7b7b7b!important}#user-creation-stepper .mat-horizontal-content-container{padding:0!important;margin-top:3rem}#user-creation-stepper .mat-horizontal-stepper-content[aria-expanded=true]{padding-bottom:0}.step-title{font-size:26px;font-weight:500;width:70%;margin:0 auto 1rem;min-height:32px;display:flex;align-items:center}.wizard-actions{display:flex;flex-flow:row-reverse;justify-content:flex-start;align-items:center;margin:16px 16px 0 0;align-self:flex-end;gap:1rem;position:relative;z-index:30}.uc-btn{border-radius:50px!important;padding:8px 16px!important;min-width:80px!important;line-height:normal!important;cursor:pointer}.uc-btn__inline-content{display:inline-flex;align-items:center;gap:8px}.uc-btn__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:uc-btn-spin .7s linear infinite}@keyframes uc-btn-spin{to{transform:rotate(360deg)}}.uc-btn-primary{background-color:#000!important;color:#fff!important;border:1px solid black!important}.uc-btn-secondary{background-color:#fff!important;color:#000!important;border:1px solid black!important}.move-user-tab-content-box{width:70%;margin:0 auto;background-color:#fff;min-height:350px;border:1px solid #C3C1C1;border-radius:8px;box-sizing:border-box;padding:25px}.wizard-loading-overlay{position:absolute;inset:0;background:rgba(243,243,243,.72);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.wizard-loading-overlay--visible{opacity:1;pointer-events:auto}.mat-button-disabled{background-color:#bbb;color:#fff;border:1px solid grey;cursor:default!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "component", type: i5.UserTemplateStepComponent, selector: "tk-user-template-step", inputs: ["customerId"] }, { kind: "component", type: i6.NotificationsComponent, selector: "app-notification" }, { kind: "component", type: i7.UserDetailsStepComponent, selector: "tk-user-details-step" }, { kind: "component", type: i8.UserOverviewStepComponent, selector: "tk-user-overview-step" }], encapsulation: i0.ViewEncapsulation.None });
94
+ UserCreationWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UserCreationWizardComponent, selector: "tk-user-creation-wizard", inputs: { title: "title", host: "host", token: "token", customerId: "customerId" }, outputs: { cancel: "cancel", submit: "submit" }, viewQueries: [{ propertyName: "templateStep", first: true, predicate: UserTemplateStepComponent, descendants: true }, { propertyName: "detailsStep", first: true, predicate: UserDetailsStepComponent, descendants: true }], ngImport: i0, template: "<app-notification></app-notification>\r\n<app-loader *ngIf=\"isLoading\"></app-loader>\r\n<div class=\"move-user-stepper-container\" [attr.aria-busy]=\"isSubmitting\">\r\n <header class=\"move-user-header\">\r\n <div class=\"move-user-header__title\">{{ title }}</div>\r\n <div class=\"move-user-header__close\">\r\n <span class=\"app-icon user-creation-close-icon\" (click)=\"onCancel()\"></span>\r\n </div>\r\n </header>\r\n\r\n <div id=\"user-creation-stepper\">\r\n <mat-stepper [linear]=\"false\" labelPosition=\"bottom\" #stepper\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectionChange)=\"selectedIndex = $event.selectedIndex\">\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 1: User creation with template</div>\r\n <ng-template matStepLabel>User creation</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 0\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-template-step\r\n [customerId]=\"customerId\"\r\n (validityChange)=\"templateStepValid = $event\"\r\n ></tk-user-template-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 2 : User details</div>\r\n <ng-template matStepLabel>User details</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 1\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-details-step (validityChange)=\"detailsStepValid = $event\"></tk-user-details-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 3: Review</div>\r\n <ng-template matStepLabel>Review</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 2\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-overview-step></tk-user-overview-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n\r\n <div class=\"wizard-actions\">\r\n <ng-container [ngSwitch]=\"stepper.selectedIndex\">\r\n <ng-container *ngSwitchCase=\"0\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"!templateStepValid\"\r\n (click)=\"onStepperNext(stepper)\"\r\n >\r\n Next\r\n </button>\r\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"1\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"!detailsStepValid\"\r\n (click)=\"onStepperNext(stepper)\"\r\n >\r\n Next\r\n </button>\r\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"stepper.previous()\">\r\n Previous\r\n </button>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"2\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"isSubmitting\"\r\n (click)=\"onSubmit()\"\r\n >\r\n <span class=\"uc-btn__inline-content\">\r\n <span class=\"uc-btn__spinner\" *ngIf=\"isSubmitting\" aria-hidden=\"true\"></span>\r\n <span>{{ isSubmitting ? 'Creating...' : 'Create' }}</span>\r\n </span>\r\n </button>\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-secondary\"\r\n type=\"button\"\r\n [disabled]=\"isSubmitting\"\r\n (click)=\"stepper.previous()\"\r\n >\r\n Previous\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"wizard-loading-overlay\" [class.wizard-loading-overlay--visible]=\"isSubmitting\" aria-hidden=\"true\"></div>\r\n</div>", styles: [".move-user-stepper-container{background-color:#f3f3f3;padding:0 0 16px;position:relative;overflow:hidden}.move-user-header{background-color:#1170cf;height:45px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:18px;font-weight:500}.move-user-header__close{cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.move-user-header__close i{font-size:25px;font-weight:100}.app-icon{height:20px;width:20px;display:block;cursor:pointer;background-repeat:no-repeat;background-position:center}.user-creation-close-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M13.0606 11.9998L19.2803 5.78001C19.35 5.71038 19.4052 5.6277 19.4429 5.53672C19.4806 5.44573 19.5 5.34822 19.5 5.24974C19.5 5.15126 19.4806 5.05374 19.4429 4.96276C19.4052 4.87177 19.3499 4.7891 19.2803 4.71947C19.2107 4.64983 19.128 4.5946 19.037 4.55691C18.946 4.51923 18.8485 4.49983 18.75 4.49983C18.6515 4.49984 18.554 4.51924 18.463 4.55692C18.3721 4.59461 18.2894 4.64985 18.2198 4.71949L12 10.9392L5.78026 4.71949C5.71077 4.64921 5.62807 4.59335 5.53691 4.55514C5.44576 4.51692 5.34795 4.49711 5.24911 4.49683C5.15027 4.49655 5.05235 4.51581 4.96098 4.55351C4.86961 4.59121 4.78659 4.64659 4.7167 4.71648C4.64681 4.78638 4.59143 4.8694 4.55374 4.96077C4.51605 5.05214 4.49679 5.15006 4.49707 5.2489C4.49736 5.34774 4.51718 5.44555 4.5554 5.5367C4.59361 5.62786 4.64947 5.71055 4.71976 5.78004L10.9395 11.9998L4.71976 18.2195C4.65013 18.2892 4.59489 18.3718 4.5572 18.4628C4.51951 18.5538 4.50011 18.6513 4.50011 18.7498C4.50011 18.8483 4.51951 18.9458 4.5572 19.0368C4.59488 19.1278 4.65012 19.2105 4.71976 19.2801C4.7894 19.3497 4.87207 19.405 4.96305 19.4427C5.05403 19.4803 5.15155 19.4997 5.25003 19.4997C5.34851 19.4997 5.44603 19.4803 5.53701 19.4427C5.628 19.405 5.71067 19.3497 5.78031 19.2801L12.0001 13.0603L18.2198 19.2801C18.3604 19.4207 18.5512 19.4997 18.7501 19.4997C18.949 19.4997 19.1397 19.4207 19.2804 19.2801C19.421 19.1395 19.5 18.9487 19.5 18.7498C19.5 18.5509 19.421 18.3602 19.2804 18.2195L13.0606 11.9998Z%22 fill%3D%22white%22 fill-opacity%3D%220.95%22%2F%3E%0D%3C%2Fsvg%3E%0D\");background-size:20px 20px}#user-creation-stepper{display:flex;flex-direction:column;width:100%}#user-creation-stepper .mat-stepper-horizontal{margin:0 auto;width:100%;background-color:transparent}#user-creation-stepper .mat-horizontal-stepper-header-container{margin:0 auto;width:800px}#user-creation-stepper .mat-step-icon{width:28px;height:28px;border:3px solid hsl(0,0%,50.2%)}#user-creation-stepper .mat-step-icon-selected{background-color:#c6c6c6!important;border-color:#19487d}#user-creation-stepper .mat-step-icon-state-number{background-color:#fff}#user-creation-stepper .mat-step-icon-state-edit,#user-creation-stepper .mat-step-header .mat-step-icon-state-done{background-color:#1170cf;border-color:#1170cf}#user-creation-stepper .mat-step-icon-content{display:none}#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):before,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):before,#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):after,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):after{border-top-width:3px!important}#user-creation-stepper .mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header:after,#user-creation-stepper .mat-stepper-horizontal-line{border-top-color:#1170cf!important;border-top-width:3px!important;border-top-style:solid!important}#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-stepper-horizontal-line,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:after{border-top-width:3px!important;background-color:#7b7b7b!important;border-top-color:#7b7b7b!important}#user-creation-stepper .mat-horizontal-content-container{padding:0!important;margin-top:3rem}#user-creation-stepper .mat-horizontal-stepper-content[aria-expanded=true]{padding-bottom:0}.step-title{font-size:26px;font-weight:500;width:70%;margin:0 auto 1rem;min-height:32px;display:flex;align-items:center}.wizard-actions{display:flex;flex-flow:row-reverse;justify-content:flex-start;align-items:center;margin:16px 16px 0 0;align-self:flex-end;gap:1rem;position:relative;z-index:30}.uc-btn{border-radius:50px!important;padding:8px 16px!important;min-width:80px!important;line-height:normal!important;cursor:pointer}.uc-btn__inline-content{display:inline-flex;align-items:center;gap:8px}.uc-btn__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:uc-btn-spin .7s linear infinite}@keyframes uc-btn-spin{to{transform:rotate(360deg)}}.uc-btn-primary{background-color:#000!important;color:#fff!important;border:1px solid black!important}.uc-btn-secondary{background-color:#fff!important;color:#000!important;border:1px solid black!important}.move-user-tab-content-box{width:70%;margin:0 auto;background-color:#fff;min-height:350px;border:1px solid #C3C1C1;border-radius:8px;box-sizing:border-box;padding:25px}.wizard-loading-overlay{position:absolute;inset:0;background:rgba(243,243,243,.72);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.wizard-loading-overlay--visible{opacity:1;pointer-events:auto}.wizard-actions .uc-btn-primary.mat-button-disabled{background-color:#bbb;color:#fff;border:1px solid grey;cursor:default!important;opacity:.3}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "component", type: i5.UserTemplateStepComponent, selector: "tk-user-template-step", inputs: ["customerId"], outputs: ["validityChange"] }, { kind: "component", type: i6.NotificationsComponent, selector: "app-notification" }, { kind: "component", type: i7.UserDetailsStepComponent, selector: "tk-user-details-step", outputs: ["validityChange"] }, { kind: "component", type: i8.UserOverviewStepComponent, selector: "tk-user-overview-step" }, { kind: "component", type: i9.AppLoaderComponent, selector: "app-loader" }], encapsulation: i0.ViewEncapsulation.None });
51
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserCreationWizardComponent, decorators: [{
52
96
  type: Component,
53
- args: [{ selector: 'tk-user-creation-wizard', encapsulation: ViewEncapsulation.None, template: "<app-notification></app-notification>\n\n<div class=\"move-user-stepper-container\" [attr.aria-busy]=\"isSubmitting\">\n <header class=\"move-user-header\">\n <div class=\"move-user-header__title\">{{ title }}</div>\n <div class=\"move-user-header__close\">\n <span class=\"app-icon user-creation-close-icon\" (click)=\"onCancel()\"></span>\n </div>\n </header>\n\n <div id=\"user-creation-stepper\">\n <mat-stepper [linear]=\"false\" labelPosition=\"bottom\" #stepper>\n <mat-step>\n <div class=\"step-title\">Step 1: User creation with template</div>\n <ng-template matStepLabel>User creation</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-template-step [customerId]=\"customerId\"></tk-user-template-step>\n </div>\n </mat-step>\n\n <mat-step>\n <div class=\"step-title\">Step 2 : User details</div>\n <ng-template matStepLabel>User details</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-details-step></tk-user-details-step>\n </div>\n </mat-step>\n\n <mat-step>\n <div class=\"step-title\">Step 3: Review</div>\n <ng-template matStepLabel>Review</ng-template>\n\n <div class=\"move-user-tab-content-box\">\n <tk-user-overview-step></tk-user-overview-step>\n </div>\n </mat-step>\n </mat-stepper>\n\n <div class=\"wizard-actions\">\n <ng-container [ngSwitch]=\"stepper.selectedIndex\">\n <ng-container *ngSwitchCase=\"0\">\n <button mat-button class=\"uc-btn uc-btn-primary\" type=\"button\" (click)=\"stepper.next()\">\n Next\n </button>\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"onCancel()\">\n Cancel\n </button>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"1\">\n <button mat-button class=\"uc-btn uc-btn-primary\" type=\"button\" (click)=\"stepper.next()\">\n Next\n </button>\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"stepper.previous()\">\n Previous\n </button>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"2\">\n <button\n mat-button\n class=\"uc-btn uc-btn-primary\"\n type=\"button\"\n [disabled]=\"isSubmitting\"\n (click)=\"onSubmit()\"\n >\n <span class=\"uc-btn__inline-content\">\n <span class=\"uc-btn__spinner\" *ngIf=\"isSubmitting\" aria-hidden=\"true\"></span>\n <span>{{ isSubmitting ? 'Creating...' : 'Create' }}</span>\n </span>\n </button>\n <button\n mat-button\n class=\"uc-btn uc-btn-secondary\"\n type=\"button\"\n [disabled]=\"isSubmitting\"\n (click)=\"stepper.previous()\"\n >\n Previous\n </button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <div class=\"wizard-loading-overlay\" [class.wizard-loading-overlay--visible]=\"isSubmitting\" aria-hidden=\"true\"></div>\n</div>", styles: [".move-user-stepper-container{background-color:#f3f3f3;padding:0 0 16px;position:relative;overflow:hidden}.move-user-header{background-color:#1170cf;height:45px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:18px;font-weight:500}.move-user-header__close{cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.move-user-header__close i{font-size:25px;font-weight:100}.app-icon{height:20px;width:20px;display:block;cursor:pointer;background-repeat:no-repeat;background-position:center}.user-creation-close-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M13.0606 11.9998L19.2803 5.78001C19.35 5.71038 19.4052 5.6277 19.4429 5.53672C19.4806 5.44573 19.5 5.34822 19.5 5.24974C19.5 5.15126 19.4806 5.05374 19.4429 4.96276C19.4052 4.87177 19.3499 4.7891 19.2803 4.71947C19.2107 4.64983 19.128 4.5946 19.037 4.55691C18.946 4.51923 18.8485 4.49983 18.75 4.49983C18.6515 4.49984 18.554 4.51924 18.463 4.55692C18.3721 4.59461 18.2894 4.64985 18.2198 4.71949L12 10.9392L5.78026 4.71949C5.71077 4.64921 5.62807 4.59335 5.53691 4.55514C5.44576 4.51692 5.34795 4.49711 5.24911 4.49683C5.15027 4.49655 5.05235 4.51581 4.96098 4.55351C4.86961 4.59121 4.78659 4.64659 4.7167 4.71648C4.64681 4.78638 4.59143 4.8694 4.55374 4.96077C4.51605 5.05214 4.49679 5.15006 4.49707 5.2489C4.49736 5.34774 4.51718 5.44555 4.5554 5.5367C4.59361 5.62786 4.64947 5.71055 4.71976 5.78004L10.9395 11.9998L4.71976 18.2195C4.65013 18.2892 4.59489 18.3718 4.5572 18.4628C4.51951 18.5538 4.50011 18.6513 4.50011 18.7498C4.50011 18.8483 4.51951 18.9458 4.5572 19.0368C4.59488 19.1278 4.65012 19.2105 4.71976 19.2801C4.7894 19.3497 4.87207 19.405 4.96305 19.4427C5.05403 19.4803 5.15155 19.4997 5.25003 19.4997C5.34851 19.4997 5.44603 19.4803 5.53701 19.4427C5.628 19.405 5.71067 19.3497 5.78031 19.2801L12.0001 13.0603L18.2198 19.2801C18.3604 19.4207 18.5512 19.4997 18.7501 19.4997C18.949 19.4997 19.1397 19.4207 19.2804 19.2801C19.421 19.1395 19.5 18.9487 19.5 18.7498C19.5 18.5509 19.421 18.3602 19.2804 18.2195L13.0606 11.9998Z%22 fill%3D%22white%22 fill-opacity%3D%220.95%22%2F%3E%3C%2Fsvg%3E\");background-size:20px 20px}#user-creation-stepper{display:flex;flex-direction:column;width:100%}#user-creation-stepper .mat-stepper-horizontal{margin:0 auto;width:100%;background-color:transparent}#user-creation-stepper .mat-horizontal-stepper-header-container{margin:0 auto;width:800px}#user-creation-stepper .mat-step-icon{width:28px;height:28px;border:3px solid hsl(0,0%,50.2%)}#user-creation-stepper .mat-step-icon-selected{background-color:#c6c6c6!important;border-color:#19487d}#user-creation-stepper .mat-step-icon-state-number{background-color:#fff}#user-creation-stepper .mat-step-icon-state-edit,#user-creation-stepper .mat-step-header .mat-step-icon-state-done{background-color:#1170cf;border-color:#1170cf}#user-creation-stepper .mat-step-icon-content{display:none}#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):before,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):before,#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):after,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):after{border-top-width:3px!important}#user-creation-stepper .mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header:after,#user-creation-stepper .mat-stepper-horizontal-line{border-top-color:#1170cf!important;border-top-width:3px!important;border-top-style:solid!important}#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-stepper-horizontal-line,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:after{border-top-width:3px!important;background-color:#7b7b7b!important;border-top-color:#7b7b7b!important}#user-creation-stepper .mat-horizontal-content-container{padding:0!important;margin-top:3rem}#user-creation-stepper .mat-horizontal-stepper-content[aria-expanded=true]{padding-bottom:0}.step-title{font-size:26px;font-weight:500;width:70%;margin:0 auto 1rem;min-height:32px;display:flex;align-items:center}.wizard-actions{display:flex;flex-flow:row-reverse;justify-content:flex-start;align-items:center;margin:16px 16px 0 0;align-self:flex-end;gap:1rem;position:relative;z-index:30}.uc-btn{border-radius:50px!important;padding:8px 16px!important;min-width:80px!important;line-height:normal!important;cursor:pointer}.uc-btn__inline-content{display:inline-flex;align-items:center;gap:8px}.uc-btn__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:uc-btn-spin .7s linear infinite}@keyframes uc-btn-spin{to{transform:rotate(360deg)}}.uc-btn-primary{background-color:#000!important;color:#fff!important;border:1px solid black!important}.uc-btn-secondary{background-color:#fff!important;color:#000!important;border:1px solid black!important}.move-user-tab-content-box{width:70%;margin:0 auto;background-color:#fff;min-height:350px;border:1px solid #C3C1C1;border-radius:8px;box-sizing:border-box;padding:25px}.wizard-loading-overlay{position:absolute;inset:0;background:rgba(243,243,243,.72);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.wizard-loading-overlay--visible{opacity:1;pointer-events:auto}.mat-button-disabled{background-color:#bbb;color:#fff;border:1px solid grey;cursor:default!important}\n"] }]
97
+ args: [{ selector: 'tk-user-creation-wizard', encapsulation: ViewEncapsulation.None, template: "<app-notification></app-notification>\r\n<app-loader *ngIf=\"isLoading\"></app-loader>\r\n<div class=\"move-user-stepper-container\" [attr.aria-busy]=\"isSubmitting\">\r\n <header class=\"move-user-header\">\r\n <div class=\"move-user-header__title\">{{ title }}</div>\r\n <div class=\"move-user-header__close\">\r\n <span class=\"app-icon user-creation-close-icon\" (click)=\"onCancel()\"></span>\r\n </div>\r\n </header>\r\n\r\n <div id=\"user-creation-stepper\">\r\n <mat-stepper [linear]=\"false\" labelPosition=\"bottom\" #stepper\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectionChange)=\"selectedIndex = $event.selectedIndex\">\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 1: User creation with template</div>\r\n <ng-template matStepLabel>User creation</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 0\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-template-step\r\n [customerId]=\"customerId\"\r\n (validityChange)=\"templateStepValid = $event\"\r\n ></tk-user-template-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 2 : User details</div>\r\n <ng-template matStepLabel>User details</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 1\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-details-step (validityChange)=\"detailsStepValid = $event\"></tk-user-details-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n\r\n <mat-step>\r\n <div class=\"step-title\">Step 3: Review</div>\r\n <ng-template matStepLabel>Review</ng-template>\r\n\r\n <ng-container *ngIf=\"selectedIndex === 2\">\r\n <div class=\"move-user-tab-content-box\">\r\n <tk-user-overview-step></tk-user-overview-step>\r\n </div>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n\r\n <div class=\"wizard-actions\">\r\n <ng-container [ngSwitch]=\"stepper.selectedIndex\">\r\n <ng-container *ngSwitchCase=\"0\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"!templateStepValid\"\r\n (click)=\"onStepperNext(stepper)\"\r\n >\r\n Next\r\n </button>\r\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"1\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"!detailsStepValid\"\r\n (click)=\"onStepperNext(stepper)\"\r\n >\r\n Next\r\n </button>\r\n <button mat-button class=\"uc-btn uc-btn-secondary\" type=\"button\" (click)=\"stepper.previous()\">\r\n Previous\r\n </button>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"2\">\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-primary\"\r\n type=\"button\"\r\n [disabled]=\"isSubmitting\"\r\n (click)=\"onSubmit()\"\r\n >\r\n <span class=\"uc-btn__inline-content\">\r\n <span class=\"uc-btn__spinner\" *ngIf=\"isSubmitting\" aria-hidden=\"true\"></span>\r\n <span>{{ isSubmitting ? 'Creating...' : 'Create' }}</span>\r\n </span>\r\n </button>\r\n <button\r\n mat-button\r\n class=\"uc-btn uc-btn-secondary\"\r\n type=\"button\"\r\n [disabled]=\"isSubmitting\"\r\n (click)=\"stepper.previous()\"\r\n >\r\n Previous\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"wizard-loading-overlay\" [class.wizard-loading-overlay--visible]=\"isSubmitting\" aria-hidden=\"true\"></div>\r\n</div>", styles: [".move-user-stepper-container{background-color:#f3f3f3;padding:0 0 16px;position:relative;overflow:hidden}.move-user-header{background-color:#1170cf;height:45px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:18px;font-weight:500}.move-user-header__close{cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.move-user-header__close i{font-size:25px;font-weight:100}.app-icon{height:20px;width:20px;display:block;cursor:pointer;background-repeat:no-repeat;background-position:center}.user-creation-close-icon{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0D%3Cpath d%3D%22M13.0606 11.9998L19.2803 5.78001C19.35 5.71038 19.4052 5.6277 19.4429 5.53672C19.4806 5.44573 19.5 5.34822 19.5 5.24974C19.5 5.15126 19.4806 5.05374 19.4429 4.96276C19.4052 4.87177 19.3499 4.7891 19.2803 4.71947C19.2107 4.64983 19.128 4.5946 19.037 4.55691C18.946 4.51923 18.8485 4.49983 18.75 4.49983C18.6515 4.49984 18.554 4.51924 18.463 4.55692C18.3721 4.59461 18.2894 4.64985 18.2198 4.71949L12 10.9392L5.78026 4.71949C5.71077 4.64921 5.62807 4.59335 5.53691 4.55514C5.44576 4.51692 5.34795 4.49711 5.24911 4.49683C5.15027 4.49655 5.05235 4.51581 4.96098 4.55351C4.86961 4.59121 4.78659 4.64659 4.7167 4.71648C4.64681 4.78638 4.59143 4.8694 4.55374 4.96077C4.51605 5.05214 4.49679 5.15006 4.49707 5.2489C4.49736 5.34774 4.51718 5.44555 4.5554 5.5367C4.59361 5.62786 4.64947 5.71055 4.71976 5.78004L10.9395 11.9998L4.71976 18.2195C4.65013 18.2892 4.59489 18.3718 4.5572 18.4628C4.51951 18.5538 4.50011 18.6513 4.50011 18.7498C4.50011 18.8483 4.51951 18.9458 4.5572 19.0368C4.59488 19.1278 4.65012 19.2105 4.71976 19.2801C4.7894 19.3497 4.87207 19.405 4.96305 19.4427C5.05403 19.4803 5.15155 19.4997 5.25003 19.4997C5.34851 19.4997 5.44603 19.4803 5.53701 19.4427C5.628 19.405 5.71067 19.3497 5.78031 19.2801L12.0001 13.0603L18.2198 19.2801C18.3604 19.4207 18.5512 19.4997 18.7501 19.4997C18.949 19.4997 19.1397 19.4207 19.2804 19.2801C19.421 19.1395 19.5 18.9487 19.5 18.7498C19.5 18.5509 19.421 18.3602 19.2804 18.2195L13.0606 11.9998Z%22 fill%3D%22white%22 fill-opacity%3D%220.95%22%2F%3E%0D%3C%2Fsvg%3E%0D\");background-size:20px 20px}#user-creation-stepper{display:flex;flex-direction:column;width:100%}#user-creation-stepper .mat-stepper-horizontal{margin:0 auto;width:100%;background-color:transparent}#user-creation-stepper .mat-horizontal-stepper-header-container{margin:0 auto;width:800px}#user-creation-stepper .mat-step-icon{width:28px;height:28px;border:3px solid hsl(0,0%,50.2%)}#user-creation-stepper .mat-step-icon-selected{background-color:#c6c6c6!important;border-color:#19487d}#user-creation-stepper .mat-step-icon-state-number{background-color:#fff}#user-creation-stepper .mat-step-icon-state-edit,#user-creation-stepper .mat-step-header .mat-step-icon-state-done{background-color:#1170cf;border-color:#1170cf}#user-creation-stepper .mat-step-icon-content{display:none}#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):before,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):before,#user-creation-stepper .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child):after,#user-creation-stepper [dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child):after{border-top-width:3px!important}#user-creation-stepper .mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header:after,#user-creation-stepper .mat-stepper-horizontal-line{border-top-color:#1170cf!important;border-top-width:3px!important;border-top-style:solid!important}#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-stepper-horizontal-line,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:before,#user-creation-stepper .mat-horizontal-stepper-header[aria-selected=true]~.mat-horizontal-stepper-header:after{border-top-width:3px!important;background-color:#7b7b7b!important;border-top-color:#7b7b7b!important}#user-creation-stepper .mat-horizontal-content-container{padding:0!important;margin-top:3rem}#user-creation-stepper .mat-horizontal-stepper-content[aria-expanded=true]{padding-bottom:0}.step-title{font-size:26px;font-weight:500;width:70%;margin:0 auto 1rem;min-height:32px;display:flex;align-items:center}.wizard-actions{display:flex;flex-flow:row-reverse;justify-content:flex-start;align-items:center;margin:16px 16px 0 0;align-self:flex-end;gap:1rem;position:relative;z-index:30}.uc-btn{border-radius:50px!important;padding:8px 16px!important;min-width:80px!important;line-height:normal!important;cursor:pointer}.uc-btn__inline-content{display:inline-flex;align-items:center;gap:8px}.uc-btn__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:uc-btn-spin .7s linear infinite}@keyframes uc-btn-spin{to{transform:rotate(360deg)}}.uc-btn-primary{background-color:#000!important;color:#fff!important;border:1px solid black!important}.uc-btn-secondary{background-color:#fff!important;color:#000!important;border:1px solid black!important}.move-user-tab-content-box{width:70%;margin:0 auto;background-color:#fff;min-height:350px;border:1px solid #C3C1C1;border-radius:8px;box-sizing:border-box;padding:25px}.wizard-loading-overlay{position:absolute;inset:0;background:rgba(243,243,243,.72);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.wizard-loading-overlay--visible{opacity:1;pointer-events:auto}.wizard-actions .uc-btn-primary.mat-button-disabled{background-color:#bbb;color:#fff;border:1px solid grey;cursor:default!important;opacity:.3}\n"] }]
54
98
  }], ctorParameters: function () { return [{ type: i1.NotificationService }]; }, propDecorators: { title: [{
55
99
  type: Input
56
100
  }], host: [{
@@ -63,5 +107,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
63
107
  type: Output
64
108
  }], submit: [{
65
109
  type: Output
110
+ }], templateStep: [{
111
+ type: ViewChild,
112
+ args: [UserTemplateStepComponent]
113
+ }], detailsStep: [{
114
+ type: ViewChild,
115
+ args: [UserDetailsStepComponent]
66
116
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3dpZGdldHMvdXNlci1jcmVhdGlvbi13aXphcmQvdXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3dpZGdldHMvdXNlci1jcmVhdGlvbi13aXphcmQvdXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7OztBQVMxRCxNQUFNLE9BQU8sMkJBQTJCO0lBY3RDLFlBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBYjNDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEMsVUFBSyxHQUFHLGFBQWEsQ0FBQztRQU1yQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNsQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUM1QyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNiLGtCQUFhLEdBQWtCLElBQUksQ0FBQztJQUVvQixDQUFDO0lBRWpFLFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBRXpCLE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQzFDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQzFCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsNEJBQTRCLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs7eUhBOUNVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLG9NQ1Z4QywycEdBd0ZNOzRGRDlFTywyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0UseUJBQXlCLGlCQUdwQixpQkFBaUIsQ0FBQyxJQUFJOzBHQUs1QixLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvYXBpL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ay11c2VyLWNyZWF0aW9uLXdpemFyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWNyZWF0aW9uLXdpemFyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VzZXItY3JlYXRpb24td2l6YXJkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVXNlckNyZWF0aW9uV2l6YXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVNlcnZpY2UgPSBpbmplY3QoQVBJU2VydmljZSk7XG5cbiAgQElucHV0KCkgdGl0bGUgPSAnQ3JlYXRlIFVzZXInO1xuICBcbiAgQElucHV0KCkgaG9zdCE6IHN0cmluZztcbiAgQElucHV0KCkgdG9rZW4hOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGN1c3RvbWVySWQhOiBudW1iZXI7XG5cbiAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgaXNTdWJtaXR0aW5nID0gZmFsc2U7XG4gIHByaXZhdGUgc3VibWl0VGltZXJJZDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFwaVNlcnZpY2UudG9rZW4gPSB0aGlzLnRva2VuO1xuICAgIHRoaXMuYXBpU2VydmljZS5hcGlVcmwgPSB0aGlzLmhvc3Q7XG4gIH1cblxuICBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNhbmNlbC5lbWl0KCk7XG4gIH1cblxuICBvblN1Ym1pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc1N1Ym1pdHRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzU3VibWl0dGluZyA9IHRydWU7XG5cbiAgICBjb25zdCBkZWxheU1zID0gMzAwMCArIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDEpO1xuICAgIHRoaXMuc3VibWl0VGltZXJJZCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaXNTdWJtaXR0aW5nID0gZmFsc2U7XG4gICAgICB0aGlzLnN1Ym1pdFRpbWVySWQgPSBudWxsO1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3MoJ1VzZXIgY3JlYXRlZCBzdWNjZXNzZnVsbHkhJyk7XG4gICAgICB0aGlzLnN1Ym1pdC5lbWl0KCk7XG4gICAgfSwgZGVsYXlNcyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdWJtaXRUaW1lcklkKSB7XG4gICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuc3VibWl0VGltZXJJZCk7XG4gICAgICB0aGlzLnN1Ym1pdFRpbWVySWQgPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIiwiPGFwcC1ub3RpZmljYXRpb24+PC9hcHAtbm90aWZpY2F0aW9uPlxuXG48ZGl2IGNsYXNzPVwibW92ZS11c2VyLXN0ZXBwZXItY29udGFpbmVyXCIgW2F0dHIuYXJpYS1idXN5XT1cImlzU3VibWl0dGluZ1wiPlxuICA8aGVhZGVyIGNsYXNzPVwibW92ZS11c2VyLWhlYWRlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItaGVhZGVyX190aXRsZVwiPnt7IHRpdGxlIH19PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIm1vdmUtdXNlci1oZWFkZXJfX2Nsb3NlXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImFwcC1pY29uIHVzZXItY3JlYXRpb24tY2xvc2UtaWNvblwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2hlYWRlcj5cblxuICA8ZGl2IGlkPVwidXNlci1jcmVhdGlvbi1zdGVwcGVyXCI+XG4gICAgPG1hdC1zdGVwcGVyIFtsaW5lYXJdPVwiZmFsc2VcIiBsYWJlbFBvc2l0aW9uPVwiYm90dG9tXCIgI3N0ZXBwZXI+XG4gICAgICA8bWF0LXN0ZXA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwLXRpdGxlXCI+U3RlcCAxOiBVc2VyIGNyZWF0aW9uIHdpdGggdGVtcGxhdGU8L2Rpdj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD5Vc2VyIGNyZWF0aW9uPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwibW92ZS11c2VyLXRhYi1jb250ZW50LWJveFwiPlxuICAgICAgICAgIDx0ay11c2VyLXRlbXBsYXRlLXN0ZXAgW2N1c3RvbWVySWRdPVwiY3VzdG9tZXJJZFwiPjwvdGstdXNlci10ZW1wbGF0ZS1zdGVwPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXN0ZXA+XG5cbiAgICAgIDxtYXQtc3RlcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtdGl0bGVcIj5TdGVwIDIgOiBVc2VyIGRldGFpbHM8L2Rpdj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD5Vc2VyIGRldGFpbHM8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItdGFiLWNvbnRlbnQtYm94XCI+XG4gICAgICAgICAgPHRrLXVzZXItZGV0YWlscy1zdGVwPjwvdGstdXNlci1kZXRhaWxzLXN0ZXA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtc3RlcD5cblxuICAgICAgPG1hdC1zdGVwPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC10aXRsZVwiPlN0ZXAgMzogUmV2aWV3PC9kaXY+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+UmV2aWV3PC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwibW92ZS11c2VyLXRhYi1jb250ZW50LWJveFwiPlxuICAgICAgICAgIDx0ay11c2VyLW92ZXJ2aWV3LXN0ZXA+PC90ay11c2VyLW92ZXJ2aWV3LXN0ZXA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtc3RlcD5cbiAgICA8L21hdC1zdGVwcGVyPlxuXG4gICAgPGRpdiBjbGFzcz1cIndpemFyZC1hY3Rpb25zXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzdGVwcGVyLnNlbGVjdGVkSW5kZXhcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMFwiPlxuICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjbGFzcz1cInVjLWJ0biB1Yy1idG4tcHJpbWFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic3RlcHBlci5uZXh0KClcIj5cbiAgICAgICAgICAgIE5leHRcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJ1Yy1idG4gdWMtYnRuLXNlY29uZGFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPlxuICAgICAgICAgICAgQ2FuY2VsXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIjFcIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJ1Yy1idG4gdWMtYnRuLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInN0ZXBwZXIubmV4dCgpXCI+XG4gICAgICAgICAgICBOZXh0XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1zZWNvbmRhcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInN0ZXBwZXIucHJldmlvdXMoKVwiPlxuICAgICAgICAgICAgUHJldmlvdXNcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMlwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzU3VibWl0dGluZ1wiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1Yy1idG5fX2lubGluZS1jb250ZW50XCI+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWMtYnRuX19zcGlubmVyXCIgKm5nSWY9XCJpc1N1Ym1pdHRpbmdcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IGlzU3VibWl0dGluZyA/ICdDcmVhdGluZy4uLicgOiAnQ3JlYXRlJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cInVjLWJ0biB1Yy1idG4tc2Vjb25kYXJ5XCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzU3VibWl0dGluZ1wiXG4gICAgICAgICAgICAoY2xpY2spPVwic3RlcHBlci5wcmV2aW91cygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBQcmV2aW91c1xuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwid2l6YXJkLWxvYWRpbmctb3ZlcmxheVwiIFtjbGFzcy53aXphcmQtbG9hZGluZy1vdmVybGF5LS12aXNpYmxlXT1cImlzU3VibWl0dGluZ1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZGl2PlxuPC9kaXY+Il19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3dpZGdldHMvdXNlci1jcmVhdGlvbi13aXphcmQvdXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3dpZGdldHMvdXNlci1jcmVhdGlvbi13aXphcmQvdXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoSSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFMUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDdEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7O0FBRTNFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLDJCQUEyQixDQUFDO0FBUXBFLE1BQU0sT0FBTywyQkFBMkI7SUF1QnRDLFlBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBdEIzQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLDhCQUF5QixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRXRFLFVBQUssR0FBRyxhQUFhLENBQUM7UUFNckIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbEMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDNUMsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDYixrQkFBYSxHQUFrQixJQUFJLENBQUM7UUFDNUMsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUtsQixjQUFTLEdBQUcsS0FBSyxDQUFDO0lBRXVDLENBQUM7SUFFakUsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGFBQWEsQ0FBQyxPQUFtQjtRQUMvQixJQUFJLE9BQU8sQ0FBQyxhQUFhLEtBQUssQ0FBQyxFQUFFO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFO2dCQUNyQyxJQUFJLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxDQUFDO2dCQUNyQyxPQUFPO2FBQ1I7U0FDRjtRQUVELElBQUksT0FBTyxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUU7WUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDckMsT0FBTzthQUNSO1lBQ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsQ0FBQztTQUNuQztRQUVELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUV6QiwyREFBMkQ7UUFDM0QsaURBQWlEO1FBQ2pELCtCQUErQjtRQUMvQiwrQkFBK0I7UUFDL0Isb0VBQW9FO1FBQ3BFLHdCQUF3QjtRQUN4QixlQUFlO1FBQ2YsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsRUFBRTthQUN6QyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDLENBQUM7WUFDL0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixDQUFDLEVBQUUsQ0FBQyxLQUF1QixFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUM3RSxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBQy9ELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDcEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O3lIQTdGVSwyQkFBMkI7NkdBQTNCLDJCQUEyQixrUEFrQjNCLHlCQUF5Qiw4RUFDekIsd0JBQXdCLGdEQ25DckMsNG9JQWdITTs0RkRoR08sMkJBQTJCO2tCQU52QyxTQUFTOytCQUNFLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSTswR0FNNUIsS0FBSztzQkFBYixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFFSSxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQU8rQixZQUFZO3NCQUFqRCxTQUFTO3VCQUFDLHlCQUF5QjtnQkFDQyxXQUFXO3NCQUEvQyxTQUFTO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFN0ZXBwZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9hcGkvYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlckRldGFpbHNTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXItZGV0YWlscy1zdGVwL3VzZXItZGV0YWlscy1zdGVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJUZW1wbGF0ZVN0ZXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci10ZW1wbGF0ZS1zdGVwL3VzZXItdGVtcGxhdGUtc3RlcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVc2VyQ3JlYXRpb25XaXphcmRTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWNyZWF0aW9uLXdpemFyZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjb25zdCBVU0VSX0NSRUFURURfU1VDQ0VTU0ZMTFkgPSAnVXNlciBjcmVhdGVkIHN1Y2Nlc3NmdWxseSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RrLXVzZXItY3JlYXRpb24td2l6YXJkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1jcmVhdGlvbi13aXphcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VzZXItY3JlYXRpb24td2l6YXJkLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlckNyZWF0aW9uV2l6YXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpU2VydmljZSA9IGluamVjdChBUElTZXJ2aWNlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHVzZXJDcmVhdGlvbldpemFyZFNlcnZpY2UgPSBpbmplY3QoVXNlckNyZWF0aW9uV2l6YXJkU2VydmljZSk7XHJcblxyXG4gIEBJbnB1dCgpIHRpdGxlID0gJ0NyZWF0ZSBVc2VyJztcclxuICBcclxuICBASW5wdXQoKSBob3N0ITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHRva2VuITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGN1c3RvbWVySWQhOiBudW1iZXI7XHJcblxyXG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBpc1N1Ym1pdHRpbmcgPSBmYWxzZTtcclxuICBwcml2YXRlIHN1Ym1pdFRpbWVySWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIHNlbGVjdGVkSW5kZXggPSAwO1xyXG4gIHRlbXBsYXRlU3RlcFZhbGlkID0gZmFsc2U7XHJcbiAgZGV0YWlsc1N0ZXBWYWxpZCA9IGZhbHNlO1xyXG5cclxuICBAVmlld0NoaWxkKFVzZXJUZW1wbGF0ZVN0ZXBDb21wb25lbnQpIHRlbXBsYXRlU3RlcD86IFVzZXJUZW1wbGF0ZVN0ZXBDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChVc2VyRGV0YWlsc1N0ZXBDb21wb25lbnQpIGRldGFpbHNTdGVwPzogVXNlckRldGFpbHNTdGVwQ29tcG9uZW50O1xyXG5cclxuICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLnRva2VuID0gdGhpcy50b2tlbjtcclxuICAgIHRoaXMuYXBpU2VydmljZS5hcGlVcmwgPSB0aGlzLmhvc3Q7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uU3RlcHBlck5leHQoc3RlcHBlcjogTWF0U3RlcHBlcik6IHZvaWQge1xyXG4gICAgaWYgKHN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9PT0gMCkge1xyXG4gICAgICBpZiAoIXRoaXMudGVtcGxhdGVTdGVwPy5pc1N0ZXBWYWxpZCgpKSB7XHJcbiAgICAgICAgdGhpcy50ZW1wbGF0ZVN0ZXA/Lm1hcmtTdGVwVG91Y2hlZCgpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdGVwcGVyLnNlbGVjdGVkSW5kZXggPT09IDEpIHtcclxuICAgICAgaWYgKCF0aGlzLmRldGFpbHNTdGVwPy5pc1N0ZXBWYWxpZCgpKSB7XHJcbiAgICAgICAgdGhpcy5kZXRhaWxzU3RlcD8ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmRldGFpbHNTdGVwPy5zeW5jVG9TZXJ2aWNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RlcHBlci5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlzU3VibWl0dGluZykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc1N1Ym1pdHRpbmcgPSB0cnVlO1xyXG5cclxuICAgIC8vIGNvbnN0IGRlbGF5TXMgPSAzMDAwICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMSk7XHJcbiAgICAvLyB0aGlzLnN1Ym1pdFRpbWVySWQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAvLyAgIHRoaXMuaXNTdWJtaXR0aW5nID0gZmFsc2U7XHJcbiAgICAvLyAgIHRoaXMuc3VibWl0VGltZXJJZCA9IG51bGw7XHJcbiAgICAvLyAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKCdVc2VyIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5IScpO1xyXG4gICAgLy8gICB0aGlzLnN1Ym1pdC5lbWl0KCk7XHJcbiAgICAvLyB9LCBkZWxheU1zKTtcclxuICAgIHRoaXMuX3NhdmVDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1Ym1pdFRpbWVySWQpIHtcclxuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLnN1Ym1pdFRpbWVySWQpO1xyXG4gICAgICB0aGlzLnN1Ym1pdFRpbWVySWQgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2F2ZUNoYW5nZXMoKSB7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnVzZXJDcmVhdGlvbldpemFyZFNlcnZpY2Uuc2F2ZU5ld1VzZXIoKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNTdWJtaXR0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3MoJ1VzZXIgY3JlYXRlZCBzdWNjZXNzZnVsbHkhJyk7XHJcbiAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCgpO1xyXG4gICAgICB9LCAoZXJyb3I6IHN0cmluZyB8IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNTdWJtaXR0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycgJiYgZXJyb3IuaW5kZXhPZihVU0VSX0NSRUFURURfU1VDQ0VTU0ZMTFkpID4gLTEpIHtcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKCdVc2VyIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5IScpO1xyXG4gICAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxhcHAtbm90aWZpY2F0aW9uPjwvYXBwLW5vdGlmaWNhdGlvbj5cclxuPGFwcC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIj48L2FwcC1sb2FkZXI+XHJcbjxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItc3RlcHBlci1jb250YWluZXJcIiBbYXR0ci5hcmlhLWJ1c3ldPVwiaXNTdWJtaXR0aW5nXCI+XHJcbiAgPGhlYWRlciBjbGFzcz1cIm1vdmUtdXNlci1oZWFkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItaGVhZGVyX190aXRsZVwiPnt7IHRpdGxlIH19PC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW92ZS11c2VyLWhlYWRlcl9fY2xvc2VcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJhcHAtaWNvbiB1c2VyLWNyZWF0aW9uLWNsb3NlLWljb25cIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPjwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvaGVhZGVyPlxyXG5cclxuICA8ZGl2IGlkPVwidXNlci1jcmVhdGlvbi1zdGVwcGVyXCI+XHJcbiAgICA8bWF0LXN0ZXBwZXIgW2xpbmVhcl09XCJmYWxzZVwiIGxhYmVsUG9zaXRpb249XCJib3R0b21cIiAjc3RlcHBlclxyXG4gICAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZEluZGV4XCJcclxuICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZWxlY3RlZEluZGV4ID0gJGV2ZW50LnNlbGVjdGVkSW5kZXhcIj5cclxuXHJcbiAgICAgIDxtYXQtc3RlcD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC10aXRsZVwiPlN0ZXAgMTogVXNlciBjcmVhdGlvbiB3aXRoIHRlbXBsYXRlPC9kaXY+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD5Vc2VyIGNyZWF0aW9uPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkSW5kZXggPT09IDBcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItdGFiLWNvbnRlbnQtYm94XCI+XHJcbiAgICAgICAgICAgIDx0ay11c2VyLXRlbXBsYXRlLXN0ZXBcclxuICAgICAgICAgICAgICBbY3VzdG9tZXJJZF09XCJjdXN0b21lcklkXCJcclxuICAgICAgICAgICAgICAodmFsaWRpdHlDaGFuZ2UpPVwidGVtcGxhdGVTdGVwVmFsaWQgPSAkZXZlbnRcIlxyXG4gICAgICAgICAgICA+PC90ay11c2VyLXRlbXBsYXRlLXN0ZXA+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtc3RlcD5cclxuXHJcbiAgICAgIDxtYXQtc3RlcD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC10aXRsZVwiPlN0ZXAgMiA6IFVzZXIgZGV0YWlsczwvZGl2PlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+VXNlciBkZXRhaWxzPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkSW5kZXggPT09IDFcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb3ZlLXVzZXItdGFiLWNvbnRlbnQtYm94XCI+XHJcbiAgICAgICAgICAgIDx0ay11c2VyLWRldGFpbHMtc3RlcCAodmFsaWRpdHlDaGFuZ2UpPVwiZGV0YWlsc1N0ZXBWYWxpZCA9ICRldmVudFwiPjwvdGstdXNlci1kZXRhaWxzLXN0ZXA+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtc3RlcD5cclxuXHJcbiAgICAgIDxtYXQtc3RlcD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC10aXRsZVwiPlN0ZXAgMzogUmV2aWV3PC9kaXY+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD5SZXZpZXc8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRJbmRleCA9PT0gMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1vdmUtdXNlci10YWItY29udGVudC1ib3hcIj5cclxuICAgICAgICAgICAgPHRrLXVzZXItb3ZlcnZpZXctc3RlcD48L3RrLXVzZXItb3ZlcnZpZXctc3RlcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L21hdC1zdGVwPlxyXG4gICAgPC9tYXQtc3RlcHBlcj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwid2l6YXJkLWFjdGlvbnNcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwic3RlcHBlci5zZWxlY3RlZEluZGV4XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMFwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBtYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhdGVtcGxhdGVTdGVwVmFsaWRcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdGVwcGVyTmV4dChzdGVwcGVyKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIE5leHRcclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1zZWNvbmRhcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj5cclxuICAgICAgICAgICAgQ2FuY2VsXHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMVwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBtYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZGV0YWlsc1N0ZXBWYWxpZFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblN0ZXBwZXJOZXh0KHN0ZXBwZXIpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgTmV4dFxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJ1Yy1idG4gdWMtYnRuLXNlY29uZGFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic3RlcHBlci5wcmV2aW91cygpXCI+XHJcbiAgICAgICAgICAgIFByZXZpb3VzXHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMlwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBtYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIGNsYXNzPVwidWMtYnRuIHVjLWJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1N1Ym1pdHRpbmdcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWMtYnRuX19pbmxpbmUtY29udGVudFwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWMtYnRuX19zcGlubmVyXCIgKm5nSWY9XCJpc1N1Ym1pdHRpbmdcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4+e3sgaXNTdWJtaXR0aW5nID8gJ0NyZWF0aW5nLi4uJyA6ICdDcmVhdGUnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgbWF0LWJ1dHRvblxyXG4gICAgICAgICAgICBjbGFzcz1cInVjLWJ0biB1Yy1idG4tc2Vjb25kYXJ5XCJcclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1N1Ym1pdHRpbmdcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic3RlcHBlci5wcmV2aW91cygpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgUHJldmlvdXNcclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwid2l6YXJkLWxvYWRpbmctb3ZlcmxheVwiIFtjbGFzcy53aXphcmQtbG9hZGluZy1vdmVybGF5LS12aXNpYmxlXT1cImlzU3VibWl0dGluZ1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZGl2PlxyXG48L2Rpdj4iXX0=