@webiny/app-admin 0.0.0-unstable.990c3ab1b6 → 0.0.0-unstable.aa00eecd97
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/icons/add-18px.svg +1 -1
- package/assets/icons/arrow_drop_down-24px.svg +1 -1
- package/assets/icons/filter-24px.svg +1 -1
- package/assets/icons/highlight-24px.svg +1 -1
- package/assets/icons/info.svg +1 -1
- package/assets/icons/insert_drive_file-24px.svg +1 -1
- package/assets/icons/insert_photo-24px.svg +1 -1
- package/assets/icons/label-24px.svg +1 -1
- package/assets/icons/round-account_circle-24px.svg +1 -1
- package/assets/icons/round-arrow_drop_down-24px.svg +1 -1
- package/assets/icons/round-help-24px.svg +1 -1
- package/assets/icons/round-settings-24px.svg +1 -1
- package/assets/icons/today-24px.svg +1 -1
- package/assets/icons/touch_app.svg +1 -1
- package/base/Admin.js +6 -6
- package/base/Admin.js.map +1 -1
- package/base/Base.js +8 -27
- package/base/Base.js.map +1 -1
- package/base/plugins/AddGraphQLQuerySelection.js +5 -1
- package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
- package/base/ui/Brand.d.ts +2 -2
- package/base/ui/Brand.js +3 -3
- package/base/ui/Brand.js.map +1 -1
- package/base/ui/Dashboard.d.ts +2 -2
- package/base/ui/Dashboard.js +3 -3
- package/base/ui/Dashboard.js.map +1 -1
- package/{components → base/ui}/FileManager.d.ts +6 -6
- package/base/ui/FileManager.js +61 -0
- package/base/ui/FileManager.js.map +1 -0
- package/base/ui/Layout.d.ts +2 -2
- package/base/ui/Layout.js +3 -3
- package/base/ui/Layout.js.map +1 -1
- package/base/ui/LocaleSelector.d.ts +2 -2
- package/base/ui/LocaleSelector.js +3 -3
- package/base/ui/LocaleSelector.js.map +1 -1
- package/base/ui/LoginScreen.d.ts +1 -1
- package/base/ui/LoginScreen.js +2 -2
- package/base/ui/LoginScreen.js.map +1 -1
- package/base/ui/Logo.d.ts +2 -2
- package/base/ui/Logo.js +4 -4
- package/base/ui/Logo.js.map +1 -1
- package/base/ui/Navigation.d.ts +3 -3
- package/base/ui/Navigation.js +5 -5
- package/base/ui/Navigation.js.map +1 -1
- package/base/ui/NotFound.d.ts +2 -2
- package/base/ui/NotFound.js +3 -3
- package/base/ui/NotFound.js.map +1 -1
- package/base/ui/Search.d.ts +2 -2
- package/base/ui/Search.js +3 -3
- package/base/ui/Search.js.map +1 -1
- package/base/ui/UserMenu.d.ts +7 -7
- package/base/ui/UserMenu.js +8 -8
- package/base/ui/UserMenu.js.map +1 -1
- package/components/AppInstaller/AppInstaller.js +2 -34
- package/components/AppInstaller/AppInstaller.js.map +1 -1
- package/components/AppInstaller/Sidebar.js +2 -12
- package/components/AppInstaller/Sidebar.js.map +1 -1
- package/components/AppInstaller/styled.d.ts +17 -5
- package/components/AppInstaller/useInstaller.d.ts +1 -7
- package/components/AppInstaller/useInstaller.js +60 -119
- package/components/AppInstaller/useInstaller.js.map +1 -1
- package/components/EmptyView.js +1 -1
- package/components/EmptyView.js.map +1 -1
- package/components/FloatingActionButton.js +2 -2
- package/components/FloatingActionButton.js.map +1 -1
- package/components/OverlayLayout/OverlayLayout.js +2 -2
- package/components/OverlayLayout/OverlayLayout.js.map +1 -1
- package/components/Permissions/Permissions.d.ts +2 -0
- package/components/Permissions/Permissions.js +11 -2
- package/components/Permissions/Permissions.js.map +1 -1
- package/components/SearchUI.d.ts +1 -0
- package/components/SearchUI.js +11 -3
- package/components/SearchUI.js.map +1 -1
- package/components/SimpleForm/SimpleForm.js +3 -12
- package/components/SimpleForm/SimpleForm.js.map +1 -1
- package/components/SimpleUI/InputField.d.ts +2 -0
- package/components/SimpleUI/InputField.js +3 -1
- package/components/SimpleUI/InputField.js.map +1 -1
- package/components/SingleImageUpload.d.ts +1 -1
- package/components/SingleImageUpload.js +2 -2
- package/components/SingleImageUpload.js.map +1 -1
- package/components/SplitView/SplitView.js +1 -0
- package/components/SplitView/SplitView.js.map +1 -1
- package/components/index.d.ts +1 -1
- package/components/index.js +1 -1
- package/components/index.js.map +1 -1
- package/hooks/useConfirmationDialog.d.ts +3 -1
- package/hooks/useConfirmationDialog.js +10 -6
- package/hooks/useConfirmationDialog.js.map +1 -1
- package/index.d.ts +4 -5
- package/index.js +5 -17
- package/index.js.map +1 -1
- package/package.json +34 -45
- package/plugins/globalSearch/SearchBar.js +2 -2
- package/plugins/globalSearch/SearchBar.js.map +1 -1
- package/plugins/globalSearch/SearchBarDropdown.js +2 -2
- package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
- package/plugins/globalSearch/styled.d.ts +13 -4
- package/styles/material-theme-assignments.scss +4 -0
- package/styles/theme.scss +31 -1
- package/types.d.ts +25 -27
- package/types.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +5 -5
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +15 -5
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/styled.d.ts +23 -16
- package/ui/views/AdminView/components/Hamburger.js +2 -2
- package/ui/views/AdminView/components/Hamburger.js.map +1 -1
- package/ui/views/OverlayView/HeaderElement.js +1 -1
- package/ui/views/OverlayView/HeaderElement.js.map +1 -1
- package/ui/views/OverlayView.js +1 -1
- package/ui/views/OverlayView.js.map +1 -1
- package/assets/images/icons.png +0 -0
- package/assets/images/icons_retina.png +0 -0
- package/assets/images/swich.png +0 -0
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.d.ts +0 -6
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +0 -41
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +0 -1
- package/components/FileManager/BottomInfoBar/UploadStatus.d.ts +0 -6
- package/components/FileManager/BottomInfoBar/UploadStatus.js +0 -51
- package/components/FileManager/BottomInfoBar/UploadStatus.js.map +0 -1
- package/components/FileManager/BottomInfoBar.d.ts +0 -5
- package/components/FileManager/BottomInfoBar.js +0 -48
- package/components/FileManager/BottomInfoBar.js.map +0 -1
- package/components/FileManager/DropFilesHere.d.ts +0 -10
- package/components/FileManager/DropFilesHere.js +0 -67
- package/components/FileManager/DropFilesHere.js.map +0 -1
- package/components/FileManager/File.d.ts +0 -17
- package/components/FileManager/File.js +0 -142
- package/components/FileManager/File.js.map +0 -1
- package/components/FileManager/FileDetails/Name.d.ts +0 -8
- package/components/FileManager/FileDetails/Name.js +0 -110
- package/components/FileManager/FileDetails/Name.js.map +0 -1
- package/components/FileManager/FileDetails/Tags.d.ts +0 -10
- package/components/FileManager/FileDetails/Tags.js +0 -288
- package/components/FileManager/FileDetails/Tags.js.map +0 -1
- package/components/FileManager/FileDetails.d.ts +0 -24
- package/components/FileManager/FileDetails.js +0 -409
- package/components/FileManager/FileDetails.js.map +0 -1
- package/components/FileManager/FileManagerContext.d.ts +0 -42
- package/components/FileManager/FileManagerContext.js +0 -191
- package/components/FileManager/FileManagerContext.js.map +0 -1
- package/components/FileManager/FileManagerView.d.ts +0 -18
- package/components/FileManager/FileManagerView.js +0 -621
- package/components/FileManager/FileManagerView.js.map +0 -1
- package/components/FileManager/LeftSidebar.d.ts +0 -10
- package/components/FileManager/LeftSidebar.js +0 -108
- package/components/FileManager/LeftSidebar.js.map +0 -1
- package/components/FileManager/NoPermissionView.d.ts +0 -3
- package/components/FileManager/NoPermissionView.js +0 -74
- package/components/FileManager/NoPermissionView.js.map +0 -1
- package/components/FileManager/NoResults.d.ts +0 -3
- package/components/FileManager/NoResults.js +0 -22
- package/components/FileManager/NoResults.js.map +0 -1
- package/components/FileManager/getFileTypePlugin.d.ts +0 -4
- package/components/FileManager/getFileTypePlugin.js +0 -51
- package/components/FileManager/getFileTypePlugin.js.map +0 -1
- package/components/FileManager/getFileUploader.d.ts +0 -3
- package/components/FileManager/getFileUploader.js +0 -15
- package/components/FileManager/getFileUploader.js.map +0 -1
- package/components/FileManager/graphql.d.ts +0 -96
- package/components/FileManager/graphql.js +0 -47
- package/components/FileManager/graphql.js.map +0 -1
- package/components/FileManager/icons/content_copy-black-24px.svg +0 -1
- package/components/FileManager/icons/delete.svg +0 -12
- package/components/FileManager/icons/privacy_tip-24px.svg +0 -10
- package/components/FileManager/icons/round-check_box-24px.svg +0 -4
- package/components/FileManager/icons/round-check_box_outline_blank-24px.svg +0 -4
- package/components/FileManager/icons/round-cloud_download-24px.svg +0 -4
- package/components/FileManager/icons/round-cloud_upload-24px.svg +0 -4
- package/components/FileManager/icons/round-description-24px.svg +0 -4
- package/components/FileManager/icons/round-edit-24px.svg +0 -4
- package/components/FileManager/icons/round-info-24px.svg +0 -4
- package/components/FileManager/icons/round-label-24px.svg +0 -4
- package/components/FileManager/icons/round-more_vert-24px.svg +0 -4
- package/components/FileManager/icons/round-search-24px.svg +0 -20
- package/components/FileManager/outputFileSelectionError.d.ts +0 -7
- package/components/FileManager/outputFileSelectionError.js +0 -40
- package/components/FileManager/outputFileSelectionError.js.map +0 -1
- package/components/FileManager/types.d.ts +0 -21
- package/components/FileManager/types.js +0 -5
- package/components/FileManager/types.js.map +0 -1
- package/components/FileManager.js +0 -118
- package/components/FileManager.js.map +0 -1
- package/plugins/FileManagerFileTypePlugin.d.ts +0 -33
- package/plugins/FileManagerFileTypePlugin.js +0 -48
- package/plugins/FileManagerFileTypePlugin.js.map +0 -1
- package/plugins/fileManager/fileDefault.d.ts +0 -2
- package/plugins/fileManager/fileDefault.js +0 -28
- package/plugins/fileManager/fileDefault.js.map +0 -1
- package/plugins/fileManager/fileImage/DeleteAction.d.ts +0 -7
- package/plugins/fileManager/fileImage/DeleteAction.js +0 -61
- package/plugins/fileManager/fileImage/DeleteAction.js.map +0 -1
- package/plugins/fileManager/fileImage/EditAction.d.ts +0 -10
- package/plugins/fileManager/fileImage/EditAction.js +0 -145
- package/plugins/fileManager/fileImage/EditAction.js.map +0 -1
- package/plugins/fileManager/fileImage/index.d.ts +0 -2
- package/plugins/fileManager/fileImage/index.js +0 -38
- package/plugins/fileManager/fileImage/index.js.map +0 -1
- package/plugins/fileManager/icons/edit.svg +0 -17
- package/plugins/fileManager/icons/round-description-24px.svg +0 -1
- package/plugins/fileManager/index.d.ts +0 -2
- package/plugins/fileManager/index.js +0 -19
- package/plugins/fileManager/index.js.map +0 -1
package/base/ui/Navigation.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export interface NavigationContext {
|
|
|
8
8
|
export declare function useNavigation(): NavigationContext;
|
|
9
9
|
export declare const NavigationProvider: (Component: React.ComponentType<unknown>) => React.FC;
|
|
10
10
|
export declare const Navigation: React.FC;
|
|
11
|
-
export declare const NavigationRenderer: import("@webiny/app
|
|
11
|
+
export declare const NavigationRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
12
12
|
interface MenuItemContext {
|
|
13
13
|
menuItem?: MenuData;
|
|
14
14
|
depth: number;
|
|
@@ -18,7 +18,7 @@ export declare function useMenuItem(): MenuItemContext;
|
|
|
18
18
|
export interface MenuItemsProps {
|
|
19
19
|
menuItems: MenuData[];
|
|
20
20
|
}
|
|
21
|
-
export declare const MenuItems: import("@webiny/app
|
|
21
|
+
export declare const MenuItems: import("@webiny/app").ComposableFC<MenuItemsProps>;
|
|
22
22
|
export declare const MenuItem: React.FC;
|
|
23
|
-
export declare const MenuItemRenderer: import("@webiny/app
|
|
23
|
+
export declare const MenuItemRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
24
24
|
export {};
|
package/base/ui/Navigation.js
CHANGED
|
@@ -12,7 +12,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _nanoid = require("nanoid");
|
|
15
|
-
var
|
|
15
|
+
var _app = require("@webiny/app");
|
|
16
16
|
var _ = require("../..");
|
|
17
17
|
var _plugins = require("@webiny/plugins");
|
|
18
18
|
var NavigationContext = /*#__PURE__*/(0, _react.createContext)({
|
|
@@ -51,7 +51,7 @@ var LegacyMenuPlugins = function LegacyMenuPlugins() {
|
|
|
51
51
|
}
|
|
52
52
|
var menuElements = menuPlugins.map(function (plugin) {
|
|
53
53
|
// TODO @ts-refactor figure out correct types or write a comment to leave as React.FC
|
|
54
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
54
|
+
return /*#__PURE__*/_react.default.createElement(_app.Plugins, {
|
|
55
55
|
key: plugin.name
|
|
56
56
|
}, plugin.render({
|
|
57
57
|
Menu: LegacyMenu,
|
|
@@ -118,7 +118,7 @@ var Navigation = function Navigation() {
|
|
|
118
118
|
}, /*#__PURE__*/_react.default.createElement(NavigationRenderer, null));
|
|
119
119
|
};
|
|
120
120
|
exports.Navigation = Navigation;
|
|
121
|
-
var NavigationRenderer = (0,
|
|
121
|
+
var NavigationRenderer = (0, _app.makeComposable)("NavigationRenderer");
|
|
122
122
|
exports.NavigationRenderer = NavigationRenderer;
|
|
123
123
|
var MenuItemContext = /*#__PURE__*/_react.default.createContext({
|
|
124
124
|
menuItem: undefined,
|
|
@@ -128,7 +128,7 @@ MenuItemContext.displayName = "MenuItemContext";
|
|
|
128
128
|
function useMenuItem() {
|
|
129
129
|
return _react.default.useContext(MenuItemContext);
|
|
130
130
|
}
|
|
131
|
-
var MenuItems = (0,
|
|
131
|
+
var MenuItems = (0, _app.makeComposable)("MenuItems", function (_ref2) {
|
|
132
132
|
var menuItems = _ref2.menuItems;
|
|
133
133
|
var menuItem = useMenuItem();
|
|
134
134
|
var depth = menuItem ? menuItem.depth : -1;
|
|
@@ -147,5 +147,5 @@ var MenuItem = function MenuItem() {
|
|
|
147
147
|
return /*#__PURE__*/_react.default.createElement(MenuItemRenderer, null);
|
|
148
148
|
};
|
|
149
149
|
exports.MenuItem = MenuItem;
|
|
150
|
-
var MenuItemRenderer = (0,
|
|
150
|
+
var MenuItemRenderer = (0, _app.makeComposable)("MenuItemRenderer");
|
|
151
151
|
exports.MenuItemRenderer = MenuItemRenderer;
|
|
@@ -1 +1 @@
|
|
|
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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"}
|
|
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\";\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.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const NotFound: import("@webiny/app
|
|
2
|
-
export declare const NotFoundRenderer: import("@webiny/app
|
|
1
|
+
export declare const NotFound: import("@webiny/app").ComposableFC<unknown>;
|
|
2
|
+
export declare const NotFoundRenderer: import("@webiny/app").ComposableFC<unknown>;
|
package/base/ui/NotFound.js
CHANGED
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.NotFoundRenderer = exports.NotFound = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var
|
|
10
|
-
var NotFound = (0,
|
|
9
|
+
var _app = require("@webiny/app");
|
|
10
|
+
var NotFound = (0, _app.makeComposable)("NotFound", function () {
|
|
11
11
|
return /*#__PURE__*/_react.default.createElement(NotFoundRenderer, null);
|
|
12
12
|
});
|
|
13
13
|
exports.NotFound = NotFound;
|
|
14
|
-
var NotFoundRenderer = (0,
|
|
14
|
+
var NotFoundRenderer = (0, _app.makeComposable)("NotFoundRenderer");
|
|
15
15
|
exports.NotFoundRenderer = NotFoundRenderer;
|
package/base/ui/NotFound.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NotFound","makeComposable","NotFoundRenderer"],"sources":["NotFound.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeComposable } from \"@webiny/app
|
|
1
|
+
{"version":3,"names":["NotFound","makeComposable","NotFoundRenderer"],"sources":["NotFound.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeComposable } from \"@webiny/app\";\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,mBAAc,EAAC,UAAU,EAAE,YAAM;EACrD,oBAAO,6BAAC,gBAAgB,OAAG;AAC/B,CAAC,CAAC;AAAC;AAEI,IAAMC,gBAAgB,GAAG,IAAAD,mBAAc,EAAC,kBAAkB,CAAC;AAAC"}
|
package/base/ui/Search.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export interface SearchContext {
|
|
|
13
13
|
}
|
|
14
14
|
export declare function useSearch(): SearchContext;
|
|
15
15
|
export declare const SearchProvider: (Component: React.FC) => React.FC;
|
|
16
|
-
export declare const Search: import("@webiny/app
|
|
17
|
-
export declare const SearchRenderer: import("@webiny/app
|
|
16
|
+
export declare const Search: import("@webiny/app").ComposableFC<unknown>;
|
|
17
|
+
export declare const SearchRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
18
18
|
export declare type SearchOptionProps = SearchOptionData;
|
|
19
19
|
export declare const SearchOption: React.FC<SearchOptionProps>;
|
package/base/ui/Search.js
CHANGED
|
@@ -11,7 +11,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
11
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
|
-
var
|
|
14
|
+
var _app = require("@webiny/app");
|
|
15
15
|
var _excluded = ["children"];
|
|
16
16
|
var SearchContext = /*#__PURE__*/_react.default.createContext({
|
|
17
17
|
options: [],
|
|
@@ -46,11 +46,11 @@ var SearchProvider = function SearchProvider(Component) {
|
|
|
46
46
|
};
|
|
47
47
|
};
|
|
48
48
|
exports.SearchProvider = SearchProvider;
|
|
49
|
-
var Search = (0,
|
|
49
|
+
var Search = (0, _app.makeComposable)("Search", function () {
|
|
50
50
|
return /*#__PURE__*/_react.default.createElement(SearchRenderer, null);
|
|
51
51
|
});
|
|
52
52
|
exports.Search = Search;
|
|
53
|
-
var SearchRenderer = (0,
|
|
53
|
+
var SearchRenderer = (0, _app.makeComposable)("SearchRenderer");
|
|
54
54
|
exports.SearchRenderer = SearchRenderer;
|
|
55
55
|
var SearchOption = function SearchOption(props) {
|
|
56
56
|
var _useSearch = useSearch(),
|
package/base/ui/Search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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
|
|
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\";\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;AAA6C;AAgB7C,IAAMA,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAAgB;EACrDC,OAAO,EAAE,EAAE;EACXC,SAAS,EAAE,qBAAM;IACb,OAAO,KAAK,CAAC;EACjB;AACJ,CAAC,CAAC;AACFJ,aAAa,CAACK,WAAW,GAAG,eAAe;AAEpC,SAASC,SAAS,GAAG;EACxB,OAAOL,cAAK,CAACM,UAAU,CAACP,aAAa,CAAC;AAC1C;AAEO,IAAMQ,cAAc,GAAG,SAAjBA,cAAc,CAAIC,SAAmB,EAAe;EAC7D,OAAO,SAASD,cAAc,OAAyB;IAAA,IAAtBE,QAAQ,QAARA,QAAQ;MAAKC,KAAK;IAC/C,gBAA8B,IAAAC,eAAQ,EAAqB,EAAE,CAAC;MAAA;MAAvDT,OAAO;MAAEU,UAAU;IAE1B,IAAMT,SAAS,GAAG,IAAAU,kBAAW,EACzB,UAAAC,MAAM;MAAA,OAAIF,UAAU,CAAC,UAAAV,OAAO;QAAA,kDAAQA,OAAO,IAAEY,MAAM;MAAA,CAAC,CAAC;IAAA,GACrD,CAACF,UAAU,CAAC,CACf;IAED,IAAMG,OAAO,GAAG;MACZb,OAAO,EAAPA,OAAO;MACPC,SAAS,EAATA;IACJ,CAAC;IAED,oBACI,6BAAC,aAAa,CAAC,QAAQ;MAAC,KAAK,EAAEY;IAAQ,gBACnC,6BAAC,SAAS,EAAKL,KAAK,EAAGD,QAAQ,CAAa,CACvB;EAEjC,CAAC;AACL,CAAC;AAAC;AAEK,IAAMO,MAAM,GAAG,IAAAC,mBAAc,EAAC,QAAQ,EAAE,YAAM;EACjD,oBAAO,6BAAC,cAAc,OAAG;AAC7B,CAAC,CAAC;AAAC;AAEI,IAAMC,cAAc,GAAG,IAAAD,mBAAc,EAAC,gBAAgB,CAAC;AAAC;AAIxD,IAAME,YAAyC,GAAG,SAA5CA,YAAyC,CAAGT,KAAK,EAAI;EAC9D,iBAAsBL,SAAS,EAAE;IAAzBF,SAAS,cAATA,SAAS;EAEjB,IAAAiB,gBAAS,EAAC,YAAM;IACZjB,SAAS,CAACO,KAAK,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO,IAAI;AACf,CAAC;AAAC"}
|
package/base/ui/UserMenu.d.ts
CHANGED
|
@@ -12,19 +12,19 @@ export interface UserMenuContext {
|
|
|
12
12
|
}
|
|
13
13
|
export declare function useUserMenu(): UserMenuContext;
|
|
14
14
|
export declare const UserMenuProvider: (Component: React.FC) => React.FC;
|
|
15
|
-
export declare const UserMenu: import("@webiny/app
|
|
16
|
-
export declare const UserMenuRenderer: import("@webiny/app
|
|
17
|
-
export declare const UserMenuHandle: import("@webiny/app
|
|
18
|
-
export declare const UserMenuHandleRenderer: import("@webiny/app
|
|
15
|
+
export declare const UserMenu: import("@webiny/app").ComposableFC<unknown>;
|
|
16
|
+
export declare const UserMenuRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
17
|
+
export declare const UserMenuHandle: import("@webiny/app").ComposableFC<unknown>;
|
|
18
|
+
export declare const UserMenuHandleRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
19
19
|
export interface UserMenuItemProps {
|
|
20
20
|
menuItem: UserMenuItemData;
|
|
21
21
|
}
|
|
22
|
-
export declare const UserMenuItem: import("@webiny/app
|
|
23
|
-
export declare const UserMenuItemRenderer: import("@webiny/app
|
|
22
|
+
export declare const UserMenuItem: import("@webiny/app").ComposableFC<UserMenuItemProps>;
|
|
23
|
+
export declare const UserMenuItemRenderer: import("@webiny/app").ComposableFC<unknown>;
|
|
24
24
|
export declare const AddUserMenuItem: React.FC<UserMenuItemProps["menuItem"]>;
|
|
25
25
|
export declare type UserMenuItemContext = UserMenuItemData;
|
|
26
26
|
export declare function useUserMenuItem(): UserMenuItemData;
|
|
27
27
|
export interface UserMenuItemsProps {
|
|
28
28
|
menuItems: UserMenuItemData[];
|
|
29
29
|
}
|
|
30
|
-
export declare const UserMenuItems: import("@webiny/app
|
|
30
|
+
export declare const UserMenuItems: import("@webiny/app").ComposableFC<UserMenuItemsProps>;
|
package/base/ui/UserMenu.js
CHANGED
|
@@ -12,7 +12,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
13
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
-
var
|
|
15
|
+
var _app = require("@webiny/app");
|
|
16
16
|
var _excluded = ["children"];
|
|
17
17
|
var UserMenuContext = /*#__PURE__*/_react.default.createContext({
|
|
18
18
|
addMenuItem: function addMenuItem() {
|
|
@@ -58,26 +58,26 @@ var UserMenuProvider = function UserMenuProvider(Component) {
|
|
|
58
58
|
};
|
|
59
59
|
};
|
|
60
60
|
exports.UserMenuProvider = UserMenuProvider;
|
|
61
|
-
var UserMenu = (0,
|
|
61
|
+
var UserMenu = (0, _app.makeComposable)("UserMenu", function () {
|
|
62
62
|
return /*#__PURE__*/_react.default.createElement(UserMenuRenderer, null);
|
|
63
63
|
});
|
|
64
64
|
exports.UserMenu = UserMenu;
|
|
65
|
-
var UserMenuRenderer = (0,
|
|
65
|
+
var UserMenuRenderer = (0, _app.makeComposable)("UserMenuRenderer");
|
|
66
66
|
exports.UserMenuRenderer = UserMenuRenderer;
|
|
67
|
-
var UserMenuHandle = (0,
|
|
67
|
+
var UserMenuHandle = (0, _app.makeComposable)("UserMenuHandle", function () {
|
|
68
68
|
return /*#__PURE__*/_react.default.createElement(UserMenuHandleRenderer, null);
|
|
69
69
|
});
|
|
70
70
|
exports.UserMenuHandle = UserMenuHandle;
|
|
71
|
-
var UserMenuHandleRenderer = (0,
|
|
71
|
+
var UserMenuHandleRenderer = (0, _app.makeComposable)("UserMenuHandleRenderer");
|
|
72
72
|
exports.UserMenuHandleRenderer = UserMenuHandleRenderer;
|
|
73
|
-
var UserMenuItem = (0,
|
|
73
|
+
var UserMenuItem = (0, _app.makeComposable)("UserMenuItem", function (_ref2) {
|
|
74
74
|
var menuItem = _ref2.menuItem;
|
|
75
75
|
return /*#__PURE__*/_react.default.createElement(UserMenuItemContext.Provider, {
|
|
76
76
|
value: menuItem
|
|
77
77
|
}, /*#__PURE__*/_react.default.createElement(UserMenuItemRenderer, null));
|
|
78
78
|
});
|
|
79
79
|
exports.UserMenuItem = UserMenuItem;
|
|
80
|
-
var UserMenuItemRenderer = (0,
|
|
80
|
+
var UserMenuItemRenderer = (0, _app.makeComposable)("UserMenuItemRenderer");
|
|
81
81
|
exports.UserMenuItemRenderer = UserMenuItemRenderer;
|
|
82
82
|
var AddUserMenuItem = function AddUserMenuItem(props) {
|
|
83
83
|
var _useUserMenu = useUserMenu(),
|
|
@@ -101,7 +101,7 @@ UserMenuItemContext.displayName = "UserMenuItemContext";
|
|
|
101
101
|
function useUserMenuItem() {
|
|
102
102
|
return _react.default.useContext(UserMenuItemContext);
|
|
103
103
|
}
|
|
104
|
-
var UserMenuItems = (0,
|
|
104
|
+
var UserMenuItems = (0, _app.makeComposable)("UserMenuItems", function (_ref3) {
|
|
105
105
|
var menuItems = _ref3.menuItems;
|
|
106
106
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, menuItems.map(function (item, index) {
|
|
107
107
|
return /*#__PURE__*/_react.default.createElement(UserMenuItem, {
|
package/base/ui/UserMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","Component","children","props","useState","setItems","useCallback","item","items","index","findIndex","i","slice","context","UserMenu","makeComposable","UserMenuRenderer","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","menuItem","UserMenuItemRenderer","AddUserMenuItem","useEffect","UserMenuItemContext","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","map"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } from \"@webiny/app
|
|
1
|
+
{"version":3,"names":["UserMenuContext","React","createContext","addMenuItem","menuItems","displayName","useUserMenu","useContext","UserMenuProvider","Component","children","props","useState","setItems","useCallback","item","items","index","findIndex","i","slice","context","UserMenu","makeComposable","UserMenuRenderer","UserMenuHandle","UserMenuHandleRenderer","UserMenuItem","menuItem","UserMenuItemRenderer","AddUserMenuItem","useEffect","UserMenuItemContext","element","undefined","icon","label","onClick","path","useUserMenuItem","UserMenuItems","map"],"sources":["UserMenu.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { makeComposable } from \"@webiny/app\";\n\nexport interface UserMenuItemData {\n label?: string;\n icon?: JSX.Element;\n path?: string;\n onClick?: () => void;\n element?: JSX.Element;\n}\n\nexport interface UserMenuContext {\n menuItems: UserMenuItemData[];\n addMenuItem(item: UserMenuItemData): void;\n}\n\nconst UserMenuContext = React.createContext<UserMenuContext>({\n addMenuItem: () => {\n return void 0;\n },\n menuItems: []\n});\nUserMenuContext.displayName = \"UserMenuContext\";\n\nexport function useUserMenu() {\n return React.useContext(UserMenuContext);\n}\n\nexport const UserMenuProvider = (Component: React.FC): React.FC => {\n return function UserMenuProvider({ children, ...props }) {\n const [menuItems, setItems] = useState<UserMenuItemData[]>([]);\n\n const addMenuItem = useCallback<UserMenuContext[\"addMenuItem\"]>(\n item => {\n setItems(items => [...items, item]);\n\n return () => {\n setItems(items => {\n const index = items.findIndex(i => i === item);\n if (index < 0) {\n return items;\n }\n\n return [...items.slice(0, index), ...items.slice(index + 1)];\n });\n };\n },\n [setItems]\n );\n\n const context = {\n menuItems,\n addMenuItem\n };\n\n return (\n <UserMenuContext.Provider value={context}>\n <Component {...props}>{children}</Component>\n </UserMenuContext.Provider>\n );\n };\n};\n\nexport const UserMenu = makeComposable(\"UserMenu\", () => {\n return <UserMenuRenderer />;\n});\n\nexport const UserMenuRenderer = makeComposable(\"UserMenuRenderer\");\n\nexport const UserMenuHandle = makeComposable(\"UserMenuHandle\", () => {\n return <UserMenuHandleRenderer />;\n});\n\nexport const UserMenuHandleRenderer = makeComposable(\"UserMenuHandleRenderer\");\n\nexport interface UserMenuItemProps {\n menuItem: UserMenuItemData;\n}\n\nexport const UserMenuItem = makeComposable<UserMenuItemProps>(\"UserMenuItem\", ({ menuItem }) => {\n return (\n <UserMenuItemContext.Provider value={menuItem}>\n <UserMenuItemRenderer />\n </UserMenuItemContext.Provider>\n );\n});\n\nexport const UserMenuItemRenderer = makeComposable(\"UserMenuItemRenderer\");\n\nexport const AddUserMenuItem: React.FC<UserMenuItemProps[\"menuItem\"]> = props => {\n const { addMenuItem } = useUserMenu();\n\n useEffect(() => {\n return addMenuItem(props);\n }, []);\n\n return null;\n};\n\nexport type UserMenuItemContext = UserMenuItemData;\n\nconst UserMenuItemContext = React.createContext<UserMenuItemContext>({\n element: undefined,\n icon: undefined,\n label: undefined,\n onClick: () => {\n return void 0;\n },\n path: undefined\n});\nUserMenuItemContext.displayName = \"UserMenuItemContext\";\n\nexport function useUserMenuItem() {\n return React.useContext(UserMenuItemContext);\n}\n\nexport interface UserMenuItemsProps {\n menuItems: UserMenuItemData[];\n}\n\nexport const UserMenuItems = makeComposable<UserMenuItemsProps>(\n \"UserMenuItems\",\n ({ menuItems }) => {\n return (\n <Fragment>\n {menuItems.map((item, index) => (\n <UserMenuItem key={index} menuItem={item} />\n ))}\n </Fragment>\n );\n }\n);\n"],"mappings":"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"}
|
|
@@ -14,8 +14,6 @@ var _appSecurity = require("@webiny/app-security");
|
|
|
14
14
|
var _Progress = require("@webiny/ui/Progress");
|
|
15
15
|
var _Button = require("@webiny/ui/Button");
|
|
16
16
|
var _SplitView = require("../SplitView");
|
|
17
|
-
var _Grid = require("@webiny/ui/Grid");
|
|
18
|
-
var _Typography = require("@webiny/ui/Typography");
|
|
19
17
|
var _Elevation = require("@webiny/ui/Elevation");
|
|
20
18
|
var _useInstaller2 = require("./useInstaller");
|
|
21
19
|
var _Sidebar = _interopRequireDefault(require("./Sidebar"));
|
|
@@ -54,8 +52,7 @@ var AppInstaller = function AppInstaller(_ref) {
|
|
|
54
52
|
isFirstInstall = _useInstaller.isFirstInstall,
|
|
55
53
|
showNextInstaller = _useInstaller.showNextInstaller,
|
|
56
54
|
showLogin = _useInstaller.showLogin,
|
|
57
|
-
onUser = _useInstaller.onUser
|
|
58
|
-
skippingVersions = _useInstaller.skippingVersions;
|
|
55
|
+
onUser = _useInstaller.onUser;
|
|
59
56
|
(0, _react.useEffect)(function () {
|
|
60
57
|
if (identity) {
|
|
61
58
|
onUser();
|
|
@@ -99,35 +96,6 @@ var AppInstaller = function AppInstaller(_ref) {
|
|
|
99
96
|
onInstalled: showNextInstaller
|
|
100
97
|
})), installer.secure);
|
|
101
98
|
}
|
|
102
|
-
if (skippingVersions) {
|
|
103
|
-
return renderBody( /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
|
|
104
|
-
z: 1,
|
|
105
|
-
className: _styled.alertClass
|
|
106
|
-
}, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
107
|
-
span: 12
|
|
108
|
-
}, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
109
|
-
use: "headline4"
|
|
110
|
-
}, "Important!")), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
111
|
-
span: 12
|
|
112
|
-
}, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
113
|
-
use: "body1",
|
|
114
|
-
tag: "div"
|
|
115
|
-
}, "We've detected that your current application is running Webiny", " ", /*#__PURE__*/_react.default.createElement("strong", null, "v", skippingVersions.latest), ". However, your API is running ", /*#__PURE__*/_react.default.createElement("strong", null, "v", skippingVersions.current), ". Unfortunately, we can't upgrade your system by skipping versions in between.", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "Here's a list of versions you skipped, that contain upgrades you need to install:", /*#__PURE__*/_react.default.createElement("ul", null, skippingVersions.availableUpgrades.filter(function (v) {
|
|
116
|
-
return v !== skippingVersions.latest;
|
|
117
|
-
}).map(function (v) {
|
|
118
|
-
return /*#__PURE__*/_react.default.createElement("li", {
|
|
119
|
-
key: v
|
|
120
|
-
}, "v", v);
|
|
121
|
-
})), "For instructions on how to upgrade Webiny, please consult our", " ", /*#__PURE__*/_react.default.createElement("a", {
|
|
122
|
-
href: "https://docs.webiny.com/docs/how-to-guides/upgrade-webiny",
|
|
123
|
-
target: "_blank",
|
|
124
|
-
rel: "noreferrer noopener"
|
|
125
|
-
}, "Upgrade Webiny"), " ", "guide. Note that some versions may have a dedicated article with upgrade instructions, so look out for those in the upgrade guide.", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "If you run into problems, find us on our", " ", /*#__PURE__*/_react.default.createElement("a", {
|
|
126
|
-
href: "https://www.webiny.com/slack",
|
|
127
|
-
target: "_blank",
|
|
128
|
-
rel: "noreferrer noopener"
|
|
129
|
-
}, "Slack community."))))));
|
|
130
|
-
}
|
|
131
99
|
return renderLayout(renderBody( /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
|
|
132
100
|
z: 1
|
|
133
101
|
}, /*#__PURE__*/_react.default.createElement(_styled.SuccessDialog, null, /*#__PURE__*/_react.default.createElement("p", null, "You have successfully installed all new applications!"), !isCypressTest && isRootTenant && isFirstInstall ? /*#__PURE__*/_react.default.createElement("iframe", {
|
|
@@ -144,6 +112,6 @@ var AppInstaller = function AppInstaller(_ref) {
|
|
|
144
112
|
markInstallerAsCompleted();
|
|
145
113
|
setFinished(true);
|
|
146
114
|
}
|
|
147
|
-
},
|
|
115
|
+
}, "Finish install")))), true);
|
|
148
116
|
};
|
|
149
117
|
exports.AppInstaller = AppInstaller;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppInstaller","children","tenantId","localStorage","get","lsKey","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","isRootTenant","isCypressTest","window","Cypress","markInstallerAsCompleted","set","isInstallerCompleted","useState","finished","setFinished","useSecurity","identity","useInstaller","isInstalled","loading","installers","installer","isFirstInstall","showNextInstaller","showLogin","onUser","skippingVersions","useEffect","renderLayout","content","secure","installerSplitView","renderBody","length","render","onInstalled","alertClass","latest","current","availableUpgrades","filter","v","map","opacity"],"sources":["AppInstaller.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { LoginScreen } from \"~/index\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { SplitView, LeftPanel, RightPanel } from \"../SplitView\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { useInstaller } from \"./useInstaller\";\nimport Sidebar from \"./Sidebar\";\n\ndeclare global {\n interface Window {\n Cypress: any;\n }\n}\n\nimport {\n Wrapper,\n alertClass,\n InnerContent,\n InstallContent,\n installerSplitView,\n SuccessDialog\n} from \"./styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nexport const AppInstaller: React.FC = ({ children }) => {\n const tenantId = localStorage.get(\"webiny_tenant\") || \"root\";\n const lsKey = `webiny_installation_${tenantId}`;\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n const isRootTenant = tenantId === \"root\";\n /*\n * This flag allows us to avoid rendering the <iframe> when the app is tested with Cypress\n * (Cypress doesn't work with cross domains because of security-related implications).\n * @see https://docs.cypress.io/guides/guides/web-security#Insecure-Content\n */\n const isCypressTest = window && window.Cypress;\n\n const markInstallerAsCompleted = () => {\n localStorage.set(lsKey, wbyVersion);\n };\n\n const isInstallerCompleted = () => {\n return localStorage.get(lsKey) === wbyVersion;\n };\n\n const [finished, setFinished] = useState(false);\n const { identity } = useSecurity();\n const {\n loading,\n installers,\n installer,\n isFirstInstall,\n showNextInstaller,\n showLogin,\n onUser,\n skippingVersions\n } = useInstaller({ isInstalled: isInstallerCompleted() });\n\n useEffect(() => {\n if (identity) {\n onUser();\n }\n }, [identity]);\n\n if (isInstallerCompleted()) {\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n const renderLayout = (content: React.ReactNode, secure = false): React.ReactElement => {\n return (\n <SplitView className={installerSplitView}>\n <LeftPanel span={2}>\n <Sidebar\n allInstallers={installers}\n installer={installer}\n showLogin={showLogin}\n />\n </LeftPanel>\n <RightPanel span={10}>\n {!showLogin && !secure && content}\n {(showLogin || secure) && <LoginScreen>{content}</LoginScreen>}\n </RightPanel>\n </SplitView>\n );\n };\n\n const renderBody = (content: React.ReactNode): React.ReactElement => {\n return (\n <Wrapper>\n <InstallContent>\n <InnerContent>{content}</InnerContent>\n </InstallContent>\n </Wrapper>\n );\n };\n\n // Loading installers data\n if (loading) {\n return <CircularProgress label={\"Checking apps...\"} />;\n }\n\n // This means there are no installers to run or installation was finished\n if (!loading && (installers.length === 0 || finished)) {\n markInstallerAsCompleted();\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n if (installer) {\n return renderLayout(\n renderBody(installer.render({ onInstalled: showNextInstaller })),\n installer.secure\n );\n }\n\n if (skippingVersions) {\n return renderBody(\n <Elevation z={1} className={alertClass}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"headline4\"}>Important!</Typography>\n </Cell>\n <Cell span={12}>\n <Typography use={\"body1\"} tag={\"div\"}>\n We've detected that your current application is running Webiny{\" \"}\n <strong>v{skippingVersions.latest}</strong>. However, your API is\n running <strong>v{skippingVersions.current}</strong>. Unfortunately, we\n can't upgrade your system by skipping versions in between.\n <br />\n <br />\n Here's a list of versions you skipped, that contain upgrades you\n need to install:\n <ul>\n {skippingVersions.availableUpgrades\n .filter(v => v !== skippingVersions.latest)\n .map(v => (\n <li key={v}>v{v}</li>\n ))}\n </ul>\n For instructions on how to upgrade Webiny, please consult our{\" \"}\n <a\n href={\"https://docs.webiny.com/docs/how-to-guides/upgrade-webiny\"}\n target={\"_blank\"}\n rel={\"noreferrer noopener\"}\n >\n Upgrade Webiny\n </a>{\" \"}\n guide. Note that some versions may have a dedicated article with upgrade\n instructions, so look out for those in the upgrade guide.\n <br />\n <br />\n If you run into problems, find us on our{\" \"}\n <a\n href={\"https://www.webiny.com/slack\"}\n target={\"_blank\"}\n rel={\"noreferrer noopener\"}\n >\n Slack community.\n </a>\n </Typography>\n </Cell>\n </Grid>\n </Elevation>\n );\n }\n\n return renderLayout(\n renderBody(\n <Elevation z={1}>\n <SuccessDialog>\n <p>You have successfully installed all new applications!</p>\n {!isCypressTest && isRootTenant && isFirstInstall ? (\n <iframe\n height=\"0\"\n width=\"0\"\n frameBorder=\"0\"\n style={{ opacity: \"0\" }}\n src=\"https://www.webiny.com/thank-you/new-install\"\n ></iframe>\n ) : null}\n <ButtonPrimary\n data-testid={\"open-webiny-cms-admin-button\"}\n onClick={() => {\n markInstallerAsCompleted();\n setFinished(true);\n }}\n >\n {isFirstInstall ? \"Finish install\" : \"Finish upgrade\"}\n </ButtonPrimary>\n </SuccessDialog>\n </Elevation>\n ),\n true\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["AppInstaller","children","tenantId","localStorage","get","lsKey","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","isRootTenant","isCypressTest","window","Cypress","markInstallerAsCompleted","set","isInstallerCompleted","useState","finished","setFinished","useSecurity","identity","useInstaller","isInstalled","loading","installers","installer","isFirstInstall","showNextInstaller","showLogin","onUser","useEffect","renderLayout","content","secure","installerSplitView","renderBody","length","render","onInstalled","opacity"],"sources":["AppInstaller.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { LoginScreen } from \"~/index\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport { SplitView, LeftPanel, RightPanel } from \"../SplitView\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { useInstaller } from \"./useInstaller\";\nimport Sidebar from \"./Sidebar\";\n\ndeclare global {\n interface Window {\n Cypress: any;\n }\n}\n\nimport { Wrapper, InnerContent, InstallContent, installerSplitView, SuccessDialog } from \"./styled\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nexport const AppInstaller: React.FC = ({ children }) => {\n const tenantId = localStorage.get(\"webiny_tenant\") || \"root\";\n const lsKey = `webiny_installation_${tenantId}`;\n const wbyVersion = appConfig.getKey(\"WEBINY_VERSION\", process.env.REACT_APP_WEBINY_VERSION);\n const isRootTenant = tenantId === \"root\";\n /*\n * This flag allows us to avoid rendering the <iframe> when the app is tested with Cypress\n * (Cypress doesn't work with cross domains because of security-related implications).\n * @see https://docs.cypress.io/guides/guides/web-security#Insecure-Content\n */\n const isCypressTest = window && window.Cypress;\n\n const markInstallerAsCompleted = () => {\n localStorage.set(lsKey, wbyVersion);\n };\n\n const isInstallerCompleted = () => {\n return localStorage.get(lsKey) === wbyVersion;\n };\n\n const [finished, setFinished] = useState(false);\n const { identity } = useSecurity();\n const { loading, installers, installer, isFirstInstall, showNextInstaller, showLogin, onUser } =\n useInstaller({ isInstalled: isInstallerCompleted() });\n\n useEffect(() => {\n if (identity) {\n onUser();\n }\n }, [identity]);\n\n if (isInstallerCompleted()) {\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n const renderLayout = (content: React.ReactNode, secure = false): React.ReactElement => {\n return (\n <SplitView className={installerSplitView}>\n <LeftPanel span={2}>\n <Sidebar\n allInstallers={installers}\n installer={installer}\n showLogin={showLogin}\n />\n </LeftPanel>\n <RightPanel span={10}>\n {!showLogin && !secure && content}\n {(showLogin || secure) && <LoginScreen>{content}</LoginScreen>}\n </RightPanel>\n </SplitView>\n );\n };\n\n const renderBody = (content: React.ReactNode): React.ReactElement => {\n return (\n <Wrapper>\n <InstallContent>\n <InnerContent>{content}</InnerContent>\n </InstallContent>\n </Wrapper>\n );\n };\n\n // Loading installers data\n if (loading) {\n return <CircularProgress label={\"Checking apps...\"} />;\n }\n\n // This means there are no installers to run or installation was finished\n if (!loading && (installers.length === 0 || finished)) {\n markInstallerAsCompleted();\n return <LoginScreen>{children}</LoginScreen>;\n }\n\n if (installer) {\n return renderLayout(\n renderBody(installer.render({ onInstalled: showNextInstaller })),\n installer.secure\n );\n }\n\n return renderLayout(\n renderBody(\n <Elevation z={1}>\n <SuccessDialog>\n <p>You have successfully installed all new applications!</p>\n {!isCypressTest && isRootTenant && isFirstInstall ? (\n <iframe\n height=\"0\"\n width=\"0\"\n frameBorder=\"0\"\n style={{ opacity: \"0\" }}\n src=\"https://www.webiny.com/thank-you/new-install\"\n ></iframe>\n ) : null}\n <ButtonPrimary\n data-testid={\"open-webiny-cms-admin-button\"}\n onClick={() => {\n markInstallerAsCompleted();\n setFinished(true);\n }}\n >\n Finish install\n </ButtonPrimary>\n </SuccessDialog>\n </Elevation>\n ),\n true\n );\n};\n"],"mappings":"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"}
|
|
@@ -10,7 +10,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
11
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
12
12
|
var _Typography = require("@webiny/ui/Typography");
|
|
13
|
-
var _config = require("@webiny/app/config");
|
|
14
13
|
var _signInDivider = _interopRequireDefault(require("./assets/sign-in-divider.svg"));
|
|
15
14
|
var _Brand = require("../../base/ui/Brand");
|
|
16
15
|
var _Tags = require("../../base/ui/Tags");
|
|
@@ -128,27 +127,18 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
128
127
|
var allInstallers = _ref.allInstallers,
|
|
129
128
|
installer = _ref.installer,
|
|
130
129
|
showLogin = _ref.showLogin;
|
|
131
|
-
var upgrades = allInstallers.filter(function (installer) {
|
|
132
|
-
return installer.type === "upgrade";
|
|
133
|
-
});
|
|
134
130
|
var installations = allInstallers.filter(function (installer) {
|
|
135
131
|
return installer.type === "install";
|
|
136
132
|
});
|
|
137
|
-
var wbyVersion = _config.config.getKey("WEBINY_VERSION", process.env.REACT_APP_WEBINY_VERSION);
|
|
138
133
|
return /*#__PURE__*/_react.default.createElement(_Tags.Tags, {
|
|
139
134
|
tags: {
|
|
140
135
|
location: "installer"
|
|
141
136
|
}
|
|
142
|
-
}, /*#__PURE__*/_react.default.createElement(Logo, null, /*#__PURE__*/_react.default.createElement(_Brand.Brand, null)),
|
|
143
|
-
title: /*#__PURE__*/_react.default.createElement("span", null, "The following apps will be upgraded to ", /*#__PURE__*/_react.default.createElement("strong", null, wbyVersion), ":"),
|
|
144
|
-
allInstallers: upgrades,
|
|
145
|
-
installer: installer,
|
|
146
|
-
showLogin: showLogin
|
|
147
|
-
}) : null, installations.length > 0 && /*#__PURE__*/_react.default.createElement(Installations, {
|
|
137
|
+
}, /*#__PURE__*/_react.default.createElement(Logo, null, /*#__PURE__*/_react.default.createElement(_Brand.Brand, null)), installations.length > 0 && /*#__PURE__*/_react.default.createElement(Installations, {
|
|
148
138
|
title: "The following apps will be installed and configured:",
|
|
149
139
|
allInstallers: installations,
|
|
150
140
|
installer: installer,
|
|
151
|
-
showLogin:
|
|
141
|
+
showLogin: showLogin
|
|
152
142
|
}));
|
|
153
143
|
};
|
|
154
144
|
var _default = Sidebar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Logo","styled","padding","borderBottom","List","li","display","alignItems","borderRadius","height","width","marginRight","textAlign","lineHeight","fontSize","paddingTop","color","img","backgroundColor","fontWeight","Note","Installations","props","title","allInstallers","installer","showLogin","renderList","loginItem","signInDivider","items","i","length","name","secure","installed","prev","push","active","classSet","pending","Sidebar","
|
|
1
|
+
{"version":3,"names":["Logo","styled","padding","borderBottom","List","li","display","alignItems","borderRadius","height","width","marginRight","textAlign","lineHeight","fontSize","paddingTop","color","img","backgroundColor","fontWeight","Note","Installations","props","title","allInstallers","installer","showLogin","renderList","loginItem","signInDivider","items","i","length","name","secure","installed","prev","push","active","classSet","pending","Sidebar","installations","filter","type","location"],"sources":["Sidebar.tsx"],"sourcesContent":["import React, { Fragment } from \"react\";\nimport classSet from \"classnames\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport signInDivider from \"./assets/sign-in-divider.svg\";\nimport { Installer } from \"./useInstaller\";\nimport { Brand } from \"~/base/ui/Brand\";\nimport { Tags } from \"~/base/ui/Tags\";\n\nconst Logo = styled(\"div\")({\n padding: 15,\n borderBottom: \"1px solid var(--mdc-theme-background)\"\n});\n\nconst List = styled(\"ul\")({\n li: {\n display: \"flex\",\n alignItems: \"center\",\n padding: \"15px 15px\",\n \".status\": {\n borderRadius: \"50%\",\n display: \"inline-block\",\n height: 20,\n width: 20,\n marginRight: 15\n },\n \"&.sign-in\": {\n display: \"block\",\n textAlign: \"center\",\n \".note\": {\n display: \"inline-block\",\n lineHeight: \"150%\",\n fontSize: 10,\n paddingTop: 10,\n color: \"var(--mdc-theme-text-icon-on-background)\"\n },\n img: {\n width: \"100%\"\n }\n },\n \"&.active\": {\n backgroundColor: \"var(--mdc-theme-background)\",\n fontWeight: 600,\n \".status\": {\n backgroundColor: \"var(--mdc-theme-primary)\"\n }\n },\n \"&.pending\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-on-surface)\"\n }\n },\n \"&.installed\": {\n \".status\": {\n backgroundColor: \"var(--mdc-theme-secondary)\"\n }\n }\n }\n});\n\nconst Note = styled(\"div\")({\n padding: 15\n});\ninterface InstallationsProps {\n title: React.ReactNode;\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\nconst Installations: React.FC<InstallationsProps> = props => {\n const { title, allInstallers, installer, showLogin } = props;\n const renderList = () => {\n const loginItem = (\n <li key={\"login\"} className={\"sign-in\"}>\n <img src={signInDivider} alt={\"\"} />\n <Typography use={\"overline\"} className={\"note\"}>\n TO CONTINUE THE INSTALLATION AFTER THIS POINT YOU’LL NEED TO SIGN IN\n </Typography>\n </li>\n );\n\n const items = [];\n for (let i = 0; i < allInstallers.length; i++) {\n const { name, title, secure, installed } = allInstallers[i];\n const prev = i === 0 ? null : allInstallers[i - 1];\n if ((!prev || !prev.secure) && secure && showLogin) {\n items.push(loginItem);\n }\n\n const active = installer && !showLogin && name === installer.name;\n\n items.push(\n <li\n key={name}\n className={classSet(\n { installed: installed },\n { active: active },\n { pending: !installed && !active }\n )}\n >\n <span className={\"status\"} />\n <span className={\"title\"}>{title}</span>\n </li>\n );\n }\n return items;\n };\n\n return (\n <Fragment>\n <Note>\n <Typography use={\"body1\"}>{title}</Typography>\n </Note>\n <List>{renderList()}</List>\n </Fragment>\n );\n};\n\ninterface SidebarProps {\n allInstallers: Installer[];\n installer: Installer;\n showLogin: boolean;\n}\n\nconst Sidebar: React.FC<SidebarProps> = ({ allInstallers, installer, showLogin }) => {\n const installations = allInstallers.filter(installer => installer.type === \"install\");\n\n return (\n <Tags tags={{ location: \"installer\" }}>\n <Logo>\n <Brand />\n </Logo>\n {installations.length > 0 && (\n <Installations\n title={\"The following apps will be installed and configured:\"}\n allInstallers={installations}\n installer={installer}\n showLogin={showLogin}\n />\n )}\n </Tags>\n );\n};\nexport default Sidebar;\n"],"mappings":"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"}
|
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
/// <reference types="web" />
|
|
3
2
|
/// <reference types="react" />
|
|
4
|
-
|
|
5
|
-
export declare const
|
|
3
|
+
/// <reference types="web" />
|
|
4
|
+
export declare const Wrapper: import("@emotion/styled").StyledComponent<{
|
|
5
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
6
|
+
as?: import("react").ElementType<any> | undefined;
|
|
7
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
|
|
8
|
+
export declare const InstallContent: import("@emotion/styled").StyledComponent<{
|
|
9
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
10
|
+
as?: import("react").ElementType<any> | undefined;
|
|
11
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
6
12
|
export declare const installerSplitView: string;
|
|
7
|
-
export declare const SuccessDialog: import("@emotion/styled
|
|
8
|
-
|
|
13
|
+
export declare const SuccessDialog: import("@emotion/styled").StyledComponent<{
|
|
14
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
15
|
+
as?: import("react").ElementType<any> | undefined;
|
|
16
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
17
|
+
export declare const InnerContent: import("@emotion/styled").StyledComponent<{
|
|
18
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
19
|
+
as?: import("react").ElementType<any> | undefined;
|
|
20
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
9
21
|
export declare const alertClass: string;
|
|
@@ -2,17 +2,12 @@ import { AdminInstallationPlugin } from "../../types";
|
|
|
2
2
|
interface UseInstallerParams {
|
|
3
3
|
isInstalled: boolean;
|
|
4
4
|
}
|
|
5
|
-
interface SkippingVersionState {
|
|
6
|
-
current: string;
|
|
7
|
-
latest: string;
|
|
8
|
-
availableUpgrades: string[];
|
|
9
|
-
}
|
|
10
5
|
interface BaseInstaller {
|
|
11
6
|
installed: string | null;
|
|
12
7
|
plugin: AdminInstallationPlugin;
|
|
13
8
|
}
|
|
14
9
|
export interface Installer extends BaseInstaller {
|
|
15
|
-
type: "install"
|
|
10
|
+
type: "install";
|
|
16
11
|
name: string;
|
|
17
12
|
title: string;
|
|
18
13
|
render: AdminInstallationPlugin["render"];
|
|
@@ -26,6 +21,5 @@ export declare const useInstaller: (params: UseInstallerParams) => {
|
|
|
26
21
|
showNextInstaller: () => any;
|
|
27
22
|
showLogin: boolean;
|
|
28
23
|
onUser: () => void;
|
|
29
|
-
skippingVersions: SkippingVersionState | null;
|
|
30
24
|
};
|
|
31
25
|
export {};
|