UNPKG

ngx-webcam2

Version:

A simple Angular webcam component. Pure &amp; minimal, no Flash-fallback. <a href="https://basst314.github.io/ngx-webcam/?" target="_blank">See the Demo!</a>

37 lines 3.88 kB
import { __awaiter, __generator } from "tslib"; var WebcamUtil = /** @class */ (function () { function WebcamUtil() { } WebcamUtil.hasVideoInputs = function () { var inputs = WebcamUtil.availableVideoInputs; return !!inputs.find(function (input) { return !!input.deviceId; }); }; /** * Lists available videoInput devices * @returns a list of media device info. */ WebcamUtil.getAvailableVideoInputs = function () { return __awaiter(this, void 0, void 0, function () { var devices; return __generator(this, function (_a) { switch (_a.label) { case 0: if (!navigator.mediaDevices || !navigator.mediaDevices.enumerateDevices) { throw new Error('enumerateDevices() not supported.'); } if (!!this.hasVideoInputs()) return [3 /*break*/, 2]; return [4 /*yield*/, navigator.mediaDevices.enumerateDevices()]; case 1: devices = _a.sent(); WebcamUtil.availableVideoInputs = devices.filter(function (device) { return device.kind === 'videoinput'; }); _a.label = 2; case 2: return [2 /*return*/, WebcamUtil.availableVideoInputs]; } }); }); }; WebcamUtil.availableVideoInputs = []; return WebcamUtil; }()); export { WebcamUtil }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViY2FtLnV0aWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtd2ViY2FtLyIsInNvdXJjZXMiOlsic3JjL2FwcC9tb2R1bGVzL3dlYmNhbS91dGlsL3dlYmNhbS51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtJQUFBO0lBeUJBLENBQUM7SUFyQlEseUJBQWMsR0FBckI7UUFDRSxJQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsb0JBQW9CLENBQUM7UUFDL0MsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFBLEtBQUssSUFBSSxPQUFBLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFoQixDQUFnQixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7T0FHRztJQUNpQixrQ0FBdUIsR0FBM0M7Ozs7Ozt3QkFDRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUU7NEJBQ3ZFLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQzt5QkFDdEQ7NkJBRUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQXRCLHdCQUFzQjt3QkFDUixxQkFBTSxTQUFTLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFLEVBQUE7O3dCQUF6RCxPQUFPLEdBQUcsU0FBK0M7d0JBQy9ELFVBQVUsQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQUMsTUFBdUIsSUFBSyxPQUFBLE1BQU0sQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUE1QixDQUE0QixDQUFDLENBQUM7OzRCQUc5RyxzQkFBTyxVQUFVLENBQUMsb0JBQW9CLEVBQUM7Ozs7S0FDeEM7SUF0QmMsK0JBQW9CLEdBQXNCLEVBQUUsQ0FBQztJQXVCOUQsaUJBQUM7Q0FBQSxBQXpCRCxJQXlCQztTQXpCWSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFdlYmNhbVV0aWwge1xuXG4gIHByaXZhdGUgc3RhdGljIGF2YWlsYWJsZVZpZGVvSW5wdXRzOiBNZWRpYURldmljZUluZm9bXSA9IFtdO1xuXG4gIHN0YXRpYyBoYXNWaWRlb0lucHV0cygpIHtcbiAgICBjb25zdCBpbnB1dHMgPSBXZWJjYW1VdGlsLmF2YWlsYWJsZVZpZGVvSW5wdXRzO1xuICAgIHJldHVybiAhIWlucHV0cy5maW5kKGlucHV0ID0+ICEhaW5wdXQuZGV2aWNlSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RzIGF2YWlsYWJsZSB2aWRlb0lucHV0IGRldmljZXNcbiAgICogQHJldHVybnMgYSBsaXN0IG9mIG1lZGlhIGRldmljZSBpbmZvLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhc3luYyBnZXRBdmFpbGFibGVWaWRlb0lucHV0cygpOiBQcm9taXNlPE1lZGlhRGV2aWNlSW5mb1tdPiB7XG4gICAgaWYgKCFuYXZpZ2F0b3IubWVkaWFEZXZpY2VzIHx8ICFuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmVudW1lcmF0ZURldmljZXMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZW51bWVyYXRlRGV2aWNlcygpIG5vdCBzdXBwb3J0ZWQuJyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmhhc1ZpZGVvSW5wdXRzKCkpIHtcbiAgICAgIGNvbnN0IGRldmljZXMgPSBhd2FpdCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmVudW1lcmF0ZURldmljZXMoKTtcbiAgICAgIFdlYmNhbVV0aWwuYXZhaWxhYmxlVmlkZW9JbnB1dHMgPSBkZXZpY2VzLmZpbHRlcigoZGV2aWNlOiBNZWRpYURldmljZUluZm8pID0+IGRldmljZS5raW5kID09PSAndmlkZW9pbnB1dCcpO1xuICAgIH1cblxuICAgIHJldHVybiBXZWJjYW1VdGlsLmF2YWlsYWJsZVZpZGVvSW5wdXRzO1xuICB9XG59XG4iXX0=