@bnsights/bbsf-admin-portal 1.0.0 → 1.0.5

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 (155) hide show
  1. package/bnsights-bbsf-admin-portal-1.0.5.tgz +0 -0
  2. package/bundles/bnsights-bbsf-admin-portal.umd.js +19694 -20386
  3. package/bundles/bnsights-bbsf-admin-portal.umd.js.map +1 -1
  4. package/esm2015/lib/Pages/_layout/components/aside/aside-menu/aside-menu.component.js +2 -2
  5. package/esm2015/lib/Pages/account/account-routing.module.js +3 -1
  6. package/esm2015/lib/Pages/account/account.component.js +15 -6
  7. package/esm2015/lib/Pages/account/account.module.js +16 -8
  8. package/esm2015/lib/Pages/account/forgot-password/forgot-password.component.js +48 -0
  9. package/esm2015/lib/Pages/configurations/configuration/configuration.component.js +392 -387
  10. package/esm2015/lib/Pages/core/authentication/auth.service.js +1 -2
  11. package/esm2015/lib/Pages/departments/department/department.component.js +59 -98
  12. package/esm2015/lib/Pages/departments/department-info/department-info.component.js +85 -94
  13. package/esm2015/lib/Pages/departments/departments.module.js +4 -1
  14. package/esm2015/lib/Pages/helpCenter/help-center/help-center.component.js +224 -223
  15. package/esm2015/lib/Pages/helpCenter/help-center-secondlevel/help-center-secondlevel.component.js +137 -146
  16. package/esm2015/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.js +136 -153
  17. package/esm2015/lib/Pages/home/home.component.js +32 -26
  18. package/esm2015/lib/Pages/home/home.module.js +5 -10
  19. package/esm2015/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.js +336 -317
  20. package/esm2015/lib/Pages/jobs/jobs/jobs.component.js +168 -227
  21. package/esm2015/lib/Pages/license/license/license.component.js +68 -99
  22. package/esm2015/lib/Pages/localizations/localizations.component.js +378 -341
  23. package/esm2015/lib/Pages/logs/log/log.component.js +18 -27
  24. package/esm2015/lib/Pages/lookups/lookup/lookup.component.js +297 -288
  25. package/esm2015/lib/Pages/lookups/lookup-group/lookup-group.component.js +143 -165
  26. package/esm2015/lib/Pages/lookups/lookup-item/lookup-item.component.js +234 -233
  27. package/esm2015/lib/Pages/lookups/lookups-routing.module.js +2 -2
  28. package/esm2015/lib/Pages/notifications/add/add.component.js +83 -76
  29. package/esm2015/lib/Pages/notifications/edit/edit.component.js +60 -63
  30. package/esm2015/lib/Pages/notifications/edit-email/edit-email.component.js +128 -126
  31. package/esm2015/lib/Pages/notifications/edit-sms/edit-sms.component.js +87 -85
  32. package/esm2015/lib/Pages/notifications/master-layouts/master-layouts.component.js +57 -58
  33. package/esm2015/lib/Pages/notifications/notifications-routing.module.js +1 -3
  34. package/esm2015/lib/Pages/notifications/notifications.module.js +3 -4
  35. package/esm2015/lib/Pages/notifications/template-info/template-info.component.js +232 -228
  36. package/esm2015/lib/Pages/notifications/templates/templates.component.js +347 -310
  37. package/esm2015/lib/Pages/providers/provider/provider.component.js +54 -52
  38. package/esm2015/lib/Pages/publicHolidays/public-holiday/public-holiday.component.js +268 -270
  39. package/esm2015/lib/Pages/roles/permission-set-info/permission-set-info.component.js +136 -152
  40. package/esm2015/lib/Pages/roles/permissions/permissions.component.js +182 -218
  41. package/esm2015/lib/Pages/roles/permissionsets/permissionsets.component.js +219 -254
  42. package/esm2015/lib/Pages/sectors/department-info/department-info.component.js +134 -142
  43. package/esm2015/lib/Pages/sectors/sector/sector.component.js +127 -144
  44. package/esm2015/lib/Pages/sectors/sector-info/sector-info.component.js +123 -139
  45. package/esm2015/lib/Pages/shared/Enums/ConfigurationScope.js +8 -0
  46. package/esm2015/lib/Pages/shared/Enums/ConfigurationType.js +8 -0
  47. package/esm2015/lib/Pages/shared/Enums/ConfigurationValueSource.js +6 -0
  48. package/esm2015/lib/Pages/shared/Enums/ParticipantType.js +8 -0
  49. package/esm2015/lib/Pages/shared/Services/AccountService.service.js +21 -0
  50. package/esm2015/lib/Pages/shared/Services/ConfigurationsService.service.js +15 -12
  51. package/esm2015/lib/Pages/shared/Services/DepartmentService.service.js +5 -8
  52. package/esm2015/lib/Pages/shared/Services/EmailHeaderAndFooterTemplateService.Service.js +10 -9
  53. package/esm2015/lib/Pages/shared/Services/HelpCenterService.service.js +10 -7
  54. package/esm2015/lib/Pages/shared/Services/ImpersonationRuleService.service.js +14 -8
  55. package/esm2015/lib/Pages/shared/Services/LicenseService.service.js +3 -3
  56. package/esm2015/lib/Pages/shared/Services/LogsService.js +1 -1
  57. package/esm2015/lib/Pages/shared/Services/LookupGroupsService.service.js +11 -5
  58. package/esm2015/lib/Pages/shared/Services/LookupService.service.js +31 -15
  59. package/esm2015/lib/Pages/shared/Services/PermissionSetService.service.js +18 -8
  60. package/esm2015/lib/Pages/shared/Services/PermissionsService.service.js +12 -9
  61. package/esm2015/lib/Pages/shared/Services/PublicHolidayService.service.js +9 -3
  62. package/esm2015/lib/Pages/shared/Services/SectorService.service.js +18 -13
  63. package/esm2015/lib/Pages/shared/Services/TemplateService.service.js +36 -29
  64. package/esm2015/lib/Pages/shared/Services/localizationsService.service .js +23 -13
  65. package/esm2015/lib/Pages/shared/Services/provider.service.js +5 -7
  66. package/esm2015/lib/Pages/shared/Services/userService.service.js +10 -2
  67. package/esm2015/lib/Pages/shared/models/AccountModels/forgotPasswordModel.js +6 -0
  68. package/esm2015/lib/Pages/shared/models/ConfigurationModels/ConfigurationModel.js +1 -1
  69. package/esm2015/lib/Pages/shared/models/DepartmentModels/DepartmentUsersIDRequestModel.js +1 -1
  70. package/esm2015/lib/Pages/shared/models/ImpersonationRuleModels/ImpersonationRuleModel.js +1 -1
  71. package/esm2015/lib/Pages/shared/models/Lookups/LookupItem.js +1 -1
  72. package/esm2015/lib/Pages/shared/models/Lookups/LookupModel.js +1 -2
  73. package/esm2015/lib/Pages/shared/models/PermissionsModels/PermissionSetUsersIDRequestModel.js +1 -1
  74. package/esm2015/lib/Pages/shared/models/SectorModels/SectorDepartmentModel.js +1 -1
  75. package/esm2015/lib/Pages/users/users.component.js +398 -409
  76. package/esm2015/lib/masterlayout-routing.module.js +5 -4
  77. package/esm2015/lib/masterlayout.component.js +22 -32
  78. package/esm2015/lib/masterlayout.module.js +25 -19
  79. package/fesm2015/bnsights-bbsf-admin-portal.js +17295 -17401
  80. package/fesm2015/bnsights-bbsf-admin-portal.js.map +1 -1
  81. package/lib/Pages/account/account.component.d.ts +5 -1
  82. package/lib/Pages/account/account.module.d.ts +8 -6
  83. package/lib/Pages/account/forgot-password/forgot-password.component.d.ts +20 -0
  84. package/lib/Pages/configurations/configuration/configuration.component.d.ts +39 -31
  85. package/lib/Pages/departments/department/department.component.d.ts +19 -15
  86. package/lib/Pages/departments/department-info/department-info.component.d.ts +31 -28
  87. package/lib/Pages/helpCenter/help-center/help-center.component.d.ts +34 -32
  88. package/lib/Pages/helpCenter/help-center-secondlevel/help-center-secondlevel.component.d.ts +31 -34
  89. package/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.d.ts +30 -35
  90. package/lib/Pages/home/home.component.d.ts +4 -4
  91. package/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.d.ts +43 -42
  92. package/lib/Pages/jobs/jobs/jobs.component.d.ts +56 -62
  93. package/lib/Pages/license/license/license.component.d.ts +25 -23
  94. package/lib/Pages/localizations/localizations.component.d.ts +77 -65
  95. package/lib/Pages/logs/log/log.component.d.ts +7 -11
  96. package/lib/Pages/lookups/lookup/lookup.component.d.ts +64 -59
  97. package/lib/Pages/lookups/lookup-group/lookup-group.component.d.ts +44 -45
  98. package/lib/Pages/lookups/lookup-item/lookup-item.component.d.ts +62 -56
  99. package/lib/Pages/notifications/add/add.component.d.ts +13 -11
  100. package/lib/Pages/notifications/edit/edit.component.d.ts +14 -14
  101. package/lib/Pages/notifications/edit-email/edit-email.component.d.ts +18 -20
  102. package/lib/Pages/notifications/edit-sms/edit-sms.component.d.ts +15 -16
  103. package/lib/Pages/notifications/master-layouts/master-layouts.component.d.ts +24 -25
  104. package/lib/Pages/notifications/notifications.module.d.ts +15 -16
  105. package/lib/Pages/notifications/template-info/template-info.component.d.ts +32 -32
  106. package/lib/Pages/notifications/templates/templates.component.d.ts +54 -46
  107. package/lib/Pages/providers/provider/provider.component.d.ts +13 -12
  108. package/lib/Pages/publicHolidays/public-holiday/public-holiday.component.d.ts +29 -27
  109. package/lib/Pages/roles/permission-set-info/permission-set-info.component.d.ts +39 -40
  110. package/lib/Pages/roles/permissions/permissions.component.d.ts +49 -54
  111. package/lib/Pages/roles/permissionsets/permissionsets.component.d.ts +53 -55
  112. package/lib/Pages/sectors/department-info/department-info.component.d.ts +41 -44
  113. package/lib/Pages/sectors/sector/sector.component.d.ts +35 -33
  114. package/lib/Pages/sectors/sector-info/sector-info.component.d.ts +40 -44
  115. package/lib/Pages/shared/Enums/ConfigurationScope.d.ts +5 -0
  116. package/lib/Pages/shared/Enums/ConfigurationType.d.ts +6 -0
  117. package/lib/Pages/shared/Enums/ConfigurationValueSource.d.ts +4 -0
  118. package/lib/Pages/shared/Enums/ParticipantType.d.ts +6 -0
  119. package/lib/Pages/shared/Services/AccountService.service.d.ts +10 -0
  120. package/lib/Pages/shared/Services/ConfigurationsService.service.d.ts +7 -8
  121. package/lib/Pages/shared/Services/DepartmentService.service.d.ts +2 -2
  122. package/lib/Pages/shared/Services/EmailHeaderAndFooterTemplateService.Service.d.ts +5 -5
  123. package/lib/Pages/shared/Services/HelpCenterService.service.d.ts +2 -1
  124. package/lib/Pages/shared/Services/ImpersonationRuleService.service.d.ts +5 -5
  125. package/lib/Pages/shared/Services/LicenseService.service.d.ts +2 -2
  126. package/lib/Pages/shared/Services/LookupGroupsService.service.d.ts +4 -4
  127. package/lib/Pages/shared/Services/LookupService.service.d.ts +14 -11
  128. package/lib/Pages/shared/Services/PermissionSetService.service.d.ts +8 -7
  129. package/lib/Pages/shared/Services/PermissionsService.service.d.ts +5 -6
  130. package/lib/Pages/shared/Services/PublicHolidayService.service.d.ts +2 -2
  131. package/lib/Pages/shared/Services/SectorService.service.d.ts +7 -7
  132. package/lib/Pages/shared/Services/TemplateService.service.d.ts +20 -19
  133. package/lib/Pages/shared/Services/localizationsService.service .d.ts +12 -11
  134. package/lib/Pages/shared/Services/provider.service.d.ts +1 -1
  135. package/lib/Pages/shared/Services/userService.service.d.ts +2 -0
  136. package/lib/Pages/shared/models/AccountModels/forgotPasswordModel.d.ts +3 -0
  137. package/lib/Pages/shared/models/ConfigurationModels/ConfigurationModel.d.ts +0 -1
  138. package/lib/Pages/shared/models/DepartmentModels/DepartmentUsersIDRequestModel.d.ts +1 -1
  139. package/lib/Pages/shared/models/ImpersonationRuleModels/ImpersonationRuleModel.d.ts +0 -2
  140. package/lib/Pages/shared/models/Lookups/LookupModel.d.ts +1 -1
  141. package/lib/Pages/shared/models/PermissionsModels/PermissionSetUsersIDRequestModel.d.ts +1 -1
  142. package/lib/Pages/shared/models/SectorModels/SectorDepartmentModel.d.ts +1 -1
  143. package/lib/Pages/users/users.component.d.ts +54 -68
  144. package/lib/masterlayout.component.d.ts +4 -5
  145. package/lib/masterlayout.module.d.ts +8 -9
  146. package/package.json +5 -3
  147. package/src/lib/assets/sass/core/components/_variables.scss +1 -1
  148. package/src/lib/assets/sass/custom-styles-rtl.scss +5 -0
  149. package/src/lib/assets/sass/custom-styles.scss +153 -0
  150. package/src/lib/assets/sass/style-rtl.scss +2 -0
  151. package/src/lib/assets/sass/style.scss +2 -2
  152. package/bnsights-bbsf-admin-portal-0.0.1.tgz +0 -0
  153. package/bnsights-bbsf-admin-portal-1.0.0.tgz +0 -0
  154. package/esm2015/lib/Pages/notifications/edit-template/edit-template.component.js +0 -35
  155. package/lib/Pages/notifications/edit-template/edit-template.component.d.ts +0 -35
