@cedarjs/web 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/apollo/index.js +2 -0
  4. package/apollo/package.json +4 -0
  5. package/dist/apollo/fragmentRegistry.d.ts +43 -0
  6. package/dist/apollo/fragmentRegistry.d.ts.map +1 -0
  7. package/dist/apollo/fragmentRegistry.js +39 -0
  8. package/dist/apollo/index.d.ts +77 -0
  9. package/dist/apollo/index.d.ts.map +1 -0
  10. package/dist/apollo/index.js +198 -0
  11. package/dist/apollo/links.d.ts +27 -0
  12. package/dist/apollo/links.d.ts.map +1 -0
  13. package/dist/apollo/links.js +94 -0
  14. package/dist/apollo/sseLink.d.ts +29 -0
  15. package/dist/apollo/sseLink.d.ts.map +1 -0
  16. package/dist/apollo/sseLink.js +94 -0
  17. package/dist/apollo/suspense.d.ts +59 -0
  18. package/dist/apollo/suspense.d.ts.map +1 -0
  19. package/dist/apollo/suspense.js +113 -0
  20. package/dist/apollo/typeOverride.d.ts +21 -0
  21. package/dist/apollo/typeOverride.d.ts.map +1 -0
  22. package/dist/apollo/typeOverride.js +0 -0
  23. package/dist/apollo/useCache.d.ts +22 -0
  24. package/dist/apollo/useCache.d.ts.map +1 -0
  25. package/dist/apollo/useCache.js +25 -0
  26. package/dist/bins/cross-env.d.ts +3 -0
  27. package/dist/bins/cross-env.d.ts.map +1 -0
  28. package/dist/bins/msw.d.ts +3 -0
  29. package/dist/bins/msw.d.ts.map +1 -0
  30. package/dist/bins/redwood.d.ts +9 -0
  31. package/dist/bins/redwood.d.ts.map +1 -0
  32. package/dist/bins/rwfw.d.ts +3 -0
  33. package/dist/bins/rwfw.d.ts.map +1 -0
  34. package/dist/bins/storybook.d.ts +3 -0
  35. package/dist/bins/storybook.d.ts.map +1 -0
  36. package/dist/bins/tsc.d.ts +3 -0
  37. package/dist/bins/tsc.d.ts.map +1 -0
  38. package/dist/bundled/apollo-upload-client.d.ts +3 -0
  39. package/dist/bundled/apollo-upload-client.d.ts.map +1 -0
  40. package/dist/bundled/apollo-upload-client.js +4 -0
  41. package/dist/cjs/apollo/fragmentRegistry.d.ts +43 -0
  42. package/dist/cjs/apollo/fragmentRegistry.d.ts.map +1 -0
  43. package/dist/cjs/apollo/fragmentRegistry.js +75 -0
  44. package/dist/cjs/apollo/index.d.ts +77 -0
  45. package/dist/cjs/apollo/index.d.ts.map +1 -0
  46. package/dist/cjs/apollo/index.js +216 -0
  47. package/dist/cjs/apollo/links.d.ts +27 -0
  48. package/dist/cjs/apollo/links.d.ts.map +1 -0
  49. package/dist/cjs/apollo/links.js +122 -0
  50. package/dist/cjs/apollo/sseLink.d.ts +29 -0
  51. package/dist/cjs/apollo/sseLink.d.ts.map +1 -0
  52. package/dist/cjs/apollo/sseLink.js +120 -0
  53. package/dist/cjs/apollo/suspense.d.ts +59 -0
  54. package/dist/cjs/apollo/suspense.d.ts.map +1 -0
  55. package/dist/cjs/apollo/suspense.js +127 -0
  56. package/dist/cjs/apollo/typeOverride.d.ts +21 -0
  57. package/dist/cjs/apollo/typeOverride.d.ts.map +1 -0
  58. package/dist/cjs/apollo/typeOverride.js +16 -0
  59. package/dist/cjs/apollo/useCache.d.ts +22 -0
  60. package/dist/cjs/apollo/useCache.d.ts.map +1 -0
  61. package/dist/cjs/apollo/useCache.js +49 -0
  62. package/dist/cjs/bins/cross-env.d.ts +3 -0
  63. package/dist/cjs/bins/cross-env.d.ts.map +1 -0
  64. package/dist/cjs/bins/cross-env.js +30 -0
  65. package/dist/cjs/bins/msw.d.ts +3 -0
  66. package/dist/cjs/bins/msw.d.ts.map +1 -0
  67. package/dist/cjs/bins/msw.js +28 -0
  68. package/dist/cjs/bins/redwood.d.ts +9 -0
  69. package/dist/cjs/bins/redwood.d.ts.map +1 -0
  70. package/dist/cjs/bins/redwood.js +36 -0
  71. package/dist/cjs/bins/rwfw.d.ts +3 -0
  72. package/dist/cjs/bins/rwfw.d.ts.map +1 -0
  73. package/dist/cjs/bins/rwfw.js +36 -0
  74. package/dist/cjs/bins/storybook.d.ts +3 -0
  75. package/dist/cjs/bins/storybook.d.ts.map +1 -0
  76. package/dist/cjs/bins/storybook.js +49 -0
  77. package/dist/cjs/bins/tsc.d.ts +3 -0
  78. package/dist/cjs/bins/tsc.d.ts.map +1 -0
  79. package/dist/cjs/bins/tsc.js +30 -0
  80. package/dist/cjs/bundled/apollo-upload-client.d.ts +3 -0
  81. package/dist/cjs/bundled/apollo-upload-client.d.ts.map +1 -0
  82. package/dist/cjs/bundled/apollo-upload-client.js +2474 -0
  83. package/dist/cjs/components/DevFatalErrorPage.d.ts +21 -0
  84. package/dist/cjs/components/DevFatalErrorPage.d.ts.map +1 -0
  85. package/dist/cjs/components/DevFatalErrorPage.js +436 -0
  86. package/dist/cjs/components/FatalErrorBoundary.d.ts +24 -0
  87. package/dist/cjs/components/FatalErrorBoundary.d.ts.map +1 -0
  88. package/dist/cjs/components/FatalErrorBoundary.js +63 -0
  89. package/dist/cjs/components/FetchConfigProvider.d.ts +25 -0
  90. package/dist/cjs/components/FetchConfigProvider.d.ts.map +1 -0
  91. package/dist/cjs/components/FetchConfigProvider.js +80 -0
  92. package/dist/cjs/components/GraphQLHooksProvider.d.ts +45 -0
  93. package/dist/cjs/components/GraphQLHooksProvider.d.ts.map +1 -0
  94. package/dist/cjs/components/GraphQLHooksProvider.js +135 -0
  95. package/dist/cjs/components/MetaTags.d.ts +52 -0
  96. package/dist/cjs/components/MetaTags.d.ts.map +1 -0
  97. package/dist/cjs/components/MetaTags.js +69 -0
  98. package/dist/cjs/components/Metadata.d.ts +9 -0
  99. package/dist/cjs/components/Metadata.d.ts.map +1 -0
  100. package/dist/cjs/components/Metadata.js +95 -0
  101. package/dist/cjs/components/PortalHead.d.ts +4 -0
  102. package/dist/cjs/components/PortalHead.d.ts.map +1 -0
  103. package/dist/cjs/components/PortalHead.js +59 -0
  104. package/dist/cjs/components/RedwoodProvider.d.ts +9 -0
  105. package/dist/cjs/components/RedwoodProvider.d.ts.map +1 -0
  106. package/dist/cjs/components/RedwoodProvider.js +58 -0
  107. package/dist/cjs/components/ServerInject.d.ts +26 -0
  108. package/dist/cjs/components/ServerInject.d.ts.map +1 -0
  109. package/dist/cjs/components/ServerInject.js +75 -0
  110. package/dist/cjs/components/cell/CellCacheContext.d.ts +20 -0
  111. package/dist/cjs/components/cell/CellCacheContext.d.ts.map +1 -0
  112. package/dist/cjs/components/cell/CellCacheContext.js +53 -0
  113. package/dist/cjs/components/cell/CellErrorBoundary.d.ts +25 -0
  114. package/dist/cjs/components/cell/CellErrorBoundary.d.ts.map +1 -0
  115. package/dist/cjs/components/cell/CellErrorBoundary.js +66 -0
  116. package/dist/cjs/components/cell/cellTypes.d.ts +152 -0
  117. package/dist/cjs/components/cell/cellTypes.d.ts.map +1 -0
  118. package/dist/cjs/components/cell/cellTypes.js +16 -0
  119. package/dist/cjs/components/cell/createCell.d.ts +10 -0
  120. package/dist/cjs/components/cell/createCell.d.ts.map +1 -0
  121. package/dist/cjs/components/cell/createCell.js +165 -0
  122. package/dist/cjs/components/cell/createCell.test.js +351 -0
  123. package/dist/cjs/components/cell/createServerCell.d.ts +15 -0
  124. package/dist/cjs/components/cell/createServerCell.d.ts.map +1 -0
  125. package/dist/cjs/components/cell/createServerCell.js +91 -0
  126. package/dist/cjs/components/cell/createSuspendingCell.d.ts +11 -0
  127. package/dist/cjs/components/cell/createSuspendingCell.d.ts.map +1 -0
  128. package/dist/cjs/components/cell/createSuspendingCell.js +152 -0
  129. package/dist/cjs/components/cell/createSuspendingCell.test.js +115 -0
  130. package/dist/cjs/components/cell/isCellEmpty.d.ts +41 -0
  131. package/dist/cjs/components/cell/isCellEmpty.d.ts.map +1 -0
  132. package/dist/cjs/components/cell/isCellEmpty.js +35 -0
  133. package/dist/cjs/components/htmlTags.d.ts +52 -0
  134. package/dist/cjs/components/htmlTags.d.ts.map +1 -0
  135. package/dist/cjs/components/htmlTags.js +88 -0
  136. package/dist/cjs/config.d.ts +2 -0
  137. package/dist/cjs/config.d.ts.map +1 -0
  138. package/dist/cjs/config.js +6 -0
  139. package/dist/cjs/entry/index.js +39 -0
  140. package/dist/cjs/global.web-auto-imports.d.ts +30 -0
  141. package/dist/cjs/global.web-auto-imports.d.ts.map +1 -0
  142. package/dist/cjs/global.web-auto-imports.js +16 -0
  143. package/dist/cjs/graphql.d.ts +24 -0
  144. package/dist/cjs/graphql.d.ts.map +1 -0
  145. package/dist/cjs/graphql.js +36 -0
  146. package/dist/cjs/index.d.ts +20 -0
  147. package/dist/cjs/index.d.ts.map +1 -0
  148. package/dist/cjs/index.js +80 -0
  149. package/dist/cjs/package.json +1 -0
  150. package/dist/cjs/routeHooks.types.d.ts +12 -0
  151. package/dist/cjs/routeHooks.types.d.ts.map +1 -0
  152. package/dist/cjs/routeHooks.types.js +16 -0
  153. package/dist/cjs/server/MiddlewareRequest.d.ts +28 -0
  154. package/dist/cjs/server/MiddlewareRequest.d.ts.map +1 -0
  155. package/dist/cjs/server/MiddlewareRequest.js +71 -0
  156. package/dist/cjs/server/MiddlewareResponse.d.ts +44 -0
  157. package/dist/cjs/server/MiddlewareResponse.d.ts.map +1 -0
  158. package/dist/cjs/server/MiddlewareResponse.js +130 -0
  159. package/dist/cjs/server/middleware.d.ts +17 -0
  160. package/dist/cjs/server/middleware.d.ts.map +1 -0
  161. package/dist/cjs/server/middleware.js +24 -0
  162. package/dist/cjs/server/request.d.ts +2 -0
  163. package/dist/cjs/server/request.d.ts.map +1 -0
  164. package/dist/cjs/server/request.js +34 -0
  165. package/dist/cjs/streamUtils/useDocumentReady.d.ts +11 -0
  166. package/dist/cjs/streamUtils/useDocumentReady.d.ts.map +1 -0
  167. package/dist/cjs/streamUtils/useDocumentReady.js +41 -0
  168. package/dist/cjs/toast/index.d.ts +3 -0
  169. package/dist/cjs/toast/index.d.ts.map +1 -0
  170. package/dist/cjs/toast/index.js +41 -0
  171. package/dist/components/DevFatalErrorPage.d.ts +21 -0
  172. package/dist/components/DevFatalErrorPage.d.ts.map +1 -0
  173. package/dist/components/DevFatalErrorPage.js +402 -0
  174. package/dist/components/FatalErrorBoundary.d.ts +24 -0
  175. package/dist/components/FatalErrorBoundary.d.ts.map +1 -0
  176. package/dist/components/FatalErrorBoundary.js +29 -0
  177. package/dist/components/FetchConfigProvider.d.ts +25 -0
  178. package/dist/components/FetchConfigProvider.d.ts.map +1 -0
  179. package/dist/components/FetchConfigProvider.js +43 -0
  180. package/dist/components/GraphQLHooksProvider.d.ts +45 -0
  181. package/dist/components/GraphQLHooksProvider.d.ts.map +1 -0
  182. package/dist/components/GraphQLHooksProvider.js +94 -0
  183. package/dist/components/MetaTags.d.ts +52 -0
  184. package/dist/components/MetaTags.d.ts.map +1 -0
  185. package/dist/components/MetaTags.js +35 -0
  186. package/dist/components/Metadata.d.ts +9 -0
  187. package/dist/components/Metadata.d.ts.map +1 -0
  188. package/dist/components/Metadata.js +61 -0
  189. package/dist/components/PortalHead.d.ts +4 -0
  190. package/dist/components/PortalHead.d.ts.map +1 -0
  191. package/dist/components/PortalHead.js +29 -0
  192. package/dist/components/RedwoodProvider.d.ts +9 -0
  193. package/dist/components/RedwoodProvider.d.ts.map +1 -0
  194. package/dist/components/RedwoodProvider.js +24 -0
  195. package/dist/components/ServerInject.d.ts +26 -0
  196. package/dist/components/ServerInject.d.ts.map +1 -0
  197. package/dist/components/ServerInject.js +37 -0
  198. package/dist/components/cell/CellCacheContext.d.ts +20 -0
  199. package/dist/components/cell/CellCacheContext.d.ts.map +1 -0
  200. package/dist/components/cell/CellCacheContext.js +18 -0
  201. package/dist/components/cell/CellErrorBoundary.d.ts +25 -0
  202. package/dist/components/cell/CellErrorBoundary.d.ts.map +1 -0
  203. package/dist/components/cell/CellErrorBoundary.js +32 -0
  204. package/dist/components/cell/cellTypes.d.ts +152 -0
  205. package/dist/components/cell/cellTypes.d.ts.map +1 -0
  206. package/dist/components/cell/cellTypes.js +0 -0
  207. package/dist/components/cell/createCell.d.ts +10 -0
  208. package/dist/components/cell/createCell.d.ts.map +1 -0
  209. package/dist/components/cell/createCell.js +131 -0
  210. package/dist/components/cell/createCell.test.js +328 -0
  211. package/dist/components/cell/createServerCell.d.ts +15 -0
  212. package/dist/components/cell/createServerCell.d.ts.map +1 -0
  213. package/dist/components/cell/createServerCell.js +57 -0
  214. package/dist/components/cell/createSuspendingCell.d.ts +11 -0
  215. package/dist/components/cell/createSuspendingCell.d.ts.map +1 -0
  216. package/dist/components/cell/createSuspendingCell.js +118 -0
  217. package/dist/components/cell/createSuspendingCell.test.js +92 -0
  218. package/dist/components/cell/isCellEmpty.d.ts +41 -0
  219. package/dist/components/cell/isCellEmpty.d.ts.map +1 -0
  220. package/dist/components/cell/isCellEmpty.js +11 -0
  221. package/dist/components/htmlTags.d.ts +52 -0
  222. package/dist/components/htmlTags.d.ts.map +1 -0
  223. package/dist/components/htmlTags.js +53 -0
  224. package/dist/config.d.ts +2 -0
  225. package/dist/config.d.ts.map +1 -0
  226. package/dist/config.js +5 -0
  227. package/dist/entry/index.d.ts +1 -0
  228. package/dist/entry/index.js +16 -0
  229. package/dist/global.web-auto-imports.d.ts +30 -0
  230. package/dist/global.web-auto-imports.d.ts.map +1 -0
  231. package/dist/global.web-auto-imports.js +0 -0
  232. package/dist/graphql.d.ts +24 -0
  233. package/dist/graphql.d.ts.map +1 -0
  234. package/dist/graphql.js +12 -0
  235. package/dist/index.d.ts +20 -0
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +36 -0
  238. package/dist/package.json +1 -0
  239. package/dist/routeHooks.types.d.ts +12 -0
  240. package/dist/routeHooks.types.d.ts.map +1 -0
  241. package/dist/routeHooks.types.js +0 -0
  242. package/dist/server/MiddlewareRequest.d.ts +28 -0
  243. package/dist/server/MiddlewareRequest.d.ts.map +1 -0
  244. package/dist/server/MiddlewareRequest.js +46 -0
  245. package/dist/server/MiddlewareResponse.d.ts +44 -0
  246. package/dist/server/MiddlewareResponse.d.ts.map +1 -0
  247. package/dist/server/MiddlewareResponse.js +95 -0
  248. package/dist/server/middleware.d.ts +17 -0
  249. package/dist/server/middleware.d.ts.map +1 -0
  250. package/dist/server/middleware.js +2 -0
  251. package/dist/server/request.d.ts +2 -0
  252. package/dist/server/request.d.ts.map +1 -0
  253. package/dist/server/request.js +12 -0
  254. package/dist/streamUtils/useDocumentReady.d.ts +11 -0
  255. package/dist/streamUtils/useDocumentReady.d.ts.map +1 -0
  256. package/dist/streamUtils/useDocumentReady.js +17 -0
  257. package/dist/toast/index.d.ts +3 -0
  258. package/dist/toast/index.d.ts.map +1 -0
  259. package/dist/toast/index.js +5 -0
  260. package/package.json +193 -0
  261. package/src/entry/index.jsx +29 -0
  262. package/toast/index.js +2 -0
  263. package/toast/package.json +4 -0
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var apollo_exports = {};
30
+ __export(apollo_exports, {
31
+ RedwoodApolloProvider: () => RedwoodApolloProvider,
32
+ fragmentRegistry: () => import_fragmentRegistry.fragmentRegistry,
33
+ registerFragment: () => import_fragmentRegistry.registerFragment,
34
+ registerFragments: () => import_fragmentRegistry.registerFragments,
35
+ useCache: () => import_useCache.useCache
36
+ });
37
+ module.exports = __toCommonJS(apollo_exports);
38
+ var import_react = __toESM(require("react"), 1);
39
+ var import_client = require("@apollo/client");
40
+ var import_core = require("@apollo/client/core/core.cjs");
41
+ var import_context = require("@apollo/client/link/context/context.cjs");
42
+ var import_persisted_queries = require("@apollo/client/link/persisted-queries/persisted-queries.cjs");
43
+ var import_hooks = require("@apollo/client/react/hooks/hooks.cjs");
44
+ var import_utilities = require("@apollo/client/utilities/utilities.cjs");
45
+ var import_printer = require("graphql/language/printer.js");
46
+ var import_auth = require("@cedarjs/auth");
47
+ var import_typeOverride = require("./typeOverride.js");
48
+ var import_apollo_upload_client = require("../bundled/apollo-upload-client.js");
49
+ var import_FetchConfigProvider = require("../components/FetchConfigProvider.js");
50
+ var import_GraphQLHooksProvider = require("../components/GraphQLHooksProvider.js");
51
+ var import_fragmentRegistry = require("./fragmentRegistry.js");
52
+ var SSELinkExports = __toESM(require("./sseLink.js"), 1);
53
+ var import_useCache = require("./useCache.js");
54
+ const { SSELink, isSubscription, isLiveQuery } = SSELinkExports;
55
+ const ApolloProviderWithFetchConfig = ({ config, children, useAuth = import_auth.useNoAuth, logLevel }) => {
56
+ (0, import_core.setLogVerbosity)(logLevel);
57
+ const { getToken, type: authProviderType } = useAuth();
58
+ const data = {
59
+ mostRecentRequest: void 0,
60
+ mostRecentResponse: void 0
61
+ };
62
+ const updateDataApolloLink = new import_client.ApolloLink((operation, forward) => {
63
+ const { operationName, query, variables } = operation;
64
+ data.mostRecentRequest = {};
65
+ data.mostRecentRequest.operationName = operationName;
66
+ data.mostRecentRequest.operationKind = query?.kind.toString();
67
+ data.mostRecentRequest.variables = variables;
68
+ data.mostRecentRequest.query = query && (0, import_printer.print)(operation.query);
69
+ return forward(operation).map((result) => {
70
+ data.mostRecentResponse = result;
71
+ return result;
72
+ });
73
+ });
74
+ const withToken = (0, import_context.setContext)(async () => {
75
+ const token = await getToken();
76
+ return { token };
77
+ });
78
+ const { headers, uri } = (0, import_FetchConfigProvider.useFetchConfig)();
79
+ const authMiddleware = new import_client.ApolloLink((operation, forward) => {
80
+ const { token } = operation.getContext();
81
+ const authHeaders = token ? {
82
+ "auth-provider": authProviderType,
83
+ authorization: `Bearer ${token}`
84
+ } : {};
85
+ operation.setContext(() => ({
86
+ headers: {
87
+ ...operation.getContext().headers,
88
+ ...headers,
89
+ // Duped auth headers, because we may remove the `FetchConfigProvider` at a later date.
90
+ ...authHeaders
91
+ }
92
+ }));
93
+ return forward(operation);
94
+ });
95
+ const { httpLinkConfig, link: redwoodApolloLink, ...rest } = config ?? {};
96
+ const uploadLink = (0, import_apollo_upload_client.createUploadLink)({
97
+ uri,
98
+ ...httpLinkConfig
99
+ // The upload link types don't match the ApolloLink types, even though it comes from Apollo
100
+ // because they use ESM imports and we're using the default ones.
101
+ });
102
+ const uploadOrSSELink = typeof SSELink !== "undefined" ? (0, import_client.split)(
103
+ ({ query }) => {
104
+ const definition = (0, import_utilities.getMainDefinition)(query);
105
+ return isSubscription(definition) || isLiveQuery(definition);
106
+ },
107
+ new SSELink({
108
+ url: uri,
109
+ auth: { authProviderType, tokenFn: getToken },
110
+ httpLinkConfig,
111
+ headers
112
+ }),
113
+ uploadLink
114
+ ) : uploadLink;
115
+ const terminatingLink = (0, import_client.split)(
116
+ ({ query }) => {
117
+ const documentQuery = query;
118
+ return documentQuery?.["__meta__"]?.["hash"] !== void 0;
119
+ },
120
+ (0, import_persisted_queries.createPersistedQueryLink)({
121
+ generateHash: (document) => document["__meta__"]["hash"]
122
+ }).concat(uploadOrSSELink),
123
+ uploadOrSSELink
124
+ );
125
+ const redwoodApolloLinks = [
126
+ { name: "withToken", link: withToken },
127
+ { name: "authMiddleware", link: authMiddleware },
128
+ { name: "updateDataApolloLink", link: updateDataApolloLink },
129
+ { name: "httpLink", link: terminatingLink }
130
+ ];
131
+ let link = redwoodApolloLink;
132
+ link ??= import_client.ApolloLink.from(redwoodApolloLinks.map((l) => l.link));
133
+ if (typeof link === "function") {
134
+ link = link(redwoodApolloLinks);
135
+ }
136
+ const client = new import_client.ApolloClient({
137
+ // Default options for every Cell. Better to specify them here than in `beforeQuery` where it's too easy to overwrite them.
138
+ // See https://www.apollographql.com/docs/react/api/core/ApolloClient/#example-defaultoptions-object.
139
+ defaultOptions: {
140
+ watchQuery: {
141
+ // The `fetchPolicy` we expect:
142
+ //
143
+ // > Apollo Client executes the full query against both the cache and your GraphQL server.
144
+ // > The query automatically updates if the result of the server-side query modifies cached fields.
145
+ //
146
+ // See https://www.apollographql.com/docs/react/data/queries/#cache-and-network.
147
+ fetchPolicy: "cache-and-network",
148
+ // So that Cells rerender when refetching.
149
+ // See https://www.apollographql.com/docs/react/data/queries/#inspecting-loading-states.
150
+ notifyOnNetworkStatusChange: true
151
+ }
152
+ },
153
+ link,
154
+ ...rest
155
+ });
156
+ const extendErrorAndRethrow = (error, _errorInfo) => {
157
+ error["mostRecentRequest"] = data.mostRecentRequest;
158
+ error["mostRecentResponse"] = data.mostRecentResponse;
159
+ throw error;
160
+ };
161
+ return /* @__PURE__ */ import_react.default.createElement(import_client.ApolloProvider, { client }, /* @__PURE__ */ import_react.default.createElement(ErrorBoundary, { onError: extendErrorAndRethrow }, children));
162
+ };
163
+ class ErrorBoundary extends import_react.default.Component {
164
+ componentDidCatch(...args) {
165
+ this.setState({});
166
+ this.props.onError(...args);
167
+ }
168
+ render() {
169
+ return this.props.children;
170
+ }
171
+ }
172
+ const RedwoodApolloProvider = ({
173
+ graphQLClientConfig,
174
+ fragments,
175
+ useAuth = import_auth.useNoAuth,
176
+ logLevel = "debug",
177
+ children
178
+ }) => {
179
+ const { cacheConfig, ...config } = graphQLClientConfig ?? {};
180
+ if (fragments) {
181
+ import_fragmentRegistry.fragmentRegistry.register(...fragments);
182
+ }
183
+ const cache = new import_client.InMemoryCache({
184
+ fragments: import_fragmentRegistry.fragmentRegistry,
185
+ possibleTypes: cacheConfig?.possibleTypes,
186
+ ...cacheConfig
187
+ }).restore(globalThis?.__REDWOOD__APOLLO_STATE ?? {});
188
+ return /* @__PURE__ */ import_react.default.createElement(import_FetchConfigProvider.FetchConfigProvider, { useAuth }, /* @__PURE__ */ import_react.default.createElement(
189
+ ApolloProviderWithFetchConfig,
190
+ {
191
+ config: { cache, ...config },
192
+ useAuth,
193
+ logLevel
194
+ },
195
+ /* @__PURE__ */ import_react.default.createElement(
196
+ import_GraphQLHooksProvider.GraphQLHooksProvider,
197
+ {
198
+ useQuery: import_hooks.useQuery,
199
+ useMutation: import_hooks.useMutation,
200
+ useSubscription: import_hooks.useSubscription,
201
+ useBackgroundQuery: import_hooks.useBackgroundQuery,
202
+ useReadQuery: import_hooks.useReadQuery,
203
+ useSuspenseQuery: import_hooks.useSuspenseQuery
204
+ },
205
+ children
206
+ )
207
+ ));
208
+ };
209
+ // Annotate the CommonJS export names for ESM import in node:
210
+ 0 && (module.exports = {
211
+ RedwoodApolloProvider,
212
+ fragmentRegistry,
213
+ registerFragment,
214
+ registerFragments,
215
+ useCache
216
+ });
@@ -0,0 +1,27 @@
1
+ import type { HttpOptions } from '@apollo/client';
2
+ import { ApolloLink } from '@apollo/client/link/core/index.js';
3
+ import { HttpLink } from '@apollo/client/link/http/index.js';
4
+ export declare function createHttpLink(uri: string, httpLinkConfig: HttpOptions | undefined, cookieHeader?: string | null): HttpLink;
5
+ export declare function createUpdateDataLink(): ApolloLink;
6
+ export declare function createAuthApolloLink(authProviderType: string, headersFromFetchProvider: {
7
+ 'auth-provider'?: string | undefined;
8
+ authorization?: string | undefined;
9
+ } | undefined): ApolloLink;
10
+ export declare function createTokenLink(getToken: () => Promise<string | null>): ApolloLink;
11
+ export declare function createFinalLink({ userConfiguredLink, defaultLinks, }: {
12
+ userConfiguredLink?: ApolloLink | RedwoodApolloLinkFactory;
13
+ defaultLinks: RedwoodApolloLinks;
14
+ }): ApolloLink;
15
+ export type RedwoodApolloLink<Name extends RedwoodApolloLinkName, Link extends ApolloLink = ApolloLink> = {
16
+ name: Name;
17
+ link: Link;
18
+ };
19
+ export type RedwoodApolloLinks = (RedwoodApolloLink<'withToken'> | RedwoodApolloLink<'authMiddleware'> | RedwoodApolloLink<'enhanceErrorLink'> | RedwoodApolloLink<'httpLink', HttpLink>)[];
20
+ type DummyLink<T extends string> = {
21
+ name: T;
22
+ };
23
+ type InferredLinkName<T> = T extends DummyLink<infer Name>[] ? Name : never;
24
+ export type RedwoodApolloLinkName = InferredLinkName<RedwoodApolloLinks>;
25
+ export type RedwoodApolloLinkFactory = (links: RedwoodApolloLinks) => ApolloLink;
26
+ export {};
27
+ //# sourceMappingURL=links.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../../src/apollo/links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAa,MAAM,gBAAgB,CAAA;AAG5D,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAG5D,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,WAAW,GAAG,SAAS,EACvC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,YAc7B;AAeD,wBAAgB,oBAAoB,eAmBnC;AACD,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,MAAM,EACxB,wBAAwB,EACpB;IACE,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACnC,GACD,SAAS,cA6Bd;AACD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,cAMrE;AAED,wBAAgB,eAAe,CAAC,EAC9B,kBAAkB,EAClB,YAAY,GACb,EAAE;IACD,kBAAkB,CAAC,EAAE,UAAU,GAAG,wBAAwB,CAAA;IAC1D,YAAY,EAAE,kBAAkB,CAAA;CACjC,GAAG,UAAU,CAUb;AAID,MAAM,MAAM,iBAAiB,CAC3B,IAAI,SAAS,qBAAqB,EAClC,IAAI,SAAS,UAAU,GAAG,UAAU,IAClC;IACF,IAAI,EAAE,IAAI,CAAA;IACV,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC7B,iBAAiB,CAAC,WAAW,CAAC,GAC9B,iBAAiB,CAAC,gBAAgB,CAAC,GACnC,iBAAiB,CAAC,kBAAkB,CAAC,GACrC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAC1C,EAAE,CAAA;AAMH,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,IAAI;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAA;AAC9C,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,GAAG,IAAI,GAAG,KAAK,CAAA;AAC3E,MAAM,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;AAExE,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,UAAU,CAAA"}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var links_exports = {};
20
+ __export(links_exports, {
21
+ createAuthApolloLink: () => createAuthApolloLink,
22
+ createFinalLink: () => createFinalLink,
23
+ createHttpLink: () => createHttpLink,
24
+ createTokenLink: () => createTokenLink,
25
+ createUpdateDataLink: () => createUpdateDataLink
26
+ });
27
+ module.exports = __toCommonJS(links_exports);
28
+ var import_core = require("@apollo/client/core/index.js");
29
+ var import_context = require("@apollo/client/link/context/index.js");
30
+ var import_core2 = require("@apollo/client/link/core/index.js");
31
+ var import_http = require("@apollo/client/link/http/index.js");
32
+ var import_printer = require("graphql/language/printer.js");
33
+ function createHttpLink(uri, httpLinkConfig, cookieHeader) {
34
+ const headers = {};
35
+ if (cookieHeader) {
36
+ headers.cookie = cookieHeader;
37
+ }
38
+ return new import_http.HttpLink({
39
+ uri,
40
+ credentials: "include",
41
+ ...httpLinkConfig,
42
+ headers
43
+ });
44
+ }
45
+ function enhanceError(operation, error) {
46
+ const { operationName, query, variables } = operation;
47
+ error.__RedwoodEnhancedError = {
48
+ operationName,
49
+ operationKind: query?.kind.toString(),
50
+ variables,
51
+ query: query && (0, import_printer.print)(query)
52
+ };
53
+ return error;
54
+ }
55
+ function createUpdateDataLink() {
56
+ return new import_core2.ApolloLink((operation, forward) => {
57
+ return new import_core.Observable((observer) => {
58
+ forward(operation).subscribe({
59
+ next(result) {
60
+ if (result.errors) {
61
+ result.errors.forEach((error) => {
62
+ enhanceError(operation, error);
63
+ });
64
+ }
65
+ observer.next(result);
66
+ },
67
+ error(error) {
68
+ observer.error(enhanceError(operation, error));
69
+ },
70
+ complete: observer.complete.bind(observer)
71
+ });
72
+ });
73
+ });
74
+ }
75
+ function createAuthApolloLink(authProviderType, headersFromFetchProvider) {
76
+ return new import_core2.ApolloLink((operation, forward) => {
77
+ const { token } = operation.getContext();
78
+ const authHeaders = token ? {
79
+ "auth-provider": authProviderType,
80
+ authorization: `Bearer ${token}`
81
+ } : {};
82
+ if (!token) {
83
+ delete headersFromFetchProvider?.["auth-provider"];
84
+ }
85
+ operation.setContext(() => ({
86
+ headers: {
87
+ ...operation.getContext().headers,
88
+ ...headersFromFetchProvider,
89
+ // Duped auth headers, because we may remove the `FetchConfigProvider` at a later date.
90
+ ...authHeaders
91
+ }
92
+ }));
93
+ return forward(operation);
94
+ });
95
+ }
96
+ function createTokenLink(getToken) {
97
+ return (0, import_context.setContext)(async () => {
98
+ const token = await getToken();
99
+ return { token };
100
+ });
101
+ }
102
+ function createFinalLink({
103
+ userConfiguredLink,
104
+ defaultLinks
105
+ }) {
106
+ if (userConfiguredLink) {
107
+ if (typeof userConfiguredLink === "function") {
108
+ return userConfiguredLink(defaultLinks);
109
+ } else {
110
+ return userConfiguredLink;
111
+ }
112
+ }
113
+ return import_core2.ApolloLink.from(defaultLinks.map((l) => l.link));
114
+ }
115
+ // Annotate the CommonJS export names for ESM import in node:
116
+ 0 && (module.exports = {
117
+ createAuthApolloLink,
118
+ createFinalLink,
119
+ createHttpLink,
120
+ createTokenLink,
121
+ createUpdateDataLink
122
+ });
@@ -0,0 +1,29 @@
1
+ import type { HttpOptions } from '@apollo/client';
2
+ import type { Operation, FetchResult } from '@apollo/client/core';
3
+ import { ApolloLink } from '@apollo/client/link/core/core.cjs';
4
+ import { Observable } from '@apollo/client/utilities/utilities.cjs';
5
+ import type { DefinitionNode } from 'graphql';
6
+ import type { ClientOptions } from 'graphql-sse';
7
+ interface SSELinkOptions extends Partial<ClientOptions> {
8
+ url: string;
9
+ auth: {
10
+ authProviderType: string;
11
+ tokenFn: () => Promise<null | string>;
12
+ };
13
+ httpLinkConfig?: HttpOptions;
14
+ headers?: Record<string, string>;
15
+ }
16
+ declare const isSubscription: (definition: DefinitionNode) => boolean;
17
+ declare const isLiveQuery: (definition: DefinitionNode) => boolean;
18
+ /**
19
+ * GraphQL over Server-Sent Events (SSE) spec link for Apollo Client
20
+ */
21
+ declare class SSELink extends ApolloLink {
22
+ private client;
23
+ constructor(options: SSELinkOptions);
24
+ request(operation: Operation & {
25
+ query?: any;
26
+ }): Observable<FetchResult>;
27
+ }
28
+ export { SSELink, isSubscription, isLiveQuery };
29
+ //# sourceMappingURL=sseLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sseLink.d.ts","sourceRoot":"","sources":["../../../src/apollo/sseLink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,KAAK,EAAE,aAAa,EAA+B,MAAM,aAAa,CAAA;AAE7E,UAAU,cAAe,SAAQ,OAAO,CAAC,aAAa,CAAC;IACrD,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE;QAAE,gBAAgB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAA;KAAE,CAAA;IACzE,cAAc,CAAC,EAAE,WAAW,CAAA;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAsDD,QAAA,MAAM,cAAc,eAAgB,cAAc,YAKjD,CAAA;AAID,QAAA,MAAM,WAAW,eAAgB,cAAc,YAS9C,CAAA;AAED;;GAEG;AACH,cAAM,OAAQ,SAAQ,UAAU;IAC9B,OAAO,CAAC,MAAM,CAAQ;gBAEV,OAAO,EAAE,cAAc;IA2B5B,OAAO,CACZ,SAAS,EAAE,SAAS,GAAG;QAAE,KAAK,CAAC,EAAE,GAAG,CAAA;KAAE,GACrC,UAAU,CAAC,WAAW,CAAC;CAuB3B;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var sseLink_exports = {};
20
+ __export(sseLink_exports, {
21
+ SSELink: () => SSELink,
22
+ isLiveQuery: () => isLiveQuery,
23
+ isSubscription: () => isSubscription
24
+ });
25
+ module.exports = __toCommonJS(sseLink_exports);
26
+ var import_core = require("@apollo/client/link/core/core.cjs");
27
+ var import_utilities = require("@apollo/client/utilities/utilities.cjs");
28
+ var import_graphql = require("graphql");
29
+ var import_graphql_sse = require("graphql-sse");
30
+ const mapCredentialsHeader = (httpLinkCredentials) => {
31
+ if (!httpLinkCredentials) {
32
+ return void 0;
33
+ }
34
+ switch (httpLinkCredentials) {
35
+ case "omit":
36
+ case "same-origin":
37
+ case "include":
38
+ return httpLinkCredentials;
39
+ default:
40
+ return void 0;
41
+ }
42
+ };
43
+ const mapReferrerPolicyHeader = (referrerPolicy) => {
44
+ if (!referrerPolicy) {
45
+ return void 0;
46
+ }
47
+ switch (referrerPolicy) {
48
+ case "no-referrer":
49
+ case "no-referrer-when-downgrade":
50
+ case "same-origin":
51
+ case "origin":
52
+ case "strict-origin":
53
+ case "origin-when-cross-origin":
54
+ case "strict-origin-when-cross-origin":
55
+ case "unsafe-url":
56
+ return referrerPolicy;
57
+ default:
58
+ return void 0;
59
+ }
60
+ };
61
+ const hasTrustedDocument = (operation) => {
62
+ return operation.extensions?.persistedQuery?.sha256Hash;
63
+ };
64
+ const isSubscription = (definition) => {
65
+ return definition.kind === import_graphql.Kind.OPERATION_DEFINITION && definition.operation === import_graphql.OperationTypeNode.SUBSCRIPTION;
66
+ };
67
+ const isLiveQuery = (definition) => {
68
+ if (definition.kind !== import_graphql.Kind.OPERATION_DEFINITION || definition.operation !== import_graphql.OperationTypeNode.QUERY) {
69
+ return false;
70
+ }
71
+ return !!definition.directives?.find((d) => d.name.value === "live");
72
+ };
73
+ class SSELink extends import_core.ApolloLink {
74
+ client;
75
+ constructor(options) {
76
+ super();
77
+ const { url, auth, headers, httpLinkConfig } = options;
78
+ const { credentials, referrer, referrerPolicy, ...customHeaders } = httpLinkConfig?.headers || {};
79
+ this.client = (0, import_graphql_sse.createClient)({
80
+ url,
81
+ headers: async () => {
82
+ const token = await auth.tokenFn();
83
+ return {
84
+ ...token && { Authorization: `Bearer ${token}` },
85
+ ...token && { "auth-provider": auth.authProviderType },
86
+ ...headers,
87
+ ...customHeaders
88
+ };
89
+ },
90
+ credentials: mapCredentialsHeader(credentials),
91
+ referrer,
92
+ referrerPolicy: mapReferrerPolicyHeader(referrerPolicy)
93
+ });
94
+ }
95
+ request(operation) {
96
+ return new import_utilities.Observable((sink) => {
97
+ let request;
98
+ if (hasTrustedDocument(operation)) {
99
+ delete operation.query;
100
+ request = { ...operation };
101
+ } else {
102
+ request = {
103
+ ...operation,
104
+ query: (0, import_graphql.print)(operation.query)
105
+ };
106
+ }
107
+ return this.client.subscribe(request, {
108
+ next: sink.next.bind(sink),
109
+ complete: sink.complete.bind(sink),
110
+ error: sink.error.bind(sink)
111
+ });
112
+ });
113
+ }
114
+ }
115
+ // Annotate the CommonJS export names for ESM import in node:
116
+ 0 && (module.exports = {
117
+ SSELink,
118
+ isLiveQuery,
119
+ isSubscription
120
+ });
@@ -0,0 +1,59 @@
1
+ import React from 'react';
2
+ import type { ApolloCache, ApolloClientOptions, ApolloLink, HttpOptions, InMemoryCacheConfig, setLogVerbosity } from '@apollo/client';
3
+ import type { UseAuth } from '@cedarjs/auth';
4
+ import './typeOverride.js';
5
+ import type { RedwoodApolloLink, RedwoodApolloLinkFactory, RedwoodApolloLinkName, RedwoodApolloLinks } from './links.js';
6
+ export type ApolloClientCacheConfig = InMemoryCacheConfig;
7
+ export type { RedwoodApolloLink, RedwoodApolloLinkFactory, RedwoodApolloLinkName, RedwoodApolloLinks, };
8
+ export type GraphQLClientConfigProp = Omit<ApolloClientOptions<unknown>, 'cache' | 'link'> & {
9
+ cache?: ApolloCache<unknown>;
10
+ /**
11
+ * Configuration for Apollo Client's `InMemoryCache`.
12
+ * See https://www.apollographql.com/docs/react/caching/cache-configuration/.
13
+ */
14
+ cacheConfig?: ApolloClientCacheConfig;
15
+ /**
16
+ * Configuration for the terminating `HttpLink`.
17
+ * See https://www.apollographql.com/docs/react/api/link/apollo-link-http/#httplink-constructor-options.
18
+ *
19
+ * For example, you can use this prop to set the credentials policy so that cookies can be sent to other domains:
20
+ *
21
+ * ```js
22
+ * <RedwoodApolloProvider graphQLClientConfig={{
23
+ * httpLinkConfig: { credentials: 'include' }
24
+ * }}>
25
+ * ```
26
+ */
27
+ httpLinkConfig?: HttpOptions;
28
+ /**
29
+ * Extend or overwrite `RedwoodApolloProvider`'s Apollo Link.
30
+ *
31
+ * To overwrite Redwood's Apollo Link, just provide your own `ApolloLink`.
32
+ *
33
+ * To extend Redwood's Apollo Link, provide a function—it'll get passed an array of Redwood's Apollo Links
34
+ * which are objects with a name and link property:
35
+ *
36
+ * ```js
37
+ * const link = (redwoodApolloLinks) => {
38
+ * const consoleLink = new ApolloLink((operation, forward) => {
39
+ * console.log(operation.operationName)
40
+ * return forward(operation)
41
+ * })
42
+ *
43
+ * return ApolloLink.from([consoleLink, ...redwoodApolloLinks.map(({ link }) => link)])
44
+ * }
45
+ * ```
46
+ *
47
+ * If you do this, there's a few things you should keep in mind:
48
+ * - your function should return a single link (e.g., using `ApolloLink.from`; see https://www.apollographql.com/docs/react/api/link/introduction/#additive-composition)
49
+ * - the `HttpLink` should come last (https://www.apollographql.com/docs/react/api/link/introduction/#the-terminating-link)
50
+ */
51
+ link?: ApolloLink | RedwoodApolloLinkFactory;
52
+ };
53
+ export declare const RedwoodApolloProvider: React.FunctionComponent<{
54
+ graphQLClientConfig?: GraphQLClientConfigProp;
55
+ useAuth?: UseAuth;
56
+ logLevel?: ReturnType<typeof setLogVerbosity>;
57
+ children: React.ReactNode;
58
+ }>;
59
+ //# sourceMappingURL=suspense.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suspense.d.ts","sourceRoot":"","sources":["../../../src/apollo/suspense.tsx"],"names":[],"mappings":"AASA,OAAO,KAAqB,MAAM,OAAO,CAAA;AAEzC,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,eAAe,EAChB,MAAM,gBAAgB,CAAA;AAiBvB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAG5C,OAAO,mBAAmB,CAAA;AAS1B,OAAO,KAAK,EACV,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,YAAY,CAAA;AASnB,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAA;AAEzD,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,GACnB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,mBAAmB,CAAC,OAAO,CAAC,EAC5B,OAAO,GAAG,MAAM,CACjB,GAAG;IACF,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC5B;;;OAGG;IACH,WAAW,CAAC,EAAE,uBAAuB,CAAA;IACrC;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,WAAW,CAAA;IAC5B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,wBAAwB,CAAA;CAC7C,CAAA;AAkFD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,iBAAiB,CAAC;IAC1D,mBAAmB,CAAC,EAAE,uBAAuB,CAAA;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;IAC7C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAoCA,CAAA"}