@bnsights/bbsf-admin-portal 1.1.2 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/{esm2020 → esm2022}/bnsights-bbsf-admin-portal.mjs +4 -4
- package/{esm2020 → esm2022}/lib/Pages/ActiveDirectories/active-directories.component.mjs +14 -14
- package/esm2022/lib/Pages/ActiveDirectories/active-directory/active-directory.component.mjs +421 -0
- package/esm2022/lib/Pages/ActiveDirectories/active-directory-add/active-directory-add.component.mjs +528 -0
- package/{esm2020 → esm2022}/lib/Pages/ActiveDirectories/active-directory-routing.module.mjs +29 -29
- package/esm2022/lib/Pages/ActiveDirectories/active-directory.module.mjs +108 -0
- package/esm2022/lib/Pages/_layout/components/aside/aside-menu/aside-menu.component.mjs +23 -0
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/aside/aside.component.mjs +65 -65
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/content/content.component.mjs +31 -31
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/footer/footer.component.mjs +32 -32
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/header/header.component.mjs +57 -57
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/header/page-title/page-title.component.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/scripts-init/scripts-init.component.mjs +58 -58
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/subheader/subheader.component.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/subheader/subheader.module.mjs +26 -26
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/toolbar/toolbar.component.mjs +41 -41
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/toolbar/toolbar.module.mjs +25 -25
- package/{esm2020 → esm2022}/lib/Pages/_layout/components/topbar/topbar.component.mjs +71 -71
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/activation/activation.component.mjs +92 -92
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/anonymouslayout-routing.module.mjs +37 -37
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/anonymouslayout.component.mjs +54 -54
- package/esm2022/lib/Pages/anonymouslayout/anonymouslayout.module.mjs +100 -0
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/error/error.component.mjs +48 -48
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/forgot-password/forgot-password.component.mjs +59 -59
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/login/login.component.mjs +94 -94
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/rest-password/rest-password.component.mjs +90 -90
- package/{esm2020 → esm2022}/lib/Pages/anonymouslayout/upload-license/upload-license.component.mjs +71 -71
- package/{esm2020 → esm2022}/lib/Pages/authentication/auth-callback/auth-callback.component.mjs +43 -43
- package/{esm2020 → esm2022}/lib/Pages/authentication/authentication.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/Pages/authentication/authentication.module.mjs +41 -41
- package/{esm2020 → esm2022}/lib/Pages/authentication/authentication.routing.mjs +31 -31
- package/esm2022/lib/Pages/configurations/auth-configuration/auth-configuration-edit/auth-configuration-edit.component.mjs +330 -0
- package/esm2022/lib/Pages/configurations/auth-configuration/auth-configuration.component.mjs +157 -0
- package/esm2022/lib/Pages/configurations/configuration/configuration.component.mjs +801 -0
- package/{esm2020 → esm2022}/lib/Pages/configurations/configurations.component.mjs +15 -15
- package/esm2022/lib/Pages/configurations/configurations.module.mjs +104 -0
- package/{esm2020 → esm2022}/lib/Pages/configurations/configurations.routing.mjs +41 -41
- package/{esm2020 → esm2022}/lib/Pages/configurations/index.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/core/auth.module.mjs +30 -30
- package/esm2022/lib/Pages/core/authentication/admin.guard.mjs +17 -0
- package/{esm2020 → esm2022}/lib/Pages/core/authentication/auth.guard.mjs +46 -46
- package/esm2022/lib/Pages/core/authentication/auth.service.mjs +147 -0
- package/esm2022/lib/Pages/departments/department/department.component.mjs +220 -0
- package/esm2022/lib/Pages/departments/department-info/department-info.component.mjs +185 -0
- package/{esm2020 → esm2022}/lib/Pages/departments/departments-routing.module.mjs +27 -27
- package/{esm2020 → esm2022}/lib/Pages/departments/departments.component.mjs +15 -15
- package/esm2022/lib/Pages/departments/departments.module.mjs +94 -0
- package/esm2022/lib/Pages/documents/add-document/add-document.component.mjs +136 -0
- package/esm2022/lib/Pages/documents/document-master-layouts/document-master-layouts.component.mjs +148 -0
- package/{esm2020 → esm2022}/lib/Pages/documents/document-template-info/document-template-info.component.mjs +332 -332
- package/esm2022/lib/Pages/documents/document-templates/document-templates.component.mjs +437 -0
- package/{esm2020 → esm2022}/lib/Pages/documents/documents.component.mjs +15 -15
- package/esm2022/lib/Pages/documents/documents.module.mjs +114 -0
- package/esm2022/lib/Pages/documents/documents.routing.mjs +37 -0
- package/esm2022/lib/Pages/documents/edit-document/edit-document.component.mjs +169 -0
- package/{esm2020 → esm2022}/lib/Pages/documents/edit-document-template/edit-document-template.component.mjs +123 -123
- package/{esm2020 → esm2022}/lib/Pages/empty-data/empty-data.component.mjs +31 -31
- package/{esm2020 → esm2022}/lib/Pages/empty-data/empty-data.module.mjs +28 -28
- package/esm2022/lib/Pages/helpCenter/help-center/help-center.component.mjs +294 -0
- package/esm2022/lib/Pages/helpCenter/help-center-preview/help-center-preview.component.mjs +43 -0
- package/{esm2020 → esm2022}/lib/Pages/helpCenter/help-center-routing.module.mjs +31 -31
- package/esm2022/lib/Pages/helpCenter/help-center-secondlevel/help-center-secondlevel.component.mjs +242 -0
- package/esm2022/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.mjs +243 -0
- package/esm2022/lib/Pages/helpCenter/help-center.module.mjs +99 -0
- package/{esm2020 → esm2022}/lib/Pages/helpCenter/help-centers.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/Pages/home/filter-pipe.mjs +23 -23
- package/esm2022/lib/Pages/home/home.component.mjs +158 -0
- package/esm2022/lib/Pages/home/home.module.mjs +48 -0
- package/esm2022/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.mjs +443 -0
- package/esm2022/lib/Pages/impersonation-rules/impersonation-rules.module.mjs +95 -0
- package/esm2022/lib/Pages/jobs/jobs/jobs.component.mjs +223 -0
- package/esm2022/lib/Pages/jobs/jobs.module.mjs +87 -0
- package/{esm2020 → esm2022}/lib/Pages/license/license/license.component.mjs +163 -163
- package/esm2022/lib/Pages/license/license.module.mjs +71 -0
- package/{esm2020 → esm2022}/lib/Pages/localizations/localizations-replace-text/localizations-replace-text.component.mjs +215 -215
- package/esm2022/lib/Pages/localizations/localizations.component.mjs +516 -0
- package/esm2022/lib/Pages/localizations/localizations.module.mjs +79 -0
- package/{esm2020 → esm2022}/lib/Pages/logs/log/log.component.mjs +93 -93
- package/{esm2020 → esm2022}/lib/Pages/logs/logs-routing.module.mjs +27 -27
- package/{esm2020 → esm2022}/lib/Pages/logs/logs.component.mjs +15 -15
- package/esm2022/lib/Pages/logs/logs.module.mjs +87 -0
- package/esm2022/lib/Pages/lookups/lookup/lookup.component.mjs +367 -0
- package/esm2022/lib/Pages/lookups/lookup-group/lookup-group.component.mjs +187 -0
- package/esm2022/lib/Pages/lookups/lookup-item/lookup-item.component.mjs +297 -0
- package/{esm2020 → esm2022}/lib/Pages/lookups/lookups-routing.module.mjs +29 -29
- package/{esm2020 → esm2022}/lib/Pages/lookups/lookups.component.mjs +15 -15
- package/esm2022/lib/Pages/lookups/lookups.module.mjs +100 -0
- package/esm2022/lib/Pages/notifications/add-notification/add-notification.component.mjs +104 -0
- package/{esm2020 → esm2022}/lib/Pages/notifications/edit-email/edit-email.component.mjs +158 -158
- package/esm2022/lib/Pages/notifications/edit-notification/edit-notification.component.mjs +133 -0
- package/{esm2020 → esm2022}/lib/Pages/notifications/edit-sms/edit-sms.component.mjs +115 -115
- package/esm2022/lib/Pages/notifications/master-layouts/master-layouts.component.mjs +148 -0
- package/esm2022/lib/Pages/notifications/notifications-routing.module.mjs +39 -0
- package/{esm2020 → esm2022}/lib/Pages/notifications/notifications.component.mjs +15 -15
- package/esm2022/lib/Pages/notifications/notifications.module.mjs +101 -0
- package/{esm2020 → esm2022}/lib/Pages/notifications/template-info/template-info.component.mjs +391 -391
- package/esm2022/lib/Pages/notifications/templates/templates.component.mjs +495 -0
- package/esm2022/lib/Pages/providers/provider/provider.component.mjs +615 -0
- package/{esm2020 → esm2022}/lib/Pages/providers/providers-routing.module.mjs +27 -27
- package/{esm2020 → esm2022}/lib/Pages/providers/providers.component.mjs +15 -15
- package/esm2022/lib/Pages/providers/providers.module.mjs +91 -0
- package/esm2022/lib/Pages/publicHolidays/public-holiday/public-holiday.component.mjs +334 -0
- package/{esm2020 → esm2022}/lib/Pages/publicHolidays/public-holidays-routing.module.mjs +25 -25
- package/{esm2020 → esm2022}/lib/Pages/publicHolidays/public-holidays.component.mjs +15 -15
- package/esm2022/lib/Pages/publicHolidays/public-holidays.module.mjs +94 -0
- package/esm2022/lib/Pages/roles/permission-set-info/permission-set-info.component.mjs +187 -0
- package/esm2022/lib/Pages/roles/permissions/permissions.component.mjs +226 -0
- package/esm2022/lib/Pages/roles/permissionsets/permissionsets.component.mjs +277 -0
- package/{esm2020 → esm2022}/lib/Pages/roles/roles-routing.module.mjs +29 -29
- package/{esm2020 → esm2022}/lib/Pages/roles/roles.component.mjs +15 -15
- package/esm2022/lib/Pages/roles/roles.module.mjs +105 -0
- package/esm2022/lib/Pages/sectors/sector/sector.component.mjs +193 -0
- package/esm2022/lib/Pages/sectors/sector-info/sector-info.component.mjs +180 -0
- package/esm2022/lib/Pages/sectors/sectors-department-info/sectors-department-info.component.mjs +187 -0
- package/{esm2020 → esm2022}/lib/Pages/sectors/sectors-routing.module.mjs +29 -29
- package/{esm2020 → esm2022}/lib/Pages/sectors/sectors.component.mjs +15 -15
- package/esm2022/lib/Pages/sectors/sectors.module.mjs +96 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/ADType.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/Enums.mjs +54 -54
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/ProviderType.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/WFActivityType.mjs +11 -11
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/configuration/ConditionRHSType.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/Enums/configuration/authentecation-configuration.mjs +18 -18
- package/{esm2020 → esm2022}/lib/Pages/shared/Pipes/survey-date.pipe.mjs +22 -22
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/AccountService.service.mjs +55 -55
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/ActiveDirectoryService.service.mjs +51 -51
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/AnonymousLayoutService.service.mjs +29 -29
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/ConfigurationsService.service.mjs +61 -61
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/DepartmentService.service.mjs +46 -46
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/DocumentHeaderAndFooterTemplate.service.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/DocumentTemplateService.service.mjs +81 -81
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/EmailHeaderAndFooterTemplateService.Service.mjs +37 -37
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/ErrorService.service.mjs +15 -15
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/GlobalErrorHandler.service.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/HelpCenterService.service.mjs +47 -47
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/HttpErrorInterceptor.service.mjs +47 -47
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/ImpersonationRuleService.service.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/JobsService.service.mjs +21 -21
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/LicenseService.service.mjs +24 -24
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/LogsService.mjs +24 -24
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/LookupGroupsService.service.mjs +33 -33
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/LookupService.service.mjs +67 -67
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/PermissionSetService.service.mjs +50 -50
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/PermissionsService.service.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/PublicHolidayService.service.mjs +39 -39
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/SectorService.service.mjs +46 -46
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/TemplateService.service.mjs +90 -90
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkFlowVersionService.service.mjs +24 -24
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkflowActivityService.service.mjs +54 -54
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkflowInstanceService.service.mjs +24 -24
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkflowLogVariablesService.service.mjs +24 -24
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkflowService.service.mjs +38 -38
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/WorkflowVariablesService.service.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/data.service.mjs +27 -27
- package/esm2022/lib/Pages/shared/Services/injectionModuleService.service.mjs +163 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/localizationsService.service .mjs +77 -77
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/provider.service.mjs +62 -62
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/survey-question.service.mjs +57 -57
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/survey.service.mjs +140 -140
- package/{esm2020 → esm2022}/lib/Pages/shared/Services/userService.service.mjs +80 -80
- package/{esm2020 → esm2022}/lib/Pages/shared/base.service.mjs +19 -19
- package/{esm2020 → esm2022}/lib/Pages/shared/components/AdDirective.mjs +16 -16
- package/{esm2020 → esm2022}/lib/Pages/shared/components/external-url/external-url.component.mjs +168 -168
- package/{esm2020 → esm2022}/lib/Pages/shared/components/no-results/no-results.component.mjs +19 -19
- package/esm2022/lib/Pages/shared/components/survey/add-survey/add-survey.component.mjs +192 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/delete-survey/delete-survey.component.mjs +48 -48
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/duplicate-survey/duplicate-survey.component.mjs +50 -50
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/edit-survey/edit-survey.component.mjs +217 -217
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/submissions/delete-submission/delete-submission.component.mjs +47 -47
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/submissions/eliminate-submission/eliminate-submission.component.mjs +49 -49
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/submissions/uneliminate-submission/uneliminate-submission.component.mjs +50 -50
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/add-question/add-question.component.mjs +624 -624
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/delete-question/delete-question.component.mjs +47 -47
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/edit-question/edit-question.component.mjs +683 -683
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/preview/preview.component.mjs +138 -138
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/publish-survey/publish-survey.component.mjs +102 -102
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/result-question/result.component.mjs +56 -56
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/survey-info.component.mjs +532 -532
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/take-survey/take-survey.component.mjs +113 -113
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey-info/unpublish-survey/unpublish-survey.component.mjs +114 -114
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey/survey.component.mjs +292 -292
- package/esm2022/lib/Pages/shared/components/survey-form/survey-form.component.mjs +696 -0
- package/esm2022/lib/Pages/shared/components/survey-form-item/survey-form-item.component.mjs +84 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/components/survey-layout/survey-layout.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/Pages/shared/config/environment.mjs +11 -11
- package/esm2022/lib/Pages/shared/constants.mjs +130 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/filter/filter.component.mjs +14 -14
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ADModels/ADMappingModel.mjs +3 -3
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ADModels/ActiveDirectoryAddEditModel.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/AccountModels/forgotPasswordModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ConfigurationModels/ConfigurationModel.mjs +50 -50
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DepartmentModels/DepartmentModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DepartmentModels/DepartmentUsersIDRequestModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DocumentsModels/DocumentExportDTO.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DocumentsModels/DocumentHeaderAndFooterTemplate.mjs +9 -9
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DocumentsModels/DocumentTemplateDTO.mjs +9 -9
- package/{esm2020 → esm2022}/lib/Pages/shared/models/DocumentsModels/DocumentTemplateInfoDTO.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/HelpCenterModels/HelpCenterItemModel.mjs +11 -11
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ImpersonationRuleModels/ImpersonationRuleModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ImpersonationRuleModels/ParticipantModel.mjs +8 -8
- package/{esm2020 → esm2022}/lib/Pages/shared/models/InjectedModuleModel/InjectedModule.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/JobModels/JobCountsModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/LicenseModel/LicenseModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/LocalizationModels/EditResourceModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/LocalizationModels/LocalizationReplaceTextModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/LocalizationModels/UploadJsonVM.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/Lookups/LookupGroupModel.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/Lookups/LookupItem.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/Lookups/LookupModel.mjs +8 -8
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/EmailHeaderAndFooterTemplate.mjs +10 -10
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/EmailTemplateInfoDTO.mjs +11 -11
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/EmailTemplateTesterModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/SMSTemplateInfoDTO.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/SMSTemplateTesterModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/SendEmailTemplateModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/TemplateDTO.mjs +9 -9
- package/{esm2020 → esm2022}/lib/Pages/shared/models/NotificationsModels/TemplateEditViewModel.mjs +8 -8
- package/{esm2020 → esm2022}/lib/Pages/shared/models/PermissionsModels/PermissionModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/PermissionsModels/PermissionSetModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/PermissionsModels/PermissionSetUsersIDRequestModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ProviderModels/DefaultProviderModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ProviderModels/EmailProviderTesterModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ProviderModels/ProviderAttributeModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ProviderModels/ProviderModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/ProviderModels/SMSProviderTesterModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/PublicHolidayModels/PublicHolidayModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SectorModels/SectorDepartmentModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SectorModels/SectorModel.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/DeleteSurveyDTO.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/add-survey-submissio.mjs +13 -13
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/add-survey.mjs +10 -10
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/model.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-field-options.mjs +6 -6
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-filed-value.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-form-options.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-publish.mjs +4 -4
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-question-option.mjs +17 -17
- package/{esm2020 → esm2022}/lib/Pages/shared/models/SurveyModels/survey-question.mjs +10 -10
- package/esm2022/lib/Pages/shared/models/SurveyModels/survey-utils.mjs +8 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/ActivationModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/AddUserModel.mjs +36 -36
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/DropdownsResponseModel.mjs +11 -11
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/EditUserModel.mjs +8 -8
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/IdentityModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/UserSearchParamDTO.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/UserModels/UsersIDRequestModel.mjs +5 -5
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/VariableLookupModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/WFActivityModel.mjs +16 -16
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/WFActivityOutcomeModel.mjs +2 -2
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/WFActivityVariablesModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/WFCreationModel.mjs +7 -7
- package/{esm2020 → esm2022}/lib/Pages/shared/models/WorkflowModels/WFVariableModel.mjs +8 -8
- package/{esm2020 → esm2022}/lib/Pages/shared/models/user.registration.mjs +7 -7
- package/esm2022/lib/Pages/shared/modules/public-survey.module.mjs +68 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/modules/survey-routing.module.mjs +39 -39
- package/esm2022/lib/Pages/shared/modules/survey.module.mjs +129 -0
- package/esm2022/lib/Pages/shared/shared.module.mjs +31 -0
- package/{esm2020 → esm2022}/lib/Pages/shared/stylesbundle.service.mjs +44 -44
- package/{esm2020 → esm2022}/lib/Pages/start/index/index.component.mjs +25 -25
- package/{esm2020 → esm2022}/lib/Pages/start/start-routing.module.mjs +22 -22
- package/{esm2020 → esm2022}/lib/Pages/start/start.module.mjs +31 -31
- package/esm2022/lib/Pages/users/users.component.mjs +806 -0
- package/esm2022/lib/Pages/users/users.module.mjs +86 -0
- package/{esm2020 → esm2022}/lib/Pages/workflows/activity/workflow-activity-add/workflow-activity-add.component.mjs +535 -535
- package/{esm2020 → esm2022}/lib/Pages/workflows/activity/workflow-activity-edit/workflow-activity-edit.component.mjs +840 -840
- package/{esm2020 → esm2022}/lib/Pages/workflows/instance-info/instance-info.component.mjs +302 -302
- package/esm2022/lib/Pages/workflows/tabs/tabs.component.mjs +793 -0
- package/{esm2020 → esm2022}/lib/Pages/workflows/version-info/version-info.component.mjs +137 -137
- package/esm2022/lib/Pages/workflows/workflow/workflow.component.mjs +209 -0
- package/{esm2020 → esm2022}/lib/Pages/workflows/workflows-routing.module.mjs +35 -35
- package/{esm2020 → esm2022}/lib/Pages/workflows/workflows.component.mjs +15 -15
- package/esm2022/lib/Pages/workflows/workflows.module.mjs +103 -0
- package/{esm2020 → esm2022}/lib/_metronic/configs/default-layout.config.mjs +95 -95
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/DomHelpers.mjs +270 -270
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/ElementAnimateUtil.mjs +166 -166
- package/esm2022/lib/_metronic/core/_utils/EventHandlerUtil.mjs +90 -0
- package/esm2022/lib/_metronic/core/_utils/_DOMEventHandlerUtil.mjs +49 -0
- package/esm2022/lib/_metronic/core/_utils/_DataUtil.mjs +48 -0
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/_ElementStyleUtil.mjs +16 -16
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/_TypesHelpers.mjs +48 -48
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/models/OffsetModel.mjs +1 -1
- package/{esm2020 → esm2022}/lib/_metronic/core/_utils/models/ViewPortModel.mjs +1 -1
- package/{esm2020 → esm2022}/lib/_metronic/core/components/MenuComponent.mjs +827 -827
- package/{esm2020 → esm2022}/lib/_metronic/core/components/_CookieComponent.mjs +52 -52
- package/esm2022/lib/_metronic/core/components/_DrawerComponent.mjs +288 -0
- package/{esm2020 → esm2022}/lib/_metronic/core/components/_ScrollComponent.mjs +252 -252
- package/esm2022/lib/_metronic/core/components/_ScrollTopComponent.mjs +113 -0
- package/esm2022/lib/_metronic/core/components/_ToggleComponent.mjs +157 -0
- package/{esm2020 → esm2022}/lib/_metronic/core/services/layout-init.service.mjs +155 -155
- package/{esm2020 → esm2022}/lib/_metronic/core/services/layout.service.mjs +150 -150
- package/esm2022/lib/_metronic/core/services/page-info.service.mjs +119 -0
- package/esm2022/lib/masterlayout-routing.module.mjs +41 -0
- package/{esm2020 → esm2022}/lib/masterlayout.component.mjs +118 -118
- package/esm2022/lib/masterlayout.module.mjs +188 -0
- package/{esm2020 → esm2022}/public-api.mjs +48 -48
- package/{fesm2020 → fesm2022}/bnsights-bbsf-admin-portal.mjs +26884 -26881
- package/fesm2022/bnsights-bbsf-admin-portal.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/Pages/ActiveDirectories/active-directories.component.d.ts +8 -8
- package/lib/Pages/ActiveDirectories/active-directory/active-directory.component.d.ts +85 -87
- package/lib/Pages/ActiveDirectories/active-directory-add/active-directory-add.component.d.ts +97 -99
- package/lib/Pages/ActiveDirectories/active-directory-routing.module.d.ts +7 -7
- package/lib/Pages/ActiveDirectories/active-directory.module.d.ts +26 -26
- package/lib/Pages/_layout/components/aside/aside-menu/aside-menu.component.d.ts +13 -13
- package/lib/Pages/_layout/components/aside/aside.component.d.ts +24 -24
- package/lib/Pages/_layout/components/content/content.component.d.ts +13 -13
- package/lib/Pages/_layout/components/footer/footer.component.d.ts +14 -14
- package/lib/Pages/_layout/components/header/header.component.d.ts +24 -24
- package/lib/Pages/_layout/components/header/page-title/page-title.component.d.ts +22 -22
- package/lib/Pages/_layout/components/scripts-init/scripts-init.component.d.ts +18 -18
- package/lib/Pages/_layout/components/subheader/subheader.component.d.ts +17 -17
- package/lib/Pages/_layout/components/subheader/subheader.module.d.ts +9 -9
- package/lib/Pages/_layout/components/toolbar/toolbar.component.d.ts +18 -18
- package/lib/Pages/_layout/components/toolbar/toolbar.module.d.ts +10 -10
- package/lib/Pages/_layout/components/topbar/topbar.component.d.ts +44 -44
- package/lib/Pages/anonymouslayout/activation/activation.component.d.ts +32 -32
- package/lib/Pages/anonymouslayout/anonymouslayout-routing.module.d.ts +7 -7
- package/lib/Pages/anonymouslayout/anonymouslayout.component.d.ts +24 -24
- package/lib/Pages/anonymouslayout/anonymouslayout.module.d.ts +21 -21
- package/lib/Pages/anonymouslayout/error/error.component.d.ts +25 -25
- package/lib/Pages/anonymouslayout/forgot-password/forgot-password.component.d.ts +24 -24
- package/lib/Pages/anonymouslayout/login/login.component.d.ts +36 -36
- package/lib/Pages/anonymouslayout/rest-password/rest-password.component.d.ts +32 -32
- package/lib/Pages/anonymouslayout/upload-license/upload-license.component.d.ts +25 -25
- package/lib/Pages/authentication/auth-callback/auth-callback.component.d.ts +21 -21
- package/lib/Pages/authentication/authentication.component.d.ts +8 -8
- package/lib/Pages/authentication/authentication.module.d.ts +12 -12
- package/lib/Pages/authentication/authentication.routing.d.ts +7 -7
- package/lib/Pages/configurations/auth-configuration/auth-configuration-edit/auth-configuration-edit.component.d.ts +75 -75
- package/lib/Pages/configurations/auth-configuration/auth-configuration.component.d.ts +57 -58
- package/lib/Pages/configurations/configuration/configuration.component.d.ts +127 -129
- package/lib/Pages/configurations/configurations.component.d.ts +8 -8
- package/lib/Pages/configurations/configurations.module.d.ts +24 -24
- package/lib/Pages/configurations/configurations.routing.d.ts +7 -7
- package/lib/Pages/configurations/index.d.ts +6 -6
- package/lib/Pages/core/auth.module.d.ts +8 -8
- package/lib/Pages/core/authentication/admin.guard.d.ts +9 -9
- package/lib/Pages/core/authentication/auth.guard.d.ts +14 -14
- package/lib/Pages/core/authentication/auth.service.d.ts +35 -35
- package/lib/Pages/departments/department/department.component.d.ts +66 -68
- package/lib/Pages/departments/department-info/department-info.component.d.ts +58 -60
- package/lib/Pages/departments/departments-routing.module.d.ts +7 -7
- package/lib/Pages/departments/departments.component.d.ts +8 -8
- package/lib/Pages/departments/departments.module.d.ts +21 -21
- package/lib/Pages/documents/{add/add.component.d.ts → add-document/add-document.component.d.ts} +40 -40
- package/lib/Pages/documents/document-master-layouts/document-master-layouts.component.d.ts +51 -53
- package/lib/Pages/documents/document-template-info/document-template-info.component.d.ts +67 -67
- package/lib/Pages/documents/document-templates/document-templates.component.d.ts +87 -89
- package/lib/Pages/documents/documents.component.d.ts +8 -8
- package/lib/Pages/documents/documents.module.d.ts +27 -27
- package/lib/Pages/documents/documents.routing.d.ts +7 -7
- package/lib/Pages/documents/{edit/edit.component.d.ts → edit-document/edit-document.component.d.ts} +42 -42
- package/lib/Pages/documents/edit-document-template/edit-document-template.component.d.ts +39 -39
- package/lib/Pages/empty-data/empty-data.component.d.ts +14 -14
- package/lib/Pages/empty-data/empty-data.module.d.ts +8 -8
- package/lib/Pages/helpCenter/help-center/help-center.component.d.ts +69 -71
- package/lib/Pages/helpCenter/help-center-preview/help-center-preview.component.d.ts +23 -23
- package/lib/Pages/helpCenter/help-center-routing.module.d.ts +7 -7
- package/lib/Pages/helpCenter/help-center-secondlevel/help-center-secondlevel.component.d.ts +65 -67
- package/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.d.ts +64 -66
- package/lib/Pages/helpCenter/help-center.module.d.ts +25 -25
- package/lib/Pages/helpCenter/help-centers.component.d.ts +8 -8
- package/lib/Pages/home/filter-pipe.d.ts +7 -7
- package/lib/Pages/home/home.component.d.ts +19 -19
- package/lib/Pages/home/home.module.d.ts +14 -14
- package/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.d.ts +86 -88
- package/lib/Pages/impersonation-rules/impersonation-rules.module.d.ts +19 -19
- package/lib/Pages/jobs/jobs/jobs.component.d.ts +76 -77
- package/lib/Pages/jobs/jobs.module.d.ts +17 -17
- package/lib/Pages/license/license/license.component.d.ts +59 -59
- package/lib/Pages/license/license.module.d.ts +15 -15
- package/lib/Pages/localizations/localizations-replace-text/localizations-replace-text.component.d.ts +53 -53
- package/lib/Pages/localizations/localizations.component.d.ts +108 -110
- package/lib/Pages/localizations/localizations.module.d.ts +18 -18
- package/lib/Pages/logs/log/log.component.d.ts +34 -34
- package/lib/Pages/logs/logs-routing.module.d.ts +7 -7
- package/lib/Pages/logs/logs.component.d.ts +8 -8
- package/lib/Pages/logs/logs.module.d.ts +20 -20
- package/lib/Pages/lookups/lookup/lookup.component.d.ts +83 -85
- package/lib/Pages/lookups/lookup-group/lookup-group.component.d.ts +58 -60
- package/lib/Pages/lookups/lookup-item/lookup-item.component.d.ts +84 -86
- package/lib/Pages/lookups/lookups-routing.module.d.ts +7 -7
- package/lib/Pages/lookups/lookups.component.d.ts +8 -8
- package/lib/Pages/lookups/lookups.module.d.ts +24 -24
- package/lib/Pages/notifications/{add/add.component.d.ts → add-notification/add-notification.component.d.ts} +33 -33
- package/lib/Pages/notifications/edit-email/edit-email.component.d.ts +43 -43
- package/lib/Pages/notifications/{edit/edit.component.d.ts → edit-notification/edit-notification.component.d.ts} +35 -35
- package/lib/Pages/notifications/edit-sms/edit-sms.component.d.ts +37 -37
- package/lib/Pages/notifications/master-layouts/master-layouts.component.d.ts +51 -53
- package/lib/Pages/notifications/notifications-routing.module.d.ts +7 -7
- package/lib/Pages/notifications/notifications.component.d.ts +8 -8
- package/lib/Pages/notifications/notifications.module.d.ts +28 -28
- package/lib/Pages/notifications/template-info/template-info.component.d.ts +86 -86
- package/lib/Pages/notifications/templates/templates.component.d.ts +100 -102
- package/lib/Pages/providers/provider/provider.component.d.ts +118 -120
- package/lib/Pages/providers/providers-routing.module.d.ts +7 -7
- package/lib/Pages/providers/providers.component.d.ts +8 -8
- package/lib/Pages/providers/providers.module.d.ts +21 -21
- package/lib/Pages/publicHolidays/public-holiday/public-holiday.component.d.ts +73 -75
- package/lib/Pages/publicHolidays/public-holidays-routing.module.d.ts +7 -7
- package/lib/Pages/publicHolidays/public-holidays.component.d.ts +8 -8
- package/lib/Pages/publicHolidays/public-holidays.module.d.ts +21 -21
- package/lib/Pages/roles/permission-set-info/permission-set-info.component.d.ts +56 -58
- package/lib/Pages/roles/permissions/permissions.component.d.ts +63 -65
- package/lib/Pages/roles/permissionsets/permissionsets.component.d.ts +67 -69
- package/lib/Pages/roles/roles-routing.module.d.ts +7 -7
- package/lib/Pages/roles/roles.component.d.ts +8 -8
- package/lib/Pages/roles/roles.module.d.ts +24 -24
- package/lib/Pages/sectors/sector/sector.component.d.ts +62 -64
- package/lib/Pages/sectors/sector-info/sector-info.component.d.ts +60 -62
- package/lib/Pages/sectors/{department-info/department-info.component.d.ts → sectors-department-info/sectors-department-info.component.d.ts} +61 -63
- package/lib/Pages/sectors/sectors-routing.module.d.ts +7 -7
- package/lib/Pages/sectors/sectors.component.d.ts +8 -8
- package/lib/Pages/sectors/sectors.module.d.ts +23 -23
- package/lib/Pages/shared/Enums/ADType.d.ts +4 -4
- package/lib/Pages/shared/Enums/Enums.d.ts +47 -47
- package/lib/Pages/shared/Enums/ProviderType.d.ts +5 -5
- package/lib/Pages/shared/Enums/WFActivityType.d.ts +10 -10
- package/lib/Pages/shared/Enums/configuration/ConditionRHSType.d.ts +4 -4
- package/lib/Pages/shared/Enums/configuration/authentecation-configuration.d.ts +15 -15
- package/lib/Pages/shared/Pipes/survey-date.pipe.d.ts +12 -12
- package/lib/Pages/shared/Services/AccountService.service.d.ts +21 -21
- package/lib/Pages/shared/Services/ActiveDirectoryService.service.d.ts +18 -18
- package/lib/Pages/shared/Services/AnonymousLayoutService.service.d.ts +17 -17
- package/lib/Pages/shared/Services/ConfigurationsService.service.d.ts +20 -20
- package/lib/Pages/shared/Services/DepartmentService.service.d.ts +18 -18
- package/lib/Pages/shared/Services/DocumentHeaderAndFooterTemplate.service.d.ts +15 -15
- package/lib/Pages/shared/Services/DocumentTemplateService.service.d.ts +26 -26
- package/lib/Pages/shared/Services/EmailHeaderAndFooterTemplateService.Service.d.ts +15 -15
- package/lib/Pages/shared/Services/ErrorService.service.d.ts +8 -8
- package/lib/Pages/shared/Services/GlobalErrorHandler.service.d.ts +10 -10
- package/lib/Pages/shared/Services/HelpCenterService.service.d.ts +18 -18
- package/lib/Pages/shared/Services/HttpErrorInterceptor.service.d.ts +12 -12
- package/lib/Pages/shared/Services/ImpersonationRuleService.service.d.ts +15 -15
- package/lib/Pages/shared/Services/JobsService.service.d.ts +10 -10
- package/lib/Pages/shared/Services/LicenseService.service.d.ts +12 -12
- package/lib/Pages/shared/Services/LogsService.d.ts +10 -10
- package/lib/Pages/shared/Services/LookupGroupsService.service.d.ts +14 -14
- package/lib/Pages/shared/Services/LookupService.service.d.ts +25 -25
- package/lib/Pages/shared/Services/PermissionSetService.service.d.ts +19 -19
- package/lib/Pages/shared/Services/PermissionsService.service.d.ts +15 -15
- package/lib/Pages/shared/Services/PublicHolidayService.service.d.ts +16 -16
- package/lib/Pages/shared/Services/SectorService.service.d.ts +18 -18
- package/lib/Pages/shared/Services/TemplateService.service.d.ts +34 -34
- package/lib/Pages/shared/Services/WorkFlowVersionService.service.d.ts +10 -10
- package/lib/Pages/shared/Services/WorkflowActivityService.service.d.ts +19 -19
- package/lib/Pages/shared/Services/WorkflowInstanceService.service.d.ts +10 -10
- package/lib/Pages/shared/Services/WorkflowLogVariablesService.service.d.ts +10 -10
- package/lib/Pages/shared/Services/WorkflowService.service.d.ts +15 -15
- package/lib/Pages/shared/Services/WorkflowVariablesService.service.d.ts +15 -15
- package/lib/Pages/shared/Services/data.service.d.ts +9 -9
- package/lib/Pages/shared/Services/injectionModuleService.service.d.ts +50 -50
- package/lib/Pages/shared/Services/localizationsService.service .d.ts +28 -28
- package/lib/Pages/shared/Services/provider.service.d.ts +25 -25
- package/lib/Pages/shared/Services/survey-question.service.d.ts +19 -19
- package/lib/Pages/shared/Services/survey.service.d.ts +38 -38
- package/lib/Pages/shared/Services/userService.service.d.ts +29 -29
- package/lib/Pages/shared/base.service.d.ts +4 -4
- package/lib/Pages/shared/components/AdDirective.d.ts +8 -8
- package/lib/Pages/shared/components/external-url/external-url.component.d.ts +61 -61
- package/lib/Pages/shared/components/no-results/no-results.component.d.ts +10 -10
- package/lib/Pages/shared/components/survey/add-survey/add-survey.component.d.ts +40 -40
- package/lib/Pages/shared/components/survey/delete-survey/delete-survey.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/duplicate-survey/duplicate-survey.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/edit-survey/edit-survey.component.d.ts +43 -43
- package/lib/Pages/shared/components/survey/submissions/delete-submission/delete-submission.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/submissions/eliminate-submission/eliminate-submission.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/submissions/uneliminate-submission/uneliminate-submission.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/survey-info/add-question/add-question.component.d.ts +83 -83
- package/lib/Pages/shared/components/survey/survey-info/delete-question/delete-question.component.d.ts +19 -19
- package/lib/Pages/shared/components/survey/survey-info/edit-question/edit-question.component.d.ts +84 -84
- package/lib/Pages/shared/components/survey/survey-info/preview/preview.component.d.ts +40 -40
- package/lib/Pages/shared/components/survey/survey-info/publish-survey/publish-survey.component.d.ts +31 -31
- package/lib/Pages/shared/components/survey/survey-info/result-question/result.component.d.ts +27 -27
- package/lib/Pages/shared/components/survey/survey-info/survey-info.component.d.ts +119 -119
- package/lib/Pages/shared/components/survey/survey-info/take-survey/take-survey.component.d.ts +39 -39
- package/lib/Pages/shared/components/survey/survey-info/unpublish-survey/unpublish-survey.component.d.ts +32 -32
- package/lib/Pages/shared/components/survey/survey.component.d.ts +65 -65
- package/lib/Pages/shared/components/survey-form/survey-form.component.d.ts +41 -41
- package/lib/Pages/shared/components/survey-form-item/survey-form-item.component.d.ts +23 -23
- package/lib/Pages/shared/components/survey-layout/survey-layout.component.d.ts +8 -8
- package/lib/Pages/shared/config/environment.d.ts +1 -1
- package/lib/Pages/shared/constants.d.ts +129 -129
- package/lib/Pages/shared/filter/filter.component.d.ts +8 -8
- package/lib/Pages/shared/models/ADModels/ADMappingModel.d.ts +6 -6
- package/lib/Pages/shared/models/ADModels/ActiveDirectoryAddEditModel.d.ts +28 -28
- package/lib/Pages/shared/models/AccountModels/forgotPasswordModel.d.ts +3 -3
- package/lib/Pages/shared/models/ConfigurationModels/ConfigurationModel.d.ts +64 -64
- package/lib/Pages/shared/models/DepartmentModels/DepartmentModel.d.ts +9 -9
- package/lib/Pages/shared/models/DepartmentModels/DepartmentUsersIDRequestModel.d.ts +4 -4
- package/lib/Pages/shared/models/DocumentsModels/DocumentExportDTO.d.ts +8 -8
- package/lib/Pages/shared/models/DocumentsModels/DocumentHeaderAndFooterTemplate.d.ts +16 -16
- package/lib/Pages/shared/models/DocumentsModels/DocumentTemplateDTO.d.ts +13 -13
- package/lib/Pages/shared/models/DocumentsModels/DocumentTemplateInfoDTO.d.ts +7 -7
- package/lib/Pages/shared/models/HelpCenterModels/HelpCenterItemModel.d.ts +17 -17
- package/lib/Pages/shared/models/ImpersonationRuleModels/ImpersonationRuleModel.d.ts +9 -9
- package/lib/Pages/shared/models/ImpersonationRuleModels/ParticipantModel.d.ts +15 -15
- package/lib/Pages/shared/models/InjectedModuleModel/InjectedModule.d.ts +5 -5
- package/lib/Pages/shared/models/JobModels/JobCountsModel.d.ts +8 -8
- package/lib/Pages/shared/models/LicenseModel/LicenseModel.d.ts +5 -5
- package/lib/Pages/shared/models/LocalizationModels/EditResourceModel.d.ts +7 -7
- package/lib/Pages/shared/models/LocalizationModels/LocalizationReplaceTextModel.d.ts +9 -9
- package/lib/Pages/shared/models/LocalizationModels/UploadJsonVM.d.ts +5 -5
- package/lib/Pages/shared/models/Lookups/LookupGroupModel.d.ts +5 -5
- package/lib/Pages/shared/models/Lookups/LookupItem.d.ts +13 -13
- package/lib/Pages/shared/models/Lookups/LookupModel.d.ts +13 -13
- package/lib/Pages/shared/models/NotificationsModels/EmailHeaderAndFooterTemplate.d.ts +9 -9
- package/lib/Pages/shared/models/NotificationsModels/EmailTemplateInfoDTO.d.ts +15 -15
- package/lib/Pages/shared/models/NotificationsModels/EmailTemplateTesterModel.d.ts +9 -9
- package/lib/Pages/shared/models/NotificationsModels/SMSTemplateInfoDTO.d.ts +9 -9
- package/lib/Pages/shared/models/NotificationsModels/SMSTemplateTesterModel.d.ts +9 -9
- package/lib/Pages/shared/models/NotificationsModels/SendEmailTemplateModel.d.ts +8 -8
- package/lib/Pages/shared/models/NotificationsModels/TemplateDTO.d.ts +22 -22
- package/lib/Pages/shared/models/NotificationsModels/TemplateEditViewModel.d.ts +11 -11
- package/lib/Pages/shared/models/PermissionsModels/PermissionModel.d.ts +8 -8
- package/lib/Pages/shared/models/PermissionsModels/PermissionSetModel.d.ts +10 -10
- package/lib/Pages/shared/models/PermissionsModels/PermissionSetUsersIDRequestModel.d.ts +4 -4
- package/lib/Pages/shared/models/ProviderModels/DefaultProviderModel.d.ts +6 -6
- package/lib/Pages/shared/models/ProviderModels/EmailProviderTesterModel.d.ts +7 -7
- package/lib/Pages/shared/models/ProviderModels/ProviderAttributeModel.d.ts +7 -7
- package/lib/Pages/shared/models/ProviderModels/ProviderModel.d.ts +13 -13
- package/lib/Pages/shared/models/ProviderModels/SMSProviderTesterModel.d.ts +6 -6
- package/lib/Pages/shared/models/PublicHolidayModels/PublicHolidayModel.d.ts +15 -15
- package/lib/Pages/shared/models/SectorModels/SectorDepartmentModel.d.ts +4 -4
- package/lib/Pages/shared/models/SectorModels/SectorModel.d.ts +6 -6
- package/lib/Pages/shared/models/SurveyModels/DeleteSurveyDTO.d.ts +3 -3
- package/lib/Pages/shared/models/SurveyModels/add-survey-submissio.d.ts +21 -21
- package/lib/Pages/shared/models/SurveyModels/add-survey.d.ts +18 -18
- package/lib/Pages/shared/models/SurveyModels/model.d.ts +3 -3
- package/lib/Pages/shared/models/SurveyModels/survey-field-options.d.ts +24 -24
- package/lib/Pages/shared/models/SurveyModels/survey-filed-value.d.ts +22 -22
- package/lib/Pages/shared/models/SurveyModels/survey-form-options.d.ts +8 -8
- package/lib/Pages/shared/models/SurveyModels/survey-publish.d.ts +15 -15
- package/lib/Pages/shared/models/SurveyModels/survey-question-option.d.ts +9 -9
- package/lib/Pages/shared/models/SurveyModels/survey-question.d.ts +21 -21
- package/lib/Pages/shared/models/SurveyModels/survey-utils.d.ts +5 -5
- package/lib/Pages/shared/models/UserModels/ActivationModel.d.ts +10 -10
- package/lib/Pages/shared/models/UserModels/AddUserModel.d.ts +33 -33
- package/lib/Pages/shared/models/UserModels/DropdownsResponseModel.d.ts +9 -9
- package/lib/Pages/shared/models/UserModels/EditUserModel.d.ts +25 -25
- package/lib/Pages/shared/models/UserModels/IdentityModel.d.ts +9 -9
- package/lib/Pages/shared/models/UserModels/UserSearchParamDTO.d.ts +8 -8
- package/lib/Pages/shared/models/UserModels/UsersIDRequestModel.d.ts +3 -3
- package/lib/Pages/shared/models/WorkflowModels/VariableLookupModel.d.ts +9 -9
- package/lib/Pages/shared/models/WorkflowModels/WFActivityModel.d.ts +40 -40
- package/lib/Pages/shared/models/WorkflowModels/WFActivityOutcomeModel.d.ts +13 -13
- package/lib/Pages/shared/models/WorkflowModels/WFActivityVariablesModel.d.ts +13 -13
- package/lib/Pages/shared/models/WorkflowModels/WFCreationModel.d.ts +10 -10
- package/lib/Pages/shared/models/WorkflowModels/WFVariableModel.d.ts +23 -23
- package/lib/Pages/shared/models/user.registration.d.ts +6 -6
- package/lib/Pages/shared/modules/public-survey.module.d.ts +15 -15
- package/lib/Pages/shared/modules/survey-routing.module.d.ts +7 -7
- package/lib/Pages/shared/modules/survey.module.d.ts +35 -35
- package/lib/Pages/shared/shared.module.d.ts +8 -8
- package/lib/Pages/shared/stylesbundle.service.d.ts +9 -9
- package/lib/Pages/start/index/index.component.d.ts +15 -15
- package/lib/Pages/start/start-routing.module.d.ts +7 -7
- package/lib/Pages/start/start.module.d.ts +11 -11
- package/lib/Pages/users/users.component.d.ts +138 -139
- package/lib/Pages/users/users.module.d.ts +18 -18
- package/lib/Pages/workflows/activity/workflow-activity-add/workflow-activity-add.component.d.ts +77 -77
- package/lib/Pages/workflows/activity/workflow-activity-edit/workflow-activity-edit.component.d.ts +82 -82
- package/lib/Pages/workflows/instance-info/instance-info.component.d.ts +81 -81
- package/lib/Pages/workflows/tabs/tabs.component.d.ts +126 -128
- package/lib/Pages/workflows/version-info/version-info.component.d.ts +41 -41
- package/lib/Pages/workflows/workflow/workflow.component.d.ts +54 -55
- package/lib/Pages/workflows/workflows-routing.module.d.ts +7 -7
- package/lib/Pages/workflows/workflows.component.d.ts +8 -8
- package/lib/Pages/workflows/workflows.module.d.ts +27 -27
- package/lib/_metronic/configs/default-layout.config.d.ts +139 -139
- package/lib/_metronic/core/_utils/DomHelpers.d.ts +26 -26
- package/lib/_metronic/core/_utils/ElementAnimateUtil.d.ts +13 -13
- package/lib/_metronic/core/_utils/EventHandlerUtil.d.ts +20 -20
- package/lib/_metronic/core/_utils/_DOMEventHandlerUtil.d.ts +6 -6
- package/lib/_metronic/core/_utils/_DataUtil.d.ts +8 -8
- package/lib/_metronic/core/_utils/_ElementStyleUtil.d.ts +5 -5
- package/lib/_metronic/core/_utils/_TypesHelpers.d.ts +10 -10
- package/lib/_metronic/core/_utils/models/OffsetModel.d.ts +4 -4
- package/lib/_metronic/core/_utils/models/ViewPortModel.d.ts +4 -4
- package/lib/_metronic/core/components/MenuComponent.d.ts +88 -88
- package/lib/_metronic/core/components/_CookieComponent.d.ts +25 -25
- package/lib/_metronic/core/components/_DrawerComponent.d.ts +49 -49
- package/lib/_metronic/core/components/_ScrollComponent.d.ts +31 -31
- package/lib/_metronic/core/components/_ScrollTopComponent.d.ts +24 -24
- package/lib/_metronic/core/components/_ToggleComponent.d.ts +36 -36
- package/lib/_metronic/core/services/layout-init.service.d.ts +18 -18
- package/lib/_metronic/core/services/layout.service.d.ts +38 -38
- package/lib/_metronic/core/services/page-info.service.d.ts +32 -32
- package/lib/masterlayout-routing.module.d.ts +11 -13
- package/lib/masterlayout.component.d.ts +63 -63
- package/lib/masterlayout.module.d.ts +34 -34
- package/package.json +25 -30
- package/public-api.d.ts +41 -41
- package/src/lib/assets/images/menu/Tools.svg +10 -4
- package/src/lib/assets/images/menu/authentication.svg +9 -0
- package/src/lib/assets/sass/style-rtl.scss +3 -3
- package/src/lib/assets/sass/style.scss +3 -3
- package/bnsights-bbsf-admin-portal-1.1.2.tgz +0 -0
- package/esm2020/lib/Pages/ActiveDirectories/active-directory/active-directory.component.mjs +0 -421
- package/esm2020/lib/Pages/ActiveDirectories/active-directory-add/active-directory-add.component.mjs +0 -528
- package/esm2020/lib/Pages/ActiveDirectories/active-directory.module.mjs +0 -108
- package/esm2020/lib/Pages/_layout/components/aside/aside-menu/aside-menu.component.mjs +0 -23
- package/esm2020/lib/Pages/anonymouslayout/anonymouslayout.module.mjs +0 -100
- package/esm2020/lib/Pages/configurations/auth-configuration/auth-configuration-edit/auth-configuration-edit.component.mjs +0 -330
- package/esm2020/lib/Pages/configurations/auth-configuration/auth-configuration.component.mjs +0 -157
- package/esm2020/lib/Pages/configurations/configuration/configuration.component.mjs +0 -801
- package/esm2020/lib/Pages/configurations/configurations.module.mjs +0 -104
- package/esm2020/lib/Pages/core/authentication/admin.guard.mjs +0 -17
- package/esm2020/lib/Pages/core/authentication/auth.service.mjs +0 -147
- package/esm2020/lib/Pages/departments/department/department.component.mjs +0 -220
- package/esm2020/lib/Pages/departments/department-info/department-info.component.mjs +0 -185
- package/esm2020/lib/Pages/departments/departments.module.mjs +0 -94
- package/esm2020/lib/Pages/documents/add/add.component.mjs +0 -136
- package/esm2020/lib/Pages/documents/document-master-layouts/document-master-layouts.component.mjs +0 -148
- package/esm2020/lib/Pages/documents/document-templates/document-templates.component.mjs +0 -437
- package/esm2020/lib/Pages/documents/documents.module.mjs +0 -114
- package/esm2020/lib/Pages/documents/documents.routing.mjs +0 -37
- package/esm2020/lib/Pages/documents/edit/edit.component.mjs +0 -169
- package/esm2020/lib/Pages/helpCenter/help-center/help-center.component.mjs +0 -294
- package/esm2020/lib/Pages/helpCenter/help-center-preview/help-center-preview.component.mjs +0 -43
- package/esm2020/lib/Pages/helpCenter/help-center-secondlevel/help-center-secondlevel.component.mjs +0 -242
- package/esm2020/lib/Pages/helpCenter/help-center-thirdlevel/help-center-thirdlevel.component.mjs +0 -243
- package/esm2020/lib/Pages/helpCenter/help-center.module.mjs +0 -98
- package/esm2020/lib/Pages/home/home.component.mjs +0 -153
- package/esm2020/lib/Pages/home/home.module.mjs +0 -48
- package/esm2020/lib/Pages/impersonation-rules/impersonation-rules/impersonation-rules.component.mjs +0 -443
- package/esm2020/lib/Pages/impersonation-rules/impersonation-rules.module.mjs +0 -95
- package/esm2020/lib/Pages/jobs/jobs/jobs.component.mjs +0 -223
- package/esm2020/lib/Pages/jobs/jobs.module.mjs +0 -87
- package/esm2020/lib/Pages/license/license.module.mjs +0 -71
- package/esm2020/lib/Pages/localizations/localizations.component.mjs +0 -516
- package/esm2020/lib/Pages/localizations/localizations.module.mjs +0 -79
- package/esm2020/lib/Pages/logs/logs.module.mjs +0 -87
- package/esm2020/lib/Pages/lookups/lookup/lookup.component.mjs +0 -367
- package/esm2020/lib/Pages/lookups/lookup-group/lookup-group.component.mjs +0 -187
- package/esm2020/lib/Pages/lookups/lookup-item/lookup-item.component.mjs +0 -297
- package/esm2020/lib/Pages/lookups/lookups.module.mjs +0 -100
- package/esm2020/lib/Pages/notifications/add/add.component.mjs +0 -104
- package/esm2020/lib/Pages/notifications/edit/edit.component.mjs +0 -133
- package/esm2020/lib/Pages/notifications/master-layouts/master-layouts.component.mjs +0 -148
- package/esm2020/lib/Pages/notifications/notifications-routing.module.mjs +0 -39
- package/esm2020/lib/Pages/notifications/notifications.module.mjs +0 -101
- package/esm2020/lib/Pages/notifications/templates/templates.component.mjs +0 -495
- package/esm2020/lib/Pages/providers/provider/provider.component.mjs +0 -615
- package/esm2020/lib/Pages/providers/providers.module.mjs +0 -91
- package/esm2020/lib/Pages/publicHolidays/public-holiday/public-holiday.component.mjs +0 -334
- package/esm2020/lib/Pages/publicHolidays/public-holidays.module.mjs +0 -94
- package/esm2020/lib/Pages/roles/permission-set-info/permission-set-info.component.mjs +0 -187
- package/esm2020/lib/Pages/roles/permissions/permissions.component.mjs +0 -226
- package/esm2020/lib/Pages/roles/permissionsets/permissionsets.component.mjs +0 -277
- package/esm2020/lib/Pages/roles/roles.module.mjs +0 -105
- package/esm2020/lib/Pages/sectors/department-info/department-info.component.mjs +0 -187
- package/esm2020/lib/Pages/sectors/sector/sector.component.mjs +0 -193
- package/esm2020/lib/Pages/sectors/sector-info/sector-info.component.mjs +0 -180
- package/esm2020/lib/Pages/sectors/sectors.module.mjs +0 -96
- package/esm2020/lib/Pages/shared/Enums/WFVariableDataType.mjs +0 -14
- package/esm2020/lib/Pages/shared/Services/injectionModuleService.service.mjs +0 -163
- package/esm2020/lib/Pages/shared/components/survey/add-survey/add-survey.component.mjs +0 -192
- package/esm2020/lib/Pages/shared/components/survey-form/survey-form.component.mjs +0 -696
- package/esm2020/lib/Pages/shared/components/survey-form-item/survey-form-item.component.mjs +0 -84
- package/esm2020/lib/Pages/shared/constants.mjs +0 -130
- package/esm2020/lib/Pages/shared/models/SurveyModels/survey-utils.mjs +0 -8
- package/esm2020/lib/Pages/shared/modules/public-survey.module.mjs +0 -68
- package/esm2020/lib/Pages/shared/modules/survey.module.mjs +0 -126
- package/esm2020/lib/Pages/shared/shared.module.mjs +0 -31
- package/esm2020/lib/Pages/users/users.component.mjs +0 -806
- package/esm2020/lib/Pages/users/users.module.mjs +0 -86
- package/esm2020/lib/Pages/workflows/tabs/tabs.component.mjs +0 -793
- package/esm2020/lib/Pages/workflows/workflow/workflow.component.mjs +0 -209
- package/esm2020/lib/Pages/workflows/workflows.module.mjs +0 -103
- package/esm2020/lib/_metronic/core/_utils/EventHandlerUtil.mjs +0 -90
- package/esm2020/lib/_metronic/core/_utils/_DOMEventHandlerUtil.mjs +0 -49
- package/esm2020/lib/_metronic/core/_utils/_DataUtil.mjs +0 -48
- package/esm2020/lib/_metronic/core/components/_DrawerComponent.mjs +0 -290
- package/esm2020/lib/_metronic/core/components/_ScrollTopComponent.mjs +0 -113
- package/esm2020/lib/_metronic/core/components/_ToggleComponent.mjs +0 -157
- package/esm2020/lib/_metronic/core/services/page-info.service.mjs +0 -119
- package/esm2020/lib/masterlayout-routing.module.mjs +0 -45
- package/esm2020/lib/masterlayout.module.mjs +0 -188
- package/fesm2015/bnsights-bbsf-admin-portal.mjs +0 -27293
- package/fesm2015/bnsights-bbsf-admin-portal.mjs.map +0 -1
- package/fesm2020/bnsights-bbsf-admin-portal.mjs.map +0 -1
- package/lib/Pages/shared/Enums/WFVariableDataType.d.ts +0 -12
|
@@ -1,292 +1,292 @@
|
|
|
1
|
-
import { Component, ViewChild } from '@angular/core';
|
|
2
|
-
import { FormGroup } from '@angular/forms';
|
|
3
|
-
import { ControlLayout, DataType, DatePickerOptions, DropdownOptions, FilterItem, FilterType, InputType, StartView, TextBoxOptions, PickerType, SelectMode, PagingOptions, PageHeaderOptions, AppBaseComponent, } from '@bnsights/bbsf-controls';
|
|
4
|
-
import { SurveyMode, SurveyStatusEnum } from '../../Enums/Enums';
|
|
5
|
-
import { SurveyConfig } from '../../models/SurveyModels/survey-utils';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../Services/survey.service";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "@angular/router";
|
|
10
|
-
import * as i4 from "@bnsights/bbsf-controls";
|
|
11
|
-
import * as i5 from "@ng-bootstrap/ng-bootstrap";
|
|
12
|
-
import * as i6 from "ng-inline-svg";
|
|
13
|
-
import * as i7 from "./add-survey/add-survey.component";
|
|
14
|
-
import * as i8 from "./edit-survey/edit-survey.component";
|
|
15
|
-
import * as i9 from "./delete-survey/delete-survey.component";
|
|
16
|
-
import * as i10 from "./duplicate-survey/duplicate-survey.component";
|
|
17
|
-
import * as i11 from "../no-results/no-results.component";
|
|
18
|
-
import * as i12 from "../../Pipes/survey-date.pipe";
|
|
19
|
-
export class SurveyComponent extends AppBaseComponent {
|
|
20
|
-
constructor(injector, surveyService) {
|
|
21
|
-
super(injector);
|
|
22
|
-
this.injector = injector;
|
|
23
|
-
this.surveyService = surveyService;
|
|
24
|
-
this.pageTitle = '';
|
|
25
|
-
this.subTitle = '';
|
|
26
|
-
this.surveyForm = new FormGroup({});
|
|
27
|
-
this.enableActions = false;
|
|
28
|
-
this.SurveyStatusEnum = SurveyStatusEnum;
|
|
29
|
-
this.pagingResult = [];
|
|
30
|
-
this.filtersForm = new FormGroup({});
|
|
31
|
-
this.apiURL = this.surveyService.apiURL;
|
|
32
|
-
this.loadingPage = false;
|
|
33
|
-
this.showPageContent = false;
|
|
34
|
-
this.loading = true;
|
|
35
|
-
this.flipping = false;
|
|
36
|
-
this.loadFilters = () => {
|
|
37
|
-
if (!this.isFiltersDataLoaded && !this.showFilters)
|
|
38
|
-
this.loadFiltersData();
|
|
39
|
-
else {
|
|
40
|
-
this.showFilters = !this.showFilters;
|
|
41
|
-
this.loading = true;
|
|
42
|
-
this.isFiltersDataLoaded = false;
|
|
43
|
-
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox =
|
|
44
|
-
this.loading;
|
|
45
|
-
}
|
|
46
|
-
this.flipping = !this.flipping;
|
|
47
|
-
};
|
|
48
|
-
this.loadFiltersData = () => {
|
|
49
|
-
this.surveyService.loadFiltersDropdown().subscribe((r) => {
|
|
50
|
-
let result = r;
|
|
51
|
-
this.statusDropdownOptions.DataSource = result.statuses;
|
|
52
|
-
this.sortDropdownOptions.DataSource = result.surveySortingTypes;
|
|
53
|
-
this.sortTypeDropdownOptions.DataSource = result.sortTypes;
|
|
54
|
-
this.visibleDropdownOptions.DataSource = result.visibility;
|
|
55
|
-
this.showFilters = true;
|
|
56
|
-
this.isFiltersDataLoaded = true;
|
|
57
|
-
this.loading = false;
|
|
58
|
-
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox =
|
|
59
|
-
this.loading;
|
|
60
|
-
});
|
|
61
|
-
};
|
|
62
|
-
this.resetFilters = () => {
|
|
63
|
-
this.filtersForm.controls[this.DatePickerWithRangeMode.Name].setValue(null);
|
|
64
|
-
this.filtersForm.controls[this.visibleDropdownOptions.Name].setValue(null);
|
|
65
|
-
this.filtersForm.controls[this.statusDropdownOptions.Name].setValue(null);
|
|
66
|
-
this.filtersForm.controls[this.sortDropdownOptions.Name].setValue(null);
|
|
67
|
-
this.filtersForm.controls[this.sortTypeDropdownOptions.Name].setValue(null);
|
|
68
|
-
this.filtersForm.controls[this.searchTextBoxOptions.Name].setValue(null);
|
|
69
|
-
this.loading = true;
|
|
70
|
-
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox = this.loading;
|
|
71
|
-
this.pagingElement.ReinitializePaging();
|
|
72
|
-
};
|
|
73
|
-
this.search = () => {
|
|
74
|
-
if (!this.filtersForm.valid)
|
|
75
|
-
return;
|
|
76
|
-
this.loading = true;
|
|
77
|
-
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox = this.loading;
|
|
78
|
-
this.pagingElement.ReinitializePaging();
|
|
79
|
-
};
|
|
80
|
-
this.showAddModal = () => {
|
|
81
|
-
this.addModal.showModal();
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
ngOnInit() {
|
|
85
|
-
if (SurveyConfig.surveyMode == SurveyMode.Survey_Full_Access)
|
|
86
|
-
this.enableActions = true;
|
|
87
|
-
this.pageTitle = this.l('Surveys_Header');
|
|
88
|
-
this.updatePageTitle(this.pageTitle);
|
|
89
|
-
this.breadCrumb = [];
|
|
90
|
-
this.searchTextBoxOptions = new TextBoxOptions();
|
|
91
|
-
this.searchTextBoxOptions.Name = 'SearchTextBox';
|
|
92
|
-
this.searchTextBoxOptions.Type = InputType.Text;
|
|
93
|
-
this.searchTextBoxOptions.Placeholder = this.l('Search');
|
|
94
|
-
this.searchTextBoxOptions.ExtraClasses =
|
|
95
|
-
'form-control form-control-sm form-control-solid search-box';
|
|
96
|
-
this.searchTextBoxOptions.HideLabel = true;
|
|
97
|
-
this.searchTextBoxOptions.Icon = '../../../assets/images/search.svg';
|
|
98
|
-
this.searchTextFilter = new FilterItem();
|
|
99
|
-
this.searchTextFilter.FormControlName = this.searchTextBoxOptions.Name;
|
|
100
|
-
this.searchTextFilter.ActionParameterName = 'SearchText';
|
|
101
|
-
this.searchTextFilter.IsFormControl = true;
|
|
102
|
-
this.searchTextFilter.FilterType = FilterType.TextBox;
|
|
103
|
-
this.visibleDropdownOptions = new DropdownOptions();
|
|
104
|
-
this.visibleDropdownOptions.Name = 'visibleSurvey';
|
|
105
|
-
this.visibleDropdownOptions.LabelKey = 'Visibility';
|
|
106
|
-
this.visibleDropdownOptions.SingleSelection = true;
|
|
107
|
-
this.visiblePanelDropdownFilter = new FilterItem();
|
|
108
|
-
this.visiblePanelDropdownFilter.FormControlName =
|
|
109
|
-
this.visibleDropdownOptions.Name;
|
|
110
|
-
this.visiblePanelDropdownFilter.ActionParameterName = 'ActiveStatus';
|
|
111
|
-
this.visiblePanelDropdownFilter.IsFormControl = true;
|
|
112
|
-
this.visiblePanelDropdownFilter.FilterType = FilterType.DropdownList;
|
|
113
|
-
this.statusDropdownOptions = new DropdownOptions();
|
|
114
|
-
this.statusDropdownOptions.Name = 'Status';
|
|
115
|
-
this.statusDropdownOptions.LabelKey = 'Status';
|
|
116
|
-
this.statusDropdownOptions.SingleSelection = true;
|
|
117
|
-
this.statusDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
118
|
-
this.statusDropdownFilter = new FilterItem();
|
|
119
|
-
this.statusDropdownFilter.FormControlName = this.statusDropdownOptions.Name;
|
|
120
|
-
this.statusDropdownFilter.ActionParameterName = 'SurveyStatus';
|
|
121
|
-
this.statusDropdownFilter.IsFormControl = true;
|
|
122
|
-
this.statusDropdownFilter.FilterType = FilterType.DropdownList;
|
|
123
|
-
this.DatePickerWithRangeMode = new DatePickerOptions();
|
|
124
|
-
this.DatePickerWithRangeMode.Name = 'DatePickerWithRangeMode';
|
|
125
|
-
this.DatePickerWithRangeMode.LabelKey = 'Date';
|
|
126
|
-
this.DatePickerWithRangeMode.ViewType = ControlLayout.Vertical;
|
|
127
|
-
this.DatePickerWithRangeMode.StartView = StartView.Month;
|
|
128
|
-
this.DatePickerWithRangeMode.PickerType = PickerType.Calendar;
|
|
129
|
-
this.DatePickerWithRangeMode.SelectMode = SelectMode.Range;
|
|
130
|
-
this.DatePickerWithRangeFilter = new FilterItem();
|
|
131
|
-
this.DatePickerWithRangeFilter.FormControlName =
|
|
132
|
-
this.DatePickerWithRangeMode.Name;
|
|
133
|
-
this.DatePickerWithRangeFilter.ActionParameterName = 'Date';
|
|
134
|
-
this.DatePickerWithRangeFilter.IsFormControl = true;
|
|
135
|
-
this.DatePickerWithRangeFilter.FilterType = FilterType.DatePicker;
|
|
136
|
-
this.sortDropdownOptions = new DropdownOptions();
|
|
137
|
-
this.sortDropdownOptions.Name = 'Sort';
|
|
138
|
-
this.sortDropdownOptions.LabelKey = 'Sort';
|
|
139
|
-
this.sortDropdownOptions.SingleSelection = true;
|
|
140
|
-
this.sortDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
141
|
-
this.sortDropdownFilter = new FilterItem();
|
|
142
|
-
this.sortDropdownFilter.FormControlName = this.sortDropdownOptions.Name;
|
|
143
|
-
this.sortDropdownFilter.ActionParameterName = 'SortBy';
|
|
144
|
-
this.sortDropdownFilter.IsFormControl = true;
|
|
145
|
-
this.sortDropdownFilter.FilterType = FilterType.DropdownList;
|
|
146
|
-
this.sortTypeDropdownOptions = new DropdownOptions();
|
|
147
|
-
this.sortTypeDropdownOptions.Name = 'SortType';
|
|
148
|
-
this.sortTypeDropdownOptions.LabelKey = 'SortType';
|
|
149
|
-
this.sortTypeDropdownOptions.SingleSelection = true;
|
|
150
|
-
this.sortTypeDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
151
|
-
this.sortTypeDropdownFilter = new FilterItem();
|
|
152
|
-
this.sortTypeDropdownFilter.FormControlName =
|
|
153
|
-
this.sortTypeDropdownOptions.Name;
|
|
154
|
-
this.sortTypeDropdownFilter.ActionParameterName = 'SortType';
|
|
155
|
-
this.sortTypeDropdownFilter.IsFormControl = true;
|
|
156
|
-
this.sortTypeDropdownFilter.FilterType = FilterType.DropdownList;
|
|
157
|
-
this.pageHeaderOptions = new PageHeaderOptions();
|
|
158
|
-
this.pageHeaderOptions.TitleKey = this.pageTitle;
|
|
159
|
-
this.pageHeaderOptions.SubTitleKey = this.l('Survey_SubHeader');
|
|
160
|
-
this.pageHeaderOptions.SearchTextBox.Active = true;
|
|
161
|
-
this.pageHeaderOptions.SearchTextBox.TextSearchBoxOptions =
|
|
162
|
-
this.searchTextBoxOptions;
|
|
163
|
-
this.pageHeaderOptions.BreadCrumb.Active = true;
|
|
164
|
-
this.pageHeaderOptions.BreadCrumb.BreadCrumbItems = this.breadCrumb;
|
|
165
|
-
this.pageHeaderOptions.EditButton.Active = false;
|
|
166
|
-
this.pageHeaderOptions.ExportButton.Active = false;
|
|
167
|
-
if (this.enableActions) {
|
|
168
|
-
this.pageHeaderOptions.AddButton.Active = true;
|
|
169
|
-
this.pageHeaderOptions.AddButton.ButtonTextKey = this.l('Add');
|
|
170
|
-
this.pageHeaderOptions.AddButton.Function = this.showAddModal;
|
|
171
|
-
}
|
|
172
|
-
this.pageHeaderOptions.FiltersButton.Active = true;
|
|
173
|
-
this.pageHeaderOptions.FiltersButton.ButtonTextKey = this.l('Filters');
|
|
174
|
-
this.pageHeaderOptions.FiltersButton.Function = this.loadFilters;
|
|
175
|
-
this.pageHeaderOptions.Filters.ApplyFunction = this.search;
|
|
176
|
-
this.pageHeaderOptions.Filters.RestFunction = this.resetFilters;
|
|
177
|
-
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
178
|
-
key: DataType.SingleSelect,
|
|
179
|
-
value: this.visibleDropdownOptions,
|
|
180
|
-
});
|
|
181
|
-
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
182
|
-
key: DataType.SingleSelect,
|
|
183
|
-
value: this.statusDropdownOptions,
|
|
184
|
-
});
|
|
185
|
-
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
186
|
-
key: DataType.Date,
|
|
187
|
-
value: this.DatePickerWithRangeMode,
|
|
188
|
-
});
|
|
189
|
-
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
190
|
-
key: DataType.SingleSelect,
|
|
191
|
-
value: this.sortDropdownOptions,
|
|
192
|
-
});
|
|
193
|
-
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
194
|
-
key: DataType.SingleSelect,
|
|
195
|
-
value: this.sortTypeDropdownOptions,
|
|
196
|
-
});
|
|
197
|
-
this.pageHeaderOptions.Listing = true;
|
|
198
|
-
this.EN = this.utilityService.isCurrentLanguageEnglish();
|
|
199
|
-
this.pagingOptions = new PagingOptions();
|
|
200
|
-
this.pagingOptions.PageSize = 8;
|
|
201
|
-
this.pagingOptions.DisableBlockUI = true;
|
|
202
|
-
this.pagingOptions.ActionPostURL = this.apiURL + 'GetAll';
|
|
203
|
-
this.pageHeaderOptions.Listing = true;
|
|
204
|
-
this.pagingOptions.OnKeyPressFiltersControlNames = [
|
|
205
|
-
this.searchTextBoxOptions.Name,
|
|
206
|
-
];
|
|
207
|
-
this.pagingOptions.Filters = [
|
|
208
|
-
this.searchTextFilter,
|
|
209
|
-
this.visiblePanelDropdownFilter,
|
|
210
|
-
this.statusDropdownFilter,
|
|
211
|
-
this.DatePickerWithRangeFilter,
|
|
212
|
-
this.sortDropdownFilter,
|
|
213
|
-
this.sortTypeDropdownFilter,
|
|
214
|
-
];
|
|
215
|
-
}
|
|
216
|
-
ngAfterViewInit() {
|
|
217
|
-
this.loadingPage = true;
|
|
218
|
-
}
|
|
219
|
-
setListingResult(result) {
|
|
220
|
-
debugger;
|
|
221
|
-
this.pagingResult = result;
|
|
222
|
-
this.showPageContent = true;
|
|
223
|
-
this.utilityService.stopBlockUI();
|
|
224
|
-
}
|
|
225
|
-
showEditModal(id) {
|
|
226
|
-
this.editModal.showEditModal(id);
|
|
227
|
-
}
|
|
228
|
-
showDuplicateModal(id) {
|
|
229
|
-
this.duplicateModal.showDuplicateModal(id);
|
|
230
|
-
}
|
|
231
|
-
showDeleteModal(id) {
|
|
232
|
-
this.deleteConfirmationModalControl.showDeleteModal(id);
|
|
233
|
-
}
|
|
234
|
-
isEditable(status) {
|
|
235
|
-
let allowEdit = false;
|
|
236
|
-
switch (status.toLocaleLowerCase()) {
|
|
237
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Draft.toLocaleLowerCase():
|
|
238
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Upcoming.toLocaleLowerCase():
|
|
239
|
-
allowEdit = true;
|
|
240
|
-
break;
|
|
241
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Closed.toLocaleLowerCase():
|
|
242
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Published.toLocaleLowerCase():
|
|
243
|
-
allowEdit = false;
|
|
244
|
-
break;
|
|
245
|
-
default:
|
|
246
|
-
break;
|
|
247
|
-
}
|
|
248
|
-
return allowEdit;
|
|
249
|
-
}
|
|
250
|
-
getStatus(status) {
|
|
251
|
-
var Statuses = '';
|
|
252
|
-
switch (status.toLocaleLowerCase()) {
|
|
253
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Draft.toLocaleLowerCase():
|
|
254
|
-
Statuses = 'badge-secondary';
|
|
255
|
-
break;
|
|
256
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Closed.toLocaleLowerCase():
|
|
257
|
-
Statuses = 'badge-danger';
|
|
258
|
-
break;
|
|
259
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Published.toLocaleLowerCase():
|
|
260
|
-
Statuses = 'badge-success';
|
|
261
|
-
break;
|
|
262
|
-
case this.SurveyStatusEnum.ScoringTypeEnum_Upcoming.toLocaleLowerCase():
|
|
263
|
-
Statuses = 'badge-success';
|
|
264
|
-
break;
|
|
265
|
-
default:
|
|
266
|
-
break;
|
|
267
|
-
}
|
|
268
|
-
return Statuses;
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
274
|
-
type: Component,
|
|
275
|
-
args: [{ selector: 'app-survey', template: "<!--toolbar-->\r\n<bbsf-page-header-component [options]=\"pageHeaderOptions\" [group]=\"filtersForm\"></bbsf-page-header-component>\r\n<!--End toolbar-->\r\n<div class=\"container-xxl\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-xl-6 d-flex\" *ngFor=\"let item of pagingResult\">\r\n <div class=\"card card-listing w-icon-boxes survey-card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title line-clamp\">\r\n <a [routerLink]=\"['../info', item.iD_GUID]\">\r\n {{item.localizedTitle}}\r\n </a>\r\n </div>\r\n <div class=\"card-toolbar d-flex flex-nowrap flex-stack\">\r\n <span class=\"badge badge-light bagde-xs me-2\" *ngIf=\"!item.visible\"> {{l(\"NotVisible\")}} </span>\r\n <span class=\"badge bagde-xs badge-light me-2\" [ngClass]=\"getStatus(item.statusItemID)\">{{item.localizedStatus}}</span>\r\n <div ngbDropdown container=\"body\" *ngIf=\"enableActions\" class=\"dropdown-custom\" [placement]=\"EN ? 'bottom-right' : 'bottom-left'\">\r\n <button type=\"button\" class=\"dropdown-toggle-custom btn btn-clear btn-sm\"\r\n ngbDropdownToggle>\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/card-dropdown.svg'\"></span>\r\n </button>\r\n <div ngbDropdownMenu class=\"dropdown-menu-custom\">\r\n <button *ngIf=\"isEditable(item.statusItemID)\" (click)=\"showEditModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/Edit.svg'\">\r\n </span>\r\n {{l(\"Edit\")}}\r\n </button>\r\n <button (click)=\"showDuplicateModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/copy.svg'\">\r\n </span>\r\n {{l(\"Duplicate\")}}\r\n </button>\r\n <button type=\"button\" (click)=\"showDeleteModal(item.iD_GUID)\" apppreventdoubleclick ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\"\r\n [inlineSVG]=\"'/assets/images/Trash.svg'\"></span> {{l(\"Delete\")}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body mb-4\">\r\n <p class=\"line-clamp-1\">\r\n {{item.localizedDesc}}\r\n </p>\r\n </div>\r\n <!--footer type one-->\r\n <div class=\"card-footer pt-0\">\r\n <div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Question')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalQuestionCount}}</span>\r\n </div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Submissions')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalSubmissionsCount}}</span>\r\n </div>\r\n </div>\r\n <div class=\"survery-date\">\r\n <div class=\"icon-boxes align-items-baseline\">\r\n <div class=\"icon-box w-100\">\r\n <div class=\"symbol\">\r\n <span class=\"symbol-label\">\r\n <span class=\"svg-icon svg-icon-4\" [inlineSVG]=\"'/assets/images/calendar.svg'\">\r\n </span>\r\n </span>\r\n </div>\r\n <span class=\"survey-counter-title\" *ngIf=\"item.startDate==null\">\r\n {{l('NotStartedYet')}}\r\n </span>\r\n <div *ngIf=\"item.startDate!=null\" class=\"d-flex flex-stack w-100\">\r\n <span class=\"survey-counter-title\">\r\n {{item.startDate |surveyDate}}\r\n <span *ngIf=\"item.endDate!=null\"> - {{(item.endDate|surveyDate)}}</span>\r\n </span>\r\n <span class=\"badge badge-light\" *ngIf=\"item.endDate==null\">{{l('HasNoEnd')}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <BBSF-Paging (Items)=\"setListingResult($event)\" *ngIf=\"loadingPage\" [options]=\"pagingOptions\" [group]=\"filtersForm\"\r\n #pagingViewElement></BBSF-Paging>\r\n</div>\r\n\r\n\r\n\r\n<app-no-results *ngIf=\"pagingResult.length == 0 && showPageContent\"></app-no-results>\r\n<app-add-survey #addModal [pagingElement]=\"pagingElement\"></app-add-survey>\r\n<app-edit-survey #editModal [pagingElement]=\"pagingElement\"></app-edit-survey>\r\n<app-delete-survey #deleteConfirmationModalControl [pagingElement]=\"pagingElement\"></app-delete-survey>\r\n<app-duplicate-survey #duplicateModal [pagingElement]=\"pagingElement\"></app-duplicate-survey>\r\n" }]
|
|
276
|
-
}], ctorParameters:
|
|
277
|
-
type: ViewChild,
|
|
278
|
-
args: ['pagingViewElement', { static: false }]
|
|
279
|
-
}], addModal: [{
|
|
280
|
-
type: ViewChild,
|
|
281
|
-
args: ['addModal', { static: false }]
|
|
282
|
-
}], editModal: [{
|
|
283
|
-
type: ViewChild,
|
|
284
|
-
args: ['editModal', { static: false }]
|
|
285
|
-
}], deleteConfirmationModalControl: [{
|
|
286
|
-
type: ViewChild,
|
|
287
|
-
args: ['deleteConfirmationModalControl', { static: false }]
|
|
288
|
-
}], duplicateModal: [{
|
|
289
|
-
type: ViewChild,
|
|
290
|
-
args: ['duplicateModal', { static: false }]
|
|
291
|
-
}] } });
|
|
292
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtYWRtaW4tcG9ydGFsL3NyYy9saWIvUGFnZXMvc2hhcmVkL2NvbXBvbmVudHMvc3VydmV5L3N1cnZleS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLWFkbWluLXBvcnRhbC9zcmMvbGliL1BhZ2VzL3NoYXJlZC9jb21wb25lbnRzL3N1cnZleS9zdXJ2ZXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLFNBQVMsRUFBMkIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsYUFBYSxFQUNiLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsU0FBUyxFQUVULFNBQVMsRUFDVCxjQUFjLEVBQ2QsVUFBVSxFQUNWLFVBQVUsRUFDVixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGdCQUFnQixHQUNqQixNQUFNLHlCQUF5QixDQUFDO0FBR2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTXRFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGdCQUFnQjtJQTBDbkQsWUFDVSxRQUFrQixFQUNsQixhQUE0QjtRQUVwQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFIUixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBMUN0QyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsYUFBUSxHQUFHLEVBQUUs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LFFBQVEsR0FBRyxlQUFlLENBQUM7Z0JBQzNCLE1BQU07WUFFUjtnQkFDRSxNQUFNO1NBQ1Q7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzs2R0E3U1UsZUFBZTtpR0FBZixlQUFlLG1sQkNoQzVCLDRtS0E4RkE7NEZEOURhLGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0UsWUFBWTsySEFhdEIsYUFBYTtzQkFEWixTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFFUCxRQUFRO3NCQUFqRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0csU0FBUztzQkFBbkQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUV6Qyw4QkFBOEI7c0JBRDdCLFNBQVM7dUJBQUMsZ0NBQWdDLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUc5RCxjQUFjO3NCQURiLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVsZXRlU3VydmV5Q29tcG9uZW50IH0gZnJvbSAnLi9kZWxldGUtc3VydmV5L2RlbGV0ZS1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdFN1cnZleUNvbXBvbmVudCB9IGZyb20gJy4vZWRpdC1zdXJ2ZXkvZWRpdC1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWRkU3VydmV5Q29tcG9uZW50IH0gZnJvbSAnLi9hZGQtc3VydmV5L2FkZC1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBDb250cm9sTGF5b3V0LFxyXG4gIERhdGFUeXBlLFxyXG4gIERhdGVQaWNrZXJPcHRpb25zLFxyXG4gIERyb3Bkb3duT3B0aW9ucyxcclxuICBGaWx0ZXJJdGVtLFxyXG4gIEZpbHRlclR5cGUsXHJcbiAgSW5wdXRUeXBlLFxyXG4gIFBhZ2luZ0NvbXBvbmVudCxcclxuICBTdGFydFZpZXcsXHJcbiAgVGV4dEJveE9wdGlvbnMsXHJcbiAgUGlja2VyVHlwZSxcclxuICBTZWxlY3RNb2RlLFxyXG4gIFBhZ2luZ09wdGlvbnMsXHJcbiAgUGFnZUhlYWRlck9wdGlvbnMsXHJcbiAgQXBwQmFzZUNvbXBvbmVudCxcclxufSBmcm9tICdAYm5zaWdodHMvYmJzZi1jb250cm9scyc7XHJcblxyXG5pbXBvcnQgeyBEdXBsaWNhdGVTdXJ2ZXlDb21wb25lbnQgfSBmcm9tICcuL2R1cGxpY2F0ZS1zdXJ2ZXkvZHVwbGljYXRlLXN1cnZleS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlNb2RlLCBTdXJ2ZXlTdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvRW51bXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vU2VydmljZXMvc3VydmV5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvU3VydmV5TW9kZWxzL3N1cnZleS11dGlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zdXJ2ZXknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXJ2ZXkuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VydmV5Q29tcG9uZW50IGV4dGVuZHMgQXBwQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcGFnZUhlYWRlck9wdGlvbnM6IFBhZ2VIZWFkZXJPcHRpb25zO1xyXG4gIHBhZ2VUaXRsZSA9ICcnO1xyXG4gIHN1YlRpdGxlID0gJyc7XHJcbiAgc3VydmV5Rm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gIGJyZWFkQ3J1bWI6IGFueVtdO1xyXG4gIEVOOiBib29sZWFuO1xyXG4gIGVuYWJsZUFjdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgU3VydmV5U3RhdHVzRW51bSA9IFN1cnZleVN0YXR1c0VudW07XHJcbiAgQFZpZXdDaGlsZCgncGFnaW5nVmlld0VsZW1lbnQnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBwYWdpbmdFbGVtZW50OiBQYWdpbmdDb21wb25lbnQ8YW55PjtcclxuICBAVmlld0NoaWxkKCdhZGRNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBhZGRNb2RhbDogQWRkU3VydmV5Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2VkaXRNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBlZGl0TW9kYWw6IEVkaXRTdXJ2ZXlDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZGVsZXRlQ29uZmlybWF0aW9uTW9kYWxDb250cm9sJywgeyBzdGF0aWM6IGZhbHNlIH0pXHJcbiAgZGVsZXRlQ29uZmlybWF0aW9uTW9kYWxDb250cm9sOiBEZWxldGVTdXJ2ZXlDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZHVwbGljYXRlTW9kYWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBkdXBsaWNhdGVNb2RhbDogRHVwbGljYXRlU3VydmV5Q29tcG9uZW50O1xyXG5cclxuICAvL0xpc3RpbmdcclxuICBzZWFyY2hUZXh0Qm94T3B0aW9uczogYW55O1xyXG4gIHNlYXJjaFRleHRGaWx0ZXI6IEZpbHRlckl0ZW07XHJcbiAgc3RhdHVzRHJvcGRvd25PcHRpb25zOiBEcm9wZG93bk9wdGlvbnM7XHJcbiAgdmlzaWJsZURyb3Bkb3duT3B0aW9uczogRHJvcGRvd25PcHRpb25zO1xyXG4gIHZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHN0YXR1c0Ryb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIERhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlOiBEYXRlUGlja2VyT3B0aW9ucztcclxuICBEYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHNvcnREcm9wZG93bk9wdGlvbnM6IERyb3Bkb3duT3B0aW9ucztcclxuICBzb3J0VHlwZURyb3Bkb3duT3B0aW9uczogRHJvcGRvd25PcHRpb25zO1xyXG4gIHNvcnREcm9wZG93bkZpbHRlcjogRmlsdGVySXRlbTtcclxuICBzb3J0VHlwZURyb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHBhZ2luZ1Jlc3VsdDogYW55W10gPSBbXTtcclxuICBwYWdpbmdPcHRpb25zOiBQYWdpbmdPcHRpb25zO1xyXG4gIGZpbHRlcnNGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgYXBpVVJMOiBzdHJpbmcgPSB0aGlzLnN1cnZleVNlcnZpY2UuYXBpVVJMO1xyXG4gIGxvYWRpbmdQYWdlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2hvd1BhZ2VDb250ZW50OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNGaWx0ZXJzRGF0YUxvYWRlZDogYm9vbGVhbjtcclxuICBzaG93RmlsdGVyczogYm9vbGVhbjtcclxuICBsb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICBmbGlwcGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSBzdXJ2ZXlTZXJ2aWNlOiBTdXJ2ZXlTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmIChTdXJ2ZXlDb25maWcuc3VydmV5TW9kZSA9PSBTdXJ2ZXlNb2RlLlN1cnZleV9GdWxsX0FjY2VzcylcclxuICAgICAgdGhpcy5lbmFibGVBY3Rpb25zID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZVRpdGxlID0gdGhpcy5sKCdTdXJ2ZXlzX0hlYWRlcicpO1xyXG4gICAgdGhpcy51cGRhdGVQYWdlVGl0bGUodGhpcy5wYWdlVGl0bGUpO1xyXG4gICAgdGhpcy5icmVhZENydW1iID0gW107XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLk5hbWUgPSAnU2VhcmNoVGV4dEJveCc7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLlR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuUGxhY2Vob2xkZXIgPSB0aGlzLmwoJ1NlYXJjaCcpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0Qm94T3B0aW9ucy5FeHRyYUNsYXNzZXMgPVxyXG4gICAgICAnZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbSBmb3JtLWNvbnRyb2wtc29saWQgc2VhcmNoLWJveCc7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLkhpZGVMYWJlbCA9IHRydWU7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLkljb24gPSAnLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9zZWFyY2guc3ZnJztcclxuXHJcbiAgICB0aGlzLnNlYXJjaFRleHRGaWx0ZXIgPSBuZXcgRmlsdGVySXRlbSgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLkZvcm1Db250cm9sTmFtZSA9IHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuTmFtZTtcclxuICAgIHRoaXMuc2VhcmNoVGV4dEZpbHRlci5BY3Rpb25QYXJhbWV0ZXJOYW1lID0gJ1NlYXJjaFRleHQnO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLlRleHRCb3g7XHJcblxyXG4gICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zID0gbmV3IERyb3Bkb3duT3B0aW9ucygpO1xyXG4gICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zLk5hbWUgPSAndmlzaWJsZVN1cnZleSc7XHJcbiAgICB0aGlzLnZpc2libGVEcm9wZG93bk9wdGlvbnMuTGFiZWxLZXkgPSAnVmlzaWJpbGl0eSc7XHJcbiAgICB0aGlzLnZpc2libGVEcm9wZG93bk9wdGlvbnMuU2luZ2xlU2VsZWN0aW9uID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyID0gbmV3IEZpbHRlckl0ZW0oKTtcclxuICAgIHRoaXMudmlzaWJsZVBhbmVsRHJvcGRvd25GaWx0ZXIuRm9ybUNvbnRyb2xOYW1lID1cclxuICAgICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zLk5hbWU7XHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnQWN0aXZlU3RhdHVzJztcclxuICAgIHRoaXMudmlzaWJsZVBhbmVsRHJvcGRvd25GaWx0ZXIuSXNGb3JtQ29udHJvbCA9IHRydWU7XHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucyA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU3RhdHVzJztcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLkxhYmVsS2V5ID0gJ1N0YXR1cyc7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucy5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgdGhpcy5zdGF0dXNEcm9wZG93bk9wdGlvbnMuTm90Rm91bmRUZXh0ID0gdGhpcy5sKCdOb1Jlc3VsdEZvdW5kJyk7XHJcblxyXG4gICAgdGhpcy5zdGF0dXNEcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkZvcm1Db250cm9sTmFtZSA9IHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLk5hbWU7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU3VydmV5U3RhdHVzJztcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25GaWx0ZXIuSXNGb3JtQ29udHJvbCA9IHRydWU7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlID0gbmV3IERhdGVQaWNrZXJPcHRpb25zKCk7XHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlLk5hbWUgPSAnRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUnO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5MYWJlbEtleSA9ICdEYXRlJztcclxuICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5TdGFydFZpZXcgPSBTdGFydFZpZXcuTW9udGg7XHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlLlBpY2tlclR5cGUgPSBQaWNrZXJUeXBlLkNhbGVuZGFyO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5TZWxlY3RNb2RlID0gU2VsZWN0TW9kZS5SYW5nZTtcclxuXHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VGaWx0ZXIgPSBuZXcgRmlsdGVySXRlbSgpO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLkZvcm1Db250cm9sTmFtZSA9XHJcbiAgICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuTmFtZTtcclxuICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZUZpbHRlci5BY3Rpb25QYXJhbWV0ZXJOYW1lID0gJ0RhdGUnO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRhdGVQaWNrZXI7XHJcblxyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25PcHRpb25zID0gbmV3IERyb3Bkb3duT3B0aW9ucygpO1xyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU29ydCc7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuTGFiZWxLZXkgPSAnU29ydCc7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuU2luZ2xlU2VsZWN0aW9uID0gdHJ1ZTtcclxuICAgIHRoaXMuc29ydERyb3Bkb3duT3B0aW9ucy5Ob3RGb3VuZFRleHQgPSB0aGlzLmwoJ05vUmVzdWx0Rm91bmQnKTtcclxuXHJcbiAgICB0aGlzLnNvcnREcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bkZpbHRlci5Gb3JtQ29udHJvbE5hbWUgPSB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuTmFtZTtcclxuICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU29ydEJ5JztcclxuICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25GaWx0ZXIuRmlsdGVyVHlwZSA9IEZpbHRlclR5cGUuRHJvcGRvd25MaXN0O1xyXG5cclxuICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bk9wdGlvbnMgPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU29ydFR5cGUnO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5MYWJlbEtleSA9ICdTb3J0VHlwZSc7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLlNpbmdsZVNlbGVjdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLk5vdEZvdW5kVGV4dCA9IHRoaXMubCgnTm9SZXN1bHRGb3VuZCcpO1xyXG5cclxuICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25GaWx0ZXIuRm9ybUNvbnRyb2xOYW1lID1cclxuICAgICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5OYW1lO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU29ydFR5cGUnO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zID0gbmV3IFBhZ2VIZWFkZXJPcHRpb25zKCk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlRpdGxlS2V5ID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlN1YlRpdGxlS2V5ID0gdGhpcy5sKCdTdXJ2ZXlfU3ViSGVhZGVyJyk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlNlYXJjaFRleHRCb3guQWN0aXZlID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuU2VhcmNoVGV4dEJveC5UZXh0U2VhcmNoQm94T3B0aW9ucyA9XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnM7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkJyZWFkQ3J1bWIuQWN0aXZlID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuQnJlYWRDcnVtYi5CcmVhZENydW1iSXRlbXMgPSB0aGlzLmJyZWFkQ3J1bWI7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkVkaXRCdXR0b24uQWN0aXZlID0gZmFsc2U7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkV4cG9ydEJ1dHRvbi5BY3RpdmUgPSBmYWxzZTtcclxuICAgIGlmKHRoaXMuZW5hYmxlQWN0aW9ucyl7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkFkZEJ1dHRvbi5BY3RpdmUgPSB0cnVlO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5BZGRCdXR0b24uQnV0dG9uVGV4dEtleSA9IHRoaXMubCgnQWRkJyk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkFkZEJ1dHRvbi5GdW5jdGlvbiA9IHRoaXMuc2hvd0FkZE1vZGFsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLkFjdGl2ZSA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnNCdXR0b24uQnV0dG9uVGV4dEtleSA9IHRoaXMubCgnRmlsdGVycycpO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLkZ1bmN0aW9uID0gdGhpcy5sb2FkRmlsdGVycztcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuRmlsdGVycy5BcHBseUZ1bmN0aW9uID0gdGhpcy5zZWFyY2g7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnMuUmVzdEZ1bmN0aW9uID0gdGhpcy5yZXNldEZpbHRlcnM7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnMuQ29udHJvbHNPcHRpb25zLnB1c2goe1xyXG4gICAgICBrZXk6IERhdGFUeXBlLlNpbmdsZVNlbGVjdCxcclxuICAgICAgdmFsdWU6IHRoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5TaW5nbGVTZWxlY3QsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5EYXRlLFxyXG4gICAgICB2YWx1ZTogdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5TaW5nbGVTZWxlY3QsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMsXHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuRmlsdGVycy5Db250cm9sc09wdGlvbnMucHVzaCh7XHJcbiAgICAgIGtleTogRGF0YVR5cGUuU2luZ2xlU2VsZWN0LFxyXG4gICAgICB2YWx1ZTogdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5MaXN0aW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuRU4gPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmlzQ3VycmVudExhbmd1YWdlRW5nbGlzaCgpO1xyXG5cclxuICAgIHRoaXMucGFnaW5nT3B0aW9ucyA9IG5ldyBQYWdpbmdPcHRpb25zKCk7XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuUGFnZVNpemUgPSA4O1xyXG4gICAgdGhpcy5wYWdpbmdPcHRpb25zLkRpc2FibGVCbG9ja1VJID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnaW5nT3B0aW9ucy5BY3Rpb25Qb3N0VVJMID0gdGhpcy5hcGlVUkwgKyAnR2V0QWxsJztcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuTGlzdGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuT25LZXlQcmVzc0ZpbHRlcnNDb250cm9sTmFtZXMgPSBbXHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuTmFtZSxcclxuICAgIF07XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuRmlsdGVycyA9IFtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLFxyXG4gICAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VGaWx0ZXIsXHJcbiAgICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25GaWx0ZXIsXHJcbiAgICBdO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nUGFnZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBzZXRMaXN0aW5nUmVzdWx0KHJlc3VsdCkge1xyXG4gICAgZGVidWdnZXI7XHJcbiAgICB0aGlzLnBhZ2luZ1Jlc3VsdCA9IHJlc3VsdDtcclxuICAgIHRoaXMuc2hvd1BhZ2VDb250ZW50ID0gdHJ1ZTtcclxuICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICB9XHJcblxyXG4gIGxvYWRGaWx0ZXJzID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgJiYgIXRoaXMuc2hvd0ZpbHRlcnMpIHRoaXMubG9hZEZpbHRlcnNEYXRhKCk7XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RmlsdGVycyA9ICF0aGlzLnNob3dGaWx0ZXJzO1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID1cclxuICAgICAgICB0aGlzLmxvYWRpbmc7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZsaXBwaW5nID0gIXRoaXMuZmxpcHBpbmc7XHJcbiAgfTtcclxuXHJcbiAgbG9hZEZpbHRlcnNEYXRhID0gKCkgPT4ge1xyXG4gICAgdGhpcy5zdXJ2ZXlTZXJ2aWNlLmxvYWRGaWx0ZXJzRHJvcGRvd24oKS5zdWJzY3JpYmUoKHIpID0+IHtcclxuICAgICAgbGV0IHJlc3VsdCA9IHIgYXMgYW55O1xyXG4gICAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucy5EYXRhU291cmNlID0gcmVzdWx0LnN0YXR1c2VzO1xyXG4gICAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuRGF0YVNvdXJjZSA9IHJlc3VsdC5zdXJ2ZXlTb3J0aW5nVHlwZXM7XHJcbiAgICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bk9wdGlvbnMuRGF0YVNvdXJjZSA9IHJlc3VsdC5zb3J0VHlwZXM7XHJcbiAgICAgIHRoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucy5EYXRhU291cmNlID0gcmVzdWx0LnZpc2liaWxpdHk7XHJcbiAgICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID1cclxuICAgICAgICB0aGlzLmxvYWRpbmc7XHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICByZXNldEZpbHRlcnMgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuTmFtZV0uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zdGF0dXNEcm9wZG93bk9wdGlvbnMuTmFtZV0uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMuc29ydERyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zZWFyY2hUZXh0Qm94T3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnNCdXR0b24uU2hvd0xvYWRpbmdJbkZpbHRlcnNCb3ggPSB0aGlzLmxvYWRpbmc7XHJcbiAgICB0aGlzLnBhZ2luZ0VsZW1lbnQuUmVpbml0aWFsaXplUGFnaW5nKCk7XHJcbiAgfTtcclxuXHJcbiAgc2VhcmNoID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmZpbHRlcnNGb3JtLnZhbGlkKSByZXR1cm47XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID0gdGhpcy5sb2FkaW5nO1xyXG4gICAgdGhpcy5wYWdpbmdFbGVtZW50LlJlaW5pdGlhbGl6ZVBhZ2luZygpO1xyXG4gIH07XHJcblxyXG4gIHNob3dBZGRNb2RhbCA9ICgpID0+IHtcclxuICAgIHRoaXMuYWRkTW9kYWwuc2hvd01vZGFsKCk7XHJcbiAgfTtcclxuICBzaG93RWRpdE1vZGFsKGlkKSB7XHJcbiAgICB0aGlzLmVkaXRNb2RhbC5zaG93RWRpdE1vZGFsKGlkKTtcclxuICB9XHJcbiAgc2hvd0R1cGxpY2F0ZU1vZGFsKGlkKSB7XHJcbiAgICB0aGlzLmR1cGxpY2F0ZU1vZGFsLnNob3dEdXBsaWNhdGVNb2RhbChpZCk7XHJcbiAgfVxyXG4gIHNob3dEZWxldGVNb2RhbChpZCkge1xyXG4gICAgdGhpcy5kZWxldGVDb25maXJtYXRpb25Nb2RhbENvbnRyb2wuc2hvd0RlbGV0ZU1vZGFsKGlkKTtcclxuICB9XHJcblxyXG4gIGlzRWRpdGFibGUoc3RhdHVzKSB7XHJcbiAgICBsZXQgYWxsb3dFZGl0ID0gZmFsc2U7XHJcbiAgICBzd2l0Y2ggKHN0YXR1cy50b0xvY2FsZUxvd2VyQ2FzZSgpKSB7XHJcbiAgICAgIGNhc2UgdGhpcy5TdXJ2ZXlTdGF0dXNFbnVtLlNjb3JpbmdUeXBlRW51bV9EcmFmdC50b0xvY2FsZUxvd2VyQ2FzZSgpOlxyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fVXBjb21pbmcudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBhbGxvd0VkaXQgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fQ2xvc2VkLnRvTG9jYWxlTG93ZXJDYXNlKCk6XHJcbiAgICAgIGNhc2UgdGhpcy5TdXJ2ZXlTdGF0dXNFbnVtLlNjb3JpbmdUeXBlRW51bV9QdWJsaXNoZWQudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBhbGxvd0VkaXQgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIHJldHVybiBhbGxvd0VkaXQ7XHJcbiAgfVxyXG4gIGdldFN0YXR1cyhzdGF0dXMpIHtcclxuICAgIHZhciBTdGF0dXNlcyA9ICcnO1xyXG4gICAgc3dpdGNoIChzdGF0dXMudG9Mb2NhbGVMb3dlckNhc2UoKSkge1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fRHJhZnQudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBTdGF0dXNlcyA9ICdiYWRnZS1zZWNvbmRhcnknO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fQ2xvc2VkLnRvTG9jYWxlTG93ZXJDYXNlKCk6XHJcbiAgICAgICAgU3RhdHVzZXMgPSAnYmFkZ2UtZGFuZ2VyJztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0aGlzLlN1cnZleVN0YXR1c0VudW0uU2NvcmluZ1R5cGVFbnVtX1B1Ymxpc2hlZC50b0xvY2FsZUxvd2VyQ2FzZSgpOlxyXG4gICAgICAgIFN0YXR1c2VzID0gJ2JhZGdlLXN1Y2Nlc3MnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fVXBjb21pbmcudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBTdGF0dXNlcyA9ICdiYWRnZS1zdWNjZXNzJztcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gU3RhdHVzZXM7XHJcbiAgfVxyXG59XHJcbiIsIjwhLS10b29sYmFyLS0+XHJcbjxiYnNmLXBhZ2UtaGVhZGVyLWNvbXBvbmVudCBbb3B0aW9uc109XCJwYWdlSGVhZGVyT3B0aW9uc1wiIFtncm91cF09XCJmaWx0ZXJzRm9ybVwiPjwvYmJzZi1wYWdlLWhlYWRlci1jb21wb25lbnQ+XHJcbjwhLS1FbmQgdG9vbGJhci0tPlxyXG48ZGl2IGNsYXNzPVwiY29udGFpbmVyLXh4bFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wteGwtNiBkLWZsZXhcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBwYWdpbmdSZXN1bHRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1saXN0aW5nIHctaWNvbi1ib3hlcyBzdXJ2ZXktY2FyZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGl0bGUgbGluZS1jbGFtcFwiPlxyXG4gICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbJy4uL2luZm8nLCBpdGVtLmlEX0dVSURdXCI+XHJcbiAgICAgICAgICAgICAge3tpdGVtLmxvY2FsaXplZFRpdGxlfX1cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIGQtZmxleCBmbGV4LW5vd3JhcCBmbGV4LXN0YWNrXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQgYmFnZGUteHMgbWUtMlwiICpuZ0lmPVwiIWl0ZW0udmlzaWJsZVwiPiB7e2woXCJOb3RWaXNpYmxlXCIpfX0gPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZ2RlLXhzIGJhZGdlLWxpZ2h0IG1lLTJcIiBbbmdDbGFzc109XCJnZXRTdGF0dXMoaXRlbS5zdGF0dXNJdGVtSUQpXCI+e3tpdGVtLmxvY2FsaXplZFN0YXR1c319PC9zcGFuPlxyXG4gICAgICAgICAgICA8ZGl2IG5nYkRyb3Bkb3duIGNvbnRhaW5lcj1cImJvZHlcIiAqbmdJZj1cImVuYWJsZUFjdGlvbnNcIiBjbGFzcz1cImRyb3Bkb3duLWN1c3RvbVwiIFtwbGFjZW1lbnRdPVwiRU4gPyAnYm90dG9tLXJpZ2h0JyA6ICdib3R0b20tbGVmdCdcIj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZS1jdXN0b20gYnRuIGJ0bi1jbGVhciBidG4tc21cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgbmdiRHJvcGRvd25Ub2dnbGU+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTNcIiBbaW5saW5lU1ZHXT1cIicvYXNzZXRzL2ltYWdlcy9jYXJkLWRyb3Bkb3duLnN2ZydcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPGRpdiBuZ2JEcm9wZG93bk1lbnUgY2xhc3M9XCJkcm9wZG93bi1tZW51LWN1c3RvbVwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImlzRWRpdGFibGUoaXRlbS5zdGF0dXNJdGVtSUQpXCIgKGNsaWNrKT1cInNob3dFZGl0TW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtIGNsYXNzPVwiZHJvcGRvd24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tM1wiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL0VkaXQuc3ZnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHt7bChcIkVkaXRcIil9fVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJzaG93RHVwbGljYXRlTW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtIGNsYXNzPVwiZHJvcGRvd24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tM1wiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2NvcHkuc3ZnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHt7bChcIkR1cGxpY2F0ZVwiKX19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzaG93RGVsZXRlTW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayBuZ2JEcm9wZG93bkl0ZW0gY2xhc3M9XCJkcm9wZG93bi1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2lubGluZVNWR109XCInL2Fzc2V0cy9pbWFnZXMvVHJhc2guc3ZnJ1wiPjwvc3Bhbj4gIHt7bChcIkRlbGV0ZVwiKX19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IG1iLTRcIj5cclxuICAgICAgICAgIDxwIGNsYXNzPVwibGluZS1jbGFtcC0xXCI+XHJcbiAgICAgICAgICAgIHt7aXRlbS5sb2NhbGl6ZWREZXNjfX1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tZm9vdGVyIHR5cGUgb25lLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIHB0LTBcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdXJ2ZXktY291bnRlclwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3VydmV5LWNvdW50ZXItdGl0bGVcIj57e2woJ1F1ZXN0aW9uJyl9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWJyYW5kIGJhZGdlLXNxdWFyZSBcIj57e2l0ZW0udG90YWxRdWVzdGlvbkNvdW50fX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VydmV5LWNvdW50ZXJcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1cnZleS1jb3VudGVyLXRpdGxlXCI+e3tsKCdTdWJtaXNzaW9ucycpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1icmFuZCBiYWRnZS1zcXVhcmUgXCI+e3tpdGVtLnRvdGFsU3VibWlzc2lvbnNDb3VudH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN1cnZlcnktZGF0ZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ib3hlcyBhbGlnbi1pdGVtcy1iYXNlbGluZVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWJveCB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN5bWJvbC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tNFwiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2NhbGVuZGFyLnN2ZydcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdXJ2ZXktY291bnRlci10aXRsZVwiICpuZ0lmPVwiaXRlbS5zdGFydERhdGU9PW51bGxcIj5cclxuICAgICAgICAgICAgICAgICAge3tsKCdOb3RTdGFydGVkWWV0Jyl9fVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAgKm5nSWY9XCJpdGVtLnN0YXJ0RGF0ZSE9bnVsbFwiIGNsYXNzPVwiZC1mbGV4IGZsZXgtc3RhY2sgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdXJ2ZXktY291bnRlci10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7aXRlbS5zdGFydERhdGUgfHN1cnZleURhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5lbmREYXRlIT1udWxsXCI+IC0ge3soaXRlbS5lbmREYXRlfHN1cnZleURhdGUpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodFwiICpuZ0lmPVwiaXRlbS5lbmREYXRlPT1udWxsXCI+e3tsKCdIYXNOb0VuZCcpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8QkJTRi1QYWdpbmcgKEl0ZW1zKT1cInNldExpc3RpbmdSZXN1bHQoJGV2ZW50KVwiICpuZ0lmPVwibG9hZGluZ1BhZ2VcIiBbb3B0aW9uc109XCJwYWdpbmdPcHRpb25zXCIgW2dyb3VwXT1cImZpbHRlcnNGb3JtXCJcclxuICAgICAgICAgICAgICAgI3BhZ2luZ1ZpZXdFbGVtZW50PjwvQkJTRi1QYWdpbmc+XHJcbjwvZGl2PlxyXG5cclxuXHJcblxyXG48YXBwLW5vLXJlc3VsdHMgKm5nSWY9XCJwYWdpbmdSZXN1bHQubGVuZ3RoID09IDAgJiYgc2hvd1BhZ2VDb250ZW50XCI+PC9hcHAtbm8tcmVzdWx0cz5cclxuPGFwcC1hZGQtc3VydmV5ICNhZGRNb2RhbCBbcGFnaW5nRWxlbWVudF09XCJwYWdpbmdFbGVtZW50XCI+PC9hcHAtYWRkLXN1cnZleT5cclxuPGFwcC1lZGl0LXN1cnZleSAjZWRpdE1vZGFsIFtwYWdpbmdFbGVtZW50XT1cInBhZ2luZ0VsZW1lbnRcIj48L2FwcC1lZGl0LXN1cnZleT5cclxuPGFwcC1kZWxldGUtc3VydmV5ICNkZWxldGVDb25maXJtYXRpb25Nb2RhbENvbnRyb2wgW3BhZ2luZ0VsZW1lbnRdPVwicGFnaW5nRWxlbWVudFwiPjwvYXBwLWRlbGV0ZS1zdXJ2ZXk+XHJcbjxhcHAtZHVwbGljYXRlLXN1cnZleSAjZHVwbGljYXRlTW9kYWwgW3BhZ2luZ0VsZW1lbnRdPVwicGFnaW5nRWxlbWVudFwiPjwvYXBwLWR1cGxpY2F0ZS1zdXJ2ZXk+XHJcbiJdfQ==
|
|
1
|
+
import { Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import { ControlLayout, DataType, DatePickerOptions, DropdownOptions, FilterItem, FilterType, InputType, StartView, TextBoxOptions, PickerType, SelectMode, PagingOptions, PageHeaderOptions, AppBaseComponent, } from '@bnsights/bbsf-controls';
|
|
4
|
+
import { SurveyMode, SurveyStatusEnum } from '../../Enums/Enums';
|
|
5
|
+
import { SurveyConfig } from '../../models/SurveyModels/survey-utils';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../Services/survey.service";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "@angular/router";
|
|
10
|
+
import * as i4 from "@bnsights/bbsf-controls";
|
|
11
|
+
import * as i5 from "@ng-bootstrap/ng-bootstrap";
|
|
12
|
+
import * as i6 from "ng-inline-svg-2";
|
|
13
|
+
import * as i7 from "./add-survey/add-survey.component";
|
|
14
|
+
import * as i8 from "./edit-survey/edit-survey.component";
|
|
15
|
+
import * as i9 from "./delete-survey/delete-survey.component";
|
|
16
|
+
import * as i10 from "./duplicate-survey/duplicate-survey.component";
|
|
17
|
+
import * as i11 from "../no-results/no-results.component";
|
|
18
|
+
import * as i12 from "../../Pipes/survey-date.pipe";
|
|
19
|
+
export class SurveyComponent extends AppBaseComponent {
|
|
20
|
+
constructor(injector, surveyService) {
|
|
21
|
+
super(injector);
|
|
22
|
+
this.injector = injector;
|
|
23
|
+
this.surveyService = surveyService;
|
|
24
|
+
this.pageTitle = '';
|
|
25
|
+
this.subTitle = '';
|
|
26
|
+
this.surveyForm = new FormGroup({});
|
|
27
|
+
this.enableActions = false;
|
|
28
|
+
this.SurveyStatusEnum = SurveyStatusEnum;
|
|
29
|
+
this.pagingResult = [];
|
|
30
|
+
this.filtersForm = new FormGroup({});
|
|
31
|
+
this.apiURL = this.surveyService.apiURL;
|
|
32
|
+
this.loadingPage = false;
|
|
33
|
+
this.showPageContent = false;
|
|
34
|
+
this.loading = true;
|
|
35
|
+
this.flipping = false;
|
|
36
|
+
this.loadFilters = () => {
|
|
37
|
+
if (!this.isFiltersDataLoaded && !this.showFilters)
|
|
38
|
+
this.loadFiltersData();
|
|
39
|
+
else {
|
|
40
|
+
this.showFilters = !this.showFilters;
|
|
41
|
+
this.loading = true;
|
|
42
|
+
this.isFiltersDataLoaded = false;
|
|
43
|
+
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox =
|
|
44
|
+
this.loading;
|
|
45
|
+
}
|
|
46
|
+
this.flipping = !this.flipping;
|
|
47
|
+
};
|
|
48
|
+
this.loadFiltersData = () => {
|
|
49
|
+
this.surveyService.loadFiltersDropdown().subscribe((r) => {
|
|
50
|
+
let result = r;
|
|
51
|
+
this.statusDropdownOptions.DataSource = result.statuses;
|
|
52
|
+
this.sortDropdownOptions.DataSource = result.surveySortingTypes;
|
|
53
|
+
this.sortTypeDropdownOptions.DataSource = result.sortTypes;
|
|
54
|
+
this.visibleDropdownOptions.DataSource = result.visibility;
|
|
55
|
+
this.showFilters = true;
|
|
56
|
+
this.isFiltersDataLoaded = true;
|
|
57
|
+
this.loading = false;
|
|
58
|
+
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox =
|
|
59
|
+
this.loading;
|
|
60
|
+
});
|
|
61
|
+
};
|
|
62
|
+
this.resetFilters = () => {
|
|
63
|
+
this.filtersForm.controls[this.DatePickerWithRangeMode.Name].setValue(null);
|
|
64
|
+
this.filtersForm.controls[this.visibleDropdownOptions.Name].setValue(null);
|
|
65
|
+
this.filtersForm.controls[this.statusDropdownOptions.Name].setValue(null);
|
|
66
|
+
this.filtersForm.controls[this.sortDropdownOptions.Name].setValue(null);
|
|
67
|
+
this.filtersForm.controls[this.sortTypeDropdownOptions.Name].setValue(null);
|
|
68
|
+
this.filtersForm.controls[this.searchTextBoxOptions.Name].setValue(null);
|
|
69
|
+
this.loading = true;
|
|
70
|
+
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox = this.loading;
|
|
71
|
+
this.pagingElement.ReinitializePaging();
|
|
72
|
+
};
|
|
73
|
+
this.search = () => {
|
|
74
|
+
if (!this.filtersForm.valid)
|
|
75
|
+
return;
|
|
76
|
+
this.loading = true;
|
|
77
|
+
this.pageHeaderOptions.FiltersButton.ShowLoadingInFiltersBox = this.loading;
|
|
78
|
+
this.pagingElement.ReinitializePaging();
|
|
79
|
+
};
|
|
80
|
+
this.showAddModal = () => {
|
|
81
|
+
this.addModal.showModal();
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
ngOnInit() {
|
|
85
|
+
if (SurveyConfig.surveyMode == SurveyMode.Survey_Full_Access)
|
|
86
|
+
this.enableActions = true;
|
|
87
|
+
this.pageTitle = this.l('Surveys_Header');
|
|
88
|
+
this.updatePageTitle(this.pageTitle);
|
|
89
|
+
this.breadCrumb = [];
|
|
90
|
+
this.searchTextBoxOptions = new TextBoxOptions();
|
|
91
|
+
this.searchTextBoxOptions.Name = 'SearchTextBox';
|
|
92
|
+
this.searchTextBoxOptions.Type = InputType.Text;
|
|
93
|
+
this.searchTextBoxOptions.Placeholder = this.l('Search');
|
|
94
|
+
this.searchTextBoxOptions.ExtraClasses =
|
|
95
|
+
'form-control form-control-sm form-control-solid search-box';
|
|
96
|
+
this.searchTextBoxOptions.HideLabel = true;
|
|
97
|
+
this.searchTextBoxOptions.Icon = '../../../assets/images/search.svg';
|
|
98
|
+
this.searchTextFilter = new FilterItem();
|
|
99
|
+
this.searchTextFilter.FormControlName = this.searchTextBoxOptions.Name;
|
|
100
|
+
this.searchTextFilter.ActionParameterName = 'SearchText';
|
|
101
|
+
this.searchTextFilter.IsFormControl = true;
|
|
102
|
+
this.searchTextFilter.FilterType = FilterType.TextBox;
|
|
103
|
+
this.visibleDropdownOptions = new DropdownOptions();
|
|
104
|
+
this.visibleDropdownOptions.Name = 'visibleSurvey';
|
|
105
|
+
this.visibleDropdownOptions.LabelKey = 'Visibility';
|
|
106
|
+
this.visibleDropdownOptions.SingleSelection = true;
|
|
107
|
+
this.visiblePanelDropdownFilter = new FilterItem();
|
|
108
|
+
this.visiblePanelDropdownFilter.FormControlName =
|
|
109
|
+
this.visibleDropdownOptions.Name;
|
|
110
|
+
this.visiblePanelDropdownFilter.ActionParameterName = 'ActiveStatus';
|
|
111
|
+
this.visiblePanelDropdownFilter.IsFormControl = true;
|
|
112
|
+
this.visiblePanelDropdownFilter.FilterType = FilterType.DropdownList;
|
|
113
|
+
this.statusDropdownOptions = new DropdownOptions();
|
|
114
|
+
this.statusDropdownOptions.Name = 'Status';
|
|
115
|
+
this.statusDropdownOptions.LabelKey = 'Status';
|
|
116
|
+
this.statusDropdownOptions.SingleSelection = true;
|
|
117
|
+
this.statusDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
118
|
+
this.statusDropdownFilter = new FilterItem();
|
|
119
|
+
this.statusDropdownFilter.FormControlName = this.statusDropdownOptions.Name;
|
|
120
|
+
this.statusDropdownFilter.ActionParameterName = 'SurveyStatus';
|
|
121
|
+
this.statusDropdownFilter.IsFormControl = true;
|
|
122
|
+
this.statusDropdownFilter.FilterType = FilterType.DropdownList;
|
|
123
|
+
this.DatePickerWithRangeMode = new DatePickerOptions();
|
|
124
|
+
this.DatePickerWithRangeMode.Name = 'DatePickerWithRangeMode';
|
|
125
|
+
this.DatePickerWithRangeMode.LabelKey = 'Date';
|
|
126
|
+
this.DatePickerWithRangeMode.ViewType = ControlLayout.Vertical;
|
|
127
|
+
this.DatePickerWithRangeMode.StartView = StartView.Month;
|
|
128
|
+
this.DatePickerWithRangeMode.PickerType = PickerType.Calendar;
|
|
129
|
+
this.DatePickerWithRangeMode.SelectMode = SelectMode.Range;
|
|
130
|
+
this.DatePickerWithRangeFilter = new FilterItem();
|
|
131
|
+
this.DatePickerWithRangeFilter.FormControlName =
|
|
132
|
+
this.DatePickerWithRangeMode.Name;
|
|
133
|
+
this.DatePickerWithRangeFilter.ActionParameterName = 'Date';
|
|
134
|
+
this.DatePickerWithRangeFilter.IsFormControl = true;
|
|
135
|
+
this.DatePickerWithRangeFilter.FilterType = FilterType.DatePicker;
|
|
136
|
+
this.sortDropdownOptions = new DropdownOptions();
|
|
137
|
+
this.sortDropdownOptions.Name = 'Sort';
|
|
138
|
+
this.sortDropdownOptions.LabelKey = 'Sort';
|
|
139
|
+
this.sortDropdownOptions.SingleSelection = true;
|
|
140
|
+
this.sortDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
141
|
+
this.sortDropdownFilter = new FilterItem();
|
|
142
|
+
this.sortDropdownFilter.FormControlName = this.sortDropdownOptions.Name;
|
|
143
|
+
this.sortDropdownFilter.ActionParameterName = 'SortBy';
|
|
144
|
+
this.sortDropdownFilter.IsFormControl = true;
|
|
145
|
+
this.sortDropdownFilter.FilterType = FilterType.DropdownList;
|
|
146
|
+
this.sortTypeDropdownOptions = new DropdownOptions();
|
|
147
|
+
this.sortTypeDropdownOptions.Name = 'SortType';
|
|
148
|
+
this.sortTypeDropdownOptions.LabelKey = 'SortType';
|
|
149
|
+
this.sortTypeDropdownOptions.SingleSelection = true;
|
|
150
|
+
this.sortTypeDropdownOptions.NotFoundText = this.l('NoResultFound');
|
|
151
|
+
this.sortTypeDropdownFilter = new FilterItem();
|
|
152
|
+
this.sortTypeDropdownFilter.FormControlName =
|
|
153
|
+
this.sortTypeDropdownOptions.Name;
|
|
154
|
+
this.sortTypeDropdownFilter.ActionParameterName = 'SortType';
|
|
155
|
+
this.sortTypeDropdownFilter.IsFormControl = true;
|
|
156
|
+
this.sortTypeDropdownFilter.FilterType = FilterType.DropdownList;
|
|
157
|
+
this.pageHeaderOptions = new PageHeaderOptions();
|
|
158
|
+
this.pageHeaderOptions.TitleKey = this.pageTitle;
|
|
159
|
+
this.pageHeaderOptions.SubTitleKey = this.l('Survey_SubHeader');
|
|
160
|
+
this.pageHeaderOptions.SearchTextBox.Active = true;
|
|
161
|
+
this.pageHeaderOptions.SearchTextBox.TextSearchBoxOptions =
|
|
162
|
+
this.searchTextBoxOptions;
|
|
163
|
+
this.pageHeaderOptions.BreadCrumb.Active = true;
|
|
164
|
+
this.pageHeaderOptions.BreadCrumb.BreadCrumbItems = this.breadCrumb;
|
|
165
|
+
this.pageHeaderOptions.EditButton.Active = false;
|
|
166
|
+
this.pageHeaderOptions.ExportButton.Active = false;
|
|
167
|
+
if (this.enableActions) {
|
|
168
|
+
this.pageHeaderOptions.AddButton.Active = true;
|
|
169
|
+
this.pageHeaderOptions.AddButton.ButtonTextKey = this.l('Add');
|
|
170
|
+
this.pageHeaderOptions.AddButton.Function = this.showAddModal;
|
|
171
|
+
}
|
|
172
|
+
this.pageHeaderOptions.FiltersButton.Active = true;
|
|
173
|
+
this.pageHeaderOptions.FiltersButton.ButtonTextKey = this.l('Filters');
|
|
174
|
+
this.pageHeaderOptions.FiltersButton.Function = this.loadFilters;
|
|
175
|
+
this.pageHeaderOptions.Filters.ApplyFunction = this.search;
|
|
176
|
+
this.pageHeaderOptions.Filters.RestFunction = this.resetFilters;
|
|
177
|
+
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
178
|
+
key: DataType.SingleSelect,
|
|
179
|
+
value: this.visibleDropdownOptions,
|
|
180
|
+
});
|
|
181
|
+
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
182
|
+
key: DataType.SingleSelect,
|
|
183
|
+
value: this.statusDropdownOptions,
|
|
184
|
+
});
|
|
185
|
+
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
186
|
+
key: DataType.Date,
|
|
187
|
+
value: this.DatePickerWithRangeMode,
|
|
188
|
+
});
|
|
189
|
+
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
190
|
+
key: DataType.SingleSelect,
|
|
191
|
+
value: this.sortDropdownOptions,
|
|
192
|
+
});
|
|
193
|
+
this.pageHeaderOptions.Filters.ControlsOptions.push({
|
|
194
|
+
key: DataType.SingleSelect,
|
|
195
|
+
value: this.sortTypeDropdownOptions,
|
|
196
|
+
});
|
|
197
|
+
this.pageHeaderOptions.Listing = true;
|
|
198
|
+
this.EN = this.utilityService.isCurrentLanguageEnglish();
|
|
199
|
+
this.pagingOptions = new PagingOptions();
|
|
200
|
+
this.pagingOptions.PageSize = 8;
|
|
201
|
+
this.pagingOptions.DisableBlockUI = true;
|
|
202
|
+
this.pagingOptions.ActionPostURL = this.apiURL + 'GetAll';
|
|
203
|
+
this.pageHeaderOptions.Listing = true;
|
|
204
|
+
this.pagingOptions.OnKeyPressFiltersControlNames = [
|
|
205
|
+
this.searchTextBoxOptions.Name,
|
|
206
|
+
];
|
|
207
|
+
this.pagingOptions.Filters = [
|
|
208
|
+
this.searchTextFilter,
|
|
209
|
+
this.visiblePanelDropdownFilter,
|
|
210
|
+
this.statusDropdownFilter,
|
|
211
|
+
this.DatePickerWithRangeFilter,
|
|
212
|
+
this.sortDropdownFilter,
|
|
213
|
+
this.sortTypeDropdownFilter,
|
|
214
|
+
];
|
|
215
|
+
}
|
|
216
|
+
ngAfterViewInit() {
|
|
217
|
+
this.loadingPage = true;
|
|
218
|
+
}
|
|
219
|
+
setListingResult(result) {
|
|
220
|
+
debugger;
|
|
221
|
+
this.pagingResult = result;
|
|
222
|
+
this.showPageContent = true;
|
|
223
|
+
this.utilityService.stopBlockUI();
|
|
224
|
+
}
|
|
225
|
+
showEditModal(id) {
|
|
226
|
+
this.editModal.showEditModal(id);
|
|
227
|
+
}
|
|
228
|
+
showDuplicateModal(id) {
|
|
229
|
+
this.duplicateModal.showDuplicateModal(id);
|
|
230
|
+
}
|
|
231
|
+
showDeleteModal(id) {
|
|
232
|
+
this.deleteConfirmationModalControl.showDeleteModal(id);
|
|
233
|
+
}
|
|
234
|
+
isEditable(status) {
|
|
235
|
+
let allowEdit = false;
|
|
236
|
+
switch (status.toLocaleLowerCase()) {
|
|
237
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Draft.toLocaleLowerCase():
|
|
238
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Upcoming.toLocaleLowerCase():
|
|
239
|
+
allowEdit = true;
|
|
240
|
+
break;
|
|
241
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Closed.toLocaleLowerCase():
|
|
242
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Published.toLocaleLowerCase():
|
|
243
|
+
allowEdit = false;
|
|
244
|
+
break;
|
|
245
|
+
default:
|
|
246
|
+
break;
|
|
247
|
+
}
|
|
248
|
+
return allowEdit;
|
|
249
|
+
}
|
|
250
|
+
getStatus(status) {
|
|
251
|
+
var Statuses = '';
|
|
252
|
+
switch (status.toLocaleLowerCase()) {
|
|
253
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Draft.toLocaleLowerCase():
|
|
254
|
+
Statuses = 'badge-secondary';
|
|
255
|
+
break;
|
|
256
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Closed.toLocaleLowerCase():
|
|
257
|
+
Statuses = 'badge-danger';
|
|
258
|
+
break;
|
|
259
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Published.toLocaleLowerCase():
|
|
260
|
+
Statuses = 'badge-success';
|
|
261
|
+
break;
|
|
262
|
+
case this.SurveyStatusEnum.ScoringTypeEnum_Upcoming.toLocaleLowerCase():
|
|
263
|
+
Statuses = 'badge-success';
|
|
264
|
+
break;
|
|
265
|
+
default:
|
|
266
|
+
break;
|
|
267
|
+
}
|
|
268
|
+
return Statuses;
|
|
269
|
+
}
|
|
270
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SurveyComponent, deps: [{ token: i0.Injector }, { token: i1.SurveyService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
271
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: SurveyComponent, selector: "app-survey", viewQueries: [{ propertyName: "pagingElement", first: true, predicate: ["pagingViewElement"], descendants: true }, { propertyName: "addModal", first: true, predicate: ["addModal"], descendants: true }, { propertyName: "editModal", first: true, predicate: ["editModal"], descendants: true }, { propertyName: "deleteConfirmationModalControl", first: true, predicate: ["deleteConfirmationModalControl"], descendants: true }, { propertyName: "duplicateModal", first: true, predicate: ["duplicateModal"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--toolbar-->\r\n<bbsf-page-header-component [options]=\"pageHeaderOptions\" [group]=\"filtersForm\"></bbsf-page-header-component>\r\n<!--End toolbar-->\r\n<div class=\"container-xxl\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-xl-6 d-flex\" *ngFor=\"let item of pagingResult\">\r\n <div class=\"card card-listing w-icon-boxes survey-card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title line-clamp\">\r\n <a [routerLink]=\"['../info', item.iD_GUID]\">\r\n {{item.localizedTitle}}\r\n </a>\r\n </div>\r\n <div class=\"card-toolbar d-flex flex-nowrap flex-stack\">\r\n <span class=\"badge badge-light bagde-xs me-2\" *ngIf=\"!item.visible\"> {{l(\"NotVisible\")}} </span>\r\n <span class=\"badge bagde-xs badge-light me-2\" [ngClass]=\"getStatus(item.statusItemID)\">{{item.localizedStatus}}</span>\r\n <div ngbDropdown container=\"body\" *ngIf=\"enableActions\" class=\"dropdown-custom\" [placement]=\"EN ? 'bottom-right' : 'bottom-left'\">\r\n <button type=\"button\" class=\"dropdown-toggle-custom btn btn-clear btn-sm\"\r\n ngbDropdownToggle>\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/card-dropdown.svg'\"></span>\r\n </button>\r\n <div ngbDropdownMenu class=\"dropdown-menu-custom\">\r\n <button *ngIf=\"isEditable(item.statusItemID)\" (click)=\"showEditModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/Edit.svg'\">\r\n </span>\r\n {{l(\"Edit\")}}\r\n </button>\r\n <button (click)=\"showDuplicateModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/copy.svg'\">\r\n </span>\r\n {{l(\"Duplicate\")}}\r\n </button>\r\n <button type=\"button\" (click)=\"showDeleteModal(item.iD_GUID)\" apppreventdoubleclick ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\"\r\n [inlineSVG]=\"'/assets/images/Trash.svg'\"></span> {{l(\"Delete\")}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body mb-4\">\r\n <p class=\"line-clamp-1\">\r\n {{item.localizedDesc}}\r\n </p>\r\n </div>\r\n <!--footer type one-->\r\n <div class=\"card-footer pt-0\">\r\n <div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Question')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalQuestionCount}}</span>\r\n </div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Submissions')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalSubmissionsCount}}</span>\r\n </div>\r\n </div>\r\n <div class=\"survery-date\">\r\n <div class=\"icon-boxes align-items-baseline\">\r\n <div class=\"icon-box w-100\">\r\n <div class=\"symbol\">\r\n <span class=\"symbol-label\">\r\n <span class=\"svg-icon svg-icon-4\" [inlineSVG]=\"'/assets/images/calendar.svg'\">\r\n </span>\r\n </span>\r\n </div>\r\n <span class=\"survey-counter-title\" *ngIf=\"item.startDate==null\">\r\n {{l('NotStartedYet')}}\r\n </span>\r\n <div *ngIf=\"item.startDate!=null\" class=\"d-flex flex-stack w-100\">\r\n <span class=\"survey-counter-title\">\r\n {{item.startDate |surveyDate}}\r\n <span *ngIf=\"item.endDate!=null\"> - {{(item.endDate|surveyDate)}}</span>\r\n </span>\r\n <span class=\"badge badge-light\" *ngIf=\"item.endDate==null\">{{l('HasNoEnd')}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <BBSF-Paging (Items)=\"setListingResult($event)\" *ngIf=\"loadingPage\" [options]=\"pagingOptions\" [group]=\"filtersForm\"\r\n #pagingViewElement></BBSF-Paging>\r\n</div>\r\n\r\n\r\n\r\n<app-no-results *ngIf=\"pagingResult.length == 0 && showPageContent\"></app-no-results>\r\n<app-add-survey #addModal [pagingElement]=\"pagingElement\"></app-add-survey>\r\n<app-edit-survey #editModal [pagingElement]=\"pagingElement\"></app-edit-survey>\r\n<app-delete-survey #deleteConfirmationModalControl [pagingElement]=\"pagingElement\"></app-delete-survey>\r\n<app-duplicate-survey #duplicateModal [pagingElement]=\"pagingElement\"></app-duplicate-survey>\r\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.PagingComponent, selector: "BBSF-Paging", inputs: ["options", "group"], outputs: ["Items"] }, { kind: "component", type: i4.PageHeaderComponentComponent, selector: "bbsf-page-header-component", inputs: ["group", "options"] }, { kind: "directive", type: i5.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i5.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i5.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i5.NgbDropdownItem, selector: "[ngbDropdownItem]", inputs: ["tabindex", "disabled"] }, { kind: "directive", type: i5.NgbDropdownButtonItem, selector: "button[ngbDropdownItem]" }, { kind: "directive", type: i6.InlineSVGDirective, selector: "[inlineSVG]", inputs: ["inlineSVG", "resolveSVGUrl", "replaceContents", "prepend", "injectComponent", "cacheSVG", "setSVGAttributes", "removeSVGAttributes", "forceEvalStyles", "evalScripts", "fallbackImgUrl", "fallbackSVG", "onSVGLoaded"], outputs: ["onSVGInserted", "onSVGFailed"] }, { kind: "component", type: i7.AddSurveyComponent, selector: "app-add-survey", inputs: ["pagingElement"] }, { kind: "component", type: i8.EditSurveyComponent, selector: "app-edit-survey", inputs: ["pagingElement", "onSuccessHandler"] }, { kind: "component", type: i9.DeleteSurveyComponent, selector: "app-delete-survey", inputs: ["onSuccessHandler", "pagingElement"] }, { kind: "component", type: i10.DuplicateSurveyComponent, selector: "app-duplicate-survey", inputs: ["onSuccessHandler", "pagingElement"] }, { kind: "component", type: i11.NoResultsComponent, selector: "app-no-results" }, { kind: "pipe", type: i12.SurveyDatePipe, name: "surveyDate" }] }); }
|
|
272
|
+
}
|
|
273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SurveyComponent, decorators: [{
|
|
274
|
+
type: Component,
|
|
275
|
+
args: [{ selector: 'app-survey', template: "<!--toolbar-->\r\n<bbsf-page-header-component [options]=\"pageHeaderOptions\" [group]=\"filtersForm\"></bbsf-page-header-component>\r\n<!--End toolbar-->\r\n<div class=\"container-xxl\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-xl-6 d-flex\" *ngFor=\"let item of pagingResult\">\r\n <div class=\"card card-listing w-icon-boxes survey-card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title line-clamp\">\r\n <a [routerLink]=\"['../info', item.iD_GUID]\">\r\n {{item.localizedTitle}}\r\n </a>\r\n </div>\r\n <div class=\"card-toolbar d-flex flex-nowrap flex-stack\">\r\n <span class=\"badge badge-light bagde-xs me-2\" *ngIf=\"!item.visible\"> {{l(\"NotVisible\")}} </span>\r\n <span class=\"badge bagde-xs badge-light me-2\" [ngClass]=\"getStatus(item.statusItemID)\">{{item.localizedStatus}}</span>\r\n <div ngbDropdown container=\"body\" *ngIf=\"enableActions\" class=\"dropdown-custom\" [placement]=\"EN ? 'bottom-right' : 'bottom-left'\">\r\n <button type=\"button\" class=\"dropdown-toggle-custom btn btn-clear btn-sm\"\r\n ngbDropdownToggle>\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/card-dropdown.svg'\"></span>\r\n </button>\r\n <div ngbDropdownMenu class=\"dropdown-menu-custom\">\r\n <button *ngIf=\"isEditable(item.statusItemID)\" (click)=\"showEditModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/Edit.svg'\">\r\n </span>\r\n {{l(\"Edit\")}}\r\n </button>\r\n <button (click)=\"showDuplicateModal(item.iD_GUID)\" apppreventdoubleclick type=\"button\" ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\" [inlineSVG]=\"'/assets/images/copy.svg'\">\r\n </span>\r\n {{l(\"Duplicate\")}}\r\n </button>\r\n <button type=\"button\" (click)=\"showDeleteModal(item.iD_GUID)\" apppreventdoubleclick ngbDropdownItem class=\"dropdown-button\">\r\n <span class=\"svg-icon svg-icon-3\"\r\n [inlineSVG]=\"'/assets/images/Trash.svg'\"></span> {{l(\"Delete\")}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body mb-4\">\r\n <p class=\"line-clamp-1\">\r\n {{item.localizedDesc}}\r\n </p>\r\n </div>\r\n <!--footer type one-->\r\n <div class=\"card-footer pt-0\">\r\n <div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Question')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalQuestionCount}}</span>\r\n </div>\r\n <div class=\"survey-counter\">\r\n <span class=\"survey-counter-title\">{{l('Submissions')}}</span>\r\n <span class=\"badge badge-light-brand badge-square \">{{item.totalSubmissionsCount}}</span>\r\n </div>\r\n </div>\r\n <div class=\"survery-date\">\r\n <div class=\"icon-boxes align-items-baseline\">\r\n <div class=\"icon-box w-100\">\r\n <div class=\"symbol\">\r\n <span class=\"symbol-label\">\r\n <span class=\"svg-icon svg-icon-4\" [inlineSVG]=\"'/assets/images/calendar.svg'\">\r\n </span>\r\n </span>\r\n </div>\r\n <span class=\"survey-counter-title\" *ngIf=\"item.startDate==null\">\r\n {{l('NotStartedYet')}}\r\n </span>\r\n <div *ngIf=\"item.startDate!=null\" class=\"d-flex flex-stack w-100\">\r\n <span class=\"survey-counter-title\">\r\n {{item.startDate |surveyDate}}\r\n <span *ngIf=\"item.endDate!=null\"> - {{(item.endDate|surveyDate)}}</span>\r\n </span>\r\n <span class=\"badge badge-light\" *ngIf=\"item.endDate==null\">{{l('HasNoEnd')}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <BBSF-Paging (Items)=\"setListingResult($event)\" *ngIf=\"loadingPage\" [options]=\"pagingOptions\" [group]=\"filtersForm\"\r\n #pagingViewElement></BBSF-Paging>\r\n</div>\r\n\r\n\r\n\r\n<app-no-results *ngIf=\"pagingResult.length == 0 && showPageContent\"></app-no-results>\r\n<app-add-survey #addModal [pagingElement]=\"pagingElement\"></app-add-survey>\r\n<app-edit-survey #editModal [pagingElement]=\"pagingElement\"></app-edit-survey>\r\n<app-delete-survey #deleteConfirmationModalControl [pagingElement]=\"pagingElement\"></app-delete-survey>\r\n<app-duplicate-survey #duplicateModal [pagingElement]=\"pagingElement\"></app-duplicate-survey>\r\n" }]
|
|
276
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.SurveyService }], propDecorators: { pagingElement: [{
|
|
277
|
+
type: ViewChild,
|
|
278
|
+
args: ['pagingViewElement', { static: false }]
|
|
279
|
+
}], addModal: [{
|
|
280
|
+
type: ViewChild,
|
|
281
|
+
args: ['addModal', { static: false }]
|
|
282
|
+
}], editModal: [{
|
|
283
|
+
type: ViewChild,
|
|
284
|
+
args: ['editModal', { static: false }]
|
|
285
|
+
}], deleteConfirmationModalControl: [{
|
|
286
|
+
type: ViewChild,
|
|
287
|
+
args: ['deleteConfirmationModalControl', { static: false }]
|
|
288
|
+
}], duplicateModal: [{
|
|
289
|
+
type: ViewChild,
|
|
290
|
+
args: ['duplicateModal', { static: false }]
|
|
291
|
+
}] } });
|
|
292
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtYWRtaW4tcG9ydGFsL3NyYy9saWIvUGFnZXMvc2hhcmVkL2NvbXBvbmVudHMvc3VydmV5L3N1cnZleS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLWFkbWluLXBvcnRhbC9zcmMvbGliL1BhZ2VzL3NoYXJlZC9jb21wb25lbnRzL3N1cnZleS9zdXJ2ZXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLFNBQVMsRUFBMkIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsYUFBYSxFQUNiLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsU0FBUyxFQUVULFNBQVMsRUFDVCxjQUFjLEVBQ2QsVUFBVSxFQUNWLFVBQVUsRUFDVixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGdCQUFnQixHQUNqQixNQUFNLHlCQUF5QixDQUFDO0FBR2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTXRFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGdCQUFnQjtJQTBDbkQsWUFDVSxRQUFrQixFQUNsQixhQUE0QjtRQUVwQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFIUixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBMUN0QyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsYUFBUSxHQUFHLEVBQUUs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LFFBQVEsR0FBRyxlQUFlLENBQUM7Z0JBQzNCLE1BQU07WUFFUjtnQkFDRSxNQUFNO1NBQ1Q7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzhHQTdTVSxlQUFlO2tHQUFmLGVBQWUsbWxCQ2hDNUIsNG1LQThGQTs7MkZEOURhLGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0UsWUFBWTt5R0FhdEIsYUFBYTtzQkFEWixTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFFUCxRQUFRO3NCQUFqRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0csU0FBUztzQkFBbkQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUV6Qyw4QkFBOEI7c0JBRDdCLFNBQVM7dUJBQUMsZ0NBQWdDLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUc5RCxjQUFjO3NCQURiLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVsZXRlU3VydmV5Q29tcG9uZW50IH0gZnJvbSAnLi9kZWxldGUtc3VydmV5L2RlbGV0ZS1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdFN1cnZleUNvbXBvbmVudCB9IGZyb20gJy4vZWRpdC1zdXJ2ZXkvZWRpdC1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWRkU3VydmV5Q29tcG9uZW50IH0gZnJvbSAnLi9hZGQtc3VydmV5L2FkZC1zdXJ2ZXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBDb250cm9sTGF5b3V0LFxyXG4gIERhdGFUeXBlLFxyXG4gIERhdGVQaWNrZXJPcHRpb25zLFxyXG4gIERyb3Bkb3duT3B0aW9ucyxcclxuICBGaWx0ZXJJdGVtLFxyXG4gIEZpbHRlclR5cGUsXHJcbiAgSW5wdXRUeXBlLFxyXG4gIFBhZ2luZ0NvbXBvbmVudCxcclxuICBTdGFydFZpZXcsXHJcbiAgVGV4dEJveE9wdGlvbnMsXHJcbiAgUGlja2VyVHlwZSxcclxuICBTZWxlY3RNb2RlLFxyXG4gIFBhZ2luZ09wdGlvbnMsXHJcbiAgUGFnZUhlYWRlck9wdGlvbnMsXHJcbiAgQXBwQmFzZUNvbXBvbmVudCxcclxufSBmcm9tICdAYm5zaWdodHMvYmJzZi1jb250cm9scyc7XHJcblxyXG5pbXBvcnQgeyBEdXBsaWNhdGVTdXJ2ZXlDb21wb25lbnQgfSBmcm9tICcuL2R1cGxpY2F0ZS1zdXJ2ZXkvZHVwbGljYXRlLXN1cnZleS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlNb2RlLCBTdXJ2ZXlTdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvRW51bXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vU2VydmljZXMvc3VydmV5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvU3VydmV5TW9kZWxzL3N1cnZleS11dGlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zdXJ2ZXknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXJ2ZXkuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VydmV5Q29tcG9uZW50IGV4dGVuZHMgQXBwQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcGFnZUhlYWRlck9wdGlvbnM6IFBhZ2VIZWFkZXJPcHRpb25zO1xyXG4gIHBhZ2VUaXRsZSA9ICcnO1xyXG4gIHN1YlRpdGxlID0gJyc7XHJcbiAgc3VydmV5Rm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gIGJyZWFkQ3J1bWI6IGFueVtdO1xyXG4gIEVOOiBib29sZWFuO1xyXG4gIGVuYWJsZUFjdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgU3VydmV5U3RhdHVzRW51bSA9IFN1cnZleVN0YXR1c0VudW07XHJcbiAgQFZpZXdDaGlsZCgncGFnaW5nVmlld0VsZW1lbnQnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBwYWdpbmdFbGVtZW50OiBQYWdpbmdDb21wb25lbnQ8YW55PjtcclxuICBAVmlld0NoaWxkKCdhZGRNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBhZGRNb2RhbDogQWRkU3VydmV5Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2VkaXRNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBlZGl0TW9kYWw6IEVkaXRTdXJ2ZXlDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZGVsZXRlQ29uZmlybWF0aW9uTW9kYWxDb250cm9sJywgeyBzdGF0aWM6IGZhbHNlIH0pXHJcbiAgZGVsZXRlQ29uZmlybWF0aW9uTW9kYWxDb250cm9sOiBEZWxldGVTdXJ2ZXlDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZHVwbGljYXRlTW9kYWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBkdXBsaWNhdGVNb2RhbDogRHVwbGljYXRlU3VydmV5Q29tcG9uZW50O1xyXG5cclxuICAvL0xpc3RpbmdcclxuICBzZWFyY2hUZXh0Qm94T3B0aW9uczogYW55O1xyXG4gIHNlYXJjaFRleHRGaWx0ZXI6IEZpbHRlckl0ZW07XHJcbiAgc3RhdHVzRHJvcGRvd25PcHRpb25zOiBEcm9wZG93bk9wdGlvbnM7XHJcbiAgdmlzaWJsZURyb3Bkb3duT3B0aW9uczogRHJvcGRvd25PcHRpb25zO1xyXG4gIHZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHN0YXR1c0Ryb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIERhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlOiBEYXRlUGlja2VyT3B0aW9ucztcclxuICBEYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHNvcnREcm9wZG93bk9wdGlvbnM6IERyb3Bkb3duT3B0aW9ucztcclxuICBzb3J0VHlwZURyb3Bkb3duT3B0aW9uczogRHJvcGRvd25PcHRpb25zO1xyXG4gIHNvcnREcm9wZG93bkZpbHRlcjogRmlsdGVySXRlbTtcclxuICBzb3J0VHlwZURyb3Bkb3duRmlsdGVyOiBGaWx0ZXJJdGVtO1xyXG4gIHBhZ2luZ1Jlc3VsdDogYW55W10gPSBbXTtcclxuICBwYWdpbmdPcHRpb25zOiBQYWdpbmdPcHRpb25zO1xyXG4gIGZpbHRlcnNGb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgYXBpVVJMOiBzdHJpbmcgPSB0aGlzLnN1cnZleVNlcnZpY2UuYXBpVVJMO1xyXG4gIGxvYWRpbmdQYWdlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2hvd1BhZ2VDb250ZW50OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNGaWx0ZXJzRGF0YUxvYWRlZDogYm9vbGVhbjtcclxuICBzaG93RmlsdGVyczogYm9vbGVhbjtcclxuICBsb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICBmbGlwcGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSBzdXJ2ZXlTZXJ2aWNlOiBTdXJ2ZXlTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmIChTdXJ2ZXlDb25maWcuc3VydmV5TW9kZSA9PSBTdXJ2ZXlNb2RlLlN1cnZleV9GdWxsX0FjY2VzcylcclxuICAgICAgdGhpcy5lbmFibGVBY3Rpb25zID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZVRpdGxlID0gdGhpcy5sKCdTdXJ2ZXlzX0hlYWRlcicpO1xyXG4gICAgdGhpcy51cGRhdGVQYWdlVGl0bGUodGhpcy5wYWdlVGl0bGUpO1xyXG4gICAgdGhpcy5icmVhZENydW1iID0gW107XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zID0gbmV3IFRleHRCb3hPcHRpb25zKCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLk5hbWUgPSAnU2VhcmNoVGV4dEJveCc7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLlR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuUGxhY2Vob2xkZXIgPSB0aGlzLmwoJ1NlYXJjaCcpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0Qm94T3B0aW9ucy5FeHRyYUNsYXNzZXMgPVxyXG4gICAgICAnZm9ybS1jb250cm9sIGZvcm0tY29udHJvbC1zbSBmb3JtLWNvbnRyb2wtc29saWQgc2VhcmNoLWJveCc7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLkhpZGVMYWJlbCA9IHRydWU7XHJcbiAgICB0aGlzLnNlYXJjaFRleHRCb3hPcHRpb25zLkljb24gPSAnLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9zZWFyY2guc3ZnJztcclxuXHJcbiAgICB0aGlzLnNlYXJjaFRleHRGaWx0ZXIgPSBuZXcgRmlsdGVySXRlbSgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLkZvcm1Db250cm9sTmFtZSA9IHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuTmFtZTtcclxuICAgIHRoaXMuc2VhcmNoVGV4dEZpbHRlci5BY3Rpb25QYXJhbWV0ZXJOYW1lID0gJ1NlYXJjaFRleHQnO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLlRleHRCb3g7XHJcblxyXG4gICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zID0gbmV3IERyb3Bkb3duT3B0aW9ucygpO1xyXG4gICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zLk5hbWUgPSAndmlzaWJsZVN1cnZleSc7XHJcbiAgICB0aGlzLnZpc2libGVEcm9wZG93bk9wdGlvbnMuTGFiZWxLZXkgPSAnVmlzaWJpbGl0eSc7XHJcbiAgICB0aGlzLnZpc2libGVEcm9wZG93bk9wdGlvbnMuU2luZ2xlU2VsZWN0aW9uID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyID0gbmV3IEZpbHRlckl0ZW0oKTtcclxuICAgIHRoaXMudmlzaWJsZVBhbmVsRHJvcGRvd25GaWx0ZXIuRm9ybUNvbnRyb2xOYW1lID1cclxuICAgICAgdGhpcy52aXNpYmxlRHJvcGRvd25PcHRpb25zLk5hbWU7XHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnQWN0aXZlU3RhdHVzJztcclxuICAgIHRoaXMudmlzaWJsZVBhbmVsRHJvcGRvd25GaWx0ZXIuSXNGb3JtQ29udHJvbCA9IHRydWU7XHJcbiAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucyA9IG5ldyBEcm9wZG93bk9wdGlvbnMoKTtcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU3RhdHVzJztcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLkxhYmVsS2V5ID0gJ1N0YXR1cyc7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucy5TaW5nbGVTZWxlY3Rpb24gPSB0cnVlO1xyXG4gICAgdGhpcy5zdGF0dXNEcm9wZG93bk9wdGlvbnMuTm90Rm91bmRUZXh0ID0gdGhpcy5sKCdOb1Jlc3VsdEZvdW5kJyk7XHJcblxyXG4gICAgdGhpcy5zdGF0dXNEcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkZvcm1Db250cm9sTmFtZSA9IHRoaXMuc3RhdHVzRHJvcGRvd25PcHRpb25zLk5hbWU7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU3VydmV5U3RhdHVzJztcclxuICAgIHRoaXMuc3RhdHVzRHJvcGRvd25GaWx0ZXIuSXNGb3JtQ29udHJvbCA9IHRydWU7XHJcbiAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlID0gbmV3IERhdGVQaWNrZXJPcHRpb25zKCk7XHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlLk5hbWUgPSAnRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUnO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5MYWJlbEtleSA9ICdEYXRlJztcclxuICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuVmlld1R5cGUgPSBDb250cm9sTGF5b3V0LlZlcnRpY2FsO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5TdGFydFZpZXcgPSBTdGFydFZpZXcuTW9udGg7XHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VNb2RlLlBpY2tlclR5cGUgPSBQaWNrZXJUeXBlLkNhbGVuZGFyO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZS5TZWxlY3RNb2RlID0gU2VsZWN0TW9kZS5SYW5nZTtcclxuXHJcbiAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VGaWx0ZXIgPSBuZXcgRmlsdGVySXRlbSgpO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLkZvcm1Db250cm9sTmFtZSA9XHJcbiAgICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuTmFtZTtcclxuICAgIHRoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZUZpbHRlci5BY3Rpb25QYXJhbWV0ZXJOYW1lID0gJ0RhdGUnO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRhdGVQaWNrZXI7XHJcblxyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25PcHRpb25zID0gbmV3IERyb3Bkb3duT3B0aW9ucygpO1xyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU29ydCc7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuTGFiZWxLZXkgPSAnU29ydCc7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuU2luZ2xlU2VsZWN0aW9uID0gdHJ1ZTtcclxuICAgIHRoaXMuc29ydERyb3Bkb3duT3B0aW9ucy5Ob3RGb3VuZFRleHQgPSB0aGlzLmwoJ05vUmVzdWx0Rm91bmQnKTtcclxuXHJcbiAgICB0aGlzLnNvcnREcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnNvcnREcm9wZG93bkZpbHRlci5Gb3JtQ29udHJvbE5hbWUgPSB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuTmFtZTtcclxuICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU29ydEJ5JztcclxuICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zb3J0RHJvcGRvd25GaWx0ZXIuRmlsdGVyVHlwZSA9IEZpbHRlclR5cGUuRHJvcGRvd25MaXN0O1xyXG5cclxuICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bk9wdGlvbnMgPSBuZXcgRHJvcGRvd25PcHRpb25zKCk7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLk5hbWUgPSAnU29ydFR5cGUnO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5MYWJlbEtleSA9ICdTb3J0VHlwZSc7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLlNpbmdsZVNlbGVjdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25PcHRpb25zLk5vdEZvdW5kVGV4dCA9IHRoaXMubCgnTm9SZXN1bHRGb3VuZCcpO1xyXG5cclxuICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bkZpbHRlciA9IG5ldyBGaWx0ZXJJdGVtKCk7XHJcbiAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25GaWx0ZXIuRm9ybUNvbnRyb2xOYW1lID1cclxuICAgICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5OYW1lO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLkFjdGlvblBhcmFtZXRlck5hbWUgPSAnU29ydFR5cGUnO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLklzRm9ybUNvbnRyb2wgPSB0cnVlO1xyXG4gICAgdGhpcy5zb3J0VHlwZURyb3Bkb3duRmlsdGVyLkZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlLkRyb3Bkb3duTGlzdDtcclxuXHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zID0gbmV3IFBhZ2VIZWFkZXJPcHRpb25zKCk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlRpdGxlS2V5ID0gdGhpcy5wYWdlVGl0bGU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlN1YlRpdGxlS2V5ID0gdGhpcy5sKCdTdXJ2ZXlfU3ViSGVhZGVyJyk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLlNlYXJjaFRleHRCb3guQWN0aXZlID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuU2VhcmNoVGV4dEJveC5UZXh0U2VhcmNoQm94T3B0aW9ucyA9XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnM7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkJyZWFkQ3J1bWIuQWN0aXZlID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuQnJlYWRDcnVtYi5CcmVhZENydW1iSXRlbXMgPSB0aGlzLmJyZWFkQ3J1bWI7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkVkaXRCdXR0b24uQWN0aXZlID0gZmFsc2U7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkV4cG9ydEJ1dHRvbi5BY3RpdmUgPSBmYWxzZTtcclxuICAgIGlmKHRoaXMuZW5hYmxlQWN0aW9ucyl7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkFkZEJ1dHRvbi5BY3RpdmUgPSB0cnVlO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5BZGRCdXR0b24uQnV0dG9uVGV4dEtleSA9IHRoaXMubCgnQWRkJyk7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkFkZEJ1dHRvbi5GdW5jdGlvbiA9IHRoaXMuc2hvd0FkZE1vZGFsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLkFjdGl2ZSA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnNCdXR0b24uQnV0dG9uVGV4dEtleSA9IHRoaXMubCgnRmlsdGVycycpO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLkZ1bmN0aW9uID0gdGhpcy5sb2FkRmlsdGVycztcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuRmlsdGVycy5BcHBseUZ1bmN0aW9uID0gdGhpcy5zZWFyY2g7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnMuUmVzdEZ1bmN0aW9uID0gdGhpcy5yZXNldEZpbHRlcnM7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnMuQ29udHJvbHNPcHRpb25zLnB1c2goe1xyXG4gICAgICBrZXk6IERhdGFUeXBlLlNpbmdsZVNlbGVjdCxcclxuICAgICAgdmFsdWU6IHRoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5TaW5nbGVTZWxlY3QsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5EYXRlLFxyXG4gICAgICB2YWx1ZTogdGhpcy5EYXRlUGlja2VyV2l0aFJhbmdlTW9kZSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzLkNvbnRyb2xzT3B0aW9ucy5wdXNoKHtcclxuICAgICAga2V5OiBEYXRhVHlwZS5TaW5nbGVTZWxlY3QsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMsXHJcbiAgICB9KTtcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuRmlsdGVycy5Db250cm9sc09wdGlvbnMucHVzaCh7XHJcbiAgICAgIGtleTogRGF0YVR5cGUuU2luZ2xlU2VsZWN0LFxyXG4gICAgICB2YWx1ZTogdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5MaXN0aW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuRU4gPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmlzQ3VycmVudExhbmd1YWdlRW5nbGlzaCgpO1xyXG5cclxuICAgIHRoaXMucGFnaW5nT3B0aW9ucyA9IG5ldyBQYWdpbmdPcHRpb25zKCk7XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuUGFnZVNpemUgPSA4O1xyXG4gICAgdGhpcy5wYWdpbmdPcHRpb25zLkRpc2FibGVCbG9ja1VJID0gdHJ1ZTtcclxuICAgIHRoaXMucGFnaW5nT3B0aW9ucy5BY3Rpb25Qb3N0VVJMID0gdGhpcy5hcGlVUkwgKyAnR2V0QWxsJztcclxuICAgIHRoaXMucGFnZUhlYWRlck9wdGlvbnMuTGlzdGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuT25LZXlQcmVzc0ZpbHRlcnNDb250cm9sTmFtZXMgPSBbXHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dEJveE9wdGlvbnMuTmFtZSxcclxuICAgIF07XHJcbiAgICB0aGlzLnBhZ2luZ09wdGlvbnMuRmlsdGVycyA9IFtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0RmlsdGVyLFxyXG4gICAgICB0aGlzLnZpc2libGVQYW5lbERyb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLkRhdGVQaWNrZXJXaXRoUmFuZ2VGaWx0ZXIsXHJcbiAgICAgIHRoaXMuc29ydERyb3Bkb3duRmlsdGVyLFxyXG4gICAgICB0aGlzLnNvcnRUeXBlRHJvcGRvd25GaWx0ZXIsXHJcbiAgICBdO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nUGFnZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBzZXRMaXN0aW5nUmVzdWx0KHJlc3VsdCkge1xyXG4gICAgZGVidWdnZXI7XHJcbiAgICB0aGlzLnBhZ2luZ1Jlc3VsdCA9IHJlc3VsdDtcclxuICAgIHRoaXMuc2hvd1BhZ2VDb250ZW50ID0gdHJ1ZTtcclxuICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICB9XHJcblxyXG4gIGxvYWRGaWx0ZXJzID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgJiYgIXRoaXMuc2hvd0ZpbHRlcnMpIHRoaXMubG9hZEZpbHRlcnNEYXRhKCk7XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RmlsdGVycyA9ICF0aGlzLnNob3dGaWx0ZXJzO1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID1cclxuICAgICAgICB0aGlzLmxvYWRpbmc7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZsaXBwaW5nID0gIXRoaXMuZmxpcHBpbmc7XHJcbiAgfTtcclxuXHJcbiAgbG9hZEZpbHRlcnNEYXRhID0gKCkgPT4ge1xyXG4gICAgdGhpcy5zdXJ2ZXlTZXJ2aWNlLmxvYWRGaWx0ZXJzRHJvcGRvd24oKS5zdWJzY3JpYmUoKHIpID0+IHtcclxuICAgICAgbGV0IHJlc3VsdCA9IHIgYXMgYW55O1xyXG4gICAgICB0aGlzLnN0YXR1c0Ryb3Bkb3duT3B0aW9ucy5EYXRhU291cmNlID0gcmVzdWx0LnN0YXR1c2VzO1xyXG4gICAgICB0aGlzLnNvcnREcm9wZG93bk9wdGlvbnMuRGF0YVNvdXJjZSA9IHJlc3VsdC5zdXJ2ZXlTb3J0aW5nVHlwZXM7XHJcbiAgICAgIHRoaXMuc29ydFR5cGVEcm9wZG93bk9wdGlvbnMuRGF0YVNvdXJjZSA9IHJlc3VsdC5zb3J0VHlwZXM7XHJcbiAgICAgIHRoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucy5EYXRhU291cmNlID0gcmVzdWx0LnZpc2liaWxpdHk7XHJcbiAgICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzRmlsdGVyc0RhdGFMb2FkZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID1cclxuICAgICAgICB0aGlzLmxvYWRpbmc7XHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICByZXNldEZpbHRlcnMgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMuRGF0ZVBpY2tlcldpdGhSYW5nZU1vZGUuTmFtZV0uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMudmlzaWJsZURyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zdGF0dXNEcm9wZG93bk9wdGlvbnMuTmFtZV0uc2V0VmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLmZpbHRlcnNGb3JtLmNvbnRyb2xzW3RoaXMuc29ydERyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zb3J0VHlwZURyb3Bkb3duT3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMuZmlsdGVyc0Zvcm0uY29udHJvbHNbdGhpcy5zZWFyY2hUZXh0Qm94T3B0aW9ucy5OYW1lXS5zZXRWYWx1ZShudWxsKTtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnBhZ2VIZWFkZXJPcHRpb25zLkZpbHRlcnNCdXR0b24uU2hvd0xvYWRpbmdJbkZpbHRlcnNCb3ggPSB0aGlzLmxvYWRpbmc7XHJcbiAgICB0aGlzLnBhZ2luZ0VsZW1lbnQuUmVpbml0aWFsaXplUGFnaW5nKCk7XHJcbiAgfTtcclxuXHJcbiAgc2VhcmNoID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmZpbHRlcnNGb3JtLnZhbGlkKSByZXR1cm47XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5wYWdlSGVhZGVyT3B0aW9ucy5GaWx0ZXJzQnV0dG9uLlNob3dMb2FkaW5nSW5GaWx0ZXJzQm94ID0gdGhpcy5sb2FkaW5nO1xyXG4gICAgdGhpcy5wYWdpbmdFbGVtZW50LlJlaW5pdGlhbGl6ZVBhZ2luZygpO1xyXG4gIH07XHJcblxyXG4gIHNob3dBZGRNb2RhbCA9ICgpID0+IHtcclxuICAgIHRoaXMuYWRkTW9kYWwuc2hvd01vZGFsKCk7XHJcbiAgfTtcclxuICBzaG93RWRpdE1vZGFsKGlkKSB7XHJcbiAgICB0aGlzLmVkaXRNb2RhbC5zaG93RWRpdE1vZGFsKGlkKTtcclxuICB9XHJcbiAgc2hvd0R1cGxpY2F0ZU1vZGFsKGlkKSB7XHJcbiAgICB0aGlzLmR1cGxpY2F0ZU1vZGFsLnNob3dEdXBsaWNhdGVNb2RhbChpZCk7XHJcbiAgfVxyXG4gIHNob3dEZWxldGVNb2RhbChpZCkge1xyXG4gICAgdGhpcy5kZWxldGVDb25maXJtYXRpb25Nb2RhbENvbnRyb2wuc2hvd0RlbGV0ZU1vZGFsKGlkKTtcclxuICB9XHJcblxyXG4gIGlzRWRpdGFibGUoc3RhdHVzKSB7XHJcbiAgICBsZXQgYWxsb3dFZGl0ID0gZmFsc2U7XHJcbiAgICBzd2l0Y2ggKHN0YXR1cy50b0xvY2FsZUxvd2VyQ2FzZSgpKSB7XHJcbiAgICAgIGNhc2UgdGhpcy5TdXJ2ZXlTdGF0dXNFbnVtLlNjb3JpbmdUeXBlRW51bV9EcmFmdC50b0xvY2FsZUxvd2VyQ2FzZSgpOlxyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fVXBjb21pbmcudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBhbGxvd0VkaXQgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fQ2xvc2VkLnRvTG9jYWxlTG93ZXJDYXNlKCk6XHJcbiAgICAgIGNhc2UgdGhpcy5TdXJ2ZXlTdGF0dXNFbnVtLlNjb3JpbmdUeXBlRW51bV9QdWJsaXNoZWQudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBhbGxvd0VkaXQgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIHJldHVybiBhbGxvd0VkaXQ7XHJcbiAgfVxyXG4gIGdldFN0YXR1cyhzdGF0dXMpIHtcclxuICAgIHZhciBTdGF0dXNlcyA9ICcnO1xyXG4gICAgc3dpdGNoIChzdGF0dXMudG9Mb2NhbGVMb3dlckNhc2UoKSkge1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fRHJhZnQudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBTdGF0dXNlcyA9ICdiYWRnZS1zZWNvbmRhcnknO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fQ2xvc2VkLnRvTG9jYWxlTG93ZXJDYXNlKCk6XHJcbiAgICAgICAgU3RhdHVzZXMgPSAnYmFkZ2UtZGFuZ2VyJztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSB0aGlzLlN1cnZleVN0YXR1c0VudW0uU2NvcmluZ1R5cGVFbnVtX1B1Ymxpc2hlZC50b0xvY2FsZUxvd2VyQ2FzZSgpOlxyXG4gICAgICAgIFN0YXR1c2VzID0gJ2JhZGdlLXN1Y2Nlc3MnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIHRoaXMuU3VydmV5U3RhdHVzRW51bS5TY29yaW5nVHlwZUVudW1fVXBjb21pbmcudG9Mb2NhbGVMb3dlckNhc2UoKTpcclxuICAgICAgICBTdGF0dXNlcyA9ICdiYWRnZS1zdWNjZXNzJztcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gU3RhdHVzZXM7XHJcbiAgfVxyXG59XHJcbiIsIjwhLS10b29sYmFyLS0+XHJcbjxiYnNmLXBhZ2UtaGVhZGVyLWNvbXBvbmVudCBbb3B0aW9uc109XCJwYWdlSGVhZGVyT3B0aW9uc1wiIFtncm91cF09XCJmaWx0ZXJzRm9ybVwiPjwvYmJzZi1wYWdlLWhlYWRlci1jb21wb25lbnQ+XHJcbjwhLS1FbmQgdG9vbGJhci0tPlxyXG48ZGl2IGNsYXNzPVwiY29udGFpbmVyLXh4bFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wteGwtNiBkLWZsZXhcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBwYWdpbmdSZXN1bHRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1saXN0aW5nIHctaWNvbi1ib3hlcyBzdXJ2ZXktY2FyZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGl0bGUgbGluZS1jbGFtcFwiPlxyXG4gICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbJy4uL2luZm8nLCBpdGVtLmlEX0dVSURdXCI+XHJcbiAgICAgICAgICAgICAge3tpdGVtLmxvY2FsaXplZFRpdGxlfX1cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyIGQtZmxleCBmbGV4LW5vd3JhcCBmbGV4LXN0YWNrXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQgYmFnZGUteHMgbWUtMlwiICpuZ0lmPVwiIWl0ZW0udmlzaWJsZVwiPiB7e2woXCJOb3RWaXNpYmxlXCIpfX0gPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZ2RlLXhzIGJhZGdlLWxpZ2h0IG1lLTJcIiBbbmdDbGFzc109XCJnZXRTdGF0dXMoaXRlbS5zdGF0dXNJdGVtSUQpXCI+e3tpdGVtLmxvY2FsaXplZFN0YXR1c319PC9zcGFuPlxyXG4gICAgICAgICAgICA8ZGl2IG5nYkRyb3Bkb3duIGNvbnRhaW5lcj1cImJvZHlcIiAqbmdJZj1cImVuYWJsZUFjdGlvbnNcIiBjbGFzcz1cImRyb3Bkb3duLWN1c3RvbVwiIFtwbGFjZW1lbnRdPVwiRU4gPyAnYm90dG9tLXJpZ2h0JyA6ICdib3R0b20tbGVmdCdcIj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZS1jdXN0b20gYnRuIGJ0bi1jbGVhciBidG4tc21cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgbmdiRHJvcGRvd25Ub2dnbGU+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTNcIiBbaW5saW5lU1ZHXT1cIicvYXNzZXRzL2ltYWdlcy9jYXJkLWRyb3Bkb3duLnN2ZydcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPGRpdiBuZ2JEcm9wZG93bk1lbnUgY2xhc3M9XCJkcm9wZG93bi1tZW51LWN1c3RvbVwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImlzRWRpdGFibGUoaXRlbS5zdGF0dXNJdGVtSUQpXCIgKGNsaWNrKT1cInNob3dFZGl0TW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtIGNsYXNzPVwiZHJvcGRvd24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tM1wiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL0VkaXQuc3ZnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHt7bChcIkVkaXRcIil9fVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJzaG93RHVwbGljYXRlTW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayB0eXBlPVwiYnV0dG9uXCIgbmdiRHJvcGRvd25JdGVtIGNsYXNzPVwiZHJvcGRvd24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tM1wiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2NvcHkuc3ZnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHt7bChcIkR1cGxpY2F0ZVwiKX19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzaG93RGVsZXRlTW9kYWwoaXRlbS5pRF9HVUlEKVwiIGFwcHByZXZlbnRkb3VibGVjbGljayBuZ2JEcm9wZG93bkl0ZW0gY2xhc3M9XCJkcm9wZG93bi1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2lubGluZVNWR109XCInL2Fzc2V0cy9pbWFnZXMvVHJhc2guc3ZnJ1wiPjwvc3Bhbj4gIHt7bChcIkRlbGV0ZVwiKX19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IG1iLTRcIj5cclxuICAgICAgICAgIDxwIGNsYXNzPVwibGluZS1jbGFtcC0xXCI+XHJcbiAgICAgICAgICAgIHt7aXRlbS5sb2NhbGl6ZWREZXNjfX1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tZm9vdGVyIHR5cGUgb25lLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIHB0LTBcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdXJ2ZXktY291bnRlclwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3VydmV5LWNvdW50ZXItdGl0bGVcIj57e2woJ1F1ZXN0aW9uJyl9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWJyYW5kIGJhZGdlLXNxdWFyZSBcIj57e2l0ZW0udG90YWxRdWVzdGlvbkNvdW50fX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VydmV5LWNvdW50ZXJcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1cnZleS1jb3VudGVyLXRpdGxlXCI+e3tsKCdTdWJtaXNzaW9ucycpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1icmFuZCBiYWRnZS1zcXVhcmUgXCI+e3tpdGVtLnRvdGFsU3VibWlzc2lvbnNDb3VudH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN1cnZlcnktZGF0ZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ib3hlcyBhbGlnbi1pdGVtcy1iYXNlbGluZVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWJveCB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN5bWJvbC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tNFwiIFtpbmxpbmVTVkddPVwiJy9hc3NldHMvaW1hZ2VzL2NhbGVuZGFyLnN2ZydcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdXJ2ZXktY291bnRlci10aXRsZVwiICpuZ0lmPVwiaXRlbS5zdGFydERhdGU9PW51bGxcIj5cclxuICAgICAgICAgICAgICAgICAge3tsKCdOb3RTdGFydGVkWWV0Jyl9fVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAgKm5nSWY9XCJpdGVtLnN0YXJ0RGF0ZSE9bnVsbFwiIGNsYXNzPVwiZC1mbGV4IGZsZXgtc3RhY2sgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdXJ2ZXktY291bnRlci10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7aXRlbS5zdGFydERhdGUgfHN1cnZleURhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5lbmREYXRlIT1udWxsXCI+IC0ge3soaXRlbS5lbmREYXRlfHN1cnZleURhdGUpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodFwiICpuZ0lmPVwiaXRlbS5lbmREYXRlPT1udWxsXCI+e3tsKCdIYXNOb0VuZCcpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8QkJTRi1QYWdpbmcgKEl0ZW1zKT1cInNldExpc3RpbmdSZXN1bHQoJGV2ZW50KVwiICpuZ0lmPVwibG9hZGluZ1BhZ2VcIiBbb3B0aW9uc109XCJwYWdpbmdPcHRpb25zXCIgW2dyb3VwXT1cImZpbHRlcnNGb3JtXCJcclxuICAgICAgICAgICAgICAgI3BhZ2luZ1ZpZXdFbGVtZW50PjwvQkJTRi1QYWdpbmc+XHJcbjwvZGl2PlxyXG5cclxuXHJcblxyXG48YXBwLW5vLXJlc3VsdHMgKm5nSWY9XCJwYWdpbmdSZXN1bHQubGVuZ3RoID09IDAgJiYgc2hvd1BhZ2VDb250ZW50XCI+PC9hcHAtbm8tcmVzdWx0cz5cclxuPGFwcC1hZGQtc3VydmV5ICNhZGRNb2RhbCBbcGFnaW5nRWxlbWVudF09XCJwYWdpbmdFbGVtZW50XCI+PC9hcHAtYWRkLXN1cnZleT5cclxuPGFwcC1lZGl0LXN1cnZleSAjZWRpdE1vZGFsIFtwYWdpbmdFbGVtZW50XT1cInBhZ2luZ0VsZW1lbnRcIj48L2FwcC1lZGl0LXN1cnZleT5cclxuPGFwcC1kZWxldGUtc3VydmV5ICNkZWxldGVDb25maXJtYXRpb25Nb2RhbENvbnRyb2wgW3BhZ2luZ0VsZW1lbnRdPVwicGFnaW5nRWxlbWVudFwiPjwvYXBwLWRlbGV0ZS1zdXJ2ZXk+XHJcbjxhcHAtZHVwbGljYXRlLXN1cnZleSAjZHVwbGljYXRlTW9kYWwgW3BhZ2luZ0VsZW1lbnRdPVwicGFnaW5nRWxlbWVudFwiPjwvYXBwLWR1cGxpY2F0ZS1zdXJ2ZXk+XHJcbiJdfQ==
|