codex-team / codex-team/editor.js

[bug] onChange is thrown infinitely with image-simple and mermaid plugins

Open
#2,139 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
TypeScript
Stars
31.9k
Forks
2.2k
Avg merge
1d 13h
Merged PRs (30d)
2

Description

I'm working on a editorjs app synced by Yjs.
it seems to work great with most of the plugins. and sync is reported to other users, but with two plugins (image-simple & mermaid), the onChange function seems to be thrown every second .
I use the onChange function to save the editor content to a yMap of Yjs

The issue is that each of the two users, get infinite refresh of the page.

is this onChange event thrown by the editor or by the concerned plugins ? is this an issue for each plugin ?

my editor code is here https://github.com/scenaristeur/noosphere/blob/main/src/views/EditorView.vue
see demo video and working app at https://scenaristeur.github.io/noosphere/about

https://user-images.githubusercontent.com/4020744/189363842-d732cdf5-f988-46bc-9919-2d83e89ebaa2.mp4

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the linked src/views/EditorView.vue and reproduce the behavior using the image-simple and mermaid plugins with the onChange handler and Yjs synchronization described in the issue. Compare whether repeated onChange events originate in the editor or either plugin, using the linked demo and video as behavioral references. Done means identifying the source and stopping the infinite refresh cycle.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.