react-media-devices
Advanced tools
Comparing version 1.0.3 to 1.1.0
@@ -14,2 +14,3 @@ "use strict"; | ||
var errorHandlerRef = (0, react_1.useRef)(null); | ||
var _e = (0, react_1.useState)(false), loading = _e[0], setLoading = _e[1]; | ||
(0, react_1.useEffect)(function () { | ||
@@ -20,10 +21,8 @@ errorHandlerRef.current = onError; | ||
var ac = new AbortController(); | ||
console.log("effect"); | ||
new Promise(function (resolve, reject) { | ||
ac.signal.addEventListener("abort", reject); | ||
console.log(constraints); | ||
setLoading(true); | ||
(0, mediaDevices_1.getMediaDevices)(constraints).then(resolve); | ||
}) | ||
.then(function (devices) { | ||
console.log(devices); | ||
setMediaDevices(devices); | ||
@@ -36,2 +35,5 @@ }) | ||
(_a = errorHandlerRef.current) === null || _a === void 0 ? void 0 : _a.call(errorHandlerRef, error); | ||
}) | ||
.finally(function () { | ||
setLoading(false); | ||
}); | ||
@@ -42,4 +44,4 @@ return function () { | ||
}, [constraints]); | ||
return mediaDevices; | ||
return { devices: mediaDevices, loading: loading }; | ||
}; | ||
exports.useMediaDevices = useMediaDevices; |
@@ -8,2 +8,3 @@ import { useEffect, useRef, useState } from "react"; | ||
var errorHandlerRef = useRef(null); | ||
var _e = useState(false), loading = _e[0], setLoading = _e[1]; | ||
useEffect(function () { | ||
@@ -14,10 +15,8 @@ errorHandlerRef.current = onError; | ||
var ac = new AbortController(); | ||
console.log("effect"); | ||
new Promise(function (resolve, reject) { | ||
ac.signal.addEventListener("abort", reject); | ||
console.log(constraints); | ||
setLoading(true); | ||
getMediaDevices(constraints).then(resolve); | ||
}) | ||
.then(function (devices) { | ||
console.log(devices); | ||
setMediaDevices(devices); | ||
@@ -30,2 +29,5 @@ }) | ||
(_a = errorHandlerRef.current) === null || _a === void 0 ? void 0 : _a.call(errorHandlerRef, error); | ||
}) | ||
.finally(function () { | ||
setLoading(false); | ||
}); | ||
@@ -36,3 +38,3 @@ return function () { | ||
}, [constraints]); | ||
return mediaDevices; | ||
return { devices: mediaDevices, loading: loading }; | ||
}; |
@@ -5,3 +5,6 @@ interface UseMediaDevicesOptions { | ||
} | ||
export declare const useMediaDevices: ({ constraints, onError, }?: UseMediaDevicesOptions) => MediaDeviceInfo[] | null; | ||
export declare const useMediaDevices: ({ constraints, onError, }?: UseMediaDevicesOptions) => { | ||
devices: MediaDeviceInfo[] | null; | ||
loading: boolean; | ||
}; | ||
export {}; |
{ | ||
"name": "react-media-devices", | ||
"version": "1.0.3", | ||
"version": "1.1.0", | ||
"description": "A custom hook to enumerate user media devices, using the MediaDevices API", | ||
@@ -5,0 +5,0 @@ "main": "./lib/cjs/index.js", |
14727
252