0no-co / gql.tada

🪄 Magical GraphQL query engine for TypeScript
https://gql-tada.0no.co
MIT License
2.56k stars 43 forks source link

`gql.tada check` reports an "Unknown fragment" error when using nested fragment composition in Vue SFCs #235

Closed raphael-yapla closed 5 months ago

raphael-yapla commented 5 months ago

Describe the bug

This is a follow up to #210.

First of, a big thank you for adding Vue support so quickly! After setting it up on our bigger project I found a blindspot in my previous reproduction repo. Nested fragment composition doesn't seem to be working with Vue right now. Again Volar and the IDE seem very happy with everything but the command gql.tada check gives a "Unknown fragment" error again.

I've made a new branch on the reproduction repository highlighting the new error. Please let me know if you need any more details!

Reproduction

https://github.com/raphael-yapla/gql-tada-vue-issue/tree/nested-fragment-composition

gql.tada version

gql.tada 1.5.4

Validations

JoviDeCroock commented 5 months ago

Hey,

That's a really good point, I think I figured out a good fix here, would you mind testing out #236. If not possible I can let it pass review and you can try out the canary release.

EDIT: published in latest 1.5.5

raphael-yapla commented 5 months ago

Hey @JoviDeCroock!

Sorry it took me a while to get back to you, thank you so much for taking care of this so quickly, it's really appreciated! As for the changes, they removed the errors but on the reproduction repo using the latest release I'm getting some warnings now:

âš  Note: .vue and .svelte file support is experimental.

src/components/PokemonTypes.vue
  7:5   warn    Field types is not used.

src/components/PokemonItem.vue
  9:7   warn    Field name is not used.

src/queries.ts
  18:44 warn    The persisted document's hash is outdated

src/components/PokemonList.vue
  2:25  warn    Unused co-located fragment definition(s) "PokemonItem" in "./PokemonItem.vue"

âš  4 problems (0 errors, 4 warnings)

Let me know if you need anything else from me and thank you again!