@posiwise/resource-module 0.0.100 → 0.0.102

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 (31) hide show
  1. package/esm2022/lib/public/components/reslease-note-card/release-note-card.component.mjs +64 -18
  2. package/esm2022/lib/public/components/resource-blogs/resource-blog-top-banner/resource-blog-top-banner.component.mjs +2 -2
  3. package/esm2022/lib/public/components/resource-blogs/resource-blog.component.mjs +2 -2
  4. package/esm2022/lib/public/components/resource-card-list/resource-card-list.component.mjs +2 -2
  5. package/esm2022/lib/public/components/resource-case-studies/case-studies-cards/case-studies-cards.component.mjs +2 -2
  6. package/esm2022/lib/public/components/resource-case-studies/resource-case-studies.component.mjs +2 -2
  7. package/esm2022/lib/public/components/resource-company-card/resource-company-card.component.mjs +2 -2
  8. package/esm2022/lib/public/components/resource-integration/integration-top-banner/integration-top-banner.component.mjs +2 -2
  9. package/esm2022/lib/public/components/resource-integration/resource-integration.component.mjs +24 -12
  10. package/esm2022/lib/public/components/resource-post/related-resources/related-resources.component.mjs +2 -2
  11. package/esm2022/lib/public/components/resource-post/related-resources/resource-cards/resource-cards.component.mjs +3 -3
  12. package/esm2022/lib/public/components/resource-post/resource-post-details/resource-post-details.component.mjs +3 -3
  13. package/esm2022/lib/public/components/resource-release-notes/resource-release-notes-top-banner/resource-release-notes-top-banner.component.mjs +4 -4
  14. package/esm2022/lib/public/components/resource-release-notes/resource-release-notes.component.mjs +3 -3
  15. package/esm2022/lib/public/components/resource-vault/resource-vault.component.mjs +3 -3
  16. package/esm2022/lib/public/components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component.mjs +2 -2
  17. package/esm2022/lib/public/components/resource-videos/resource-videos.component.mjs +2 -2
  18. package/esm2022/lib/public/components/resources/resource-tags/resource-tags.component.mjs +2 -2
  19. package/esm2022/lib/public/components/resources/resources.component.mjs +3 -3
  20. package/esm2022/lib/public/components/resources/vault-section/vault-section.component.mjs +3 -3
  21. package/esm2022/lib/public/components/resources-hub/resources-hub.component.mjs +7 -3
  22. package/esm2022/lib/public/components/testimonial-card/testimonial-card.component.mjs +2 -2
  23. package/esm2022/lib/public/components/white-papers/white-papers-top-banner/white-papers-top-banner.component.mjs +3 -4
  24. package/esm2022/lib/public/components/white-papers/white-papers.component.mjs +3 -5
  25. package/esm2022/lib/resource.service.mjs +5 -2
  26. package/fesm2022/posiwise-resource-module.mjs +146 -86
  27. package/fesm2022/posiwise-resource-module.mjs.map +1 -1
  28. package/lib/public/components/reslease-note-card/release-note-card.component.d.ts +15 -4
  29. package/lib/public/components/resource-integration/resource-integration.component.d.ts +5 -1
  30. package/lib/resource.service.d.ts +1 -1
  31. package/package.json +1 -1
@@ -30,6 +30,7 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
30
30
  this.posts = [];
31
31
  this.distributerPosts = [];
32
32
  this.isLoaded = false;
33
+ this.integrations = this.appConfig?.pages_config?.integrations;
33
34
  this.releaseNotesLink = '/resources/product-release-notes';
34
35
  this.q1NotesLink = '/resources/product-release-q1-2025';
35
36
  this.q3NotesLink = '/resources/product-release-q3-2024';
@@ -38,8 +39,10 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
38
39
  this.videoDemoLoaded = false;
39
40
  this.youtubeVideoId = 'R7Vk219zbhA';
40
41
  this.videoTitle = 'CloudOlive Overview';
42
+ this.contactUsUrl = this.appConfig?.pages_config?.contact_us;
41
43
  }
42
44
  ngOnInit() {
45
+ console.log('In this');
43
46
  this.companyName = this.appConfig.company.name;
44
47
  console.log(this.appConfig);
45
48
  document.documentElement.style.setProperty('--text-color', this.textColor);
@@ -55,6 +58,16 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
55
58
  console.log(this.subscriptionId);
56
59
  });
57
60
  }
61
+ this.getTags();
62
+ });
63
+ }
64
+ getTags() {
65
+ this.isLoaded = false;
66
+ this.tagService
67
+ .getAllTagCategories({ search: 'Integrations' }, this.subscriptionId || this.masterSubscriptionId)
68
+ .subscribe(response => {
69
+ this.tagCategory = response.tag_categories[0];
70
+ console.log('getTags', this.tagCategory);
58
71
  this.getPostTags();
59
72
  });
60
73
  }
@@ -63,15 +76,17 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
63
76
  .getTagsByType('post_categories', {}, this.subscriptionId || this.masterSubscriptionId)
64
77
  .subscribe(response => {
65
78
  this.resourcePostTag = response.tags.find(tag => tag.name === 'Product Release Notes');
66
- this.blogPostTag = response.tags.find(tag => tag.name === 'Integrated Distributors');
67
- this.blogPostVendorTag = response.tags.find(tag => tag.name === 'Integrated Vendors');
79
+ this.blogPostTag = response.tags.find(tag => tag.name === 'Integrated Distributors' &&
80
+ tag.tag_category_id === this.tagCategory?.id);
81
+ this.blogPostVendorTag = response.tags.find(tag => tag.name === 'Integrated Vendors' &&
82
+ tag.tag_category_id === this.tagCategory?.id);
68
83
  this.getPosts(1, 100);
69
84
  this.getVendorPosts(1, 100);
70
85
  });
71
86
  }
