-
Notifications
You must be signed in to change notification settings - Fork 30
Fallback to Cred Man when the API is not supported #395
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
@marcoscaceres |
Allowed protocols would be how a developer would detect what can be used up front, but if a developer still makes a call and one of the methods isn't supported (e.g. supports get but not create), then the API needs to return with an appropriate error. |
timcappalli
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
Discussed with @mohamedamir ... we concluded that it would be good to just conditionally statically compile out the code when the API is not supported... in WebKit #if HAVE(DIGITAL_CREDENTIALS_UI)
if (options.digital) {
DigitalCredential::discoverFromExternalSource(*document(), WTFMove(promise), WTFMove(options));
return;
}
#endifRationale being to keep compatibility with older browser engine versions by having them behave the same when an UI can't be presented. We should say something in the spec though... I'll try to come up with something. |
|
Agreed, thank you! FWIW this aligns with our general approach in Chrome for OSes which can't support an API - we want it to look the same to web developers as cases of a browser not supporting the API (fewer cases to worry about). |
d31c8b8 to
22b2373
Compare
For DiscoverFromExternalSource(), adds a check to see if the digital credentials UI is available before attempting doing any processing. If there's no platform support, behave as if the API is not implemented by falling back to Credential Management API's default algorithms.
f5164be to
b751bc3
Compare
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource):
|
@mohamedamir, @RByers, just confirming again this is Chrome's behavior (assuming from the above, it is)... I've sent a patch to WebKit to match WebKit/WebKit#56303. Please take another look at the updated spec text. |
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource):
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource):
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
mohamedamir
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thank you!
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator):
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator):
SHA: b4aa7b0 Reason: push, by marcoscaceres Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/loader/EmptyClients.cpp: (WebCore::pageConfigurationWithEmptyClients): * Source/WebCore/page/Chrome.cpp: * Source/WebCore/page/Chrome.h: * Source/WebCore/page/ChromeClient.cpp: * Source/WebCore/page/ChromeClient.h: * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator): * Source/WebCore/page/PageConfiguration.cpp: (WebCore::PageConfiguration::PageConfiguration): * Source/WebCore/page/PageConfiguration.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.mm: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::showDigitalCredentialsPicker): (WebKit::WebPageProxy::fetchRawDigitalCredentialRequests): (WebKit::WebPageProxy::dismissDigitalCredentialsPicker): * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/ios/PageClientImplIOS.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.mm: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: * Source/WebKit/UIProcess/mac/PageClientImplMac.h: * Source/WebKit/UIProcess/mac/PageClientImplMac.mm: * Source/WebKit/UIProcess/mac/WebViewImpl.h: * Source/WebKit/UIProcess/mac/WebViewImpl.mm: * Source/WebKit/WebKitSwift/WebKitSwift.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.cpp: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.messages.in: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::m_toolbarsAreVisible): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKitLegacy/mac/WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/loader/EmptyClients.cpp: (WebCore::pageConfigurationWithEmptyClients): * Source/WebCore/page/Chrome.cpp: * Source/WebCore/page/Chrome.h: * Source/WebCore/page/ChromeClient.cpp: * Source/WebCore/page/ChromeClient.h: * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator): * Source/WebCore/page/PageConfiguration.cpp: (WebCore::PageConfiguration::PageConfiguration): * Source/WebCore/page/PageConfiguration.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.mm: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::showDigitalCredentialsPicker): (WebKit::WebPageProxy::fetchRawDigitalCredentialRequests): (WebKit::WebPageProxy::dismissDigitalCredentialsPicker): * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/ios/PageClientImplIOS.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.mm: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: * Source/WebKit/UIProcess/mac/PageClientImplMac.h: * Source/WebKit/UIProcess/mac/PageClientImplMac.mm: * Source/WebKit/UIProcess/mac/WebViewImpl.h: * Source/WebKit/UIProcess/mac/WebViewImpl.mm: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentController.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentDelegate.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentError.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentMobileDocumentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRawRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentResponse.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentRawRequestValidator.h: * Source/WebKit/WebKitSwift/WebKitSwift.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.cpp: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.messages.in: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::m_toolbarsAreVisible): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKitLegacy/mac/WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/loader/EmptyClients.cpp: (WebCore::pageConfigurationWithEmptyClients): * Source/WebCore/page/Chrome.cpp: * Source/WebCore/page/Chrome.h: * Source/WebCore/page/ChromeClient.cpp: * Source/WebCore/page/ChromeClient.h: * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator): * Source/WebCore/page/PageConfiguration.cpp: (WebCore::PageConfiguration::PageConfiguration): * Source/WebCore/page/PageConfiguration.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.mm: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::showDigitalCredentialsPicker): (WebKit::WebPageProxy::fetchRawDigitalCredentialRequests): (WebKit::WebPageProxy::dismissDigitalCredentialsPicker): * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/ios/PageClientImplIOS.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.mm: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: * Source/WebKit/UIProcess/mac/PageClientImplMac.h: * Source/WebKit/UIProcess/mac/PageClientImplMac.mm: * Source/WebKit/UIProcess/mac/WebViewImpl.h: * Source/WebKit/UIProcess/mac/WebViewImpl.mm: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentController.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentDelegate.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentError.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentMobileDocumentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRawRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentResponse.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentRawRequestValidator.h: * Source/WebKit/WebKitSwift/WebKitSwift.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.cpp: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.messages.in: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::m_toolbarsAreVisible): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKitLegacy/mac/WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
rdar://167807196 https://bugs.webkit.org/show_bug.cgi?id=305158 Reviewed by NOBODY (OOPS!). We now check whether digital credentials UI is available at the platform level before attempting to process any digital credentials related requests. This provides better developer ergonomics by allowing the API to behave the same way as it does on legacy platforms that don't support the API. Related spec change: w3c-fedid/digital-credentials#395 Relies on existing tests. * Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.cpp: (WebCore::CredentialRequestCoordinator::presentPicker): * Source/WebCore/Modules/identity/CredentialRequestCoordinator.h: * Source/WebCore/Modules/identity/DigitalCredential.cpp: (WebCore::DigitalCredential::discoverFromExternalSource): * Source/WebCore/loader/EmptyClients.cpp: (WebCore::pageConfigurationWithEmptyClients): * Source/WebCore/page/Chrome.cpp: * Source/WebCore/page/Chrome.h: * Source/WebCore/page/ChromeClient.cpp: * Source/WebCore/page/ChromeClient.h: * Source/WebCore/page/Page.cpp: * Source/WebCore/page/Page.h: (WebCore::Page::authenticatorCoordinator): * Source/WebCore/page/PageConfiguration.cpp: (WebCore::PageConfiguration::PageConfiguration): * Source/WebCore/page/PageConfiguration.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.h: * Source/WebKit/UIProcess/DigitalCredentials/WKDigitalCredentialsPicker.mm: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::showDigitalCredentialsPicker): (WebKit::WebPageProxy::fetchRawDigitalCredentialRequests): (WebKit::WebPageProxy::dismissDigitalCredentialsPicker): * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/ios/PageClientImplIOS.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.mm: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: * Source/WebKit/UIProcess/mac/PageClientImplMac.h: * Source/WebKit/UIProcess/mac/PageClientImplMac.mm: * Source/WebKit/UIProcess/mac/WebViewImpl.h: * Source/WebKit/UIProcess/mac/WebViewImpl.mm: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentController.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentDelegate.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentError.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentMobileDocumentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRawRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentRequest.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentPresentmentResponse.h: * Source/WebKit/WebKitSwift/IdentityDocumentServices/WKIdentityDocumentRawRequestValidator.h: * Source/WebKit/WebKitSwift/WebKitSwift.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.cpp: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.h: * Source/WebKit/WebProcess/DigitalCredentials/DigitalCredentialsCoordinator.messages.in: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp: * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::m_toolbarsAreVisible): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKitLegacy/mac/WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
There are platforms where the API is available, but it's not supported. For example, the API is available on older versions of an OS using modern browser (e.g., pre-macOS 26 running a new Safari), but credentials requests are currently not supported on that platform.
Closes #393
Closes #359
The following tasks have been completed:
[ ] Modified Web platform tests (link)Not testable.Implementation commitment:
Documentation and checks
Preview | Diff