@webref/idl 3.1.3 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/app-history.idl CHANGED
@@ -1,85 +1,85 @@
1
1
  // GENERATED CONTENT - DO NOT EDIT
2
2
  // Content was automatically extracted by Reffy into webref
3
3
  // (https://github.com/w3c/webref)
4
- // Source: App History API (https://wicg.github.io/app-history/)
4
+ // Source: Navigation API (https://wicg.github.io/navigation-api/)
5
5
 
6
6
  partial interface Window {
7
- readonly attribute AppHistory appHistory;
7
+ readonly attribute Navigation navigation;
8
8
  };
9
9
 
10
10
  [Exposed=Window]
11
- interface AppHistory : EventTarget {
12
- sequence<AppHistoryEntry> entries();
13
- readonly attribute AppHistoryEntry? current;
14
- undefined updateCurrent(AppHistoryUpdateCurrentOptions options);
15
- readonly attribute AppHistoryTransition? transition;
11
+ interface Navigation : EventTarget {
12
+ sequence<NavigationHistoryEntry> entries();
13
+ readonly attribute NavigationHistoryEntry? currentEntry;
14
+ undefined updateCurrentEntry(NavigationUpdateCurrentEntryOptions options);
15
+ readonly attribute NavigationTransition? transition;
16
16
 
17
17
  readonly attribute boolean canGoBack;
18
18
  readonly attribute boolean canGoForward;
19
19
 
20
- AppHistoryResult navigate(USVString url, optional AppHistoryNavigateOptions options = {});
21
- AppHistoryResult reload(optional AppHistoryReloadOptions options = {});
20
+ NavigationResult navigate(USVString url, optional NavigationNavigateOptions options = {});
21
+ NavigationResult reload(optional NavigationReloadOptions options = {});
22
22
 
23
- AppHistoryResult goTo(DOMString key, optional AppHistoryNavigationOptions options = {});
24
- AppHistoryResult back(optional AppHistoryNavigationOptions options = {});
25
- AppHistoryResult forward(optional AppHistoryNavigationOptions options = {});
23
+ NavigationResult traverseTo(DOMString key, optional NavigationOptions options = {});
24
+ NavigationResult back(optional NavigationOptions options = {});
25
+ NavigationResult forward(optional NavigationOptions options = {});
26
26
 
27
27
  attribute EventHandler onnavigate;
28
28
  attribute EventHandler onnavigatesuccess;
29
29
  attribute EventHandler onnavigateerror;
30
- attribute EventHandler oncurrentchange;
30
+ attribute EventHandler oncurrententrychange;
31
31
  };
32
32
 
33
- dictionary AppHistoryUpdateCurrentOptions {
33
+ dictionary NavigationUpdateCurrentEntryOptions {
34
34
  required any state;
35
35
  };
36
36
 
37
- dictionary AppHistoryNavigationOptions {
37
+ dictionary NavigationOptions {
38
38
  any info;
39
39
  };
40
40
 
41
- dictionary AppHistoryNavigateOptions : AppHistoryNavigationOptions {
41
+ dictionary NavigationNavigateOptions : NavigationOptions {
42
42
  any state;
43
43
  boolean replace = false;
44
44
  };
45
45
 
46
- dictionary AppHistoryReloadOptions : AppHistoryNavigationOptions {
46
+ dictionary NavigationReloadOptions : NavigationOptions {
47
47
  any state;
48
48
  };
49
49
 
50
- dictionary AppHistoryResult {
51
- Promise<AppHistoryEntry> committed;
52
- Promise<AppHistoryEntry> finished;
50
+ dictionary NavigationResult {
51
+ Promise<NavigationHistoryEntry> committed;
52
+ Promise<NavigationHistoryEntry> finished;
53
53
  };
54
54
 
55
55
  [Exposed=Window]
56
- interface AppHistoryCurrentChangeEvent : Event {
57
- constructor(DOMString type, AppHistoryCurrentChangeEventInit eventInit);
56
+ interface NavigationCurrentEntryChangeEvent : Event {
57
+ constructor(DOMString type, NavigationCurrentEntryChangeEventInit eventInit);
58
58
 
59
- readonly attribute AppHistoryNavigationType? navigationType;
60
- readonly attribute AppHistoryEntry from;
59
+ readonly attribute NavigationNavigationType? navigationType;
60
+ readonly attribute NavigationHistoryEntry from;
61
61
  };
62
62
 
63
- dictionary AppHistoryCurrentChangeEventInit : EventInit {
64
- AppHistoryNavigationType? navigationType = null;
65
- required AppHistoryEntry destination;
63
+ dictionary NavigationCurrentEntryChangeEventInit : EventInit {
64
+ NavigationNavigationType? navigationType = null;
65
+ required NavigationHistoryEntry destination;
66
66
  };
67
67
 
68
68
  [Exposed=Window]
69
- interface AppHistoryTransition {
70
- readonly attribute AppHistoryNavigationType navigationType;
71
- readonly attribute AppHistoryEntry from;
69
+ interface NavigationTransition {
70
+ readonly attribute NavigationNavigationType navigationType;
71
+ readonly attribute NavigationHistoryEntry from;
72
72
  readonly attribute Promise<undefined> finished;
73
73
 
74
- AppHistoryResult rollback(optional AppHistoryNavigationOptions options = {});
74
+ NavigationResult rollback(optional NavigationOptions options = {});
75
75
  };
76
76
 
77
77
  [Exposed=Window]
78
- interface AppHistoryNavigateEvent : Event {
79
- constructor(DOMString type, AppHistoryNavigateEventInit eventInit);
78
+ interface NavigateEvent : Event {
79
+ constructor(DOMString type, NavigateEventInit eventInit);
80
80
 
81
- readonly attribute AppHistoryNavigationType navigationType;
82
- readonly attribute AppHistoryDestination destination;
81
+ readonly attribute NavigationNavigationType navigationType;
82
+ readonly attribute NavigationDestination destination;
83
83
  readonly attribute boolean canTransition;
84
84
  readonly attribute boolean userInitiated;
85
85
  readonly attribute boolean hashChange;
@@ -90,9 +90,9 @@ interface AppHistoryNavigateEvent : Event {
90
90
  undefined transitionWhile(Promise<undefined> newNavigationAction);
91
91
  };
92
92
 
93
- dictionary AppHistoryNavigateEventInit : EventInit {
94
- AppHistoryNavigationType navigationType = "push";
95
- required AppHistoryDestination destination;
93
+ dictionary NavigateEventInit : EventInit {
94
+ NavigationNavigationType navigationType = "push";
95
+ required NavigationDestination destination;
96
96
  boolean canTransition = false;
97
97
  boolean userInitiated = false;
98
98
  boolean hashChange = false;
@@ -101,7 +101,8 @@ dictionary AppHistoryNavigateEventInit : EventInit {
101
101
  any info;
102
102
  };
103
103
 
104
- enum AppHistoryNavigationType {
104
+ // TODO: rename to NavigationType after https://github.com/w3c/navigation-timing/pull/172 lands.
105
+ enum NavigationNavigationType {
105
106
  "reload",
106
107
  "push",
107
108
  "replace",
@@ -109,7 +110,7 @@ enum AppHistoryNavigationType {
109
110
  };
110
111
 
111
112
  [Exposed=Window]
112
- interface AppHistoryDestination {
113
+ interface NavigationDestination {
113
114
  readonly attribute USVString url;
114
115
  readonly attribute DOMString? key;
115
116
  readonly attribute DOMString? id;
@@ -120,7 +121,7 @@ interface AppHistoryDestination {
120
121
  };
121
122
 
122
123
  [Exposed=Window]
123
- interface AppHistoryEntry : EventTarget {
124
+ interface NavigationHistoryEntry : EventTarget {
124
125
  readonly attribute USVString? url;
125
126
  readonly attribute DOMString key;
126
127
  readonly attribute DOMString id;
@@ -17,31 +17,14 @@ partial interface Navigator {
17
17
  [SecureContext, SameObject] readonly attribute Clipboard clipboard;
18
18
  };
19
19
 
20
- typedef sequence<ClipboardItem> ClipboardItems;
21
-
22
- [SecureContext, Exposed=Window] interface Clipboard : EventTarget {
23
- Promise<ClipboardItems> read();
24
- Promise<DOMString> readText();
25
- Promise<undefined> write(ClipboardItems data);
26
- Promise<undefined> writeText(DOMString data);
27
- };
28
-
29
- typedef (DOMString or Blob) ClipboardItemDataType;
30
- typedef Promise<ClipboardItemDataType> ClipboardItemData;
31
-
32
- callback ClipboardItemDelayedCallback = ClipboardItemData ();
20
+ typedef Promise<(DOMString or Blob)> ClipboardItemData;
33
21
 
34
- [Exposed=Window] interface ClipboardItem {
22
+ [SecureContext, Exposed=Window]
23
+ interface ClipboardItem {
35
24
  constructor(record<DOMString, ClipboardItemData> items,
36
- optional ClipboardItemOptions options = {});
37
- static ClipboardItem createDelayed(
38
- record<DOMString, ClipboardItemDelayedCallback> items,
39
- optional ClipboardItemOptions options = {});
25
+ optional ClipboardItemOptions options = {});
40
26
 
41
27
  readonly attribute PresentationStyle presentationStyle;
42
- readonly attribute long long lastModified;
43
- readonly attribute boolean delayed;
44
-
45
28
  readonly attribute FrozenArray<DOMString> types;
46
29
 
47
30
  Promise<Blob> getType(DOMString type);
@@ -53,6 +36,16 @@ dictionary ClipboardItemOptions {
53
36
  PresentationStyle presentationStyle = "unspecified";
54
37
  };
55
38
 
39
+ typedef sequence<ClipboardItem> ClipboardItems;
40
+
41
+ [SecureContext, Exposed=Window]
42
+ interface Clipboard : EventTarget {
43
+ Promise<ClipboardItems> read();
44
+ Promise<DOMString> readText();
45
+ Promise<undefined> write(ClipboardItems data);
46
+ Promise<undefined> writeText(DOMString data);
47
+ };
48
+
56
49
  dictionary ClipboardPermissionDescriptor : PermissionDescriptor {
57
50
  boolean allowWithoutGesture = false;
58
51
  };
package/close-watcher.idl CHANGED
@@ -5,11 +5,15 @@
5
5
 
6
6
  [Exposed=Window]
7
7
  interface CloseWatcher : EventTarget {
8
- constructor();
8
+ constructor(optional CloseWatcherOptions options = {});
9
9
 
10
10
  undefined destroy();
11
- undefined signalClose();
11
+ undefined close();
12
12
 
13
13
  attribute EventHandler oncancel;
14
14
  attribute EventHandler onclose;
15
15
  };
16
+
17
+ dictionary CloseWatcherOptions {
18
+ AbortSignal signal;
19
+ };
@@ -3,29 +3,36 @@
3
3
  // (https://github.com/w3c/webref)
4
4
  // Source: Compute Pressure API (https://wicg.github.io/compute-pressure/)
5
5
 
6
- enum PressureState { "nominal", "fair", "serious", "critical" };
6
+ enum ComputePressureState { "nominal", "fair", "serious", "critical" };
7
+
8
+ enum ComputePressureFactor { "thermal", "power-supply" };
7
9
 
8
10
  callback ComputePressureUpdateCallback = undefined (
9
- sequence<ComputePressureEntry> entries,
11
+ sequence<ComputePressureRecord> changes,
10
12
  ComputePressureObserver observer
11
13
  );
12
14
 
13
- enum ComputePressureTarget { "cpu" };
15
+ enum ComputePressureSource { "cpu" };
14
16
 
15
- [Exposed=Window]
17
+ [Exposed=(DedicatedWorker,SharedWorker,Window), SecureContext]
16
18
  interface ComputePressureObserver {
17
19
  constructor(ComputePressureUpdateCallback callback);
18
20
 
19
- undefined observe(ComputePressureTarget target, optional ComputePressureObserverOptions options = {});
20
- undefined unobserve(ComputePressureTarget target);
21
+ undefined observe(ComputePressureSource source, optional ComputePressureObserverOptions options = {});
22
+ undefined unobserve(ComputePressureSource source);
21
23
  undefined disconnect();
22
- sequence<ComputePressureEntry> takeRecords();
24
+ sequence<ComputePressureRecord> takeRecords();
25
+
26
+ [SameObject] static readonly attribute FrozenArray<DOMString> supportedSources;
23
27
 
24
- [SameObject] static readonly attribute FrozenArray<DOMString> supportedTargetTypes;
28
+ [Exposed=Window] static Promise<PermissionState> requestPermission();
25
29
  };
26
30
 
27
- dictionary ComputePressureEntry {
28
- PressureState state;
31
+ dictionary ComputePressureRecord {
32
+ ComputePressureSource source;
33
+ ComputePressureState state;
34
+ sequence<ComputePressureFactor> factors;
35
+ DOMHighResTimeStamp timestamp;
29
36
  ComputePressureObserverOptions options;
30
37
  };
31
38
 
@@ -0,0 +1,8 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: CSS Containment Module Level 3 (https://drafts.csswg.org/css-contain-3/)
5
+
6
+ [Exposed=Window]
7
+ interface CSSContainerRule : CSSConditionRule {
8
+ };
package/html.idl CHANGED
@@ -116,6 +116,7 @@ interface HTMLElement : Element {
116
116
 
117
117
  // user interaction
118
118
  [CEReactions] attribute boolean hidden;
119
+ [CEReactions] attribute boolean inert;
119
120
  undefined click();
120
121
  [CEReactions] attribute DOMString accessKey;
121
122
  readonly attribute DOMString accessKeyLabel;
@@ -1341,7 +1342,7 @@ interface mixin CanvasTransform {
1341
1342
  interface mixin CanvasCompositing {
1342
1343
  // compositing
1343
1344
  attribute unrestricted double globalAlpha; // (default 1.0)
1344
- attribute DOMString globalCompositeOperation; // (default source-over)
1345
+ attribute DOMString globalCompositeOperation; // (default "source-over")
1345
1346
  };
1346
1347
 
1347
1348
  interface mixin CanvasImageSmoothing {
@@ -1480,7 +1481,7 @@ interface mixin CanvasPath {
1480
1481
  undefined bezierCurveTo(unrestricted double cp1x, unrestricted double cp1y, unrestricted double cp2x, unrestricted double cp2y, unrestricted double x, unrestricted double y);
1481
1482
  undefined arcTo(unrestricted double x1, unrestricted double y1, unrestricted double x2, unrestricted double y2, unrestricted double radius);
1482
1483
  undefined rect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h);
1483
- undefined roundRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h, sequence<(unrestricted double or DOMPointInit)> radii);
1484
+ undefined roundRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h, optional (unrestricted double or DOMPointInit or sequence<(unrestricted double or DOMPointInit)>) radii = 0);
1484
1485
  undefined arc(unrestricted double x, unrestricted double y, unrestricted double radius, unrestricted double startAngle, unrestricted double endAngle, optional boolean counterclockwise = false);
1485
1486
  undefined ellipse(unrestricted double x, unrestricted double y, unrestricted double radiusX, unrestricted double radiusY, unrestricted double rotation, unrestricted double startAngle, unrestricted double endAngle, optional boolean counterclockwise = false);
1486
1487
  };
@@ -2208,53 +2209,6 @@ dictionary EventSourceInit {
2208
2209
  boolean withCredentials = false;
2209
2210
  };
2210
2211
 
2211
- enum BinaryType { "blob", "arraybuffer" };
2212
- [Exposed=(Window,Worker)]
2213
- interface WebSocket : EventTarget {
2214
- constructor(USVString url, optional (DOMString or sequence<DOMString>) protocols = []);
2215
-
2216
- readonly attribute USVString url;
2217
-
2218
- // ready state
2219
- const unsigned short CONNECTING = 0;
2220
- const unsigned short OPEN = 1;
2221
- const unsigned short CLOSING = 2;
2222
- const unsigned short CLOSED = 3;
2223
- readonly attribute unsigned short readyState;
2224
- readonly attribute unsigned long long bufferedAmount;
2225
-
2226
- // networking
2227
- attribute EventHandler onopen;
2228
- attribute EventHandler onerror;
2229
- attribute EventHandler onclose;
2230
- readonly attribute DOMString extensions;
2231
- readonly attribute DOMString protocol;
2232
- undefined close(optional [Clamp] unsigned short code, optional USVString reason);
2233
-
2234
- // messaging
2235
- attribute EventHandler onmessage;
2236
- attribute BinaryType binaryType;
2237
- undefined send(USVString data);
2238
- undefined send(Blob data);
2239
- undefined send(ArrayBuffer data);
2240
- undefined send(ArrayBufferView data);
2241
- };
2242
-
2243
- [Exposed=(Window,Worker)]
2244
- interface CloseEvent : Event {
2245
- constructor(DOMString type, optional CloseEventInit eventInitDict = {});
2246
-
2247
- readonly attribute boolean wasClean;
2248
- readonly attribute unsigned short code;
2249
- readonly attribute USVString reason;
2250
- };
2251
-
2252
- dictionary CloseEventInit : EventInit {
2253
- boolean wasClean = false;
2254
- unsigned short code = 0;
2255
- USVString reason = "";
2256
- };
2257
-
2258
2212
  [Exposed=(Window,Worker)]
2259
2213
  interface MessageChannel {
2260
2214
  constructor();
@@ -5,20 +5,20 @@
5
5
 
6
6
  [Exposed=Window]
7
7
  interface PerformanceNavigationTiming : PerformanceResourceTiming {
8
- readonly attribute DOMHighResTimeStamp unloadEventStart;
9
- readonly attribute DOMHighResTimeStamp unloadEventEnd;
10
- readonly attribute DOMHighResTimeStamp domInteractive;
11
- readonly attribute DOMHighResTimeStamp domContentLoadedEventStart;
12
- readonly attribute DOMHighResTimeStamp domContentLoadedEventEnd;
13
- readonly attribute DOMHighResTimeStamp domComplete;
14
- readonly attribute DOMHighResTimeStamp loadEventStart;
15
- readonly attribute DOMHighResTimeStamp loadEventEnd;
16
- readonly attribute NavigationType type;
17
- readonly attribute unsigned short redirectCount;
8
+ readonly attribute DOMHighResTimeStamp unloadEventStart;
9
+ readonly attribute DOMHighResTimeStamp unloadEventEnd;
10
+ readonly attribute DOMHighResTimeStamp domInteractive;
11
+ readonly attribute DOMHighResTimeStamp domContentLoadedEventStart;
12
+ readonly attribute DOMHighResTimeStamp domContentLoadedEventEnd;
13
+ readonly attribute DOMHighResTimeStamp domComplete;
14
+ readonly attribute DOMHighResTimeStamp loadEventStart;
15
+ readonly attribute DOMHighResTimeStamp loadEventEnd;
16
+ readonly attribute NavigationTimingType type;
17
+ readonly attribute unsigned short redirectCount;
18
18
  [Default] object toJSON();
19
19
  };
20
20
 
21
- enum NavigationType {
21
+ enum NavigationTimingType {
22
22
  "navigate",
23
23
  "reload",
24
24
  "back_forward",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@webref/idl",
3
3
  "description": "Web IDL definitions of the web platform",
4
- "version": "3.1.3",
4
+ "version": "3.3.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/w3c/webref.git"
@@ -3,28 +3,28 @@
3
3
  // (https://github.com/w3c/webref)
4
4
  // Source: Priority Hints (https://wicg.github.io/priority-hints/)
5
5
 
6
- enum Importance { "high", "low", "auto" };
6
+ enum FetchPriority { "high", "low", "auto" };
7
7
 
8
8
  partial interface Request {
9
- readonly attribute Importance importance;
9
+ readonly attribute FetchPriority priority;
10
10
  };
11
11
 
12
12
  partial dictionary RequestInit {
13
- Importance importance;
13
+ FetchPriority priority;
14
14
  };
15
15
 
16
16
  partial interface HTMLImageElement {
17
- [CEReactions] attribute DOMString importance;
17
+ [CEReactions] attribute DOMString fetchpriority;
18
18
  };
19
19
 
20
20
  partial interface HTMLLinkElement {
21
- [CEReactions] attribute DOMString importance;
21
+ [CEReactions] attribute DOMString fetchpriority;
22
22
  };
23
23
 
24
24
  partial interface HTMLScriptElement {
25
- [CEReactions] attribute DOMString importance;
25
+ [CEReactions] attribute DOMString fetchpriority;
26
26
  };
27
27
 
28
28
  partial interface HTMLIFrameElement {
29
- [CEReactions] attribute DOMString importance;
29
+ [CEReactions] attribute DOMString fetchpriority;
30
30
  };
@@ -5,6 +5,7 @@
5
5
 
6
6
  dictionary SecurePaymentConfirmationRequest {
7
7
  required BufferSource challenge;
8
+ required USVString rpId;
8
9
  required FrozenArray<BufferSource> credentialIds;
9
10
  required PaymentCredentialInstrument instrument;
10
11
  unsigned long timeout;
package/webgpu.idl CHANGED
@@ -355,6 +355,7 @@ enum GPUTextureFormat {
355
355
 
356
356
  [Exposed=(Window, DedicatedWorker), SecureContext]
357
357
  interface GPUExternalTexture {
358
+ readonly attribute boolean expired;
358
359
  };
359
360
  GPUExternalTexture includes GPUObjectBase;
360
361
 
package/webnn.idl CHANGED
@@ -16,33 +16,20 @@ enum MLDevicePreference {
16
16
  };
17
17
 
18
18
  enum MLPowerPreference {
19
- // Let the user agent select the most suitable behavior.
20
19
  "default",
21
-
22
- // Prioritizes execution speed over power consumption.
23
20
  "high-performance",
24
-
25
- // Prioritizes power consumption over other considerations such as execution speed.
26
21
  "low-power"
27
22
  };
28
23
 
29
24
  dictionary MLContextOptions {
30
- // Preferred kind of device used
31
25
  MLDevicePreference devicePreference = "default";
32
-
33
- // Preference as related to power consumption
34
26
  MLPowerPreference powerPreference = "default";
35
27
  };
36
28
 
37
29
  [SecureContext, Exposed=(Window, DedicatedWorker)]
38
30
  interface ML {
39
- // Create a context with options
40
31
  MLContext createContext(optional MLContextOptions options = {});
41
-
42
- // Create a context from WebGL rendering context
43
32
  MLContext createContext(WebGLRenderingContext glContext);
44
-
45
- // Create a context from WebGPU device
46
33
  MLContext createContext(GPUDevice gpuDevice);
47
34
  };
48
35
 
package/websockets.idl ADDED
@@ -0,0 +1,48 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: WebSockets Standard (https://websockets.spec.whatwg.org/)
5
+
6
+ enum BinaryType { "blob", "arraybuffer" };
7
+
8
+ [Exposed=(Window,Worker)]
9
+ interface WebSocket : EventTarget {
10
+ constructor(USVString url, optional (DOMString or sequence<DOMString>) protocols = []);
11
+ readonly attribute USVString url;
12
+
13
+ // ready state
14
+ const unsigned short CONNECTING = 0;
15
+ const unsigned short OPEN = 1;
16
+ const unsigned short CLOSING = 2;
17
+ const unsigned short CLOSED = 3;
18
+ readonly attribute unsigned short readyState;
19
+ readonly attribute unsigned long long bufferedAmount;
20
+
21
+ // networking
22
+ attribute EventHandler onopen;
23
+ attribute EventHandler onerror;
24
+ attribute EventHandler onclose;
25
+ readonly attribute DOMString extensions;
26
+ readonly attribute DOMString protocol;
27
+ undefined close(optional [Clamp] unsigned short code, optional USVString reason);
28
+
29
+ // messaging
30
+ attribute EventHandler onmessage;
31
+ attribute BinaryType binaryType;
32
+ undefined send((BufferSource or Blob or USVString) data);
33
+ };
34
+
35
+ [Exposed=(Window,Worker)]
36
+ interface CloseEvent : Event {
37
+ constructor(DOMString type, optional CloseEventInit eventInitDict = {});
38
+
39
+ readonly attribute boolean wasClean;
40
+ readonly attribute unsigned short code;
41
+ readonly attribute USVString reason;
42
+ };
43
+
44
+ dictionary CloseEventInit : EventInit {
45
+ boolean wasClean = false;
46
+ unsigned short code = 0;
47
+ USVString reason = "";
48
+ };
package/webusb.idl CHANGED
@@ -47,68 +47,12 @@ interface USBConnectionEvent : Event {
47
47
  [SameObject] readonly attribute USBDevice device;
48
48
  };
49
49
 
50
- [Exposed=(DedicatedWorker,SharedWorker,Window), SecureContext]
51
- interface USBDevice {
52
- readonly attribute octet usbVersionMajor;
53
- readonly attribute octet usbVersionMinor;
54
- readonly attribute octet usbVersionSubminor;
55
- readonly attribute octet deviceClass;
56
- readonly attribute octet deviceSubclass;
57
- readonly attribute octet deviceProtocol;
58
- readonly attribute unsigned short vendorId;
59
- readonly attribute unsigned short productId;
60
- readonly attribute octet deviceVersionMajor;
61
- readonly attribute octet deviceVersionMinor;
62
- readonly attribute octet deviceVersionSubminor;
63
- readonly attribute DOMString? manufacturerName;
64
- readonly attribute DOMString? productName;
65
- readonly attribute DOMString? serialNumber;
66
- readonly attribute USBConfiguration? configuration;
67
- readonly attribute FrozenArray<USBConfiguration> configurations;
68
- readonly attribute boolean opened;
69
- Promise<undefined> open();
70
- Promise<undefined> close();
71
- Promise<undefined> selectConfiguration(octet configurationValue);
72
- Promise<undefined> claimInterface(octet interfaceNumber);
73
- Promise<undefined> releaseInterface(octet interfaceNumber);
74
- Promise<undefined> selectAlternateInterface(octet interfaceNumber, octet alternateSetting);
75
- Promise<USBInTransferResult> controlTransferIn(USBControlTransferParameters setup, unsigned short length);
76
- Promise<USBOutTransferResult> controlTransferOut(USBControlTransferParameters setup, optional BufferSource data);
77
- Promise<undefined> clearHalt(USBDirection direction, octet endpointNumber);
78
- Promise<USBInTransferResult> transferIn(octet endpointNumber, unsigned long length);
79
- Promise<USBOutTransferResult> transferOut(octet endpointNumber, BufferSource data);
80
- Promise<USBIsochronousInTransferResult> isochronousTransferIn(octet endpointNumber, sequence<unsigned long> packetLengths);
81
- Promise<USBIsochronousOutTransferResult> isochronousTransferOut(octet endpointNumber, BufferSource data, sequence<unsigned long> packetLengths);
82
- Promise<undefined> reset();
83
- };
84
-
85
- enum USBRequestType {
86
- "standard",
87
- "class",
88
- "vendor"
89
- };
90
-
91
- enum USBRecipient {
92
- "device",
93
- "interface",
94
- "endpoint",
95
- "other"
96
- };
97
-
98
50
  enum USBTransferStatus {
99
51
  "ok",
100
52
  "stall",
101
53
  "babble"
102
54
  };
103
55
 
104
- dictionary USBControlTransferParameters {
105
- required USBRequestType requestType;
106
- required USBRecipient recipient;
107
- required octet request;
108
- required unsigned short value;
109
- required unsigned short index;
110
- };
111
-
112
56
  [
113
57
  Exposed=(DedicatedWorker,SharedWorker,Window),
114
58
  SecureContext
@@ -168,6 +112,63 @@ interface USBIsochronousOutTransferResult {
168
112
  readonly attribute FrozenArray<USBIsochronousOutTransferPacket> packets;
169
113
  };
170
114
 
115
+ [Exposed=(DedicatedWorker,SharedWorker,Window), SecureContext]
116
+ interface USBDevice {
117
+ readonly attribute octet usbVersionMajor;
118
+ readonly attribute octet usbVersionMinor;
119
+ readonly attribute octet usbVersionSubminor;
120
+ readonly attribute octet deviceClass;
121
+ readonly attribute octet deviceSubclass;
122
+ readonly attribute octet deviceProtocol;
123
+ readonly attribute unsigned short vendorId;
124
+ readonly attribute unsigned short productId;
125
+ readonly attribute octet deviceVersionMajor;
126
+ readonly attribute octet deviceVersionMinor;
127
+ readonly attribute octet deviceVersionSubminor;
128
+ readonly attribute DOMString? manufacturerName;
129
+ readonly attribute DOMString? productName;
130
+ readonly attribute DOMString? serialNumber;
131
+ readonly attribute USBConfiguration? configuration;
132
+ readonly attribute FrozenArray<USBConfiguration> configurations;
133
+ readonly attribute boolean opened;
134
+ Promise<undefined> open();
135
+ Promise<undefined> close();
136
+ Promise<undefined> forget();
137
+ Promise<undefined> selectConfiguration(octet configurationValue);
138
+ Promise<undefined> claimInterface(octet interfaceNumber);
139
+ Promise<undefined> releaseInterface(octet interfaceNumber);
140
+ Promise<undefined> selectAlternateInterface(octet interfaceNumber, octet alternateSetting);
141
+ Promise<USBInTransferResult> controlTransferIn(USBControlTransferParameters setup, unsigned short length);
142
+ Promise<USBOutTransferResult> controlTransferOut(USBControlTransferParameters setup, optional BufferSource data);
143
+ Promise<undefined> clearHalt(USBDirection direction, octet endpointNumber);
144
+ Promise<USBInTransferResult> transferIn(octet endpointNumber, unsigned long length);
145
+ Promise<USBOutTransferResult> transferOut(octet endpointNumber, BufferSource data);
146
+ Promise<USBIsochronousInTransferResult> isochronousTransferIn(octet endpointNumber, sequence<unsigned long> packetLengths);
147
+ Promise<USBIsochronousOutTransferResult> isochronousTransferOut(octet endpointNumber, BufferSource data, sequence<unsigned long> packetLengths);
148
+ Promise<undefined> reset();
149
+ };
150
+
151
+ enum USBRequestType {
152
+ "standard",
153
+ "class",
154
+ "vendor"
155
+ };
156
+
157
+ enum USBRecipient {
158
+ "device",
159
+ "interface",
160
+ "endpoint",
161
+ "other"
162
+ };
163
+
164
+ dictionary USBControlTransferParameters {
165
+ required USBRequestType requestType;
166
+ required USBRecipient recipient;
167
+ required octet request;
168
+ required unsigned short value;
169
+ required unsigned short index;
170
+ };
171
+
171
172
  [
172
173
  Exposed=(DedicatedWorker,SharedWorker,Window),
173
174
  SecureContext