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

built-in graphql playground has buggy tooltips #3244

Open
TronkIshere opened this issue Nov 29, 2024 · 6 comments
Open

built-in graphql playground has buggy tooltips #3244

TronkIshere opened this issue Nov 29, 2024 · 6 comments
Labels
type: bug 🐛 Something isn't working

Comments

@TronkIshere
Copy link

Describe the bug
In http://localhost:3000/admin-api has a bug that makes code mirror-hint show up and doesn't disappear, and It stays there forever

To Reproduce
Steps to reproduce the behavior:

  1. Go to http://localhost:3000/admin-api
  2. Use mirror-hint and there it is

Expected behavior
I think It should be disappear

Environment (please complete the following information):

  • @vendure/core version: 3.0.0
  • Nodejs version: 10.9.0
  • Database (mysql/postgres etc): firebase

Screenshot 2024-11-29 120819

@TronkIshere TronkIshere added the type: bug 🐛 Something isn't working label Nov 29, 2024
@toBeOfUse
Copy link
Contributor

The GraphQL sandbox that Vendure uses by default is deprecated. Change your vendure-config.ts file to look like this to use the more modern Apollo GraphQL Studio:

import { ApolloServerPluginLandingPageLocalDefault } from '@apollo/server/plugin/landingPage/default';

export const config: VendureConfig = {

  // ... other stuff ...
  apiOptions: {
    // ... other stuff ...
    shopApiPlayground: false,
    adminApiPlayground: false,
    apolloServerPlugins: IS_DEV
      ? [ApolloServerPluginLandingPageLocalDefault()]
      : [],
    }
  },

  // ... more other stuff ...
};

@TronkIshere
Copy link
Author

@toBeOfUse It worked, tks man

@michaelbromley
Copy link
Member

Thanks for providing that work-around. I think ultimately we need to consider moving to that in the core. But I'm not sure whether I like that particular one provided by Apollo, because the whole app is served from Apollo's servers. I'd prefer something self-contained.

Ideally, we can use graphiql and wrap it into an Apollo plugin that implements the renderLandingPage method.

@michaelbromley michaelbromley changed the title 3000/admin-api has a bug built-in graphql playground has buggy tooltips Nov 29, 2024
@michaelbromley michaelbromley moved this to 📅 Planned in Vendure OS Roadmap Nov 29, 2024
@toBeOfUse
Copy link
Contributor

It's true that the third-party cookies and prompts to log into Apollo are annoying - I'll look into this tonight

@toBeOfUse
Copy link
Contributor

We can definitely compile GraphiQL into a single HTML file and return it from an Apollo server plugin. The downsides are: the resulting HTML file, minified, is 1.5mb, which is kind of large, and React and some kind of bundler have to be added as dependencies (dev dependencies, if the bundling is done in advance), presumably to the core package. I'll open a PR for it, but I could see why one might end up wanting to go a different direction with this.

@toBeOfUse
Copy link
Contributor

A version of this now exists in #3246

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug 🐛 Something isn't working
Projects
Status: 📅 Planned
Development

No branches or pull requests

3 participants