JSFiddle - React, Tailwind, and code Playground

JavaScript

f=n=>{z=[[n]];(d=a=>{for(var i=a[0]-1,l=1;i>=l&&l<=a[a.length-1]&&((a[1]&&i>=a[1])||!a[1]);){m=a.slice();m[0]=i--;m.push(l++);z.push(m);d(m)}})([n]);z.sort((a,b)=>{for(i=0;i<a.length;i++)if(a[i]>b[i])return-1;else if(a[i]<b[i])return 1});z.forEach(e=>{for(i=0,s=n+" = ";i<e.length;){if(i>0)s+=" + ";s+=e[i++]}console.log(s)})}

f(8);