| 1 |
import{getStatsI18n}from"./api.js";export const renderDataTable=(e,t=[],n=[],a={})=>{if(!e)return{columns:t,rows:n};e.textContent="";const l=document.createElement("div");l.className="lp-table-wrap";const d=document.createElement("table");d.className="lp-list-table lp-stats-table";const o=document.createElement("thead"),c=document.createElement("tr");t.forEach(e=>{const t=document.createElement("th");t.textContent=e.label??"",c.appendChild(t)}),o.appendChild(c),d.appendChild(o);const p=document.createElement("tbody");if(n.length)n.forEach(e=>{const n=document.createElement("tr");t.forEach(t=>{const a=document.createElement("td"),l=e[t.key],d="function"==typeof t.format?t.format(l,e):l;let o;o=d instanceof Node?d:document.createTextNode(null==d?"":String(d));const c="function"==typeof t.badge?t.badge(e):"";if(c){const e=document.createElement("span");e.className=`lp-badge lp-badge--${c}`,e.appendChild(o),a.appendChild(e)}else a.appendChild(o);n.appendChild(a)}),p.appendChild(n)});else{const e=document.createElement("tr"),n=document.createElement("td");n.colSpan=t.length||1,n.className="lp-stats-table__empty",n.textContent=a.emptyText||getStatsI18n("noData","No data for this period."),e.appendChild(n),p.appendChild(e)}return d.appendChild(p),l.appendChild(d),e.appendChild(l),{columns:t,rows:n}}; |