@posiwise/admin-module 0.0.47 → 0.0.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/esm2022/lib/admin-guard.service.mjs +44 -0
  2. package/{esm2020 → esm2022}/lib/admin-module.routing.mjs +5 -5
  3. package/esm2022/lib/admin.module.mjs +389 -0
  4. package/{esm2020 → esm2022}/lib/admin.service.mjs +5 -5
  5. package/esm2022/lib/components/TOS/terms-of-service/terms-of-service.component.mjs +88 -0
  6. package/{esm2020 → esm2022}/lib/components/TOS/terms-of-service-details/terms-of-service-details.component.mjs +5 -5
  7. package/{esm2020 → esm2022}/lib/components/TOS/terms-of-service-tabs/terms-of-service-tabs.component.mjs +5 -5
  8. package/{esm2020 → esm2022}/lib/components/config/global-config-details/global-config-details.component.mjs +5 -5
  9. package/esm2022/lib/components/config/global-config-list/global-config-list.component.mjs +88 -0
  10. package/{esm2020 → esm2022}/lib/components/config/global-config-tabs/global-config-tabs.component.mjs +4 -4
  11. package/esm2022/lib/components/contact-us/contact-us-list/contact-us-list.component.mjs +99 -0
  12. package/esm2022/lib/components/contact-us/contact-us-tabs/contact-us-tabs.component.mjs +25 -0
  13. package/esm2022/lib/components/credentials/credentials/credentials.component.mjs +83 -0
  14. package/{esm2020 → esm2022}/lib/components/credentials/credentials-details/credentials-details.component.mjs +5 -5
  15. package/{esm2020 → esm2022}/lib/components/credentials/credentials-tab/credentials-tab.component.mjs +5 -5
  16. package/esm2022/lib/components/credentials/subscription-credentials/subscription-credentials.component.mjs +89 -0
  17. package/{esm2020 → esm2022}/lib/components/credentials/subscription-credentials-details/subscription-credentials-details.component.mjs +5 -5
  18. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-build/domain-config-build.component.mjs +5 -5
  19. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-core/domain-config-core.component.mjs +5 -5
  20. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-details.component.mjs +5 -5
  21. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-integrations/domain-config-integrations.component.mjs +5 -5
  22. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-interface/domain-config-interface.component.mjs +5 -5
  23. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-organization/domain-config-organization.component.mjs +5 -5
  24. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-security/domain-config-security.component.mjs +5 -5
  25. package/{esm2020 → esm2022}/lib/components/domain-config/domain-config-details/domain-config-social/domain-config-social.component.mjs +5 -5
  26. package/esm2022/lib/components/domain-config/domain-config-list/domain-config-list.component.mjs +88 -0
  27. package/esm2022/lib/components/domain-config/domain-config-tabs/domain-config-tabs.component.mjs +25 -0
  28. package/esm2022/lib/components/faqs/faqs-list/faqs-list.component.mjs +294 -0
  29. package/esm2022/lib/components/faqs/faqs-tabs/faqs-tabs.component.mjs +25 -0
  30. package/{esm2020 → esm2022}/lib/components/feedback-questions/feedback-questions-details/feedback-questions-details.component.mjs +5 -5
  31. package/{esm2020 → esm2022}/lib/components/feedback-questions/feedback-questions-list/feedback-questions-list.component.mjs +6 -6
  32. package/{esm2020 → esm2022}/lib/components/generic/generic-insight/generic-insight.component.mjs +4 -4
  33. package/{esm2020 → esm2022}/lib/components/generic/generic-misc/generic-misc.component.mjs +5 -5
  34. package/{esm2020 → esm2022}/lib/components/generic/generic-tabs/generic-tabs.component.mjs +4 -4
  35. package/esm2022/lib/components/login-notifications/login-notification-details/login-notification-details.component.mjs +100 -0
  36. package/esm2022/lib/components/login-notifications/login-notification-tabs/login-notification-tabs.component.mjs +25 -0
  37. package/esm2022/lib/components/login-notifications/login-notifications-list/login-notifications-list.component.mjs +91 -0
  38. package/{esm2020 → esm2022}/lib/components/newsletters/newsletter-details/newsletter-details.component.mjs +5 -5
  39. package/esm2022/lib/components/newsletters/newsletter-item-details/newsletter-item-details.component.mjs +240 -0
  40. package/esm2022/lib/components/newsletters/newsletter-users-list/newsletter-users-list.component.mjs +76 -0
  41. package/{esm2020 → esm2022}/lib/components/newsletters/newsletters-insight/newsletters-insight.component.mjs +5 -5
  42. package/{esm2020 → esm2022}/lib/components/newsletters/newsletters-items/newsletters-items.component.mjs +6 -6
  43. package/esm2022/lib/components/newsletters/newsletters-list/newsletters-list.component.mjs +100 -0
  44. package/{esm2020 → esm2022}/lib/components/newsletters/newsletters-tabs/newsletters-tabs.component.mjs +4 -4
  45. package/{esm2020 → esm2022}/lib/components/permissions/permissions-details/permissions-details.component.mjs +5 -5
  46. package/esm2022/lib/components/permissions/permissions-list/permissions-list.component.mjs +77 -0
  47. package/{esm2020 → esm2022}/lib/components/permissions/permissions-tabs/permissions-tabs.component.mjs +5 -5
  48. package/{esm2020 → esm2022}/lib/components/permissions/role-details/role-details.component.mjs +5 -5
  49. package/esm2022/lib/components/permissions/roles-list/roles-list.component.mjs +84 -0
  50. package/{esm2020 → esm2022}/lib/components/products/product-details/product-details.component.mjs +5 -5
  51. package/{esm2020 → esm2022}/lib/components/products/products-insight/products-insight.component.mjs +5 -5
  52. package/{esm2020 → esm2022}/lib/components/products/products-list/products-list.component.mjs +6 -6
  53. package/{esm2020 → esm2022}/lib/components/products/products-tabs/products-tabs.component.mjs +5 -5
  54. package/esm2022/lib/components/products/users-list-for-product/users-list-for-product.component.mjs +56 -0
  55. package/{esm2020 → esm2022}/lib/components/subscriptions/subscription-agents/subscription-agents.component.mjs +5 -5
  56. package/esm2022/lib/components/subscriptions/subscription-agents-list/subscription-agents-list.component.mjs +128 -0
  57. package/{esm2020 → esm2022}/lib/components/subscriptions/subscription-details/subscription-details.component.mjs +5 -5
  58. package/{esm2020 → esm2022}/lib/components/subscriptions/subscription-product-details/subscription-product-details.component.mjs +5 -5
  59. package/esm2022/lib/components/subscriptions/subscription-products/subscription-products.component.mjs +63 -0
  60. package/esm2022/lib/components/subscriptions/subscription-users/subscription-users.component.mjs +100 -0
  61. package/esm2022/lib/components/subscriptions/subscriptions-insight/subscription-insight-nps/subscription-insight-nps.component.mjs +103 -0
  62. package/{esm2020 → esm2022}/lib/components/subscriptions/subscriptions-insight/subscription-insight-revenue/subscription-insight-revenue.component.mjs +5 -5
  63. package/{esm2020 → esm2022}/lib/components/subscriptions/subscriptions-insight/subscription-insight-tabs/subscription-insight-tabs.component.mjs +4 -4
  64. package/{esm2020 → esm2022}/lib/components/subscriptions/subscriptions-insight/subscriptions-insight.component.mjs +5 -5
  65. package/{esm2020 → esm2022}/lib/components/subscriptions/subscriptions-list/subscriptions-list.component.mjs +6 -6
  66. package/{esm2020 → esm2022}/lib/components/subscriptions/subscriptions-tabs/subscriptions-tabs.component.mjs +4 -4
  67. package/{esm2020 → esm2022}/lib/components/tags/tags-category/tags-category.component.mjs +6 -6
  68. package/{esm2020 → esm2022}/lib/components/tags/tags-list/tags-list.component.mjs +6 -6
  69. package/{esm2020 → esm2022}/lib/components/tags/tags-tabs/tags-tabs.component.mjs +5 -5
  70. package/{esm2020 → esm2022}/lib/components/tips/tip-detail/tip-detail.component.mjs +5 -5
  71. package/esm2022/lib/components/tips/tips-list/tips-list.component.mjs +48 -0
  72. package/{esm2020 → esm2022}/lib/components/tips/tips-tabs/tips-tabs.component.mjs +4 -4
  73. package/esm2022/lib/components/tracking/ahoy-events/ahoy-events.component.mjs +104 -0
  74. package/esm2022/lib/components/tracking/ahoy-messages/ahoy-messages.component.mjs +95 -0
  75. package/esm2022/lib/components/tracking/ahoy-visits/ahoy-visits.component.mjs +91 -0
  76. package/esm2022/lib/components/tracking/events/events.component.mjs +91 -0
  77. package/{esm2020 → esm2022}/lib/components/tracking/tracking-tabs/tracking-tabs.component.mjs +5 -5
  78. package/esm2022/lib/components/tracking/versions/versions.component.mjs +103 -0
  79. package/{esm2020 → esm2022}/lib/components/users/user-details/user-details.component.mjs +5 -5
  80. package/{esm2020 → esm2022}/lib/components/users/users-insight/users-insight.component.mjs +5 -5
  81. package/{esm2020 → esm2022}/lib/components/users/users-list/users-list.component.mjs +6 -6
  82. package/{esm2020 → esm2022}/lib/components/users/users-tabs/users-tabs.component.mjs +5 -5
  83. package/fesm2022/posiwise-admin-module.mjs +7846 -0
  84. package/fesm2022/posiwise-admin-module.mjs.map +1 -0
  85. package/lib/admin-guard.service.d.ts +2 -2
  86. package/lib/admin.module.d.ts +2 -2
  87. package/lib/components/contact-us/contact-us-tabs/contact-us-tabs.component.d.ts +1 -1
  88. package/lib/components/domain-config/domain-config-tabs/domain-config-tabs.component.d.ts +1 -1
  89. package/lib/components/faqs/faqs-tabs/faqs-tabs.component.d.ts +1 -1
  90. package/lib/components/login-notifications/login-notification-tabs/login-notification-tabs.component.d.ts +1 -1
  91. package/lib/components/newsletters/newsletter-item-details/newsletter-item-details.component.d.ts +2 -2
  92. package/package.json +11 -26
  93. package/esm2020/lib/admin-guard.service.mjs +0 -44
  94. package/esm2020/lib/admin.module.mjs +0 -361
  95. package/esm2020/lib/components/TOS/terms-of-service/terms-of-service.component.mjs +0 -88
  96. package/esm2020/lib/components/config/global-config-list/global-config-list.component.mjs +0 -88
  97. package/esm2020/lib/components/contact-us/contact-us-list/contact-us-list.component.mjs +0 -99
  98. package/esm2020/lib/components/contact-us/contact-us-tabs/contact-us-tabs.component.mjs +0 -24
  99. package/esm2020/lib/components/credentials/credentials/credentials.component.mjs +0 -83
  100. package/esm2020/lib/components/credentials/subscription-credentials/subscription-credentials.component.mjs +0 -89
  101. package/esm2020/lib/components/domain-config/domain-config-list/domain-config-list.component.mjs +0 -88
  102. package/esm2020/lib/components/domain-config/domain-config-tabs/domain-config-tabs.component.mjs +0 -24
  103. package/esm2020/lib/components/faqs/faqs-list/faqs-list.component.mjs +0 -294
  104. package/esm2020/lib/components/faqs/faqs-tabs/faqs-tabs.component.mjs +0 -24
  105. package/esm2020/lib/components/login-notifications/login-notification-details/login-notification-details.component.mjs +0 -100
  106. package/esm2020/lib/components/login-notifications/login-notification-tabs/login-notification-tabs.component.mjs +0 -24
  107. package/esm2020/lib/components/login-notifications/login-notifications-list/login-notifications-list.component.mjs +0 -91
  108. package/esm2020/lib/components/newsletters/newsletter-item-details/newsletter-item-details.component.mjs +0 -240
  109. package/esm2020/lib/components/newsletters/newsletter-users-list/newsletter-users-list.component.mjs +0 -76
  110. package/esm2020/lib/components/newsletters/newsletters-list/newsletters-list.component.mjs +0 -100
  111. package/esm2020/lib/components/permissions/permissions-list/permissions-list.component.mjs +0 -77
  112. package/esm2020/lib/components/permissions/roles-list/roles-list.component.mjs +0 -84
  113. package/esm2020/lib/components/products/users-list-for-product/users-list-for-product.component.mjs +0 -56
  114. package/esm2020/lib/components/subscriptions/subscription-agents-list/subscription-agents-list.component.mjs +0 -128
  115. package/esm2020/lib/components/subscriptions/subscription-products/subscription-products.component.mjs +0 -63
  116. package/esm2020/lib/components/subscriptions/subscription-users/subscription-users.component.mjs +0 -100
  117. package/esm2020/lib/components/subscriptions/subscriptions-insight/subscription-insight-nps/subscription-insight-nps.component.mjs +0 -103
  118. package/esm2020/lib/components/tips/tips-list/tips-list.component.mjs +0 -48
  119. package/esm2020/lib/components/tracking/ahoy-events/ahoy-events.component.mjs +0 -104
  120. package/esm2020/lib/components/tracking/ahoy-messages/ahoy-messages.component.mjs +0 -95
  121. package/esm2020/lib/components/tracking/ahoy-visits/ahoy-visits.component.mjs +0 -91
  122. package/esm2020/lib/components/tracking/events/events.component.mjs +0 -91
  123. package/esm2020/lib/components/tracking/versions/versions.component.mjs +0 -103
  124. package/fesm2015/posiwise-admin-module.mjs +0 -7808
  125. package/fesm2015/posiwise-admin-module.mjs.map +0 -1
  126. package/fesm2020/posiwise-admin-module.mjs +0 -7813
  127. package/fesm2020/posiwise-admin-module.mjs.map +0 -1
  128. /package/{esm2020 → esm2022}/index.mjs +0 -0
  129. /package/{esm2020 → esm2022}/lib/shared/interface/contact-us.interface.mjs +0 -0
  130. /package/{esm2020 → esm2022}/lib/shared/interface/credential.interface.mjs +0 -0
  131. /package/{esm2020 → esm2022}/lib/shared/interface/domain-config.interface.mjs +0 -0
  132. /package/{esm2020 → esm2022}/lib/shared/interface/feedback-question.interface.mjs +0 -0
  133. /package/{esm2020 → esm2022}/lib/shared/interface/global-config.interface.mjs +0 -0
  134. /package/{esm2020 → esm2022}/lib/shared/interface/login-notification.interface.mjs +0 -0
  135. /package/{esm2020 → esm2022}/lib/shared/interface/newsletter.interface.mjs +0 -0
  136. /package/{esm2020 → esm2022}/lib/shared/interface/permission.interface.mjs +0 -0
  137. /package/{esm2020 → esm2022}/lib/shared/interface/privacy-tos.interface.mjs +0 -0
  138. /package/{esm2020 → esm2022}/lib/shared/interface/tip.interface.mjs +0 -0
  139. /package/{esm2020 → esm2022}/lib/shared/interface/tracking.interface.mjs +0 -0
  140. /package/{esm2020 → esm2022}/lib/shared/models/admin.model.mjs +0 -0
  141. /package/{esm2020 → esm2022}/lib/shared/routers/routers.mjs +0 -0
  142. /package/{esm2020 → esm2022}/posiwise-admin-module.mjs +0 -0
@@ -399,13 +399,13 @@ export class AdminService {
399
399
  remove2fa(userId, subscription_id) {
400
400
  return this.api.put(`${ADMIN_PATH}/users/${userId}/remove_2fa`, { subscription_id });
401
401
  }
402
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: AdminService, deps: [{ token: i1.MainApiHttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
403
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: AdminService, providedIn: 'root' }); }
402
404
  }
