-
Notifications
You must be signed in to change notification settings - Fork 37
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
fix: insert formula remove extra content #231
Conversation
WalkthroughThe changes update the Changes
Sequence Diagram(s)sequenceDiagram
participant U as User
participant MT as MathliveTooltip
participant QE as QuillEditor
participant D as Delta
U->>MT: Initiate save()
MT->>QE: Retrieve content at range.index
QE-->>MT: Return content data
MT->>MT: Check if content isString & contains mathlive property
alt Content with mathlive property exists
MT->>MT: Increment deleteCount
end
MT->>D: Delete(Math.max(deleteCount, range.length))
MT->>MT: Update selection index using range.index
Poem
✨ Finishing Touches
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
packages/fluent-editor/src/modules/mathlive/tooltip.ts (1)
68-78
: LGTM! Consider adding error handling.The changes correctly handle the replacement of existing formulas by:
- Checking if the current content is a mathlive formula
- Adjusting the deletion length accordingly
- Properly positioning the cursor after insertion
Consider adding error handling for the case where
getContents
returns unexpected data:- const contentData = this.quill.getContents(range.index, 1).ops[0].insert + const contents = this.quill.getContents(range.index, 1) + const contentData = contents.ops?.[0]?.insert + if (contentData === undefined) { + console.warn('Unexpected content structure at current position') + return + }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
packages/fluent-editor/src/modules/mathlive/tooltip.ts
(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: test
🔇 Additional comments (1)
packages/fluent-editor/src/modules/mathlive/tooltip.ts (1)
5-5
: LGTM!The import of the
isString
utility is appropriate for the type checking needed in thesave
method.
PR
PR Checklist
Please check if your PR fulfills the following requirements:
PR Type
What kind of change does this PR introduce?
What is the current behavior?
Issue Number: close #226
What is the new behavior?
Does this PR introduce a breaking change?
Other information
Summary by CodeRabbit