72
87
  getPosts(page, pageSize) {
73
88
  this.resourceService
74
- .getPublicPosts(this.subscriptionId || this.masterSubscriptionId, page, pageSize, '', this.blogPostVendorTag?.tag_category_id)
89
+ .getPublicPosts(this.subscriptionId || this.masterSubscriptionId, page, pageSize, '', '', this.blogPostVendorTag?.id)
75
90
  .subscribe(response => {
76
91
  console.log(response.posts);
77
92
  this.posts = response.posts
@@ -84,7 +99,7 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
84
99
  }
85
100
  getVendorPosts(page, pageSize) {
86
101
  this.resourceService
87
- .getPublicPosts(this.subscriptionId || this.masterSubscriptionId, page, pageSize, '', this.blogPostTag?.tag_category_id)
102
+ .getPublicPosts(this.subscriptionId || this.masterSubscriptionId, page, pageSize, '', '', this.blogPostTag?.id)
88
103
  .subscribe(response => {
89
104
  this.distributerPosts = response?.posts
90
105
  .filter(post => post.showcase === true)
@@ -96,11 +111,8 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
96
111
  this.isLoaded = true;
97
112
  });
98
113
  }
99
- loadMicrosoftVideo() {
100
- const baseUrl = `https://www.youtube.com/embed/${this.youtubeVideoId}?autoplay=1`;
101
- // baseUrl is a trusted internal source (e.g. YouTube embed URL)
102
- this.sanitizedMicrosoftVideoUrl = this.sanitizer.bypassSecurityTrustResourceUrl(baseUrl); // NOSONAR
103
- this.videoDemoLoaded = true;
114
+ loadMicrosoftVideo(videoUrl) {
115
+ window.open(videoUrl, '_blank');
104
116
  }
105
117
  loadKeseyaVideo() {
106
118
  const baseUrl = `https://www.youtube.com/embed/${this.youtubeVideoId}?autoplay=1`;
@@ -109,10 +121,10 @@ export class ResourceIntegrationComponent extends AppBaseComponent {
109
121
  this.videoWebinarLoaded = true;
110
122
  }
111
123
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ResourceIntegrationComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.ResourceService }, { token: i3.TagService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: ResourceIntegrationComponent, selector: "pw-resource-integration", usesInheritance: true, ngImport: i0, template: "<pw-resource-header></pw-resource-header>\n<pw-integration-top-banner></pw-integration-top-banner>\n<div class=\"bg-white\">\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container sec-container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div *ngIf=\"isLoaded && integrationCountDisplay > 0\">\n <h1 class=\"int-title mb-0\">{{ integrationCountDisplay }}+ integrations (& counting)</h1>\n <p class=\"int-text\"> Search the current list of {{companyName}} vendor and distributor integrations below. <br />\n </p>\n <pw-resource-company-card [header]=\"'integrated vendor'\"\n [data]=\"posts\"></pw-resource-company-card>\n </div>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <pw-resource-company-card [header]=\"'integrated Distributors'\"\n *ngIf=\"isLoaded && integrationCountDisplay > 0\"\n [vendor]=\"true\"\n [data]=\"distributerPosts\"></pw-resource-company-card>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n <div class=\"text-center pt-3\">\n <p class=\"see-span\"> Don\u2019t see what you\u2019re after? <a href=\"/book-a-demo\"\n class=\"int-span team-span\">Speak with our team to request a connection >\n </a>\n </p>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"how-it-works-wrapper\">\n <h1 class=\"it-works-title mb-0\">How it works</h1>\n <p class=\"pb-20\">View short example videos to understand how these integrations can work for your MSP:</p>\n <div class=\"row section-row\">\n <div class=\"col-md-6\">\n <div class=\"d-flex justify-content-center\">\n <img src=\"/assets/img/resource/how-it-works1.png\"\n *ngIf=\"!videoDemoLoaded\"\n (click)=\"loadMicrosoftVideo()\"\n class=\"how-it-works-img\"\n alt=\"\" />\n <iframe *ngIf=\"videoDemoLoaded\"\n class=\"embed-responsive-item\"\n [title]=\"videoTitle\"\n [src]=\"sanitizedMicrosoftVideoUrl\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowfullscreen>\n </iframe>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"d-flex justify-content-center\">\n <img src=\"/assets/img/resource/how-it-works2.png\"\n *ngIf=\"!videoWebinarLoaded\"\n (click)=\"loadKeseyaVideo()\"\n class=\"how-it-works-img\"\n alt=\"\" />\n <iframe *ngIf=\"videoWebinarLoaded\"\n class=\"embed-responsive-item\"\n [title]=\"videoTitle\"\n [src]=\"sanitizedKesyaVideoUrl\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowfullscreen>\n </iframe>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"row align-items-start\">\n <!-- Left Content -->\n <div class=\"col-md-6 text-md-start text-center\">\n <h1 class=\"guide-title mb-3\">A guide to implementing CloudOlive in your business</h1>\n <p class=\"guide-subtext\">\n View where CloudOlive sits in your internal technology stack and monthly workflows, and see how easy\n it is to get started.\n </p>\n <p class=\"guide-note mb-4\">View the quick guide now:</p>\n <button class=\"vault-btn\"\n onclick=\"window.open('https://hubspot.com', '_blank')\">View the guide</button>\n </div>\n\n <!-- Right Image -->\n <div class=\"col-md-6 text-center\">\n <img src=\"/assets/img/resource/guide.png\"\n alt=\"Guide\"\n class=\"img-fluid guide-img\" />\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n</div>\n\n<pw-resource-note-card *ngIf=\"resourcePostTag?.tag_category_id\" [categoryId]=\"resourcePostTag?.tag_category_id\" [releaseHeader]=\"true\" [resourceTitle]=\"resourcePostTag?.title\"></pw-resource-note-card>\n\n<pw-trial-4-contact-us></pw-trial-4-contact-us>\n", styles: [".int-span{font-size:3rem;color:#3d8fbe}.team-span{font-size:2rem;color:#3d8fbe;font-weight:100}.see-span{font-size:2rem;font-weight:100}.how-it-works-wrapper .it-works-title{font-size:3rem;margin-bottom:2rem;color:var(--text-color, black);font-weight:200!important;padding-bottom:12px!important}.how-it-works-wrapper .how-it-works-img{width:85%!important;margin:0 auto!important}.how-it-works-wrapper p{padding-top:1rem;font-size:2rem;color:#000;font-weight:100;margin-bottom:4rem}.guide-wrapper{padding:55px 47px 220px}.guide-wrapper .horizontal{position:absolute;left:0;bottom:24%;width:100%}.guide-wrapper .pb-20{padding-bottom:20px}.guide-wrapper .flex{display:flex}.guide-wrapper .guideimg{margin:0 auto}.guide-wrapper .guide-title{font: 500 28px Montserrat-Regular,sans-serif}.guide-wrapper p{font: 400 17px Montserrat-Regular,sans-serif;color:#182527}@media (width >= 768px){.cloudolive-guide-section .vault-btn{width:50%!important}.cloudolive-guide-section .container-section{padding:20px 190px 20px 120px!important}}@media (width <= 768px){.cloudolive-guide-section .container-section{padding:3rem!important}.cloudolive-guide-section .guide-title{font-size:3.25rem!important}.cloudolive-guide-section .vault-btn{width:90%!important;margin-bottom:3rem!important}.cloudolive-guide-section .guide-subtext{padding:2rem;line-height:2rem!important}}.cloudolive-guide-section .guide-title{font-size:3rem;font-weight:200}.cloudolive-guide-section .guide-subtext{font-size:1.7rem;line-height:3rem;color:var(--text-color, black);font-weight:200;margin-bottom:2rem}.cloudolive-guide-section .guide-note{font-size:1.7rem;color:#000;font-weight:100}.cloudolive-guide-section .vault-btn{background:var(--text-color, black);color:#fff;padding:18px 34px;border-radius:30px;font-weight:600;margin-top:1rem!important;font-size:1.7rem;cursor:pointer;transition:background .3s ease;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cloudolive-guide-section .vault-btn:hover{background:#fff;color:var(--text-color, black)!important}.cloudolive-guide-section .guide-img{width:70%!important;height:auto;box-shadow:0 5px 20px #00000026}@media (width >= 768px){.release-notes-section .release-heading{font-size:3rem;font-weight:300}.release-notes-section .view-all-link{margin-right:4rem}.release-notes-section .container-section{padding:20px 120px 20px 80px!important}.release-notes-section .release-section{justify-content:space-between!important}}@media (width <= 768px){.release-notes-section .release-heading{font-size:2.5rem;font-weight:400}.release-notes-section .release-section{justify-content:center!important}.release-notes-section .view-all-link{margin-right:19rem}.release-notes-section .release-card{width:80%!important}}.release-notes-section .view-all-link{font-size:1.5rem;font-weight:700;margin-bottom:1.2rem;text-decoration:none;color:#000}.release-notes-section .q2-icon{margin-bottom:3.25rem!important}.release-notes-section .release-card{background:#fff;border-radius:30px;padding:30px;box-shadow:0 10px 30px #00000014;text-align:center;max-width:330px;margin:0 auto;transition:all .3s ease}.release-notes-section .release-card .release-header{margin-bottom:1.5rem}.release-notes-section .release-card .release-header .quarter{font-size:1.2rem;font-weight:700;margin-bottom:.3rem;color:#000}.release-notes-section .release-card .release-header .title{font-size:1.2rem;margin-top:.4rem;margin-bottom:.6rem;color:#000}.release-notes-section .release-card .release-header .desc{font-size:1.35rem;line-height:1.87rem;color:#000}.release-notes-section .release-card .release-icon{width:80px;height:auto;margin:0 auto 2rem;display:block}.release-notes-section .release-card .release-btn{background-color:#000;color:#fff;padding:10px 24px;border-radius:24px;border:none;font-size:1.1rem;font-weight:500;display:inline-flex;align-items:center;gap:10px;transition:background .3s ease;margin-top:10px}.release-notes-section .release-card .release-btn .arrow{font-weight:700;font-size:1.2rem}.release-notes-section .release-card .release-btn:hover{background-color:#000}.release-notes-section .row{--bs-gutter-x: 1rem}.sub-text-extension{max-width:560px}.sub-text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.sub-text-extension .cta-buttons{margin-top:2rem!important}.sub-text-extension .cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.sub-text-extension .cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}.sub-text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.int-title{color:var(--text-color, black);font-size:4rem!important;font-weight:400}.int-text{font-size:1.3rem;font-weight:300}.trial-form-section{padding-bottom:8rem!important}.trial-form-section:before{top:20px;left:0}.trial-form-section:after{top:20px;right:-16px}.nce-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}.nce-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.nce-banner .container{position:relative;z-index:2}.nce-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.nce-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.nce-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.nce-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.nce-banner .text-content .cta-buttons{margin-top:2rem}.nce-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.nce-banner .nce-header{font-weight:500;color:#fff!important;font-size:4.5rem!important}.nce-banner .blue-text{font-weight:100}@media (width <= 991px){.nce-banner .text-content{margin-top:6.5rem;margin-bottom:0;text-align:center;max-width:360px}.nce-banner .text-content h1{margin-bottom:6.5rem!important}.nce-banner .nce-header{font-size:2.5rem!important}.nce-banner .cta-buttons{margin-top:5rem!important;justify-content:center!important}.nce-banner .text-extension{position:absolute;margin:3rem;margin-top:24rem!important}.nce-banner .note{margin-left:8rem!important}.nce-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.nce-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.nce-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.nce-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.nce-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.nce-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.nce-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.nce-banner .image-content .nce-laptop-img{max-width:315px;width:100%;position:relative;z-index:3;left:1rem;top:19rem}}@media (width >= 991px){.nce-banner .text-content{position:absolute;width:760px}.nce-banner .text-extension{max-width:760px;position:absolute;margin-bottom:36rem!important}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}.text-extension{max-width:560px;margin-top:6rem!important}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}@media (width >= 768px) and (width <= 1200px){.image-content .person-integration-img{position:relative;width:320px;margin-bottom:0;bottom:5rem;left:58rem}.image-content .nce-integration-img{top:3rem;right:6rem;position:relative;width:800px!important}}@media (width >= 1200px){.image-content{position:unset!important;height:634px!important}.image-content .person-integration-img{width:500px;position:relative;min-width:420px;margin-bottom:0;bottom:1rem;left:63rem}.image-content .nce-integration-img{top:3rem;right:17rem;position:relative;width:950px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:59rem!important;position:absolute}.sub-text-extension{position:absolute;margin-top:21rem!important;padding:3rem!important}.section-integration{height:850px!important}.vendor-container{padding-left:2rem!important;padding-right:2rem!important}.image-content .person-integration-img{max-width:200px;width:100%;position:relative;z-index:3;left:12rem;top:19.35rem}.image-content .nce-integration-img{max-width:315px;width:100%;position:relative;z-index:3;top:4.5rem}}@media (width >= 991px){.section-outer{padding-bottom:7rem!important}.text-content{margin-bottom:27rem!important}.nce-banner{padding-top:132px!important;padding-bottom:20px!important;overflow:hidden}.nce-banner:before{top:587px!important;left:0}.cloudolive-guide-section{position:relative}.cloudolive-guide-section .integration-fadeout{position:absolute;bottom:0;left:0;width:100%;height:80px;background:linear-gradient(to bottom,#fff0,#f8f9fa);pointer-events:none}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.responsive-social-container{min-width:1580px!important}.nce-vendor-heading{width:1000px!important}.vendor-container{padding-left:19rem!important;max-height:600px}.sub-text-extension{max-width:760px;position:absolute;margin-top:20rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width >= 786px) and (width <= 991px){.nce-banner{background-position:bottom!important}.nce-integration-img{bottom:12.3rem!important;top:unset!important}}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .nce-laptop-img{bottom:5rem;left:40rem;position:relative;width:850px!important}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .nce-laptop-img{bottom:5rem;left:31rem;position:relative;width:850px!important}}@media (width >= 991px){.nce-banner{padding-top:768px;padding-bottom:20px;overflow:hidden}.section-fadeout{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0;position:absolute;top:58rem!important}.nce-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}::ng-deep .vault-card{width:330px!important;height:370px!important}::ng-deep .vault-btn{width:224px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:60rem!important;position:absolute}.pricing-section{height:890px!important}.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}.nce-banner{padding-bottom:15rem!important}}@media (width <= 991px){.sec-container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.outer-section-fadeout{top:62rem!important}}@media (width >= 768px){iframe{width:85%!important;height:375px!important}}@media (width <= 768px){.how-it-works-wrapper{padding:20px 40px}p{font-size:1.7rem!important;line-height:1.7rem!important}.section-row{gap:3rem!important}iframe{width:100%!important}}\n", "::ng-deep .navbar-nav .nav-item .nav-link{color:#fff!important}.bold{font-weight:700}.nce-heading{margin-bottom:2rem}.nce-note{margin-top:1rem;font-size:.85rem;color:#555}.nce-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.Trial4ContactUsComponent, selector: "pw-trial-4-contact-us", inputs: ["subscriptionId", "sourceId", "masterSubscriptionId", "experimentName", "microserviceName"] }, { kind: "component", type: i6.ResourceHeaderComponent, selector: "pw-resource-header" }, { kind: "component", type: i7.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: i6.NoDataComponent, selector: "pw-no-data", inputs: ["message", "description", "withImage"] }, { kind: "directive", type: i8.LazyImgDirective, selector: "img" }, { kind: "component", type: i9.IntegrationTopBannerComponent, selector: "pw-integration-top-banner" }, { kind: "component", type: i10.ResourceNoteCardComponent, selector: "pw-resource-note-card", inputs: ["releaseHeader", "categoryId", "postSlice", "resourceTitle"] }, { kind: "component", type: i11.ResourceCompanyCardComponent, selector: "pw-resource-company-card", inputs: ["header", "data", "vendor"] }, { kind: "pipe", type: i12.TranslocoPipe, name: "transloco" }] }); }
124
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: ResourceIntegrationComponent, selector: "pw-resource-integration", usesInheritance: true, ngImport: i0, template: "<pw-resource-header></pw-resource-header>\n<pw-integration-top-banner></pw-integration-top-banner>\n<div class=\"bg-white\">\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container sec-container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div *ngIf=\"isLoaded && integrationCountDisplay > 0\">\n <h1 class=\"int-title mb-0\">{{ integrationCountDisplay }}+ integrations (& counting)</h1>\n <p class=\"int-text\"> Search the current list of {{companyName}} vendor and distributor integrations below. <br />\n </p>\n <pw-resource-company-card [header]=\"'integrated vendors'\"\n [data]=\"posts\"></pw-resource-company-card>\n </div>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n <div class=\"text-center pt-3\">\n <p class=\"see-span\"> Don\u2019t see what you\u2019re after? <a href=\"/book-a-demo\"\n class=\"int-span team-span\">Speak with our team to request a connection >\n </a>\n </p>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <pw-resource-company-card [header]=\"'integrated Distributors'\"\n *ngIf=\"isLoaded && integrationCountDisplay > 0\"\n [vendor]=\"true\"\n [data]=\"distributerPosts\"></pw-resource-company-card>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\" *ngIf=\"integrations\">\n <div class=\"container\">\n <div class=\"how-it-works-wrapper\">\n <h1 class=\"it-works-title mb-0\">{{integrations?.title || 'How it works'}}</h1>\n <p class=\"pb-20\" [innerHTML]=\"integrations?.description || 'View short example videos to understand how these integrations can work for you:'\"></p>\n <div class=\"row section-row\">\n <ng-container *ngIf=\"integrations?.items?.length > 0; else noIntegrations\">\n <ng-container *ngFor=\"let integration of integrations?.items\">\n <div\n class=\"col-md-6\"\n *ngIf=\"integration?.image_url || integration?.title || integration?.description\"\n >\n <ng-container *ngIf=\"integration?.video_url && integration?.video_url.includes('https'); else noVideo\">\n <div class=\"d-flex justify-content-center\">\n <img\n *ngIf=\"integration?.video_url\"\n [src]=\"integration?.image_url\"\n (click)=\"loadMicrosoftVideo(integration?.video_url)\"\n class=\"how-it-works-img\"\n alt=\"\"\n />\n </div>\n </ng-container>\n\n <ng-template #noVideo>\n <div class=\"d-flex justify-content-center\">\n <div class=\"w-100\">\n <pw-no-data [withImage]=\"true\" [message]=\"'No video found' | transloco\">\n </pw-no-data>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-container>\n </ng-container>\n <ng-template #noIntegrations>\n <div class=\"w-100 text-center\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Integration.NoDataMessage' | transloco\"></pw-no-data>\n </div>\n </ng-template>\n\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <!-- <section class=\"cloudolive-guide-section bg-white py-5 section-outer\"> -->\n <!-- <div class=\"container\">\n <div class=\"row align-items-start\">\n <!-- Left Content -->\n <!-- <div class=\"col-md-6 text-md-start text-center\">\n <h1 class=\"guide-title mb-3\">A guide to implementing CloudOlive in your business</h1>\n <p class=\"guide-subtext\">\n View where CloudOlive sits in your internal technology stack and monthly workflows, and see how easy\n it is to get started.\n </p>\n <p class=\"guide-note mb-4\">View the quick guide now:</p>\n <button class=\"vault-btn\"\n onclick=\"window.open('https://hubspot.com', '_blank')\">View the guide</button>\n </div> -->\n\n <!-- Right Image -->\n <!-- <div class=\"col-md-6 text-center\">\n <img src=\"/assets/img/resource/guide.png\"\n alt=\"Guide\"\n class=\"img-fluid guide-img\" /> -->\n <!-- </div> -->\n <!-- </div> -->\n <!-- </div> -->\n <!-- <div class=\"integration-fadeout\"></div> -->\n <!-- </section> -->\n</div>\n\n<pw-resource-note-card *ngIf=\"resourcePostTag?.tag_category_id\" [categoryId]=\"resourcePostTag?.tag_category_id\" [releaseHeader]=\"true\" [resourceTitle]=\"resourcePostTag?.title\"></pw-resource-note-card>\n\n<pw-trial-4-contact-us></pw-trial-4-contact-us>\n", styles: [".int-span{font-size:3rem;color:#3d8fbe}.team-span{font-size:2rem;color:#3d8fbe;font-weight:100}.see-span{font-size:2rem;font-weight:100}.how-it-works-wrapper .it-works-title{font-size:3rem;margin-bottom:2rem;color:var(--text-color, black);font-weight:200!important;padding-bottom:12px!important}.how-it-works-wrapper .how-it-works-img{width:85%!important;margin:0 auto!important}.how-it-works-wrapper p{padding-top:1rem;font-size:2rem;color:#000;font-weight:100;margin-bottom:4rem}.guide-wrapper{padding:55px 47px 220px}.guide-wrapper .horizontal{position:absolute;left:0;bottom:24%;width:100%}.guide-wrapper .pb-20{padding-bottom:20px}.guide-wrapper .flex{display:flex}.guide-wrapper .guideimg{margin:0 auto}.guide-wrapper .guide-title{font: 500 28px Montserrat-Regular,sans-serif}.guide-wrapper p{font: 400 17px Montserrat-Regular,sans-serif;color:#182527}@media (width >= 768px){.cloudolive-guide-section .vault-btn{width:50%!important}.cloudolive-guide-section .container-section{padding:20px 190px 20px 120px!important}}@media (width <= 768px){.cloudolive-guide-section .container-section{padding:3rem!important}.cloudolive-guide-section .guide-title{font-size:3.25rem!important}.cloudolive-guide-section .vault-btn{width:90%!important;margin-bottom:3rem!important}.cloudolive-guide-section .guide-subtext{padding:2rem;line-height:2rem!important}}.cloudolive-guide-section .guide-title{font-size:3rem;font-weight:200}.cloudolive-guide-section .guide-subtext{font-size:1.7rem;line-height:3rem;color:var(--text-color, black);font-weight:200;margin-bottom:2rem}.cloudolive-guide-section .guide-note{font-size:1.7rem;color:#000;font-weight:100}.cloudolive-guide-section .vault-btn{background:var(--text-color, black);color:#fff;padding:18px 34px;border-radius:30px;font-weight:600;margin-top:1rem!important;font-size:1.7rem;cursor:pointer;transition:background .3s ease;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cloudolive-guide-section .vault-btn:hover{background:#fff;color:var(--text-color, black)!important}.cloudolive-guide-section .guide-img{width:70%!important;height:auto;box-shadow:0 5px 20px #00000026}@media (width >= 768px){.release-notes-section .release-heading{font-size:3rem;font-weight:300}.release-notes-section .view-all-link{margin-right:4rem}.release-notes-section .container-section{padding:20px 120px 20px 80px!important}.release-notes-section .release-section{justify-content:space-between!important}}@media (width <= 768px){.release-notes-section .release-heading{font-size:2.5rem;font-weight:400}.release-notes-section .release-section{justify-content:center!important}.release-notes-section .view-all-link{margin-right:19rem}.release-notes-section .release-card{width:80%!important}}.release-notes-section .view-all-link{font-size:1.5rem;font-weight:700;margin-bottom:1.2rem;text-decoration:none;color:#000}.release-notes-section .q2-icon{margin-bottom:3.25rem!important}.release-notes-section .release-card{background:#fff;border-radius:30px;padding:30px;box-shadow:0 10px 30px #00000014;text-align:center;max-width:330px;margin:0 auto;transition:all .3s ease}.release-notes-section .release-card .release-header{margin-bottom:1.5rem}.release-notes-section .release-card .release-header .quarter{font-size:1.2rem;font-weight:700;margin-bottom:.3rem;color:#000}.release-notes-section .release-card .release-header .title{font-size:1.2rem;margin-top:.4rem;margin-bottom:.6rem;color:#000}.release-notes-section .release-card .release-header .desc{font-size:1.35rem;line-height:1.87rem;color:#000}.release-notes-section .release-card .release-icon{width:80px;height:auto;margin:0 auto 2rem;display:block}.release-notes-section .release-card .release-btn{background-color:#000;color:#fff;padding:10px 24px;border-radius:24px;border:none;font-size:1.1rem;font-weight:500;display:inline-flex;align-items:center;gap:10px;transition:background .3s ease;margin-top:10px}.release-notes-section .release-card .release-btn .arrow{font-weight:700;font-size:1.2rem}.release-notes-section .release-card .release-btn:hover{background-color:#000}.release-notes-section .row{--bs-gutter-x: 1rem}.sub-text-extension{max-width:560px}.sub-text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.sub-text-extension .cta-buttons{margin-top:2rem!important}.sub-text-extension .cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.sub-text-extension .cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}.sub-text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.int-title{color:var(--text-color, black);font-size:4rem!important;font-weight:400}.int-text{font-size:1.3rem;font-weight:300}.trial-form-section{padding-bottom:8rem!important}.trial-form-section:before{top:20px;left:0}.trial-form-section:after{top:20px;right:-16px}.nce-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}.nce-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.nce-banner .container{position:relative;z-index:2}.nce-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.nce-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.nce-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.nce-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.nce-banner .text-content .cta-buttons{margin-top:2rem}.nce-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.nce-banner .nce-header{font-weight:500;color:#fff!important;font-size:4.5rem!important}.nce-banner .blue-text{font-weight:100}@media (width <= 991px){.nce-banner .text-content{margin-top:6.5rem;margin-bottom:0;text-align:center;max-width:360px}.nce-banner .text-content h1{margin-bottom:6.5rem!important}.nce-banner .nce-header{font-size:2.5rem!important}.nce-banner .cta-buttons{margin-top:5rem!important;justify-content:center!important}.nce-banner .text-extension{position:absolute;margin:3rem;margin-top:24rem!important}.nce-banner .note{margin-left:8rem!important}.nce-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.nce-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.nce-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.nce-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.nce-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.nce-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.nce-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.nce-banner .image-content .nce-laptop-img{max-width:315px;width:100%;position:relative;z-index:3;left:1rem;top:19rem}}@media (width >= 991px){.nce-banner .text-content{position:absolute;width:760px}.nce-banner .text-extension{max-width:760px;position:absolute;margin-bottom:36rem!important}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}.text-extension{max-width:560px;margin-top:6rem!important}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}@media (width >= 768px) and (width <= 1200px){.image-content .person-integration-img{position:relative;width:320px;margin-bottom:0;bottom:5rem;left:58rem}.image-content .nce-integration-img{top:3rem;right:6rem;position:relative;width:800px!important}}@media (width >= 1200px){.image-content{position:unset!important;height:634px!important}.image-content .person-integration-img{width:500px;position:relative;min-width:420px;margin-bottom:0;bottom:1rem;left:63rem}.image-content .nce-integration-img{top:3rem;right:17rem;position:relative;width:950px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:59rem!important;position:absolute}.sub-text-extension{position:absolute;margin-top:21rem!important;padding:3rem!important}.section-integration{height:850px!important}.vendor-container{padding-left:2rem!important;padding-right:2rem!important}.image-content .person-integration-img{max-width:200px;width:100%;position:relative;z-index:3;left:12rem;top:19.35rem}.image-content .nce-integration-img{max-width:315px;width:100%;position:relative;z-index:3;top:4.5rem}}@media (width >= 991px){.section-outer{padding-bottom:7rem!important}.text-content{margin-bottom:27rem!important}.nce-banner{padding-top:132px!important;padding-bottom:20px!important;overflow:hidden}.nce-banner:before{top:587px!important;left:0}.cloudolive-guide-section{position:relative}.cloudolive-guide-section .integration-fadeout{position:absolute;bottom:0;left:0;width:100%;height:80px;background:linear-gradient(to bottom,#fff0,#f8f9fa);pointer-events:none}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.responsive-social-container{min-width:1580px!important}.nce-vendor-heading{width:1000px!important}.vendor-container{padding-left:19rem!important;max-height:600px}.sub-text-extension{max-width:760px;position:absolute;margin-top:20rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width >= 786px) and (width <= 991px){.nce-banner{background-position:bottom!important}.nce-integration-img{bottom:12.3rem!important;top:unset!important}}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .nce-laptop-img{bottom:5rem;left:40rem;position:relative;width:850px!important}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .nce-laptop-img{bottom:5rem;left:31rem;position:relative;width:850px!important}}@media (width >= 991px){.nce-banner{padding-top:768px;padding-bottom:20px;overflow:hidden}.section-fadeout{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0;position:absolute;top:58rem!important}.nce-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}::ng-deep .vault-card{width:330px!important;height:370px!important}::ng-deep .vault-btn{width:224px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:60rem!important;position:absolute}.pricing-section{height:890px!important}.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}.nce-banner{padding-bottom:15rem!important}}@media (width <= 991px){.sec-container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.outer-section-fadeout{top:62rem!important}}@media (width >= 768px){iframe{width:85%!important;height:375px!important}}@media (width <= 768px){.how-it-works-wrapper{padding:20px 40px}p{font-size:1.7rem!important;line-height:1.7rem!important}.section-row{gap:3rem!important}iframe{width:100%!important}}\n", "::ng-deep .navbar-nav .nav-item .nav-link{color:#fff!important}.bold{font-weight:700}.nce-heading{margin-bottom:2rem}.nce-note{margin-top:1rem;font-size:.85rem;color:#555}.nce-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.Trial4ContactUsComponent, selector: "pw-trial-4-contact-us", inputs: ["subscriptionId", "sourceId", "masterSubscriptionId", "experimentName", "microserviceName"] }, { kind: "component", type: i6.ResourceHeaderComponent, selector: "pw-resource-header" }, { kind: "component", type: i7.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: i6.NoDataComponent, selector: "pw-no-data", inputs: ["message", "description", "withImage"] }, { kind: "directive", type: i8.LazyImgDirective, selector: "img" }, { kind: "component", type: i9.IntegrationTopBannerComponent, selector: "pw-integration-top-banner" }, { kind: "component", type: i10.ResourceNoteCardComponent, selector: "pw-resource-note-card", inputs: ["releaseHeader", "categoryId", "isReleasePress", "postSlice", "resourceTitle"] }, { kind: "component", type: i11.ResourceCompanyCardComponent, selector: "pw-resource-company-card", inputs: ["header", "data", "vendor"] }, { kind: "pipe", type: i12.TranslocoPipe, name: "transloco" }] }); }
113
125
  }
114
126
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ResourceIntegrationComponent, decorators: [{
115
127
  type: Component,
116
- args: [{ selector: 'pw-resource-integration', template: "<pw-resource-header></pw-resource-header>\n<pw-integration-top-banner></pw-integration-top-banner>\n<div class=\"bg-white\">\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container sec-container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div *ngIf=\"isLoaded && integrationCountDisplay > 0\">\n <h1 class=\"int-title mb-0\">{{ integrationCountDisplay }}+ integrations (& counting)</h1>\n <p class=\"int-text\"> Search the current list of {{companyName}} vendor and distributor integrations below. <br />\n </p>\n <pw-resource-company-card [header]=\"'integrated vendor'\"\n [data]=\"posts\"></pw-resource-company-card>\n </div>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <pw-resource-company-card [header]=\"'integrated Distributors'\"\n *ngIf=\"isLoaded && integrationCountDisplay > 0\"\n [vendor]=\"true\"\n [data]=\"distributerPosts\"></pw-resource-company-card>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n <div class=\"text-center pt-3\">\n <p class=\"see-span\"> Don\u2019t see what you\u2019re after? <a href=\"/book-a-demo\"\n class=\"int-span team-span\">Speak with our team to request a connection >\n </a>\n </p>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"how-it-works-wrapper\">\n <h1 class=\"it-works-title mb-0\">How it works</h1>\n <p class=\"pb-20\">View short example videos to understand how these integrations can work for your MSP:</p>\n <div class=\"row section-row\">\n <div class=\"col-md-6\">\n <div class=\"d-flex justify-content-center\">\n <img src=\"/assets/img/resource/how-it-works1.png\"\n *ngIf=\"!videoDemoLoaded\"\n (click)=\"loadMicrosoftVideo()\"\n class=\"how-it-works-img\"\n alt=\"\" />\n <iframe *ngIf=\"videoDemoLoaded\"\n class=\"embed-responsive-item\"\n [title]=\"videoTitle\"\n [src]=\"sanitizedMicrosoftVideoUrl\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowfullscreen>\n </iframe>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"d-flex justify-content-center\">\n <img src=\"/assets/img/resource/how-it-works2.png\"\n *ngIf=\"!videoWebinarLoaded\"\n (click)=\"loadKeseyaVideo()\"\n class=\"how-it-works-img\"\n alt=\"\" />\n <iframe *ngIf=\"videoWebinarLoaded\"\n class=\"embed-responsive-item\"\n [title]=\"videoTitle\"\n [src]=\"sanitizedKesyaVideoUrl\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowfullscreen>\n </iframe>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"row align-items-start\">\n <!-- Left Content -->\n <div class=\"col-md-6 text-md-start text-center\">\n <h1 class=\"guide-title mb-3\">A guide to implementing CloudOlive in your business</h1>\n <p class=\"guide-subtext\">\n View where CloudOlive sits in your internal technology stack and monthly workflows, and see how easy\n it is to get started.\n </p>\n <p class=\"guide-note mb-4\">View the quick guide now:</p>\n <button class=\"vault-btn\"\n onclick=\"window.open('https://hubspot.com', '_blank')\">View the guide</button>\n </div>\n\n <!-- Right Image -->\n <div class=\"col-md-6 text-center\">\n <img src=\"/assets/img/resource/guide.png\"\n alt=\"Guide\"\n class=\"img-fluid guide-img\" />\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n</div>\n\n<pw-resource-note-card *ngIf=\"resourcePostTag?.tag_category_id\" [categoryId]=\"resourcePostTag?.tag_category_id\" [releaseHeader]=\"true\" [resourceTitle]=\"resourcePostTag?.title\"></pw-resource-note-card>\n\n<pw-trial-4-contact-us></pw-trial-4-contact-us>\n", styles: [".int-span{font-size:3rem;color:#3d8fbe}.team-span{font-size:2rem;color:#3d8fbe;font-weight:100}.see-span{font-size:2rem;font-weight:100}.how-it-works-wrapper .it-works-title{font-size:3rem;margin-bottom:2rem;color:var(--text-color, black);font-weight:200!important;padding-bottom:12px!important}.how-it-works-wrapper .how-it-works-img{width:85%!important;margin:0 auto!important}.how-it-works-wrapper p{padding-top:1rem;font-size:2rem;color:#000;font-weight:100;margin-bottom:4rem}.guide-wrapper{padding:55px 47px 220px}.guide-wrapper .horizontal{position:absolute;left:0;bottom:24%;width:100%}.guide-wrapper .pb-20{padding-bottom:20px}.guide-wrapper .flex{display:flex}.guide-wrapper .guideimg{margin:0 auto}.guide-wrapper .guide-title{font: 500 28px Montserrat-Regular,sans-serif}.guide-wrapper p{font: 400 17px Montserrat-Regular,sans-serif;color:#182527}@media (width >= 768px){.cloudolive-guide-section .vault-btn{width:50%!important}.cloudolive-guide-section .container-section{padding:20px 190px 20px 120px!important}}@media (width <= 768px){.cloudolive-guide-section .container-section{padding:3rem!important}.cloudolive-guide-section .guide-title{font-size:3.25rem!important}.cloudolive-guide-section .vault-btn{width:90%!important;margin-bottom:3rem!important}.cloudolive-guide-section .guide-subtext{padding:2rem;line-height:2rem!important}}.cloudolive-guide-section .guide-title{font-size:3rem;font-weight:200}.cloudolive-guide-section .guide-subtext{font-size:1.7rem;line-height:3rem;color:var(--text-color, black);font-weight:200;margin-bottom:2rem}.cloudolive-guide-section .guide-note{font-size:1.7rem;color:#000;font-weight:100}.cloudolive-guide-section .vault-btn{background:var(--text-color, black);color:#fff;padding:18px 34px;border-radius:30px;font-weight:600;margin-top:1rem!important;font-size:1.7rem;cursor:pointer;transition:background .3s ease;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cloudolive-guide-section .vault-btn:hover{background:#fff;color:var(--text-color, black)!important}.cloudolive-guide-section .guide-img{width:70%!important;height:auto;box-shadow:0 5px 20px #00000026}@media (width >= 768px){.release-notes-section .release-heading{font-size:3rem;font-weight:300}.release-notes-section .view-all-link{margin-right:4rem}.release-notes-section .container-section{padding:20px 120px 20px 80px!important}.release-notes-section .release-section{justify-content:space-between!important}}@media (width <= 768px){.release-notes-section .release-heading{font-size:2.5rem;font-weight:400}.release-notes-section .release-section{justify-content:center!important}.release-notes-section .view-all-link{margin-right:19rem}.release-notes-section .release-card{width:80%!important}}.release-notes-section .view-all-link{font-size:1.5rem;font-weight:700;margin-bottom:1.2rem;text-decoration:none;color:#000}.release-notes-section .q2-icon{margin-bottom:3.25rem!important}.release-notes-section .release-card{background:#fff;border-radius:30px;padding:30px;box-shadow:0 10px 30px #00000014;text-align:center;max-width:330px;margin:0 auto;transition:all .3s ease}.release-notes-section .release-card .release-header{margin-bottom:1.5rem}.release-notes-section .release-card .release-header .quarter{font-size:1.2rem;font-weight:700;margin-bottom:.3rem;color:#000}.release-notes-section .release-card .release-header .title{font-size:1.2rem;margin-top:.4rem;margin-bottom:.6rem;color:#000}.release-notes-section .release-card .release-header .desc{font-size:1.35rem;line-height:1.87rem;color:#000}.release-notes-section .release-card .release-icon{width:80px;height:auto;margin:0 auto 2rem;display:block}.release-notes-section .release-card .release-btn{background-color:#000;color:#fff;padding:10px 24px;border-radius:24px;border:none;font-size:1.1rem;font-weight:500;display:inline-flex;align-items:center;gap:10px;transition:background .3s ease;margin-top:10px}.release-notes-section .release-card .release-btn .arrow{font-weight:700;font-size:1.2rem}.release-notes-section .release-card .release-btn:hover{background-color:#000}.release-notes-section .row{--bs-gutter-x: 1rem}.sub-text-extension{max-width:560px}.sub-text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.sub-text-extension .cta-buttons{margin-top:2rem!important}.sub-text-extension .cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.sub-text-extension .cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}.sub-text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.int-title{color:var(--text-color, black);font-size:4rem!important;font-weight:400}.int-text{font-size:1.3rem;font-weight:300}.trial-form-section{padding-bottom:8rem!important}.trial-form-section:before{top:20px;left:0}.trial-form-section:after{top:20px;right:-16px}.nce-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}.nce-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.nce-banner .container{position:relative;z-index:2}.nce-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.nce-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.nce-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.nce-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.nce-banner .text-content .cta-buttons{margin-top:2rem}.nce-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.nce-banner .nce-header{font-weight:500;color:#fff!important;font-size:4.5rem!important}.nce-banner .blue-text{font-weight:100}@media (width <= 991px){.nce-banner .text-content{margin-top:6.5rem;margin-bottom:0;text-align:center;max-width:360px}.nce-banner .text-content h1{margin-bottom:6.5rem!important}.nce-banner .nce-header{font-size:2.5rem!important}.nce-banner .cta-buttons{margin-top:5rem!important;justify-content:center!important}.nce-banner .text-extension{position:absolute;margin:3rem;margin-top:24rem!important}.nce-banner .note{margin-left:8rem!important}.nce-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.nce-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.nce-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.nce-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.nce-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.nce-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.nce-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.nce-banner .image-content .nce-laptop-img{max-width:315px;width:100%;position:relative;z-index:3;left:1rem;top:19rem}}@media (width >= 991px){.nce-banner .text-content{position:absolute;width:760px}.nce-banner .text-extension{max-width:760px;position:absolute;margin-bottom:36rem!important}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}.text-extension{max-width:560px;margin-top:6rem!important}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}@media (width >= 768px) and (width <= 1200px){.image-content .person-integration-img{position:relative;width:320px;margin-bottom:0;bottom:5rem;left:58rem}.image-content .nce-integration-img{top:3rem;right:6rem;position:relative;width:800px!important}}@media (width >= 1200px){.image-content{position:unset!important;height:634px!important}.image-content .person-integration-img{width:500px;position:relative;min-width:420px;margin-bottom:0;bottom:1rem;left:63rem}.image-content .nce-integration-img{top:3rem;right:17rem;position:relative;width:950px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:59rem!important;position:absolute}.sub-text-extension{position:absolute;margin-top:21rem!important;padding:3rem!important}.section-integration{height:850px!important}.vendor-container{padding-left:2rem!important;padding-right:2rem!important}.image-content .person-integration-img{max-width:200px;width:100%;position:relative;z-index:3;left:12rem;top:19.35rem}.image-content .nce-integration-img{max-width:315px;width:100%;position:relative;z-index:3;top:4.5rem}}@media (width >= 991px){.section-outer{padding-bottom:7rem!important}.text-content{margin-bottom:27rem!important}.nce-banner{padding-top:132px!important;padding-bottom:20px!important;overflow:hidden}.nce-banner:before{top:587px!important;left:0}.cloudolive-guide-section{position:relative}.cloudolive-guide-section .integration-fadeout{position:absolute;bottom:0;left:0;width:100%;height:80px;background:linear-gradient(to bottom,#fff0,#f8f9fa);pointer-events:none}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.responsive-social-container{min-width:1580px!important}.nce-vendor-heading{width:1000px!important}.vendor-container{padding-left:19rem!important;max-height:600px}.sub-text-extension{max-width:760px;position:absolute;margin-top:20rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width >= 786px) and (width <= 991px){.nce-banner{background-position:bottom!important}.nce-integration-img{bottom:12.3rem!important;top:unset!important}}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .nce-laptop-img{bottom:5rem;left:40rem;position:relative;width:850px!important}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .nce-laptop-img{bottom:5rem;left:31rem;position:relative;width:850px!important}}@media (width >= 991px){.nce-banner{padding-top:768px;padding-bottom:20px;overflow:hidden}.section-fadeout{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0;position:absolute;top:58rem!important}.nce-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}::ng-deep .vault-card{width:330px!important;height:370px!important}::ng-deep .vault-btn{width:224px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:60rem!important;position:absolute}.pricing-section{height:890px!important}.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}.nce-banner{padding-bottom:15rem!important}}@media (width <= 991px){.sec-container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.outer-section-fadeout{top:62rem!important}}@media (width >= 768px){iframe{width:85%!important;height:375px!important}}@media (width <= 768px){.how-it-works-wrapper{padding:20px 40px}p{font-size:1.7rem!important;line-height:1.7rem!important}.section-row{gap:3rem!important}iframe{width:100%!important}}\n", "::ng-deep .navbar-nav .nav-item .nav-link{color:#fff!important}.bold{font-weight:700}.nce-heading{margin-bottom:2rem}.nce-note{margin-top:1rem;font-size:.85rem;color:#555}.nce-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}\n"] }]
128
+ args: [{ selector: 'pw-resource-integration', template: "<pw-resource-header></pw-resource-header>\n<pw-integration-top-banner></pw-integration-top-banner>\n<div class=\"bg-white\">\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container sec-container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div *ngIf=\"isLoaded && integrationCountDisplay > 0\">\n <h1 class=\"int-title mb-0\">{{ integrationCountDisplay }}+ integrations (& counting)</h1>\n <p class=\"int-text\"> Search the current list of {{companyName}} vendor and distributor integrations below. <br />\n </p>\n <pw-resource-company-card [header]=\"'integrated vendors'\"\n [data]=\"posts\"></pw-resource-company-card>\n </div>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n <div class=\"text-center pt-3\">\n <p class=\"see-span\"> Don\u2019t see what you\u2019re after? <a href=\"/book-a-demo\"\n class=\"int-span team-span\">Speak with our team to request a connection >\n </a>\n </p>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\">\n <div class=\"container\">\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <pw-resource-company-card [header]=\"'integrated Distributors'\"\n *ngIf=\"isLoaded && integrationCountDisplay > 0\"\n [vendor]=\"true\"\n [data]=\"distributerPosts\"></pw-resource-company-card>\n <div *ngIf=\"integrationCountDisplay === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Resource.NoDataMessage' | transloco\"/>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <section class=\"cloudolive-guide-section bg-white py-5 section-outer\" *ngIf=\"integrations\">\n <div class=\"container\">\n <div class=\"how-it-works-wrapper\">\n <h1 class=\"it-works-title mb-0\">{{integrations?.title || 'How it works'}}</h1>\n <p class=\"pb-20\" [innerHTML]=\"integrations?.description || 'View short example videos to understand how these integrations can work for you:'\"></p>\n <div class=\"row section-row\">\n <ng-container *ngIf=\"integrations?.items?.length > 0; else noIntegrations\">\n <ng-container *ngFor=\"let integration of integrations?.items\">\n <div\n class=\"col-md-6\"\n *ngIf=\"integration?.image_url || integration?.title || integration?.description\"\n >\n <ng-container *ngIf=\"integration?.video_url && integration?.video_url.includes('https'); else noVideo\">\n <div class=\"d-flex justify-content-center\">\n <img\n *ngIf=\"integration?.video_url\"\n [src]=\"integration?.image_url\"\n (click)=\"loadMicrosoftVideo(integration?.video_url)\"\n class=\"how-it-works-img\"\n alt=\"\"\n />\n </div>\n </ng-container>\n\n <ng-template #noVideo>\n <div class=\"d-flex justify-content-center\">\n <div class=\"w-100\">\n <pw-no-data [withImage]=\"true\" [message]=\"'No video found' | transloco\">\n </pw-no-data>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-container>\n </ng-container>\n <ng-template #noIntegrations>\n <div class=\"w-100 text-center\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Integration.NoDataMessage' | transloco\"></pw-no-data>\n </div>\n </ng-template>\n\n </div>\n </div>\n </div>\n <div class=\"integration-fadeout\"></div>\n </section>\n <!-- <section class=\"cloudolive-guide-section bg-white py-5 section-outer\"> -->\n <!-- <div class=\"container\">\n <div class=\"row align-items-start\">\n <!-- Left Content -->\n <!-- <div class=\"col-md-6 text-md-start text-center\">\n <h1 class=\"guide-title mb-3\">A guide to implementing CloudOlive in your business</h1>\n <p class=\"guide-subtext\">\n View where CloudOlive sits in your internal technology stack and monthly workflows, and see how easy\n it is to get started.\n </p>\n <p class=\"guide-note mb-4\">View the quick guide now:</p>\n <button class=\"vault-btn\"\n onclick=\"window.open('https://hubspot.com', '_blank')\">View the guide</button>\n </div> -->\n\n <!-- Right Image -->\n <!-- <div class=\"col-md-6 text-center\">\n <img src=\"/assets/img/resource/guide.png\"\n alt=\"Guide\"\n class=\"img-fluid guide-img\" /> -->\n <!-- </div> -->\n <!-- </div> -->\n <!-- </div> -->\n <!-- <div class=\"integration-fadeout\"></div> -->\n <!-- </section> -->\n</div>\n\n<pw-resource-note-card *ngIf=\"resourcePostTag?.tag_category_id\" [categoryId]=\"resourcePostTag?.tag_category_id\" [releaseHeader]=\"true\" [resourceTitle]=\"resourcePostTag?.title\"></pw-resource-note-card>\n\n<pw-trial-4-contact-us></pw-trial-4-contact-us>\n", styles: [".int-span{font-size:3rem;color:#3d8fbe}.team-span{font-size:2rem;color:#3d8fbe;font-weight:100}.see-span{font-size:2rem;font-weight:100}.how-it-works-wrapper .it-works-title{font-size:3rem;margin-bottom:2rem;color:var(--text-color, black);font-weight:200!important;padding-bottom:12px!important}.how-it-works-wrapper .how-it-works-img{width:85%!important;margin:0 auto!important}.how-it-works-wrapper p{padding-top:1rem;font-size:2rem;color:#000;font-weight:100;margin-bottom:4rem}.guide-wrapper{padding:55px 47px 220px}.guide-wrapper .horizontal{position:absolute;left:0;bottom:24%;width:100%}.guide-wrapper .pb-20{padding-bottom:20px}.guide-wrapper .flex{display:flex}.guide-wrapper .guideimg{margin:0 auto}.guide-wrapper .guide-title{font: 500 28px Montserrat-Regular,sans-serif}.guide-wrapper p{font: 400 17px Montserrat-Regular,sans-serif;color:#182527}@media (width >= 768px){.cloudolive-guide-section .vault-btn{width:50%!important}.cloudolive-guide-section .container-section{padding:20px 190px 20px 120px!important}}@media (width <= 768px){.cloudolive-guide-section .container-section{padding:3rem!important}.cloudolive-guide-section .guide-title{font-size:3.25rem!important}.cloudolive-guide-section .vault-btn{width:90%!important;margin-bottom:3rem!important}.cloudolive-guide-section .guide-subtext{padding:2rem;line-height:2rem!important}}.cloudolive-guide-section .guide-title{font-size:3rem;font-weight:200}.cloudolive-guide-section .guide-subtext{font-size:1.7rem;line-height:3rem;color:var(--text-color, black);font-weight:200;margin-bottom:2rem}.cloudolive-guide-section .guide-note{font-size:1.7rem;color:#000;font-weight:100}.cloudolive-guide-section .vault-btn{background:var(--text-color, black);color:#fff;padding:18px 34px;border-radius:30px;font-weight:600;margin-top:1rem!important;font-size:1.7rem;cursor:pointer;transition:background .3s ease;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cloudolive-guide-section .vault-btn:hover{background:#fff;color:var(--text-color, black)!important}.cloudolive-guide-section .guide-img{width:70%!important;height:auto;box-shadow:0 5px 20px #00000026}@media (width >= 768px){.release-notes-section .release-heading{font-size:3rem;font-weight:300}.release-notes-section .view-all-link{margin-right:4rem}.release-notes-section .container-section{padding:20px 120px 20px 80px!important}.release-notes-section .release-section{justify-content:space-between!important}}@media (width <= 768px){.release-notes-section .release-heading{font-size:2.5rem;font-weight:400}.release-notes-section .release-section{justify-content:center!important}.release-notes-section .view-all-link{margin-right:19rem}.release-notes-section .release-card{width:80%!important}}.release-notes-section .view-all-link{font-size:1.5rem;font-weight:700;margin-bottom:1.2rem;text-decoration:none;color:#000}.release-notes-section .q2-icon{margin-bottom:3.25rem!important}.release-notes-section .release-card{background:#fff;border-radius:30px;padding:30px;box-shadow:0 10px 30px #00000014;text-align:center;max-width:330px;margin:0 auto;transition:all .3s ease}.release-notes-section .release-card .release-header{margin-bottom:1.5rem}.release-notes-section .release-card .release-header .quarter{font-size:1.2rem;font-weight:700;margin-bottom:.3rem;color:#000}.release-notes-section .release-card .release-header .title{font-size:1.2rem;margin-top:.4rem;margin-bottom:.6rem;color:#000}.release-notes-section .release-card .release-header .desc{font-size:1.35rem;line-height:1.87rem;color:#000}.release-notes-section .release-card .release-icon{width:80px;height:auto;margin:0 auto 2rem;display:block}.release-notes-section .release-card .release-btn{background-color:#000;color:#fff;padding:10px 24px;border-radius:24px;border:none;font-size:1.1rem;font-weight:500;display:inline-flex;align-items:center;gap:10px;transition:background .3s ease;margin-top:10px}.release-notes-section .release-card .release-btn .arrow{font-weight:700;font-size:1.2rem}.release-notes-section .release-card .release-btn:hover{background-color:#000}.release-notes-section .row{--bs-gutter-x: 1rem}.sub-text-extension{max-width:560px}.sub-text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.sub-text-extension .cta-buttons{margin-top:2rem!important}.sub-text-extension .cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.sub-text-extension .cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}.sub-text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.int-title{color:var(--text-color, black);font-size:4rem!important;font-weight:400}.int-text{font-size:1.3rem;font-weight:300}.trial-form-section{padding-bottom:8rem!important}.trial-form-section:before{top:20px;left:0}.trial-form-section:after{top:20px;right:-16px}.nce-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}.nce-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.nce-banner .container{position:relative;z-index:2}.nce-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.nce-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.nce-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.nce-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.nce-banner .text-content .cta-buttons{margin-top:2rem}.nce-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.nce-banner .nce-header{font-weight:500;color:#fff!important;font-size:4.5rem!important}.nce-banner .blue-text{font-weight:100}@media (width <= 991px){.nce-banner .text-content{margin-top:6.5rem;margin-bottom:0;text-align:center;max-width:360px}.nce-banner .text-content h1{margin-bottom:6.5rem!important}.nce-banner .nce-header{font-size:2.5rem!important}.nce-banner .cta-buttons{margin-top:5rem!important;justify-content:center!important}.nce-banner .text-extension{position:absolute;margin:3rem;margin-top:24rem!important}.nce-banner .note{margin-left:8rem!important}.nce-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.nce-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.nce-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.nce-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.nce-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.nce-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.nce-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.nce-banner .image-content .nce-laptop-img{max-width:315px;width:100%;position:relative;z-index:3;left:1rem;top:19rem}}@media (width >= 991px){.nce-banner .text-content{position:absolute;width:760px}.nce-banner .text-extension{max-width:760px;position:absolute;margin-bottom:36rem!important}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}.text-extension{max-width:560px;margin-top:6rem!important}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:100;color:var(--text-color);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}@media (width >= 768px) and (width <= 1200px){.image-content .person-integration-img{position:relative;width:320px;margin-bottom:0;bottom:5rem;left:58rem}.image-content .nce-integration-img{top:3rem;right:6rem;position:relative;width:800px!important}}@media (width >= 1200px){.image-content{position:unset!important;height:634px!important}.image-content .person-integration-img{width:500px;position:relative;min-width:420px;margin-bottom:0;bottom:1rem;left:63rem}.image-content .nce-integration-img{top:3rem;right:17rem;position:relative;width:950px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:59rem!important;position:absolute}.sub-text-extension{position:absolute;margin-top:21rem!important;padding:3rem!important}.section-integration{height:850px!important}.vendor-container{padding-left:2rem!important;padding-right:2rem!important}.image-content .person-integration-img{max-width:200px;width:100%;position:relative;z-index:3;left:12rem;top:19.35rem}.image-content .nce-integration-img{max-width:315px;width:100%;position:relative;z-index:3;top:4.5rem}}@media (width >= 991px){.section-outer{padding-bottom:7rem!important}.text-content{margin-bottom:27rem!important}.nce-banner{padding-top:132px!important;padding-bottom:20px!important;overflow:hidden}.nce-banner:before{top:587px!important;left:0}.cloudolive-guide-section{position:relative}.cloudolive-guide-section .integration-fadeout{position:absolute;bottom:0;left:0;width:100%;height:80px;background:linear-gradient(to bottom,#fff0,#f8f9fa);pointer-events:none}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.responsive-social-container{min-width:1580px!important}.nce-vendor-heading{width:1000px!important}.vendor-container{padding-left:19rem!important;max-height:600px}.sub-text-extension{max-width:760px;position:absolute;margin-top:20rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width >= 786px) and (width <= 991px){.nce-banner{background-position:bottom!important}.nce-integration-img{bottom:12.3rem!important;top:unset!important}}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .nce-laptop-img{bottom:5rem;left:40rem;position:relative;width:850px!important}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .nce-laptop-img{bottom:5rem;left:31rem;position:relative;width:850px!important}}@media (width >= 991px){.nce-banner{padding-top:768px;padding-bottom:20px;overflow:hidden}.section-fadeout{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0;position:absolute;top:58rem!important}.nce-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}::ng-deep .vault-card{width:330px!important;height:370px!important}::ng-deep .vault-btn{width:224px!important}}@media (width <= 991px){.mobile-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa);margin-top:60rem!important;position:absolute}.pricing-section{height:890px!important}.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}.nce-banner{padding-bottom:15rem!important}}@media (width <= 991px){.sec-container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.outer-section-fadeout{top:62rem!important}}@media (width >= 768px){iframe{width:85%!important;height:375px!important}}@media (width <= 768px){.how-it-works-wrapper{padding:20px 40px}p{font-size:1.7rem!important;line-height:1.7rem!important}.section-row{gap:3rem!important}iframe{width:100%!important}}\n", "::ng-deep .navbar-nav .nav-item .nav-link{color:#fff!important}.bold{font-weight:700}.nce-heading{margin-bottom:2rem}.nce-note{margin-top:1rem;font-size:.85rem;color:#555}.nce-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}\n"] }]
117
129
  }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i2.ResourceService }, { type: i3.TagService }, { type: i0.Injector }] });
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtaW50ZWdyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9yZXNvdXJjZS1tb2R1bGUvc3JjL2xpYi9wdWJsaWMvY29tcG9uZW50cy9yZXNvdXJjZS1pbnRlZ3JhdGlvbi9yZXNvdXJjZS1pbnRlZ3JhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Jlc291cmNlLW1vZHVsZS9zcmMvbGliL3B1YmxpYy9jb21wb25lbnRzL3Jlc291cmNlLWludGVncmF0aW9uL3Jlc291cmNlLWludGVncmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0sMkJBQTJCLENBQUM7QUFFMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQVU1RCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0JBQWdCO0lBOEI5RCxZQUNxQixTQUF1QixFQUN2QixlQUFnQyxFQUNoQyxVQUFzQixFQUN2QyxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFMQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBaEMzQyxxQkFBZ0IsR0FBRyxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7UUFD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UUFDaEUsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQ2hHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7SUFDbkMsQ0FBQzsrR0F4SVEsNEJBQTRCO21HQUE1Qiw0QkFBNEIsc0ZDakJ6Qyxxd0tBcUhBOzs0RkRwR2EsNEJBQTRCO2tCQVJ4QyxTQUFTOytCQUNJLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFnU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tcGFueURhdGEsIFRPS0VOX0tFWSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcblxuaW1wb3J0IHsgUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcmVzb3VyY2Uuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncHctcmVzb3VyY2UtaW50ZWdyYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yZXNvdXJjZS1pbnRlZ3JhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbXG4gICAgICAgICcuL3Jlc291cmNlLWludGVncmF0aW9uLmNvbXBvbmVudC5zY3NzJyxcbiAgICAgICAgJy4uL3Jlc291cmNlcy9yZXNvdXJjZXMtc2hhcmVkLmNvbXBvbmVudC5zY3NzJ1xuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUmVzb3VyY2VJbnRlZ3JhdGlvbkNvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGRpc3RyaWJ1dG9yc0RhdGEgPSBDb21wYW55RGF0YT8uZGlzdHJpYnV0b3JzRGF0YTtcbiAgICB2ZW5kb3JzRGF0YSA9IENvbXBhbnlEYXRhPy52ZW5kb3JzRGF0YTtcblxuICAgIHRleHRDb2xvciA9IHRoaXMuYXBwQ29uZmlnPy5jb2xvcl9jb2Rlcz8udGV4dDtcblxuICAgIHN1YnNjcmlwdGlvbklkOiBudW1iZXI7XG4gICAgbWFzdGVyU3Vic2NyaXB0aW9uSWQgPSB0aGlzLmFwcENvbmZpZy5tYXN0ZXJfc3Vic2NyaXB0aW9uLnN1YnNjcmlwdGlvbl9pZDtcbiAgICBwb3N0cyA9IFtdO1xuICAgIGRpc3RyaWJ1dGVyUG9zdHMgPSBbXTtcbiAgICB1c2VyTG9nZ2VkSW46IGJvb2xlYW47XG4gICAgYmxvZ1Bvc3RUYWc7XG4gICAgaXNMb2FkZWQgPSBmYWxzZTtcbiAgICByZXNvdXJjZVBvc3RUYWc7XG4gICAgYmxvZ1Bvc3RWZW5kb3JUYWc7XG5cbiAgICByZWxlYXNlTm90ZXNMaW5rID0gJy9yZXNvdXJjZXMvcHJvZHVjdC1yZWxlYXNlLW5vdGVzJztcbiAgICBxMU5vdGVzTGluayA9ICcvcmVzb3VyY2VzL3Byb2R1Y3QtcmVsZWFzZS1xMS0yMDI1JztcbiAgICBxM05vdGVzTGluayA9ICcvcmVzb3VyY2VzL3Byb2R1Y3QtcmVsZWFzZS1xMy0yMDI0JztcbiAgICBxNE5vdGVzTGluayA9ICcvcmVzb3VyY2VzL3Byb2R1Y3QtcmVsZWFzZS1xNC0yMDI0JztcbiAgICBjb21wYW55TmFtZTtcblxuICAgIHZpZGVvV2ViaW5hckxvYWRlZCA9IGZhbHNlO1xuICAgIHZpZGVvRGVtb0xvYWRlZCA9IGZhbHNlO1xuICAgIHlvdXR1YmVWaWRlb0lkID0gJ1I3VmsyMTl6YmhBJztcbiAgICB2aWRlb1RpdGxlID0gJ0Nsb3VkT2xpdmUgT3ZlcnZpZXcnO1xuICAgIHNhbml0aXplZE1pY3Jvc29mdFZpZGVvVXJsOiBTYWZlUmVzb3VyY2VVcmw7XG4gICAgc2FuaXRpemVkS2VzeWFWaWRlb1VybDogU2FmZVJlc291cmNlVXJsO1xuICAgIGludGVncmF0aW9uQ291bnREaXNwbGF5OiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZVNlcnZpY2U6IFJlc291cmNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0YWdTZXJ2aWNlOiBUYWdTZXJ2aWNlLFxuICAgICAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgICApIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmNvbXBhbnlOYW1lID0gdGhpcy5hcHBDb25maWcuY29tcGFueS5uYW1lO1xuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmFwcENvbmZpZyk7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS10ZXh0LWNvbG9yJywgdGhpcy50ZXh0Q29sb3IpO1xuICAgICAgICB0aGlzLmdldFVzZXJTdWJzY3JpcHRpb25JZCgpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gcmVzcG9uc2U7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtJChUT0tFTl9LRVkpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy51c2VyTG9nZ2VkSW4gPSAhIXJlcztcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXJMb2dnZWRJbikge1xuICAgICAgICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0kKCdwcm9kdWN0Jykuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSByZXMgPyBKU09OLnBhcnNlKHJlcykgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gZGF0YT8uc3Vic2NyaXB0aW9uSWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMuc3Vic2NyaXB0aW9uSWQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5nZXRQb3N0VGFncygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBvc3RUYWdzKCkge1xuICAgICAgICB0aGlzLnRhZ1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRUYWdzQnlUeXBlKCdwb3N0X2NhdGVnb3JpZXMnLCB7fSwgdGhpcy5zdWJzY3JpcHRpb25JZCB8fCB0aGlzLm1hc3RlclN1YnNjcmlwdGlvbklkKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNvdXJjZVBvc3RUYWcgPSByZXNwb25zZS50YWdzLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgIHRhZyA9PiB0YWcubmFtZSA9PT0gJ1Byb2R1Y3QgUmVsZWFzZSBOb3RlcydcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuYmxvZ1Bvc3RUYWcgPSByZXNwb25zZS50YWdzLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgIHRhZyA9PiB0YWcubmFtZSA9PT0gJ0ludGVncmF0ZWQgRGlzdHJpYnV0b3JzJ1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgdGhpcy5ibG9nUG9zdFZlbmRvclRhZyA9IHJlc3BvbnNlLnRhZ3MuZmluZChcbiAgICAgICAgICAgICAgICAgICAgdGFnID0+IHRhZy5uYW1lID09PSAnSW50ZWdyYXRlZCBWZW5kb3JzJ1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRQb3N0cygxLCAxMDApO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0VmVuZG9yUG9zdHMoMSwgMTAwKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldFBvc3RzKHBhZ2U6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcikge1xuICAgICAgICB0aGlzLnJlc291cmNlU2VydmljZVxuICAgICAgICAgICAgLmdldFB1YmxpY1Bvc3RzKFxuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uSWQgfHwgdGhpcy5tYXN0ZXJTdWJzY3JpcHRpb25JZCxcbiAgICAgICAgICAgICAgICBwYWdlLFxuICAgICAgICAgICAgICAgIHBhZ2VTaXplLFxuICAgICAgICAgICAgICAgICcnLFxuICAgICAgICAgICAgICAgIHRoaXMuYmxvZ1Bvc3RWZW5kb3JUYWc/LnRhZ19jYXRlZ29yeV9pZFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2cocmVzcG9uc2UucG9zdHMpO1xuICAgICAgICAgICAgICAgIHRoaXMucG9zdHMgPSByZXNwb25zZS5wb3N0c1xuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHBvc3QgPT4gcG9zdC5zaG93Y2FzZSA9PT0gdHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgLnNvcnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoYSwgYikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgRGF0ZShiLnB1Ymxpc2hlZF9hdCkuZ2V0VGltZSgpIC0gbmV3IERhdGUoYS5wdWJsaXNoZWRfYXQpLmdldFRpbWUoKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0VmVuZG9yUG9zdHMocGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMucmVzb3VyY2VTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0UHVibGljUG9zdHMoXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25JZCB8fCB0aGlzLm1hc3RlclN1YnNjcmlwdGlvbklkLFxuICAgICAgICAgICAgICAgIHBhZ2UsXG4gICAgICAgICAgICAgICAgcGFnZVNpemUsXG4gICAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAgICAgdGhpcy5ibG9nUG9zdFRhZz8udGFnX2NhdGVnb3J5X2lkXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3RyaWJ1dGVyUG9zdHMgPSByZXNwb25zZT8ucG9zdHNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihwb3N0ID0+IHBvc3Quc2hvd2Nhc2UgPT09IHRydWUpXG4gICAgICAgICAgICAgICAgICAgIC5zb3J0KFxuICAgICAgICAgICAgICAgICAgICAgICAgKGEsIGIpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IERhdGUoYi5wdWJsaXNoZWRfYXQpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGEucHVibGlzaGVkX2F0KS5nZXRUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb3VudCA9IHRoaXMucG9zdHMubGVuZ3RoICsgdGhpcy5kaXN0cmlidXRlclBvc3RzLmxlbmd0aDtcbiAgICAgICAgICAgICAgICB0aGlzLmludGVncmF0aW9uQ291bnREaXNwbGF5ID0gTWF0aC5jZWlsKGNvdW50IC8gMTApICogMTA7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmFkZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBsb2FkTWljcm9zb2Z0VmlkZW8oKSB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBgaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJHt0aGlzLnlvdXR1YmVWaWRlb0lkfT9hdXRvcGxheT0xYDtcbiAgICAgICAgLy8gYmFzZVVybCBpcyBhIHRydXN0ZWQgaW50ZXJuYWwgc291cmNlIChlLmcuIFlvdVR1YmUgZW1iZWQgVVJMKVxuICAgICAgICB0aGlzLnNhbml0aXplZE1pY3Jvc29mdFZpZGVvVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKGJhc2VVcmwpOyAvLyBOT1NPTkFSXG4gICAgICAgIHRoaXMudmlkZW9EZW1vTG9hZGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBsb2FkS2VzZXlhVmlkZW8oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBgaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJHt0aGlzLnlvdXR1YmVWaWRlb0lkfT9hdXRvcGxheT0xYDtcbiAgICAgICAgLy8gYmFzZVVybCBpcyBhIHRydXN0ZWQgaW50ZXJuYWwgc291cmNlIChlLmcuIFlvdVR1YmUgZW1iZWQgVVJMKVxuICAgICAgICB0aGlzLnNhbml0aXplZEtlc3lhVmlkZW9VcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoYmFzZVVybCk7IC8vIE5PU09OQVJcbiAgICAgICAgdGhpcy52aWRlb1dlYmluYXJMb2FkZWQgPSB0cnVlO1xuICAgIH1cbn1cbiIsIjxwdy1yZXNvdXJjZS1oZWFkZXI+PC9wdy1yZXNvdXJjZS1oZWFkZXI+XG48cHctaW50ZWdyYXRpb24tdG9wLWJhbm5lcj48L3B3LWludGVncmF0aW9uLXRvcC1iYW5uZXI+XG48ZGl2IGNsYXNzPVwiYmctd2hpdGVcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJjbG91ZG9saXZlLWd1aWRlLXNlY3Rpb24gYmctd2hpdGUgcHktNSBzZWN0aW9uLW91dGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBzZWMtY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiXG4gICAgICAgICpuZ0lmPVwiIWlzTG9hZGVkXCI+XG4gICAgICAgIDxwLXByb2dyZXNzU3Bpbm5lciBzdHJva2VXaWR0aD1cIjJcIj4gPC9wLXByb2dyZXNzU3Bpbm5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAgKm5nSWY9XCJpc0xvYWRlZCAmJiBpbnRlZ3JhdGlvbkNvdW50RGlzcGxheSA+IDBcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiaW50LXRpdGxlIG1iLTBcIj57eyBpbnRlZ3JhdGlvbkNvdW50RGlzcGxheSB9fSsgaW50ZWdyYXRpb25zICgmIGNvdW50aW5nKTwvaDE+XG4gICAgICAgIDxwIGNsYXNzPVwiaW50LXRleHRcIj4gU2VhcmNoIHRoZSBjdXJyZW50IGxpc3Qgb2Yge3tjb21wYW55TmFtZX19IHZlbmRvciBhbmQgZGlzdHJpYnV0b3IgaW50ZWdyYXRpb25zIGJlbG93LiA8YnIgLz5cbiAgICAgICAgPC9wPlxuICAgICAgICA8cHctcmVzb3VyY2UtY29tcGFueS1jYXJkIFtoZWFkZXJdPVwiJ2ludGVncmF0ZWQgdmVuZG9yJ1wiXG4gICAgICAgICAgW2RhdGFdPVwicG9zdHNcIj48L3B3LXJlc291cmNlLWNvbXBhbnktY2FyZD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImludGVncmF0aW9uQ291bnREaXNwbGF5ID09PSAwICYmIGlzTG9hZGVkXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidSZXNvdXJjZS5Ob0RhdGFNZXNzYWdlJyB8IHRyYW5zbG9jb1wiLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpbnRlZ3JhdGlvbi1mYWRlb3V0XCI+PC9kaXY+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJjbG91ZG9saXZlLWd1aWRlLXNlY3Rpb24gYmctd2hpdGUgcHktNSBzZWN0aW9uLW91dGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInctMTAwIHRleHQtY2VudGVyIG10LTNcIlxuICAgICAgKm5nSWY9XCIhaXNMb2FkZWRcIj5cbiAgICAgIDxwLXByb2dyZXNzU3Bpbm5lciBzdHJva2VXaWR0aD1cIjJcIj4gPC9wLXByb2dyZXNzU3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgICAgIDxwdy1yZXNvdXJjZS1jb21wYW55LWNhcmQgW2hlYWRlcl09XCInaW50ZWdyYXRlZCBEaXN0cmlidXRvcnMnXCJcbiAgICAgICAqbmdJZj1cImlzTG9hZGVkICYmIGludGVncmF0aW9uQ291bnREaXNwbGF5ID4gMFwiXG4gICAgICAgIFt2ZW5kb3JdPVwidHJ1ZVwiXG4gICAgICAgIFtkYXRhXT1cImRpc3RyaWJ1dGVyUG9zdHNcIj48L3B3LXJlc291cmNlLWNvbXBhbnktY2FyZD5cbiAgICAgICAgPGRpdiAqbmdJZj1cImludGVncmF0aW9uQ291bnREaXNwbGF5ID09PSAwICYmIGlzTG9hZGVkXCI+XG4gICAgICAgICAgPHB3LW5vLWRhdGEgW3dpdGhJbWFnZV09XCJ0cnVlXCIgW21lc3NhZ2VdPVwiJ1Jlc291cmNlLk5vRGF0YU1lc3NhZ2UnIHwgdHJhbnNsb2NvXCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBwdC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwic2VlLXNwYW5cIj4gRG9u4oCZdCBzZWUgd2hhdCB5b3XigJlyZSBhZnRlcj8gPGEgaHJlZj1cIi9ib29rLWEtZGVtb1wiXG4gICAgICAgICAgICBjbGFzcz1cImludC1zcGFuIHRlYW0tc3BhblwiPlNwZWFrIHdpdGggb3VyIHRlYW0gdG8gcmVxdWVzdCBhIGNvbm5lY3Rpb24gPlxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImludGVncmF0aW9uLWZhZGVvdXRcIj48L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbiBjbGFzcz1cImNsb3Vkb2xpdmUtZ3VpZGUtc2VjdGlvbiBiZy13aGl0ZSBweS01IHNlY3Rpb24tb3V0ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaG93LWl0LXdvcmtzLXdyYXBwZXJcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiaXQtd29ya3MtdGl0bGUgbWItMFwiPkhvdyBpdCB3b3JrczwvaDE+XG4gICAgICAgIDxwIGNsYXNzPVwicGItMjBcIj5WaWV3IHNob3J0IGV4YW1wbGUgdmlkZW9zIHRvIHVuZGVyc3RhbmQgaG93IHRoZXNlIGludGVncmF0aW9ucyBjYW4gd29yayBmb3IgeW91ciBNU1A6PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHNlY3Rpb24tcm93XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGltZyBzcmM9XCIvYXNzZXRzL2ltZy9yZXNvdXJjZS9ob3ctaXQtd29ya3MxLnBuZ1wiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhdmlkZW9EZW1vTG9hZGVkXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwibG9hZE1pY3Jvc29mdFZpZGVvKClcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaG93LWl0LXdvcmtzLWltZ1wiXG4gICAgICAgICAgICAgICAgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgPGlmcmFtZSAqbmdJZj1cInZpZGVvRGVtb0xvYWRlZFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJlbWJlZC1yZXNwb25zaXZlLWl0ZW1cIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2aWRlb1RpdGxlXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNhbml0aXplZE1pY3Jvc29mdFZpZGVvVXJsXCJcbiAgICAgICAgICAgICAgICBhbGxvdz1cImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmVcIlxuICAgICAgICAgICAgICAgIGFsbG93ZnVsbHNjcmVlbj5cbiAgICAgICAgICAgICAgPC9pZnJhbWU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICAgICAgICA8aW1nIHNyYz1cIi9hc3NldHMvaW1nL3Jlc291cmNlL2hvdy1pdC13b3JrczIucG5nXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiF2aWRlb1dlYmluYXJMb2FkZWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJsb2FkS2VzZXlhVmlkZW8oKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJob3ctaXQtd29ya3MtaW1nXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCJcIiAvPlxuICAgICAgICAgICAgICA8aWZyYW1lICpuZ0lmPVwidmlkZW9XZWJpbmFyTG9hZGVkXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImVtYmVkLXJlc3BvbnNpdmUtaXRlbVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cInZpZGVvVGl0bGVcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic2FuaXRpemVkS2VzeWFWaWRlb1VybFwiXG4gICAgICAgICAgICAgICAgYWxsb3c9XCJhY2NlbGVyb21ldGVyOyBhdXRvcGxheTsgY2xpcGJvYXJkLXdyaXRlOyBlbmNyeXB0ZWQtbWVkaWE7IGd5cm9zY29wZTsgcGljdHVyZS1pbi1waWN0dXJlXCJcbiAgICAgICAgICAgICAgICBhbGxvd2Z1bGxzY3JlZW4+XG4gICAgICAgICAgICAgIDwvaWZyYW1lPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImludGVncmF0aW9uLWZhZGVvdXRcIj48L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbiBjbGFzcz1cImNsb3Vkb2xpdmUtZ3VpZGUtc2VjdGlvbiBiZy13aGl0ZSBweS01IHNlY3Rpb24tb3V0ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93IGFsaWduLWl0ZW1zLXN0YXJ0XCI+XG4gICAgICAgIDwhLS0gTGVmdCBDb250ZW50IC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgdGV4dC1tZC1zdGFydCB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgIDxoMSBjbGFzcz1cImd1aWRlLXRpdGxlIG1iLTNcIj5BIGd1aWRlIHRvIGltcGxlbWVudGluZyBDbG91ZE9saXZlIGluIHlvdXIgYnVzaW5lc3M8L2gxPlxuICAgICAgICAgIDxwIGNsYXNzPVwiZ3VpZGUtc3VidGV4dFwiPlxuICAgICAgICAgICAgVmlldyB3aGVyZSBDbG91ZE9saXZlIHNpdHMgaW4geW91ciBpbnRlcm5hbCB0ZWNobm9sb2d5IHN0YWNrIGFuZCBtb250aGx5IHdvcmtmbG93cywgYW5kIHNlZSBob3cgZWFzeVxuICAgICAgICAgICAgaXQgaXMgdG8gZ2V0IHN0YXJ0ZWQuXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwIGNsYXNzPVwiZ3VpZGUtbm90ZSBtYi00XCI+VmlldyB0aGUgcXVpY2sgZ3VpZGUgbm93OjwvcD5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidmF1bHQtYnRuXCJcbiAgICAgICAgICAgIG9uY2xpY2s9XCJ3aW5kb3cub3BlbignaHR0cHM6Ly9odWJzcG90LmNvbScsICdfYmxhbmsnKVwiPlZpZXcgdGhlIGd1aWRlPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gUmlnaHQgSW1hZ2UgLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9pbWcvcmVzb3VyY2UvZ3VpZGUucG5nXCJcbiAgICAgICAgICAgIGFsdD1cIkd1aWRlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW1nLWZsdWlkIGd1aWRlLWltZ1wiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImludGVncmF0aW9uLWZhZGVvdXRcIj48L2Rpdj5cbiAgPC9zZWN0aW9uPlxuPC9kaXY+XG5cbjxwdy1yZXNvdXJjZS1ub3RlLWNhcmQgKm5nSWY9XCJyZXNvdXJjZVBvc3RUYWc/LnRhZ19jYXRlZ29yeV9pZFwiIFtjYXRlZ29yeUlkXT1cInJlc291cmNlUG9zdFRhZz8udGFnX2NhdGVnb3J5X2lkXCIgW3JlbGVhc2VIZWFkZXJdPVwidHJ1ZVwiIFtyZXNvdXJjZVRpdGxlXT1cInJlc291cmNlUG9zdFRhZz8udGl0bGVcIj48L3B3LXJlc291cmNlLW5vdGUtY2FyZD5cblxuPHB3LXRyaWFsLTQtY29udGFjdC11cz48L3B3LXRyaWFsLTQtY29udGFjdC11cz5cbiJdfQ==
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtaW50ZWdyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9yZXNvdXJjZS1tb2R1bGUvc3JjL2xpYi9wdWJsaWMvY29tcG9uZW50cy9yZXNvdXJjZS1pbnRlZ3JhdGlvbi9yZXNvdXJjZS1pbnRlZ3JhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Jlc291cmNlLW1vZHVsZS9zcmMvbGliL3B1YmxpYy9jb21wb25lbnRzL3Jlc291cmNlLWludGVncmF0aW9uL3Jlc291cmNlLWludGVncmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0sMkJBQTJCLENBQUM7QUFFMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQVU1RCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0JBQWdCO0lBa0M5RCxZQUNxQixTQUF1QixFQUN2QixlQUFnQyxFQUNoQyxVQUFzQixFQUN2QyxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFMQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBcEMzQyxxQkFBZ0IsR0FBRyxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7UUFD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QUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FDOUUsQ0FBQztZQUNOLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7WUFDL0QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUM5RCxDQUFDLENBQUM7YUFDRCxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsUUFBUTtRQUN2QixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsZUFBZTtRQUNYLE1BQU0sT0FBTyxHQUFHLGlDQUFpQyxJQUFJLENBQUMsY0FBYyxhQUFhLENBQUM7UUFDbEYsZ0VBQWdFO1FBQ2hFLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUNoRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO0lBQ25DLENBQUM7K0dBOUpRLDRCQUE0QjttR0FBNUIsNEJBQTRCLHNGQ2pCekMsMmhMQXdIQTs7NEZEdkdhLDRCQUE0QjtrQkFSeEMsU0FBUzsrQkFDSSx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IFRhZ1NlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXNlcnZpY2VzJztcbmltcG9ydCB7IENvbXBhbnlEYXRhLCBUT0tFTl9LRVkgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXV0aWxpdGllcyc7XG5cbmltcG9ydCB7IFJlc291cmNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Jlc291cmNlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXJlc291cmNlLWludGVncmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcmVzb3VyY2UtaW50ZWdyYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogW1xuICAgICAgICAnLi9yZXNvdXJjZS1pbnRlZ3JhdGlvbi5jb21wb25lbnQuc2NzcycsXG4gICAgICAgICcuLi9yZXNvdXJjZXMvcmVzb3VyY2VzLXNoYXJlZC5jb21wb25lbnQuc2NzcydcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJlc291cmNlSW50ZWdyYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBkaXN0cmlidXRvcnNEYXRhID0gQ29tcGFueURhdGE/LmRpc3RyaWJ1dG9yc0RhdGE7XG4gICAgdmVuZG9yc0RhdGEgPSBDb21wYW55RGF0YT8udmVuZG9yc0RhdGE7XG5cbiAgICB0ZXh0Q29sb3IgPSB0aGlzLmFwcENvbmZpZz8uY29sb3JfY29kZXM/LnRleHQ7XG5cbiAgICBzdWJzY3JpcHRpb25JZDogbnVtYmVyO1xuICAgIG1hc3RlclN1YnNjcmlwdGlvbklkID0gdGhpcy5hcHBDb25maWcubWFzdGVyX3N1YnNjcmlwdGlvbi5zdWJzY3JpcHRpb25faWQ7XG4gICAgcG9zdHMgPSBbXTtcbiAgICBkaXN0cmlidXRlclBvc3RzID0gW107XG4gICAgdXNlckxvZ2dlZEluOiBib29sZWFuO1xuICAgIGJsb2dQb3N0VGFnO1xuICAgIGlzTG9hZGVkID0gZmFsc2U7XG4gICAgcmVzb3VyY2VQb3N0VGFnO1xuICAgIGJsb2dQb3N0VmVuZG9yVGFnO1xuXG4gICAgaW50ZWdyYXRpb25zID0gdGhpcy5hcHBDb25maWc/LnBhZ2VzX2NvbmZpZz8uaW50ZWdyYXRpb25zO1xuXG4gICAgcmVsZWFzZU5vdGVzTGluayA9ICcvcmVzb3VyY2VzL3Byb2R1Y3QtcmVsZWFzZS1ub3Rlcyc7XG4gICAgcTFOb3Rlc0xpbmsgPSAnL3Jlc291cmNlcy9wcm9kdWN0LXJlbGVhc2UtcTEtMjAyNSc7XG4gICAgcTNOb3Rlc0xpbmsgPSAnL3Jlc291cmNlcy9wcm9kdWN0LXJlbGVhc2UtcTMtMjAyNCc7XG4gICAgcTROb3Rlc0xpbmsgPSAnL3Jlc291cmNlcy9wcm9kdWN0LXJlbGVhc2UtcTQtMjAyNCc7XG4gICAgY29tcGFueU5hbWU7XG5cbiAgICB2aWRlb1dlYmluYXJMb2FkZWQgPSBmYWxzZTtcbiAgICB2aWRlb0RlbW9Mb2FkZWQgPSBmYWxzZTtcbiAgICB5b3V0dWJlVmlkZW9JZCA9ICdSN1ZrMjE5emJoQSc7XG4gICAgdmlkZW9UaXRsZSA9ICdDbG91ZE9saXZlIE92ZXJ2aWV3JztcbiAgICBzYW5pdGl6ZWRNaWNyb3NvZnRWaWRlb1VybDogU2FmZVJlc291cmNlVXJsO1xuICAgIHNhbml0aXplZEtlc3lhVmlkZW9Vcmw6IFNhZmVSZXNvdXJjZVVybDtcbiAgICBpbnRlZ3JhdGlvbkNvdW50RGlzcGxheTogbnVtYmVyO1xuICAgIGNvbnRhY3RVc1VybCA9IHRoaXMuYXBwQ29uZmlnPy5wYWdlc19jb25maWc/LmNvbnRhY3RfdXM7XG4gICAgdGFnQ2F0ZWdvcnk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZVNlcnZpY2U6IFJlc291cmNlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0YWdTZXJ2aWNlOiBUYWdTZXJ2aWNlLFxuICAgICAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgICApIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBjb25zb2xlLmxvZygnSW4gdGhpcycpO1xuICAgICAgICB0aGlzLmNvbXBhbnlOYW1lID0gdGhpcy5hcHBDb25maWcuY29tcGFueS5uYW1lO1xuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmFwcENvbmZpZyk7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS10ZXh0LWNvbG9yJywgdGhpcy50ZXh0Q29sb3IpO1xuICAgICAgICB0aGlzLmdldFVzZXJTdWJzY3JpcHRpb25JZCgpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gcmVzcG9uc2U7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtJChUT0tFTl9LRVkpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy51c2VyTG9nZ2VkSW4gPSAhIXJlcztcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXJMb2dnZWRJbikge1xuICAgICAgICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0kKCdwcm9kdWN0Jykuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSByZXMgPyBKU09OLnBhcnNlKHJlcykgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gZGF0YT8uc3Vic2NyaXB0aW9uSWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMuc3Vic2NyaXB0aW9uSWQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5nZXRUYWdzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VGFncygpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnRhZ1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRBbGxUYWdDYXRlZ29yaWVzKFxuICAgICAgICAgICAgICAgIHsgc2VhcmNoOiAnSW50ZWdyYXRpb25zJyB9LFxuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uSWQgfHwgdGhpcy5tYXN0ZXJTdWJzY3JpcHRpb25JZFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50YWdDYXRlZ29yeSA9IHJlc3BvbnNlLnRhZ19jYXRlZ29yaWVzWzBdO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdnZXRUYWdzJywgdGhpcy50YWdDYXRlZ29yeSk7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRQb3N0VGFncygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQb3N0VGFncygpIHtcbiAgICAgICAgdGhpcy50YWdTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0VGFnc0J5VHlwZSgncG9zdF9jYXRlZ29yaWVzJywge30sIHRoaXMuc3Vic2NyaXB0aW9uSWQgfHwgdGhpcy5tYXN0ZXJTdWJzY3JpcHRpb25JZClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVzb3VyY2VQb3N0VGFnID0gcmVzcG9uc2UudGFncy5maW5kKFxuICAgICAgICAgICAgICAgICAgICB0YWcgPT4gdGFnLm5hbWUgPT09ICdQcm9kdWN0IFJlbGVhc2UgTm90ZXMnXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJsb2dQb3N0VGFnID0gcmVzcG9uc2UudGFncy5maW5kKFxuICAgICAgICAgICAgICAgICAgICB0YWcgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRhZy5uYW1lID09PSAnSW50ZWdyYXRlZCBEaXN0cmlidXRvcnMnICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWcudGFnX2NhdGVnb3J5X2lkID09PSB0aGlzLnRhZ0NhdGVnb3J5Py5pZFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgdGhpcy5ibG9nUG9zdFZlbmRvclRhZyA9IHJlc3BvbnNlLnRhZ3MuZmluZChcbiAgICAgICAgICAgICAgICAgICAgdGFnID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0YWcubmFtZSA9PT0gJ0ludGVncmF0ZWQgVmVuZG9ycycgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhZy50YWdfY2F0ZWdvcnlfaWQgPT09IHRoaXMudGFnQ2F0ZWdvcnk/LmlkXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFBvc3RzKDEsIDEwMCk7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRWZW5kb3JQb3N0cygxLCAxMDApO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0UG9zdHMocGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMucmVzb3VyY2VTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0UHVibGljUG9zdHMoXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25JZCB8fCB0aGlzLm1hc3RlclN1YnNjcmlwdGlvbklkLFxuICAgICAgICAgICAgICAgIHBhZ2UsXG4gICAgICAgICAgICAgICAgcGFnZVNpemUsXG4gICAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAgICAgdGhpcy5ibG9nUG9zdFZlbmRvclRhZz8uaWRcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlc3BvbnNlLnBvc3RzKTtcbiAgICAgICAgICAgICAgICB0aGlzLnBvc3RzID0gcmVzcG9uc2UucG9zdHNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihwb3N0ID0+IHBvc3Quc2hvd2Nhc2UgPT09IHRydWUpXG4gICAgICAgICAgICAgICAgICAgIC5zb3J0KFxuICAgICAgICAgICAgICAgICAgICAgICAgKGEsIGIpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IERhdGUoYi5wdWJsaXNoZWRfYXQpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGEucHVibGlzaGVkX2F0KS5nZXRUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldFZlbmRvclBvc3RzKHBhZ2U6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcikge1xuICAgICAgICB0aGlzLnJlc291cmNlU2VydmljZVxuICAgICAgICAgICAgLmdldFB1YmxpY1Bvc3RzKFxuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uSWQgfHwgdGhpcy5tYXN0ZXJTdWJzY3JpcHRpb25JZCxcbiAgICAgICAgICAgICAgICBwYWdlLFxuICAgICAgICAgICAgICAgIHBhZ2VTaXplLFxuICAgICAgICAgICAgICAgICcnLFxuICAgICAgICAgICAgICAgICcnLFxuICAgICAgICAgICAgICAgIHRoaXMuYmxvZ1Bvc3RUYWc/LmlkXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3RyaWJ1dGVyUG9zdHMgPSByZXNwb25zZT8ucG9zdHNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihwb3N0ID0+IHBvc3Quc2hvd2Nhc2UgPT09IHRydWUpXG4gICAgICAgICAgICAgICAgICAgIC5zb3J0KFxuICAgICAgICAgICAgICAgICAgICAgICAgKGEsIGIpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IERhdGUoYi5wdWJsaXNoZWRfYXQpLmdldFRpbWUoKSAtIG5ldyBEYXRlKGEucHVibGlzaGVkX2F0KS5nZXRUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb3VudCA9IHRoaXMucG9zdHMubGVuZ3RoICsgdGhpcy5kaXN0cmlidXRlclBvc3RzLmxlbmd0aDtcbiAgICAgICAgICAgICAgICB0aGlzLmludGVncmF0aW9uQ291bnREaXNwbGF5ID0gTWF0aC5jZWlsKGNvdW50IC8gMTApICogMTA7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmFkZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBsb2FkTWljcm9zb2Z0VmlkZW8odmlkZW9VcmwpIHtcbiAgICAgICAgd2luZG93Lm9wZW4odmlkZW9VcmwsICdfYmxhbmsnKTtcbiAgICB9XG5cbiAgICBsb2FkS2VzZXlhVmlkZW8oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSBgaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJHt0aGlzLnlvdXR1YmVWaWRlb0lkfT9hdXRvcGxheT0xYDtcbiAgICAgICAgLy8gYmFzZVVybCBpcyBhIHRydXN0ZWQgaW50ZXJuYWwgc291cmNlIChlLmcuIFlvdVR1YmUgZW1iZWQgVVJMKVxuICAgICAgICB0aGlzLnNhbml0aXplZEtlc3lhVmlkZW9VcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoYmFzZVVybCk7IC8vIE5PU09OQVJcbiAgICAgICAgdGhpcy52aWRlb1dlYmluYXJMb2FkZWQgPSB0cnVlO1xuICAgIH1cbn1cbiIsIjxwdy1yZXNvdXJjZS1oZWFkZXI+PC9wdy1yZXNvdXJjZS1oZWFkZXI+XG48cHctaW50ZWdyYXRpb24tdG9wLWJhbm5lcj48L3B3LWludGVncmF0aW9uLXRvcC1iYW5uZXI+XG48ZGl2IGNsYXNzPVwiYmctd2hpdGVcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJjbG91ZG9saXZlLWd1aWRlLXNlY3Rpb24gYmctd2hpdGUgcHktNSBzZWN0aW9uLW91dGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBzZWMtY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiXG4gICAgICAgICpuZ0lmPVwiIWlzTG9hZGVkXCI+XG4gICAgICAgIDxwLXByb2dyZXNzU3Bpbm5lciBzdHJva2VXaWR0aD1cIjJcIj4gPC9wLXByb2dyZXNzU3Bpbm5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAgKm5nSWY9XCJpc0xvYWRlZCAmJiBpbnRlZ3JhdGlvbkNvdW50RGlzcGxheSA+IDBcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiaW50LXRpdGxlIG1iLTBcIj57eyBpbnRlZ3JhdGlvbkNvdW50RGlzcGxheSB9fSsgaW50ZWdyYXRpb25zICgmIGNvdW50aW5nKTwvaDE+XG4gICAgICAgIDxwIGNsYXNzPVwiaW50LXRleHRcIj4gU2VhcmNoIHRoZSBjdXJyZW50IGxpc3Qgb2Yge3tjb21wYW55TmFtZX19IHZlbmRvciBhbmQgZGlzdHJpYnV0b3IgaW50ZWdyYXRpb25zIGJlbG93LiA8YnIgLz5cbiAgICAgICAgPC9wPlxuICAgICAgICA8cHctcmVzb3VyY2UtY29tcGFueS1jYXJkIFtoZWFkZXJdPVwiJ2ludGVncmF0ZWQgdmVuZG9ycydcIlxuICAgICAgICAgIFtkYXRhXT1cInBvc3RzXCI+PC9wdy1yZXNvdXJjZS1jb21wYW55LWNhcmQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJpbnRlZ3JhdGlvbkNvdW50RGlzcGxheSA9PT0gMCAmJiBpc0xvYWRlZFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInUmVzb3VyY2UuTm9EYXRhTWVzc2FnZScgfCB0cmFuc2xvY29cIi8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBwdC0zXCI+XG4gICAgICAgIDxwIGNsYXNzPVwic2VlLXNwYW5cIj4gRG9u4oCZdCBzZWUgd2hhdCB5b3XigJlyZSBhZnRlcj8gPGEgaHJlZj1cIi9ib29rLWEtZGVtb1wiXG4gICAgICAgICAgICBjbGFzcz1cImludC1zcGFuIHRlYW0tc3BhblwiPlNwZWFrIHdpdGggb3VyIHRlYW0gdG8gcmVxdWVzdCBhIGNvbm5lY3Rpb24gPlxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImludGVncmF0aW9uLWZhZGVvdXRcIj48L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbiBjbGFzcz1cImNsb3Vkb2xpdmUtZ3VpZGUtc2VjdGlvbiBiZy13aGl0ZSBweS01IHNlY3Rpb24tb3V0ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiXG4gICAgICAqbmdJZj1cIiFpc0xvYWRlZFwiPlxuICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgIDwvZGl2PlxuICAgICAgPHB3LXJlc291cmNlLWNvbXBhbnktY2FyZCBbaGVhZGVyXT1cIidpbnRlZ3JhdGVkIERpc3RyaWJ1dG9ycydcIlxuICAgICAgICpuZ0lmPVwiaXNMb2FkZWQgJiYgaW50ZWdyYXRpb25Db3VudERpc3BsYXkgPiAwXCJcbiAgICAgICAgW3ZlbmRvcl09XCJ0cnVlXCJcbiAgICAgICAgW2RhdGFdPVwiZGlzdHJpYnV0ZXJQb3N0c1wiPjwvcHctcmVzb3VyY2UtY29tcGFueS1jYXJkPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaW50ZWdyYXRpb25Db3VudERpc3BsYXkgPT09IDAgJiYgaXNMb2FkZWRcIj5cbiAgICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInUmVzb3VyY2UuTm9EYXRhTWVzc2FnZScgfCB0cmFuc2xvY29cIi8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpbnRlZ3JhdGlvbi1mYWRlb3V0XCI+PC9kaXY+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJjbG91ZG9saXZlLWd1aWRlLXNlY3Rpb24gYmctd2hpdGUgcHktNSBzZWN0aW9uLW91dGVyXCIgKm5nSWY9XCJpbnRlZ3JhdGlvbnNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaG93LWl0LXdvcmtzLXdyYXBwZXJcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiaXQtd29ya3MtdGl0bGUgbWItMFwiPnt7aW50ZWdyYXRpb25zPy50aXRsZSB8fCAnSG93IGl0IHdvcmtzJ319PC9oMT5cbiAgICAgICAgPHAgY2xhc3M9XCJwYi0yMFwiIFtpbm5lckhUTUxdPVwiaW50ZWdyYXRpb25zPy5kZXNjcmlwdGlvbiB8fCAnVmlldyBzaG9ydCBleGFtcGxlIHZpZGVvcyB0byB1bmRlcnN0YW5kIGhvdyB0aGVzZSBpbnRlZ3JhdGlvbnMgY2FuIHdvcmsgZm9yIHlvdTonXCI+PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHNlY3Rpb24tcm93XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImludGVncmF0aW9ucz8uaXRlbXM/Lmxlbmd0aCA+IDA7IGVsc2Ugbm9JbnRlZ3JhdGlvbnNcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGludGVncmF0aW9uIG9mIGludGVncmF0aW9ucz8uaXRlbXNcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sLW1kLTZcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaW50ZWdyYXRpb24/LmltYWdlX3VybCB8fCBpbnRlZ3JhdGlvbj8udGl0bGUgfHwgaW50ZWdyYXRpb24/LmRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW50ZWdyYXRpb24/LnZpZGVvX3VybCAmJiBpbnRlZ3JhdGlvbj8udmlkZW9fdXJsLmluY2x1ZGVzKCdodHRwcycpOyBlbHNlIG5vVmlkZW9cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpbnRlZ3JhdGlvbj8udmlkZW9fdXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbnRlZ3JhdGlvbj8uaW1hZ2VfdXJsXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImxvYWRNaWNyb3NvZnRWaWRlbyhpbnRlZ3JhdGlvbj8udmlkZW9fdXJsKVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaG93LWl0LXdvcmtzLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgIGFsdD1cIlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vVmlkZW8+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDBcIj5cbiAgICAgICAgICAgICAgICAgICAgPHB3LW5vLWRhdGEgW3dpdGhJbWFnZV09XCJ0cnVlXCIgW21lc3NhZ2VdPVwiJ05vIHZpZGVvIGZvdW5kJyB8IHRyYW5zbG9jb1wiPlxuICAgICAgICAgICAgICAgICAgICA8L3B3LW5vLWRhdGE+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI25vSW50ZWdyYXRpb25zPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctMTAwIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidJbnRlZ3JhdGlvbi5Ob0RhdGFNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPjwvcHctbm8tZGF0YT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaW50ZWdyYXRpb24tZmFkZW91dFwiPjwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDwhLS0gPHNlY3Rpb24gY2xhc3M9XCJjbG91ZG9saXZlLWd1aWRlLXNlY3Rpb24gYmctd2hpdGUgcHktNSBzZWN0aW9uLW91dGVyXCI+IC0tPlxuICAgIDwhLS0gPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1zdGFydFwiPlxuICAgICAgICA8IS0tIExlZnQgQ29udGVudCAtLT5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgdGV4dC1tZC1zdGFydCB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgIDxoMSBjbGFzcz1cImd1aWRlLXRpdGxlIG1iLTNcIj5BIGd1aWRlIHRvIGltcGxlbWVudGluZyBDbG91ZE9saXZlIGluIHlvdXIgYnVzaW5lc3M8L2gxPlxuICAgICAgICAgIDxwIGNsYXNzPVwiZ3VpZGUtc3VidGV4dFwiPlxuICAgICAgICAgICAgVmlldyB3aGVyZSBDbG91ZE9saXZlIHNpdHMgaW4geW91ciBpbnRlcm5hbCB0ZWNobm9sb2d5IHN0YWNrIGFuZCBtb250aGx5IHdvcmtmbG93cywgYW5kIHNlZSBob3cgZWFzeVxuICAgICAgICAgICAgaXQgaXMgdG8gZ2V0IHN0YXJ0ZWQuXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwIGNsYXNzPVwiZ3VpZGUtbm90ZSBtYi00XCI+VmlldyB0aGUgcXVpY2sgZ3VpZGUgbm93OjwvcD5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidmF1bHQtYnRuXCJcbiAgICAgICAgICAgIG9uY2xpY2s9XCJ3aW5kb3cub3BlbignaHR0cHM6Ly9odWJzcG90LmNvbScsICdfYmxhbmsnKVwiPlZpZXcgdGhlIGd1aWRlPC9idXR0b24+XG4gICAgICAgIDwvZGl2PiAtLT5cblxuICAgICAgICA8IS0tIFJpZ2h0IEltYWdlIC0tPlxuICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9pbWcvcmVzb3VyY2UvZ3VpZGUucG5nXCJcbiAgICAgICAgICAgIGFsdD1cIkd1aWRlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW1nLWZsdWlkIGd1aWRlLWltZ1wiIC8+IC0tPlxuICAgICAgICA8IS0tIDwvZGl2PiAtLT5cbiAgICAgIDwhLS0gPC9kaXY+IC0tPlxuICA8IS0tIDwvZGl2PiAtLT5cbiAgICA8IS0tIDxkaXYgY2xhc3M9XCJpbnRlZ3JhdGlvbi1mYWRlb3V0XCI+PC9kaXY+IC0tPlxuICA8IS0tIDwvc2VjdGlvbj4gLS0+XG48L2Rpdj5cblxuPHB3LXJlc291cmNlLW5vdGUtY2FyZCAqbmdJZj1cInJlc291cmNlUG9zdFRhZz8udGFnX2NhdGVnb3J5X2lkXCIgW2NhdGVnb3J5SWRdPVwicmVzb3VyY2VQb3N0VGFnPy50YWdfY2F0ZWdvcnlfaWRcIiBbcmVsZWFzZUhlYWRlcl09XCJ0cnVlXCIgW3Jlc291cmNlVGl0bGVdPVwicmVzb3VyY2VQb3N0VGFnPy50aXRsZVwiPjwvcHctcmVzb3VyY2Utbm90ZS1jYXJkPlxuXG48cHctdHJpYWwtNC1jb250YWN0LXVzPjwvcHctdHJpYWwtNC1jb250YWN0LXVzPlxuIl19
@@ -114,10 +114,10 @@ export class RelatedResourcesComponent extends AppBaseComponent {
114
114
  return item.id;
115
115
  }
116
116
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RelatedResourcesComponent, deps: [{ token: i1.ResourceService }, { token: i0.Injector }, { token: i2.DomSanitizer }, { token: i3.TagService }, { token: i3.CustomToastService }], target: i0.ɵɵFactoryTarget.Component }); }
117
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: RelatedResourcesComponent, selector: "pw-related-resources", usesInheritance: true, ngImport: i0, template: "\n\n<section class=\"resource-body-section\">\n <div class=\"container\">\n <div class=\"ql-snow body-quill\"\n >\n <div class=\"ql-editor body post-body-text\"\n [innerHTML]=\"post?.body\">\n </div>\n </div>\n <section class=\"nce-offer-section\">\n\n <div class=\"row mt-5 mb-4 response-row\">\n <div class=\"col-12\">\n <form\n class=\"p-fluid mb-5\"\n [formGroup]=\"commentForm\"\n (ngSubmit)=\"onComment()\"\n *ngIf=\"userLoggedIn; else userLoggedOut\"\n >\n <div class=\"card shadow-sm border-0 p-4\">\n <div class=\"field\">\n <label for=\"comment\" class=\"font-bold text-lg mb-4 comment-label\">\uD83D\uDCAC Leave a comment</label>\n <textarea\n pInputTextarea\n formControlName=\"comment\"\n rows=\"6\"\n autoResize=\"true\"\n class=\"p-inputtext p-component p-inputtextarea\"\n placeholder=\"What's on your mind?\"\n ></textarea>\n <small\n class=\"text-danger\"\n *ngIf=\"commentForm.get('comment')?.invalid && commentForm.get('comment')?.touched\"\n >Please enter comment</small\n >\n </div>\n <div class=\"text-end mt-3\">\n <button type=\"submit\"\n [buttonBusy]=\"buttonBusy\"\n class=\"sign-btn sign-header-btn\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n <ng-template #userLoggedOut>\n <p class=\"text-center pt-3 pb-3 user-not-logged-in text-muted shadow-sm mb-5\">\n <a [routerLink]=\"['/login']\" class=\"text-primary fw-bold\">Log in</a> to leave a comment!\n </p>\n </ng-template>\n </div>\n </div>\n\n <div class=\"row mt-5 comment-row\">\n <div class=\"col-12\" *ngFor=\"let comment of postComments; trackBy: trackByComment\">\n <div class=\"card border-0 shadow-sm p-3 mb-3\">\n <div class=\"d-flex align-items-start\">\n <img\n [src]=\"comment?.author?.avatar?.[0]?.url || 'assets/img/icons/male.png'\"\n alt=\"avatar\"\n class=\"rounded-circle me-3\"\n width=\"50\"\n height=\"50\"\n (error)=\"handleImageError($event, 'assets/img/icons/male.png')\"\n />\n <div class=\"flex-grow-1\">\n <div class=\"fw-bold text-dark\">\n {{ comment.user?.first_name || '' }} {{ comment.user?.last_name || '' }}\n </div>\n <div class=\"text-muted small mb-2\">{{ comment.created_at | date: 'dd MMM yyyy, h:mm a' }}</div>\n <div class=\"text-body\">\n {{ comment.comment }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n\n </section>\n </div>\n <hr class=\"nce-divider\" />\n</section>\n\n<section class=\"nce-book-section\" *ngIf=\"hasValidDemoLinks\">\n <div class=\"container\">\n\n <p class=\"nce-contact\">\n Any questions, get in touch <a href=\"mailto:{{ company_email }}\">here</a>,\n <a [href]=\"linkedInUrl\" target=\"_blank\">connect on LinkedIn</a>, or book a meeting below:\n </p>\n </div>\n <pw-book-a-demo [isBlog]=\"true\"></pw-book-a-demo>\n <hr class=\"nce-divider\" />\n</section>\n\n\n<pw-resource-cards *ngIf=\"blogPostTag?.tag_category_id\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [isHeaderVisible]=\"true\" resourceLink=\"/resources/blogs\" [resourceTitle]=\"'Other resources you may be interested in:'\"></pw-resource-cards>\n", styles: ["::ng-deep .ql-editor p{font-size:1.5rem!important;line-height:1.8rem!important;color:#333!important}.video-row{gap:5.5rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}.msp-vault-section{padding:60px 0;background:#fff}.msp-vault-section .vault-heading{font-size:4.5rem;font-weight:300;color:#000!important}.msp-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.msp-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}.msp-vault-section .vault-card{background-color:#fff;border-radius:30px;box-shadow:0 5px 20px #0000000d;padding:25px;text-align:center;width:338px;height:auto}.msp-vault-section .vault-card h5{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card p{font-size:1.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card img,.msp-vault-section .vault-card iframe{height:180px;border-radius:10px;object-fit:cover}.msp-vault-section .vault-card .vault-btn{background-color:#000!important;margin-top:10px;color:#fff;width:240px;padding:10px 24px;border-radius:24px;border:none;font-size:1.5rem;margin-left:2rem;font-weight:500;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-items:center;text-align:left}.msp-vault-section .vault-card .vault-btn:hover{background-color:#333}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.msp-vault-section .vault-heading{font-size:3.5rem}.msp-vault-section .vault-description{margin-top:1.35rem}.msp-vault-section .vault-card{width:100%!important}.msp-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}.resource-section{padding:5rem 0;position:relative}.resource-section .section-heading{font-size:3rem!important;font-weight:300!important}.resource-section .view-all{font-size:1.5rem;font-weight:600;color:#000;text-decoration:none;margin-bottom:2.5rem}.resource-section .view-all:hover{color:var(--first)}.resource-section .resource-card{background:#fff;width:338px;border-radius:30px;padding:3rem;box-shadow:0 20px 40px #00000014;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;height:auto}.resource-section .resource-card .resource-title{font-size:1.5rem;line-height:2rem;font-weight:400;color:var(--text-color, black);text-align:center}.resource-section .resource-card .resource-image{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;margin-bottom:20px}.resource-section .resource-card .read-now-btn{background-color:var(--text-color, black);color:#fff;text-decoration:none;padding:14px 20px;font-size:1.5rem;font-weight:500;border-radius:40px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .3s ease;width:100%;max-width:240px;margin:0 auto;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.resource-section .resource-card .read-now-btn .arrow{font-weight:600;font-size:1.5rem}.resource-section .resource-card .read-now-btn:hover{background:#fff;color:var(--text-color, black)!important}@media (width <= 768px){.resource-section .resource-section .cards-row{gap:3rem;margin-top:3rem!important}.resource-section .section-heading,.resource-section .view-all{width:100%;text-align:center;margin-bottom:1rem}.resource-section .resource-card .read-now-btn{flex-direction:row;justify-content:center;gap:8px}}@media (width >= 768px) and (width <= 1200px){.nce-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.nce-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.nce-book-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-book-section .nce-contact{line-height:1.6;font-size:1.5rem}.nce-book-section .nce-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.nce-book-section .nce-contact a:hover{color:var(--first)!important}.nce-offer-section{background:#fff;padding-top:2rem}.nce-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-offer-section .nce-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.nce-offer-section .nce-title strong{font-weight:700}.nce-offer-section .nce-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.nce-offer-section .nce-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.nce-offer-section .nce-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.nce-offer-section .nce-signup{margin-bottom:2.5rem}.nce-offer-section .nce-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.nce-offer-section .nce-book-section{padding-top:5rem!important}.nce-offer-section .container{text-align:left}.nce-offer-section .nce-title{font-size:1.5rem}.nce-offer-section .nce-description,.nce-offer-section .nce-offer-list,.nce-offer-section .nce-signup,.nce-offer-section .signup-link,.nce-offer-section .nce-contact,.nce-offer-section .nce-offer-list p{font-size:1.2rem!important}}.nce-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.nce-book-section{padding-top:5rem!important}.nce-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:1000px;display:block;margin-left:auto;margin-right:auto}::ng-deep .ql-editor h1{font-size:2rem!important;line-height:2.3rem!important;color:#333!important}::ng-deep .ql-editor li{font-size:1.3rem!important;color:#333!important}::ng-deep .p-inputtextarea{border-radius:.5rem;border-color:#ced4da;font-size:1rem}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:6rem!important}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.HubSpotMeetingsComponent, selector: "pw-book-a-demo", inputs: ["isBlog"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i7.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: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.ButtonBusyDirective, selector: "[buttonBusy]", inputs: ["buttonBusy", "busyText"] }, { kind: "directive", type: i8.LazyImgDirective, selector: "img" }, { kind: "component", type: i9.ResourceCardComponent, selector: "pw-resource-cards", inputs: ["categoryId", "isHeaderVisible", "resourceTitle", "postSlice", "header", "resourceLink"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: i10.TranslocoPipe, name: "transloco" }] }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: RelatedResourcesComponent, selector: "pw-related-resources", usesInheritance: true, ngImport: i0, template: "\n\n<section class=\"resource-body-section\">\n <div class=\"container\">\n <div class=\"ql-snow body-quill\"\n >\n <div class=\"ql-editor body post-body-text\"\n [innerHTML]=\"post?.body\">\n </div>\n </div>\n <section class=\"nce-offer-section\">\n\n <div class=\"row mt-5 mb-4 response-row\">\n <div class=\"col-12\">\n <form\n class=\"p-fluid mb-5\"\n [formGroup]=\"commentForm\"\n (ngSubmit)=\"onComment()\"\n *ngIf=\"userLoggedIn; else userLoggedOut\"\n >\n <div class=\"card shadow-sm border-0 p-4\">\n <div class=\"field\">\n <label for=\"comment\" class=\"font-bold text-lg mb-4 comment-label\">\uD83D\uDCAC Leave a comment</label>\n <textarea\n pInputTextarea\n formControlName=\"comment\"\n rows=\"6\"\n autoResize=\"true\"\n class=\"p-inputtext p-component p-inputtextarea\"\n placeholder=\"What's on your mind?\"\n ></textarea>\n <small\n class=\"text-danger\"\n *ngIf=\"commentForm.get('comment')?.invalid && commentForm.get('comment')?.touched\"\n >Please enter comment</small\n >\n </div>\n <div class=\"text-end mt-3\">\n <button type=\"submit\"\n [buttonBusy]=\"buttonBusy\"\n class=\"sign-btn sign-header-btn\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n <ng-template #userLoggedOut>\n <p class=\"text-center pt-3 pb-3 user-not-logged-in text-muted shadow-sm mb-5\">\n <a [routerLink]=\"['/login']\" class=\"text-primary fw-bold\">Log in</a> to leave a comment!\n </p>\n </ng-template>\n </div>\n </div>\n\n <div class=\"row mt-5 comment-row\">\n <div class=\"col-12\" *ngFor=\"let comment of postComments; trackBy: trackByComment\">\n <div class=\"card border-0 shadow-sm p-3 mb-3\">\n <div class=\"d-flex align-items-start\">\n <img\n [src]=\"comment?.author?.avatar?.[0]?.url || 'assets/img/icons/male.png'\"\n alt=\"avatar\"\n class=\"rounded-circle me-3\"\n width=\"50\"\n height=\"50\"\n (error)=\"handleImageError($event, 'assets/img/icons/male.png')\"\n />\n <div class=\"flex-grow-1\">\n <div class=\"fw-bold text-dark\">\n {{ comment.user?.first_name || '' }} {{ comment.user?.last_name || '' }}\n </div>\n <div class=\"text-muted small mb-2\">{{ comment.created_at | date: 'dd MMM yyyy, h:mm a' }}</div>\n <div class=\"text-body\">\n {{ comment.comment }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n\n </section>\n </div>\n <hr class=\"nce-divider\" />\n</section>\n\n<section class=\"nce-book-section\" *ngIf=\"hasValidDemoLinks\">\n <div class=\"container\">\n\n <p class=\"nce-contact\">\n Any questions, get in touch <a href=\"mailto:{{ company_email }}\">here</a>,\n <a [href]=\"linkedInUrl\" target=\"_blank\">connect on LinkedIn</a>, or book a meeting below:\n </p>\n </div>\n <pw-book-a-demo [isBlog]=\"true\"></pw-book-a-demo>\n <hr class=\"nce-divider\" />\n</section>\n\n\n<pw-resource-cards *ngIf=\"blogPostTag?.tag_category_id\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [isHeaderVisible]=\"true\" resourceLink=\"/resources/blogs\" [resourceTitle]=\"'Other resources you may be interested in:'\"></pw-resource-cards>\n", styles: [".video-row{gap:5.5rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}.msp-vault-section{padding:60px 0;background:#fff}.msp-vault-section .vault-heading{font-size:4.5rem;font-weight:300;color:#000!important}.msp-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.msp-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}.msp-vault-section .vault-card{background-color:#fff;border-radius:30px;box-shadow:0 5px 20px #0000000d;padding:25px;text-align:center;width:338px;height:auto}.msp-vault-section .vault-card h5{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card p{font-size:1.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card img,.msp-vault-section .vault-card iframe{height:180px;border-radius:10px;object-fit:cover}.msp-vault-section .vault-card .vault-btn{background-color:#000!important;margin-top:10px;color:#fff;width:240px;padding:10px 24px;border-radius:24px;border:none;font-size:1.5rem;margin-left:2rem;font-weight:500;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-items:center;text-align:left}.msp-vault-section .vault-card .vault-btn:hover{background-color:#333}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.msp-vault-section .vault-heading{font-size:3.5rem}.msp-vault-section .vault-description{margin-top:1.35rem}.msp-vault-section .vault-card{width:100%!important}.msp-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}.resource-section{padding:5rem 0;position:relative}.resource-section .section-heading{font-size:3rem!important;font-weight:300!important}.resource-section .view-all{font-size:1.5rem;font-weight:600;color:#000;text-decoration:none;margin-bottom:2.5rem}.resource-section .view-all:hover{color:var(--first)}.resource-section .resource-card{background:#fff;width:338px;border-radius:30px;padding:3rem;box-shadow:0 20px 40px #00000014;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;height:auto}.resource-section .resource-card .resource-title{font-size:1.5rem;line-height:2rem;font-weight:400;color:var(--text-color, black);text-align:center}.resource-section .resource-card .resource-image{width:100%;margin-right:0!important;max-width:250px!important;align-self:center!important;aspect-ratio:1/1;object-fit:cover;border-radius:16px;margin-bottom:20px}.resource-section .resource-card .read-now-btn{background-color:var(--text-color, black);color:#fff;text-decoration:none;padding:14px 20px;font-size:1.5rem;font-weight:500;border-radius:40px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .3s ease;width:100%;max-width:240px;margin:0 auto;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.resource-section .resource-card .read-now-btn .arrow{font-weight:600;font-size:1.5rem}.resource-section .resource-card .read-now-btn:hover{background:#fff;color:var(--text-color, black)!important}@media (width <= 768px){.resource-section .resource-section .cards-row{gap:3rem;margin-top:3rem!important}.resource-section .section-heading,.resource-section .view-all{width:100%;text-align:center;margin-bottom:1rem}.resource-section .resource-card .read-now-btn{flex-direction:row;justify-content:center;gap:8px}}@media (width >= 768px) and (width <= 1200px){.nce-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.nce-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.nce-book-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-book-section .nce-contact{line-height:1.6;font-size:1.5rem}.nce-book-section .nce-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.nce-book-section .nce-contact a:hover{color:var(--first)!important}.nce-offer-section{background:#fff;padding-top:2rem}.nce-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-offer-section .nce-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.nce-offer-section .nce-title strong{font-weight:700}.nce-offer-section .nce-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.nce-offer-section .nce-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.nce-offer-section .nce-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.nce-offer-section .nce-signup{margin-bottom:2.5rem}.nce-offer-section .nce-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.nce-offer-section .nce-book-section{padding-top:5rem!important}.nce-offer-section .container{text-align:left}.nce-offer-section .nce-title{font-size:1.5rem}.nce-offer-section .nce-description,.nce-offer-section .nce-offer-list,.nce-offer-section .nce-signup,.nce-offer-section .signup-link,.nce-offer-section .nce-contact,.nce-offer-section .nce-offer-list p{font-size:1.2rem!important}}.nce-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.nce-book-section{padding-top:5rem!important}.nce-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:1000px;display:block;margin-left:auto;margin-right:auto}::ng-deep .p-inputtextarea{border-radius:.5rem;border-color:#ced4da;font-size:1rem}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:6rem!important}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.HubSpotMeetingsComponent, selector: "pw-book-a-demo", inputs: ["isBlog"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i7.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: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.ButtonBusyDirective, selector: "[buttonBusy]", inputs: ["buttonBusy", "busyText"] }, { kind: "directive", type: i8.LazyImgDirective, selector: "img" }, { kind: "component", type: i9.ResourceCardComponent, selector: "pw-resource-cards", inputs: ["categoryId", "isHeaderVisible", "resourceTitle", "postSlice", "header", "resourceLink"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: i10.TranslocoPipe, name: "transloco" }] }); }
118
118
  }
119
119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RelatedResourcesComponent, decorators: [{
120
120
  type: Component,
121
- args: [{ selector: 'pw-related-resources', template: "\n\n<section class=\"resource-body-section\">\n <div class=\"container\">\n <div class=\"ql-snow body-quill\"\n >\n <div class=\"ql-editor body post-body-text\"\n [innerHTML]=\"post?.body\">\n </div>\n </div>\n <section class=\"nce-offer-section\">\n\n <div class=\"row mt-5 mb-4 response-row\">\n <div class=\"col-12\">\n <form\n class=\"p-fluid mb-5\"\n [formGroup]=\"commentForm\"\n (ngSubmit)=\"onComment()\"\n *ngIf=\"userLoggedIn; else userLoggedOut\"\n >\n <div class=\"card shadow-sm border-0 p-4\">\n <div class=\"field\">\n <label for=\"comment\" class=\"font-bold text-lg mb-4 comment-label\">\uD83D\uDCAC Leave a comment</label>\n <textarea\n pInputTextarea\n formControlName=\"comment\"\n rows=\"6\"\n autoResize=\"true\"\n class=\"p-inputtext p-component p-inputtextarea\"\n placeholder=\"What's on your mind?\"\n ></textarea>\n <small\n class=\"text-danger\"\n *ngIf=\"commentForm.get('comment')?.invalid && commentForm.get('comment')?.touched\"\n >Please enter comment</small\n >\n </div>\n <div class=\"text-end mt-3\">\n <button type=\"submit\"\n [buttonBusy]=\"buttonBusy\"\n class=\"sign-btn sign-header-btn\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n <ng-template #userLoggedOut>\n <p class=\"text-center pt-3 pb-3 user-not-logged-in text-muted shadow-sm mb-5\">\n <a [routerLink]=\"['/login']\" class=\"text-primary fw-bold\">Log in</a> to leave a comment!\n </p>\n </ng-template>\n </div>\n </div>\n\n <div class=\"row mt-5 comment-row\">\n <div class=\"col-12\" *ngFor=\"let comment of postComments; trackBy: trackByComment\">\n <div class=\"card border-0 shadow-sm p-3 mb-3\">\n <div class=\"d-flex align-items-start\">\n <img\n [src]=\"comment?.author?.avatar?.[0]?.url || 'assets/img/icons/male.png'\"\n alt=\"avatar\"\n class=\"rounded-circle me-3\"\n width=\"50\"\n height=\"50\"\n (error)=\"handleImageError($event, 'assets/img/icons/male.png')\"\n />\n <div class=\"flex-grow-1\">\n <div class=\"fw-bold text-dark\">\n {{ comment.user?.first_name || '' }} {{ comment.user?.last_name || '' }}\n </div>\n <div class=\"text-muted small mb-2\">{{ comment.created_at | date: 'dd MMM yyyy, h:mm a' }}</div>\n <div class=\"text-body\">\n {{ comment.comment }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n\n </section>\n </div>\n <hr class=\"nce-divider\" />\n</section>\n\n<section class=\"nce-book-section\" *ngIf=\"hasValidDemoLinks\">\n <div class=\"container\">\n\n <p class=\"nce-contact\">\n Any questions, get in touch <a href=\"mailto:{{ company_email }}\">here</a>,\n <a [href]=\"linkedInUrl\" target=\"_blank\">connect on LinkedIn</a>, or book a meeting below:\n </p>\n </div>\n <pw-book-a-demo [isBlog]=\"true\"></pw-book-a-demo>\n <hr class=\"nce-divider\" />\n</section>\n\n\n<pw-resource-cards *ngIf=\"blogPostTag?.tag_category_id\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [isHeaderVisible]=\"true\" resourceLink=\"/resources/blogs\" [resourceTitle]=\"'Other resources you may be interested in:'\"></pw-resource-cards>\n", styles: ["::ng-deep .ql-editor p{font-size:1.5rem!important;line-height:1.8rem!important;color:#333!important}.video-row{gap:5.5rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}.msp-vault-section{padding:60px 0;background:#fff}.msp-vault-section .vault-heading{font-size:4.5rem;font-weight:300;color:#000!important}.msp-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.msp-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}.msp-vault-section .vault-card{background-color:#fff;border-radius:30px;box-shadow:0 5px 20px #0000000d;padding:25px;text-align:center;width:338px;height:auto}.msp-vault-section .vault-card h5{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card p{font-size:1.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card img,.msp-vault-section .vault-card iframe{height:180px;border-radius:10px;object-fit:cover}.msp-vault-section .vault-card .vault-btn{background-color:#000!important;margin-top:10px;color:#fff;width:240px;padding:10px 24px;border-radius:24px;border:none;font-size:1.5rem;margin-left:2rem;font-weight:500;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-items:center;text-align:left}.msp-vault-section .vault-card .vault-btn:hover{background-color:#333}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.msp-vault-section .vault-heading{font-size:3.5rem}.msp-vault-section .vault-description{margin-top:1.35rem}.msp-vault-section .vault-card{width:100%!important}.msp-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}.resource-section{padding:5rem 0;position:relative}.resource-section .section-heading{font-size:3rem!important;font-weight:300!important}.resource-section .view-all{font-size:1.5rem;font-weight:600;color:#000;text-decoration:none;margin-bottom:2.5rem}.resource-section .view-all:hover{color:var(--first)}.resource-section .resource-card{background:#fff;width:338px;border-radius:30px;padding:3rem;box-shadow:0 20px 40px #00000014;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;height:auto}.resource-section .resource-card .resource-title{font-size:1.5rem;line-height:2rem;font-weight:400;color:var(--text-color, black);text-align:center}.resource-section .resource-card .resource-image{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;margin-bottom:20px}.resource-section .resource-card .read-now-btn{background-color:var(--text-color, black);color:#fff;text-decoration:none;padding:14px 20px;font-size:1.5rem;font-weight:500;border-radius:40px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .3s ease;width:100%;max-width:240px;margin:0 auto;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.resource-section .resource-card .read-now-btn .arrow{font-weight:600;font-size:1.5rem}.resource-section .resource-card .read-now-btn:hover{background:#fff;color:var(--text-color, black)!important}@media (width <= 768px){.resource-section .resource-section .cards-row{gap:3rem;margin-top:3rem!important}.resource-section .section-heading,.resource-section .view-all{width:100%;text-align:center;margin-bottom:1rem}.resource-section .resource-card .read-now-btn{flex-direction:row;justify-content:center;gap:8px}}@media (width >= 768px) and (width <= 1200px){.nce-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.nce-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.nce-book-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-book-section .nce-contact{line-height:1.6;font-size:1.5rem}.nce-book-section .nce-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.nce-book-section .nce-contact a:hover{color:var(--first)!important}.nce-offer-section{background:#fff;padding-top:2rem}.nce-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-offer-section .nce-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.nce-offer-section .nce-title strong{font-weight:700}.nce-offer-section .nce-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.nce-offer-section .nce-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.nce-offer-section .nce-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.nce-offer-section .nce-signup{margin-bottom:2.5rem}.nce-offer-section .nce-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.nce-offer-section .nce-book-section{padding-top:5rem!important}.nce-offer-section .container{text-align:left}.nce-offer-section .nce-title{font-size:1.5rem}.nce-offer-section .nce-description,.nce-offer-section .nce-offer-list,.nce-offer-section .nce-signup,.nce-offer-section .signup-link,.nce-offer-section .nce-contact,.nce-offer-section .nce-offer-list p{font-size:1.2rem!important}}.nce-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.nce-book-section{padding-top:5rem!important}.nce-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:1000px;display:block;margin-left:auto;margin-right:auto}::ng-deep .ql-editor h1{font-size:2rem!important;line-height:2.3rem!important;color:#333!important}::ng-deep .ql-editor li{font-size:1.3rem!important;color:#333!important}::ng-deep .p-inputtextarea{border-radius:.5rem;border-color:#ced4da;font-size:1rem}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:6rem!important}\n"] }]
121
+ args: [{ selector: 'pw-related-resources', template: "\n\n<section class=\"resource-body-section\">\n <div class=\"container\">\n <div class=\"ql-snow body-quill\"\n >\n <div class=\"ql-editor body post-body-text\"\n [innerHTML]=\"post?.body\">\n </div>\n </div>\n <section class=\"nce-offer-section\">\n\n <div class=\"row mt-5 mb-4 response-row\">\n <div class=\"col-12\">\n <form\n class=\"p-fluid mb-5\"\n [formGroup]=\"commentForm\"\n (ngSubmit)=\"onComment()\"\n *ngIf=\"userLoggedIn; else userLoggedOut\"\n >\n <div class=\"card shadow-sm border-0 p-4\">\n <div class=\"field\">\n <label for=\"comment\" class=\"font-bold text-lg mb-4 comment-label\">\uD83D\uDCAC Leave a comment</label>\n <textarea\n pInputTextarea\n formControlName=\"comment\"\n rows=\"6\"\n autoResize=\"true\"\n class=\"p-inputtext p-component p-inputtextarea\"\n placeholder=\"What's on your mind?\"\n ></textarea>\n <small\n class=\"text-danger\"\n *ngIf=\"commentForm.get('comment')?.invalid && commentForm.get('comment')?.touched\"\n >Please enter comment</small\n >\n </div>\n <div class=\"text-end mt-3\">\n <button type=\"submit\"\n [buttonBusy]=\"buttonBusy\"\n class=\"sign-btn sign-header-btn\">\n {{ 'Button.Submit' | transloco }}\n </button>\n </div>\n </div>\n </form>\n <ng-template #userLoggedOut>\n <p class=\"text-center pt-3 pb-3 user-not-logged-in text-muted shadow-sm mb-5\">\n <a [routerLink]=\"['/login']\" class=\"text-primary fw-bold\">Log in</a> to leave a comment!\n </p>\n </ng-template>\n </div>\n </div>\n\n <div class=\"row mt-5 comment-row\">\n <div class=\"col-12\" *ngFor=\"let comment of postComments; trackBy: trackByComment\">\n <div class=\"card border-0 shadow-sm p-3 mb-3\">\n <div class=\"d-flex align-items-start\">\n <img\n [src]=\"comment?.author?.avatar?.[0]?.url || 'assets/img/icons/male.png'\"\n alt=\"avatar\"\n class=\"rounded-circle me-3\"\n width=\"50\"\n height=\"50\"\n (error)=\"handleImageError($event, 'assets/img/icons/male.png')\"\n />\n <div class=\"flex-grow-1\">\n <div class=\"fw-bold text-dark\">\n {{ comment.user?.first_name || '' }} {{ comment.user?.last_name || '' }}\n </div>\n <div class=\"text-muted small mb-2\">{{ comment.created_at | date: 'dd MMM yyyy, h:mm a' }}</div>\n <div class=\"text-body\">\n {{ comment.comment }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n\n </section>\n </div>\n <hr class=\"nce-divider\" />\n</section>\n\n<section class=\"nce-book-section\" *ngIf=\"hasValidDemoLinks\">\n <div class=\"container\">\n\n <p class=\"nce-contact\">\n Any questions, get in touch <a href=\"mailto:{{ company_email }}\">here</a>,\n <a [href]=\"linkedInUrl\" target=\"_blank\">connect on LinkedIn</a>, or book a meeting below:\n </p>\n </div>\n <pw-book-a-demo [isBlog]=\"true\"></pw-book-a-demo>\n <hr class=\"nce-divider\" />\n</section>\n\n\n<pw-resource-cards *ngIf=\"blogPostTag?.tag_category_id\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [isHeaderVisible]=\"true\" resourceLink=\"/resources/blogs\" [resourceTitle]=\"'Other resources you may be interested in:'\"></pw-resource-cards>\n", styles: [".video-row{gap:5.5rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}.msp-vault-section{padding:60px 0;background:#fff}.msp-vault-section .vault-heading{font-size:4.5rem;font-weight:300;color:#000!important}.msp-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.msp-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}.msp-vault-section .vault-card{background-color:#fff;border-radius:30px;box-shadow:0 5px 20px #0000000d;padding:25px;text-align:center;width:338px;height:auto}.msp-vault-section .vault-card h5{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card p{font-size:1.5rem;color:var(--text-color, black)}.msp-vault-section .vault-card img,.msp-vault-section .vault-card iframe{height:180px;border-radius:10px;object-fit:cover}.msp-vault-section .vault-card .vault-btn{background-color:#000!important;margin-top:10px;color:#fff;width:240px;padding:10px 24px;border-radius:24px;border:none;font-size:1.5rem;margin-left:2rem;font-weight:500;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-items:center;text-align:left}.msp-vault-section .vault-card .vault-btn:hover{background-color:#333}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:7rem 3rem 1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.msp-vault-section .vault-heading{font-size:3.5rem}.msp-vault-section .vault-description{margin-top:1.35rem}.msp-vault-section .vault-card{width:100%!important}.msp-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}.resource-section{padding:5rem 0;position:relative}.resource-section .section-heading{font-size:3rem!important;font-weight:300!important}.resource-section .view-all{font-size:1.5rem;font-weight:600;color:#000;text-decoration:none;margin-bottom:2.5rem}.resource-section .view-all:hover{color:var(--first)}.resource-section .resource-card{background:#fff;width:338px;border-radius:30px;padding:3rem;box-shadow:0 20px 40px #00000014;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;height:auto}.resource-section .resource-card .resource-title{font-size:1.5rem;line-height:2rem;font-weight:400;color:var(--text-color, black);text-align:center}.resource-section .resource-card .resource-image{width:100%;margin-right:0!important;max-width:250px!important;align-self:center!important;aspect-ratio:1/1;object-fit:cover;border-radius:16px;margin-bottom:20px}.resource-section .resource-card .read-now-btn{background-color:var(--text-color, black);color:#fff;text-decoration:none;padding:14px 20px;font-size:1.5rem;font-weight:500;border-radius:40px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .3s ease;width:100%;max-width:240px;margin:0 auto;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.resource-section .resource-card .read-now-btn .arrow{font-weight:600;font-size:1.5rem}.resource-section .resource-card .read-now-btn:hover{background:#fff;color:var(--text-color, black)!important}@media (width <= 768px){.resource-section .resource-section .cards-row{gap:3rem;margin-top:3rem!important}.resource-section .section-heading,.resource-section .view-all{width:100%;text-align:center;margin-bottom:1rem}.resource-section .resource-card .read-now-btn{flex-direction:row;justify-content:center;gap:8px}}@media (width >= 768px) and (width <= 1200px){.nce-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.nce-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.nce-book-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-book-section .nce-contact{line-height:1.6;font-size:1.5rem}.nce-book-section .nce-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.nce-book-section .nce-contact a:hover{color:var(--first)!important}.nce-offer-section{background:#fff;padding-top:2rem}.nce-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.nce-offer-section .nce-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.nce-offer-section .nce-title strong{font-weight:700}.nce-offer-section .nce-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.nce-offer-section .nce-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.nce-offer-section .nce-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.nce-offer-section .nce-signup{margin-bottom:2.5rem}.nce-offer-section .nce-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.nce-offer-section .nce-book-section{padding-top:5rem!important}.nce-offer-section .container{text-align:left}.nce-offer-section .nce-title{font-size:1.5rem}.nce-offer-section .nce-description,.nce-offer-section .nce-offer-list,.nce-offer-section .nce-signup,.nce-offer-section .signup-link,.nce-offer-section .nce-contact,.nce-offer-section .nce-offer-list p{font-size:1.2rem!important}}.nce-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.nce-book-section{padding-top:5rem!important}.nce-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:1000px;display:block;margin-left:auto;margin-right:auto}::ng-deep .p-inputtextarea{border-radius:.5rem;border-color:#ced4da;font-size:1rem}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:6rem!important}\n"] }]
122
122
  }], ctorParameters: () => [{ type: i1.ResourceService }, { type: i0.Injector }, { type: i2.DomSanitizer }, { type: i3.TagService }, { type: i3.CustomToastService }] });
123
123
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRlZC1yZXNvdXJjZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9yZXNvdXJjZS1tb2R1bGUvc3JjL2xpYi9wdWJsaWMvY29tcG9uZW50cy9yZXNvdXJjZS1wb3N0L3JlbGF0ZWQtcmVzb3VyY2VzL3JlbGF0ZWQtcmVzb3VyY2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcmVzb3VyY2UtbW9kdWxlL3NyYy9saWIvcHVibGljL2NvbXBvbmVudHMvcmVzb3VyY2UtcG9zdC9yZWxhdGVkLXJlc291cmNlcy9yZWxhdGVkLXJlc291cmNlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxTQUFTLEVBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7Ozs7O0FBT3hFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxnQkFBZ0I7SUF1QzNELFlBQ3FCLGVBQWdDLEVBQ2pELFFBQWtCLEVBQ0QsU0FBdUIsRUFDdkIsVUFBc0IsRUFDdEIsTUFBMEI7UUFFM0MsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBTkMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBRWhDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDdkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQTNDL0Msa0JBQWEsR0FBRztZQUNaO2dCQUNJLEtBQUssRUFBRSwwREFBMEQ7Z0JBQ2pFLEtBQUssRUFBRSxzQ0FBc0M7Z0JBQzdDLEdBQUcsRUFBRSx5QkFBeUI7Z0JBQzlCLEdBQUcsRUFBRSx3RkFBd0Y7YUFDaEc7WUFDRDtnQkFDSSxLQUFLLEVBQUUsNERBQTREO2dCQUNuRSxLQUFLLEVBQUUseUNBQXlDO2dCQUNoRCxHQUFHLEVBQUUsdUJBQXVCO2dCQUM1QixHQUFHLEVBQUUsc0VBQXNFO2FBQzlFO1lBQ0Q7Z0JBQ0ksS0FBSyxFQUFFLDhFQUE4RTtnQkFDckYsS0FBSyxFQUFFLHVDQUF1QztnQkFDOUMsR0FBRyxFQUFFLGtCQUFrQjtnQkFDdkIsR0FBRyxFQUFFLHVGQUF1RjthQUMvRjtTQUNKLENBQUM7UUFNRixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUtsQixjQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQztRQUszRCxnQkFBVyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQztRQUNuRCxrQkFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQVV6QyxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzNELENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDO1FBQy9FLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUM7WUFDMUIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUM1QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztnQkFDckIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNsRCxNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFDMUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLEVBQUUsY0FBYyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDakIsT0FBTyxDQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQ3pGLENBQUM7SUFDTixDQUFDO0lBRU8sV0FBVztRQUNmLElBQUksQ0FBQyxVQUFVO2FBQ1YsYUFBYSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQzthQUN0RixTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVk7UUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzFELElBQUksUUFBUSxDQUFDO1lBQ2IsSUFBSSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLFFBQVEsR0FBRyxhQUFhLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDOUUsQ0FBQztZQUNELE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztZQUM3QyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sSUFBSSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGVBQWU7YUFDZixZQUFZLENBQUMsSUFBSSxDQUFDO2FBQ2xCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLDZCQUE2QixDQUFDLENBQUMsQ0FBQztRQUNuRixDQUFDLENBQUM7YUFDRCxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYyxFQUFFLElBQW9CO1FBQy9DLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNuQixDQUFDOytHQXZIUSx5QkFBeUI7bUdBQXpCLHlCQUF5QixtRkNoQnRDLGcySEFvR0E7OzRGRHBGYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0ksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tVG9hc3RTZXJ2aWNlLCBUYWdTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBUT0tFTl9LRVksIFVzZXIgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXV0aWxpdGllcyc7XG5pbXBvcnQgeyBIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2hlbHBlci1zZXJ2aWNlJztcblxuaW1wb3J0IHsgUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNvdXJjZUJsb2cgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvbW9kZWxzL3Jlc291cmNlLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy1yZWxhdGVkLXJlc291cmNlcycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JlbGF0ZWQtcmVzb3VyY2VzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yZWxhdGVkLXJlc291cmNlcy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0ZWRSZXNvdXJjZXNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICByZXNvdXJjZUNhcmRzID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICB0aXRsZTogJ0JMT0c6IEhlcmXigJlzIHdoeSB5b3Ugc2hvdWxkIFFBIHlvdXIgZGlzdHJpYnV0b3IgaW52b2ljZXMnLFxuICAgICAgICAgICAgaW1hZ2U6ICcvYXNzZXRzL2ltZy9yZXNvdXJjZS9yZXNvdXJjZS1xYS5wbmcnLFxuICAgICAgICAgICAgYWx0OiAnUUEgZGlzdHJpYnV0b3IgaW52b2ljZXMnLFxuICAgICAgICAgICAgdXJsOiAnL3Jlc291cmNlcy92aWV3L2hlcmUtcy13aHkteW91LXNob3VsZC1iZS1zZWVraW5nLWluZGVwZW5kZW50LXFhLW9mLWFsbC1kaXN0cmlidXRvci1pbnYnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHRpdGxlOiAnQkxPRzogNCBpbnN0YW50IGhhY2tzIHRvIHVwbGlmdCB5b3VyIE1TUOKAmXMgbW9udGhseSBiaWxsaW5nJyxcbiAgICAgICAgICAgIGltYWdlOiAnL2Fzc2V0cy9pbWcvcmVzb3VyY2UvcmVzb3VyY2UtaGFja3MucG5nJyxcbiAgICAgICAgICAgIGFsdDogJ01vbnRobHkgYmlsbGluZyBoYWNrcycsXG4gICAgICAgICAgICB1cmw6ICcvcmVzb3VyY2VzL3ZpZXcvNC1pbnN0YW50LWhhY2tzLXRvLXVwbGlmdC15b3VyLW1zcC1zLW1vbnRobHktYmlsbGluZydcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgdGl0bGU6ICdCTE9HOiBUaGUgdHJpdmlhbCBkZXRhaWwgdGhhdCB3aWxsIGVpdGhlciBmdXR1cmUtcHJvb2Ygb3Igc2Fib3RhZ2UgeW91ciBQU0EuJyxcbiAgICAgICAgICAgIGltYWdlOiAnL2Fzc2V0cy9pbWcvcmVzb3VyY2UvcmVzb3VyY2UtcHNhLnBuZycsXG4gICAgICAgICAgICBhbHQ6ICdQU0EgZnV0dXJlLXByb29mJyxcbiAgICAgICAgICAgIHVybDogJy9yZXNvdXJjZXMvdmlldy90aGUtdHJpdmlhbC1kZXRhaWwtdGhhdC13aWxsLWVpdGhlci1mdXR1cmUtcHJvb2Ytb3Itc2Fib3RhZ2UteW91ci1wc2EnXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcG9zdDtcbiAgICBtYXN0ZXJTdWJzY3JpcHRpb25JZDtcbiAgICBzbHVnO1xuXG4gICAgcG9zdENvbW1lbnRzID0gW107XG4gICAgY29tbWVudEZvcm07XG5cbiAgICB1c2VyTG9nZ2VkSW46IGJvb2xlYW47XG5cbiAgICBkZW1vTGlua3MgPSB0aGlzLmFwcENvbmZpZz8ucGFnZXNfY29uZmlnPy5ib29rX2RlbW8/Lml0ZW1zO1xuXG4gICAgdXNlcjogVXNlcjtcbiAgICBibG9nUG9zdFRhZztcbiAgICBzdWJzY3JpcHRpb25JZDtcbiAgICBsaW5rZWRJblVybCA9IHRoaXMuYXBwQ29uZmlnPy5zb2NpYWw/LmxpbmtlZGluX3VybDtcbiAgICBjb21wYW55X2VtYWlsID0gdGhpcy5hcHBDb25maWcuY29tcGFueS5lbWFpbDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlU2VydmljZTogUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnU2VydmljZTogVGFnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdHI6IEN1c3RvbVRvYXN0U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgICAgIHRoaXMuY29tbWVudEZvcm0gPSBSZXNvdXJjZUJsb2cuZ2V0UmVzb3VyY2VQb3N0c0Zvcm0oKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tYXN0ZXJTdWJzY3JpcHRpb25JZCA9IHRoaXMuYXBwQ29uZmlnLm1hc3Rlcl9zdWJzY3JpcHRpb24uc3Vic2NyaXB0aW9uX2lkO1xuICAgICAgICB0aGlzLnJvdXRlLnBhcmFtcy5zdWJzY3JpYmUocGFyYW1zID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2x1ZyA9IHBhcmFtc1snc2x1ZyddIHx8ICcnO1xuICAgICAgICAgICAgdGhpcy5nZXRCbG9nSXRlbSh0aGlzLnNsdWcpO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5saW5rZWRJblVybCwgdGhpcy5hcHBDb25maWcpO1xuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtJChUT0tFTl9LRVkpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy51c2VyTG9nZ2VkSW4gPSAhIXJlcztcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXJMb2dnZWRJbikge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckluZm8oKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlciA9IGRhdGE7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSQoJ3Byb2R1Y3QnKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IHJlcyA/IEpTT04ucGFyc2UocmVzKSA6IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uSWQgPSBkYXRhPy5zdWJzY3JpcHRpb25JZDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZ2V0UG9zdFRhZ3MoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1ZhbGlkRGVtb0xpbmtzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLmRlbW9MaW5rcykgJiYgdGhpcy5kZW1vTGlua3Muc29tZShsaW5rID0+IGxpbms/LnRpdGxlIHx8IGxpbms/LnVybClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBvc3RUYWdzKCkge1xuICAgICAgICB0aGlzLnRhZ1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXRUYWdzQnlUeXBlKCdwb3N0X2NhdGVnb3JpZXMnLCB7fSwgdGhpcy5zdWJzY3JpcHRpb25JZCB8fCB0aGlzLm1hc3RlclN1YnNjcmlwdGlvbklkKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5ibG9nUG9zdFRhZyA9IHJlc3BvbnNlLnRhZ3MuZmluZCh0YWcgPT4gdGFnLm5hbWUgPT09ICdCbG9nIFBvc3RzJyk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJsb2dJdGVtKHNsdWc6IHN0cmluZykge1xuICAgICAgICB0aGlzLnJlc291cmNlU2VydmljZS5nZXRQb3N0QnlTbHVnKHNsdWcpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICBsZXQgYmxvZ0JvZHk7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2U/LmJvZHkpIHtcbiAgICAgICAgICAgICAgICBibG9nQm9keSA9IEhlbHBlclNlcnZpY2Uuc2FuaXRpemVRdWlsbEJvZHkocmVzcG9uc2UuYm9keSwgdGhpcy5zYW5pdGl6ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHJlc3BvbnNlPy53aGVuKTtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZCA9IGRhdGUudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdO1xuICAgICAgICAgICAgY29uc29sZS5sb2coZm9ybWF0dGVkKTsgLy9cbiAgICAgICAgICAgIHRoaXMucG9zdENvbW1lbnRzID0gcmVzcG9uc2UuZW50aXR5X2NvbW1lbnRzO1xuICAgICAgICAgICAgdGhpcy5wb3N0ID0geyAuLi5yZXNwb25zZSwgYm9keTogYmxvZ0JvZHksIHdoZW46IGZvcm1hdHRlZCB9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNvbW1lbnQoKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB7IC4uLnRoaXMuY29tbWVudEZvcm0udmFsdWUgfTtcbiAgICAgICAgZGF0YS5yZWxhdGVkX2VudGl0eV9pZCA9IHRoaXMucG9zdD8uaWQ7XG4gICAgICAgIGRhdGEucmVsYXRlZF9lbnRpdHlfdHlwZSA9ICdQb3N0JztcbiAgICAgICAgZGF0YS51c2VyX2lkID0gdGhpcy51c2VyPy5pZDtcbiAgICAgICAgdGhpcy5yZXNvdXJjZVNlcnZpY2VcbiAgICAgICAgICAgIC5wb3N0Q29tbWVudHMoZGF0YSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0QmxvZ0l0ZW0odGhpcy5zbHVnKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbW1lbnRGb3JtLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdHIuc3VjY2Vzcyh0aGlzLnRyYW5zbGF0aW9uLnRyYW5zbGF0ZSgnUmVzb3VyY2UuUG9zdHMuQ29tbWVudEFkZGVkJykpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdJbiB0aGlzJyk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0cmFja0J5Q29tbWVudChfaW5kZXg6IG51bWJlciwgaXRlbTogeyBpZDogbnVtYmVyIH0pIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQ7XG4gICAgfVxufVxuIiwiXG5cbjxzZWN0aW9uIGNsYXNzPVwicmVzb3VyY2UtYm9keS1zZWN0aW9uXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwicWwtc25vdyBib2R5LXF1aWxsXCJcbiAgICA+XG4gICAgPGRpdiBjbGFzcz1cInFsLWVkaXRvciBib2R5IHBvc3QtYm9keS10ZXh0XCJcbiAgICAgIFtpbm5lckhUTUxdPVwicG9zdD8uYm9keVwiPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJuY2Utb2ZmZXItc2VjdGlvblwiPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTUgbWItNCByZXNwb25zZS1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxuICAgICAgICAgIDxmb3JtXG4gICAgICAgICAgICBjbGFzcz1cInAtZmx1aWQgbWItNVwiXG4gICAgICAgICAgICBbZm9ybUdyb3VwXT1cImNvbW1lbnRGb3JtXCJcbiAgICAgICAgICAgIChuZ1N1Ym1pdCk9XCJvbkNvbW1lbnQoKVwiXG4gICAgICAgICAgICAqbmdJZj1cInVzZXJMb2dnZWRJbjsgZWxzZSB1c2VyTG9nZ2VkT3V0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBzaGFkb3ctc20gYm9yZGVyLTAgcC00XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjb21tZW50XCIgY2xhc3M9XCJmb250LWJvbGQgdGV4dC1sZyBtYi00IGNvbW1lbnQtbGFiZWxcIj7wn5KsIExlYXZlIGEgY29tbWVudDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICAgICAgICBwSW5wdXRUZXh0YXJlYVxuICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiY29tbWVudFwiXG4gICAgICAgICAgICAgICAgICByb3dzPVwiNlwiXG4gICAgICAgICAgICAgICAgICBhdXRvUmVzaXplPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInAtaW5wdXR0ZXh0IHAtY29tcG9uZW50IHAtaW5wdXR0ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIldoYXQncyBvbiB5b3VyIG1pbmQ/XCJcbiAgICAgICAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgICAgICAgICA8c21hbGxcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1kYW5nZXJcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb21tZW50Rm9ybS5nZXQoJ2NvbW1lbnQnKT8uaW52YWxpZCAmJiBjb21tZW50Rm9ybS5nZXQoJ2NvbW1lbnQnKT8udG91Y2hlZFwiXG4gICAgICAgICAgICAgICAgICA+UGxlYXNlIGVudGVyIGNvbW1lbnQ8L3NtYWxsXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZW5kIG10LTNcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgIFtidXR0b25CdXN5XT1cImJ1dHRvbkJ1c3lcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2lnbi1idG4gc2lnbi1oZWFkZXItYnRuXCI+XG4gICAgICAgICAgICAgICAge3sgJ0J1dHRvbi5TdWJtaXQnIHwgdHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3VzZXJMb2dnZWRPdXQ+XG4gICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtY2VudGVyIHB0LTMgcGItMyB1c2VyLW5vdC1sb2dnZWQtaW4gdGV4dC1tdXRlZCBzaGFkb3ctc20gbWItNVwiPlxuICAgICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbJy9sb2dpbiddXCIgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZnctYm9sZFwiPkxvZyBpbjwvYT4gdG8gbGVhdmUgYSBjb21tZW50IVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtNSBjb21tZW50LXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCIgKm5nRm9yPVwibGV0IGNvbW1lbnQgb2YgcG9zdENvbW1lbnRzOyB0cmFja0J5OiB0cmFja0J5Q29tbWVudFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGJvcmRlci0wIHNoYWRvdy1zbSBwLTMgbWItM1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydFwiPlxuICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCJjb21tZW50Py5hdXRob3I/LmF2YXRhcj8uWzBdPy51cmwgfHwgJ2Fzc2V0cy9pbWcvaWNvbnMvbWFsZS5wbmcnXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCJhdmF0YXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwicm91bmRlZC1jaXJjbGUgbWUtM1wiXG4gICAgICAgICAgICAgICAgd2lkdGg9XCI1MFwiXG4gICAgICAgICAgICAgICAgaGVpZ2h0PVwiNTBcIlxuICAgICAgICAgICAgICAgIChlcnJvcik9XCJoYW5kbGVJbWFnZUVycm9yKCRldmVudCwgJ2Fzc2V0cy9pbWcvaWNvbnMvbWFsZS5wbmcnKVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmdy1ib2xkIHRleHQtZGFya1wiPlxuICAgICAgICAgICAgICAgICAge3sgY29tbWVudC51c2VyPy5maXJzdF9uYW1lIHx8ICcnIH19IHt7IGNvbW1lbnQudXNlcj8ubGFzdF9uYW1lIHx8ICcnIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtbXV0ZWQgc21hbGwgbWItMlwiPnt7IGNvbW1lbnQuY3JlYXRlZF9hdCB8IGRhdGU6ICdkZCBNTU0geXl5eSwgaDptbSBhJyB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWJvZHlcIj5cbiAgICAgICAgICAgICAgICAgIHt7IGNvbW1lbnQuY29tbWVudCB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG5cbiAgPC9zZWN0aW9uPlxuICA8L2Rpdj5cbiAgPGhyIGNsYXNzPVwibmNlLWRpdmlkZXJcIiAvPlxuPC9zZWN0aW9uPlxuXG48c2VjdGlvbiBjbGFzcz1cIm5jZS1ib29rLXNlY3Rpb25cIiAqbmdJZj1cImhhc1ZhbGlkRGVtb0xpbmtzXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cblxuICAgIDxwIGNsYXNzPVwibmNlLWNvbnRhY3RcIj5cbiAgICAgIEFueSBxdWVzdGlvbnMsIGdldCBpbiB0b3VjaCA8YSBocmVmPVwibWFpbHRvOnt7IGNvbXBhbnlfZW1haWwgfX1cIj5oZXJlPC9hPixcbiAgICAgIDxhIFtocmVmXT1cImxpbmtlZEluVXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCI+Y29ubmVjdCBvbiBMaW5rZWRJbjwvYT4sIG9yIGJvb2sgYSBtZWV0aW5nIGJlbG93OlxuICAgIDwvcD5cbiAgPC9kaXY+XG4gIDxwdy1ib29rLWEtZGVtbyBbaXNCbG9nXT1cInRydWVcIj48L3B3LWJvb2stYS1kZW1vPlxuICA8aHIgY2xhc3M9XCJuY2UtZGl2aWRlclwiIC8+XG48L3NlY3Rpb24+XG5cblxuPHB3LXJlc291cmNlLWNhcmRzICpuZ0lmPVwiYmxvZ1Bvc3RUYWc/LnRhZ19jYXRlZ29yeV9pZFwiIFtjYXRlZ29yeUlkXT1cImJsb2dQb3N0VGFnPy50YWdfY2F0ZWdvcnlfaWRcIiBbcmVzb3VyY2VUaXRsZV09XCJibG9nUG9zdFRhZz8udGl0bGVcIiBbaXNIZWFkZXJWaXNpYmxlXT1cInRydWVcIiByZXNvdXJjZUxpbms9XCIvcmVzb3VyY2VzL2Jsb2dzXCIgW3Jlc291cmNlVGl0bGVdPVwiJ090aGVyIHJlc291cmNlcyB5b3UgbWF5IGJlIGludGVyZXN0ZWQgaW46J1wiPjwvcHctcmVzb3VyY2UtY2FyZHM+XG4iXX0=