ImportMap.h 767 B

12345678910111213141516171819202122232425262728293031
  1. /*
  2. * Copyright (c) 2022, networkException <networkexception@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <AK/HashMap.h>
  8. namespace Web::HTML {
  9. using ModuleSpecifierMap = HashMap<DeprecatedString, Optional<AK::URL>>;
  10. // https://html.spec.whatwg.org/multipage/webappapis.html#import-map
  11. class ImportMap {
  12. public:
  13. ImportMap() = default;
  14. ModuleSpecifierMap const& imports() const { return m_imports; }
  15. ModuleSpecifierMap& imports() { return m_imports; }
  16. HashMap<AK::URL, ModuleSpecifierMap> const& scopes() const { return m_scopes; }
  17. HashMap<AK::URL, ModuleSpecifierMap>& scopes() { return m_scopes; }
  18. private:
  19. ModuleSpecifierMap m_imports;
  20. HashMap<AK::URL, ModuleSpecifierMap> m_scopes;
  21. };
  22. }