Repository navigation
feat: draw themed tables in PDF export - #67
Open
RichardHightower wants to merge 3 commits into
Open
RichardHightower wants to merge 3 commits into
RichardHightower wants to merge 3 commits into
Conversation
01M5FSD7MA4Z0KY4ZRWRV0XJZ3 PDF export printed each table row as one line of spaced text. It now draws a grid with jsPDF: a filled bold header row, striped body rows, cell borders, and text that wraps in each cell. The header row repeats on each page that a long table runs onto. Export themes get five table colors: tableHeaderBg, tableHeaderText, tableRowBg, tableRowAltBg, and tableBorder. PDF, Word, and the export preview all use them. Ice Snowstorm has a navy header and ice stripes. Clay has a terracotta header and warm stripes. The Themes dialog has a Tables group to edit them. A theme saved before this change keeps its old table look. Also files the DMG build failure, the flaky E2E journeys, and the missing wiki publish step. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
01M5FSD7MA4Z0KY4ZRWRV0XJZ3 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
01M5FSD7MA4Z0KY4ZRWRV0XJZ3 The branch cleanup task stays open. Auto mode blocked the branch deletes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PDF export printed each table row as one line of spaced text. It now draws a real table. This closes the v0.6.6 known issue
01M5FSD7MA4Z0KY4ZRWRV0XJZ3.drawTableinsrc/lib/exportPdf.tsdraws a grid with jsPDF. You get a filled bold header row, striped body rows, cell borders, and text that wraps in each cell. The header row repeats on each new page. No new dependency.ExportThemehas five new colors:tableHeaderBg,tableHeaderText,tableRowBg,tableRowAltBg, andtableBorder. Ice Snowstorm has a navy header and ice stripes. Clay has a terracotta header and warm stripes.wireframes/themes.md.Tests
src/lib/export.test.ts. These tests parse the PDF stream for cell fills in row order, row heights with a wrapped cell, the next block below the table, and a header on each page. They also check Word fills in row order and the theme fallbacks. Three mutations ofdrawTableeach fail a test.e2e/export.spec.ts. The tests check the Clay table preview and the PDF download. They also check that Ice and Clay table fields are disabled, and that a custom theme saves a table color and exports with it.bun run verify: typecheck, guard, and 291 unit tests pass. All export E2E tests pass. The full E2E run failed 3 to 5 unrelated tests on each run, and the failing tests changed between runs. A full run onmainfailed too. These tests are tracked in01M5FSD7RV6MJ0JZVAT5F3VW3Hand01M5JKR1P3V9VD5TGSFYFXCV6D.Filed during this work
01M5JJZRM87A0Y5YFFHE8WF2GR:bun tauri buildfails at the DMG step.01M5JKR1P3V9VD5TGSFYFXCV6D: flaky new-note and dataset E2E tests.01M5JKV9HQZ7X83CD6X1SMP6VV: no script publishespublish-manifest.jsonto the wiki.🤖 Generated with Claude Code