@webiny/app-admin 5.27.0 → 5.29.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/base/Admin.js +51 -29
- package/base/Admin.js.map +1 -1
- package/base/Base.js +52 -29
- package/base/Base.js.map +1 -1
- package/base/plugins/AddGraphQLQuerySelection.js +26 -11
- package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
- package/base/providers/ApolloProvider.d.ts +1 -1
- package/base/providers/ApolloProvider.js +25 -14
- package/base/providers/ApolloProvider.js.map +1 -1
- package/base/providers/TelemetryProvider.js +21 -8
- package/base/providers/TelemetryProvider.js.map +1 -1
- package/base/providers/UiStateProvider.js +18 -5
- package/base/providers/UiStateProvider.js.map +1 -1
- package/base/providers/ViewCompositionProvider.js +34 -15
- package/base/providers/ViewCompositionProvider.js.map +1 -1
- package/base/ui/Brand.js +18 -5
- package/base/ui/Brand.js.map +1 -1
- package/base/ui/CenteredView.js +21 -8
- package/base/ui/CenteredView.js.map +1 -1
- package/base/ui/Dashboard.js +18 -5
- package/base/ui/Dashboard.js.map +1 -1
- package/base/ui/Layout.js +21 -8
- package/base/ui/Layout.js.map +1 -1
- package/base/ui/LocaleSelector.js +18 -5
- package/base/ui/LocaleSelector.js.map +1 -1
- package/base/ui/LoginScreen.js +22 -7
- package/base/ui/LoginScreen.js.map +1 -1
- package/base/ui/Logo.js +25 -9
- package/base/ui/Logo.js.map +1 -1
- package/base/ui/Menu.js +46 -26
- package/base/ui/Menu.js.map +1 -1
- package/base/ui/Navigation.js +79 -42
- package/base/ui/Navigation.js.map +1 -1
- package/base/ui/NotFound.js +18 -5
- package/base/ui/NotFound.js.map +1 -1
- package/base/ui/Search.js +50 -22
- package/base/ui/Search.js.map +1 -1
- package/base/ui/Tags.js +23 -7
- package/base/ui/Tags.js.map +1 -1
- package/base/ui/UserMenu.js +74 -36
- package/base/ui/UserMenu.js.map +1 -1
- package/components/AdminLayout.js +18 -5
- package/components/AdminLayout.js.map +1 -1
- package/components/AppInstaller/AppInstaller.js +79 -49
- package/components/AppInstaller/AppInstaller.js.map +1 -1
- package/components/AppInstaller/Sidebar.js +50 -28
- package/components/AppInstaller/Sidebar.js.map +1 -1
- package/components/AppInstaller/index.js +20 -7
- package/components/AppInstaller/index.js.map +1 -1
- package/components/AppInstaller/styled.js +26 -9
- package/components/AppInstaller/styled.js.map +1 -1
- package/components/AppInstaller/useInstaller.js +67 -40
- package/components/AppInstaller/useInstaller.js.map +1 -1
- package/components/EmptyView.js +25 -11
- package/components/EmptyView.js.map +1 -1
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +23 -9
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +1 -1
- package/components/FileManager/BottomInfoBar/UploadStatus.js +21 -8
- package/components/FileManager/BottomInfoBar/UploadStatus.js.map +1 -1
- package/components/FileManager/BottomInfoBar.js +29 -11
- package/components/FileManager/BottomInfoBar.js.map +1 -1
- package/components/FileManager/DropFilesHere.js +27 -12
- package/components/FileManager/DropFilesHere.js.map +1 -1
- package/components/FileManager/File.js +42 -24
- package/components/FileManager/File.js.map +1 -1
- package/components/FileManager/FileDetails/Name.js +52 -30
- package/components/FileManager/FileDetails/Name.js.map +1 -1
- package/components/FileManager/FileDetails/Tags.js +112 -73
- package/components/FileManager/FileDetails/Tags.js.map +1 -1
- package/components/FileManager/FileDetails.js +157 -120
- package/components/FileManager/FileDetails.js.map +1 -1
- package/components/FileManager/FileManagerContext.js +39 -20
- package/components/FileManager/FileManagerContext.js.map +1 -1
- package/components/FileManager/FileManagerView.js +172 -130
- package/components/FileManager/FileManagerView.js.map +1 -1
- package/components/FileManager/LeftSidebar.js +49 -28
- package/components/FileManager/LeftSidebar.js.map +1 -1
- package/components/FileManager/NoPermissionView.js +35 -18
- package/components/FileManager/NoPermissionView.js.map +1 -1
- package/components/FileManager/NoResults.js +18 -6
- package/components/FileManager/NoResults.js.map +1 -1
- package/components/FileManager/getFileTypePlugin.js +23 -9
- package/components/FileManager/getFileTypePlugin.js.map +1 -1
- package/components/FileManager/getFileUploader.js +14 -4
- package/components/FileManager/getFileUploader.js.map +1 -1
- package/components/FileManager/graphql.js +24 -8
- package/components/FileManager/graphql.js.map +1 -1
- package/components/FileManager/outputFileSelectionError.js +16 -4
- package/components/FileManager/outputFileSelectionError.js.map +1 -1
- package/components/FileManager/types.js +5 -1
- package/components/FileManager/types.js.map +1 -1
- package/components/FileManager.js +60 -36
- package/components/FileManager.js.map +1 -1
- package/components/FloatingActionButton.js +18 -6
- package/components/FloatingActionButton.js.map +1 -1
- package/components/MultiImageUpload.js +24 -12
- package/components/MultiImageUpload.js.map +1 -1
- package/components/OverlayLayout/OverlayLayout.js +68 -43
- package/components/OverlayLayout/OverlayLayout.js.map +1 -1
- package/components/OverlayLayout/index.js +13 -1
- package/components/OverlayLayout/index.js.map +1 -1
- package/components/Permissions/Permissions.js +28 -11
- package/components/Permissions/Permissions.js.map +1 -1
- package/components/Permissions/StyledComponents.js +26 -9
- package/components/Permissions/StyledComponents.js.map +1 -1
- package/components/Permissions/index.js +30 -2
- package/components/Permissions/index.js.map +1 -1
- package/components/RichTextEditor/RichTextEditor.js +24 -9
- package/components/RichTextEditor/RichTextEditor.js.map +1 -1
- package/components/RichTextEditor/index.js +21 -2
- package/components/RichTextEditor/index.js.map +1 -1
- package/components/RichTextEditor/tools/header/index.js +34 -33
- package/components/RichTextEditor/tools/header/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/index.js +34 -28
- package/components/RichTextEditor/tools/image/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/svgs.js +9 -2
- package/components/RichTextEditor/tools/image/svgs.js.map +1 -1
- package/components/RichTextEditor/tools/image/tunes.js +28 -22
- package/components/RichTextEditor/tools/image/tunes.js.map +1 -1
- package/components/RichTextEditor/tools/image/types.js +5 -1
- package/components/RichTextEditor/tools/image/types.js.map +1 -1
- package/components/RichTextEditor/tools/image/ui.js +30 -23
- package/components/RichTextEditor/tools/image/ui.js.map +1 -1
- package/components/RichTextEditor/tools/paragraph/index.js +43 -41
- package/components/RichTextEditor/tools/paragraph/index.js.map +1 -1
- package/components/RichTextEditor/tools/textColor/index.js +27 -26
- package/components/RichTextEditor/tools/textColor/index.js.map +1 -1
- package/components/RichTextEditor/tools/utils.js +14 -5
- package/components/RichTextEditor/tools/utils.js.map +1 -1
- package/components/Routes.js +24 -9
- package/components/Routes.js.map +1 -1
- package/components/SearchUI.js +23 -9
- package/components/SearchUI.js.map +1 -1
- package/components/SimpleForm/SimpleForm.js +60 -29
- package/components/SimpleForm/SimpleForm.js.map +1 -1
- package/components/SimpleForm/index.js +31 -1
- package/components/SimpleForm/index.js.map +1 -1
- package/components/SimpleUI/InputField.js +35 -18
- package/components/SimpleUI/InputField.js.map +1 -1
- package/components/SingleImageUpload.js +41 -22
- package/components/SingleImageUpload.js.map +1 -1
- package/components/SplitView/SplitView.js +42 -19
- package/components/SplitView/SplitView.js.map +1 -1
- package/components/SplitView/index.js +25 -1
- package/components/SplitView/index.js.map +1 -1
- package/components/index.js +13 -1
- package/components/index.js.map +1 -1
- package/hooks/useConfirmationDialog.js +29 -16
- package/hooks/useConfirmationDialog.js.map +1 -1
- package/hooks/useDialog.js +16 -6
- package/hooks/useDialog.js.map +1 -1
- package/hooks/useSnackbar.js +20 -7
- package/hooks/useSnackbar.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +295 -26
- package/index.js.map +1 -1
- package/package.json +21 -20
- package/plugins/FileManagerFileTypePlugin.js +33 -20
- package/plugins/FileManagerFileTypePlugin.js.map +1 -1
- package/plugins/MenuPlugin.js +33 -20
- package/plugins/MenuPlugin.js.map +1 -1
- package/plugins/PermissionRendererPlugin.js +33 -20
- package/plugins/PermissionRendererPlugin.js.map +1 -1
- package/plugins/fileManager/fileDefault.js +24 -8
- package/plugins/fileManager/fileDefault.js.map +1 -1
- package/plugins/fileManager/fileImage/DeleteAction.js +45 -24
- package/plugins/fileManager/fileImage/DeleteAction.js.map +1 -1
- package/plugins/fileManager/fileImage/EditAction.js +51 -28
- package/plugins/fileManager/fileImage/EditAction.js.map +1 -1
- package/plugins/fileManager/fileImage/index.js +29 -10
- package/plugins/fileManager/fileImage/index.js.map +1 -1
- package/plugins/fileManager/index.js +15 -3
- package/plugins/fileManager/index.js.map +1 -1
- package/plugins/globalSearch/SearchBar.js +82 -60
- package/plugins/globalSearch/SearchBar.js.map +1 -1
- package/plugins/globalSearch/SearchBarDropdown.js +46 -27
- package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
- package/plugins/globalSearch/index.js +9 -2
- package/plugins/globalSearch/index.js.map +1 -1
- package/plugins/globalSearch/styled.js +33 -13
- package/plugins/globalSearch/styled.js.map +1 -1
- package/plugins/index.js +20 -6
- package/plugins/index.js.map +1 -1
- package/plugins/uiLayoutRenderer/index.js +26 -13
- package/plugins/uiLayoutRenderer/index.js.map +1 -1
- package/types.js +5 -1
- package/types.js.map +1 -1
- package/ui/UIElement.js +19 -1
- package/ui/UIElement.js.map +1 -1
- package/ui/UILayout.js +19 -1
- package/ui/UILayout.js.map +1 -1
- package/ui/UIRenderer.js +13 -1
- package/ui/UIRenderer.js.map +1 -1
- package/ui/UIView.js +25 -1
- package/ui/UIView.js.map +1 -1
- package/ui/elements/AccordionElement.js +52 -32
- package/ui/elements/AccordionElement.js.map +1 -1
- package/ui/elements/ButtonElement.js +36 -19
- package/ui/elements/ButtonElement.js.map +1 -1
- package/ui/elements/ButtonGroupElement.js +38 -19
- package/ui/elements/ButtonGroupElement.js.map +1 -1
- package/ui/elements/GenericElement.js +18 -1
- package/ui/elements/GenericElement.js.map +1 -1
- package/ui/elements/LabelElement.js +26 -13
- package/ui/elements/LabelElement.js.map +1 -1
- package/ui/elements/NavigationMenuElement.js +48 -30
- package/ui/elements/NavigationMenuElement.js.map +1 -1
- package/ui/elements/PanelElement.js +27 -12
- package/ui/elements/PanelElement.js.map +1 -1
- package/ui/elements/PlaceholderElement.js +27 -13
- package/ui/elements/PlaceholderElement.js.map +1 -1
- package/ui/elements/SmallButtonElement.js +36 -19
- package/ui/elements/SmallButtonElement.js.map +1 -1
- package/ui/elements/TypographyElement.js +38 -20
- package/ui/elements/TypographyElement.js.map +1 -1
- package/ui/elements/ViewElement.js +18 -1
- package/ui/elements/ViewElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +33 -17
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement.js +41 -23
- package/ui/elements/form/DynamicFieldsetElement.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js +30 -14
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +51 -28
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +45 -25
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/styled.d.ts +3 -3
- package/ui/elements/form/FileManagerElement/styled.js +26 -12
- package/ui/elements/form/FileManagerElement/styled.js.map +1 -1
- package/ui/elements/form/FileManagerElement.js +39 -22
- package/ui/elements/form/FileManagerElement.js.map +1 -1
- package/ui/elements/form/FormElement.js +42 -21
- package/ui/elements/form/FormElement.js.map +1 -1
- package/ui/elements/form/FormFieldElement.js +38 -23
- package/ui/elements/form/FormFieldElement.js.map +1 -1
- package/ui/elements/form/HiddenElement.js +30 -15
- package/ui/elements/form/HiddenElement.js.map +1 -1
- package/ui/elements/form/InputElement.js +34 -18
- package/ui/elements/form/InputElement.js.map +1 -1
- package/ui/elements/form/PasswordElement.js +34 -18
- package/ui/elements/form/PasswordElement.js.map +1 -1
- package/ui/elements/form/SelectElement.js +35 -19
- package/ui/elements/form/SelectElement.js.map +1 -1
- package/ui/elements/form/TextareaElement.js +34 -18
- package/ui/elements/form/TextareaElement.js.map +1 -1
- package/ui/views/AdminView/ContentElement.js +40 -24
- package/ui/views/AdminView/ContentElement.js.map +1 -1
- package/ui/views/AdminView/HeaderElement.js +60 -39
- package/ui/views/AdminView/HeaderElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionCenterElement.js +41 -21
- package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionLeftElement.js +41 -21
- package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionRightElement.js +41 -21
- package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -1
- package/ui/views/AdminView/components/Dialog.js +32 -15
- package/ui/views/AdminView/components/Dialog.js.map +1 -1
- package/ui/views/AdminView/components/Hamburger.js +25 -11
- package/ui/views/AdminView/components/Hamburger.js.map +1 -1
- package/ui/views/AdminView/components/Snackbar.js +26 -13
- package/ui/views/AdminView/components/Snackbar.js.map +1 -1
- package/ui/views/FormView/FormContainerElement.js +45 -25
- package/ui/views/FormView/FormContainerElement.js.map +1 -1
- package/ui/views/FormView/FormContentElement.js +27 -12
- package/ui/views/FormView/FormContentElement.js.map +1 -1
- package/ui/views/FormView/FormFooterElement.js +38 -19
- package/ui/views/FormView/FormFooterElement.js.map +1 -1
- package/ui/views/FormView/FormHeaderElement.js +52 -30
- package/ui/views/FormView/FormHeaderElement.js.map +1 -1
- package/ui/views/FormView.js +60 -34
- package/ui/views/FormView.js.map +1 -1
- package/ui/views/OverlayView/ContentElement.js +38 -19
- package/ui/views/OverlayView/ContentElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderElement.js +56 -37
- package/ui/views/OverlayView/HeaderElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderTitleElement.js +44 -25
- package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -1
- package/ui/views/OverlayView/useOverlayView.js +32 -16
- package/ui/views/OverlayView/useOverlayView.js.map +1 -1
- package/ui/views/OverlayView.js +65 -42
- package/ui/views/OverlayView.js.map +1 -1
- package/ui/views/SplitView/SplitViewPanelElement.js +47 -28
- package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -1
- package/ui/views/SplitView.js +57 -37
- package/ui/views/SplitView.js.map +1 -1
package/base/ui/Navigation.js
CHANGED
|
@@ -1,11 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.NavigationRenderer = exports.NavigationProvider = exports.Navigation = exports.MenuItems = exports.MenuItemRenderer = exports.MenuItem = void 0;
|
|
11
|
+
exports.useMenuItem = useMenuItem;
|
|
12
|
+
exports.useNavigation = useNavigation;
|
|
13
|
+
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
16
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
+
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
|
|
20
|
+
var _nanoid = require("nanoid");
|
|
21
|
+
|
|
22
|
+
var _appAdminCore = require("@webiny/app-admin-core");
|
|
23
|
+
|
|
24
|
+
var _ = require("../..");
|
|
25
|
+
|
|
26
|
+
var _plugins = require("@webiny/plugins");
|
|
27
|
+
|
|
28
|
+
var NavigationContext = /*#__PURE__*/(0, _react.createContext)({
|
|
9
29
|
menuItems: [],
|
|
10
30
|
setMenu: function setMenu() {
|
|
11
31
|
return void 0;
|
|
@@ -15,28 +35,30 @@ var NavigationContext = /*#__PURE__*/createContext({
|
|
|
15
35
|
}
|
|
16
36
|
});
|
|
17
37
|
NavigationContext.displayName = "NavigationContext";
|
|
18
|
-
|
|
19
|
-
|
|
38
|
+
|
|
39
|
+
function useNavigation() {
|
|
40
|
+
return (0, _react.useContext)(NavigationContext);
|
|
20
41
|
} // IMPORTANT! The following component is for BACKWARDS COMPATIBILITY purposes only!
|
|
21
42
|
// It is not a public component, and is not even exported from this file. We need it to take care of
|
|
22
43
|
// scaffolded plugins in users' projects, as well as our own applications (Page Builder and Form Builder).
|
|
23
44
|
|
|
45
|
+
|
|
24
46
|
var LegacyMenu = function LegacyMenu(props) {
|
|
25
|
-
return /*#__PURE__*/
|
|
26
|
-
name: props.name || nanoid(),
|
|
47
|
+
return /*#__PURE__*/_react.default.createElement(_.AddMenu, Object.assign({}, props, {
|
|
48
|
+
name: props.name || (0, _nanoid.nanoid)(),
|
|
27
49
|
label: props.label
|
|
28
50
|
}), props.children);
|
|
29
51
|
};
|
|
30
52
|
|
|
31
53
|
var LegacyMenuPlugins = function LegacyMenuPlugins() {
|
|
32
54
|
// IMPORTANT! The following piece of code is for BACKWARDS COMPATIBILITY purposes only!
|
|
33
|
-
var _useState = useState(null),
|
|
34
|
-
_useState2 =
|
|
55
|
+
var _useState = (0, _react.useState)(null),
|
|
56
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
35
57
|
menus = _useState2[0],
|
|
36
58
|
setMenus = _useState2[1];
|
|
37
59
|
|
|
38
|
-
useEffect(function () {
|
|
39
|
-
var menuPlugins = plugins.byType("admin-menu");
|
|
60
|
+
(0, _react.useEffect)(function () {
|
|
61
|
+
var menuPlugins = _plugins.plugins.byType("admin-menu");
|
|
40
62
|
|
|
41
63
|
if (!menuPlugins) {
|
|
42
64
|
return;
|
|
@@ -44,7 +66,7 @@ var LegacyMenuPlugins = function LegacyMenuPlugins() {
|
|
|
44
66
|
|
|
45
67
|
var menuElements = menuPlugins.map(function (plugin) {
|
|
46
68
|
// TODO @ts-refactor figure out correct types or write a comment to leave as React.FC
|
|
47
|
-
return /*#__PURE__*/
|
|
69
|
+
return /*#__PURE__*/_react.default.createElement(_appAdminCore.Plugins, {
|
|
48
70
|
key: plugin.name
|
|
49
71
|
}, plugin.render({
|
|
50
72
|
Menu: LegacyMenu,
|
|
@@ -58,12 +80,12 @@ var LegacyMenuPlugins = function LegacyMenuPlugins() {
|
|
|
58
80
|
return menus;
|
|
59
81
|
};
|
|
60
82
|
|
|
61
|
-
|
|
83
|
+
var NavigationProvider = function NavigationProvider(Component) {
|
|
62
84
|
return function NavigationProvider(_ref) {
|
|
63
85
|
var children = _ref.children;
|
|
64
86
|
|
|
65
|
-
var _useState3 = useState([]),
|
|
66
|
-
_useState4 =
|
|
87
|
+
var _useState3 = (0, _react.useState)([]),
|
|
88
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
67
89
|
menuItems = _useState4[0],
|
|
68
90
|
setState = _useState4[1];
|
|
69
91
|
|
|
@@ -72,21 +94,21 @@ export var NavigationProvider = function NavigationProvider(Component) {
|
|
|
72
94
|
var index = state.findIndex(function (m) {
|
|
73
95
|
return m.name === id;
|
|
74
96
|
});
|
|
75
|
-
var newMenu = index > -1 ? updater(state[index]) : updater(createEmptyMenu(id));
|
|
97
|
+
var newMenu = index > -1 ? updater(state[index]) : updater((0, _.createEmptyMenu)(id));
|
|
76
98
|
|
|
77
99
|
if (!newMenu) {
|
|
78
|
-
return
|
|
100
|
+
return (0, _toConsumableArray2.default)(state);
|
|
79
101
|
}
|
|
80
102
|
|
|
81
103
|
if (!newMenu.children) {
|
|
82
104
|
newMenu.children = [];
|
|
83
105
|
}
|
|
84
106
|
|
|
85
|
-
return index > -1 ? [].concat(
|
|
107
|
+
return index > -1 ? [].concat((0, _toConsumableArray2.default)(state.slice(0, index)), [newMenu], (0, _toConsumableArray2.default)(state.slice(index + 1))) : [].concat((0, _toConsumableArray2.default)(state), [newMenu]);
|
|
86
108
|
});
|
|
87
109
|
};
|
|
88
110
|
|
|
89
|
-
var removeMenu = useCallback(function (id) {
|
|
111
|
+
var removeMenu = (0, _react.useCallback)(function (id) {
|
|
90
112
|
setState(function (state) {
|
|
91
113
|
var index = state.findIndex(function (m) {
|
|
92
114
|
return m.name === id;
|
|
@@ -96,52 +118,67 @@ export var NavigationProvider = function NavigationProvider(Component) {
|
|
|
96
118
|
return state;
|
|
97
119
|
}
|
|
98
120
|
|
|
99
|
-
return [].concat(
|
|
121
|
+
return [].concat((0, _toConsumableArray2.default)(state.slice(0, index)), (0, _toConsumableArray2.default)(state.slice(index + 1)));
|
|
100
122
|
});
|
|
101
123
|
}, [setState]);
|
|
102
|
-
var context = useMemo(function () {
|
|
124
|
+
var context = (0, _react.useMemo)(function () {
|
|
103
125
|
return {
|
|
104
126
|
menuItems: menuItems,
|
|
105
127
|
setMenu: setMenu,
|
|
106
128
|
removeMenu: removeMenu
|
|
107
129
|
};
|
|
108
130
|
}, [menuItems, setMenu, removeMenu]);
|
|
109
|
-
return /*#__PURE__*/
|
|
131
|
+
return /*#__PURE__*/_react.default.createElement(NavigationContext.Provider, {
|
|
110
132
|
value: context
|
|
111
|
-
}, /*#__PURE__*/
|
|
133
|
+
}, /*#__PURE__*/_react.default.createElement(LegacyMenuPlugins, null), /*#__PURE__*/_react.default.createElement(Component, null, children));
|
|
112
134
|
};
|
|
113
135
|
};
|
|
114
|
-
|
|
115
|
-
|
|
136
|
+
|
|
137
|
+
exports.NavigationProvider = NavigationProvider;
|
|
138
|
+
|
|
139
|
+
var Navigation = function Navigation() {
|
|
140
|
+
return /*#__PURE__*/_react.default.createElement(_.Tags, {
|
|
116
141
|
tags: {
|
|
117
142
|
location: "navigation"
|
|
118
143
|
}
|
|
119
|
-
}, /*#__PURE__*/
|
|
144
|
+
}, /*#__PURE__*/_react.default.createElement(NavigationRenderer, null));
|
|
120
145
|
};
|
|
121
|
-
|
|
122
|
-
|
|
146
|
+
|
|
147
|
+
exports.Navigation = Navigation;
|
|
148
|
+
var NavigationRenderer = (0, _appAdminCore.makeComposable)("NavigationRenderer");
|
|
149
|
+
exports.NavigationRenderer = NavigationRenderer;
|
|
150
|
+
|
|
151
|
+
var MenuItemContext = /*#__PURE__*/_react.default.createContext({
|
|
123
152
|
menuItem: undefined,
|
|
124
153
|
depth: -1
|
|
125
154
|
});
|
|
155
|
+
|
|
126
156
|
MenuItemContext.displayName = "MenuItemContext";
|
|
127
|
-
|
|
128
|
-
|
|
157
|
+
|
|
158
|
+
function useMenuItem() {
|
|
159
|
+
return _react.default.useContext(MenuItemContext);
|
|
129
160
|
}
|
|
130
|
-
|
|
161
|
+
|
|
162
|
+
var MenuItems = (0, _appAdminCore.makeComposable)("MenuItems", function (_ref2) {
|
|
131
163
|
var menuItems = _ref2.menuItems;
|
|
132
164
|
var menuItem = useMenuItem();
|
|
133
165
|
var depth = menuItem ? menuItem.depth : -1;
|
|
134
|
-
return /*#__PURE__*/
|
|
135
|
-
return /*#__PURE__*/
|
|
166
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, menuItems.map(function (menuItem) {
|
|
167
|
+
return /*#__PURE__*/_react.default.createElement(MenuItemContext.Provider, {
|
|
136
168
|
key: menuItem.name,
|
|
137
169
|
value: {
|
|
138
170
|
menuItem: menuItem,
|
|
139
171
|
depth: depth + 1
|
|
140
172
|
}
|
|
141
|
-
}, /*#__PURE__*/
|
|
173
|
+
}, /*#__PURE__*/_react.default.createElement(MenuItem, null));
|
|
142
174
|
}));
|
|
143
175
|
});
|
|
144
|
-
|
|
145
|
-
|
|
176
|
+
exports.MenuItems = MenuItems;
|
|
177
|
+
|
|
178
|
+
var MenuItem = function MenuItem() {
|
|
179
|
+
return /*#__PURE__*/_react.default.createElement(MenuItemRenderer, null);
|
|
146
180
|
};
|
|
147
|
-
|
|
181
|
+
|
|
182
|
+
exports.MenuItem = MenuItem;
|
|
183
|
+
var MenuItemRenderer = (0, _appAdminCore.makeComposable)("MenuItemRenderer");
|
|
184
|
+
exports.MenuItemRenderer = MenuItemRenderer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Navigation.tsx"],"names":["React","Fragment","useEffect","createContext","useCallback","useMemo","useState","useContext","nanoid","makeComposable","Plugins","AddMenu","Menu","Tags","createEmptyMenu","plugins","NavigationContext","menuItems","setMenu","removeMenu","displayName","useNavigation","LegacyMenu","props","name","label","children","LegacyMenuPlugins","menus","setMenus","menuPlugins","byType","menuElements","map","plugin","render","Item","Section","NavigationProvider","Component","setState","id","updater","state","index","findIndex","m","newMenu","slice","context","Navigation","location","NavigationRenderer","MenuItemContext","menuItem","undefined","depth","useMenuItem","MenuItems","MenuItem","MenuItemRenderer"],"mappings":"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","sourcesContent":["import React, {\n Fragment,\n useEffect,\n createContext,\n useCallback,\n useMemo,\n useState,\n useContext\n} from \"react\";\nimport { nanoid } from \"nanoid\";\nimport { makeComposable, Plugins } from \"@webiny/app-admin-core\";\nimport { MenuData, MenuProps, AddMenu as Menu, Tags, MenuUpdater, createEmptyMenu } from \"~/index\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminMenuPlugin } from \"~/types\";\nimport { ItemProps, SectionProps } from \"~/plugins/MenuPlugin\";\n\nexport interface NavigationContext {\n menuItems: MenuData[];\n setMenu(id: string, update: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst NavigationContext = createContext<NavigationContext>({\n menuItems: [],\n setMenu: () => {\n return void 0;\n },\n removeMenu: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation() {\n return useContext(NavigationContext);\n}\n\n// IMPORTANT! The following component is for BACKWARDS COMPATIBILITY purposes only!\n// It is not a public component, and is not even exported from this file. We need it to take care of\n// scaffolded plugins in users' projects, as well as our own applications (Page Builder and Form Builder).\nconst LegacyMenu: React.FC<MenuProps | SectionProps | ItemProps> = props => {\n return (\n <Menu {...props} name={(props as MenuProps).name || nanoid()} label={props.label as string}>\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins: React.FC = () => {\n // IMPORTANT! The following piece of code is for BACKWARDS COMPATIBILITY purposes only!\n const [menus, setMenus] = useState<JSX.Element | null>(null);\n\n useEffect(() => {\n const menuPlugins = plugins.byType<AdminMenuPlugin>(\"admin-menu\");\n if (!menuPlugins) {\n return;\n }\n\n const menuElements = menuPlugins.map(plugin => {\n // TODO @ts-refactor figure out correct types or write a comment to leave as React.FC\n return (\n <Plugins key={plugin.name}>\n {plugin.render({\n Menu: LegacyMenu as React.FC,\n Item: LegacyMenu as React.FC,\n Section: LegacyMenu as React.FC\n })}\n </Plugins>\n );\n });\n // TODO @ts-refactor\n setMenus(menuElements as any);\n }, []);\n\n return menus;\n};\n\nexport const NavigationProvider = (Component: React.ComponentType<unknown>): React.FC => {\n return function NavigationProvider({ children }) {\n const [menuItems, setState] = useState<MenuData[]>([]);\n\n const setMenu = (id: string, updater: MenuUpdater): void => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n const newMenu = index > -1 ? updater(state[index]) : updater(createEmptyMenu(id));\n if (!newMenu) {\n return [...state];\n }\n if (!newMenu.children) {\n newMenu.children = [];\n }\n\n return index > -1\n ? [...state.slice(0, index), newMenu, ...state.slice(index + 1)]\n : [...state, newMenu];\n });\n };\n const removeMenu = useCallback(\n id => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n if (index < 0) {\n return state;\n }\n\n return [...state.slice(0, index), ...state.slice(index + 1)];\n });\n },\n [setState]\n );\n\n const context = useMemo<NavigationContext>(\n () => ({\n menuItems,\n setMenu,\n removeMenu\n }),\n [menuItems, setMenu, removeMenu]\n );\n\n return (\n <NavigationContext.Provider value={context}>\n <LegacyMenuPlugins />\n <Component>{children}</Component>\n </NavigationContext.Provider>\n );\n };\n};\n\nexport const Navigation: React.FC = () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n};\n\nexport const NavigationRenderer = makeComposable(\"NavigationRenderer\");\n\ninterface MenuItemContext {\n menuItem?: MenuData;\n depth: number;\n}\n\nconst MenuItemContext = React.createContext<MenuItemContext>({\n menuItem: undefined,\n depth: -1\n});\nMenuItemContext.displayName = \"MenuItemContext\";\n\nexport function useMenuItem() {\n return React.useContext(MenuItemContext);\n}\n\nexport interface MenuItemsProps {\n menuItems: MenuData[];\n}\n\nexport const MenuItems = makeComposable<MenuItemsProps>(\"MenuItems\", ({ menuItems }) => {\n const menuItem = useMenuItem();\n\n const depth = menuItem ? menuItem.depth : -1;\n\n return (\n <Fragment>\n {menuItems.map(menuItem => (\n <MenuItemContext.Provider\n key={menuItem.name}\n value={{ menuItem, depth: depth + 1 }}\n >\n <MenuItem />\n </MenuItemContext.Provider>\n ))}\n </Fragment>\n );\n});\n\nexport const MenuItem: React.FC = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeComposable(\"MenuItemRenderer\");\n"]}
|
|
1
|
+
{"version":3,"names":["NavigationContext","createContext","menuItems","setMenu","removeMenu","displayName","useNavigation","useContext","LegacyMenu","props","name","nanoid","label","children","LegacyMenuPlugins","useState","menus","setMenus","useEffect","menuPlugins","plugins","byType","menuElements","map","plugin","render","Menu","Item","Section","NavigationProvider","Component","setState","id","updater","state","index","findIndex","m","newMenu","createEmptyMenu","slice","useCallback","context","useMemo","Navigation","location","NavigationRenderer","makeComposable","MenuItemContext","React","menuItem","undefined","depth","useMenuItem","MenuItems","MenuItem","MenuItemRenderer"],"sources":["Navigation.tsx"],"sourcesContent":["import React, {\n Fragment,\n useEffect,\n createContext,\n useCallback,\n useMemo,\n useState,\n useContext\n} from \"react\";\nimport { nanoid } from \"nanoid\";\nimport { makeComposable, Plugins } from \"@webiny/app-admin-core\";\nimport { MenuData, MenuProps, AddMenu as Menu, Tags, MenuUpdater, createEmptyMenu } from \"~/index\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminMenuPlugin } from \"~/types\";\nimport { ItemProps, SectionProps } from \"~/plugins/MenuPlugin\";\n\nexport interface NavigationContext {\n menuItems: MenuData[];\n setMenu(id: string, update: MenuUpdater): void;\n removeMenu(id: string): void;\n}\n\nconst NavigationContext = createContext<NavigationContext>({\n menuItems: [],\n setMenu: () => {\n return void 0;\n },\n removeMenu: () => {\n return void 0;\n }\n});\nNavigationContext.displayName = \"NavigationContext\";\n\nexport function useNavigation() {\n return useContext(NavigationContext);\n}\n\n// IMPORTANT! The following component is for BACKWARDS COMPATIBILITY purposes only!\n// It is not a public component, and is not even exported from this file. We need it to take care of\n// scaffolded plugins in users' projects, as well as our own applications (Page Builder and Form Builder).\nconst LegacyMenu: React.FC<MenuProps | SectionProps | ItemProps> = props => {\n return (\n <Menu {...props} name={(props as MenuProps).name || nanoid()} label={props.label as string}>\n {props.children}\n </Menu>\n );\n};\n\nconst LegacyMenuPlugins: React.FC = () => {\n // IMPORTANT! The following piece of code is for BACKWARDS COMPATIBILITY purposes only!\n const [menus, setMenus] = useState<JSX.Element | null>(null);\n\n useEffect(() => {\n const menuPlugins = plugins.byType<AdminMenuPlugin>(\"admin-menu\");\n if (!menuPlugins) {\n return;\n }\n\n const menuElements = menuPlugins.map(plugin => {\n // TODO @ts-refactor figure out correct types or write a comment to leave as React.FC\n return (\n <Plugins key={plugin.name}>\n {plugin.render({\n Menu: LegacyMenu as React.FC,\n Item: LegacyMenu as React.FC,\n Section: LegacyMenu as React.FC\n })}\n </Plugins>\n );\n });\n // TODO @ts-refactor\n setMenus(menuElements as any);\n }, []);\n\n return menus;\n};\n\nexport const NavigationProvider = (Component: React.ComponentType<unknown>): React.FC => {\n return function NavigationProvider({ children }) {\n const [menuItems, setState] = useState<MenuData[]>([]);\n\n const setMenu = (id: string, updater: MenuUpdater): void => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n const newMenu = index > -1 ? updater(state[index]) : updater(createEmptyMenu(id));\n if (!newMenu) {\n return [...state];\n }\n if (!newMenu.children) {\n newMenu.children = [];\n }\n\n return index > -1\n ? [...state.slice(0, index), newMenu, ...state.slice(index + 1)]\n : [...state, newMenu];\n });\n };\n const removeMenu = useCallback(\n id => {\n setState(state => {\n const index = state.findIndex(m => m.name === id);\n\n if (index < 0) {\n return state;\n }\n\n return [...state.slice(0, index), ...state.slice(index + 1)];\n });\n },\n [setState]\n );\n\n const context = useMemo<NavigationContext>(\n () => ({\n menuItems,\n setMenu,\n removeMenu\n }),\n [menuItems, setMenu, removeMenu]\n );\n\n return (\n <NavigationContext.Provider value={context}>\n <LegacyMenuPlugins />\n <Component>{children}</Component>\n </NavigationContext.Provider>\n );\n };\n};\n\nexport const Navigation: React.FC = () => {\n return (\n <Tags tags={{ location: \"navigation\" }}>\n <NavigationRenderer />\n </Tags>\n );\n};\n\nexport const NavigationRenderer = makeComposable(\"NavigationRenderer\");\n\ninterface MenuItemContext {\n menuItem?: MenuData;\n depth: number;\n}\n\nconst MenuItemContext = React.createContext<MenuItemContext>({\n menuItem: undefined,\n depth: -1\n});\nMenuItemContext.displayName = \"MenuItemContext\";\n\nexport function useMenuItem() {\n return React.useContext(MenuItemContext);\n}\n\nexport interface MenuItemsProps {\n menuItems: MenuData[];\n}\n\nexport const MenuItems = makeComposable<MenuItemsProps>(\"MenuItems\", ({ menuItems }) => {\n const menuItem = useMenuItem();\n\n const depth = menuItem ? menuItem.depth : -1;\n\n return (\n <Fragment>\n {menuItems.map(menuItem => (\n <MenuItemContext.Provider\n key={menuItem.name}\n value={{ menuItem, depth: depth + 1 }}\n >\n <MenuItem />\n </MenuItemContext.Provider>\n ))}\n </Fragment>\n );\n});\n\nexport const MenuItem: React.FC = () => {\n return <MenuItemRenderer />;\n};\n\nexport const MenuItemRenderer = makeComposable(\"MenuItemRenderer\");\n"],"mappings":"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"}
|
package/base/ui/NotFound.js
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
5
7
|
});
|
|
6
|
-
|
|
8
|
+
exports.NotFoundRenderer = exports.NotFound = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _appAdminCore = require("@webiny/app-admin-core");
|
|
13
|
+
|
|
14
|
+
var NotFound = (0, _appAdminCore.makeComposable)("NotFound", function () {
|
|
15
|
+
return /*#__PURE__*/_react.default.createElement(NotFoundRenderer, null);
|
|
16
|
+
});
|
|
17
|
+
exports.NotFound = NotFound;
|
|
18
|
+
var NotFoundRenderer = (0, _appAdminCore.makeComposable)("NotFoundRenderer");
|
|
19
|
+
exports.NotFoundRenderer = NotFoundRenderer;
|
package/base/ui/NotFound.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["NotFound","makeComposable","NotFoundRenderer"],"sources":["NotFound.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeComposable } from \"@webiny/app-admin-core\";\n\nexport const NotFound = makeComposable(\"NotFound\", () => {\n return <NotFoundRenderer />;\n});\n\nexport const NotFoundRenderer = makeComposable(\"NotFoundRenderer\");\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,IAAMA,QAAQ,GAAG,IAAAC,4BAAA,EAAe,UAAf,EAA2B,YAAM;EACrD,oBAAO,6BAAC,gBAAD,OAAP;AACH,CAFuB,CAAjB;;AAIA,IAAMC,gBAAgB,GAAG,IAAAD,4BAAA,EAAe,kBAAf,CAAzB"}
|
package/base/ui/Search.js
CHANGED
|
@@ -1,53 +1,81 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.SearchRenderer = exports.SearchProvider = exports.SearchOption = exports.Search = void 0;
|
|
11
|
+
exports.useSearch = useSearch;
|
|
12
|
+
|
|
13
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
14
|
+
|
|
15
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
16
|
+
|
|
17
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
18
|
+
|
|
19
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
20
|
+
|
|
21
|
+
var _appAdminCore = require("@webiny/app-admin-core");
|
|
22
|
+
|
|
4
23
|
var _excluded = ["children"];
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var SearchContext = /*#__PURE__*/React.createContext({
|
|
24
|
+
|
|
25
|
+
var SearchContext = /*#__PURE__*/_react.default.createContext({
|
|
8
26
|
options: [],
|
|
9
27
|
addOption: function addOption() {
|
|
10
28
|
return void 0;
|
|
11
29
|
}
|
|
12
30
|
});
|
|
31
|
+
|
|
13
32
|
SearchContext.displayName = "SearchContext";
|
|
14
|
-
|
|
15
|
-
|
|
33
|
+
|
|
34
|
+
function useSearch() {
|
|
35
|
+
return _react.default.useContext(SearchContext);
|
|
16
36
|
}
|
|
17
|
-
|
|
37
|
+
|
|
38
|
+
var SearchProvider = function SearchProvider(Component) {
|
|
18
39
|
return function SearchProvider(_ref) {
|
|
19
40
|
var children = _ref.children,
|
|
20
|
-
props =
|
|
41
|
+
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
21
42
|
|
|
22
|
-
var _useState = useState([]),
|
|
23
|
-
_useState2 =
|
|
43
|
+
var _useState = (0, _react.useState)([]),
|
|
44
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
24
45
|
options = _useState2[0],
|
|
25
46
|
setOptions = _useState2[1];
|
|
26
47
|
|
|
27
|
-
var addOption = useCallback(function (option) {
|
|
48
|
+
var addOption = (0, _react.useCallback)(function (option) {
|
|
28
49
|
return setOptions(function (options) {
|
|
29
|
-
return [].concat(
|
|
50
|
+
return [].concat((0, _toConsumableArray2.default)(options), [option]);
|
|
30
51
|
});
|
|
31
52
|
}, [setOptions]);
|
|
32
53
|
var context = {
|
|
33
54
|
options: options,
|
|
34
55
|
addOption: addOption
|
|
35
56
|
};
|
|
36
|
-
return /*#__PURE__*/
|
|
57
|
+
return /*#__PURE__*/_react.default.createElement(SearchContext.Provider, {
|
|
37
58
|
value: context
|
|
38
|
-
}, /*#__PURE__*/
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement(Component, props, children));
|
|
39
60
|
};
|
|
40
61
|
};
|
|
41
|
-
|
|
42
|
-
|
|
62
|
+
|
|
63
|
+
exports.SearchProvider = SearchProvider;
|
|
64
|
+
var Search = (0, _appAdminCore.makeComposable)("Search", function () {
|
|
65
|
+
return /*#__PURE__*/_react.default.createElement(SearchRenderer, null);
|
|
43
66
|
});
|
|
44
|
-
|
|
45
|
-
|
|
67
|
+
exports.Search = Search;
|
|
68
|
+
var SearchRenderer = (0, _appAdminCore.makeComposable)("SearchRenderer");
|
|
69
|
+
exports.SearchRenderer = SearchRenderer;
|
|
70
|
+
|
|
71
|
+
var SearchOption = function SearchOption(props) {
|
|
46
72
|
var _useSearch = useSearch(),
|
|
47
73
|
addOption = _useSearch.addOption;
|
|
48
74
|
|
|
49
|
-
useEffect(function () {
|
|
75
|
+
(0, _react.useEffect)(function () {
|
|
50
76
|
addOption(props);
|
|
51
77
|
}, []);
|
|
52
78
|
return null;
|
|
53
|
-
};
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
exports.SearchOption = SearchOption;
|
package/base/ui/Search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["SearchContext","React","createContext","options","addOption","displayName","useSearch","useContext","SearchProvider","Component","children","props","useState","setOptions","useCallback","option","context","Search","makeComposable","SearchRenderer","SearchOption","useEffect"],"sources":["Search.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } from \"@webiny/app-admin-core\";\n\nexport interface SearchOptionData {\n route: string;\n label: string;\n search?: {\n operator?: \"and\" | \"or\";\n fields?: Array<string>;\n };\n}\n\nexport interface SearchContext {\n options: SearchOptionData[];\n addOption(option: SearchOptionData): void;\n}\n\nconst SearchContext = React.createContext<SearchContext>({\n options: [],\n addOption: () => {\n return void 0;\n }\n});\nSearchContext.displayName = \"SearchContext\";\n\nexport function useSearch() {\n return React.useContext(SearchContext);\n}\n\nexport const SearchProvider = (Component: React.FC): React.FC => {\n return function SearchProvider({ children, ...props }) {\n const [options, setOptions] = useState<SearchOptionData[]>([]);\n\n const addOption = useCallback<SearchContext[\"addOption\"]>(\n option => setOptions(options => [...options, option]),\n [setOptions]\n );\n\n const context = {\n options,\n addOption\n };\n\n return (\n <SearchContext.Provider value={context}>\n <Component {...props}>{children}</Component>\n </SearchContext.Provider>\n );\n };\n};\n\nexport const Search = makeComposable(\"Search\", () => {\n return <SearchRenderer />;\n});\n\nexport const SearchRenderer = makeComposable(\"SearchRenderer\");\n\nexport type SearchOptionProps = SearchOptionData;\n\nexport const SearchOption: React.FC<SearchOptionProps> = props => {\n const { addOption } = useSearch();\n\n useEffect(() => {\n addOption(props);\n }, []);\n\n return null;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAgBA,IAAMA,aAAa,gBAAGC,cAAA,CAAMC,aAAN,CAAmC;EACrDC,OAAO,EAAE,EAD4C;EAErDC,SAAS,EAAE,qBAAM;IACb,OAAO,KAAK,CAAZ;EACH;AAJoD,CAAnC,CAAtB;;AAMAJ,aAAa,CAACK,WAAd,GAA4B,eAA5B;;AAEO,SAASC,SAAT,GAAqB;EACxB,OAAOL,cAAA,CAAMM,UAAN,CAAiBP,aAAjB,CAAP;AACH;;AAEM,IAAMQ,cAAc,GAAG,SAAjBA,cAAiB,CAACC,SAAD,EAAmC;EAC7D,OAAO,SAASD,cAAT,OAAgD;IAAA,IAAtBE,QAAsB,QAAtBA,QAAsB;IAAA,IAATC,KAAS;;IACnD,gBAA8B,IAAAC,eAAA,EAA6B,EAA7B,CAA9B;IAAA;IAAA,IAAOT,OAAP;IAAA,IAAgBU,UAAhB;;IAEA,IAAMT,SAAS,GAAG,IAAAU,kBAAA,EACd,UAAAC,MAAM;MAAA,OAAIF,UAAU,CAAC,UAAAV,OAAO;QAAA,kDAAQA,OAAR,IAAiBY,MAAjB;MAAA,CAAR,CAAd;IAAA,CADQ,EAEd,CAACF,UAAD,CAFc,CAAlB;IAKA,IAAMG,OAAO,GAAG;MACZb,OAAO,EAAPA,OADY;MAEZC,SAAS,EAATA;IAFY,CAAhB;IAKA,oBACI,6BAAC,aAAD,CAAe,QAAf;MAAwB,KAAK,EAAEY;IAA/B,gBACI,6BAAC,SAAD,EAAeL,KAAf,EAAuBD,QAAvB,CADJ,CADJ;EAKH,CAlBD;AAmBH,CApBM;;;AAsBA,IAAMO,MAAM,GAAG,IAAAC,4BAAA,EAAe,QAAf,EAAyB,YAAM;EACjD,oBAAO,6BAAC,cAAD,OAAP;AACH,CAFqB,CAAf;;AAIA,IAAMC,cAAc,GAAG,IAAAD,4BAAA,EAAe,gBAAf,CAAvB;;;AAIA,IAAME,YAAyC,GAAG,SAA5CA,YAA4C,CAAAT,KAAK,EAAI;EAC9D,iBAAsBL,SAAS,EAA/B;EAAA,IAAQF,SAAR,cAAQA,SAAR;;EAEA,IAAAiB,gBAAA,EAAU,YAAM;IACZjB,SAAS,CAACO,KAAD,CAAT;EACH,CAFD,EAEG,EAFH;EAIA,OAAO,IAAP;AACH,CARM"}
|
package/base/ui/Tags.js
CHANGED
|
@@ -1,13 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useTags = exports.Tags = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var TagsContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
3
13
|
TagsContext.displayName = "TagsContext";
|
|
4
|
-
|
|
14
|
+
|
|
15
|
+
var Tags = function Tags(_ref) {
|
|
5
16
|
var tags = _ref.tags,
|
|
6
17
|
children = _ref.children;
|
|
7
|
-
return /*#__PURE__*/
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(TagsContext.Provider, {
|
|
8
19
|
value: tags
|
|
9
20
|
}, children);
|
|
10
21
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
22
|
+
|
|
23
|
+
exports.Tags = Tags;
|
|
24
|
+
|
|
25
|
+
var useTags = function useTags() {
|
|
26
|
+
return (0, _react.useContext)(TagsContext);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
exports.useTags = useTags;
|
package/base/ui/Tags.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["TagsContext","createContext","displayName","Tags","tags","children","useTags","useContext"],"sources":["Tags.tsx"],"sourcesContent":["import React, { createContext, useContext } from \"react\";\n\ntype TagsContext = Record<string, string | boolean>;\n\nconst TagsContext = createContext<TagsContext>({});\nTagsContext.displayName = \"TagsContext\";\n\ninterface TagsProps {\n tags: Record<string, string | boolean>;\n children: React.ReactNode;\n}\n\nexport const Tags: React.FC<TagsProps> = ({ tags, children }) => {\n return <TagsContext.Provider value={tags}>{children}</TagsContext.Provider>;\n};\n\nexport const useTags = () => {\n return useContext(TagsContext);\n};\n"],"mappings":";;;;;;;;;AAAA;;AAIA,IAAMA,WAAW,gBAAG,IAAAC,oBAAA,EAA2B,EAA3B,CAApB;AACAD,WAAW,CAACE,WAAZ,GAA0B,aAA1B;;AAOO,IAAMC,IAAyB,GAAG,SAA5BA,IAA4B,OAAwB;EAAA,IAArBC,IAAqB,QAArBA,IAAqB;EAAA,IAAfC,QAAe,QAAfA,QAAe;EAC7D,oBAAO,6BAAC,WAAD,CAAa,QAAb;IAAsB,KAAK,EAAED;EAA7B,GAAoCC,QAApC,CAAP;AACH,CAFM;;;;AAIA,IAAMC,OAAO,GAAG,SAAVA,OAAU,GAAM;EACzB,OAAO,IAAAC,iBAAA,EAAWP,WAAX,CAAP;AACH,CAFM"}
|
package/base/ui/UserMenu.js
CHANGED
|
@@ -1,32 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.UserMenuRenderer = exports.UserMenuProvider = exports.UserMenuItems = exports.UserMenuItemRenderer = exports.UserMenuItem = exports.UserMenuHandleRenderer = exports.UserMenuHandle = exports.UserMenu = exports.AddUserMenuItem = void 0;
|
|
11
|
+
exports.useUserMenu = useUserMenu;
|
|
12
|
+
exports.useUserMenuItem = useUserMenuItem;
|
|
13
|
+
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
16
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
+
|
|
18
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
19
|
+
|
|
20
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
+
|
|
22
|
+
var _appAdminCore = require("@webiny/app-admin-core");
|
|
23
|
+
|
|
4
24
|
var _excluded = ["children"];
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var UserMenuContext = /*#__PURE__*/React.createContext({
|
|
25
|
+
|
|
26
|
+
var UserMenuContext = /*#__PURE__*/_react.default.createContext({
|
|
8
27
|
addMenuItem: function addMenuItem() {
|
|
9
28
|
return void 0;
|
|
10
29
|
},
|
|
11
30
|
menuItems: []
|
|
12
31
|
});
|
|
32
|
+
|
|
13
33
|
UserMenuContext.displayName = "UserMenuContext";
|
|
14
|
-
|
|
15
|
-
|
|
34
|
+
|
|
35
|
+
function useUserMenu() {
|
|
36
|
+
return _react.default.useContext(UserMenuContext);
|
|
16
37
|
}
|
|
17
|
-
|
|
38
|
+
|
|
39
|
+
var UserMenuProvider = function UserMenuProvider(Component) {
|
|
18
40
|
return function UserMenuProvider(_ref) {
|
|
19
41
|
var children = _ref.children,
|
|
20
|
-
props =
|
|
42
|
+
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
21
43
|
|
|
22
|
-
var _useState = useState([]),
|
|
23
|
-
_useState2 =
|
|
44
|
+
var _useState = (0, _react.useState)([]),
|
|
45
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
24
46
|
menuItems = _useState2[0],
|
|
25
47
|
setItems = _useState2[1];
|
|
26
48
|
|
|
27
|
-
var addMenuItem = useCallback(function (item) {
|
|
49
|
+
var addMenuItem = (0, _react.useCallback)(function (item) {
|
|
28
50
|
setItems(function (items) {
|
|
29
|
-
return [].concat(
|
|
51
|
+
return [].concat((0, _toConsumableArray2.default)(items), [item]);
|
|
30
52
|
});
|
|
31
53
|
return function () {
|
|
32
54
|
setItems(function (items) {
|
|
@@ -38,7 +60,7 @@ export var UserMenuProvider = function UserMenuProvider(Component) {
|
|
|
38
60
|
return items;
|
|
39
61
|
}
|
|
40
62
|
|
|
41
|
-
return [].concat(
|
|
63
|
+
return [].concat((0, _toConsumableArray2.default)(items.slice(0, index)), (0, _toConsumableArray2.default)(items.slice(index + 1)));
|
|
42
64
|
});
|
|
43
65
|
};
|
|
44
66
|
}, [setItems]);
|
|
@@ -46,36 +68,48 @@ export var UserMenuProvider = function UserMenuProvider(Component) {
|
|
|
46
68
|
menuItems: menuItems,
|
|
47
69
|
addMenuItem: addMenuItem
|
|
48
70
|
};
|
|
49
|
-
return /*#__PURE__*/
|
|
71
|
+
return /*#__PURE__*/_react.default.createElement(UserMenuContext.Provider, {
|
|
50
72
|
value: context
|
|
51
|
-
}, /*#__PURE__*/
|
|
73
|
+
}, /*#__PURE__*/_react.default.createElement(Component, props, children));
|
|
52
74
|
};
|
|
53
75
|
};
|
|
54
|
-
|
|
55
|
-
|
|
76
|
+
|
|
77
|
+
exports.UserMenuProvider = UserMenuProvider;
|
|
78
|
+
var UserMenu = (0, _appAdminCore.makeComposable)("UserMenu", function () {
|
|
79
|
+
return /*#__PURE__*/_react.default.createElement(UserMenuRenderer, null);
|
|
56
80
|
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
81
|
+
exports.UserMenu = UserMenu;
|
|
82
|
+
var UserMenuRenderer = (0, _appAdminCore.makeComposable)("UserMenuRenderer");
|
|
83
|
+
exports.UserMenuRenderer = UserMenuRenderer;
|
|
84
|
+
var UserMenuHandle = (0, _appAdminCore.makeComposable)("UserMenuHandle", function () {
|
|
85
|
+
return /*#__PURE__*/_react.default.createElement(UserMenuHandleRenderer, null);
|
|
60
86
|
});
|
|
61
|
-
|
|
62
|
-
|
|
87
|
+
exports.UserMenuHandle = UserMenuHandle;
|
|
88
|
+
var UserMenuHandleRenderer = (0, _appAdminCore.makeComposable)("UserMenuHandleRenderer");
|
|
89
|
+
exports.UserMenuHandleRenderer = UserMenuHandleRenderer;
|
|
90
|
+
var UserMenuItem = (0, _appAdminCore.makeComposable)("UserMenuItem", function (_ref2) {
|
|
63
91
|
var menuItem = _ref2.menuItem;
|
|
64
|
-
return /*#__PURE__*/
|
|
92
|
+
return /*#__PURE__*/_react.default.createElement(UserMenuItemContext.Provider, {
|
|
65
93
|
value: menuItem
|
|
66
|
-
}, /*#__PURE__*/
|
|
94
|
+
}, /*#__PURE__*/_react.default.createElement(UserMenuItemRenderer, null));
|
|
67
95
|
});
|
|
68
|
-
|
|
69
|
-
|
|
96
|
+
exports.UserMenuItem = UserMenuItem;
|
|
97
|
+
var UserMenuItemRenderer = (0, _appAdminCore.makeComposable)("UserMenuItemRenderer");
|
|
98
|
+
exports.UserMenuItemRenderer = UserMenuItemRenderer;
|
|
99
|
+
|
|
100
|
+
var AddUserMenuItem = function AddUserMenuItem(props) {
|
|
70
101
|
var _useUserMenu = useUserMenu(),
|
|
71
102
|
addMenuItem = _useUserMenu.addMenuItem;
|
|
72
103
|
|
|
73
|
-
useEffect(function () {
|
|
104
|
+
(0, _react.useEffect)(function () {
|
|
74
105
|
return addMenuItem(props);
|
|
75
106
|
}, []);
|
|
76
107
|
return null;
|
|
77
108
|
};
|
|
78
|
-
|
|
109
|
+
|
|
110
|
+
exports.AddUserMenuItem = AddUserMenuItem;
|
|
111
|
+
|
|
112
|
+
var UserMenuItemContext = /*#__PURE__*/_react.default.createContext({
|
|
79
113
|
element: undefined,
|
|
80
114
|
icon: undefined,
|
|
81
115
|
label: undefined,
|
|
@@ -84,16 +118,20 @@ var UserMenuItemContext = /*#__PURE__*/React.createContext({
|
|
|
84
118
|
},
|
|
85
119
|
path: undefined
|
|
86
120
|
});
|
|
121
|
+
|
|
87
122
|
UserMenuItemContext.displayName = "UserMenuItemContext";
|
|
88
|
-
|
|
89
|
-
|
|
123
|
+
|
|
124
|
+
function useUserMenuItem() {
|
|
125
|
+
return _react.default.useContext(UserMenuItemContext);
|
|
90
126
|
}
|
|
91
|
-
|
|
127
|
+
|
|
128
|
+
var UserMenuItems = (0, _appAdminCore.makeComposable)("UserMenuItems", function (_ref3) {
|
|
92
129
|
var menuItems = _ref3.menuItems;
|
|
93
|
-
return /*#__PURE__*/
|
|
94
|
-
return /*#__PURE__*/
|
|
130
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, menuItems.map(function (item, index) {
|
|
131
|
+
return /*#__PURE__*/_react.default.createElement(UserMenuItem, {
|
|
95
132
|
key: index,
|
|
96
133
|
menuItem: item
|
|
97
134
|
});
|
|
98
135
|
}));
|
|
99
|
-
});
|
|
136
|
+
});
|
|
137
|
+
exports.UserMenuItems = UserMenuItems;
|