@commercetools-frontend/application-shell 20.12.2 → 21.0.0-rc.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.
Files changed (59) hide show
  1. package/dist/{application-entry-point-cde26c8c.cjs.dev.js → application-entry-point-a804b3d4.cjs.dev.js} +36 -84
  2. package/dist/{application-entry-point-961cacf8.cjs.prod.js → application-entry-point-b627328b.cjs.prod.js} +36 -84
  3. package/dist/{application-entry-point-cfaa3874.esm.js → application-entry-point-c737344a.esm.js} +15 -58
  4. package/dist/commercetools-frontend-application-shell.cjs.dev.js +9 -3
  5. package/dist/commercetools-frontend-application-shell.cjs.prod.js +9 -3
  6. package/dist/commercetools-frontend-application-shell.esm.js +7 -3
  7. package/dist/constants-33a16227.esm.js +46 -0
  8. package/dist/constants-745aeeca.cjs.prod.js +54 -0
  9. package/dist/constants-fdbe0e9d.cjs.dev.js +54 -0
  10. package/dist/declarations/src/components/app-bar/app-bar.d.ts +0 -2
  11. package/dist/declarations/src/components/application-shell/application-shell.d.ts +0 -3
  12. package/dist/declarations/src/components/locale-switcher/locale-switcher.d.ts +3 -4
  13. package/dist/declarations/src/components/navbar/compiled/navbar.css.json.d.ts +1 -1
  14. package/dist/declarations/src/components/navbar/navbar.d.ts +0 -2
  15. package/dist/declarations/src/components/navbar/use-navbar-state-manager.d.ts +0 -2
  16. package/dist/declarations/src/components/user-settings-menu/user-settings-menu.d.ts +1 -4
  17. package/dist/declarations/src/hooks/use-applications-menu/use-applications-menu.d.ts +2 -3
  18. package/dist/declarations/src/index.d.ts +1 -1
  19. package/dist/declarations/src/ssr/index.d.ts +2 -0
  20. package/dist/declarations/src/test-utils/test-utils.d.ts +20 -5
  21. package/dist/declarations/src/utils/formatters.d.ts +8 -0
  22. package/dist/declarations/src/utils/index.d.ts +1 -0
  23. package/dist/declarations/src/{components/authenticated/helpers.d.ts → utils/oidc.d.ts} +0 -0
  24. package/dist/index-603b598e.cjs.dev.js +4588 -0
  25. package/dist/{index-e8564a47.cjs.prod.js → index-64ee0fb3.cjs.prod.js} +139 -250
  26. package/dist/index-9e98c47d.esm.js +4515 -0
  27. package/dist/oidc-7e7761de.cjs.dev.js +94 -0
  28. package/dist/oidc-8e05c00e.esm.js +84 -0
  29. package/dist/oidc-be09bd90.cjs.prod.js +94 -0
  30. package/dist/{project-expired-68ca2579.esm.js → project-expired-374d89b7.esm.js} +10 -6
  31. package/dist/{project-expired-e16b9b05.cjs.prod.js → project-expired-40e3fc90.cjs.prod.js} +10 -6
  32. package/dist/{project-expired-dcb82d36.cjs.dev.js → project-expired-69a9f8bb.cjs.dev.js} +10 -6
  33. package/dist/{project-not-found-26f56aed.cjs.dev.js → project-not-found-1456109d.cjs.prod.js} +10 -6
  34. package/dist/{project-not-found-d5f8ebbb.esm.js → project-not-found-516009ae.esm.js} +10 -6
  35. package/dist/{project-not-found-c7b32516.cjs.prod.js → project-not-found-883f0dc8.cjs.dev.js} +10 -6
  36. package/dist/{project-not-initialized-ea0be167.cjs.prod.js → project-not-initialized-5ca81ae8.cjs.prod.js} +10 -6
  37. package/dist/{project-not-initialized-9bc69b1f.cjs.dev.js → project-not-initialized-a5df8c78.cjs.dev.js} +10 -6
  38. package/dist/{project-not-initialized-473a61e8.esm.js → project-not-initialized-b9ae0d13.esm.js} +10 -6
  39. package/dist/{project-suspended-b46cf02d.cjs.dev.js → project-suspended-40039731.cjs.dev.js} +10 -6
  40. package/dist/{project-suspended-c2fca68f.cjs.prod.js → project-suspended-8ed251b2.cjs.prod.js} +10 -6
  41. package/dist/{project-suspended-8f98e2d7.esm.js → project-suspended-fc33a971.esm.js} +10 -6
  42. package/dist/{quick-access-f735e1dd.esm.js → quick-access-62077068.esm.js} +8 -4
  43. package/dist/{quick-access-b2bb3019.cjs.dev.js → quick-access-c5fdf402.cjs.dev.js} +8 -4
  44. package/dist/{quick-access-89a8fc45.cjs.prod.js → quick-access-e436397a.cjs.prod.js} +8 -4
  45. package/dist/{service-page-project-switcher-5ff429b8.cjs.dev.js → service-page-project-switcher-02903d80.cjs.dev.js} +1 -1
  46. package/dist/{service-page-project-switcher-272fcaa0.esm.js → service-page-project-switcher-1ebc3f88.esm.js} +1 -1
  47. package/dist/{service-page-project-switcher-23ea0c1e.cjs.prod.js → service-page-project-switcher-83de4c79.cjs.prod.js} +1 -1
  48. package/package.json +57 -51
  49. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.d.ts +1 -0
  50. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +16 -0
  51. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.js +7 -0
  52. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +16 -0
  53. package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +6 -0
  54. package/ssr/package.json +4 -0
  55. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +40 -48
  56. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +39 -47
  57. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +37 -49
  58. package/dist/index-0b3f8556.esm.js +0 -4632
  59. package/dist/index-e45779cf.cjs.dev.js +0 -4705
