@panneau/app 1.0.3 → 1.0.4
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 +252 -217
- package/lib/index.js +249 -215
- package/package.json +28 -28
package/es/index.js
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
2
2
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
3
3
|
import PropTypes$1 from 'prop-types';
|
4
|
-
import React, { useMemo, useCallback, useState, useEffect
|
5
|
-
import { useLocation,
|
4
|
+
import React, { useMemo, useCallback, useState, useEffect } from 'react';
|
5
|
+
import { useLocation, useHistory, Switch, Route, Redirect, MemoryRouter } from 'react-router';
|
6
6
|
import { Link, BrowserRouter } from 'react-router-dom';
|
7
7
|
import { useUser, useLogout, useAuth, AuthProvider } from '@panneau/auth';
|
8
8
|
import { PropTypes } from '@panneau/core';
|
9
|
-
import { useLocales, useFormsComponents, FormProvider, useUrlGenerator, usePanneauResources, usePanneau, usePanneauColorScheme, ResourceProvider, useFiltersComponents, useListsComponents, useComponentsManager, useFormComponent, useRoutes,
|
9
|
+
import { useLocales, useFormsComponents, FormProvider, useUrlGenerator, usePanneauResources, usePanneau, usePanneauColorScheme, ResourceProvider, useFiltersComponents, useListsComponents, useComponentsManager, useFormComponent, useRoutes, PanneauProvider, UppyProvider, RoutesProvider, ComponentsProvider } from '@panneau/core/contexts';
|
10
10
|
import { useResourceStore, useResourceUpdate, useResourceDestroy, useResourceItem, useResourceItems, ApiProvider } from '@panneau/data';
|
11
11
|
import DisplaysProvider from '@panneau/displays';
|
12
12
|
import FieldsProvider from '@panneau/fields';
|
@@ -15,12 +15,11 @@ import FormsProvider from '@panneau/forms';
|
|
15
15
|
import { useResourceValues, IntlProvider } from '@panneau/intl';
|
16
16
|
import ListsProvider from '@panneau/lists';
|
17
17
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
18
|
+
import { getComponentFromName } from '@panneau/core/utils';
|
18
19
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
19
|
-
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
20
20
|
import { parse, stringify } from 'query-string';
|
21
21
|
import { FormattedMessage, defineMessages } from 'react-intl';
|
22
22
|
import { useResourceUrlGenerator, useForm } from '@panneau/core/hooks';
|
23
|
-
import { getComponentFromName } from '@panneau/core/utils';
|
24
23
|
import classNames from 'classnames';
|
25
24
|
import Button from '@panneau/element-button';
|
26
25
|
import Form from '@panneau/element-form';
|
@@ -37,7 +36,7 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
37
36
|
import FormGroup from '@panneau/element-form-group';
|
38
37
|
|
39
38
|
var _excluded$5 = ["resource", "action", "previous", "status", "value", "onSubmit", "errors", "generalError", "className"];
|
40
|
-
var propTypes$
|
39
|
+
var propTypes$n = {
|
41
40
|
resource: PropTypes.resource.isRequired,
|
42
41
|
action: PropTypes$1.string,
|
43
42
|
previous: PropTypes$1.string,
|
@@ -51,7 +50,7 @@ var propTypes$m = {
|
|
51
50
|
errors: PropTypes$1.objectOf(PropTypes$1.arrayOf(PropTypes$1.string)),
|
52
51
|
className: PropTypes$1.string
|
53
52
|
};
|
54
|
-
var defaultProps$
|
53
|
+
var defaultProps$n = {
|
55
54
|
action: null,
|
56
55
|
previous: null,
|
57
56
|
status: null,
|
@@ -142,11 +141,11 @@ var DeleteForm = function DeleteForm(_ref) {
|
|
142
141
|
}]
|
143
142
|
})))));
|
144
143
|
};
|
145
|
-
DeleteForm.propTypes = propTypes$
|
146
|
-
DeleteForm.defaultProps = defaultProps$
|
144
|
+
DeleteForm.propTypes = propTypes$n;
|
145
|
+
DeleteForm.defaultProps = defaultProps$n;
|
147
146
|
|
148
147
|
var _excluded$4 = ["component", "resource", "onSuccess", "item", "type", "isDelete"];
|
149
|
-
var propTypes$
|
148
|
+
var propTypes$m = {
|
150
149
|
component: PropTypes$1.string,
|
151
150
|
resource: PropTypes.resource.isRequired,
|
152
151
|
item: PropTypes$1.object,
|
@@ -155,7 +154,7 @@ var propTypes$l = {
|
|
155
154
|
onSuccess: PropTypes$1.func,
|
156
155
|
isDelete: PropTypes$1.bool
|
157
156
|
};
|
158
|
-
var defaultProps$
|
157
|
+
var defaultProps$m = {
|
159
158
|
component: null,
|
160
159
|
item: null,
|
161
160
|
type: null,
|
@@ -297,15 +296,15 @@ var ResourceForm = function ResourceForm(_ref) {
|
|
297
296
|
onChange: setValue
|
298
297
|
})));
|
299
298
|
};
|
300
|
-
ResourceForm.propTypes = propTypes$
|
301
|
-
ResourceForm.defaultProps = defaultProps$
|
299
|
+
ResourceForm.propTypes = propTypes$m;
|
300
|
+
ResourceForm.defaultProps = defaultProps$m;
|
302
301
|
|
303
|
-
var propTypes$
|
302
|
+
var propTypes$l = {
|
304
303
|
className: PropTypes$1.string,
|
305
304
|
itemClassName: PropTypes$1.string,
|
306
305
|
linkClassName: PropTypes$1.string
|
307
306
|
};
|
308
|
-
var defaultProps$
|
307
|
+
var defaultProps$l = {
|
309
308
|
className: null,
|
310
309
|
itemClassName: null,
|
311
310
|
linkClassName: null
|
@@ -331,7 +330,7 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
331
330
|
"value": "Account"
|
332
331
|
}]
|
333
332
|
}),
|
334
|
-
href: route('account'),
|
333
|
+
href: route('panneau.account'),
|
335
334
|
dropdown: [
|
336
335
|
// {
|
337
336
|
// label: (
|
@@ -340,7 +339,7 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
340
339
|
// description="Menu label"
|
341
340
|
// />
|
342
341
|
// ),
|
343
|
-
// href: route('account'),
|
342
|
+
// href: route('panneau.account'),
|
344
343
|
// },
|
345
344
|
{
|
346
345
|
label: /*#__PURE__*/React.createElement(FormattedMessage, {
|
@@ -361,7 +360,7 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
361
360
|
"value": "Login"
|
362
361
|
}]
|
363
362
|
}),
|
364
|
-
href: route('
|
363
|
+
href: route('login')
|
365
364
|
}];
|
366
365
|
}, [user, route, onClickLogout]);
|
367
366
|
return items !== null ? /*#__PURE__*/React.createElement(Menu, {
|
@@ -372,15 +371,15 @@ var AccountMenu = function AccountMenu(_ref) {
|
|
372
371
|
dropdownAlign: "end"
|
373
372
|
}) : null;
|
374
373
|
};
|
375
|
-
AccountMenu.propTypes = propTypes$
|
376
|
-
AccountMenu.defaultProps = defaultProps$
|
374
|
+
AccountMenu.propTypes = propTypes$l;
|
375
|
+
AccountMenu.defaultProps = defaultProps$l;
|
377
376
|
|
378
|
-
var propTypes$
|
377
|
+
var propTypes$k = {
|
379
378
|
className: PropTypes$1.string,
|
380
379
|
itemClassName: PropTypes$1.string,
|
381
380
|
linkClassName: PropTypes$1.string
|
382
381
|
};
|
383
|
-
var defaultProps$
|
382
|
+
var defaultProps$k = {
|
384
383
|
className: null,
|
385
384
|
itemClassName: null,
|
386
385
|
linkClassName: null
|
@@ -417,12 +416,12 @@ var ResourcesMenu = function ResourcesMenu(_ref) {
|
|
417
416
|
linkClassName: linkClassName
|
418
417
|
});
|
419
418
|
};
|
420
|
-
ResourcesMenu.propTypes = propTypes$
|
421
|
-
ResourcesMenu.defaultProps = defaultProps$
|
419
|
+
ResourcesMenu.propTypes = propTypes$k;
|
420
|
+
ResourcesMenu.defaultProps = defaultProps$k;
|
422
421
|
|
423
422
|
/* eslint-disable react/jsx-props-no-spreading */
|
424
|
-
var propTypes$
|
425
|
-
var defaultProps$
|
423
|
+
var propTypes$j = {};
|
424
|
+
var defaultProps$j = {};
|
426
425
|
var MainNavbar = function MainNavbar(props) {
|
427
426
|
var _usePanneau = usePanneau(),
|
428
427
|
name = _usePanneau.name;
|
@@ -445,14 +444,14 @@ var MainNavbar = function MainNavbar(props) {
|
|
445
444
|
linkClassName: "nav-link"
|
446
445
|
}));
|
447
446
|
};
|
448
|
-
MainNavbar.propTypes = propTypes$
|
449
|
-
MainNavbar.defaultProps = defaultProps$
|
447
|
+
MainNavbar.propTypes = propTypes$j;
|
448
|
+
MainNavbar.defaultProps = defaultProps$j;
|
450
449
|
|
451
|
-
var propTypes$
|
450
|
+
var propTypes$i = {
|
452
451
|
children: PropTypes$1.node.isRequired,
|
453
452
|
fullscreen: PropTypes$1.bool
|
454
453
|
};
|
455
|
-
var defaultProps$
|
454
|
+
var defaultProps$i = {
|
456
455
|
fullscreen: false
|
457
456
|
};
|
458
457
|
var MainLayout = function MainLayout(_ref) {
|
@@ -472,17 +471,17 @@ var MainLayout = function MainLayout(_ref) {
|
|
472
471
|
}, _defineProperty(_ref2, "bg-".concat(background), background !== null), _defineProperty(_ref2, "text-".concat(text), text !== null), _ref2)])
|
473
472
|
}, children));
|
474
473
|
};
|
475
|
-
MainLayout.propTypes = propTypes$
|
476
|
-
MainLayout.defaultProps = defaultProps$
|
474
|
+
MainLayout.propTypes = propTypes$i;
|
475
|
+
MainLayout.defaultProps = defaultProps$i;
|
477
476
|
|
478
|
-
var propTypes$
|
477
|
+
var propTypes$h = {
|
479
478
|
title: PropTypes.label,
|
480
479
|
actions: PropTypes$1.node,
|
481
480
|
small: PropTypes$1.bool,
|
482
481
|
className: PropTypes$1.string,
|
483
482
|
children: PropTypes$1.node
|
484
483
|
};
|
485
|
-
var defaultProps$
|
484
|
+
var defaultProps$h = {
|
486
485
|
title: null,
|
487
486
|
actions: null,
|
488
487
|
small: false,
|
@@ -520,22 +519,22 @@ var PageHeader = function PageHeader(_ref) {
|
|
520
519
|
className: "col-12 col-md-8 col-lg-7"
|
521
520
|
}, inner)) : inner), children);
|
522
521
|
};
|
523
|
-
PageHeader.propTypes = propTypes$
|
524
|
-
PageHeader.defaultProps = defaultProps$
|
522
|
+
PageHeader.propTypes = propTypes$h;
|
523
|
+
PageHeader.defaultProps = defaultProps$h;
|
525
524
|
|
526
|
-
var propTypes$
|
525
|
+
var propTypes$g = {
|
527
526
|
resource: PropTypes.resource.isRequired
|
528
527
|
};
|
529
|
-
var defaultProps$
|
528
|
+
var defaultProps$g = {};
|
530
529
|
var ResourceCreatePage = function ResourceCreatePage(_ref) {
|
531
530
|
var resource = _ref.resource;
|
532
|
-
var
|
531
|
+
var history = useHistory();
|
533
532
|
var _useLocation = useLocation(),
|
534
533
|
search = _useLocation.search;
|
535
534
|
var resourceRoute = useResourceUrlGenerator(resource);
|
536
535
|
var onSuccess = useCallback(function () {
|
537
|
-
|
538
|
-
}, [
|
536
|
+
history.push("".concat(resourceRoute('index'), "?created=true"));
|
537
|
+
}, [history, resourceRoute]);
|
539
538
|
var _useMemo = useMemo(function () {
|
540
539
|
return parse(search);
|
541
540
|
}, [search]),
|
@@ -569,26 +568,26 @@ var ResourceCreatePage = function ResourceCreatePage(_ref) {
|
|
569
568
|
onSuccess: onSuccess
|
570
569
|
}))))));
|
571
570
|
};
|
572
|
-
ResourceCreatePage.propTypes = propTypes$
|
573
|
-
ResourceCreatePage.defaultProps = defaultProps$
|
571
|
+
ResourceCreatePage.propTypes = propTypes$g;
|
572
|
+
ResourceCreatePage.defaultProps = defaultProps$g;
|
574
573
|
|
575
574
|
// import Button from '../buttons/Button';
|
576
575
|
|
577
|
-
var propTypes$
|
578
|
-
resource: PropTypes.resource.isRequired
|
576
|
+
var propTypes$f = {
|
577
|
+
resource: PropTypes.resource.isRequired,
|
578
|
+
itemId: PropTypes$1.string.isRequired
|
579
579
|
};
|
580
|
-
var defaultProps$
|
580
|
+
var defaultProps$f = {};
|
581
581
|
var ResourceDeletePage = function ResourceDeletePage(_ref) {
|
582
|
-
var resource = _ref.resource
|
583
|
-
|
584
|
-
|
585
|
-
var navigate = useNavigate();
|
582
|
+
var resource = _ref.resource,
|
583
|
+
itemId = _ref.itemId;
|
584
|
+
var history = useHistory();
|
586
585
|
var resourceRoute = useResourceUrlGenerator(resource);
|
587
586
|
var _useResourceItem = useResourceItem(resource, itemId),
|
588
587
|
item = _useResourceItem.item;
|
589
588
|
var onSuccess = useCallback(function () {
|
590
|
-
return
|
591
|
-
}, [
|
589
|
+
return history.push("".concat(resourceRoute('index'), "?deleted=true"));
|
590
|
+
}, [history, resourceRoute]);
|
592
591
|
|
593
592
|
// Navigate back
|
594
593
|
var _ref2 = history || {},
|
@@ -627,19 +626,19 @@ var ResourceDeletePage = function ResourceDeletePage(_ref) {
|
|
627
626
|
isDelete: true
|
628
627
|
}) : null)))));
|
629
628
|
};
|
630
|
-
ResourceDeletePage.propTypes = propTypes$
|
631
|
-
ResourceDeletePage.defaultProps = defaultProps$
|
629
|
+
ResourceDeletePage.propTypes = propTypes$f;
|
630
|
+
ResourceDeletePage.defaultProps = defaultProps$f;
|
632
631
|
|
633
632
|
// import Button from '../buttons/Button';
|
634
633
|
|
635
|
-
var propTypes$
|
636
|
-
resource: PropTypes.resource.isRequired
|
634
|
+
var propTypes$e = {
|
635
|
+
resource: PropTypes.resource.isRequired,
|
636
|
+
itemId: PropTypes$1.string.isRequired
|
637
637
|
};
|
638
|
-
var defaultProps$
|
638
|
+
var defaultProps$e = {};
|
639
639
|
var ResourceEditPage = function ResourceEditPage(_ref) {
|
640
|
-
var resource = _ref.resource
|
641
|
-
|
642
|
-
itemId = _useParams.id;
|
640
|
+
var resource = _ref.resource,
|
641
|
+
itemId = _ref.itemId;
|
643
642
|
var _useResourceItem = useResourceItem(resource, itemId),
|
644
643
|
item = _useResourceItem.item;
|
645
644
|
var _ref2 = item || {},
|
@@ -684,14 +683,14 @@ var ResourceEditPage = function ResourceEditPage(_ref) {
|
|
684
683
|
onSuccess: onSuccess
|
685
684
|
}) : null)))));
|
686
685
|
};
|
687
|
-
ResourceEditPage.propTypes = propTypes$
|
688
|
-
ResourceEditPage.defaultProps = defaultProps$
|
686
|
+
ResourceEditPage.propTypes = propTypes$e;
|
687
|
+
ResourceEditPage.defaultProps = defaultProps$e;
|
689
688
|
|
690
|
-
var propTypes$
|
689
|
+
var propTypes$d = {
|
691
690
|
resource: PropTypes.resource.isRequired,
|
692
691
|
className: PropTypes$1.string
|
693
692
|
};
|
694
|
-
var defaultProps$
|
693
|
+
var defaultProps$d = {
|
695
694
|
className: null
|
696
695
|
};
|
697
696
|
var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
|
@@ -759,11 +758,11 @@ var ResourceCreateButtom = function ResourceCreateButtom(_ref) {
|
|
759
758
|
onClickOutside: onDropdownClickOutside
|
760
759
|
})) : button;
|
761
760
|
};
|
762
|
-
ResourceCreateButtom.propTypes = propTypes$
|
763
|
-
ResourceCreateButtom.defaultProps = defaultProps$
|
761
|
+
ResourceCreateButtom.propTypes = propTypes$d;
|
762
|
+
ResourceCreateButtom.defaultProps = defaultProps$d;
|
764
763
|
|
765
764
|
var _excluded$3 = ["component", "name", "groupLabel"];
|
766
|
-
var propTypes$
|
765
|
+
var propTypes$c = {
|
767
766
|
filters: PropTypes$1.arrayOf(PropTypes$1.shape({
|
768
767
|
id: PropTypes$1.string.isRequired,
|
769
768
|
component: PropTypes$1.string.isRequired
|
@@ -778,7 +777,7 @@ var propTypes$b = {
|
|
778
777
|
// eslint-disable-line react/forbid-prop-types
|
779
778
|
className: PropTypes$1.string
|
780
779
|
};
|
781
|
-
var defaultProps$
|
780
|
+
var defaultProps$c = {
|
782
781
|
filters: [],
|
783
782
|
value: null,
|
784
783
|
onChange: null,
|
@@ -859,12 +858,12 @@ var ResourceFilters = function ResourceFilters(_ref) {
|
|
859
858
|
icon: faUndo
|
860
859
|
})) : null);
|
861
860
|
};
|
862
|
-
ResourceFilters.propTypes = propTypes$
|
863
|
-
ResourceFilters.defaultProps = defaultProps$
|
861
|
+
ResourceFilters.propTypes = propTypes$c;
|
862
|
+
ResourceFilters.defaultProps = defaultProps$c;
|
864
863
|
|
865
864
|
var _excluded$2 = ["component", "showPagination", "filters"],
|
866
|
-
_excluded2 = ["page"];
|
867
|
-
var propTypes$
|
865
|
+
_excluded2$1 = ["page"];
|
866
|
+
var propTypes$b = {
|
868
867
|
resource: PropTypes.resource.isRequired,
|
869
868
|
query: PropTypes$1.object,
|
870
869
|
// eslint-disable-line react/forbid-prop-types
|
@@ -876,7 +875,7 @@ var propTypes$a = {
|
|
876
875
|
onQueryChange: PropTypes$1.func,
|
877
876
|
onQueryReset: PropTypes$1.func
|
878
877
|
};
|
879
|
-
var defaultProps$
|
878
|
+
var defaultProps$b = {
|
880
879
|
query: null,
|
881
880
|
paginated: true,
|
882
881
|
component: null,
|
@@ -909,7 +908,7 @@ var ResourceItemsList = function ResourceItemsList(_ref) {
|
|
909
908
|
var _ref2 = query || {},
|
910
909
|
_ref2$page = _ref2.page,
|
911
910
|
currentPage = _ref2$page === void 0 ? 1 : _ref2$page,
|
912
|
-
rest = _objectWithoutProperties(_ref2, _excluded2);
|
911
|
+
rest = _objectWithoutProperties(_ref2, _excluded2$1);
|
913
912
|
return [currentPage, rest];
|
914
913
|
}, [query]),
|
915
914
|
_useMemo2 = _slicedToArray(_useMemo, 2),
|
@@ -950,16 +949,16 @@ var ResourceItemsList = function ResourceItemsList(_ref) {
|
|
950
949
|
className: "mt-4 mb-1"
|
951
950
|
}) : null);
|
952
951
|
};
|
953
|
-
ResourceItemsList.propTypes = propTypes$
|
954
|
-
ResourceItemsList.defaultProps = defaultProps$
|
952
|
+
ResourceItemsList.propTypes = propTypes$b;
|
953
|
+
ResourceItemsList.defaultProps = defaultProps$b;
|
955
954
|
|
956
955
|
var _excluded$1 = ["id", "component"];
|
957
|
-
var propTypes$
|
956
|
+
var propTypes$a = {
|
958
957
|
resource: PropTypes.resource.isRequired,
|
959
958
|
defaultActions: PropTypes$1.arrayOf(PropTypes$1.object) // eslint-disable-line react/forbid-prop-types
|
960
959
|
};
|
961
960
|
|
962
|
-
var defaultProps$
|
961
|
+
var defaultProps$a = {
|
963
962
|
defaultActions: ['create']
|
964
963
|
};
|
965
964
|
var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
@@ -994,7 +993,7 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
994
993
|
var componentsManager = useComponentsManager();
|
995
994
|
var _useLocation = useLocation(),
|
996
995
|
search = _useLocation.search;
|
997
|
-
var
|
996
|
+
var history = useHistory();
|
998
997
|
var query = useMemo(function () {
|
999
998
|
return parse(search);
|
1000
999
|
}, [search]);
|
@@ -1013,16 +1012,16 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1013
1012
|
var value = submitQuery[key];
|
1014
1013
|
return value !== null ? _objectSpread(_objectSpread({}, currentQuery), {}, _defineProperty({}, key, value)) : currentQuery;
|
1015
1014
|
}, null) : null;
|
1016
|
-
|
1015
|
+
history.push("".concat(url).concat(newQuery !== null ? "?".concat(stringify(newQuery, {
|
1017
1016
|
arrayFormat: 'bracket'
|
1018
1017
|
})) : ''));
|
1019
|
-
}, [
|
1018
|
+
}, [history, url, query, paginated]);
|
1020
1019
|
var onQueryReset = useCallback(function () {
|
1021
1020
|
var queryString = stringify(null, {
|
1022
1021
|
arrayFormat: 'bracket'
|
1023
1022
|
});
|
1024
|
-
|
1025
|
-
}, [
|
1023
|
+
history.push("".concat(url, "?").concat(queryString));
|
1024
|
+
}, [history, url, paginated]);
|
1026
1025
|
var onClickCloseAlert = useCallback(function () {
|
1027
1026
|
history.replace(url);
|
1028
1027
|
}, [history, url]);
|
@@ -1083,13 +1082,13 @@ var ResourceIndexPage = function ResourceIndexPage(_ref) {
|
|
1083
1082
|
onQueryReset: onQueryReset
|
1084
1083
|
}))));
|
1085
1084
|
};
|
1086
|
-
ResourceIndexPage.propTypes = propTypes$
|
1087
|
-
ResourceIndexPage.defaultProps = defaultProps$
|
1085
|
+
ResourceIndexPage.propTypes = propTypes$a;
|
1086
|
+
ResourceIndexPage.defaultProps = defaultProps$a;
|
1088
1087
|
|
1089
|
-
var propTypes$
|
1088
|
+
var propTypes$9 = {
|
1090
1089
|
resource: PropTypes.resource.isRequired
|
1091
1090
|
};
|
1092
|
-
var defaultProps$
|
1091
|
+
var defaultProps$9 = {};
|
1093
1092
|
var ResourceShowPage = function ResourceShowPage(_ref) {
|
1094
1093
|
var resource = _ref.resource;
|
1095
1094
|
return /*#__PURE__*/React.createElement(ResourceProvider, {
|
@@ -1100,12 +1099,12 @@ var ResourceShowPage = function ResourceShowPage(_ref) {
|
|
1100
1099
|
className: "container-sm"
|
1101
1100
|
}, "Show page")));
|
1102
1101
|
};
|
1103
|
-
ResourceShowPage.propTypes = propTypes$
|
1104
|
-
ResourceShowPage.defaultProps = defaultProps$
|
1102
|
+
ResourceShowPage.propTypes = propTypes$9;
|
1103
|
+
ResourceShowPage.defaultProps = defaultProps$9;
|
1105
1104
|
|
1106
1105
|
/* eslint-disable react/jsx-props-no-spreading */
|
1107
|
-
var propTypes$
|
1108
|
-
var defaultProps$
|
1106
|
+
var propTypes$8 = {};
|
1107
|
+
var defaultProps$8 = {};
|
1109
1108
|
var HomePage = function HomePage() {
|
1110
1109
|
var route = useUrlGenerator();
|
1111
1110
|
var resources = usePanneauResources();
|
@@ -1141,26 +1140,26 @@ var HomePage = function HomePage() {
|
|
1141
1140
|
}));
|
1142
1141
|
})));
|
1143
1142
|
};
|
1144
|
-
HomePage.propTypes = propTypes$
|
1145
|
-
HomePage.defaultProps = defaultProps$
|
1143
|
+
HomePage.propTypes = propTypes$8;
|
1144
|
+
HomePage.defaultProps = defaultProps$8;
|
1146
1145
|
|
1147
|
-
var propTypes$
|
1148
|
-
var defaultProps$
|
1146
|
+
var propTypes$7 = {};
|
1147
|
+
var defaultProps$7 = {};
|
1149
1148
|
var AccountPage = function AccountPage() {
|
1150
1149
|
return /*#__PURE__*/React.createElement(MainLayout, null, /*#__PURE__*/React.createElement("div", {
|
1151
1150
|
className: "container-sm py-4"
|
1152
1151
|
}, "Account page"));
|
1153
1152
|
};
|
1154
|
-
AccountPage.propTypes = propTypes$
|
1155
|
-
AccountPage.defaultProps = defaultProps$
|
1153
|
+
AccountPage.propTypes = propTypes$7;
|
1154
|
+
AccountPage.defaultProps = defaultProps$7;
|
1156
1155
|
|
1157
1156
|
/* eslint-disable react/jsx-props-no-spreading */
|
1158
|
-
var propTypes$
|
1157
|
+
var propTypes$6 = {
|
1159
1158
|
fields: PropTypes.fields,
|
1160
1159
|
className: PropTypes$1.string,
|
1161
1160
|
onSuccess: PropTypes$1.func
|
1162
1161
|
};
|
1163
|
-
var defaultProps$
|
1162
|
+
var defaultProps$6 = {
|
1164
1163
|
fields: [{
|
1165
1164
|
name: 'email',
|
1166
1165
|
type: 'email',
|
@@ -1232,14 +1231,14 @@ var LoginForm = function LoginForm(_ref) {
|
|
1232
1231
|
})
|
1233
1232
|
});
|
1234
1233
|
};
|
1235
|
-
LoginForm.propTypes = propTypes$
|
1236
|
-
LoginForm.defaultProps = defaultProps$
|
1234
|
+
LoginForm.propTypes = propTypes$6;
|
1235
|
+
LoginForm.defaultProps = defaultProps$6;
|
1237
1236
|
|
1238
|
-
var propTypes$
|
1237
|
+
var propTypes$5 = {
|
1239
1238
|
children: PropTypes$1.node.isRequired,
|
1240
1239
|
fullscreen: PropTypes$1.bool
|
1241
1240
|
};
|
1242
|
-
var defaultProps$
|
1241
|
+
var defaultProps$5 = {
|
1243
1242
|
fullscreen: false
|
1244
1243
|
};
|
1245
1244
|
var GuestLayout = function GuestLayout(_ref) {
|
@@ -1265,12 +1264,12 @@ var GuestLayout = function GuestLayout(_ref) {
|
|
1265
1264
|
})
|
1266
1265
|
}, children)));
|
1267
1266
|
};
|
1268
|
-
GuestLayout.propTypes = propTypes$
|
1269
|
-
GuestLayout.defaultProps = defaultProps$
|
1267
|
+
GuestLayout.propTypes = propTypes$5;
|
1268
|
+
GuestLayout.defaultProps = defaultProps$5;
|
1270
1269
|
|
1271
1270
|
/* eslint-disable react/jsx-props-no-spreading */
|
1272
|
-
var propTypes$
|
1273
|
-
var defaultProps$
|
1271
|
+
var propTypes$4 = {};
|
1272
|
+
var defaultProps$4 = {};
|
1274
1273
|
var LoginPage = function LoginPage() {
|
1275
1274
|
var route = useUrlGenerator();
|
1276
1275
|
var onSuccess = useCallback(function () {
|
@@ -1296,8 +1295,8 @@ var LoginPage = function LoginPage() {
|
|
1296
1295
|
onSuccess: onSuccess
|
1297
1296
|
})))));
|
1298
1297
|
};
|
1299
|
-
LoginPage.propTypes = propTypes$
|
1300
|
-
LoginPage.defaultProps = defaultProps$
|
1298
|
+
LoginPage.propTypes = propTypes$4;
|
1299
|
+
LoginPage.defaultProps = defaultProps$4;
|
1301
1300
|
|
1302
1301
|
var messages = defineMessages({
|
1303
1302
|
metaTitle401: {
|
@@ -1392,10 +1391,10 @@ var messages = defineMessages({
|
|
1392
1391
|
}]
|
1393
1392
|
}
|
1394
1393
|
});
|
1395
|
-
var propTypes$
|
1394
|
+
var propTypes$3 = {
|
1396
1395
|
statusCode: PropTypes.statusCode
|
1397
1396
|
};
|
1398
|
-
var defaultProps$
|
1397
|
+
var defaultProps$3 = {
|
1399
1398
|
statusCode: null
|
1400
1399
|
};
|
1401
1400
|
var ErrorPage = function ErrorPage(_ref) {
|
@@ -1410,20 +1409,37 @@ var ErrorPage = function ErrorPage(_ref) {
|
|
1410
1409
|
className: "col-12 col-sm-8 col-md-6"
|
1411
1410
|
}, /*#__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)]))))));
|
1412
1411
|
};
|
1413
|
-
ErrorPage.propTypes = propTypes$
|
1414
|
-
ErrorPage.defaultProps = defaultProps$
|
1412
|
+
ErrorPage.propTypes = propTypes$3;
|
1413
|
+
ErrorPage.defaultProps = defaultProps$3;
|
1415
1414
|
|
1416
|
-
var
|
1417
|
-
|
1418
|
-
|
1419
|
-
|
1420
|
-
|
1421
|
-
|
1415
|
+
var basePages = /*#__PURE__*/Object.freeze({
|
1416
|
+
__proto__: null,
|
1417
|
+
ResourceCreate: ResourceCreatePage,
|
1418
|
+
ResourceDelete: ResourceDeletePage,
|
1419
|
+
ResourceEdit: ResourceEditPage,
|
1420
|
+
ResourceIndex: ResourceIndexPage,
|
1421
|
+
ResourceShow: ResourceShowPage,
|
1422
|
+
Home: HomePage,
|
1423
|
+
Account: AccountPage,
|
1424
|
+
Login: LoginPage,
|
1425
|
+
Error: ErrorPage
|
1426
|
+
});
|
1427
|
+
|
1428
|
+
var _excluded = ["path", "component", "exact"],
|
1429
|
+
_excluded2 = ["id"];
|
1430
|
+
var propTypes$2 = {
|
1431
|
+
resource: PropTypes.resource.isRequired
|
1432
|
+
};
|
1433
|
+
var defaultProps$2 = {};
|
1434
|
+
var ResourceRoutes = function ResourceRoutes(_ref) {
|
1435
|
+
var resource = _ref.resource;
|
1422
1436
|
var resourceId = resource.id,
|
1423
1437
|
_resource$pages = resource.pages,
|
1424
|
-
|
1438
|
+
pages = _resource$pages === void 0 ? {} : _resource$pages,
|
1425
1439
|
_resource$extraRoutes = resource.extraRoutes,
|
1426
1440
|
extraRoutes = _resource$extraRoutes === void 0 ? [] : _resource$extraRoutes;
|
1441
|
+
var route = useUrlGenerator();
|
1442
|
+
var componentsManager = useComponentsManager();
|
1427
1443
|
|
1428
1444
|
// Load custom pages from resource
|
1429
1445
|
var _ref2 = pages || {},
|
@@ -1437,82 +1453,95 @@ var createResourceRoutes = function createResourceRoutes(resource, _ref) {
|
|
1437
1453
|
editPage = _ref2$edit === void 0 ? null : _ref2$edit,
|
1438
1454
|
_ref2$delete = _ref2["delete"],
|
1439
1455
|
deletePage = _ref2$delete === void 0 ? null : _ref2$delete;
|
1440
|
-
var
|
1441
|
-
|
1442
|
-
|
1443
|
-
|
1444
|
-
|
1445
|
-
|
1446
|
-
|
1447
|
-
|
1448
|
-
|
1449
|
-
|
1450
|
-
|
1451
|
-
|
1452
|
-
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1456
|
-
|
1456
|
+
var ResourceIndexComponent = indexPage !== null && typeof indexPage.component !== 'undefined' ? componentsManager.getComponent(indexPage.component) : ResourceIndexPage;
|
1457
|
+
var ResourceShowComponent = showPage !== null && typeof showPage.component !== 'undefined' ? componentsManager.getComponent(showPage.component) : ResourceShowPage;
|
1458
|
+
var ResourceCreateComponent = createPage !== null && typeof createPage.component !== 'undefined' ? componentsManager.getComponent(createPage.component) : ResourceCreatePage;
|
1459
|
+
var ResourceEditComponent = editPage !== null && typeof editPage.component !== 'undefined' ? componentsManager.getComponent(editPage.component) : ResourceEditPage;
|
1460
|
+
var ResourceDeleteComponent = deletePage !== null && typeof deletePage.component !== 'undefined' ? componentsManager.getComponent(deletePage.component) : ResourceDeletePage;
|
1461
|
+
return /*#__PURE__*/React.createElement(Switch, null, extraRoutes.map(function (_ref3) {
|
1462
|
+
var path = _ref3.path,
|
1463
|
+
component = _ref3.component,
|
1464
|
+
_ref3$exact = _ref3.exact,
|
1465
|
+
exact = _ref3$exact === void 0 ? true : _ref3$exact,
|
1466
|
+
pageProps = _objectWithoutProperties(_ref3, _excluded);
|
1467
|
+
var RouteComponent = componentsManager.getComponent(component);
|
1468
|
+
return RouteComponent !== null ? /*#__PURE__*/React.createElement(Route, {
|
1469
|
+
key: "route-".concat(path),
|
1470
|
+
path: path,
|
1471
|
+
exact: exact,
|
1472
|
+
render: function render(_ref4) {
|
1473
|
+
var _ref4$match$params = _ref4.match.params,
|
1474
|
+
id = _ref4$match$params.id,
|
1475
|
+
params = _objectWithoutProperties(_ref4$match$params, _excluded2);
|
1476
|
+
return /*#__PURE__*/React.createElement(RouteComponent, Object.assign({
|
1477
|
+
resource: resource,
|
1478
|
+
itemId: id
|
1479
|
+
}, pageProps, params));
|
1480
|
+
}
|
1481
|
+
}) : null;
|
1482
|
+
}), /*#__PURE__*/React.createElement(Route, {
|
1457
1483
|
path: route('resources.index', {
|
1458
1484
|
resource: resourceId
|
1459
1485
|
}),
|
1460
1486
|
exact: true,
|
1461
|
-
|
1462
|
-
|
1463
|
-
|
1487
|
+
render: function render() {
|
1488
|
+
return /*#__PURE__*/React.createElement(ResourceIndexComponent, {
|
1489
|
+
resource: resource
|
1490
|
+
});
|
1491
|
+
}
|
1464
1492
|
}), /*#__PURE__*/React.createElement(Route, {
|
1465
1493
|
path: route('resources.create', {
|
1466
1494
|
resource: resourceId
|
1467
1495
|
}),
|
1468
1496
|
exact: true,
|
1469
|
-
|
1470
|
-
|
1471
|
-
|
1497
|
+
render: function render() {
|
1498
|
+
return /*#__PURE__*/React.createElement(ResourceCreateComponent, {
|
1499
|
+
resource: resource
|
1500
|
+
});
|
1501
|
+
}
|
1472
1502
|
}), /*#__PURE__*/React.createElement(Route, {
|
1473
1503
|
path: route('resources.show', {
|
1474
1504
|
resource: resourceId,
|
1475
1505
|
id: ':id'
|
1476
1506
|
}),
|
1477
1507
|
exact: true,
|
1478
|
-
|
1479
|
-
|
1480
|
-
|
1508
|
+
render: function render(_ref5) {
|
1509
|
+
var id = _ref5.match.params.id;
|
1510
|
+
return /*#__PURE__*/React.createElement(ResourceShowComponent, {
|
1511
|
+
resource: resource,
|
1512
|
+
itemId: id
|
1513
|
+
});
|
1514
|
+
}
|
1481
1515
|
}), /*#__PURE__*/React.createElement(Route, {
|
1482
1516
|
path: route('resources.edit', {
|
1483
1517
|
resource: resourceId,
|
1484
1518
|
id: ':id'
|
1485
1519
|
}),
|
1486
1520
|
exact: true,
|
1487
|
-
|
1488
|
-
|
1489
|
-
|
1521
|
+
render: function render(_ref6) {
|
1522
|
+
var id = _ref6.match.params.id;
|
1523
|
+
return /*#__PURE__*/React.createElement(ResourceEditComponent, {
|
1524
|
+
resource: resource,
|
1525
|
+
itemId: id
|
1526
|
+
});
|
1527
|
+
}
|
1490
1528
|
}), /*#__PURE__*/React.createElement(Route, {
|
1491
1529
|
path: route('resources.delete', {
|
1492
1530
|
resource: resourceId,
|
1493
1531
|
id: ':id'
|
1494
1532
|
}),
|
1495
1533
|
exact: true,
|
1496
|
-
|
1497
|
-
|
1498
|
-
|
1499
|
-
|
1500
|
-
|
1501
|
-
|
1502
|
-
|
1503
|
-
|
1504
|
-
pageProps = _objectWithoutProperties(_ref4, _excluded);
|
1505
|
-
var RouteComponent = componentsManager.getComponent(component);
|
1506
|
-
return RouteComponent !== null ? /*#__PURE__*/React.createElement(Route, {
|
1507
|
-
key: "route-".concat(path),
|
1508
|
-
path: path,
|
1509
|
-
exact: exact,
|
1510
|
-
element: /*#__PURE__*/React.createElement(RouteComponent, Object.assign({
|
1511
|
-
resource: resource
|
1512
|
-
}, pageProps))
|
1513
|
-
}) : null;
|
1514
|
-
})));
|
1534
|
+
render: function render(_ref7) {
|
1535
|
+
var id = _ref7.match.params.id;
|
1536
|
+
return /*#__PURE__*/React.createElement(ResourceDeleteComponent, {
|
1537
|
+
resource: resource,
|
1538
|
+
itemId: id
|
1539
|
+
});
|
1540
|
+
}
|
1541
|
+
}));
|
1515
1542
|
};
|
1543
|
+
ResourceRoutes.propTypes = propTypes$2;
|
1544
|
+
ResourceRoutes.defaultProps = defaultProps$2;
|
1516
1545
|
|
1517
1546
|
var propTypes$1 = {
|
1518
1547
|
statusCode: PropTypes.statusCode
|
@@ -1522,9 +1551,13 @@ var defaultProps$1 = {
|
|
1522
1551
|
};
|
1523
1552
|
var PanneauRoutes = function PanneauRoutes(_ref) {
|
1524
1553
|
var initialStatusCode = _ref.statusCode;
|
1554
|
+
var _usePanneau = usePanneau(),
|
1555
|
+
_usePanneau$pages = _usePanneau.pages,
|
1556
|
+
pages = _usePanneau$pages === void 0 ? {} : _usePanneau$pages;
|
1525
1557
|
var routes = useRoutes();
|
1526
1558
|
var _useLocation = useLocation(),
|
1527
|
-
pathname = _useLocation.pathname;
|
1559
|
+
pathname = _useLocation.pathname; // search
|
1560
|
+
|
1528
1561
|
var _useState = useState({
|
1529
1562
|
statusCode: initialStatusCode,
|
1530
1563
|
pathname: pathname
|
@@ -1532,25 +1565,27 @@ var PanneauRoutes = function PanneauRoutes(_ref) {
|
|
1532
1565
|
_useState2 = _slicedToArray(_useState, 2),
|
1533
1566
|
_useState2$ = _useState2[0],
|
1534
1567
|
statusCode = _useState2$.statusCode,
|
1535
|
-
|
1568
|
+
initialPathname = _useState2$.pathname,
|
1536
1569
|
setInitialRequest = _useState2[1];
|
1537
1570
|
var user = useUser();
|
1538
1571
|
var route = useUrlGenerator();
|
1539
1572
|
var resources = usePanneauResources();
|
1540
|
-
|
1573
|
+
|
1574
|
+
// const nextUrl = useMemo(() => {
|
1575
|
+
// const query = parseQuery(search);
|
1576
|
+
// return query !== null ? query.next || null : null;
|
1577
|
+
// }, [search]);
|
1578
|
+
|
1541
1579
|
useEffect(function () {
|
1542
|
-
if (pathname !==
|
1580
|
+
if (pathname !== initialPathname) {
|
1543
1581
|
setInitialRequest({
|
1544
1582
|
pathname: pathname,
|
1545
1583
|
statusCode: null
|
1546
1584
|
});
|
1547
1585
|
}
|
1548
|
-
}, [pathname,
|
1586
|
+
}, [pathname, initialPathname]);
|
1549
1587
|
|
1550
1588
|
// Custom Pages
|
1551
|
-
var _usePanneau = usePanneau(),
|
1552
|
-
_usePanneau$pages = _usePanneau.pages,
|
1553
|
-
pages = _usePanneau$pages === void 0 ? null : _usePanneau$pages;
|
1554
1589
|
var _ref2 = pages || {},
|
1555
1590
|
_ref2$home = _ref2.home,
|
1556
1591
|
homePage = _ref2$home === void 0 ? null : _ref2$home,
|
@@ -1560,55 +1595,55 @@ var PanneauRoutes = function PanneauRoutes(_ref) {
|
|
1560
1595
|
accountPage = _ref2$account === void 0 ? null : _ref2$account,
|
1561
1596
|
_ref2$error = _ref2.error,
|
1562
1597
|
errorPage = _ref2$error === void 0 ? null : _ref2$error;
|
1563
|
-
var HomeComponent =
|
1564
|
-
var LoginComponent =
|
1565
|
-
var AccountComponent =
|
1566
|
-
var ErrorComponent =
|
1567
|
-
|
1568
|
-
|
1569
|
-
|
1570
|
-
|
1571
|
-
|
1572
|
-
|
1573
|
-
|
1574
|
-
|
1575
|
-
|
1576
|
-
|
1577
|
-
|
1578
|
-
|
1579
|
-
exact: true,
|
1580
|
-
element: /*#__PURE__*/React.createElement(LoginComponent, null)
|
1581
|
-
}), /*#__PURE__*/React.createElement(Route, {
|
1582
|
-
path: "*",
|
1583
|
-
element: /*#__PURE__*/React.createElement(Navigate, {
|
1584
|
-
to: "".concat(route('auth.login'), "?next=").concat(encodeURIComponent(pathname)),
|
1585
|
-
replace: true
|
1586
|
-
})
|
1587
|
-
}));
|
1588
|
-
}
|
1589
|
-
|
1590
|
-
// Normal routes
|
1591
|
-
return /*#__PURE__*/React.createElement(Routes, null, /*#__PURE__*/React.createElement(Route, {
|
1598
|
+
var HomeComponent = getComponentFromName((homePage === null || homePage === void 0 ? void 0 : homePage.component) || 'home', basePages, homePage === null || homePage === void 0 ? void 0 : homePage.component);
|
1599
|
+
var LoginComponent = getComponentFromName((loginPage === null || loginPage === void 0 ? void 0 : loginPage.component) || 'login', basePages, loginPage === null || loginPage === void 0 ? void 0 : loginPage.component);
|
1600
|
+
var AccountComponent = getComponentFromName((accountPage === null || accountPage === void 0 ? void 0 : accountPage.component) || 'account', basePages, accountPage === null || accountPage === void 0 ? void 0 : accountPage.component);
|
1601
|
+
var ErrorComponent = getComponentFromName((errorPage === null || errorPage === void 0 ? void 0 : errorPage.component) || 'error', basePages, errorPage === null || errorPage === void 0 ? void 0 : errorPage.component);
|
1602
|
+
return /*#__PURE__*/React.createElement(Switch, null, statusCode !== null ? /*#__PURE__*/React.createElement(Route, {
|
1603
|
+
path: "*",
|
1604
|
+
render: function render() {
|
1605
|
+
return /*#__PURE__*/React.createElement(ErrorComponent, {
|
1606
|
+
statusCode: statusCode
|
1607
|
+
});
|
1608
|
+
}
|
1609
|
+
}) : null, user === null ? /*#__PURE__*/React.createElement(Route, {
|
1610
|
+
path: "*",
|
1611
|
+
exact: true,
|
1612
|
+
component: LoginComponent
|
1613
|
+
}) : null, user !== null ? /*#__PURE__*/React.createElement(Route, {
|
1592
1614
|
path: routes.home,
|
1593
1615
|
exact: true,
|
1594
|
-
|
1616
|
+
component: HomeComponent
|
1617
|
+
}) : /*#__PURE__*/React.createElement(Redirect, {
|
1618
|
+
from: routes.home,
|
1619
|
+
exact: true,
|
1620
|
+
to: route('login')
|
1595
1621
|
}), resources.map(function (resource) {
|
1596
1622
|
var _ref3 = resource || {},
|
1597
1623
|
resourceId = _ref3.id;
|
1598
|
-
return /*#__PURE__*/React.createElement(
|
1599
|
-
key: "resource-".concat(resourceId)
|
1600
|
-
|
1601
|
-
|
1602
|
-
|
1603
|
-
|
1604
|
-
|
1624
|
+
return user !== null ? /*#__PURE__*/React.createElement(Route, {
|
1625
|
+
key: "resource-".concat(resourceId),
|
1626
|
+
path: route('resources.index', {
|
1627
|
+
resource: resourceId
|
1628
|
+
}),
|
1629
|
+
render: function render() {
|
1630
|
+
return /*#__PURE__*/React.createElement(ResourceRoutes, {
|
1631
|
+
resource: resource
|
1632
|
+
});
|
1633
|
+
}
|
1634
|
+
}) : /*#__PURE__*/React.createElement(Redirect, {
|
1635
|
+
key: "resource-".concat(resourceId),
|
1636
|
+
from: route('resources.index', {
|
1637
|
+
resource: resourceId
|
1638
|
+
}),
|
1639
|
+
to: "".concat(route('login'), "?next=").concat(encodeURIComponent(pathname))
|
1640
|
+
});
|
1605
1641
|
}), /*#__PURE__*/React.createElement(Route, {
|
1606
|
-
path:
|
1607
|
-
|
1608
|
-
element: /*#__PURE__*/React.createElement(AccountComponent, null)
|
1642
|
+
path: route('auth.account'),
|
1643
|
+
component: AccountComponent
|
1609
1644
|
}), /*#__PURE__*/React.createElement(Route, {
|
1610
1645
|
path: "*",
|
1611
|
-
|
1646
|
+
component: ErrorComponent
|
1612
1647
|
}));
|
1613
1648
|
};
|
1614
1649
|
PanneauRoutes.propTypes = propTypes$1;
|