Move navigator.usb.requestDevice to package
This commit is contained in:
@@ -40,6 +40,9 @@ export function rethrowIfCritical(err) {
|
||||
}
|
||||
}
|
||||
|
||||
const INTERFACE_CLASS = 6; // PTP
|
||||
const INTERFACE_SUBCLASS = 1; // MTP
|
||||
|
||||
class Camera {
|
||||
constructor() {
|
||||
/** @type {Promise<unknown>} */
|
||||
@@ -49,6 +52,18 @@ class Camera {
|
||||
this.ModulePromise = null;
|
||||
}
|
||||
|
||||
async showCameraPicker() {
|
||||
// @ts-ignore
|
||||
await navigator.usb.requestDevice({
|
||||
filters: [
|
||||
{
|
||||
classCode: INTERFACE_CLASS,
|
||||
subclassCode: INTERFACE_SUBCLASS,
|
||||
},
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
async connect() {
|
||||
if (!this.ModulePromise) {
|
||||
this.ModulePromise = initializeModule().then((initModule) => {
|
||||
|
||||
1
src/libapi.mjs.d.ts
vendored
1
src/libapi.mjs.d.ts
vendored
@@ -61,6 +61,7 @@ declare class Context {
|
||||
export declare class Camera {
|
||||
constructor();
|
||||
|
||||
showCameraPicker(): Promise<void>;
|
||||
connect(): Promise<void>;
|
||||
disconnect(): Promise<void>;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user