Preheat oven to 180 degrees. Keep a small pudding pan ready.
Cream butter and sugar till fluffy. Add in the apricot jam and egg and beat till combined.
Sift together the dry ingredients. Add half the mixture and half the milk and beat till combined.
Add in the remaining flour mixture with the remaining milk and beat again. Beat in the vinegar.
Pour into the pan and bake for 30-40 minutes till skewer comes out clean.
Meanwhile, combine all ingredients for the sauce and cook on low flame till it becomes a homogeneous mixture. Keep warm.
When the pudding is out of the oven, poke with a fork all over. Pour half the sauce over it, and allow it to rest for 30 minutes to soak up the sauce.
To serve, warm the remaining sauce. Cut into slices, pour the sauce over and enjoy.
Notes
To make the pudding eggless, substitute with ¼ cup yogurt or ¼ cup extra milk. You can serve this pudding along with some ice cream or cold custard apart from the warm sauce.