-
Notifications
You must be signed in to change notification settings - Fork 97
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
Add history tab and enhance visualization features to devtools #760
Conversation
- View all changes in document - Select a change to see its operations, events, and document state at that point
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #760 +/- ##
==========================================
- Coverage 81.92% 80.47% -1.45%
==========================================
Files 59 59
Lines 4338 4431 +93
Branches 852 889 +37
==========================================
+ Hits 3554 3566 +12
- Misses 532 604 +72
- Partials 252 261 +9 ☔ View full report in Codecov by Sentry. |
b980ab8
to
a86ea32
Compare
a86ea32
to
5b5e1ef
Compare
…nto devtools-mvp-2-v2
a0da270
to
5737d82
Compare
5737d82
to
d91ec0e
Compare
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.
Thank you for mixing DocEvent and DevtoolsEvent to harmonize. The logic has become much simpler.
I have more comments.
A. Lazy generating the operation bytes
Currently, there has been an addition of logic to directly generate the byte stream of the operation when executing changes. This logic seems to be executed even when Devtools is not enabled, potentially impacting performance.
How about optimizing the logic by lazily generating the byte stream and only building it when Devtools is enabled?
B. Move accumulating logic to Devtools
Currently, accumulating events and operations in Documents is not ideal. Would it be possible to consider managing this accumulation in Devtools instead? This could potentially help streamline the process and improve overall efficiency.
6c83f1b
to
b0d310c
Compare
@hackerwins Thank you for your review. I've made the following modifications:
Modified to build byte data from events only when devtools are enabled.
Revised to accumulate docEvents in Devtools instead of the Document. |
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.
There were a lot of complex and difficult issues in this PR. Thank you for organizing them so neatly. 🎉
What this PR does / why we need it?
devtools-v2.mp4
Enhancements in Devtools
Introduce new features in this PR, enhancing the functionality of Devtools:
local-change
: Highlighted in yellow ,remote-change
: Highlighted in blue.presence-change
: Identified with cursor icon ,document-change
: Identified with document icon.Any background context you want to provide?
Does this PR introduce a user-facing change?:
What are the relevant tickets?
Fixes #
Checklist