"a": The start of the "assert" keyword in the static import statement
"as": The { start of the assertion
"ae": The } end of the assertion
For dynamic imports, "as" and "ae" are not used, instead only "a":
"a": The index immediately after the , - so { in the dynamic import expression import('specifier', {...})
"e": Is updated to reference the end of the specifier portion before the , in the import expression, instead of the position before the closing ). This is effectively a breaking change to the dynamic import handling.
"ss": Remains but is now documented as the start of the dynamic import(... expression itself.
"se": Is updated to reference the end of the import expression (position of the closing )).
Adds support for parsing import assertions.
Three variables are used -
"a"
,"as"
and"ae"
.For static imports these correspond to:
"a"
: The start of the"assert"
keyword in the static import statement"as"
: The{
start of the assertion"ae"
: The}
end of the assertionFor dynamic imports,
"as"
and"ae"
are not used, instead only"a"
:"a"
: The index immediately after the,
- so{
in the dynamic import expressionimport('specifier', {...})
"e"
: Is updated to reference the end of the specifier portion before the,
in the import expression, instead of the position before the closing)
. This is effectively a breaking change to the dynamic import handling."ss"
: Remains but is now documented as the start of the dynamicimport(...
expression itself."se"
: Is updated to reference the end of the import expression (position of the closing)
).Resolves https://github.com/guybedford/es-module-lexer/issues/73.