Brexit, Covid, the war in Ukraine and soaring prices have created a “long, dark economic winter”, First Minister John Swinney will claim in a speech tomorrow.