Skip to content

Version Packages - #88

Merged
noudadrichem merged 1 commit into
mainfrom
changeset-release/main
Oct 7, 2026
Merged

noudadrichem merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@input/pen-core@0.4.0

Minor Changes

  • cc0b350: resolveSuggestionMenuTarget with boundary: "whitespace" now anchors on the last trigger that has whitespace (or the start of the lookbehind) before it, instead of rejecting when the last trigger character does not. A later trigger character becomes part of the query, so @ada@example resolves as one mention query rather than closing the menu at the second @. Hosts that relied on a second trigger character closing the menu, such as :smile:, should set closingChar. boundary: "any" is unchanged.

    Breaking: yes — hosts whose boundary: "whitespace" trigger relied on a second trigger character closing the menu set closingChar

Patch Changes

  • 84f4d84: Snapshot op payloads for onBeforeApply hooks without recursing into cycles, so a cyclic payload is dropped with PEN_APPLY_004 instead of overflowing the stack, reporting PEN_APPLY_007, and skipping the document-profile boundary hook.

    Breaking: no

  • cc0b350: useSuggestionMenu no longer blanks an open menu on every keystroke. A synchronous getItems result is applied in the same state update that opens or retargets the menu, with no intermediate loading render. For an async getItems, a refined query on the same trigger keeps the previous items while status is loading, then swaps in its own; stale responses are still dropped. A getItems that throws synchronously now lands in the error state instead of escaping the refresh. @input/pen-types exports the isPromiseLike guard, which the hook and core's extension lifecycle now share.

    Breaking: no

  • Updated dependencies [cc0b350]

    • @input/pen-types@0.4.0
    • @input/pen-yjs@0.4.0

@input/pen-yjs@0.4.0

Patch Changes

  • Updated dependencies [cc0b350]
    • @input/pen-types@0.4.0

@input/pen-ai@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-tools@0.4.0
    • @input/pen-ingest@0.4.0

@input/pen-autoformat@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-interop@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-ingest@0.4.0
    • @input/pen-markdown@0.4.0

@input/pen-multiplayer@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-yjs@0.4.0

@input/pen-search@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-shortcuts@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-snapshots@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-tools@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-ingest@0.4.0
    • @input/pen-markdown@0.4.0

@input/pen-undo@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-ai@0.4.0
    • @input/pen-interop@0.4.0
    • @input/pen-shortcuts@0.4.0
    • @input/pen-tools@0.4.0
    • @input/pen-undo@0.4.0
    • @input/pen-schema@0.4.0

@input/pen-dom@0.4.0

Patch Changes

  • 56effc9: A host element focused beside the editor keeps Mod-a, Mod-z and Mod-Shift-z (HOST9). The document key handler claimed them for any editor left with a caret, so Mod-z on a focused host element undid the editor's last edit instead of reaching the host. With focus on the body, or on a wrapper of the editor root, they still reach the editor.

    Breaking: no

  • 50a5c8f: Initialize editor root focus when binding, so focus that arrived before the listeners were installed is reflected in the field editor, caret overlay, and autocomplete eligibility across React, Vue, and vanilla mounts.

    Skip unchanged React focus state updates so the initial focus report preserves existing mount render counts.

    Breaking: no

  • 9f6e6ed: Tab accepts a visible inline completion inside a list item instead of nesting the item. The completion is checked before the default keymap, so pen.indent no longer wins the key. Shift-Tab still outdents while a completion is visible, and Tab still nests when none is.

    Breaking: no

  • Updated dependencies [84f4d84]

  • Updated dependencies [cc0b350]

  • Updated dependencies [cc0b350]

    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-shortcuts@0.4.0

@input/pen-react@0.4.0

Patch Changes

  • 50a5c8f: Initialize editor root focus when binding, so focus that arrived before the listeners were installed is reflected in the field editor, caret overlay, and autocomplete eligibility across React, Vue, and vanilla mounts.

    Skip unchanged React focus state updates so the initial focus report preserves existing mount render counts.

    Breaking: no

  • cc0b350: useSuggestionMenu no longer blanks an open menu on every keystroke. A synchronous getItems result is applied in the same state update that opens or retargets the menu, with no intermediate loading render. For an async getItems, a refined query on the same trigger keeps the previous items while status is loading, then swaps in its own; stale responses are still dropped. A getItems that throws synchronously now lands in the error state instead of escaping the refresh. @input/pen-types exports the isPromiseLike guard, which the hook and core's extension lifecycle now share.

    Breaking: no

  • Updated dependencies [84f4d84]

  • Updated dependencies [56effc9]

  • Updated dependencies [50a5c8f]

  • Updated dependencies [9f6e6ed]

  • Updated dependencies [cc0b350]

  • Updated dependencies [cc0b350]

    • @input/pen-core@0.4.0
    • @input/pen-dom@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-ai@0.4.0
    • @input/pen-interop@0.4.0
    • @input/pen-multiplayer@0.4.0
    • @input/pen-search@0.4.0
    • @input/pen-shortcuts@0.4.0
    • @input/pen-snapshots@0.4.0
    • @input/pen-schema@0.4.0

@input/pen-vue@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [56effc9]
  • Updated dependencies [50a5c8f]
  • Updated dependencies [9f6e6ed]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-dom@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-interop@0.4.0
    • @input/pen-schema@0.4.0

@input/pen-schema@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-ingest@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-markdown@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0

@input/pen-assets@0.4.0

Patch Changes

  • Updated dependencies [cc0b350]
    • @input/pen-types@0.4.0

@input/pen-test@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-interop@0.4.0
    • @input/pen-schema@0.4.0
    • @input/pen-yjs@0.4.0

@input/pen-transport@0.4.0

Patch Changes

  • Updated dependencies [84f4d84]
  • Updated dependencies [cc0b350]
  • Updated dependencies [cc0b350]
    • @input/pen-core@0.4.0
    • @input/pen-types@0.4.0
    • @input/pen-ai@0.4.0

@input/pen-types@0.4.0

Patch Changes

  • cc0b350: useSuggestionMenu no longer blanks an open menu on every keystroke. A synchronous getItems result is applied in the same state update that opens or retargets the menu, with no intermediate loading render. For an async getItems, a refined query on the same trigger keeps the previous items while status is loading, then swaps in its own; stale responses are still dropped. A getItems that throws synchronously now lands in the error state instead of escaping the refresh. @input/pen-types exports the isPromiseLike guard, which the hook and core's extension lifecycle now share.

    Breaking: no

@input/pen-bench@0.4.0

No changes in this release.

@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 0c67057 to 8ec3c9d Compare October 6, 2026 19:39
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 8ec3c9d to 2cbd290 Compare October 7, 2026 14:17
@noudadrichem
noudadrichem requested a review from a team October 7, 2026 14:35
@noudadrichem
noudadrichem merged commit d117f67 into main Oct 7, 2026
39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants