A tricky one about sprites

Telinc1 thank you! Your reply was very insightful and useful.
I ended up using the RotateAroundDistance function of Phaser.Math and manually adjusting the cannon with the resulting coordinates.