@panneau/app 1.0.3-alpha.1 → 1.0.3-alpha.11

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/es/index.js CHANGED
@@ -14,9 +14,10 @@ import FiltersProvider from '@panneau/filters';
14
14
  import FormsProvider from '@panneau/forms';
15
15
  import { useResourceValues, IntlProvider } from '@panneau/intl';
16
16
  import ListsProvider from '@panneau/lists';
17
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
18
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
19
17
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
18
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
19
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
20
+ import isObject from 'lodash/isObject';
20
21
  import { parse, stringify } from 'query-string';
21
22
  import { FormattedMessage, defineMessages } from 'react-intl';
22
23
  import { useResourceUrlGenerator, useForm } from '@panneau/core/hooks';
@@ -24,8 +25,9 @@ import { getComponentFromName } from '@panneau/core/utils';
24
25
  import classNames from 'classnames';
25
26
  import Button from '@panneau/element-button';
26
27
  import Form from '@panneau/element-form';
27
- import Navbar from '@panneau/element-navbar';
28
+ import isArray from 'lodash/isArray';
28
29
  import Menu from '@panneau/element-menu';
30
+ import Navbar from '@panneau/element-navbar';
29
31
  import Label from '@panneau/element-label';
30
32
  import isString from 'lodash/isString';
31
33
  import Alert from '@panneau/element-alert';
@@ -36,7 +38,7 @@ import { faUndo } from '@fortawesome/free-solid-svg-icons';
36
38
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
37
39
  import FormGroup from '@panneau/element-form-group';
38
40
 
39
- var _excluded$5 = ["resource", "action", "previous", "status", "value", "onSubmit", "errors", "generalError", "className"];
41
+ var _excluded$6 = ["resource", "action", "previous", "status", "value", "onSubmit", "errors", "generalError", "className"];
40
42
  var propTypes$m = {
41
43
  resource: PropTypes.resource.isRequired,
42
44
  action: PropTypes$1.string,
@@ -61,23 +63,20 @@ var defaultProps$m = {
61
63
  errors: null,
62
64
  className: null
63
65
  };
64
-
65
66
  var DeleteForm = function DeleteForm(_ref) {
66
67
  var resource = _ref.resource,
67
- action = _ref.action,
68
- previous = _ref.previous;
69
- _ref.status;
70
- var value = _ref.value,
71
- onSubmit = _ref.onSubmit;
72
- _ref.errors;
73
- var generalError = _ref.generalError,
74
- className = _ref.className,
75
- props = _objectWithoutProperties(_ref, _excluded$5);
76
-
68
+ action = _ref.action,
69
+ previous = _ref.previous;
70
+ _ref.status;
71
+ var value = _ref.value,
72
+ onSubmit = _ref.onSubmit;
73
+ _ref.errors;
74
+ var generalError = _ref.generalError,
75
+ className = _ref.className,
76
+ props = _objectWithoutProperties(_ref, _excluded$6);
77
77
  var _ref2 = value || {},
78
- _ref2$id = _ref2.id,
79
- id = _ref2$id === void 0 ? null : _ref2$id;
80
-
78
+ _ref2$id = _ref2.id,
79
+ id = _ref2$id === void 0 ? null : _ref2$id;
81
80
  var resourceValues = useResourceValues(resource, {
82
81
  id: id
83
82
  });
@@ -145,11 +144,10 @@ var DeleteForm = function DeleteForm(_ref) {
145
144
  }]
146
145
  })))));
147
146
  };
148
-
149
147
  DeleteForm.propTypes = propTypes$m;
150
148
  DeleteForm.defaultProps = defaultProps$m;
151
149
 
152
- var _excluded$4 = ["component", "resource", "onSuccess", "item", "type", "isDelete"];
150
+ var _excluded$5 = ["component", "resource", "onSuccess", "item", "type", "isDelete"];
153
151
  var propTypes$l = {
154
152
  component: PropTypes$1.string,
155
153
  resource: PropTypes.resource.isRequired,
@@ -166,129 +164,120 @@ var defaultProps$l = {
166
164
  onSuccess: null,
167
165
  isDelete: false
168
166
  };
169
-
170
167
  var ResourceForm = function ResourceForm(_ref) {
171
168
  var component = _ref.component,
172
- resource = _ref.resource,
173
- onSuccess = _ref.onSuccess,
174
- item = _ref.item,
175
- type = _ref.type,
176
- isDelete = _ref.isDelete,
177
- props = _objectWithoutProperties(_ref, _excluded$4);
178
-
169
+ resource = _ref.resource,
170
+ onSuccess = _ref.onSuccess,
171
+ item = _ref.item,
172
+ type = _ref.type,
173
+ isDelete = _ref.isDelete,
174
+ props = _objectWithoutProperties(_ref, _excluded$5);
179
175
  var locales = useLocales();
180
176
  var FormComponents = useFormsComponents();
181
177
  var _resource$fields = resource.fields,
182
- resourceFields = _resource$fields === void 0 ? [] : _resource$fields,
183
- _resource$types = resource.types,
184
- resourceTypes = _resource$types === void 0 ? [] : _resource$types,
185
- forms = resource.forms;
178
+ resourceFields = _resource$fields === void 0 ? [] : _resource$fields,
179
+ _resource$types = resource.types,
180
+ resourceTypes = _resource$types === void 0 ? [] : _resource$types,
181
+ forms = resource.forms;
186
182
  var resourceType = type !== null ? resourceTypes.find(function (it) {
187
183
  return it.id === type;
188
184
  }) || null : null;
189
-
190
185
  var _ref2 = resourceType || {},
191
- _ref2$fields = _ref2.fields,
192
- resourceTypeFields = _ref2$fields === void 0 ? null : _ref2$fields;
193
-
194
- var isCreate = item === null || !item.id; // Pick fields from resource root or form
186
+ _ref2$fields = _ref2.fields,
187
+ resourceTypeFields = _ref2$fields === void 0 ? null : _ref2$fields;
188
+ var isCreate = item === null || !item.id;
195
189
 
190
+ // Pick fields from resource root or form
196
191
  var _ref3 = forms || {},
197
- _ref3$default = _ref3["default"],
198
- defaultForm = _ref3$default === void 0 ? null : _ref3$default,
199
- _ref3$create = _ref3.create,
200
- createForm = _ref3$create === void 0 ? null : _ref3$create,
201
- _ref3$edit = _ref3.edit,
202
- editForm = _ref3$edit === void 0 ? null : _ref3$edit,
203
- _ref3$delete = _ref3["delete"],
204
- deleteForm = _ref3$delete === void 0 ? null : _ref3$delete;
205
-
192
+ _ref3$default = _ref3["default"],
193
+ defaultForm = _ref3$default === void 0 ? null : _ref3$default,
194
+ _ref3$create = _ref3.create,
195
+ createForm = _ref3$create === void 0 ? null : _ref3$create,
196
+ _ref3$edit = _ref3.edit,
197
+ editForm = _ref3$edit === void 0 ? null : _ref3$edit,
198
+ _ref3$delete = _ref3["delete"],
199
+ deleteForm = _ref3$delete === void 0 ? null : _ref3$delete;
206
200
  var _ref4 = defaultForm || {},
207
- _ref4$fields = _ref4.fields,
208
- defaultFields = _ref4$fields === void 0 ? null : _ref4$fields,
209
- defaultComponent = _ref4.component;
210
-
201
+ _ref4$fields = _ref4.fields,
202
+ defaultFields = _ref4$fields === void 0 ? null : _ref4$fields,
203
+ defaultComponent = _ref4.component;
211
204
  var createOrEditSource = isCreate ? createForm || {} : editForm || {};
212
-
213
205
  var _ref5 = isDelete ? deleteForm || {} : createOrEditSource || {},
214
- _ref5$fields = _ref5.fields,
215
- formFields = _ref5$fields === void 0 ? null : _ref5$fields,
216
- _ref5$component = _ref5.component,
217
- formComponent = _ref5$component === void 0 ? null : _ref5$component;
218
-
206
+ _ref5$fields = _ref5.fields,
207
+ formFields = _ref5$fields === void 0 ? null : _ref5$fields,
208
+ _ref5$component = _ref5.component,
209
+ formComponent = _ref5$component === void 0 ? null : _ref5$component;
219
210
  var finalFields = useMemo(function () {
220
211
  return (formFields || defaultFields || resourceTypeFields || resourceFields).filter(function (_ref6) {
221
- var _ref6$settings = _ref6.settings;
222
- _ref6$settings = _ref6$settings === void 0 ? {} : _ref6$settings;
223
- var _ref6$settings$hidden = _ref6$settings.hiddenInForm,
224
- hiddenInForm = _ref6$settings$hidden === void 0 ? false : _ref6$settings$hidden;
212
+ var _ref6$settings = _ref6.settings,
213
+ _ref6$settings2 = _ref6$settings === void 0 ? {} : _ref6$settings,
214
+ _ref6$settings2$hidde = _ref6$settings2.hiddenInForm,
215
+ hiddenInForm = _ref6$settings2$hidde === void 0 ? false : _ref6$settings2$hidde;
225
216
  return !hiddenInForm;
226
217
  });
227
- }, [formFields, defaultFields, resourceTypeFields, resourceFields]); // Form routes
218
+ }, [formFields, defaultFields, resourceTypeFields, resourceFields]);
228
219
 
220
+ // Form routes
229
221
  var resourceRoute = useResourceUrlGenerator(resource);
230
-
231
222
  var _useResourceStore = useResourceStore(resource),
232
- store = _useResourceStore.store;
233
-
223
+ store = _useResourceStore.store;
234
224
  var _useResourceUpdate = useResourceUpdate(resource, item != null ? item.id : null),
