ngx-gem-spaas
Version:
This library contains services, components, images and styles to provide a unified look and way-of-working throughout GEM SPaaS.
38 lines • 6.03 kB
JavaScript
import { Component, Input, ViewChild } from '@angular/core';
import { BaseComponent } from "../base/base.component";
import * as i0 from "@angular/core";
import * as i1 from "../_services/embed-mode.service";
import * as i2 from "@angular/platform-browser";
export class EmbedComponent extends BaseComponent {
constructor(embedModeService, sanitizer) {
super();
this.embedModeService = embedModeService;
this.sanitizer = sanitizer;
/** The url of the application to embed */
this.url = '';
/** Use as fullscreen component, or within parent div */
this.takeOver = false;
}
ngOnInit() {
if (this.url) {
this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.url);
}
}
ngAfterViewInit() {
this.embedModeService.embeddedWindow = this.iframeDiv?.nativeElement.contentWindow || null;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EmbedComponent, deps: [{ token: i1.EmbedModeService }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: EmbedComponent, selector: "spaas-embed", inputs: { url: "url", takeOver: "takeOver" }, viewQueries: [{ propertyName: "iframeDiv", first: true, predicate: ["iframe_div"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (safeUrl) {\r\n <div [class.fullscreen]=\"takeOver\"\r\n class=\"embed flex\">\r\n <iframe #iframe_div [src]=\"safeUrl\"></iframe>\r\n </div>\r\n}\r\n", styles: [".embed{height:100%;width:100%}.embed.fullscreen{height:100vh;width:100vw;left:0;position:fixed;top:0;z-index:9994}.embed iframe{border:none;height:100%;width:100%}\n"] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EmbedComponent, decorators: [{
type: Component,
args: [{ selector: 'spaas-embed', template: "@if (safeUrl) {\r\n <div [class.fullscreen]=\"takeOver\"\r\n class=\"embed flex\">\r\n <iframe #iframe_div [src]=\"safeUrl\"></iframe>\r\n </div>\r\n}\r\n", styles: [".embed{height:100%;width:100%}.embed.fullscreen{height:100vh;width:100vw;left:0;position:fixed;top:0;z-index:9994}.embed iframe{border:none;height:100%;width:100%}\n"] }]
}], ctorParameters: () => [{ type: i1.EmbedModeService }, { type: i2.DomSanitizer }], propDecorators: { url: [{
type: Input
}], takeOver: [{
type: Input
}], iframeDiv: [{
type: ViewChild,
args: ['iframe_div']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1iZWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWdlbS1zcGFhcy9zcmMvZW1iZWQvZW1iZWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWdlbS1zcGFhcy9zcmMvZW1iZWQvZW1iZWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQWMsS0FBSyxFQUFVLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFVckQsTUFBTSxPQUFPLGNBQWUsU0FBUSxhQUFhO0lBVy9DLFlBQ1UsZ0JBQWtDLEVBQ2xDLFNBQXVCO1FBRS9CLEtBQUssRUFBRSxDQUFDO1FBSEEscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBWGpDLDBDQUEwQztRQUNqQyxRQUFHLEdBQVcsRUFBRSxDQUFDO1FBRTFCLHdEQUF3RDtRQUMvQyxhQUFRLEdBQVksS0FBSyxDQUFDO0lBVW5DLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQztJQUM3RixDQUFDOytHQTFCVSxjQUFjO21HQUFkLGNBQWMsaU9DWDNCLHVLQU1BOzs0RkRLYSxjQUFjO2tCQU4xQixTQUFTOytCQUNFLGFBQWE7Z0hBUWQsR0FBRztzQkFBWCxLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRW1CLFNBQVM7c0JBQWpDLFNBQVM7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Jhc2VDb21wb25lbnR9IGZyb20gXCIuLi9iYXNlL2Jhc2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7RW1iZWRNb2RlU2VydmljZX0gZnJvbSBcIi4uL19zZXJ2aWNlcy9lbWJlZC1tb2RlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybH0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhYXMtZW1iZWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lbWJlZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZW1iZWQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEVtYmVkQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIC8qKiBUaGUgdXJsIG9mIHRoZSBhcHBsaWNhdGlvbiB0byBlbWJlZCAqL1xyXG4gIEBJbnB1dCgpIHVybDogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8qKiBVc2UgYXMgZnVsbHNjcmVlbiBjb21wb25lbnQsIG9yIHdpdGhpbiBwYXJlbnQgZGl2ICovXHJcbiAgQElucHV0KCkgdGFrZU92ZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaWZyYW1lX2RpdicpIGlmcmFtZURpdjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcclxuICBzYWZlVXJsOiBTYWZlUmVzb3VyY2VVcmwgfCB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbWJlZE1vZGVTZXJ2aWNlOiBFbWJlZE1vZGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICh0aGlzLnVybCkge1xyXG4gICAgICB0aGlzLnNhZmVVcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhpcy51cmwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5lbWJlZE1vZGVTZXJ2aWNlLmVtYmVkZGVkV2luZG93ID0gdGhpcy5pZnJhbWVEaXY/Lm5hdGl2ZUVsZW1lbnQuY29udGVudFdpbmRvdyB8fCBudWxsO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiQGlmIChzYWZlVXJsKSB7XHJcbiAgPGRpdiBbY2xhc3MuZnVsbHNjcmVlbl09XCJ0YWtlT3ZlclwiXHJcbiAgICAgICBjbGFzcz1cImVtYmVkIGZsZXhcIj5cclxuICAgIDxpZnJhbWUgI2lmcmFtZV9kaXYgW3NyY109XCJzYWZlVXJsXCI+PC9pZnJhbWU+XHJcbiAgPC9kaXY+XHJcbn1cclxuIl19