Neal Sanche
01/20/2022, 5:04 PMMonetaryValue
which is the GraphQL class. MonetaryValue_
which seems to be the data class we want. But then there's also a MonetaryValue__
which is an @interface
that has a bunch of swift attributes like component1()
and component2()
and properties for the actual interesting data class things. Is the way all of this works documented somewhere? Or can someone explain this? Is there a way to change this behaviour? Thanks for any and all insights.Neal Sanche
01/20/2022, 5:25 PMObjective-C does not support packages in a framework. Thus, the Kotlin compiler renames Kotlin classes which have the same name but different package in the same framework. This algorithm is not stable yet and can change between Kotlin releases. As a workaround, you can rename the conflicting Kotlin classes in the framework.(here)
kpgalligan
01/20/2022, 6:07 PMinternal
(if possible), or maybe have them in a separate module and export that through the module that creates the framework.ankushg
01/20/2022, 6:22 PMFoo
and Foo_
will end up getting swapped around in a future compilation hahakpgalligan
01/20/2022, 8:55 PMAnders Oedlund
01/20/2022, 11:26 PMgenerateAsInternal
for the apollo gradle plugin, to not get the GraphQL classes exposed ?Neal Sanche
01/20/2022, 11:32 PMgenerateAsInternal
but right now that's off the table because we don't want to have to make domain classes for everything in GraphQL. We're mostly happy with what it's been generating for us.Neal Sanche
01/20/2022, 11:34 PM