diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index 5a4dacc0d..e1e30ee0a 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -13904,7 +13904,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index 828c90584..253805693 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -3756,7 +3756,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index 1044d29a0..fb2c082c2 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -3401,7 +3401,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.5/dom.generated.d.ts b/baselines/ts5.5/dom.generated.d.ts index 21024cf44..d5a848725 100644 --- a/baselines/ts5.5/dom.generated.d.ts +++ b/baselines/ts5.5/dom.generated.d.ts @@ -13890,7 +13890,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.5/serviceworker.generated.d.ts b/baselines/ts5.5/serviceworker.generated.d.ts index d25131da2..d414deece 100644 --- a/baselines/ts5.5/serviceworker.generated.d.ts +++ b/baselines/ts5.5/serviceworker.generated.d.ts @@ -3753,7 +3753,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.5/sharedworker.generated.d.ts b/baselines/ts5.5/sharedworker.generated.d.ts index c76701b9d..ac257bbd2 100644 --- a/baselines/ts5.5/sharedworker.generated.d.ts +++ b/baselines/ts5.5/sharedworker.generated.d.ts @@ -3398,7 +3398,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.5/webworker.generated.d.ts b/baselines/ts5.5/webworker.generated.d.ts index 5dd8c56fe..8a72a5ea6 100644 --- a/baselines/ts5.5/webworker.generated.d.ts +++ b/baselines/ts5.5/webworker.generated.d.ts @@ -4351,7 +4351,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.6/dom.generated.d.ts b/baselines/ts5.6/dom.generated.d.ts index af09513a0..a1e0ffe32 100644 --- a/baselines/ts5.6/dom.generated.d.ts +++ b/baselines/ts5.6/dom.generated.d.ts @@ -13901,7 +13901,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.6/serviceworker.generated.d.ts b/baselines/ts5.6/serviceworker.generated.d.ts index d25131da2..d414deece 100644 --- a/baselines/ts5.6/serviceworker.generated.d.ts +++ b/baselines/ts5.6/serviceworker.generated.d.ts @@ -3753,7 +3753,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.6/sharedworker.generated.d.ts b/baselines/ts5.6/sharedworker.generated.d.ts index c76701b9d..ac257bbd2 100644 --- a/baselines/ts5.6/sharedworker.generated.d.ts +++ b/baselines/ts5.6/sharedworker.generated.d.ts @@ -3398,7 +3398,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.6/webworker.generated.d.ts b/baselines/ts5.6/webworker.generated.d.ts index 5dd8c56fe..8a72a5ea6 100644 --- a/baselines/ts5.6/webworker.generated.d.ts +++ b/baselines/ts5.6/webworker.generated.d.ts @@ -4351,7 +4351,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.9/dom.generated.d.ts b/baselines/ts5.9/dom.generated.d.ts index 24b8e4b70..587e7d438 100644 --- a/baselines/ts5.9/dom.generated.d.ts +++ b/baselines/ts5.9/dom.generated.d.ts @@ -13901,7 +13901,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.9/serviceworker.generated.d.ts b/baselines/ts5.9/serviceworker.generated.d.ts index d394a7a30..2e86916b0 100644 --- a/baselines/ts5.9/serviceworker.generated.d.ts +++ b/baselines/ts5.9/serviceworker.generated.d.ts @@ -3753,7 +3753,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.9/sharedworker.generated.d.ts b/baselines/ts5.9/sharedworker.generated.d.ts index efb220ac4..2d4bf085a 100644 --- a/baselines/ts5.9/sharedworker.generated.d.ts +++ b/baselines/ts5.9/sharedworker.generated.d.ts @@ -3398,7 +3398,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/ts5.9/webworker.generated.d.ts b/baselines/ts5.9/webworker.generated.d.ts index 38454d424..3fd91ccda 100644 --- a/baselines/ts5.9/webworker.generated.d.ts +++ b/baselines/ts5.9/webworker.generated.d.ts @@ -4351,7 +4351,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index 0023fd4f7..9401d5b68 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -4354,7 +4354,7 @@ interface FileReader extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */ - readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE; + readonly readyState: 0 | 1 | 2; /** * The **`result`** read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation. * diff --git a/inputfiles/addedTypes.jsonc b/inputfiles/addedTypes.jsonc index 5b7586411..641b0a26d 100644 --- a/inputfiles/addedTypes.jsonc +++ b/inputfiles/addedTypes.jsonc @@ -803,28 +803,6 @@ } ] } - }, - "FileSystemFileHandle": { - "properties": { - "property": { - "kind": { - "name": "kind", - "readonly": true, - "overrideType": "\"file\"" - } - } - } - }, - "FileSystemDirectoryHandle": { - "properties": { - "property": { - "kind": { - "name": "kind", - "readonly": true, - "overrideType": "\"directory\"" - } - } - } } } }, diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index 6a77bff25..7f9f9c6ff 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -1976,44 +1976,6 @@ ] } }, - "FileReader": { - "events": { - "event": [ - { - "name": "loadstart", - "type": "ProgressEvent" - }, - { - "name": "progress", - "type": "ProgressEvent" - }, - { - "name": "load", - "type": "ProgressEvent" - }, - { - "name": "abort", - "type": "ProgressEvent" - }, - { - "name": "error", - "type": "ProgressEvent" - }, - { - "name": "loadend", - "type": "ProgressEvent" - } - ] - }, - "properties": { - "property": { - "readyState": { - "name": "readyState", - "overrideType": "typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE" - } - } - } - }, "FileSystemDirectoryHandle": { "iterator": { // It's true that Blink is the only supported engine for Symbol.asyncIterator, diff --git a/inputfiles/patches/file-api.kdl b/inputfiles/patches/file-api.kdl new file mode 100644 index 000000000..4557bea69 --- /dev/null +++ b/inputfiles/patches/file-api.kdl @@ -0,0 +1,10 @@ +interface FileReader { + event loadstart type=ProgressEvent + event progress type=ProgressEvent + event load type=ProgressEvent + event abort type=ProgressEvent + event error type=ProgressEvent + event loadend type=ProgressEvent + + property readyState overrideType="0 | 1 | 2" +} diff --git a/inputfiles/patches/file-system.kdl b/inputfiles/patches/file-system.kdl new file mode 100644 index 000000000..b5fec819b --- /dev/null +++ b/inputfiles/patches/file-system.kdl @@ -0,0 +1,7 @@ +interface FileSystemFileHandle { + property kind readonly=#true overrideType="\"file\"" +} + +interface FileSystemDirectoryHandle { + property kind readonly=#true overrideType="\"directory\"" +} diff --git a/src/build/patches.ts b/src/build/patches.ts index 28da6377f..1921a26e0 100644 --- a/src/build/patches.ts +++ b/src/build/patches.ts @@ -230,6 +230,7 @@ function handleProperty(child: Node): Partial { ...optionalMember("optional", "boolean", child.properties?.optional), ...optionalMember("overrideType", "string", child.properties?.overrideType), ...optionalMember("type", "string", child.properties?.type), + ...optionalMember("readonly", "boolean", child.properties?.readonly), }; }