Closed OpJePl44tsm4n closed 2 years ago
Hi!
Thanx for building this package! made a little proposal to add functionality to save the tiptap content as json instead of HTML.
cheers!
Hi there, thanks for the PR. I will merge this if you solve the following: the JSON.parse method ist pretty strict, so it throws an error if the content was already set to something other than JSON (like an HTML string) or if the content is empty. The "empty" problem is easily solved. You will also need to solve the problem that someone switches to this after having already used the HTML version. Maybe this helps, you could check the content and if it is HTML you could use this to convert it: https://github.com/ueberdosis/html-to-prosemirror
I noticed that you did not add any JS to the PR - did you remove your scripts, or did you not run "npm run development" or "npm run production" and test the PR?
Hi Sebastian,
Thanks for the feedback. I did the build on a local dev and got it working, after which I decided to make a quick pr just to check if you would agree. Tiptap, has a nice feature build in to get the content as HTML or JSON so transforming won't be an issue. I'll build in some checks and test out the different scenarios. I'll finnish it up later and update the PR. Keep up the good work!
Cheers, Pim
On Fri, 26 Nov 2021, 09:35 Sebastian Hilger, @.***> wrote:
Hi there, thanks for the PR. I will merge this if you solve the following: the JSON.parse method ist pretty strict, so it throws an error if the content was already set to something other than JSON (like an HTML string) or if the content is empty. The "empty" problem is easily solved. You will also need to solve the problem that someone switches to this after having already used the HTML version. Maybe this helps, you could check the content and if it is HTML you could use this to convert it: https://github.com/ueberdosis/html-to-prosemirror
I noticed that you did not add any JS to the PR - did you remove your scripts, or did you not run "npm run development" or "npm run production" and test the PR?
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/manogi/nova-tiptap/pull/47#issuecomment-979785899, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMGBW4ZRJG5DGMW5IGQUOTUN5BGJANCNFSM5ITSPVLA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
Hi Sebastian,
I just got the time to finish this, I make use of the setContent() tiptap function to set the value. The oncreate() function does a check if the field value is Json , if so it's parsed and set as content. If the content is HTML and someone switches the result will be saved as json on update.
Cheers,
Hi Timothé, thanks for editing the PR. I will merge it with a small change: the saveAsJson()
method now requires no parameter. I think it should better work like the nullable()
method or this package's own syntaxHighlighting()
method, which simply turn on the feature when the method is called.
The new feature will be part of the 2.6.0 release coming in a few minutes.
Thanks again, Sebastian
js not build...