diff --git a/source b/source
index 2b9cb4f0107..c43c3b292ef 100644
--- a/source
+++ b/source
@@ -87810,7 +87810,38 @@ document.querySelector("button").addEventListener("click", bound);
URL">absolute URLs to values that are either a module script, null (used to
represent failed fetches), or a placeholder value "fetching
". Module maps are used to ensure that imported JavaScript modules are
- only fetched, parsed, and evaluated once per Document
or worker.
Document
or worker.
+
+ Since module maps are keyed by URL, the following code will + create three separate entries in the module map, since it results in three different + URLs:
+ +import "https://example.com/module.js"; +import "https://example.com/module.js#map-buster"; +import "https://example.com/module.js?debug=true";+ +
That is, URL queries and fragments can be varied to create distinct entries in the + module map; they are not ignored. Thus, three separate fetches and three separate + module evaluations will be performed.
+ +In contrast, the following code would only create a single entry in the module + map, since after applying the URL parser to these inputs, the resulting URL records are equal:
+ +import "https://example.com/module2.js"; +import "https:example.com/module2.js"; +import "https://///example.com\\module2.js"; +import "https://example.com/foo/../module2.js";+ +
So in this second example, only one fetch and one module evaluation will occur.
+ +Note that this behavior is the same as how shared workers are keyed by their parsed constructor url.
+To resolve a module specifier given a module script script and a string specifier, perform the following steps. It will return either an