2 lines
659 B
JavaScript
2 lines
659 B
JavaScript
const d={border:t=>t.substring(0,t.lastIndexOf("-"))},u=(t,e=d)=>{const n=Object.keys(e).find(r=>t.includes(r));return n?e[n](t):t.substring(0,t.indexOf("-"))};function T(...t){return t.filter(e=>e).reduce((e,i)=>{const n=Array.isArray(i)?Array.from(i).map(s=>s.split(" ")).flat():i.split(" "),r=n.map(s=>u(s)),a=r.filter(s=>!e.types.includes(s)),c=[...r.filter(s=>e.types.includes(s)),...a],l=[...new Set([...e.types,...c])],f=l.map(s=>{if(c.includes(s)){const p=r.indexOf(s);if(p>=0)return n[p]||""}const o=e.types.indexOf(s);return o>=0&&e.classes[o]||""}).filter(s=>!!s);return{types:l,classes:f}},{types:[],classes:[]}).classes.join(" ")}export{T as s};
|