@@ -35,7 +35,7 @@ var applicationShellConnectors = require('@commercetools-frontend/application-sh
35
35
  var reactNotifications = require('@commercetools-frontend/react-notifications');
36
36
  var constants = require('@commercetools-frontend/constants');
37
37
  var testUtils = require('@commercetools-frontend/sdk/test-utils');
38
- var applicationEntryPoint = require('../../dist/application-entry-point-961cacf8.cjs.prod.js');
38
+ var applicationEntryPoint = require('../../dist/application-entry-point-b627328b.cjs.prod.js');
39
39
  var jsxRuntime = require('@emotion/react/jsx-runtime');
40
40
  require('@babel/runtime-corejs3/helpers/slicedToArray');
41
41
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
@@ -46,6 +46,7 @@ require('redux-thunk');
46
46
  require('omit-empty-es');
47
47
  require('@commercetools-frontend/notifications');
48
48
  require('@commercetools-frontend/sdk');
49
+ require('../../dist/constants-745aeeca.cjs.prod.js');
49
50
  require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
50
51
  require('@babel/runtime-corejs3/core-js-stable/instance/includes');
51
52
  require('redux-logger');
@@ -55,6 +56,7 @@ require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
55
56
  require('@babel/runtime-corejs3/core-js-stable/instance/slice');
56
57
  require('@commercetools-frontend/sentry');
57
58
  require('@babel/runtime-corejs3/core-js-stable/url');
59
+ require('lodash/upperFirst');
58
60
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
59
61
  require('@apollo/client');
60
62
  require('@commercetools/http-user-agent');
@@ -111,9 +113,9 @@ var rtlHooks__namespace = /*#__PURE__*/_interopNamespace(rtlHooks);
111
113
  var _excluded = ["children"],
112
114
  _excluded2 = ["children"];
113
115
 
114
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); if (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; }
116
+ function ownKeys(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; }
115
117
 
116
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context14; _forEachInstanceProperty__default["default"](_context14 = ownKeys(Object(source), true)).call(_context14, function (key) { _defineProperty(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors__default["default"]) { _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)); } else { var _context15; _forEachInstanceProperty__default["default"](_context15 = ownKeys(Object(source))).call(_context15, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } } return target; }
118
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context15, _context16; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context15 = ownKeys(Object(source), !0)).call(_context15, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context16 = ownKeys(Object(source))).call(_context16, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
117
119
  var defaultProject = {
118
120
  key: 'test-with-big-data',
119
121
  version: 43,
@@ -142,12 +144,7 @@ var defaultProject = {
142
144
  allAppliedActionRights: [],
143
145
  allAppliedDataFences: [],
144
146
  allAppliedMenuVisibilities: []
145
- },
146
-
147
- /**
148
- * @deprecated: Use `{ allPermissionsForAllApplications: { allAppliedMenuVisibilities: [] } }`
149
- */
150
- allAppliedMenuVisibilities: []
147
+ }
151
148
  };
