tmp/webapp-docs/frontend/components/single/DetailTable.js

import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
/**
 * A `<table>` of label/value detail rows for the single-image view (empty rows skipped).
 * @module gui/components/single/DetailTable
 */

/** One row in the details table (skipped when empty). */
function DetailRow({
  label,
  value
}) {
  if (value === undefined || value === null || value === "") return null;
  return /*#__PURE__*/_jsxDEV("tr", {
    className: "g-detail-row",
    children: [/*#__PURE__*/_jsxDEV("th", {
      scope: "row",
      className: "g-detail-key",
      children: label
    }, void 0, false), /*#__PURE__*/_jsxDEV("td", {
      className: "g-detail-value",
      children: String(value)
    }, void 0, false)]
  }, void 0, true);
}

/** A `<table>` of label/value detail rows (empty rows skipped). */
export default function DetailTable({
  rows
}) {
  return /*#__PURE__*/_jsxDEV("table", {
    className: "g-detail-table",
    children: /*#__PURE__*/_jsxDEV("tbody", {
      children: rows.map(([k, v]) => /*#__PURE__*/_jsxDEV(DetailRow, {
        label: k,
        value: v
      }, k, false))
    }, void 0, false)
  }, void 0, false);
}