diff --git a/inputfiles/patches/crypto.kdl b/inputfiles/patches/crypto.kdl deleted file mode 100644 index 51aca43a2..000000000 --- a/inputfiles/patches/crypto.kdl +++ /dev/null @@ -1,14 +0,0 @@ -// https://github.com/microsoft/TypeScript/issues/46036 -dictionary CryptoKeyPair { - member privateKey required=#true - member publicKey required=#true -} - -interface CryptoKey { - property algorithm type=KeyAlgorithm - property usages { - type sequence { - type KeyUsage - } - } -} diff --git a/inputfiles/patches/media-capabilities.kdl b/inputfiles/patches/media-capabilities.kdl new file mode 100644 index 000000000..8cd1d223e --- /dev/null +++ b/inputfiles/patches/media-capabilities.kdl @@ -0,0 +1,5 @@ +removals { + dictionary KeySystemTrackConfiguration { + member encryptionScheme // Gecko only as of 2025-05 + } +} diff --git a/inputfiles/patches/webauthn.kdl b/inputfiles/patches/webauthn.kdl index 81e5fcf47..f2f166e3d 100644 --- a/inputfiles/patches/webauthn.kdl +++ b/inputfiles/patches/webauthn.kdl @@ -1,24 +1,52 @@ removals { - enum AuthenticatorTransport { - smart-card // WebKit only as of 2023-05 - } - dictionary AuthenticationExtensionsClientInputs { - // https://searchfox.org/mozilla-central/source/dom/webidl/WebAuthentication.webidl - // https://searchfox.org/wubkat/source/Source/WebCore/Modules/webauthn/AuthenticationExtensionsClientInputs.idl - // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/modules/credentialmanagement/authentication_extensions_client_inputs.idl - member appidExclude - member credBlob - member getCredBlob - member hmacGetSecret // No implementation as of 2025-05 - member payment - } - dictionary AuthenticationExtensionsClientInputsJSON { - member appidExclude - } - dictionary AuthenticationExtensionsClientOutputs { - // (same as *Inputs) - member appidExclude // No implementation as of 2025-05 - member hmacGetSecret // No implementation as of 2025-05 - member payment // Blink only as of 2025-06 - } + enum AuthenticatorTransport { + smart-card // WebKit only as of 2023-05 + } + + dictionary AuthenticationExtensionsClientInputs { + // https://searchfox.org/mozilla-central/source/dom/webidl/WebAuthentication.webidl + // https://searchfox.org/wubkat/source/Source/WebCore/Modules/webauthn/AuthenticationExtensionsClientInputs.idl + // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/modules/credentialmanagement/authentication_extensions_client_inputs.idl + member appidExclude + member credBlob + member getCredBlob + member hmacGetSecret // No implementation as of 2025-05 + member payment + } + + dictionary AuthenticationExtensionsClientInputsJSON { + member appidExclude + } + + dictionary AuthenticationExtensionsClientOutputs { + // (same as *Inputs) + member appidExclude // No implementation as of 2025-05 + member hmacGetSecret // No implementation as of 2025-05 + member payment // Blink only as of 2025-06 + } + + dictionary PublicKeyCredentialCreationOptions { + member attestationFormats // Blink only as of 2024-08 + member hints // Blink only as of 2024-08 + } + + dictionary PublicKeyCredentialCreationOptionsJSON { + member attestationFormats // Gecko only as of 2024-08 + } + + dictionary PublicKeyCredentialRequestOptions { + member hints // Blink only as of 2024-08 + } + + dictionary CredentialRequestOptions { + // Only `mediation`, `publicKey`, `signal` are implemented by 2+ engines, everything else is currently Blink only. + // https://searchfox.org/mozilla-central/source/dom/webidl/CredentialManagement.webidl + // https://searchfox.org/wubkat/source/Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl + // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/modules/credentialmanagement/credential_request_options.idl + member digital // Behind a flag in WebKit and Blink as of 2024-03 + member federated + member identity + member otp + member password + } } diff --git a/inputfiles/patches/webcrypto.kdl b/inputfiles/patches/webcrypto.kdl new file mode 100644 index 000000000..db6844f2a --- /dev/null +++ b/inputfiles/patches/webcrypto.kdl @@ -0,0 +1,35 @@ +// https://github.com/microsoft/TypeScript/issues/46036 +dictionary CryptoKeyPair { + member privateKey required=#true + member publicKey required=#true +} + +interface CryptoKey { + property algorithm type=KeyAlgorithm + property usages { + type sequence { + type KeyUsage + } + } +} + +removals { + enum KeyFormat { + raw-private // No implementation as of 2025-09 + raw-public // No implementation as of 2025-09 + raw-secret // No implementation as of 2025-09 + raw-seed // No implementation as of 2025-09 + } + + enum KeyUsage { + decapsulateBits // No implementation as of 2025-09 + decapsulateKey // No implementation as of 2025-09 + encapsulateBits // No implementation as of 2025-09 + encapsulateKey // No implementation as of 2025-09 + } + + dictionary JsonWebKey { + member priv // No implementation as of 2025-09 + member pub // No implementation as of 2025-09 + } +} diff --git a/inputfiles/removedTypes.jsonc b/inputfiles/removedTypes.jsonc index edb274069..a04f8ad82 100644 --- a/inputfiles/removedTypes.jsonc +++ b/inputfiles/removedTypes.jsonc @@ -16,22 +16,6 @@ "ConnectionType": { "value": ["wimax"] }, - "KeyFormat": { - "value": [ - "raw-private", // No implementation as of 2025-09 - "raw-public", // No implementation as of 2025-09 - "raw-secret", // No implementation as of 2025-09 - "raw-seed" // No implementation as of 2025-09 - ] - }, - "KeyUsage": { - "value": [ - "decapsulateBits", // No implementation as of 2025-09 - "decapsulateKey", // No implementation as of 2025-09 - "encapsulateBits", // No implementation as of 2025-09 - "encapsulateKey" // No implementation as of 2025-09 - ] - }, "MediaSessionAction": { "value": [ "enterpictureinpicture", // Blink only as of 2024-07 @@ -234,21 +218,6 @@ } } }, - "CredentialRequestOptions": { - "members": { - "member": { - // Only `mediation`, `publicKey`, `signal` are implemented by 2+ engines, everything else is currently Blink only. - // https://searchfox.org/mozilla-central/source/dom/webidl/CredentialManagement.webidl - // https://searchfox.org/wubkat/source/Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl - // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/modules/credentialmanagement/credential_request_options.idl - "digital": null, // Behind a flag in WebKit and Blink as of 2024-03 - "federated": null, - "identity": null, - "otp": null, - "password": null - } - } - }, "DisplayMediaStreamOptions": { "members": { "member": { @@ -322,14 +291,6 @@ } } }, - "JsonWebKey": { - "members": { - "member": { - "priv": null, // No implementation as of 2025-09 - "pub": null // No implementation as of 2025-09 - } - } - }, "KeyframeAnimationOptions": { "members": { "member": { @@ -338,13 +299,6 @@ } } }, - "KeySystemTrackConfiguration": { - "members": { - "member": { - "encryptionScheme": null // Gecko only as of 2025-05 - } - } - }, "MediaCapabilitiesDecodingInfo": { "members": { "member": { @@ -453,28 +407,6 @@ } } }, - "PublicKeyCredentialCreationOptions": { - "members": { - "member": { - "attestationFormats": null, // Blink only as of 2024-08 - "hints": null // Blink only as of 2024-08 - } - } - }, - "PublicKeyCredentialCreationOptionsJSON": { - "members": { - "member": { - "attestationFormats": null // Gecko only as of 2024-08 - } - } - }, - "PublicKeyCredentialRequestOptions": { - "members": { - "member": { - "hints": null // Blink only as of 2024-08 - } - } - }, "PushEventInit": { "members": { "member": {