403
- AdminService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: AdminService, deps: [{ token: i1.MainApiHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
404
- AdminService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: AdminService, providedIn: 'root' });
405
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: AdminService, decorators: [{
405
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: AdminService, decorators: [{
406
406
  type: Injectable,
407
407
  args: [{
408
408
  providedIn: 'root'
409
409
  }]
410
- }], ctorParameters: function () { return [{ type: i1.MainApiHttpService }]; } });
411
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvYWRtaW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQXNCLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFLL0QsTUFBTSxPQUFPLFlBQVk7SUFtQnJCLFlBQW9CLEdBQXVCO1FBQXZCLFFBQUcsR0FBSCxHQUFHLENBQW9CO1FBbEJuQyxhQUFRLEdBQUcsVUFBVSxDQUFDO1FBRXRCLGdCQUFXLEdBQUcsY0FBYyxDQUFDO1FBRTdCLHFCQUFnQixHQUFHLG1CQUFtQixDQUFDO1FBRXZDLGdCQUFXLEdBQUcsb0JBQW9CLENBQUM7UUFFbkMsU0FBSSxHQUFHLE9BQU8sQ0FBQztRQUVmLDRCQUF1QixHQUFHLDJCQUEyQixDQUFDO1FBRXRELGtCQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFFbEMseUJBQW9CLEdBQUcsR0FBRyxVQUFVLHFCQUFxQixDQUFDO1FBRTFELGNBQVMsR0FBRyxHQUFHLFVBQVUsYUFBYSxDQUFDO0lBRUQsQ0FBQztJQUUvQzs7Ozs7T0FLRztJQUNILFFBQVEsQ0FBQyxNQUFlLEVBQUUsTUFBTztRQUM3QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsZ0JBQWdCLEVBQUU7WUFDNUQsR0FBRyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUN4QyxHQUFHLE1BQU07U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQVUsRUFBRSxJ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QUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELGFBQWE7SUFDYixlQUFlLENBQUMsZUFBdUIsRUFBRSxVQUFrQixFQUFFLE1BQWUsRUFBRSxNQUFlO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxVQUFVLEVBQUU7WUFDdkQsZUFBZTtZQUNmLFVBQVU7WUFDVixHQUFHLGFBQWEsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1lBQ3hDLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRTtTQUN2QixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZSxDQUFDLEVBQVUsRUFBRSxJQUFJO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYyxFQUFFLGVBQXVCO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLFVBQVUsTUFBTSxhQUFhLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7O3lHQXpoQlEsWUFBWTs2R0FBWixZQUFZLGNBRlQsTUFBTTsyRkFFVCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQURNSU5fUEFUSCwgUGFnaW5nLCBVc2VyLCBSb2xlIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi11dGlsaXRpZXMnO1xuaW1wb3J0IHsgSGVscGVyU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9oZWxwZXItc2VydmljZSc7XG5pbXBvcnQgeyBNYWluQXBpSHR0cFNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXNlcnZpY2VzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlcnZpY2Uge1xuICAgIHByaXZhdGUgZW5kcG9pbnQgPSBBRE1JTl9QQVRIO1xuXG4gICAgcHJpdmF0ZSBuZXdzbGV0dGVycyA9ICcvbmV3c2xldHRlcnMnO1xuXG4gICAgcHJpdmF0ZSBuZXdzbGV0dGVyc0l0ZW1zID0gJy9uZXdzbGV0dGVyX2l0ZW1zJztcblxuICAgIHByaXZhdGUgcGVybWlzc2lvbnMgPSAnL2FkbWluL3Blcm1pc3Npb25zJztcblxuICAgIHByaXZhdGUgYWhveSA9ICcvYWhveSc7XG5cbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzID0gJy9zdWJzY3JpcHRpb25fY3JlZGVudGlhbHMnO1xuXG4gICAgcHJpdmF0ZSBnbG9iYWxDb25maWdzID0gJy9nbG9iYWxfY29uZmlncyc7XG5cbiAgICBwcml2YXRlIGZlZWRiYWNrUXVlc3Rpb25zVXJsID0gYCR7QURNSU5fUEFUSH0vZmVlZGJhY2tfcXVlc3Rpb25zYDtcblxuICAgIHByaXZhdGUgY29udGFjdFVzID0gYCR7QURNSU5fUEFUSH0vY29udGFjdF91c2A7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaTogTWFpbkFwaUh0dHBTZXJ2aWNlKSB7fVxuXG4gICAgLyoqXG4gICAgICogVXNlciBBUElcbiAgICAgKiBAcGFyYW0gcGFnZVxuICAgICAqIEBwYXJhbSBwYWdlU2l6ZVxuICAgICAqIEBwYXJhbSBzZWFyY2hcbiAgICAgKi9cbiAgICBnZXRVc2VycyhwYWdpbmc/OiBQYWdpbmcsIHBhcmFtcz8pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5lbmRwb2ludH0vdXNlcnMvZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZyksXG4gICAgICAgICAgICAuLi5wYXJhbXNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcG9zdEFnZW50KGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7QURNSU5fUEFUSH0vc3Vic2NyaXB0aW9ucy8ke2lkfS9hZ2VudHNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBZ2VudHMoaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAke0FETUlOX1BBVEh9L3N1YnNjcmlwdGlvbnMvJHtpZH0vYWdlbnRzYCk7XG4gICAgfVxuXG4gICAgZ2V0QWdlbnRCeUlkKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyLCBhZ2VudF9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoYCR7QURNSU5fUEFUSH0vc3Vic2NyaXB0aW9ucy8ke3N1YnNjcmlwdGlvbl9pZH0vYWdlbnRzLyR7YWdlbnRfaWR9YCk7XG4gICAgfVxuXG4gICAgZGVzdHJveUFnZW50KGlkOiBudW1iZXIsIGFnZW50X2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHtBRE1JTl9QQVRIfS9zdWJzY3JpcHRpb25zLyR7aWR9L2FnZW50cy8ke2FnZW50X2lkfWApO1xuICAgIH1cblxuICAgIGluc3BlY3RBZ2VudCh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7QURNSU5fUEFUSH0vaW5zcGVjdGAsIHsgdHlwZSB9KTtcbiAgICB9XG5cbiAgICB1cGRhdGVTdWJzY3JpcHRpb25Qcm9kdWN0KGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHtBRE1JTl9QQVRIfS9zdWJzY3JpcHRpb25fcHJvZHVjdGAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldFN1YnNjcmlwdGlvblByb2R1Y3QoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke0FETUlOX1BBVEh9L3N1YnNjcmlwdGlvbl9wcm9kdWN0LyR7aWR9YCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldFVzZXJCeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvdXNlcnMvJHtpZH1gLCB7IHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC91c2VyLz9pZD0ke2lkfSZzdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgY3JlYXRlVXNlcih1c2VyOiBVc2VyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KCcvYWRtaW4vdXNlcnMnLCB1c2VyKTtcbiAgICB9XG5cbiAgICBnZXRVc2Vyc0luc2lnaHQoc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3VzZXJzX2FuYWx5dGljcz90eXBlPXVzZXJzJnN1YnNjcmlwdGlvbl9pZD0ke3N1YnNjcmlwdGlvbl9pZH1gKTtcbiAgICB9XG5cbiAgICBzYXZlVXNlckRldGFpbHModXNlcjogVXNlcikge1xuICAgICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiB1c2VyKSB7XG4gICAgICAgICAgICBpZiAoa2V5IGluIHVzZXIpIHtcbiAgICAgICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoa2V5LCB1c2VyW2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dCgnL3VzZXInLCBmb3JtRGF0YSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUm9sZXMgTWFuYWdlbWVudFxuICAgICAqIEBwYXJhbSBwYWdlXG4gICAgICogQHBhcmFtIHBhZ2VTaXplXG4gICAgICogQHBhcmFtIHNlYXJjaFxuICAgICAqL1xuXG4gICAgZ2V0Um9sZXMocGFnaW5nPzogUGFnaW5nLCBzdWJzY3JpcHRpb25faWQ/OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoJy9hZG1pbi9yb2xlcy9nZXRfYWxsJywge1xuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVSb2xlKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmVuZHBvaW50fS9yb2xlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVSb2xlKHJvbGU6IFJvbGUsIGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmVuZHBvaW50fS9yb2xlcy8ke2lkfWAsIHJvbGUpO1xuICAgIH1cblxuICAgIGFkZFJvbGUocm9sZTogUm9sZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9yb2xlc2AsIHJvbGUpO1xuICAgIH1cblxuICAgIC8vIFVzZXIgUm9sZXNcbiAgICBnZXRVc2VyUm9sZShpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgL3VzZXJzLyR7aWR9L3JvbGVzYCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgc2F2ZVVzZXJSb2xlKHVzZXJJZDogbnVtYmVyLCByb2xlX2lkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAvYWRtaW4vdXNlcl9yb2xlcy9gLCB7IGlkOiB1c2VySWQsIHJvbGVfaWQsIHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyUm9sZSh1c2VySWQ6IG51bWJlciwgcm9sZV9pZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYC9hZG1pbi91c2VyX3JvbGVzP3JvbGVfaWQ9JHtyb2xlX2lkfSZpZD0ke3VzZXJJZH0mc3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOZXdzbGV0dGVyIEFQSVxuICAgICAqL1xuICAgIGdldE5ld3NsZXR0ZXJzKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMubmV3c2xldHRlcnN9L2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldE5ld3NsZXR0ZXJCeUlkKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLm5ld3NsZXR0ZXJzfS8ke2lkfWApO1xuICAgIH1cblxuICAgIGRlbGV0ZU5ld3NsZXR0ZXIoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLm5ld3NsZXR0ZXJzfS8ke2lkfT9zdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgdXBkYXRlTmV3c2xldHRlcihkYXRhLCBpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7dGhpcy5uZXdzbGV0dGVyc30vJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBhZGROZXdzbGV0dGVyKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QodGhpcy5uZXdzbGV0dGVycywgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0TmV3c2xldHRlckluc2lnaHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoJy9hZG1pbi9uZXdzbGV0dGVyc19hbmFseXRpY3M/dHlwZT1nbG9iYWwnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOZXdzbGV0dGVycyBJdGVtcyBBUElcbiAgICAgKi9cbiAgICBnZXROZXdzbGV0dGVyc0l0ZW1zKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZyksXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25faWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0TmV3c2xldHRlckl0ZW1CeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLm5ld3NsZXR0ZXJzSXRlbXN9LyR7aWR9YCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgZGVsZXRlTmV3c2xldHRlckl0ZW0oaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vJHtpZH1gKTtcbiAgICB9XG5cbiAgICB1cGRhdGVOZXdzbGV0dGVySXRlbShkYXRhLCBpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7dGhpcy5uZXdzbGV0dGVyc0l0ZW1zfS8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGFkZE5ld3NsZXR0ZXJJdGVtKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7dGhpcy5uZXdzbGV0dGVyc0l0ZW1zfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldE5ld3NsZXR0ZXJJdGVtVXNlckxpc3QoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIsIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhcbiAgICAgICAgICAgIGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vJHtpZH0vaW5zaWdodHM/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWAsXG4gICAgICAgICAgICBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3Vic2NyaXB0aW9uIEFQSVxuICAgICAqL1xuICAgIGdldFN1YnNjcmlwdGlvbnMoZmVhdHVyZV9rZXlzLCBzdWJzY3JpcHRpb25fc3RhdHVzLCBwYWdpbmc/OiBQYWdpbmcsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9zdWJzY3JpcHRpb25zL2dldF9hbGxgLCB7XG4gICAgICAgICAgICBmZWF0dXJlX2tleXMsXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25fc3RhdHVzLFxuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRTdWJzY3JpcHRpb25BbmFseXRpY3ModHlwZTogc3RyaW5nLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlciwgc3RhcnRpbmdfYXQ/LCBlbmRpbmdfYXQ/KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKFxuICAgICAgICAgICAgYC9hZG1pbi9zdWJzY3JpcHRpb25zX2FuYWx5dGljcz90eXBlPSR7dHlwZX0mc3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWAsXG4gICAgICAgICAgICB7IHN0YXJ0aW5nX2F0LCBlbmRpbmdfYXQgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGRlbGV0ZVN1YnNjcmlwdGlvbihpZDogbnVtYmVyLCByZXFKc29uKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9zdWJzY3JpcHRpb25zLyR7aWR9YCwgcmVxSnNvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGVybWlzc2lvbnMgQVBJXG4gICAgICovXG5cbiAgICBnZXRQZXJtaXNzaW9ucyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoXG4gICAgICAgICAgICBgJHt0aGlzLnBlcm1pc3Npb25zfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBlcm1pc3Npb25CeUlkKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9ucy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVQZXJtaXNzaW9uKHBlcm1pc3Npb246IFJvbGUsIGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9ucy8ke2lkfWAsIHBlcm1pc3Npb24pO1xuICAgIH1cblxuICAgIGFkZFBlcm1pc3Npb24ocGVybWlzc2lvbjogUm9sZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9uc2AsIHBlcm1pc3Npb24pO1xuICAgIH1cblxuICAgIGRlbGV0ZVBlcm1pc3Npb24oaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKGAke3RoaXMuZW5kcG9pbnR9L3Blcm1pc3Npb25zLyR7aWR9YCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKlxuICAgICAqL1xuXG4gICAgcG9zdEZhcShkYXRhLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL2ZhcScsIHsgLi4uZGF0YSwgc3Vic2NyaXB0aW9uX2lkIH0pO1xuICAgIH1cblxuICAgIHB1dEZhcShkYXRhLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAvYWRtaW4vZmFxLyR7ZGF0YS5pZH1gLCB7IC4uLmRhdGEsIHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVGYXEoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgL2FkbWluL2ZhcS8ke2lkfT9zdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgdXBkYXRlREIodHlwZTogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoYC9hZG1pbi91cGRhdGVfZGI/dHlwZT0ke3R5cGV9YCk7XG4gICAgfVxuXG4gICAgZmx1c2hSZWRpcyh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3JlZGlzY2FjaGVfb3BzP3R5cGU9JHt0eXBlfWApO1xuICAgIH1cblxuICAgIGZsdXNoTWVtY2FjaGVkKHR5cGU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAvYWRtaW4vbWVtY2FjaGVkX29wcz90eXBlPSR7dHlwZX1gKTtcbiAgICB9XG5cbiAgICBzYXZlU3Vic2NyaXB0aW9uUm9sZXMoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL3N1YnNjcmlwdGlvbl9yb2xlcycsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldFN1YnNjcmlwdGlvblJvbGVzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL3N1YnNjcmlwdGlvbl9yb2xlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVQcm9kdWN0Um9sZXMoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgL2FkbWluL3Byb2R1Y3Rfcm9sZXNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRQcm9kdWN0c1JvbGVzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3Byb2R1Y3Rfcm9sZXMvJHtpZH1gKTtcbiAgICB9XG5cbiAgICBzYXZlVXNlclN1YnNjcmlwdGlvblJvbGUoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL3VzZXJfcm9sZXMnLCBkYXRhKTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyU3Vic2NyaXB0aW9uUm9sZShkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9hZG1pbi91c2VyX3JvbGVzP3JvbGVfaWQ9JHtkYXRhLnJvbGVfaWR9JmlkPSR7ZGF0YS5pZH1gKTtcbiAgICB9XG5cbiAgICBzZW5kVGVzdE1haWwoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvbmV3c2xldHRlcl9pdGVtcy8ke2lkfS9zZW5kX3Rlc3RfZW1haWxgLCB7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb25faWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0QWxsVG9zKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvcHJvZHVjdF9wcml2YWN5X3NlcnZpY2VzL2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlbGV0ZVRvcyhpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXMvJHtpZH1gKTtcbiAgICB9XG5cbiAgICBwb3N0VG9zKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRUb3NEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL3Byb2R1Y3RfcHJpdmFjeV9zZXJ2aWNlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHVwZGF0ZVRvcyhpZDogbnVtYmVyLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXMvJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBbGxDcmVkZW50aWFscyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoXG4gICAgICAgICAgICBgL2NyZWRlbnRpYWxzL2dldF9hbGxgLFxuICAgICAgICAgICAgSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGRlbGV0ZUNyZWRlbnRpYWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmVuZHBvaW50fS9jcmVkZW50aWFscy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVDcmVkZW50aWFscyhkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuZW5kcG9pbnR9L2NyZWRlbnRpYWxzYCwgZGF0YSk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ3JlZGVudGlhbHMoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuZW5kcG9pbnR9L2NyZWRlbnRpYWxzLyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0Q3JlZGVudGlhbHNEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmVuZHBvaW50fS9jcmVkZW50aWFscy8ke2lkfWApO1xuICAgIH1cblxuICAgIGdldEFsbFN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzKHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9JHt0aGlzLnN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRTdWJzY3JpcHRpb25DcmVkZW50aWFscyhpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KFxuICAgICAgICAgICAgYCR7dGhpcy5zdWJzY3JpcHRpb25DcmVkZW50aWFsc30vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwb3N0U3Vic2NyaXB0aW9uQ3JlZGVudGlhbChkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuc3Vic2NyaXB0aW9uQ3JlZGVudGlhbHN9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZWRpdFN1YnNjcmlwdGlvbkNyZWRlbnRpYWwoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuc3Vic2NyaXB0aW9uQ3JlZGVudGlhbHN9LyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZGVsZXRlU3Vic2NyaXB0aW9uQ3JlZGVudGlhbChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYCR7dGhpcy5zdWJzY3JpcHRpb25DcmVkZW50aWFsc30vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRBaG95RXZlbnRzKHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmFob3l9L2V2ZW50c2AsIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZykpO1xuICAgIH1cblxuICAgIGdldEFob3lNZXNzYWdlcyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5haG95fS9tZXNzYWdlc2AsIHBhZ2luZyk7XG4gICAgfVxuXG4gICAgZ2V0QWhveVZpc2l0cyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5haG95fS92aXNpdHNgLCBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpKTtcbiAgICB9XG5cbiAgICBnZXRWZXJzaW9ucyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYHZlcnNpb25zL2dldF9hbGxgLCBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpKTtcbiAgICB9XG5cbiAgICBnZXRFdmVudHMocGFnaW5nPzogUGFnaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGBldmVudHMvZ2V0X2FsbGAsIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZykpO1xuICAgIH1cblxuICAgIGdldEFsbEdsb2JhbENvbmZpZ3MocGFnaW5nPzogUGFnaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKFxuICAgICAgICAgICAgYCR7dGhpcy5nbG9iYWxDb25maWdzfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRHbG9iYWxDb25maWdEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCk7XG4gICAgfVxuXG4gICAgcG9zdEdsb2JhbENvbmZpZyhkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuZ2xvYmFsQ29uZmlnc31gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBlZGl0R2xvYmFsQ29uZmlnKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZGVsZXRlR2xvYmFsQ29uZmlnKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCk7XG4gICAgfVxuXG4gICAgZ2V0QWxsRmllbGRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAvZ2xvYmFsX2NvbmZpZ3MvdmFsaWRfZmllbGRfdHlwZXNgKTtcbiAgICB9XG5cbiAgICAvLyBkb21haW4gY29uZmlnXG5cbiAgICBnZXRBbGxEb21haW5Db25maWcocGFnaW5nPzogUGFnaW5nLCBzdWJzY3JpcHRpb25faWQ/OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5lbmRwb2ludH0vZG9tYWluc19tZXRhZGF0YS9nZXRfYWxsYCwge1xuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVEb21haW5Db25maWcoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEb21haW5Db25maWcoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBjcmVhdGVEb21haW5Db25maWcoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9kb21haW5zX21ldGFkYXRhYCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0RG9tYWluQ29uZmlnQnlJZChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9kb21haW5zX21ldGFkYXRhLyR7aWR9YCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldEF2YWlsYWJsZURvbWFpbk9wdGlvbnMoc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvYXZhaWxhYmxlX2RvbWFpbl9vcHRpb25zP3N1YnNjcmlwdGlvbl9pZD0ke3N1YnNjcmlwdGlvbl9pZH1gXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gbG9naW4gbm90aWZpY2F0aW9uc1xuICAgIGdldEFsbExvZ2luTm90aWZpY2F0aW9ucyhwYWdpbmc/OiBQYWdpbmcsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9sb2dpbl9ub3RpZmljYXRpb25zL2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNyZWF0ZUxvZ2luTm90aWZpY2F0aW9uKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7dGhpcy5lbmRwb2ludH0vbG9naW5fbm90aWZpY2F0aW9uc2AsIGRhdGEpO1xuICAgIH1cblxuICAgIGRlbGV0ZUxvZ2luTm90aWZpY2F0aW9uKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYGxvZ2luX25vdGlmaWNhdGlvbnMvJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWApO1xuICAgIH1cblxuICAgIHVwZGF0ZUxvZ2luTm90aWZpY2F0aW9uKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgbG9naW5fbm90aWZpY2F0aW9ucy8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldExvZ2luTm90aWZpY2F0aW9uQnlJZChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgbG9naW5fbm90aWZpY2F0aW9ucy8ke2lkfWAsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRBdmFpbGFibGVMb2dpbk5vdGlmaWNhdGlvblR5cGVzKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGBsb2dpbl9ub3RpZmljYXRpb25zL2F2YWlsYWJsZV90eXBlc2AsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBmZWVkYmFjayBxdWVzdGlvbnNcblxuICAgIGdldEFsbEZlZWRiYWNrUXVlc3Rpb25zKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyLCBwcm9kdWN0X2lkOiBudW1iZXIsIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfS9nZXRfYWxsYCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkLFxuICAgICAgICAgICAgcHJvZHVjdF9pZCxcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZGVsZXRlRmVlZGJhY2tRdWVzdGlvbihpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYCR7dGhpcy5mZWVkYmFja1F1ZXN0aW9uc1VybH0vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB1cGRhdGVGZWVkYmFja1F1ZXN0aW9uKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfS8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGNyZWF0ZUZlZWRiYWNrUXVlc3Rpb24oZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldERvbWFpbkZlZWRiYWNrUXVlc3Rpb25CeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMuZmVlZGJhY2tRdWVzdGlvbnNVcmx9LyR7aWR9YCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgLy8gY29udGFjdC11c1xuICAgIGdldEFsbENvbnRhY3RVcyhzdWJzY3JpcHRpb25faWQ6IG51bWJlciwgcHJvZHVjdF9pZDogbnVtYmVyLCBjbG9zZWQ6IGJvb2xlYW4sIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmNvbnRhY3RVc30vZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZCxcbiAgICAgICAgICAgIHByb2R1Y3RfaWQsXG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgY2xvc2VkOiBjbG9zZWQgfHwgJydcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ29udGFjdFVzKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmNvbnRhY3RVc30vJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICByZW1vdmUyZmEodXNlcklkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7QURNSU5fUEFUSH0vdXNlcnMvJHt1c2VySWR9L3JlbW92ZV8yZmFgLCB7IHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG59XG4iXX0=
410
+ }], ctorParameters: () => [{ type: i1.MainApiHttpService }] });
411
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvYWRtaW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQXNCLE1BQU0sNEJBQTRCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFLL0QsTUFBTSxPQUFPLFlBQVk7SUFtQnJCLFlBQW9CLEdBQXVCO1FBQXZCLFFBQUcsR0FBSCxHQUFHLENBQW9CO1FBbEJuQyxhQUFRLEdBQUcsVUFBVSxDQUFDO1FBRXRCLGdCQUFXLEdBQUcsY0FBYyxDQUFDO1FBRTdCLHFCQUFnQixHQUFHLG1CQUFtQixDQUFDO1FBRXZDLGdCQUFXLEdBQUcsb0JBQW9CLENBQUM7UUFFbkMsU0FBSSxHQUFHLE9BQU8sQ0FBQztRQUVmLDRCQUF1QixHQUFHLDJCQUEyQixDQUFDO1FBRXRELGtCQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFFbEMseUJBQW9CLEdBQUcsR0FBRyxVQUFVLHFCQUFxQixDQUFDO1FBRTFELGNBQVMsR0FBRyxHQUFHLFVBQVUsYUFBYSxDQUFDO0lBRUQsQ0FBQztJQUUvQzs7Ozs7T0FLRztJQUNILFFBQVEsQ0FBQyxNQUFlLEVBQUUsTUFBTztRQUM3QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsZ0JBQWdCLEVBQUU7WUFDNUQsR0FBRyxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUN4QyxHQUFHLE1BQU07U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQVUsRUFBRSxJ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QUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELGFBQWE7SUFDYixlQUFlLENBQUMsZUFBdUIsRUFBRSxVQUFrQixFQUFFLE1BQWUsRUFBRSxNQUFlO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxVQUFVLEVBQUU7WUFDdkQsZUFBZTtZQUNmLFVBQVU7WUFDVixHQUFHLGFBQWEsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1lBQ3hDLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRTtTQUN2QixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZSxDQUFDLEVBQVUsRUFBRSxJQUFJO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYyxFQUFFLGVBQXVCO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLFVBQVUsTUFBTSxhQUFhLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7OEdBemhCUSxZQUFZO2tIQUFaLFlBQVksY0FGVCxNQUFNOzsyRkFFVCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQURNSU5fUEFUSCwgUGFnaW5nLCBVc2VyLCBSb2xlIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi11dGlsaXRpZXMnO1xuaW1wb3J0IHsgSGVscGVyU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9oZWxwZXItc2VydmljZSc7XG5pbXBvcnQgeyBNYWluQXBpSHR0cFNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXNlcnZpY2VzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlcnZpY2Uge1xuICAgIHByaXZhdGUgZW5kcG9pbnQgPSBBRE1JTl9QQVRIO1xuXG4gICAgcHJpdmF0ZSBuZXdzbGV0dGVycyA9ICcvbmV3c2xldHRlcnMnO1xuXG4gICAgcHJpdmF0ZSBuZXdzbGV0dGVyc0l0ZW1zID0gJy9uZXdzbGV0dGVyX2l0ZW1zJztcblxuICAgIHByaXZhdGUgcGVybWlzc2lvbnMgPSAnL2FkbWluL3Blcm1pc3Npb25zJztcblxuICAgIHByaXZhdGUgYWhveSA9ICcvYWhveSc7XG5cbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzID0gJy9zdWJzY3JpcHRpb25fY3JlZGVudGlhbHMnO1xuXG4gICAgcHJpdmF0ZSBnbG9iYWxDb25maWdzID0gJy9nbG9iYWxfY29uZmlncyc7XG5cbiAgICBwcml2YXRlIGZlZWRiYWNrUXVlc3Rpb25zVXJsID0gYCR7QURNSU5fUEFUSH0vZmVlZGJhY2tfcXVlc3Rpb25zYDtcblxuICAgIHByaXZhdGUgY29udGFjdFVzID0gYCR7QURNSU5fUEFUSH0vY29udGFjdF91c2A7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaTogTWFpbkFwaUh0dHBTZXJ2aWNlKSB7fVxuXG4gICAgLyoqXG4gICAgICogVXNlciBBUElcbiAgICAgKiBAcGFyYW0gcGFnZVxuICAgICAqIEBwYXJhbSBwYWdlU2l6ZVxuICAgICAqIEBwYXJhbSBzZWFyY2hcbiAgICAgKi9cbiAgICBnZXRVc2VycyhwYWdpbmc/OiBQYWdpbmcsIHBhcmFtcz8pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5lbmRwb2ludH0vdXNlcnMvZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZyksXG4gICAgICAgICAgICAuLi5wYXJhbXNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcG9zdEFnZW50KGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7QURNSU5fUEFUSH0vc3Vic2NyaXB0aW9ucy8ke2lkfS9hZ2VudHNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBZ2VudHMoaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAke0FETUlOX1BBVEh9L3N1YnNjcmlwdGlvbnMvJHtpZH0vYWdlbnRzYCk7XG4gICAgfVxuXG4gICAgZ2V0QWdlbnRCeUlkKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyLCBhZ2VudF9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoYCR7QURNSU5fUEFUSH0vc3Vic2NyaXB0aW9ucy8ke3N1YnNjcmlwdGlvbl9pZH0vYWdlbnRzLyR7YWdlbnRfaWR9YCk7XG4gICAgfVxuXG4gICAgZGVzdHJveUFnZW50KGlkOiBudW1iZXIsIGFnZW50X2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHtBRE1JTl9QQVRIfS9zdWJzY3JpcHRpb25zLyR7aWR9L2FnZW50cy8ke2FnZW50X2lkfWApO1xuICAgIH1cblxuICAgIGluc3BlY3RBZ2VudCh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7QURNSU5fUEFUSH0vaW5zcGVjdGAsIHsgdHlwZSB9KTtcbiAgICB9XG5cbiAgICB1cGRhdGVTdWJzY3JpcHRpb25Qcm9kdWN0KGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHtBRE1JTl9QQVRIfS9zdWJzY3JpcHRpb25fcHJvZHVjdGAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldFN1YnNjcmlwdGlvblByb2R1Y3QoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke0FETUlOX1BBVEh9L3N1YnNjcmlwdGlvbl9wcm9kdWN0LyR7aWR9YCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldFVzZXJCeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvdXNlcnMvJHtpZH1gLCB7IHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC91c2VyLz9pZD0ke2lkfSZzdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgY3JlYXRlVXNlcih1c2VyOiBVc2VyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KCcvYWRtaW4vdXNlcnMnLCB1c2VyKTtcbiAgICB9XG5cbiAgICBnZXRVc2Vyc0luc2lnaHQoc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3VzZXJzX2FuYWx5dGljcz90eXBlPXVzZXJzJnN1YnNjcmlwdGlvbl9pZD0ke3N1YnNjcmlwdGlvbl9pZH1gKTtcbiAgICB9XG5cbiAgICBzYXZlVXNlckRldGFpbHModXNlcjogVXNlcikge1xuICAgICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiB1c2VyKSB7XG4gICAgICAgICAgICBpZiAoa2V5IGluIHVzZXIpIHtcbiAgICAgICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoa2V5LCB1c2VyW2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dCgnL3VzZXInLCBmb3JtRGF0YSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUm9sZXMgTWFuYWdlbWVudFxuICAgICAqIEBwYXJhbSBwYWdlXG4gICAgICogQHBhcmFtIHBhZ2VTaXplXG4gICAgICogQHBhcmFtIHNlYXJjaFxuICAgICAqL1xuXG4gICAgZ2V0Um9sZXMocGFnaW5nPzogUGFnaW5nLCBzdWJzY3JpcHRpb25faWQ/OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoJy9hZG1pbi9yb2xlcy9nZXRfYWxsJywge1xuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVSb2xlKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmVuZHBvaW50fS9yb2xlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVSb2xlKHJvbGU6IFJvbGUsIGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmVuZHBvaW50fS9yb2xlcy8ke2lkfWAsIHJvbGUpO1xuICAgIH1cblxuICAgIGFkZFJvbGUocm9sZTogUm9sZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9yb2xlc2AsIHJvbGUpO1xuICAgIH1cblxuICAgIC8vIFVzZXIgUm9sZXNcbiAgICBnZXRVc2VyUm9sZShpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgL3VzZXJzLyR7aWR9L3JvbGVzYCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgc2F2ZVVzZXJSb2xlKHVzZXJJZDogbnVtYmVyLCByb2xlX2lkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAvYWRtaW4vdXNlcl9yb2xlcy9gLCB7IGlkOiB1c2VySWQsIHJvbGVfaWQsIHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyUm9sZSh1c2VySWQ6IG51bWJlciwgcm9sZV9pZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYC9hZG1pbi91c2VyX3JvbGVzP3JvbGVfaWQ9JHtyb2xlX2lkfSZpZD0ke3VzZXJJZH0mc3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOZXdzbGV0dGVyIEFQSVxuICAgICAqL1xuICAgIGdldE5ld3NsZXR0ZXJzKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMubmV3c2xldHRlcnN9L2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldE5ld3NsZXR0ZXJCeUlkKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLm5ld3NsZXR0ZXJzfS8ke2lkfWApO1xuICAgIH1cblxuICAgIGRlbGV0ZU5ld3NsZXR0ZXIoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLm5ld3NsZXR0ZXJzfS8ke2lkfT9zdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgdXBkYXRlTmV3c2xldHRlcihkYXRhLCBpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7dGhpcy5uZXdzbGV0dGVyc30vJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBhZGROZXdzbGV0dGVyKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QodGhpcy5uZXdzbGV0dGVycywgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0TmV3c2xldHRlckluc2lnaHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoJy9hZG1pbi9uZXdzbGV0dGVyc19hbmFseXRpY3M/dHlwZT1nbG9iYWwnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOZXdzbGV0dGVycyBJdGVtcyBBUElcbiAgICAgKi9cbiAgICBnZXROZXdzbGV0dGVyc0l0ZW1zKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZyksXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25faWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0TmV3c2xldHRlckl0ZW1CeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLm5ld3NsZXR0ZXJzSXRlbXN9LyR7aWR9YCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgZGVsZXRlTmV3c2xldHRlckl0ZW0oaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vJHtpZH1gKTtcbiAgICB9XG5cbiAgICB1cGRhdGVOZXdzbGV0dGVySXRlbShkYXRhLCBpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7dGhpcy5uZXdzbGV0dGVyc0l0ZW1zfS8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGFkZE5ld3NsZXR0ZXJJdGVtKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7dGhpcy5uZXdzbGV0dGVyc0l0ZW1zfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldE5ld3NsZXR0ZXJJdGVtVXNlckxpc3QoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIsIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhcbiAgICAgICAgICAgIGAke3RoaXMubmV3c2xldHRlcnNJdGVtc30vJHtpZH0vaW5zaWdodHM/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWAsXG4gICAgICAgICAgICBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3Vic2NyaXB0aW9uIEFQSVxuICAgICAqL1xuICAgIGdldFN1YnNjcmlwdGlvbnMoZmVhdHVyZV9rZXlzLCBzdWJzY3JpcHRpb25fc3RhdHVzLCBwYWdpbmc/OiBQYWdpbmcsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9zdWJzY3JpcHRpb25zL2dldF9hbGxgLCB7XG4gICAgICAgICAgICBmZWF0dXJlX2tleXMsXG4gICAgICAgICAgICBzdWJzY3JpcHRpb25fc3RhdHVzLFxuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRTdWJzY3JpcHRpb25BbmFseXRpY3ModHlwZTogc3RyaW5nLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlciwgc3RhcnRpbmdfYXQ/LCBlbmRpbmdfYXQ/KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKFxuICAgICAgICAgICAgYC9hZG1pbi9zdWJzY3JpcHRpb25zX2FuYWx5dGljcz90eXBlPSR7dHlwZX0mc3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWAsXG4gICAgICAgICAgICB7IHN0YXJ0aW5nX2F0LCBlbmRpbmdfYXQgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGRlbGV0ZVN1YnNjcmlwdGlvbihpZDogbnVtYmVyLCByZXFKc29uKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9zdWJzY3JpcHRpb25zLyR7aWR9YCwgcmVxSnNvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGVybWlzc2lvbnMgQVBJXG4gICAgICovXG5cbiAgICBnZXRQZXJtaXNzaW9ucyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoXG4gICAgICAgICAgICBgJHt0aGlzLnBlcm1pc3Npb25zfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBlcm1pc3Npb25CeUlkKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9ucy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVQZXJtaXNzaW9uKHBlcm1pc3Npb246IFJvbGUsIGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9ucy8ke2lkfWAsIHBlcm1pc3Npb24pO1xuICAgIH1cblxuICAgIGFkZFBlcm1pc3Npb24ocGVybWlzc2lvbjogUm9sZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9wZXJtaXNzaW9uc2AsIHBlcm1pc3Npb24pO1xuICAgIH1cblxuICAgIGRlbGV0ZVBlcm1pc3Npb24oaWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKGAke3RoaXMuZW5kcG9pbnR9L3Blcm1pc3Npb25zLyR7aWR9YCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKlxuICAgICAqL1xuXG4gICAgcG9zdEZhcShkYXRhLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL2ZhcScsIHsgLi4uZGF0YSwgc3Vic2NyaXB0aW9uX2lkIH0pO1xuICAgIH1cblxuICAgIHB1dEZhcShkYXRhLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAvYWRtaW4vZmFxLyR7ZGF0YS5pZH1gLCB7IC4uLmRhdGEsIHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVGYXEoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgL2FkbWluL2ZhcS8ke2lkfT9zdWJzY3JpcHRpb25faWQ9JHtzdWJzY3JpcHRpb25faWR9YCk7XG4gICAgfVxuXG4gICAgdXBkYXRlREIodHlwZTogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXQoYC9hZG1pbi91cGRhdGVfZGI/dHlwZT0ke3R5cGV9YCk7XG4gICAgfVxuXG4gICAgZmx1c2hSZWRpcyh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3JlZGlzY2FjaGVfb3BzP3R5cGU9JHt0eXBlfWApO1xuICAgIH1cblxuICAgIGZsdXNoTWVtY2FjaGVkKHR5cGU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAvYWRtaW4vbWVtY2FjaGVkX29wcz90eXBlPSR7dHlwZX1gKTtcbiAgICB9XG5cbiAgICBzYXZlU3Vic2NyaXB0aW9uUm9sZXMoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL3N1YnNjcmlwdGlvbl9yb2xlcycsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldFN1YnNjcmlwdGlvblJvbGVzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL3N1YnNjcmlwdGlvbl9yb2xlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVQcm9kdWN0Um9sZXMoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgL2FkbWluL3Byb2R1Y3Rfcm9sZXNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRQcm9kdWN0c1JvbGVzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL2FkbWluL3Byb2R1Y3Rfcm9sZXMvJHtpZH1gKTtcbiAgICB9XG5cbiAgICBzYXZlVXNlclN1YnNjcmlwdGlvblJvbGUoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdCgnL2FkbWluL3VzZXJfcm9sZXMnLCBkYXRhKTtcbiAgICB9XG5cbiAgICBkZWxldGVVc2VyU3Vic2NyaXB0aW9uUm9sZShkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9hZG1pbi91c2VyX3JvbGVzP3JvbGVfaWQ9JHtkYXRhLnJvbGVfaWR9JmlkPSR7ZGF0YS5pZH1gKTtcbiAgICB9XG5cbiAgICBzZW5kVGVzdE1haWwoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvbmV3c2xldHRlcl9pdGVtcy8ke2lkfS9zZW5kX3Rlc3RfZW1haWxgLCB7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb25faWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0QWxsVG9zKHBhZ2luZz86IFBhZ2luZywgc3Vic2NyaXB0aW9uX2lkPzogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAvcHJvZHVjdF9wcml2YWN5X3NlcnZpY2VzL2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGRlbGV0ZVRvcyhpZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXMvJHtpZH1gKTtcbiAgICB9XG5cbiAgICBwb3N0VG9zKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXNgLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRUb3NEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgL3Byb2R1Y3RfcHJpdmFjeV9zZXJ2aWNlcy8ke2lkfWApO1xuICAgIH1cblxuICAgIHVwZGF0ZVRvcyhpZDogbnVtYmVyLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYC9wcm9kdWN0X3ByaXZhY3lfc2VydmljZXMvJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBbGxDcmVkZW50aWFscyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoXG4gICAgICAgICAgICBgL2NyZWRlbnRpYWxzL2dldF9hbGxgLFxuICAgICAgICAgICAgSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGRlbGV0ZUNyZWRlbnRpYWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmVuZHBvaW50fS9jcmVkZW50aWFscy8ke2lkfWApO1xuICAgIH1cblxuICAgIHNhdmVDcmVkZW50aWFscyhkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuZW5kcG9pbnR9L2NyZWRlbnRpYWxzYCwgZGF0YSk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ3JlZGVudGlhbHMoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuZW5kcG9pbnR9L2NyZWRlbnRpYWxzLyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0Q3JlZGVudGlhbHNEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmVuZHBvaW50fS9jcmVkZW50aWFscy8ke2lkfWApO1xuICAgIH1cblxuICAgIGdldEFsbFN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzKHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9JHt0aGlzLnN1YnNjcmlwdGlvbkNyZWRlbnRpYWxzfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRTdWJzY3JpcHRpb25DcmVkZW50aWFscyhpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KFxuICAgICAgICAgICAgYCR7dGhpcy5zdWJzY3JpcHRpb25DcmVkZW50aWFsc30vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwb3N0U3Vic2NyaXB0aW9uQ3JlZGVudGlhbChkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuc3Vic2NyaXB0aW9uQ3JlZGVudGlhbHN9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZWRpdFN1YnNjcmlwdGlvbkNyZWRlbnRpYWwoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuc3Vic2NyaXB0aW9uQ3JlZGVudGlhbHN9LyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZGVsZXRlU3Vic2NyaXB0aW9uQ3JlZGVudGlhbChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYCR7dGhpcy5zdWJzY3JpcHRpb25DcmVkZW50aWFsc30vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRBaG95RXZlbnRzKHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmFob3l9L2V2ZW50c2AsIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZykpO1xuICAgIH1cblxuICAgIGdldEFob3lNZXNzYWdlcyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5haG95fS9tZXNzYWdlc2AsIHBhZ2luZyk7XG4gICAgfVxuXG4gICAgZ2V0QWhveVZpc2l0cyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5haG95fS92aXNpdHNgLCBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpKTtcbiAgICB9XG5cbiAgICBnZXRWZXJzaW9ucyhwYWdpbmc/OiBQYWdpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYHZlcnNpb25zL2dldF9hbGxgLCBIZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpKTtcbiAgICB9XG5cbiAgICBnZXRFdmVudHMocGFnaW5nPzogUGFnaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGBldmVudHMvZ2V0X2FsbGAsIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZykpO1xuICAgIH1cblxuICAgIGdldEFsbEdsb2JhbENvbmZpZ3MocGFnaW5nPzogUGFnaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKFxuICAgICAgICAgICAgYCR7dGhpcy5nbG9iYWxDb25maWdzfS9nZXRfYWxsYCxcbiAgICAgICAgICAgIEhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRHbG9iYWxDb25maWdEZXRhaWxzKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCk7XG4gICAgfVxuXG4gICAgcG9zdEdsb2JhbENvbmZpZyhkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wb3N0KGAke3RoaXMuZ2xvYmFsQ29uZmlnc31gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBlZGl0R2xvYmFsQ29uZmlnKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZGVsZXRlR2xvYmFsQ29uZmlnKGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShgJHt0aGlzLmdsb2JhbENvbmZpZ3N9LyR7aWR9YCk7XG4gICAgfVxuXG4gICAgZ2V0QWxsRmllbGRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0KGAvZ2xvYmFsX2NvbmZpZ3MvdmFsaWRfZmllbGRfdHlwZXNgKTtcbiAgICB9XG5cbiAgICAvLyBkb21haW4gY29uZmlnXG5cbiAgICBnZXRBbGxEb21haW5Db25maWcocGFnaW5nPzogUGFnaW5nLCBzdWJzY3JpcHRpb25faWQ/OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldFdpdGhQYXJhbXMoYCR7dGhpcy5lbmRwb2ludH0vZG9tYWluc19tZXRhZGF0YS9nZXRfYWxsYCwge1xuICAgICAgICAgICAgLi4uSGVscGVyU2VydmljZS5nZXRQYWdpbmdQYXJhbXMocGFnaW5nKSxcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkZWxldGVEb21haW5Db25maWcoaWQ6IG51bWJlciwgc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmRlbGV0ZShcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEb21haW5Db25maWcoaWQ6IG51bWJlciwgZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucHV0KGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICBjcmVhdGVEb21haW5Db25maWcoZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmVuZHBvaW50fS9kb21haW5zX21ldGFkYXRhYCwgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0RG9tYWluQ29uZmlnQnlJZChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9kb21haW5zX21ldGFkYXRhLyR7aWR9YCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldEF2YWlsYWJsZURvbWFpbk9wdGlvbnMoc3Vic2NyaXB0aW9uX2lkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLmdldChcbiAgICAgICAgICAgIGAke3RoaXMuZW5kcG9pbnR9L2RvbWFpbnNfbWV0YWRhdGEvYXZhaWxhYmxlX2RvbWFpbl9vcHRpb25zP3N1YnNjcmlwdGlvbl9pZD0ke3N1YnNjcmlwdGlvbl9pZH1gXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gbG9naW4gbm90aWZpY2F0aW9uc1xuICAgIGdldEFsbExvZ2luTm90aWZpY2F0aW9ucyhwYWdpbmc/OiBQYWdpbmcsIHN1YnNjcmlwdGlvbl9pZD86IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmVuZHBvaW50fS9sb2dpbl9ub3RpZmljYXRpb25zL2dldF9hbGxgLCB7XG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNyZWF0ZUxvZ2luTm90aWZpY2F0aW9uKGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnBvc3QoYCR7dGhpcy5lbmRwb2ludH0vbG9naW5fbm90aWZpY2F0aW9uc2AsIGRhdGEpO1xuICAgIH1cblxuICAgIGRlbGV0ZUxvZ2luTm90aWZpY2F0aW9uKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5kZWxldGUoYGxvZ2luX25vdGlmaWNhdGlvbnMvJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWApO1xuICAgIH1cblxuICAgIHVwZGF0ZUxvZ2luTm90aWZpY2F0aW9uKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgbG9naW5fbm90aWZpY2F0aW9ucy8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldExvZ2luTm90aWZpY2F0aW9uQnlJZChpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgbG9naW5fbm90aWZpY2F0aW9ucy8ke2lkfWAsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRBdmFpbGFibGVMb2dpbk5vdGlmaWNhdGlvblR5cGVzKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGBsb2dpbl9ub3RpZmljYXRpb25zL2F2YWlsYWJsZV90eXBlc2AsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBmZWVkYmFjayBxdWVzdGlvbnNcblxuICAgIGdldEFsbEZlZWRiYWNrUXVlc3Rpb25zKHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyLCBwcm9kdWN0X2lkOiBudW1iZXIsIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfS9nZXRfYWxsYCwge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uX2lkLFxuICAgICAgICAgICAgcHJvZHVjdF9pZCxcbiAgICAgICAgICAgIC4uLkhlbHBlclNlcnZpY2UuZ2V0UGFnaW5nUGFyYW1zKHBhZ2luZylcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZGVsZXRlRmVlZGJhY2tRdWVzdGlvbihpZDogbnVtYmVyLCBzdWJzY3JpcHRpb25faWQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZGVsZXRlKFxuICAgICAgICAgICAgYCR7dGhpcy5mZWVkYmFja1F1ZXN0aW9uc1VybH0vJHtpZH0/c3Vic2NyaXB0aW9uX2lkPSR7c3Vic2NyaXB0aW9uX2lkfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB1cGRhdGVGZWVkYmFja1F1ZXN0aW9uKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfS8ke2lkfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGNyZWF0ZUZlZWRiYWNrUXVlc3Rpb24oZGF0YSkge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkucG9zdChgJHt0aGlzLmZlZWRiYWNrUXVlc3Rpb25zVXJsfWAsIGRhdGEpO1xuICAgIH1cblxuICAgIGdldERvbWFpbkZlZWRiYWNrUXVlc3Rpb25CeUlkKGlkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5nZXRXaXRoUGFyYW1zKGAke3RoaXMuZmVlZGJhY2tRdWVzdGlvbnNVcmx9LyR7aWR9YCwgeyBzdWJzY3JpcHRpb25faWQgfSk7XG4gICAgfVxuXG4gICAgLy8gY29udGFjdC11c1xuICAgIGdldEFsbENvbnRhY3RVcyhzdWJzY3JpcHRpb25faWQ6IG51bWJlciwgcHJvZHVjdF9pZDogbnVtYmVyLCBjbG9zZWQ6IGJvb2xlYW4sIHBhZ2luZz86IFBhZ2luZykge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGkuZ2V0V2l0aFBhcmFtcyhgJHt0aGlzLmNvbnRhY3RVc30vZ2V0X2FsbGAsIHtcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbl9pZCxcbiAgICAgICAgICAgIHByb2R1Y3RfaWQsXG4gICAgICAgICAgICAuLi5IZWxwZXJTZXJ2aWNlLmdldFBhZ2luZ1BhcmFtcyhwYWdpbmcpLFxuICAgICAgICAgICAgY2xvc2VkOiBjbG9zZWQgfHwgJydcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ29udGFjdFVzKGlkOiBudW1iZXIsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpLnB1dChgJHt0aGlzLmNvbnRhY3RVc30vJHtpZH1gLCBkYXRhKTtcbiAgICB9XG5cbiAgICByZW1vdmUyZmEodXNlcklkOiBudW1iZXIsIHN1YnNjcmlwdGlvbl9pZDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaS5wdXQoYCR7QURNSU5fUEFUSH0vdXNlcnMvJHt1c2VySWR9L3JlbW92ZV8yZmFgLCB7IHN1YnNjcmlwdGlvbl9pZCB9KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,88 @@
1
+ import { ChangeDetectorRef, Component, Injector } from '@angular/core';
2
+ import { AdminService } from '../../../admin.service';
3
+ import { ROUTERS } from '../../../shared/routers/routers';
4
+ import { PAGE_SIZE } from '@posiwise/common-utilities';
5
+ import { AppBaseComponent } from '@posiwise/app-base-component';
6
+ import { HelperService } from '@posiwise/helper-service';
7
+ import { PermissionService } from '@posiwise/common-services';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../admin.service";
10
+ import * as i2 from "primeng/table";
11
+ import * as i3 from "primeng/api";
12
+ import * as i4 from "primeng/inputtext";
13
+ import * as i5 from "@angular/common";
14
+ import * as i6 from "@angular/forms";
15
+ import * as i7 from "@angular/router";
16
+ import * as i8 from "@posiwise/shared-components";
17
+ import * as i9 from "@posiwise/directives";
18
+ import * as i10 from "@ng-bootstrap/ng-bootstrap";
19
+ import * as i11 from "@ngneat/transloco";
20
+ import * as i12 from "@posiwise/pipes";
21
+ export class TermsOfServiceComponent extends AppBaseComponent {
22
+ constructor(adminService, injector, cdr) {
23
+ super(injector);
24
+ this.adminService = adminService;
25
+ this.cdr = cdr;
26
+ this.searchText = '';
27
+ this.data = {
28
+ product_privacy_services: [],
29
+ object_count: 0,
30
+ unfiltered_count: 0
31
+ };
32
+ this.loading = true;
33
+ this.routers = ROUTERS;
34
+ this.page = 1;
35
+ }
36
+ ngOnInit() {
37
+ this.subscriptionId = PermissionService.selectedSubscription?.id;
38
+ }
39
+ ngAfterViewChecked() {
40
+ this.cdr.detectChanges();
41
+ }
42
+ onLazyLoad(event) {
43
+ const pageDetails = HelperService.onTableLazyLoad(event);
44
+ this.page = pageDetails.page;
45
+ this.getAllTos({
46
+ page: this.page,
47
+ page_size: PAGE_SIZE,
48
+ order_by: pageDetails.sortField,
49
+ order_direction: pageDetails.sortOrder,
50
+ search: this.searchText
51
+ });
52
+ }
53
+ /** Function to call all tos */
54
+ getAllTos(paging) {
55
+ this.adminService
56
+ .getAllTos(paging, this.subscriptionId)
57
+ .subscribe((response) => {
58
+ this.data = response;
59
+ })
60
+ .add(() => {
61
+ this.loading = false;
62
+ });
63
+ }
64
+ /** Function to delete tos */
65
+ onDelete(id) {
66
+ HelperService.raiseDeletePopup().then(rep => {
67
+ if (rep.value) {
68
+ this.adminService.deleteTos(id).subscribe(() => {
69
+ this.toast.success(this.translation.translate('Admin.Tos.DeletedMessage'));
70
+ this.getAllTos({
71
+ page: this.page,
72
+ page_size: PAGE_SIZE
73
+ });
74
+ });
75
+ }
76
+ });
77
+ }
78
+ ngOnDestroy() {
79
+ super.ngOnDestroy();
80
+ }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: TermsOfServiceComponent, selector: "pw-terms-of-service", usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-12 d-flex justify-content-between align-items-center create-user my-3\">\n <h2 class=\"card-title p-0 float-start\">Terms of Services</h2>\n <button *rbacAllow=\"'SuperAdmin'\"\n class=\"btn btn-sm btn-outline-primary float-end\"\n data-cy=\"create-Tos\"\n [routerLink]=\"[routers.tosAndPrivacyDetails + 'add']\">\n <i class=\"fa fa-plus-circle\" aria-hidden=\"true\"></i> Create Terms of Services\n </button>\n </div>\n</div>\n<div class=\"primeng-datatable-container mt table-responsive\"\n [class.hideTable]=\"data.unfiltered_count === 0\">\n <p-table #dt\n [value]=\"data.product_privacy_services\"\n [paginator]=\"true\"\n [lazy]=\"true\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"data.object_count\"\n [loading]=\"loading\"\n [filterDelay]=\"1000\"\n (onLazyLoad)=\"onLazyLoad($event)\">\n <ng-template pTemplate=\"caption\">\n <div class=\"text-end\">\n <i class=\"fa fa-search mt-2 me-2\" aria-hidden=\"true\"></i>\n <input type=\"text\"\n [(ngModel)]=\"searchText\"\n pInputText\n size=\"50\"\n placeholder=\"Search Tos...\"\n (input)=\"dt.filterGlobal($event.target.value, 'contains')\"\n class=\"mw-90\" />\n </div>\n </ng-template>\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\"\n data-head=\"Privacy\">Privacy</th>\n <th scope=\"true\"\n data-head=\"Terms of Services\">Terms of Services</th>\n <th class=\"actions-list-two\"\n scope=\"true\">{{ 'Label.Actions' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-tos>\n <tr>\n <td data-head=\"Name\">{{ tos.privacy | removeHtml | textTruncate: 220 }}</td>\n <td data-head=\"Terms of Services\">\n {{ tos.tos | removeHtml | textTruncate: 220 }}\n </td>\n <td data-head=\"Action\">\n <ul class=\"list-unstyled list-inline\">\n <!-- Show only to SubscriptionSuperAdmin or SubscriptionOwner -->\n <li ngbTooltip=\"Edit\"\n class=\"me-2 me-sm-3\"\n *rbacAllow=\"'SubscriptionSuperAdmin'\"\n [routerLink]=\"[routers.tosAndPrivacyDetails + tos.id]\">\n <i class=\"fa fa-edit edit-icon\" aria-hidden=\"true\"></i>\n </li>\n <li ngbTooltip=\"Delete\"\n *rbacAllow=\"'SuperAdmin'\"\n class=\"me-2 me-sm-3\">\n <i\n (click)=\"onDelete(tos.id)\"\n class=\"fa fa-trash delete-icon\"\n aria-hidden=\"true\"\n ></i>\n </li>\n </ul>\n </td>\n </tr>\n </ng-template>\n </p-table>\n <div *ngIf=\"data.object_count === 0 && data.unfiltered_count !== 0\">\n <pw-no-data message=\"No Result\"> </pw-no-data>\n </div>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ data.object_count }}</span>\n</div>\n<div *ngIf=\"data.unfiltered_count === 0\">\n <pw-no-data [message]=\"'Tos.NoDataMessage' | transloco\"> </pw-no-data>\n</div>\n", dependencies: [{ kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]" }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i8.NoDataComponent, selector: "pw-no-data", inputs: ["message"] }, { kind: "directive", type: i9.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i10.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "pipe", type: i11.TranslocoPipe, name: "transloco" }, { kind: "pipe", type: i12.RemoveHtmlPipe, name: "removeHtml" }, { kind: "pipe", type: i12.TextTruncatePipe, name: "textTruncate" }] }); }
83
+ }
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceComponent, decorators: [{
85
+ type: Component,
86
+ args: [{ selector: 'pw-terms-of-service', template: "<div class=\"row\">\n <div class=\"col-12 d-flex justify-content-between align-items-center create-user my-3\">\n <h2 class=\"card-title p-0 float-start\">Terms of Services</h2>\n <button *rbacAllow=\"'SuperAdmin'\"\n class=\"btn btn-sm btn-outline-primary float-end\"\n data-cy=\"create-Tos\"\n [routerLink]=\"[routers.tosAndPrivacyDetails + 'add']\">\n <i class=\"fa fa-plus-circle\" aria-hidden=\"true\"></i> Create Terms of Services\n </button>\n </div>\n</div>\n<div class=\"primeng-datatable-container mt table-responsive\"\n [class.hideTable]=\"data.unfiltered_count === 0\">\n <p-table #dt\n [value]=\"data.product_privacy_services\"\n [paginator]=\"true\"\n [lazy]=\"true\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"data.object_count\"\n [loading]=\"loading\"\n [filterDelay]=\"1000\"\n (onLazyLoad)=\"onLazyLoad($event)\">\n <ng-template pTemplate=\"caption\">\n <div class=\"text-end\">\n <i class=\"fa fa-search mt-2 me-2\" aria-hidden=\"true\"></i>\n <input type=\"text\"\n [(ngModel)]=\"searchText\"\n pInputText\n size=\"50\"\n placeholder=\"Search Tos...\"\n (input)=\"dt.filterGlobal($event.target.value, 'contains')\"\n class=\"mw-90\" />\n </div>\n </ng-template>\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\"\n data-head=\"Privacy\">Privacy</th>\n <th scope=\"true\"\n data-head=\"Terms of Services\">Terms of Services</th>\n <th class=\"actions-list-two\"\n scope=\"true\">{{ 'Label.Actions' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-tos>\n <tr>\n <td data-head=\"Name\">{{ tos.privacy | removeHtml | textTruncate: 220 }}</td>\n <td data-head=\"Terms of Services\">\n {{ tos.tos | removeHtml | textTruncate: 220 }}\n </td>\n <td data-head=\"Action\">\n <ul class=\"list-unstyled list-inline\">\n <!-- Show only to SubscriptionSuperAdmin or SubscriptionOwner -->\n <li ngbTooltip=\"Edit\"\n class=\"me-2 me-sm-3\"\n *rbacAllow=\"'SubscriptionSuperAdmin'\"\n [routerLink]=\"[routers.tosAndPrivacyDetails + tos.id]\">\n <i class=\"fa fa-edit edit-icon\" aria-hidden=\"true\"></i>\n </li>\n <li ngbTooltip=\"Delete\"\n *rbacAllow=\"'SuperAdmin'\"\n class=\"me-2 me-sm-3\">\n <i\n (click)=\"onDelete(tos.id)\"\n class=\"fa fa-trash delete-icon\"\n aria-hidden=\"true\"\n ></i>\n </li>\n </ul>\n </td>\n </tr>\n </ng-template>\n </p-table>\n <div *ngIf=\"data.object_count === 0 && data.unfiltered_count !== 0\">\n <pw-no-data message=\"No Result\"> </pw-no-data>\n </div>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ data.object_count }}</span>\n</div>\n<div *ngIf=\"data.unfiltered_count === 0\">\n <pw-no-data [message]=\"'Tos.NoDataMessage' | transloco\"> </pw-no-data>\n</div>\n" }]
87
+ }], ctorParameters: () => [{ type: i1.AdminService }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }] });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMtb2Ytc2VydmljZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvVE9TL3Rlcm1zLW9mLXNlcnZpY2UvdGVybXMtb2Ytc2VydmljZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvVE9TL3Rlcm1zLW9mLXNlcnZpY2UvdGVybXMtb2Ytc2VydmljZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxRQUFRLEVBR1gsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQU05RCxNQUFNLE9BQU8sdUJBQ1QsU0FBUSxnQkFBZ0I7SUFtQnhCLFlBQ1ksWUFBMEIsRUFDbEMsUUFBa0IsRUFDVixHQUFzQjtRQUU5QixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFKUixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUUxQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQW5CbEMsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUVoQixTQUFJLEdBQXVCO1lBQ3ZCLHdCQUF3QixFQUFFLEVBQUU7WUFDNUIsWUFBWSxFQUFFLENBQUM7WUFDZixnQkFBZ0IsRUFBRSxDQUFDO1NBQ3RCLENBQUM7UUFFRixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBRWYsWUFBTyxHQUFHLE9BQU8sQ0FBQztRQUVWLFNBQUksR0FBRyxDQUFDLENBQUM7SUFVakIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsY0FBYyxHQUFHLGlCQUFpQixDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQW9CO1FBQzNCLE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixTQUFTLEVBQUUsU0FBUztZQUNwQixRQUFRLEVBQUUsV0FBVyxDQUFDLFNBQVM7WUFDL0IsZUFBZSxFQUFFLFdBQVcsQ0FBQyxTQUFTO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVTtTQUMxQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsK0JBQStCO0lBQ3ZCLFNBQVMsQ0FBQyxNQUFjO1FBQzVCLElBQUksQ0FBQyxZQUFZO2FBQ1osU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDO2FBQ3RDLFNBQVMsQ0FBQyxDQUFDLFFBQTRCLEVBQUUsRUFBRTtZQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUN6QixDQUFDLENBQUM7YUFDRCxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsNkJBQTZCO0lBQzdCLFFBQVEsQ0FBQyxFQUFVO1FBQ2YsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3hDLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRTtnQkFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLENBQUM7b0JBQzNFLElBQUksQ0FBQyxTQUFTLENBQUM7d0JBQ1gsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO3dCQUNmLFNBQVMsRUFBRSxTQUFTO3FCQUN2QixDQUFDLENBQUM7Z0JBQ1AsQ0FBQyxDQUFDLENBQUM7YUFDTjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7OEdBN0VRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLGtGQ3ZCcEMscXJHQWtGQTs7MkZEM0RhLHVCQUF1QjtrQkFKbkMsU0FBUzsrQkFDSSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEluamVjdG9yLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSAncHJpbWVuZy9hcGknO1xuXG5pbXBvcnQgeyBBZG1pblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hZG1pbi5zZXJ2aWNlJztcbmltcG9ydCB7IFJPVVRFUlMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvcm91dGVycy9yb3V0ZXJzJztcbmltcG9ydCB7IFBBR0VfU0laRSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcbmltcG9ydCB7IFByaXZhY3lUb3NSZXNwb25zZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2UvcHJpdmFjeS10b3MuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luZyB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcbmltcG9ydCB7IEhlbHBlclNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvaGVscGVyLXNlcnZpY2UnO1xuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXNlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy10ZXJtcy1vZi1zZXJ2aWNlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGVybXMtb2Ytc2VydmljZS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgVGVybXNPZlNlcnZpY2VDb21wb25lbnRcbiAgICBleHRlbmRzIEFwcEJhc2VDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdDaGVja2VkXG57XG4gICAgc2VhcmNoVGV4dCA9ICcnO1xuXG4gICAgZGF0YTogUHJpdmFjeVRvc1Jlc3BvbnNlID0ge1xuICAgICAgICBwcm9kdWN0X3ByaXZhY3lfc2VydmljZXM6IFtdLFxuICAgICAgICBvYmplY3RfY291bnQ6IDAsXG4gICAgICAgIHVuZmlsdGVyZWRfY291bnQ6IDBcbiAgICB9O1xuXG4gICAgbG9hZGluZyA9IHRydWU7XG5cbiAgICByb3V0ZXJzID0gUk9VVEVSUztcblxuICAgIHByaXZhdGUgcGFnZSA9IDE7XG5cbiAgICBzdWJzY3JpcHRpb25JZDogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWRtaW5TZXJ2aWNlOiBBZG1pblNlcnZpY2UsXG4gICAgICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25JZCA9IFBlcm1pc3Npb25TZXJ2aWNlLnNlbGVjdGVkU3Vic2NyaXB0aW9uPy5pZDtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBvbkxhenlMb2FkKGV2ZW50OiBMYXp5TG9hZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHBhZ2VEZXRhaWxzID0gSGVscGVyU2VydmljZS5vblRhYmxlTGF6eUxvYWQoZXZlbnQpO1xuICAgICAgICB0aGlzLnBhZ2UgPSBwYWdlRGV0YWlscy5wYWdlO1xuICAgICAgICB0aGlzLmdldEFsbFRvcyh7XG4gICAgICAgICAgICBwYWdlOiB0aGlzLnBhZ2UsXG4gICAgICAgICAgICBwYWdlX3NpemU6IFBBR0VfU0laRSxcbiAgICAgICAgICAgIG9yZGVyX2J5OiBwYWdlRGV0YWlscy5zb3J0RmllbGQsXG4gICAgICAgICAgICBvcmRlcl9kaXJlY3Rpb246IHBhZ2VEZXRhaWxzLnNvcnRPcmRlcixcbiAgICAgICAgICAgIHNlYXJjaDogdGhpcy5zZWFyY2hUZXh0XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIGFsbCB0b3MgKi9cbiAgICBwcml2YXRlIGdldEFsbFRvcyhwYWdpbmc6IFBhZ2luZykge1xuICAgICAgICB0aGlzLmFkbWluU2VydmljZVxuICAgICAgICAgICAgLmdldEFsbFRvcyhwYWdpbmcsIHRoaXMuc3Vic2NyaXB0aW9uSWQpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXNwb25zZTogUHJpdmFjeVRvc1Jlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmFkZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogRnVuY3Rpb24gdG8gZGVsZXRlIHRvcyAqL1xuICAgIG9uRGVsZXRlKGlkOiBudW1iZXIpIHtcbiAgICAgICAgSGVscGVyU2VydmljZS5yYWlzZURlbGV0ZVBvcHVwKCkudGhlbihyZXAgPT4ge1xuICAgICAgICAgICAgaWYgKHJlcC52YWx1ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRtaW5TZXJ2aWNlLmRlbGV0ZVRvcyhpZCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2FzdC5zdWNjZXNzKHRoaXMudHJhbnNsYXRpb24udHJhbnNsYXRlKCdBZG1pbi5Ub3MuRGVsZXRlZE1lc3NhZ2UnKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0QWxsVG9zKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2U6IHRoaXMucGFnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2Vfc2l6ZTogUEFHRV9TSVpFXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciBjcmVhdGUtdXNlciBteS0zXCI+XG4gICAgPGgyIGNsYXNzPVwiY2FyZC10aXRsZSBwLTAgZmxvYXQtc3RhcnRcIj5UZXJtcyBvZiBTZXJ2aWNlczwvaDI+XG4gICAgPGJ1dHRvbiAqcmJhY0FsbG93PVwiJ1N1cGVyQWRtaW4nXCJcbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tb3V0bGluZS1wcmltYXJ5IGZsb2F0LWVuZFwiXG4gICAgICBkYXRhLWN5PVwiY3JlYXRlLVRvc1wiXG4gICAgICBbcm91dGVyTGlua109XCJbcm91dGVycy50b3NBbmRQcml2YWN5RGV0YWlscyArICdhZGQnXVwiPlxuICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wbHVzLWNpcmNsZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4gQ3JlYXRlIFRlcm1zIG9mIFNlcnZpY2VzXG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIG10IHRhYmxlLXJlc3BvbnNpdmVcIlxuICBbY2xhc3MuaGlkZVRhYmxlXT1cImRhdGEudW5maWx0ZXJlZF9jb3VudCA9PT0gMFwiPlxuICA8cC10YWJsZSAjZHRcbiAgICBbdmFsdWVdPVwiZGF0YS5wcm9kdWN0X3ByaXZhY3lfc2VydmljZXNcIlxuICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgW2xhenldPVwidHJ1ZVwiXG4gICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcbiAgICBbdG90YWxSZWNvcmRzXT1cImRhdGEub2JqZWN0X2NvdW50XCJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICBbZmlsdGVyRGVsYXldPVwiMTAwMFwiXG4gICAgKG9uTGF6eUxvYWQpPVwib25MYXp5TG9hZCgkZXZlbnQpXCI+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNhcHRpb25cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWVuZFwiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXNlYXJjaCBtdC0yIG1lLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgc2l6ZT1cIjUwXCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBUb3MuLi5cIlxuICAgICAgICAgIChpbnB1dCk9XCJkdC5maWx0ZXJHbG9iYWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ2NvbnRhaW5zJylcIlxuICAgICAgICAgIGNsYXNzPVwibXctOTBcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICA8dHI+XG4gICAgICAgIDx0aCBzY29wZT1cInRydWVcIlxuICAgICAgICAgIGRhdGEtaGVhZD1cIlByaXZhY3lcIj5Qcml2YWN5PC90aD5cbiAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiXG4gICAgICAgICAgZGF0YS1oZWFkPVwiVGVybXMgb2YgU2VydmljZXNcIj5UZXJtcyBvZiBTZXJ2aWNlczwvdGg+XG4gICAgICAgIDx0aCBjbGFzcz1cImFjdGlvbnMtbGlzdC10d29cIlxuICAgICAgICAgIHNjb3BlPVwidHJ1ZVwiPnt7ICdMYWJlbC5BY3Rpb25zJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICA8L3RyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgbGV0LXRvcz5cbiAgICAgIDx0cj5cbiAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk5hbWVcIj57eyB0b3MucHJpdmFjeSB8IHJlbW92ZUh0bWwgfCB0ZXh0VHJ1bmNhdGU6IDIyMCB9fTwvdGQ+XG4gICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJUZXJtcyBvZiBTZXJ2aWNlc1wiPlxuICAgICAgICAgIHt7IHRvcy50b3MgfCByZW1vdmVIdG1sIHwgdGV4dFRydW5jYXRlOiAyMjAgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkFjdGlvblwiPlxuICAgICAgICAgIDx1bCBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbGlzdC1pbmxpbmVcIj5cbiAgICAgICAgICAgIDwhLS0gU2hvdyBvbmx5IHRvIFN1YnNjcmlwdGlvblN1cGVyQWRtaW4gb3IgU3Vic2NyaXB0aW9uT3duZXIgLS0+XG4gICAgICAgICAgICA8bGkgbmdiVG9vbHRpcD1cIkVkaXRcIlxuICAgICAgICAgICAgICBjbGFzcz1cIm1lLTIgbWUtc20tM1wiXG4gICAgICAgICAgICAgICpyYmFjQWxsb3c9XCInU3Vic2NyaXB0aW9uU3VwZXJBZG1pbidcIlxuICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbcm91dGVycy50b3NBbmRQcml2YWN5RGV0YWlscyArIHRvcy5pZF1cIj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1lZGl0IGVkaXQtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGkgbmdiVG9vbHRpcD1cIkRlbGV0ZVwiXG4gICAgICAgICAgICAgICpyYmFjQWxsb3c9XCInU3VwZXJBZG1pbidcIlxuICAgICAgICAgICAgICBjbGFzcz1cIm1lLTIgbWUtc20tM1wiPlxuICAgICAgICAgICAgICA8aVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25EZWxldGUodG9zLmlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmEgZmEtdHJhc2ggZGVsZXRlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2k+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvcC10YWJsZT5cbiAgPGRpdiAqbmdJZj1cImRhdGEub2JqZWN0X2NvdW50ID09PSAwICYmIGRhdGEudW5maWx0ZXJlZF9jb3VudCAhPT0gMFwiPlxuICAgIDxwdy1uby1kYXRhIG1lc3NhZ2U9XCJObyBSZXN1bHRcIj4gPC9wdy1uby1kYXRhPlxuICA8L2Rpdj5cbiAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgZGF0YS5vYmplY3RfY291bnQgfX08L3NwYW4+XG48L2Rpdj5cbjxkaXYgKm5nSWY9XCJkYXRhLnVuZmlsdGVyZWRfY291bnQgPT09IDBcIj5cbiAgPHB3LW5vLWRhdGEgW21lc3NhZ2VdPVwiJ1Rvcy5Ob0RhdGFNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG48L2Rpdj5cbiJdfQ==
@@ -56,17 +56,17 @@ export class TermsOfServiceDetailsComponent extends AppBaseComponent {
56
56
  ngOnDestroy() {
57
57
  super.ngOnDestroy();
58
58
  }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceDetailsComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: TermsOfServiceDetailsComponent, selector: "pw-terms-of-service-details", usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n routerLink=\"../../tos\"\n class=\"previous\"><i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>Terms of Service: {{ data?.title ? data?.title : 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSave()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Title' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <textarea type=\"text\"\n class=\"form-control\"\n rows=\"2\"\n formControlName=\"title\"\n [ngClass]=\"{ 'is-invalid': submitted && f['title'].errors }\"></textarea>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Privacy' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"privacy\"\n [ngClass]=\"{ 'is-invalid': submitted && f['privacy'].errors }\">\n </quill-editor>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Tos' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"tos\"\n [ngClass]=\"{ 'is-invalid': submitted && f['tos'].errors }\">\n </quill-editor>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'SubscriptionAdmin'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.QuillEditorComponent, selector: "quill-editor" }, { kind: "pipe", type: i7.TranslocoPipe, name: "transloco" }] }); }
59
61
  }