235
- update = _useResourceUpdate.update;
236
-
225
+ update = _useResourceUpdate.update;
237
226
  var _useResourceDestroy = useResourceDestroy(resource, item != null ? item.id : null),
238
- destroy = _useResourceDestroy.destroy; // Post actions
239
-
227
+ destroy = _useResourceDestroy.destroy;
240
228
 
229
+ // Post actions
241
230
  var postAction = isCreate ? store : update;
242
231
  var postForm = useCallback(function (action, data) {
243
232
  return isDelete ? destroy() : postAction(data);
244
- }, [postAction, isDelete, destroy, store, update]); // Form state
233
+ }, [postAction, isDelete, destroy, store, update]);
245
234
 
235
+ // Form state
246
236
  var getInitialValue = useCallback(function () {
247
237
  return item !== null ? item : finalFields.reduce(function (defaultValues, _ref7) {
248
238
  var name = _ref7.name,
249
- _ref7$defaultValue = _ref7.defaultValue,
250
- defaultValue = _ref7$defaultValue === void 0 ? null : _ref7$defaultValue;
239
+ _ref7$defaultValue = _ref7.defaultValue,
240
+ defaultValue = _ref7$defaultValue === void 0 ? null : _ref7$defaultValue;
251
241
  return defaultValue !== null ? _objectSpread(_objectSpread({}, defaultValues), {}, _defineProperty({}, name, defaultValue)) : defaultValues;
252
242
  }, type !== null ? {
253
243
  type: type
254
244
  } : null);
255
245
  }, [item, type, finalFields]);
256
-
257
246
  var _useState = useState(getInitialValue()),
258
- _useState2 = _slicedToArray(_useState, 2),
259
- value = _useState2[0],
260
- setValueState = _useState2[1];
261
-
247
+ _useState2 = _slicedToArray(_useState, 2),
248
+ value = _useState2[0],
249
+ setValueState = _useState2[1];
262
250
  var setValue = useCallback(function (newValue) {
263
251
  // console.log('new value in resource form', newValue); // eslint-disable-line
264
252
  setValueState(newValue);
265
253
  }, [setValueState]);
266
-
267
254
  var _useForm = useForm({
268
- fields: finalFields,
269
- value: value,
270
- postForm: postForm,
271
- setValue: setValue,
272
- onComplete: onSuccess,
273
- locales: locales
274
- }),
275
- fields = _useForm.fields,
276
- onSubmit = _useForm.onSubmit,
277
- status = _useForm.status,
278
- generalError = _useForm.generalError,
279
- errors = _useForm.errors; // Form action
280
-
255
+ fields: finalFields,
256
+ value: value,
257
+ postForm: postForm,
258
+ setValue: setValue,
259
+ onComplete: onSuccess,
260
+ locales: locales
261
+ }),
262
+ fields = _useForm.fields,
263
+ onSubmit = _useForm.onSubmit,
264
+ status = _useForm.status,
265
+ generalError = _useForm.generalError,
266
+ errors = _useForm.errors;
281
267
 
268
+ // Form action
282
269
  var modifyAction = isCreate ? resourceRoute('store') : resourceRoute('update', {
283
270
  id: item.id
284
271
  });
285
272
  var action = isDelete ? resourceRoute('destroy', {
286
273
  id: item.id
287
274
  }) : modifyAction;
288
- var defaultFormName = isDelete ? component || formComponent || null : component || formComponent || defaultComponent || 'normal'; // Form component
275
+ var defaultFormName = isDelete ? component || formComponent || null : component || formComponent || defaultComponent || 'normal';
289
276
 
290
- var FormComponent = getComponentFromName(defaultFormName, FormComponents, isDelete ? DeleteForm : component); // Lisen to item value change - this is important
277
+ // Form component
278
+ var FormComponent = getComponentFromName(defaultFormName, FormComponents, isDelete ? DeleteForm : component);
291
279
 
280
+ // Lisen to item value change - this is important
292
281
  useEffect(function () {
293
282
  // console.log('get initial value from the top'); // eslint-disable-line
294
283
  setValue(getInitialValue());
@@ -310,7 +299,6 @@ var ResourceForm = function ResourceForm(_ref) {
310
299
  onChange: setValue
311
300
  })));
312
301
  };
313
-
314
302
  ResourceForm.propTypes = propTypes$l;
315
303
  ResourceForm.defaultProps = defaultProps$l;
316
304
 
@@ -324,11 +312,10 @@ var defaultProps$k = {
324
312
  itemClassName: null,
325
313
  linkClassName: null
326
314
  };
327
-
328
315
  var AccountMenu = function AccountMenu(_ref) {
329
316
  var className = _ref.className,
330
- itemClassName = _ref.itemClassName,
331
- linkClassName = _ref.linkClassName;
317
+ itemClassName = _ref.itemClassName,
318
+ linkClassName = _ref.linkClassName;
332
319
  var route = useUrlGenerator();
333
320
  var user = useUser();
334
321
  var logout = useLogout();
@@ -347,14 +334,15 @@ var AccountMenu = function AccountMenu(_ref) {
347
334
  }]
348
335
  }),
349
336
  href: route('account'),
