IpRange and GeoDistance aggregations were missing the ability to specify a custom key for a range.
As it was already done for the Range aggregation, I moved that to a trait that is now used everywhere we need addRange.
For the IpRange aggregation, I also added the key option to the addMaskRange method.
The only drawback with this refactoring is that the arguments of the trait have to allow string|int|float|null to be usable everywhere and we loose some phpdoc details on the arguments. In my opinion, people using this should already know what format is expected and can always check the doc so I personally prefer to have the code deduplicated, but if you disagree I can change it back to add the key everywhere without using a common trait.
IpRange and GeoDistance aggregations were missing the ability to specify a custom key for a range. As it was already done for the Range aggregation, I moved that to a trait that is now used everywhere we need
addRange
. For the IpRange aggregation, I also added the key option to theaddMaskRange
method.The only drawback with this refactoring is that the arguments of the trait have to allow string|int|float|null to be usable everywhere and we loose some phpdoc details on the arguments. In my opinion, people using this should already know what format is expected and can always check the doc so I personally prefer to have the code deduplicated, but if you disagree I can change it back to add the key everywhere without using a common trait.