This package is adding new methods on the selection object to control transitions.
But if different versions of d3-selection end up being installed for the d3-transition dependency and for the main project, the main project would not have access to the method.
A peer dependency should be used instead, to ensure that the d3-selection for which the prototype gets augmented is the project one.
There will be a BC break for users of the package: they will need to depend on d3-selection too when they depend on d3-transition (but that is likely already the case though).
This would not impact projects installing the full d3 package (as the d3 package is the one depending on both packages, and it already depends on both anyway)
This package is adding new methods on the selection object to control transitions.
But if different versions of
d3-selection
end up being installed for thed3-transition
dependency and for the main project, the main project would not have access to the method. A peer dependency should be used instead, to ensure that thed3-selection
for which the prototype gets augmented is the project one.There will be a BC break for users of the package: they will need to depend on
d3-selection
too when they depend ond3-transition
(but that is likely already the case though). This would not impact projects installing the full d3 package (as the d3 package is the one depending on both packages, and it already depends on both anyway)