@seed-ship/mcp-ui-solid 4.3.4 → 4.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [4.3.5] - 2026-04-11
9
+
10
+ ### Fixed — Sticky Table Header on Scroll
11
+ - Table scroll container now has bounded `max-height` (400px chat, 70vh fullscreen) when rows > 8
12
+ - Combined with existing `sticky top-0` thead, header stays visible while scrolling
13
+ - Works in both chat view and fullscreen modal
14
+
8
15
  ## [4.3.4] - 2026-04-11
9
16
 
10
17
  ### Added — Context-Aware Table Pagination (chat vs fullscreen)
@@ -459,7 +459,7 @@ ${dataRows}`;
459
459
  URL.revokeObjectURL(url);
460
460
  };
461
461
  const exportable = tableParams.exportable;
462
- const exportFormats = typeof exportable === "object" && (exportable == null ? void 0 : exportable.formats) ? exportable.formats : ["csv", "tsv", "json"];
462
+ const exportFormats = typeof exportable === "object" && (exportable == null ? void 0 : exportable.formats) ? exportable.formats : ["csv", "json"];
463
463
  const exportFilename = typeof exportable === "object" && (exportable == null ? void 0 : exportable.filename) || `table-${Math.random().toString(36).slice(2, 9)}`;
464
464
  const [showExportMenu, setShowExportMenu] = solidJs.createSignal(false);
465
465
  const handleExport = (format) => {
@@ -549,17 +549,17 @@ ${dataRows}`;
549
549
  return tableParams.title || "Table";
550
550
  },
551
551
  get copyData() {
552
- return getTableText();
552
+ return getTableCSV();
553
553
  },
554
- copyLabel: "Copy table (TSV)",
554
+ copyLabel: "Copy table (CSV)",
555
555
  get children() {
556
556
  var _el$29 = web.getNextElement(_tmpl$26), _el$142 = _el$29.firstChild, [_el$143, _co$35] = web.getNextMarker(_el$142.nextSibling), _el$44 = _el$143.nextSibling, _el$132 = _el$44.firstChild, [_el$133, _co$30] = web.getNextMarker(_el$132.nextSibling), _el$134 = _el$133.nextSibling, [_el$135, _co$31] = web.getNextMarker(_el$134.nextSibling), _el$70 = _el$135.nextSibling, _el$71 = _el$70.firstChild, _el$72 = _el$71.firstChild, _el$73 = _el$72.firstChild, _el$74 = _el$72.nextSibling, [_el$75, _co$14] = web.getNextMarker(_el$74.nextSibling), _el$136 = _el$70.nextSibling, [_el$137, _co$32] = web.getNextMarker(_el$136.nextSibling), _el$138 = _el$137.nextSibling, [_el$139, _co$33] = web.getNextMarker(_el$138.nextSibling), _el$140 = _el$139.nextSibling, [_el$141, _co$34] = web.getNextMarker(_el$140.nextSibling);
557
557
  web.insert(_el$29, web.createComponent(solidJs.Show, {
558
558
  when: exportable,
559
559
  get fallback() {
560
560
  return web.createComponent(CopyButton, {
561
- getText: getTableText,
562
- title: "Copy table data",
561
+ getText: getTableCSV,
562
+ title: "Copy table (CSV)",
563
563
  position: "top-right"
564
564
  });
565
565
  },
@@ -788,6 +788,9 @@ ${dataRows}`;
788
788
  var _v$0 = isVirtualizing() ? {
789
789
  "max-height": "500px",
790
790
  "overflow-y": "auto"
791
+ } : clientVisibleRows().length > 8 ? {
792
+ "max-height": isExpanded() ? "70vh" : "400px",
793
+ "overflow-y": "auto"
791
794
  } : {}, _v$1 = tableParams.title || "Data table", _v$10 = tableParams.title ? `${tableId}-title` : void 0;
792
795
  _p$.e = web.style(_el$70, _v$0, _p$.e);
793
796
  _v$1 !== _p$.t && web.setAttribute(_el$70, "aria-label", _p$.t = _v$1);