2023-04-05 13:42:20 +00:00
|
|
|
function getDeviceDetails (device) {
|
2023-03-07 20:36:31 +00:00
|
|
|
return device.productName || `Unknown device ${device.deviceId}`
|
2022-11-22 21:50:32 +00:00
|
|
|
}
|
|
|
|
|
2023-04-05 13:42:20 +00:00
|
|
|
async function testIt () {
|
2022-11-22 21:50:32 +00:00
|
|
|
const noDevicesFoundMsg = 'No devices found'
|
|
|
|
const grantedDevices = await navigator.usb.getDevices()
|
|
|
|
let grantedDeviceList = ''
|
2023-02-01 11:59:16 +00:00
|
|
|
if (grantedDevices.length > 0) {
|
2023-08-31 14:36:43 +00:00
|
|
|
for (const device of grantedDevices) {
|
2022-11-22 21:50:32 +00:00
|
|
|
grantedDeviceList += `<hr>${getDeviceDetails(device)}</hr>`
|
2023-08-31 14:36:43 +00:00
|
|
|
}
|
2022-11-22 21:50:32 +00:00
|
|
|
} else {
|
|
|
|
grantedDeviceList = noDevicesFoundMsg
|
|
|
|
}
|
|
|
|
document.getElementById('granted-devices').innerHTML = grantedDeviceList
|
|
|
|
|
|
|
|
grantedDeviceList = ''
|
|
|
|
try {
|
|
|
|
const grantedDevice = await navigator.usb.requestDevice({
|
|
|
|
filters: []
|
|
|
|
})
|
2023-04-24 14:35:14 +00:00
|
|
|
grantedDeviceList += `<hr>${getDeviceDetails(grantedDevice)}</hr>`
|
2022-11-22 21:50:32 +00:00
|
|
|
} catch (ex) {
|
|
|
|
if (ex.name === 'NotFoundError') {
|
|
|
|
grantedDeviceList = noDevicesFoundMsg
|
|
|
|
}
|
|
|
|
}
|
|
|
|
document.getElementById('granted-devices2').innerHTML = grantedDeviceList
|
|
|
|
}
|
|
|
|
|
2023-04-05 13:42:20 +00:00
|
|
|
document.getElementById('clickme').addEventListener('click', testIt)
|