1.2.0 • Published 5 years ago

smart-cache-invalidation v1.2.0

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

smart-cache

Usage

patch apollo-client in memory cache

import { ApolloClient } from 'apollo-client'
import { InMemoryCache } from 'apollo-cache-inmemory'
import { patch } from 'smart-cache'

patch(ApolloClient, InMemoryCache)

const cache = new InMemoryCache()

// you can maintain the type field map manually or use our codegen CLI to generate one
cache.setTypeFieldMap(typeFieldMap)
const client = new ApolloClient({
  link,
  cache,
})

// after the patch, you can access the powerful deleteCache method from your apollo-client instance
client.deleteCache(typename, idGetterObj)

generate type field map with CLI

npm i -g smart-cache

smart-cache SCHEMA_PATH OUTPUT_PATH
# example: smart-cache ./test/fixuture/schema.graphql ./test/fixture/typeFieldMap.ts

use the codegen module programatically

const { parse } = require('graphql')
const { constructTypeFieldMap } = require('smart-cache/codegen')

constructTypeFieldMap(parse(typeDef))
1.2.0

5 years ago

1.1.0

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago