[K/JS, K/Wasm] Generate star imports for external objects with the @JsModule annotation for ES modules
This commit is contained in:
+4
-5
@@ -366,22 +366,21 @@ class ComplexExternalDeclarationsToTopLevelFunctionsLowering(val context: WasmBa
|
||||
}
|
||||
|
||||
private fun referenceTopLevelExternalDeclaration(declaration: IrDeclarationWithName): String {
|
||||
var name = declaration.getJsNameOrKotlinName().identifier
|
||||
var name: String? = declaration.getJsNameOrKotlinName().identifier
|
||||
|
||||
val qualifier = currentFile.getJsQualifier()
|
||||
|
||||
val module = currentFile.getJsModule()
|
||||
?: declaration.getJsModule()?.also {
|
||||
// JsModule on top level declarations imports "default"
|
||||
name = "default"
|
||||
name = if (declaration is IrClass && declaration.isObject) null else "default"
|
||||
}
|
||||
|
||||
if (qualifier == null && module == null)
|
||||
return name
|
||||
return name!!
|
||||
|
||||
val qualifieReference = JsModuleAndQualifierReference(module, qualifier)
|
||||
context.jsModuleAndQualifierReferences += qualifieReference
|
||||
return qualifieReference.jsVariableName + "." + name
|
||||
return qualifieReference.jsVariableName + name?.let { ".$it" }.orEmpty()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user