@sample-stack/counter-module-browser
Version:
Sample core for higher packages to depend on
57 lines (56 loc) • 1.15 kB
JavaScript
import {CounterStateDocument}from'../../../generated-models.js';const TYPE_NAME = 'CounterState';
const stateDefault = {
type: 'query',
query: CounterStateDocument,
data: {
counterState: {
counter: 1,
__typename: TYPE_NAME
}
}
};
const resolvers = {
Query: {
counterState: (_, args, {
cache
}) => {
const {
counterState: {
counter
}
} = cache.readQuery({
query: CounterStateDocument
});
return {
counter,
__typename: TYPE_NAME
};
}
},
Mutation: {
addCounterState: async (_, {
amount
}, {
cache
}) => {
const {
counterState: {
counter
}
} = cache.readQuery({
query: CounterStateDocument
});
const newAmount = amount + counter;
await cache.writeQuery({
query: CounterStateDocument,
data: {
counterState: {
counter: newAmount,
__typename: TYPE_NAME
}
}
});
return null;
}
}
};export{resolvers,stateDefault};//# sourceMappingURL=resolvers.js.map