60
- TermsOfServiceDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: TermsOfServiceDetailsComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
61
- TermsOfServiceDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: TermsOfServiceDetailsComponent, selector: "pw-terms-of-service-details", usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n routerLink=\"../../tos\"\n class=\"previous\"><i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>Terms of Service: {{ data?.title ? data?.title : 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSave()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Title' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <textarea type=\"text\"\n class=\"form-control\"\n rows=\"2\"\n formControlName=\"title\"\n [ngClass]=\"{ 'is-invalid': submitted && f['title'].errors }\"></textarea>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Privacy' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"privacy\"\n [ngClass]=\"{ 'is-invalid': submitted && f['privacy'].errors }\">\n </quill-editor>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Tos' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"tos\"\n [ngClass]=\"{ 'is-invalid': submitted && f['tos'].errors }\">\n </quill-editor>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'SubscriptionAdmin'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.QuillEditorComponent, selector: "quill-editor" }, { kind: "pipe", type: i7.TranslocoPipe, name: "transloco" }] });
62
62
  __decorate([
63
63
  ValidateForm('form'),
64
64
  __metadata("design:type", Function),
65
65
  __metadata("design:paramtypes", []),
66
66
  __metadata("design:returntype", void 0)
67
67
  ], TermsOfServiceDetailsComponent.prototype, "onSave", null);
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: TermsOfServiceDetailsComponent, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceDetailsComponent, decorators: [{
69
69
  type: Component,
70
70
  args: [{ selector: 'pw-terms-of-service-details', template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n routerLink=\"../../tos\"\n class=\"previous\"><i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>Terms of Service: {{ data?.title ? data?.title : 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSave()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Title' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <textarea type=\"text\"\n class=\"form-control\"\n rows=\"2\"\n formControlName=\"title\"\n [ngClass]=\"{ 'is-invalid': submitted && f['title'].errors }\"></textarea>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Privacy' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"privacy\"\n [ngClass]=\"{ 'is-invalid': submitted && f['privacy'].errors }\">\n </quill-editor>\n </div>\n </div>\n <div class=\"col-12 col-md-12\">\n <div class=\"mb-3\">\n <label>{{ 'Label.Tos' | transloco }}\n <span class=\"text-danger\">*</span></label>\n <quill-editor [styles]=\"{ height: '450px' }\"\n formControlName=\"tos\"\n [ngClass]=\"{ 'is-invalid': submitted && f['tos'].errors }\">\n </quill-editor>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'SubscriptionAdmin'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n" }]
71
- }], ctorParameters: function () { return [{ type: i1.AdminService }, { type: i0.Injector }]; }, propDecorators: { onSave: [] } });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMtb2Ytc2VydmljZS1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9UT1MvdGVybXMtb2Ytc2VydmljZS1kZXRhaWxzL3Rlcm1zLW9mLXNlcnZpY2UtZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvVE9TL3Rlcm1zLW9mLXNlcnZpY2UtZGV0YWlscy90ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUd2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7O0FBTS9DLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUFTaEUsWUFBb0IsWUFBMEIsRUFBRSxRQUFrQjtRQUM5RCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFEQSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUY5QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBSWQsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDL0IsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO2dCQUNULElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN4QjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdELE1BQU07UUFDRixNQUFNLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsTUFBTSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUNyRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRTtZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUM7WUFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUM5QixDQUFDO0lBRUQsa0NBQWtDO0lBQzFCLGFBQWE7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQW9CLEVBQUUsRUFBRTtZQUN4RSxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVEsV0FBVztRQUNoQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7MkhBdERRLDhCQUE4QjsrR0FBOUIsOEJBQThCLDBGQ2QzQyw2bUZBa0VBO0FEN0JJO0lBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQzs7Ozs0REFlcEI7MkZBdENRLDhCQUE4QjtrQkFKMUMsU0FBUzsrQkFDSSw2QkFBNkI7MEhBMkJ2QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FkbWluLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwQWRtaW4gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kZWxzL2FkbWluLm1vZGVsJztcbmltcG9ydCB7IFByaXZhY3lUb3MgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlL3ByaXZhY3ktdG9zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHBvc2l3aXNlL2FwcC1iYXNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tc2VydmljZXMnO1xuaW1wb3J0IHsgVmFsaWRhdGVGb3JtIH0gZnJvbSAnQHBvc2l3aXNlL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy10ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFRlcm1zT2ZTZXJ2aWNlRGV0YWlsc0NvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcblxuICAgIGlkOiBudW1iZXI7XG5cbiAgICBkYXRhOiBQcml2YWN5VG9zO1xuXG4gICAgc3VibWl0dGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkbWluU2VydmljZTogQWRtaW5TZXJ2aWNlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgICAgICB0aGlzLmZvcm0gPSBBcHBBZG1pbi5nZXRUb3NGb3JtKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5pZCA9IE51bWJlcihwYXJhbXNbJ2lkJ10pO1xuICAgICAgICAgICAgaWYgKHRoaXMuaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFRvc0RldGFpbHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQFZhbGlkYXRlRm9ybSgnZm9ybScpXG4gICAgb25TYXZlKCkge1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25JZCA9IFBlcm1pc3Npb25TZXJ2aWNlLnNlbGVjdGVkU3Vic2NyaXB0aW9uPy5pZDtcbiAgICAgICAgdGhpcy5zdWJtaXR0ZWQgPSB0cnVlO1xuICAgICAgICBjb25zdCBkYXRhID0geyAuLi50aGlzLmZvcm0udmFsdWUsIHN1YnNjcmlwdGlvbl9pZDogc3Vic2NyaXB0aW9uSWQgfTtcbiAgICAgICAgY29uc3Qgc3ViJCA9IHRoaXMuaWRcbiAgICAgICAgICAgID8gdGhpcy5hZG1pblNlcnZpY2UudXBkYXRlVG9zKHRoaXMuaWQsIGRhdGEpXG4gICAgICAgICAgICA6IHRoaXMuYWRtaW5TZXJ2aWNlLnBvc3RUb3MoZGF0YSk7XG4gICAgICAgIHN1YiQuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgIHRoaXMudG9hc3Quc3VjY2Vzcyh0aGlzLnRyYW5zbGF0aW9uLnRyYW5zbGF0ZSgnVG9zLlVwZGF0ZWRNZXNzYWdlJykpO1xuICAgICAgICAgICAgdGhpcy5iYWNrKCk7XG4gICAgICAgIH0pLmFkZCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN1Ym1pdHRlZCA9IHRydWU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBmKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtLmNvbnRyb2xzO1xuICAgIH1cblxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIFRvc0RldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldFRvc0RldGFpbHMoKSB7XG4gICAgICAgIHRoaXMuYWRtaW5TZXJ2aWNlLmdldFRvc0RldGFpbHModGhpcy5pZCkuc3Vic2NyaWJlKChyZXNwb25zZTogUHJpdmFjeVRvcykgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh0aGlzLmRhdGEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHB3LXRhYiBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lLWF1dG8gY29sLXhzLTZcIj5cbiAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgICAgcm91dGVyTGluaz1cIi4uLy4uL3Rvc1wiXG4gICAgICAgICAgY2xhc3M9XCJwcmV2aW91c1wiPjxpIGNsYXNzPVwiZmEgZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvYT5cbiAgICAgICAgPGgzIGNsYXNzPVwibS1zdWJoZWFkZXJfX3RpdGxlIG0tc3ViaGVhZGVyX190aXRsZS0tc2VwYXJhdG9yXCI+XG4gICAgICAgICAgPHNwYW4+VGVybXMgb2YgU2VydmljZToge3sgZGF0YT8udGl0bGUgPyBkYXRhPy50aXRsZSA6ICdBZGQgTmV3JyB9fTwvc3Bhbj5cbiAgICAgICAgPC9oMz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicC0yIG10LTNcIj5cbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgICAgICAobmdTdWJtaXQpPVwib25TYXZlKClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC0xMlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICAgIDxsYWJlbD57eyAnTGFiZWwuVGl0bGUnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYSB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICByb3dzPVwiMlwiXG4gICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzogc3VibWl0dGVkICYmIGZbJ3RpdGxlJ10uZXJyb3JzIH1cIj48L3RleHRhcmVhPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtMTJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWw+e3sgJ0xhYmVsLlByaXZhY3knIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxxdWlsbC1lZGl0b3IgW3N0eWxlc109XCJ7IGhlaWdodDogJzQ1MHB4JyB9XCJcbiAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByaXZhY3lcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6IHN1Ym1pdHRlZCAmJiBmWydwcml2YWN5J10uZXJyb3JzIH1cIj5cbiAgICAgICAgICAgICAgICA8L3F1aWxsLWVkaXRvcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTEyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsPnt7ICdMYWJlbC5Ub3MnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxxdWlsbC1lZGl0b3IgW3N0eWxlc109XCJ7IGhlaWdodDogJzQ1MHB4JyB9XCJcbiAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRvc1wiXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzogc3VibWl0dGVkICYmIGZbJ3RvcyddLmVycm9ycyB9XCI+XG4gICAgICAgICAgICAgICAgPC9xdWlsbC1lZGl0b3I+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgdGV4dC1lbmQgbXQtM1wiPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLWRlZmF1bHQgbWUtMlwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImJhY2soKVwiPlxuICAgICAgICAgICAgICAgIHt7ICdCdXR0b24uQ2FuY2VsJyB8IHRyYW5zbG9jbyB9fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgKnJiYWNBbGxvdz1cIidTdWJzY3JpcHRpb25BZG1pbidcIj5cbiAgICAgICAgICAgICAgICB7eyAnQnV0dG9uLlN1Ym1pdCcgfCB0cmFuc2xvY28gfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mb3JtPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
71
+ }], ctorParameters: () => [{ type: i1.AdminService }, { type: i0.Injector }], propDecorators: { onSave: [] } });
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMtb2Ytc2VydmljZS1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9UT1MvdGVybXMtb2Ytc2VydmljZS1kZXRhaWxzL3Rlcm1zLW9mLXNlcnZpY2UtZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvVE9TL3Rlcm1zLW9mLXNlcnZpY2UtZGV0YWlscy90ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUd2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7O0FBTS9DLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUFTaEUsWUFBb0IsWUFBMEIsRUFBRSxRQUFrQjtRQUM5RCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFEQSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUY5QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBSWQsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDL0IsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO2dCQUNULElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN4QjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdELE1BQU07UUFDRixNQUFNLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsTUFBTSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUNyRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRTtZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUM7WUFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUM5QixDQUFDO0lBRUQsa0NBQWtDO0lBQzFCLGFBQWE7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQW9CLEVBQUUsRUFBRTtZQUN4RSxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVEsV0FBVztRQUNoQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs4R0F0RFEsOEJBQThCO2tHQUE5Qiw4QkFBOEIsMEZDZDNDLDZtRkFrRUE7O0FENUJJO0lBREMsWUFBWSxDQUFDLE1BQU0sQ0FBQzs7Ozs0REFlcEI7MkZBdENRLDhCQUE4QjtrQkFKMUMsU0FBUzsrQkFDSSw2QkFBNkI7d0dBMkJ2QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FkbWluLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwQWRtaW4gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvbW9kZWxzL2FkbWluLm1vZGVsJztcbmltcG9ydCB7IFByaXZhY3lUb3MgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlL3ByaXZhY3ktdG9zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHBvc2l3aXNlL2FwcC1iYXNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tc2VydmljZXMnO1xuaW1wb3J0IHsgVmFsaWRhdGVGb3JtIH0gZnJvbSAnQHBvc2l3aXNlL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy10ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZXJtcy1vZi1zZXJ2aWNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFRlcm1zT2ZTZXJ2aWNlRGV0YWlsc0NvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcblxuICAgIGlkOiBudW1iZXI7XG5cbiAgICBkYXRhOiBQcml2YWN5VG9zO1xuXG4gICAgc3VibWl0dGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkbWluU2VydmljZTogQWRtaW5TZXJ2aWNlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgICAgICB0aGlzLmZvcm0gPSBBcHBBZG1pbi5nZXRUb3NGb3JtKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5pZCA9IE51bWJlcihwYXJhbXNbJ2lkJ10pO1xuICAgICAgICAgICAgaWYgKHRoaXMuaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFRvc0RldGFpbHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQFZhbGlkYXRlRm9ybSgnZm9ybScpXG4gICAgb25TYXZlKCkge1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25JZCA9IFBlcm1pc3Npb25TZXJ2aWNlLnNlbGVjdGVkU3Vic2NyaXB0aW9uPy5pZDtcbiAgICAgICAgdGhpcy5zdWJtaXR0ZWQgPSB0cnVlO1xuICAgICAgICBjb25zdCBkYXRhID0geyAuLi50aGlzLmZvcm0udmFsdWUsIHN1YnNjcmlwdGlvbl9pZDogc3Vic2NyaXB0aW9uSWQgfTtcbiAgICAgICAgY29uc3Qgc3ViJCA9IHRoaXMuaWRcbiAgICAgICAgICAgID8gdGhpcy5hZG1pblNlcnZpY2UudXBkYXRlVG9zKHRoaXMuaWQsIGRhdGEpXG4gICAgICAgICAgICA6IHRoaXMuYWRtaW5TZXJ2aWNlLnBvc3RUb3MoZGF0YSk7XG4gICAgICAgIHN1YiQuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgIHRoaXMudG9hc3Quc3VjY2Vzcyh0aGlzLnRyYW5zbGF0aW9uLnRyYW5zbGF0ZSgnVG9zLlVwZGF0ZWRNZXNzYWdlJykpO1xuICAgICAgICAgICAgdGhpcy5iYWNrKCk7XG4gICAgICAgIH0pLmFkZCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN1Ym1pdHRlZCA9IHRydWU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBmKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtLmNvbnRyb2xzO1xuICAgIH1cblxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIFRvc0RldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldFRvc0RldGFpbHMoKSB7XG4gICAgICAgIHRoaXMuYWRtaW5TZXJ2aWNlLmdldFRvc0RldGFpbHModGhpcy5pZCkuc3Vic2NyaWJlKChyZXNwb25zZTogUHJpdmFjeVRvcykgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh0aGlzLmRhdGEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHB3LXRhYiBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lLWF1dG8gY29sLXhzLTZcIj5cbiAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgICAgcm91dGVyTGluaz1cIi4uLy4uL3Rvc1wiXG4gICAgICAgICAgY2xhc3M9XCJwcmV2aW91c1wiPjxpIGNsYXNzPVwiZmEgZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvYT5cbiAgICAgICAgPGgzIGNsYXNzPVwibS1zdWJoZWFkZXJfX3RpdGxlIG0tc3ViaGVhZGVyX190aXRsZS0tc2VwYXJhdG9yXCI+XG4gICAgICAgICAgPHNwYW4+VGVybXMgb2YgU2VydmljZToge3sgZGF0YT8udGl0bGUgPyBkYXRhPy50aXRsZSA6ICdBZGQgTmV3JyB9fTwvc3Bhbj5cbiAgICAgICAgPC9oMz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicC0yIG10LTNcIj5cbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgICAgICAobmdTdWJtaXQpPVwib25TYXZlKClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC0xMlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICAgIDxsYWJlbD57eyAnTGFiZWwuVGl0bGUnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYSB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICByb3dzPVwiMlwiXG4gICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzogc3VibWl0dGVkICYmIGZbJ3RpdGxlJ10uZXJyb3JzIH1cIj48L3RleHRhcmVhPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtMTJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWw+e3sgJ0xhYmVsLlByaXZhY3knIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxxdWlsbC1lZGl0b3IgW3N0eWxlc109XCJ7IGhlaWdodDogJzQ1MHB4JyB9XCJcbiAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByaXZhY3lcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6IHN1Ym1pdHRlZCAmJiBmWydwcml2YWN5J10uZXJyb3JzIH1cIj5cbiAgICAgICAgICAgICAgICA8L3F1aWxsLWVkaXRvcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTEyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsPnt7ICdMYWJlbC5Ub3MnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxxdWlsbC1lZGl0b3IgW3N0eWxlc109XCJ7IGhlaWdodDogJzQ1MHB4JyB9XCJcbiAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRvc1wiXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzogc3VibWl0dGVkICYmIGZbJ3RvcyddLmVycm9ycyB9XCI+XG4gICAgICAgICAgICAgICAgPC9xdWlsbC1lZGl0b3I+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgdGV4dC1lbmQgbXQtM1wiPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLWRlZmF1bHQgbWUtMlwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImJhY2soKVwiPlxuICAgICAgICAgICAgICAgIHt7ICdCdXR0b24uQ2FuY2VsJyB8IHRyYW5zbG9jbyB9fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgKnJiYWNBbGxvdz1cIidTdWJzY3JpcHRpb25BZG1pbidcIj5cbiAgICAgICAgICAgICAgICB7eyAnQnV0dG9uLlN1Ym1pdCcgfCB0cmFuc2xvY28gfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mb3JtPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -13,14 +13,14 @@ export class TermsOfServiceTabsComponent {
13
13
  }