350
- dropdown: [// {
337
+ dropdown: [
338
+ // {
351
339
  // label: (
352
340
  // <FormattedMessage
353
341
  // defaultMessage="Update account"
354
342
  // description="Menu label"
355
343
  // />
356
344
  // ),
357
- // href: route('panneau.account'),
345
+ // href: route('account'),
358
346
  // },
359
347
  {
360
348
  label: /*#__PURE__*/React.createElement(FormattedMessage, {
@@ -386,7 +374,6 @@ var AccountMenu = function AccountMenu(_ref) {
386
374
  dropdownAlign: "end"
387
375
  }) : null;
388
376
  };
389
-
390
377
  AccountMenu.propTypes = propTypes$k;
391
378
  AccountMenu.defaultProps = defaultProps$k;
392
379
 
@@ -400,23 +387,20 @@ var defaultProps$j = {
400
387
  itemClassName: null,
401
388
  linkClassName: null
402
389
  };
403
-
404
390
  var ResourcesMenu = function ResourcesMenu(_ref) {
405
391
  var className = _ref.className,
406
- itemClassName = _ref.itemClassName,
407
- linkClassName = _ref.linkClassName;
408
-
392
+ itemClassName = _ref.itemClassName,
393
+ linkClassName = _ref.linkClassName;
409
394
  var _useLocation = useLocation(),
410
- pathname = _useLocation.pathname;
411
-
395
+ pathname = _useLocation.pathname;
412
396
  var resources = usePanneauResources();
413
397
  var resourceRoute = useResourceUrlGenerator();
414
398
  var items = useMemo(function () {
415
399
  return resources.filter(function (_ref2) {
416
- var _ref2$settings = _ref2.settings;
417
- _ref2$settings = _ref2$settings === void 0 ? {} : _ref2$settings;
418
- var _ref2$settings$hideIn = _ref2$settings.hideInNavbar,
419
- hideInNavbar = _ref2$settings$hideIn === void 0 ? false : _ref2$settings$hideIn;
400
+ var _ref2$settings = _ref2.settings,
401
+ _ref2$settings2 = _ref2$settings === void 0 ? {} : _ref2$settings,
402
+ _ref2$settings2$hideI = _ref2$settings2.hideInNavbar,
403
+ hideInNavbar = _ref2$settings2$hideI === void 0 ? false : _ref2$settings2$hideI;
420
404
  return !hideInNavbar;
421
405
  }).map(function (it) {
422
406
  var url = resourceRoute(it, 'index');
@@ -435,39 +419,69 @@ var ResourcesMenu = function ResourcesMenu(_ref) {
435
419
  linkClassName: linkClassName
436
420
  });
437
421
  };
438
-
439
422
  ResourcesMenu.propTypes = propTypes$j;
440
423
  ResourcesMenu.defaultProps = defaultProps$j;
441
424
 
442
- /* eslint-disable react/jsx-props-no-spreading */
443
425
  var propTypes$i = {};
444
426
  var defaultProps$i = {};
445
-
446
427
  var MainNavbar = function MainNavbar(props) {
447
428
  var _usePanneau = usePanneau(),
448
- name = _usePanneau.name;
449
-
429
+ name = _usePanneau.name,
430
+ _usePanneau$menus = _usePanneau.menus,
431
+ menus = _usePanneau$menus === void 0 ? null : _usePanneau$menus;
432
+ var _ref = menus || {},
433
+ _ref$main = _ref.main,
434
+ main = _ref$main === void 0 ? null : _ref$main,
435
+ _ref$guest = _ref.guest,
436
+ guest = _ref$guest === void 0 ? null : _ref$guest;
450
437
  var _usePanneauColorSchem = usePanneauColorScheme(),
451
- background = _usePanneauColorSchem.background;
452
-
438
+ background = _usePanneauColorSchem.background;
453
439
  var route = useUrlGenerator();
454
440
  var user = useUser();
441
+ var items = useMemo(function () {
442
+ var menuItems = (user !== null ? main : guest) || [];
443
+ var hasResources = menuItems.indexOf('resources') !== -1;
444
+ var hasAccount = menuItems.indexOf('account') !== -1;
445
+ return [!hasResources && user !== null ? 'resources' : null].concat(_toConsumableArray(menuItems), [!hasAccount && menuItems.indexOf('separator') === -1 ? 'separator' : null, !hasAccount ? 'account' : null]).filter(function (it) {
446
+ return it !== null;
447
+ }).reduce(function (currentItems, item) {
448
+ if (item === 'resources') {
449
+ return [].concat(_toConsumableArray(currentItems), [/*#__PURE__*/React.createElement(ResourcesMenu, {
450
+ className: "navbar-nav",
451
+ itemClassName: "nav-item",
452
+ linkClassName: "nav-link"
453
+ })]);
454
+ }
455
+ if (item === 'account') {
456
+ return [].concat(_toConsumableArray(currentItems), [/*#__PURE__*/React.createElement(AccountMenu, {
457
+ className: "navbar-nav",
458
+ itemClassName: "nav-item",
459
+ linkClassName: "nav-link"
460
+ })]);
461
+ }
462
+ if (item === 'separator') {
463
+ return [].concat(_toConsumableArray(currentItems), [/*#__PURE__*/React.createElement("span", {
464
+ className: "ms-auto"
465
+ })]);
466
+ }
467
+ var lastItem = currentItems.length > 0 ? currentItems[currentItems.length - 1] : null;
468
+ return isArray(lastItem) ? [].concat(_toConsumableArray(currentItems.slice(0, currentItems.length - 1)), [[].concat(_toConsumableArray(lastItem), [item])]) : [].concat(_toConsumableArray(currentItems), [[item]]);
469
+ }, []).map(function (it) {
470
+ return isArray(it) ? /*#__PURE__*/React.createElement(Menu, {
471
+ items: it,
472
+ className: "navbar-nav",
473
+ itemClassName: "nav-item",
474
+ linkClassName: "nav-link"
475
+ }) : it;
476
+ });
477
+ }, [main]);
455
478
  return /*#__PURE__*/React.createElement(Navbar, Object.assign({
456
479
  theme: background
457
480
  }, props), name !== null ? /*#__PURE__*/React.createElement(Link, {
458
481
  to: route('home'),
459
482
  className: "navbar-brand"
460
- }, name) : null, user !== null ? /*#__PURE__*/React.createElement(ResourcesMenu, {
461
- className: "navbar-nav ml-4",
462
- itemClassName: "nav-item",
463
- linkClassName: "nav-link"
464
- }) : null, /*#__PURE__*/React.createElement(AccountMenu, {
465
- className: "navbar-nav ms-auto",
466
- itemClassName: "nav-item",
467
- linkClassName: "nav-link"
468
- }));
483
+ }, name) : null, items);
469
484
  };
470
-
471
485
  MainNavbar.propTypes = propTypes$i;
472
486
  MainNavbar.defaultProps = defaultProps$i;
473
487
 
@@ -478,17 +492,13 @@ var propTypes$h = {
478
492
  var defaultProps$h = {
479
493
  fullscreen: false
480
494
  };
481
-
482
495
  var MainLayout = function MainLayout(_ref) {
483
496
  var _ref2;
484
-
485
497
  var children = _ref.children,
486
- fullscreen = _ref.fullscreen;
487
-
498
+ fullscreen = _ref.fullscreen;
488
499
  var _usePanneauColorSchem = usePanneauColorScheme(),
489
- background = _usePanneauColorSchem.background,
490
- text = _usePanneauColorSchem.text;
491
-
500
+ background = _usePanneauColorSchem.background,
501
+ text = _usePanneauColorSchem.text;
492
502
  return /*#__PURE__*/React.createElement("div", {
493
503
  className: classNames(['d-flex', 'flex-column', 'min-vh-100'])
494
504
  }, /*#__PURE__*/React.createElement(MainNavbar, {
@@ -499,7 +509,6 @@ var MainLayout = function MainLayout(_ref) {
499
509
  }, _defineProperty(_ref2, "bg-".concat(background), background !== null), _defineProperty(_ref2, "text-".concat(text), text !== null), _ref2)])
500
510
  }, children));
501
511
  };
502
-
503
512
  MainLayout.propTypes = propTypes$h;
504
513
  MainLayout.defaultProps = defaultProps$h;
505
514
 
@@ -517,22 +526,19 @@ var defaultProps$g = {
517
526
  className: null,
518
527
  children: null
519
528
  };
520
-
521
529
  var PageHeader = function PageHeader(_ref) {
522
530
  var _ref2;
523
-
524
531
  var title = _ref.title,
525
- actions = _ref.actions,
526
- small = _ref.small,
527
- className = _ref.className,
528
- children = _ref.children;
529
-
532
+ actions = _ref.actions,
533
+ small = _ref.small,
534
+ className = _ref.className,
535
+ children = _ref.children;
530
536
  // TODO: fix page header components
531
537
  // const { components } = usePanneau();
532
538
  var _usePanneauColorSchem = usePanneauColorScheme(),
533
- text = _usePanneauColorSchem.text,
534
- background = _usePanneauColorSchem.background; // console.log('page-header', components); // eslint-disable-line
535
-
539
+ text = _usePanneauColorSchem.text,
540
+ background = _usePanneauColorSchem.background;
541
+ // console.log('page-header', components); // eslint-disable-line
536
542
 
537
543
  var inner = /*#__PURE__*/React.createElement("div", {
538
544
  className: "d-flex align-items-center flex-wrap"
@@ -551,7 +557,6 @@ var PageHeader = function PageHeader(_ref) {
551
557
  className: "col-12 col-md-8 col-lg-7"
552
558
  }, inner)) : inner), children);
553
559
  };
554
-
555
560
  PageHeader.propTypes = propTypes$g;
556
561
  PageHeader.defaultProps = defaultProps$g;
557
562
 
@@ -559,25 +564,20 @@ var propTypes$f = {
559
564
  resource: PropTypes.resource.isRequired
560
565
  };
561
566
  var defaultProps$f = {};
562
-
563
567
  var ResourceCreatePage = function ResourceCreatePage(_ref) {
564
568
  var resource = _ref.resource;
565
569
  var navigate = useNavigate();
566
-
567
570
  var _useLocation = useLocation(),
568
- search = _useLocation.search;
569
-
571
+ search = _useLocation.search;
570
572
  var resourceRoute = useResourceUrlGenerator(resource);
571
573
  var onSuccess = useCallback(function () {
572
574
  navigate("".concat(resourceRoute('index'), "?created=true"));
573
575
  }, [navigate, resourceRoute]);
574
-
575
576
  var _useMemo = useMemo(function () {
576
- return parse(search);
577
- }, [search]),
578
- _useMemo$type = _useMemo.type,
579
- type = _useMemo$type === void 0 ? null : _useMemo$type;
580
-
577
+ return parse(search);
578
+ }, [search]),
579
+ _useMemo$type = _useMemo.type,
580
+ type = _useMemo$type === void 0 ? null : _useMemo$type;
581
581
  var resourceValues = useResourceValues(resource);
582
582
  return /*#__PURE__*/React.createElement(ResourceProvider, {
583
583
  resource: resource
@@ -606,35 +606,31 @@ var ResourceCreatePage = function ResourceCreatePage(_ref) {
606
606
  onSuccess: onSuccess
607
607
  }))))));
608
608
  };
609
-
610
609
  ResourceCreatePage.propTypes = propTypes$f;
611
610
  ResourceCreatePage.defaultProps = defaultProps$f;
612
611
 
612
+ // import Button from '../buttons/Button';
613
+
613
614
  var propTypes$e = {
614
615
  resource: PropTypes.resource.isRequired
615
616
  };
616
617
  var defaultProps$e = {};
617
-
618
618
  var ResourceDeletePage = function ResourceDeletePage(_ref) {
619
619
  var resource = _ref.resource;
620
-
621
620
  var _useParams = useParams(),
622
- itemId = _useParams.id;
623
-
621
+ itemId = _useParams.id;
624
622
  var navigate = useNavigate();
625
623
  var resourceRoute = useResourceUrlGenerator(resource);
626
-
627
624
  var _useResourceItem = useResourceItem(resource, itemId),
628
- item = _useResourceItem.item;
629
-
625
+ item = _useResourceItem.item;
630
626
  var onSuccess = useCallback(function () {
631
627
  return navigate("".concat(resourceRoute('index'), "?deleted=true"));
632
- }, [navigate, resourceRoute]); // Navigate back
628
+ }, [navigate, resourceRoute]);
633
629
 
630
+ // Navigate back
634
631
  var _ref2 = history || {},
635
- _ref2$entries = _ref2.entries,
636
- entries = _ref2$entries === void 0 ? [] : _ref2$entries;
637
-
632
+ _ref2$entries = _ref2.entries,
633
+ entries = _ref2$entries === void 0 ? [] : _ref2$entries;
638
634
  var previousEntry = entries !== null && entries.length > 1 ? entries[entries.length - 2] : null;
639
635
  var previous = (previousEntry === null || previousEntry === void 0 ? void 0 : previousEntry.pathname) || null;
640
636
  var resourceValues = useResourceValues(resource);
@@ -668,33 +664,28 @@ var ResourceDeletePage = function ResourceDeletePage(_ref) {
668
664
  isDelete: true
669
665
  }) : null)))));
670
666
  };
671
-
672
667
  ResourceDeletePage.propTypes = propTypes$e;
673
668
  ResourceDeletePage.defaultProps = defaultProps$e;
674
669
 
670
+ // import Button from '../buttons/Button';
671
+
675
672
  var propTypes$d = {
676
673
  resource: PropTypes.resource.isRequired
677
674
  };
678
675
  var defaultProps$d = {};
