https://github.com/web-platform-tests/wpt
Raw File
Tip revision: 40dc6ae8bbd4d1ce358402dd518c8ec26439913b authored by Timothy Gu on 31 July 2018, 19:10:11 UTC
Capture readyState changes before document.open too
Tip revision: 40dc6ae
web-nfc.idl
// GENERATED CONTENT - DO NOT EDIT
// Content of this file was automatically extracted from the
// "Web NFC API" spec.
// See: https://w3c.github.io/web-nfc/

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"
};
back to top