UNPKG

@indutny/windows-ucv

Version:
42 lines (41 loc) 1.42 kB
import loadBinding from 'bindings'; let binding; if (process.platform === 'win32') { binding = loadBinding('windows-ucv'); } /** * Check if User Constant Verification is available. * * See: https://learn.microsoft.com/en-us/uwp/api/windows.security.credentials.ui.userconsentverifier.checkavailabilityasync?view=winrt-26100#windows-security-credentials-ui-userconsentverifier-checkavailabilityasync */ export async function checkAvailability() { if (!binding) { throw new Error('This library works only on Windows'); } return new Promise((resolve, reject) => { binding.checkAvailability((result) => { if (result === 'error') { return reject(new Error('Internal error')); } return resolve(result); }); }); } /** * Request User Constant Verification * * See: https://learn.microsoft.com/en-us/uwp/api/windows.security.credentials.ui.userconsentverifier.requestverificationasync?view=winrt-26100 */ export async function requestVerification(message) { if (!binding) { throw new Error('This library works only on Windows'); } return new Promise((resolve, reject) => { binding.requestVerification(message, (result) => { if (result === 'error') { return reject(new Error('Internal error')); } return resolve(result); }); }); }