ll-package
Version:
3 lines (2 loc) • 1.71 kB
JavaScript
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function y(n,e={}){const o=(e.align||[]).concat(),j=e.stringLength||b,d=[],u=[],w=[],a=[];let g=0,s=-1;for(;++s<n.length;){const c=[],f=[];let t=-1;for(n[s].length>g&&(g=n[s].length);++t<n[s].length;){const i=M(n[s][t]);if(e.alignDelimiters!==!1){const r=j(i);f[t]=r,(a[t]===void 0||r>a[t])&&(a[t]=r)}c.push(i)}u[s]=c,w[s]=f}let l=-1;if(typeof o=="object"&&"length"in o)for(;++l<g;)d[l]=S(o[l]);else{const c=S(o);for(;++l<g;)d[l]=c}l=-1;const p=[],z=[];for(;++l<g;){const c=d[l];let f="",t="";c===99?(f=":",t=":"):c===108?f=":":c===114&&(t=":");let i=e.alignDelimiters===!1?1:Math.max(1,a[l]-f.length-t.length);const r=f+"-".repeat(i)+t;e.alignDelimiters!==!1&&(i=f.length+i+t.length,i>a[l]&&(a[l]=i),z[l]=i),p[l]=r}u.splice(1,0,p),w.splice(1,0,z),s=-1;const D=[];for(;++s<u.length;){const c=u[s],f=w[s];l=-1;const t=[];for(;++l<g;){const i=c[l]||"";let r="",m="";if(e.alignDelimiters!==!1){const h=a[l]-(f[l]||0),x=d[l];x===114?r=" ".repeat(h):x===99?h%2?(r=" ".repeat(h/2+.5),m=" ".repeat(h/2-.5)):(r=" ".repeat(h/2),m=r):m=" ".repeat(h)}e.delimiterStart!==!1&&!l&&t.push("|"),e.padding!==!1&&!(e.alignDelimiters===!1&&i==="")&&(e.delimiterStart!==!1||l)&&t.push(" "),e.alignDelimiters!==!1&&t.push(r),t.push(i),e.alignDelimiters!==!1&&t.push(m),e.padding!==!1&&t.push(" "),(e.delimiterEnd!==!1||l!==g-1)&&t.push("|")}D.push(e.delimiterEnd===!1?t.join("").replace(/ +$/,""):t.join(""))}return D.join(`
`)}function M(n){return n==null?"":String(n)}function b(n){return n.length}function S(n){const e=typeof n=="string"?n.codePointAt(0):0;return e===67||e===99?99:e===76||e===108?108:e===82||e===114?114:0}exports.markdownTable=y;
;