You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Aug 16, 2019. It is now read-only.
Looks like from this commit 57b6d0b ( @joanromano ) some meta fields were converted to snake_case, if we do this we need to make sure that during materialisation we convert camelCase to snake_case.
At the moment TabConfig (and maybe others too) are broken because its properties are camelCase but materialisation is looking for snake_case properties ("icon_name").
The text was updated successfully, but these errors were encountered:
As long as the schema is followed the materialization should work properly (tests were also updated on those PRs), unless:
Materializing a ZipMeta with a list of ExpressibleByComponentMeta e.g:
let meta = ClusterLayout.TabBarConfig(selectedIndex: 0)
let zipMeta = ZipMeta(meta)
let tabBarConfig = ClusterLayout.TabBarConfig.materialize(zipMeta)
expect(tabBarConfig?.selectedIndex) == 0 // Fails, config is not materialized and we get a nil `selectedIndex`
From here, I guess there's two options:
We might want to fix this by converting keys (not sure if this should be done at materialize phase itself before ExpressibleByComponentMeta.init or within the later one, leaving that to each ExpressibleByComponentMeta to do it's own).
I guess we could also consider the use case of ZipMeta at all?
Looks like from this commit 57b6d0b ( @joanromano ) some meta fields were converted to snake_case, if we do this we need to make sure that during materialisation we convert camelCase to snake_case.
At the moment
TabConfig
(and maybe others too) are broken because its properties are camelCase but materialisation is looking for snake_case properties ("icon_name").The text was updated successfully, but these errors were encountered: