@commercetools-frontend/application-shell 21.9.0 → 21.12.0
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.
- package/dist/{application-entry-point-f104319e.esm.js → application-entry-point-01424eb5.esm.js} +276 -95
- package/dist/{application-entry-point-0650332e.cjs.prod.js → application-entry-point-93ad5f12.cjs.prod.js} +280 -94
- package/dist/{application-entry-point-9df8f75e.cjs.dev.js → application-entry-point-a9aa0d45.cjs.dev.js} +280 -94
- package/dist/commercetools-frontend-application-shell.cjs.dev.js +21 -15
- package/dist/commercetools-frontend-application-shell.cjs.prod.js +21 -15
- package/dist/commercetools-frontend-application-shell.esm.js +17 -15
- package/dist/{constants-3cf6ed64.esm.js → constants-a3c850be.esm.js} +4 -1
- package/dist/{constants-bf2e1d68.cjs.dev.js → constants-c2c238ff.cjs.prod.js} +4 -1
- package/dist/{constants-f34da47c.cjs.prod.js → constants-d9a5241e.cjs.dev.js} +4 -1
- package/dist/declarations/src/configure-apollo.d.ts +2 -2
- package/dist/declarations/src/constants.d.ts +3 -0
- package/dist/declarations/src/export-types.d.ts +9 -0
- package/dist/declarations/src/index.d.ts +3 -1
- package/dist/declarations/src/types/generated/ctp.d.ts +15 -1
- package/dist/declarations/src/utils/apollo-client-runtime-cache.d.ts +1 -2
- package/dist/declarations/src/utils/apollo-context.d.ts +3 -14
- package/dist/declarations/src/utils/get-mc-api-url/get-mc-api-url.d.ts +2 -7
- package/dist/declarations/src/utils/http-client.d.ts +29 -0
- package/dist/declarations/src/utils/index.d.ts +1 -1
- package/dist/{index-b0b16985.cjs.dev.js → index-149f53ec.cjs.dev.js} +9 -14
- package/dist/{index-edd1f296.esm.js → index-424de814.esm.js} +9 -14
- package/dist/{index-3dac983e.cjs.prod.js → index-f0bd3232.cjs.prod.js} +9 -14
- package/dist/{oidc-82e151f9.cjs.prod.js → oidc-5b507512.cjs.prod.js} +1 -1
- package/dist/{oidc-8af521ca.esm.js → oidc-5cae2dba.esm.js} +1 -1
- package/dist/{oidc-ff089e6f.cjs.dev.js → oidc-9134face.cjs.dev.js} +1 -1
- package/dist/{project-expired-23ed250a.cjs.prod.js → project-expired-18373b37.cjs.dev.js} +16 -14
- package/dist/{project-expired-e4b56600.esm.js → project-expired-457db600.esm.js} +16 -14
- package/dist/{project-expired-5f0f3bb2.cjs.dev.js → project-expired-de826ba3.cjs.prod.js} +16 -14
- package/dist/{project-not-found-11ee63f2.esm.js → project-not-found-0c6fe7f5.esm.js} +16 -14
- package/dist/{project-not-found-24cd5af4.cjs.dev.js → project-not-found-5c0fe8a1.cjs.dev.js} +16 -14
- package/dist/{project-not-found-cf44540b.cjs.prod.js → project-not-found-fa0e524c.cjs.prod.js} +16 -14
- package/dist/{project-not-initialized-e5b36044.cjs.dev.js → project-not-initialized-a1bf95fd.cjs.dev.js} +16 -14
- package/dist/{project-not-initialized-f160d31e.cjs.prod.js → project-not-initialized-da0fad06.cjs.prod.js} +16 -14
- package/dist/{project-not-initialized-23dd0a8d.esm.js → project-not-initialized-dc38f9f9.esm.js} +16 -14
- package/dist/{project-suspended-5b470857.esm.js → project-suspended-32b5b5b2.esm.js} +16 -14
- package/dist/{project-suspended-ad97c11c.cjs.dev.js → project-suspended-92518e78.cjs.dev.js} +16 -14
- package/dist/{project-suspended-f6f25355.cjs.prod.js → project-suspended-cbad48d9.cjs.prod.js} +16 -14
- package/dist/{quick-access-5223e91a.esm.js → quick-access-793ccbe9.esm.js} +13 -11
- package/dist/{quick-access-4077e80d.cjs.dev.js → quick-access-9dc493d3.cjs.dev.js} +13 -11
- package/dist/{quick-access-cdb8ce9e.cjs.prod.js → quick-access-feca5530.cjs.prod.js} +13 -11
- package/dist/{service-page-project-switcher-057e819c.cjs.prod.js → service-page-project-switcher-15a90544.cjs.prod.js} +1 -1
- package/dist/{service-page-project-switcher-f29ee61d.esm.js → service-page-project-switcher-5f17d0e5.esm.js} +1 -1
- package/dist/{service-page-project-switcher-ab9d0c0e.cjs.dev.js → service-page-project-switcher-b9c66554.cjs.dev.js} +1 -1
- package/package.json +16 -16
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +2 -2
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +2 -2
- package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +2 -2
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +13 -3
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +13 -3
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +13 -3
|
@@ -22,7 +22,7 @@ var omitEmpty = require('omit-empty-es');
|
|
|
22
22
|
var notifications = require('@commercetools-frontend/notifications');
|
|
23
23
|
var sdk = require('@commercetools-frontend/sdk');
|
|
24
24
|
var constants = require('@commercetools-frontend/constants');
|
|
25
|
-
var constants$1 = require('./constants-
|
|
25
|
+
var constants$1 = require('./constants-c2c238ff.cjs.prod.js');
|
|
26
26
|
var reactNotifications = require('@commercetools-frontend/react-notifications');
|
|
27
27
|
var _startsWithInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
|
|
28
28
|
var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
|
|
@@ -38,7 +38,6 @@ var sentry = require('@commercetools-frontend/sentry');
|
|
|
38
38
|
var _URL = require('@babel/runtime-corejs3/core-js-stable/url');
|
|
39
39
|
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
40
40
|
var client = require('@apollo/client');
|
|
41
|
-
var createHttpUserAgent = require('@commercetools/http-user-agent');
|
|
42
41
|
var loggerLink = require('apollo-link-logger');
|
|
43
42
|
var _Array$from = require('@babel/runtime-corejs3/core-js-stable/array/from');
|
|
44
43
|
var _Symbol = require('@babel/runtime-corejs3/core-js-stable/symbol');
|
|
@@ -49,8 +48,19 @@ var history = require('@commercetools-frontend/browser-history');
|
|
|
49
48
|
var _someInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/some');
|
|
50
49
|
var _Object$values = require('@babel/runtime-corejs3/core-js-stable/object/values');
|
|
51
50
|
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
51
|
+
var createHttpUserAgent = require('@commercetools/http-user-agent');
|
|
52
52
|
var uuid = require('uuid');
|
|
53
53
|
var _JSON$stringify = require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
54
|
+
var _Reflect$construct = require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
|
|
55
|
+
var _asyncToGenerator = require('@babel/runtime-corejs3/helpers/asyncToGenerator');
|
|
56
|
+
var _createClass = require('@babel/runtime-corejs3/helpers/createClass');
|
|
57
|
+
var _classCallCheck = require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
58
|
+
var _assertThisInitialized = require('@babel/runtime-corejs3/helpers/assertThisInitialized');
|
|
59
|
+
var _inherits = require('@babel/runtime-corejs3/helpers/inherits');
|
|
60
|
+
var _possibleConstructorReturn = require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
|
|
61
|
+
var _getPrototypeOf = require('@babel/runtime-corejs3/helpers/getPrototypeOf');
|
|
62
|
+
var _wrapNativeSuper = require('@babel/runtime-corejs3/helpers/wrapNativeSuper');
|
|
63
|
+
var _regeneratorRuntime = require('@babel/runtime-corejs3/regenerator');
|
|
54
64
|
var retry = require('@apollo/client/link/retry');
|
|
55
65
|
require('prop-types');
|
|
56
66
|
var react = require('react');
|
|
@@ -86,7 +96,6 @@ var _indexOfInstanceProperty__default = /*#__PURE__*/_interopDefault(_indexOfIns
|
|
|
86
96
|
var _sliceInstanceProperty__default = /*#__PURE__*/_interopDefault(_sliceInstanceProperty);
|
|
87
97
|
var _URL__default = /*#__PURE__*/_interopDefault(_URL);
|
|
88
98
|
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
89
|
-
var createHttpUserAgent__default = /*#__PURE__*/_interopDefault(createHttpUserAgent);
|
|
90
99
|
var loggerLink__default = /*#__PURE__*/_interopDefault(loggerLink);
|
|
91
100
|
var _Array$from__default = /*#__PURE__*/_interopDefault(_Array$from);
|
|
92
101
|
var _Symbol__default = /*#__PURE__*/_interopDefault(_Symbol);
|
|
@@ -96,11 +105,14 @@ var history__default = /*#__PURE__*/_interopDefault(history);
|
|
|
96
105
|
var _someInstanceProperty__default = /*#__PURE__*/_interopDefault(_someInstanceProperty);
|
|
97
106
|
var _Object$values__default = /*#__PURE__*/_interopDefault(_Object$values);
|
|
98
107
|
var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
|
|
108
|
+
var createHttpUserAgent__default = /*#__PURE__*/_interopDefault(createHttpUserAgent);
|
|
99
109
|
var _JSON$stringify__default = /*#__PURE__*/_interopDefault(_JSON$stringify);
|
|
110
|
+
var _Reflect$construct__default = /*#__PURE__*/_interopDefault(_Reflect$construct);
|
|
111
|
+
var _regeneratorRuntime__default = /*#__PURE__*/_interopDefault(_regeneratorRuntime);
|
|
100
112
|
var invariant__default = /*#__PURE__*/_interopDefault(invariant);
|
|
101
113
|
|
|
102
114
|
// NOTE: This string will be replaced on build time with the package version.
|
|
103
|
-
var version = "21.
|
|
115
|
+
var version = "21.12.0";
|
|
104
116
|
|
|
105
117
|
var isAddNotificationErrorAction = function isAddNotificationErrorAction(action) {
|
|
106
118
|
var errorAction = action;
|
|
@@ -227,9 +239,9 @@ var messages = reactIntl.defineMessages({
|
|
|
227
239
|
}
|
|
228
240
|
});
|
|
229
241
|
|
|
230
|
-
function ownKeys$
|
|
242
|
+
function ownKeys$6(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
231
243
|
|
|
232
|
-
function _objectSpread$
|
|
244
|
+
function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$6(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$6(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
233
245
|
|
|
234
246
|
var getPortalContainer = function getPortalContainer() {
|
|
235
247
|
return document.querySelector("#".concat(REQUESTS_IN_FLIGHT_LOADER_DOM_ID));
|
|
@@ -241,7 +253,7 @@ var RequestsInFlightLoader = function RequestsInFlightLoader() {
|
|
|
241
253
|
});
|
|
242
254
|
if (!hasRequestsInFlight) return null;
|
|
243
255
|
return /*#__PURE__*/ReactDOM__default["default"].createPortal(jsxRuntime.jsx(LoadingSpinner__default["default"], {
|
|
244
|
-
children: jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
256
|
+
children: jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$6({}, messages.labelLoading))
|
|
245
257
|
}), getPortalContainer());
|
|
246
258
|
};
|
|
247
259
|
|
|
@@ -347,52 +359,47 @@ function getCorrelationId() {
|
|
|
347
359
|
return _filterInstanceProperty__default["default"](_context = ['mc', selectProjectKeyFromUrl(), userId, uuid.v4()]).call(_context, skipMalformedPart).join('/');
|
|
348
360
|
}
|
|
349
361
|
|
|
350
|
-
|
|
351
|
-
|
|
362
|
+
// NOTE: Copied from `@application-shell-connectors`.
|
|
363
|
+
// TODO: Remove this version once the change in the connectors has been released.
|
|
364
|
+
var mcHostnameRegex = /^mc(-(\d){4,})?\.(.*)$/;
|
|
365
|
+
var mcPreviewHostnameRegex = /^.*\.mc-preview\.(.*)$/;
|
|
366
|
+
|
|
367
|
+
var getMcOriginTld = function getMcOriginTld(host) {
|
|
368
|
+
if (host.match(mcPreviewHostnameRegex)) {
|
|
369
|
+
return host.replace(mcPreviewHostnameRegex, '$1');
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
return host.replace(mcHostnameRegex, '$3');
|
|
352
373
|
};
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
* Given the Merchant Center or Custom Application runs behind the proxy
|
|
356
|
-
* then the `mcApiUrl` should be build using the origin on the window.
|
|
357
|
-
*
|
|
358
|
-
* This allows the Merchant Center (or any Custom Appliction) to automatically
|
|
359
|
-
* use an `mcApiUrl` which matches the respective url of the deployment.
|
|
360
|
-
*
|
|
361
|
-
* This is particularily useful with the new and old hostnames for the Merchant Center.
|
|
362
|
-
* When using the origin, it will be made sure that the authorization cookie will
|
|
363
|
-
* always be sent as the appropriate API url is used.
|
|
364
|
-
*
|
|
365
|
-
* 1. MC: mc.commercetools.com with API: mc-api.europe-west1.gcp.commercetools.com
|
|
366
|
-
* -> Will not work as urls differ
|
|
367
|
-
* 2. MC: mc.europe-west1.gcp.commercetools.com with API: mc-api.commercetools.com
|
|
368
|
-
* -> Will not work as urls differ
|
|
369
|
-
*
|
|
370
|
-
* Using the origin ensures that urls always match with the cookie sent. Otherwise,
|
|
371
|
-
* the application shell will rightfully redirect to the logout page.
|
|
372
|
-
*/
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
var getMcApiUrlFromOrigin = function getMcApiUrlFromOrigin(actualWindow) {
|
|
374
|
+
|
|
375
|
+
var getMcApiUrlFromOrigin = function getMcApiUrlFromOrigin(origin) {
|
|
376
376
|
var _context;
|
|
377
377
|
|
|
378
|
-
var url = new _URL__default["default"](
|
|
379
|
-
var originTld =
|
|
378
|
+
var url = new _URL__default["default"](origin);
|
|
379
|
+
var originTld = getMcOriginTld(url.host);
|
|
380
380
|
return _concatInstanceProperty__default["default"](_context = "".concat(url.protocol, "//mc-api.")).call(_context, originTld);
|
|
381
381
|
};
|
|
382
382
|
|
|
383
|
-
var
|
|
384
|
-
return
|
|
383
|
+
var parseAsBoolean = function parseAsBoolean(value) {
|
|
384
|
+
return value === true || value === 'true';
|
|
385
385
|
};
|
|
386
386
|
|
|
387
387
|
function getMcApiUrl() {
|
|
388
|
-
var
|
|
389
|
-
var
|
|
388
|
+
var environment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.app;
|
|
389
|
+
var origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.origin;
|
|
390
|
+
var isServedByProxy = parseAsBoolean(environment.servedByProxy);
|
|
391
|
+
/**
|
|
392
|
+
* Prefer using the origin URL for the MC API based on the origin value
|
|
393
|
+
* of the browser's `window.location`.
|
|
394
|
+
* This ensures that the application always uses the correct URL associated
|
|
395
|
+
* with that environment, instead of relying on the config value.
|
|
396
|
+
*/
|
|
390
397
|
|
|
391
398
|
if (isServedByProxy) {
|
|
392
|
-
return getMcApiUrlFromOrigin(
|
|
399
|
+
return getMcApiUrlFromOrigin(origin);
|
|
393
400
|
}
|
|
394
401
|
|
|
395
|
-
return
|
|
402
|
+
return environment.mcApiUrl;
|
|
396
403
|
}
|
|
397
404
|
|
|
398
405
|
var getSessionToken = function getSessionToken() {
|
|
@@ -461,9 +468,9 @@ var setSessionState = function setSessionState(stateId, state) {
|
|
|
461
468
|
window.sessionStorage.setItem(sessionStateKey, _JSON$stringify__default["default"](state));
|
|
462
469
|
};
|
|
463
470
|
|
|
464
|
-
function ownKeys$
|
|
471
|
+
function ownKeys$5(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
465
472
|
|
|
466
|
-
function _objectSpread$
|
|
473
|
+
function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var _context3, _context4; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$5(Object(source), !0)).call(_context3, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$5(Object(source))).call(_context4, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
467
474
|
|
|
468
475
|
var identityStoreEnhancer = function identityStoreEnhancer(noop) {
|
|
469
476
|
return noop;
|
|
@@ -476,7 +483,7 @@ var mergeObjectValues = function mergeObjectValues(object) {
|
|
|
476
483
|
var _ref2 = _slicedToArray(_ref, 2),
|
|
477
484
|
value = _ref2[1];
|
|
478
485
|
|
|
479
|
-
return _objectSpread$
|
|
486
|
+
return _objectSpread$5(_objectSpread$5({}, acc), value);
|
|
480
487
|
}, {});
|
|
481
488
|
};
|
|
482
489
|
|
|
@@ -521,7 +528,7 @@ var createInternalReducer = function createInternalReducer() {
|
|
|
521
528
|
}); // NOTE: since we don't know in advance which reducers will be injected,
|
|
522
529
|
// we pass an `unknown` type to express this uncertainty and make the compiler happy.
|
|
523
530
|
|
|
524
|
-
return redux.combineReducers(_objectSpread$
|
|
531
|
+
return redux.combineReducers(_objectSpread$5(_objectSpread$5({
|
|
525
532
|
requestsInFlight: requestsInFlightReducer,
|
|
526
533
|
notifications: notifications.reducer
|
|
527
534
|
}, injectedReducers), preloadedStateReducers));
|
|
@@ -564,9 +571,9 @@ var createReduxStore = function createReduxStore() {
|
|
|
564
571
|
};
|
|
565
572
|
var internalReduxStore = createReduxStore();
|
|
566
573
|
|
|
567
|
-
function ownKeys$
|
|
574
|
+
function ownKeys$4(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
568
575
|
|
|
569
|
-
function _objectSpread$
|
|
576
|
+
function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys$4(Object(source), !0)).call(_context2, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys$4(Object(source))).call(_context3, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
570
577
|
|
|
571
578
|
var getSkipTokenRetry = function getSkipTokenRetry(context) {
|
|
572
579
|
var skipTokenRetry = Boolean(context.skipTokenRetry);
|
|
@@ -574,7 +581,7 @@ var getSkipTokenRetry = function getSkipTokenRetry(context) {
|
|
|
574
581
|
};
|
|
575
582
|
|
|
576
583
|
var forwardTokenRetryHeader = function forwardTokenRetryHeader(headers) {
|
|
577
|
-
return _objectSpread$
|
|
584
|
+
return _objectSpread$4(_objectSpread$4({}, headers), {}, _defineProperty({}, constants$1.SUPPORTED_HEADERS.X_TOKEN_RETRY, 'true'));
|
|
578
585
|
}; // This link retries requests to the CTP API that have been rejected
|
|
579
586
|
// because of an invalid/expired oauth token.
|
|
580
587
|
// To do so, we resend the request with the header "X-Force-Token: true"
|
|
@@ -665,9 +672,184 @@ var errorLink = error.onError(function (_ref) {
|
|
|
665
672
|
return;
|
|
666
673
|
});
|
|
667
674
|
|
|
675
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct__default["default"](Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
676
|
+
|
|
677
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct__default["default"]) return false; if (_Reflect$construct__default["default"].sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct__default["default"](Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
678
|
+
|
|
679
|
+
function ownKeys$3(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
680
|
+
|
|
681
|
+
function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var _context5, _context6; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context5 = ownKeys$3(Object(source), !0)).call(_context5, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context6 = ownKeys$3(Object(source))).call(_context6, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
682
|
+
var defaultUserAgent = createHttpUserAgent__default["default"]({
|
|
683
|
+
name: 'unknown-http-client',
|
|
684
|
+
libraryName: window.app.applicationName
|
|
685
|
+
});
|
|
686
|
+
var defaultForwardToVersion = 'v2';
|
|
687
|
+
var defaultForwardToAudiencePolicy = 'forward-url-full-path';
|
|
688
|
+
|
|
689
|
+
function buildApiUrl(endpoint) {
|
|
690
|
+
var _context;
|
|
691
|
+
|
|
692
|
+
var apiUrl = getMcApiUrl().replace(/\/$/, '');
|
|
693
|
+
return _concatInstanceProperty__default["default"](_context = "".concat(apiUrl)).call(_context, endpoint);
|
|
694
|
+
}
|
|
695
|
+
|
|
696
|
+
var getAppliedForwardToHeaders = function getAppliedForwardToHeaders(forwardToConfig) {
|
|
697
|
+
var _context2, _forwardToConfig$head, _forwardToConfig$vers, _forwardToConfig$audi, _objectSpread3;
|
|
698
|
+
|
|
699
|
+
if (!forwardToConfig) {
|
|
700
|
+
return {};
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
return _objectSpread$3(_objectSpread$3({}, _reduceInstanceProperty__default["default"](_context2 = _Object$entries__default["default"]((_forwardToConfig$head = forwardToConfig.headers) !== null && _forwardToConfig$head !== void 0 ? _forwardToConfig$head : {})).call(_context2, function (customForwardHeaders, _ref) {
|
|
704
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
705
|
+
headerName = _ref2[0],
|
|
706
|
+
headerValue = _ref2[1];
|
|
707
|
+
|
|
708
|
+
return _objectSpread$3(_objectSpread$3({}, customForwardHeaders), {}, _defineProperty({}, "x-forward-header-".concat(headerName), headerValue));
|
|
709
|
+
}, {})), {}, (_objectSpread3 = {}, _defineProperty(_objectSpread3, constants$1.SUPPORTED_HEADERS.ACCEPT_VERSION, (_forwardToConfig$vers = forwardToConfig.version) !== null && _forwardToConfig$vers !== void 0 ? _forwardToConfig$vers : defaultForwardToVersion), _defineProperty(_objectSpread3, constants$1.SUPPORTED_HEADERS.X_FORWARD_TO, forwardToConfig.uri), _defineProperty(_objectSpread3, constants$1.SUPPORTED_HEADERS.X_FORWARD_TO_AUDIENCE_POLICY, (_forwardToConfig$audi = forwardToConfig.audiencePolicy) !== null && _forwardToConfig$audi !== void 0 ? _forwardToConfig$audi : defaultForwardToAudiencePolicy), _objectSpread3));
|
|
710
|
+
};
|
|
711
|
+
|
|
712
|
+
function createHttpClientOptions() {
|
|
713
|
+
var _config$projectKey, _objectSpread4;
|
|
714
|
+
|
|
715
|
+
var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
716
|
+
var sessionToken = getSessionToken();
|
|
717
|
+
var projectKey = (_config$projectKey = config.projectKey) !== null && _config$projectKey !== void 0 ? _config$projectKey : selectProjectKeyFromUrl();
|
|
718
|
+
var userId = selectUserId();
|
|
719
|
+
var userAgent = (config === null || config === void 0 ? void 0 : config.userAgent) || defaultUserAgent;
|
|
720
|
+
return {
|
|
721
|
+
credentials: 'include',
|
|
722
|
+
headers: omitEmpty__default["default"](_objectSpread$3(_objectSpread$3({}, config.headers), {}, (_objectSpread4 = {}, _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.ACCEPT, 'application/json'), _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.AUTHORIZATION, sessionToken ? "Bearer ".concat(sessionToken) : undefined), _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.X_APPLICATION_ID, window.app.applicationId), _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.X_CORRELATION_ID, getCorrelationId({
|
|
723
|
+
userId: userId
|
|
724
|
+
})), _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.X_PROJECT_KEY, projectKey), _defineProperty(_objectSpread4, constants$1.SUPPORTED_HEADERS.X_USER_AGENT, userAgent), _objectSpread4), getAppliedForwardToHeaders(config.forwardToConfig)))
|
|
725
|
+
};
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
var RenewTokenError = /*#__PURE__*/function (_Error) {
|
|
729
|
+
_inherits(RenewTokenError, _Error);
|
|
730
|
+
|
|
731
|
+
var _super = _createSuper(RenewTokenError);
|
|
732
|
+
|
|
733
|
+
function RenewTokenError(message) {
|
|
734
|
+
var _this;
|
|
735
|
+
|
|
736
|
+
_classCallCheck(this, RenewTokenError);
|
|
737
|
+
|
|
738
|
+
_this = _super.call(this, message);
|
|
739
|
+
|
|
740
|
+
_Object$defineProperty__default["default"](_assertThisInitialized(_this), 'name', {
|
|
741
|
+
value: 'RenewTokenError'
|
|
742
|
+
});
|
|
743
|
+
|
|
744
|
+
return _this;
|
|
745
|
+
}
|
|
746
|
+
|
|
747
|
+
return _createClass(RenewTokenError);
|
|
748
|
+
}( /*#__PURE__*/_wrapNativeSuper(Error));
|
|
749
|
+
|
|
750
|
+
function executeHttpClientRequest(_x) {
|
|
751
|
+
return _executeHttpClientRequest.apply(this, arguments);
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
function _executeHttpClientRequest() {
|
|
755
|
+
_executeHttpClientRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee2(fetcher) {
|
|
756
|
+
var config,
|
|
757
|
+
sendRequest,
|
|
758
|
+
_sendRequest,
|
|
759
|
+
_args2 = arguments;
|
|
760
|
+
|
|
761
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee2$(_context4) {
|
|
762
|
+
while (1) {
|
|
763
|
+
switch (_context4.prev = _context4.next) {
|
|
764
|
+
case 0:
|
|
765
|
+
_sendRequest = function _sendRequest3() {
|
|
766
|
+
_sendRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee() {
|
|
767
|
+
var _ref3,
|
|
768
|
+
shouldRenewToken,
|
|
769
|
+
requestOptions,
|
|
770
|
+
response,
|
|
771
|
+
refreshedSessionToken,
|
|
772
|
+
_args = arguments;
|
|
773
|
+
|
|
774
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context3) {
|
|
775
|
+
while (1) {
|
|
776
|
+
switch (_context3.prev = _context3.next) {
|
|
777
|
+
case 0:
|
|
778
|
+
_ref3 = _args.length > 0 && _args[0] !== undefined ? _args[0] : {}, shouldRenewToken = _ref3.shouldRenewToken;
|
|
779
|
+
requestOptions = createHttpClientOptions(config);
|
|
780
|
+
_context3.next = 4;
|
|
781
|
+
return fetcher(_objectSpread$3(_objectSpread$3({}, requestOptions), {}, {
|
|
782
|
+
headers: omitEmpty__default["default"](_objectSpread$3(_objectSpread$3({}, requestOptions.headers), {}, _defineProperty({}, constants$1.SUPPORTED_HEADERS.X_TOKEN_RETRY, shouldRenewToken)))
|
|
783
|
+
}));
|
|
784
|
+
|
|
785
|
+
case 4:
|
|
786
|
+
response = _context3.sent;
|
|
787
|
+
|
|
788
|
+
if (!(response.statusCode === constants.STATUS_CODES.UNAUTHORIZED)) {
|
|
789
|
+
_context3.next = 7;
|
|
790
|
+
break;
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
throw new RenewTokenError("Unauthorized response, attempting retry.");
|
|
794
|
+
|
|
795
|
+
case 7:
|
|
796
|
+
// In case a new session token is returned from the server, save it.
|
|
797
|
+
refreshedSessionToken = response.getHeader('x-refreshed-session-token');
|
|
798
|
+
|
|
799
|
+
if (refreshedSessionToken) {
|
|
800
|
+
setActiveSession(refreshedSessionToken);
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
return _context3.abrupt("return", response.data);
|
|
804
|
+
|
|
805
|
+
case 10:
|
|
806
|
+
case "end":
|
|
807
|
+
return _context3.stop();
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
}, _callee);
|
|
811
|
+
}));
|
|
812
|
+
return _sendRequest.apply(this, arguments);
|
|
813
|
+
};
|
|
814
|
+
|
|
815
|
+
sendRequest = function _sendRequest2() {
|
|
816
|
+
return _sendRequest.apply(this, arguments);
|
|
817
|
+
};
|
|
818
|
+
|
|
819
|
+
config = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {};
|
|
820
|
+
return _context4.abrupt("return", sendRequest().catch(function (error) {
|
|
821
|
+
if (error instanceof RenewTokenError) {
|
|
822
|
+
// Retry the request and ask to renew the token.
|
|
823
|
+
return sendRequest({
|
|
824
|
+
shouldRenewToken: true
|
|
825
|
+
});
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
throw error;
|
|
829
|
+
}));
|
|
830
|
+
|
|
831
|
+
case 4:
|
|
832
|
+
case "end":
|
|
833
|
+
return _context4.stop();
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
}, _callee2);
|
|
837
|
+
}));
|
|
838
|
+
return _executeHttpClientRequest.apply(this, arguments);
|
|
839
|
+
}
|
|
840
|
+
|
|
668
841
|
function ownKeys$2(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
669
842
|
|
|
670
|
-
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var
|
|
843
|
+
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys$2(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys$2(Object(source))).call(_context5, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
844
|
+
var userAgent = createHttpUserAgent__default["default"]({
|
|
845
|
+
name: 'apollo-client',
|
|
846
|
+
// version: apolloVersion,
|
|
847
|
+
libraryName: [window.app.applicationName, 'application-shell'].join('/'),
|
|
848
|
+
libraryVersion: version,
|
|
849
|
+
contactUrl: 'https://git.io/fjuyC',
|
|
850
|
+
// points to the appkit repo issues
|
|
851
|
+
contactEmail: 'support@commercetools.com'
|
|
852
|
+
});
|
|
671
853
|
|
|
672
854
|
var isKnownGraphQlTarget = function isKnownGraphQlTarget(target) {
|
|
673
855
|
var _context;
|
|
@@ -675,35 +857,43 @@ var isKnownGraphQlTarget = function isKnownGraphQlTarget(target) {
|
|
|
675
857
|
return target ? _includesInstanceProperty__default["default"](_context = _Object$values__default["default"](constants.GRAPHQL_TARGETS)).call(_context, target) : false;
|
|
676
858
|
};
|
|
677
859
|
|
|
678
|
-
var
|
|
679
|
-
|
|
680
|
-
var _context2, _apolloContext$forwar, _objectSpread3;
|
|
860
|
+
var extractSessionTokenFromResponse = function extractSessionTokenFromResponse(context) {
|
|
861
|
+
var _context$response, _context$response$hea, _context$restResponse;
|
|
681
862
|
|
|
682
|
-
|
|
683
|
-
var _ref2 = _slicedToArray(_ref, 2),
|
|
684
|
-
headerName = _ref2[0],
|
|
685
|
-
headerValue = _ref2[1];
|
|
863
|
+
var refreshedSessionToken = (_context$response = context.response) === null || _context$response === void 0 ? void 0 : (_context$response$hea = _context$response.headers) === null || _context$response$hea === void 0 ? void 0 : _context$response$hea.get('x-refreshed-session-token');
|
|
686
864
|
|
|
687
|
-
|
|
688
|
-
|
|
865
|
+
if (refreshedSessionToken) {
|
|
866
|
+
return refreshedSessionToken !== null && refreshedSessionToken !== void 0 ? refreshedSessionToken : null;
|
|
689
867
|
}
|
|
690
868
|
|
|
691
|
-
|
|
869
|
+
var restResponseWithRefreshTokenHeader = (_context$restResponse = context.restResponses) === null || _context$restResponse === void 0 ? void 0 : _findInstanceProperty__default["default"](_context$restResponse).call(_context$restResponse, function (response) {
|
|
870
|
+
var _response$headers;
|
|
871
|
+
|
|
872
|
+
return (_response$headers = response.headers) === null || _response$headers === void 0 ? void 0 : _response$headers.has('x-refreshed-session-token');
|
|
873
|
+
});
|
|
874
|
+
|
|
875
|
+
if (restResponseWithRefreshTokenHeader) {
|
|
876
|
+
var _restResponseWithRefr;
|
|
877
|
+
|
|
878
|
+
return (_restResponseWithRefr = restResponseWithRefreshTokenHeader.headers.get('x-refreshed-session-token')) !== null && _restResponseWithRefr !== void 0 ? _restResponseWithRefr : null;
|
|
879
|
+
}
|
|
880
|
+
|
|
881
|
+
return null;
|
|
692
882
|
};
|
|
693
883
|
/* eslint-disable import/prefer-default-export */
|
|
694
884
|
// Use a middleware to update the request headers with the correct params.
|
|
695
885
|
|
|
696
886
|
|
|
697
887
|
var headerLink = new client.ApolloLink(function (operation, forward) {
|
|
698
|
-
var
|
|
888
|
+
var _context2, _objectSpread2, _context3;
|
|
699
889
|
|
|
700
890
|
var apolloContext = operation.getContext();
|
|
701
891
|
var variables = operation.variables;
|
|
702
892
|
var graphQlTarget = apolloContext.target || variables.target;
|
|
703
|
-
if (!apolloContext.skipGraphQlTargetCheck && !isKnownGraphQlTarget(graphQlTarget)) throw new Error(_concatInstanceProperty__default["default"](
|
|
893
|
+
if (!apolloContext.skipGraphQlTargetCheck && !isKnownGraphQlTarget(graphQlTarget)) throw new Error(_concatInstanceProperty__default["default"](_context2 = "GraphQL target \"".concat(graphQlTarget, "\" is missing (or is not supported) in operation \"")).call(_context2, operation.operationName, "\""));
|
|
704
894
|
/**
|
|
705
895
|
* NOTE:
|
|
706
|
-
* The project key is read from the url in a project related
|
|
896
|
+
* The project key is read from the url in a project related application context.
|
|
707
897
|
* This holds for most applications like `application-categories`, `application-discounts` etc.
|
|
708
898
|
* However, the `application-account` does not run with the project key being part of the url.
|
|
709
899
|
* As a result we allow passing the project key as a variable on the operation allowing
|
|
@@ -712,20 +902,16 @@ var headerLink = new client.ApolloLink(function (operation, forward) {
|
|
|
712
902
|
|
|
713
903
|
var projectKey = apolloContext.projectKey || variables.projectKey || selectProjectKeyFromUrl();
|
|
714
904
|
var teamId = apolloContext.teamId || variables.teamId || selectTeamIdFromLocalStorage();
|
|
715
|
-
var userId = selectUserId();
|
|
716
905
|
var featureFlag = apolloContext.featureFlag || variables.featureFlag;
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
return _mapInstanceProperty__default["default"](_context4 = forward(operation)).call(_context4, function (response) {
|
|
725
|
-
var _context$response, _context$response$hea;
|
|
726
|
-
|
|
906
|
+
operation.setContext(createHttpClientOptions({
|
|
907
|
+
userAgent: userAgent,
|
|
908
|
+
headers: omitEmpty__default["default"](_objectSpread$2(_objectSpread$2({}, apolloContext.headers), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, constants$1.SUPPORTED_HEADERS.X_GRAPHQL_TARGET, graphQlTarget), _defineProperty(_objectSpread2, constants$1.SUPPORTED_HEADERS.X_GRAPHQL_OPERATION_NAME, operation.operationName), _defineProperty(_objectSpread2, constants$1.SUPPORTED_HEADERS.X_TEAM_ID, teamId), _defineProperty(_objectSpread2, constants$1.SUPPORTED_HEADERS.X_FEATURE_FLAG, featureFlag), _objectSpread2))),
|
|
909
|
+
forwardToConfig: apolloContext.forwardToConfig,
|
|
910
|
+
projectKey: projectKey
|
|
911
|
+
}));
|
|
912
|
+
return _mapInstanceProperty__default["default"](_context3 = forward(operation)).call(_context3, function (response) {
|
|
727
913
|
var context = operation.getContext();
|
|
728
|
-
var refreshedSessionToken = (
|
|
914
|
+
var refreshedSessionToken = extractSessionTokenFromResponse(context);
|
|
729
915
|
|
|
730
916
|
if (refreshedSessionToken) {
|
|
731
917
|
setActiveSession(refreshedSessionToken);
|
|
@@ -753,37 +939,34 @@ var tokenRetryLink = new retry.RetryLink({
|
|
|
753
939
|
}
|
|
754
940
|
});
|
|
755
941
|
|
|
756
|
-
var _context;
|
|
757
|
-
|
|
758
942
|
function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
759
943
|
|
|
760
944
|
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys$1(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys$1(Object(source))).call(_context5, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
761
|
-
var userAgent = createHttpUserAgent__default["default"]({
|
|
762
|
-
name: 'apollo-client',
|
|
763
|
-
// version: apolloVersion,
|
|
764
|
-
libraryName: [window.app.applicationName, 'application-shell'].join('/'),
|
|
765
|
-
libraryVersion: version,
|
|
766
|
-
contactUrl: 'https://git.io/fjuyC',
|
|
767
|
-
// points to the appkit repo issues
|
|
768
|
-
contactEmail: 'support@commercetools.com'
|
|
769
|
-
});
|
|
770
945
|
var httpLink = client.createHttpLink({
|
|
771
946
|
uri: "".concat(getMcApiUrl(), "/graphql"),
|
|
772
|
-
headers: {
|
|
773
|
-
accept: 'application/json',
|
|
774
|
-
'x-user-agent': userAgent
|
|
775
|
-
},
|
|
776
947
|
fetch: fetch
|
|
777
|
-
});
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
948
|
+
});
|
|
949
|
+
|
|
950
|
+
var createApolloLink = function createApolloLink() {
|
|
951
|
+
var _context;
|
|
781
952
|
|
|
782
|
-
var
|
|
953
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
954
|
+
return (// The order of links is IMPORTANT!
|
|
955
|
+
// In the request-phase they are executed top to bottom.
|
|
956
|
+
// In the response/phase they are executed bottom to top.
|
|
957
|
+
// The `httpLink` is terminating so it must be last, while `tokenRetryLink` and `errorLink`
|
|
958
|
+
// wrap the links the their right.
|
|
959
|
+
client.from(_concatInstanceProperty__default["default"](_context = [headerLink]).call(_context, _toConsumableArray(options.restLink ? [options.restLink] : []), [// Must be before `tokenRetryLink`.
|
|
960
|
+
errorLink], _toConsumableArray(isLoggerEnabled() ? [loggerLink__default["default"]] : []), [// Must be after `errorLink`.
|
|
961
|
+
tokenRetryLink, // Must be last.
|
|
962
|
+
httpLink]))
|
|
963
|
+
);
|
|
964
|
+
}; // This custom merge function allows to merge two arrays of objects.
|
|
783
965
|
// The incoming list is what we need to update to, but we still need
|
|
784
966
|
// to ensure that existing cache elements are not removed but updated.
|
|
785
967
|
// This is usually the case when elements get removed.
|
|
786
968
|
|
|
969
|
+
|
|
787
970
|
var mergeArraysObjects = function mergeArraysObjects() {
|
|
788
971
|
var existing = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
789
972
|
var incoming = arguments.length > 1 ? arguments[1] : undefined;
|
|
@@ -818,7 +1001,7 @@ var createApolloClient = function createApolloClient() {
|
|
|
818
1001
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
819
1002
|
var customCacheConfig = (_options$cache = options === null || options === void 0 ? void 0 : options.cache) !== null && _options$cache !== void 0 ? _options$cache : {};
|
|
820
1003
|
return new client.ApolloClient({
|
|
821
|
-
link:
|
|
1004
|
+
link: createApolloLink(options),
|
|
822
1005
|
// https://www.apollographql.com/docs/react/caching/cache-configuration/
|
|
823
1006
|
cache: new client.InMemoryCache(_objectSpread$1(_objectSpread$1({}, customCacheConfig), {}, {
|
|
824
1007
|
// https://www.apollographql.com/docs/react/caching/cache-configuration/#generating-unique-identifiers
|
|
@@ -991,9 +1174,12 @@ exports.REQUESTS_IN_FLIGHT_LOADER_DOM_ID = REQUESTS_IN_FLIGHT_LOADER_DOM_ID;
|
|
|
991
1174
|
exports.RequestsInFlightLoader = RequestsInFlightLoader;
|
|
992
1175
|
exports.RouteCatchAll = RouteCatchAll;
|
|
993
1176
|
exports.applyDefaultMiddlewares = applyDefaultMiddlewares;
|
|
1177
|
+
exports.buildApiUrl = buildApiUrl;
|
|
994
1178
|
exports.clearSession = clearSession;
|
|
995
1179
|
exports.createApolloClient = createApolloClient;
|
|
1180
|
+
exports.createHttpClientOptions = createHttpClientOptions;
|
|
996
1181
|
exports.createReduxStore = createReduxStore;
|
|
1182
|
+
exports.executeHttpClientRequest = executeHttpClientRequest;
|
|
997
1183
|
exports.getActiveProjectKey = getActiveProjectKey;
|
|
998
1184
|
exports.getMcApiUrl = getMcApiUrl;
|
|
999
1185
|
exports.getSessionScope = getSessionScope;
|