mirror of
https://github.com/servo/servo.git
synced 2025-06-30 20:13:39 +01:00
63 lines
1.3 KiB
Text
63 lines
1.3 KiB
Text
dictionary NFCMessage {
|
|
sequence<NFCRecord> records;
|
|
USVString url;
|
|
};
|
|
|
|
typedef (DOMString or unrestricted double or ArrayBuffer or Dictionary) NFCRecordData;
|
|
|
|
dictionary NFCRecord {
|
|
NFCRecordType recordType;
|
|
USVString mediaType;
|
|
NFCRecordData data;
|
|
};
|
|
|
|
enum NFCRecordType {
|
|
"empty",
|
|
"text",
|
|
"url",
|
|
"json",
|
|
"opaque"
|
|
};
|
|
|
|
partial interface Navigator {
|
|
[SecureContext,
|
|
SameObject]
|
|
readonly attribute NFC nfc;
|
|
};
|
|
|
|
typedef (DOMString or ArrayBuffer or NFCMessage) NFCPushMessage;
|
|
|
|
[SecureContext]
|
|
interface NFC {
|
|
Promise<void> push(NFCPushMessage message, optional NFCPushOptions options);
|
|
Promise<void> cancelPush(optional NFCPushTarget target = "any");
|
|
Promise<long> watch(MessageCallback callback,
|
|
optional NFCWatchOptions options);
|
|
Promise<void> cancelWatch(optional long id);
|
|
};
|
|
|
|
callback MessageCallback = void (NFCMessage message);
|
|
|
|
dictionary NFCPushOptions {
|
|
NFCPushTarget target = "any";
|
|
unrestricted double timeout = Infinity;
|
|
boolean ignoreRead = true;
|
|
};
|
|
|
|
enum NFCPushTarget {
|
|
"tag",
|
|
"peer",
|
|
"any"
|
|
};
|
|
|
|
dictionary NFCWatchOptions {
|
|
USVString url = "";
|
|
NFCRecordType? recordType;
|
|
USVString mediaType = "";
|
|
NFCWatchMode mode = "web-nfc-only";
|
|
};
|
|
|
|
enum NFCWatchMode {
|
|
"web-nfc-only",
|
|
"any"
|
|
};
|