Skip to content

Commit c5ad7c3

Browse files
hexrcsorta
andauthored
Fix missing optional parameter of createImageBitmap (#571)
* Add ImageBitmapSource types Different for Window or WorkerGlobalScope * Modify widl for ImageBitmap * Remove conflicting defs in json * Fix typo * Remove confliting ImageBitmapOptions in json * Update generated baseline files * Revert widl files to unmodified state * Update widl via fetch-idl script * Build and run baseline test Co-authored-by: Orta <[email protected]>
1 parent 4a32410 commit c5ad7c3

File tree

3 files changed

+34
-65
lines changed

3 files changed

+34
-65
lines changed

baselines/dom.generated.d.ts

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -580,6 +580,15 @@ interface IIRFilterOptions extends AudioNodeOptions {
580580
feedforward: number[];
581581
}
582582

583+
interface ImageBitmapOptions {
584+
colorSpaceConversion?: ColorSpaceConversion;
585+
imageOrientation?: ImageOrientation;
586+
premultiplyAlpha?: PremultiplyAlpha;
587+
resizeHeight?: number;
588+
resizeQuality?: ResizeQuality;
589+
resizeWidth?: number;
590+
}
591+
583592
interface ImageBitmapRenderingContextSettings {
584593
alpha?: boolean;
585594
}
@@ -9754,15 +9763,6 @@ declare var ImageBitmap: {
97549763
new(): ImageBitmap;
97559764
};
97569765

9757-
interface ImageBitmapOptions {
9758-
colorSpaceConversion?: "none" | "default";
9759-
imageOrientation?: "none" | "flipY";
9760-
premultiplyAlpha?: "none" | "premultiply" | "default";
9761-
resizeHeight?: number;
9762-
resizeQuality?: "pixelated" | "low" | "medium" | "high";
9763-
resizeWidth?: number;
9764-
}
9765-
97669766
interface ImageBitmapRenderingContext {
97679767
/**
97689768
* Returns the canvas element that the context is bound to.
@@ -18781,8 +18781,8 @@ interface WindowOrWorkerGlobalScope {
1878118781
btoa(data: string): string;
1878218782
clearInterval(handle?: number): void;
1878318783
clearTimeout(handle?: number): void;
18784-
createImageBitmap(image: ImageBitmapSource): Promise<ImageBitmap>;
18785-
createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number): Promise<ImageBitmap>;
18784+
createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
18785+
createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
1878618786
fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
1878718787
queueMicrotask(callback: VoidFunction): void;
1878818788
setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
@@ -19983,8 +19983,8 @@ declare function atob(data: string): string;
1998319983
declare function btoa(data: string): string;
1998419984
declare function clearInterval(handle?: number): void;
1998519985
declare function clearTimeout(handle?: number): void;
19986-
declare function createImageBitmap(image: ImageBitmapSource): Promise<ImageBitmap>;
19987-
declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number): Promise<ImageBitmap>;
19986+
declare function createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
19987+
declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
1998819988
declare function fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
1998919989
declare function queueMicrotask(callback: VoidFunction): void;
1999019990
declare function setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
@@ -20093,6 +20093,7 @@ type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" |
2009320093
type ChannelCountMode = "clamped-max" | "explicit" | "max";
2009420094
type ChannelInterpretation = "discrete" | "speakers";
2009520095
type ClientTypes = "all" | "sharedworker" | "window" | "worker";
20096+
type ColorSpaceConversion = "default" | "none";
2009620097
type CompositeOperation = "accumulate" | "add" | "replace";
2009720098
type CompositeOperationOrAuto = "accumulate" | "add" | "auto" | "replace";
2009820099
type CredentialMediationRequirement = "optional" | "required" | "silent";
@@ -20110,6 +20111,7 @@ type GamepadMappingType = "" | "standard";
2011020111
type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
2011120112
type IDBRequestReadyState = "done" | "pending";
2011220113
type IDBTransactionMode = "readonly" | "readwrite" | "versionchange";
20114+
type ImageOrientation = "flipY" | "none";
2011320115
type ImageSmoothingQuality = "high" | "low" | "medium";
2011420116
type IterationCompositeOperation = "accumulate" | "replace";
2011520117
type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
@@ -20143,6 +20145,7 @@ type PermissionName = "accelerometer" | "ambient-light-sensor" | "background-syn
2014320145
type PermissionState = "denied" | "granted" | "prompt";
2014420146
type PlaybackDirection = "alternate" | "alternate-reverse" | "normal" | "reverse";
2014520147
type PositionAlignSetting = "auto" | "center" | "line-left" | "line-right";
20148+
type PremultiplyAlpha = "default" | "none" | "premultiply";
2014620149
type PublicKeyCredentialType = "public-key";
2014720150
type PushEncryptionKeyName = "auth" | "p256dh";
2014820151
type PushPermissionState = "denied" | "granted" | "prompt";
@@ -20182,6 +20185,7 @@ type RequestCredentials = "include" | "omit" | "same-origin";
2018220185
type RequestDestination = "" | "audio" | "audioworklet" | "document" | "embed" | "font" | "image" | "manifest" | "object" | "paintworklet" | "report" | "script" | "sharedworker" | "style" | "track" | "video" | "worker" | "xslt";
2018320186
type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
2018420187
type RequestRedirect = "error" | "follow" | "manual";
20188+
type ResizeQuality = "high" | "low" | "medium" | "pixelated";
2018520189
type ResponseType = "basic" | "cors" | "default" | "error" | "opaque" | "opaqueredirect";
2018620190
type ScopedCredentialType = "ScopedCred";
2018720191
type ScrollBehavior = "auto" | "smooth";

baselines/webworker.generated.d.ts

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,15 @@ interface IDBVersionChangeEventInit extends EventInit {
219219
oldVersion?: number;
220220
}
221221

222+
interface ImageBitmapOptions {
223+
colorSpaceConversion?: ColorSpaceConversion;
224+
imageOrientation?: ImageOrientation;
225+
premultiplyAlpha?: PremultiplyAlpha;
226+
resizeHeight?: number;
227+
resizeQuality?: ResizeQuality;
228+
resizeWidth?: number;
229+
}
230+
222231
interface ImageBitmapRenderingContextSettings {
223232
alpha?: boolean;
224233
}
@@ -2178,15 +2187,6 @@ declare var ImageBitmap: {
21782187
new(): ImageBitmap;
21792188
};
21802189

2181-
interface ImageBitmapOptions {
2182-
colorSpaceConversion?: "none" | "default";
2183-
imageOrientation?: "none" | "flipY";
2184-
premultiplyAlpha?: "none" | "premultiply" | "default";
2185-
resizeHeight?: number;
2186-
resizeQuality?: "pixelated" | "low" | "medium" | "high";
2187-
resizeWidth?: number;
2188-
}
2189-
21902190
interface ImageBitmapRenderingContext {
21912191
/**
21922192
* Returns the canvas element that the context is bound to.
@@ -5375,8 +5375,8 @@ interface WindowOrWorkerGlobalScope {
53755375
btoa(data: string): string;
53765376
clearInterval(handle?: number): void;
53775377
clearTimeout(handle?: number): void;
5378-
createImageBitmap(image: ImageBitmapSource): Promise<ImageBitmap>;
5379-
createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number): Promise<ImageBitmap>;
5378+
createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
5379+
createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
53805380
fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
53815381
queueMicrotask(callback: VoidFunction): void;
53825382
setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
@@ -5838,8 +5838,8 @@ declare function atob(data: string): string;
58385838
declare function btoa(data: string): string;
58395839
declare function clearInterval(handle?: number): void;
58405840
declare function clearTimeout(handle?: number): void;
5841-
declare function createImageBitmap(image: ImageBitmapSource): Promise<ImageBitmap>;
5842-
declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number): Promise<ImageBitmap>;
5841+
declare function createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
5842+
declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
58435843
declare function fetch(input: RequestInfo, init?: RequestInit): Promise<Response>;
58445844
declare function queueMicrotask(callback: VoidFunction): void;
58455845
declare function setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
@@ -5897,11 +5897,13 @@ type CanvasLineJoin = "bevel" | "miter" | "round";
58975897
type CanvasTextAlign = "center" | "end" | "left" | "right" | "start";
58985898
type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
58995899
type ClientTypes = "all" | "sharedworker" | "window" | "worker";
5900+
type ColorSpaceConversion = "default" | "none";
59005901
type EndingType = "native" | "transparent";
59015902
type FrameType = "auxiliary" | "nested" | "none" | "top-level";
59025903
type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
59035904
type IDBRequestReadyState = "done" | "pending";
59045905
type IDBTransactionMode = "readonly" | "readwrite" | "versionchange";
5906+
type ImageOrientation = "flipY" | "none";
59055907
type ImageSmoothingQuality = "high" | "low" | "medium";
59065908
type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
59075909
type KeyType = "private" | "public" | "secret";
@@ -5911,6 +5913,7 @@ type NotificationPermission = "default" | "denied" | "granted";
59115913
type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2";
59125914
type PermissionName = "accelerometer" | "ambient-light-sensor" | "background-sync" | "bluetooth" | "camera" | "clipboard" | "device-info" | "geolocation" | "gyroscope" | "magnetometer" | "microphone" | "midi" | "notifications" | "persistent-storage" | "push" | "speaker";
59135915
type PermissionState = "denied" | "granted" | "prompt";
5916+
type PremultiplyAlpha = "default" | "none" | "premultiply";
59145917
type PushEncryptionKeyName = "auth" | "p256dh";
59155918
type PushPermissionState = "denied" | "granted" | "prompt";
59165919
type ReferrerPolicy = "" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url";
@@ -5919,6 +5922,7 @@ type RequestCredentials = "include" | "omit" | "same-origin";
59195922
type RequestDestination = "" | "audio" | "audioworklet" | "document" | "embed" | "font" | "image" | "manifest" | "object" | "paintworklet" | "report" | "script" | "sharedworker" | "style" | "track" | "video" | "worker" | "xslt";
59205923
type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
59215924
type RequestRedirect = "error" | "follow" | "manual";
5925+
type ResizeQuality = "high" | "low" | "medium" | "pixelated";
59225926
type ResponseType = "basic" | "cors" | "default" | "error" | "opaque" | "opaqueredirect";
59235927
type ServiceWorkerState = "activated" | "activating" | "installed" | "installing" | "parsed" | "redundant";
59245928
type ServiceWorkerUpdateViaCache = "all" | "imports" | "none";

inputfiles/addedTypes.json

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -386,45 +386,6 @@
386386
}
387387
}
388388
},
389-
"ImageBitmapOptions": {
390-
"flavor": "All",
391-
"name": "ImageBitmapOptions",
392-
"properties": {
393-
"property": {
394-
"imageOrientation": {
395-
"name": "imageOrientation",
396-
"override-type": "\"none\" | \"flipY\"",
397-
"required": 0
398-
},
399-
"premultiplyAlpha": {
400-
"name": "premultiplyAlpha",
401-
"override-type": "\"none\" | \"premultiply\" | \"default\"",
402-
"required": 0
403-
},
404-
"colorSpaceConversion": {
405-
"name": "colorSpaceConversion",
406-
"override-type": "\"none\" | \"default\"",
407-
"required": 0
408-
},
409-
"resizeWidth": {
410-
"name": "resizeWidth",
411-
"override-type": "number",
412-
"required": 0
413-
},
414-
"resizeHeight": {
415-
"name": "resizeHeight",
416-
"override-type": "number",
417-
"required": 0
418-
},
419-
"resizeQuality": {
420-
"name": "resizeQuality",
421-
"override-type": "\"pixelated\" | \"low\" | \"medium\" | \"high\"",
422-
"required": 0
423-
}
424-
}
425-
},
426-
"no-interface-object": "1"
427-
},
428389
"Window": {
429390
"name": "Window",
430391
"properties": {

0 commit comments

Comments
 (0)