alpha
Login
or
Join now
jeremy.herve.bzh
/
skypress
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
A calm place to write long-form, and publish it to the open social web.
skypress.blog/
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
skypress
/
src
/
styles
/
at
migrate-off-isolated-block-editor
8 files
Jeremy Herve
Harden the directly-composed editor: debounce drafts, scope undo, add error boundary
8d ago
1bcd127b
app-bar.css
Harden the directly-composed editor: debounce drafts, scope undo, add error boundary Three fixes from review of the @wordpress/block-editor migration (Decision 0021): - Debounce draft persistence. onInput fires per keystroke and forward() ran a synchronous JSON.stringify of the whole tree + localStorage.setItem each time, which lags typing on long articles. Split the cheap publish-state forward (immediate, so publish stays current) from the costly localStorage write (debounced, flushed on unmount so the last edits survive the publish remount). - Scope the Cmd/Ctrl+Z capture handler. It claimed undo for the whole editor subtree, including chrome text fields (inspector Alt text, link popover URL), reverting a block change and swallowing the field's native undo. shouldHandle- EditorUndo() now defers to native undo for editable fields outside the canvas. - Restore the editor error boundary. The old IsolatedBlockEditor rendered an onError fallback; the direct composition had none, so a render throw blanked the whole client-only island. EditorErrorBoundary shows the recovery notice. Adds regression tests for the undo-scoping predicate and the error boundary.
1 week ago
editor-chrome.css
Harden the directly-composed editor: debounce drafts, scope undo, add error boundary Three fixes from review of the @wordpress/block-editor migration (Decision 0021): - Debounce draft persistence. onInput fires per keystroke and forward() ran a synchronous JSON.stringify of the whole tree + localStorage.setItem each time, which lags typing on long articles. Split the cheap publish-state forward (immediate, so publish stays current) from the costly localStorage write (debounced, flushed on unmount so the last edits survive the publish remount). - Scope the Cmd/Ctrl+Z capture handler. It claimed undo for the whole editor subtree, including chrome text fields (inspector Alt text, link popover URL), reverting a block change and swallowing the field's native undo. shouldHandle- EditorUndo() now defers to native undo for editable fields outside the canvas. - Restore the editor error boundary. The old IsolatedBlockEditor rendered an onError fallback; the direct composition had none, so a render throw blanked the whole client-only island. EditorErrorBoundary shows the recovery notice. Adds regression tests for the undo-scoping predicate and the error boundary.
1 week ago
editor-chrome.test.ts
Fix publish pill losing its styling to a premature CSS comment close A `*/` inside the comment above `.studio__published` (in `--sun*/--ink`) closed the comment early, so the trailing prose plus the selector collapsed into one invalid rule that every CSS parser discards. The publish notice rendered as an unstyled full-width paragraph instead of the centred sunrise pill. Reword the comment to drop the literal `*/`. Add a PostCSS-based regression test that asserts the rule survives parsing.
2 weeks ago
global.css
Add sky-phase theme picker to the publication form
2 weeks ago
login.css
Share sign-in form styles between dashboard and editor The signed-out LoginForm renders on both /editor and /dashboard, but its `login__*` rules lived only in editor-chrome.css (imported by editor.astro). The dashboard never imported them, so the same form appeared unstyled there. Extract the form rules into a shared src/styles/login.css and import it from both pages, so the sign-in form looks identical wherever a signed-out visitor lands. The editor-specific `.studio__login`/`.studio__error` rules stay in editor-chrome.css.
2 weeks ago
post-actions.css
Add like/repost/quote/reply actions to reader article pages Readers can now react to a published article from the bottom of the post. Each action writes a native app.bsky.feed.* record to the reader's own PDS, targeting the article's companion Bluesky post (bskyPostRef) so the reply threads under it and the like/repost show on Bluesky: - like -> app.bsky.feed.like - repost -> app.bsky.feed.repost - reply -> app.bsky.feed.post with reply.{root,parent} = companion post - quote -> app.bsky.feed.post embedding the companion post Replies are app.bsky.feed.post (not a site.standard.* record) because only app.bsky.* records thread/federate on Bluesky; that caps replies at 300 graphemes, so a plain composer with an Intl.Segmenter counter replaces the block editor for replies (Decision 0015). A client:only PostActions island reuses the existing OAuth AuthProvider to sign readers in; the read path still imports no @wordpress/*. No new OAuth scope (transition:generic already covers app.bsky.feed.* writes). Actions are disclosed as public Bluesky actions. The bar is omitted for legacy documents without a bskyPostRef.
2 weeks ago
record-json.css
Give the record JSON modal a fixed dark theme (theme-independent contrast)
2 weeks ago
write-chrome.css
Style the publish stepper; drop its "Keep editing" cancel button The publish flow's confirm step had an unstyled publication <select> and an unstyled publish button, plus a "Keep editing" cancel. Remove the cancel button (onCancel stays for the inline create-publication step), and style the picker + primary action to match the editor's .publish__select / .publish__button (token border, sun fill), with the working-status text muted.
1 week ago