14
14
  ];
15
15
  }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: TermsOfServiceTabsComponent, selector: "pw-terms-of-service-tabs", ngImport: i0, template: `<pw-tabs [items]="items"></pw-tabs>`, isInline: true, dependencies: [{ kind: "component", type: i1.PwTabsComponent, selector: "pw-tabs", inputs: ["items", "withSubscription"] }] }); }
16
18
  }
17
- TermsOfServiceTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: TermsOfServiceTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
- TermsOfServiceTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: TermsOfServiceTabsComponent, selector: "pw-terms-of-service-tabs", ngImport: i0, template: `<pw-tabs [items]="items"></pw-tabs>`, isInline: true, dependencies: [{ kind: "component", type: i1.PwTabsComponent, selector: "pw-tabs", inputs: ["items", "withSubscription"] }] });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: TermsOfServiceTabsComponent, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: TermsOfServiceTabsComponent, decorators: [{
20
20
  type: Component,
21
21
  args: [{
22
22
  selector: 'pw-terms-of-service-tabs',
23
23
  template: `<pw-tabs [items]="items"></pw-tabs>`
24
24
  }]
25
- }], ctorParameters: function () { return []; } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMtb2Ytc2VydmljZS10YWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9UT1MvdGVybXMtb2Ytc2VydmljZS10YWJzL3Rlcm1zLW9mLXNlcnZpY2UtdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzFDLE1BQU0sT0FBTywyQkFBMkI7SUFLcEM7UUFGQSxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBR1osSUFBSSxDQUFDLEtBQUssR0FBRztZQUNUO2dCQUNJLEVBQUUsRUFBRSxLQUFLO2dCQUNULEtBQUssRUFBRSxlQUFlO2dCQUN0QixJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixVQUFVLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzthQUNsQztTQUNKLENBQUM7SUFDTixDQUFDOzt3SEFkUSwyQkFBMkI7NEdBQTNCLDJCQUEyQixnRUFGMUIscUNBQXFDOzJGQUV0QywyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFLHFDQUFxQztpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXRlcm1zLW9mLXNlcnZpY2UtdGFicycsXG4gICAgdGVtcGxhdGU6IGA8cHctdGFicyBbaXRlbXNdPVwiaXRlbXNcIj48L3B3LXRhYnM+YFxufSlcbmV4cG9ydCBjbGFzcyBUZXJtc09mU2VydmljZVRhYnNDb21wb25lbnQge1xuICAgIGl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gICAgc2VhcmNoVGV4dCA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdUb3MnLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnUHJpdmFjeSAmIFRPUycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhcyBmYS1zdGlja3ktbm90ZScsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvYWRtaW4vdG9zL2xpc3QnXVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cbn1cbiJdfQ==
25
+ }], ctorParameters: () => [] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMtb2Ytc2VydmljZS10YWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9UT1MvdGVybXMtb2Ytc2VydmljZS10YWJzL3Rlcm1zLW9mLXNlcnZpY2UtdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzFDLE1BQU0sT0FBTywyQkFBMkI7SUFLcEM7UUFGQSxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBR1osSUFBSSxDQUFDLEtBQUssR0FBRztZQUNUO2dCQUNJLEVBQUUsRUFBRSxLQUFLO2dCQUNULEtBQUssRUFBRSxlQUFlO2dCQUN0QixJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixVQUFVLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzthQUNsQztTQUNKLENBQUM7SUFDTixDQUFDOzhHQWRRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLGdFQUYxQixxQ0FBcUM7OzJGQUV0QywyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFLHFDQUFxQztpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXRlcm1zLW9mLXNlcnZpY2UtdGFicycsXG4gICAgdGVtcGxhdGU6IGA8cHctdGFicyBbaXRlbXNdPVwiaXRlbXNcIj48L3B3LXRhYnM+YFxufSlcbmV4cG9ydCBjbGFzcyBUZXJtc09mU2VydmljZVRhYnNDb21wb25lbnQge1xuICAgIGl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gICAgc2VhcmNoVGV4dCA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdUb3MnLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnUHJpdmFjeSAmIFRPUycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhcyBmYS1zdGlja3ktbm90ZScsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvYWRtaW4vdG9zL2xpc3QnXVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cbn1cbiJdfQ==
@@ -52,11 +52,11 @@ export class GlobalConfigDetailsComponent extends AppBaseComponent {
52
52
  ngOnDestroy() {
53
53
  super.ngOnDestroy();
54
54
  }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: GlobalConfigDetailsComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
56
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: GlobalConfigDetailsComponent, selector: "pw-global-config-details", usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n (click)=\"back()\"\n class=\"previous\">\n <i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>{{ 'Admin.GlobalConfigMessage.Config' | transloco }}:\n {{ data?.name || 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSaveForm()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Name' | transloco\"\n class=\"col-md-6 p-0\"\n name=\"name\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.NameValidator' | transloco\n \">\n <input type=\"text\"\n class=\"form-control\"\n formControlName=\"name\"\n [ngClass]=\"{ 'is-invalid': submitted && f['name'].errors }\" />\n </pw-input-container>\n </div>\n </div>\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.FieldType' | transloco\"\n name=\"field_type\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.FieldTypeValidator' | transloco\n \">\n <select formControlName=\"field_type\"\n class=\"form-control form-select\"\n [ngClass]=\"{\n 'is-invalid': submitted && f['field_type'].errors\n }\">\n <option *ngFor=\"let option of fieldTypes\"\n [value]=\"option\">\n {{ option }}\n </option>\n </select>\n </pw-input-container>\n </div>\n </div>\n <div class=\"col\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Default' | transloco\"\n class=\"nowrap\"\n name=\"default\">\n <ui-switch class=\"d-block\"\n formControlName=\"default\"\n name=\"default\"\n [ngClass]=\"{ 'is-invalid': submitted && f['default'].errors }\">\n </ui-switch>\n </pw-input-container>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'Pages.Admin.Credentials.Edit'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\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: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.UiSwitchComponent, selector: "ui-switch", inputs: ["size", "color", "switchOffColor", "switchColor", "defaultBgColor", "defaultBoColor", "checkedLabel", "uncheckedLabel", "checkedTextColor", "uncheckedTextColor", "beforeChange", "ariaLabel", "checked", "disabled", "reverse", "loading"], outputs: ["change", "changeEvent", "valueChange"] }, { kind: "component", type: i5.InputContainerComponent, selector: "pw-input-container", inputs: ["name", "label", "labelClass", "tooltipPosition", "required", "errorMsg", "isReadOnly", "showTooltip", "tooltipText", "showTriangle", "afterLabel", "showAfterLabel", "showTriangleText"] }, { kind: "directive", type: i6.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i7.TranslocoPipe, name: "transloco" }] }); }
55
57
  }
56
- GlobalConfigDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: GlobalConfigDetailsComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
57
- GlobalConfigDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: GlobalConfigDetailsComponent, selector: "pw-global-config-details", usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n (click)=\"back()\"\n class=\"previous\">\n <i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>{{ 'Admin.GlobalConfigMessage.Config' | transloco }}:\n {{ data?.name || 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSaveForm()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Name' | transloco\"\n class=\"col-md-6 p-0\"\n name=\"name\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.NameValidator' | transloco\n \">\n <input type=\"text\"\n class=\"form-control\"\n formControlName=\"name\"\n [ngClass]=\"{ 'is-invalid': submitted && f['name'].errors }\" />\n </pw-input-container>\n </div>\n </div>\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.FieldType' | transloco\"\n name=\"field_type\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.FieldTypeValidator' | transloco\n \">\n <select formControlName=\"field_type\"\n class=\"form-control form-select\"\n [ngClass]=\"{\n 'is-invalid': submitted && f['field_type'].errors\n }\">\n <option *ngFor=\"let option of fieldTypes\"\n [value]=\"option\">\n {{ option }}\n </option>\n </select>\n </pw-input-container>\n </div>\n </div>\n <div class=\"col\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Default' | transloco\"\n class=\"nowrap\"\n name=\"default\">\n <ui-switch class=\"d-block\"\n formControlName=\"default\"\n name=\"default\"\n [ngClass]=\"{ 'is-invalid': submitted && f['default'].errors }\">\n </ui-switch>\n </pw-input-container>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'Pages.Admin.Credentials.Edit'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\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: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.UiSwitchComponent, selector: "ui-switch", inputs: ["size", "color", "switchOffColor", "switchColor", "defaultBgColor", "defaultBoColor", "checkedLabel", "uncheckedLabel", "checkedTextColor", "uncheckedTextColor", "beforeChange", "ariaLabel", "checked", "disabled", "reverse", "loading"], outputs: ["change", "changeEvent", "valueChange"] }, { kind: "component", type: i5.InputContainerComponent, selector: "pw-input-container", inputs: ["name", "label", "labelClass", "tooltipPosition", "required", "errorMsg", "isReadOnly", "showTooltip", "tooltipText", "showTriangle", "afterLabel", "showAfterLabel", "showTriangleText"] }, { kind: "directive", type: i6.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i7.TranslocoPipe, name: "transloco" }] });
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: GlobalConfigDetailsComponent, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: GlobalConfigDetailsComponent, decorators: [{
59
59
  type: Component,
60
60
  args: [{ selector: 'pw-global-config-details', template: "<div class=\"container-fluid pw-tab overflow-hidden\">\n <div class=\"dashboard\">\n <div class=\"dashboard-body\">\n <div class=\"me-auto col-xs-6\">\n <a href=\"javascript:void(0)\"\n (click)=\"back()\"\n class=\"previous\">\n <i class=\"fa fa-arrow-alt-circle-left\" aria-hidden=\"true\"></i></a>\n <h3 class=\"m-subheader__title m-subheader__title--separator\">\n <span>{{ 'Admin.GlobalConfigMessage.Config' | transloco }}:\n {{ data?.name || 'Add New' }}</span>\n </h3>\n </div>\n\n <div class=\"p-2 mt-3\">\n <form [formGroup]=\"form\"\n (ngSubmit)=\"onSaveForm()\">\n <div class=\"row\">\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Name' | transloco\"\n class=\"col-md-6 p-0\"\n name=\"name\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.NameValidator' | transloco\n \">\n <input type=\"text\"\n class=\"form-control\"\n formControlName=\"name\"\n [ngClass]=\"{ 'is-invalid': submitted && f['name'].errors }\" />\n </pw-input-container>\n </div>\n </div>\n <div class=\"col-12 col-md-4\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.FieldType' | transloco\"\n name=\"field_type\"\n [errorMsg]=\"\n 'Admin.GlobalConfigMessage.FieldTypeValidator' | transloco\n \">\n <select formControlName=\"field_type\"\n class=\"form-control form-select\"\n [ngClass]=\"{\n 'is-invalid': submitted && f['field_type'].errors\n }\">\n <option *ngFor=\"let option of fieldTypes\"\n [value]=\"option\">\n {{ option }}\n </option>\n </select>\n </pw-input-container>\n </div>\n </div>\n <div class=\"col\">\n <div class=\"mb-3\">\n <pw-input-container [label]=\"'Admin.GlobalConfigMessage.Default' | transloco\"\n class=\"nowrap\"\n name=\"default\">\n <ui-switch class=\"d-block\"\n formControlName=\"default\"\n name=\"default\"\n [ngClass]=\"{ 'is-invalid': submitted && f['default'].errors }\">\n </ui-switch>\n </pw-input-container>\n </div>\n </div>\n\n <div class=\"col-12 text-end mt-3\">\n <button type=\"button\"\n class=\"btn btn-outline-default me-2\"\n (click)=\"back()\">\n {{ 'Button.Cancel' | transloco }}\n </button>\n <button type=\"submit\"\n class=\"btn btn-primary\"\n *rbacAllow=\"'Pages.Admin.Credentials.Edit'\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n" }]
61
- }], ctorParameters: function () { return [{ type: i1.AdminService }, { type: i0.Injector }]; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWNvbmZpZy1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9jb25maWcvZ2xvYmFsLWNvbmZpZy1kZXRhaWxzL2dsb2JhbC1jb25maWctZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlnL2dsb2JhbC1jb25maWctZGV0YWlscy9nbG9iYWwtY29uZmlnLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBR3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7OztBQU1oRSxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0JBQWdCO0lBVzlELFlBQW9CLFlBQTBCLEVBQUUsUUFBa0I7UUFDOUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBREEsaUJBQVksR0FBWixZQUFZLENBQWM7UUFKOUMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBSXRCLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN4QztJQUNMLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxFQUFVO1FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBc0IsRUFBRSxFQUFFO1lBQzlFLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzlCLENBQUM7SUFFRCxVQUFVO1FBQ04sTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUU7WUFDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUM7WUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsMENBQTBDLENBQUMsQ0FDekUsQ0FBQztZQUNGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxhQUFhO1FBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBa0IsRUFBRSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7O3lIQXhEUSw0QkFBNEI7NkdBQTVCLDRCQUE0Qix1RkNaekMsNjlHQXFGQTsyRkR6RWEsNEJBQTRCO2tCQUp4QyxTQUFTOytCQUNJLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBBZG1pblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hZG1pbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEFkbWluIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9hZG1pbi5tb2RlbCc7XG5pbXBvcnQgeyBHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlL2dsb2JhbC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy1nbG9iYWwtY29uZmlnLWRldGFpbHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nbG9iYWwtY29uZmlnLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdsb2JhbENvbmZpZ0RldGFpbHNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgICBwcml2YXRlIGlkOiBudW1iZXI7XG5cbiAgICBkYXRhOiBHbG9iYWxDb25maWc7XG5cbiAgICBzdWJtaXR0ZWQgPSBmYWxzZTtcblxuICAgIGZpZWxkVHlwZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkbWluU2VydmljZTogQWRtaW5TZXJ2aWNlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgICAgICB0aGlzLmZvcm0gPSBBcHBBZG1pbi5nZXRHbG9iYWxDb25maWdGb3JtKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2V0RmllbGRUeXBlcygpO1xuICAgICAgICB0aGlzLmlkID0gTnVtYmVyKHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zWydpZCddKTtcbiAgICAgICAgaWYgKHRoaXMuaWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0R2xvYmFsQ29uZmlnRGV0YWlscyh0aGlzLmlkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0R2xvYmFsQ29uZmlnRGV0YWlscyhpZDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuYWRtaW5TZXJ2aWNlLmdldEdsb2JhbENvbmZpZ0RldGFpbHMoaWQpLnN1YnNjcmliZSgocmVzcG9uc2U6IEdsb2JhbENvbmZpZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh0aGlzLmRhdGEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgZigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5jb250cm9scztcbiAgICB9XG5cbiAgICBvblNhdmVGb3JtKCkge1xuICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5mb3JtLnZhbHVlO1xuICAgICAgICBjb25zdCBzdWIkID0gdGhpcy5pZFxuICAgICAgICAgICAgPyB0aGlzLmFkbWluU2VydmljZS5lZGl0R2xvYmFsQ29uZmlnKHRoaXMuaWQsIGRhdGEpXG4gICAgICAgICAgICA6IHRoaXMuYWRtaW5TZXJ2aWNlLnBvc3RHbG9iYWxDb25maWcoZGF0YSk7XG4gICAgICAgIHN1YiQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudG9hc3Quc3VjY2VzcyhcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zbGF0aW9uLnRyYW5zbGF0ZSgnQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5VcGRhdGVkTWVzc2FnZScpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5iYWNrKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmllbGRUeXBlcygpIHtcbiAgICAgICAgdGhpcy5hZG1pblNlcnZpY2UuZ2V0QWxsRmllbGRUeXBlKCkuc3Vic2NyaWJlKChyZXNwb25zZTogc3RyaW5nW10pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRUeXBlcyA9IHJlc3BvbnNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHB3LXRhYiBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lLWF1dG8gY29sLXhzLTZcIj5cbiAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImJhY2soKVwiXG4gICAgICAgICAgY2xhc3M9XCJwcmV2aW91c1wiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvYT5cbiAgICAgICAgPGgzIGNsYXNzPVwibS1zdWJoZWFkZXJfX3RpdGxlIG0tc3ViaGVhZGVyX190aXRsZS0tc2VwYXJhdG9yXCI+XG4gICAgICAgICAgPHNwYW4+e3sgJ0FkbWluLkdsb2JhbENvbmZpZ01lc3NhZ2UuQ29uZmlnJyB8IHRyYW5zbG9jbyB9fTpcbiAgICAgICAgICAgIHt7IGRhdGE/Lm5hbWUgfHwgJ0FkZCBOZXcnIH19PC9zcGFuPlxuICAgICAgICA8L2gzPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJwLTIgbXQtM1wiPlxuICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgICAgIChuZ1N1Ym1pdCk9XCJvblNhdmVGb3JtKClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgICAgPHB3LWlucHV0LWNvbnRhaW5lciBbbGFiZWxdPVwiJ0FkbWluLkdsb2JhbENvbmZpZ01lc3NhZ2UuTmFtZScgfCB0cmFuc2xvY29cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtbWQtNiBwLTBcIlxuICAgICAgICAgICAgICAgICAgbmFtZT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgW2Vycm9yTXNnXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBZG1pbi5HbG9iYWxDb25maWdNZXNzYWdlLk5hbWVWYWxpZGF0b3InIHwgdHJhbnNsb2NvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIj5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOiBzdWJtaXR0ZWQgJiYgZlsnbmFtZSddLmVycm9ycyB9XCIgLz5cbiAgICAgICAgICAgICAgICA8L3B3LWlucHV0LWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8cHctaW5wdXQtY29udGFpbmVyIFtsYWJlbF09XCInQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5GaWVsZFR5cGUnIHwgdHJhbnNsb2NvXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJmaWVsZF90eXBlXCJcbiAgICAgICAgICAgICAgICAgIFtlcnJvck1zZ109XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5GaWVsZFR5cGVWYWxpZGF0b3InIHwgdHJhbnNsb2NvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIj5cbiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiZmllbGRfdHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaXMtaW52YWxpZCc6IHN1Ym1pdHRlZCAmJiBmWydmaWVsZF90eXBlJ10uZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmllbGRUeXBlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IG9wdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvcHctaW5wdXQtY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICAgIDxwdy1pbnB1dC1jb250YWluZXIgW2xhYmVsXT1cIidBZG1pbi5HbG9iYWxDb25maWdNZXNzYWdlLkRlZmF1bHQnIHwgdHJhbnNsb2NvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibm93cmFwXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJkZWZhdWx0XCI+XG4gICAgICAgICAgICAgICAgICA8dWktc3dpdGNoIGNsYXNzPVwiZC1ibG9ja1wiXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOiBzdWJtaXR0ZWQgJiYgZlsnZGVmYXVsdCddLmVycm9ycyB9XCI+XG4gICAgICAgICAgICAgICAgICA8L3VpLXN3aXRjaD5cbiAgICAgICAgICAgICAgICA8L3B3LWlucHV0LWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZCBtdC0zXCI+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtZGVmYXVsdCBtZS0yXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYmFjaygpXCI+XG4gICAgICAgICAgICAgICAge3sgJ0J1dHRvbi5DYW5jZWwnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAqcmJhY0FsbG93PVwiJ1BhZ2VzLkFkbWluLkNyZWRlbnRpYWxzLkVkaXQnXCI+XG4gICAgICAgICAgICAgICAge3sgJ0J1dHRvbi5TdWJtaXQnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZm9ybT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
61
+ }], ctorParameters: () => [{ type: i1.AdminService }, { type: i0.Injector }] });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWNvbmZpZy1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRtaW4tbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9jb25maWcvZ2xvYmFsLWNvbmZpZy1kZXRhaWxzL2dsb2JhbC1jb25maWctZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlnL2dsb2JhbC1jb25maWctZGV0YWlscy9nbG9iYWwtY29uZmlnLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBR3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7OztBQU1oRSxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0JBQWdCO0lBVzlELFlBQW9CLFlBQTBCLEVBQUUsUUFBa0I7UUFDOUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBREEsaUJBQVksR0FBWixZQUFZLENBQWM7UUFKOUMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBSXRCLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN4QztJQUNMLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxFQUFVO1FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBc0IsRUFBRSxFQUFFO1lBQzlFLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzlCLENBQUM7SUFFRCxVQUFVO1FBQ04sTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUU7WUFDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUM7WUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsMENBQTBDLENBQUMsQ0FDekUsQ0FBQztZQUNGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxhQUFhO1FBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBa0IsRUFBRSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7OEdBeERRLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHVGQ1p6Qyw2OUdBcUZBOzsyRkR6RWEsNEJBQTRCO2tCQUp4QyxTQUFTOytCQUNJLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBBZG1pblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9hZG1pbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEFkbWluIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21vZGVscy9hZG1pbi5tb2RlbCc7XG5pbXBvcnQgeyBHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlL2dsb2JhbC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy1nbG9iYWwtY29uZmlnLWRldGFpbHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nbG9iYWwtY29uZmlnLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdsb2JhbENvbmZpZ0RldGFpbHNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgICBwcml2YXRlIGlkOiBudW1iZXI7XG5cbiAgICBkYXRhOiBHbG9iYWxDb25maWc7XG5cbiAgICBzdWJtaXR0ZWQgPSBmYWxzZTtcblxuICAgIGZpZWxkVHlwZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkbWluU2VydmljZTogQWRtaW5TZXJ2aWNlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgICAgICB0aGlzLmZvcm0gPSBBcHBBZG1pbi5nZXRHbG9iYWxDb25maWdGb3JtKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2V0RmllbGRUeXBlcygpO1xuICAgICAgICB0aGlzLmlkID0gTnVtYmVyKHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zWydpZCddKTtcbiAgICAgICAgaWYgKHRoaXMuaWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0R2xvYmFsQ29uZmlnRGV0YWlscyh0aGlzLmlkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0R2xvYmFsQ29uZmlnRGV0YWlscyhpZDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuYWRtaW5TZXJ2aWNlLmdldEdsb2JhbENvbmZpZ0RldGFpbHMoaWQpLnN1YnNjcmliZSgocmVzcG9uc2U6IEdsb2JhbENvbmZpZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh0aGlzLmRhdGEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgZigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5jb250cm9scztcbiAgICB9XG5cbiAgICBvblNhdmVGb3JtKCkge1xuICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5mb3JtLnZhbHVlO1xuICAgICAgICBjb25zdCBzdWIkID0gdGhpcy5pZFxuICAgICAgICAgICAgPyB0aGlzLmFkbWluU2VydmljZS5lZGl0R2xvYmFsQ29uZmlnKHRoaXMuaWQsIGRhdGEpXG4gICAgICAgICAgICA6IHRoaXMuYWRtaW5TZXJ2aWNlLnBvc3RHbG9iYWxDb25maWcoZGF0YSk7XG4gICAgICAgIHN1YiQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudG9hc3Quc3VjY2VzcyhcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zbGF0aW9uLnRyYW5zbGF0ZSgnQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5VcGRhdGVkTWVzc2FnZScpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5iYWNrKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmllbGRUeXBlcygpIHtcbiAgICAgICAgdGhpcy5hZG1pblNlcnZpY2UuZ2V0QWxsRmllbGRUeXBlKCkuc3Vic2NyaWJlKChyZXNwb25zZTogc3RyaW5nW10pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRUeXBlcyA9IHJlc3BvbnNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHB3LXRhYiBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lLWF1dG8gY29sLXhzLTZcIj5cbiAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgICAgKGNsaWNrKT1cImJhY2soKVwiXG4gICAgICAgICAgY2xhc3M9XCJwcmV2aW91c1wiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtYXJyb3ctYWx0LWNpcmNsZS1sZWZ0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvYT5cbiAgICAgICAgPGgzIGNsYXNzPVwibS1zdWJoZWFkZXJfX3RpdGxlIG0tc3ViaGVhZGVyX190aXRsZS0tc2VwYXJhdG9yXCI+XG4gICAgICAgICAgPHNwYW4+e3sgJ0FkbWluLkdsb2JhbENvbmZpZ01lc3NhZ2UuQ29uZmlnJyB8IHRyYW5zbG9jbyB9fTpcbiAgICAgICAgICAgIHt7IGRhdGE/Lm5hbWUgfHwgJ0FkZCBOZXcnIH19PC9zcGFuPlxuICAgICAgICA8L2gzPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJwLTIgbXQtM1wiPlxuICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgICAgIChuZ1N1Ym1pdCk9XCJvblNhdmVGb3JtKClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICAgICAgPHB3LWlucHV0LWNvbnRhaW5lciBbbGFiZWxdPVwiJ0FkbWluLkdsb2JhbENvbmZpZ01lc3NhZ2UuTmFtZScgfCB0cmFuc2xvY29cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtbWQtNiBwLTBcIlxuICAgICAgICAgICAgICAgICAgbmFtZT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgW2Vycm9yTXNnXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBZG1pbi5HbG9iYWxDb25maWdNZXNzYWdlLk5hbWVWYWxpZGF0b3InIHwgdHJhbnNsb2NvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIj5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOiBzdWJtaXR0ZWQgJiYgZlsnbmFtZSddLmVycm9ycyB9XCIgLz5cbiAgICAgICAgICAgICAgICA8L3B3LWlucHV0LWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8cHctaW5wdXQtY29udGFpbmVyIFtsYWJlbF09XCInQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5GaWVsZFR5cGUnIHwgdHJhbnNsb2NvXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJmaWVsZF90eXBlXCJcbiAgICAgICAgICAgICAgICAgIFtlcnJvck1zZ109XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQWRtaW4uR2xvYmFsQ29uZmlnTWVzc2FnZS5GaWVsZFR5cGVWYWxpZGF0b3InIHwgdHJhbnNsb2NvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIj5cbiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiZmllbGRfdHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGZvcm0tc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaXMtaW52YWxpZCc6IHN1Ym1pdHRlZCAmJiBmWydmaWVsZF90eXBlJ10uZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmllbGRUeXBlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IG9wdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvcHctaW5wdXQtY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICAgIDxwdy1pbnB1dC1jb250YWluZXIgW2xhYmVsXT1cIidBZG1pbi5HbG9iYWxDb25maWdNZXNzYWdlLkRlZmF1bHQnIHwgdHJhbnNsb2NvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibm93cmFwXCJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJkZWZhdWx0XCI+XG4gICAgICAgICAgICAgICAgICA8dWktc3dpdGNoIGNsYXNzPVwiZC1ibG9ja1wiXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOiBzdWJtaXR0ZWQgJiYgZlsnZGVmYXVsdCddLmVycm9ycyB9XCI+XG4gICAgICAgICAgICAgICAgICA8L3VpLXN3aXRjaD5cbiAgICAgICAgICAgICAgICA8L3B3LWlucHV0LWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZCBtdC0zXCI+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtZGVmYXVsdCBtZS0yXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYmFjaygpXCI+XG4gICAgICAgICAgICAgICAge3sgJ0J1dHRvbi5DYW5jZWwnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAqcmJhY0FsbG93PVwiJ1BhZ2VzLkFkbWluLkNyZWRlbnRpYWxzLkVkaXQnXCI+XG4gICAgICAgICAgICAgICAge3sgJ0J1dHRvbi5TdWJtaXQnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZm9ybT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19