Repository navigation
Conversation
Review or Edit in CodeSandboxOpen the branch in Web Editor • VS Code • Insiders |
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Word export wrote each equation as its TeX source, drew task items as a button beside their text, and baked its own colors and fonts into callouts and code blocks, so the app's stylesheet never reached the file. exportDocx now builds Word math from KaTeX's MathML and keeps the TeX inside a Word equation where Word math cannot express it. importDocx reads Word math back as equation and inlineEquation nodes. Task items export as one paragraph with a checked or unchecked box marker. The Word components draw structure only, and the copied docx-export stylesheet holds the look. List numbering lives on each document, so concurrent exports keep their own, and passing stylesheet or fontFamily rebuilds an unchanged imported file. Plan: docs/plans/2026-10-10-html-word-owns-word.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The live IndentKit and ListKit let a user indent an image or put it in a list, but the static kits did not target images, and the static editor's closed schema refused any document that held one. The server HTML block, the AI command route and the AI preview then threw on that document. Both static kits now target images, so the static editor loads the document and draws the image as a list item at its indent. Plan: docs/plans/2026-10-10-html-static-kit-drift.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
materializeEquations replaced any paragraph whose only content was a display equation with a block equation node. A Word list item or an indented paragraph built that way lost its listType and indent, the items after it renumbered, and strict import reported no loss. Such a paragraph now stays, and its equation imports inline. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…props The props type forbids editor and document with optional never fields, which still admit an explicit undefined, but the guard threw on any own key. renderStaticHtml now throws only when either holds a value. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The redo plan's Close records the two-round panel on the branch diff, the check steps that also fail on next, and the owner's call to open the pull request. The static kit plan names its review inputs, as the review ledger requires. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The docx guide and the changeset said an equation exports its TeX when Word math cannot express the notation. The fallback covers notation this converter does not handle, such as a matrix, which Word math can express. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…flect The html subject file now describes the branch's export: the static kit as presentation, the detached compile, the export error toast and the static kits' image targets, with the plans' remaining open work. The Word plan's Close gains the decision-trail review its first close skipped, with its narrowed claims, and the redo plan records the session reflect and its backlog. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The review ledger needs every review_inputs path in a tree or commit. The Word plan listed nine probe logs from its author's ignored run directory, so review-ledger passed on that machine and failed in CI. The plan now names the six tracked specs that hold its tests, and its Close names them too. The Close also lists the revision-diagnostic deviation its first close missed.
exportDocx drew the body and each comment body through two near-copies that built the same static HTML options and returned diagnostics in two shapes. One renderDocxHtml now renders either document, exportDocx applies the review projection to the body, and missingDrawings reads the render results. Output is unchanged.
The marker codec's parse regex matches only comment and revision markers, but Marker['kind'] also listed three equation kinds, so its cast admitted kinds parse never returns. The codec now builds the three equation tokens once as codec.equation, which instrumentWordMath and materializeEquations read.
U+2061 and the combining accents in the Word math converters and their shared vocabulary read as empty strings in review. Each is now written as a Unicode escape with the same value.
The PR's code-quality review found that lists inside callouts and columns likely restart their numbering, that Word math import hardcodes plugin types and list keys, and that text-only Word math reports Mammoth's diagnostic code. Each is listed in the documents subject's Open work with its owner and stop.
The babysit plan records the CI triage against next's own runs, the repair of the branch's one own CI failure, the code-quality review's findings and how each was settled, and the merge frontier. Its decision log holds each call with its proof.
A Codex reviewer checked the babysit's decision log against its transcript. The Close now says the red checks are next's by CI evidence only, that the full www check passes locally with its production build, and how each review warning was settled. A numbered list after a plain paragraph joins the Word list numbering item in the documents subject's Open work.
The owner moved the review-ledger checker fix into the session that started the babysit, so the plan's default names that session instead of a proposed task.
Details pruned open keys after every document change by resolving them through one editor, so a key from an authored view looked deleted and its Details collapsed on Enter. Open keys now stay until the block is closed, which also lets undo restore a deleted Details open. A read-only view that closes a Details moves the owning editor's selection to the Summary end, because the plugin store shares open state across views of the document. Another authored view keeps its caret in the hidden body, as on next. Enter at the end of a Summary with no body inserts an empty body paragraph.
…ions NodeSelectionDrag took ArrowUp, ArrowDown and Shift for every node selection before checking whether it could move, so Shift+Arrow no longer extended table cell selections and ArrowDown on a selected image no longer entered its caption. The handler now acts only when the selected blocks share a parent and are block-content candidates; table cells and a single object without Shift reach their own owners. It steps from the focused block to the next candidate, stops before a sibling that a content boundary leaves unmounted, and scrolls the new block into view. The proposed EDIT-SEL-BLOCK rules describe this behavior, and its tests carry their tags.
Review found that the text-selection scrolling changes skipped the table select clamp in markup views, stopped scrolling an Editable that scrolls itself at document boundaries, could leave stale selection paint when an endpoint has no DOM host, and repeated scrolling on every selection repair retry. Plite's selection and scrolling code matches next again, and the work moves to its own follow-up with those findings.
The Details, block menu, drag handle and equation components and the Details docs changed, so the generated registry and docs payloads follow them.
The PR plan now states the final Details open-state behavior and notes that keyboard text-selection scrolling moved out of this PR.
# Conflicts: # apps/www/src/__registry__/generation.json # apps/www/src/__registry__/index.tsx # apps/www/src/__registry__/overlays/manifest.json # apps/www/src/__registry__/registry-metadata.json # apps/www/src/registry/changelog/components.json # apps/www/src/registry/changelog/index.json # packages/platejs/turbo.json
fix(editor): preserve Details editing and selection navigation (#5156)
# Conflicts: # apps/www/public/r/block-list-static.json # apps/www/public/r/docx-docs.json # apps/www/public/r/registry-docs.json # apps/www/public/r/registry.json # apps/www/src/__registry__/generation.json # apps/www/src/__registry__/index.tsx # apps/www/src/__registry__/overlays/manifest.json # apps/www/src/__registry__/registry-metadata.json # apps/www/src/registry/changelog/components.json # apps/www/src/registry/changelog/index.json # apps/www/src/registry/components/editor/block-list-static.tsx # docs/plans/topics/documents.md # packages/platejs/src/docx/export/lib/exportDocx.tsx # packages/platejs/src/docx/export/lib/internal/docx-document.ts # packages/platejs/src/docx/export/lib/internal/render-document-file.ts # packages/platejs/src/docx/export/lib/internal/xml-builder.ts # packages/platejs/src/docx/import/lib/importDocx.ts
fix(export): draw exports with the static kit and write Word math
This branch was successfully deployed
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.
Uh oh!
There was an error while loading. Please reload this page.