2.0.1 • Published 2 years ago

tn-apollo-link-token-refresh v2.0.1

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

Apollo Refresh Link

export const apolloLinkRefresh = new ApolloLinkTokenRefresh({
  safety: 60,
  getAccessToken: () => login.accessToken.get(),
  beforeRefresh: () => null,
  refresh: ({ onSuccess, onError, onFinally }) => {
    login.refresh({
      onError,
      onFinally,
      onSuccess: () => {
        login.setAccessToken(accessToken)
        login.setRefreshToken(refreshToken)
        onSuccess && onSuccess()
      },
    })
  },
})

Creating Apollo Link

const apolloLinks = ApolloLink.from([
  apolloLinkRefresh, 
  apolloLinkRequest,
  apolloLinkHTTP
]) 

ApolloLinkTokenRefreshOptions

PropertyTypeNote
safetyseconds numberA safety time so that AccessToken does not expire on the fly
getAccessToken() => stringA method returning current AccessToken
beforeRefresh() => voidThis method will be called before refreshing AccessToken
refresh(RefreshProps) => voidrefresh() method and it's handlers
interface RefreshProps {
  onSuccess: () => void
  onError: () => void
  onFinally: () => void
}