Hi,
here you cannot use two variables without any operator
If(GetProductCategories.List.Current.ProductCategory.Id = Entities.ProductCategory.Rings
and CategoriesFilter.Rings Entities.Color.Primary,
here the CategoriesFilter.Rings and Entities.Color.Primary are two different variables, check that logic.
If condition should always return a boolean value, if you are using and in the If condition then you should use like
If(GetProductCategories.List.Current.ProductCategory.Id = Entities.ProductCategory.Rings and COLOR = Entities.Color.Primary,
I will provide you with the simplest way to do this nested If without syntax error and make changes according to your logic.
Here these double quotes are the falseSelector of the If condition.
I hope this will help.