kwikui
Version:
KwikID's UI Component Library in Angular
58 lines • 6.74 kB
JavaScript
import { Injectable } from "@angular/core";
import * as i0 from "@angular/core";
export class KwikUIButtonLiveLocationPermissionService {
constructor() { }
askForPermission() {
return new Promise((resolve, reject) => {
if (navigator.geolocation) {
navigator.permissions
.query({ name: "geolocation" })
.then((permissionStatus) => {
if (permissionStatus.state === "granted") {
resolve(true);
}
else if (permissionStatus.state === "prompt") {
navigator.geolocation.getCurrentPosition(() => {
resolve(true);
}, () => {
reject(false);
});
}
else {
reject(false);
}
});
}
else {
reject(false);
}
});
}
getLocation() {
return new Promise((resolve, reject) => {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition((position) => {
resolve({
latitude: position.coords.latitude,
longitude: position.coords.longitude,
timestamp: Date.now()
});
}, () => {
reject("Error getting location");
});
}
else {
reject("Geolocation not supported");
}
});
}
}
/** @nocollapse */ KwikUIButtonLiveLocationPermissionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikUIButtonLiveLocationPermissionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
/** @nocollapse */ KwikUIButtonLiveLocationPermissionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikUIButtonLiveLocationPermissionService, providedIn: "root" });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikUIButtonLiveLocationPermissionService, decorators: [{
type: Injectable,
args: [{
providedIn: "root"
}]
}], ctorParameters: function () { return []; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWxpdmUtbG9jYXRpb24ucGVybWlzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa3VpL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b20vYnV0dG9uLWxpdmUtbG9jYXRpb24vYnV0dG9uLWxpdmUtbG9jYXRpb24ucGVybWlzc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyx5Q0FBeUM7SUFDcEQsZ0JBQWUsQ0FBQztJQUVoQixnQkFBZ0I7UUFDZCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRTtnQkFDekIsU0FBUyxDQUFDLFdBQVc7cUJBQ2xCLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsQ0FBQztxQkFDOUIsSUFBSSxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsRUFBRTtvQkFDekIsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFO3dCQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQ2Y7eUJBQU0sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFO3dCQUM5QyxTQUFTLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUN0QyxHQUFHLEVBQUU7NEJBQ0gsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNoQixDQUFDLEVBQ0QsR0FBRyxFQUFFOzRCQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDaEIsQ0FBQyxDQUNGLENBQUM7cUJBQ0g7eUJBQU07d0JBQ0wsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNmO2dCQUNILENBQUMsQ0FBQyxDQUFDO2FBQ047aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBS1QsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLFNBQVMsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3pCLFNBQVMsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQ3RDLENBQUMsUUFBUSxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxDQUFDO3dCQUNOLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVE7d0JBQ2xDLFNBQVMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVM7d0JBQ3BDLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO3FCQUN0QixDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxFQUNELEdBQUcsRUFBRTtvQkFDSCxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztnQkFDbkMsQ0FBQyxDQUNGLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQzthQUNyQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEpBckRVLHlDQUF5Qzs4SkFBekMseUNBQXlDLGNBRnhDLE1BQU07NEZBRVAseUNBQXlDO2tCQUhyRCxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXG59KVxuZXhwb3J0IGNsYXNzIEt3aWtVSUJ1dHRvbkxpdmVMb2NhdGlvblBlcm1pc3Npb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGFza0ZvclBlcm1pc3Npb24oKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGlmIChuYXZpZ2F0b3IuZ2VvbG9jYXRpb24pIHtcbiAgICAgICAgbmF2aWdhdG9yLnBlcm1pc3Npb25zXG4gICAgICAgICAgLnF1ZXJ5KHsgbmFtZTogXCJnZW9sb2NhdGlvblwiIH0pXG4gICAgICAgICAgLnRoZW4oKHBlcm1pc3Npb25TdGF0dXMpID0+IHtcbiAgICAgICAgICAgIGlmIChwZXJtaXNzaW9uU3RhdHVzLnN0YXRlID09PSBcImdyYW50ZWRcIikge1xuICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChwZXJtaXNzaW9uU3RhdHVzLnN0YXRlID09PSBcInByb21wdFwiKSB7XG4gICAgICAgICAgICAgIG5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24oXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJlamVjdChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmVqZWN0KGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlamVjdChmYWxzZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRMb2NhdGlvbigpOiBQcm9taXNlPHtcbiAgICBsYXRpdHVkZTogbnVtYmVyO1xuICAgIGxvbmdpdHVkZTogbnVtYmVyO1xuICAgIHRpbWVzdGFtcDogbnVtYmVyO1xuICB9PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGlmIChuYXZpZ2F0b3IuZ2VvbG9jYXRpb24pIHtcbiAgICAgICAgbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihcbiAgICAgICAgICAocG9zaXRpb24pID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICBsYXRpdHVkZTogcG9zaXRpb24uY29vcmRzLmxhdGl0dWRlLFxuICAgICAgICAgICAgICBsb25naXR1ZGU6IHBvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGUsXG4gICAgICAgICAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICByZWplY3QoXCJFcnJvciBnZXR0aW5nIGxvY2F0aW9uXCIpO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlamVjdChcIkdlb2xvY2F0aW9uIG5vdCBzdXBwb3J0ZWRcIik7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==