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

[Interactive Graph Editor] Remove the use of graphKey for remounting #1385

Merged
merged 2 commits into from
Jul 1, 2024

Conversation

nishasy
Copy link
Contributor

@nishasy nishasy commented Jul 1, 2024

Summary:

It turns out that the use of graphKey for remounting in
interactive-graph-editor.tsx is redundant, since this is also being
done by the useEffect in mafs-graph.tsx.

graphKey was also causing a warning to show up in the logs, possibly
from a remounting loop.

Here, graphKey is being removed altogether to stop the remounting issue.

More info on Slack

Issue: none

Test plan:

Storybook

  • http://localhost:6006/?path=/story/perseuseditor-editorpage--demo
  • Add an interactive graph
  • Open the browser console
  • Move the graph in the "correct" preview (quickly! Don't hold for time before dragging)
  • Confirm the warning doesn't appear
  • Change properties of the graph (e.g. number of segments)
  • Confirm that the preview changes correctly
  • Repeat for every graph type

Copy link
Contributor

github-actions bot commented Jul 1, 2024

Size Change: -153 B (-0.02%)

Total Size: 849 kB

Filename Size Change
packages/perseus-editor/dist/es/index.js 272 kB -153 B (-0.06%)
ℹ️ View Unchanged
Filename Size
packages/kas/dist/es/index.js 38.2 kB
packages/kmath/dist/es/index.js 4.26 kB
packages/math-input/dist/es/index.js 80.1 kB
packages/math-input/dist/es/strings.js 1.73 kB
packages/perseus-core/dist/es/index.js 906 B
packages/perseus-error/dist/es/index.js 866 B
packages/perseus-linter/dist/es/index.js 21.8 kB
packages/perseus/dist/es/index.js 410 kB
packages/perseus/dist/es/strings.js 3.21 kB
packages/pure-markdown/dist/es/index.js 3.67 kB
packages/simple-markdown/dist/es/index.js 12.4 kB

compressed-size-action

Copy link

codecov bot commented Jul 1, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 70.96%. Comparing base (f280004) to head (3e4d96d).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1385      +/-   ##
==========================================
+ Coverage   69.82%   70.96%   +1.14%     
==========================================
  Files         493      497       +4     
  Lines      104323   104387      +64     
  Branches     7522    11254    +3732     
==========================================
+ Hits        72842    74078    +1236     
+ Misses      31301    30309     -992     
+ Partials      180        0     -180     

Impacted file tree graph

Files Coverage Δ
...us-editor/src/widgets/interactive-graph-editor.tsx 91.60% <ø> (+0.72%) ⬆️

... and 145 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f280004...3e4d96d. Read the comment docs.

@nishasy nishasy marked this pull request as ready for review July 1, 2024 19:27
@khan-actions-bot
Copy link
Contributor

Gerald

Required Reviewers
  • @Khan/perseus for changes to .changeset/heavy-buckets-think.md, packages/perseus-editor/src/widgets/interactive-graph-editor.tsx, packages/perseus-editor/src/widgets/__tests__/interactive-graph-editor.test.tsx

Don't want to be involved in this pull request? Comment #removeme and we won't notify you of further changes.

Copy link
Member

@benchristel benchristel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks for debugging this issue and fixing it :)

@nishasy nishasy merged commit 30f898c into main Jul 1, 2024
12 checks passed
@nishasy nishasy deleted the remove-graph-key branch July 1, 2024 21:31
benchristel pushed a commit that referenced this pull request Jul 2, 2024
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm 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
## @khanacademy/perseus@24.2.0

### Minor Changes

-   [#1386](#1386) [`5fdbeb980`](5fdbeb9) Thanks [@benchristel](https://github.com/benchristel)! - Add `mafs.point` flag to ApiOptions type

### Patch Changes

-   [#1388](#1388) [`94067d752`](94067d7) Thanks [@nishasy](https://github.com/nishasy)! - [Interactive Graph: Circle] Add a key prop to the circle drag handle

## @khanacademy/perseus-editor@7.0.2

### Patch Changes

-   [#1385](#1385) [`30f898c44`](30f898c) Thanks [@nishasy](https://github.com/nishasy)! - [Interactive Graph Editor] Remove the use of graphKey for remounting

-   Updated dependencies \[[`5fdbeb980`](5fdbeb9), [`94067d752`](94067d7)]:
    -   @khanacademy/perseus@24.2.0

Author: khan-actions-bot

Reviewers: benchristel

Required Reviewers:

Approved By: benchristel

Checks: ✅ codecov/project, ✅ codecov/patch, ✅ Upload Coverage (ubuntu-latest, 20.x), ⏭️  Publish npm snapshot, ✅ Lint, Typecheck, Format, and Test (ubuntu-latest, 20.x), ✅ Check builds for changes in size (ubuntu-latest, 20.x), ✅ Cypress (ubuntu-latest, 20.x), ✅ Check for .changeset entries for all changed files (ubuntu-latest, 20.x), ✅ Jest Coverage (ubuntu-latest, 20.x), 🚫 Upload Coverage, ✅ gerald, ⏭️  Publish npm snapshot, 🚫 Lint, Typecheck, Format, and Test (ubuntu-latest, 20.x), 🚫 Check builds for changes in size (ubuntu-latest, 20.x), 🚫 Cypress (ubuntu-latest, 20.x), 🚫 Check for .changeset entries for all changed files (ubuntu-latest, 20.x), 🚫 Jest Coverage (ubuntu-latest, 20.x), ✅ gerald

Pull Request URL: #1387
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants