@panneau/app 1.0.3-alpha.0 → 1.0.3-alpha.10
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/assets/css/styles.css +3 -3
- package/es/index.js +474 -503
- package/lib/index.js +477 -503
- package/package.json +26 -26
- package/scss/styles.scss +8 -1
package/lib/index.js
CHANGED
@@ -18,17 +18,20 @@ var FiltersProvider = require('@panneau/filters');
|
|
18
18
|
var FormsProvider = require('@panneau/forms');
|
19
19
|
var intl = require('@panneau/intl');
|
20
20
|
var ListsProvider = require('@panneau/lists');
|
21
|
-
var
|
22
|
-
var utils = require('@panneau/core/utils');
|
21
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
23
22
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
23
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
24
|
+
var isObject = require('lodash/isObject');
|
24
25
|
var queryString = require('query-string');
|
25
26
|
var reactIntl = require('react-intl');
|
26
27
|
var hooks = require('@panneau/core/hooks');
|
28
|
+
var utils = require('@panneau/core/utils');
|
27
29
|
var classNames = require('classnames');
|
28
30
|
var Button = require('@panneau/element-button');
|
29
31
|
var Form = require('@panneau/element-form');
|
30
|
-
var
|
32
|
+
var isArray = require('lodash/isArray');
|
31
33
|
var Menu = require('@panneau/element-menu');
|
34
|
+
var Navbar = require('@panneau/element-navbar');
|
32
35
|
var Label = require('@panneau/element-label');
|
33
36
|
var isString = require('lodash/isString');
|
34
37
|
var Alert = require('@panneau/element-alert');
|
@@ -50,13 +53,16 @@ var FieldsProvider__default = /*#__PURE__*/_interopDefaultLegacy(FieldsProvider)
|
|
50
53
|
var FiltersProvider__default = /*#__PURE__*/_interopDefaultLegacy(FiltersProvider);
|
51
54
|
var FormsProvider__default = /*#__PURE__*/_interopDefaultLegacy(FormsProvider);
|
52
55
|
var ListsProvider__default = /*#__PURE__*/_interopDefaultLegacy(ListsProvider);
|
53
|
-
var
|
56
|
+
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
54
57
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
58
|
+
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
59
|
+
var isObject__default = /*#__PURE__*/_interopDefaultLegacy(isObject);
|
55
60
|
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
56
61
|
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
57
62
|
var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
|
58
|
-
var
|
63
|
+
var isArray__default = /*#__PURE__*/_interopDefaultLegacy(isArray);
|
59
64
|
var Menu__default = /*#__PURE__*/_interopDefaultLegacy(Menu);
|
65
|
+
var Navbar__default = /*#__PURE__*/_interopDefaultLegacy(Navbar);
|
60
66
|
var Label__default = /*#__PURE__*/_interopDefaultLegacy(Label);
|
61
67
|
var isString__default = /*#__PURE__*/_interopDefaultLegacy(isString);
|
62
68
|
var Alert__default = /*#__PURE__*/_interopDefaultLegacy(Alert);
|
@@ -65,7 +71,7 @@ var Pagination__default = /*#__PURE__*/_interopDefaultLegacy(Pagination);
|
|
65
71
|
var _toPropertyKey__default = /*#__PURE__*/_interopDefaultLegacy(_toPropertyKey);
|
66
72
|
var FormGroup__default = /*#__PURE__*/_interopDefaultLegacy(FormGroup);
|
67
73
|
|
68
|
-
var _excluded$
|
74
|
+
var _excluded$6 = ["resource", "action", "previous", "status", "value", "onSubmit", "errors", "generalError", "className"];
|
69
75
|
var propTypes$m = {
|
70
76
|
resource: core.PropTypes.resource.isRequired,
|
71
77
|
action: PropTypes__default["default"].string,
|
@@ -90,23 +96,20 @@ var defaultProps$m = {
|
|
90
96
|
errors: null,
|
91
97
|
className: null
|
92
98
|
};
|
93
|
-
|
94
99
|
var DeleteForm = function DeleteForm(_ref) {
|
95
100
|
var resource = _ref.resource,
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
101
|
+
action = _ref.action,
|
102
|
+
previous = _ref.previous;
|
103
|
+
_ref.status;
|
104
|
+
var value = _ref.value,
|
105
|
+
onSubmit = _ref.onSubmit;
|
106
|
+
_ref.errors;
|
107
|
+
var generalError = _ref.generalError,
|
108
|
+
className = _ref.className,
|
109
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$6);
|
106
110
|
var _ref2 = value || {},
|
107
|
-
|
108
|
-
|
109
|
-
|
111
|
+
_ref2$id = _ref2.id,
|
112
|
+
id = _ref2$id === void 0 ? null : _ref2$id;
|
110
113
|
var resourceValues = intl.useResourceValues(resource, {
|
111
114
|
id: id
|
112
115
|
});
|
@@ -174,11 +177,10 @@ var DeleteForm = function DeleteForm(_ref) {
|
|
174
177
|
}]
|
175
178
|
})))));
|
176
179
|
};
|
177
|
-
|
178
180
|
DeleteForm.propTypes = propTypes$m;
|
179
181
|
DeleteForm.defaultProps = defaultProps$m;
|
180
182
|
|
181
|
-
var _excluded$
|
183
|
+
var _excluded$5 = ["component", "resource", "onSuccess", "item", "type", "isDelete"];
|
182
184
|
var propTypes$l = {
|
183
185
|
component: PropTypes__default["default"].string,
|
184
186
|
resource: core.PropTypes.resource.isRequired,
|
@@ -195,129 +197,120 @@ var defaultProps$l = {
|
|
195
197
|
onSuccess: null,
|
196
198
|
isDelete: false
|
197
199
|
};
|
198
|
-
|
199
200
|
var ResourceForm = function ResourceForm(_ref) {
|
200
201
|
var component = _ref.component,
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
202
|
+
resource = _ref.resource,
|
203
|
+
onSuccess = _ref.onSuccess,
|
204
|
+
item = _ref.item,
|
205
|
+
type = _ref.type,
|
206
|
+
isDelete = _ref.isDelete,
|
207
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$5);
|
208
208
|
var locales = contexts.useLocales();
|
209
209
|
var FormComponents = contexts.useFormsComponents();
|
210
210
|
var _resource$fields = resource.fields,
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
211
|
+
resourceFields = _resource$fields === void 0 ? [] : _resource$fields,
|
212
|
+
_resource$types = resource.types,
|
213
|
+
resourceTypes = _resource$types === void 0 ? [] : _resource$types,
|
214
|
+
forms = resource.forms;
|
215
215
|
var resourceType = type !== null ? resourceTypes.find(function (it) {
|
216
216
|
return it.id === type;
|
217
217
|
}) || null : null;
|
218
|
-
|
219
218
|
var _ref2 = resourceType || {},
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
var isCreate = item === null || !item.id; // Pick fields from resource root or form
|
219
|
+
_ref2$fields = _ref2.fields,
|
220
|
+
resourceTypeFields = _ref2$fields === void 0 ? null : _ref2$fields;
|
221
|
+
var isCreate = item === null || !item.id;
|
224
222
|
|
223
|
+
// Pick fields from resource root or form
|
225
224
|
var _ref3 = forms || {},
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
225
|
+
_ref3$default = _ref3["default"],
|
226
|
+
defaultForm = _ref3$default === void 0 ? null : _ref3$default,
|
227
|
+
_ref3$create = _ref3.create,
|
228
|
+
createForm = _ref3$create === void 0 ? null : _ref3$create,
|
229
|
+
_ref3$edit = _ref3.edit,
|
230
|
+
editForm = _ref3$edit === void 0 ? null : _ref3$edit,
|
231
|
+
_ref3$delete = _ref3["delete"],
|
232
|
+
deleteForm = _ref3$delete === void 0 ? null : _ref3$delete;
|
235
233
|
var _ref4 = defaultForm || {},
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
234
|
+
_ref4$fields = _ref4.fields,
|
235
|
+
defaultFields = _ref4$fields === void 0 ? null : _ref4$fields,
|
236
|
+
defaultComponent = _ref4.component;
|
240
237
|
var createOrEditSource = isCreate ? createForm || {} : editForm || {};
|
241
|
-
|
242
238
|
var _ref5 = isDelete ? deleteForm || {} : createOrEditSource || {},
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
239
|
+
_ref5$fields = _ref5.fields,
|
240
|
+
formFields = _ref5$fields === void 0 ? null : _ref5$fields,
|
241
|
+
_ref5$component = _ref5.component,
|
242
|
+
formComponent = _ref5$component === void 0 ? null : _ref5$component;
|
248
243
|
var finalFields = React.useMemo(function () {
|
249
244
|
return (formFields || defaultFields || resourceTypeFields || resourceFields).filter(function (_ref6) {
|
250
|
-
var _ref6$settings = _ref6.settings
|
251
|
-
|
252
|
-
|
253
|
-
|
245
|
+
var _ref6$settings = _ref6.settings,
|
246
|
+
_ref6$settings2 = _ref6$settings === void 0 ? {} : _ref6$settings,
|
247
|
+
_ref6$settings2$hidde = _ref6$settings2.hiddenInForm,
|
248
|
+
hiddenInForm = _ref6$settings2$hidde === void 0 ? false : _ref6$settings2$hidde;
|
254
249
|
return !hiddenInForm;
|
255
250
|
});
|
256
|
-
}, [formFields, defaultFields, resourceTypeFields, resourceFields]);
|
251
|
+
}, [formFields, defaultFields, resourceTypeFields, resourceFields]);
|
257
252
|
|
253
|
+
// Form routes
|
258
254
|
var resourceRoute = hooks.useResourceUrlGenerator(resource);
|
259
|
-
|
260
255
|
var _useResourceStore = data.useResourceStore(resource),
|
261
|
-
|
262
|
-
|
256
|
+
store = _useResourceStore.store;
|
263
257
|
var _useResourceUpdate = data.useResourceUpdate(resource, item != null ? item.id : null),
|
264
|
-
|
265
|
-
|
258
|
+
update = _useResourceUpdate.update;
|
266
259
|
var _useResourceDestroy = data.useResourceDestroy(resource, item != null ? item.id : null),
|
267
|
-
|
268
|
-
|
260
|
+
destroy = _useResourceDestroy.destroy;
|
269
261
|
|
262
|
+
// Post actions
|
270
263
|
var postAction = isCreate ? store : update;
|
271
264
|
var postForm = React.useCallback(function (action, data) {
|
272
265
|
return isDelete ? destroy() : postAction(data);
|
273
|
-
}, [postAction, isDelete, destroy, store, update]);
|
266
|
+
}, [postAction, isDelete, destroy, store, update]);
|
274
267
|
|
268
|
+
// Form state
|
275
269
|
var getInitialValue = React.useCallback(function () {
|
276
270
|
return item !== null ? item : finalFields.reduce(function (defaultValues, _ref7) {
|
277
271
|
var name = _ref7.name,
|
278
|
-
|
279
|
-
|
272
|
+
_ref7$defaultValue = _ref7.defaultValue,
|
273
|
+
defaultValue = _ref7$defaultValue === void 0 ? null : _ref7$defaultValue;
|
280
274
|
return defaultValue !== null ? _objectSpread__default["default"](_objectSpread__default["default"]({}, defaultValues), {}, _defineProperty__default["default"]({}, name, defaultValue)) : defaultValues;
|
281
275
|
}, type !== null ? {
|
282
276
|
type: type
|
283
277
|
} : null);
|
284
278
|
}, [item, type, finalFields]);
|
285
|
-
|
286
279
|
var _useState = React.useState(getInitialValue()),
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
280
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
281
|
+
value = _useState2[0],
|
282
|
+
setValueState = _useState2[1];
|
291
283
|
var setValue = React.useCallback(function (newValue) {
|
292
284
|
// console.log('new value in resource form', newValue); // eslint-disable-line
|
293
285
|
setValueState(newValue);
|
294
286
|
}, [setValueState]);
|
295
|
-
|
296
287
|
var _useForm = hooks.useForm({
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
288
|
+
fields: finalFields,
|
289
|
+
value: value,
|
290
|
+
postForm: postForm,
|
291
|
+
setValue: setValue,
|
292
|
+
onComplete: onSuccess,
|
293
|
+
locales: locales
|
294
|
+
}),
|
295
|
+
fields = _useForm.fields,
|
296
|
+
onSubmit = _useForm.onSubmit,
|
297
|
+
status = _useForm.status,
|
298
|
+
generalError = _useForm.generalError,
|
299
|
+
errors = _useForm.errors;
|
310
300
|
|
301
|
+
// Form action
|
311
302
|
var modifyAction = isCreate ? resourceRoute('store') : resourceRoute('update', {
|
312
303
|
id: item.id
|
313
304
|
});
|
314
305
|
var action = isDelete ? resourceRoute('destroy', {
|
315
306
|
id: item.id
|
316
307
|
}) : modifyAction;
|
317
|
-
var defaultFormName = isDelete ? component || formComponent || null : component || formComponent || defaultComponent || 'normal';
|
308
|
+
var defaultFormName = isDelete ? component || formComponent || null : component || formComponent || defaultComponent || 'normal';
|
318
309
|
|
319
|
-
|
310
|
+
// Form component
|
311
|
+
var FormComponent = utils.getComponentFromName(defaultFormName, FormComponents, isDelete ? DeleteForm : component);
|
320
312
|
|
313
|
+
// Lisen to item value change - this is important
|
321
314
|
React.useEffect(function () {
|
322
315
|
// console.log('get initial value from the top'); // eslint-disable-line
|
323
316
|
setValue(getInitialValue());
|
@@ -339,7 +332,6 @@ var ResourceForm = function ResourceForm(_ref) {
|
|
339
332
|
onChange: setValue
|
340
333
|
})));
|
341
334
|
};
|
342
|
-
|
343
335
|
ResourceForm.propTypes = propTypes$l;
|
344
336
|
ResourceForm.defaultProps = defaultProps$l;
|
345
337
|
|
@@ -353,11 +345,10 @@ var defaultProps$k = {
|
|
353
345
|
itemClassName: null,
|
354
346
|
linkClassName: null
|
355
347
|
};
|
356
|
-
|
357
348
|
var AccountMenu = function AccountMenu(_ref) {
|
358
349
|
var className = _ref.className,
|
359
|
-
|
360
|
-
|
350
|
+
itemClassName = _ref.itemClassName,
|
351
|
+
linkClassName = _ref.linkClassName;
|
361
352
|
var route = contexts.useUrlGenerator();
|
362
353
|
var user = auth.useUser();
|
363
354
|
var logout = auth.useLogout();
|
@@ -376,14 +367,15 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
376
367
|
}]
|
377
368
|
}),
|
378
369
|
href: route('account'),
|
379
|
-
dropdown: [
|
370
|
+
dropdown: [
|
371
|
+
// {
|
380
372
|
// label: (
|
381
373
|
// <FormattedMessage
|
382
374
|
// defaultMessage="Update account"
|
383
375
|
// description="Menu label"
|
384
376
|
// />
|
385
377
|
// ),
|
386
|
-
// href: route('
|
378
|
+
// href: route('account'),
|
387
379
|
// },
|
388
380
|
{
|
389
381
|
label: /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
@@ -404,7 +396,7 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
404
396
|
"value": "Login"
|
405
397
|
}]
|
406
398
|
}),
|
407
|
-
href: route('login')
|
399
|
+
href: route('auth.login')
|
408
400
|
}];
|
409
401
|
}, [user, route, onClickLogout]);
|
410
402
|
return items !== null ? /*#__PURE__*/React__default["default"].createElement(Menu__default["default"], {
|
@@ -415,7 +407,6 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
415
407
|
dropdownAlign: "end"
|
416
408
|
}) : null;
|
417
409
|
};
|
418
|
-
|
419
410
|
AccountMenu.propTypes = propTypes$k;
|
420
411
|
AccountMenu.defaultProps = defaultProps$k;
|
421
412
|
|
@@ -429,23 +420,20 @@ var defaultProps$j = {
|
|
429
420
|
itemClassName: null,
|
430
421
|
linkClassName: null
|
431
422
|
};
|
432
|
-
|
433
423
|
var ResourcesMenu = function ResourcesMenu(_ref) {
|
434
424
|
var className = _ref.className,
|
435
|
-
|
436
|
-
|
437
|
-
|
425
|
+
itemClassName = _ref.itemClassName,
|
426
|
+
linkClassName = _ref.linkClassName;
|
438
427
|
var _useLocation = reactRouter.useLocation(),
|
439
|
-
|
440
|
-
|
428
|
+
pathname = _useLocation.pathname;
|
441
429
|
var resources = contexts.usePanneauResources();
|
442
430
|
var resourceRoute = hooks.useResourceUrlGenerator();
|
443
431
|
var items = React.useMemo(function () {
|
444
432
|
return resources.filter(function (_ref2) {
|
445
|
-
var _ref2$settings = _ref2.settings
|
446
|
-
|
447
|
-
|
448
|
-
|
433
|
+
var _ref2$settings = _ref2.settings,
|
434
|
+
_ref2$settings2 = _ref2$settings === void 0 ? {} : _ref2$settings,
|
435
|
+
_ref2$settings2$hideI = _ref2$settings2.hideInNavbar,
|
436
|
+
hideInNavbar = _ref2$settings2$hideI === void 0 ? false : _ref2$settings2$hideI;
|
449
437
|
return !hideInNavbar;
|
450
438
|
}).map(function (it) {
|
451
439
|
var url = resourceRoute(it, 'index');
|
@@ -464,39 +452,69 @@ var ResourcesMenu = function ResourcesMenu(_ref) {
|
|
464
452
|
linkClassName: linkClassName
|
465
453
|
});
|
466
454
|
};
|
467
|
-
|
468
455
|
ResourcesMenu.propTypes = propTypes$j;
|
469
456
|
ResourcesMenu.defaultProps = defaultProps$j;
|
470
457
|
|
471
|
-
/* eslint-disable react/jsx-props-no-spreading */
|
472
458
|
var propTypes$i = {};
|
473
459
|
var defaultProps$i = {};
|
474
|
-
|
475
460
|
var MainNavbar = function MainNavbar(props) {
|
476
461
|
var _usePanneau = contexts.usePanneau(),
|
477
|
-
|
478
|
-
|
462
|
+
name = _usePanneau.name,
|
463
|
+
_usePanneau$menus = _usePanneau.menus,
|
464
|
+
menus = _usePanneau$menus === void 0 ? null : _usePanneau$menus;
|
465
|
+
var _ref = menus || {},
|
466
|
+
_ref$main = _ref.main,
|
467
|
+
main = _ref$main === void 0 ? null : _ref$main,
|
468
|
+
_ref$guest = _ref.guest,
|
469
|
+
guest = _ref$guest === void 0 ? null : _ref$guest;
|
479
470
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
480
|
-
|
481
|
-
|
471
|
+
background = _usePanneauColorSchem.background;
|
482
472
|
var route = contexts.useUrlGenerator();
|
483
473
|
var user = auth.useUser();
|
474
|
+
var items = React.useMemo(function () {
|
475
|
+
var menuItems = (user !== null ? main : guest) || [];
|
476
|
+
var hasResources = menuItems.indexOf('resources') !== -1;
|
477
|
+
var hasAccount = menuItems.indexOf('account') !== -1;
|
478
|
+
return [!hasResources && user !== null ? 'resources' : null].concat(_toConsumableArray__default["default"](menuItems), [!hasAccount && menuItems.indexOf('separator') === -1 ? 'separator' : null, !hasAccount ? 'account' : null]).filter(function (it) {
|
479
|
+
return it !== null;
|
480
|
+
}).reduce(function (currentItems, item) {
|
481
|
+
if (item === 'resources') {
|
482
|
+
return [].concat(_toConsumableArray__default["default"](currentItems), [/*#__PURE__*/React__default["default"].createElement(ResourcesMenu, {
|
483
|
+
className: "navbar-nav",
|
484
|
+
itemClassName: "nav-item",
|
485
|
+
linkClassName: "nav-link"
|
486
|
+
})]);
|
487
|
+
}
|
488
|
+
if (item === 'account') {
|
489
|
+
return [].concat(_toConsumableArray__default["default"](currentItems), [/*#__PURE__*/React__default["default"].createElement(AccountMenu, {
|
490
|
+
className: "navbar-nav",
|
491
|
+
itemClassName: "nav-item",
|
492
|
+
linkClassName: "nav-link"
|
493
|
+
})]);
|
494
|
+
}
|
495
|
+
if (item === 'separator') {
|
496
|
+
return [].concat(_toConsumableArray__default["default"](currentItems), [/*#__PURE__*/React__default["default"].createElement("span", {
|
497
|
+
className: "ms-auto"
|
498
|
+
})]);
|
499
|
+
}
|
500
|
+
var lastItem = currentItems.length > 0 ? currentItems[currentItems.length - 1] : null;
|
501
|
+
return isArray__default["default"](lastItem) ? [].concat(_toConsumableArray__default["default"](currentItems.slice(0, currentItems.length - 1)), [[].concat(_toConsumableArray__default["default"](lastItem), [item])]) : [].concat(_toConsumableArray__default["default"](currentItems), [[item]]);
|
502
|
+
}, []).map(function (it) {
|
503
|
+
return isArray__default["default"](it) ? /*#__PURE__*/React__default["default"].createElement(Menu__default["default"], {
|
504
|
+
items: it,
|
505
|
+
className: "navbar-nav",
|
506
|
+
itemClassName: "nav-item",
|
507
|
+
linkClassName: "nav-link"
|
508
|
+
}) : it;
|
509
|
+
});
|
510
|
+
}, [main]);
|
484
511
|
return /*#__PURE__*/React__default["default"].createElement(Navbar__default["default"], Object.assign({
|
485
512
|
theme: background
|
486
513
|
}, props), name !== null ? /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, {
|
487
514
|
to: route('home'),
|
488
515
|
className: "navbar-brand"
|
489
|
-
}, name) : null,
|
490
|
-
className: "navbar-nav ml-4",
|
491
|
-
itemClassName: "nav-item",
|
492
|
-
linkClassName: "nav-link"
|
493
|
-
}) : null, /*#__PURE__*/React__default["default"].createElement(AccountMenu, {
|
494
|
-
className: "navbar-nav ms-auto",
|
495
|
-
itemClassName: "nav-item",
|
496
|
-
linkClassName: "nav-link"
|
497
|
-
}));
|
516
|
+
}, name) : null, items);
|
498
517
|
};
|
499
|
-
|
500
518
|
MainNavbar.propTypes = propTypes$i;
|
501
519
|
MainNavbar.defaultProps = defaultProps$i;
|
502
520
|
|
@@ -507,17 +525,13 @@ var propTypes$h = {
|
|
507
525
|
var defaultProps$h = {
|
508
526
|
fullscreen: false
|
509
527
|
};
|
510
|
-
|
511
528
|
var MainLayout = function MainLayout(_ref) {
|
512
529
|
var _ref2;
|
513
|
-
|
514
530
|
var children = _ref.children,
|
515
|
-
|
516
|
-
|
531
|
+
fullscreen = _ref.fullscreen;
|
517
532
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
518
|
-
|
519
|
-
|
520
|
-
|
533
|
+
background = _usePanneauColorSchem.background,
|
534
|
+
text = _usePanneauColorSchem.text;
|
521
535
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
522
536
|
className: classNames__default["default"](['d-flex', 'flex-column', 'min-vh-100'])
|
523
537
|
}, /*#__PURE__*/React__default["default"].createElement(MainNavbar, {
|
@@ -528,7 +542,6 @@ var MainLayout = function MainLayout(_ref) {
|
|
528
542
|
}, _defineProperty__default["default"](_ref2, "bg-".concat(background), background !== null), _defineProperty__default["default"](_ref2, "text-".concat(text), text !== null), _ref2)])
|
529
543
|
}, children));
|
530
544
|
};
|
531
|
-
|
532
545
|
MainLayout.propTypes = propTypes$h;
|
533
546
|
MainLayout.defaultProps = defaultProps$h;
|
534
547
|
|
@@ -546,22 +559,19 @@ var defaultProps$g = {
|
|
546
559
|
className: null,
|
547
560
|
children: null
|
548
561
|
};
|
549
|
-
|
550
562
|
var PageHeader = function PageHeader(_ref) {
|
551
563
|
var _ref2;
|
552
|
-
|
553
564
|
var title = _ref.title,
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
565
|
+
actions = _ref.actions,
|
566
|
+
small = _ref.small,
|
567
|
+
className = _ref.className,
|
568
|
+
children = _ref.children;
|
559
569
|
// TODO: fix page header components
|
560
570
|
// const { components } = usePanneau();
|
561
571
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
562
|
-
|
563
|
-
|
564
|
-
|
572
|
+
text = _usePanneauColorSchem.text,
|
573
|
+
background = _usePanneauColorSchem.background;
|
574
|
+
// console.log('page-header', components); // eslint-disable-line
|
565
575
|
|
566
576
|
var inner = /*#__PURE__*/React__default["default"].createElement("div", {
|
567
577
|
className: "d-flex align-items-center flex-wrap"
|
@@ -580,7 +590,6 @@ var PageHeader = function PageHeader(_ref) {
|
|
580
590
|
className: "col-12 col-md-8 col-lg-7"
|
581
591
|
}, inner)) : inner), children);
|
582
592
|
};
|
583
|
-
|
584
593
|
PageHeader.propTypes = propTypes$g;
|
585
594
|
PageHeader.defaultProps = defaultProps$g;
|
586
595
|
|
@@ -588,25 +597,20 @@ var propTypes$f = {
|
|
588
597
|
resource: core.PropTypes.resource.isRequired
|
589
598
|
};
|
590
599
|
var defaultProps$f = {};
|
591
|
-
|
592
600
|
var ResourceCreatePage = function ResourceCreatePage(_ref) {
|
593
601
|
var resource = _ref.resource;
|
594
602
|
var navigate = reactRouter.useNavigate();
|
595
|
-
|
596
603
|
var _useLocation = reactRouter.useLocation(),
|
597
|
-
|
598
|
-
|
604
|
+
search = _useLocation.search;
|
599
605
|
var resourceRoute = hooks.useResourceUrlGenerator(resource);
|
600
606
|
var onSuccess = React.useCallback(function () {
|
601
607
|
navigate("".concat(resourceRoute('index'), "?created=true"));
|
602
608
|
}, [navigate, resourceRoute]);
|
603
|
-
|
604
609
|
var _useMemo = React.useMemo(function () {
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
+
return queryString.parse(search);
|
611
|
+
}, [search]),
|
612
|
+
_useMemo$type = _useMemo.type,
|
613
|
+
type = _useMemo$type === void 0 ? null : _useMemo$type;
|
610
614
|
var resourceValues = intl.useResourceValues(resource);
|
611
615
|
return /*#__PURE__*/React__default["default"].createElement(contexts.ResourceProvider, {
|
612
616
|
resource: resource
|
@@ -635,35 +639,31 @@ var ResourceCreatePage = function ResourceCreatePage(_ref) {
|
|
635
639
|
onSuccess: onSuccess
|
636
640
|
}))))));
|
637
641
|
};
|
638
|
-
|
639
642
|
ResourceCreatePage.propTypes = propTypes$f;
|
640
643
|
ResourceCreatePage.defaultProps = defaultProps$f;
|
641
644
|
|
645
|
+
// import Button from '../buttons/Button';
|
646
|
+
|
642
647
|
var propTypes$e = {
|
643
648
|
resource: core.PropTypes.resource.isRequired
|
644
649
|
};
|
645
650
|
var defaultProps$e = {};
|
646
|
-
|
647
651
|
var ResourceDeletePage = function ResourceDeletePage(_ref) {
|
648
652
|
var resource = _ref.resource;
|
649
|
-
|
650
653
|
var _useParams = reactRouter.useParams(),
|
651
|
-
|
652
|
-
|
654
|
+
itemId = _useParams.id;
|
653
655
|
var navigate = reactRouter.useNavigate();
|
654
656
|
var resourceRoute = hooks.useResourceUrlGenerator(resource);
|
655
|
-
|
656
657
|
var _useResourceItem = data.useResourceItem(resource, itemId),
|
657
|
-
|
658
|
-
|
658
|
+
item = _useResourceItem.item;
|
659
659
|
var onSuccess = React.useCallback(function () {
|
660
660
|
return navigate("".concat(resourceRoute('index'), "?deleted=true"));
|
661
|
-
}, [navigate, resourceRoute]);
|
661
|
+
}, [navigate, resourceRoute]);
|
662
662
|
|
663
|
+
// Navigate back
|
663
664
|
var _ref2 = history || {},
|
664
|
-
|
665
|
-
|
666
|
-
|
665
|
+
_ref2$entries = _ref2.entries,
|
666
|
+
entries = _ref2$entries === void 0 ? [] : _ref2$entries;
|
667
667
|
var previousEntry = entries !== null && entries.length > 1 ? entries[entries.length - 2] : null;
|
668
668
|
var previous = (previousEntry === null || previousEntry === void 0 ? void 0 : previousEntry.pathname) || null;
|
669
669
|
var resourceValues = intl.useResourceValues(resource);
|
@@ -697,33 +697,28 @@ var ResourceDeletePage = function ResourceDeletePage(_ref) {
|
|
697
697
|
isDelete: true
|
698
698
|
}) : null)))));
|
699
699
|
};
|
700
|
-
|
701
700
|
ResourceDeletePage.propTypes = propTypes$e;
|
702
701
|
ResourceDeletePage.defaultProps = defaultProps$e;
|
703
702
|
|
703
|
+
// import Button from '../buttons/Button';
|
704
|
+
|
704
705
|
var propTypes$d = {
|
705
706
|
resource: core.PropTypes.resource.isRequired
|
706
707
|
};
|
707
708
|
var defaultProps$d = {};
|
708
|
-
|
709
709
|
var ResourceEditPage = function ResourceEditPage(_ref) {
|
710
710
|
var resource = _ref.resource;
|
711
|
-
|
712
711
|
var _useParams = reactRouter.useParams(),
|
713
|
-
|
714
|
-
|
712
|
+
itemId = _useParams.id;
|
715
713
|
var _useResourceItem = data.useResourceItem(resource, itemId),
|
716
|
-
|
717
|
-
|
714
|
+
item = _useResourceItem.item;
|
718
715
|
var _ref2 = item || {},
|
719
|
-
|
720
|
-
|
721
|
-
|
716
|
+
_ref2$type = _ref2.type,
|
717
|
+
type = _ref2$type === void 0 ? null : _ref2$type;
|
722
718
|
var _useState = React.useState(item),
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
719
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
720
|
+
editItem = _useState2[0],
|
721
|
+
setEditItem = _useState2[1];
|
727
722
|
var onSuccess = React.useCallback(function (newItem) {
|
728
723
|
return setEditItem(newItem);
|
729
724
|
}, []);
|
@@ -759,7 +754,6 @@ var ResourceEditPage = function ResourceEditPage(_ref) {
|
|
759
754
|
onSuccess: onSuccess
|
760
755
|
}) : null)))));
|
761
756
|
};
|
762
|
-
|
763
757
|
ResourceEditPage.propTypes = propTypes$d;
|
764
758
|
ResourceEditPage.defaultProps = defaultProps$d;
|
765
759
|
|
@@ -770,38 +764,36 @@ var propTypes$c = {
|
|
770
764
|
var defaultProps$c = {
|
771
765
|
className: null
|
772
766
|
};
|
773
|
-
|
774
767
|
var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
|
775
768
|
var resource = _ref.resource,
|
776
|
-
|
769
|
+
className = _ref.className;
|
777
770
|
var _resource$types = resource.types,
|
778
|
-
|
779
|
-
|
771
|
+
types = _resource$types === void 0 ? null : _resource$types;
|
772
|
+
// const intl = useIntl();
|
780
773
|
var resourceRoute = hooks.useResourceUrlGenerator(resource);
|
781
774
|
var resourceValues = intl.useResourceValues(resource);
|
782
|
-
|
783
775
|
var _useState = React.useState(false),
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
776
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
777
|
+
dropdownOpened = _useState2[0],
|
778
|
+
setDropdownOpened = _useState2[1];
|
788
779
|
var onClickDropdown = React.useCallback(function (e) {
|
789
780
|
e.preventDefault();
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
}, [setDropdownOpened]);
|
781
|
+
e.stopPropagation();
|
782
|
+
setDropdownOpened(!dropdownOpened);
|
783
|
+
}, [setDropdownOpened, dropdownOpened]);
|
794
784
|
var finalTypes = types !== null ? types.filter(function (_ref2) {
|
795
|
-
var _ref2$settings = _ref2.settings
|
796
|
-
|
797
|
-
|
798
|
-
|
785
|
+
var _ref2$settings = _ref2.settings,
|
786
|
+
_ref2$settings2 = _ref2$settings === void 0 ? {} : _ref2$settings,
|
787
|
+
_ref2$settings2$canCr = _ref2$settings2.canCreate,
|
788
|
+
canCreate = _ref2$settings2$canCr === void 0 ? true : _ref2$settings2$canCr;
|
799
789
|
return canCreate;
|
800
790
|
}) : null;
|
801
791
|
var hasMultipleTypes = finalTypes !== null && finalTypes.length > 1;
|
802
792
|
var onDropdownClickOutside = React.useCallback(function () {
|
803
|
-
|
804
|
-
|
793
|
+
if (dropdownOpened) {
|
794
|
+
setDropdownOpened(false);
|
795
|
+
}
|
796
|
+
}, [setDropdownOpened, dropdownOpened]);
|
805
797
|
var button = /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
806
798
|
href: !hasMultipleTypes ? "".concat(resourceRoute('create')).concat(finalTypes !== null && finalTypes.length === 1 ? "?type=".concat(finalTypes[0].id) : '') : '#',
|
807
799
|
size: "lg",
|
@@ -838,11 +830,10 @@ var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
|
|
838
830
|
onClickOutside: onDropdownClickOutside
|
839
831
|
})) : button;
|
840
832
|
};
|
841
|
-
|
842
833
|
ResourceCreateButtom.propTypes = propTypes$c;
|
843
834
|
ResourceCreateButtom.defaultProps = defaultProps$c;
|
844
835
|
|
845
|
-
var _excluded$
|
836
|
+
var _excluded$4 = ["component", "name", "groupLabel"];
|
846
837
|
var propTypes$b = {
|
847
838
|
filters: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({
|
848
839
|
id: PropTypes__default["default"].string.isRequired,
|
@@ -870,21 +861,18 @@ var defaultProps$b = {
|
|
870
861
|
},
|
871
862
|
className: null
|
872
863
|
};
|
873
|
-
|
874
864
|
var ResourceFilters = function ResourceFilters(_ref) {
|
875
865
|
var filters = _ref.filters,
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
866
|
+
value = _ref.value,
|
867
|
+
onChange = _ref.onChange,
|
868
|
+
onReset = _ref.onReset,
|
869
|
+
withContainer = _ref.withContainer,
|
870
|
+
withReset = _ref.withReset,
|
871
|
+
defaultValue = _ref.defaultValue,
|
872
|
+
className = _ref.className;
|
883
873
|
var FilterComponents = contexts.useFiltersComponents();
|
884
|
-
|
885
874
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
886
|
-
|
887
|
-
|
875
|
+
background = _usePanneauColorSchem.background;
|
888
876
|
var currentFilters = filters || [];
|
889
877
|
var onFiltersReset = React.useCallback(function () {
|
890
878
|
if (onReset !== null) {
|
@@ -895,9 +883,10 @@ var ResourceFilters = function ResourceFilters(_ref) {
|
|
895
883
|
if (value !== null && value[item.name]) {
|
896
884
|
return true;
|
897
885
|
}
|
898
|
-
|
899
886
|
return isActive;
|
900
|
-
}, false);
|
887
|
+
}, false);
|
888
|
+
|
889
|
+
// console.log('value', value);
|
901
890
|
|
902
891
|
return /*#__PURE__*/React__default["default"].createElement(Navbar__default["default"], {
|
903
892
|
className: classNames__default["default"]([_defineProperty__default["default"]({
|
@@ -907,10 +896,9 @@ var ResourceFilters = function ResourceFilters(_ref) {
|
|
907
896
|
withoutCollapse: true
|
908
897
|
}, currentFilters.map(function (_ref3, index) {
|
909
898
|
var component = _ref3.component,
|
910
|
-
|
911
|
-
|
912
|
-
|
913
|
-
|
899
|
+
name = _ref3.name,
|
900
|
+
groupLabel = _ref3.groupLabel,
|
901
|
+
filterProps = _objectWithoutProperties__default["default"](_ref3, _excluded$4);
|
914
902
|
var FilterComponent = utils.getComponentFromName(component, FilterComponents, null);
|
915
903
|
var filterValue = value !== null && value[name] ? value[name] : null;
|
916
904
|
var onFilterChange = React.useCallback(function (newFilterValue) {
|
@@ -921,9 +909,8 @@ var ResourceFilters = function ResourceFilters(_ref) {
|
|
921
909
|
var onFilterClear = React.useCallback(function () {
|
922
910
|
if (name !== null && onChange !== null) {
|
923
911
|
var _ref4 = value || {};
|
924
|
-
|
925
|
-
|
926
|
-
|
912
|
+
_ref4[name];
|
913
|
+
var newValue = _objectWithoutProperties__default["default"](_ref4, [name].map(_toPropertyKey__default["default"]));
|
927
914
|
onChange(_objectSpread__default["default"](_objectSpread__default["default"]({}, newValue), defaultValue));
|
928
915
|
}
|
929
916
|
}, [onChange, name, value, defaultValue]);
|
@@ -943,12 +930,11 @@ var ResourceFilters = function ResourceFilters(_ref) {
|
|
943
930
|
icon: freeSolidSvgIcons.faUndo
|
944
931
|
})) : null);
|
945
932
|
};
|
946
|
-
|
947
933
|
ResourceFilters.propTypes = propTypes$b;
|
948
934
|
ResourceFilters.defaultProps = defaultProps$b;
|
949
935
|
|
950
|
-
var _excluded$
|
951
|
-
|
936
|
+
var _excluded$3 = ["component", "showPagination", "filters"],
|
937
|
+
_excluded2$1 = ["page"];
|
952
938
|
var propTypes$a = {
|
953
939
|
resource: core.PropTypes.resource.isRequired,
|
954
940
|
query: PropTypes__default["default"].object,
|
@@ -970,51 +956,42 @@ var defaultProps$a = {
|
|
970
956
|
onQueryChange: null,
|
971
957
|
onQueryReset: null
|
972
958
|
};
|
973
|
-
|
974
959
|
var ResourceItemsList = function ResourceItemsList(_ref) {
|
975
960
|
var resource = _ref.resource,
|
976
|
-
|
977
|
-
|
978
|
-
|
979
|
-
|
980
|
-
|
981
|
-
var _resource$index = resource.index
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
|
986
|
-
|
987
|
-
|
988
|
-
|
989
|
-
|
990
|
-
listProps = _objectWithoutProperties__default["default"](_resource$index, _excluded$2);
|
991
|
-
|
961
|
+
query = _ref.query,
|
962
|
+
baseUrl = _ref.baseUrl,
|
963
|
+
onQueryChange = _ref.onQueryChange,
|
964
|
+
onQueryReset = _ref.onQueryReset,
|
965
|
+
paginated = _ref.paginated;
|
966
|
+
var _resource$index = resource.index,
|
967
|
+
_resource$index2 = _resource$index === void 0 ? {} : _resource$index,
|
968
|
+
_resource$index2$comp = _resource$index2.component,
|
969
|
+
listComponent = _resource$index2$comp === void 0 ? null : _resource$index2$comp,
|
970
|
+
_resource$index2$show = _resource$index2.showPagination,
|
971
|
+
showPagination = _resource$index2$show === void 0 ? true : _resource$index2$show,
|
972
|
+
_resource$index2$filt = _resource$index2.filters,
|
973
|
+
filters = _resource$index2$filt === void 0 ? null : _resource$index2$filt,
|
974
|
+
listProps = _objectWithoutProperties__default["default"](_resource$index2, _excluded$3);
|
992
975
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
993
|
-
|
994
|
-
|
995
|
-
|
976
|
+
_usePanneauColorSchem2 = _usePanneauColorSchem.background,
|
977
|
+
theme = _usePanneauColorSchem2 === void 0 ? null : _usePanneauColorSchem2;
|
996
978
|
var ListComponents = contexts.useListsComponents();
|
997
|
-
|
998
979
|
var _useMemo = React.useMemo(function () {
|
999
|
-
|
980
|
+
var _ref2 = query || {},
|
1000
981
|
_ref2$page = _ref2.page,
|
1001
982
|
currentPage = _ref2$page === void 0 ? 1 : _ref2$page,
|
1002
|
-
rest = _objectWithoutProperties__default["default"](_ref2, _excluded2);
|
1003
|
-
|
1004
|
-
|
1005
|
-
|
1006
|
-
|
1007
|
-
|
1008
|
-
queryWithoutPage = _useMemo2[1];
|
1009
|
-
|
983
|
+
rest = _objectWithoutProperties__default["default"](_ref2, _excluded2$1);
|
984
|
+
return [currentPage, rest];
|
985
|
+
}, [query]),
|
986
|
+
_useMemo2 = _slicedToArray__default["default"](_useMemo, 2),
|
987
|
+
page = _useMemo2[0],
|
988
|
+
queryWithoutPage = _useMemo2[1];
|
1010
989
|
var itemsProps = data.useResourceItems(resource, queryWithoutPage, paginated ? parseInt(page, 10) : null);
|
1011
|
-
|
1012
990
|
var _ref3 = itemsProps || {},
|
1013
|
-
|
1014
|
-
|
1015
|
-
|
1016
|
-
|
1017
|
-
|
991
|
+
_ref3$lastPage = _ref3.lastPage,
|
992
|
+
lastPage = _ref3$lastPage === void 0 ? 0 : _ref3$lastPage,
|
993
|
+
_ref3$total = _ref3.total,
|
994
|
+
total = _ref3$total === void 0 ? 0 : _ref3$total;
|
1018
995
|
var ListComponent = utils.getComponentFromName(listComponent || 'table', ListComponents);
|
1019
996
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, filters !== null ? /*#__PURE__*/React__default["default"].createElement(ResourceFilters, {
|
1020
997
|
filters: filters,
|
@@ -1044,39 +1021,34 @@ var ResourceItemsList = function ResourceItemsList(_ref) {
|
|
1044
1021
|
className: "mt-4 mb-1"
|
1045
1022
|
}) : null);
|
1046
1023
|
};
|
1047
|
-
|
1048
1024
|
ResourceItemsList.propTypes = propTypes$a;
|
1049
1025
|
ResourceItemsList.defaultProps = defaultProps$a;
|
1050
1026
|
|
1051
|
-
var _excluded$
|
1027
|
+
var _excluded$2 = ["id", "component"];
|
1052
1028
|
var propTypes$9 = {
|
1053
1029
|
resource: core.PropTypes.resource.isRequired,
|
1054
1030
|
defaultActions: PropTypes__default["default"].arrayOf(PropTypes__default["default"].object) // eslint-disable-line react/forbid-prop-types
|
1055
|
-
|
1056
1031
|
};
|
1032
|
+
|
1057
1033
|
var defaultProps$9 = {
|
1058
1034
|
defaultActions: ['create']
|
1059
1035
|
};
|
1060
|
-
|
1061
1036
|
var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
1062
1037
|
var resource = _ref.resource,
|
1063
|
-
|
1038
|
+
defaultActions = _ref.defaultActions;
|
1064
1039
|
var name = resource.name,
|
1065
|
-
|
1066
|
-
|
1067
|
-
|
1068
|
-
|
1069
|
-
|
1040
|
+
_resource$settings = resource.settings,
|
1041
|
+
settings = _resource$settings === void 0 ? {} : _resource$settings,
|
1042
|
+
_resource$index = resource.index,
|
1043
|
+
index = _resource$index === void 0 ? {} : _resource$index;
|
1070
1044
|
var _ref2 = settings || {},
|
1071
|
-
|
1072
|
-
|
1073
|
-
|
1074
|
-
|
1075
|
-
|
1045
|
+
_ref2$canCreate = _ref2.canCreate,
|
1046
|
+
canCreate = _ref2$canCreate === void 0 ? true : _ref2$canCreate,
|
1047
|
+
_ref2$indexIsPaginate = _ref2.indexIsPaginated,
|
1048
|
+
paginated = _ref2$indexIsPaginate === void 0 ? false : _ref2$indexIsPaginate;
|
1076
1049
|
var _ref3 = index || {},
|
1077
|
-
|
1078
|
-
|
1079
|
-
|
1050
|
+
_ref3$actions = _ref3.actions,
|
1051
|
+
actions = _ref3$actions === void 0 ? null : _ref3$actions;
|
1080
1052
|
var finalActions = React.useMemo(function () {
|
1081
1053
|
return (actions || defaultActions.filter(function (it) {
|
1082
1054
|
return it !== 'create' || canCreate;
|
@@ -1091,10 +1063,8 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1091
1063
|
}, [canCreate, actions]);
|
1092
1064
|
var resourceValues = intl.useResourceValues(resource);
|
1093
1065
|
var componentsManager = contexts.useComponentsManager();
|
1094
|
-
|
1095
1066
|
var _useLocation = reactRouter.useLocation(),
|
1096
|
-
|
1097
|
-
|
1067
|
+
search = _useLocation.search;
|
1098
1068
|
var navigate = reactRouter.useNavigate();
|
1099
1069
|
var query = React.useMemo(function () {
|
1100
1070
|
return queryString.parse(search);
|
@@ -1102,13 +1072,11 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1102
1072
|
var listQuery = React.useMemo(function () {
|
1103
1073
|
return query;
|
1104
1074
|
}, [query]); // TODO: omit routes
|
1105
|
-
|
1106
1075
|
var _ref4 = query || {},
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
|
1111
|
-
|
1076
|
+
_ref4$created = _ref4.created,
|
1077
|
+
created = _ref4$created === void 0 ? false : _ref4$created,
|
1078
|
+
_ref4$deleted = _ref4.deleted,
|
1079
|
+
deleted = _ref4$deleted === void 0 ? false : _ref4$deleted;
|
1112
1080
|
var resourceRoute = hooks.useResourceUrlGenerator(resource);
|
1113
1081
|
var url = resourceRoute('index');
|
1114
1082
|
var onQueryChange = React.useCallback(function (submitQuery) {
|
@@ -1127,8 +1095,10 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1127
1095
|
navigate("".concat(url, "?").concat(queryString$1));
|
1128
1096
|
}, [navigate, url, paginated]);
|
1129
1097
|
var onClickCloseAlert = React.useCallback(function () {
|
1130
|
-
|
1131
|
-
|
1098
|
+
navigate(url, {
|
1099
|
+
replace: true
|
1100
|
+
});
|
1101
|
+
}, [navigate, url]);
|
1132
1102
|
return /*#__PURE__*/React__default["default"].createElement(contexts.ResourceProvider, {
|
1133
1103
|
resource: resource
|
1134
1104
|
}, /*#__PURE__*/React__default["default"].createElement(MainLayout, null, /*#__PURE__*/React__default["default"].createElement(PageHeader, {
|
@@ -1137,10 +1107,9 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1137
1107
|
className: "d-flex align-items-center"
|
1138
1108
|
}, finalActions.map(function (_ref5) {
|
1139
1109
|
var id = _ref5.id,
|
1140
|
-
|
1141
|
-
|
1142
|
-
|
1143
|
-
|
1110
|
+
_ref5$component = _ref5.component,
|
1111
|
+
component = _ref5$component === void 0 ? Button__default["default"] : _ref5$component,
|
1112
|
+
actionProps = _objectWithoutProperties__default["default"](_ref5, _excluded$2);
|
1144
1113
|
var ActionComponent = isString__default["default"](component) ? componentsManager.getComponent(component) : component;
|
1145
1114
|
return ActionComponent !== null ? /*#__PURE__*/React__default["default"].createElement(ActionComponent, Object.assign({
|
1146
1115
|
key: "action-".concat(id)
|
@@ -1187,7 +1156,6 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1187
1156
|
onQueryReset: onQueryReset
|
1188
1157
|
}))));
|
1189
1158
|
};
|
1190
|
-
|
1191
1159
|
ResourceIndexPage.propTypes = propTypes$9;
|
1192
1160
|
ResourceIndexPage.defaultProps = defaultProps$9;
|
1193
1161
|
|
@@ -1195,7 +1163,6 @@ var propTypes$8 = {
|
|
1195
1163
|
resource: core.PropTypes.resource.isRequired
|
1196
1164
|
};
|
1197
1165
|
var defaultProps$8 = {};
|
1198
|
-
|
1199
1166
|
var ResourceShowPage = function ResourceShowPage(_ref) {
|
1200
1167
|
var resource = _ref.resource;
|
1201
1168
|
return /*#__PURE__*/React__default["default"].createElement(contexts.ResourceProvider, {
|
@@ -1206,30 +1173,27 @@ var ResourceShowPage = function ResourceShowPage(_ref) {
|
|
1206
1173
|
className: "container-sm"
|
1207
1174
|
}, "Show page")));
|
1208
1175
|
};
|
1209
|
-
|
1210
1176
|
ResourceShowPage.propTypes = propTypes$8;
|
1211
1177
|
ResourceShowPage.defaultProps = defaultProps$8;
|
1212
1178
|
|
1213
1179
|
/* eslint-disable react/jsx-props-no-spreading */
|
1214
1180
|
var propTypes$7 = {};
|
1215
1181
|
var defaultProps$7 = {};
|
1216
|
-
|
1217
1182
|
var HomePage = function HomePage() {
|
1218
1183
|
var route = contexts.useUrlGenerator();
|
1219
1184
|
var resources = contexts.usePanneauResources();
|
1220
1185
|
var visibleResources = resources.filter(function (_ref) {
|
1221
|
-
var _ref$settings = _ref.settings
|
1222
|
-
|
1223
|
-
|
1224
|
-
|
1186
|
+
var _ref$settings = _ref.settings,
|
1187
|
+
_ref$settings2 = _ref$settings === void 0 ? {} : _ref$settings,
|
1188
|
+
_ref$settings2$hideIn = _ref$settings2.hideInNavbar,
|
1189
|
+
hideInNavbar = _ref$settings2$hideIn === void 0 ? false : _ref$settings2$hideIn;
|
1225
1190
|
return !hideInNavbar;
|
1226
1191
|
});
|
1227
1192
|
return /*#__PURE__*/React__default["default"].createElement(MainLayout, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
1228
1193
|
className: "container-sm py-4"
|
1229
1194
|
}, visibleResources.map(function (resource) {
|
1230
1195
|
var _ref2 = resource || {},
|
1231
|
-
|
1232
|
-
|
1196
|
+
resourceId = _ref2.id;
|
1233
1197
|
var resourceValues = intl.useResourceValues(resource);
|
1234
1198
|
return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, {
|
1235
1199
|
className: "d-block my-2",
|
@@ -1250,19 +1214,16 @@ var HomePage = function HomePage() {
|
|
1250
1214
|
}));
|
1251
1215
|
})));
|
1252
1216
|
};
|
1253
|
-
|
1254
1217
|
HomePage.propTypes = propTypes$7;
|
1255
1218
|
HomePage.defaultProps = defaultProps$7;
|
1256
1219
|
|
1257
1220
|
var propTypes$6 = {};
|
1258
1221
|
var defaultProps$6 = {};
|
1259
|
-
|
1260
1222
|
var AccountPage = function AccountPage() {
|
1261
1223
|
return /*#__PURE__*/React__default["default"].createElement(MainLayout, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
1262
1224
|
className: "container-sm py-4"
|
1263
1225
|
}, "Account page"));
|
1264
1226
|
};
|
1265
|
-
|
1266
1227
|
AccountPage.propTypes = propTypes$6;
|
1267
1228
|
AccountPage.defaultProps = defaultProps$6;
|
1268
1229
|
|
@@ -1299,35 +1260,30 @@ var defaultProps$5 = {
|
|
1299
1260
|
className: null,
|
1300
1261
|
onSuccess: null
|
1301
1262
|
};
|
1302
|
-
|
1303
1263
|
var LoginForm = function LoginForm(_ref) {
|
1304
1264
|
var formFields = _ref.fields,
|
1305
|
-
|
1306
|
-
|
1265
|
+
className = _ref.className,
|
1266
|
+
onSuccess = _ref.onSuccess;
|
1307
1267
|
var url = contexts.useUrlGenerator();
|
1308
|
-
|
1309
1268
|
var _useAuth = auth.useAuth(),
|
1310
|
-
|
1311
|
-
|
1269
|
+
login = _useAuth.login;
|
1312
1270
|
var postForm = React.useCallback(function (action, _ref2) {
|
1313
1271
|
var email = _ref2.email,
|
1314
|
-
|
1272
|
+
password = _ref2.password;
|
1315
1273
|
return login(email, password);
|
1316
1274
|
}, [login]);
|
1317
|
-
|
1318
1275
|
var _useForm = hooks.useForm({
|
1319
|
-
|
1320
|
-
|
1321
|
-
|
1322
|
-
|
1323
|
-
|
1324
|
-
|
1325
|
-
|
1326
|
-
|
1327
|
-
|
1328
|
-
|
1329
|
-
|
1330
|
-
|
1276
|
+
fields: formFields,
|
1277
|
+
postForm: postForm,
|
1278
|
+
onComplete: onSuccess
|
1279
|
+
}),
|
1280
|
+
value = _useForm.value,
|
1281
|
+
setValue = _useForm.setValue,
|
1282
|
+
fields = _useForm.fields,
|
1283
|
+
onSubmit = _useForm.onSubmit,
|
1284
|
+
status = _useForm.status,
|
1285
|
+
generalError = _useForm.generalError,
|
1286
|
+
errors = _useForm.errors;
|
1331
1287
|
var NormalForm = contexts.useFormComponent('normal');
|
1332
1288
|
return /*#__PURE__*/React__default["default"].createElement(NormalForm, {
|
1333
1289
|
action: url('auth.login'),
|
@@ -1349,7 +1305,6 @@ var LoginForm = function LoginForm(_ref) {
|
|
1349
1305
|
})
|
1350
1306
|
});
|
1351
1307
|
};
|
1352
|
-
|
1353
1308
|
LoginForm.propTypes = propTypes$5;
|
1354
1309
|
LoginForm.defaultProps = defaultProps$5;
|
1355
1310
|
|
@@ -1360,17 +1315,13 @@ var propTypes$4 = {
|
|
1360
1315
|
var defaultProps$4 = {
|
1361
1316
|
fullscreen: false
|
1362
1317
|
};
|
1363
|
-
|
1364
1318
|
var GuestLayout = function GuestLayout(_ref) {
|
1365
1319
|
var _classNames;
|
1366
|
-
|
1367
1320
|
var fullscreen = _ref.fullscreen,
|
1368
|
-
|
1369
|
-
|
1321
|
+
children = _ref.children;
|
1370
1322
|
var _usePanneauColorSchem = contexts.usePanneauColorScheme(),
|
1371
|
-
|
1372
|
-
|
1373
|
-
|
1323
|
+
background = _usePanneauColorSchem.background,
|
1324
|
+
text = _usePanneauColorSchem.text;
|
1374
1325
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
1375
1326
|
className: classNames__default["default"]({
|
1376
1327
|
'd-flex flex-column min-vh-100': fullscreen
|
@@ -1387,14 +1338,12 @@ var GuestLayout = function GuestLayout(_ref) {
|
|
1387
1338
|
})
|
1388
1339
|
}, children)));
|
1389
1340
|
};
|
1390
|
-
|
1391
1341
|
GuestLayout.propTypes = propTypes$4;
|
1392
1342
|
GuestLayout.defaultProps = defaultProps$4;
|
1393
1343
|
|
1394
1344
|
/* eslint-disable react/jsx-props-no-spreading */
|
1395
1345
|
var propTypes$3 = {};
|
1396
1346
|
var defaultProps$3 = {};
|
1397
|
-
|
1398
1347
|
var LoginPage = function LoginPage() {
|
1399
1348
|
var route = contexts.useUrlGenerator();
|
1400
1349
|
var onSuccess = React.useCallback(function () {
|
@@ -1420,7 +1369,6 @@ var LoginPage = function LoginPage() {
|
|
1420
1369
|
onSuccess: onSuccess
|
1421
1370
|
})))));
|
1422
1371
|
};
|
1423
|
-
|
1424
1372
|
LoginPage.propTypes = propTypes$3;
|
1425
1373
|
LoginPage.defaultProps = defaultProps$3;
|
1426
1374
|
|
@@ -1523,7 +1471,6 @@ var propTypes$2 = {
|
|
1523
1471
|
var defaultProps$2 = {
|
1524
1472
|
statusCode: null
|
1525
1473
|
};
|
1526
|
-
|
1527
1474
|
var ErrorPage = function ErrorPage(_ref) {
|
1528
1475
|
var statusCode = _ref.statusCode;
|
1529
1476
|
return /*#__PURE__*/React__default["default"].createElement(GuestLayout, {
|
@@ -1536,68 +1483,50 @@ var ErrorPage = function ErrorPage(_ref) {
|
|
1536
1483
|
className: "col-12 col-sm-8 col-md-6"
|
1537
1484
|
}, /*#__PURE__*/React__default["default"].createElement("h1", null, /*#__PURE__*/React__default["default"].createElement(Label__default["default"], null, messages["title".concat(statusCode || 404)])), /*#__PURE__*/React__default["default"].createElement("p", null, /*#__PURE__*/React__default["default"].createElement(Label__default["default"], null, messages["description".concat(statusCode || 404)]))))));
|
1538
1485
|
};
|
1539
|
-
|
1540
1486
|
ErrorPage.propTypes = propTypes$2;
|
1541
1487
|
ErrorPage.defaultProps = defaultProps$2;
|
1542
1488
|
|
1543
|
-
var
|
1544
|
-
__proto__: null,
|
1545
|
-
ResourceCreate: ResourceCreatePage,
|
1546
|
-
ResourceDelete: ResourceDeletePage,
|
1547
|
-
ResourceEdit: ResourceEditPage,
|
1548
|
-
ResourceIndex: ResourceIndexPage,
|
1549
|
-
ResourceShow: ResourceShowPage,
|
1550
|
-
Home: HomePage,
|
1551
|
-
Account: AccountPage,
|
1552
|
-
Login: LoginPage,
|
1553
|
-
Error: ErrorPage
|
1554
|
-
});
|
1555
|
-
|
1556
|
-
var _excluded = ["path", "component", "exact"];
|
1557
|
-
|
1489
|
+
var _excluded$1 = ["path", "component", "exact"];
|
1558
1490
|
var createResourceRoutes = function createResourceRoutes(resource, _ref) {
|
1559
1491
|
var route = _ref.route,
|
1560
|
-
|
1492
|
+
componentsManager = _ref.componentsManager,
|
1493
|
+
_ref$pages = _ref.pages,
|
1494
|
+
pages = _ref$pages === void 0 ? {} : _ref$pages;
|
1561
1495
|
var resourceId = resource.id,
|
1562
|
-
|
1563
|
-
|
1564
|
-
|
1565
|
-
|
1496
|
+
_resource$pages = resource.pages,
|
1497
|
+
resourcePages = _resource$pages === void 0 ? {} : _resource$pages,
|
1498
|
+
_resource$extraRoutes = resource.extraRoutes,
|
1499
|
+
extraRoutes = _resource$extraRoutes === void 0 ? [] : _resource$extraRoutes;
|
1566
1500
|
|
1501
|
+
// Load custom pages from resource
|
1567
1502
|
var _ref2 = pages || {},
|
1568
|
-
|
1569
|
-
|
1570
|
-
|
1571
|
-
|
1572
|
-
|
1573
|
-
|
1574
|
-
|
1575
|
-
|
1576
|
-
|
1577
|
-
|
1578
|
-
|
1579
|
-
|
1580
|
-
|
1581
|
-
|
1582
|
-
|
1583
|
-
|
1584
|
-
|
1585
|
-
|
1586
|
-
|
1587
|
-
|
1588
|
-
|
1589
|
-
|
1590
|
-
|
1591
|
-
|
1592
|
-
|
1593
|
-
|
1594
|
-
|
1595
|
-
exact: exact,
|
1596
|
-
element: /*#__PURE__*/React__default["default"].createElement(RouteComponent, Object.assign({
|
1597
|
-
resource: resource
|
1598
|
-
}, pageProps))
|
1599
|
-
}) : null;
|
1600
|
-
}), /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1503
|
+
_ref2$index = _ref2.index,
|
1504
|
+
indexPage = _ref2$index === void 0 ? null : _ref2$index,
|
1505
|
+
_ref2$show = _ref2.show,
|
1506
|
+
showPage = _ref2$show === void 0 ? null : _ref2$show,
|
1507
|
+
_ref2$create = _ref2.create,
|
1508
|
+
createPage = _ref2$create === void 0 ? null : _ref2$create,
|
1509
|
+
_ref2$edit = _ref2.edit,
|
1510
|
+
editPage = _ref2$edit === void 0 ? null : _ref2$edit,
|
1511
|
+
_ref2$delete = _ref2["delete"],
|
1512
|
+
deletePage = _ref2$delete === void 0 ? null : _ref2$delete;
|
1513
|
+
var _ref3 = resourcePages || {},
|
1514
|
+
_ref3$index = _ref3.index,
|
1515
|
+
resourceIndexPage = _ref3$index === void 0 ? null : _ref3$index,
|
1516
|
+
_ref3$show = _ref3.show,
|
1517
|
+
resourceShowPage = _ref3$show === void 0 ? null : _ref3$show,
|
1518
|
+
_ref3$create = _ref3.create,
|
1519
|
+
resourceCreatePage = _ref3$create === void 0 ? null : _ref3$create,
|
1520
|
+
_ref3$edit = _ref3.edit,
|
1521
|
+
resourceEditPage = _ref3$edit === void 0 ? null : _ref3$edit,
|
1522
|
+
_ref3$delete = _ref3["delete"],
|
1523
|
+
resourceDeletePage = _ref3$delete === void 0 ? null : _ref3$delete;
|
1524
|
+
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;
|
1525
|
+
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;
|
1526
|
+
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;
|
1527
|
+
var ResourceEditComponent = componentsManager.getComponent(resourceEditPage === null || resourceEditPage === void 0 ? void 0 : resourceEditPage.component) || componentsManager.getComponent(editPage === null || editPage === void 0 ? void 0 : editPage.component) || ResourceEditPage;
|
1528
|
+
var ResourceDeleteComponent = componentsManager.getComponent(resourceDeletePage === null || resourceDeletePage === void 0 ? void 0 : resourceDeletePage.component) || componentsManager.getComponent(deletePage === null || deletePage === void 0 ? void 0 : deletePage.component) || ResourceDeletePage;
|
1529
|
+
return [/*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1601
1530
|
path: route('resources.index', {
|
1602
1531
|
resource: resourceId
|
1603
1532
|
}),
|
@@ -1640,116 +1569,163 @@ var createResourceRoutes = function createResourceRoutes(resource, _ref) {
|
|
1640
1569
|
element: /*#__PURE__*/React__default["default"].createElement(ResourceDeleteComponent, {
|
1641
1570
|
resource: resource
|
1642
1571
|
})
|
1643
|
-
}))
|
1572
|
+
})].concat(_toConsumableArray__default["default"](extraRoutes.map(function (_ref4) {
|
1573
|
+
var path = _ref4.path,
|
1574
|
+
component = _ref4.component,
|
1575
|
+
_ref4$exact = _ref4.exact,
|
1576
|
+
exact = _ref4$exact === void 0 ? true : _ref4$exact,
|
1577
|
+
pageProps = _objectWithoutProperties__default["default"](_ref4, _excluded$1);
|
1578
|
+
var RouteComponent = componentsManager.getComponent(component);
|
1579
|
+
return RouteComponent !== null ? /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1580
|
+
key: "route-".concat(path),
|
1581
|
+
path: path,
|
1582
|
+
exact: exact,
|
1583
|
+
element: /*#__PURE__*/React__default["default"].createElement(RouteComponent, Object.assign({
|
1584
|
+
resource: resource
|
1585
|
+
}, pageProps))
|
1586
|
+
}) : null;
|
1587
|
+
})));
|
1644
1588
|
};
|
1645
1589
|
|
1590
|
+
var _excluded = ["home", "login", "account", "error", "index", "show", "create", "edit", "delete"],
|
1591
|
+
_excluded2 = ["path", "route", "component", "exact"];
|
1646
1592
|
var propTypes$1 = {
|
1647
1593
|
statusCode: core.PropTypes.statusCode
|
1648
1594
|
};
|
1649
1595
|
var defaultProps$1 = {
|
1650
1596
|
statusCode: null
|
1651
1597
|
};
|
1652
|
-
|
1653
1598
|
var PanneauRoutes = function PanneauRoutes(_ref) {
|
1654
1599
|
var initialStatusCode = _ref.statusCode;
|
1655
|
-
|
1656
|
-
var _usePanneau = contexts.usePanneau(),
|
1657
|
-
_usePanneau$pages = _usePanneau.pages,
|
1658
|
-
pages = _usePanneau$pages === void 0 ? {} : _usePanneau$pages;
|
1659
|
-
|
1660
1600
|
var routes = contexts.useRoutes();
|
1661
|
-
|
1662
1601
|
var _useLocation = reactRouter.useLocation(),
|
1663
|
-
|
1664
|
-
|
1665
|
-
|
1602
|
+
pathname = _useLocation.pathname;
|
1666
1603
|
var _useState = React.useState({
|
1667
|
-
|
1668
|
-
|
1669
|
-
|
1670
|
-
|
1671
|
-
|
1672
|
-
|
1673
|
-
|
1674
|
-
|
1675
|
-
|
1604
|
+
statusCode: initialStatusCode,
|
1605
|
+
pathname: pathname
|
1606
|
+
}),
|
1607
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
1608
|
+
_useState2$ = _useState2[0],
|
1609
|
+
statusCode = _useState2$.statusCode,
|
1610
|
+
lastPathname = _useState2$.pathname,
|
1611
|
+
setInitialRequest = _useState2[1];
|
1676
1612
|
var user = auth.useUser();
|
1677
1613
|
var route = contexts.useUrlGenerator();
|
1678
1614
|
var resources = contexts.usePanneauResources();
|
1679
|
-
var componentsManager = contexts.
|
1680
|
-
// const query = parseQuery(search);
|
1681
|
-
// return query !== null ? query.next || null : null;
|
1682
|
-
// }, [search]);
|
1683
|
-
|
1615
|
+
var componentsManager = contexts.usePagesComponentsManager();
|
1684
1616
|
React.useEffect(function () {
|
1685
|
-
if (pathname !==
|
1617
|
+
if (pathname !== lastPathname) {
|
1686
1618
|
setInitialRequest({
|
1687
1619
|
pathname: pathname,
|
1688
1620
|
statusCode: null
|
1689
1621
|
});
|
1690
1622
|
}
|
1691
|
-
}, [pathname,
|
1623
|
+
}, [pathname, lastPathname]);
|
1692
1624
|
|
1625
|
+
// Custom Pages
|
1626
|
+
var _usePanneau = contexts.usePanneau(),
|
1627
|
+
_usePanneau$pages = _usePanneau.pages,
|
1628
|
+
pages = _usePanneau$pages === void 0 ? null : _usePanneau$pages,
|
1629
|
+
routesDefinition = _usePanneau.routes;
|
1693
1630
|
var _ref2 = pages || {},
|
1694
|
-
|
1695
|
-
|
1696
|
-
|
1697
|
-
|
1698
|
-
|
1699
|
-
|
1700
|
-
|
1701
|
-
|
1702
|
-
|
1703
|
-
|
1704
|
-
|
1705
|
-
|
1706
|
-
|
1707
|
-
|
1708
|
-
|
1709
|
-
|
1631
|
+
_ref2$home = _ref2.home,
|
1632
|
+
homePage = _ref2$home === void 0 ? null : _ref2$home,
|
1633
|
+
_ref2$login = _ref2.login,
|
1634
|
+
loginPage = _ref2$login === void 0 ? null : _ref2$login,
|
1635
|
+
_ref2$account = _ref2.account,
|
1636
|
+
accountPage = _ref2$account === void 0 ? null : _ref2$account,
|
1637
|
+
_ref2$error = _ref2.error,
|
1638
|
+
errorPage = _ref2$error === void 0 ? null : _ref2$error;
|
1639
|
+
_ref2.index;
|
1640
|
+
_ref2.show;
|
1641
|
+
_ref2.create;
|
1642
|
+
_ref2.edit;
|
1643
|
+
_ref2["delete"];
|
1644
|
+
var otherPages = _objectWithoutProperties__default["default"](_ref2, _excluded);
|
1645
|
+
var customRoutes = React.useMemo(function () {
|
1646
|
+
return [].concat(_toConsumableArray__default["default"](Object.keys(routesDefinition).filter(function (key) {
|
1647
|
+
return key.match(/^(resources\.|auth\.)/) === null && key !== 'home' && key !== 'account';
|
1648
|
+
}).filter(function (key) {
|
1649
|
+
var routeDef = routesDefinition[key];
|
1650
|
+
return isObject__default["default"](routeDef) && typeof routeDef.component !== 'undefined' && typeof routeDef.path !== 'undefined';
|
1651
|
+
}).map(function (key) {
|
1652
|
+
return routesDefinition[key];
|
1653
|
+
})), _toConsumableArray__default["default"](Object.keys(otherPages).map(function (key) {
|
1654
|
+
return otherPages[key];
|
1655
|
+
}).filter(function (_ref3) {
|
1656
|
+
var _ref3$path = _ref3.path,
|
1657
|
+
path = _ref3$path === void 0 ? null : _ref3$path,
|
1658
|
+
_ref3$route = _ref3.route,
|
1659
|
+
pageRoute = _ref3$route === void 0 ? null : _ref3$route;
|
1660
|
+
return path !== null || pageRoute !== null;
|
1661
|
+
})));
|
1662
|
+
}, [routesDefinition, otherPages]);
|
1663
|
+
var HomeComponent = componentsManager.getComponent(homePage === null || homePage === void 0 ? void 0 : homePage.component) || HomePage;
|
1664
|
+
var LoginComponent = componentsManager.getComponent(loginPage === null || loginPage === void 0 ? void 0 : loginPage.component) || LoginPage;
|
1665
|
+
var AccountComponent = componentsManager.getComponent(accountPage === null || accountPage === void 0 ? void 0 : accountPage.component) || AccountPage;
|
1666
|
+
var ErrorComponent = componentsManager.getComponent(errorPage === null || errorPage === void 0 ? void 0 : errorPage.component) || ErrorPage;
|
1667
|
+
|
1668
|
+
// If there is an error status code
|
1669
|
+
if (statusCode !== null) {
|
1670
|
+
return /*#__PURE__*/React__default["default"].createElement(ErrorComponent, {
|
1710
1671
|
statusCode: statusCode
|
1711
|
-
})
|
1712
|
-
}
|
1713
|
-
path: routes.home,
|
1714
|
-
exact: true,
|
1715
|
-
element: user !== null ? /*#__PURE__*/React__default["default"].createElement(HomeComponent, null) : /*#__PURE__*/React__default["default"].createElement(Navigate, {
|
1716
|
-
to: route('login'),
|
1717
|
-
replace: true
|
1718
|
-
})
|
1719
|
-
}), user === null ? /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1720
|
-
path: routes.login,
|
1721
|
-
exact: true,
|
1722
|
-
element: /*#__PURE__*/React__default["default"].createElement(LoginComponent, null)
|
1723
|
-
}) : null, resources.map(function (resource) {
|
1724
|
-
var _ref3 = resource || {},
|
1725
|
-
resourceId = _ref3.id;
|
1672
|
+
});
|
1673
|
+
}
|
1726
1674
|
|
1727
|
-
|
1728
|
-
|
1729
|
-
|
1730
|
-
|
1731
|
-
|
1732
|
-
|
1733
|
-
|
1734
|
-
|
1735
|
-
element: /*#__PURE__*/React__default["default"].createElement(Navigate, {
|
1736
|
-
to: "".concat(route('login'), "?next=").concat(encodeURIComponent(pathname)),
|
1675
|
+
// If user is unauthenticated
|
1676
|
+
if (user === null) {
|
1677
|
+
return /*#__PURE__*/React__default["default"].createElement(reactRouter.Routes, null, /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1678
|
+
path: routes['auth.login'],
|
1679
|
+
exact: true,
|
1680
|
+
element: /*#__PURE__*/React__default["default"].createElement(LoginComponent, null)
|
1681
|
+
}), /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1682
|
+
path: "*",
|
1683
|
+
element: /*#__PURE__*/React__default["default"].createElement(reactRouter.Navigate, {
|
1684
|
+
to: "".concat(route('auth.login'), "?next=").concat(encodeURIComponent(pathname)),
|
1737
1685
|
replace: true
|
1738
1686
|
})
|
1739
|
-
});
|
1687
|
+
}));
|
1688
|
+
}
|
1689
|
+
|
1690
|
+
// Normal routes
|
1691
|
+
return /*#__PURE__*/React__default["default"].createElement(reactRouter.Routes, null, /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1692
|
+
path: routes.home,
|
1693
|
+
exact: true,
|
1694
|
+
element: /*#__PURE__*/React__default["default"].createElement(HomeComponent, null)
|
1695
|
+
}), resources.map(function (resource) {
|
1696
|
+
var _ref4 = resource || {},
|
1697
|
+
resourceId = _ref4.id;
|
1698
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, {
|
1699
|
+
key: "resource-".concat(resourceId)
|
1700
|
+
}, createResourceRoutes(resource, {
|
1701
|
+
route: route,
|
1702
|
+
componentsManager: componentsManager,
|
1703
|
+
pages: pages
|
1704
|
+
}));
|
1740
1705
|
}), /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1741
|
-
path:
|
1706
|
+
path: routes.account,
|
1742
1707
|
exact: true,
|
1743
|
-
element:
|
1744
|
-
|
1745
|
-
|
1746
|
-
|
1708
|
+
element: /*#__PURE__*/React__default["default"].createElement(AccountComponent, null)
|
1709
|
+
}), customRoutes.map(function (_ref5) {
|
1710
|
+
var _ref5$path = _ref5.path,
|
1711
|
+
path = _ref5$path === void 0 ? null : _ref5$path,
|
1712
|
+
_ref5$route = _ref5.route,
|
1713
|
+
pageRoute = _ref5$route === void 0 ? null : _ref5$route,
|
1714
|
+
component = _ref5.component,
|
1715
|
+
_ref5$exact = _ref5.exact,
|
1716
|
+
exact = _ref5$exact === void 0 ? true : _ref5$exact,
|
1717
|
+
props = _objectWithoutProperties__default["default"](_ref5, _excluded2);
|
1718
|
+
var PageComponent = componentsManager.getComponent(component);
|
1719
|
+
return PageComponent !== null ? /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1720
|
+
path: path || routes[pageRoute],
|
1721
|
+
exact: exact,
|
1722
|
+
element: /*#__PURE__*/React__default["default"].createElement(PageComponent, props)
|
1723
|
+
}) : null;
|
1747
1724
|
}), /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
1748
1725
|
path: "*",
|
1749
|
-
|
1726
|
+
element: /*#__PURE__*/React__default["default"].createElement(ErrorComponent, null)
|
1750
1727
|
}));
|
1751
1728
|
};
|
1752
|
-
|
1753
1729
|
PanneauRoutes.propTypes = propTypes$1;
|
1754
1730
|
PanneauRoutes.defaultProps = defaultProps$1;
|
1755
1731
|
|
@@ -1770,41 +1746,40 @@ var defaultProps = {
|
|
1770
1746
|
uppy: null,
|
1771
1747
|
statusCode: null
|
1772
1748
|
};
|
1773
|
-
|
1774
1749
|
var Container = function Container(_ref) {
|
1775
1750
|
var definition = _ref.definition,
|
1776
|
-
|
1777
|
-
|
1778
|
-
|
1779
|
-
|
1780
|
-
|
1781
|
-
|
1782
|
-
var _definition$intl = definition.intl
|
1783
|
-
|
1784
|
-
|
1785
|
-
|
1786
|
-
|
1787
|
-
|
1788
|
-
|
1789
|
-
|
1790
|
-
|
1791
|
-
|
1792
|
-
|
1793
|
-
|
1751
|
+
components = _ref.components,
|
1752
|
+
user = _ref.user,
|
1753
|
+
memoryRouter = _ref.memoryRouter,
|
1754
|
+
baseUrl = _ref.baseUrl,
|
1755
|
+
uppy = _ref.uppy,
|
1756
|
+
statusCode = _ref.statusCode;
|
1757
|
+
var _definition$intl = definition.intl,
|
1758
|
+
_definition$intl2 = _definition$intl === void 0 ? {} : _definition$intl,
|
1759
|
+
_definition$intl2$loc = _definition$intl2.locale,
|
1760
|
+
locale = _definition$intl2$loc === void 0 ? 'en' : _definition$intl2$loc,
|
1761
|
+
_definition$intl2$loc2 = _definition$intl2.locales,
|
1762
|
+
locales = _definition$intl2$loc2 === void 0 ? [] : _definition$intl2$loc2,
|
1763
|
+
_definition$routes = definition.routes,
|
1764
|
+
routes = _definition$routes === void 0 ? {} : _definition$routes,
|
1765
|
+
_definition$settings = definition.settings,
|
1766
|
+
_definition$settings2 = _definition$settings === void 0 ? {} : _definition$settings,
|
1767
|
+
_definition$settings3 = _definition$settings2.memoryRouter,
|
1768
|
+
usesMemoryRouter = _definition$settings3 === void 0 ? false : _definition$settings3;
|
1794
1769
|
var Router = memoryRouter || usesMemoryRouter ? reactRouter.MemoryRouter : reactRouterDom.BrowserRouter;
|
1795
1770
|
var extraMessages = React.useMemo(function () {
|
1796
|
-
var _definition$
|
1797
|
-
|
1798
|
-
|
1799
|
-
|
1800
|
-
|
1801
|
-
|
1771
|
+
var _definition$intl3 = definition.intl,
|
1772
|
+
_definition$intl4 = _definition$intl3 === void 0 ? {} : _definition$intl3,
|
1773
|
+
_definition$intl4$mes = _definition$intl4.messages,
|
1774
|
+
messages = _definition$intl4$mes === void 0 ? null : _definition$intl4$mes,
|
1775
|
+
_definition$resources = definition.resources,
|
1776
|
+
resources = _definition$resources === void 0 ? [] : _definition$resources;
|
1802
1777
|
return _objectSpread__default["default"](_objectSpread__default["default"]({}, messages), resources.reduce(function (allMessages, _ref2) {
|
1803
1778
|
var id = _ref2.id,
|
1804
|
-
|
1805
|
-
|
1806
|
-
|
1807
|
-
|
1779
|
+
_ref2$intl = _ref2.intl,
|
1780
|
+
_ref2$intl2 = _ref2$intl === void 0 ? {} : _ref2$intl,
|
1781
|
+
_ref2$intl2$messages = _ref2$intl2.messages,
|
1782
|
+
resourceMessages = _ref2$intl2$messages === void 0 ? {} : _ref2$intl2$messages;
|
1808
1783
|
return _objectSpread__default["default"](_objectSpread__default["default"]({}, allMessages), Object.keys(resourceMessages).reduce(function (allResourceMessages, key) {
|
1809
1784
|
return _objectSpread__default["default"](_objectSpread__default["default"]({}, allResourceMessages), {}, _defineProperty__default["default"]({}, "resources.".concat(id, ".").concat(key), resourceMessages[key]));
|
1810
1785
|
}, {}));
|
@@ -1836,7 +1811,6 @@ var Container = function Container(_ref) {
|
|
1836
1811
|
statusCode: statusCode
|
1837
1812
|
}))))))))))))));
|
1838
1813
|
};
|
1839
|
-
|
1840
1814
|
Container.propTypes = propTypes;
|
1841
1815
|
Container.defaultProps = defaultProps;
|
1842
1816
|
|