Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed issue where can() returned false when the command was executable #5744

Open
wants to merge 7 commits into
base: develop
Choose a base branch
from

Conversation

guanriyue
Copy link

Changes Overview

Fix the issue where can() check returns false even when the command is actually executable. And added cypress test cases.

Implementation Approach

When chainCommand is executed, multiple commands are run sequentially. The editor state used by later commands may depend on the preceding commands. Therefore, when executing can(), createChain must ensure that shouldDispatch is true to prevent skipping operations on tr.

This fix effectively reverts the code changes from the pull request #3026 and resolves the issue #3025 caused by the clearNodes error.

At the same time, it will also fix issue #3229 and issue #4057.

For more details, please refer to this issue #5721.

Testing Done

First, add the disabled attribute to the heading and list action buttons in the example default editor.

Before the fix, if the selection was on a heading node, the list action buttons would remain disabled, even though the commands were actually available. After the change, the list action buttons will appear enabled.

Additionally, corresponding Cypress test cases have been added.

Verification Steps

Access the default example editor at https://tiptap.dev/docs/examples/basics/default-text-editor or by executing cypress test

Additional Notes

Checklist

  • I have created a changeset for this PR if necessary.
  • My changes do not break the library.
  • I have added tests where applicable.
  • I have followed the project guidelines.
  • I have fixed any lint issues.

Related Issues

…let list, ordered list, and heading are allowed to convert between each other.
…().run()` because the state required by later commands may depend on the commands executed earlier.
…e`, otherwise `clearNodes` will throw an exception during execution.
Copy link

changeset-bot bot commented Oct 21, 2024

⚠️ No Changeset found

Latest commit: 944f77b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

netlify bot commented Oct 21, 2024

Deploy Preview for tiptap-embed ready!

Name Link
🔨 Latest commit 944f77b
🔍 Latest deploy log https://app.netlify.com/sites/tiptap-embed/deploys/67163986163b5c0008351ea9
😎 Deploy Preview https://deploy-preview-5744--tiptap-embed.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

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.

1 participant