88 lines
2.1 KiB
JavaScript
88 lines
2.1 KiB
JavaScript
import VueApollo from 'vue-apollo';
|
|
import createDefaultClient from '~/lib/graphql';
|
|
import environmentApp from './queries/environment_app.query.graphql';
|
|
import pageInfoQuery from './queries/page_info.query.graphql';
|
|
import environmentToDeleteQuery from './queries/environment_to_delete.query.graphql';
|
|
import environmentToRollbackQuery from './queries/environment_to_rollback.query.graphql';
|
|
import environmentToStopQuery from './queries/environment_to_stop.query.graphql';
|
|
import { resolvers } from './resolvers';
|
|
import typeDefs from './typedefs.graphql';
|
|
|
|
export const apolloProvider = (endpoint) => {
|
|
const defaultClient = createDefaultClient(resolvers(endpoint), {
|
|
typeDefs,
|
|
});
|
|
const { cache } = defaultClient;
|
|
|
|
cache.writeQuery({
|
|
query: environmentApp,
|
|
data: {
|
|
availableCount: 0,
|
|
environments: [],
|
|
reviewApp: {},
|
|
stoppedCount: 0,
|
|
},
|
|
});
|
|
|
|
cache.writeQuery({
|
|
query: pageInfoQuery,
|
|
data: {
|
|
pageInfo: {
|
|
total: 0,
|
|
perPage: 20,
|
|
nextPage: 0,
|
|
previousPage: 0,
|
|
__typename: 'LocalPageInfo',
|
|
},
|
|
},
|
|
});
|
|
|
|
cache.writeQuery({
|
|
query: environmentToDeleteQuery,
|
|
data: {
|
|
environmentToDelete: {
|
|
name: 'null',
|
|
__typename: 'LocalEnvironment',
|
|
id: '0',
|
|
deletePath: null,
|
|
folderPath: null,
|
|
retryUrl: null,
|
|
autoStopPath: null,
|
|
lastDeployment: null,
|
|
},
|
|
},
|
|
});
|
|
cache.writeQuery({
|
|
query: environmentToStopQuery,
|
|
data: {
|
|
environmentToStop: {
|
|
name: 'null',
|
|
__typename: 'LocalEnvironment',
|
|
id: '0',
|
|
deletePath: null,
|
|
folderPath: null,
|
|
retryUrl: null,
|
|
autoStopPath: null,
|
|
lastDeployment: null,
|
|
},
|
|
},
|
|
});
|
|
cache.writeQuery({
|
|
query: environmentToRollbackQuery,
|
|
data: {
|
|
environmentToRollback: {
|
|
name: 'null',
|
|
__typename: 'LocalEnvironment',
|
|
id: '0',
|
|
deletePath: null,
|
|
folderPath: null,
|
|
retryUrl: null,
|
|
autoStopPath: null,
|
|
lastDeployment: null,
|
|
},
|
|
},
|
|
});
|
|
return new VueApollo({
|
|
defaultClient,
|
|
});
|
|
};
|