This PR progressively introduces fieldMetadataItemUsedInDropdown instead of filterDefinitionUsedInDropdown where most easy to replace. This allows to use `fieldMetadataItemUsedInDropdown.id` instead of `filterDefinition.fieldMetadataId`, which is one easy dependency to remove on filter definition. We still derive filterDefinition instead of fully replacing it, because it will be easier to remove RecordFilterDefinition usage in a bottom-up approach instead. In multiple components of the filter dropdown, we try to replace filterDefinition by fieldMetadataItem derivation : Icon, label, id, type, etc. We also introduce the usage of subFieldNameUsedInDropdown instead of storing it dynamically on filterDefinition, for handling filtering on composite sub fields. The method `formatFieldMetadataItemAsFilterDefinition()` that is used to derive filterDefinition from fieldMetadataItem is what was being used originally to create the availableFilterDefinition state. (That is already removed) Fixed associated unit tests accordingly.
Run yarn dev while server running on port 3000