679
-
680
676
  var ResourceEditPage = function ResourceEditPage(_ref) {
681
677
  var resource = _ref.resource;
682
-
683
678
  var _useParams = useParams(),
684
- itemId = _useParams.id;
685
-
679
+ itemId = _useParams.id;
686
680
  var _useResourceItem = useResourceItem(resource, itemId),
687
- item = _useResourceItem.item;
688
-
681
+ item = _useResourceItem.item;
689
682
  var _ref2 = item || {},
690
- _ref2$type = _ref2.type,
691
- type = _ref2$type === void 0 ? null : _ref2$type;
692
-
683
+ _ref2$type = _ref2.type,
684
+ type = _ref2$type === void 0 ? null : _ref2$type;
693
685
  var _useState = useState(item),
694
- _useState2 = _slicedToArray(_useState, 2),
695
- editItem = _useState2[0],
696
- setEditItem = _useState2[1];
697
-
686
+ _useState2 = _slicedToArray(_useState, 2),
687
+ editItem = _useState2[0],
688
+ setEditItem = _useState2[1];
698
689
  var onSuccess = useCallback(function (newItem) {
699
690
  return setEditItem(newItem);
700
691
  }, []);
@@ -730,7 +721,6 @@ var ResourceEditPage = function ResourceEditPage(_ref) {
730
721
  onSuccess: onSuccess
731
722
  }) : null)))));
732
723
  };
733
-
734
724
  ResourceEditPage.propTypes = propTypes$d;
735
725
  ResourceEditPage.defaultProps = defaultProps$d;
736
726
 
@@ -741,38 +731,36 @@ var propTypes$c = {
741
731
  var defaultProps$c = {
742
732
  className: null
743
733
  };
744
-
745
734
  var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
746
735
  var resource = _ref.resource,
747
- className = _ref.className;
736
+ className = _ref.className;
748
737
  var _resource$types = resource.types,
749
- types = _resource$types === void 0 ? null : _resource$types; // const intl = useIntl();
750
-
738
+ types = _resource$types === void 0 ? null : _resource$types;
739
+ // const intl = useIntl();
751
740
  var resourceRoute = useResourceUrlGenerator(resource);
752
741
  var resourceValues = useResourceValues(resource);
753
-
754
742
  var _useState = useState(false),
755
- _useState2 = _slicedToArray(_useState, 2),
756
- dropdownOpened = _useState2[0],
757
- setDropdownOpened = _useState2[1];
758
-
743
+ _useState2 = _slicedToArray(_useState, 2),
744
+ dropdownOpened = _useState2[0],
745
+ setDropdownOpened = _useState2[1];
759
746
  var onClickDropdown = useCallback(function (e) {
760
747
  e.preventDefault();
761
- setDropdownOpened(function (opened) {
762
- return !opened;
763
- });
764
- }, [setDropdownOpened]);
748
+ e.stopPropagation();
749
+ setDropdownOpened(!dropdownOpened);
750
+ }, [setDropdownOpened, dropdownOpened]);
765
751
  var finalTypes = types !== null ? types.filter(function (_ref2) {
766
- var _ref2$settings = _ref2.settings;
767
- _ref2$settings = _ref2$settings === void 0 ? {} : _ref2$settings;
768
- var _ref2$settings$canCre = _ref2$settings.canCreate,
769
- canCreate = _ref2$settings$canCre === void 0 ? true : _ref2$settings$canCre;
752
+ var _ref2$settings = _ref2.settings,
753
+ _ref2$settings2 = _ref2$settings === void 0 ? {} : _ref2$settings,
754
+ _ref2$settings2$canCr = _ref2$settings2.canCreate,
755
+ canCreate = _ref2$settings2$canCr === void 0 ? true : _ref2$settings2$canCr;
770
756
  return canCreate;
771
757
  }) : null;
772
758
  var hasMultipleTypes = finalTypes !== null && finalTypes.length > 1;
773
759
  var onDropdownClickOutside = useCallback(function () {
774
- setDropdownOpened(false);
775
- }, [setDropdownOpened]);
760
+ if (dropdownOpened) {
761
+ setDropdownOpened(false);
762
+ }
763
+ }, [setDropdownOpened, dropdownOpened]);
776
764
  var button = /*#__PURE__*/React.createElement(Button, {
777
765
  href: !hasMultipleTypes ? "".concat(resourceRoute('create')).concat(finalTypes !== null && finalTypes.length === 1 ? "?type=".concat(finalTypes[0].id) : '') : '#',
778
766
  size: "lg",
@@ -809,11 +797,10 @@ var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
809
797
  onClickOutside: onDropdownClickOutside
810
798
  })) : button;
811
799
  };
812
-
813
800
  ResourceCreateButtom.propTypes = propTypes$c;
814
801
  ResourceCreateButtom.defaultProps = defaultProps$c;
815
802
 
816
- var _excluded$3 = ["component", "name", "groupLabel"];
803
+ var _excluded$4 = ["component", "name", "groupLabel"];
817
804
  var propTypes$b = {
818
805
  filters: PropTypes$1.arrayOf(PropTypes$1.shape({
819
806
  id: PropTypes$1.string.isRequired,
@@ -841,21 +828,18 @@ var defaultProps$b = {
841
828
  },
842
829
  className: null
843
830
  };
844
-
845
831
  var ResourceFilters = function ResourceFilters(_ref) {
846
832
  var filters = _ref.filters,
847
- value = _ref.value,
848
- onChange = _ref.onChange,
849
- onReset = _ref.onReset,
850
- withContainer = _ref.withContainer,
851
- withReset = _ref.withReset,
852
- defaultValue = _ref.defaultValue,
853
- className = _ref.className;
833
+ value = _ref.value,
834
+ onChange = _ref.onChange,
835
+ onReset = _ref.onReset,
836
+ withContainer = _ref.withContainer,
837
+ withReset = _ref.withReset,
838
+ defaultValue = _ref.defaultValue,
839
+ className = _ref.className;
854
840
  var FilterComponents = useFiltersComponents();
855
-
856
841
  var _usePanneauColorSchem = usePanneauColorScheme(),
857
- background = _usePanneauColorSchem.background;
858
-
842
+ background = _usePanneauColorSchem.background;
859
843
  var currentFilters = filters || [];
860
844
  var onFiltersReset = useCallback(function () {
861
845
  if (onReset !== null) {
@@ -866,9 +850,10 @@ var ResourceFilters = function ResourceFilters(_ref) {
866
850
  if (value !== null && value[item.name]) {
867
851
  return true;
868
852
  }
869
-
870
853
  return isActive;
871
- }, false); // console.log('value', value);
854
+ }, false);
855
+
856
+ // console.log('value', value);
872
857
 
873
858
  return /*#__PURE__*/React.createElement(Navbar, {
874
859
  className: classNames([_defineProperty({
@@ -878,10 +863,9 @@ var ResourceFilters = function ResourceFilters(_ref) {
878
863
  withoutCollapse: true
879
864
  }, currentFilters.map(function (_ref3, index) {
880
865
  var component = _ref3.component,
881
- name = _ref3.name,
882
- groupLabel = _ref3.groupLabel,
883
- filterProps = _objectWithoutProperties(_ref3, _excluded$3);
884
-
866
+ name = _ref3.name,
867
+ groupLabel = _ref3.groupLabel,
868
+ filterProps = _objectWithoutProperties(_ref3, _excluded$4);
885
869
  var FilterComponent = getComponentFromName(component, FilterComponents, null);
886
870
  var filterValue = value !== null && value[name] ? value[name] : null;
887
871
  var onFilterChange = useCallback(function (newFilterValue) {
@@ -892,9 +876,8 @@ var ResourceFilters = function ResourceFilters(_ref) {
892
876
  var onFilterClear = useCallback(function () {
893
877
  if (name !== null && onChange !== null) {
894
878
  var _ref4 = value || {};
895
- _ref4[name];
896
- var newValue = _objectWithoutProperties(_ref4, [name].map(_toPropertyKey));
897
-
879
+ _ref4[name];
880
+ var newValue = _objectWithoutProperties(_ref4, [name].map(_toPropertyKey));
898
881
  onChange(_objectSpread(_objectSpread({}, newValue), defaultValue));
899
882
  }
900
883
  }, [onChange, name, value, defaultValue]);
@@ -914,12 +897,11 @@ var ResourceFilters = function ResourceFilters(_ref) {
914
897
  icon: faUndo
915
898
  })) : null);
916
899
  };
917
-
918
900
  ResourceFilters.propTypes = propTypes$b;
919
901
  ResourceFilters.defaultProps = defaultProps$b;
920
902
 
921
- var _excluded$2 = ["component", "showPagination", "filters"],
922
- _excluded2 = ["page"];
903
+ var _excluded$3 = ["component", "showPagination", "filters"],
904
+ _excluded2$1 = ["page"];
923
905
  var propTypes$a = {
924
906
  resource: PropTypes.resource.isRequired,
925
907
  query: PropTypes$1.object,
@@ -941,51 +923,42 @@ var defaultProps$a = {
941
923
  onQueryChange: null,
942
924
  onQueryReset: null
943
925
  };
944
-
945
926
  var ResourceItemsList = function ResourceItemsList(_ref) {
946
927
  var resource = _ref.resource,
947
- query = _ref.query,
948
- baseUrl = _ref.baseUrl,
949
- onQueryChange = _ref.onQueryChange,
950
- onQueryReset = _ref.onQueryReset,
951
- paginated = _ref.paginated;
952
- var _resource$index = resource.index;
953
- _resource$index = _resource$index === void 0 ? {} : _resource$index;
954
-
955
- var _resource$index$compo = _resource$index.component,
956
- listComponent = _resource$index$compo === void 0 ? null : _resource$index$compo,
957
- _resource$index$showP = _resource$index.showPagination,
958
- showPagination = _resource$index$showP === void 0 ? true : _resource$index$showP,
959
- _resource$index$filte = _resource$index.filters,
960
- filters = _resource$index$filte === void 0 ? null : _resource$index$filte,
961
- listProps = _objectWithoutProperties(_resource$index, _excluded$2);
962
-
928
+ query = _ref.query,
929
+ baseUrl = _ref.baseUrl,
930
+ onQueryChange = _ref.onQueryChange,
931
+ onQueryReset = _ref.onQueryReset,
932
+ paginated = _ref.paginated;
933
+ var _resource$index = resource.index,
934
+ _resource$index2 = _resource$index === void 0 ? {} : _resource$index,
935
+ _resource$index2$comp = _resource$index2.component,
936
+ listComponent = _resource$index2$comp === void 0 ? null : _resource$index2$comp,
937
+ _resource$index2$show = _resource$index2.showPagination,
938
+ showPagination = _resource$index2$show === void 0 ? true : _resource$index2$show,
939
+ _resource$index2$filt = _resource$index2.filters,
940
+ filters = _resource$index2$filt === void 0 ? null : _resource$index2$filt,
941
+ listProps = _objectWithoutProperties(_resource$index2, _excluded$3);
963
942
  var _usePanneauColorSchem = usePanneauColorScheme(),
964
- _usePanneauColorSchem2 = _usePanneauColorSchem.background,
965
- theme = _usePanneauColorSchem2 === void 0 ? null : _usePanneauColorSchem2;
966
-
943
+ _usePanneauColorSchem2 = _usePanneauColorSchem.background,
944
+ theme = _usePanneauColorSchem2 === void 0 ? null : _usePanneauColorSchem2;
967
945
  var ListComponents = useListsComponents();
968
-
969
946
  var _useMemo = useMemo(function () {
970
- var _ref2 = query || {},
947
+ var _ref2 = query || {},
971
948
  _ref2$page = _ref2.page,
972
949
  currentPage = _ref2$page === void 0 ? 1 : _ref2$page,
973
- rest = _objectWithoutProperties(_ref2, _excluded2);
974
-
975
- return [currentPage, rest];
976
- }, [query]),
977
- _useMemo2 = _slicedToArray(_useMemo, 2),
978
- page = _useMemo2[0],
979
- queryWithoutPage = _useMemo2[1];
980
-
950
+ rest = _objectWithoutProperties(_ref2, _excluded2$1);
951
+ return [currentPage, rest];
952
+ }, [query]),
953
+ _useMemo2 = _slicedToArray(_useMemo, 2),
954
+ page = _useMemo2[0],
955
+ queryWithoutPage = _useMemo2[1];
981
956
  var itemsProps = useResourceItems(resource, queryWithoutPage, paginated ? parseInt(page, 10) : null);
982
-
983
957
  var _ref3 = itemsProps || {},
984
- _ref3$lastPage = _ref3.lastPage,
985
- lastPage = _ref3$lastPage === void 0 ? 0 : _ref3$lastPage,
986
- _ref3$total = _ref3.total,
987
- total = _ref3$total === void 0 ? 0 : _ref3$total;
988
-
958
+ _ref3$lastPage = _ref3.lastPage,
959
+ lastPage = _ref3$lastPage === void 0 ? 0 : _ref3$lastPage,
960
+ _ref3$total = _ref3.total,
961
+ total = _ref3$total === void 0 ? 0 : _ref3$total;
989
962
  var ListComponent = getComponentFromName(listComponent || 'table', ListComponents);
990
963
  return /*#__PURE__*/React.createElement(React.Fragment, null, filters !== null ? /*#__PURE__*/React.createElement(ResourceFilters, {
991
964
  filters: filters,
@@ -1015,39 +988,34 @@ var ResourceItemsList = function ResourceItemsList(_ref) {
1015
988
  className: "mt-4 mb-1"
1016
989
  }) : null);
1017
990
  };
1018
-
1019
991
  ResourceItemsList.propTypes = propTypes$a;
1020
992
  ResourceItemsList.defaultProps = defaultProps$a;
1021
993
 
1022
- var _excluded$1 = ["id", "component"];
994
+ var _excluded$2 = ["id", "component"];
1023
995
  var propTypes$9 = {
1024
996
  resource: PropTypes.resource.isRequired,
1025
997
  defaultActions: PropTypes$1.arrayOf(PropTypes$1.object) // eslint-disable-line react/forbid-prop-types
1026
-
1027
998
  };
999
+
1028
1000
  var defaultProps$9 = {
1029
1001
  defaultActions: ['create']
1030
1002
  };
1031
-
1032
1003
  var ResourceIndexPage = function ResourceIndexPage(_ref) {
1033
1004
  var resource = _ref.resource,
1034
- defaultActions = _ref.defaultActions;
1005
+ defaultActions = _ref.defaultActions;
1035
1006
  var name = resource.name,
1036
- _resource$settings = resource.settings,
1037
- settings = _resource$settings === void 0 ? {} : _resource$settings,
1038
- _resource$index = resource.index,
1039
- index = _resource$index === void 0 ? {} : _resource$index;
1040
-
1007
+ _resource$settings = resource.settings,
1008
+ settings = _resource$settings === void 0 ? {} : _resource$settings,
1009
+ _resource$index = resource.index,
1010
+ index = _resource$index === void 0 ? {} : _resource$index;
1041
1011
  var _ref2 = settings || {},
1042
- _ref2$canCreate = _ref2.canCreate,
1043
- canCreate = _ref2$canCreate === void 0 ? true : _ref2$canCreate,
1044
- _ref2$indexIsPaginate = _ref2.indexIsPaginated,
1045
- paginated = _ref2$indexIsPaginate === void 0 ? false : _ref2$indexIsPaginate;
1046
-
1012
+ _ref2$canCreate = _ref2.canCreate,
1013
+ canCreate = _ref2$canCreate === void 0 ? true : _ref2$canCreate,
1014
+ _ref2$indexIsPaginate = _ref2.indexIsPaginated,
1015
+ paginated = _ref2$indexIsPaginate === void 0 ? false : _ref2$indexIsPaginate;
1047
1016
  var _ref3 = index || {},
1048
- _ref3$actions = _ref3.actions,
1049
- actions = _ref3$actions === void 0 ? null : _ref3$actions;
1050
-
1017
+ _ref3$actions = _ref3.actions,
1018
+ actions = _ref3$actions === void 0 ? null : _ref3$actions;
1051
1019
  var finalActions = useMemo(function () {
1052
1020
  return (actions || defaultActions.filter(function (it) {
1053
1021
  return it !== 'create' || canCreate;
@@ -1062,10 +1030,8 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
1062
1030
  }, [canCreate, actions]);
1063
1031
  var resourceValues = useResourceValues(resource);
1064
1032
  var componentsManager = useComponentsManager();
1065
-
1066
1033
  var _useLocation = useLocation(),
1067
- search = _useLocation.search;
1068
-
1034
+ search = _useLocation.search;
1069
1035
  var navigate = useNavigate();
1070
1036
  var query = useMemo(function () {
1071
1037
  return parse(search);
@@ -1073,13 +1039,11 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
1073
1039
  var listQuery = useMemo(function () {
1074
1040
  return query;
1075
1041
  }, [query]); // TODO: omit routes
1076
-
1077
1042
  var _ref4 = query || {},
1078
- _ref4$created = _ref4.created,
1079
- created = _ref4$created === void 0 ? false : _ref4$created,
1080
- _ref4$deleted = _ref4.deleted,
1081
- deleted = _ref4$deleted === void 0 ? false : _ref4$deleted;
1082
-
1043
+ _ref4$created = _ref4.created,
1044
+ created = _ref4$created === void 0 ? false : _ref4$created,
1045
+ _ref4$deleted = _ref4.deleted,
1046
+ deleted = _ref4$deleted === void 0 ? false : _ref4$deleted;
1083
1047
  var resourceRoute = useResourceUrlGenerator(resource);
1084
1048
  var url = resourceRoute('index');
1085
1049
  var onQueryChange = useCallback(function (submitQuery) {
@@ -1098,8 +1062,10 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
1098
1062
  navigate("".concat(url, "?").concat(queryString));
1099
1063
  }, [navigate, url, paginated]);
1100
1064
  var onClickCloseAlert = useCallback(function () {
1101
- history.replace(url);
1102
- }, [history, url]);
1065
+ navigate(url, {
1066
+ replace: true
1067
+ });
1068
+ }, [navigate, url]);
1103
1069
  return /*#__PURE__*/React.createElement(ResourceProvider, {
1104
1070
  resource: resource
1105
1071
  }, /*#__PURE__*/React.createElement(MainLayout, null, /*#__PURE__*/React.createElement(PageHeader, {
@@ -1108,10 +1074,9 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
1108
1074
  className: "d-flex align-items-center"
1109
1075
  }, finalActions.map(function (_ref5) {
1110
1076
  var id = _ref5.id,
1111
- _ref5$component = _ref5.component,
1112
- component = _ref5$component === void 0 ? Button : _ref5$component,
1113
- actionProps = _objectWithoutProperties(_ref5, _excluded$1);
1114
-
1077
+ _ref5$component = _ref5.component,
1078
+ component = _ref5$component === void 0 ? Button : _ref5$component,
1079
+ actionProps = _objectWithoutProperties(_ref5, _excluded$2);
1115
1080
  var ActionComponent = isString(component) ? componentsManager.getComponent(component) : component;
1116
1081
  return ActionComponent !== null ? /*#__PURE__*/React.createElement(ActionComponent, Object.assign({
1117
1082
  key: "action-".concat(id)
@@ -1158,7 +1123,6 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
1158
1123
  onQueryReset: onQueryReset
1159
1124
  }))));
1160
1125
  };
1161
-
1162
1126
  ResourceIndexPage.propTypes = propTypes$9;
1163
1127
  ResourceIndexPage.defaultProps = defaultProps$9;
1164
1128
 
@@ -1166,7 +1130,6 @@ var propTypes$8 = {
1166
1130
  resource: PropTypes.resource.isRequired
1167
1131
  };
1168
1132
  var defaultProps$8 = {};
1169
-
1170
1133
  var ResourceShowPage = function ResourceShowPage(_ref) {
1171
1134
  var resource = _ref.resource;
1172
1135
  return /*#__PURE__*/React.createElement(ResourceProvider, {
@@ -1177,30 +1140,27 @@ var ResourceShowPage = function ResourceShowPage(_ref) {
1177
1140
  className: "container-sm"
1178
1141
  }, "Show page")));
1179
1142
  };
1180
-
1181
1143
  ResourceShowPage.propTypes = propTypes$8;
1182
1144
  ResourceShowPage.defaultProps = defaultProps$8;
1183
1145
 
1184
1146
  /* eslint-disable react/jsx-props-no-spreading */
1185
1147
  var propTypes$7 = {};
1186
1148
  var defaultProps$7 = {};
1187
-
1188
1149
  var HomePage = function HomePage() {
1189
1150
  var route = useUrlGenerator();
1190
1151
  var resources = usePanneauResources();
1191
1152
  var visibleResources = resources.filter(function (_ref) {
1192
- var _ref$settings = _ref.settings;
1193
- _ref$settings = _ref$settings === void 0 ? {} : _ref$settings;
1194
- var _ref$settings$hideInN = _ref$settings.hideInNavbar,
1195
- hideInNavbar = _ref$settings$hideInN === void 0 ? false : _ref$settings$hideInN;
1153
+ var _ref$settings = _ref.settings,
1154
+ _ref$settings2 = _ref$settings === void 0 ? {} : _ref$settings,
1155
+ _ref$settings2$hideIn = _ref$settings2.hideInNavbar,
1156
+ hideInNavbar = _ref$settings2$hideIn === void 0 ? false : _ref$settings2$hideIn;
1196
1157
  return !hideInNavbar;
1197
1158
  });
1198
1159
  return /*#__PURE__*/React.createElement(MainLayout, null, /*#__PURE__*/React.createElement("div", {
1199
1160
  className: "container-sm py-4"
1200
1161
  }, visibleResources.map(function (resource) {
1201
1162
  var _ref2 = resource || {},
1202
- resourceId = _ref2.id;
1203
-
1163
+ resourceId = _ref2.id;
1204
1164
  var resourceValues = useResourceValues(resource);
1205
1165
  return /*#__PURE__*/React.createElement(Link, {
1206
1166
  className: "d-block my-2",
@@ -1221,19 +1181,16 @@ var HomePage = function HomePage() {
1221
1181
  }));
1222
1182
  })));
1223
1183
  };
1224
-
1225
1184
  HomePage.propTypes = propTypes$7;
1226
1185
  HomePage.defaultProps = defaultProps$7;
1227
1186
 
1228
1187
  var propTypes$6 = {};
1229
1188
  var defaultProps$6 = {};
1230
-
1231
1189
  var AccountPage = function AccountPage() {
1232
1190
  return /*#__PURE__*/React.createElement(MainLayout, null, /*#__PURE__*/React.createElement("div", {
1233
1191
  className: "container-sm py-4"
1234
1192
  }, "Account page"));
1235
1193
  };
1236
-
1237
1194
  AccountPage.propTypes = propTypes$6;
1238
1195
  AccountPage.defaultProps = defaultProps$6;
1239
1196
 
@@ -1270,35 +1227,30 @@ var defaultProps$5 = {
1270
1227
  className: null,
1271
1228
  onSuccess: null
1272
1229
  };
1273
-
1274
1230
  var LoginForm = function LoginForm(_ref) {
1275
1231
  var formFields = _ref.fields,
1276
- className = _ref.className,
1277
- onSuccess = _ref.onSuccess;
1232
+ className = _ref.className,
1233
+ onSuccess = _ref.onSuccess;
1278
1234
  var url = useUrlGenerator();
1279
-
1280
1235
  var _useAuth = useAuth(),
1281
- login = _useAuth.login;
1282
-
1236
+ login = _useAuth.login;
1283
1237
  var postForm = useCallback(function (action, _ref2) {
1284
1238
  var email = _ref2.email,
1285
- password = _ref2.password;
1239
+ password = _ref2.password;
1286
1240
  return login(email, password);
1287
1241
  }, [login]);
1288
-
1289
1242
  var _useForm = useForm({
1290
- fields: formFields,
1291
- postForm: postForm,
1292
- onComplete: onSuccess
1293
- }),
1294
- value = _useForm.value,
1295
- setValue = _useForm.setValue,
1296
- fields = _useForm.fields,
1297
- onSubmit = _useForm.onSubmit,
1298
- status = _useForm.status,
1299
- generalError = _useForm.generalError,
1300
- errors = _useForm.errors;
1301
-
1243
+ fields: formFields,
1244
+ postForm: postForm,
1245
+ onComplete: onSuccess
1246
+ }),
1247
+ value = _useForm.value,
1248
+ setValue = _useForm.setValue,
1249
+ fields = _useForm.fields,
1250
+ onSubmit = _useForm.onSubmit,
1251
+ status = _useForm.status,
1252
+ generalError = _useForm.generalError,
1253
+ errors = _useForm.errors;
1302
1254
  var NormalForm = useFormComponent('normal');
1303
1255
  return /*#__PURE__*/React.createElement(NormalForm, {
1304
1256
  action: url('auth.login'),
@@ -1320,7 +1272,6 @@ var LoginForm = function LoginForm(_ref) {
1320
1272
  })
1321
1273
  });
1322
1274
  };
1323
-
1324
1275
  LoginForm.propTypes = propTypes$5;
1325
1276
  LoginForm.defaultProps = defaultProps$5;
1326
1277
 
@@ -1331,17 +1282,13 @@ var propTypes$4 = {
1331
1282
  var defaultProps$4 = {
1332
1283
  fullscreen: false
1333
1284
  };
1334
-
1335
1285
  var GuestLayout = function GuestLayout(_ref) {
1336
1286
  var _classNames;
1337
-
1338
1287
  var fullscreen = _ref.fullscreen,
1339
- children = _ref.children;
1340
-
1288
+ children = _ref.children;
1341
1289
  var _usePanneauColorSchem = usePanneauColorScheme(),
1342
- background = _usePanneauColorSchem.background,
1343
- text = _usePanneauColorSchem.text;
1344
-
1290
+ background = _usePanneauColorSchem.background,
1291
+ text = _usePanneauColorSchem.text;
1345
1292
  return /*#__PURE__*/React.createElement("div", {
1346
1293
  className: classNames({
1347
1294
  'd-flex flex-column min-vh-100': fullscreen
@@ -1358,14 +1305,12 @@ var GuestLayout = function GuestLayout(_ref) {
1358
1305
  })
1359
1306
  }, children)));
1360
1307
  };
1361
-
1362
1308
  GuestLayout.propTypes = propTypes$4;
1363
1309
  GuestLayout.defaultProps = defaultProps$4;
1364
1310
 
1365
1311
  /* eslint-disable react/jsx-props-no-spreading */
1366
1312
  var propTypes$3 = {};
1367
1313
  var defaultProps$3 = {};
1368
-
1369
1314
  var LoginPage = function LoginPage() {
1370
1315
  var route = useUrlGenerator();
1371
1316
  var onSuccess = useCallback(function () {
@@ -1391,7 +1336,6 @@ var LoginPage = function LoginPage() {
1391
1336
  onSuccess: onSuccess
1392
1337
  })))));
1393
1338
  };
1394
-
1395
1339
  LoginPage.propTypes = propTypes$3;
1396
1340
  LoginPage.defaultProps = defaultProps$3;
1397
1341
 
@@ -1494,7 +1438,6 @@ var propTypes$2 = {
1494
1438
  var defaultProps$2 = {
1495
1439
  statusCode: null
1496
1440
  };
1497
-
1498
1441
  var ErrorPage = function ErrorPage(_ref) {
1499
1442
  var statusCode = _ref.statusCode;
1500
1443
  return /*#__PURE__*/React.createElement(GuestLayout, {
@@ -1507,47 +1450,44 @@ var ErrorPage = function ErrorPage(_ref) {
1507
1450
  className: "col-12 col-sm-8 col-md-6"
1508
1451
  }, /*#__PURE__*/React.createElement("h1", null, /*#__PURE__*/React.createElement(Label, null, messages["title".concat(statusCode || 404)])), /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement(Label, null, messages["description".concat(statusCode || 404)]))))));
1509
1452
  };
1510
-
1511
1453
  ErrorPage.propTypes = propTypes$2;
1512
1454
  ErrorPage.defaultProps = defaultProps$2;
1513
1455
 
1514
- var _excluded = ["path", "component", "exact"];
1515
-
1456
+ var _excluded$1 = ["path", "component", "exact"];
1516
1457
  var createResourceRoutes = function createResourceRoutes(resource, _ref) {
1517
1458
  var route = _ref.route,
1518
- componentsManager = _ref.componentsManager,
1519
- _ref$pages = _ref.pages,
1520
- pages = _ref$pages === void 0 ? {} : _ref$pages;
1459
+ componentsManager = _ref.componentsManager,
1460
+ _ref$pages = _ref.pages,
1461
+ pages = _ref$pages === void 0 ? {} : _ref$pages;
1521
1462
  var resourceId = resource.id,
1522
- _resource$pages = resource.pages,
1523
- resourcePages = _resource$pages === void 0 ? {} : _resource$pages,
1524
- _resource$extraRoutes = resource.extraRoutes,
1525
- extraRoutes = _resource$extraRoutes === void 0 ? [] : _resource$extraRoutes; // Load custom pages from resource
1463
+ _resource$pages = resource.pages,
1464
+ resourcePages = _resource$pages === void 0 ? {} : _resource$pages,
1465
+ _resource$extraRoutes = resource.extraRoutes,
1466
+ extraRoutes = _resource$extraRoutes === void 0 ? [] : _resource$extraRoutes;
1526
1467
 
1468
+ // Load custom pages from resource
1527
1469
  var _ref2 = pages || {},
1528
- _ref2$index = _ref2.index,
1529
- indexPage = _ref2$index === void 0 ? null : _ref2$index,
1530
- _ref2$show = _ref2.show,
1531
- showPage = _ref2$show === void 0 ? null : _ref2$show,
1532
- _ref2$create = _ref2.create,
1533
- createPage = _ref2$create === void 0 ? null : _ref2$create,
1534
- _ref2$edit = _ref2.edit,
1535
- editPage = _ref2$edit === void 0 ? null : _ref2$edit,
1536
- _ref2$delete = _ref2["delete"],
1537
- deletePage = _ref2$delete === void 0 ? null : _ref2$delete;
1538
-
1470
+ _ref2$index = _ref2.index,
1471
+ indexPage = _ref2$index === void 0 ? null : _ref2$index,
1472
+ _ref2$show = _ref2.show,
1473
+ showPage = _ref2$show === void 0 ? null : _ref2$show,
1474
+ _ref2$create = _ref2.create,
1475
+ createPage = _ref2$create === void 0 ? null : _ref2$create,
1476
+ _ref2$edit = _ref2.edit,
1477
+ editPage = _ref2$edit === void 0 ? null : _ref2$edit,
1478
+ _ref2$delete = _ref2["delete"],
1479
+ deletePage = _ref2$delete === void 0 ? null : _ref2$delete;
1539
1480
  var _ref3 = resourcePages || {},
1540
- _ref3$index = _ref3.index,
1541
- resourceIndexPage = _ref3$index === void 0 ? null : _ref3$index,
1542
- _ref3$show = _ref3.show,
1543
- resourceShowPage = _ref3$show === void 0 ? null : _ref3$show,
1544
- _ref3$create = _ref3.create,
1545
- resourceCreatePage = _ref3$create === void 0 ? null : _ref3$create,
1546
- _ref3$edit = _ref3.edit,
1547
- resourceEditPage = _ref3$edit === void 0 ? null : _ref3$edit,
1548
- _ref3$delete = _ref3["delete"],
1549
- resourceDeletePage = _ref3$delete === void 0 ? null : _ref3$delete;
1550
-
1481
+ _ref3$index = _ref3.index,
1482
+ resourceIndexPage = _ref3$index === void 0 ? null : _ref3$index,
1483
+ _ref3$show = _ref3.show,
1484
+ resourceShowPage = _ref3$show === void 0 ? null : _ref3$show,
1485
+ _ref3$create = _ref3.create,
1486
+ resourceCreatePage = _ref3$create === void 0 ? null : _ref3$create,
1487
+ _ref3$edit = _ref3.edit,
1488
+ resourceEditPage = _ref3$edit === void 0 ? null : _ref3$edit,
1489
+ _ref3$delete = _ref3["delete"],
1490
+ resourceDeletePage = _ref3$delete === void 0 ? null : _ref3$delete;
1551
1491
  var ResourceIndexComponent = componentsManager.getComponent(resourceIndexPage === null || resourceIndexPage === void 0 ? void 0 : resourceIndexPage.component) || componentsManager.getComponent(indexPage === null || indexPage === void 0 ? void 0 : indexPage.component) || ResourceIndexPage;
1552
1492
  var ResourceShowComponent = componentsManager.getComponent(resourceShowPage === null || resourceShowPage === void 0 ? void 0 : resourceShowPage.component) || componentsManager.getComponent(showPage === null || showPage === void 0 ? void 0 : showPage.component) || ResourceShowPage;
1553
1493
  var ResourceCreateComponent = componentsManager.getComponent(resourceCreatePage === null || resourceCreatePage === void 0 ? void 0 : resourceCreatePage.component) || componentsManager.getComponent(createPage === null || createPage === void 0 ? void 0 : createPage.component) || ResourceCreatePage;
@@ -1598,11 +1538,10 @@ var createResourceRoutes = function createResourceRoutes(resource, _ref) {
1598
1538
  })
1599
1539
  })].concat(_toConsumableArray(extraRoutes.map(function (_ref4) {
1600
1540
  var path = _ref4.path,
1601
- component = _ref4.component,
1602
- _ref4$exact = _ref4.exact,
1603
- exact = _ref4$exact === void 0 ? true : _ref4$exact,
1604
- pageProps = _objectWithoutProperties(_ref4, _excluded);
1605
-
1541
+ component = _ref4.component,
1542
+ _ref4$exact = _ref4.exact,
1543
+ exact = _ref4$exact === void 0 ? true : _ref4$exact,
1544
+ pageProps = _objectWithoutProperties(_ref4, _excluded$1);
1606
1545
  var RouteComponent = componentsManager.getComponent(component);
1607
1546
  return RouteComponent !== null ? /*#__PURE__*/React.createElement(Route, {
1608
1547
  key: "route-".concat(path),
@@ -1615,30 +1554,28 @@ var createResourceRoutes = function createResourceRoutes(resource, _ref) {
1615
1554
  })));
1616
1555
  };
1617
1556
 
1557
+ var _excluded = ["home", "login", "account", "error", "index", "show", "create", "edit", "delete"],
1558
+ _excluded2 = ["path", "route", "component", "exact"];
1618
1559
  var propTypes$1 = {
1619
1560
  statusCode: PropTypes.statusCode
1620
1561
  };
1621
1562
  var defaultProps$1 = {
1622
1563
  statusCode: null
1623
1564
  };
1624
-
1625
1565
  var PanneauRoutes = function PanneauRoutes(_ref) {
1626
1566
  var initialStatusCode = _ref.statusCode;
1627
1567
  var routes = useRoutes();
1628
-
1629
1568
  var _useLocation = useLocation(),
1630
- pathname = _useLocation.pathname;
1631
-
1569
+ pathname = _useLocation.pathname;
1632
1570
  var _useState = useState({
1633
- statusCode: initialStatusCode,
1634
- pathname: pathname
1635
- }),
1636
- _useState2 = _slicedToArray(_useState, 2),
1637
- _useState2$ = _useState2[0],
1638
- statusCode = _useState2$.statusCode,
1639
- lastPathname = _useState2$.pathname,
1640
- setInitialRequest = _useState2[1];
1641
-
1571
+ statusCode: initialStatusCode,
1572
+ pathname: pathname
1573
+ }),
1574
+ _useState2 = _slicedToArray(_useState, 2),
1575
+ _useState2$ = _useState2[0],
1576
+ statusCode = _useState2$.statusCode,
1577
+ lastPathname = _useState2$.pathname,
1578
+ setInitialRequest = _useState2[1];
1642
1579
  var user = useUser();
1643
1580
  var route = useUrlGenerator();
1644
1581
  var resources = usePanneauResources();
@@ -1650,34 +1587,59 @@ var PanneauRoutes = function PanneauRoutes(_ref) {
1650
1587
  statusCode: null
1651
1588
  });
1652
1589
  }
1653
- }, [pathname, lastPathname]); // Custom Pages
1590
+ }, [pathname, lastPathname]);
1654
1591
 
1592
+ // Custom Pages
1655
1593
  var _usePanneau = usePanneau(),
1656
- _usePanneau$pages = _usePanneau.pages,
1657
- pages = _usePanneau$pages === void 0 ? null : _usePanneau$pages;
1658
-
1594
+ _usePanneau$pages = _usePanneau.pages,
1595
+ pages = _usePanneau$pages === void 0 ? null : _usePanneau$pages,
1596
+ routesDefinition = _usePanneau.routes;
1659
1597
  var _ref2 = pages || {},
1660
- _ref2$home = _ref2.home,
1661
- homePage = _ref2$home === void 0 ? null : _ref2$home,
1662
- _ref2$login = _ref2.login,
1663
- loginPage = _ref2$login === void 0 ? null : _ref2$login,
1664
- _ref2$account = _ref2.account,
1665
- accountPage = _ref2$account === void 0 ? null : _ref2$account,
1666
- _ref2$error = _ref2.error,
1667
- errorPage = _ref2$error === void 0 ? null : _ref2$error;
1668
-
1598
+ _ref2$home = _ref2.home,
1599
+ homePage = _ref2$home === void 0 ? null : _ref2$home,
1600
+ _ref2$login = _ref2.login,
1601
+ loginPage = _ref2$login === void 0 ? null : _ref2$login,
1602
+ _ref2$account = _ref2.account,
1603
+ accountPage = _ref2$account === void 0 ? null : _ref2$account,
1604
+ _ref2$error = _ref2.error,
1605
+ errorPage = _ref2$error === void 0 ? null : _ref2$error;
1606
+ _ref2.index;
1607
+ _ref2.show;
1608
+ _ref2.create;
1609
+ _ref2.edit;
1610
+ _ref2["delete"];
1611
+ var otherPages = _objectWithoutProperties(_ref2, _excluded);
1612
+ var customRoutes = useMemo(function () {
1613
+ return [].concat(_toConsumableArray(Object.keys(routesDefinition).filter(function (key) {
1614
+ return key.match(/^(resources\.|auth\.)/) === null && key !== 'home' && key !== 'account';
1615
+ }).filter(function (key) {
1616
+ var routeDef = routesDefinition[key];
1617
+ return isObject(routeDef) && typeof routeDef.component !== 'undefined' && typeof routeDef.path !== 'undefined';
1618
+ }).map(function (key) {
1619
+ return routesDefinition[key];
1620
+ })), _toConsumableArray(Object.keys(otherPages).map(function (key) {
1621
+ return otherPages[key];
1622
+ }).filter(function (_ref3) {
1623
+ var _ref3$path = _ref3.path,
1624
+ path = _ref3$path === void 0 ? null : _ref3$path,
1625
+ _ref3$route = _ref3.route,
1626
+ pageRoute = _ref3$route === void 0 ? null : _ref3$route;
1627
+ return path !== null || pageRoute !== null;
1628
+ })));
1629
+ }, [routesDefinition, otherPages]);
1669
1630
  var HomeComponent = componentsManager.getComponent(homePage === null || homePage === void 0 ? void 0 : homePage.component) || HomePage;
1670
1631
  var LoginComponent = componentsManager.getComponent(loginPage === null || loginPage === void 0 ? void 0 : loginPage.component) || LoginPage;
1671
1632
  var AccountComponent = componentsManager.getComponent(accountPage === null || accountPage === void 0 ? void 0 : accountPage.component) || AccountPage;
1672
- var ErrorComponent = componentsManager.getComponent(errorPage === null || errorPage === void 0 ? void 0 : errorPage.component) || ErrorPage; // If there is an error status code
1633
+ var ErrorComponent = componentsManager.getComponent(errorPage === null || errorPage === void 0 ? void 0 : errorPage.component) || ErrorPage;
1673
1634
 
1635
+ // If there is an error status code
1674
1636
  if (statusCode !== null) {
1675
1637
  return /*#__PURE__*/React.createElement(ErrorComponent, {
1676
1638
  statusCode: statusCode
1677
1639
  });
1678
- } // If user is unauthenticated
1679
-
1640
+ }
1680
1641
 
1642
+ // If user is unauthenticated
1681
1643
  if (user === null) {
1682
1644
  return /*#__PURE__*/React.createElement(Routes, null, /*#__PURE__*/React.createElement(Route, {
1683
1645
  path: routes['auth.login'],
@@ -1690,17 +1652,16 @@ var PanneauRoutes = function PanneauRoutes(_ref) {
1690
1652
  replace: true
1691
1653
  })
1692
1654
  }));
