[K/JS] Don't add nested classes generated by plugins into ExportModel for interfaces ^KT-63184 Fixed
This commit is contained in:
+5
@@ -31,5 +31,10 @@ declare namespace JS_TESTS {
|
||||
}
|
||||
function processInterface(test: foo.TestInterface): string;
|
||||
function processOptionalInterface(a: foo.OptionalFieldsInterface): string;
|
||||
interface InterfaceWithCompanion {
|
||||
readonly __doNotUseOrImplementIt: {
|
||||
readonly "foo.InterfaceWithCompanion": unique symbol;
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
+10
@@ -45,4 +45,14 @@ external interface OptionalFieldsInterface {
|
||||
|
||||
fun processOptionalInterface(a: OptionalFieldsInterface): String {
|
||||
return "${a.required}${a.notRequired ?: "unknown"}"
|
||||
}
|
||||
|
||||
// KT-63184
|
||||
|
||||
interface InterfaceWithCompanion {
|
||||
// Emulate added by plugin companion like kotlinx.serialization does
|
||||
@Suppress("WRONG_EXPORTED_DECLARATION")
|
||||
companion object {
|
||||
fun foo() = "String"
|
||||
}
|
||||
}
|
||||
@@ -31,5 +31,10 @@ declare namespace JS_TESTS {
|
||||
}
|
||||
function processInterface(test: foo.TestInterface): string;
|
||||
function processOptionalInterface(a: foo.OptionalFieldsInterface): string;
|
||||
interface InterfaceWithCompanion {
|
||||
readonly __doNotUseOrImplementIt: {
|
||||
readonly "foo.InterfaceWithCompanion": unique symbol;
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -41,4 +41,14 @@ external interface OptionalFieldsInterface {
|
||||
@JsExport
|
||||
fun processOptionalInterface(a: OptionalFieldsInterface): String {
|
||||
return "${a.required}${a.notRequired ?: "unknown"}"
|
||||
}
|
||||
|
||||
// KT-63184
|
||||
@JsExport
|
||||
interface InterfaceWithCompanion {
|
||||
// Emulate added by plugin companion like kotlinx.serialization does
|
||||
@Suppress("WRONG_EXPORTED_DECLARATION")
|
||||
companion object {
|
||||
fun foo() = "String"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user