w-aura/src/services/permission/permisson.ts
2025-04-09 07:46:07 +00:00

22 lines
1.0 KiB
TypeScript

export async function checkCameraPermissionState(): Promise<PermissionState | null> {
if (!navigator.permissions || !navigator.permissions.query) {
// Permissions API не поддерживается
console.warn("Permissions API не поддерживается в этом браузере.");
return null;
}
try {
const permissionStatus = await navigator.permissions.query({ name: 'camera' as PermissionName });
console.log(`Статус разрешения камеры: ${permissionStatus.state}`);
// Можно добавить обработку изменения статуса
// permissionStatus.onchange = () => {
// console.log(`Статус разрешения камеры изменился: ${permissionStatus.state}`);
// };
return permissionStatus.state; // 'granted', 'denied', 'prompt'
} catch (error) {
console.error("Ошибка при проверке разрешения камеры:", error);
return null;
}
}