diff --git a/Libraries/LibWeb/ServiceWorker/CacheStorage.cpp b/Libraries/LibWeb/ServiceWorker/CacheStorage.cpp index 1d95b7a88b2..22a2fd56f08 100644 --- a/Libraries/LibWeb/ServiceWorker/CacheStorage.cpp +++ b/Libraries/LibWeb/ServiceWorker/CacheStorage.cpp @@ -30,4 +30,11 @@ GC::Ref CacheStorage::open(String const&) return WebIDL::create_rejected_promise(realm(), WebIDL::NotSupportedError::create(realm(), "CacheStorage.open() is not yet implemented"_string)); } +// https://w3c.github.io/ServiceWorker/#cache-storage-has +GC::Ref CacheStorage::has(String const&) +{ + dbgln("FIXME: CacheStorage::has() is not implemented yet"); + return WebIDL::create_rejected_promise(realm(), JS::Value(false)); +} + } diff --git a/Libraries/LibWeb/ServiceWorker/CacheStorage.h b/Libraries/LibWeb/ServiceWorker/CacheStorage.h index 5b9af542ad8..e3479725060 100644 --- a/Libraries/LibWeb/ServiceWorker/CacheStorage.h +++ b/Libraries/LibWeb/ServiceWorker/CacheStorage.h @@ -17,6 +17,7 @@ class CacheStorage : public Bindings::PlatformObject { GC_DECLARE_ALLOCATOR(CacheStorage); public: + GC::Ref has(String const& cache_name); GC::Ref open(String const& cache_name); private: diff --git a/Libraries/LibWeb/ServiceWorker/CacheStorage.idl b/Libraries/LibWeb/ServiceWorker/CacheStorage.idl index b214bab1c06..2d3f7382209 100644 --- a/Libraries/LibWeb/ServiceWorker/CacheStorage.idl +++ b/Libraries/LibWeb/ServiceWorker/CacheStorage.idl @@ -4,7 +4,7 @@ [SecureContext, Exposed=(Window,Worker)] interface CacheStorage { //[NewObject] Promise<(Response or undefined)> match(RequestInfo request, optional MultiCacheQueryOptions options = {}); - //[NewObject] Promise has(DOMString cacheName); + [NewObject] Promise has(DOMString cacheName); [NewObject] Promise open(DOMString cacheName); //[NewObject] Promise delete(DOMString cacheName); //[NewObject] Promise> keys();