[K/JS] Fix nameBindings for ES-modules after the ES-modules external declarations optimization

This commit is contained in:
Artem Kobzar
2023-10-20 14:04:39 +00:00
committed by Space Team
parent 72438f4969
commit 4a042dafef
15 changed files with 84 additions and 1 deletions
@@ -90,6 +90,7 @@ class JsNameLinkingNamer(
else -> JsImport.Target.Default(nameRef)
}
imports[this] = JsImport(jsModule, importSubject)
nameMap[this] = name
} else {
importedModules += JsImportedModule(jsModule, name, nameRef)
}
@@ -97,7 +97,7 @@ private class JsIrAstSerializer {
}
fun append(fragment: JsIrProgramFragment): JsIrAstSerializer {
importedNames += fragment.imports.map { fragment.nameBindings[it.key]!! }
importedNames += fragment.imports.map { fragment.nameBindings[it.key] ?: error("No binding for tag ${it.key}") }
fragmentSerializer.writeFragment(fragment)
return this
}