I am trying to get my preact Polaris web components using a customer-account extension to display similar to a Table but having no luck; and there is very few documentation on trying to get it this way. Specifically this is rendering on the Orders Screen for new customers account.
Was looking for some input on how I can accomplish this Table/Grid feat using preact? Do I have to use the older ui-extension import?
{invoicesLoaded && (
<>
{invoices.length > 0 ? (
<>
{/* Table Header */}
<s-stack direction="inline" gap="none" padding="base">
<s-text emphasis="bold" size="small">Invoice #</s-text>
<s-text emphasis="bold" size="small">Date</s-text>
<s-text emphasis="bold" size="small">Store</s-text>
<s-text emphasis="bold" size="small">Status</s-text>
<s-text emphasis="bold" size="small">Total</s-text>
</s-stack>
<s-divider />
{/* Invoices */}
{invoices.map((invoice, idx) => {
const isExpanded = expandedInvoice === invoice.id;
const lines = invoiceLines[invoice.id] || [];
const isLoading = loadingLines[`invoice-${invoice.id}`];
return (
<s-box key={invoice.id}>
<s-stack direction="inline" gap="none" padding="base" onClick={() => toggleInvoice(invoice.id)}>
<s-text size="small">
<s-link>{invoice.invoiceNumber}</s-link>
</s-text>
<s-text size="small">
{invoice.date ? new Date(invoice.date).toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric' }) : 'N/A'}
</s-text>
<s-text size="small">
{invoice.store || 'N/A'}
</s-text>
<s-text size="small">
{invoice.status || 'N/A'}
</s-text>
<s-text size="small" emphasis="bold">
${Number(invoice.total || 0).toFixed(2)}
</s-text>
</s-stack>
{isExpanded && isLoading && (
<s-stack padding="base">
<s-text size="small">Loading items...</s-text>
</s-stack>
)}
{isExpanded && !isLoading && lines.length > 0 && (
<s-stack gap="small" padding="base">
{lines.map((item, idx) => (
<s-stack key={`${invoice.id}-line-${idx}`} gap="none">
<s-text size="small" emphasis="bold">{idx + 1}. {item.productId}</s-text>
<s-text size="small">{item.description || item.name}</s-text>
<s-text size="small">Qty: {item.qtyShip} × ${Number(item.unitPrice).toFixed(2)} = ${Number(item.extendedPrice).toFixed(2)}</s-text>
</s-stack>
))}
</s-stack>
)}
{isExpanded && !isLoading && lines.length === 0 && (
<s-stack padding="base">
<s-text size="small">No items found</s-text>
</s-stack>
)}
{idx < invoices.length - 1 && <s-divider />}
</s-box>
);
})}

