diff --git a/baselines/audioworklet.generated.d.ts b/baselines/audioworklet.generated.d.ts index 49c594302..43ca95681 100644 --- a/baselines/audioworklet.generated.d.ts +++ b/baselines/audioworklet.generated.d.ts @@ -1011,6 +1011,8 @@ interface URL { declare var URL: { prototype: URL; new(url: string | URL, base?: string | URL): URL; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ + canParse(url: string | URL, base?: string): boolean; }; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */ diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index 2cc5f5688..95307ebba 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -1017,7 +1017,7 @@ interface NotificationOptions { lang?: string; renotify?: boolean; requireInteraction?: boolean; - silent?: boolean; + silent?: boolean | null; tag?: string; timestamp?: EpochTimeStamp; vibrate?: VibratePattern; @@ -1857,6 +1857,11 @@ interface TextEncoderEncodeIntoResult { written: number; } +interface ToggleEventInit extends EventInit { + newState?: string; + oldState?: string; +} + interface TouchEventInit extends EventModifierInit { changedTouches?: Touch[]; targetTouches?: Touch[]; @@ -2087,6 +2092,32 @@ interface WebGLContextEventInit extends EventInit { statusMessage?: string; } +interface WebTransportCloseInfo { + closeCode?: number; + reason?: string; +} + +interface WebTransportErrorOptions { + source?: WebTransportErrorSource; + streamErrorCode?: number | null; +} + +interface WebTransportHash { + algorithm?: string; + value?: BufferSource; +} + +interface WebTransportOptions { + allowPooling?: boolean; + congestionControl?: WebTransportCongestionControl; + requireUnreliable?: boolean; + serverCertificateHashes?: WebTransportHash[]; +} + +interface WebTransportSendStreamOptions { + sendOrder?: number | null; +} + interface WheelEventInit extends MouseEventInit { deltaMode?: number; deltaX?: number; @@ -3359,6 +3390,7 @@ declare var CSSKeyframeRule: { interface CSSKeyframesRule extends CSSRule { /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/cssRules) */ readonly cssRules: CSSRuleList; + readonly length: number; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/name) */ name: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/appendRule) */ @@ -3579,7 +3611,7 @@ interface CSSNumericValue extends CSSStyleValue { declare var CSSNumericValue: { prototype: CSSNumericValue; new(): CSSNumericValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/parse) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/parse_static) */ parse(cssText: string): CSSNumericValue; }; @@ -4980,12 +5012,15 @@ declare var CSSStyleDeclaration: { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule) */ interface CSSStyleRule extends CSSRule { + readonly cssRules: CSSRuleList; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/selectorText) */ selectorText: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/style) */ readonly style: CSSStyleDeclaration; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/styleMap) */ readonly styleMap: StylePropertyMap; + deleteRule(index: number): void; + insertRule(rule: string, index?: number): number; } declare var CSSStyleRule: { @@ -5044,9 +5079,9 @@ interface CSSStyleValue { declare var CSSStyleValue: { prototype: CSSStyleValue; new(): CSSStyleValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parse) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parse_static) */ parse(property: string, cssText: string): CSSStyleValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parseAll) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parseAll_static) */ parseAll(property: string, cssText: string): CSSStyleValue[]; }; @@ -6158,7 +6193,7 @@ interface DOMPoint extends DOMPointReadOnly { declare var DOMPoint: { prototype: DOMPoint; new(x?: number, y?: number, z?: number, w?: number): DOMPoint; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPoint; }; @@ -6184,7 +6219,7 @@ interface DOMPointReadOnly { declare var DOMPointReadOnly: { prototype: DOMPointReadOnly; new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPointReadOnly; }; @@ -6262,7 +6297,7 @@ interface DOMRectReadOnly { declare var DOMRectReadOnly: { prototype: DOMRectReadOnly; new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */ fromRect(other?: DOMRectInit): DOMRectReadOnly; }; @@ -7102,6 +7137,7 @@ interface Document extends Node, DocumentOrShadowRoot, FontFaceSource, GlobalEve createEvent(eventInterface: "SpeechSynthesisEvent"): SpeechSynthesisEvent; createEvent(eventInterface: "StorageEvent"): StorageEvent; createEvent(eventInterface: "SubmitEvent"): SubmitEvent; + createEvent(eventInterface: "ToggleEvent"): ToggleEvent; createEvent(eventInterface: "TouchEvent"): TouchEvent; createEvent(eventInterface: "TrackEvent"): TrackEvent; createEvent(eventInterface: "TransitionEvent"): TransitionEvent; @@ -9021,7 +9057,7 @@ interface GlobalEventHandlers { * Fires when an error occurs during object loading. * @param ev The event. * - * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/error_event) + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event) */ onerror: OnErrorEventHandler; /** @@ -9620,7 +9656,7 @@ declare var HTMLBodyElement: { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement) */ -interface HTMLButtonElement extends HTMLElement { +interface HTMLButtonElement extends HTMLElement, PopoverInvokerElement { /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/disabled) */ disabled: boolean; /** @@ -10016,6 +10052,8 @@ interface HTMLElement extends Element, ElementCSSInlineStyle, ElementContentEdit readonly offsetWidth: number; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText) */ outerText: string; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/popover) */ + popover: string | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/spellcheck) */ spellcheck: boolean; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/title) */ @@ -10025,6 +10063,12 @@ interface HTMLElement extends Element, ElementCSSInlineStyle, ElementContentEdit attachInternals(): ElementInternals; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/click) */ click(): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidePopover) */ + hidePopover(): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/showPopover) */ + showPopover(): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/togglePopover) */ + togglePopover(force?: boolean): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; @@ -10869,7 +10913,7 @@ declare var HTMLImageElement: { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement) */ -interface HTMLInputElement extends HTMLElement { +interface HTMLInputElement extends HTMLElement, PopoverInvokerElement { /** Sets or retrieves a comma-separated list of content types. */ accept: string; /** @@ -12254,7 +12298,7 @@ interface HTMLScriptElement extends HTMLElement { declare var HTMLScriptElement: { prototype: HTMLScriptElement; new(): HTMLScriptElement; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/supports) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/supports_static) */ supports(type: string): boolean; }; @@ -14215,6 +14259,8 @@ interface InnerHTML { * [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputDeviceInfo) */ interface InputDeviceInfo extends MediaDeviceInfo { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputDeviceInfo/getCapabilities) */ + getCapabilities(): MediaTrackCapabilities; } declare var InputDeviceInfo: { @@ -16328,6 +16374,8 @@ interface Notification extends EventTarget { onerror: ((this: Notification, ev: Event) => any) | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */ onshow: ((this: Notification, ev: Event) => any) | null; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */ + readonly silent: boolean | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */ readonly tag: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */ @@ -16345,7 +16393,7 @@ declare var Notification: { new(title: string, options?: NotificationOptions): Notification; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/permission_static) */ readonly permission: NotificationPermission; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requestPermission) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requestPermission_static) */ requestPermission(deprecatedCallback?: NotificationPermissionCallback): Promise; }; @@ -17563,6 +17611,13 @@ declare var PopStateEvent: { new(type: string, eventInitDict?: PopStateEventInit): PopStateEvent; }; +interface PopoverInvokerElement { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetAction) */ + popoverTargetAction: string; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetElement) */ + popoverTargetElement: Element | null; +} + /** * A processing instruction embeds application-specific instructions in XML which can be ignored by other applications that don't recognize them. * @@ -17653,7 +17708,7 @@ interface PushManager { declare var PushManager: { prototype: PushManager; new(): PushManager; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */ readonly supportedContentEncodings: ReadonlyArray; }; @@ -18158,7 +18213,7 @@ interface RTCRtpReceiver { declare var RTCRtpReceiver: { prototype: RTCRtpReceiver; new(): RTCRtpReceiver; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getCapabilities) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getCapabilities_static) */ getCapabilities(kind: string): RTCRtpCapabilities | null; }; @@ -18189,7 +18244,7 @@ interface RTCRtpSender { declare var RTCRtpSender: { prototype: RTCRtpSender; new(): RTCRtpSender; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static) */ getCapabilities(kind: string): RTCRtpCapabilities | null; }; @@ -18736,7 +18791,7 @@ declare var Response: { new(body?: BodyInit | null, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */ error(): Response; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */ json(data: any, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */ redirect(url: string | URL, status?: number): Response; @@ -20903,8 +20958,6 @@ interface ScreenOrientation extends EventTarget { onchange: ((this: ScreenOrientation, ev: Event) => any) | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/type) */ readonly type: OrientationType; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/lock) */ - lock(orientation: OrientationLockType): Promise; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/unlock) */ unlock(): void; addEventListener(type: K, listener: (this: ScreenOrientation, ev: ScreenOrientationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; @@ -22216,6 +22269,19 @@ declare var TimeRanges: { new(): TimeRanges; }; +/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent) */ +interface ToggleEvent extends Event { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/newState) */ + readonly newState: string; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/oldState) */ + readonly oldState: string; +} + +declare var ToggleEvent: { + prototype: ToggleEvent; + new(type: string, eventInitDict?: ToggleEventInit): ToggleEvent; +}; + /** * A single contact point on a touch-sensitive device. The contact point is commonly a finger or stylus and the device may be a touchscreen or trackpad. * @@ -22468,6 +22534,8 @@ interface URL { declare var URL: { prototype: URL; new(url: string | URL, base?: string | URL): URL; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ + canParse(url: string | URL, base?: string): boolean; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */ createObjectURL(obj: Blob | MediaSource): string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */ @@ -25343,6 +25411,96 @@ declare var WebSocket: { readonly CLOSED: 3; }; +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport) + */ +interface WebTransport { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */ + readonly closed: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */ + readonly datagrams: WebTransportDatagramDuplexStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */ + readonly incomingBidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */ + readonly incomingUnidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */ + readonly ready: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */ + close(closeInfo?: WebTransportCloseInfo): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */ + createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */ + createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise; +} + +declare var WebTransport: { + prototype: WebTransport; + new(url: string | URL, options?: WebTransportOptions): WebTransport; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream) + */ +interface WebTransportBidirectionalStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportBidirectionalStream: { + prototype: WebTransportBidirectionalStream; + new(): WebTransportBidirectionalStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream) + */ +interface WebTransportDatagramDuplexStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */ + incomingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */ + incomingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */ + readonly maxDatagramSize: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */ + outgoingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */ + outgoingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportDatagramDuplexStream: { + prototype: WebTransportDatagramDuplexStream; + new(): WebTransportDatagramDuplexStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError) + */ +interface WebTransportError extends DOMException { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */ + readonly source: WebTransportErrorSource; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */ + readonly streamErrorCode: number | null; +} + +declare var WebTransportError: { + prototype: WebTransportError; + new(message?: string, options?: WebTransportErrorOptions): WebTransportError; +}; + /** * Events that occur due to the user moving a mouse wheel or similar input device. * @@ -26286,96 +26444,120 @@ declare var console: Console; /** Holds useful CSS-related methods. No object with this interface are implemented: it contains only static methods and therefore is a utilitarian interface. */ declare namespace CSS { - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/Hz) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function Hz(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/Q) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function Q(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/ch) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function ch(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/cm) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cm(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqb(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqh(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqi(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqmax(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqmin(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function cqw(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/deg) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function deg(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/dpcm) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dpcm(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/dpi) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dpi(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/dppx) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dppx(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvb(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvh(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvi(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvmax(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvmin(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function dvw(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/em) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function em(value: number): CSSUnitValue; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/escape_static) */ function escape(ident: string): string; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/ex) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function ex(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/fr) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function fr(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/grad) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function grad(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/kHz) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function kHz(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvb(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvh(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvi(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvmax(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvmin(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function lvw(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/mm) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function mm(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/ms) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function ms(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/number) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function number(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/pc) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function pc(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/percent) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function percent(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/pt) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function pt(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/px) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function px(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/rad) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function rad(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/registerProperty) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/registerProperty_static) */ function registerProperty(definition: PropertyDefinition): void; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/rem) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function rem(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/s) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function s(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/supports) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/supports_static) */ function supports(property: string, value: string): boolean; function supports(conditionText: string): boolean; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svb(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svh(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svi(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svmax(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svmin(value: number): CSSUnitValue; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function svw(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/turn) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function turn(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vb) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vb(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vh) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vh(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vi) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vi(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vmax) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vmax(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vmin) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vmin(value: number): CSSUnitValue; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/vw) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */ function vw(value: number): CSSUnitValue; } @@ -27370,7 +27552,7 @@ declare var onended: ((this: Window, ev: Event) => any) | null; * Fires when an error occurs during object loading. * @param ev The event. * - * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/error_event) + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event) */ declare var onerror: OnErrorEventHandler; /** @@ -27900,7 +28082,6 @@ type NavigationTimingType = "back_forward" | "navigate" | "prerender" | "reload" type NotificationDirection = "auto" | "ltr" | "rtl"; type NotificationPermission = "default" | "denied" | "granted"; type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu"; -type OrientationLockType = "any" | "landscape" | "landscape-primary" | "landscape-secondary" | "natural" | "portrait" | "portrait-primary" | "portrait-secondary"; type OrientationType = "landscape-primary" | "landscape-secondary" | "portrait-primary" | "portrait-secondary"; type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle"; type OverSampleType = "2x" | "4x" | "none"; @@ -27938,7 +28119,7 @@ type RTCSctpTransportState = "closed" | "connected" | "connecting"; type RTCSdpType = "answer" | "offer" | "pranswer" | "rollback"; type RTCSignalingState = "closed" | "have-local-offer" | "have-local-pranswer" | "have-remote-offer" | "have-remote-pranswer" | "stable"; type RTCStatsIceCandidatePairState = "failed" | "frozen" | "in-progress" | "inprogress" | "succeeded" | "waiting"; -type RTCStatsType = "candidate-pair" | "certificate" | "codec" | "data-channel" | "inbound-rtp" | "local-candidate" | "media-source" | "outbound-rtp" | "peer-connection" | "remote-candidate" | "remote-inbound-rtp" | "remote-outbound-rtp" | "track" | "transport"; +type RTCStatsType = "candidate-pair" | "certificate" | "codec" | "data-channel" | "inbound-rtp" | "local-candidate" | "media-source" | "outbound-rtp" | "peer-connection" | "remote-candidate" | "remote-inbound-rtp" | "remote-outbound-rtp" | "transport"; type ReadableStreamReaderMode = "byob"; type ReadableStreamType = "bytes"; type ReadyState = "closed" | "ended" | "open"; @@ -27978,6 +28159,8 @@ type VideoPixelFormat = "BGRA" | "BGRX" | "I420" | "I420A" | "I422" | "I444" | " type VideoTransferCharacteristics = "bt709" | "iec61966-2-1" | "smpte170m"; type WakeLockType = "screen"; type WebGLPowerPreference = "default" | "high-performance" | "low-power"; +type WebTransportCongestionControl = "default" | "low-latency" | "throughput"; +type WebTransportErrorSource = "session" | "stream"; type WorkerType = "classic" | "module"; type WriteCommandType = "seek" | "truncate" | "write"; type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text"; diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index 5e1dbffb3..d50c1aabb 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -417,7 +417,7 @@ interface NotificationOptions { lang?: string; renotify?: boolean; requireInteraction?: boolean; - silent?: boolean; + silent?: boolean | null; tag?: string; timestamp?: EpochTimeStamp; vibrate?: VibratePattern; @@ -722,6 +722,32 @@ interface WebGLContextEventInit extends EventInit { statusMessage?: string; } +interface WebTransportCloseInfo { + closeCode?: number; + reason?: string; +} + +interface WebTransportErrorOptions { + source?: WebTransportErrorSource; + streamErrorCode?: number | null; +} + +interface WebTransportHash { + algorithm?: string; + value?: BufferSource; +} + +interface WebTransportOptions { + allowPooling?: boolean; + congestionControl?: WebTransportCongestionControl; + requireUnreliable?: boolean; + serverCertificateHashes?: WebTransportHash[]; +} + +interface WebTransportSendStreamOptions { + sendOrder?: number | null; +} + interface WriteParams { data?: BufferSource | Blob | string | null; position?: number | null; @@ -1930,7 +1956,7 @@ interface DOMPoint extends DOMPointReadOnly { declare var DOMPoint: { prototype: DOMPoint; new(x?: number, y?: number, z?: number, w?: number): DOMPoint; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPoint; }; @@ -1953,7 +1979,7 @@ interface DOMPointReadOnly { declare var DOMPointReadOnly: { prototype: DOMPointReadOnly; new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPointReadOnly; }; @@ -2017,7 +2043,7 @@ interface DOMRectReadOnly { declare var DOMRectReadOnly: { prototype: DOMRectReadOnly; new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */ fromRect(other?: DOMRectInit): DOMRectReadOnly; }; @@ -3844,6 +3870,8 @@ interface Notification extends EventTarget { onerror: ((this: Notification, ev: Event) => any) | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */ onshow: ((this: Notification, ev: Event) => any) | null; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */ + readonly silent: boolean | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */ readonly tag: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */ @@ -4371,7 +4399,7 @@ interface PushManager { declare var PushManager: { prototype: PushManager; new(): PushManager; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */ readonly supportedContentEncodings: ReadonlyArray; }; @@ -4716,7 +4744,7 @@ declare var Response: { new(body?: BodyInit | null, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */ error(): Response; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */ json(data: any, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */ redirect(url: string | URL, status?: number): Response; @@ -5239,6 +5267,8 @@ interface URL { declare var URL: { prototype: URL; new(url: string | URL, base?: string | URL): URL; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ + canParse(url: string | URL, base?: string): boolean; }; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */ @@ -7746,6 +7776,96 @@ declare var WebSocket: { readonly CLOSED: 3; }; +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport) + */ +interface WebTransport { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */ + readonly closed: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */ + readonly datagrams: WebTransportDatagramDuplexStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */ + readonly incomingBidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */ + readonly incomingUnidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */ + readonly ready: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */ + close(closeInfo?: WebTransportCloseInfo): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */ + createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */ + createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise; +} + +declare var WebTransport: { + prototype: WebTransport; + new(url: string | URL, options?: WebTransportOptions): WebTransport; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream) + */ +interface WebTransportBidirectionalStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportBidirectionalStream: { + prototype: WebTransportBidirectionalStream; + new(): WebTransportBidirectionalStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream) + */ +interface WebTransportDatagramDuplexStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */ + incomingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */ + incomingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */ + readonly maxDatagramSize: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */ + outgoingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */ + outgoingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportDatagramDuplexStream: { + prototype: WebTransportDatagramDuplexStream; + new(): WebTransportDatagramDuplexStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError) + */ +interface WebTransportError extends DOMException { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */ + readonly source: WebTransportErrorSource; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */ + readonly streamErrorCode: number | null; +} + +declare var WebTransportError: { + prototype: WebTransportError; + new(message?: string, options?: WebTransportErrorOptions): WebTransportError; +}; + /** * This ServiceWorker API interface represents the scope of a service worker client that is a document in a browser context, controlled by an active worker. The service worker client independently selects and uses a service worker for its own loading and sub-resources. * @@ -8485,5 +8605,7 @@ type ServiceWorkerState = "activated" | "activating" | "installed" | "installing type ServiceWorkerUpdateViaCache = "all" | "imports" | "none"; type TransferFunction = "hlg" | "pq" | "srgb"; type WebGLPowerPreference = "default" | "high-performance" | "low-power"; +type WebTransportCongestionControl = "default" | "low-latency" | "throughput"; +type WebTransportErrorSource = "session" | "stream"; type WorkerType = "classic" | "module"; type WriteCommandType = "seek" | "truncate" | "write"; diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index c8cd8e07c..f13655152 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -387,7 +387,7 @@ interface NotificationOptions { lang?: string; renotify?: boolean; requireInteraction?: boolean; - silent?: boolean; + silent?: boolean | null; tag?: string; timestamp?: EpochTimeStamp; vibrate?: VibratePattern; @@ -688,6 +688,32 @@ interface WebGLContextEventInit extends EventInit { statusMessage?: string; } +interface WebTransportCloseInfo { + closeCode?: number; + reason?: string; +} + +interface WebTransportErrorOptions { + source?: WebTransportErrorSource; + streamErrorCode?: number | null; +} + +interface WebTransportHash { + algorithm?: string; + value?: BufferSource; +} + +interface WebTransportOptions { + allowPooling?: boolean; + congestionControl?: WebTransportCongestionControl; + requireUnreliable?: boolean; + serverCertificateHashes?: WebTransportHash[]; +} + +interface WebTransportSendStreamOptions { + sendOrder?: number | null; +} + interface WorkerOptions { credentials?: RequestCredentials; name?: string; @@ -1857,7 +1883,7 @@ interface DOMPoint extends DOMPointReadOnly { declare var DOMPoint: { prototype: DOMPoint; new(x?: number, y?: number, z?: number, w?: number): DOMPoint; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPoint; }; @@ -1880,7 +1906,7 @@ interface DOMPointReadOnly { declare var DOMPointReadOnly: { prototype: DOMPointReadOnly; new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPointReadOnly; }; @@ -1944,7 +1970,7 @@ interface DOMRectReadOnly { declare var DOMRectReadOnly: { prototype: DOMRectReadOnly; new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */ fromRect(other?: DOMRectInit): DOMRectReadOnly; }; @@ -3733,6 +3759,8 @@ interface Notification extends EventTarget { onerror: ((this: Notification, ev: Event) => any) | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */ onshow: ((this: Notification, ev: Event) => any) | null; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */ + readonly silent: boolean | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */ readonly tag: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */ @@ -4227,7 +4255,7 @@ interface PushManager { declare var PushManager: { prototype: PushManager; new(): PushManager; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */ readonly supportedContentEncodings: ReadonlyArray; }; @@ -4550,7 +4578,7 @@ declare var Response: { new(body?: BodyInit | null, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */ error(): Response; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */ json(data: any, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */ redirect(url: string | URL, status?: number): Response; @@ -5050,6 +5078,8 @@ interface URL { declare var URL: { prototype: URL; new(url: string | URL, base?: string | URL): URL; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ + canParse(url: string | URL, base?: string): boolean; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */ createObjectURL(obj: Blob): string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */ @@ -7561,6 +7591,96 @@ declare var WebSocket: { readonly CLOSED: 3; }; +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport) + */ +interface WebTransport { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */ + readonly closed: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */ + readonly datagrams: WebTransportDatagramDuplexStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */ + readonly incomingBidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */ + readonly incomingUnidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */ + readonly ready: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */ + close(closeInfo?: WebTransportCloseInfo): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */ + createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */ + createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise; +} + +declare var WebTransport: { + prototype: WebTransport; + new(url: string | URL, options?: WebTransportOptions): WebTransport; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream) + */ +interface WebTransportBidirectionalStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportBidirectionalStream: { + prototype: WebTransportBidirectionalStream; + new(): WebTransportBidirectionalStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream) + */ +interface WebTransportDatagramDuplexStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */ + incomingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */ + incomingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */ + readonly maxDatagramSize: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */ + outgoingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */ + outgoingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportDatagramDuplexStream: { + prototype: WebTransportDatagramDuplexStream; + new(): WebTransportDatagramDuplexStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError) + */ +interface WebTransportError extends DOMException { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */ + readonly source: WebTransportErrorSource; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */ + readonly streamErrorCode: number | null; +} + +declare var WebTransportError: { + prototype: WebTransportError; + new(message?: string, options?: WebTransportErrorOptions): WebTransportError; +}; + interface WindowOrWorkerGlobalScope { /** * Available only in secure contexts. @@ -8491,6 +8611,8 @@ type ServiceWorkerState = "activated" | "activating" | "installed" | "installing type ServiceWorkerUpdateViaCache = "all" | "imports" | "none"; type TransferFunction = "hlg" | "pq" | "srgb"; type WebGLPowerPreference = "default" | "high-performance" | "low-power"; +type WebTransportCongestionControl = "default" | "low-latency" | "throughput"; +type WebTransportErrorSource = "session" | "stream"; type WorkerType = "classic" | "module"; type WriteCommandType = "seek" | "truncate" | "write"; type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text"; diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index 9cadb5e88..67e3bfd91 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -436,7 +436,7 @@ interface NotificationOptions { lang?: string; renotify?: boolean; requireInteraction?: boolean; - silent?: boolean; + silent?: boolean | null; tag?: string; timestamp?: EpochTimeStamp; vibrate?: VibratePattern; @@ -847,6 +847,32 @@ interface WebGLContextEventInit extends EventInit { statusMessage?: string; } +interface WebTransportCloseInfo { + closeCode?: number; + reason?: string; +} + +interface WebTransportErrorOptions { + source?: WebTransportErrorSource; + streamErrorCode?: number | null; +} + +interface WebTransportHash { + algorithm?: string; + value?: BufferSource; +} + +interface WebTransportOptions { + allowPooling?: boolean; + congestionControl?: WebTransportCongestionControl; + requireUnreliable?: boolean; + serverCertificateHashes?: WebTransportHash[]; +} + +interface WebTransportSendStreamOptions { + sendOrder?: number | null; +} + interface WorkerOptions { credentials?: RequestCredentials; name?: string; @@ -2066,7 +2092,7 @@ interface DOMPoint extends DOMPointReadOnly { declare var DOMPoint: { prototype: DOMPoint; new(x?: number, y?: number, z?: number, w?: number): DOMPoint; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPoint; }; @@ -2089,7 +2115,7 @@ interface DOMPointReadOnly { declare var DOMPointReadOnly: { prototype: DOMPointReadOnly; new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */ fromPoint(other?: DOMPointInit): DOMPointReadOnly; }; @@ -2153,7 +2179,7 @@ interface DOMRectReadOnly { declare var DOMRectReadOnly: { prototype: DOMRectReadOnly; new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */ fromRect(other?: DOMRectInit): DOMRectReadOnly; }; @@ -4096,6 +4122,8 @@ interface Notification extends EventTarget { onerror: ((this: Notification, ev: Event) => any) | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */ onshow: ((this: Notification, ev: Event) => any) | null; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */ + readonly silent: boolean | null; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */ readonly tag: string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */ @@ -4623,7 +4651,7 @@ interface PushManager { declare var PushManager: { prototype: PushManager; new(): PushManager; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */ readonly supportedContentEncodings: ReadonlyArray; }; @@ -4991,7 +5019,7 @@ declare var Response: { new(body?: BodyInit | null, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */ error(): Response; - /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json) */ + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */ json(data: any, init?: ResponseInit): Response; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */ redirect(url: string | URL, status?: number): Response; @@ -5545,6 +5573,8 @@ interface URL { declare var URL: { prototype: URL; new(url: string | URL, base?: string | URL): URL; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ + canParse(url: string | URL, base?: string): boolean; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */ createObjectURL(obj: Blob): string; /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */ @@ -8185,6 +8215,96 @@ declare var WebSocket: { readonly CLOSED: 3; }; +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport) + */ +interface WebTransport { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */ + readonly closed: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */ + readonly datagrams: WebTransportDatagramDuplexStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */ + readonly incomingBidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */ + readonly incomingUnidirectionalStreams: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */ + readonly ready: Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */ + close(closeInfo?: WebTransportCloseInfo): void; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */ + createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */ + createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise; +} + +declare var WebTransport: { + prototype: WebTransport; + new(url: string | URL, options?: WebTransportOptions): WebTransport; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream) + */ +interface WebTransportBidirectionalStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportBidirectionalStream: { + prototype: WebTransportBidirectionalStream; + new(): WebTransportBidirectionalStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream) + */ +interface WebTransportDatagramDuplexStream { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */ + incomingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */ + incomingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */ + readonly maxDatagramSize: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */ + outgoingHighWaterMark: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */ + outgoingMaxAge: number; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */ + readonly readable: ReadableStream; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */ + readonly writable: WritableStream; +} + +declare var WebTransportDatagramDuplexStream: { + prototype: WebTransportDatagramDuplexStream; + new(): WebTransportDatagramDuplexStream; +}; + +/** + * Available only in secure contexts. + * + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError) + */ +interface WebTransportError extends DOMException { + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */ + readonly source: WebTransportErrorSource; + /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */ + readonly streamErrorCode: number | null; +} + +declare var WebTransportError: { + prototype: WebTransportError; + new(message?: string, options?: WebTransportErrorOptions): WebTransportError; +}; + /** * This ServiceWorker API interface represents the scope of a service worker client that is a document in a browser context, controlled by an active worker. The service worker client independently selects and uses a service worker for its own loading and sub-resources. * @@ -9178,6 +9298,8 @@ type VideoMatrixCoefficients = "bt470bg" | "bt709" | "rgb" | "smpte170m"; type VideoPixelFormat = "BGRA" | "BGRX" | "I420" | "I420A" | "I422" | "I444" | "NV12" | "RGBA" | "RGBX"; type VideoTransferCharacteristics = "bt709" | "iec61966-2-1" | "smpte170m"; type WebGLPowerPreference = "default" | "high-performance" | "low-power"; +type WebTransportCongestionControl = "default" | "low-latency" | "throughput"; +type WebTransportErrorSource = "session" | "stream"; type WorkerType = "classic" | "module"; type WriteCommandType = "seek" | "truncate" | "write"; type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text"; diff --git a/inputfiles/addedTypes.jsonc b/inputfiles/addedTypes.jsonc index cb11cbb67..c2d236a40 100644 --- a/inputfiles/addedTypes.jsonc +++ b/inputfiles/addedTypes.jsonc @@ -346,7 +346,6 @@ "persistent-storage", // https://developer.mozilla.org/en-US/docs/Web/API/Push_API#browser_compatibility "push", - // Wake Lock is actually Blink-only, but for now let's keep it here for backward compatibility. // https://developer.mozilla.org/en-US/docs/Web/API/Screen_Wake_Lock_API#browser_compatibility "screen-wake-lock", // WebXR is also actually Blink-only diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index 007418e4b..640982f05 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -627,6 +627,33 @@ }, "overrideIndexSignatures": [] }, + "WebTransport": { + "methods": { + "method": { + "createUnidirectionalStream": { + "signature": { + "0": { + "subtype": { + "type": "WritableStream" + } + } + } + } + } + } + }, + "WebTransportBidirectionalStream": { + "properties": { + "property": { + "readable": { + "type": "ReadableStream" + }, + "writable": { + "type": "WritableStream" + } + } + } + }, "Document": { "methods": { "method": { diff --git a/package-lock.json b/package-lock.json index 8626fef68..2a4a71fa8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "devDependencies": { "@mdn/browser-compat-data": "^5.2.52", "@octokit/rest": "^19.0.7", - "@types/node": "^18.15.13", + "@types/node": "^18.16.18", "@types/prettier": "^2.7.2", "@types/webidl2": "^23.13.6", "@typescript-eslint/eslint-plugin": "^5.59.0", @@ -104,9 +104,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.40.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.40.0.tgz", - "integrity": "sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", + "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -159,9 +159,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -214,9 +214,9 @@ "dev": true }, "node_modules/@mdn/browser-compat-data": { - "version": "5.2.57", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.2.57.tgz", - "integrity": "sha512-ED1+lSPglyGjBVPubg44h7nIzZK/Oc3lUI/rEZ+xDWmSY/LRKFINdJKYdGnViy/R7LXa3EGDKFSC9jXG6mfaiQ==", + "version": "5.2.64", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.2.64.tgz", + "integrity": "sha512-hWmFRrdAqOpz0eTuWLh61b6ZKIkZ5+7Nga4EaTvu2Kv2N09ZDQQEkmtHti6qziaM7TFXYYpj+vnJ3mrIb+zisA==", "dev": true }, "node_modules/@nodelib/fs.scandir": { @@ -267,9 +267,9 @@ } }, "node_modules/@octokit/core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz", - "integrity": "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.1.tgz", + "integrity": "sha512-tEDxFx8E38zF3gT7sSMDrT1tGumDgsw5yPG6BBh/X+5ClIQfMH/Yqocxz1PnHx6CHyF6pxmovUTOfZAUvQ0Lvw==", "dev": true, "dependencies": { "@octokit/auth-token": "^3.0.0", @@ -313,18 +313,19 @@ } }, "node_modules/@octokit/openapi-types": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-17.1.0.tgz", - "integrity": "sha512-rnI26BAITDZTo5vqFOmA7oX4xRd18rO+gcK4MiTpJmsRMxAw0JmevNjPsjpry1bb9SVNo56P/0kbiyXXa4QluA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", + "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", "dev": true }, "node_modules/@octokit/plugin-paginate-rest": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz", - "integrity": "sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz", + "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0" + "@octokit/tsconfig": "^1.0.2", + "@octokit/types": "^9.2.3" }, "engines": { "node": ">= 14" @@ -343,13 +344,12 @@ } }, "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz", - "integrity": "sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.1.tgz", + "integrity": "sha512-UmlNrrcF+AXxcxhZslTt1a/8aDxUKH0trrt/mJCxEPrWbW1ZEc+6xxcd5/n0iw3b+Xo8UBJQUKDr71+vNCBpRQ==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", - "deprecation": "^2.3.1" + "@octokit/types": "^9.3.1" }, "engines": { "node": ">= 14" @@ -410,27 +410,33 @@ } }, "node_modules/@octokit/rest": { - "version": "19.0.7", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.7.tgz", - "integrity": "sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA==", + "version": "19.0.11", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz", + "integrity": "sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==", "dev": true, "dependencies": { - "@octokit/core": "^4.1.0", - "@octokit/plugin-paginate-rest": "^6.0.0", + "@octokit/core": "^4.2.1", + "@octokit/plugin-paginate-rest": "^6.1.2", "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^7.0.0" + "@octokit/plugin-rest-endpoint-methods": "^7.1.2" }, "engines": { "node": ">= 14" } }, + "node_modules/@octokit/tsconfig": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz", + "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==", + "dev": true + }, "node_modules/@octokit/types": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.2.0.tgz", - "integrity": "sha512-xySzJG4noWrIBFyMu4lg4tu9vAgNg9S0aoLRONhAEz6ueyi1evBzb40HitIosaYS4XOexphG305IVcLrIX/30g==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.1.tgz", + "integrity": "sha512-zfJzyXLHC42sWcn2kS+oZ/DRvFZBYCCbfInZtwp1Uopl1qh6pRg4NSP/wFX1xCOpXvEkctiG1sxlSlkZmzvxdw==", "dev": true, "dependencies": { - "@octokit/openapi-types": "^17.1.0" + "@octokit/openapi-types": "^18.0.0" } }, "node_modules/@sindresorhus/is": { @@ -485,9 +491,9 @@ "dev": true }, "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", "dev": true }, "node_modules/@types/keyv": { @@ -500,15 +506,15 @@ } }, "node_modules/@types/node": { - "version": "18.16.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.8.tgz", - "integrity": "sha512-p0iAXcfWCOTCBbsExHIDFCfwsqFwBTgETJveKMT+Ci3LY9YqQCI91F5S+TB20+aRCXpcWfvx5Qr5EccnwCm2NA==", + "version": "18.16.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.18.tgz", + "integrity": "sha512-/aNaQZD0+iSBAGnvvN2Cx92HqE5sZCPZtx2TsK+4nvV23fFe09jVDvpArXr2j9DnYlzuU9WuoykDDc6wqvpNcw==", "dev": true }, "node_modules/@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", "dev": true }, "node_modules/@types/responselike": { @@ -533,15 +539,15 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.5.tgz", - "integrity": "sha512-feA9xbVRWJZor+AnLNAr7A8JRWeZqHUf4T9tlP+TN04b05pFVhO5eN7/O93Y/1OUlLMHKbnJisgDURs/qvtqdg==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.11.tgz", + "integrity": "sha512-XxuOfTkCUiOSyBWIvHlUraLw/JT/6Io1365RO6ZuI88STKMavJZPNMU0lFcUTeQXEhHiv64CbxYxBNoDVSmghg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.59.5", - "@typescript-eslint/type-utils": "5.59.5", - "@typescript-eslint/utils": "5.59.5", + "@typescript-eslint/scope-manager": "5.59.11", + "@typescript-eslint/type-utils": "5.59.11", + "@typescript-eslint/utils": "5.59.11", "debug": "^4.3.4", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", @@ -567,14 +573,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.5.tgz", - "integrity": "sha512-NJXQC4MRnF9N9yWqQE2/KLRSOLvrrlZb48NGVfBa+RuPMN6B7ZcK5jZOvhuygv4D64fRKnZI4L4p8+M+rfeQuw==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.11.tgz", + "integrity": "sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.59.5", - "@typescript-eslint/types": "5.59.5", - "@typescript-eslint/typescript-estree": "5.59.5", + "@typescript-eslint/scope-manager": "5.59.11", + "@typescript-eslint/types": "5.59.11", + "@typescript-eslint/typescript-estree": "5.59.11", "debug": "^4.3.4" }, "engines": { @@ -594,13 +600,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.5.tgz", - "integrity": "sha512-jVecWwnkX6ZgutF+DovbBJirZcAxgxC0EOHYt/niMROf8p4PwxxG32Qdhj/iIQQIuOflLjNkxoXyArkcIP7C3A==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.11.tgz", + "integrity": "sha512-dHFOsxoLFtrIcSj5h0QoBT/89hxQONwmn3FOQ0GOQcLOOXm+MIrS8zEAhs4tWl5MraxCY3ZJpaXQQdFMc2Tu+Q==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.5", - "@typescript-eslint/visitor-keys": "5.59.5" + "@typescript-eslint/types": "5.59.11", + "@typescript-eslint/visitor-keys": "5.59.11" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -611,13 +617,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.5.tgz", - "integrity": "sha512-4eyhS7oGym67/pSxA2mmNq7X164oqDYNnZCUayBwJZIRVvKpBCMBzFnFxjeoDeShjtO6RQBHBuwybuX3POnDqg==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.11.tgz", + "integrity": "sha512-LZqVY8hMiVRF2a7/swmkStMYSoXMFlzL6sXV6U/2gL5cwnLWQgLEG8tjWPpaE4rMIdZ6VKWwcffPlo1jPfk43g==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.59.5", - "@typescript-eslint/utils": "5.59.5", + "@typescript-eslint/typescript-estree": "5.59.11", + "@typescript-eslint/utils": "5.59.11", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -638,9 +644,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.5.tgz", - "integrity": "sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.11.tgz", + "integrity": "sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -651,13 +657,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz", - "integrity": "sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.11.tgz", + "integrity": "sha512-YupOpot5hJO0maupJXixi6l5ETdrITxeo5eBOeuV7RSKgYdU3G5cxO49/9WRnJq9EMrB7AuTSLH/bqOsXi7wPA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.5", - "@typescript-eslint/visitor-keys": "5.59.5", + "@typescript-eslint/types": "5.59.11", + "@typescript-eslint/visitor-keys": "5.59.11", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -678,17 +684,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.5.tgz", - "integrity": "sha512-sCEHOiw+RbyTii9c3/qN74hYDPNORb8yWCoPLmB7BIflhplJ65u2PBpdRla12e3SSTJ2erRkPjz7ngLHhUegxA==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.11.tgz", + "integrity": "sha512-didu2rHSOMUdJThLk4aZ1Or8IcO3HzCw/ZvEjTTIfjIrcdd5cvSIwwDy2AOlE7htSNp7QIZ10fLMyRCveesMLg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.59.5", - "@typescript-eslint/types": "5.59.5", - "@typescript-eslint/typescript-estree": "5.59.5", + "@typescript-eslint/scope-manager": "5.59.11", + "@typescript-eslint/types": "5.59.11", + "@typescript-eslint/typescript-estree": "5.59.11", "eslint-scope": "^5.1.1", "semver": "^7.3.7" }, @@ -704,12 +710,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.59.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz", - "integrity": "sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA==", + "version": "5.59.11", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.11.tgz", + "integrity": "sha512-KGYniTGG3AMTuKF9QBD7EIrvufkB6O6uX3knP73xbKLMpH+QRPcgnCxjWXSHjMRuOxFLovljqQgQpR0c7GvjoA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.5", + "@typescript-eslint/types": "5.59.11", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -721,9 +727,9 @@ } }, "node_modules/@webref/css": { - "version": "6.5.6", - "resolved": "https://registry.npmjs.org/@webref/css/-/css-6.5.6.tgz", - "integrity": "sha512-q6inW0qCLrUE9aypg3cv1S53jN6ZT+bBTaW7JWXcB6OgXuOzVyEfr+E4J63huq8gzOWUvJB/dp36j7dcOZkOyw==", + "version": "6.5.9", + "resolved": "https://registry.npmjs.org/@webref/css/-/css-6.5.9.tgz", + "integrity": "sha512-18W1f3UduYndTpkQ40KkXchi0yB/llZuX+GR8b7QBQ/8Ly3otfbJiA9TYkm+WmGtYbeTP7hXjVvfUbPJ6aIGEw==", "dev": true, "peerDependencies": { "css-tree": "^2.3.1" @@ -736,12 +742,12 @@ "dev": true }, "node_modules/@webref/idl": { - "version": "3.34.0", - "resolved": "https://registry.npmjs.org/@webref/idl/-/idl-3.34.0.tgz", - "integrity": "sha512-2wU3j+CPGdVP9coreuigeFbTVEzG2Ynzgy0UHSuxfqgzGri7qIZaBSWAmyl/C3y4l7qRPZzpdurHZFrFd3JOIw==", + "version": "3.34.4", + "resolved": "https://registry.npmjs.org/@webref/idl/-/idl-3.34.4.tgz", + "integrity": "sha512-MHitfJxJSg6DAzGbyddcEtddqvY6Xexv72KXq32RtmdVyvBntr/IOYFbRa8h7NMgmylAEppr9AszpLAG5r8u0A==", "dev": true, "peerDependencies": { - "webidl2": "^24.2.2" + "webidl2": "^24.3.0" } }, "node_modules/acorn": { @@ -1461,16 +1467,16 @@ } }, "node_modules/eslint": { - "version": "8.40.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.40.0.tgz", - "integrity": "sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", + "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.40.0", - "@humanwhocodes/config-array": "^0.11.8", + "@eslint/js": "8.42.0", + "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", @@ -1489,13 +1495,12 @@ "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", + "graphemer": "^1.4.0", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -2223,6 +2228,12 @@ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", "dev": true }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -2451,16 +2462,6 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/js-sdsl": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", - "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -3752,16 +3753,16 @@ } }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.3.tgz", + "integrity": "sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==", "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" } }, "node_modules/universal-user-agent": { @@ -3813,10 +3814,13 @@ "dev": true }, "node_modules/webidl2": { - "version": "24.2.2", - "resolved": "https://registry.npmjs.org/webidl2/-/webidl2-24.2.2.tgz", - "integrity": "sha512-4l1lBuUqfNBZDzQfG0dpM2haInTZ+IRnXwbWn9Oc49boPTlXQS8Hpg4GK4kE7M+504ZUKCwzBxtQR/0wPVokUw==", - "dev": true + "version": "24.3.0", + "resolved": "https://registry.npmjs.org/webidl2/-/webidl2-24.3.0.tgz", + "integrity": "sha512-u42I31V2xQSBPCLtjFdk98cb06gTVnfPmq8eNDmcM3iaqtDdvY+GF5ZLPg3hEL/h6K50fsgPt+2YXFysSq8wcw==", + "dev": true, + "engines": { + "node": ">= 14" + } }, "node_modules/whatwg-url": { "version": "5.0.0", diff --git a/src/build/bcd/mapper.ts b/src/build/bcd/mapper.ts index 6c63cadb4..e72f0e31f 100644 --- a/src/build/bcd/mapper.ts +++ b/src/build/bcd/mapper.ts @@ -82,8 +82,15 @@ function mapInterfaceLike( mixin: !!i.mixin, }); }; - const methods = filterMapRecord(i.methods?.method, recordMapper); - const properties = filterMapRecord(i.properties?.property, recordMapper); + // https://github.com/mdn/browser-compat-data/issues/20114 for inconsistent static member problem + const needsStatic = + name === "CSS" ? true : name === "Module" ? false : undefined; + const methods = filterMapRecord(i.methods?.method, recordMapper, needsStatic); + const properties = filterMapRecord( + i.properties?.property, + recordMapper, + needsStatic + ); if (i.iterator) { const iteratorKey = i.iterator.async ? "@@asyncIterator" : "@@iterator"; diff --git a/src/build/utils/record.ts b/src/build/utils/record.ts index bda0a89b4..09ed6f361 100644 --- a/src/build/utils/record.ts +++ b/src/build/utils/record.ts @@ -1,13 +1,20 @@ -export function filterMapRecord( +export function filterMapRecord( object: Record | undefined, - mapper: (key: string, value: T) => V | undefined + mapper: (key: string, value: T) => V | undefined, + needsStatic?: boolean ): Record | undefined { if (!object) { return; } const result = {} as Record; for (const [key, value] of Object.entries(object)) { - const newValue = mapper(key, value); + const mdnKey = + needsStatic === false + ? key + : needsStatic === true || ("static" in value && value.static) + ? `${key}_static` + : key; + const newValue = mapper(mdnKey, value); if (newValue !== undefined) { result[key] = newValue; }