cordova-angular
Version:
Angular wrapper for Cordova
88 lines • 4.63 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
// cordova-plugin-camera
import { Injectable, NgZone } from '@angular/core';
import { mergeMap } from "rxjs/operators";
import { Cordova, ZoneObservable } from '../';
export var CameraDestinationType;
(function (CameraDestinationType) {
CameraDestinationType[CameraDestinationType["DATA_URL"] = 0] = "DATA_URL";
CameraDestinationType[CameraDestinationType["FILE_URI"] = 1] = "FILE_URI";
CameraDestinationType[CameraDestinationType["NATIVE_URI"] = 2] = "NATIVE_URI";
})(CameraDestinationType || (CameraDestinationType = {}));
export var CameraEncodingType;
(function (CameraEncodingType) {
CameraEncodingType[CameraEncodingType["JPEG"] = 0] = "JPEG";
CameraEncodingType[CameraEncodingType["PNG"] = 1] = "PNG";
})(CameraEncodingType || (CameraEncodingType = {}));
export var CameraMediaType;
(function (CameraMediaType) {
CameraMediaType[CameraMediaType["PICTURE"] = 0] = "PICTURE";
CameraMediaType[CameraMediaType["VIDEO"] = 1] = "VIDEO";
CameraMediaType[CameraMediaType["ALLMEDIA"] = 2] = "ALLMEDIA";
})(CameraMediaType || (CameraMediaType = {}));
export var CameraPictureSourceType;
(function (CameraPictureSourceType) {
CameraPictureSourceType[CameraPictureSourceType["PHOTOLIBRARY"] = 0] = "PHOTOLIBRARY";
CameraPictureSourceType[CameraPictureSourceType["CAMERA"] = 1] = "CAMERA";
CameraPictureSourceType[CameraPictureSourceType["SAVEDPHOTOALBUM"] = 2] = "SAVEDPHOTOALBUM";
})(CameraPictureSourceType || (CameraPictureSourceType = {}));
export var CameraPopoverArrowDirection;
(function (CameraPopoverArrowDirection) {
CameraPopoverArrowDirection[CameraPopoverArrowDirection["ARROW_UP"] = 1] = "ARROW_UP";
CameraPopoverArrowDirection[CameraPopoverArrowDirection["ARROW_DOWN"] = 2] = "ARROW_DOWN";
CameraPopoverArrowDirection[CameraPopoverArrowDirection["ARROW_LEFT"] = 4] = "ARROW_LEFT";
CameraPopoverArrowDirection[CameraPopoverArrowDirection["ARROW_RIGHT"] = 8] = "ARROW_RIGHT";
CameraPopoverArrowDirection[CameraPopoverArrowDirection["ARROW_ANY"] = 15] = "ARROW_ANY";
})(CameraPopoverArrowDirection || (CameraPopoverArrowDirection = {}));
export var CameraDirection;
(function (CameraDirection) {
CameraDirection[CameraDirection["BACK"] = 0] = "BACK";
CameraDirection[CameraDirection["FRONT"] = 1] = "FRONT";
})(CameraDirection || (CameraDirection = {}));
var CameraService = /** @class */ (function () {
function CameraService(zone) {
this.zone = zone;
this.cameraDefaults = {
quality: 50,
destinationType: CameraDestinationType.FILE_URI,
sourceType: CameraPictureSourceType.CAMERA,
encodingType: CameraEncodingType.JPEG,
mediaType: CameraMediaType.PICTURE,
cameraDirection: CameraDirection.BACK
};
}
CameraService.prototype.getPicture = function (options) {
var _this = this;
var opts = Object.assign({}, this.cameraDefaults, options);
return Cordova.deviceready.pipe(mergeMap(function () { return ZoneObservable.create(_this.zone, function (observer) {
window.navigator.camera.getPicture(function (res) {
observer.next(res);
observer.complete();
}, observer.error, opts);
}); }));
};
CameraService.prototype.cleanup = function () {
var _this = this;
return Cordova.deviceready.pipe(mergeMap(function () { return ZoneObservable.create(_this.zone, function (observer) {
window.navigator.camera.cleanup(function (res) {
observer.next(res);
observer.complete();
}, observer.error);
}); }));
};
CameraService = __decorate([
Injectable(),
__metadata("design:paramtypes", [NgZone])
], CameraService);
return CameraService;
}());
export { CameraService };
//# sourceMappingURL=camera.js.map