#include "third_party/blink/renderer/modules/credentialmanagement/identity_provider.h"
#include "third_party/blink/public/mojom/webid/federated_auth_request.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_identity_resolve_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_identity_user_info.h"
#include "third_party/blink/renderer/core/dom/dom_exception.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/csp/content_security_policy.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/modules/credentialmanagement/credential_manager_proxy.h"
#include "third_party/blink/renderer/modules/credentialmanagement/credential_manager_type_converters.h"
#include "third_party/blink/renderer/modules/credentialmanagement/identity_credential.h"
#include "third_party/blink/renderer/modules/credentialmanagement/scoped_promise_resolver.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/weborigin/kurl.h"
namespace blink {
namespace {
RegisterIdpStatus;
RequestUserInfoStatus;
void OnRequestUserInfo(
ScriptPromiseResolver<IDLSequence<IdentityUserInfo>>* resolver,
RequestUserInfoStatus status,
std::optional<Vector<mojom::blink::IdentityUserInfoPtr>>
all_user_info_ptr) { … }
}
ScriptPromise<IDLSequence<IdentityUserInfo>> IdentityProvider::getUserInfo(
ScriptState* script_state,
const blink::IdentityProviderConfig* provider,
ExceptionState& exception_state) { … }
void IdentityProvider::close(ScriptState* script_state) { … }
void OnRegisterIdP(ScriptPromiseResolver<IDLBoolean>* resolver,
RegisterIdpStatus status) { … }
ScriptPromise<IDLBoolean> IdentityProvider::registerIdentityProvider(
ScriptState* script_state,
const String& configURL) { … }
void OnUnregisterIdP(ScriptPromiseResolver<IDLUndefined>* resolver,
bool accepted) { … }
ScriptPromise<IDLUndefined> IdentityProvider::unregisterIdentityProvider(
ScriptState* script_state,
const String& configURL) { … }
void OnResolveTokenRequest(ScriptPromiseResolver<IDLUndefined>* resolver,
bool accepted) { … }
ScriptPromise<IDLUndefined> IdentityProvider::resolve(
ScriptState* script_state,
const String& token,
const IdentityResolveOptions* options) { … }
}