-
Notifications
You must be signed in to change notification settings - Fork 51
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
feat: Vue 3 support #272
feat: Vue 3 support #272
Conversation
@rokotyan here's the PR for #152 ! Let me know anything I should update ya! Note:
|
@zernonia Thanks for your contribution of the Vue support, that's a major milestone for Unovis! We'll review the PR in detail next week. In the meantime, here's a few comments:
![]()
Thanks again for the great work! |
@zernonia In the meantime, can you please submit the CLA. We won't be able to merge the PR without it https://github.com/f5/unovis/blob/main/CONTRIBUTING.md#contributor-license-agreement-cla |
@rokotyan do have a look ya! Updated with using the |
Nice work @zernonia, have you tested Nuxt 3 ? Let's even add the Nuxt 3 module to it after the pr merger. |
Thanks for the update @zernonia 📢 Looks like there's a lot of interest in the Vue integration within the community, so I've released an alpha version UPDATE: use @zernonia Can you please create a simple example on StackBlitz for cc @atinux @messenjer @Hebilicious @mkarras @sadeghbarati @nirgn975 @DamianGlowala @claytonfaria @anegelya @KABBOUCHI |
@zernonia I've noticed one little but important detail in the Vue package build. All of our packages are built in a way to allow individual component import (e.g. Unfortunately, the Vue build doesn't seem to have these individual module builds. When I tried to adopt Vite for Unovis about a year ago, that option was not supported there, so we kept using Rollup. But maybe things have changed since then. |
I think a Vue and a Nuxt one would be a good idea 👍 |
Hey @rokotyan ! I've updated to enabled Below demonstrates the component directly imported from |
@rokotyan I cant run the package |
Thanks! Just published |
Awesome @rokotyan !!! Here's the Stackblitz demo! 🚀 |
Just porting the example to Nuxt, I'm running into a few commonJS/ESM related errors : https://stackblitz.com/edit/github-spptxs?file=app.vue
While we could do some stuff on the Nuxt side to workaround these, is there any chance we could do something in unovis directly ? |
Ahh you are right. This is a problem with |
Pushed a fix to that esm import issue. Sorry for the trouble @rokotyan 🙈 |
@zernonia @Hebilicious |
@zernonia great, I updated the Nuxt example : https://stackblitz.com/edit/github-spptxs?file=app.vue |
Thanks for making the Nuxt example!! 😁 |
@rokotyan Upon checking creating gallery example, I've found some minor issue. Pushed the fix as well as those gallery example. I'll update those path (move to |
@zernonia This is awesome, thanks for the phenomenal work you do! We've just merged the shared examples PR, feel free to go ahead and update the paths. Can you please also add a simple demo app to |
@rokotyan I've moved the examples into shared folder, and added a gallery to demo the app locally as well!!.
|
Thanks @zernonia, this is amazing! When I'm trying to run the app, I get the following error. Should we add ![]() |
@rokotyan . It's weird that the deps is missing. How yeah adding |
Thanks @zernonia, I think we're getting close to the release! There are two main things left:
![]() ![]() ![]() ![]()
![]() |
Hi Nikita,
That's weird, did you run `npm run build` before building the gallery?
I've updated most of the docs already. Could you help me check?
[image: image.png]
Regards,
Zernonia
…On Thu, Sep 21, 2023 at 6:08 AM Nikita Rokotyan ***@***.***> wrote:
Thanks @zernonia <https://github.com/zernonia>, I think we're getting
close to the release! There are two main things left:
1. I noticed that some of the examples don't work. Can you please
check what's wrong?
[image: image]
<https://user-images.githubusercontent.com/755708/269430810-acebb628-3741-4720-bb09-e66fb5e5b458.png> [image:
image]
<https://user-images.githubusercontent.com/755708/269430904-881efe6d-cf3c-4049-b5b6-d711b454c502.png> [image:
image]
<https://user-images.githubusercontent.com/755708/269431053-57105185-0f2e-4d20-bd7f-43ce51d4e83a.png> [image:
image]
<https://user-images.githubusercontent.com/755708/269431098-a56b0d9e-150a-417a-8e08-c97012fd3be1.png>
1. We need to update the docs, especially the code snippets. If you
feel adventurous, you can give it a try. Or we'll do it ourselves within
1-2 weeks.
[image: image]
<https://user-images.githubusercontent.com/755708/269431257-e196571d-904c-4db1-a53f-6991b7bde7ed.png>
—
Reply to this email directly, view it on GitHub
<#272 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AOE5QOZMXAKWN5GE4HFXLCLX3NSNNANCNFSM6AAAAAA4PZ66YM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@zernonia Thanks, I've realized that our That's awesome that you've updated the docs too. One little thing, can you please increase the indentation inside the @reb-dev Can you please also take a look at the PR and share your feedback. I'll be out the first half of the next week, so we can aim for a release it in the first week of October. I think we might want to update the website with some new blocks related to this, since it's a major milestone. I can take care of that once I'm back. |
@zernonia Sure, just published |
Tested on https://www.shadcn-vue.com/themes.html, and it works pretty well! Although it's currently missing the props/emits auto-inferred in IDE, but I believe Volar will soon support Generic-typed components 😁 |
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.
Thanks @reb-dev, I would like to solve the indentation problem before we merge the PR. Also we need to add |
Hi, just for information, in vue component the indentation is 0 in the script part, it's the default rules of eslint and prettier vue, there's just the identation missing in the template part. |
I agree with that, it's more convenient for us at the vue. 💯 |
@messenjer @productdevbook Thanks for the feedback! I didn't realize that Vue has 0 indentation in the script part. |
Applied the final fixes and rebased from main. Planning to take another look tomorrow and then merge. |
@zernonia I was doing the final review today and found that data updates are kind of broken — they only happen once. Here's a few examples from the gallery, there're no errors in the console: Screen.Recording.2023-10-03.at.3.14.14.PM.web.mp4Screen.Recording.2023-10-03.at.3.15.06.PM.web.mp4Screen.Recording.2023-10-03.at.3.13.51.PM.web.mp4Can you please take a look what's going on? |
@rokotyan I've push a fix for the issue above yaa.. It should be all good now 😁 |
Thanks @zernonia , impressed with your work as usual! Just found another little things: when data is provided to an individual component and it updates, the component doesn't react to that. So the following configuration doesn't seem to be working properly: <VisXYContainer ... >
<VisLine :data="data" ... />
... At the same time when data is provided to the container, it works: <VisXYContainer :data="data" ... >
<VisLine ... />
... Just pushed a test commit demonstrating the problem: 4f9111e |
Ahh yes @rokotyan .. my bad for that.. I've added a watcher (missed that out previously) and it fixed it 😁 |
@zernonia I was finally going to merge the PR but after the latest rebase getting this error: Do you maybe have a clue of what might be wrong? |
@rokotyan I'm taking a look! |
@rokotyan the issue was related to newly changes If the error happens again, you can add the relevant component into the array below until we resolves this issue from Vue. unovis/packages/vue/autogen/component.ts Lines 20 to 22 in c17e6ba
|
@zernonia I see, good to know. Thanks for the fix! |
@zernonia I think I've just found another issue (hopefully final). This Sankey example responds only to the first click: Screen.Recording.2023-10-11.at.2.07.27.PM.web.mp4I remember you've fixed a similar issue before, maybe they're related? |
Hey @rokotyan ! Pushed a simple fix to the example. Not a component issue ya 😁 |
Co-Authored-By: zernonia <59365435+zernonia@users.noreply.github.com>
Update (Sept 22, 2023):
📢 Looks like there's a lot of interest in the Vue integration within the community, so we've released an alpha version
1.3.0-alpha.3
for everyone to test . Any feedback would be greatly appreciated!https://www.npmjs.com/package/@unovis/vue