jsx-slack
Version:
Build JSON object for Slack Block Kit surfaces from JSX
2 lines (1 loc) • 503 B
JavaScript
import{spaces as s,letters as c}from"../data/font-width.json.mjs";const i=Object.keys(s).reduce((t,e)=>({...t,[s[e]]:e}),{}),l=Object.values(s).sort((t,e)=>e-t),a=new Map,u=new Map;function d(t){let e=a.get(t);if(e===void 0){e="";let o=t;l.forEach(r=>{const n=Math.floor(o/r);n>0&&(e+=i[r].repeat(n)),o-=r*n}),a.set(t,e)}return e}function f(t){let e=u.get(t);return e===void 0&&(e=[...t].reduce((o,r)=>{var n;return o+((n=c[r])!=null?n:25.6)},0),u.set(t,e)),e}export{d as makeIndent,f as measureWidth};