@jetshop/core 1.1.13-no-proxy.5 → 1.1.13-no-proxy.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -79,11 +79,6 @@ export default function createApolloServer({ apolloConfig, extensions = [] }) {
79
79
  schemas,
80
80
  resolvers
81
81
  });
82
- const engine = apolloConfig.engineApiKey
83
- ? {
84
- apiKey: apolloConfig.engineApiKey
85
- }
86
- : false;
87
82
  const apolloServer = new ApolloServer({
88
83
  schema,
89
84
  // Disable introspection in production
@@ -98,9 +93,13 @@ export default function createApolloServer({ apolloConfig, extensions = [] }) {
98
93
  persistedQueries: {
99
94
  cache: new InMemoryLRUCache()
100
95
  },
101
- tracing: false,
96
+ // Enable tracing if Apollo Engine is configured
97
+ tracing: !!apolloConfig.engineApiKey,
102
98
  cacheControl: true,
103
- engine
99
+ // By setting this to "false", we avoid using Apollo Server 2's
100
+ // integrated metric reporting and fall-back to using the Apollo
101
+ // Engine Proxy (running separately) for metric collection.
102
+ engine: false
104
103
  });
105
104
  return { apolloServer, schema };
106
105
  });
@@ -1 +1 @@
1
- {"version":3,"file":"createApolloServer.js","sourceRoot":"","sources":["createApolloServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createApolloServer.js","sourceRoot":"","sources":["createApolloServer.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ export const createDevServer = ({ apolloConfig, port, schemaExtensions }) => __a
19
19
  });
20
20
  apolloServer.applyMiddleware({ app: app });
21
21
  const { port: listenPort } = yield listen({
22
+ apolloConfig,
22
23
  app,
23
24
  port
24
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"createDevServer.js","sourceRoot":"","sources":["createDevServer.ts"],"names":[],"mappings":";;;;;;;;AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,kBAAwC,MAAM,sBAAsB,CAAC;AAC5E,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAQ7B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAO,EACpC,YAAY,EACZ,IAAI,EACJ,gBAAgB,EACO,EAAE,EAAE;IAC3B,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,kBAAkB,CAAC;QAChD,YAAY;QACZ,UAAU,EAAE,gBAAgB;KAC7B,CAAC,CAAC;IAEH,YAAY,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAE3C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC;QACxC,GAAG;QACH,IAAI;KACL,CAAC,CAAC;IAEH,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AAC5C,CAAC,CAAA,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"createDevServer.js","sourceRoot":"","sources":["createDevServer.ts"],"names":[],"mappings":";;;;;;;;AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,kBAAwC,MAAM,sBAAsB,CAAC;AAC5E,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAQ7B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAO,EACpC,YAAY,EACZ,IAAI,EACJ,gBAAgB,EACO,EAAE,EAAE;IAC3B,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,kBAAkB,CAAC;QAChD,YAAY;QACZ,UAAU,EAAE,gBAAgB;KAC7B,CAAC,CAAC;IAEH,YAAY,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAE3C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC;QACxC,YAAY;QACZ,GAAG;QACH,IAAI;KACL,CAAC,CAAC;IAEH,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AAC5C,CAAC,CAAA,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -21,5 +21,5 @@ export interface RendererOptions {
21
21
  declare const createRenderer: (template: string, tree: React.ReactElement<any>, options: RendererOptions) => (req: Request & {
22
22
  universalCookies: any;
23
23
  breakpoint: string;
24
- }, res: Response) => Promise<void | Response>;
24
+ }, res: Response) => Promise<void>;
25
25
  export default createRenderer;
@@ -13,23 +13,22 @@ import { getSelectedChannel, getGeoRedirect } from '@jetshop/core/components/Cha
13
13
  import { channelsQuery } from '@jetshop/core/data/queries';
14
14
  import { setupIntl } from '@jetshop/intl/config';
15
15
  import IntlContext from '@jetshop/intl/context';
16
- import { renderStylesToNodeStream } from 'emotion-server';
16
+ import { renderStylesToString } from 'emotion-server';
17
17
  import get from 'lodash.get';
18
18
  import React from 'react';
19
- import { ApolloProvider, getDataFromTree } from 'react-apollo';
19
+ import { ApolloProvider, getMarkupFromTree } from 'react-apollo';
20
20
  import { CookiesProvider } from 'react-cookie';
21
- import { renderToNodeStream } from 'react-dom/server';
22
21
  import { HelmetProvider } from 'react-helmet-async';
23
22
  import Loadable from 'react-loadable';
24
23
  import { MediaProvider } from 'react-media-universal';
25
24
  import { StaticRouter } from 'react-router-dom';
26
- import report from '../../errorReporting';
27
25
  import { createPolyfill } from '../../polyfills';
28
26
  import { createClient } from '../apollo';
29
27
  import AuthProvider from '../../components/AuthContext/AuthProvider';
30
28
  import { getPrefetchFiles, getPrefetchHeader, getPreloadLinksAndScripts } from './getPrefetchFiles';
29
+ import { renderToString } from 'react-dom/server';
31
30
  const injectDataIntoSlots = (template, data) => Object.keys(data).reduce((output, key) => output.replace(`<slot name="${key}"/>`, data[key]), template);
32
- const wrapTree = (tree, req, renderOptions, client, selectedChannel, channels, translator, locale) => __awaiter(this, void 0, void 0, function* () {
31
+ const wrapTree = (tree, req, renderOptions, client, selectedChannel, channels, translator, locale) => {
33
32
  const modules = [];
34
33
  const routerContext = { url: null, statusCode: 200 };
35
34
  const helmetContext = { helmet: null };
@@ -54,53 +53,30 @@ const wrapTree = (tree, req, renderOptions, client, selectedChannel, channels, t
54
53
  React.createElement(ChannelProvider, { channels: channels, selectedChannel: selectedChannel },
55
54
  React.createElement(StaticRouter, { location: req.originalUrl, context: routerContext },
56
55
  React.createElement(AuthProvider, null, tree))))))))))));
