UNPKG

deno-importmap

Version:

Resolve specifiers with import maps.

72 lines (71 loc) 2.87 kB
{ "importMap": { "imports": { "package/withslash": "/node_modules/package-with-slash/index.mjs", "not-a-package": "/lib/not-a-package.mjs", "only-slash/": "/lib/only-slash/", ".": "/lib/dot.mjs", "..": "/lib/dotdot.mjs", "..\\": "/lib/dotdotbackslash.mjs", "%2E": "/lib/percent2e.mjs", "%2F": "/lib/percent2f.mjs", "https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/": "/a/", "https://map.example/きつね/fox/": "/b/", "%E3%81%8D%E3%81%A4%E3%81%AD/": "/c/", "きつね/fox/": "/d/" } }, "importMapBaseURL": "https://example.com/app/index.html", "baseURL": "https://example.com/js/app.mjs", "name": "Tricky specifiers", "tests": { "explicitly-mapped specifiers that happen to have a slash": { "expectedResults": { "package/withslash": "https://example.com/node_modules/package-with-slash/index.mjs" } }, "specifier with punctuation": { "expectedResults": { ".": "https://example.com/lib/dot.mjs", "..": "https://example.com/lib/dotdot.mjs", "..\\": "https://example.com/lib/dotdotbackslash.mjs", "%2E": "https://example.com/lib/percent2e.mjs", "%2F": "https://example.com/lib/percent2f.mjs" } }, "submodule of something not declared with a trailing slash should fail": { "expectedResults": { "not-a-package/foo": null } }, "module for which only a trailing-slash version is present should fail": { "expectedResults": { "only-slash": null } }, "URL-like specifiers are normalized": { "expectedResults": { "https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/": "https://example.com/a/", "https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar": "https://example.com/a/bar", "https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/": "https://example.com/b/", "https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar": "https://example.com/b/bar", "https://map.example/きつね/": "https://example.com/a/", "https://map.example/きつね/bar": "https://example.com/a/bar", "https://map.example/きつね/fox/": "https://example.com/b/", "https://map.example/きつね/fox/bar": "https://example.com/b/bar" } }, "Bare specifiers are not normalized": { "expectedResults": { "%E3%81%8D%E3%81%A4%E3%81%AD/": "https://example.com/c/", "%E3%81%8D%E3%81%A4%E3%81%AD/bar": "https://example.com/c/bar", "%E3%81%8D%E3%81%A4%E3%81%AD/fox/": "https://example.com/c/fox/", "%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar": "https://example.com/c/fox/bar", "きつね/": null, "きつね/bar": null, "きつね/fox/": "https://example.com/d/", "きつね/fox/bar": "https://example.com/d/bar" } } } }