/* * Copyright (c) 2025, Altomani Gianluca * * SPDX-License-Identifier: BSD-2-Clause */ #include namespace Web::CredentialManagement { GC_DEFINE_ALLOCATOR(CredentialsContainer); GC::Ref CredentialsContainer::create(JS::Realm& realm) { return realm.create(realm); } CredentialsContainer::~CredentialsContainer() { } // https://www.w3.org/TR/credential-management-1/#dom-credentialscontainer-get GC::Ref CredentialsContainer::get(CredentialRequestOptions const&) { auto* realm = vm().current_realm(); return WebIDL::create_rejected_promise_from_exception(*realm, vm().throw_completion(JS::ErrorType::NotImplemented, "get"sv)); } // https://www.w3.org/TR/credential-management-1/#dom-credentialscontainer-store GC::Ref CredentialsContainer::store(Credential const&) { auto* realm = vm().current_realm(); return WebIDL::create_rejected_promise_from_exception(*realm, vm().throw_completion(JS::ErrorType::NotImplemented, "store"sv)); } // https://www.w3.org/TR/credential-management-1/#dom-credentialscontainer-create GC::Ref CredentialsContainer::create(CredentialCreationOptions const&) { auto* realm = vm().current_realm(); return WebIDL::create_rejected_promise_from_exception(*realm, vm().throw_completion(JS::ErrorType::NotImplemented, "create"sv)); } // https://www.w3.org/TR/credential-management-1/#dom-credentialscontainer-preventsilentaccess GC::Ref CredentialsContainer::prevent_silent_access() { auto* realm = vm().current_realm(); return WebIDL::create_rejected_promise_from_exception(*realm, vm().throw_completion(JS::ErrorType::NotImplemented, "prevent silent access"sv)); } CredentialsContainer::CredentialsContainer(JS::Realm& realm) : PlatformObject(realm) { } void CredentialsContainer::initialize(JS::Realm& realm) { Base::initialize(realm); WEB_SET_PROTOTYPE_FOR_INTERFACE(CredentialsContainer); } }