UNPKG

ngx-select-angle

Version:

A component for selecting an angle between 0 and 360 degrees in the Angular framework

33 lines 3.94 kB
import { Injectable } from '@angular/core'; import * as i0 from "@angular/core"; export class NgxSelectAngleService { constructor() { } getOffsetPosition(evt, parent) { if (evt instanceof MouseEvent) { return { x: evt.offsetX, y: evt.offsetY, }; } var position = { x: evt.targetTouches ? evt.targetTouches[0].pageX : evt.touches[0].clientX, y: evt.targetTouches ? evt.targetTouches[0].pageY : evt.touches[0].clientY, }; while (parent.offsetParent) { position.x -= parent.offsetLeft - parent.scrollLeft; position.y -= parent.offsetTop - parent.scrollTop; parent = parent.offsetParent; } return position; } } NgxSelectAngleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxSelectAngleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); NgxSelectAngleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxSelectAngleService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxSelectAngleService, decorators: [{ type: Injectable }], ctorParameters: function () { return []; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNlbGVjdC1hbmdsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNlbGVjdC1hbmdsZS9zcmMvbGliL25neC1zZWxlY3QtYW5nbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLGdCQUFlLENBQUM7SUFFaEIsaUJBQWlCLENBQUMsR0FBNEIsRUFBRSxNQUFtQjtRQUNqRSxJQUFJLEdBQUcsWUFBWSxVQUFVLEVBQUU7WUFDN0IsT0FBTztnQkFDTCxDQUFDLEVBQUUsR0FBRyxDQUFDLE9BQU87Z0JBQ2QsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxPQUFPO2FBQ2YsQ0FBQztTQUNIO1FBQ0QsSUFBSSxRQUFRLEdBQUc7WUFDYixDQUFDLEVBQUUsR0FBRyxDQUFDLGFBQWE7Z0JBQ2xCLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7Z0JBQzVCLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87WUFDMUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxhQUFhO2dCQUNsQixDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO2dCQUM1QixDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO1NBQzNCLENBQUM7UUFFRixPQUFPLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDMUIsUUFBUSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFDcEQsUUFBUSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFFbEQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxZQUFtQixDQUFDO1NBQ3JDO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs7a0hBM0JVLHFCQUFxQjtzSEFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOZ3hTZWxlY3RBbmdsZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgZ2V0T2Zmc2V0UG9zaXRpb24oZXZ0OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCwgcGFyZW50OiBIVE1MRWxlbWVudCkge1xuICAgIGlmIChldnQgaW5zdGFuY2VvZiBNb3VzZUV2ZW50KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB4OiBldnQub2Zmc2V0WCxcbiAgICAgICAgeTogZXZ0Lm9mZnNldFksXG4gICAgICB9O1xuICAgIH1cbiAgICB2YXIgcG9zaXRpb24gPSB7XG4gICAgICB4OiBldnQudGFyZ2V0VG91Y2hlc1xuICAgICAgICA/IGV2dC50YXJnZXRUb3VjaGVzWzBdLnBhZ2VYXG4gICAgICAgIDogZXZ0LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgIHk6IGV2dC50YXJnZXRUb3VjaGVzXG4gICAgICAgID8gZXZ0LnRhcmdldFRvdWNoZXNbMF0ucGFnZVlcbiAgICAgICAgOiBldnQudG91Y2hlc1swXS5jbGllbnRZLFxuICAgIH07XG5cbiAgICB3aGlsZSAocGFyZW50Lm9mZnNldFBhcmVudCkge1xuICAgICAgcG9zaXRpb24ueCAtPSBwYXJlbnQub2Zmc2V0TGVmdCAtIHBhcmVudC5zY3JvbGxMZWZ0O1xuICAgICAgcG9zaXRpb24ueSAtPSBwYXJlbnQub2Zmc2V0VG9wIC0gcGFyZW50LnNjcm9sbFRvcDtcblxuICAgICAgcGFyZW50ID0gcGFyZW50Lm9mZnNldFBhcmVudCBhcyBhbnk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBvc2l0aW9uO1xuICB9XG59XG4iXX0=