57
- try {
58
- yield getDataFromTree(wrappedTree);
59
- }
60
- catch (e) {
61
- // Don't log to Sentry here as we're already logging query errors in a
62
- // middleware and JS errors further down in `handleError` and then
63
- // again on the client if it fails to recover
64
- console.error('Apollo data fetch failed:', e);
65
- routerContext.statusCode = 500;
66
- }
67
- // Serialize the apollo state for client side rehydration. The html comment
68
- // (inside js comments) is intentional and prevents inline script tags
69
- // inside the extracted state from closing this script tag prematurely
70
- const apolloState = `<script>/*<!--*/
71
- window.__APOLLO_STATE__=${JSON.stringify(client.extract())};
72
- /*-->*/</script>`;
73
56
  return {
74
57
  wrappedTree,
75
58
  modules,
76
- routerUrl: routerContext.url,
77
- statusCode: routerContext.statusCode,
78
- helmet: helmetContext.helmet,
79
- apolloState,
59
+ routerContext: routerContext,
60
+ helmetContext: helmetContext,
80
61
  polyfill: createPolyfill(locale)
81
62
  };
82
- });
63
+ };
83
64
  const startResponse = ({ res, head, statusCode }) => {
84
65
  res.status(statusCode);
85
66
  // write head and don't end response
86
67
  res.write(head);
87
68
  };
