• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kiva / ui / 13861583877

14 Mar 2025 05:01PM UTC coverage: 46.746% (-0.03%) from 46.777%
13861583877

push

github

emuvente
fix: only set user-agent header if configured

1174 of 2586 branches covered (45.4%)

Branch coverage included in aggregate %.

1663 of 3483 relevant lines covered (47.75%)

383.92 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/api/apollo.js
1
import { ApolloLink, ApolloClient, InMemoryCache } from '@apollo/client/core/index';
2
import Auth0LinkCreator from './Auth0Link';
3
import BasketLinkCreator from './BasketLink';
4
import ContentfulPreviewLink from './ContentfulPreviewLink';
5
import ExperimentIdLink from './ExperimentIdLink';
6
import HttpLinkCreator from './HttpLink';
7
import NetworkErrorLoggingLink from './NetworkErrorLoggingLink';
8
import NetworkErrorRetryLink from './NetworkErrorRetryLink';
9
import SnowplowSessionLink from './SnowplowSessionLink';
10
import { initState, setLocalState } from './localState';
11

12
export default function createApolloClient({
13
        appConfig,
14
        cookieStore,
15
        kvAuth0,
16
        types,
17
        uri,
18
        userAgent,
19
        fetch,
20
        route,
21
}) {
22
        const cache = new InMemoryCache({
×
23
                possibleTypes: types,
24
                typePolicies: {
25
                        Mergable: {
26
                                merge: true,
27
                        },
28
                        Setting: {
29
                                keyFields: ['key'],
30
                        },
31
                }
32
        });
33

34
        const { resolvers } = initState({
×
35
                appConfig,
36
                cookieStore,
37
                kvAuth0,
38
                route,
39
        });
40

41
        const client = new ApolloClient({
×
42
                link: ApolloLink.from([
43
                        SnowplowSessionLink({ cookieStore }),
44
                        ExperimentIdLink({ cookieStore }),
45
                        Auth0LinkCreator({ cookieStore, kvAuth0 }),
46
                        BasketLinkCreator({ cookieStore }),
47
                        ContentfulPreviewLink({ cookieStore }),
48
                        NetworkErrorLoggingLink(),
49
                        NetworkErrorRetryLink({
50
                                activateRetry: appConfig?.apolloNetworkErrorRetryActive,
51
                                attemptsMax: appConfig?.apolloNetworkErrorRetryAttempts,
52
                        }),
53
                        HttpLinkCreator({
54
                                uri,
55
                                userAgent,
56
                                fetch,
57
                                apolloBatching: appConfig?.apolloBatching ?? true,
×
58
                                stellateDebugHeaders: appConfig?.stellateDebugHeaders,
59
                                stellateGraphqlUri: appConfig?.stellateGraphqlUri,
60
                                stellateCachedOperations: appConfig?.stellateCachedOperations,
61
                        }),
62
                ]),
63
                cache,
64
                resolvers,
65
                defaultOptions: {
66
                        watchQuery: {
67
                                errorPolicy: 'all',
68
                        },
69
                        query: {
70
                                errorPolicy: 'all',
71
                        },
72
                        mutate: {
73
                                errorPolicy: 'all',
74
                        },
75
                },
76
                // Allow optimizations that are only possible because we have freezeResults=true
77
                // see https://github.com/apollographql/apollo-client/pull/4543
78
                assumeImmutableResults: true,
79
        });
80

81
        // set default local state
82
        setLocalState({ appConfig, cookieStore, kvAuth0 }, cache);
×
83
        client.onResetStore(() => setLocalState({ appConfig, cookieStore, kvAuth0 }, cache));
×
84

85
        return client;
×
86
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc