@ejez/quasar-app-extension-apollo
Version:
A Quasar app extension to add GraphQL support using Apollo Client.
67 lines (66 loc) • 1.57 kB
JavaScript
import { createHttpLink, InMemoryCache } from '@apollo/client';
/* import type { BootFileParams } from '@quasar/app' */
export /* async */ function getClientOptions( /* {app, router, ...}: Partial<BootFileParams<unknown>> */) {
return Object.assign(
// General options.
{
link: createHttpLink({
uri: process.env.GRAPHQL_URI ||
// Change to your graphql endpoint.
'https://example.com/graphql',
}),
cache: new InMemoryCache({}),
},
// Specific Quasar mode options.
process.env.MODE === 'spa'
? {
//
}
: {}, process.env.MODE === 'ssr'
? {
//
}
: {}, process.env.MODE === 'pwa'
? {
//
}
: {}, process.env.MODE === 'bex'
? {
//
}
: {}, process.env.MODE === 'cordova'
? {
//
}
: {}, process.env.MODE === 'capacitor'
? {
//
}
: {}, process.env.MODE === 'electron'
? {
//
}
: {},
// dev/prod options.
process.env.DEV
? {
//
}
: {}, process.env.PROD
? {
//
}
: {},
// For ssr mode, when on server.
process.env.MODE === 'ssr' && process.env.SERVER
? {
ssrMode: true,
}
: {},
// For ssr mode, when on client.
process.env.MODE === 'ssr' && process.env.CLIENT
? {
ssrForceFetchDelay: 100,
}
: {});
}