152
149
  var defaultUser = {
153
150
  id: 'user-id-1',
@@ -172,6 +169,7 @@ var defaultUser = {
172
169
  };
173
170
  var defaultEnvironment = {
174
171
  applicationName: 'my-app',
172
+ entryPointUriPath: 'random-entry-point',
175
173
  frontendHost: 'localhost:3001',
176
174
  mcApiUrl: 'https://mc-api.europe-west1.gcp.commercetools.com',
177
175
  location: 'eu',
@@ -262,6 +260,15 @@ var denormalizeDataFences = function denormalizeDataFences(dataFences) {
262
260
  }, []);
263
261
  };
264
262
 
263
+ var mapResourceAccessToAppliedPermissions = function mapResourceAccessToAppliedPermissions(resourceAccesses) {
264
+ return _mapInstanceProperty__default["default"](resourceAccesses).call(resourceAccesses, function (resourceAccess) {
265
+ return {
266
+ name: "can".concat(resourceAccess),
267
+ value: true
268
+ };
269
+ });
270
+ };
271
+
265
272
  var wrapIfNeeded = function wrapIfNeeded(children, wrapper) {
266
273
  return wrapper ? /*#__PURE__*/react.createElement(wrapper, null, children) : children;
267
274
  };
@@ -271,7 +278,7 @@ var ApolloProviderWrapper = function ApolloProviderWrapper(props) {
271
278
 
272
279
  var apolloClient = (_props$apolloClient = props.apolloClient) !== null && _props$apolloClient !== void 0 ? _props$apolloClient : applicationEntryPoint.createApolloClient();
273
280
 
274
- if (props.disableApolloMocks) {
281
+ if (!props.enableApolloMocks) {
275
282
  return (// eslint-disable-next-line testing-library/no-node-access
276
283
  jsxRuntime.jsx(react$1.ApolloProvider, {
277
284
  client: apolloClient,
@@ -310,61 +317,42 @@ function createApplicationProviders() {
310
317
  _ref$mocks = _ref.mocks,
311
318
  mocks = _ref$mocks === void 0 ? [] : _ref$mocks,
312
319
  apolloClient = _ref.apolloClient,
313
- _ref$disableApolloMoc = _ref.disableApolloMocks,
314
- disableApolloMocks = _ref$disableApolloMoc === void 0 ? false : _ref$disableApolloMoc,
315
- _ref$route = _ref.route,
316
- route = _ref$route === void 0 ? '/' : _ref$route,
320
+ _ref$enableApolloMock = _ref.enableApolloMocks,
321
+ enableApolloMocks = _ref$enableApolloMock === void 0 ? false : _ref$enableApolloMock,
322
+ route = _ref.route,
317
323
  _ref$disableAutomatic = _ref.disableAutomaticEntryPointRoutes,
318
- disableAutomaticEntryPointRoutes = _ref$disableAutomatic === void 0 ? true : _ref$disableAutomatic,
319
- _ref$history = _ref.history,
320
- history$2 = _ref$history === void 0 ? history.createEnhancedHistory(history$1.createMemoryHistory({
321
- initialEntries: [route]
322
- })) : _ref$history,
324
+ disableAutomaticEntryPointRoutes = _ref$disableAutomatic === void 0 ? false : _ref$disableAutomatic,
325
+ history$2 = _ref.history,
323
326
  _ref$flags = _flagsInstanceProperty__default["default"](_ref),
324
327
  flags = _ref$flags === void 0 ? {} : _ref$flags,
325
328
  environment = _ref.environment,
326
329
  user = _ref.user,
327
330
  project = _ref.project,
328
- permissions = _ref.permissions,
329
- actionRights = _ref.actionRights,
330
- dataFences = _ref.dataFences,
331
331
  _ref$dataLocale = _ref.dataLocale,
332
332
  dataLocale = _ref$dataLocale === void 0 ? 'en' : _ref$dataLocale;
333
333
 
334
334
  var mergedUser = user === null ? undefined : _objectSpread(_objectSpread({}, defaultUser), user);
335
+ var mergedProject = project === null ? undefined : _objectSpread(_objectSpread({}, defaultProject), project);
335
336
 
336
- var mergedProject = function () {
337
- if (project === null) {
338
- return undefined;
339
- }
337
+ var mergedEnvironment = _objectSpread(_objectSpread({}, defaultEnvironment), environment);
340
338
 
341
- var allAppliedPermissions = denormalizePermissions(permissions);
342
- var allAppliedActionRights = denormalizeActionRights(actionRights);
343
- var allAppliedDataFences = denormalizeDataFences(dataFences);
344
- return _objectSpread(_objectSpread(_objectSpread({}, defaultProject), project), {}, {
345
- allAppliedPermissions: allAppliedPermissions,
346
- allAppliedActionRights: allAppliedActionRights,
347
- allAppliedDataFences: allAppliedDataFences,
348
- allPermissionsForAllApplications: {
349
- allAppliedPermissions: allAppliedPermissions,
350
- allAppliedActionRights: allAppliedActionRights,
351
- allAppliedDataFences: allAppliedDataFences,
352
- allAppliedMenuVisibilities: []
353
- }
354
- });
355
- }();
339
+ var initialRoute = route;
356
340
 
357
- var mergedEnvironment = _objectSpread(_objectSpread({}, defaultEnvironment), environment);
341
+ if (!route && mergedProject) {
342
+ var _context14;
358
343
 
359
- if (!disableAutomaticEntryPointRoutes) {
360
- !Boolean(environment === null || environment === void 0 ? void 0 : environment.entryPointUriPath) ? invariant__default["default"](false) : void 0;
344
+ initialRoute = _concatInstanceProperty__default["default"](_context14 = "/".concat(mergedProject.key, "/")).call(_context14, mergedEnvironment.entryPointUriPath);
361
345
  }
362
346
 
347
+ var memoryHistory = history$2 !== null && history$2 !== void 0 ? history$2 : history.createEnhancedHistory(history$1.createMemoryHistory({
348
+ initialEntries: [initialRoute || '/']
349
+ }));
350
+
363
351
  var ApplicationProviders = function ApplicationProviders(props) {
364
352
  return jsxRuntime.jsx(reactIntl.IntlProvider, {
365
353
  locale: locale,
366
354
  children: jsxRuntime.jsx(ApolloProviderWrapper, {
367
- disableApolloMocks: disableApolloMocks,
355
+ enableApolloMocks: enableApolloMocks,
368
356
  apolloClient: apolloClient,
369
357
  mocks: mocks,
370
358
  children: jsxRuntime.jsx(reactBroadcast.TestProviderFlopFlip, {
@@ -375,7 +363,7 @@ function createApplicationProviders() {
375
363
  environment: mergedEnvironment,
376
364
  projectDataLocale: dataLocale,
377
365
  children: jsxRuntime.jsx(reactRouterDom.Router, {
378
- history: history$2,
366
+ history: memoryHistory,
379
367
  children: jsxRuntime.jsx(react.Suspense, {
380
368
  fallback: jsxRuntime.jsx(LoadingFallback, {}),
381
369
  children: jsxRuntime.jsx(applicationEntryPoint.ApplicationEntryPoint, {
@@ -403,7 +391,7 @@ function createApplicationProviders() {
403
391
  mergedUser: mergedUser,
404
392
  mergedProject: mergedProject,
405
393
  mergedEnvironment: mergedEnvironment,
406
- history: history$2
394
+ history: memoryHistory
407
395
  };
408
396
  } // Inspired by
409
397
  // https://github.com/kentcdodds/react-testing-library-course/blob/2a5b1560656790bb1d9c055fba3845780b2c2c97/src/__tests__/react-router-03.js
@@ -571,7 +559,11 @@ var hooks = _objectSpread(_objectSpread({}, rtlHooks__namespace), {}, {
571
559
  renderHook: renderHook
572
560
  });
573
561
 
562
+ exports.denormalizeActionRights = denormalizeActionRights;
563
+ exports.denormalizeDataFences = denormalizeDataFences;
564
+ exports.denormalizePermissions = denormalizePermissions;
574
565
  exports.hooks = hooks;
566
+ exports.mapResourceAccessToAppliedPermissions = mapResourceAccessToAppliedPermissions;
575
567
  exports.renderApp = renderApp;
576
568
  exports.renderAppWithRedux = renderAppWithRedux;
577
569
  Object.keys(rtl).forEach(function (k) {
@@ -32,7 +32,7 @@ import { ApplicationContextProvider } from '@commercetools-frontend/application-
32
32
  import { NotificationProviderForCustomComponent, NotificationsList } from '@commercetools-frontend/react-notifications';
33
33
  import { DOMAINS } from '@commercetools-frontend/constants';
34
34
  import { createTestMiddleware } from '@commercetools-frontend/sdk/test-utils';
35
- import { A as ApplicationEntryPoint, y as createReduxStore, f as createApolloClient } from '../../dist/application-entry-point-cfaa3874.esm.js';
35
+ import { A as ApplicationEntryPoint, w as createReduxStore, f as createApolloClient } from '../../dist/application-entry-point-c737344a.esm.js';
36
36
  import { jsx, Fragment, jsxs } from '@emotion/react/jsx-runtime';
37
37
  import '@babel/runtime-corejs3/helpers/slicedToArray';
38
38
  import '@babel/runtime-corejs3/core-js-stable/object/entries';
@@ -43,6 +43,7 @@ import 'redux-thunk';
43
43
  import 'omit-empty-es';
44
44
  import '@commercetools-frontend/notifications';
45
45
  import '@commercetools-frontend/sdk';
46
+ import '../../dist/constants-33a16227.esm.js';
46
47
  import '@babel/runtime-corejs3/core-js-stable/instance/starts-with';
47
48
  import '@babel/runtime-corejs3/core-js-stable/instance/includes';
48
49
  import 'redux-logger';
@@ -52,6 +53,7 @@ import '@babel/runtime-corejs3/core-js-stable/instance/index-of';
52
53
  import '@babel/runtime-corejs3/core-js-stable/instance/slice';
53
54
  import '@commercetools-frontend/sentry';
54
55
  import '@babel/runtime-corejs3/core-js-stable/url';
56
+ import 'lodash/upperFirst';
55
57
  import '@babel/runtime-corejs3/core-js-stable/instance/find';
56
58
  import '@apollo/client';
57
59
  import '@commercetools/http-user-agent';
@@ -71,9 +73,9 @@ import '@commercetools-frontend/application-components';
71
73
  var _excluded = ["children"],
72
74
  _excluded2 = ["children"];
73
75
 
74
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
76
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
75
77
 
76
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context14; _forEachInstanceProperty(_context14 = ownKeys(Object(source), true)).call(_context14, function (key) { _defineProperty(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { var _context15; _forEachInstanceProperty(_context15 = ownKeys(Object(source))).call(_context15, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
78
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context15, _context16; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context15 = ownKeys(Object(source), !0)).call(_context15, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context16 = ownKeys(Object(source))).call(_context16, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
77
79
  var defaultProject = {
78
80
  key: 'test-with-big-data',
79
81
  version: 43,
@@ -102,12 +104,7 @@ var defaultProject = {
102
104
  allAppliedActionRights: [],
103
105
  allAppliedDataFences: [],
104
106
  allAppliedMenuVisibilities: []
105
- },
106
-
107
- /**
108
- * @deprecated: Use `{ allPermissionsForAllApplications: { allAppliedMenuVisibilities: [] } }`
109
- */
110
- allAppliedMenuVisibilities: []
107
+ }
111
108
  };
112
109
  var defaultUser = {
113
110
  id: 'user-id-1',
@@ -132,6 +129,7 @@ var defaultUser = {
132
129
  };
133
130
  var defaultEnvironment = {
134
131
  applicationName: 'my-app',
132
+ entryPointUriPath: 'random-entry-point',
135
133
  frontendHost: 'localhost:3001',
136
134
  mcApiUrl: 'https://mc-api.europe-west1.gcp.commercetools.com',
137
135
  location: 'eu',
@@ -222,6 +220,15 @@ var denormalizeDataFences = function denormalizeDataFences(dataFences) {
222
220
  }, []);
223
221
  };
224
222
 
223
+ var mapResourceAccessToAppliedPermissions = function mapResourceAccessToAppliedPermissions(resourceAccesses) {
224
+ return _mapInstanceProperty(resourceAccesses).call(resourceAccesses, function (resourceAccess) {
225
+ return {
226
+ name: "can".concat(resourceAccess),
227
+ value: true
228
+ };
229
+ });
230
+ };
231
+
225
232
  var wrapIfNeeded = function wrapIfNeeded(children, wrapper) {
226
233
  return wrapper ? /*#__PURE__*/createElement(wrapper, null, children) : children;
227
234
  };
@@ -231,7 +238,7 @@ var ApolloProviderWrapper = function ApolloProviderWrapper(props) {
231
238
 
232
239
  var apolloClient = (_props$apolloClient = props.apolloClient) !== null && _props$apolloClient !== void 0 ? _props$apolloClient : createApolloClient();
233
240
 
234
- if (props.disableApolloMocks) {
241
+ if (!props.enableApolloMocks) {
235
242
  return (// eslint-disable-next-line testing-library/no-node-access
236
243
  jsx(ApolloProvider, {
237
244
  client: apolloClient,
@@ -264,7 +271,7 @@ var ApolloProviderWrapper = function ApolloProviderWrapper(props) {
264
271
  ApolloProviderWrapper.propTypes = process.env.NODE_ENV !== "production" ? {
265
272
  apolloClient: _pt.any,
266
273
  mocks: _pt.any.isRequired,
267
- disableApolloMocks: _pt.bool.isRequired,
274
+ enableApolloMocks: _pt.bool.isRequired,
268
275
  children: _pt.element.isRequired
269
276
  } : {};
270
277
 
@@ -275,61 +282,42 @@ function createApplicationProviders() {
275
282
  _ref$mocks = _ref.mocks,
276
283
  mocks = _ref$mocks === void 0 ? [] : _ref$mocks,
277
284
  apolloClient = _ref.apolloClient,
278
- _ref$disableApolloMoc = _ref.disableApolloMocks,
279
- disableApolloMocks = _ref$disableApolloMoc === void 0 ? false : _ref$disableApolloMoc,
280
- _ref$route = _ref.route,
281
- route = _ref$route === void 0 ? '/' : _ref$route,
285
+ _ref$enableApolloMock = _ref.enableApolloMocks,
286
+ enableApolloMocks = _ref$enableApolloMock === void 0 ? false : _ref$enableApolloMock,
287
+ route = _ref.route,
282
288
  _ref$disableAutomatic = _ref.disableAutomaticEntryPointRoutes,
283
- disableAutomaticEntryPointRoutes = _ref$disableAutomatic === void 0 ? true : _ref$disableAutomatic,
284
- _ref$history = _ref.history,
285
- history = _ref$history === void 0 ? createEnhancedHistory(createMemoryHistory({
286
- initialEntries: [route]
287
- })) : _ref$history,
289
+ disableAutomaticEntryPointRoutes = _ref$disableAutomatic === void 0 ? false : _ref$disableAutomatic,
290
+ history = _ref.history,
288
291
  _ref$flags = _flagsInstanceProperty(_ref),
289
292
  flags = _ref$flags === void 0 ? {} : _ref$flags,
290
293
  environment = _ref.environment,
291
294
  user = _ref.user,
292
295
  project = _ref.project,
293
- permissions = _ref.permissions,
294
- actionRights = _ref.actionRights,
295
- dataFences = _ref.dataFences,
296
296
  _ref$dataLocale = _ref.dataLocale,
297
297
  dataLocale = _ref$dataLocale === void 0 ? 'en' : _ref$dataLocale;
298
298
 
299
299
  var mergedUser = user === null ? undefined : _objectSpread(_objectSpread({}, defaultUser), user);
300
+ var mergedProject = project === null ? undefined : _objectSpread(_objectSpread({}, defaultProject), project);
300
301
 
301
- var mergedProject = function () {
302
- if (project === null) {
303
- return undefined;
304
- }
302
+ var mergedEnvironment = _objectSpread(_objectSpread({}, defaultEnvironment), environment);
305
303
 
306
- var allAppliedPermissions = denormalizePermissions(permissions);
307
- var allAppliedActionRights = denormalizeActionRights(actionRights);
308
- var allAppliedDataFences = denormalizeDataFences(dataFences);
309
- return _objectSpread(_objectSpread(_objectSpread({}, defaultProject), project), {}, {
310
- allAppliedPermissions: allAppliedPermissions,
311
- allAppliedActionRights: allAppliedActionRights,
312
- allAppliedDataFences: allAppliedDataFences,
313
- allPermissionsForAllApplications: {
314
- allAppliedPermissions: allAppliedPermissions,
315
- allAppliedActionRights: allAppliedActionRights,
316
- allAppliedDataFences: allAppliedDataFences,
317
- allAppliedMenuVisibilities: []
318
- }
319
- });
320
- }();
304
+ var initialRoute = route;
321
305
 
322
- var mergedEnvironment = _objectSpread(_objectSpread({}, defaultEnvironment), environment);
306
+ if (!route && mergedProject) {
307
+ var _context14;
323
308
 
324
- if (!disableAutomaticEntryPointRoutes) {
325
- !Boolean(environment === null || environment === void 0 ? void 0 : environment.entryPointUriPath) ? process.env.NODE_ENV !== "production" ? invariant(false, '@commercetools-frontend/application-shell/test-utils: When the option "disableAutomaticEntryPointRoutes" is set to "false", you also need to provide the "environment.entryPointUriPath" in order for the routes to be correctly configured.') : invariant(false) : void 0;
309
+ initialRoute = _concatInstanceProperty(_context14 = "/".concat(mergedProject.key, "/")).call(_context14, mergedEnvironment.entryPointUriPath);
326
310
  }
327
311
 
312
+ var memoryHistory = history !== null && history !== void 0 ? history : createEnhancedHistory(createMemoryHistory({
313
+ initialEntries: [initialRoute || '/']
314
+ }));
315
+
328
316
  var ApplicationProviders = function ApplicationProviders(props) {
329
317
  return jsx(IntlProvider, {
330
318
  locale: locale,
331
319
  children: jsx(ApolloProviderWrapper, {
332
- disableApolloMocks: disableApolloMocks,
320
+ enableApolloMocks: enableApolloMocks,
333
321
  apolloClient: apolloClient,
334
322
  mocks: mocks,
335
323
  children: jsx(TestProviderFlopFlip, {
@@ -340,7 +328,7 @@ function createApplicationProviders() {
340
328
  environment: mergedEnvironment,
341
329
  projectDataLocale: dataLocale,
342
330
  children: jsx(Router, {
343
- history: history,
331
+ history: memoryHistory,
344
332
  children: jsx(Suspense, {
345
333
  fallback: jsx(LoadingFallback, {}),
346
334
  children: jsx(ApplicationEntryPoint, {
@@ -370,7 +358,7 @@ function createApplicationProviders() {
370
358
  mergedUser: mergedUser,
371
359
  mergedProject: mergedProject,
372
360
  mergedEnvironment: mergedEnvironment,
373
- history: history
361
+ history: memoryHistory
374
362
  };
375
363
  } // Inspired by
376
364
  // https://github.com/kentcdodds/react-testing-library-course/blob/2a5b1560656790bb1d9c055fba3845780b2c2c97/src/__tests__/react-router-03.js
@@ -540,4 +528,4 @@ var hooks = _objectSpread(_objectSpread({}, rtlHooks), {}, {
540
528
  renderHook: renderHook
541
529
  });
542
530
 
543
- export { hooks, renderApp, renderAppWithRedux };
531
+ export { denormalizeActionRights, denormalizeDataFences, denormalizePermissions, hooks, mapResourceAccessToAppliedPermissions, renderApp, renderAppWithRedux };