render NitroKit::Table.new(
id: "gallery-table-invoices",
table_html: { id: "gallery-table-invoices-element" }
) do |table|
table.caption("Invoice history")
table.thead do
table.tr do
table.th("Invoice")
table.th("Issued")
table.th("Status")
table.th("Amount", align: :right)
table.th("Action", align: :right)
end
end
table.tbody do
Gallery::Data.invoices.each do |invoice|
table.tr do
table.th(invoice.number, scope: :row)
table.td(invoice.issued_on.iso8601)
table.td do
render NitroKit::Badge.new(
invoice.status.to_s.humanize,
id: "gallery-table-invoice-#{invoice.id}-status",
color: invoice_status_color(invoice.status),
size: :sm
)
end
table.td(format_amount(invoice), align: :right)
table.td(align: :right) do
render NitroKit::Button.new(
"View",
id: "gallery-table-invoice-#{invoice.id}-view",
href: "#invoice-#{invoice.id}",
size: :sm
)
end
end
end
end
end