UNPKG

ngx-acuw

Version:

Angular components using WEBGL (threejs)

98 lines 12.7 kB
import { ComponentPortal } from '@angular/cdk/portal'; import { Component, Input } from '@angular/core'; import { LightboxOverlayComponent } from './lightbox-overlay.component'; import * as i0 from "@angular/core"; import * as i1 from "@angular/cdk/overlay"; export class LightboxComponent { constructor(overlay) { this.overlay = overlay; this.imageUrls = new Array(); this.displacementImageUrl = ''; this.forceFullscreen = false; this.forceShowNavButtons = false; this.imageSize = 'cover'; this.autoPlay = false; this.autoPlayInterval = 5000; this.transitionDuration = 1000; this.transitionType = 'split'; this.sizeX = 50.0; this.sizeY = 50.0; this.width = 0.5; this.intensity = 40.0; this.showPerformanceMonitor = false; } ngOnInit() { } open(index = 0) { // Define settings of the overlay this.overlayRef = this.overlay.create({ hasBackdrop: true, positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(), scrollStrategy: this.overlay.scrollStrategies.block() }); // Listen to backdrop event for detaching the overlay this.overlayRef.backdropClick().subscribe({ next: () => { this.overlayRef?.detach(); } }); // Attach the LightboxOverlayComponent to the overlayRef instance const lightboxOverlayRef = this.overlayRef.attach(new ComponentPortal(LightboxOverlayComponent)); // Pass data to the LightboxOverlayComponent lightboxOverlayRef.instance.overlayRef = this.overlayRef; lightboxOverlayRef.instance.imageUrls = this.imageUrls; lightboxOverlayRef.instance.displacementImageUrl = this.displacementImageUrl; lightboxOverlayRef.instance.forceFullscreen = this.forceFullscreen; lightboxOverlayRef.instance.forceShowNavButtons = this.forceShowNavButtons; lightboxOverlayRef.instance.imageSize = this.imageSize; lightboxOverlayRef.instance.autoPlay = this.autoPlay; lightboxOverlayRef.instance.autoPlayInterval = this.autoPlayInterval; lightboxOverlayRef.instance.transitionDuration = this.transitionDuration; lightboxOverlayRef.instance.transitionType = this.transitionType; lightboxOverlayRef.instance.sizeX = this.sizeX; lightboxOverlayRef.instance.sizeY = this.sizeY; lightboxOverlayRef.instance.width = this.width; lightboxOverlayRef.instance.intensity = this.intensity; lightboxOverlayRef.instance.startIndex = index; lightboxOverlayRef.instance.showPerformanceMonitor = this.showPerformanceMonitor; } close() { this.overlayRef?.detach(); } } LightboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LightboxComponent, deps: [{ token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Component }); LightboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: LightboxComponent, selector: "lib-lightbox", inputs: { imageUrls: "imageUrls", displacementImageUrl: "displacementImageUrl", forceFullscreen: "forceFullscreen", forceShowNavButtons: "forceShowNavButtons", imageSize: "imageSize", autoPlay: "autoPlay", autoPlayInterval: "autoPlayInterval", transitionDuration: "transitionDuration", transitionType: "transitionType", sizeX: "sizeX", sizeY: "sizeY", width: "width", intensity: "intensity", showPerformanceMonitor: "showPerformanceMonitor" }, ngImport: i0, template: '', isInline: true }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LightboxComponent, decorators: [{ type: Component, args: [{ selector: 'lib-lightbox', template: '' }] }], ctorParameters: function () { return [{ type: i1.Overlay }]; }, propDecorators: { imageUrls: [{ type: Input }], displacementImageUrl: [{ type: Input }], forceFullscreen: [{ type: Input }], forceShowNavButtons: [{ type: Input }], imageSize: [{ type: Input }], autoPlay: [{ type: Input }], autoPlayInterval: [{ type: Input }], transitionDuration: [{ type: Input }], transitionType: [{ type: Input }], sizeX: [{ type: Input }], sizeY: [{ type: Input }], width: [{ type: Input }], intensity: [{ type: Input }], showPerformanceMonitor: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWFjdXcvc3JjL2xpYi9saWdodGJveC9saWdodGJveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNeEUsTUFBTSxPQUFPLGlCQUFpQjtJQW1CNUIsWUFBb0IsT0FBZ0I7UUFBaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQWpCM0IsY0FBUyxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFDaEMseUJBQW9CLEdBQUcsRUFBRSxDQUFDO1FBQzFCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixjQUFTLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUMxQixtQkFBYyxHQUFHLE9BQU8sQ0FBQztRQUN6QixVQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2IsVUFBSyxHQUFHLElBQUksQ0FBQztRQUNiLFVBQUssR0FBRyxHQUFHLENBQUM7UUFDWixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLDJCQUFzQixHQUFHLEtBQUssQ0FBQztJQUlBLENBQUM7SUFFekMsUUFBUTtJQUNSLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUM7UUFDWixpQ0FBaUM7UUFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUNwQyxXQUFX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QUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMaWdodGJveE92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL2xpZ2h0Ym94LW92ZXJsYXkuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWxpZ2h0Ym94JyxcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGNsYXNzIExpZ2h0Ym94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgaW1hZ2VVcmxzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcclxuICBASW5wdXQoKSBkaXNwbGFjZW1lbnRJbWFnZVVybCA9ICcnO1xyXG4gIEBJbnB1dCgpIGZvcmNlRnVsbHNjcmVlbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGZvcmNlU2hvd05hdkJ1dHRvbnMgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpbWFnZVNpemUgPSAnY292ZXInO1xyXG4gIEBJbnB1dCgpIGF1dG9QbGF5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYXV0b1BsYXlJbnRlcnZhbCA9IDUwMDA7XHJcbiAgQElucHV0KCkgdHJhbnNpdGlvbkR1cmF0aW9uID0gMTAwMDtcclxuICBASW5wdXQoKSB0cmFuc2l0aW9uVHlwZSA9ICdzcGxpdCc7XHJcbiAgQElucHV0KCkgc2l6ZVggPSA1MC4wO1xyXG4gIEBJbnB1dCgpIHNpemVZID0gNTAuMDtcclxuICBASW5wdXQoKSB3aWR0aCA9IDAuNTtcclxuICBASW5wdXQoKSBpbnRlbnNpdHkgPSA0MC4wO1xyXG4gIEBJbnB1dCgpIHNob3dQZXJmb3JtYW5jZU1vbml0b3IgPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBvdmVybGF5UmVmPzogT3ZlcmxheVJlZjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5KSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBvcGVuKGluZGV4ID0gMCkge1xyXG4gICAgLy8gRGVmaW5lIHNldHRpbmdzIG9mIHRoZSBvdmVybGF5XHJcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHtcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmNlbnRlclZlcnRpY2FsbHkoKSxcclxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKClcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIExpc3RlbiB0byBiYWNrZHJvcCBldmVudCBmb3IgZGV0YWNoaW5nIHRoZSBvdmVybGF5XHJcbiAgICB0aGlzLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6ICgpID0+IHsgdGhpcy5vdmVybGF5UmVmPy5kZXRhY2goKTsgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gQXR0YWNoIHRoZSBMaWdodGJveE92ZXJsYXlDb21wb25lbnQgdG8gdGhlIG92ZXJsYXlSZWYgaW5zdGFuY2VcclxuICAgIGNvbnN0IGxpZ2h0Ym94T3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2gobmV3IENvbXBvbmVudFBvcnRhbChMaWdodGJveE92ZXJsYXlDb21wb25lbnQpKTtcclxuXHJcbiAgICAvLyBQYXNzIGRhdGEgdG8gdGhlIExpZ2h0Ym94T3ZlcmxheUNvbXBvbmVudFxyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXlSZWY7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UuaW1hZ2VVcmxzID0gdGhpcy5pbWFnZVVybHM7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UuZGlzcGxhY2VtZW50SW1hZ2VVcmwgPSB0aGlzLmRpc3BsYWNlbWVudEltYWdlVXJsO1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLmZvcmNlRnVsbHNjcmVlbiA9IHRoaXMuZm9yY2VGdWxsc2NyZWVuO1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLmZvcmNlU2hvd05hdkJ1dHRvbnMgPSB0aGlzLmZvcmNlU2hvd05hdkJ1dHRvbnM7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UuaW1hZ2VTaXplID0gdGhpcy5pbWFnZVNpemU7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UuYXV0b1BsYXkgPSB0aGlzLmF1dG9QbGF5O1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLmF1dG9QbGF5SW50ZXJ2YWwgPSB0aGlzLmF1dG9QbGF5SW50ZXJ2YWw7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UudHJhbnNpdGlvbkR1cmF0aW9uID0gdGhpcy50cmFuc2l0aW9uRHVyYXRpb247XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2UudHJhbnNpdGlvblR5cGUgPSB0aGlzLnRyYW5zaXRpb25UeXBlO1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLnNpemVYID0gdGhpcy5zaXplWDtcclxuICAgIGxpZ2h0Ym94T3ZlcmxheVJlZi5pbnN0YW5jZS5zaXplWSA9IHRoaXMuc2l6ZVk7XHJcbiAgICBsaWdodGJveE92ZXJsYXlSZWYuaW5zdGFuY2Uud2lkdGggPSB0aGlzLndpZHRoO1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLmludGVuc2l0eSA9IHRoaXMuaW50ZW5zaXR5O1xyXG4gICAgbGlnaHRib3hPdmVybGF5UmVmLmluc3RhbmNlLnN0YXJ0SW5kZXggPSBpbmRleDtcclxuICAgIGxpZ2h0Ym94T3ZlcmxheVJlZi5pbnN0YW5jZS5zaG93UGVyZm9ybWFuY2VNb25pdG9yID0gdGhpcy5zaG93UGVyZm9ybWFuY2VNb25pdG9yO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLm92ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gIH1cclxufVxyXG4iXX0=