@@ -1,122 +1,124 @@
1
- import { __awaiter, __decorate } from "tslib";
1
+ import { __awaiter } from "tslib";
2
2
  import { Component } from '@angular/core';
3
3
  import { FormGroup } from '@angular/forms';
4
- import { TextAreaOptions } from '@bnsights/bbsf-controls';
5
- import { BlockUI } from 'ng-block-ui';
4
+ import { FormOptions, TextAreaOptions } from '@bnsights/bbsf-controls';
6
5
  import { PageInfoService } from '../../../_metronic/core/services/page-info.service';
7
6
  import { TemplateEditViewModel } from '../../shared/models/NotificationsModels/TemplateEditViewModel';
8
7
  import * as i0 from "@angular/core";
9
8
  import * as i1 from "@bnsights/bbsf-utilities";
10
- import * as i2 from "ngx-clipboard";
11
- import * as i3 from "../../shared/Services/data.service";
12
- import * as i4 from "../../shared/Services/TemplateService.service";
13
- import * as i5 from "@angular/router";
14
- import * as i6 from "../../../_metronic/core/services/page-info.service";
15
- import * as i7 from "ng-block-ui";
16
- import * as i8 from "@bnsights/bbsf-controls";
17
- import * as i9 from "@angular/common";
18
- import * as i10 from "@angular/forms";
9
+ import * as i2 from "../../shared/Services/TemplateService.service";
10
+ import * as i3 from "@angular/router";
11
+ import * as i4 from "../../../_metronic/core/services/page-info.service";
12
+ import * as i5 from "ng-block-ui";
13
+ import * as i6 from "@bnsights/bbsf-controls";
14
+ import * as i7 from "@angular/common";
19
15
  export class EditSMSComponent {
20
- constructor(authService, utilityService, bbsfTranslateService, environmentService, _clipboardService, dataServices, templateService, activatedRoute, router, pageInfoService) {
21
- this.authService = authService;
16
+ constructor(utilityService, bbsfTranslateService, templateService, activatedRoute, router, pageInfoService, requestHandlerService) {
22
17
  this.utilityService = utilityService;
23
18
  this.bbsfTranslateService = bbsfTranslateService;
24
- this.environmentService = environmentService;
25
- this._clipboardService = _clipboardService;
26
- this.dataServices = dataServices;
27
19
  this.templateService = templateService;
28
20
  this.activatedRoute = activatedRoute;
29
21
  this.router = router;
30
22
  this.pageInfoService = pageInfoService;
31
- this.TemplateId = "";
23
+ this.requestHandlerService = requestHandlerService;
24
+ this.TemplateIdEnc = "";
32
25
  this.Lang = "";
26
+ //Initialize form and controls
33
27
  this.EditSMSForm = new FormGroup({});
34
- this.language = "";
28
+ this.EditSMSFormOptions = new FormOptions;
29
+ this.getEditSMSModel = () => {
30
+ let paramArray = [];
31
+ let ResultModel = this.EditSMSForm.value;
32
+ let EditModel = new TemplateEditViewModel();
33
+ EditModel.ID = Number(this.TemplateId);
34
+ EditModel.IDEncrypted = this.TemplateInfo.idEncrypted;
35
+ EditModel.IsEmail = false;
36
+ EditModel.IsSms = true;
37
+ EditModel.TemplateName = this.TemplateInfo.templateName;
38
+ EditModel.Language = this.Lang;
39
+ EditModel.smstemplateinfo.ID = this.TemplateInfo.smstemplateinfo.id;
40
+ EditModel.smstemplateinfo.SMS.Arabic = ResultModel.SMSInArabic;
41
+ EditModel.smstemplateinfo.SMS.English = ResultModel.SMSInEnglish;
42
+ paramArray.push(EditModel);
43
+ return paramArray;
44
+ };
45
+ this.getEditSMSFunction = (EditModel) => {
46
+ return this.templateService.editSMSTemplateByLang(EditModel);
47
+ };
48
+ this.onEditSMSSuccess = (result) => {
49
+ this.cancelEdit();
50
+ };
35
51
  this.activatedRoute.params.subscribe(params => {
36
- this.TemplateId = params['id'];
52
+ this.TemplateIdEnc = params['id'];
37
53
  this.Lang = params['lang'];
38
54
  });
39
55
  }
40
56
  ngOnInit() {
41
57
  return __awaiter(this, void 0, void 0, function* () {
42
- this.IsAEditFormLoaded = false;
43
58
  this.bbsfTranslateService.onLangChange.subscribe((event) => {
44
- this.language = event.lang;
45
59
  this.ngOnInit();
46
60
  });
47
- this.language = yield this.utilityService.getCurrentLanguage();
48
- this.templateService.GetTemplateInfoByLang(Number(this.TemplateId), this.Lang).subscribe((result) => {
49
- let Result = result;
50
- this.TemplateInfo = Result.val;
51
- let TemplateName = this.language == 'en' ? this.TemplateInfo.emailtemplateinfo.emailSubject.english : this.TemplateInfo.emailtemplateinfo.emailSubject.arabic;
52
- if (TemplateName == null || TemplateName == undefined)
53
- TemplateName = "";
54
- PageInfoService.PageTitle = this.utilityService.getResourceValue("Edit");
55
- PageInfoService.PageBreadcrumbs = [
56
- { title: this.utilityService.getResourceValue("Home"), path: '/Admin/Home', isSeparator: false, isActive: false },
57
- { title: '', path: '', isSeparator: true, isActive: false },
58
- { title: this.utilityService.getResourceValue("Templates"), path: '/Admin/Notifications/Templates', isSeparator: false, isActive: false },
59
- { title: '', path: '', isSeparator: true, isActive: false },
60
- { title: TemplateName != "" ? this.utilityService.getResourceValue(TemplateName) : "", path: "/Admin/Notifications/TemplateInfo/" + this.TemplateInfo.id, isSeparator: false, isActive: false },
61
- { title: '', path: '', isSeparator: true, isActive: false }
62
- ];
63
- this.pageInfoService.calculateTitle();
64
- this.pageInfoService.calculateBreadcrumbs();
65
- this.SMSInEnglish = new TextAreaOptions();
66
- this.SMSInEnglish.Name = "SMSInEnglish";
67
- this.SMSInEnglish.LabelKey = "SMSInEnglish";
68
- this.SMSInEnglish.IsRequired = true;
69
- this.SMSInEnglish.Value = this.TemplateInfo.smstemplateinfo.sms.english;
70
- this.SMSInArabic = new TextAreaOptions();
71
- this.SMSInArabic.Name = "SMSInArabic";
72
- this.SMSInArabic.LabelKey = "SMSInArabic";
73
- this.SMSInArabic.IsRequired = true;
74
- this.SMSInArabic.Value = this.TemplateInfo.smstemplateinfo.sms.arabic;
75
- this.IsAEditFormLoaded = true;
76
- });
61
+ this.initializePage();
62
+ });
63
+ }
64
+ initializePage() {
65
+ this.templateService.getTemplateInfoByLang(this.TemplateIdEnc, this.Lang).subscribe((result) => {
66
+ let Result = result;
67
+ this.TemplateInfo = Result.val;
68
+ let TemplateName = this.TemplateInfo.emailtemplateinfo.emailSubjectStr;
69
+ if (TemplateName == null || TemplateName == undefined)
70
+ TemplateName = "";
71
+ PageInfoService.PageTitle = this.utilityService.getResourceValue("Edit");
72
+ PageInfoService.PageBreadcrumbs = [
73
+ { title: this.utilityService.getResourceValue("Home"), path: '/Admin/Home', isSeparator: false, isActive: false },
74
+ { title: '', path: '', isSeparator: true, isActive: false },
75
+ { title: this.utilityService.getResourceValue("Templates"), path: '/Admin/Notifications/Templates', isSeparator: false, isActive: false },
76
+ { title: '', path: '', isSeparator: true, isActive: false },
77
+ { title: TemplateName != "" ? this.utilityService.getResourceValue(TemplateName) : "", path: "/Admin/Notifications/TemplateInfo/" + this.TemplateInfo.idEncrypted, isSeparator: false, isActive: false },
78
+ { title: '', path: '', isSeparator: true, isActive: false }
79
+ ];
80
+ this.pageInfoService.calculateTitle();
81
+ this.pageInfoService.calculateBreadcrumbs();
82
+ //Initialize form and controls
83
+ this.EditSMSForm = new FormGroup({});
84
+ this.EditSMSFormOptions = new FormOptions();
85
+ this.EditSMSFormOptions.FormGroup = this.EditSMSForm;
86
+ this.EditSMSFormOptions.GetModelFunction = this.getEditSMSModel;
87
+ this.EditSMSFormOptions.ServiceSubmitFunction = this.getEditSMSFunction;
88
+ this.EditSMSFormOptions.OnSuccessHandler = this.onEditSMSSuccess;
89
+ this.TemplateId = this.TemplateInfo.id;
90
+ this.SMSInEnglish = new TextAreaOptions();
91
+ this.SMSInEnglish.Name = "SMSInEnglish";
92
+ this.SMSInEnglish.LabelKey = "SMSInEnglish";
93
+ this.SMSInEnglish.IsRequired = true;
94
+ this.SMSInEnglish.Value = this.TemplateInfo.smstemplateinfo.sms.english;
95
+ this.SMSInArabic = new TextAreaOptions();
96
+ this.SMSInArabic.Name = "SMSInArabic";
97
+ this.SMSInArabic.LabelKey = "SMSInArabic";
98
+ this.SMSInArabic.IsRequired = true;
99
+ this.SMSInArabic.Value = this.TemplateInfo.smstemplateinfo.sms.arabic;
100
+ this.IsFormLoaded = true;
77
101
  });
78
102
  }
103
+ cancelEdit() {
104
+ this.router.navigate(['/Admin/Notifications/TemplateInfo', this.TemplateIdEnc]);
105
+ }
106
+ //Change Lang
79
107
  changeCurrentLanguage(lang) {
80
108
  this.Lang = lang;
81
109
  }
82
- editSMSTemplate() {
83
- if (this.EditSMSForm.invalid) {
84
- return;
85
- }
86
- else {
87
- let ResultModel = this.EditSMSForm.value;
88
- let EmailTemplateModel = new TemplateEditViewModel();
89
- EmailTemplateModel.ID = Number(this.TemplateId);
90
- EmailTemplateModel.IDEncrypted = this.TemplateInfo.idEncrypted;
91
- EmailTemplateModel.IsEmail = this.TemplateInfo.isEmail;
92
- EmailTemplateModel.IsSms = this.TemplateInfo.isSms;
93
- EmailTemplateModel.TemplateName = this.TemplateInfo.templateName;
94
- EmailTemplateModel.Language = this.Lang;
95
- EmailTemplateModel.smstemplateinfo.ID = this.TemplateInfo.smstemplateinfo.id;
96
- EmailTemplateModel.smstemplateinfo.SMS.Arabic = ResultModel.SMSInArabic;
97
- EmailTemplateModel.smstemplateinfo.SMS.English = ResultModel.SMSInEnglish;
98
- this.templateService.EditSMSTemplateByLang(EmailTemplateModel).subscribe((result) => {
99
- ;
100
- this.EditSMSForm.reset();
101
- this.close();
102
- }, (error) => {
103
- });
104
- }
105
- }
106
- close() {
107
- this.router.navigate(['/Admin/Notifications/TemplateInfo', this.TemplateId]);
110
+ //On destroy
111
+ ngOnDestroy() {
112
+ this.requestHandlerService.destroyHandler();
108
113
  }
109
114
  }
110
- EditSMSComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EditSMSComponent, deps: [{ token: i1.AuthService }, { token: i1.UtilityService }, { token: i1.BBSFTranslateService }, { token: i1.EnvironmentService }, { token: i2.ClipboardService }, { token: i3.DataSecretService }, { token: i4.TemplateService }, { token: i5.ActivatedRoute }, { token: i5.Router }, { token: i6.PageInfoService }], target: i0.ɵɵFactoryTarget.Component });
111
- EditSMSComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: EditSMSComponent, selector: "lib-edit-sms", ngImport: i0, template: "<block-ui></block-ui>\r\n\r\n <div class=\"container-fluid\">\r\n <div class=\"card card-custom-h\">\r\n <div class=\"card-header border-0 pt-5\">\r\n <div class=\"card-title align-items-start flex-column\">\r\n <!--{{TemplateInfo.templateName}}(SMS)-->\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <a class=\"btn btn-light-primary btn-sm\" (click)=\"changeCurrentLanguage('ar')\" *ngIf=\"Lang=='en'\">\r\n {{utilityService.getResourceValue(\"Arabic\")}}\r\n </a>\r\n <a class=\"btn btn-light-primary btn-sm\" (click)=\"changeCurrentLanguage('en')\" *ngIf=\"Lang=='ar'\">\r\n {{utilityService.getResourceValue(\"English\")}}\r\n </a>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"EditSMSForm\" *ngIf=\"IsAEditFormLoaded\" (ngSubmit)=\"editSMSTemplate()\">\r\n <div class=\"kt-form row\">\r\n <div *ngIf=\"Lang=='ar'\">\r\n <div class=\"row\">\r\n <div class=\"form-group col-md-6\">\r\n <BBSF-TextArea class=\"text-right\" [options]=\"SMSInArabic\" [group]=\"EditSMSForm\">\r\n </BBSF-TextArea>\r\n </div>\r\n <div class=\"col-md-6 d-flex align-items-center justify-content-center\">\r\n <div class=\"iphone\">\r\n <span class=\"position-absolute mobile-txt\">{{TemplateInfo.smstemplateinfo.sms.arabic}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"Lang=='en'\">\r\n <div class=\"row\">\r\n <div class=\"form-group col-md-6\">\r\n <BBSF-TextArea [options]=\"SMSInEnglish\" [group]=\"EditSMSForm\">\r\n </BBSF-TextArea>\r\n </div>\r\n <div class=\"col-md-6 d-flex align-items-center justify-content-center\">\r\n <div class=\"iphone\">\r\n <span class=\"position-absolute mobile-txt\">{{TemplateInfo.smstemplateinfo.sms.english}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"d-flex justify-content-end\">\r\n <button type=\"submit\" class=\"btn btn-primary btn-sm\">{{utilityService.getResourceValue(\"SaveLabel\")}}</button>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n", components: [{ type: i7.BlockUIComponent, selector: "block-ui", inputs: ["name", "template", "message", "delayStart", "delayStop"] }, { type: i8e, selector: "BBSF-TextArea", inputs: ["group", "options"], outputs: ["OnChange"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
112
- __decorate([
113
- BlockUI()
114
- ], EditSMSComponent.prototype, "blockUI", void 0);
115
+ EditSMSComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EditSMSComponent, deps: [{ token: i1.UtilityService }, { token: i1.BBSFTranslateService }, { token: i2.TemplateService }, { token: i3.ActivatedRoute }, { token: i3.Router }, { token: i4.PageInfoService }, { token: i1.RequestHandlerService }], target: i0.ɵɵFactoryTarget.Component });
116
+ EditSMSComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: EditSMSComponent, selector: "lib-edit-sms", ngImport: i0, template: "<block-ui></block-ui>\r\n\r\n <div class=\"container-fluid\">\r\n <div class=\"card card-custom-h\">\r\n <div class=\"card-header border-0 pt-5\">\r\n <div class=\"card-title align-items-start flex-column\">\r\n <!--{{TemplateInfo.templateName}}(SMS)-->\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <a class=\"btn btn-light-primary btn-sm\" (click)=\"changeCurrentLanguage('ar')\" *ngIf=\"Lang=='en'\">\r\n {{utilityService.getResourceValue(\"Arabic\")}}\r\n </a>\r\n <a class=\"btn btn-light-primary btn-sm\" (click)=\"changeCurrentLanguage('en')\" *ngIf=\"Lang=='ar'\">\r\n {{utilityService.getResourceValue(\"English\")}}\r\n </a>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <BBSF-Form [options]=\"EditSMSFormOptions\" *ngIf=\"IsFormLoaded\">\r\n <div class=\"kt-form row\">\r\n <div *ngIf=\"Lang=='ar'\">\r\n <div class=\"row\">\r\n <div class=\"form-group col-md-6\">\r\n <BBSF-TextArea class=\"text-right\" [options]=\"SMSInArabic\" [group]=\"EditSMSForm\">\r\n </BBSF-TextArea>\r\n </div>\r\n <div class=\"col-md-6 d-flex align-items-center justify-content-center\">\r\n <div class=\"iphone\">\r\n <span class=\"position-absolute mobile-txt\">{{TemplateInfo.smstemplateinfo.sms.arabic}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"Lang=='en'\">\r\n <div class=\"row\">\r\n <div class=\"form-group col-md-6\">\r\n <BBSF-TextArea [options]=\"SMSInEnglish\" [group]=\"EditSMSForm\">\r\n </BBSF-TextArea>\r\n </div>\r\n <div class=\"col-md-6 d-flex align-items-center justify-content-center\">\r\n <div class=\"iphone\">\r\n <span class=\"position-absolute mobile-txt\">{{TemplateInfo.smstemplateinfo.sms.english}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"d-flex justify-content-end\">\r\n <button type=\"button\" class=\"btn btn-light-primary btn-sm me-3\" (click)=\"cancelEdit()\">{{utilityService.getResourceValue(\"CancelLabel\")}}</button>\r\n <button type=\"submit\" class=\"btn btn-primary btn-sm\">{{utilityService.getResourceValue(\"SaveLabel\")}}</button>\r\n </div>\r\n </BBSF-Form>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n", components: [{ type: i5.BlockUIComponent, selector: "block-ui", inputs: ["name", "template", "message", "delayStart", "delayStop"] }, { type: i6v, selector: "BBSF-Form", inputs: ["options"] }, { type: i6.ɵe, selector: "BBSF-TextArea", inputs: ["group", "options"], outputs: ["OnChange"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
115
117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EditSMSComponent, decorators: [{
116
118
  type: Component,
117
119
  args: [{
118
120
  selector: 'lib-edit-sms',
119
121
  templateUrl: './edit-sms.component.html'
120
122
  }]
121
- }], ctorParameters: function () { return [{ type: i1.AuthService }, { type: i1.UtilityService }, { type: i1.BBSFTranslateService }, { type: i1.EnvironmentService }, { type: i2.ClipboardService }, { type: i3.DataSecretService }, { type: i4.TemplateService }, { type: i5.ActivatedRoute }, { type: i5.Router }, { type: i6.PageInfoService }]; }, propDecorators: { blockUI: [] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1zbXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9ub3RpZmljYXRpb25zL2VkaXQtc21zL2VkaXQtc21zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtYWRtaW4tcG9ydGFsL3NyYy9saWIvUGFnZXMvbm90aWZpY2F0aW9ucy9lZGl0LXNtcy9lZGl0LXNtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQWEsTUFBTSxhQUFhLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtEQUErRCxDQUFDOzs7Ozs7Ozs7Ozs7QUFTdEcsTUFBTSxPQUFPLGdCQUFnQjtJQWUzQixZQUFvQixXQUF1QixFQUFTLGNBQTZCLEVBQVMsb0JBQXlDLEVBQVMsa0JBQXFDLEVBQVMsaUJBQW1DLEVBQVUsWUFBK0IsRUFBVyxlQUFnQyxFQUFVLGNBQThCLEVBQVUsTUFBYyxFQUFTLGVBQStCO1FBQXJZLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFBUyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQVMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUFTLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFB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QUUsRUFBRTtnQkFDbEYsQ0FBQztnQkFDRixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFBO2dCQUN4QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUViLENBQUMsQ0FBQyxDQUFBO1NBQ0g7SUFDSCxDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsbUNBQW1DLEVBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7OEdBeEdVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG9EQ2hCN0Isa2dGQXlEQTtBRDdCYTtJQUFWLE9BQU8sRUFBRTtpREFBb0I7NEZBWm5CLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsV0FBVyxFQUFFLDJCQUEyQjtpQkFDekM7Z1hBYVksT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRleHRBcmVhT3B0aW9ucyB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLWNvbnRyb2xzJztcclxuaW1wb3J0IHsgQmxvY2tVSSwgTmdCbG9ja1VJIH0gZnJvbSAnbmctYmxvY2stdWknO1xyXG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlIH0gZnJvbSAnbmd4LWNsaXBib2FyZCc7XHJcbmltcG9ydCB7IFBhZ2VJbmZvU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19tZXRyb25pYy9jb3JlL3NlcnZpY2VzL3BhZ2UtaW5mby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGVtcGxhdGVFZGl0Vmlld01vZGVsIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9Ob3RpZmljYXRpb25zTW9kZWxzL1RlbXBsYXRlRWRpdFZpZXdNb2RlbCc7XHJcbmltcG9ydCB7IERhdGFTZWNyZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL1NlcnZpY2VzL2RhdGEuc2VydmljZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9TZXJ2aWNlcy9UZW1wbGF0ZVNlcnZpY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBVdGlsaXR5U2VydmljZSwgQkJTRlRyYW5zbGF0ZVNlcnZpY2UsIEVudmlyb25tZW50U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1lZGl0LXNtcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtc21zLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRWRpdFNNU0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIFRlbXBsYXRlSWQ6IHN0cmluZyA9IFwiXCJcclxuICBMYW5nOiBzdHJpbmcgPSBcIlwiXHJcbiAgVGVtcGxhdGVJbmZvOiBhbnlcclxuICBJc0FFZGl0Rm9ybUxvYWRlZDpib29sZWFuXHJcblxyXG4gIEVkaXRTTVNGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgU01TSW5FbmdsaXNoOiBUZXh0QXJlYU9wdGlvbnM7XHJcbiAgU01TSW5BcmFiaWM6IFRleHRBcmVhT3B0aW9ucztcclxuICBsYW5ndWFnZTpzdHJpbmc9XCJcIlxyXG4gIC8vIERlY29yYXRvciB3aXJlcyB1cCBibG9ja1VJIGluc3RhbmNlXHJcbiAgQEJsb2NrVUkoKSBibG9ja1VJOiBOZ0Jsb2NrVUk7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOkF1dGhTZXJ2aWNlLCBwdWJsaWMgdXRpbGl0eVNlcnZpY2U6VXRpbGl0eVNlcnZpY2UscHJpdmF0ZSBiYnNmVHJhbnNsYXRlU2VydmljZTpCQlNGVHJhbnNsYXRlU2VydmljZSxwcml2YXRlIGVudmlyb25tZW50U2VydmljZTpFbnZpcm9ubWVudFNlcnZpY2UscHJpdmF0ZSBfY2xpcGJvYXJkU2VydmljZTogQ2xpcGJvYXJkU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZXM6IERhdGFTZWNyZXRTZXJ2aWNlLCAgcHJpdmF0ZSB0ZW1wbGF0ZVNlcnZpY2U6IFRlbXBsYXRlU2VydmljZSwgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIscHJpdmF0ZSBwYWdlSW5mb1NlcnZpY2U6UGFnZUluZm9TZXJ2aWNlKVxyXG4gIHtcclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xyXG4gICAgICB0aGlzLlRlbXBsYXRlSWQgPSBwYXJhbXNbJ2lkJ107XHJcbiAgICAgIHRoaXMuTGFuZyA9IHBhcmFtc1snbGFuZyddO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLklzQUVkaXRGb3JtTG9hZGVkPWZhbHNlXHJcblxyXG4gICAgdGhpcy5iYnNmVHJhbnNsYXRlU2VydmljZS5vbkxhbmdDaGFuZ2Uuc3Vic2NyaWJlKChldmVudCk9PntcclxuICAgICAgdGhpcy5sYW5ndWFnZSA9IGV2ZW50Lmxhbmc7XHJcbiAgICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIH0pXHJcbiAgICB0aGlzLmxhbmd1YWdlID0gYXdhaXQgdGhpcy51dGlsaXR5U2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKTtcclxuICAgIHRoaXMudGVtcGxhdGVTZXJ2aWNlLkdldFRlbXBsYXRlSW5mb0J5TGFuZyhOdW1iZXIodGhpcy5UZW1wbGF0ZUlkKSwgdGhpcy5MYW5nKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICBsZXQgUmVzdWx0OiBhbnkgPSByZXN1bHRcclxuICAgICAgdGhpcy5UZW1wbGF0ZUluZm8gPSBSZXN1bHQudmFsO1xyXG5cclxuICAgICAgbGV0IFRlbXBsYXRlTmFtZTpzdHJpbmc9IHRoaXMubGFuZ3VhZ2U9PSdlbic/dGhpcy5UZW1wbGF0ZUluZm8uZW1haWx0ZW1wbGF0ZWluZm8uZW1haWxTdWJqZWN0LmVuZ2xpc2g6dGhpcy5UZW1wbGF0ZUluZm8uZW1haWx0ZW1wbGF0ZWluZm8uZW1haWxTdWJqZWN0LmFyYWJpY1xyXG4gICAgICBpZihUZW1wbGF0ZU5hbWU9PW51bGx8fFRlbXBsYXRlTmFtZT09dW5kZWZpbmVkKVxyXG4gICAgICBUZW1wbGF0ZU5hbWU9XCJcIlxyXG4gICAgICBQYWdlSW5mb1NlcnZpY2UuUGFnZVRpdGxlPXRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkVkaXRcIilcclxuICAgICAgUGFnZUluZm9TZXJ2aWNlLlBhZ2VCcmVhZGNydW1icz1bXHJcbiAgICAgICB7dGl0bGU6IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkhvbWVcIikgLCBwYXRoOiAnL0FkbWluL0hvbWUnLCBpc1NlcGFyYXRvcjogZmFsc2UsIGlzQWN0aXZlOiBmYWxzZX0sXHJcbiAgICAgICB7dGl0bGU6ICcnLCBwYXRoOiAnJywgaXNTZXBhcmF0b3I6IHRydWUsIGlzQWN0aXZlOiBmYWxzZX0sXHJcbiAgICAgICB7dGl0bGU6IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIlRlbXBsYXRlc1wiKSwgcGF0aDogJy9BZG1pbi9Ob3RpZmljYXRpb25zL1RlbXBsYXRlcycsIGlzU2VwYXJhdG9yOiBmYWxzZSwgaXNBY3RpdmU6IGZhbHNlfSxcclxuICAgICAgIHt0aXRsZTogJycsIHBhdGg6ICcnLCBpc1NlcGFyYXRvcjogdHJ1ZSwgaXNBY3RpdmU6IGZhbHNlfSxcclxuICAgICAgIHt0aXRsZTpUZW1wbGF0ZU5hbWUhPVwiXCI/dGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFRlbXBsYXRlTmFtZSk6XCJcIiAsIHBhdGg6IFwiL0FkbWluL05vdGlmaWNhdGlvbnMvVGVtcGxhdGVJbmZvL1wiK3RoaXMuVGVtcGxhdGVJbmZvLmlkLCBpc1NlcGFyYXRvcjogZmFsc2UsIGlzQWN0aXZlOiBmYWxzZX0sXHJcbiAgICAgICB7dGl0bGU6ICcnLCBwYXRoOiAnJywgaXNTZXBhcmF0b3I6IHRydWUsIGlzQWN0aXZlOiBmYWxzZX1cclxuXHJcblxyXG4gICAgXTtcclxuICAgIHRoaXMucGFnZUluZm9TZXJ2aWNlLmNhbGN1bGF0ZVRpdGxlKCk7XHJcbiAgICB0aGlzLnBhZ2VJbmZvU2VydmljZS5jYWxjdWxhdGVCcmVhZGNydW1icygpO1xyXG4gICAgICB0aGlzLlNNU0luRW5nbGlzaCA9IG5ldyBUZXh0QXJlYU9wdGlvbnMoKTtcclxuICAgICAgdGhpcy5TTVNJbkVuZ2xpc2guTmFtZSA9IFwiU01TSW5FbmdsaXNoXCJcclxuICAgICAgdGhpcy5TTVNJbkVuZ2xpc2guTGFiZWxLZXkgPSBcIlNNU0luRW5nbGlzaFwiXHJcbiAgICAgIHRoaXMuU01TSW5FbmdsaXNoLklzUmVxdWlyZWQgPSB0cnVlXHJcbiAgICAgIHRoaXMuU01TSW5FbmdsaXNoLlZhbHVlID0gdGhpcy5UZW1wbGF0ZUluZm8uc21zdGVtcGxhdGVpbmZvLnNtcy5lbmdsaXNoO1xyXG5cclxuICAgICAgdGhpcy5TTVNJbkFyYWJpYyA9IG5ldyBUZXh0QXJlYU9wdGlvbnMoKTtcclxuICAgICAgdGhpcy5TTVNJbkFyYWJpYy5OYW1lID0gXCJTTVNJbkFyYWJpY1wiXHJcbiAgICAgIHRoaXMuU01TSW5BcmFiaWMuTGFiZWxLZXkgPSBcIlNNU0luQXJhYmljXCJcclxuICAgICAgdGhpcy5TTVNJbkFyYWJpYy5Jc1JlcXVpcmVkID0gdHJ1ZVxyXG4gICAgICB0aGlzLlNNU0luQXJhYmljLlZhbHVlID0gdGhpcy5UZW1wbGF0ZUluZm8uc21zdGVtcGxhdGVpbmZvLnNtcy5hcmFiaWM7XHJcblxyXG4gICAgICB0aGlzLklzQUVkaXRGb3JtTG9hZGVkPXRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gY2hhbmdlQ3VycmVudExhbmd1YWdlKGxhbmc6c3RyaW5nKVxyXG4ge1xyXG4gICB0aGlzLkxhbmc9bGFuZztcclxuIH1cclxuXHJcbiBcclxuICBlZGl0U01TVGVtcGxhdGUoKXtcclxuICAgIGlmICh0aGlzLkVkaXRTTVNGb3JtLmludmFsaWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGxldCBSZXN1bHRNb2RlbCA9IHRoaXMuRWRpdFNNU0Zvcm0udmFsdWU7XHJcbiAgICAgIGxldCBFbWFpbFRlbXBsYXRlTW9kZWwgPSBuZXcgVGVtcGxhdGVFZGl0Vmlld01vZGVsKCk7XHJcbiAgICAgIEVtYWlsVGVtcGxhdGVNb2RlbC5JRCA9IE51bWJlcih0aGlzLlRlbXBsYXRlSWQpO1xyXG4gICAgICBFbWFpbFRlbXBsYXRlTW9kZWwuSURFbmNyeXB0ZWQgPSB0aGlzLlRlbXBsYXRlSW5mby5pZEVuY3J5cHRlZDtcclxuICAgICAgRW1haWxUZW1wbGF0ZU1vZGVsLklzRW1haWwgPSB0aGlzLlRlbXBsYXRlSW5mby5pc0VtYWlsO1xyXG4gICAgICBFbWFpbFRlbXBsYXRlTW9kZWwuSXNTbXMgPSB0aGlzLlRlbXBsYXRlSW5mby5pc1NtcztcclxuICAgICAgRW1haWxUZW1wbGF0ZU1vZGVsLlRlbXBsYXRlTmFtZSA9IHRoaXMuVGVtcGxhdGVJbmZvLnRlbXBsYXRlTmFtZTtcclxuICAgICAgRW1haWxUZW1wbGF0ZU1vZGVsLkxhbmd1YWdlID0gdGhpcy5MYW5nO1xyXG4gICAgICBFbWFpbFRlbXBsYXRlTW9kZWwuc21zdGVtcGxhdGVpbmZvLklEID10aGlzLlRlbXBsYXRlSW5mby5zbXN0ZW1wbGF0ZWluZm8uaWQgO1xyXG5cclxuICAgICAgRW1haWxUZW1wbGF0ZU1vZGVsLnNtc3RlbXBsYXRlaW5mby5TTVMuQXJhYmljID0gUmVzdWx0TW9kZWwuU01TSW5BcmFiaWNcclxuICAgICAgRW1haWxUZW1wbGF0ZU1vZGVsLnNtc3RlbXBsYXRlaW5mby5TTVMuRW5nbGlzaCA9IFJlc3VsdE1vZGVsLlNNU0luRW5nbGlzaFxyXG5cclxuICAgICAgXHJcbiAgICAgICB0aGlzLnRlbXBsYXRlU2VydmljZS5FZGl0U01TVGVtcGxhdGVCeUxhbmcoRW1haWxUZW1wbGF0ZU1vZGVsKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICA7XHJcbiAgICAgICAgdGhpcy5FZGl0U01TRm9ybS5yZXNldCgpXHJcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICB9LCAoZXJyb3IpID0+IHtcclxuICAgICAgIFxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuICBjbG9zZSgpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvQWRtaW4vTm90aWZpY2F0aW9ucy9UZW1wbGF0ZUluZm8nLHRoaXMuVGVtcGxhdGVJZF0pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGJsb2NrLXVpPjwvYmxvY2stdWk+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtY3VzdG9tLWhcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgPCEtLXt7VGVtcGxhdGVJbmZvLnRlbXBsYXRlTmFtZX19KFNNUyktLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICA8YSBjbGFzcz1cImJ0biBidG4tbGlnaHQtcHJpbWFyeSBidG4tc21cIiAoY2xpY2spPVwiY2hhbmdlQ3VycmVudExhbmd1YWdlKCdhcicpXCIgKm5nSWY9XCJMYW5nPT0nZW4nXCI+XHJcbiAgICAgICAgICAgIHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkFyYWJpY1wiKX19XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICA8YSBjbGFzcz1cImJ0biBidG4tbGlnaHQtcHJpbWFyeSBidG4tc21cIiAoY2xpY2spPVwiY2hhbmdlQ3VycmVudExhbmd1YWdlKCdlbicpXCIgKm5nSWY9XCJMYW5nPT0nYXInXCI+XHJcbiAgICAgICAgICAgIHt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkVuZ2xpc2hcIil9fVxyXG4gICAgICAgICAgPC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiRWRpdFNNU0Zvcm1cIiAqbmdJZj1cIklzQUVkaXRGb3JtTG9hZGVkXCIgKG5nU3VibWl0KT1cImVkaXRTTVNUZW1wbGF0ZSgpXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwia3QtZm9ybSByb3dcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIkxhbmc9PSdhcidcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICA8QkJTRi1UZXh0QXJlYSBjbGFzcz1cInRleHQtcmlnaHRcIiBbb3B0aW9uc109XCJTTVNJbkFyYWJpY1wiIFtncm91cF09XCJFZGl0U01TRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L0JCU0YtVGV4dEFyZWE+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlwaG9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbW9iaWxlLXR4dFwiPnt7VGVtcGxhdGVJbmZvLnNtc3RlbXBsYXRlaW5mby5zbXMuYXJhYmljfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiTGFuZz09J2VuJ1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxCQlNGLVRleHRBcmVhIFtvcHRpb25zXT1cIlNNU0luRW5nbGlzaFwiIFtncm91cF09XCJFZGl0U01TRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L0JCU0YtVGV4dEFyZWE+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlwaG9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbW9iaWxlLXR4dFwiPnt7VGVtcGxhdGVJbmZvLnNtc3RlbXBsYXRlaW5mby5zbXMuZW5nbGlzaH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tc21cIj57e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJTYXZlTGFiZWxcIil9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9mb3JtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiJdfQ==
123
+ }], ctorParameters: function () { return [{ type: i1.UtilityService }, { type: i1.BBSFTranslateService }, { type: i2.TemplateService }, { type: i3.ActivatedRoute }, { type: i3.Router }, { type: i4.PageInfoService }, { type: i1.RequestHandlerService }]; } });
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1zbXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1hZG1pbi1wb3J0YWwvc3JjL2xpYi9QYWdlcy9ub3RpZmljYXRpb25zL2VkaXQtc21zL2VkaXQtc21zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtYWRtaW4tcG9ydGFsL3NyYy9saWIvUGFnZXMvbm90aWZpY2F0aW9ucy9lZGl0LXNtcy9lZGl0LXNtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0RBQStELENBQUM7Ozs7Ozs7OztBQVN0RyxNQUFNLE9BQU8sZ0JBQWdCO0lBYzNCLFlBQW1CLGNBQThCLEVBQVUsb0JBQTBDLEVBQzNGLGVBQWdDLEVBQVUsY0FBOEIsRUFBVSxNQUFjLEVBQ2hHLGVBQWdDLEVBQVUscUJBQTRDO1FBRjdFLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDM0Ysb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNoRyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFBVSwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBYmhHLGtCQUFhLEdBQVcsRUFBRSxDQUFBO1FBQzFCLFNBQUksR0FBVyxF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QUFlLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztZQUV0RSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUVMLENBQUM7SUF5QkQsVUFBVTtRQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVELGFBQWE7SUFDYixxQkFBcUIsQ0FBQyxJQUFZO1FBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxZQUFZO0lBQ1osV0FBVztRQUNULElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUM5QyxDQUFDOzs4R0FwSFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isb0RDZDdCLHFwRkEwREE7NEZENUNhLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsV0FBVyxFQUFFLDJCQUEyQjtpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBGb3JtT3B0aW9ucywgVGV4dEFyZWFPcHRpb25zIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtY29udHJvbHMnO1xyXG5pbXBvcnQgeyBQYWdlSW5mb1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fbWV0cm9uaWMvY29yZS9zZXJ2aWNlcy9wYWdlLWluZm8uc2VydmljZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlRWRpdFZpZXdNb2RlbCB9IGZyb20gJy4uLy4uL3NoYXJlZC9tb2RlbHMvTm90aWZpY2F0aW9uc01vZGVscy9UZW1wbGF0ZUVkaXRWaWV3TW9kZWwnO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvU2VydmljZXMvVGVtcGxhdGVTZXJ2aWNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSwgQkJTRlRyYW5zbGF0ZVNlcnZpY2UsIFJlcXVlc3RIYW5kbGVyU2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWVkaXQtc21zJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdC1zbXMuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0U01TQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAvL1BhZ2UgUmVxdWlyZW1lbnRzXHJcbiAgVGVtcGxhdGVJZDogbnVtYmVyO1xyXG4gIFRlbXBsYXRlSWRFbmM6IHN0cmluZyA9IFwiXCJcclxuICBMYW5nOiBzdHJpbmcgPSBcIlwiXHJcbiAgVGVtcGxhdGVJbmZvOiBhbnlcclxuICBJc0Zvcm1Mb2FkZWQ6IGJvb2xlYW5cclxuXHJcbiAgLy9Jbml0aWFsaXplIGZvcm0gYW5kIGNvbnRyb2xzXHJcbiAgRWRpdFNNU0Zvcm0gPSBuZXcgRm9ybUdyb3VwKHt9KTtcclxuICBFZGl0U01TRm9ybU9wdGlvbnMgPSBuZXcgRm9ybU9wdGlvbnM7XHJcbiAgU01TSW5FbmdsaXNoOiBUZXh0QXJlYU9wdGlvbnM7XHJcbiAgU01TSW5BcmFiaWM6IFRleHRBcmVhT3B0aW9ucztcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSwgcHJpdmF0ZSBiYnNmVHJhbnNsYXRlU2VydmljZTogQkJTRlRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRlbXBsYXRlU2VydmljZTogVGVtcGxhdGVTZXJ2aWNlLCBwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgcGFnZUluZm9TZXJ2aWNlOiBQYWdlSW5mb1NlcnZpY2UsIHByaXZhdGUgcmVxdWVzdEhhbmRsZXJTZXJ2aWNlOiBSZXF1ZXN0SGFuZGxlclNlcnZpY2UpXHJcbiAge1xyXG4gICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XHJcbiAgICAgIHRoaXMuVGVtcGxhdGVJZEVuYyA9IHBhcmFtc1snaWQnXTtcclxuICAgICAgdGhpcy5MYW5nID0gcGFyYW1zWydsYW5nJ107XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuYmJzZlRyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlLnN1YnNjcmliZSgoZXZlbnQpPT57XHJcbiAgICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIH0pXHJcbiAgICB0aGlzLmluaXRpYWxpemVQYWdlKCk7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplUGFnZSgpIHtcclxuICAgIHRoaXMudGVtcGxhdGVTZXJ2aWNlLmdldFRlbXBsYXRlSW5mb0J5TGFuZyh0aGlzLlRlbXBsYXRlSWRFbmMsIHRoaXMuTGFuZykuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgbGV0IFJlc3VsdDogYW55ID0gcmVzdWx0XHJcbiAgICAgIHRoaXMuVGVtcGxhdGVJbmZvID0gUmVzdWx0LnZhbDtcclxuICAgICAgbGV0IFRlbXBsYXRlTmFtZTogc3RyaW5nID0gdGhpcy5UZW1wbGF0ZUluZm8uZW1haWx0ZW1wbGF0ZWluZm8uZW1haWxTdWJqZWN0U3RyO1xyXG4gICAgICBpZiAoVGVtcGxhdGVOYW1lID09IG51bGwgfHwgVGVtcGxhdGVOYW1lID09IHVuZGVmaW5lZClcclxuICAgICAgICBUZW1wbGF0ZU5hbWUgPSBcIlwiXHJcbiAgICAgIFBhZ2VJbmZvU2VydmljZS5QYWdlVGl0bGUgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJFZGl0XCIpXHJcbiAgICAgIFBhZ2VJbmZvU2VydmljZS5QYWdlQnJlYWRjcnVtYnMgPSBbXHJcbiAgICAgICAgeyB0aXRsZTogdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiSG9tZVwiKSwgcGF0aDogJy9BZG1pbi9Ib21lJywgaXNTZXBhcmF0b3I6IGZhbHNlLCBpc0FjdGl2ZTogZmFsc2UgfSxcclxuICAgICAgICB7IHRpdGxlOiAnJywgcGF0aDogJycsIGlzU2VwYXJhdG9yOiB0cnVlLCBpc0FjdGl2ZTogZmFsc2UgfSxcclxuICAgICAgICB7IHRpdGxlOiB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJUZW1wbGF0ZXNcIiksIHBhdGg6ICcvQWRtaW4vTm90aWZpY2F0aW9ucy9UZW1wbGF0ZXMnLCBpc1NlcGFyYXRvcjogZmFsc2UsIGlzQWN0aXZlOiBmYWxzZSB9LFxyXG4gICAgICAgIHsgdGl0bGU6ICcnLCBwYXRoOiAnJywgaXNTZXBhcmF0b3I6IHRydWUsIGlzQWN0aXZlOiBmYWxzZSB9LFxyXG4gICAgICAgIHsgdGl0bGU6IFRlbXBsYXRlTmFtZSAhPSBcIlwiID8gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFRlbXBsYXRlTmFtZSkgOiBcIlwiLCBwYXRoOiBcIi9BZG1pbi9Ob3RpZmljYXRpb25zL1RlbXBsYXRlSW5mby9cIiArIHRoaXMuVGVtcGxhdGVJbmZvLmlkRW5jcnlwdGVkLCBpc1NlcGFyYXRvcjogZmFsc2UsIGlzQWN0aXZlOiBmYWxzZSB9LFxyXG4gICAgICAgIHsgdGl0bGU6ICcnLCBwYXRoOiAnJywgaXNTZXBhcmF0b3I6IHRydWUsIGlzQWN0aXZlOiBmYWxzZSB9XHJcblxyXG5cclxuICAgICAgXTtcclxuICAgICAgdGhpcy5wYWdlSW5mb1NlcnZpY2UuY2FsY3VsYXRlVGl0bGUoKTtcclxuICAgICAgdGhpcy5wYWdlSW5mb1NlcnZpY2UuY2FsY3VsYXRlQnJlYWRjcnVtYnMoKTtcclxuXHJcblxyXG4gICAgICAvL0luaXRpYWxpemUgZm9ybSBhbmQgY29udHJvbHNcclxuICAgICAgdGhpcy5FZGl0U01TRm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gICAgICB0aGlzLkVkaXRTTVNGb3JtT3B0aW9ucyA9IG5ldyBGb3JtT3B0aW9ucygpO1xyXG4gICAgICB0aGlzLkVkaXRTTVNGb3JtT3B0aW9ucy5Gb3JtR3JvdXAgPSB0aGlzLkVkaXRTTVNGb3JtXHJcbiAgICAgIHRoaXMuRWRpdFNNU0Zvcm1PcHRpb25zLkdldE1vZGVsRnVuY3Rpb24gPSB0aGlzLmdldEVkaXRTTVNNb2RlbDtcclxuICAgICAgdGhpcy5FZGl0U01TRm9ybU9wdGlvbnMuU2VydmljZVN1Ym1pdEZ1bmN0aW9uID0gdGhpcy5nZXRFZGl0U01TRnVuY3Rpb247XHJcbiAgICAgIHRoaXMuRWRpdFNNU0Zvcm1PcHRpb25zLk9uU3VjY2Vzc0hhbmRsZXIgPSB0aGlzLm9uRWRpdFNNU1N1Y2Nlc3M7XHJcblxyXG4gICAgICB0aGlzLlRlbXBsYXRlSWQgPSB0aGlzLlRlbXBsYXRlSW5mby5pZDtcclxuXHJcbiAgICAgIHRoaXMuU01TSW5FbmdsaXNoID0gbmV3IFRleHRBcmVhT3B0aW9ucygpO1xyXG4gICAgICB0aGlzLlNNU0luRW5nbGlzaC5OYW1lID0gXCJTTVNJbkVuZ2xpc2hcIlxyXG4gICAgICB0aGlzLlNNU0luRW5nbGlzaC5MYWJlbEtleSA9IFwiU01TSW5FbmdsaXNoXCJcclxuICAgICAgdGhpcy5TTVNJbkVuZ2xpc2guSXNSZXF1aXJlZCA9IHRydWVcclxuICAgICAgdGhpcy5TTVNJbkVuZ2xpc2guVmFsdWUgPSB0aGlzLlRlbXBsYXRlSW5mby5zbXN0ZW1wbGF0ZWluZm8uc21zLmVuZ2xpc2g7XHJcblxyXG4gICAgICB0aGlzLlNNU0luQXJhYmljID0gbmV3IFRleHRBcmVhT3B0aW9ucygpO1xyXG4gICAgICB0aGlzLlNNU0luQXJhYmljLk5hbWUgPSBcIlNNU0luQXJhYmljXCJcclxuICAgICAgdGhpcy5TTVNJbkFyYWJpYy5MYWJlbEtleSA9IFwiU01TSW5BcmFiaWNcIlxyXG4gICAgICB0aGlzLlNNU0luQXJhYmljLklzUmVxdWlyZWQgPSB0cnVlXHJcbiAgICAgIHRoaXMuU01TSW5BcmFiaWMuVmFsdWUgPSB0aGlzLlRlbXBsYXRlSW5mby5zbXN0ZW1wbGF0ZWluZm8uc21zLmFyYWJpYztcclxuXHJcbiAgICAgIHRoaXMuSXNGb3JtTG9hZGVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG5cclxuICB9XHJcbiAgZ2V0RWRpdFNNU01vZGVsID0gKCkgPT4ge1xyXG4gICAgbGV0IHBhcmFtQXJyYXk6IGFueVtdID0gW107XHJcbiAgICBsZXQgUmVzdWx0TW9kZWwgPSB0aGlzLkVkaXRTTVNGb3JtLnZhbHVlO1xyXG4gICAgbGV0IEVkaXRNb2RlbCA9IG5ldyBUZW1wbGF0ZUVkaXRWaWV3TW9kZWwoKTtcclxuICAgIEVkaXRNb2RlbC5JRCA9IE51bWJlcih0aGlzLlRlbXBsYXRlSWQpO1xyXG4gICAgRWRpdE1vZGVsLklERW5jcnlwdGVkID0gdGhpcy5UZW1wbGF0ZUluZm8uaWRFbmNyeXB0ZWQ7XHJcbiAgICBFZGl0TW9kZWwuSXNFbWFpbCA9IGZhbHNlO1xyXG4gICAgRWRpdE1vZGVsLklzU21zID0gdHJ1ZTtcclxuICAgIEVkaXRNb2RlbC5UZW1wbGF0ZU5hbWUgPSB0aGlzLlRlbXBsYXRlSW5mby50ZW1wbGF0ZU5hbWU7XHJcbiAgICBFZGl0TW9kZWwuTGFuZ3VhZ2UgPSB0aGlzLkxhbmc7XHJcbiAgICBFZGl0TW9kZWwuc21zdGVtcGxhdGVpbmZvLklEID0gdGhpcy5UZW1wbGF0ZUluZm8uc21zdGVtcGxhdGVpbmZvLmlkO1xyXG4gICAgRWRpdE1vZGVsLnNtc3RlbXBsYXRlaW5mby5TTVMuQXJhYmljID0gUmVzdWx0TW9kZWwuU01TSW5BcmFiaWNcclxuICAgIEVkaXRNb2RlbC5zbXN0ZW1wbGF0ZWluZm8uU01TLkVuZ2xpc2ggPSBSZXN1bHRNb2RlbC5TTVNJbkVuZ2xpc2hcclxuXHJcbiAgICBwYXJhbUFycmF5LnB1c2goRWRpdE1vZGVsKTtcclxuICAgIHJldHVybiBwYXJhbUFycmF5O1xyXG4gIH1cclxuXHJcbiAgZ2V0RWRpdFNNU0Z1bmN0aW9uID0gKEVkaXRNb2RlbCk6IE9ic2VydmFibGU8YW55PiA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy50ZW1wbGF0ZVNlcnZpY2UuZWRpdFNNU1RlbXBsYXRlQnlMYW5nKEVkaXRNb2RlbClcclxuICB9XHJcbiAgb25FZGl0U01TU3VjY2VzcyA9IChyZXN1bHQpID0+IHtcclxuICAgIHRoaXMuY2FuY2VsRWRpdCgpO1xyXG4gIH1cclxuICBjYW5jZWxFZGl0KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvQWRtaW4vTm90aWZpY2F0aW9ucy9UZW1wbGF0ZUluZm8nLCB0aGlzLlRlbXBsYXRlSWRFbmNdKTtcclxuICB9XHJcblxyXG4gIC8vQ2hhbmdlIExhbmdcclxuICBjaGFuZ2VDdXJyZW50TGFuZ3VhZ2UobGFuZzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLkxhbmcgPSBsYW5nO1xyXG4gIH1cclxuXHJcbiAgLy9PbiBkZXN0cm95XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlcXVlc3RIYW5kbGVyU2VydmljZS5kZXN0cm95SGFuZGxlcigpO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxibG9jay11aT48L2Jsb2NrLXVpPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZCBjYXJkLWN1c3RvbS1oXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC01XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgIDwhLS17e1RlbXBsYXRlSW5mby50ZW1wbGF0ZU5hbWV9fShTTVMpLS0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpZ2h0LXByaW1hcnkgYnRuLXNtXCIgKGNsaWNrKT1cImNoYW5nZUN1cnJlbnRMYW5ndWFnZSgnYXInKVwiICpuZ0lmPVwiTGFuZz09J2VuJ1wiPlxyXG4gICAgICAgICAgICB7e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJBcmFiaWNcIil9fVxyXG4gICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpZ2h0LXByaW1hcnkgYnRuLXNtXCIgKGNsaWNrKT1cImNoYW5nZUN1cnJlbnRMYW5ndWFnZSgnZW4nKVwiICpuZ0lmPVwiTGFuZz09J2FyJ1wiPlxyXG4gICAgICAgICAgICB7e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJFbmdsaXNoXCIpfX1cclxuICAgICAgICAgIDwvYT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICA8QkJTRi1Gb3JtIFtvcHRpb25zXT1cIkVkaXRTTVNGb3JtT3B0aW9uc1wiICpuZ0lmPVwiSXNGb3JtTG9hZGVkXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwia3QtZm9ybSByb3dcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIkxhbmc9PSdhcidcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICA8QkJTRi1UZXh0QXJlYSBjbGFzcz1cInRleHQtcmlnaHRcIiBbb3B0aW9uc109XCJTTVNJbkFyYWJpY1wiIFtncm91cF09XCJFZGl0U01TRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L0JCU0YtVGV4dEFyZWE+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlwaG9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbW9iaWxlLXR4dFwiPnt7VGVtcGxhdGVJbmZvLnNtc3RlbXBsYXRlaW5mby5zbXMuYXJhYmljfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiTGFuZz09J2VuJ1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxCQlNGLVRleHRBcmVhIFtvcHRpb25zXT1cIlNNU0luRW5nbGlzaFwiIFtncm91cF09XCJFZGl0U01TRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L0JCU0YtVGV4dEFyZWE+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlwaG9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgbW9iaWxlLXR4dFwiPnt7VGVtcGxhdGVJbmZvLnNtc3RlbXBsYXRlaW5mby5zbXMuZW5nbGlzaH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tbGlnaHQtcHJpbWFyeSBidG4tc20gbWUtM1wiIChjbGljayk9XCJjYW5jZWxFZGl0KClcIj57e3V0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJDYW5jZWxMYWJlbFwiKX19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbVwiPnt7dXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIlNhdmVMYWJlbFwiKX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L0JCU0YtRm9ybT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4iXX0=