1693
- } // Normal routes
1694
-
1655
+ }
1695
1656
 
1657
+ // Normal routes
1696
1658
  return /*#__PURE__*/React.createElement(Routes, null, /*#__PURE__*/React.createElement(Route, {
1697
1659
  path: routes.home,
1698
1660
  exact: true,
1699
1661
  element: /*#__PURE__*/React.createElement(HomeComponent, null)
1700
1662
  }), resources.map(function (resource) {
1701
- var _ref3 = resource || {},
1702
- resourceId = _ref3.id;
1703
-
1663
+ var _ref4 = resource || {},
1664
+ resourceId = _ref4.id;
1704
1665
  return /*#__PURE__*/React.createElement(Fragment, {
1705
1666
  key: "resource-".concat(resourceId)
1706
1667
  }, createResourceRoutes(resource, {
@@ -1712,12 +1673,26 @@ var PanneauRoutes = function PanneauRoutes(_ref) {
1712
1673
  path: routes.account,
1713
1674
  exact: true,
1714
1675
  element: /*#__PURE__*/React.createElement(AccountComponent, null)
1676
+ }), customRoutes.map(function (_ref5) {
1677
+ var _ref5$path = _ref5.path,
1678
+ path = _ref5$path === void 0 ? null : _ref5$path,
1679
+ _ref5$route = _ref5.route,
1680
+ pageRoute = _ref5$route === void 0 ? null : _ref5$route,
1681
+ component = _ref5.component,
1682
+ _ref5$exact = _ref5.exact,
1683
+ exact = _ref5$exact === void 0 ? true : _ref5$exact,
1684
+ props = _objectWithoutProperties(_ref5, _excluded2);
1685
+ var PageComponent = componentsManager.getComponent(component);
1686
+ return PageComponent !== null ? /*#__PURE__*/React.createElement(Route, {
1687
+ path: path || routes[pageRoute],
1688
+ exact: exact,
1689
+ element: /*#__PURE__*/React.createElement(PageComponent, props)
1690
+ }) : null;
1715
1691
  }), /*#__PURE__*/React.createElement(Route, {
1716
1692
  path: "*",
1717
1693
  element: /*#__PURE__*/React.createElement(ErrorComponent, null)
1718
1694
  }));
1719
1695
  };
1720
-
1721
1696
  PanneauRoutes.propTypes = propTypes$1;
1722
1697
  PanneauRoutes.defaultProps = defaultProps$1;
1723
1698
 
@@ -1738,41 +1713,40 @@ var defaultProps = {
1738
1713
  uppy: null,
1739
1714
  statusCode: null
1740
1715
  };
1741
-
1742
1716
  var Container = function Container(_ref) {
1743
1717
  var definition = _ref.definition,
1744
- components = _ref.components,
1745
- user = _ref.user,
1746
- memoryRouter = _ref.memoryRouter,
1747
- baseUrl = _ref.baseUrl,
1748
- uppy = _ref.uppy,
1749
- statusCode = _ref.statusCode;
1750
- var _definition$intl = definition.intl;
1751
- _definition$intl = _definition$intl === void 0 ? {} : _definition$intl;
1752
- var _definition$intl$loca = _definition$intl.locale,
1753
- locale = _definition$intl$loca === void 0 ? 'en' : _definition$intl$loca,
1754
- _definition$intl$loca2 = _definition$intl.locales,
1755
- locales = _definition$intl$loca2 === void 0 ? [] : _definition$intl$loca2,
1756
- _definition$routes = definition.routes,
1757
- routes = _definition$routes === void 0 ? {} : _definition$routes,
1758
- _definition$settings = definition.settings;
1759
- _definition$settings = _definition$settings === void 0 ? {} : _definition$settings;
1760
- var _definition$settings$ = _definition$settings.memoryRouter,
1761
- usesMemoryRouter = _definition$settings$ === void 0 ? false : _definition$settings$;
1718
+ components = _ref.components,
1719
+ user = _ref.user,
1720
+ memoryRouter = _ref.memoryRouter,
1721
+ baseUrl = _ref.baseUrl,
1722
+ uppy = _ref.uppy,
1723
+ statusCode = _ref.statusCode;
1724
+ var _definition$intl = definition.intl,
1725
+ _definition$intl2 = _definition$intl === void 0 ? {} : _definition$intl,
1726
+ _definition$intl2$loc = _definition$intl2.locale,
1727
+ locale = _definition$intl2$loc === void 0 ? 'en' : _definition$intl2$loc,
1728
+ _definition$intl2$loc2 = _definition$intl2.locales,
1729
+ locales = _definition$intl2$loc2 === void 0 ? [] : _definition$intl2$loc2,
1730
+ _definition$routes = definition.routes,
1731
+ routes = _definition$routes === void 0 ? {} : _definition$routes,
1732
+ _definition$settings = definition.settings,
1733
+ _definition$settings2 = _definition$settings === void 0 ? {} : _definition$settings,
1734
+ _definition$settings3 = _definition$settings2.memoryRouter,
1735
+ usesMemoryRouter = _definition$settings3 === void 0 ? false : _definition$settings3;
1762
1736
  var Router = memoryRouter || usesMemoryRouter ? MemoryRouter : BrowserRouter;
1763
1737
  var extraMessages = useMemo(function () {
1764
- var _definition$intl2 = definition.intl;
1765
- _definition$intl2 = _definition$intl2 === void 0 ? {} : _definition$intl2;
1766
- var _definition$intl2$mes = _definition$intl2.messages,
1767
- messages = _definition$intl2$mes === void 0 ? null : _definition$intl2$mes,
1768
- _definition$resources = definition.resources,
1769
- resources = _definition$resources === void 0 ? [] : _definition$resources;
1738
+ var _definition$intl3 = definition.intl,
1739
+ _definition$intl4 = _definition$intl3 === void 0 ? {} : _definition$intl3,
1740
+ _definition$intl4$mes = _definition$intl4.messages,
1741
+ messages = _definition$intl4$mes === void 0 ? null : _definition$intl4$mes,
1742
+ _definition$resources = definition.resources,
1743
+ resources = _definition$resources === void 0 ? [] : _definition$resources;
1770
1744
  return _objectSpread(_objectSpread({}, messages), resources.reduce(function (allMessages, _ref2) {
1771
1745
  var id = _ref2.id,
1772
- _ref2$intl = _ref2.intl;
1773
- _ref2$intl = _ref2$intl === void 0 ? {} : _ref2$intl;
1774
- var _ref2$intl$messages = _ref2$intl.messages,
1775
- resourceMessages = _ref2$intl$messages === void 0 ? {} : _ref2$intl$messages;
1746
+ _ref2$intl = _ref2.intl,
1747
+ _ref2$intl2 = _ref2$intl === void 0 ? {} : _ref2$intl,
1748
+ _ref2$intl2$messages = _ref2$intl2.messages,
1749
+ resourceMessages = _ref2$intl2$messages === void 0 ? {} : _ref2$intl2$messages;
1776
1750
  return _objectSpread(_objectSpread({}, allMessages), Object.keys(resourceMessages).reduce(function (allResourceMessages, key) {
1777
1751
  return _objectSpread(_objectSpread({}, allResourceMessages), {}, _defineProperty({}, "resources.".concat(id, ".").concat(key), resourceMessages[key]));
1778
1752
  }, {}));
@@ -1804,7 +1778,6 @@ var Container = function Container(_ref) {
1804
1778
  statusCode: statusCode
1805
1779
  }))))))))))))));
1806
1780
  };
1807
-
1808
1781
  Container.propTypes = propTypes;
1809
1782
  Container.defaultProps = defaultProps;
1810
1783