ng-devui
Version:
DevUI components based on Angular
39 lines • 3.99 kB
JavaScript
import { Injectable } from '@angular/core';
import { DocumentRef } from './document-ref.service';
import * as i0 from "@angular/core";
import * as i1 from "./document-ref.service";
export class WindowRef {
constructor(documentRef) {
this.documentRef = documentRef;
}
get window() {
return this.document.defaultView;
}
get document() {
return this.documentRef.document;
}
get pageXOffset() {
return this.window.pageXOffset;
}
get pageYOffset() {
return this.window.pageYOffset;
}
get innerHeight() {
return this.window.innerHeight;
}
get innerWidth() {
return this.window.innerWidth;
}
getComputedStyle(element) {
return this.window.getComputedStyle(element);
}
getBoundingClientRect(elementRef) {
return elementRef.nativeElement && elementRef.nativeElement.getBoundingClientRect();
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WindowRef, deps: [{ token: i1.DocumentRef }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WindowRef }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WindowRef, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: i1.DocumentRef }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LXJlZi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZGV2dWkvd2luZG93LXJlZi93aW5kb3ctcmVmLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQUdyRCxNQUFNLE9BQU8sU0FBUztJQUVwQixZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUM1QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBTztRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELHFCQUFxQixDQUFDLFVBQXNCO1FBQzFDLE9BQU8sVUFBVSxDQUFDLGFBQWEsSUFBSSxVQUFVLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDdEYsQ0FBQzsrR0FuQ1UsU0FBUzttSEFBVCxTQUFTOzs0RkFBVCxTQUFTO2tCQURyQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jdW1lbnRSZWYgfSBmcm9tICcuL2RvY3VtZW50LXJlZi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFdpbmRvd1JlZiB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkb2N1bWVudFJlZjogRG9jdW1lbnRSZWYpIHtcbiAgfVxuXG4gIGdldCB3aW5kb3coKTogV2luZG93IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXc7XG4gIH1cblxuICBnZXQgZG9jdW1lbnQoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudFJlZi5kb2N1bWVudDtcbiAgfVxuXG4gIGdldCBwYWdlWE9mZnNldCgpIHtcbiAgICByZXR1cm4gdGhpcy53aW5kb3cucGFnZVhPZmZzZXQ7XG4gIH1cblxuICBnZXQgcGFnZVlPZmZzZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMud2luZG93LnBhZ2VZT2Zmc2V0O1xuICB9XG5cbiAgZ2V0IGlubmVySGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLndpbmRvdy5pbm5lckhlaWdodDtcbiAgfVxuXG4gIGdldCBpbm5lcldpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLndpbmRvdy5pbm5lcldpZHRoO1xuICB9XG5cbiAgZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KSB7XG4gICAgcmV0dXJuIHRoaXMud2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gIH1cblxuICBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIHJldHVybiBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgJiYgZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICB9XG5cbn1cbiJdfQ==