88
- const endResponse = ({ res, foot }) => {
69
+ const endResponse = ({ res, client, foot }) => {
70
+ // Serialize the apollo state for client side rehydration. The html comment
71
+ // (inside js comments) is intentional and prevents inline script tags
72
+ // inside the extracted state from closing this script tag prematurely
73
+ const apolloState = `<script>/*<!--*/
74
+ window.__APOLLO_STATE__=${JSON.stringify(client.extract())};
75
+ /*-->*/</script>`;
76
+ res.write(apolloState);
89
77
  res.write(foot);
90
78
  res.end();
91
79
  };
92
- const handleError = ({ streamName, res, foot }) => (error) => {
93
- report(error, { reason: streamName });
94
- console.error(`Error in stream "${streamName}":`, error);
95
- // we need to make sure that res.write gets a string
96
- // cause if it does not get a string/buffer it will cause
97
- // the server to crash
98
- // error can be literally anything, not limited to Error,
99
- // which means the key message could be missing
100
- const chunk = (error && error.message) || '' + error;
101
- res.write(chunk);
102
- endResponse({ res, foot });
103
- };
104
80
  const createRenderer = (template, tree, options) => (req, res) => __awaiter(this, void 0, void 0, function* () {
105
81
  const { apolloConfig, preloadStats, intl } = options;
106
82
  // Set response headers immediately
@@ -122,9 +98,25 @@ const createRenderer = (template, tree, options) => (req, res) => __awaiter(this
122
98
  defaultLocale: intl.defaultLocale,
123
99
  options: intl.options
124
100
  });
125
- const { wrappedTree, modules, routerUrl, statusCode, helmet: { title, meta }, apolloState, polyfill } = yield wrapTree(tree, req, options, client, selectedChannel, channels, translator, locale);
126
- if (routerUrl) {
127
- return res.redirect(301, routerUrl);
101
+ const { wrappedTree, modules, routerContext, helmetContext, polyfill } = wrapTree(tree, req, options, client, selectedChannel, channels, translator, locale);
102
+ let statusCode;
103
+ let response;
104
+ try {
105
+ response = yield getMarkupFromTree({
106
+ tree: wrappedTree,
107
+ renderFunction: tree => renderStylesToString(renderToString(tree))
108
+ });
109
+ }
110
+ catch (e) {
111
+ // Don't log to Sentry here as we're already logging query errors in a
112
+ // middleware and JS errors further down in `handleError` and then
113
+ // again on the client if it fails to recover
114
+ console.error('Apollo data fetch failed:', e);
115
+ response = e;
116
+ statusCode = 500;
117
+ }
118
+ if (routerContext.url) {
119
+ return res.redirect(301, routerContext.url);
128
120
  }
129
121
  const prefetchFiles = getPrefetchFiles({
130
122
  locale,
@@ -137,28 +129,21 @@ const createRenderer = (template, tree, options) => (req, res) => __awaiter(this
137
129
  }
138
130
  const { preloadLinks, preloadScripts } = getPreloadLinksAndScripts(prefetchFiles);
139
131
  const data = {
140
- apolloState,
141
132
  polyfill,
142
133
  preloadLinks,
143
134
  preloadScripts,
144
- title: title.toString(),
145
- meta: meta.toString()
135
+ title: helmetContext.helmet.title.toString(),
136
+ meta: helmetContext.helmet.meta.toString()
146
137
  };
147
138
  const html = injectDataIntoSlots(template, data);
148
139
  const [head, foot] = html.split('<slot name="html"/>');
149
- startResponse({ res, head, statusCode });
150
- // create node stream
151
- const stream = renderToNodeStream(wrappedTree)
152
- .on('error', handleError({ streamName: 'React NodeStream', res, foot }))
153
- // pipe it to emotion-server node stream
154
- .pipe(renderStylesToNodeStream())
155
- .on('error', handleError({ streamName: 'Styles', res, foot }))
156
- // on node stream end, write the foot part of the html and end the response
157
- .on('end', () => {
158
- endResponse({ res, foot });
140
+ startResponse({
141
+ res,
142
+ head,
143
+ statusCode: statusCode || routerContext.statusCode
159
144
  });
160
- // then pipe it to response, and tell it to not end the response
161
- return stream.pipe(res, { end: false });
145
+ res.write(response);
146
+ endResponse({ res, client, foot });
162
147
  });
163
148
  export default createRenderer;
164
149
  //# sourceMappingURL=createRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createRenderer.js","sourceRoot":"","sources":["createRenderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createRenderer.js","sourceRoot":"","sources":["createRenderer.tsx"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ const boot = (Component, { apolloConfig, trackingID, tagManagerID, sentryServerD
44
44
  });
45
45
  app.use(asyncErrorHandler(renderer));
46
46
  const port = parseInt(process.env.PORT, 10) || 3000;
47
- yield listen({ app, port });
47
+ yield listen({ app, port, apolloConfig });
48
48
  console.log(`🚀 App ready at http://localhost:${port}`);
49
49
  });
50
50
  export default boot;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AAEpE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,MAAM,qCAAqC,CAAC;AAExD,8EAA8E;AAC9E,iGAAiG;AACjG,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,UAAU,GAAG,QAAQ,CAAC;AAEtE,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC;AACpD,MAAM,iBAAiB,GAAG,KAAK,CAAC,QAAQ,GAAG,sBAAsB,CAAC;AA2BlE,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAEhE,MAAM,IAAI,GAAG,CACX,SAA4B,EAC5B,EACE,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,gBAAgB,EACJ,EACd,EAAE;IACF,IAAI,CAAC,kBAAkB,CAAC,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,EAAE;QAC1D,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,IAAI,cAAc,CAAC,eAAe,CAAC,KAAK,KAAK,EAAE;QAC7C,OAAO,CAAC,KAAK,CACX,kDAAkD;YAChD,+CAA+C,CAClD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;IAE5E,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAErC,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE;QACnD,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,IAAI;QACJ,gBAAgB;KACjB,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;IAEpD,MAAM,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5B,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AAEpE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,MAAM,qCAAqC,CAAC;AAExD,8EAA8E;AAC9E,iGAAiG;AACjG,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,UAAU,GAAG,QAAQ,CAAC;AAEtE,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC;AACpD,MAAM,iBAAiB,GAAG,KAAK,CAAC,QAAQ,GAAG,sBAAsB,CAAC;AA2BlE,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAEhE,MAAM,IAAI,GAAG,CACX,SAA4B,EAC5B,EACE,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,gBAAgB,EACJ,EACd,EAAE;IACF,IAAI,CAAC,kBAAkB,CAAC,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,EAAE;QAC1D,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,IAAI,cAAc,CAAC,eAAe,CAAC,KAAK,KAAK,EAAE;QAC7C,OAAO,CAAC,KAAK,CACX,kDAAkD;YAChD,+CAA+C,CAClD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;IAE5E,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAErC,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE;QACnD,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,IAAI;QACJ,gBAAgB;KACjB,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;IAEpD,MAAM,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IAE1C,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1,10 +1,13 @@
1
+ import { ApolloConfig } from '@jetshop/core/boot/apollo';
1
2
  import { Application as ExpressApp } from 'express';
2
3
  export interface ListenOptions {
3
4
  app: ExpressApp;
4
5
  port: number;
6
+ apolloConfig: ApolloConfig;
5
7
  }
6
8
  /**
7
9
  * - Starts listening to `port`
10
+ * - Wraps Express server in Apollo Engine if `apolloConfig.engineApiKey` is set
8
11
  */
9
12
  declare const listen: ({ app, port }: ListenOptions) => Promise<{
10
13
  port: number;
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * - Starts listening to `port`
3
+ * - Wraps Express server in Apollo Engine if `apolloConfig.engineApiKey` is set
3
4
  */
4
5
  const listen = ({ app, port }) => new Promise((resolve, reject) => {
5
6
  const http = app.listen({ port }, (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"listen.js","sourceRoot":"","sources":["listen.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAiB,EAA6B,EAAE,CACzE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,GAAW,EAAE,EAAE;QAChD,GAAG;YACD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACb,CAAC,CAAC,OAAO,CAAC;gBACN,IAAI,EAAG,IAAI,CAAC,OAAO,EAAoB,CAAC,IAAI;aAC7C,CAAC,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"listen.js","sourceRoot":"","sources":["listen.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,MAAM,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAiB,EAA6B,EAAE,CACzE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,GAAW,EAAE,EAAE;QAChD,GAAG;YACD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACb,CAAC,CAAC,OAAO,CAAC;gBACN,IAAI,EAAG,IAAI,CAAC,OAAO,EAAoB,CAAC,IAAI;aAC7C,CAAC,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,eAAe,MAAM,CAAC"}
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+ import { Query } from 'react-apollo';
3
+ export declare class RenderPromises {
4
+ private queryPromises;
5
+ private queryGraveyard;
6
+ addQueryPromise<TData, TVariables>(queryInstance: Query<TData, TVariables>, finish: () => React.ReactNode): React.ReactNode;
7
+ hasPromises(): boolean;
8
+ consumeAndAwaitPromises(): Promise<any[]>;
9
+ }
10
+ export declare type GetMarkupFromTreeOptions = {
11
+ tree: React.ReactNode;
12
+ context?: {
13
+ [key: string]: any;
14
+ };
15
+ renderFunction?: (tree: React.ReactElement<any>) => NodeJS.ReadableStream;
16
+ };
17
+ export default function renderToStream({ tree, context, renderFunction }: GetMarkupFromTreeOptions): Promise<NodeJS.ReadableStream>;
@@ -0,0 +1,105 @@
1
+ import * as React from 'react';
2
+ import { renderToNodeStream } from 'react-dom/server';
3
+ import * as PropTypes from 'prop-types';
4
+ // Like a Set, but for tuples. In practice, this class is used to store
5
+ // (query, JSON.stringify(variables)) tuples.
6
+ class Trie {
7
+ constructor() {
8
+ this.children = null;
9
+ this.added = false;
10
+ }
11
+ has(...keys) {
12
+ let node = this;
13
+ return (keys.every(key => {
14
+ const child = node.children && node.children.get(key);
15
+ return !!(child && (node = child));
16
+ }) && node.added);
17
+ }
18
+ add(...keys) {
19
+ let node = this;
20
+ keys.forEach(key => {
21
+ const map = node.children || (node.children = new Map());
22
+ const child = map.get(key);
23
+ if (child) {
24
+ node = child;
25
+ }
26
+ else {
27
+ map.set(key, (node = new Trie()));
28
+ }
29
+ });
30
+ node.added = true;
31
+ }
32
+ }
33
+ export class RenderPromises {
34
+ constructor() {
35
+ // Map from Query component instances to pending fetchData promises.
36
+ this.queryPromises = new Map();
37
+ // A way of remembering queries we've seen during previous renderings,
38
+ // so that we never attempt to fetch them again in future renderings.
39
+ this.queryGraveyard = new Trie();
40
+ }
41
+ addQueryPromise(queryInstance, finish) {
42
+ const { query, variables } = queryInstance.props;
43
+ if (!this.queryGraveyard.has(query, JSON.stringify(variables))) {
44
+ this.queryPromises.set(queryInstance, new Promise(resolve => {
45
+ resolve(queryInstance.fetchData());
46
+ }));
47
+ // Render null to abandon this subtree for this rendering, so that we
48
+ // can wait for the data to arrive.
49
+ return null;
50
+ }
51
+ return finish();
52
+ }
53
+ hasPromises() {
54
+ return this.queryPromises.size > 0;
55
+ }
56
+ consumeAndAwaitPromises() {
57
+ const promises = [];
58
+ this.queryPromises.forEach((promise, queryInstance) => {
59
+ const { query, variables } = queryInstance.props;
60
+ // Make sure we never try to call fetchData for this query document and
61
+ // these variables again. Since the queryInstance objects change with
62
+ // every rendering, deduplicating them by query and variables is the
63
+ // best we can do. If a different Query component happens to have the
64
+ // same query document and variables, it will be immediately rendered
65
+ // by calling finish() in addQueryPromise, which could result in the
66
+ // rendering of an unwanted loading state, but that's not nearly as bad
67
+ // as getting stuck in an infinite rendering loop because we kept calling
68
+ // queryInstance.fetchData for the same Query component indefinitely.
69
+ this.queryGraveyard.add(query, JSON.stringify(variables));
70
+ promises.push(promise);
71
+ });
72
+ this.queryPromises.clear();
73
+ return Promise.all(promises);
74
+ }
75
+ }
76
+ export default function renderToStream({ tree, context = {}, renderFunction = renderToNodeStream }) {
77
+ const renderPromises = new RenderPromises();
78
+ class RenderPromisesProvider extends React.Component {
79
+ getChildContext() {
80
+ return Object.assign({}, context, { renderPromises });
81
+ }
82
+ render() {
83
+ // Always re-render from the rootElement, even though it might seem
84
+ // better to render the children of the component responsible for the
85
+ // promise, because it is not possible to reconstruct the full context
86
+ // of the original rendering (including all unknown context provider
87
+ // elements) for a subtree of the orginal component tree.
88
+ return tree;
89
+ }
90
+ }
91
+ RenderPromisesProvider.childContextTypes = {
92
+ renderPromises: PropTypes.object
93
+ };
94
+ Object.keys(context).forEach(key => {
95
+ RenderPromisesProvider.childContextTypes[key] = PropTypes.any;
96
+ });
97
+ function process() {
98
+ const stream = renderFunction(React.createElement(RenderPromisesProvider));
99
+ return renderPromises.hasPromises()
100
+ ? renderPromises.consumeAndAwaitPromises().then(process)
101
+ : stream;
102
+ }
103
+ return Promise.resolve().then(process);
104
+ }
105
+ //# sourceMappingURL=renderToStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderToStream.js","sourceRoot":"","sources":["renderToStream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AAGxC,uEAAuE;AACvE,6CAA6C;AAC7C,MAAM,IAAI;IAAV;QACU,aAAQ,GAA0B,IAAI,CAAC;QACvC,UAAK,GAAG,KAAK,CAAC;IAyBxB,CAAC;IAvBC,GAAG,CAAC,GAAG,IAAW;QAChB,IAAI,IAAI,GAAS,IAAI,CAAC;QACtB,OAAO,CACL,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtD,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CACjB,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,GAAG,IAAW;QAChB,IAAI,IAAI,GAAS,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACjB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,KAAK,EAAE;gBACT,IAAI,GAAG,KAAK,CAAC;aACd;iBAAM;gBACL,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;aACnC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAED,MAAM,OAAO,cAAc;IAA3B;QACE,oEAAoE;QAC5D,kBAAa,GAAG,IAAI,GAAG,EAAiC,CAAC;QAEjE,sEAAsE;QACtE,qEAAqE;QAC7D,mBAAc,GAAG,IAAI,IAAI,EAAE,CAAC;IA4CtC,CAAC;IA1CQ,eAAe,CACpB,aAAuC,EACvC,MAA6B;QAE7B,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE;YAC9D,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,aAAa,EACb,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;gBACpB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC,CACH,CAAC;YACF,qEAAqE;YACrE,mCAAmC;YACnC,OAAO,IAAI,CAAC;SACb;QACD,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC;IACrC,CAAC;IAEM,uBAAuB;QAC5B,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE;YACpD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC;YACjD,uEAAuE;YACvE,qEAAqE;YACrE,oEAAoE;YACpE,qEAAqE;YACrE,qEAAqE;YACrE,oEAAoE;YACpE,uEAAuE;YACvE,yEAAyE;YACzE,qEAAqE;YACrE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1D,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;CACF;AAQD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,IAAI,EACJ,OAAO,GAAG,EAAE,EACZ,cAAc,GAAG,kBAAkB,EACV;IACzB,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAE5C,MAAM,sBAAuB,SAAQ,KAAK,CAAC,SAAS;QAKlD,eAAe;YACb,yBAAY,OAAO,IAAE,cAAc,IAAG;QACxC,CAAC;QAED,MAAM;YACJ,mEAAmE;YACnE,qEAAqE;YACrE,sEAAsE;YACtE,oEAAoE;YACpE,yDAAyD;YACzD,OAAO,IAAI,CAAC;QACd,CAAC;;IAfM,wCAAiB,GAA2B;QACjD,cAAc,EAAE,SAAS,CAAC,MAAM;KACjC,CAAC;IAgBJ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACjC,sBAAsB,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,SAAS,OAAO;QACd,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC3E,OAAO,cAAc,CAAC,WAAW,EAAE;YACjC,CAAC,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;YACxD,CAAC,CAAC,MAAM,CAAC;IACb,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jetshop/core",
3
- "version": "1.1.13-no-proxy.5",
3
+ "version": "1.1.13-no-proxy.4",
4
4
  "main": "index.js",
5
5
  "license": "MIT",
6
6
  "dependencies": {
@@ -10,7 +10,7 @@
10
10
  "@types/lodash.get": "^4.4.4",
11
11
  "@types/lodash.merge": "^4.6.4",
12
12
  "@types/lodash.pick": "^4.4.4",
13
- "@types/node": "^10.12.12",
13
+ "@types/node": "^8.0.53",
14
14
  "@types/node-fetch": "^2.1.2",
15
15
  "@types/qs": "^6.5.1",
16
16
  "@types/react": "^16.4.18",
@@ -19,6 +19,7 @@
19
19
  "@types/react-loadable": "^5.4.1",
20
20
  "apollo-cache-inmemory": "^1.3.9",
21
21
  "apollo-client": "^2.4.5",
22
+ "apollo-engine": "^1.1.2",
22
23
  "apollo-link": "^1.2.3",
23
24
  "apollo-link-context": "^1.0.9",
24
25
  "apollo-link-error": "^1.1.1",
package/polyfills.js CHANGED
@@ -11,11 +11,7 @@ const polyfills = (locale) => [
11
11
  'String.prototype.endsWith',
12
12
  'String.prototype.startsWith',
13
13
  'Object.keys',
14
- 'IntersectionObserver',
15
14
  `Intl.~locale.${locale}`
16
15
  ];
17
- export const createPolyfill = (locale) => {
18
- const features = polyfills(locale).join(',');
19
- return `<script async defer src="//cdn.polyfill.io/v2/polyfill${process.env.NODE_ENV === 'production' ? '.min' : ''}.js?features=${features}&flags=gated&callback=bootShop"></script>`;
20
- };
16
+ export const createPolyfill = (locale) => `<script src="//cdn.polyfill.io/v2/polyfill${process.env.NODE_ENV === 'production' ? '.min' : ''}.js?features=${polyfills(locale).join(',')}&flags=gated"></script>`;
21
17
  //# sourceMappingURL=polyfills.js.map
package/polyfills.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"polyfills.js","sourceRoot":"","sources":["polyfills.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC;IACpC,KAAK;IACL,YAAY;IACZ,sBAAsB;IACtB,eAAe;IACf,gBAAgB;IAChB,sBAAsB;IACtB,2BAA2B;IAC3B,0BAA0B;IAC1B,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;IAC7B,aAAa;IACb,sBAAsB;IACtB,gBAAgB,MAAM,EAAE;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;IAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,OAAO,yDACL,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EACnD,gBAAgB,QAAQ,2CAA2C,CAAC;AACtE,CAAC,CAAC"}
1
+ {"version":3,"file":"polyfills.js","sourceRoot":"","sources":["polyfills.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC;IACpC,KAAK;IACL,YAAY;IACZ,sBAAsB;IACtB,eAAe;IACf,gBAAgB;IAChB,sBAAsB;IACtB,2BAA2B;IAC3B,0BAA0B;IAC1B,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;IAC7B,aAAa;IACb,gBAAgB,MAAM,EAAE;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CAC/C,6CACE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EACnD,gBAAgB,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC"}