@jooler/jooler-websites-shared 0.0.253 → 0.0.255
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.
|
@@ -95,7 +95,7 @@ export class ImageGalleryModal {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageGalleryModal, deps: [{ token: i1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component });
|
|
98
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageGalleryModal, selector: "image-gallery-modal", inputs: { galleryData: "galleryData", showCount: "showCount" }, host: { listeners: { "document:keydown.escape": "onKeydownHandler($event)" } }, ngImport: i0, template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"], dependencies: [{ kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Galleria, selector: "p-galleria", inputs: ["activeIndex", "fullScreen", "id", "value", "numVisible", "responsiveOptions", "showItemNavigators", "showThumbnailNavigators", "showItemNavigatorsOnHover", "changeItemOnIndicatorHover", "circular", "autoPlay", "shouldStopAutoplayByClick", "transitionInterval", "showThumbnails", "thumbnailsPosition", "verticalThumbnailViewPortHeight", "showIndicators", "showIndicatorsOnItem", "indicatorsPosition", "baseZIndex", "maskClass", "containerClass", "containerStyle", "showTransitionOptions", "hideTransitionOptions", "visible"], outputs: ["activeIndexChange", "visibleChange"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], animations: [
|
|
98
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageGalleryModal, selector: "image-gallery-modal", inputs: { galleryData: "galleryData", showCount: "showCount" }, host: { listeners: { "document:keydown.escape": "onKeydownHandler($event)" } }, ngImport: i0, template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(4,1fr)!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)!important}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"], dependencies: [{ kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Galleria, selector: "p-galleria", inputs: ["activeIndex", "fullScreen", "id", "value", "numVisible", "responsiveOptions", "showItemNavigators", "showThumbnailNavigators", "showItemNavigatorsOnHover", "changeItemOnIndicatorHover", "circular", "autoPlay", "shouldStopAutoplayByClick", "transitionInterval", "showThumbnails", "thumbnailsPosition", "verticalThumbnailViewPortHeight", "showIndicators", "showIndicatorsOnItem", "indicatorsPosition", "baseZIndex", "maskClass", "containerClass", "containerStyle", "showTransitionOptions", "hideTransitionOptions", "visible"], outputs: ["activeIndexChange", "visibleChange"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], animations: [
|
|
99
99
|
trigger('animation', [
|
|
100
100
|
transition('void => visible', [
|
|
101
101
|
style({ transform: 'scale(0.5)', opacity: 0 }),
|
|
@@ -139,7 +139,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
139
139
|
animate('200ms', style({ opacity: 0 }))
|
|
140
140
|
])
|
|
141
141
|
])
|
|
142
|
-
], template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(
|
|
142
|
+
], template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(4,1fr)!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)!important}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"] }]
|
|
143
143
|
}], ctorParameters: function () { return [{ type: i1.BreakpointObserver }]; }, propDecorators: { galleryData: [{
|
|
144
144
|
type: Input
|
|
145
145
|
}], showCount: [{
|
|
@@ -148,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
148
148
|
type: HostListener,
|
|
149
149
|
args: ['document:keydown.escape', ['$event']]
|
|
150
150
|
}] } });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZ2FsbGVyeS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9qb29sZXItd2Vic2l0ZXMtc2hhcmVkL3NyYy9saWIvaW1hZ2UtZ2FsbGVyeS1tb2RhbC9pbWFnZS1nYWxsZXJ5LW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2pvb2xlci13ZWJzaXRlcy1zaGFyZWQvc3JjL2xpYi9pbWFnZS1nYWxsZXJ5LW1vZGFsL2ltYWdlLWdhbGxlcnktbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWtCLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUE0QjFGLE1BQU0sT0FBTyxpQkFBaUI7SUFZbEI7SUFYRCxXQUFXLEdBQWtCLEVBQUUsQ0FBQztJQUNoQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTNCLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDckIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQix3QkFBd0IsR0FBZ0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RCxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDaEIsZUFBZSxHQUFHLENBQUMsQ0FBQztJQUNwQixpQkFBaUIsQ0FBUTtJQUN6QixZQUNVLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBRzVDLENBQUM7SUFDTCxRQUFRO1FBQ04sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FDN0Isb0JBQW9CLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUF1QixF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QUFDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDeEUsQ0FBQzs0QkFDRixVQUFVLENBQUMsaUJBQWlCLEVBQUU7Z0NBQzVCLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDekUsQ0FBQzt5QkFDSCxDQUFDO3dCQUNGLE9BQU8sQ0FBQyxZQUFZLEVBQUU7NEJBQ3BCLHlEQUF5RDs0QkFDekQsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO2dDQUNyQixPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzZCQUN4QyxDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NkJBQ3hDLENBQUM7eUJBQ0gsQ0FBQztxQkFDSDt5R0FHUSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBNkMrQyxnQkFBZ0I7c0JBQXBFLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2FsbGVyeUl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZ2FsbGVyeS1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludFN0YXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbWFnZS1nYWxsZXJ5LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLWdhbGxlcnktbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbWFnZS1nYWxsZXJ5LW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdhbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IHZpc2libGUnLCBbXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KScsIG9wYWNpdHk6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzE1MG1zIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgxKScsIG9wYWNpdHk6IDEgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gdm9pZCcsIFtcbiAgICAgICAgYW5pbWF0ZSgnMTUwbXMgZWFzZS1pbicsIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KScsIG9wYWNpdHk6IDAgfSkpXG4gICAgICBdKSxcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdhbmltYXRpb24yJywgW1xuICAgICAgLy8gQWRkIDplbnRlciBzbyBBbmd1bGFyIGtub3dzIGhvdyB0byBzdGFydCB0aGUgYW5pbWF0aW9uXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMnLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlR2FsbGVyeU1vZGFsIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZ2FsbGVyeURhdGE6IEdhbGxlcnlJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgc2hvd0NvdW50ID0gZmFsc2U7XG5cbiAgcHJldmlld0ltYWdlID0gZmFsc2U7XG4gIHNob3dNYXNrID0gZmFsc2U7XG4gIGN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbDogR2FsbGVyeUl0ZW0gPSB0aGlzLmdhbGxlcnlEYXRhWzBdO1xuICBjdXJyZW50SW5kZXggPSAwO1xuICBjb250cm9scyA9IHRydWU7XG4gIHRvdGFsSW1hZ2VDb3VudCA9IDA7XG4gIHJlc3BvbnNpdmVPcHRpb25zOiBhbnlbXTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcblxuXG4gICkgeyB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLm9ic2VydmUoXG4gICAgICBcIihtYXgtd2lkdGg6IDkwMHB4KVwiKS5zdWJzY3JpYmUoKHJlc3VsdDogQnJlYWtwb2ludFN0YXRlKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQubWF0Y2hlcykge1xuICAgICAgICAgIHRoaXMub25DbG9zZVByZXZpZXcoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgdGhpcy50b3RhbEltYWdlQ291bnQgPSB0aGlzLmdhbGxlcnlEYXRhLmxlbmd0aDtcbiAgICB0aGlzLnJlc3BvbnNpdmVPcHRpb25zID0gW1xuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnOTAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiA1XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNjAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiA0XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNTQwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAzXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNDAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnMzAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAxXG4gICAgICB9XG4gICAgXTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pIG9uS2V5ZG93bkhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICB0aGlzLm9uQ2xvc2VQcmV2aWV3KCk7XG4gIH1cblxuICBvblByZXZpZXdJbWFnZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1kgPSAnaGlkZGVuJztcbiAgICB0aGlzLnNob3dNYXNrID0gdHJ1ZTtcbiAgICB0aGlzLnByZXZpZXdJbWFnZSA9IHRydWU7XG4gICAgdGhpcy5jdXJyZW50SW5kZXggPSBpbmRleDtcbiAgICB0aGlzLmN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbCA9IHRoaXMuZ2FsbGVyeURhdGFbaW5kZXhdO1xuICB9XG5cbiAgb25jbGlja1ByZXYoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50SW5kZXgtLTsgLy8gRGVjcmVtZW50IGZvciBQcmV2aW91c1xuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA8IDApIHtcbiAgICAgIHRoaXMuY3VycmVudEluZGV4ID0gdGhpcy5nYWxsZXJ5RGF0YS5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLmN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbCA9IHRoaXMuZ2FsbGVyeURhdGFbdGhpcy5jdXJyZW50SW5kZXhdO1xuICB9XG5cbiAgb25jbGlja05leHQoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50SW5kZXgrKzsgLy8gSW5jcmVtZW50IGZvciBOZXh0XG4gICAgaWYgKHRoaXMuY3VycmVudEluZGV4ID4gdGhpcy5nYWxsZXJ5RGF0YS5sZW5ndGggLSAxKSB7XG4gICAgICB0aGlzLmN1cnJlbnRJbmRleCA9IDA7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudEltYWdlR2FsbGVyeU1vZGFsID0gdGhpcy5nYWxsZXJ5RGF0YVt0aGlzLmN1cnJlbnRJbmRleF07XG4gIH1cblxuICBvbkNsb3NlUHJldmlldygpIHtcbiAgICAvLyAxLiBJbW1lZGlhdGVseSByZS1lbmFibGUgc2Nyb2xsaW5nXG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1kgPSAndmlzaWJsZSc7XG4gICAgXG4gICAgLy8gMi4gVGhpcyB0cmlnZ2VycyB0aGUgKEBhbmltYXRpb24uZG9uZSkgb3IgW0BhbmltYXRpb25dICd2b2lkJyBzdGF0ZVxuICAgIHRoaXMucHJldmlld0ltYWdlID0gZmFsc2U7XG5cbiAgICAvLyAzLiBTQUZFVFkgRkFMTEJBQ0s6IFxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZG9lc24ndCBmaXJlIGZvciBzb21lIHJlYXNvbiwgXG4gICAgLy8gd2UgZm9yY2UgdGhlIG1hc2sgY2xvc2VkIGFmdGVyIGEgc2hvcnQgZGVsYXkuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucHJldmlld0ltYWdlKSB7XG4gICAgICAgIHRoaXMuc2hvd01hc2sgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9LCAyMDApOyBcbiAgfVxuXG4gIG9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xuICAgIC8vIFdoZW4gdGhlICdzY2FsZScgYW5pbWF0aW9uIHJlYWNoZXMgJ3ZvaWQnIChkaXNhcHBlYXJzKSwgaGlkZSB0aGUgZGFyayBtYXNrXG4gICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyB8fCBldmVudC5mcm9tU3RhdGUgPT09ICd2aXNpYmxlJykge1xuICAgICAgdGhpcy5zaG93TWFzayA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwic2VjdGlvblwiPlxuICAgIDxkaXYgY2xhc3M9XCJnYWxsZXJ5LWltYWdlLWdhbGxlcnktbW9kYWwtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnYWxsZXJ5XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdhbGxlcnlEYXRhOyBsZXQgaSA9IGluZGV4XCIgXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZ2FsbGVyeS1pbWFnZVwiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJvblByZXZpZXdJbWFnZShpKVwiPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBcbiAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBcbiAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5kaXNwbGF5X25hbWVcIj5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2UtY3RhXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPlZpZXc8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJtYWduaWZ5aW5nLWdsYXNzLXBsdXNcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInNob3dNYXNrXCIgXG4gICAgICAgICAgICAgY2xhc3M9XCJpbWFnZS1nYWxsZXJ5LW1vZGFsXCIgXG4gICAgICAgICAgICAgQGFuaW1hdGlvbjI+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93Q291bnRcIiBjbGFzcz1cImNvdW50XCI+XG4gICAgICAgICAgICAgICAge3tjdXJyZW50SW5kZXggKyAxfX0gLyB7e3RvdGFsSW1hZ2VDb3VudH19XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwib25DbG9zZVByZXZpZXcoKVwiIGNsYXNzPVwiY2xvc2UtYnRuXCIgYXJpYS1sYWJlbD1cIkNsb3NlIHByZXZpZXdcIj5cbiAgICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwidGltZXNcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2xzXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1pbWFnZS1nYWxsZXJ5LW1vZGFsLWNhcm91c2VsIGJ0bi1wcmV2XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25jbGlja1ByZXYoKVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlByZXZpb3VzIGltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJjaGV2cm9uLWxlZnRcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1pbWFnZS1nYWxsZXJ5LW1vZGFsLWNhcm91c2VsIGJ0bi1uZXh0XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25jbGlja05leHQoKVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIk5leHQgaW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImNoZXZyb24tcmlnaHRcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByZXZpZXdJbWFnZVwiIFxuICAgICAgICAgICAgICAgICBbQGFuaW1hdGlvbl09XCIndmlzaWJsZSdcIlxuICAgICAgICAgICAgICAgICAoQGFuaW1hdGlvbi5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKCRldmVudClcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlLWdhbGxlcnktbW9kYWwtaW1nXCI+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbD8uaW1hZ2VfdXJsXCIgXG4gICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbD8uZGlzcGxheV9uYW1lXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ2FsbGVyeS1tb2JpbGUtd3JhcHBlclwiPlxuICAgICAgICA8cC1nYWxsZXJpYSBbdmFsdWVdPVwiZ2FsbGVyeURhdGFcIiBcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnYWxsZXJ5LWN1c3RvbVwiIFxuICAgICAgICAgICAgICAgICAgICBbcmVzcG9uc2l2ZU9wdGlvbnNdPVwicmVzcG9uc2l2ZU9wdGlvbnNcIiBcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lclN0eWxlXT1cInsgJ21heC13aWR0aCc6ICcxMDAlJyB9XCJcbiAgICAgICAgICAgICAgICAgICAgW2NpcmN1bGFyXT1cInRydWVcIiBcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJdGVtTmF2aWdhdG9yc109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dUaHVtYm5haWxzXT1cInRydWVcIj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cIml0ZW1cIiBsZXQtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBjbGFzcz1cImJpZy1pbWdcIiBbYWx0XT1cIml0ZW0uZGlzcGxheV9uYW1lXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJ0aHVtYm5haWxcIiBsZXQtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGh1bWJuYWlsLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBjbGFzcz1cInNtYWxsLWltZ1wiIFthbHRdPVwiaXRlbS5kaXNwbGF5X25hbWVcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWdhbGxlcmlhPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZ2FsbGVyeS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9qb29sZXItd2Vic2l0ZXMtc2hhcmVkL3NyYy9saWIvaW1hZ2UtZ2FsbGVyeS1tb2RhbC9pbWFnZS1nYWxsZXJ5LW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2pvb2xlci13ZWJzaXRlcy1zaGFyZWQvc3JjL2xpYi9pbWFnZS1nYWxsZXJ5LW1vZGFsL2ltYWdlLWdhbGxlcnktbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWtCLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUE0QjFGLE1BQU0sT0FBTyxpQkFBaUI7SUFZbEI7SUFYRCxXQUFXLEdBQWtCLEVBQUUsQ0FBQztJQUNoQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTNCLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDckIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQix3QkFBd0IsR0FBZ0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RCxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDaEIsZUFBZSxHQUFHLENBQUMsQ0FBQztJQUNwQixpQkFBaUIsQ0FBUTtJQUN6QixZQUNVLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBRzVDLENBQUM7SUFDTCxRQUFRO1FBQ04sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FDN0Isb0JBQW9CLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUF1QixF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QUFDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDeEUsQ0FBQzs0QkFDRixVQUFVLENBQUMsaUJBQWlCLEVBQUU7Z0NBQzVCLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDekUsQ0FBQzt5QkFDSCxDQUFDO3dCQUNGLE9BQU8sQ0FBQyxZQUFZLEVBQUU7NEJBQ3BCLHlEQUF5RDs0QkFDekQsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO2dDQUNyQixPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzZCQUN4QyxDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NkJBQ3hDLENBQUM7eUJBQ0gsQ0FBQztxQkFDSDt5R0FHUSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBNkMrQyxnQkFBZ0I7c0JBQXBFLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2FsbGVyeUl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZ2FsbGVyeS1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludFN0YXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbWFnZS1nYWxsZXJ5LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLWdhbGxlcnktbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbWFnZS1nYWxsZXJ5LW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdhbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IHZpc2libGUnLCBbXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KScsIG9wYWNpdHk6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzE1MG1zIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICdzY2FsZSgxKScsIG9wYWNpdHk6IDEgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gdm9pZCcsIFtcbiAgICAgICAgYW5pbWF0ZSgnMTUwbXMgZWFzZS1pbicsIHN0eWxlKHsgdHJhbnNmb3JtOiAnc2NhbGUoMC41KScsIG9wYWNpdHk6IDAgfSkpXG4gICAgICBdKSxcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdhbmltYXRpb24yJywgW1xuICAgICAgLy8gQWRkIDplbnRlciBzbyBBbmd1bGFyIGtub3dzIGhvdyB0byBzdGFydCB0aGUgYW5pbWF0aW9uXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMnLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlR2FsbGVyeU1vZGFsIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZ2FsbGVyeURhdGE6IEdhbGxlcnlJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgc2hvd0NvdW50ID0gZmFsc2U7XG5cbiAgcHJldmlld0ltYWdlID0gZmFsc2U7XG4gIHNob3dNYXNrID0gZmFsc2U7XG4gIGN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbDogR2FsbGVyeUl0ZW0gPSB0aGlzLmdhbGxlcnlEYXRhWzBdO1xuICBjdXJyZW50SW5kZXggPSAwO1xuICBjb250cm9scyA9IHRydWU7XG4gIHRvdGFsSW1hZ2VDb3VudCA9IDA7XG4gIHJlc3BvbnNpdmVPcHRpb25zOiBhbnlbXTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcblxuXG4gICkgeyB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLm9ic2VydmUoXG4gICAgICBcIihtYXgtd2lkdGg6IDkwMHB4KVwiKS5zdWJzY3JpYmUoKHJlc3VsdDogQnJlYWtwb2ludFN0YXRlKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQubWF0Y2hlcykge1xuICAgICAgICAgIHRoaXMub25DbG9zZVByZXZpZXcoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgdGhpcy50b3RhbEltYWdlQ291bnQgPSB0aGlzLmdhbGxlcnlEYXRhLmxlbmd0aDtcbiAgICB0aGlzLnJlc3BvbnNpdmVPcHRpb25zID0gW1xuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnOTAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiA1XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNjAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiA0XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNTQwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAzXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnNDAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAyXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBicmVha3BvaW50OiAnMzAwcHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAxXG4gICAgICB9XG4gICAgXTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pIG9uS2V5ZG93bkhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICB0aGlzLm9uQ2xvc2VQcmV2aWV3KCk7XG4gIH1cblxuICBvblByZXZpZXdJbWFnZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1kgPSAnaGlkZGVuJztcbiAgICB0aGlzLnNob3dNYXNrID0gdHJ1ZTtcbiAgICB0aGlzLnByZXZpZXdJbWFnZSA9IHRydWU7XG4gICAgdGhpcy5jdXJyZW50SW5kZXggPSBpbmRleDtcbiAgICB0aGlzLmN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbCA9IHRoaXMuZ2FsbGVyeURhdGFbaW5kZXhdO1xuICB9XG5cbiAgb25jbGlja1ByZXYoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50SW5kZXgtLTsgLy8gRGVjcmVtZW50IGZvciBQcmV2aW91c1xuICAgIGlmICh0aGlzLmN1cnJlbnRJbmRleCA8IDApIHtcbiAgICAgIHRoaXMuY3VycmVudEluZGV4ID0gdGhpcy5nYWxsZXJ5RGF0YS5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLmN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbCA9IHRoaXMuZ2FsbGVyeURhdGFbdGhpcy5jdXJyZW50SW5kZXhdO1xuICB9XG5cbiAgb25jbGlja05leHQoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50SW5kZXgrKzsgLy8gSW5jcmVtZW50IGZvciBOZXh0XG4gICAgaWYgKHRoaXMuY3VycmVudEluZGV4ID4gdGhpcy5nYWxsZXJ5RGF0YS5sZW5ndGggLSAxKSB7XG4gICAgICB0aGlzLmN1cnJlbnRJbmRleCA9IDA7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudEltYWdlR2FsbGVyeU1vZGFsID0gdGhpcy5nYWxsZXJ5RGF0YVt0aGlzLmN1cnJlbnRJbmRleF07XG4gIH1cblxuICBvbkNsb3NlUHJldmlldygpIHtcbiAgICAvLyAxLiBJbW1lZGlhdGVseSByZS1lbmFibGUgc2Nyb2xsaW5nXG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1kgPSAndmlzaWJsZSc7XG4gICAgXG4gICAgLy8gMi4gVGhpcyB0cmlnZ2VycyB0aGUgKEBhbmltYXRpb24uZG9uZSkgb3IgW0BhbmltYXRpb25dICd2b2lkJyBzdGF0ZVxuICAgIHRoaXMucHJldmlld0ltYWdlID0gZmFsc2U7XG5cbiAgICAvLyAzLiBTQUZFVFkgRkFMTEJBQ0s6IFxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZG9lc24ndCBmaXJlIGZvciBzb21lIHJlYXNvbiwgXG4gICAgLy8gd2UgZm9yY2UgdGhlIG1hc2sgY2xvc2VkIGFmdGVyIGEgc2hvcnQgZGVsYXkuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucHJldmlld0ltYWdlKSB7XG4gICAgICAgIHRoaXMuc2hvd01hc2sgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9LCAyMDApOyBcbiAgfVxuXG4gIG9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xuICAgIC8vIFdoZW4gdGhlICdzY2FsZScgYW5pbWF0aW9uIHJlYWNoZXMgJ3ZvaWQnIChkaXNhcHBlYXJzKSwgaGlkZSB0aGUgZGFyayBtYXNrXG4gICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyB8fCBldmVudC5mcm9tU3RhdGUgPT09ICd2aXNpYmxlJykge1xuICAgICAgdGhpcy5zaG93TWFzayA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwic2VjdGlvblwiPlxuICAgIDxkaXYgY2xhc3M9XCJnYWxsZXJ5LWltYWdlLWdhbGxlcnktbW9kYWwtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnYWxsZXJ5XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdhbGxlcnlEYXRhOyBsZXQgaSA9IGluZGV4XCIgXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZ2FsbGVyeS1pbWFnZVwiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJvblByZXZpZXdJbWFnZShpKVwiPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBcbiAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBcbiAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5kaXNwbGF5X25hbWVcIj5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2UtY3RhXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPlZpZXc8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJtYWduaWZ5aW5nLWdsYXNzLXBsdXNcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInNob3dNYXNrXCIgXG4gICAgICAgICAgICAgY2xhc3M9XCJpbWFnZS1nYWxsZXJ5LW1vZGFsXCIgXG4gICAgICAgICAgICAgQGFuaW1hdGlvbjI+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93Q291bnRcIiBjbGFzcz1cImNvdW50XCI+XG4gICAgICAgICAgICAgICAge3tjdXJyZW50SW5kZXggKyAxfX0gLyB7e3RvdGFsSW1hZ2VDb3VudH19XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwib25DbG9zZVByZXZpZXcoKVwiIGNsYXNzPVwiY2xvc2UtYnRuXCIgYXJpYS1sYWJlbD1cIkNsb3NlIHByZXZpZXdcIj5cbiAgICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwidGltZXNcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2xzXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1pbWFnZS1nYWxsZXJ5LW1vZGFsLWNhcm91c2VsIGJ0bi1wcmV2XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25jbGlja1ByZXYoKVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlByZXZpb3VzIGltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJjaGV2cm9uLWxlZnRcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1pbWFnZS1nYWxsZXJ5LW1vZGFsLWNhcm91c2VsIGJ0bi1uZXh0XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25jbGlja05leHQoKVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIk5leHQgaW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImNoZXZyb24tcmlnaHRcIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByZXZpZXdJbWFnZVwiIFxuICAgICAgICAgICAgICAgICBbQGFuaW1hdGlvbl09XCIndmlzaWJsZSdcIlxuICAgICAgICAgICAgICAgICAoQGFuaW1hdGlvbi5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKCRldmVudClcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlLWdhbGxlcnktbW9kYWwtaW1nXCI+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbD8uaW1hZ2VfdXJsXCIgXG4gICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImN1cnJlbnRJbWFnZUdhbGxlcnlNb2RhbD8uZGlzcGxheV9uYW1lXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ2FsbGVyeS1tb2JpbGUtd3JhcHBlclwiPlxuICAgICAgICA8cC1nYWxsZXJpYSBbdmFsdWVdPVwiZ2FsbGVyeURhdGFcIiBcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnYWxsZXJ5LWN1c3RvbVwiIFxuICAgICAgICAgICAgICAgICAgICBbcmVzcG9uc2l2ZU9wdGlvbnNdPVwicmVzcG9uc2l2ZU9wdGlvbnNcIiBcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lclN0eWxlXT1cInsgJ21heC13aWR0aCc6ICcxMDAlJyB9XCJcbiAgICAgICAgICAgICAgICAgICAgW2NpcmN1bGFyXT1cInRydWVcIiBcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJdGVtTmF2aWdhdG9yc109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dUaHVtYm5haWxzXT1cInRydWVcIj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cIml0ZW1cIiBsZXQtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBjbGFzcz1cImJpZy1pbWdcIiBbYWx0XT1cIml0ZW0uZGlzcGxheV9uYW1lXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJ0aHVtYm5haWxcIiBsZXQtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGh1bWJuYWlsLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaXRlbS5pbWFnZV91cmxcIiBjbGFzcz1cInNtYWxsLWltZ1wiIFthbHRdPVwiaXRlbS5kaXNwbGF5X25hbWVcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWdhbGxlcmlhPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -314,7 +314,7 @@ class ImageGalleryModal {
|
|
|
314
314
|
}
|
|
315
315
|
}
|
|
316
316
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageGalleryModal, deps: [{ token: i1$2.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component });
|
|
317
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageGalleryModal, selector: "image-gallery-modal", inputs: { galleryData: "galleryData", showCount: "showCount" }, host: { listeners: { "document:keydown.escape": "onKeydownHandler($event)" } }, ngImport: i0, template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"], dependencies: [{ kind: "component", type: i2$1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Galleria, selector: "p-galleria", inputs: ["activeIndex", "fullScreen", "id", "value", "numVisible", "responsiveOptions", "showItemNavigators", "showThumbnailNavigators", "showItemNavigatorsOnHover", "changeItemOnIndicatorHover", "circular", "autoPlay", "shouldStopAutoplayByClick", "transitionInterval", "showThumbnails", "thumbnailsPosition", "verticalThumbnailViewPortHeight", "showIndicators", "showIndicatorsOnItem", "indicatorsPosition", "baseZIndex", "maskClass", "containerClass", "containerStyle", "showTransitionOptions", "hideTransitionOptions", "visible"], outputs: ["activeIndexChange", "visibleChange"] }, { kind: "directive", type: i5$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], animations: [
|
|
317
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageGalleryModal, selector: "image-gallery-modal", inputs: { galleryData: "galleryData", showCount: "showCount" }, host: { listeners: { "document:keydown.escape": "onKeydownHandler($event)" } }, ngImport: i0, template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(4,1fr)!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)!important}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"], dependencies: [{ kind: "component", type: i2$1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Galleria, selector: "p-galleria", inputs: ["activeIndex", "fullScreen", "id", "value", "numVisible", "responsiveOptions", "showItemNavigators", "showThumbnailNavigators", "showItemNavigatorsOnHover", "changeItemOnIndicatorHover", "circular", "autoPlay", "shouldStopAutoplayByClick", "transitionInterval", "showThumbnails", "thumbnailsPosition", "verticalThumbnailViewPortHeight", "showIndicators", "showIndicatorsOnItem", "indicatorsPosition", "baseZIndex", "maskClass", "containerClass", "containerStyle", "showTransitionOptions", "hideTransitionOptions", "visible"], outputs: ["activeIndexChange", "visibleChange"] }, { kind: "directive", type: i5$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], animations: [
|
|
318
318
|
trigger('animation', [
|
|
319
319
|
transition('void => visible', [
|
|
320
320
|
style({ transform: 'scale(0.5)', opacity: 0 }),
|
|
@@ -358,7 +358,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
358
358
|
animate('200ms', style({ opacity: 0 }))
|
|
359
359
|
])
|
|
360
360
|
])
|
|
361
|
-
], template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(
|
|
361
|
+
], template: "<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>", styles: ["html{font-size:62.5%;scroll-behavior:smooth}@media only screen and (max-width: 112.5em){html{font-size:56.25%}}@media only screen and (max-width: 75em){html{font-size:56.25%}}@media only screen and (max-width: 56.25em){html{font-size:50%}}@media only screen and (min-width: 112.5em){html{font-size:75%}}app-root{font-size:1.6rem;font-family:inherit}input{font-size:1.2rem;padding:.5rem}input:focus{outline:none}:host{font-size:62.5%!important}.section{width:100%;padding:2rem 0}.gallery-custom{display:none!important}.gallery-image-gallery-modal-container{position:relative;max-width:1600px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;padding:0 2rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container{padding:1rem}}.gallery-image-gallery-modal-container .gallery{display:grid!important;width:100%!important;grid-template-columns:repeat(4,1fr)!important;gap:1rem!important;line-height:normal}@media only screen and (max-width: 1200px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(3,1fr)!important}}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important}}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .gallery{grid-template-columns:repeat(2,1fr)!important;gap:.8rem!important}}.gallery-image-gallery-modal-container .gallery .gallery-image{position:relative;overflow:hidden;border-radius:.6rem;background-color:#f9f9f9;aspect-ratio:1/1;transition:all .5s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 10px #0000000d}.gallery-image-gallery-modal-container .gallery .gallery-image:hover{transform:translateY(-4px);box-shadow:0 1.5rem 3rem #00000026}.gallery-image-gallery-modal-container .gallery .gallery-image:hover img{transform:scale(1.25);filter:brightness(.5)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta{opacity:1;transform:translate(-50%,-50%)}.gallery-image-gallery-modal-container .gallery .gallery-image:hover .image-cta fa-icon{color:#32353b;font-size:1.3rem}.gallery-image-gallery-modal-container .gallery .gallery-image img{cursor:zoom-in;transition:all .5s cubic-bezier(.25,.46,.45,.94);width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;width:100%;text-align:center;color:#fff;font-size:1.8rem;letter-spacing:1px;pointer-events:none;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-image-gallery-modal-container .gallery .gallery-image .image-cta fa-icon{font-size:2.4rem;margin-top:1rem;display:block;color:#32353b}.gallery-image-gallery-modal-container .image-gallery-modal{position:fixed;inset:0;background-color:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center}.gallery-image-gallery-modal-container .image-gallery-modal .count{position:absolute;top:2rem;left:2rem;color:#fff;font-size:1.6rem;opacity:.8;font-weight:300}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .count{top:1.5rem;left:1.5rem;font-size:1.4rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{position:absolute;top:2.5rem;right:2.5rem;color:#fff;background:none;border:none;cursor:pointer;transition:all .5s cubic-bezier(.25,.46,.45,.94);z-index:1010;padding:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:3rem}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn fa-icon{font-size:2.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .close-btn:hover{transform:rotate(90deg);color:#f0509c}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .close-btn{top:1rem;right:1rem}}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{position:absolute;top:50%;transform:translateY(-50%);background:#32353b;border:none;color:#fff;width:4rem;height:4rem;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:1005}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel:hover{background:#32353b;color:#155ed4;transform:translateY(-50%) scale(1.1)}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:3rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:3rem}@media only screen and (max-width: 900px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:3.4rem;height:3.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:1.5rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.5rem}}@media only screen and (max-width: 500px){.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel{width:2.4rem;height:2.4rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-prev{left:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel.btn-next{right:.8rem}.gallery-image-gallery-modal-container .image-gallery-modal .btn-image-gallery-modal-carousel fa-icon{font-size:1.2rem}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:85%;max-height:80vh;display:flex;justify-content:center;align-items:center}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img{width:95%}}.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:.8rem;box-shadow:0 2rem 6rem #0009}@media only screen and (max-width: 600px){.gallery-image-gallery-modal-container .image-gallery-modal .image-gallery-modal-img img{max-height:70vh}}\n"] }]
|
|
362
362
|
}], ctorParameters: function () { return [{ type: i1$2.BreakpointObserver }]; }, propDecorators: { galleryData: [{
|
|
363
363
|
type: Input
|
|
364
364
|
}], showCount: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jooler-websites-shared.mjs","sources":["../../../projects/jooler-websites-shared/src/lib/models/section-title-sizes.model.ts","../../../projects/jooler-websites-shared/src/lib/section-title/section-title.component.ts","../../../projects/jooler-websites-shared/src/lib/section-title/section-title.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-style-ten/page-section-style-ten.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-ten/page-section-style-ten.component.html","../../../projects/jooler-websites-shared/src/lib/get-started-cta/get-started-cta.component.ts","../../../projects/jooler-websites-shared/src/lib/get-started-cta/get-started-cta.component.html","../../../projects/jooler-websites-shared/src/lib/achievements/achievements.component.ts","../../../projects/jooler-websites-shared/src/lib/achievements/achievements.component.html","../../../projects/jooler-websites-shared/src/lib/services/user.service.ts","../../../projects/jooler-websites-shared/src/lib/auth-route-directive.ts","../../../projects/jooler-websites-shared/src/lib/pricing-plans/pricing-plans.component.ts","../../../projects/jooler-websites-shared/src/lib/pricing-plans/pricing-plans.component.html","../../../projects/jooler-websites-shared/src/lib/image-gallery-modal/image-gallery-modal.component.ts","../../../projects/jooler-websites-shared/src/lib/image-gallery-modal/image-gallery-modal.component.html","../../../projects/jooler-websites-shared/src/lib/success-message-dialog/success-message-dialog.component.ts","../../../projects/jooler-websites-shared/src/lib/success-message-dialog/success-message-dialog.component.html","../../../projects/jooler-websites-shared/src/lib/models/page-section-style-thirteen.model.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-thirteen/page-section-style-thirteen.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-thirteen/page-section-style-thirteen.component.html","../../../projects/jooler-websites-shared/src/lib/call-to-action-section/call-to-action-section.component.ts","../../../projects/jooler-websites-shared/src/lib/call-to-action-section/call-to-action-section.component.html","../../../projects/jooler-websites-shared/src/lib/team/team.component.ts","../../../projects/jooler-websites-shared/src/lib/team/team.component.html","../../../projects/jooler-websites-shared/src/lib/values/values.component.ts","../../../projects/jooler-websites-shared/src/lib/values/values.component.html","../../../projects/jooler-websites-shared/src/lib/our-client-listing/our-client-listing.component.ts","../../../projects/jooler-websites-shared/src/lib/our-client-listing/our-client-listing.component.html","../../../projects/jooler-websites-shared/src/lib/our-clients/our-clients.component.ts","../../../projects/jooler-websites-shared/src/lib/our-clients/our-clients.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component.html","../../../projects/jooler-websites-shared/src/lib/call-to-action-section-two/call-to-action-section-two.component.ts","../../../projects/jooler-websites-shared/src/lib/call-to-action-section-two/call-to-action-section-two.component.html","../../../projects/jooler-websites-shared/src/lib/value-props-section/value-props-section.component.ts","../../../projects/jooler-websites-shared/src/lib/value-props-section/value-props-section.component.html","../../../projects/jooler-websites-shared/src/lib/choose-country-with-flag/choose-country-with-flag.component.ts","../../../projects/jooler-websites-shared/src/lib/choose-country-with-flag/choose-country-with-flag.component.html","../../../projects/jooler-websites-shared/src/lib/contact-us-page/contact-us-page.component.ts","../../../projects/jooler-websites-shared/src/lib/contact-us-page/contact-us-page.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-style-three/page-section-style-three.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-three/page-section-style-three.component.html","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-icons.component.ts","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-icons.component.html","../../../projects/jooler-websites-shared/src/lib/coming-soon/coming-soon.component.ts","../../../projects/jooler-websites-shared/src/lib/coming-soon/coming-soon.component.html","../../../projects/jooler-websites-shared/src/lib/cta-section-style-four/cta-section-style-four.component.ts","../../../projects/jooler-websites-shared/src/lib/cta-section-style-four/cta-section-style-four.component.html","../../../projects/jooler-websites-shared/src/lib/cta-section-style-three/cta-section-style-three.component.ts","../../../projects/jooler-websites-shared/src/lib/cta-section-style-three/cta-section-style-three.component.html","../../../projects/jooler-websites-shared/src/lib/vertical-side-tabs/vertical-side-tabs.component.ts","../../../projects/jooler-websites-shared/src/lib/vertical-side-tabs/vertical-side-tabs.component.html","../../../projects/jooler-websites-shared/src/lib/header-section-one/header-section-one.component.ts","../../../projects/jooler-websites-shared/src/lib/header-section-one/header-section-one.component.html","../../../projects/jooler-websites-shared/src/lib/custom-tooltip/custom-tooltip.component.ts","../../../projects/jooler-websites-shared/src/lib/custom-tooltip/custom-tooltip.component.html","../../../projects/jooler-websites-shared/src/lib/value-prop-card/value-prop-card.component.ts","../../../projects/jooler-websites-shared/src/lib/value-prop-card/value-prop-card.component.html","../../../projects/jooler-websites-shared/src/lib/jooler-websites-shared.module.ts","../../../projects/jooler-websites-shared/src/lib/models/page-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/page-section-action.model.ts","../../../projects/jooler-websites-shared/src/lib/models/achievements.model.ts","../../../projects/jooler-websites-shared/src/lib/models/achievement.model.ts","../../../projects/jooler-websites-shared/src/lib/models/service-plan.model.ts","../../../projects/jooler-websites-shared/src/lib/models/image-section-action.model.ts","../../../projects/jooler-websites-shared/src/lib/models/image-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/team-member.model.ts","../../../projects/jooler-websites-shared/src/lib/models/team-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/account-type.model.ts","../../../projects/jooler-websites-shared/src/lib/models/account.model.ts","../../../projects/jooler-websites-shared/src/lib/models/address.model.ts","../../../projects/jooler-websites-shared/src/lib/models/city.model.ts","../../../projects/jooler-websites-shared/src/lib/models/country.model.ts","../../../projects/jooler-websites-shared/src/lib/models/user-type.model.ts","../../../projects/jooler-websites-shared/src/lib/models/user.model.ts","../../../projects/jooler-websites-shared/src/lib/models/call-to-action-section-two.model.ts","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-links.model.ts","../../../projects/jooler-websites-shared/src/lib/models/perks.model.ts","../../../projects/jooler-websites-shared/src/lib/models/section-title.model.ts","../../../projects/jooler-websites-shared/src/public-api.ts","../../../projects/jooler-websites-shared/src/jooler-websites-shared.ts"],"sourcesContent":["export enum SectionTitleSizes {\n SMALL = 0,\n MEDIUM = 1,\n LARGE = 2\n}","import { Component, Input } from '@angular/core';\nimport { SectionTitle } from '../models/section-title.model'\nimport { SectionTitleSizes } from '../models/section-title-sizes.model';\n@Component({\n selector: 'section-title',\n templateUrl: './section-title.component.html',\n styleUrls: ['./section-title.component.scss']\n})\nexport class SectionTitleComponent {\n @Input() sectionTitle: SectionTitle;\n sectionTitleSizes = SectionTitleSizes;\n @Input() withoutTitleCase: boolean;\n @Input() descriptionWidth: string ;\n}","<div class=\"section-container\" [ngClass]=\"{'align-left':sectionTitle.alignLeft,'align-center':!sectionTitle.alignLeft,'dark-background':sectionTitle.isDarkBg ,'light-background':!sectionTitle.isDarkBg, 'without-divider':sectionTitle.isWithoutDivider,\n'small-font': sectionTitle.fontSizeEnum == sectionTitleSizes.SMALL,\n'medium-font': sectionTitle.fontSizeEnum == sectionTitleSizes.MEDIUM || (!sectionTitle.fontSizeEnum),\n'large-font': (sectionTitle.fontSizeEnum == sectionTitleSizes.LARGE) }\">\n <div class=\"title-container\">\n <div class=\"title\" *ngIf=\"sectionTitle.title\">\n {{withoutTitleCase? sectionTitle.title : (sectionTitle.title | titlecase)}}\n </div>\n <div class=\"divider\" *ngIf=\"!sectionTitle.isWithoutDivider\">\n </div>\n </div>\n <div class=\"description\" *ngIf=\"sectionTitle.subtitle\"\n [ngStyle]=\"descriptionWidth ? {width : descriptionWidth} : null\">\n {{sectionTitle.subtitle}}<ng-content></ng-content>\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageSection } from './../models/page-section.model';\n\n@Component({\n selector: 'page-section-style-ten',\n templateUrl: './page-section-style-ten.component.html',\n styleUrls: ['./page-section-style-ten.component.scss']\n})\nexport class PageSectionStyleTenComponent implements OnInit {\n @Input() data: any | PageSection;\n @Input() iconName: any = \"circle\";\n panelOpenState: boolean = false;\n @Input() selectedPanel: number;\n @Output() panelChanged: EventEmitter<number> = new EventEmitter();\n\n constructor() {\n\n }\n\n ngOnInit(): void { }\n\n onClickPanel(index: number) {\n this.selectedPanel = index;\n console.log(this.selectedPanel)\n this.panelChanged.emit(this.selectedPanel);\n }\n}\n","<mat-accordion class=\"mat-mdc-form-field\">\n <mat-expansion-panel class=\"expansion-panel\" (opened)=\"panelOpenState = true\" (closed)=\"panelOpenState = false\"\n *ngFor=\"let item of data; let i = index\" (click)=\"onClickPanel(i)\">\n <mat-expansion-panel-header>\n <div class=\"panel-headline\">\n <mat-panel-title>\n <fa-icon [icon]=\"iconName\">\n </fa-icon>\n {{item.question}}\n </mat-panel-title>\n </div>\n </mat-expansion-panel-header>\n\n <div class=\"panel-content\">\n <ul>\n <li>\n {{item.answer}}\n </li>\n </ul>\n </div>\n </mat-expansion-panel>\n</mat-accordion>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { GetStartedCta } from '../models/get-started-cta.model';\n@Component({\n selector: 'get-started-cta',\n templateUrl: './get-started-cta.component.html',\n styleUrls: ['./get-started-cta.component.scss']\n})\nexport class GetStartedCTAComponent implements OnInit {\n @Input() ctaCardData: GetStartedCta;\n\n ngOnInit() { }\n constructor(private _Router: Router) { }\n\n onClickLink(route) {\n this._Router.navigate([route]);\n }\n}\n","<div class=\"all\">\n <div class=\"get-started\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-1\" viewBox=\"0 0 228 234\" fill=\"none\">\n <path\n d=\"M0.01022 156.807C3.78242 72.5467 -16.7612 -0.000429796 70.322 -0.000429796C157.405 -0.000429796 228 70.7119 228 157.941C228 245.17 180.321 233.889 94.691 233.133C-3.00754 232.271 0.01022 244.036 0.01022 156.807Z\"\n fill=\"#155ED4\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-2\" viewBox=\"0 0 177 117\" fill=\"none\">\n <path\n d=\"M110.357 10.5333C194 -30.3739 182.428 61.2397 159.12 90.0236C135.811 118.808 82.6409 125.844 53.8569 102.535C25.073 79.226 -15.952 52.3174 7.35676 23.5335C30.6655 -5.25045 70 25.1261 110.357 10.5333Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 313 229\" fill=\"none\" class=\"svg svg-3\">\n <path\n d=\"M291.122 186.096C243.951 286.741 231.946 183.061 148.832 145.184C65.7183 107.307 -33.8765 166.916 12.5879 64.9595C59.0523 -36.9973 149.649 15.9897 217.109 4.58455C305.197 -13.6163 337.586 84.1393 291.122 186.096Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-4\" viewBox=\"0 0 130 187\" fill=\"none\">\n <path\n d=\"M129.626 63.1228C128.981 112.458 137.333 187 87.7069 187C38.0805 187 0 112.211 0 62.4765C0 12.7416 37.6506 -0.000427246 87.277 -0.000427246C136.903 -0.000427246 129.626 13.3879 129.626 63.1228Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-5\" viewBox=\"0 0 173 131\" fill=\"none\">\n <path\n d=\"M98.7021 21.5285C167.508 -41.2032 182.105 49.9773 167.808 84.1448C153.512 118.312 104.451 139.984 70.2838 125.687C36.1163 111.39 -10.8106 97.0728 3.48602 62.9053C17.7827 28.7378 64.06 46.8582 98.7021 21.5285Z\" />\n </svg>\n\n\n <div class=\"content\">\n <h1>{{ctaCardData.title}}</h1>\n <div class=\"description\">\n {{ctaCardData.description}}\n </div>\n <a [routerLink]=\"ctaCardData.logo.route\" class=\"custom-anchor image\">\n <img loading=\"lazy\" [src]=\"ctaCardData.logo.path\" alt=\"\" class=\"logo-img\">\n </a>\n <div class=\"create-account\">\n <input type=\"email\" class=\"email-input\" placeholder=\"Email Address\">\n <a [routerLink]=\"ctaCardData.callToActionButton.route\" class=\"custom-anchor\">\n <button mat-raised-button type=\"submit\" color=\"primary\">{{ctaCardData.callToActionButton.label}}</button>\n </a>\n </div>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Achievements } from '../models/achievements.model';\n\n@Component({\n selector: 'achievements',\n templateUrl: './achievements.component.html',\n styleUrls: [ './achievements.component.scss' ]\n})\nexport class AchievementsComponent implements OnInit {\n @Input() sectionContent: Achievements;\n constructor() { }\n\n ngOnInit() { }\n}\n","<div class=\"achievements\" [ngClass]=\"{'blue-background': sectionContent.sectionTitle.isDarkBg}\">\n <div class=\"content\">\n <div>\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"achievements-cards\">\n <div class=\"achievement-card\" *ngFor=\"let achievement of sectionContent.achievements\">\n <div class=\"number\">\n {{achievement.number}}\n </div>\n <div class=\"subtitle\">\n {{achievement.subtitle}}\n </div>\n </div>\n </div>\n </div>\n</div>","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\n\n@Injectable({\n providedIn: 'root'\n})\n\nexport class UserService {\n\n constructor(private http: HttpClient) { }\n\n getAuthenticationHeaders() {\n const token = localStorage.getItem(\"token\");\n const httpHeaders = new HttpHeaders({\n \"Content-Type\": \"application/json; charset-utf-8\",\n Authorization: \"Token \" + token,\n });\n return { headers: httpHeaders };\n }\n\n getTokenlessHeaders() {\n const httpHeaders = new HttpHeaders({\n \"Content-Type\": \"application/json; charset-utf-8\",\n });\n return { headers: httpHeaders };\n }\n\n isAuthenticated(): boolean {\n return !!localStorage.getItem('token');\n }\n}\n","import { Directive, Input, HostListener } from '@angular/core';\nimport { NavigationExtras, Router } from '@angular/router';\nimport { UserService } from './services/user.service';\n\n@Directive({\n selector: '[authRoute]'\n})\nexport class AuthRouteDirective {\n @Input() targetRoute: string;\n @Input() requireAuth: boolean;\n @Input() navigationExtras: NavigationExtras;\n constructor(private _router: Router, private _userService: UserService) { }\n\n @HostListener('click', ['$event'])\n handleClick(event: Event) {\n event.preventDefault();\n if (this.requireAuth && !this._userService.isAuthenticated()) {\n this._router.navigate(['/authentication/login']);\n } else {\n this._router.navigate([this.targetRoute], this.navigationExtras);\n }\n }\n}","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ServicePlan } from '../models/service-plan.model';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'pricing-plans',\n templateUrl: './pricing-plans.component.html',\n styleUrls: [ './pricing-plans.component.scss' ]\n})\nexport class PricingPlansComponent implements OnInit {\n @Input() servicePlan: ServicePlan;\n @Output() onClickCTA = new EventEmitter();\n \n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickCtaButton() {\n this.onClickCTA.emit();\n }\n\n // Helper to check if the price is a simple number\n isNumber(val: any): boolean {\n return typeof val === 'number';\n }\n\n\n // Explicitly tell TS that this function returns true only if price is a string\nisFormula(val: string | number): val is string {\n return typeof val === 'string' && val.includes('|');\n}\n\n // Split the formula: index 0 is the big price, index 1 is the subtext\n getFormulaParts(val: string): string[] {\n return val.split('|');\n }\n}\n","<div class=\"plan-content\">\n <div class=\"title-price-desc\">\n <div class=\"plan-title\">\n {{servicePlan.name}}\n </div>\n\n <div class=\"service-price\">\n <span *ngIf=\"isNumber(servicePlan.price)\" class=\"big-price\">\n {{ servicePlan.price | currency : 'USD' : 'symbol' : '1.0-0' }}\n </span>\n \n <div *ngIf=\"isFormula(servicePlan.price)\" class=\"formula-container\">\n <span class=\"big-price\">\n ${{ getFormulaParts($any(servicePlan.price))[0] }}\n </span>\n <span class=\"sub-price\">\n {{ getFormulaParts($any(servicePlan.price))[1] }}\n </span>\n </div>\n \n <span *ngIf=\"!isNumber(servicePlan.price) && !isFormula(servicePlan.price)\" class=\"text-price\">\n {{ servicePlan.price }}\n </span>\n </div>\n\n <span>/{{servicePlan.frequency}}</span>\n\n <div class=\"description\">\n {{servicePlan.description}}\n </div>\n <div class=\"divider\"></div>\n </div>\n <div class=\"perks\">\n <div class=\"perk\" *ngFor=\"let perk of servicePlan.perks; let switchStyle = index\">\n <span class=\"check-icon\">\n <fa-icon icon=\"check\"></fa-icon>\n </span>\n <div class=\"service-description\">\n <div class=\"service-perk\">\n {{perk.perk}}\n </div>\n <span class=\"exclamation-mark\" *ngIf=\"perk.tooltipMessage\">\n <fa-icon #tooltip=\"matTooltip\" [matTooltip]=\"perk.tooltipMessage\" [matTooltipPosition]=\"'right'\"\n icon=\"circle-exclamation\"></fa-icon>\n </span>\n </div>\n </div>\n </div>\n <div class=\"registration-button\">\n <button mat-raised-button [requireAuth]=\"servicePlan.button.requiresAuth\"\n [targetRoute]=\"servicePlan.button.route\" authRoute [navigationExtras]=\"servicePlan.button.navigationExtras\"\n class=\"button\">\n {{servicePlan.button.label}}\n </button>\n </div>\n</div>","import { Component, HostListener, Input, OnInit } from '@angular/core';\nimport { GalleryItem } from '../models/gallery-item.interface';\nimport { animate, style, transition, trigger, AnimationEvent } from '@angular/animations';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\n@Component({\n selector: 'image-gallery-modal',\n templateUrl: './image-gallery-modal.component.html',\n styleUrls: ['./image-gallery-modal.component.scss'],\n animations: [\n trigger('animation', [\n transition('void => visible', [\n style({ transform: 'scale(0.5)', opacity: 0 }),\n animate('150ms ease-out', style({ transform: 'scale(1)', opacity: 1 }))\n ]),\n transition('visible => void', [\n animate('150ms ease-in', style({ transform: 'scale(0.5)', opacity: 0 }))\n ]),\n ]),\n trigger('animation2', [\n // Add :enter so Angular knows how to start the animation\n transition(':enter', [\n style({ opacity: 0 }),\n animate('200ms', style({ opacity: 1 }))\n ]),\n transition(':leave', [\n animate('200ms', style({ opacity: 0 }))\n ])\n ])\n ],\n})\nexport class ImageGalleryModal implements OnInit {\n @Input() galleryData: GalleryItem[] = [];\n @Input() showCount = false;\n\n previewImage = false;\n showMask = false;\n currentImageGalleryModal: GalleryItem = this.galleryData[0];\n currentIndex = 0;\n controls = true;\n totalImageCount = 0;\n responsiveOptions: any[];\n constructor(\n private breakpointObserver: BreakpointObserver,\n\n\n ) { }\n ngOnInit() {\n this.breakpointObserver.observe(\n \"(max-width: 900px)\").subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.onClosePreview();\n }\n });\n this.totalImageCount = this.galleryData.length;\n this.responsiveOptions = [\n {\n breakpoint: '900px',\n numVisible: 5\n },\n {\n breakpoint: '600px',\n numVisible: 4\n },\n {\n breakpoint: '540px',\n numVisible: 3\n },\n {\n breakpoint: '400px',\n numVisible: 2\n },\n {\n breakpoint: '300px',\n numVisible: 1\n }\n ];\n }\n @HostListener('document:keydown.escape', ['$event']) onKeydownHandler(event: KeyboardEvent) {\n this.onClosePreview();\n }\n\n onPreviewImage(index: number): void {\n document.body.style.overflowY = 'hidden';\n this.showMask = true;\n this.previewImage = true;\n this.currentIndex = index;\n this.currentImageGalleryModal = this.galleryData[index];\n }\n\n onclickPrev(): void {\n this.currentIndex--; // Decrement for Previous\n if (this.currentIndex < 0) {\n this.currentIndex = this.galleryData.length - 1;\n }\n this.currentImageGalleryModal = this.galleryData[this.currentIndex];\n }\n\n onclickNext(): void {\n this.currentIndex++; // Increment for Next\n if (this.currentIndex > this.galleryData.length - 1) {\n this.currentIndex = 0;\n }\n this.currentImageGalleryModal = this.galleryData[this.currentIndex];\n }\n\n onClosePreview() {\n // 1. Immediately re-enable scrolling\n document.body.style.overflowY = 'visible';\n \n // 2. This triggers the (@animation.done) or [@animation] 'void' state\n this.previewImage = false;\n\n // 3. SAFETY FALLBACK: \n // If the animation doesn't fire for some reason, \n // we force the mask closed after a short delay.\n setTimeout(() => {\n if (!this.previewImage) {\n this.showMask = false;\n }\n }, 200); \n }\n\n onAnimationEnd(event: AnimationEvent) {\n // When the 'scale' animation reaches 'void' (disappears), hide the dark mask\n if (event.toState === 'void' || event.fromState === 'visible') {\n this.showMask = false;\n }\n }\n\n}\n","<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>","import { Component } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'success-message-dialog',\n templateUrl: './success-message-dialog.component.html',\n styleUrls: ['./success-message-dialog.component.scss']\n})\nexport class SuccessMessageDialogComponent {\n\n constructor(\n public dialogRef: MatDialogRef<SuccessMessageDialogComponent>,\n private _Router: Router\n ) { }\n\n onClickSubmitAnotherForm() {\n this.dialogRef.close();\n this._Router.navigate(['/contact-us/contact-us-page']);\n }\n}\n","<div class=\"page\">\n <span mat-dialog-title class=\"dialog-header\" mat-button>\n <fa-icon icon=\"xmark\" mat-dialog-close></fa-icon>\n </span>\n\n <mat-dialog-content class=\"mat-typography\">\n <div class=\"success-icon\">\n <fa-icon icon=\"calendar-check\"></fa-icon>\n </div>\n <h2 class=\"title\">Thanks! your request has been submitted</h2>\n <h3 class=\"subtitle\">We have received your message, we'll reach out to you as soon as possible!</h3>\n </mat-dialog-content>\n <div class=\"divider\"></div>\n <mat-dialog-actions class=\"dialog-footer\">\n <h3>Still have any questions? <span class=\"link-text\" (click)=\"onClickSubmitAnotherForm()\">Submit\n another form</span>\n </h3>\n </mat-dialog-actions>\n</div>","export enum PageSectionStyleThirteen {\n SHAPE_ICON = 0,\n IMAGE_ICON = 1\n}","import { Component, Input, OnInit } from '@angular/core';\nimport { PageSectionStyleThirteen } from '../models/page-section-style-thirteen.model';\nimport { SectionTitle } from '../models/section-title.model';\n\n@Component({\n selector: 'page-section-style-thirteen',\n templateUrl: './page-section-style-thirteen.component.html',\n styleUrls: ['./page-section-style-thirteen.component.scss']\n})\nexport class PageSectionStyleThirteenComponent implements OnInit {\n showedImage: string;\n counter: number = 0;\n intervalId: any;\n isItemHovered: boolean[] = [];\n pageSectionStyleThirteen = PageSectionStyleThirteen;\n @Input() sectionTitle: SectionTitle;\n @Input() items: any;\n @Input() iconType: PageSectionStyleThirteen = this.pageSectionStyleThirteen.SHAPE_ICON;\n @Input() isTwoImages: boolean = false;\n\n ngOnInit(): void {\n this.onHoveredItem(this.items[0].image, 0);\n }\n constructor() { }\n\n onClickChangeImage(image, index) {\n this.onHoveredItem(image, index);\n }\n\n onHoveredItem(itemImage, index) {\n this.counter = index;\n for (let i = 0; i < this.items.length; i++) {\n this.isItemHovered[i] = false;\n }\n this.isItemHovered[index] = true;\n this.showedImage = itemImage;\n }\n}\n\n","<div class=\"why-choose-us\">\n <div class=\"left-side\">\n <div class=\"headline\">\n <section-title [sectionTitle]=\"sectionTitle\"></section-title>\n </div>\n <div class=\"items\">\n <div class=\"item\" *ngFor=\"let item of items; let i=index\" [ngClass]=\"{'hovered-item': isItemHovered[i]}\" (click)=\"onClickChangeImage(item.image, i)\">\n <div class=\"left-column\">\n\n <div class=\"square-row\" [ngSwitch]=\"iconType\" [ngClass]=\"{'square-row':iconType == pageSectionStyleThirteen.SHAPE_ICON,'shape-column':iconType == pageSectionStyleThirteen.IMAGE_ICON}\">\n <div class=\"square\" *ngSwitchCase=\"pageSectionStyleThirteen.SHAPE_ICON\"></div>\n <div class=\"shape\" *ngSwitchCase=\"pageSectionStyleThirteen.IMAGE_ICON\">\n <img loading=\"lazy\" [src]=\"item.iconImage\" alt=\"\">\n </div>\n </div>\n <div></div>\n </div>\n <div class=\"right-column\">\n <div class=\"item-title\">{{item.title}}</div>\n <div class=\"item-description\" [ngClass]=\"{'hide-description':!isItemHovered[i] , 'show-description':isItemHovered[i] }\">\n {{item.description}}</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"right-side\" [ngClass]=\"{'two-images-preview':isTwoImages}\">\n <div class=\"image-container\">\n <img loading=\"lazy\" [src]=\"showedImage\" alt=\"\">\n </div>\n <div class=\"back-image\" *ngIf=\"isTwoImages\">\n <img loading=\"lazy\" src=\"https://i.ibb.co/mqtpD50/blue-points-section.png\" alt=\"\">\n </div>\n </div>\n</div>","import { Component, Input } from '@angular/core';\nimport { CallToActionSectionData } from '../models/call-to-action-data.model';\n\n@Component({\n selector: 'call-to-action-section',\n templateUrl: './call-to-action-section.component.html',\n styleUrls: [ './call-to-action-section.component.scss' ]\n})\n\nexport class CallToActionSectionComponent {\n @Input() sectionContent: CallToActionSectionData;\n @Input() titleOnRightSide: boolean = false;\n @Input() imageBg: boolean = false;\n @Input() isBoxWithCard: boolean = false;\n\n constructor() { }\n\n\n}\n","<div class=\"page\">\n <div class=\"cta-box\" [ngClass]=\"{'title-right-side':titleOnRightSide,'title-left-side':!titleOnRightSide,\n 'colored-bg':!imageBg,\n 'image-bg':imageBg\n}\" [ngStyle]=\"{'background-image': 'url(' + sectionContent.bgImage + ')', 'background-color': sectionContent.bgColor}\">\n <div class=\"heading-side\">\n <div class=\"title\">{{sectionContent.title}}</div>\n <div class=\"subtitle\">{{sectionContent.subtitle}}</div>\n <div class=\"buttons\">\n <span class=\"cta-link\" *ngFor=\"let button of sectionContent.buttons\" authRoute\n [requireAuth]=\"button.requiresAuth\" [targetRoute]=\"button.route\">\n {{button.name}}\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </span>\n </div>\n </div>\n <div class=\"cta-side\" [ngClass]=\"{'only-an-item':sectionContent.ctaCards.length == 1 }\">\n <div class=\"box\" *ngFor=\"let card of sectionContent.ctaCards\"\n [ngClass]=\"{'box-card':isBoxWithCard, 'box-non-card':!isBoxWithCard}\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\" class=\"image\" *ngIf=\"card.image\">\n <div class=\"box-title\">\n {{card.title}}\n </div>\n <div class=\"box-description\" *ngIf=\"card.description \">\n {{card.description}}\n </div>\n <div class=\"button\">\n <a [routerLink]=\"card.button.route\" class=\"custom-anchor\">\n <button type=\"button\" mat-raised-button authRoute [requireAuth]=\"card.button.requiresAuth\">\n {{card.button.name}}\n </button>\n </a>\n </div>\n <div class=\"divider\" *ngIf=\"!isBoxWithCard && sectionContent.ctaCards.length > 1 \">\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, OnInit, Input } from '@angular/core';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { Router } from '@angular/router';;\nimport { TeamSection } from '../models/team-section.model';\n\n@Component({\n selector: 'team',\n templateUrl: './team.component.html',\n styleUrls: ['./team.component.scss']\n})\nexport class TeamComponent implements OnInit {\n @Input() sectionContent: TeamSection;\n isTabletSize: boolean;\n membersToShow: number;\n scrollMemberNumber: number = 2;\n\n constructor(\n private _router: Router,\n private breakpointObserver: BreakpointObserver,\n ) { }\n\n ngOnInit() {\n this.breakpointObserver.observe([\n \"(max-width: 1200px) and (min-width:851px)\", \"(max-width: 850px) and (min-width:601px)\",\n \"(max-width: 600px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:851px)']) {\n this.isTabletSize = true;\n this.membersToShow = 3;\n }\n else if (result.breakpoints['(max-width: 850px) and (min-width:601px)']) {\n this.membersToShow = 2;\n this.scrollMemberNumber = 2;\n this.isTabletSize = true;\n }\n else if (result.breakpoints['(max-width: 600px)']) {\n this.membersToShow = 1;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else {\n this.isTabletSize = false;\n }\n });\n }\n\n onAddNewMember() {\n this._router.navigate(['/team/new-member']);\n }\n}\n","<div class=\"container\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\" ></section-title>\n <div class=\"cards\">\n <div class=\"member-card\" *ngFor=\"let teamMember of sectionContent.teamMembers\">\n <div class=\"image-container\">\n <img loading=\"lazy\" [src]=\"teamMember.profilePicture\">\n </div>\n <div>\n <div class=\"name\">\n {{teamMember.fullName}}\n </div>\n <div class=\"position\">\n {{teamMember.position}}\n </div>\n </div>\n </div>\n </div>\n <div class=\"caption-text\">\n {{sectionContent.caption}}\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { CompanyValues } from '../models/about-us-section.model';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { IconName } from '@fortawesome/fontawesome-svg-core';\n\n@Component({\n selector: 'values',\n templateUrl: './values.component.html',\n styleUrls: [ './values.component.scss' ]\n})\nexport class ValuesComponent implements OnInit {\n @Input() sectionContent: CompanyValues;\n @Input() withBgImage: boolean = false;\n @Input() isDarkBg: boolean;\n isTabletSize: boolean;\n newSectionContent: any;\n\n constructor(private breakpointObserver: BreakpointObserver\n ) {\n\n }\n ngOnInit(): void {\n\n this.breakpointObserver.observe([\n \"(max-width: 1200px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.isTabletSize = true;\n } else {\n this.isTabletSize = false;\n }\n });\n\n this.newSectionContent = this.sectionContent;\n\n for (let card of this.newSectionContent.cards) {\n this.newSectionContent.newIcon = card.icon as IconName;\n }\n }\n}\n","<div class=\"page\">\n <section-title [sectionTitle]=\"newSectionContent.sectionTitle\"></section-title>\n <div class=\"values-cards\" *ngIf=\"!isTabletSize\">\n <div class=\"card\" *ngFor=\"let card of newSectionContent.cards\">\n <div class=\"card-headline\">\n <div class=\"icon\" *ngIf=\"card.icon\">\n <fa-icon [icon]=\"card.icon\"></fa-icon>\n </div>\n <div class=\"image\" *ngIf=\"!card.icon\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{card.title}}\n </div>\n </div>\n <div class=\"value-description\">\n {{card.subtitle}}\n </div>\n </div>\n </div>\n <div class=\"value-cards\" *ngIf=\"isTabletSize\">\n <p-carousel class=\"custom\" [value]=\"newSectionContent.cards\" [numVisible]='1' [numScroll]='1' [page]=\"0\" orientation=\"horizontal\" [circular]=\"true\">\n <ng-template let-card pTemplate=\"item\">\n <div class=\"card\">\n <div class=\"card-headline\">\n <div class=\"icon\" *ngIf=\"card.icon\">\n <fa-icon [icon]=\"card.icon\"></fa-icon>\n </div>\n <div class=\"image\" *ngIf=\"!card.icon\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{card.title}}\n </div>\n </div>\n <div class=\"value-description\">\n {{card.subtitle}}\n </div>\n </div>\n </ng-template>\n </p-carousel>\n </div>\n</div>","import { Component, Input, OnInit } from \"@angular/core\";\nimport { Account } from \"../models/account.model\";\n\n@Component({\n selector: \"our-client-listing\",\n templateUrl: \"./our-client-listing.component.html\",\n styleUrls: [\"./our-client-listing.component.scss\"],\n})\nexport class OurClientListingComponent implements OnInit {\n @Input() account: Account;\n\n constructor() { }\n\n ngOnInit(): void {\n // console.log(this.account);\n }\n}\n","<div class=\"client\">\n <img loading=\"lazy\" class=\"image\" [src]=\"account.profilePicture\" alt=\"\" />\n</div>","import { Component, OnInit, Input } from \"@angular/core\";\nimport { Account } from \"./../models/account.model\";\nimport { BreakpointObserver, BreakpointState } from \"@angular/cdk/layout\";\n\n@Component({\n selector: \"our-clients\",\n templateUrl: \"./our-clients.component.html\",\n styleUrls: [\"./our-clients.component.scss\"],\n})\nexport class OurClientsComponent implements OnInit {\n @Input() accounts: Account[];\n isUnderTabRange: boolean;\n clientsToShow: number = 4;\n scrollClientNumber: number = 2;\n constructor(private breakpointObserver: BreakpointObserver,) { }\n\n ngOnInit(): void {\n this.breakpointObserver.observe([\n \"(min-width: 1201px)\",\n \"(max-width: 1200px) and (min-width:1076px)\",\n \"(max-width: 1075px) and (min-width:651px)\",\n \"(max-width: 650px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:1076px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 3;\n this.scrollClientNumber = 2;\n } else if (result.breakpoints['(min-width: 1201px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 4;\n this.scrollClientNumber = 2;\n } else if (result.breakpoints['(max-width: 1075px) and (min-width:651px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 2;\n this.scrollClientNumber = 1;\n } else if (result.breakpoints['(max-width: 650px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 1;\n this.scrollClientNumber = 1;\n } else {\n this.isUnderTabRange = false;\n }\n });\n }\n}\n","<p-carousel class=\"custom\" [value]=\"accounts\" [numVisible]=\"clientsToShow\" [numScroll]=\"scrollClientNumber\" [page]=\"0\"\n orientation=\"horizontal\" [circular]=\"true\">\n <ng-template let-client pTemplate=\"item\">\n <div>\n <our-client-listing class=\"client\" [account]=\"client\">\n </our-client-listing>\n </div>\n </ng-template>\n</p-carousel>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'page-section-with-multiple-cards',\n templateUrl: './page-section-with-multiple-cards.component.html',\n styleUrls: ['./page-section-with-multiple-cards.component.scss']\n})\nexport class PageSectionWithMultipleCardsComponent implements OnInit {\n @Input() sectionContent: any;\n\n constructor(private _Router: Router) { }\n ngOnInit(): void { }\n\n onClickAllReasons(route: string) {\n this._Router.navigate([route]);\n }\n}\n","<div class=\"page\">\n <div class=\"text-part\">\n <h2 class=\"tip-title\">\n {{sectionContent.tipTitle}}\n </h2>\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"reason-card\" *ngFor=\"let reason of sectionContent.reasons\">\n <div class=\"card-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 97 97\" [style.fill]=\"reason.shapeColor\">\n <path\n d=\"M5.0312 58.8331C-9.18797 29.0705 16.1615 9.11602 41.3271 3.99601C66.4928 -1.12401 102.401 -5.60082 96.1642 40.2919C89.9278 86.1847 85.034 90.009 59.8684 95.129C34.7027 100.249 19.2504 88.5958 5.0312 58.8331Z\" />\n </svg>\n <fa-icon [style.color]=\"reason.iconColor\" [icon]=\"reason.iconName\"></fa-icon>\n </div>\n <div class=\"card-title\">\n {{reason.title}}\n </div>\n <div class=\"card-description\">\n {{reason.description}}\n </div>\n </div>\n <button class=\"all-reason-card\" (click)=\"onClickAllReasons(sectionContent.allReasonsBox.route)\">\n <div class=\"card-title\">\n {{sectionContent.allReasonsBox.ctaText}}\n </div>\n <div class=\"icon-circle\">\n <fa-icon [icon]=\"sectionContent.allReasonsBox.iconName\"></fa-icon>\n </div>\n </button>\n\n</div>","import { Component, OnInit, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { CallToActionSectionTwo } from '../models/call-to-action-section-two.model';\n\n@Component({\n selector: 'call-to-action-section-two',\n templateUrl: './call-to-action-section-two.component.html',\n styleUrls: ['./call-to-action-section-two.component.scss']\n})\nexport class CallToActionSectionTwoComponent implements OnInit {\n @Input() sectionContent: CallToActionSectionTwo;\n\n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickLink(link: string) {\n this._router.navigate([link])\n }\n}\n","<section class=\"section\">\n <header class=\"logo-container\" *ngIf=\"sectionContent.withImage\">\n <img loading=\"lazy\" class=\"logo\" [src]=\"sectionContent.imagePath\" alt=\"Logo\">\n </header>\n <h1 class=\"title\">\n {{sectionContent.title}}\n </h1>\n <h3 class=\"subtitle\">\n {{sectionContent.subtitle}}<ng-content></ng-content>\n </h3>\n</section>","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'value-props-section',\n templateUrl: './value-props-section.component.html',\n styleUrls: [ './value-props-section.component.scss' ]\n})\nexport class ValuePropsSectionComponent implements OnInit {\n @Input() sectionContent: any;\n selectedImage: any;\n constructor() { }\n\n ngOnInit() {\n let i = 0;\n this.selectedImage = this.sectionContent.paragraphs[ 0 ].imagePath;\n i++;\n for (let paragraph of this.sectionContent.paragraphs) {\n paragraph.isClicked = false;\n }\n this.sectionContent.paragraphs[ 0 ].isClicked = true;\n\n }\n\n onChangeImage(imagePath, paragraphIndex) {\n for (let paragraph of this.sectionContent.paragraphs) {\n paragraph.isClicked = false;\n }\n this.selectedImage = imagePath;\n this.sectionContent.paragraphs[ paragraphIndex ].isClicked = true;\n }\n}\n","<div class=\"value-prop\" [ngClass]=\"{'image-text-sort': sectionContent.paragraphProperties.onRightSide , 'text-image-sort': !sectionContent.paragraphProperties.onRightSide ,'paragraph-with-card':sectionContent.paragraphProperties.withCard }\">\n <div class=\"text-side\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\">\n </section-title>\n <div class=\"value-prop-image\">\n <img loading=\"lazy\" [src]=\"selectedImage\" alt=\"\">\n </div>\n <div class=\"paragraph-items\">\n <p *ngFor=\"let paragraph of sectionContent.paragraphs; let j = index\" class=\"paragraph\" (click)=\"onChangeImage(paragraph.imagePath ,j)\" [ngClass]=\"{'selected-paragraph':paragraph.isClicked, 'one-paragraph':sectionContent.paragraphs.length == 1}\">\n <span class=\"value-prop-icon\">\n <fa-icon [icon]=\"paragraph.iconName\"></fa-icon></span>\n <span class=\"paragraph-text\">\n {{paragraph.text}}\n </span>\n </p>\n </div>\n </div>\n <div class=\"image-buttons-side\">\n <img loading=\"lazy\" [src]=\"selectedImage\" alt=\"\">\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'choose-country-with-flag',\n templateUrl: './choose-country-with-flag.component.html',\n styleUrls: ['./choose-country-with-flag.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ChooseCountryWithFlagComponent),\n multi: true\n }]\n})\n\nexport class ChooseCountryWithFlagComponent implements OnInit, ControlValueAccessor {\n @Input() items: any[];\n selectedItem: any;\n @Output() change = new EventEmitter();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n writeValue(value: any): void {\n this.selectedItem = value;\n }\n\n public registerOnChange(fn: any) {\n this.propagateChange = fn;\n }\n\n public registerOnTouched(fn: any) {\n this.propogateTouch = fn;\n }\n\n private propagateChange = (_: any) => { };\n private propogateTouch = () => { };\n\n updateBlur() {\n this.propogateTouch();\n }\n\n onSelectionChanged($event) {\n this.propagateChange(this.selectedItem);\n this.change.emit($event);\n }\n}","<div class=\"choose\">\n <ng-select\n (blur)=\"updateBlur()\"\n class=\"custom\"\n [items]=\"items\"\n (change)=\"onSelectionChanged($event)\"\n bindLabel=\"name\"\n bindValue=\"id\"\n [(ngModel)]=\"selectedItem\"\n placeholder=\"Choose country\"\n >\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\n <div class=\"flag-name\">\n <mat-icon [svgIcon]=\"item?.code2?.toLowerCase()\"></mat-icon>\n {{ item.code2 }}\n </div>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" class=\"options-list\">\n <div class=\"flag-name\">\n <mat-icon [svgIcon]=\"item?.code2?.toLowerCase()\"></mat-icon>\n <span class=\"country-name\">\n {{\n item.name.length > 15\n ? (item.name | slice: 0 : 15) + \"...\"\n : item.name\n }}\n </span>\n </div>\n </ng-template>\n </ng-select>\n</div>\n","import { FormBuilder, FormControl } from '@angular/forms';\nimport { Component, OnInit, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { MatDialog } from '@angular/material/dialog';\nimport { SuccessMessageDialogComponent } from '../success-message-dialog/success-message-dialog.component';\n\n\n@Component({\n selector: 'contact-us-page',\n templateUrl: './contact-us-page.component.html',\n styleUrls: ['./contact-us-page.component.scss'],\n})\nexport class ContactUsPageComponent implements OnInit {\n @Input() subjects: any[] = [];\n @Input() contactUsPageData: any;\n @Input() apiPath: string;\n @Input() items: any[];\n latitude: number;\n longitude: number;\n zoom: number;\n selectedSubject: number;\n selectedCountry: any;\n selectedCode: any;\n isUnderTabRange: boolean;\n membersToShow: number;\n isTabletSize: boolean;\n scrollMemberNumber: number = 2;\n\n constructor(\n public dialog: MatDialog,\n private breakpointObserver: BreakpointObserver,\n private fb: FormBuilder,\n // private _router: Router,\n // private _ContactUsService: ContactUsServiceService,\n ) { }\n\n ngOnInit() {\n this.setCurrentLocation();\n this.breakpointObserver.observe([\n \"(max-width: 1200px) and (min-width:1076px)\", \"(max-width: 1075px) and (min-width:651px)\",\n \"(max-width: 650px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:1076px)']) {\n this.isUnderTabRange = true;\n this.isTabletSize = true;\n this.membersToShow = 3;\n this.scrollMemberNumber = 2;\n }\n else if (result.breakpoints['(max-width: 1075px) and (min-width:651px)']) {\n this.isUnderTabRange = true;\n this.membersToShow = 2;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else if (result.breakpoints['(max-width: 650px)']) {\n this.isUnderTabRange = true;\n this.membersToShow = 1;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else {\n this.isTabletSize = false;\n this.isUnderTabRange = false;\n }\n });\n }\n\n form = this.fb.group({\n firstName: new FormControl(null),\n lastName: new FormControl(null),\n companyName: new FormControl(null),\n email: new FormControl(null),\n country: new FormControl(null),\n phoneNumber: new FormControl(null),\n subject: new FormControl(null),\n message: new FormControl(null),\n });\n\n get firstName() {\n return this.form.get('firstName');\n }\n\n get lastName() {\n return this.form.get('lastName');\n }\n\n get companyName() {\n return this.form.get('companyName');\n }\n\n get email() {\n return this.form.get('email');\n }\n\n get country() {\n return this.form.get('country');\n }\n\n get phoneNumber() {\n return this.form.get('phoneNumber');\n }\n\n get subject() {\n return this.form.get('subject');\n }\n\n get message() {\n return this.form.get('message');\n }\n\n onClickSubmit() {\n // this._ContactUsService.createContactUs(this.form.value).subscribe({\n // next: (response) => {\n // console.log(\"Contact Us Message Created\", this.form.value);\n // this.openDialog();\n // },\n // error: (error) => console.error(\"error\", error)\n // })\n }\n\n // Get Current Location Coordinates\n private setCurrentLocation() {\n if ('geolocation' in navigator) {\n navigator.geolocation.getCurrentPosition((position) => {\n this.latitude = position.coords.latitude;\n this.longitude = position.coords.longitude;\n this.zoom = 15;\n });\n }\n }\n\n openDialog() {\n const dialogRef = this.dialog.open(SuccessMessageDialogComponent);\n dialogRef.afterClosed().subscribe(() => {\n this.form.reset();\n });\n }\n\n getSelectedOptionValue($event) {\n this.selectedCode = $event.phone;\n }\n}\n","<div class=\"page\">\n <div class=\"contact-us\">\n <div class=\"left-side\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.backgroundImage\" alt=\"\" class=\"bg-image\">\n <div class=\"img-title\">\n {{contactUsPageData.imageTitle}}\n </div>\n <div class=\"bottom-img-side\" *ngIf=\"!isUnderTabRange\">\n <div class=\"logo\"><img loading=\"lazy\" [src]=\"contactUsPageData.ourLogo\" alt=\"JOOLER\"></div>\n <div class=\"img-description\">{{contactUsPageData.imageDescription}}\n </div>\n <div class=\"social-media-icons\">\n <!-- <social-media-icons class=\"social-media\" [color]=\"'#fff'\" [areIconsInFooter]=\"false\"></social-media-icons> -->\n </div>\n </div>\n </div>\n <div class=\"right-side\">\n <section-title [sectionTitle]=\"contactUsPageData.sectionTitle\"></section-title>\n <!-- <section-title title=\"Get In Touch\" [alignLeft]=\"true\"></section-title> -->\n <div class=\"content\">\n <div class=\"message-box\">\n <form [formGroup]=\"form\" (ngSubmit)=\"onClickSubmit()\">\n <div class=\"full-name-area\">\n <div class=\"first-name\">\n <span class=\"fields-labels\">First Name*</span>\n <input type=\"text\" formControlName=\"firstName\" class=\"input\" placeholder=\"First Name\" />\n </div>\n <div class=\"last-name\">\n <span class=\"fields-labels\">Last Name*</span>\n <input type=\"text\" formControlName=\"lastName\" class=\"input\" placeholder=\"Last Name\" />\n </div>\n </div>\n <span class=\"fields-labels\">Company Name*</span>\n <input type=\"text\" formControlName=\"companyName\" class=\"input\" placeholder=\"Your company name\" />\n <span class=\"fields-labels\">Email*</span>\n <input type=\"text\" formControlName=\"email\" class=\"input\" placeholder=\"name@example.com\" />\n <span class=\"fields-labels\">Phone Number</span>\n <div class=\"phone-number-section\">\n\n <div class=\"countries-list\">\n <choose-country-with-flag formControlName=\"country\" (change)=\"getSelectedOptionValue($event)\" [items]=\"items\"></choose-country-with-flag>\n </div>\n <span class=\"code-section\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n <input class=\"code\" [value]=\"selectedCode? selectedCode: null\" placeholder=\"--\" [readOnly]=\"true\" />\n </span>\n <input formControlName=\"phoneNumber\" type=\"number\" class=\"phone-num-input\" placeholder=\"Phone Number\" />\n </div>\n <div class=\"subject\">\n <ng-select formControlName=\"subject\" [items]=\"subjects\" bindLabel=\"label\" placeholder=\"Subject\" bindValue=\"label\">\n </ng-select>\n </div>\n <textarea type=\"text\" formControlName=\"message\" placeholder=\"Message\" class=\"text-area\">\n\n\n </textarea>\n <div class=\"actions\">\n <button class=\"submit\" type=\"submit\" mat-raised-button=\"mat-raised-button\" color=\"primary\">\n Submit\n </button>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n <!-- <div class=\"our-locations-section\">\n <div class=\"locations-content\">\n <div class=\"headline\">\n {{contactUsPageData.locations.headline}}\n </div>\n <div class=\"title\">\n {{contactUsPageData.locations.title}}\n </div>\n <div class=\"lines-img\">\n <img loading=\"lazy\" src=\"../../../assets/images/lines-contact-us.png\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{contactUsPageData.locations.subtitle}}\n </div>\n <div class=\"addresses\">\n <div class=\"address flexy\" *ngFor=\"let address of contactUsPageData.locations.addresses\">\n <div class=\"address-header\">\n <div class=\"icon\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.locations.pinIconWhite\" alt=\"\">\n </div>\n <div class=\"location-name\">\n {{address.name}}\n </div>\n </div>\n <div class=\"building\">\n {{address.building}}\n </div>\n <div class=\"location-area\">\n {{address.locationArea}}\n </div>\n <div class=\"hours\">\n <fa-icon [icon]=\"['fas','clock']\"></fa-icon>\n {{address.hours}}\n </div>\n <div class=\"cellular-number\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n {{address.phoneNumber}}\n </div>\n </div>\n <p-carousel *ngIf=\"isUnderTabRange\" class=\"carousel\" [value]=\"contactUsPageData.locations.addresses\"\n [numVisible]='membersToShow' [numScroll]='scrollMemberNumber' [page]=\"0\" orientation=\"horizantol\"\n [circular]=\"true\">\n <ng-template let-address pTemplate=\"item\">\n <div class=\"address\">\n <div class=\"address-header\">\n <div class=\"icon\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.locations.pinIconBlue\" alt=\"\">\n </div>\n <div class=\"location-name\">\n {{address.name}}\n </div>\n </div>\n <div class=\"building\">\n {{address.building}}\n </div>\n <div class=\"location-area\">\n {{address.locationArea}}\n </div>\n <div class=\"hours\">\n <fa-icon [icon]=\"['fas','clock']\"></fa-icon>\n {{address.hours}}\n </div>\n <div class=\"cellular-number\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n {{address.phoneNumber}}\n </div>\n </div>\n </ng-template>\n </p-carousel>\n </div>\n </div>\n </div> -->\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { PageSectionStyleThree } from '../models/page-section-style-three.model';\n@Component({\n selector: 'page-section-style-three',\n templateUrl: './page-section-style-three.component.html',\n styleUrls: [ './page-section-style-three.component.scss' ]\n})\nexport class PageSectionStyleThreeComponent implements OnInit {\n @Input() valueprop: PageSectionStyleThree;\n\n constructor(private _Router: Router) { }\n\n ngOnInit(): void {}\n\n onClickValuePropButton(route) {\n this._Router.navigate([ route ]);\n }\n}\n","<div class=\"page\">\n <div class=\"section\"\n [ngClass]=\"{'image-text-sort' : !valueprop.textImageSort,'text-image-sort':valueprop.textImageSort }\">\n <div class=\"section-container\">\n <div class=\"image-side\">\n <img loading=\"lazy\" [src]=\"valueprop.image\">\n </div>\n <div class=\"text-side\">\n <section-title [sectionTitle]=\"valueprop.sectionTitle\">\n <ng-content></ng-content>\n </section-title>\n <div class=\"optional-buttons\" *ngIf=\"valueprop.buttons\">\n <button mat-raised-button class=\"value-prop-button\" *ngFor=\"let button of valueprop.buttons\"\n (click)=\"onClickValuePropButton(button.route)\">\n {{button.label}}\n </button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Router } from '@angular/router';\nimport { Component, Input, OnInit } from '@angular/core';\nimport { socialMediaLinks } from './social-media-links.model';\n@Component({\n selector: 'social-media-icons',\n templateUrl: './social-media-icons.component.html',\n styleUrls: ['./social-media-icons.component.scss']\n})\nexport class SocialMediaIconsComponent implements OnInit {\n @Input() color: string;\n @Input() areIconsInFooter: boolean;\n @Input() socialMediaLinks: socialMediaLinks;\n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickLinkedIn() {\n window.location.href = this.socialMediaLinks.linkedIn;\n }\n\n onClickInstagram() {\n window.location.href = this.socialMediaLinks.instagram;\n }\n\n onClickYoutube() {\n window.location.href = this.socialMediaLinks.youTube;\n }\n\n setStyles() {\n let style = {\n color: this.color\n }\n return style;\n }\n}\n","<div [ngClass]=\"{'icons-white':areIconsInFooter, 'icons':!areIconsInFooter}\">\n <fa-icon [icon]=\"['fab', 'linkedin-in']\" class=\"icon linkedin\" (click)=\"onClickLinkedIn()\"></fa-icon>\n <fa-icon [icon]=\"['fab', 'instagram']\" class=\"icon instagram\" (click)=\"onClickInstagram()\"></fa-icon>\n <fa-icon [icon]=\"['fab', 'youtube']\" class=\"icon youtube\" (click)=\"onClickYoutube()\"></fa-icon>\n</div>","import { Component, Input } from '@angular/core';\nimport { socialMediaLinks } from '../social-media-icons/social-media-links.model';\n\n@Component({\n selector: 'coming-soon',\n templateUrl: './coming-soon.component.html',\n styleUrls: ['./coming-soon.component.scss']\n})\nexport class ComingSoonComponent {\n @Input() ctaText: string = \"Get notified when this feature is available.\";\n @Input() socialMediaLinks: socialMediaLinks = { instagram: \"https://www.instagram.com\", faceBook: \"https://www.facebook.com\", youTube: \"https://www.youtube.com\", linkedIn: \"https://www.linkedin.com\" };\n}\n","<section class=\"page\">\n <div class=\"coming-soon\">\n <div class=\"title\">\n Coming Soon\n </div>\n <div class=\"subtitle\">\n {{ctaText}}\n </div>\n <form>\n <div class=\"registration-field\">\n <div class=\"email-field\">\n <input type=\"email\" placeholder=\"Email Address\">\n </div>\n <button mat-raised-button class=\"submit\" type=\"submit\">\n Submit\n </button>\n </div>\n </form>\n <div class=\"social-media-icons\">\n <social-media-icons [color]=\"'#4D4D4D'\" [areIconsInFooter]=\"false\" [socialMediaLinks]=\"socialMediaLinks\"></social-media-icons>\n </div>\n </div>\n</section>","import { Component, OnInit, Input } from '@angular/core';\nimport { CtaTypeOne } from '../models/cta-one-type.model';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\n\n@Component({\n selector: 'cta-section-style-four',\n templateUrl: './cta-section-style-four.component.html',\n styleUrls: [ './cta-section-style-four.component.scss' ]\n})\nexport class CtaSectionStyleFourComponent implements OnInit {\n @Input() sectionContent!: CtaTypeOne;\n constructor(private breakpointObserver: BreakpointObserver) { }\n\n ngOnInit() {\n this.breakpointObserver.observe([\n \"(max-width: 900px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.sectionContent.sectionTitle.alignLeft = false;\n } else {\n this.sectionContent.sectionTitle.alignLeft = true;\n }\n });\n }\n\n\n}\n","<div class=\"main-card\" [ngStyle]=\"{'background' : sectionContent.bgColor}\">\n <img loading=\"lazy\" *ngIf=\"!sectionContent.bgColor && sectionContent.bgImage \" [src]=\"sectionContent.bgImage\"\n class=\"bg-img\" alt=\"bg-img\">\n <div class=\"text-side\" [ngClass]=\"{'flex-reverse':sectionContent.imageTextSort}\">\n <div class=\"section-title\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"buttons-line\">\n <a *ngFor=\"let button of sectionContent.buttons\" authRoute [requireAuth]=\"button.requiresAuth\"\n [routerLink]=\"button.route\" class=\"cta-button custom-anchor\">\n <span class=\"button-value\">\n {{button.label}}\n </span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"chevron-right\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path\n d=\"M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z\">\n </path>\n <path class=\"octicon-chevrow-stem\" d=\"M1.75 8H11\" stroke-width=\"1.5\" stroke-linecap=\"round\">\n </path>\n </svg>\n </a>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { CallToActionStyleThree } from '../models/call-to-action-style.model';\n\n@Component({\n selector: 'cta-section-style-three',\n templateUrl: './cta-section-style-three.component.html',\n styleUrls: [ './cta-section-style-three.component.scss' ]\n})\nexport class CtaSectionStyleThreeComponent implements OnInit {\n @Input() sectionContent!: CallToActionStyleThree;\n\n constructor() {\n }\n\n ngOnInit() {}\n}\n","<div class=\"main-card\" [ngStyle]=\"{'background' : sectionContent.bgColor}\">\n <img loading=\"lazy\" *ngIf=\"!sectionContent.bgColor && sectionContent.bgImage \" [src]=\"sectionContent.bgImage\"\n class=\"bg-img\" alt=\"bg-img\">\n <div class=\"illustration-side\" *ngIf=\"sectionContent.sideImage && !sectionContent.titleImageOrder\">\n <img loading=\"lazy\" [src]=\"sectionContent.sideImage\" class=\"side-img\" alt=\"side-img\">\n </div>\n <div class=\"text-side\">\n <div class=\"section-title\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"illustration-side\" *ngIf=\"sectionContent.sideImage && sectionContent.titleImageOrder\">\n <img loading=\"lazy\" [src]=\"sectionContent.sideImage\" class=\"side-img\" alt=\"side-img\">\n </div>\n <div class=\"buttons-line\">\n <a *ngFor=\"let button of sectionContent.buttons\" [routerLink]=\"button.route\" class=\"custom-anchor\">\n <button mat-raised-button [ngStyle]=\"{'background':button.bgColor, 'color': button.textColor}\">\n {{button.label}}\n </button>\n </a>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { VerticalSideTab } from '../models/vertical-side-tab.model';\n@Component({\n selector: 'vertical-side-tabs',\n templateUrl: './vertical-side-tabs.component.html',\n styleUrls: [ './vertical-side-tabs.component.scss' ]\n})\nexport class VerticalSideTabsComponent implements OnInit {\n public panelOpenState: boolean = false;\n @Input() tabs: VerticalSideTab[];\n selectedOption: boolean[] = [];\n @Output() tabChanged: EventEmitter<any> = new EventEmitter();\n\n constructor() { }\n\n ngOnInit(): void {\n this.changeTab(0);\n }\n\n changeTab(index: number) {\n for (let i = 0; i < this.tabs.length; i++) {\n this.selectedOption[ i ] = false;\n }\n\n this.selectedOption[ index ] = true;\n this.tabChanged.emit(this.tabs[ index ].tabContent);\n }\n}\n","<mat-card class=\"as-items\">\n <div class=\"as-item\" *ngFor=\"let tab of tabs ; let i = index\">\n <button class=\"as-btn\" [ngClass]=\"{'item-clicked':selectedOption[i], \n 'item-not-clicked':!selectedOption[i]}\" (click)=\"changeTab(i)\">\n <div class=\"icon-text\">\n <div class=\"icon\"><mat-icon>{{tab.iconName}}</mat-icon></div>\n <h3 class=\"text\">\n {{tab.title}}\n </h3>\n </div>\n </button>\n </div>\n</mat-card>","import { Component, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { HeaderSectionStyleOne } from '../models/header-section-style-one.model';\n@Component({\n selector: 'header-section-one',\n templateUrl: './header-section-one.component.html',\n styleUrls: [ './header-section-one.component.scss' ]\n})\n\nexport class HeaderSectionOneComponent {\n @Input() sectionContent: HeaderSectionStyleOne;\n\n constructor(private _Router: Router) { }\n\n onClickButton(route) {\n this._Router.navigate([ route ])\n }\n}\n","<div class=\"detail-head-block\" [ngClass]=\"{'title-image-sort':sectionContent.titleImageSort , 'image-title-sort':!sectionContent.titleImageSort, 'image-background':sectionContent.backgroundImage != null }\" [ngStyle]=\"{'background-color': !sectionContent.backgroundImage ? sectionContent.backgroundColor :null }\">\n <img loading=\"lazy\" class=\"bg-image\" [src]=\"sectionContent.backgroundImage\" alt=\"\" *ngIf=\"sectionContent.backgroundImage\">\n <div class=\"section-content\">\n <div class=\"header-content-container\">\n <div class=\"title-desc\">\n <div class=\"title-part\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div *ngIf=\"sectionContent.actions\" class=\"main-buttons align-left-items\">\n <div class=\"button\" *ngFor=\"let button of sectionContent.actions ,let i = index\">\n <button mat-raised-button (click)=\"onClickButton(button.route)\">\n {{button.label}}\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"img-head\" *ngIf=\"sectionContent.previewImage\">\n <img loading=\"lazy\" [src]=\"sectionContent.previewImage\">\n </div>\n </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n selector: 'custom-tooltip',\n templateUrl: './custom-tooltip.component.html',\n styleUrls: [ './custom-tooltip.component.scss' ]\n})\nexport class CustomTooltipComponent {\n showDetails: boolean;\n\n onMouseEnter() {\n this.showDetails = true;\n }\n\n onMouseClick() {\n this.showDetails = !this.showDetails;\n }\n\n onMouseLeave() {\n this.showDetails = false;\n\n }\n}\n","<div class=\"icon\">\n <div class=\"content\" (mouseleave)=\"onMouseLeave()\">\n <div (click)=\"onMouseClick()\" class=\"icon-container\" (mouseenter)=\"onMouseEnter()\">\n <div>\n <fa-icon icon=\"info-circle\" class=\"icon-shape\"></fa-icon>\n </div>\n </div>\n <div class=\"tooltip-message-box\" [ngClass]=\"{'no-details' : !showDetails , 'details': showDetails}\">\n <fa-icon icon=\"caret-left\"></fa-icon>\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { IconName } from '@fortawesome/fontawesome-svg-core';\nimport { ValuePropProperties } from '@jooler/jooler-websites-shared';\n\n@Component({\n selector: 'value-prop-card',\n templateUrl: './value-prop-card.component.html',\n styleUrls: ['./value-prop-card.component.scss']\n})\nexport class ValuePropCardComponent implements OnInit {\n @Input() valuePropContent: ValuePropProperties;\n @Input() cardOnHover: boolean;\n @Input() imageSize: string;\n icon: IconName;\n imageStyle: any;\n\n ngOnInit(): void {\n if (this.valuePropContent.iconName) {\n this.icon = this.valuePropContent.iconName as IconName;\n }\n\n if (this.valuePropContent.image) {\n this.setImageStyle();\n }\n }\n\n\n setImageStyle() {\n let imageSize: string = '4.5rem';\n if (this.imageSize) {\n imageSize = this.imageSize;\n }\n let style = {\n height: imageSize,\n width: imageSize\n };\n\n this.imageStyle = style;\n }\n}","<mat-card class=\"reason-block\"\n [ngClass]=\"{'card-on-hover':cardOnHover , 'constant-card': !cardOnHover}\">\n <mat-card-content class=\"content\">\n <div class=\"reason-headline\">\n <div class=\"reason-icon\" *ngIf=\"icon\">\n <fa-icon [icon]=\"icon\"></fa-icon>\n </div>\n <div class=\"reason-image\" *ngIf=\"!icon\">\n <img [ngStyle]=\"imageStyle\" loading=\"lazy\" [src]=\"valuePropContent.image\">\n </div>\n <div class=\"reason-title\">\n {{valuePropContent.title}}\n </div>\n </div>\n <div class=\"reason-desc\">\n {{valuePropContent.description}}\n </div>\n </mat-card-content>\n</mat-card>","import { NgModule } from '@angular/core';\nimport { SectionTitleComponent } from './section-title/section-title.component';\nimport { PageSectionStyleTenComponent } from './page-section-style-ten/page-section-style-ten.component';\nimport { CommonModule } from '@angular/common';\nimport { AppMaterialModule } from '@jooler/app-material';\nimport { FontAwesomeSharedModule } from '@jooler/font-awesome-shared';\nimport { GetStartedCTAComponent } from './get-started-cta/get-started-cta.component';\nimport { AchievementsComponent } from './achievements/achievements.component';\nimport { PricingPlansComponent } from './pricing-plans/pricing-plans.component'\nimport { ImageGalleryModal } from './image-gallery-modal/image-gallery-modal.component';\nimport { GalleriaModule } from 'primeng/galleria';\nimport { SuccessMessageDialogComponent } from './success-message-dialog/success-message-dialog.component';\nimport { PageSectionStyleThirteenComponent } from './page-section-style-thirteen/page-section-style-thirteen.component';\nimport { CallToActionSectionComponent } from './call-to-action-section/call-to-action-section.component';\nimport { CarouselModule } from 'primeng/carousel';\nimport { TeamComponent } from './team/team.component';\nimport { ValuesComponent } from './values/values.component';\nimport { OurClientsComponent } from './our-clients/our-clients.component';\nimport { OurClientListingComponent } from './our-client-listing/our-client-listing.component';\nimport { PageSectionWithMultipleCardsComponent } from './page-section-with-multiple-cards/page-section-with-multiple-cards.component';\nimport { CallToActionSectionTwoComponent } from './call-to-action-section-two/call-to-action-section-two.component';\nimport { ValuePropsSectionComponent } from './value-props-section/value-props-section.component';\nimport { ContactUsPageComponent } from './contact-us-page/contact-us-page.component';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport { NgSelectModule } from '@ng-select/ng-select';\nimport { ChooseCountryWithFlagComponent } from './choose-country-with-flag/choose-country-with-flag.component';\nimport { PageSectionStyleThreeComponent } from './page-section-style-three/page-section-style-three.component';\nimport { ComingSoonComponent } from './coming-soon/coming-soon.component';\nimport { SocialMediaIconsComponent } from './social-media-icons/social-media-icons.component';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { CtaSectionStyleFourComponent } from './cta-section-style-four/cta-section-style-four.component';\nimport { CtaSectionStyleThreeComponent } from './cta-section-style-three/cta-section-style-three.component';\nimport { VerticalSideTabsComponent } from './vertical-side-tabs/vertical-side-tabs.component';\nimport { HeaderSectionOneComponent } from './header-section-one/header-section-one.component';\nimport { CustomTooltipComponent } from './custom-tooltip/custom-tooltip.component';\nimport { ValuePropCardComponent } from './value-prop-card/value-prop-card.component';\nimport { AuthRouteDirective } from './auth-route-directive';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n declarations: [\n SocialMediaIconsComponent,\n ComingSoonComponent,\n AchievementsComponent,\n CallToActionSectionComponent,\n GetStartedCTAComponent,\n AuthRouteDirective,\n ImageGalleryModal,\n PageSectionStyleTenComponent,\n PageSectionStyleThirteenComponent,\n PricingPlansComponent,\n SectionTitleComponent,\n SuccessMessageDialogComponent,\n TeamComponent,\n ValuesComponent,\n OurClientsComponent,\n OurClientListingComponent,\n PageSectionWithMultipleCardsComponent,\n CallToActionSectionTwoComponent,\n CtaSectionStyleFourComponent,\n ContactUsPageComponent,\n ChooseCountryWithFlagComponent,\n PageSectionStyleThreeComponent,\n ValuePropsSectionComponent,\n CtaSectionStyleThreeComponent,\n HeaderSectionOneComponent,\n CustomTooltipComponent,\n VerticalSideTabsComponent,\n ValuePropCardComponent,\n ],\n imports: [\n FontAwesomeModule,\n CommonModule,\n AppMaterialModule,\n FontAwesomeSharedModule,\n GalleriaModule,\n CarouselModule,\n ReactiveFormsModule,\n FormsModule,\n NgSelectModule,\n MatTooltipModule,\n RouterModule\n ],\n exports: [\n FontAwesomeModule,\n AppMaterialModule,\n SectionTitleComponent,\n PageSectionStyleTenComponent,\n FontAwesomeSharedModule,\n GetStartedCTAComponent,\n AchievementsComponent,\n PricingPlansComponent,\n PageSectionStyleThirteenComponent,\n ImageGalleryModal,\n SuccessMessageDialogComponent,\n CallToActionSectionComponent,\n TeamComponent,\n ValuesComponent,\n OurClientsComponent,\n OurClientListingComponent,\n PageSectionWithMultipleCardsComponent,\n CallToActionSectionTwoComponent,\n ContactUsPageComponent,\n ChooseCountryWithFlagComponent,\n PageSectionStyleThreeComponent,\n ComingSoonComponent,\n SocialMediaIconsComponent,\n MatTooltipModule,\n ValuePropsSectionComponent,\n CtaSectionStyleFourComponent,\n CtaSectionStyleThreeComponent,\n HeaderSectionOneComponent,\n CustomTooltipComponent,\n VerticalSideTabsComponent,\n ValuePropCardComponent,\n ]\n})\nexport class JoolerWebsitesSharedModule { }\n","import { PageSectionAction } from './page-section-action.model';\n\nexport class PageSection {\n id: number;\n icon: string;\n title: string;\n description: string;\n image: string;\n titleImage: string;\n subtitle: string;\n actions: PageSectionAction[];\n}","import { NavigationExtras } from \"@angular/router\";\n\nexport class PageSectionAction {\n id: number;\n route: string;\n label: string;\n requiresAuth: boolean;\n navigationExtras: NavigationExtras;\n}","import { Achievement } from \"./achievement.model\";\nimport { SectionTitle } from \"./section-title.model\";\n\nexport class Achievements {\n sectionTitle: SectionTitle;\n achievements: Achievement[];\n}","\nexport class Achievement {\n number: string;\n subtitle: string\n}","import { PageSectionAction } from './page-section-action.model';\nimport { Perks } from './perks.model';\nexport class ServicePlan {\n id: number;\n name: string;\n description: string;\n price: number | string;\n frequency: string;\n isChosen: boolean;\n perks: Perks[];\n button: PageSectionAction;\n}","import { ImageSection } from './image-section.model';\n\nexport class ImageSectionAction {\n id: number;\n name: string;\n route: string;\n owner: ImageSection;\n requiresAuth: boolean;\n}","import { ImageSectionAction } from './image-section-action.model';\nimport { PageSection } from '../models/page-section.model';\n\nexport class ImageSection {\n id: number;\n image: string;\n title: string;\n subtitle: string;\n section: PageSection;\n order: number;\n description: string;\n actions: ImageSectionAction[];\n}\n","export class TeamMember {\n fullName: string;\n position: string;\n bio: string;\n profilePicture: string;\n}","import { SectionTitle } from \"./section-title.model\";\nimport { TeamMember } from \"./team-member.model\";\n\nexport class TeamSection {\n sectionTitle : SectionTitle;\n teamMembers: TeamMember[];\n caption: string;\n}","export enum AccountType {\n CONSUMERCLIENT = 0,\n BUSINESSCLIENT = 1,\n SUPPLIER = 2,\n COMPANY = 3,\n CERTIFICATIONENTTIY = 4\n}","import { User } from \"./user.model\";\nimport { AccountType } from \"./account-type.model\";\nimport { Address } from \"./address.model\";\n\nexport class Account {\n id: number;\n addresses: Address[];\n profilePicture: string;\n phoneNumber: string;\n createdBy: User;\n createdOn: string;\n isActive: boolean;\n balance: number;\n notes: string;\n accountType: AccountType;\n name: string;\n}\n\n","import { Account } from \"./account.model\";\nimport { Country } from \"./country.model\";\nimport { City } from \"./city.model\";\n\nexport class Address {\n id: number;\n addressLine1: string;\n addressLine2: string;\n city: City;\n country: Country;\n region: string;\n postalCode: string;\n account: Account;\n name: string;\n value: string;\n street: string;\n building: string;\n floor: string;\n}\n","export class City {\n id: number;\n name: string;\n code: string;\n}","export class Country {\n id: number;\n name: string;\n code2: string;\n code3: string;\n continent: string;\n tld: string;\n phone: string;\n}","export enum UserType {\n CONSUMER = 0,\n ERP = 1,\n SECOND_LEVEL = 2,\n ADMIN = 3\n}","import { UserType } from \"./user-type.model\";\n\nexport class User {\n id: number;\n email: string;\n firstName: string;\n lastName: string;\n fullName: string;\n username: string;\n profilePicture: string;\n userType: UserType;\n}\n","\nexport class CallToActionSectionTwo {\n withImage: boolean;\n imagePath: string;\n title: string;\n subtitle: string;\n}","export class socialMediaLinks {\n linkedIn: string;\n instagram: string;\n youTube: string;\n faceBook: string;\n}","export class Perks {\n perk:string;\n tooltipMessage :string\n}","import { SectionTitleSizes } from \"./section-title-sizes.model\";\nexport class SectionTitle {\n title: string;\n subtitle?: string;\n alignLeft?: boolean;\n isDarkBg?: boolean;\n isWithoutDivider?: boolean;\n fontSizeEnum?: SectionTitleSizes;\n\n constructor(\n title: string,\n subtitle?: string,\n alignLeft?: boolean,\n isDarkBg?: boolean,\n isWithoutDivider?: boolean,\n fontSizeEnum?: SectionTitleSizes\n ) {\n this.title = title;\n this.subtitle = subtitle;\n this.alignLeft = alignLeft;\n this.isDarkBg = isDarkBg;\n this.isWithoutDivider = isWithoutDivider;\n this.fontSizeEnum = fontSizeEnum;\n }\n}\n","/*\n * Public API Surface of jooler-websites-shared\n */\n\nexport * from './lib/jooler-websites-shared.module';\nexport * from './lib/section-title/section-title.component';\nexport * from './lib/page-section-style-ten/page-section-style-ten.component';\nexport * from './lib/models/page-section.model';\nexport * from './lib/models/page-section-action.model';\nexport * from './lib/get-started-cta/get-started-cta.component';\nexport * from './lib/achievements/achievements.component';\nexport * from './lib/models/achievements.model';\nexport * from './lib/models/achievement.model';\nexport * from './lib/models/service-plan.model';\nexport * from './lib/pricing-plans/pricing-plans.component';\nexport * from './lib/page-section-style-thirteen/page-section-style-thirteen.component';\nexport * from './lib/models/page-section-style-thirteen.model';\nexport * from './lib/image-gallery-modal/image-gallery-modal.component';\nexport * from './lib/models/gallery-item.interface';\nexport * from './lib/success-message-dialog/success-message-dialog.component';\nexport * from './lib/models/call-to-action-data.model';\nexport * from './lib/call-to-action-section/call-to-action-section.component';\nexport * from './lib/models/image-section-action.model';\nexport * from './lib/models/image-section.model';\nexport * from './lib/models/team-member.model';\nexport * from './lib/team/team.component';\nexport * from './lib/models/team-section.model';\nexport * from './lib/models/page-style-section-five.model';\nexport * from './lib/models/about-us-section.model';\nexport * from './lib/values/values.component';\nexport * from './lib/models/account-type.model';\nexport * from './lib/models/account.model';\nexport * from './lib/models/address.model';\nexport * from './lib/models/city.model';\nexport * from './lib/models/country.model';\nexport * from './lib/models/user-type.model';\nexport * from './lib/models/user.model';\nexport * from './lib/our-client-listing/our-client-listing.component';\nexport * from './lib/our-clients/our-clients.component';\nexport * from './lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component';\nexport * from './lib/call-to-action-section-two/call-to-action-section-two.component';\nexport * from './lib/models/call-to-action-section-two.model';\nexport * from './lib/value-props-section/value-props-section.component';\nexport * from './lib/contact-us-page/contact-us-page.component';\nexport * from './lib/choose-country-with-flag/choose-country-with-flag.component';\nexport * from './lib/page-section-style-three/page-section-style-three.component';\nexport * from './lib/coming-soon/coming-soon.component';\nexport * from './lib/social-media-icons/social-media-icons.component';\nexport * from './lib/social-media-icons/social-media-links.model';\nexport * from './lib/models/perks.model';\nexport * from './lib/models/brand-logo.model';\nexport * from './lib/models/section-title.model';\nexport * from './lib/cta-section-style-four/cta-section-style-four.component';\nexport * from './lib/cta-section-style-three/cta-section-style-three.component';\nexport * from './lib/models/cta-section-style-four.model';\nexport * from './lib/models/cta-one-type.model';\nexport * from './lib/models/header-section-style-one.model';\nexport * from './lib/header-section-one/header-section-one.component';\nexport * from './lib/custom-tooltip/custom-tooltip.component';\nexport * from './lib/vertical-side-tabs/vertical-side-tabs.component';\nexport * from './lib/models/feature-section-nine.model';\nexport * from './lib/models/value-prop-properties.model';\nexport * from './lib/value-prop-card/value-prop-card.component';\nexport * from './lib/models/section-title-sizes.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i2.SectionTitleComponent","i2.UserService","i3","i4","i6.AuthRouteDirective","i5","i5.AuthRouteDirective","i4.SectionTitleComponent","i6.SectionTitleComponent","i4.OurClientListingComponent","i3.SectionTitleComponent","i6","i7","i8.SectionTitleComponent","i9.ChooseCountryWithFlagComponent","i3.SocialMediaIconsComponent","i4.AuthRouteDirective","i5.SectionTitleComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jooler-websites-shared.mjs","sources":["../../../projects/jooler-websites-shared/src/lib/models/section-title-sizes.model.ts","../../../projects/jooler-websites-shared/src/lib/section-title/section-title.component.ts","../../../projects/jooler-websites-shared/src/lib/section-title/section-title.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-style-ten/page-section-style-ten.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-ten/page-section-style-ten.component.html","../../../projects/jooler-websites-shared/src/lib/get-started-cta/get-started-cta.component.ts","../../../projects/jooler-websites-shared/src/lib/get-started-cta/get-started-cta.component.html","../../../projects/jooler-websites-shared/src/lib/achievements/achievements.component.ts","../../../projects/jooler-websites-shared/src/lib/achievements/achievements.component.html","../../../projects/jooler-websites-shared/src/lib/services/user.service.ts","../../../projects/jooler-websites-shared/src/lib/auth-route-directive.ts","../../../projects/jooler-websites-shared/src/lib/pricing-plans/pricing-plans.component.ts","../../../projects/jooler-websites-shared/src/lib/pricing-plans/pricing-plans.component.html","../../../projects/jooler-websites-shared/src/lib/image-gallery-modal/image-gallery-modal.component.ts","../../../projects/jooler-websites-shared/src/lib/image-gallery-modal/image-gallery-modal.component.html","../../../projects/jooler-websites-shared/src/lib/success-message-dialog/success-message-dialog.component.ts","../../../projects/jooler-websites-shared/src/lib/success-message-dialog/success-message-dialog.component.html","../../../projects/jooler-websites-shared/src/lib/models/page-section-style-thirteen.model.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-thirteen/page-section-style-thirteen.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-thirteen/page-section-style-thirteen.component.html","../../../projects/jooler-websites-shared/src/lib/call-to-action-section/call-to-action-section.component.ts","../../../projects/jooler-websites-shared/src/lib/call-to-action-section/call-to-action-section.component.html","../../../projects/jooler-websites-shared/src/lib/team/team.component.ts","../../../projects/jooler-websites-shared/src/lib/team/team.component.html","../../../projects/jooler-websites-shared/src/lib/values/values.component.ts","../../../projects/jooler-websites-shared/src/lib/values/values.component.html","../../../projects/jooler-websites-shared/src/lib/our-client-listing/our-client-listing.component.ts","../../../projects/jooler-websites-shared/src/lib/our-client-listing/our-client-listing.component.html","../../../projects/jooler-websites-shared/src/lib/our-clients/our-clients.component.ts","../../../projects/jooler-websites-shared/src/lib/our-clients/our-clients.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component.html","../../../projects/jooler-websites-shared/src/lib/call-to-action-section-two/call-to-action-section-two.component.ts","../../../projects/jooler-websites-shared/src/lib/call-to-action-section-two/call-to-action-section-two.component.html","../../../projects/jooler-websites-shared/src/lib/value-props-section/value-props-section.component.ts","../../../projects/jooler-websites-shared/src/lib/value-props-section/value-props-section.component.html","../../../projects/jooler-websites-shared/src/lib/choose-country-with-flag/choose-country-with-flag.component.ts","../../../projects/jooler-websites-shared/src/lib/choose-country-with-flag/choose-country-with-flag.component.html","../../../projects/jooler-websites-shared/src/lib/contact-us-page/contact-us-page.component.ts","../../../projects/jooler-websites-shared/src/lib/contact-us-page/contact-us-page.component.html","../../../projects/jooler-websites-shared/src/lib/page-section-style-three/page-section-style-three.component.ts","../../../projects/jooler-websites-shared/src/lib/page-section-style-three/page-section-style-three.component.html","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-icons.component.ts","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-icons.component.html","../../../projects/jooler-websites-shared/src/lib/coming-soon/coming-soon.component.ts","../../../projects/jooler-websites-shared/src/lib/coming-soon/coming-soon.component.html","../../../projects/jooler-websites-shared/src/lib/cta-section-style-four/cta-section-style-four.component.ts","../../../projects/jooler-websites-shared/src/lib/cta-section-style-four/cta-section-style-four.component.html","../../../projects/jooler-websites-shared/src/lib/cta-section-style-three/cta-section-style-three.component.ts","../../../projects/jooler-websites-shared/src/lib/cta-section-style-three/cta-section-style-three.component.html","../../../projects/jooler-websites-shared/src/lib/vertical-side-tabs/vertical-side-tabs.component.ts","../../../projects/jooler-websites-shared/src/lib/vertical-side-tabs/vertical-side-tabs.component.html","../../../projects/jooler-websites-shared/src/lib/header-section-one/header-section-one.component.ts","../../../projects/jooler-websites-shared/src/lib/header-section-one/header-section-one.component.html","../../../projects/jooler-websites-shared/src/lib/custom-tooltip/custom-tooltip.component.ts","../../../projects/jooler-websites-shared/src/lib/custom-tooltip/custom-tooltip.component.html","../../../projects/jooler-websites-shared/src/lib/value-prop-card/value-prop-card.component.ts","../../../projects/jooler-websites-shared/src/lib/value-prop-card/value-prop-card.component.html","../../../projects/jooler-websites-shared/src/lib/jooler-websites-shared.module.ts","../../../projects/jooler-websites-shared/src/lib/models/page-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/page-section-action.model.ts","../../../projects/jooler-websites-shared/src/lib/models/achievements.model.ts","../../../projects/jooler-websites-shared/src/lib/models/achievement.model.ts","../../../projects/jooler-websites-shared/src/lib/models/service-plan.model.ts","../../../projects/jooler-websites-shared/src/lib/models/image-section-action.model.ts","../../../projects/jooler-websites-shared/src/lib/models/image-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/team-member.model.ts","../../../projects/jooler-websites-shared/src/lib/models/team-section.model.ts","../../../projects/jooler-websites-shared/src/lib/models/account-type.model.ts","../../../projects/jooler-websites-shared/src/lib/models/account.model.ts","../../../projects/jooler-websites-shared/src/lib/models/address.model.ts","../../../projects/jooler-websites-shared/src/lib/models/city.model.ts","../../../projects/jooler-websites-shared/src/lib/models/country.model.ts","../../../projects/jooler-websites-shared/src/lib/models/user-type.model.ts","../../../projects/jooler-websites-shared/src/lib/models/user.model.ts","../../../projects/jooler-websites-shared/src/lib/models/call-to-action-section-two.model.ts","../../../projects/jooler-websites-shared/src/lib/social-media-icons/social-media-links.model.ts","../../../projects/jooler-websites-shared/src/lib/models/perks.model.ts","../../../projects/jooler-websites-shared/src/lib/models/section-title.model.ts","../../../projects/jooler-websites-shared/src/public-api.ts","../../../projects/jooler-websites-shared/src/jooler-websites-shared.ts"],"sourcesContent":["export enum SectionTitleSizes {\n SMALL = 0,\n MEDIUM = 1,\n LARGE = 2\n}","import { Component, Input } from '@angular/core';\nimport { SectionTitle } from '../models/section-title.model'\nimport { SectionTitleSizes } from '../models/section-title-sizes.model';\n@Component({\n selector: 'section-title',\n templateUrl: './section-title.component.html',\n styleUrls: ['./section-title.component.scss']\n})\nexport class SectionTitleComponent {\n @Input() sectionTitle: SectionTitle;\n sectionTitleSizes = SectionTitleSizes;\n @Input() withoutTitleCase: boolean;\n @Input() descriptionWidth: string ;\n}","<div class=\"section-container\" [ngClass]=\"{'align-left':sectionTitle.alignLeft,'align-center':!sectionTitle.alignLeft,'dark-background':sectionTitle.isDarkBg ,'light-background':!sectionTitle.isDarkBg, 'without-divider':sectionTitle.isWithoutDivider,\n'small-font': sectionTitle.fontSizeEnum == sectionTitleSizes.SMALL,\n'medium-font': sectionTitle.fontSizeEnum == sectionTitleSizes.MEDIUM || (!sectionTitle.fontSizeEnum),\n'large-font': (sectionTitle.fontSizeEnum == sectionTitleSizes.LARGE) }\">\n <div class=\"title-container\">\n <div class=\"title\" *ngIf=\"sectionTitle.title\">\n {{withoutTitleCase? sectionTitle.title : (sectionTitle.title | titlecase)}}\n </div>\n <div class=\"divider\" *ngIf=\"!sectionTitle.isWithoutDivider\">\n </div>\n </div>\n <div class=\"description\" *ngIf=\"sectionTitle.subtitle\"\n [ngStyle]=\"descriptionWidth ? {width : descriptionWidth} : null\">\n {{sectionTitle.subtitle}}<ng-content></ng-content>\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageSection } from './../models/page-section.model';\n\n@Component({\n selector: 'page-section-style-ten',\n templateUrl: './page-section-style-ten.component.html',\n styleUrls: ['./page-section-style-ten.component.scss']\n})\nexport class PageSectionStyleTenComponent implements OnInit {\n @Input() data: any | PageSection;\n @Input() iconName: any = \"circle\";\n panelOpenState: boolean = false;\n @Input() selectedPanel: number;\n @Output() panelChanged: EventEmitter<number> = new EventEmitter();\n\n constructor() {\n\n }\n\n ngOnInit(): void { }\n\n onClickPanel(index: number) {\n this.selectedPanel = index;\n console.log(this.selectedPanel)\n this.panelChanged.emit(this.selectedPanel);\n }\n}\n","<mat-accordion class=\"mat-mdc-form-field\">\n <mat-expansion-panel class=\"expansion-panel\" (opened)=\"panelOpenState = true\" (closed)=\"panelOpenState = false\"\n *ngFor=\"let item of data; let i = index\" (click)=\"onClickPanel(i)\">\n <mat-expansion-panel-header>\n <div class=\"panel-headline\">\n <mat-panel-title>\n <fa-icon [icon]=\"iconName\">\n </fa-icon>\n {{item.question}}\n </mat-panel-title>\n </div>\n </mat-expansion-panel-header>\n\n <div class=\"panel-content\">\n <ul>\n <li>\n {{item.answer}}\n </li>\n </ul>\n </div>\n </mat-expansion-panel>\n</mat-accordion>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { GetStartedCta } from '../models/get-started-cta.model';\n@Component({\n selector: 'get-started-cta',\n templateUrl: './get-started-cta.component.html',\n styleUrls: ['./get-started-cta.component.scss']\n})\nexport class GetStartedCTAComponent implements OnInit {\n @Input() ctaCardData: GetStartedCta;\n\n ngOnInit() { }\n constructor(private _Router: Router) { }\n\n onClickLink(route) {\n this._Router.navigate([route]);\n }\n}\n","<div class=\"all\">\n <div class=\"get-started\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-1\" viewBox=\"0 0 228 234\" fill=\"none\">\n <path\n d=\"M0.01022 156.807C3.78242 72.5467 -16.7612 -0.000429796 70.322 -0.000429796C157.405 -0.000429796 228 70.7119 228 157.941C228 245.17 180.321 233.889 94.691 233.133C-3.00754 232.271 0.01022 244.036 0.01022 156.807Z\"\n fill=\"#155ED4\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-2\" viewBox=\"0 0 177 117\" fill=\"none\">\n <path\n d=\"M110.357 10.5333C194 -30.3739 182.428 61.2397 159.12 90.0236C135.811 118.808 82.6409 125.844 53.8569 102.535C25.073 79.226 -15.952 52.3174 7.35676 23.5335C30.6655 -5.25045 70 25.1261 110.357 10.5333Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 313 229\" fill=\"none\" class=\"svg svg-3\">\n <path\n d=\"M291.122 186.096C243.951 286.741 231.946 183.061 148.832 145.184C65.7183 107.307 -33.8765 166.916 12.5879 64.9595C59.0523 -36.9973 149.649 15.9897 217.109 4.58455C305.197 -13.6163 337.586 84.1393 291.122 186.096Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-4\" viewBox=\"0 0 130 187\" fill=\"none\">\n <path\n d=\"M129.626 63.1228C128.981 112.458 137.333 187 87.7069 187C38.0805 187 0 112.211 0 62.4765C0 12.7416 37.6506 -0.000427246 87.277 -0.000427246C136.903 -0.000427246 129.626 13.3879 129.626 63.1228Z\" />\n </svg>\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"svg svg-5\" viewBox=\"0 0 173 131\" fill=\"none\">\n <path\n d=\"M98.7021 21.5285C167.508 -41.2032 182.105 49.9773 167.808 84.1448C153.512 118.312 104.451 139.984 70.2838 125.687C36.1163 111.39 -10.8106 97.0728 3.48602 62.9053C17.7827 28.7378 64.06 46.8582 98.7021 21.5285Z\" />\n </svg>\n\n\n <div class=\"content\">\n <h1>{{ctaCardData.title}}</h1>\n <div class=\"description\">\n {{ctaCardData.description}}\n </div>\n <a [routerLink]=\"ctaCardData.logo.route\" class=\"custom-anchor image\">\n <img loading=\"lazy\" [src]=\"ctaCardData.logo.path\" alt=\"\" class=\"logo-img\">\n </a>\n <div class=\"create-account\">\n <input type=\"email\" class=\"email-input\" placeholder=\"Email Address\">\n <a [routerLink]=\"ctaCardData.callToActionButton.route\" class=\"custom-anchor\">\n <button mat-raised-button type=\"submit\" color=\"primary\">{{ctaCardData.callToActionButton.label}}</button>\n </a>\n </div>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Achievements } from '../models/achievements.model';\n\n@Component({\n selector: 'achievements',\n templateUrl: './achievements.component.html',\n styleUrls: [ './achievements.component.scss' ]\n})\nexport class AchievementsComponent implements OnInit {\n @Input() sectionContent: Achievements;\n constructor() { }\n\n ngOnInit() { }\n}\n","<div class=\"achievements\" [ngClass]=\"{'blue-background': sectionContent.sectionTitle.isDarkBg}\">\n <div class=\"content\">\n <div>\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"achievements-cards\">\n <div class=\"achievement-card\" *ngFor=\"let achievement of sectionContent.achievements\">\n <div class=\"number\">\n {{achievement.number}}\n </div>\n <div class=\"subtitle\">\n {{achievement.subtitle}}\n </div>\n </div>\n </div>\n </div>\n</div>","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\n\n@Injectable({\n providedIn: 'root'\n})\n\nexport class UserService {\n\n constructor(private http: HttpClient) { }\n\n getAuthenticationHeaders() {\n const token = localStorage.getItem(\"token\");\n const httpHeaders = new HttpHeaders({\n \"Content-Type\": \"application/json; charset-utf-8\",\n Authorization: \"Token \" + token,\n });\n return { headers: httpHeaders };\n }\n\n getTokenlessHeaders() {\n const httpHeaders = new HttpHeaders({\n \"Content-Type\": \"application/json; charset-utf-8\",\n });\n return { headers: httpHeaders };\n }\n\n isAuthenticated(): boolean {\n return !!localStorage.getItem('token');\n }\n}\n","import { Directive, Input, HostListener } from '@angular/core';\nimport { NavigationExtras, Router } from '@angular/router';\nimport { UserService } from './services/user.service';\n\n@Directive({\n selector: '[authRoute]'\n})\nexport class AuthRouteDirective {\n @Input() targetRoute: string;\n @Input() requireAuth: boolean;\n @Input() navigationExtras: NavigationExtras;\n constructor(private _router: Router, private _userService: UserService) { }\n\n @HostListener('click', ['$event'])\n handleClick(event: Event) {\n event.preventDefault();\n if (this.requireAuth && !this._userService.isAuthenticated()) {\n this._router.navigate(['/authentication/login']);\n } else {\n this._router.navigate([this.targetRoute], this.navigationExtras);\n }\n }\n}","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { ServicePlan } from '../models/service-plan.model';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'pricing-plans',\n templateUrl: './pricing-plans.component.html',\n styleUrls: [ './pricing-plans.component.scss' ]\n})\nexport class PricingPlansComponent implements OnInit {\n @Input() servicePlan: ServicePlan;\n @Output() onClickCTA = new EventEmitter();\n \n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickCtaButton() {\n this.onClickCTA.emit();\n }\n\n // Helper to check if the price is a simple number\n isNumber(val: any): boolean {\n return typeof val === 'number';\n }\n\n\n // Explicitly tell TS that this function returns true only if price is a string\nisFormula(val: string | number): val is string {\n return typeof val === 'string' && val.includes('|');\n}\n\n // Split the formula: index 0 is the big price, index 1 is the subtext\n getFormulaParts(val: string): string[] {\n return val.split('|');\n }\n}\n","<div class=\"plan-content\">\n <div class=\"title-price-desc\">\n <div class=\"plan-title\">\n {{servicePlan.name}}\n </div>\n\n <div class=\"service-price\">\n <span *ngIf=\"isNumber(servicePlan.price)\" class=\"big-price\">\n {{ servicePlan.price | currency : 'USD' : 'symbol' : '1.0-0' }}\n </span>\n \n <div *ngIf=\"isFormula(servicePlan.price)\" class=\"formula-container\">\n <span class=\"big-price\">\n ${{ getFormulaParts($any(servicePlan.price))[0] }}\n </span>\n <span class=\"sub-price\">\n {{ getFormulaParts($any(servicePlan.price))[1] }}\n </span>\n </div>\n \n <span *ngIf=\"!isNumber(servicePlan.price) && !isFormula(servicePlan.price)\" class=\"text-price\">\n {{ servicePlan.price }}\n </span>\n </div>\n\n <span>/{{servicePlan.frequency}}</span>\n\n <div class=\"description\">\n {{servicePlan.description}}\n </div>\n <div class=\"divider\"></div>\n </div>\n <div class=\"perks\">\n <div class=\"perk\" *ngFor=\"let perk of servicePlan.perks; let switchStyle = index\">\n <span class=\"check-icon\">\n <fa-icon icon=\"check\"></fa-icon>\n </span>\n <div class=\"service-description\">\n <div class=\"service-perk\">\n {{perk.perk}}\n </div>\n <span class=\"exclamation-mark\" *ngIf=\"perk.tooltipMessage\">\n <fa-icon #tooltip=\"matTooltip\" [matTooltip]=\"perk.tooltipMessage\" [matTooltipPosition]=\"'right'\"\n icon=\"circle-exclamation\"></fa-icon>\n </span>\n </div>\n </div>\n </div>\n <div class=\"registration-button\">\n <button mat-raised-button [requireAuth]=\"servicePlan.button.requiresAuth\"\n [targetRoute]=\"servicePlan.button.route\" authRoute [navigationExtras]=\"servicePlan.button.navigationExtras\"\n class=\"button\">\n {{servicePlan.button.label}}\n </button>\n </div>\n</div>","import { Component, HostListener, Input, OnInit } from '@angular/core';\nimport { GalleryItem } from '../models/gallery-item.interface';\nimport { animate, style, transition, trigger, AnimationEvent } from '@angular/animations';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\n@Component({\n selector: 'image-gallery-modal',\n templateUrl: './image-gallery-modal.component.html',\n styleUrls: ['./image-gallery-modal.component.scss'],\n animations: [\n trigger('animation', [\n transition('void => visible', [\n style({ transform: 'scale(0.5)', opacity: 0 }),\n animate('150ms ease-out', style({ transform: 'scale(1)', opacity: 1 }))\n ]),\n transition('visible => void', [\n animate('150ms ease-in', style({ transform: 'scale(0.5)', opacity: 0 }))\n ]),\n ]),\n trigger('animation2', [\n // Add :enter so Angular knows how to start the animation\n transition(':enter', [\n style({ opacity: 0 }),\n animate('200ms', style({ opacity: 1 }))\n ]),\n transition(':leave', [\n animate('200ms', style({ opacity: 0 }))\n ])\n ])\n ],\n})\nexport class ImageGalleryModal implements OnInit {\n @Input() galleryData: GalleryItem[] = [];\n @Input() showCount = false;\n\n previewImage = false;\n showMask = false;\n currentImageGalleryModal: GalleryItem = this.galleryData[0];\n currentIndex = 0;\n controls = true;\n totalImageCount = 0;\n responsiveOptions: any[];\n constructor(\n private breakpointObserver: BreakpointObserver,\n\n\n ) { }\n ngOnInit() {\n this.breakpointObserver.observe(\n \"(max-width: 900px)\").subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.onClosePreview();\n }\n });\n this.totalImageCount = this.galleryData.length;\n this.responsiveOptions = [\n {\n breakpoint: '900px',\n numVisible: 5\n },\n {\n breakpoint: '600px',\n numVisible: 4\n },\n {\n breakpoint: '540px',\n numVisible: 3\n },\n {\n breakpoint: '400px',\n numVisible: 2\n },\n {\n breakpoint: '300px',\n numVisible: 1\n }\n ];\n }\n @HostListener('document:keydown.escape', ['$event']) onKeydownHandler(event: KeyboardEvent) {\n this.onClosePreview();\n }\n\n onPreviewImage(index: number): void {\n document.body.style.overflowY = 'hidden';\n this.showMask = true;\n this.previewImage = true;\n this.currentIndex = index;\n this.currentImageGalleryModal = this.galleryData[index];\n }\n\n onclickPrev(): void {\n this.currentIndex--; // Decrement for Previous\n if (this.currentIndex < 0) {\n this.currentIndex = this.galleryData.length - 1;\n }\n this.currentImageGalleryModal = this.galleryData[this.currentIndex];\n }\n\n onclickNext(): void {\n this.currentIndex++; // Increment for Next\n if (this.currentIndex > this.galleryData.length - 1) {\n this.currentIndex = 0;\n }\n this.currentImageGalleryModal = this.galleryData[this.currentIndex];\n }\n\n onClosePreview() {\n // 1. Immediately re-enable scrolling\n document.body.style.overflowY = 'visible';\n \n // 2. This triggers the (@animation.done) or [@animation] 'void' state\n this.previewImage = false;\n\n // 3. SAFETY FALLBACK: \n // If the animation doesn't fire for some reason, \n // we force the mask closed after a short delay.\n setTimeout(() => {\n if (!this.previewImage) {\n this.showMask = false;\n }\n }, 200); \n }\n\n onAnimationEnd(event: AnimationEvent) {\n // When the 'scale' animation reaches 'void' (disappears), hide the dark mask\n if (event.toState === 'void' || event.fromState === 'visible') {\n this.showMask = false;\n }\n }\n\n}\n","<div class=\"section\">\n <div class=\"gallery-image-gallery-modal-container\">\n <div class=\"gallery\">\n <div *ngFor=\"let item of galleryData; let i = index\" \n class=\"gallery-image\"\n (click)=\"onPreviewImage(i)\">\n \n <img loading=\"lazy\" \n [src]=\"item.image_url\" \n [alt]=\"item.display_name\">\n \n <div class=\"image-cta\">\n <span>View</span>\n <fa-icon icon=\"magnifying-glass-plus\"></fa-icon>\n </div>\n </div>\n </div>\n\n <div *ngIf=\"showMask\" \n class=\"image-gallery-modal\" \n @animation2>\n \n <div *ngIf=\"showCount\" class=\"count\">\n {{currentIndex + 1}} / {{totalImageCount}}\n </div>\n\n <button (click)=\"onClosePreview()\" class=\"close-btn\" aria-label=\"Close preview\">\n <fa-icon icon=\"times\"></fa-icon>\n </button>\n\n <ng-container *ngIf=\"controls\">\n <button class=\"btn-image-gallery-modal-carousel btn-prev\" \n (click)=\"onclickPrev()\" \n aria-label=\"Previous image\">\n <fa-icon icon=\"chevron-left\"></fa-icon>\n </button>\n \n <button class=\"btn-image-gallery-modal-carousel btn-next\" \n (click)=\"onclickNext()\" \n aria-label=\"Next image\">\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </button>\n </ng-container>\n\n <div *ngIf=\"previewImage\" \n [@animation]=\"'visible'\"\n (@animation.done)=\"onAnimationEnd($event)\"\n class=\"image-gallery-modal-img\">\n \n <img [src]=\"currentImageGalleryModal?.image_url\" \n [alt]=\"currentImageGalleryModal?.display_name\">\n </div>\n </div>\n </div>\n\n <div class=\"gallery-mobile-wrapper\">\n <p-galleria [value]=\"galleryData\" \n class=\"gallery-custom\" \n [responsiveOptions]=\"responsiveOptions\" \n [containerStyle]=\"{ 'max-width': '100%' }\"\n [circular]=\"true\" \n [showItemNavigators]=\"true\"\n [showThumbnails]=\"true\">\n \n <ng-template pTemplate=\"item\" let-item>\n <div class=\"img-container\">\n <img [src]=\"item.image_url\" class=\"big-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n \n <ng-template pTemplate=\"thumbnail\" let-item>\n <div class=\"thumbnail-container\">\n <img [src]=\"item.image_url\" class=\"small-img\" [alt]=\"item.display_name\" />\n </div>\n </ng-template>\n </p-galleria>\n </div>\n</div>","import { Component } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'success-message-dialog',\n templateUrl: './success-message-dialog.component.html',\n styleUrls: ['./success-message-dialog.component.scss']\n})\nexport class SuccessMessageDialogComponent {\n\n constructor(\n public dialogRef: MatDialogRef<SuccessMessageDialogComponent>,\n private _Router: Router\n ) { }\n\n onClickSubmitAnotherForm() {\n this.dialogRef.close();\n this._Router.navigate(['/contact-us/contact-us-page']);\n }\n}\n","<div class=\"page\">\n <span mat-dialog-title class=\"dialog-header\" mat-button>\n <fa-icon icon=\"xmark\" mat-dialog-close></fa-icon>\n </span>\n\n <mat-dialog-content class=\"mat-typography\">\n <div class=\"success-icon\">\n <fa-icon icon=\"calendar-check\"></fa-icon>\n </div>\n <h2 class=\"title\">Thanks! your request has been submitted</h2>\n <h3 class=\"subtitle\">We have received your message, we'll reach out to you as soon as possible!</h3>\n </mat-dialog-content>\n <div class=\"divider\"></div>\n <mat-dialog-actions class=\"dialog-footer\">\n <h3>Still have any questions? <span class=\"link-text\" (click)=\"onClickSubmitAnotherForm()\">Submit\n another form</span>\n </h3>\n </mat-dialog-actions>\n</div>","export enum PageSectionStyleThirteen {\n SHAPE_ICON = 0,\n IMAGE_ICON = 1\n}","import { Component, Input, OnInit } from '@angular/core';\nimport { PageSectionStyleThirteen } from '../models/page-section-style-thirteen.model';\nimport { SectionTitle } from '../models/section-title.model';\n\n@Component({\n selector: 'page-section-style-thirteen',\n templateUrl: './page-section-style-thirteen.component.html',\n styleUrls: ['./page-section-style-thirteen.component.scss']\n})\nexport class PageSectionStyleThirteenComponent implements OnInit {\n showedImage: string;\n counter: number = 0;\n intervalId: any;\n isItemHovered: boolean[] = [];\n pageSectionStyleThirteen = PageSectionStyleThirteen;\n @Input() sectionTitle: SectionTitle;\n @Input() items: any;\n @Input() iconType: PageSectionStyleThirteen = this.pageSectionStyleThirteen.SHAPE_ICON;\n @Input() isTwoImages: boolean = false;\n\n ngOnInit(): void {\n this.onHoveredItem(this.items[0].image, 0);\n }\n constructor() { }\n\n onClickChangeImage(image, index) {\n this.onHoveredItem(image, index);\n }\n\n onHoveredItem(itemImage, index) {\n this.counter = index;\n for (let i = 0; i < this.items.length; i++) {\n this.isItemHovered[i] = false;\n }\n this.isItemHovered[index] = true;\n this.showedImage = itemImage;\n }\n}\n\n","<div class=\"why-choose-us\">\n <div class=\"left-side\">\n <div class=\"headline\">\n <section-title [sectionTitle]=\"sectionTitle\"></section-title>\n </div>\n <div class=\"items\">\n <div class=\"item\" *ngFor=\"let item of items; let i=index\" [ngClass]=\"{'hovered-item': isItemHovered[i]}\" (click)=\"onClickChangeImage(item.image, i)\">\n <div class=\"left-column\">\n\n <div class=\"square-row\" [ngSwitch]=\"iconType\" [ngClass]=\"{'square-row':iconType == pageSectionStyleThirteen.SHAPE_ICON,'shape-column':iconType == pageSectionStyleThirteen.IMAGE_ICON}\">\n <div class=\"square\" *ngSwitchCase=\"pageSectionStyleThirteen.SHAPE_ICON\"></div>\n <div class=\"shape\" *ngSwitchCase=\"pageSectionStyleThirteen.IMAGE_ICON\">\n <img loading=\"lazy\" [src]=\"item.iconImage\" alt=\"\">\n </div>\n </div>\n <div></div>\n </div>\n <div class=\"right-column\">\n <div class=\"item-title\">{{item.title}}</div>\n <div class=\"item-description\" [ngClass]=\"{'hide-description':!isItemHovered[i] , 'show-description':isItemHovered[i] }\">\n {{item.description}}</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"right-side\" [ngClass]=\"{'two-images-preview':isTwoImages}\">\n <div class=\"image-container\">\n <img loading=\"lazy\" [src]=\"showedImage\" alt=\"\">\n </div>\n <div class=\"back-image\" *ngIf=\"isTwoImages\">\n <img loading=\"lazy\" src=\"https://i.ibb.co/mqtpD50/blue-points-section.png\" alt=\"\">\n </div>\n </div>\n</div>","import { Component, Input } from '@angular/core';\nimport { CallToActionSectionData } from '../models/call-to-action-data.model';\n\n@Component({\n selector: 'call-to-action-section',\n templateUrl: './call-to-action-section.component.html',\n styleUrls: [ './call-to-action-section.component.scss' ]\n})\n\nexport class CallToActionSectionComponent {\n @Input() sectionContent: CallToActionSectionData;\n @Input() titleOnRightSide: boolean = false;\n @Input() imageBg: boolean = false;\n @Input() isBoxWithCard: boolean = false;\n\n constructor() { }\n\n\n}\n","<div class=\"page\">\n <div class=\"cta-box\" [ngClass]=\"{'title-right-side':titleOnRightSide,'title-left-side':!titleOnRightSide,\n 'colored-bg':!imageBg,\n 'image-bg':imageBg\n}\" [ngStyle]=\"{'background-image': 'url(' + sectionContent.bgImage + ')', 'background-color': sectionContent.bgColor}\">\n <div class=\"heading-side\">\n <div class=\"title\">{{sectionContent.title}}</div>\n <div class=\"subtitle\">{{sectionContent.subtitle}}</div>\n <div class=\"buttons\">\n <span class=\"cta-link\" *ngFor=\"let button of sectionContent.buttons\" authRoute\n [requireAuth]=\"button.requiresAuth\" [targetRoute]=\"button.route\">\n {{button.name}}\n <fa-icon icon=\"chevron-right\"></fa-icon>\n </span>\n </div>\n </div>\n <div class=\"cta-side\" [ngClass]=\"{'only-an-item':sectionContent.ctaCards.length == 1 }\">\n <div class=\"box\" *ngFor=\"let card of sectionContent.ctaCards\"\n [ngClass]=\"{'box-card':isBoxWithCard, 'box-non-card':!isBoxWithCard}\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\" class=\"image\" *ngIf=\"card.image\">\n <div class=\"box-title\">\n {{card.title}}\n </div>\n <div class=\"box-description\" *ngIf=\"card.description \">\n {{card.description}}\n </div>\n <div class=\"button\">\n <a [routerLink]=\"card.button.route\" class=\"custom-anchor\">\n <button type=\"button\" mat-raised-button authRoute [requireAuth]=\"card.button.requiresAuth\">\n {{card.button.name}}\n </button>\n </a>\n </div>\n <div class=\"divider\" *ngIf=\"!isBoxWithCard && sectionContent.ctaCards.length > 1 \">\n </div>\n </div>\n </div>\n </div>\n</div>","import { Component, OnInit, Input } from '@angular/core';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { Router } from '@angular/router';;\nimport { TeamSection } from '../models/team-section.model';\n\n@Component({\n selector: 'team',\n templateUrl: './team.component.html',\n styleUrls: ['./team.component.scss']\n})\nexport class TeamComponent implements OnInit {\n @Input() sectionContent: TeamSection;\n isTabletSize: boolean;\n membersToShow: number;\n scrollMemberNumber: number = 2;\n\n constructor(\n private _router: Router,\n private breakpointObserver: BreakpointObserver,\n ) { }\n\n ngOnInit() {\n this.breakpointObserver.observe([\n \"(max-width: 1200px) and (min-width:851px)\", \"(max-width: 850px) and (min-width:601px)\",\n \"(max-width: 600px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:851px)']) {\n this.isTabletSize = true;\n this.membersToShow = 3;\n }\n else if (result.breakpoints['(max-width: 850px) and (min-width:601px)']) {\n this.membersToShow = 2;\n this.scrollMemberNumber = 2;\n this.isTabletSize = true;\n }\n else if (result.breakpoints['(max-width: 600px)']) {\n this.membersToShow = 1;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else {\n this.isTabletSize = false;\n }\n });\n }\n\n onAddNewMember() {\n this._router.navigate(['/team/new-member']);\n }\n}\n","<div class=\"container\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\" ></section-title>\n <div class=\"cards\">\n <div class=\"member-card\" *ngFor=\"let teamMember of sectionContent.teamMembers\">\n <div class=\"image-container\">\n <img loading=\"lazy\" [src]=\"teamMember.profilePicture\">\n </div>\n <div>\n <div class=\"name\">\n {{teamMember.fullName}}\n </div>\n <div class=\"position\">\n {{teamMember.position}}\n </div>\n </div>\n </div>\n </div>\n <div class=\"caption-text\">\n {{sectionContent.caption}}\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { CompanyValues } from '../models/about-us-section.model';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { IconName } from '@fortawesome/fontawesome-svg-core';\n\n@Component({\n selector: 'values',\n templateUrl: './values.component.html',\n styleUrls: [ './values.component.scss' ]\n})\nexport class ValuesComponent implements OnInit {\n @Input() sectionContent: CompanyValues;\n @Input() withBgImage: boolean = false;\n @Input() isDarkBg: boolean;\n isTabletSize: boolean;\n newSectionContent: any;\n\n constructor(private breakpointObserver: BreakpointObserver\n ) {\n\n }\n ngOnInit(): void {\n\n this.breakpointObserver.observe([\n \"(max-width: 1200px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.isTabletSize = true;\n } else {\n this.isTabletSize = false;\n }\n });\n\n this.newSectionContent = this.sectionContent;\n\n for (let card of this.newSectionContent.cards) {\n this.newSectionContent.newIcon = card.icon as IconName;\n }\n }\n}\n","<div class=\"page\">\n <section-title [sectionTitle]=\"newSectionContent.sectionTitle\"></section-title>\n <div class=\"values-cards\" *ngIf=\"!isTabletSize\">\n <div class=\"card\" *ngFor=\"let card of newSectionContent.cards\">\n <div class=\"card-headline\">\n <div class=\"icon\" *ngIf=\"card.icon\">\n <fa-icon [icon]=\"card.icon\"></fa-icon>\n </div>\n <div class=\"image\" *ngIf=\"!card.icon\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{card.title}}\n </div>\n </div>\n <div class=\"value-description\">\n {{card.subtitle}}\n </div>\n </div>\n </div>\n <div class=\"value-cards\" *ngIf=\"isTabletSize\">\n <p-carousel class=\"custom\" [value]=\"newSectionContent.cards\" [numVisible]='1' [numScroll]='1' [page]=\"0\" orientation=\"horizontal\" [circular]=\"true\">\n <ng-template let-card pTemplate=\"item\">\n <div class=\"card\">\n <div class=\"card-headline\">\n <div class=\"icon\" *ngIf=\"card.icon\">\n <fa-icon [icon]=\"card.icon\"></fa-icon>\n </div>\n <div class=\"image\" *ngIf=\"!card.icon\">\n <img loading=\"lazy\" [src]=\"card.image\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{card.title}}\n </div>\n </div>\n <div class=\"value-description\">\n {{card.subtitle}}\n </div>\n </div>\n </ng-template>\n </p-carousel>\n </div>\n</div>","import { Component, Input, OnInit } from \"@angular/core\";\nimport { Account } from \"../models/account.model\";\n\n@Component({\n selector: \"our-client-listing\",\n templateUrl: \"./our-client-listing.component.html\",\n styleUrls: [\"./our-client-listing.component.scss\"],\n})\nexport class OurClientListingComponent implements OnInit {\n @Input() account: Account;\n\n constructor() { }\n\n ngOnInit(): void {\n // console.log(this.account);\n }\n}\n","<div class=\"client\">\n <img loading=\"lazy\" class=\"image\" [src]=\"account.profilePicture\" alt=\"\" />\n</div>","import { Component, OnInit, Input } from \"@angular/core\";\nimport { Account } from \"./../models/account.model\";\nimport { BreakpointObserver, BreakpointState } from \"@angular/cdk/layout\";\n\n@Component({\n selector: \"our-clients\",\n templateUrl: \"./our-clients.component.html\",\n styleUrls: [\"./our-clients.component.scss\"],\n})\nexport class OurClientsComponent implements OnInit {\n @Input() accounts: Account[];\n isUnderTabRange: boolean;\n clientsToShow: number = 4;\n scrollClientNumber: number = 2;\n constructor(private breakpointObserver: BreakpointObserver,) { }\n\n ngOnInit(): void {\n this.breakpointObserver.observe([\n \"(min-width: 1201px)\",\n \"(max-width: 1200px) and (min-width:1076px)\",\n \"(max-width: 1075px) and (min-width:651px)\",\n \"(max-width: 650px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:1076px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 3;\n this.scrollClientNumber = 2;\n } else if (result.breakpoints['(min-width: 1201px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 4;\n this.scrollClientNumber = 2;\n } else if (result.breakpoints['(max-width: 1075px) and (min-width:651px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 2;\n this.scrollClientNumber = 1;\n } else if (result.breakpoints['(max-width: 650px)']) {\n this.isUnderTabRange = true;\n this.clientsToShow = 1;\n this.scrollClientNumber = 1;\n } else {\n this.isUnderTabRange = false;\n }\n });\n }\n}\n","<p-carousel class=\"custom\" [value]=\"accounts\" [numVisible]=\"clientsToShow\" [numScroll]=\"scrollClientNumber\" [page]=\"0\"\n orientation=\"horizontal\" [circular]=\"true\">\n <ng-template let-client pTemplate=\"item\">\n <div>\n <our-client-listing class=\"client\" [account]=\"client\">\n </our-client-listing>\n </div>\n </ng-template>\n</p-carousel>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'page-section-with-multiple-cards',\n templateUrl: './page-section-with-multiple-cards.component.html',\n styleUrls: ['./page-section-with-multiple-cards.component.scss']\n})\nexport class PageSectionWithMultipleCardsComponent implements OnInit {\n @Input() sectionContent: any;\n\n constructor(private _Router: Router) { }\n ngOnInit(): void { }\n\n onClickAllReasons(route: string) {\n this._Router.navigate([route]);\n }\n}\n","<div class=\"page\">\n <div class=\"text-part\">\n <h2 class=\"tip-title\">\n {{sectionContent.tipTitle}}\n </h2>\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"reason-card\" *ngFor=\"let reason of sectionContent.reasons\">\n <div class=\"card-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 97 97\" [style.fill]=\"reason.shapeColor\">\n <path\n d=\"M5.0312 58.8331C-9.18797 29.0705 16.1615 9.11602 41.3271 3.99601C66.4928 -1.12401 102.401 -5.60082 96.1642 40.2919C89.9278 86.1847 85.034 90.009 59.8684 95.129C34.7027 100.249 19.2504 88.5958 5.0312 58.8331Z\" />\n </svg>\n <fa-icon [style.color]=\"reason.iconColor\" [icon]=\"reason.iconName\"></fa-icon>\n </div>\n <div class=\"card-title\">\n {{reason.title}}\n </div>\n <div class=\"card-description\">\n {{reason.description}}\n </div>\n </div>\n <button class=\"all-reason-card\" (click)=\"onClickAllReasons(sectionContent.allReasonsBox.route)\">\n <div class=\"card-title\">\n {{sectionContent.allReasonsBox.ctaText}}\n </div>\n <div class=\"icon-circle\">\n <fa-icon [icon]=\"sectionContent.allReasonsBox.iconName\"></fa-icon>\n </div>\n </button>\n\n</div>","import { Component, OnInit, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { CallToActionSectionTwo } from '../models/call-to-action-section-two.model';\n\n@Component({\n selector: 'call-to-action-section-two',\n templateUrl: './call-to-action-section-two.component.html',\n styleUrls: ['./call-to-action-section-two.component.scss']\n})\nexport class CallToActionSectionTwoComponent implements OnInit {\n @Input() sectionContent: CallToActionSectionTwo;\n\n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickLink(link: string) {\n this._router.navigate([link])\n }\n}\n","<section class=\"section\">\n <header class=\"logo-container\" *ngIf=\"sectionContent.withImage\">\n <img loading=\"lazy\" class=\"logo\" [src]=\"sectionContent.imagePath\" alt=\"Logo\">\n </header>\n <h1 class=\"title\">\n {{sectionContent.title}}\n </h1>\n <h3 class=\"subtitle\">\n {{sectionContent.subtitle}}<ng-content></ng-content>\n </h3>\n</section>","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'value-props-section',\n templateUrl: './value-props-section.component.html',\n styleUrls: [ './value-props-section.component.scss' ]\n})\nexport class ValuePropsSectionComponent implements OnInit {\n @Input() sectionContent: any;\n selectedImage: any;\n constructor() { }\n\n ngOnInit() {\n let i = 0;\n this.selectedImage = this.sectionContent.paragraphs[ 0 ].imagePath;\n i++;\n for (let paragraph of this.sectionContent.paragraphs) {\n paragraph.isClicked = false;\n }\n this.sectionContent.paragraphs[ 0 ].isClicked = true;\n\n }\n\n onChangeImage(imagePath, paragraphIndex) {\n for (let paragraph of this.sectionContent.paragraphs) {\n paragraph.isClicked = false;\n }\n this.selectedImage = imagePath;\n this.sectionContent.paragraphs[ paragraphIndex ].isClicked = true;\n }\n}\n","<div class=\"value-prop\" [ngClass]=\"{'image-text-sort': sectionContent.paragraphProperties.onRightSide , 'text-image-sort': !sectionContent.paragraphProperties.onRightSide ,'paragraph-with-card':sectionContent.paragraphProperties.withCard }\">\n <div class=\"text-side\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\">\n </section-title>\n <div class=\"value-prop-image\">\n <img loading=\"lazy\" [src]=\"selectedImage\" alt=\"\">\n </div>\n <div class=\"paragraph-items\">\n <p *ngFor=\"let paragraph of sectionContent.paragraphs; let j = index\" class=\"paragraph\" (click)=\"onChangeImage(paragraph.imagePath ,j)\" [ngClass]=\"{'selected-paragraph':paragraph.isClicked, 'one-paragraph':sectionContent.paragraphs.length == 1}\">\n <span class=\"value-prop-icon\">\n <fa-icon [icon]=\"paragraph.iconName\"></fa-icon></span>\n <span class=\"paragraph-text\">\n {{paragraph.text}}\n </span>\n </p>\n </div>\n </div>\n <div class=\"image-buttons-side\">\n <img loading=\"lazy\" [src]=\"selectedImage\" alt=\"\">\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'choose-country-with-flag',\n templateUrl: './choose-country-with-flag.component.html',\n styleUrls: ['./choose-country-with-flag.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ChooseCountryWithFlagComponent),\n multi: true\n }]\n})\n\nexport class ChooseCountryWithFlagComponent implements OnInit, ControlValueAccessor {\n @Input() items: any[];\n selectedItem: any;\n @Output() change = new EventEmitter();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n writeValue(value: any): void {\n this.selectedItem = value;\n }\n\n public registerOnChange(fn: any) {\n this.propagateChange = fn;\n }\n\n public registerOnTouched(fn: any) {\n this.propogateTouch = fn;\n }\n\n private propagateChange = (_: any) => { };\n private propogateTouch = () => { };\n\n updateBlur() {\n this.propogateTouch();\n }\n\n onSelectionChanged($event) {\n this.propagateChange(this.selectedItem);\n this.change.emit($event);\n }\n}","<div class=\"choose\">\n <ng-select\n (blur)=\"updateBlur()\"\n class=\"custom\"\n [items]=\"items\"\n (change)=\"onSelectionChanged($event)\"\n bindLabel=\"name\"\n bindValue=\"id\"\n [(ngModel)]=\"selectedItem\"\n placeholder=\"Choose country\"\n >\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\n <div class=\"flag-name\">\n <mat-icon [svgIcon]=\"item?.code2?.toLowerCase()\"></mat-icon>\n {{ item.code2 }}\n </div>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" class=\"options-list\">\n <div class=\"flag-name\">\n <mat-icon [svgIcon]=\"item?.code2?.toLowerCase()\"></mat-icon>\n <span class=\"country-name\">\n {{\n item.name.length > 15\n ? (item.name | slice: 0 : 15) + \"...\"\n : item.name\n }}\n </span>\n </div>\n </ng-template>\n </ng-select>\n</div>\n","import { FormBuilder, FormControl } from '@angular/forms';\nimport { Component, OnInit, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { MatDialog } from '@angular/material/dialog';\nimport { SuccessMessageDialogComponent } from '../success-message-dialog/success-message-dialog.component';\n\n\n@Component({\n selector: 'contact-us-page',\n templateUrl: './contact-us-page.component.html',\n styleUrls: ['./contact-us-page.component.scss'],\n})\nexport class ContactUsPageComponent implements OnInit {\n @Input() subjects: any[] = [];\n @Input() contactUsPageData: any;\n @Input() apiPath: string;\n @Input() items: any[];\n latitude: number;\n longitude: number;\n zoom: number;\n selectedSubject: number;\n selectedCountry: any;\n selectedCode: any;\n isUnderTabRange: boolean;\n membersToShow: number;\n isTabletSize: boolean;\n scrollMemberNumber: number = 2;\n\n constructor(\n public dialog: MatDialog,\n private breakpointObserver: BreakpointObserver,\n private fb: FormBuilder,\n // private _router: Router,\n // private _ContactUsService: ContactUsServiceService,\n ) { }\n\n ngOnInit() {\n this.setCurrentLocation();\n this.breakpointObserver.observe([\n \"(max-width: 1200px) and (min-width:1076px)\", \"(max-width: 1075px) and (min-width:651px)\",\n \"(max-width: 650px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.breakpoints['(max-width: 1200px) and (min-width:1076px)']) {\n this.isUnderTabRange = true;\n this.isTabletSize = true;\n this.membersToShow = 3;\n this.scrollMemberNumber = 2;\n }\n else if (result.breakpoints['(max-width: 1075px) and (min-width:651px)']) {\n this.isUnderTabRange = true;\n this.membersToShow = 2;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else if (result.breakpoints['(max-width: 650px)']) {\n this.isUnderTabRange = true;\n this.membersToShow = 1;\n this.scrollMemberNumber = 1;\n this.isTabletSize = true;\n }\n else {\n this.isTabletSize = false;\n this.isUnderTabRange = false;\n }\n });\n }\n\n form = this.fb.group({\n firstName: new FormControl(null),\n lastName: new FormControl(null),\n companyName: new FormControl(null),\n email: new FormControl(null),\n country: new FormControl(null),\n phoneNumber: new FormControl(null),\n subject: new FormControl(null),\n message: new FormControl(null),\n });\n\n get firstName() {\n return this.form.get('firstName');\n }\n\n get lastName() {\n return this.form.get('lastName');\n }\n\n get companyName() {\n return this.form.get('companyName');\n }\n\n get email() {\n return this.form.get('email');\n }\n\n get country() {\n return this.form.get('country');\n }\n\n get phoneNumber() {\n return this.form.get('phoneNumber');\n }\n\n get subject() {\n return this.form.get('subject');\n }\n\n get message() {\n return this.form.get('message');\n }\n\n onClickSubmit() {\n // this._ContactUsService.createContactUs(this.form.value).subscribe({\n // next: (response) => {\n // console.log(\"Contact Us Message Created\", this.form.value);\n // this.openDialog();\n // },\n // error: (error) => console.error(\"error\", error)\n // })\n }\n\n // Get Current Location Coordinates\n private setCurrentLocation() {\n if ('geolocation' in navigator) {\n navigator.geolocation.getCurrentPosition((position) => {\n this.latitude = position.coords.latitude;\n this.longitude = position.coords.longitude;\n this.zoom = 15;\n });\n }\n }\n\n openDialog() {\n const dialogRef = this.dialog.open(SuccessMessageDialogComponent);\n dialogRef.afterClosed().subscribe(() => {\n this.form.reset();\n });\n }\n\n getSelectedOptionValue($event) {\n this.selectedCode = $event.phone;\n }\n}\n","<div class=\"page\">\n <div class=\"contact-us\">\n <div class=\"left-side\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.backgroundImage\" alt=\"\" class=\"bg-image\">\n <div class=\"img-title\">\n {{contactUsPageData.imageTitle}}\n </div>\n <div class=\"bottom-img-side\" *ngIf=\"!isUnderTabRange\">\n <div class=\"logo\"><img loading=\"lazy\" [src]=\"contactUsPageData.ourLogo\" alt=\"JOOLER\"></div>\n <div class=\"img-description\">{{contactUsPageData.imageDescription}}\n </div>\n <div class=\"social-media-icons\">\n <!-- <social-media-icons class=\"social-media\" [color]=\"'#fff'\" [areIconsInFooter]=\"false\"></social-media-icons> -->\n </div>\n </div>\n </div>\n <div class=\"right-side\">\n <section-title [sectionTitle]=\"contactUsPageData.sectionTitle\"></section-title>\n <!-- <section-title title=\"Get In Touch\" [alignLeft]=\"true\"></section-title> -->\n <div class=\"content\">\n <div class=\"message-box\">\n <form [formGroup]=\"form\" (ngSubmit)=\"onClickSubmit()\">\n <div class=\"full-name-area\">\n <div class=\"first-name\">\n <span class=\"fields-labels\">First Name*</span>\n <input type=\"text\" formControlName=\"firstName\" class=\"input\" placeholder=\"First Name\" />\n </div>\n <div class=\"last-name\">\n <span class=\"fields-labels\">Last Name*</span>\n <input type=\"text\" formControlName=\"lastName\" class=\"input\" placeholder=\"Last Name\" />\n </div>\n </div>\n <span class=\"fields-labels\">Company Name*</span>\n <input type=\"text\" formControlName=\"companyName\" class=\"input\" placeholder=\"Your company name\" />\n <span class=\"fields-labels\">Email*</span>\n <input type=\"text\" formControlName=\"email\" class=\"input\" placeholder=\"name@example.com\" />\n <span class=\"fields-labels\">Phone Number</span>\n <div class=\"phone-number-section\">\n\n <div class=\"countries-list\">\n <choose-country-with-flag formControlName=\"country\" (change)=\"getSelectedOptionValue($event)\" [items]=\"items\"></choose-country-with-flag>\n </div>\n <span class=\"code-section\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n <input class=\"code\" [value]=\"selectedCode? selectedCode: null\" placeholder=\"--\" [readOnly]=\"true\" />\n </span>\n <input formControlName=\"phoneNumber\" type=\"number\" class=\"phone-num-input\" placeholder=\"Phone Number\" />\n </div>\n <div class=\"subject\">\n <ng-select formControlName=\"subject\" [items]=\"subjects\" bindLabel=\"label\" placeholder=\"Subject\" bindValue=\"label\">\n </ng-select>\n </div>\n <textarea type=\"text\" formControlName=\"message\" placeholder=\"Message\" class=\"text-area\">\n\n\n </textarea>\n <div class=\"actions\">\n <button class=\"submit\" type=\"submit\" mat-raised-button=\"mat-raised-button\" color=\"primary\">\n Submit\n </button>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n <!-- <div class=\"our-locations-section\">\n <div class=\"locations-content\">\n <div class=\"headline\">\n {{contactUsPageData.locations.headline}}\n </div>\n <div class=\"title\">\n {{contactUsPageData.locations.title}}\n </div>\n <div class=\"lines-img\">\n <img loading=\"lazy\" src=\"../../../assets/images/lines-contact-us.png\" alt=\"\">\n </div>\n <div class=\"subtitle\">\n {{contactUsPageData.locations.subtitle}}\n </div>\n <div class=\"addresses\">\n <div class=\"address flexy\" *ngFor=\"let address of contactUsPageData.locations.addresses\">\n <div class=\"address-header\">\n <div class=\"icon\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.locations.pinIconWhite\" alt=\"\">\n </div>\n <div class=\"location-name\">\n {{address.name}}\n </div>\n </div>\n <div class=\"building\">\n {{address.building}}\n </div>\n <div class=\"location-area\">\n {{address.locationArea}}\n </div>\n <div class=\"hours\">\n <fa-icon [icon]=\"['fas','clock']\"></fa-icon>\n {{address.hours}}\n </div>\n <div class=\"cellular-number\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n {{address.phoneNumber}}\n </div>\n </div>\n <p-carousel *ngIf=\"isUnderTabRange\" class=\"carousel\" [value]=\"contactUsPageData.locations.addresses\"\n [numVisible]='membersToShow' [numScroll]='scrollMemberNumber' [page]=\"0\" orientation=\"horizantol\"\n [circular]=\"true\">\n <ng-template let-address pTemplate=\"item\">\n <div class=\"address\">\n <div class=\"address-header\">\n <div class=\"icon\">\n <img loading=\"lazy\" [src]=\"contactUsPageData.locations.pinIconBlue\" alt=\"\">\n </div>\n <div class=\"location-name\">\n {{address.name}}\n </div>\n </div>\n <div class=\"building\">\n {{address.building}}\n </div>\n <div class=\"location-area\">\n {{address.locationArea}}\n </div>\n <div class=\"hours\">\n <fa-icon [icon]=\"['fas','clock']\"></fa-icon>\n {{address.hours}}\n </div>\n <div class=\"cellular-number\">\n <fa-icon [icon]=\"['fas','phone']\"></fa-icon>\n {{address.phoneNumber}}\n </div>\n </div>\n </ng-template>\n </p-carousel>\n </div>\n </div>\n </div> -->\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { PageSectionStyleThree } from '../models/page-section-style-three.model';\n@Component({\n selector: 'page-section-style-three',\n templateUrl: './page-section-style-three.component.html',\n styleUrls: [ './page-section-style-three.component.scss' ]\n})\nexport class PageSectionStyleThreeComponent implements OnInit {\n @Input() valueprop: PageSectionStyleThree;\n\n constructor(private _Router: Router) { }\n\n ngOnInit(): void {}\n\n onClickValuePropButton(route) {\n this._Router.navigate([ route ]);\n }\n}\n","<div class=\"page\">\n <div class=\"section\"\n [ngClass]=\"{'image-text-sort' : !valueprop.textImageSort,'text-image-sort':valueprop.textImageSort }\">\n <div class=\"section-container\">\n <div class=\"image-side\">\n <img loading=\"lazy\" [src]=\"valueprop.image\">\n </div>\n <div class=\"text-side\">\n <section-title [sectionTitle]=\"valueprop.sectionTitle\">\n <ng-content></ng-content>\n </section-title>\n <div class=\"optional-buttons\" *ngIf=\"valueprop.buttons\">\n <button mat-raised-button class=\"value-prop-button\" *ngFor=\"let button of valueprop.buttons\"\n (click)=\"onClickValuePropButton(button.route)\">\n {{button.label}}\n </button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { Router } from '@angular/router';\nimport { Component, Input, OnInit } from '@angular/core';\nimport { socialMediaLinks } from './social-media-links.model';\n@Component({\n selector: 'social-media-icons',\n templateUrl: './social-media-icons.component.html',\n styleUrls: ['./social-media-icons.component.scss']\n})\nexport class SocialMediaIconsComponent implements OnInit {\n @Input() color: string;\n @Input() areIconsInFooter: boolean;\n @Input() socialMediaLinks: socialMediaLinks;\n constructor(private _router: Router) { }\n\n ngOnInit(): void {\n }\n\n onClickLinkedIn() {\n window.location.href = this.socialMediaLinks.linkedIn;\n }\n\n onClickInstagram() {\n window.location.href = this.socialMediaLinks.instagram;\n }\n\n onClickYoutube() {\n window.location.href = this.socialMediaLinks.youTube;\n }\n\n setStyles() {\n let style = {\n color: this.color\n }\n return style;\n }\n}\n","<div [ngClass]=\"{'icons-white':areIconsInFooter, 'icons':!areIconsInFooter}\">\n <fa-icon [icon]=\"['fab', 'linkedin-in']\" class=\"icon linkedin\" (click)=\"onClickLinkedIn()\"></fa-icon>\n <fa-icon [icon]=\"['fab', 'instagram']\" class=\"icon instagram\" (click)=\"onClickInstagram()\"></fa-icon>\n <fa-icon [icon]=\"['fab', 'youtube']\" class=\"icon youtube\" (click)=\"onClickYoutube()\"></fa-icon>\n</div>","import { Component, Input } from '@angular/core';\nimport { socialMediaLinks } from '../social-media-icons/social-media-links.model';\n\n@Component({\n selector: 'coming-soon',\n templateUrl: './coming-soon.component.html',\n styleUrls: ['./coming-soon.component.scss']\n})\nexport class ComingSoonComponent {\n @Input() ctaText: string = \"Get notified when this feature is available.\";\n @Input() socialMediaLinks: socialMediaLinks = { instagram: \"https://www.instagram.com\", faceBook: \"https://www.facebook.com\", youTube: \"https://www.youtube.com\", linkedIn: \"https://www.linkedin.com\" };\n}\n","<section class=\"page\">\n <div class=\"coming-soon\">\n <div class=\"title\">\n Coming Soon\n </div>\n <div class=\"subtitle\">\n {{ctaText}}\n </div>\n <form>\n <div class=\"registration-field\">\n <div class=\"email-field\">\n <input type=\"email\" placeholder=\"Email Address\">\n </div>\n <button mat-raised-button class=\"submit\" type=\"submit\">\n Submit\n </button>\n </div>\n </form>\n <div class=\"social-media-icons\">\n <social-media-icons [color]=\"'#4D4D4D'\" [areIconsInFooter]=\"false\" [socialMediaLinks]=\"socialMediaLinks\"></social-media-icons>\n </div>\n </div>\n</section>","import { Component, OnInit, Input } from '@angular/core';\nimport { CtaTypeOne } from '../models/cta-one-type.model';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\n\n@Component({\n selector: 'cta-section-style-four',\n templateUrl: './cta-section-style-four.component.html',\n styleUrls: [ './cta-section-style-four.component.scss' ]\n})\nexport class CtaSectionStyleFourComponent implements OnInit {\n @Input() sectionContent!: CtaTypeOne;\n constructor(private breakpointObserver: BreakpointObserver) { }\n\n ngOnInit() {\n this.breakpointObserver.observe([\n \"(max-width: 900px)\"\n ]).subscribe((result: BreakpointState) => {\n if (result.matches) {\n this.sectionContent.sectionTitle.alignLeft = false;\n } else {\n this.sectionContent.sectionTitle.alignLeft = true;\n }\n });\n }\n\n\n}\n","<div class=\"main-card\" [ngStyle]=\"{'background' : sectionContent.bgColor}\">\n <img loading=\"lazy\" *ngIf=\"!sectionContent.bgColor && sectionContent.bgImage \" [src]=\"sectionContent.bgImage\"\n class=\"bg-img\" alt=\"bg-img\">\n <div class=\"text-side\" [ngClass]=\"{'flex-reverse':sectionContent.imageTextSort}\">\n <div class=\"section-title\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"buttons-line\">\n <a *ngFor=\"let button of sectionContent.buttons\" authRoute [requireAuth]=\"button.requiresAuth\"\n [routerLink]=\"button.route\" class=\"cta-button custom-anchor\">\n <span class=\"button-value\">\n {{button.label}}\n </span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"chevron-right\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path\n d=\"M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z\">\n </path>\n <path class=\"octicon-chevrow-stem\" d=\"M1.75 8H11\" stroke-width=\"1.5\" stroke-linecap=\"round\">\n </path>\n </svg>\n </a>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { CallToActionStyleThree } from '../models/call-to-action-style.model';\n\n@Component({\n selector: 'cta-section-style-three',\n templateUrl: './cta-section-style-three.component.html',\n styleUrls: [ './cta-section-style-three.component.scss' ]\n})\nexport class CtaSectionStyleThreeComponent implements OnInit {\n @Input() sectionContent!: CallToActionStyleThree;\n\n constructor() {\n }\n\n ngOnInit() {}\n}\n","<div class=\"main-card\" [ngStyle]=\"{'background' : sectionContent.bgColor}\">\n <img loading=\"lazy\" *ngIf=\"!sectionContent.bgColor && sectionContent.bgImage \" [src]=\"sectionContent.bgImage\"\n class=\"bg-img\" alt=\"bg-img\">\n <div class=\"illustration-side\" *ngIf=\"sectionContent.sideImage && !sectionContent.titleImageOrder\">\n <img loading=\"lazy\" [src]=\"sectionContent.sideImage\" class=\"side-img\" alt=\"side-img\">\n </div>\n <div class=\"text-side\">\n <div class=\"section-title\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div class=\"illustration-side\" *ngIf=\"sectionContent.sideImage && sectionContent.titleImageOrder\">\n <img loading=\"lazy\" [src]=\"sectionContent.sideImage\" class=\"side-img\" alt=\"side-img\">\n </div>\n <div class=\"buttons-line\">\n <a *ngFor=\"let button of sectionContent.buttons\" [routerLink]=\"button.route\" class=\"custom-anchor\">\n <button mat-raised-button [ngStyle]=\"{'background':button.bgColor, 'color': button.textColor}\">\n {{button.label}}\n </button>\n </a>\n </div>\n </div>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { VerticalSideTab } from '../models/vertical-side-tab.model';\n@Component({\n selector: 'vertical-side-tabs',\n templateUrl: './vertical-side-tabs.component.html',\n styleUrls: [ './vertical-side-tabs.component.scss' ]\n})\nexport class VerticalSideTabsComponent implements OnInit {\n public panelOpenState: boolean = false;\n @Input() tabs: VerticalSideTab[];\n selectedOption: boolean[] = [];\n @Output() tabChanged: EventEmitter<any> = new EventEmitter();\n\n constructor() { }\n\n ngOnInit(): void {\n this.changeTab(0);\n }\n\n changeTab(index: number) {\n for (let i = 0; i < this.tabs.length; i++) {\n this.selectedOption[ i ] = false;\n }\n\n this.selectedOption[ index ] = true;\n this.tabChanged.emit(this.tabs[ index ].tabContent);\n }\n}\n","<mat-card class=\"as-items\">\n <div class=\"as-item\" *ngFor=\"let tab of tabs ; let i = index\">\n <button class=\"as-btn\" [ngClass]=\"{'item-clicked':selectedOption[i], \n 'item-not-clicked':!selectedOption[i]}\" (click)=\"changeTab(i)\">\n <div class=\"icon-text\">\n <div class=\"icon\"><mat-icon>{{tab.iconName}}</mat-icon></div>\n <h3 class=\"text\">\n {{tab.title}}\n </h3>\n </div>\n </button>\n </div>\n</mat-card>","import { Component, Input } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { HeaderSectionStyleOne } from '../models/header-section-style-one.model';\n@Component({\n selector: 'header-section-one',\n templateUrl: './header-section-one.component.html',\n styleUrls: [ './header-section-one.component.scss' ]\n})\n\nexport class HeaderSectionOneComponent {\n @Input() sectionContent: HeaderSectionStyleOne;\n\n constructor(private _Router: Router) { }\n\n onClickButton(route) {\n this._Router.navigate([ route ])\n }\n}\n","<div class=\"detail-head-block\" [ngClass]=\"{'title-image-sort':sectionContent.titleImageSort , 'image-title-sort':!sectionContent.titleImageSort, 'image-background':sectionContent.backgroundImage != null }\" [ngStyle]=\"{'background-color': !sectionContent.backgroundImage ? sectionContent.backgroundColor :null }\">\n <img loading=\"lazy\" class=\"bg-image\" [src]=\"sectionContent.backgroundImage\" alt=\"\" *ngIf=\"sectionContent.backgroundImage\">\n <div class=\"section-content\">\n <div class=\"header-content-container\">\n <div class=\"title-desc\">\n <div class=\"title-part\">\n <section-title [sectionTitle]=\"sectionContent.sectionTitle\"></section-title>\n </div>\n <div *ngIf=\"sectionContent.actions\" class=\"main-buttons align-left-items\">\n <div class=\"button\" *ngFor=\"let button of sectionContent.actions ,let i = index\">\n <button mat-raised-button (click)=\"onClickButton(button.route)\">\n {{button.label}}\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"img-head\" *ngIf=\"sectionContent.previewImage\">\n <img loading=\"lazy\" [src]=\"sectionContent.previewImage\">\n </div>\n </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n selector: 'custom-tooltip',\n templateUrl: './custom-tooltip.component.html',\n styleUrls: [ './custom-tooltip.component.scss' ]\n})\nexport class CustomTooltipComponent {\n showDetails: boolean;\n\n onMouseEnter() {\n this.showDetails = true;\n }\n\n onMouseClick() {\n this.showDetails = !this.showDetails;\n }\n\n onMouseLeave() {\n this.showDetails = false;\n\n }\n}\n","<div class=\"icon\">\n <div class=\"content\" (mouseleave)=\"onMouseLeave()\">\n <div (click)=\"onMouseClick()\" class=\"icon-container\" (mouseenter)=\"onMouseEnter()\">\n <div>\n <fa-icon icon=\"info-circle\" class=\"icon-shape\"></fa-icon>\n </div>\n </div>\n <div class=\"tooltip-message-box\" [ngClass]=\"{'no-details' : !showDetails , 'details': showDetails}\">\n <fa-icon icon=\"caret-left\"></fa-icon>\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { IconName } from '@fortawesome/fontawesome-svg-core';\nimport { ValuePropProperties } from '@jooler/jooler-websites-shared';\n\n@Component({\n selector: 'value-prop-card',\n templateUrl: './value-prop-card.component.html',\n styleUrls: ['./value-prop-card.component.scss']\n})\nexport class ValuePropCardComponent implements OnInit {\n @Input() valuePropContent: ValuePropProperties;\n @Input() cardOnHover: boolean;\n @Input() imageSize: string;\n icon: IconName;\n imageStyle: any;\n\n ngOnInit(): void {\n if (this.valuePropContent.iconName) {\n this.icon = this.valuePropContent.iconName as IconName;\n }\n\n if (this.valuePropContent.image) {\n this.setImageStyle();\n }\n }\n\n\n setImageStyle() {\n let imageSize: string = '4.5rem';\n if (this.imageSize) {\n imageSize = this.imageSize;\n }\n let style = {\n height: imageSize,\n width: imageSize\n };\n\n this.imageStyle = style;\n }\n}","<mat-card class=\"reason-block\"\n [ngClass]=\"{'card-on-hover':cardOnHover , 'constant-card': !cardOnHover}\">\n <mat-card-content class=\"content\">\n <div class=\"reason-headline\">\n <div class=\"reason-icon\" *ngIf=\"icon\">\n <fa-icon [icon]=\"icon\"></fa-icon>\n </div>\n <div class=\"reason-image\" *ngIf=\"!icon\">\n <img [ngStyle]=\"imageStyle\" loading=\"lazy\" [src]=\"valuePropContent.image\">\n </div>\n <div class=\"reason-title\">\n {{valuePropContent.title}}\n </div>\n </div>\n <div class=\"reason-desc\">\n {{valuePropContent.description}}\n </div>\n </mat-card-content>\n</mat-card>","import { NgModule } from '@angular/core';\nimport { SectionTitleComponent } from './section-title/section-title.component';\nimport { PageSectionStyleTenComponent } from './page-section-style-ten/page-section-style-ten.component';\nimport { CommonModule } from '@angular/common';\nimport { AppMaterialModule } from '@jooler/app-material';\nimport { FontAwesomeSharedModule } from '@jooler/font-awesome-shared';\nimport { GetStartedCTAComponent } from './get-started-cta/get-started-cta.component';\nimport { AchievementsComponent } from './achievements/achievements.component';\nimport { PricingPlansComponent } from './pricing-plans/pricing-plans.component'\nimport { ImageGalleryModal } from './image-gallery-modal/image-gallery-modal.component';\nimport { GalleriaModule } from 'primeng/galleria';\nimport { SuccessMessageDialogComponent } from './success-message-dialog/success-message-dialog.component';\nimport { PageSectionStyleThirteenComponent } from './page-section-style-thirteen/page-section-style-thirteen.component';\nimport { CallToActionSectionComponent } from './call-to-action-section/call-to-action-section.component';\nimport { CarouselModule } from 'primeng/carousel';\nimport { TeamComponent } from './team/team.component';\nimport { ValuesComponent } from './values/values.component';\nimport { OurClientsComponent } from './our-clients/our-clients.component';\nimport { OurClientListingComponent } from './our-client-listing/our-client-listing.component';\nimport { PageSectionWithMultipleCardsComponent } from './page-section-with-multiple-cards/page-section-with-multiple-cards.component';\nimport { CallToActionSectionTwoComponent } from './call-to-action-section-two/call-to-action-section-two.component';\nimport { ValuePropsSectionComponent } from './value-props-section/value-props-section.component';\nimport { ContactUsPageComponent } from './contact-us-page/contact-us-page.component';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport { NgSelectModule } from '@ng-select/ng-select';\nimport { ChooseCountryWithFlagComponent } from './choose-country-with-flag/choose-country-with-flag.component';\nimport { PageSectionStyleThreeComponent } from './page-section-style-three/page-section-style-three.component';\nimport { ComingSoonComponent } from './coming-soon/coming-soon.component';\nimport { SocialMediaIconsComponent } from './social-media-icons/social-media-icons.component';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { CtaSectionStyleFourComponent } from './cta-section-style-four/cta-section-style-four.component';\nimport { CtaSectionStyleThreeComponent } from './cta-section-style-three/cta-section-style-three.component';\nimport { VerticalSideTabsComponent } from './vertical-side-tabs/vertical-side-tabs.component';\nimport { HeaderSectionOneComponent } from './header-section-one/header-section-one.component';\nimport { CustomTooltipComponent } from './custom-tooltip/custom-tooltip.component';\nimport { ValuePropCardComponent } from './value-prop-card/value-prop-card.component';\nimport { AuthRouteDirective } from './auth-route-directive';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n declarations: [\n SocialMediaIconsComponent,\n ComingSoonComponent,\n AchievementsComponent,\n CallToActionSectionComponent,\n GetStartedCTAComponent,\n AuthRouteDirective,\n ImageGalleryModal,\n PageSectionStyleTenComponent,\n PageSectionStyleThirteenComponent,\n PricingPlansComponent,\n SectionTitleComponent,\n SuccessMessageDialogComponent,\n TeamComponent,\n ValuesComponent,\n OurClientsComponent,\n OurClientListingComponent,\n PageSectionWithMultipleCardsComponent,\n CallToActionSectionTwoComponent,\n CtaSectionStyleFourComponent,\n ContactUsPageComponent,\n ChooseCountryWithFlagComponent,\n PageSectionStyleThreeComponent,\n ValuePropsSectionComponent,\n CtaSectionStyleThreeComponent,\n HeaderSectionOneComponent,\n CustomTooltipComponent,\n VerticalSideTabsComponent,\n ValuePropCardComponent,\n ],\n imports: [\n FontAwesomeModule,\n CommonModule,\n AppMaterialModule,\n FontAwesomeSharedModule,\n GalleriaModule,\n CarouselModule,\n ReactiveFormsModule,\n FormsModule,\n NgSelectModule,\n MatTooltipModule,\n RouterModule\n ],\n exports: [\n FontAwesomeModule,\n AppMaterialModule,\n SectionTitleComponent,\n PageSectionStyleTenComponent,\n FontAwesomeSharedModule,\n GetStartedCTAComponent,\n AchievementsComponent,\n PricingPlansComponent,\n PageSectionStyleThirteenComponent,\n ImageGalleryModal,\n SuccessMessageDialogComponent,\n CallToActionSectionComponent,\n TeamComponent,\n ValuesComponent,\n OurClientsComponent,\n OurClientListingComponent,\n PageSectionWithMultipleCardsComponent,\n CallToActionSectionTwoComponent,\n ContactUsPageComponent,\n ChooseCountryWithFlagComponent,\n PageSectionStyleThreeComponent,\n ComingSoonComponent,\n SocialMediaIconsComponent,\n MatTooltipModule,\n ValuePropsSectionComponent,\n CtaSectionStyleFourComponent,\n CtaSectionStyleThreeComponent,\n HeaderSectionOneComponent,\n CustomTooltipComponent,\n VerticalSideTabsComponent,\n ValuePropCardComponent,\n ]\n})\nexport class JoolerWebsitesSharedModule { }\n","import { PageSectionAction } from './page-section-action.model';\n\nexport class PageSection {\n id: number;\n icon: string;\n title: string;\n description: string;\n image: string;\n titleImage: string;\n subtitle: string;\n actions: PageSectionAction[];\n}","import { NavigationExtras } from \"@angular/router\";\n\nexport class PageSectionAction {\n id: number;\n route: string;\n label: string;\n requiresAuth: boolean;\n navigationExtras: NavigationExtras;\n}","import { Achievement } from \"./achievement.model\";\nimport { SectionTitle } from \"./section-title.model\";\n\nexport class Achievements {\n sectionTitle: SectionTitle;\n achievements: Achievement[];\n}","\nexport class Achievement {\n number: string;\n subtitle: string\n}","import { PageSectionAction } from './page-section-action.model';\nimport { Perks } from './perks.model';\nexport class ServicePlan {\n id: number;\n name: string;\n description: string;\n price: number | string;\n frequency: string;\n isChosen: boolean;\n perks: Perks[];\n button: PageSectionAction;\n}","import { ImageSection } from './image-section.model';\n\nexport class ImageSectionAction {\n id: number;\n name: string;\n route: string;\n owner: ImageSection;\n requiresAuth: boolean;\n}","import { ImageSectionAction } from './image-section-action.model';\nimport { PageSection } from '../models/page-section.model';\n\nexport class ImageSection {\n id: number;\n image: string;\n title: string;\n subtitle: string;\n section: PageSection;\n order: number;\n description: string;\n actions: ImageSectionAction[];\n}\n","export class TeamMember {\n fullName: string;\n position: string;\n bio: string;\n profilePicture: string;\n}","import { SectionTitle } from \"./section-title.model\";\nimport { TeamMember } from \"./team-member.model\";\n\nexport class TeamSection {\n sectionTitle : SectionTitle;\n teamMembers: TeamMember[];\n caption: string;\n}","export enum AccountType {\n CONSUMERCLIENT = 0,\n BUSINESSCLIENT = 1,\n SUPPLIER = 2,\n COMPANY = 3,\n CERTIFICATIONENTTIY = 4\n}","import { User } from \"./user.model\";\nimport { AccountType } from \"./account-type.model\";\nimport { Address } from \"./address.model\";\n\nexport class Account {\n id: number;\n addresses: Address[];\n profilePicture: string;\n phoneNumber: string;\n createdBy: User;\n createdOn: string;\n isActive: boolean;\n balance: number;\n notes: string;\n accountType: AccountType;\n name: string;\n}\n\n","import { Account } from \"./account.model\";\nimport { Country } from \"./country.model\";\nimport { City } from \"./city.model\";\n\nexport class Address {\n id: number;\n addressLine1: string;\n addressLine2: string;\n city: City;\n country: Country;\n region: string;\n postalCode: string;\n account: Account;\n name: string;\n value: string;\n street: string;\n building: string;\n floor: string;\n}\n","export class City {\n id: number;\n name: string;\n code: string;\n}","export class Country {\n id: number;\n name: string;\n code2: string;\n code3: string;\n continent: string;\n tld: string;\n phone: string;\n}","export enum UserType {\n CONSUMER = 0,\n ERP = 1,\n SECOND_LEVEL = 2,\n ADMIN = 3\n}","import { UserType } from \"./user-type.model\";\n\nexport class User {\n id: number;\n email: string;\n firstName: string;\n lastName: string;\n fullName: string;\n username: string;\n profilePicture: string;\n userType: UserType;\n}\n","\nexport class CallToActionSectionTwo {\n withImage: boolean;\n imagePath: string;\n title: string;\n subtitle: string;\n}","export class socialMediaLinks {\n linkedIn: string;\n instagram: string;\n youTube: string;\n faceBook: string;\n}","export class Perks {\n perk:string;\n tooltipMessage :string\n}","import { SectionTitleSizes } from \"./section-title-sizes.model\";\nexport class SectionTitle {\n title: string;\n subtitle?: string;\n alignLeft?: boolean;\n isDarkBg?: boolean;\n isWithoutDivider?: boolean;\n fontSizeEnum?: SectionTitleSizes;\n\n constructor(\n title: string,\n subtitle?: string,\n alignLeft?: boolean,\n isDarkBg?: boolean,\n isWithoutDivider?: boolean,\n fontSizeEnum?: SectionTitleSizes\n ) {\n this.title = title;\n this.subtitle = subtitle;\n this.alignLeft = alignLeft;\n this.isDarkBg = isDarkBg;\n this.isWithoutDivider = isWithoutDivider;\n this.fontSizeEnum = fontSizeEnum;\n }\n}\n","/*\n * Public API Surface of jooler-websites-shared\n */\n\nexport * from './lib/jooler-websites-shared.module';\nexport * from './lib/section-title/section-title.component';\nexport * from './lib/page-section-style-ten/page-section-style-ten.component';\nexport * from './lib/models/page-section.model';\nexport * from './lib/models/page-section-action.model';\nexport * from './lib/get-started-cta/get-started-cta.component';\nexport * from './lib/achievements/achievements.component';\nexport * from './lib/models/achievements.model';\nexport * from './lib/models/achievement.model';\nexport * from './lib/models/service-plan.model';\nexport * from './lib/pricing-plans/pricing-plans.component';\nexport * from './lib/page-section-style-thirteen/page-section-style-thirteen.component';\nexport * from './lib/models/page-section-style-thirteen.model';\nexport * from './lib/image-gallery-modal/image-gallery-modal.component';\nexport * from './lib/models/gallery-item.interface';\nexport * from './lib/success-message-dialog/success-message-dialog.component';\nexport * from './lib/models/call-to-action-data.model';\nexport * from './lib/call-to-action-section/call-to-action-section.component';\nexport * from './lib/models/image-section-action.model';\nexport * from './lib/models/image-section.model';\nexport * from './lib/models/team-member.model';\nexport * from './lib/team/team.component';\nexport * from './lib/models/team-section.model';\nexport * from './lib/models/page-style-section-five.model';\nexport * from './lib/models/about-us-section.model';\nexport * from './lib/values/values.component';\nexport * from './lib/models/account-type.model';\nexport * from './lib/models/account.model';\nexport * from './lib/models/address.model';\nexport * from './lib/models/city.model';\nexport * from './lib/models/country.model';\nexport * from './lib/models/user-type.model';\nexport * from './lib/models/user.model';\nexport * from './lib/our-client-listing/our-client-listing.component';\nexport * from './lib/our-clients/our-clients.component';\nexport * from './lib/page-section-with-multiple-cards/page-section-with-multiple-cards.component';\nexport * from './lib/call-to-action-section-two/call-to-action-section-two.component';\nexport * from './lib/models/call-to-action-section-two.model';\nexport * from './lib/value-props-section/value-props-section.component';\nexport * from './lib/contact-us-page/contact-us-page.component';\nexport * from './lib/choose-country-with-flag/choose-country-with-flag.component';\nexport * from './lib/page-section-style-three/page-section-style-three.component';\nexport * from './lib/coming-soon/coming-soon.component';\nexport * from './lib/social-media-icons/social-media-icons.component';\nexport * from './lib/social-media-icons/social-media-links.model';\nexport * from './lib/models/perks.model';\nexport * from './lib/models/brand-logo.model';\nexport * from './lib/models/section-title.model';\nexport * from './lib/cta-section-style-four/cta-section-style-four.component';\nexport * from './lib/cta-section-style-three/cta-section-style-three.component';\nexport * from './lib/models/cta-section-style-four.model';\nexport * from './lib/models/cta-one-type.model';\nexport * from './lib/models/header-section-style-one.model';\nexport * from './lib/header-section-one/header-section-one.component';\nexport * from './lib/custom-tooltip/custom-tooltip.component';\nexport * from './lib/vertical-side-tabs/vertical-side-tabs.component';\nexport * from './lib/models/feature-section-nine.model';\nexport * from './lib/models/value-prop-properties.model';\nexport * from './lib/value-prop-card/value-prop-card.component';\nexport * from './lib/models/section-title-sizes.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i2.SectionTitleComponent","i2.UserService","i3","i4","i6.AuthRouteDirective","i5","i5.AuthRouteDirective","i4.SectionTitleComponent","i6.SectionTitleComponent","i4.OurClientListingComponent","i3.SectionTitleComponent","i6","i7","i8.SectionTitleComponent","i9.ChooseCountryWithFlagComponent","i3.SocialMediaIconsComponent","i4.AuthRouteDirective","i5.SectionTitleComponent"],"mappings":"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"}
|