@webiny/app-admin 0.0.0-unstable.97a151f74d → 0.0.0-unstable.99666aeb00
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 +10 -23
- package/base/Admin.js.map +1 -1
- package/base/Base.js +13 -48
- package/base/Base.js.map +1 -1
- package/base/plugins/AddGraphQLQuerySelection.js +5 -9
- package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
- package/base/providers/ApolloProvider.js +0 -5
- package/base/providers/ApolloProvider.js.map +1 -1
- package/base/providers/TelemetryProvider.js +1 -7
- package/base/providers/TelemetryProvider.js.map +1 -1
- package/base/providers/UiStateProvider.js +0 -5
- package/base/providers/UiStateProvider.js.map +1 -1
- package/base/providers/ViewCompositionProvider.js +3 -16
- package/base/providers/ViewCompositionProvider.js.map +1 -1
- package/base/ui/Brand.d.ts +2 -2
- package/base/ui/Brand.js +3 -7
- package/base/ui/Brand.js.map +1 -1
- package/base/ui/CenteredView.js +2 -7
- package/base/ui/CenteredView.js.map +1 -1
- package/base/ui/Dashboard.d.ts +2 -2
- package/base/ui/Dashboard.js +3 -7
- package/base/ui/Dashboard.js.map +1 -1
- package/{components → base/ui}/FileManager.d.ts +7 -6
- package/base/ui/FileManager.js +62 -0
- package/base/ui/FileManager.js.map +1 -0
- package/base/ui/Layout.d.ts +2 -2
- package/base/ui/Layout.js +4 -9
- package/base/ui/Layout.js.map +1 -1
- package/base/ui/LocaleSelector.d.ts +2 -2
- package/base/ui/LocaleSelector.js +3 -7
- package/base/ui/LocaleSelector.js.map +1 -1
- package/base/ui/LoginScreen.d.ts +1 -1
- package/base/ui/LoginScreen.js +2 -8
- package/base/ui/LoginScreen.js.map +1 -1
- package/base/ui/Logo.d.ts +2 -2
- package/base/ui/Logo.js +4 -10
- package/base/ui/Logo.js.map +1 -1
- package/base/ui/Menu.js +2 -31
- package/base/ui/Menu.js.map +1 -1
- package/base/ui/Navigation.d.ts +3 -3
- package/base/ui/Navigation.js +16 -49
- package/base/ui/Navigation.js.map +1 -1
- package/base/ui/NotFound.d.ts +2 -2
- package/base/ui/NotFound.js +3 -7
- package/base/ui/NotFound.js.map +1 -1
- package/base/ui/Search.d.ts +2 -2
- package/base/ui/Search.js +8 -26
- package/base/ui/Search.js.map +1 -1
- package/base/ui/Tags.js +1 -8
- package/base/ui/Tags.js.map +1 -1
- package/base/ui/UserMenu.d.ts +7 -7
- package/base/ui/UserMenu.js +13 -37
- package/base/ui/UserMenu.js.map +1 -1
- package/components/AdminLayout.js +1 -6
- package/components/AdminLayout.js.map +1 -1
- package/components/AppInstaller/AppInstaller.js +18 -84
- package/components/AppInstaller/AppInstaller.js.map +1 -1
- package/components/AppInstaller/Sidebar.js +11 -44
- package/components/AppInstaller/Sidebar.js.map +1 -1
- package/components/AppInstaller/index.js +0 -7
- package/components/AppInstaller/index.js.map +1 -1
- package/components/AppInstaller/styled.d.ts +17 -5
- package/components/AppInstaller/styled.js +0 -4
- package/components/AppInstaller/styled.js.map +1 -1
- package/components/AppInstaller/useInstaller.d.ts +1 -7
- package/components/AppInstaller/useInstaller.js +72 -183
- package/components/AppInstaller/useInstaller.js.map +1 -1
- package/components/EmptyView.js +4 -12
- package/components/EmptyView.js.map +1 -1
- package/components/FloatingActionButton.js +2 -8
- package/components/FloatingActionButton.js.map +1 -1
- package/components/LexicalEditor/LexicalEditor.d.ts +8 -0
- package/components/LexicalEditor/LexicalEditor.js +28 -0
- package/components/LexicalEditor/LexicalEditor.js.map +1 -0
- package/components/LexicalEditor/index.d.ts +1 -0
- package/components/LexicalEditor/index.js +12 -0
- package/components/LexicalEditor/index.js.map +1 -0
- package/components/MultiImageUpload.js +1 -10
- package/components/MultiImageUpload.js.map +1 -1
- package/components/OverlayLayout/OverlayLayout.js +9 -38
- package/components/OverlayLayout/OverlayLayout.js.map +1 -1
- package/components/OverlayLayout/index.js +0 -2
- package/components/OverlayLayout/index.js.map +1 -1
- package/components/Permissions/CannotUseAaclAlert.d.ts +2 -0
- package/components/Permissions/CannotUseAaclAlert.js +20 -0
- package/components/Permissions/CannotUseAaclAlert.js.map +1 -0
- package/components/Permissions/Permissions.d.ts +2 -0
- package/components/Permissions/Permissions.js +25 -27
- package/components/Permissions/Permissions.js.map +1 -1
- package/components/Permissions/StyledComponents.js +0 -7
- package/components/Permissions/StyledComponents.js.map +1 -1
- package/components/Permissions/index.d.ts +1 -0
- package/components/Permissions/index.js +10 -5
- package/components/Permissions/index.js.map +1 -1
- package/components/RichTextEditor/RichTextEditor.js +0 -7
- package/components/RichTextEditor/RichTextEditor.js.map +1 -1
- package/components/RichTextEditor/index.js +0 -2
- package/components/RichTextEditor/index.js.map +1 -1
- package/components/RichTextEditor/tools/header/index.js +62 -102
- package/components/RichTextEditor/tools/header/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/index.js +15 -36
- package/components/RichTextEditor/tools/image/index.js.map +1 -1
- package/components/RichTextEditor/tools/image/svgs.js.map +1 -1
- package/components/RichTextEditor/tools/image/tunes.js +5 -22
- package/components/RichTextEditor/tools/image/tunes.js.map +1 -1
- package/components/RichTextEditor/tools/image/ui.js +16 -39
- package/components/RichTextEditor/tools/image/ui.js.map +1 -1
- package/components/RichTextEditor/tools/paragraph/index.js +55 -81
- package/components/RichTextEditor/tools/paragraph/index.js.map +1 -1
- package/components/RichTextEditor/tools/textColor/index.js +15 -41
- package/components/RichTextEditor/tools/textColor/index.js.map +1 -1
- package/components/RichTextEditor/tools/utils.js +0 -2
- package/components/RichTextEditor/tools/utils.js.map +1 -1
- package/components/Routes.js +6 -13
- package/components/Routes.js.map +1 -1
- package/components/SearchUI.d.ts +1 -0
- package/components/SearchUI.js +14 -14
- package/components/SearchUI.js.map +1 -1
- package/components/SimpleForm/SimpleForm.js +3 -32
- package/components/SimpleForm/SimpleForm.js.map +1 -1
- package/components/SimpleForm/index.js +0 -1
- package/components/SimpleForm/index.js.map +1 -1
- package/components/SimpleUI/InputField.d.ts +2 -0
- package/components/SimpleUI/InputField.js +16 -30
- package/components/SimpleUI/InputField.js.map +1 -1
- package/components/SingleImageUpload.d.ts +1 -1
- package/components/SingleImageUpload.js +14 -30
- package/components/SingleImageUpload.js.map +1 -1
- package/components/SplitView/SplitView.js +1 -20
- package/components/SplitView/SplitView.js.map +1 -1
- package/components/SplitView/index.js +0 -1
- package/components/SplitView/index.js.map +1 -1
- package/components/index.d.ts +1 -1
- package/components/index.js +1 -2
- package/components/index.js.map +1 -1
- package/hooks/useConfirmationDialog.d.ts +5 -3
- package/hooks/useConfirmationDialog.js +16 -22
- package/hooks/useConfirmationDialog.js.map +1 -1
- package/hooks/useDialog.js +0 -5
- package/hooks/useDialog.js.map +1 -1
- package/hooks/useSnackbar.js +0 -5
- package/hooks/useSnackbar.js.map +1 -1
- package/index.d.ts +7 -5
- package/index.js +38 -67
- package/index.js.map +1 -1
- package/package.json +37 -46
- package/plugins/MenuPlugin.js +0 -15
- package/plugins/MenuPlugin.js.map +1 -1
- package/plugins/PermissionRendererPlugin.js +0 -15
- package/plugins/PermissionRendererPlugin.js.map +1 -1
- package/plugins/globalSearch/SearchBar.js +5 -53
- package/plugins/globalSearch/SearchBar.js.map +1 -1
- package/plugins/globalSearch/SearchBarDropdown.js +15 -33
- package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
- package/plugins/globalSearch/index.js.map +1 -1
- package/plugins/globalSearch/styled.d.ts +13 -4
- package/plugins/globalSearch/styled.js +1 -5
- package/plugins/globalSearch/styled.js.map +1 -1
- package/plugins/uiLayoutRenderer/index.js +2 -16
- package/plugins/uiLayoutRenderer/index.js.map +1 -1
- package/styles/theme.scss +31 -1
- package/types.d.ts +34 -27
- package/types.js.map +1 -1
- package/ui/UIElement.js +0 -1
- package/ui/UIElement.js.map +1 -1
- package/ui/UILayout.js +0 -1
- package/ui/UILayout.js.map +1 -1
- package/ui/UIRenderer.js +0 -1
- package/ui/UIRenderer.js.map +1 -1
- package/ui/UIView.js +0 -1
- package/ui/UIView.js.map +1 -1
- package/ui/elements/AccordionElement.js +2 -28
- package/ui/elements/AccordionElement.js.map +1 -1
- package/ui/elements/ButtonElement.js +0 -19
- package/ui/elements/ButtonElement.js.map +1 -1
- package/ui/elements/ButtonGroupElement.js +0 -19
- package/ui/elements/ButtonGroupElement.js.map +1 -1
- package/ui/elements/GenericElement.js +0 -2
- package/ui/elements/GenericElement.js.map +1 -1
- package/ui/elements/LabelElement.js +0 -14
- package/ui/elements/LabelElement.js.map +1 -1
- package/ui/elements/NavigationMenuElement.js +3 -36
- package/ui/elements/NavigationMenuElement.js.map +1 -1
- package/ui/elements/PanelElement.js +0 -11
- package/ui/elements/PanelElement.js.map +1 -1
- package/ui/elements/PlaceholderElement.js +0 -11
- package/ui/elements/PlaceholderElement.js.map +1 -1
- package/ui/elements/SmallButtonElement.js +0 -19
- package/ui/elements/SmallButtonElement.js.map +1 -1
- package/ui/elements/TypographyElement.js +0 -19
- package/ui/elements/TypographyElement.js.map +1 -1
- package/ui/elements/ViewElement.js +0 -2
- package/ui/elements/ViewElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +0 -16
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -1
- package/ui/elements/form/DynamicFieldsetElement.js +11 -34
- package/ui/elements/form/DynamicFieldsetElement.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js +0 -15
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +1 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +5 -27
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +4 -23
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
- package/ui/elements/form/FileManagerElement/styled.d.ts +23 -16
- package/ui/elements/form/FileManagerElement/styled.js +0 -5
- package/ui/elements/form/FileManagerElement/styled.js.map +1 -1
- package/ui/elements/form/FileManagerElement.js +0 -20
- package/ui/elements/form/FileManagerElement.js.map +1 -1
- package/ui/elements/form/FormElement.js +0 -21
- package/ui/elements/form/FormElement.js.map +1 -1
- package/ui/elements/form/FormFieldElement.js +0 -33
- package/ui/elements/form/FormFieldElement.js.map +1 -1
- package/ui/elements/form/HiddenElement.js +0 -17
- package/ui/elements/form/HiddenElement.js.map +1 -1
- package/ui/elements/form/InputElement.js +0 -18
- package/ui/elements/form/InputElement.js.map +1 -1
- package/ui/elements/form/PasswordElement.js +0 -15
- package/ui/elements/form/PasswordElement.js.map +1 -1
- package/ui/elements/form/SelectElement.js +1 -19
- package/ui/elements/form/SelectElement.js.map +1 -1
- package/ui/elements/form/TextareaElement.js +0 -17
- package/ui/elements/form/TextareaElement.js.map +1 -1
- package/ui/views/AdminView/ContentElement.js +1 -25
- package/ui/views/AdminView/ContentElement.js.map +1 -1
- package/ui/views/AdminView/HeaderElement.js +0 -40
- package/ui/views/AdminView/HeaderElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionCenterElement.js +0 -20
- package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionLeftElement.js +0 -20
- package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -1
- package/ui/views/AdminView/HeaderSectionRightElement.js +0 -20
- package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -1
- package/ui/views/AdminView/components/Dialog.js +10 -21
- package/ui/views/AdminView/components/Dialog.js.map +1 -1
- package/ui/views/AdminView/components/Hamburger.js +2 -10
- package/ui/views/AdminView/components/Hamburger.js.map +1 -1
- package/ui/views/AdminView/components/Snackbar.js +0 -9
- package/ui/views/AdminView/components/Snackbar.js.map +1 -1
- package/ui/views/FormView/FormContainerElement.js +0 -21
- package/ui/views/FormView/FormContainerElement.js.map +1 -1
- package/ui/views/FormView/FormContentElement.js +0 -11
- package/ui/views/FormView/FormContentElement.js.map +1 -1
- package/ui/views/FormView/FormFooterElement.js +0 -19
- package/ui/views/FormView/FormFooterElement.js.map +1 -1
- package/ui/views/FormView/FormHeaderElement.js +2 -24
- package/ui/views/FormView/FormHeaderElement.js.map +1 -1
- package/ui/views/FormView.js +0 -41
- package/ui/views/FormView.js.map +1 -1
- package/ui/views/OverlayView/ContentElement.js +0 -19
- package/ui/views/OverlayView/ContentElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderElement.js +4 -26
- package/ui/views/OverlayView/HeaderElement.js.map +1 -1
- package/ui/views/OverlayView/HeaderTitleElement.js +0 -22
- package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -1
- package/ui/views/OverlayView/useOverlayView.js +3 -13
- package/ui/views/OverlayView/useOverlayView.js.map +1 -1
- package/ui/views/OverlayView.js +4 -38
- package/ui/views/OverlayView.js.map +1 -1
- package/ui/views/SplitView/SplitViewPanelElement.js +2 -22
- package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -1
- package/ui/views/SplitView.js +0 -40
- package/ui/views/SplitView.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 -55
- 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 -60
- package/components/FileManager/BottomInfoBar/UploadStatus.js.map +0 -1
- package/components/FileManager/BottomInfoBar.d.ts +0 -5
- package/components/FileManager/BottomInfoBar.js +0 -60
- package/components/FileManager/BottomInfoBar.js.map +0 -1
- package/components/FileManager/DropFilesHere.d.ts +0 -10
- package/components/FileManager/DropFilesHere.js +0 -76
- package/components/FileManager/DropFilesHere.js.map +0 -1
- package/components/FileManager/File.d.ts +0 -17
- package/components/FileManager/File.js +0 -155
- package/components/FileManager/File.js.map +0 -1
- package/components/FileManager/FileDetails/Name.d.ts +0 -8
- package/components/FileManager/FileDetails/Name.js +0 -138
- 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 -339
- package/components/FileManager/FileDetails/Tags.js.map +0 -1
- package/components/FileManager/FileDetails.d.ts +0 -24
- package/components/FileManager/FileDetails.js +0 -474
- package/components/FileManager/FileDetails.js.map +0 -1
- package/components/FileManager/FileManagerContext.d.ts +0 -42
- package/components/FileManager/FileManagerContext.js +0 -224
- package/components/FileManager/FileManagerContext.js.map +0 -1
- package/components/FileManager/FileManagerView.d.ts +0 -18
- package/components/FileManager/FileManagerView.js +0 -728
- package/components/FileManager/FileManagerView.js.map +0 -1
- package/components/FileManager/LeftSidebar.d.ts +0 -10
- package/components/FileManager/LeftSidebar.js +0 -127
- package/components/FileManager/LeftSidebar.js.map +0 -1
- package/components/FileManager/NoPermissionView.d.ts +0 -3
- package/components/FileManager/NoPermissionView.js +0 -87
- package/components/FileManager/NoPermissionView.js.map +0 -1
- package/components/FileManager/NoResults.d.ts +0 -3
- package/components/FileManager/NoResults.js +0 -28
- package/components/FileManager/NoResults.js.map +0 -1
- package/components/FileManager/getFileTypePlugin.d.ts +0 -4
- package/components/FileManager/getFileTypePlugin.js +0 -57
- package/components/FileManager/getFileTypePlugin.js.map +0 -1
- package/components/FileManager/getFileUploader.d.ts +0 -3
- package/components/FileManager/getFileUploader.js +0 -20
- package/components/FileManager/getFileUploader.js.map +0 -1
- package/components/FileManager/graphql.d.ts +0 -96
- package/components/FileManager/graphql.js +0 -58
- 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 -54
- 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 -144
- package/components/FileManager.js.map +0 -1
- package/plugins/FileManagerFileTypePlugin.d.ts +0 -33
- package/plugins/FileManagerFileTypePlugin.js +0 -63
- package/plugins/FileManagerFileTypePlugin.js.map +0 -1
- package/plugins/fileManager/fileDefault.d.ts +0 -2
- package/plugins/fileManager/fileDefault.js +0 -34
- package/plugins/fileManager/fileDefault.js.map +0 -1
- package/plugins/fileManager/fileImage/DeleteAction.d.ts +0 -7
- package/plugins/fileManager/fileImage/DeleteAction.js +0 -83
- 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 -179
- 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 -46
- 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 -21
- package/plugins/fileManager/index.js.map +0 -1
|
@@ -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 {};
|
|
@@ -1,84 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
6
|
-
|
|
7
4
|
Object.defineProperty(exports, "__esModule", {
|
|
8
5
|
value: true
|
|
9
6
|
});
|
|
10
7
|
exports.useInstaller = void 0;
|
|
11
|
-
|
|
12
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
9
|
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
15
|
-
|
|
16
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
-
|
|
18
11
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
19
|
-
|
|
20
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
21
|
-
|
|
22
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
23
|
-
|
|
24
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
25
|
-
|
|
13
|
+
var _react = require("react");
|
|
26
14
|
var _graphlib = require("graphlib");
|
|
27
|
-
|
|
28
|
-
var _semver = require("semver");
|
|
29
|
-
|
|
30
15
|
var _reactHooks = require("@apollo/react-hooks");
|
|
31
|
-
|
|
32
16
|
var _plugins = require("@webiny/plugins");
|
|
33
|
-
|
|
34
|
-
var _Progress = require("@webiny/ui/Progress");
|
|
35
|
-
|
|
36
17
|
var _config = require("@webiny/app/config");
|
|
37
|
-
|
|
38
|
-
var _excluded = ["children"];
|
|
39
|
-
|
|
40
|
-
var Loader = function Loader(_ref) {
|
|
41
|
-
var children = _ref.children,
|
|
42
|
-
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
43
|
-
return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
44
|
-
fallback: /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, {
|
|
45
|
-
label: "Loading..."
|
|
46
|
-
})
|
|
47
|
-
}, /*#__PURE__*/_react.default.cloneElement(children, props));
|
|
48
|
-
};
|
|
49
|
-
|
|
50
18
|
var useInstaller = function useInstaller(params) {
|
|
51
19
|
var isInstalled = params.isInstalled;
|
|
52
|
-
|
|
53
20
|
var _useReducer = (0, _react.useReducer)(function (prev, next) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
setState = _useReducer2[1];
|
|
65
|
-
|
|
21
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prev), next);
|
|
22
|
+
}, {
|
|
23
|
+
loading: true,
|
|
24
|
+
installers: [],
|
|
25
|
+
installerIndex: -1,
|
|
26
|
+
showLogin: false
|
|
27
|
+
}),
|
|
28
|
+
_useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
|
|
29
|
+
state = _useReducer2[0],
|
|
30
|
+
setState = _useReducer2[1];
|
|
66
31
|
var loading = state.loading,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
skippingVersions = state.skippingVersions;
|
|
32
|
+
installers = state.installers,
|
|
33
|
+
installerIndex = state.installerIndex,
|
|
34
|
+
showLogin = state.showLogin;
|
|
71
35
|
var client = (0, _reactHooks.useApolloClient)();
|
|
72
|
-
|
|
73
36
|
var validateGraph = function validateGraph(graph) {
|
|
74
37
|
var isAcyclic = _graphlib.alg.isAcyclic(graph);
|
|
75
|
-
|
|
76
38
|
if (isAcyclic) {
|
|
77
39
|
return;
|
|
78
40
|
}
|
|
79
|
-
|
|
80
41
|
var cycles = _graphlib.alg.findCycles(graph);
|
|
81
|
-
|
|
82
42
|
var msg = ["Your installers have circular dependencies:"];
|
|
83
43
|
cycles.forEach(function (cycle, index) {
|
|
84
44
|
var fromAToB = cycle.join(" --> ");
|
|
@@ -90,16 +50,14 @@ var useInstaller = function useInstaller(params) {
|
|
|
90
50
|
}, cycles);
|
|
91
51
|
throw new Error(msg.join("\n"));
|
|
92
52
|
};
|
|
93
|
-
|
|
94
53
|
var createGraph = function createGraph(installers) {
|
|
95
54
|
var graph = new _graphlib.Graph();
|
|
96
|
-
installers.forEach(function (
|
|
97
|
-
var plugin =
|
|
55
|
+
installers.forEach(function (_ref) {
|
|
56
|
+
var plugin = _ref.plugin;
|
|
98
57
|
graph.setNode(plugin.name, plugin);
|
|
99
58
|
});
|
|
100
|
-
installers.forEach(function (
|
|
101
|
-
var pl =
|
|
102
|
-
|
|
59
|
+
installers.forEach(function (_ref2) {
|
|
60
|
+
var pl = _ref2.plugin;
|
|
103
61
|
if (Array.isArray(pl.dependencies)) {
|
|
104
62
|
pl.dependencies.forEach(function (dep) {
|
|
105
63
|
graph.setEdge(pl.name, dep);
|
|
@@ -109,23 +67,17 @@ var useInstaller = function useInstaller(params) {
|
|
|
109
67
|
validateGraph(graph);
|
|
110
68
|
return graph;
|
|
111
69
|
};
|
|
112
|
-
|
|
113
70
|
var getInstallers = (0, _react.useCallback)(function (installers, graph) {
|
|
114
71
|
var toInstall = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
115
|
-
var toUpgrade = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
|
|
116
72
|
var leaf = graph.sinks()[0];
|
|
117
|
-
|
|
118
73
|
if (leaf) {
|
|
119
74
|
var installer = installers.find(function (inst) {
|
|
120
75
|
return inst.plugin.name === leaf;
|
|
121
76
|
});
|
|
122
|
-
|
|
123
77
|
if (!installer) {
|
|
124
78
|
throw new Error("Missing installer plugin \"".concat(leaf, "\"!"));
|
|
125
79
|
}
|
|
126
|
-
|
|
127
80
|
graph.removeNode(leaf);
|
|
128
|
-
|
|
129
81
|
if (!installer.installed) {
|
|
130
82
|
toInstall.push({
|
|
131
83
|
type: "install",
|
|
@@ -136,169 +88,108 @@ var useInstaller = function useInstaller(params) {
|
|
|
136
88
|
installed: null,
|
|
137
89
|
plugin: installer.plugin
|
|
138
90
|
});
|
|
139
|
-
} else {
|
|
140
|
-
var wbyVersion = _config.config.getKey("WEBINY_VERSION", process.env.REACT_APP_WEBINY_VERSION);
|
|
141
|
-
|
|
142
|
-
var upgrades = (installer.plugin.upgrades || []).filter(function (_ref4) {
|
|
143
|
-
var version = _ref4.version;
|
|
144
|
-
// TODO use coerce
|
|
145
|
-
return (0, _semver.lte)(version, wbyVersion) && (0, _semver.gt)(version, installer.installed || "");
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
if (upgrades.length > 1) {
|
|
149
|
-
var availableUpgrades = (0, _semver.sort)(upgrades.map(function (u) {
|
|
150
|
-
return u.version;
|
|
151
|
-
}));
|
|
152
|
-
var latestUpgrade = availableUpgrades[availableUpgrades.length - 1];
|
|
153
|
-
setState({
|
|
154
|
-
skippingVersions: {
|
|
155
|
-
current: installer.installed,
|
|
156
|
-
latest: latestUpgrade,
|
|
157
|
-
availableUpgrades: availableUpgrades
|
|
158
|
-
}
|
|
159
|
-
});
|
|
160
|
-
} else if (upgrades.length === 1) {
|
|
161
|
-
toUpgrade.push({
|
|
162
|
-
type: "upgrade",
|
|
163
|
-
name: "".concat(installer.plugin.name, "-upgrade"),
|
|
164
|
-
title: installer.plugin.title,
|
|
165
|
-
secure: true,
|
|
166
|
-
installed: null,
|
|
167
|
-
plugin: installer.plugin,
|
|
168
|
-
render: function render(_ref5) {
|
|
169
|
-
var onInstalled = _ref5.onInstalled;
|
|
170
|
-
var Component = upgrades[0].getComponent();
|
|
171
|
-
return /*#__PURE__*/_react.default.createElement(Loader, null, /*#__PURE__*/_react.default.createElement(Component, {
|
|
172
|
-
onInstalled: onInstalled
|
|
173
|
-
}));
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
91
|
}
|
|
178
|
-
|
|
179
|
-
return getInstallers(installers, graph, toInstall, toUpgrade);
|
|
92
|
+
return getInstallers(installers, graph, toInstall);
|
|
180
93
|
}
|
|
181
|
-
|
|
182
94
|
toInstall.sort(function (a, b) {
|
|
183
95
|
if (a.secure && !b.secure) {
|
|
184
96
|
return 1;
|
|
185
97
|
} else if (!a.secure && b.secure) {
|
|
186
98
|
return -1;
|
|
187
99
|
}
|
|
188
|
-
|
|
189
100
|
return 0;
|
|
190
101
|
});
|
|
191
102
|
return {
|
|
192
|
-
toInstall: toInstall
|
|
193
|
-
toUpgrade: toUpgrade
|
|
103
|
+
toInstall: toInstall
|
|
194
104
|
};
|
|
195
105
|
}, []);
|
|
196
|
-
|
|
197
106
|
var onUser = function onUser() {
|
|
198
107
|
setState({
|
|
199
108
|
showLogin: false
|
|
200
109
|
});
|
|
201
110
|
};
|
|
111
|
+
|
|
202
112
|
/**
|
|
203
113
|
* If set to anything else, it breaks in AppInstaller.tsx
|
|
204
114
|
*/
|
|
205
|
-
|
|
206
|
-
|
|
207
115
|
var showNextInstaller = function showNextInstaller() {
|
|
208
116
|
var prevInstaller = installers[installerIndex];
|
|
209
117
|
installers[installerIndex].installed = _config.config.getKey("WEBINY_VERSION", process.env.REACT_APP_WEBINY_VERSION);
|
|
210
118
|
setState({
|
|
211
119
|
installers: installers
|
|
212
120
|
});
|
|
213
|
-
|
|
214
121
|
if (installers.length < installerIndex + 1) {
|
|
215
122
|
setState({
|
|
216
123
|
installerIndex: undefined
|
|
217
124
|
});
|
|
218
125
|
return;
|
|
219
126
|
}
|
|
220
|
-
|
|
221
127
|
var nextIndex = installerIndex + 1;
|
|
222
128
|
var showLogin = false;
|
|
223
129
|
var nextInstaller = installers[nextIndex];
|
|
224
130
|
var prevSecure = prevInstaller && prevInstaller.secure;
|
|
225
131
|
var nextSecure = nextInstaller && nextInstaller.secure;
|
|
226
|
-
|
|
227
132
|
if (!prevSecure && nextSecure) {
|
|
228
133
|
showLogin = true;
|
|
229
134
|
}
|
|
230
|
-
|
|
231
135
|
setState({
|
|
232
136
|
installerIndex: nextIndex,
|
|
233
137
|
showLogin: showLogin
|
|
234
138
|
});
|
|
235
139
|
};
|
|
236
|
-
|
|
237
140
|
(0, _react.useEffect)(function () {
|
|
238
141
|
(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
|
|
239
|
-
var allInstallers, graph, _getInstallers, toInstall,
|
|
240
|
-
|
|
142
|
+
var allInstallers, graph, _getInstallers, toInstall, installers;
|
|
241
143
|
return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
|
|
242
|
-
while (1) {
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
setState({
|
|
292
|
-
installers: installers,
|
|
293
|
-
installerIndex: 0,
|
|
294
|
-
loading: false,
|
|
295
|
-
showLogin: toUpgrade.length > 0 || toInstall.length > 0 && toInstall[0].secure
|
|
296
|
-
});
|
|
297
|
-
|
|
298
|
-
case 9:
|
|
299
|
-
case "end":
|
|
300
|
-
return _context2.stop();
|
|
301
|
-
}
|
|
144
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
145
|
+
case 0:
|
|
146
|
+
if (!isInstalled) {
|
|
147
|
+
_context2.next = 2;
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
return _context2.abrupt("return");
|
|
151
|
+
case 2:
|
|
152
|
+
allInstallers = [];
|
|
153
|
+
_context2.next = 5;
|
|
154
|
+
return Promise.all(_plugins.plugins.byType("admin-installation").map( /*#__PURE__*/function () {
|
|
155
|
+
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(pl) {
|
|
156
|
+
var installed;
|
|
157
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
158
|
+
while (1) switch (_context.prev = _context.next) {
|
|
159
|
+
case 0:
|
|
160
|
+
_context.next = 2;
|
|
161
|
+
return pl.getInstalledVersion({
|
|
162
|
+
client: client
|
|
163
|
+
});
|
|
164
|
+
case 2:
|
|
165
|
+
installed = _context.sent;
|
|
166
|
+
allInstallers.push({
|
|
167
|
+
plugin: pl,
|
|
168
|
+
installed: installed
|
|
169
|
+
});
|
|
170
|
+
case 4:
|
|
171
|
+
case "end":
|
|
172
|
+
return _context.stop();
|
|
173
|
+
}
|
|
174
|
+
}, _callee);
|
|
175
|
+
}));
|
|
176
|
+
return function (_x) {
|
|
177
|
+
return _ref4.apply(this, arguments);
|
|
178
|
+
};
|
|
179
|
+
}()));
|
|
180
|
+
case 5:
|
|
181
|
+
graph = createGraph(allInstallers);
|
|
182
|
+
_getInstallers = getInstallers(allInstallers, graph), toInstall = _getInstallers.toInstall;
|
|
183
|
+
installers = (0, _toConsumableArray2.default)(toInstall);
|
|
184
|
+
setState({
|
|
185
|
+
installers: installers,
|
|
186
|
+
installerIndex: 0,
|
|
187
|
+
loading: false,
|
|
188
|
+
showLogin: toInstall.length > 0 && toInstall[0].secure
|
|
189
|
+
});
|
|
190
|
+
case 9:
|
|
191
|
+
case "end":
|
|
192
|
+
return _context2.stop();
|
|
302
193
|
}
|
|
303
194
|
}, _callee2);
|
|
304
195
|
}))();
|
|
@@ -313,9 +204,7 @@ var useInstaller = function useInstaller(params) {
|
|
|
313
204
|
installer: installers[installerIndex],
|
|
314
205
|
showNextInstaller: showNextInstaller,
|
|
315
206
|
showLogin: showLogin,
|
|
316
|
-
onUser: onUser
|
|
317
|
-
skippingVersions: skippingVersions
|
|
207
|
+
onUser: onUser
|
|
318
208
|
};
|
|
319
209
|
};
|
|
320
|
-
|
|
321
210
|
exports.useInstaller = useInstaller;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Loader","children","props","React","cloneElement","useInstaller","params","isInstalled","useReducer","prev","next","loading","installers","installerIndex","showLogin","skippingVersions","state","setState","client","useApolloClient","validateGraph","graph","isAcyclic","alg","cycles","findCycles","msg","forEach","cycle","index","fromAToB","join","fromBToA","reverse","padLength","length","push","padStart","Error","createGraph","Graph","plugin","setNode","name","pl","Array","isArray","dependencies","dep","setEdge","getInstallers","useCallback","toInstall","toUpgrade","leaf","sinks","installer","find","inst","removeNode","installed","type","title","render","secure","wbyVersion","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","upgrades","filter","version","lte","gt","availableUpgrades","sort","map","u","latestUpgrade","current","latest","onInstalled","Component","getComponent","a","b","onUser","showNextInstaller","prevInstaller","undefined","nextIndex","nextInstaller","prevSecure","nextSecure","useEffect","allInstallers","Promise","all","plugins","byType","getInstalledVersion","isFirstInstall","some"],"sources":["useInstaller.tsx"],"sourcesContent":["import React, { useCallback, useReducer, useEffect, Suspense } from \"react\";\nimport { Graph, alg } from \"graphlib\";\nimport { sort, gt, lte } from \"semver\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminInstallationPlugin } from \"~/types\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\nconst Loader: React.FC<{ children: React.ReactElement }> = ({ children, ...props }) => (\n <Suspense fallback={<CircularProgress label={\"Loading...\"} />}>\n {React.cloneElement(children, props)}\n </Suspense>\n);\n\ninterface GetInstallersResult {\n toInstall: Installer[];\n toUpgrade: Installer[];\n}\n\ninterface UseInstallerParams {\n isInstalled: boolean;\n}\n\ninterface SkippingVersionState {\n current: string;\n latest: string;\n availableUpgrades: string[];\n}\n\ninterface BaseInstaller {\n installed: string | null;\n plugin: AdminInstallationPlugin;\n}\n\nexport interface Installer extends BaseInstaller {\n type: \"install\" | \"upgrade\";\n name: string;\n title: string;\n render: AdminInstallationPlugin[\"render\"];\n secure?: boolean;\n}\ninterface State {\n loading: boolean;\n installers: Installer[];\n installerIndex: number;\n showLogin: boolean;\n skippingVersions: SkippingVersionState | null;\n}\n\ninterface Reducer {\n (prev: State, next: Partial<State>): State;\n}\n\nexport const useInstaller = (params: UseInstallerParams) => {\n const { isInstalled } = params;\n const [state, setState] = useReducer<Reducer>((prev, next) => ({ ...prev, ...next }), {\n loading: true,\n installers: [],\n installerIndex: -1,\n showLogin: false,\n skippingVersions: null\n });\n const { loading, installers, installerIndex, showLogin, skippingVersions } = state;\n\n const client = useApolloClient();\n\n const validateGraph = (graph: Graph): void => {\n const isAcyclic = alg.isAcyclic(graph);\n if (isAcyclic) {\n return;\n }\n const cycles = alg.findCycles(graph);\n const msg = [\"Your installers have circular dependencies:\"];\n cycles.forEach((cycle, index) => {\n let fromAToB = cycle.join(\" --> \");\n fromAToB = `${index + 1}. ${fromAToB}`;\n const fromBToA = cycle.reverse().join(\" <-- \");\n const padLength = fromAToB.length + 4;\n msg.push(fromAToB.padStart(padLength));\n msg.push(fromBToA.padStart(padLength));\n }, cycles);\n throw new Error(msg.join(\"\\n\"));\n };\n\n const createGraph = (installers: BaseInstaller[]): Graph => {\n const graph = new Graph();\n installers.forEach(({ plugin }) => {\n graph.setNode(plugin.name as string, plugin);\n });\n\n installers.forEach(({ plugin: pl }) => {\n if (Array.isArray(pl.dependencies)) {\n pl.dependencies.forEach(dep => {\n graph.setEdge(pl.name as string, dep);\n });\n }\n });\n\n validateGraph(graph);\n\n return graph;\n };\n\n const getInstallers = useCallback(\n (\n installers: BaseInstaller[],\n graph: Graph,\n toInstall: Installer[] = [],\n toUpgrade: Installer[] = []\n ): GetInstallersResult => {\n const leaf = graph.sinks()[0];\n if (leaf) {\n const installer = installers.find(inst => inst.plugin.name === leaf);\n if (!installer) {\n throw new Error(`Missing installer plugin \"${leaf}\"!`);\n }\n\n graph.removeNode(leaf);\n if (!installer.installed) {\n toInstall.push({\n type: \"install\",\n name: `${installer.plugin.name}-install`,\n title: installer.plugin.title,\n render: installer.plugin.render,\n secure: installer.plugin.secure,\n installed: null,\n plugin: installer.plugin\n });\n } else {\n const wbyVersion = appConfig.getKey(\n \"WEBINY_VERSION\",\n process.env.REACT_APP_WEBINY_VERSION as string\n );\n\n const upgrades = (installer.plugin.upgrades || []).filter(({ version }) => {\n // TODO use coerce\n return lte(version, wbyVersion) && gt(version, installer.installed || \"\");\n });\n\n if (upgrades.length > 1) {\n const availableUpgrades = sort(upgrades.map(u => u.version));\n const latestUpgrade = availableUpgrades[availableUpgrades.length - 1];\n setState({\n skippingVersions: {\n current: installer.installed,\n latest: latestUpgrade,\n availableUpgrades\n }\n });\n } else if (upgrades.length === 1) {\n toUpgrade.push({\n type: \"upgrade\",\n name: `${installer.plugin.name}-upgrade`,\n title: installer.plugin.title,\n secure: true,\n installed: null,\n plugin: installer.plugin,\n render({ onInstalled }) {\n const Component = upgrades[0].getComponent();\n return (\n <Loader>\n <Component onInstalled={onInstalled} />\n </Loader>\n );\n }\n });\n }\n }\n return getInstallers(installers, graph, toInstall, toUpgrade);\n }\n toInstall.sort((a, b) => {\n if (a.secure && !b.secure) {\n return 1;\n } else if (!a.secure && b.secure) {\n return -1;\n }\n return 0;\n });\n return { toInstall, toUpgrade };\n },\n []\n );\n\n const onUser = () => {\n setState({ showLogin: false });\n };\n\n /**\n * If set to anything else, it breaks in AppInstaller.tsx\n */\n const showNextInstaller = (): any => {\n const prevInstaller = installers[installerIndex];\n\n installers[installerIndex].installed = appConfig.getKey(\n \"WEBINY_VERSION\",\n process.env.REACT_APP_WEBINY_VERSION as string\n );\n setState({ installers });\n\n if (installers.length < installerIndex + 1) {\n setState({ installerIndex: undefined });\n return;\n }\n\n const nextIndex = installerIndex + 1;\n\n let showLogin = false;\n const nextInstaller = installers[nextIndex];\n\n const prevSecure = prevInstaller && prevInstaller.secure;\n const nextSecure = nextInstaller && nextInstaller.secure;\n if (!prevSecure && nextSecure) {\n showLogin = true;\n }\n setState({ installerIndex: nextIndex, showLogin });\n };\n\n useEffect(() => {\n (async () => {\n if (isInstalled) {\n return;\n }\n\n const allInstallers: BaseInstaller[] = [];\n await Promise.all(\n plugins.byType<AdminInstallationPlugin>(\"admin-installation\").map(async pl => {\n const installed = await pl.getInstalledVersion({ client });\n allInstallers.push({ plugin: pl, installed });\n })\n );\n\n const graph = createGraph(allInstallers);\n const { toInstall, toUpgrade } = getInstallers(allInstallers, graph);\n const installers = [...toUpgrade, ...toInstall];\n setState({\n installers,\n installerIndex: 0,\n loading: false,\n showLogin: toUpgrade.length > 0 || (toInstall.length > 0 && toInstall[0].secure)\n });\n })();\n }, []);\n\n const isFirstInstall = installers.some(installer => installer.installed);\n\n return {\n loading,\n installers,\n isFirstInstall,\n installer: installers[installerIndex],\n showNextInstaller,\n showLogin,\n onUser,\n skippingVersions\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useInstaller","params","isInstalled","useReducer","prev","next","loading","installers","installerIndex","showLogin","state","setState","client","useApolloClient","validateGraph","graph","isAcyclic","alg","cycles","findCycles","msg","forEach","cycle","index","fromAToB","join","fromBToA","reverse","padLength","length","push","padStart","Error","createGraph","Graph","plugin","setNode","name","pl","Array","isArray","dependencies","dep","setEdge","getInstallers","useCallback","toInstall","leaf","sinks","installer","find","inst","removeNode","installed","type","title","render","secure","sort","a","b","onUser","showNextInstaller","prevInstaller","appConfig","getKey","process","env","REACT_APP_WEBINY_VERSION","undefined","nextIndex","nextInstaller","prevSecure","nextSecure","useEffect","allInstallers","Promise","all","plugins","byType","map","getInstalledVersion","isFirstInstall","some"],"sources":["useInstaller.tsx"],"sourcesContent":["import { useCallback, useReducer, useEffect } from \"react\";\nimport { Graph, alg } from \"graphlib\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { plugins } from \"@webiny/plugins\";\nimport { AdminInstallationPlugin } from \"~/types\";\nimport { config as appConfig } from \"@webiny/app/config\";\n\ninterface GetInstallersResult {\n toInstall: Installer[];\n}\n\ninterface UseInstallerParams {\n isInstalled: boolean;\n}\n\ninterface BaseInstaller {\n installed: string | null;\n plugin: AdminInstallationPlugin;\n}\n\nexport interface Installer extends BaseInstaller {\n type: \"install\";\n name: string;\n title: string;\n render: AdminInstallationPlugin[\"render\"];\n secure?: boolean;\n}\ninterface State {\n loading: boolean;\n installers: Installer[];\n installerIndex: number;\n showLogin: boolean;\n}\n\ninterface Reducer {\n (prev: State, next: Partial<State>): State;\n}\n\nexport const useInstaller = (params: UseInstallerParams) => {\n const { isInstalled } = params;\n const [state, setState] = useReducer<Reducer>((prev, next) => ({ ...prev, ...next }), {\n loading: true,\n installers: [],\n installerIndex: -1,\n showLogin: false\n });\n const { loading, installers, installerIndex, showLogin } = state;\n\n const client = useApolloClient();\n\n const validateGraph = (graph: Graph): void => {\n const isAcyclic = alg.isAcyclic(graph);\n if (isAcyclic) {\n return;\n }\n const cycles = alg.findCycles(graph);\n const msg = [\"Your installers have circular dependencies:\"];\n cycles.forEach((cycle, index) => {\n let fromAToB = cycle.join(\" --> \");\n fromAToB = `${index + 1}. ${fromAToB}`;\n const fromBToA = cycle.reverse().join(\" <-- \");\n const padLength = fromAToB.length + 4;\n msg.push(fromAToB.padStart(padLength));\n msg.push(fromBToA.padStart(padLength));\n }, cycles);\n throw new Error(msg.join(\"\\n\"));\n };\n\n const createGraph = (installers: BaseInstaller[]): Graph => {\n const graph = new Graph();\n installers.forEach(({ plugin }) => {\n graph.setNode(plugin.name as string, plugin);\n });\n\n installers.forEach(({ plugin: pl }) => {\n if (Array.isArray(pl.dependencies)) {\n pl.dependencies.forEach(dep => {\n graph.setEdge(pl.name as string, dep);\n });\n }\n });\n\n validateGraph(graph);\n\n return graph;\n };\n\n const getInstallers = useCallback(\n (\n installers: BaseInstaller[],\n graph: Graph,\n toInstall: Installer[] = []\n ): GetInstallersResult => {\n const leaf = graph.sinks()[0];\n if (leaf) {\n const installer = installers.find(inst => inst.plugin.name === leaf);\n if (!installer) {\n throw new Error(`Missing installer plugin \"${leaf}\"!`);\n }\n\n graph.removeNode(leaf);\n if (!installer.installed) {\n toInstall.push({\n type: \"install\",\n name: `${installer.plugin.name}-install`,\n title: installer.plugin.title,\n render: installer.plugin.render,\n secure: installer.plugin.secure,\n installed: null,\n plugin: installer.plugin\n });\n }\n\n return getInstallers(installers, graph, toInstall);\n }\n toInstall.sort((a, b) => {\n if (a.secure && !b.secure) {\n return 1;\n } else if (!a.secure && b.secure) {\n return -1;\n }\n return 0;\n });\n return { toInstall };\n },\n []\n );\n\n const onUser = () => {\n setState({ showLogin: false });\n };\n\n /**\n * If set to anything else, it breaks in AppInstaller.tsx\n */\n const showNextInstaller = (): any => {\n const prevInstaller = installers[installerIndex];\n\n installers[installerIndex].installed = appConfig.getKey(\n \"WEBINY_VERSION\",\n process.env.REACT_APP_WEBINY_VERSION as string\n );\n setState({ installers });\n\n if (installers.length < installerIndex + 1) {\n setState({ installerIndex: undefined });\n return;\n }\n\n const nextIndex = installerIndex + 1;\n\n let showLogin = false;\n const nextInstaller = installers[nextIndex];\n\n const prevSecure = prevInstaller && prevInstaller.secure;\n const nextSecure = nextInstaller && nextInstaller.secure;\n if (!prevSecure && nextSecure) {\n showLogin = true;\n }\n setState({ installerIndex: nextIndex, showLogin });\n };\n\n useEffect(() => {\n (async () => {\n if (isInstalled) {\n return;\n }\n\n const allInstallers: BaseInstaller[] = [];\n await Promise.all(\n plugins.byType<AdminInstallationPlugin>(\"admin-installation\").map(async pl => {\n const installed = await pl.getInstalledVersion({ client });\n allInstallers.push({ plugin: pl, installed });\n })\n );\n\n const graph = createGraph(allInstallers);\n const { toInstall } = getInstallers(allInstallers, graph);\n const installers = [...toInstall];\n setState({\n installers,\n installerIndex: 0,\n loading: false,\n showLogin: toInstall.length > 0 && toInstall[0].secure\n });\n })();\n }, []);\n\n const isFirstInstall = installers.some(installer => installer.installed);\n\n return {\n loading,\n installers,\n isFirstInstall,\n installer: installers[installerIndex],\n showNextInstaller,\n showLogin,\n onUser\n };\n};\n"],"mappings":"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"}
|
package/components/EmptyView.js
CHANGED
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
13
|
-
|
|
14
10
|
var _Typography = require("@webiny/ui/Typography");
|
|
15
|
-
|
|
16
|
-
var _touch_app = require("../assets/icons/touch_app.svg");
|
|
17
|
-
|
|
11
|
+
var _touch_app = require("@material-design-icons/svg/filled/touch_app.svg");
|
|
18
12
|
var EmptyViewWrapper = /*#__PURE__*/(0, _styled.default)("div", {
|
|
19
13
|
target: "eu81oh40",
|
|
20
14
|
label: "EmptyViewWrapper"
|
|
@@ -48,12 +42,11 @@ var EmptyViewWrapper = /*#__PURE__*/(0, _styled.default)("div", {
|
|
|
48
42
|
}
|
|
49
43
|
}
|
|
50
44
|
});
|
|
51
|
-
|
|
52
45
|
var EmptyView = function EmptyView(_ref) {
|
|
53
46
|
var _ref$icon = _ref.icon,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
47
|
+
icon = _ref$icon === void 0 ? /*#__PURE__*/_react.default.createElement(_touch_app.ReactComponent, null) : _ref$icon,
|
|
48
|
+
title = _ref.title,
|
|
49
|
+
action = _ref.action;
|
|
57
50
|
return /*#__PURE__*/_react.default.createElement(EmptyViewWrapper, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
58
51
|
className: "media"
|
|
59
52
|
}, icon), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -65,6 +58,5 @@ var EmptyView = function EmptyView(_ref) {
|
|
|
65
58
|
className: "action__container"
|
|
66
59
|
}, action));
|
|
67
60
|
};
|
|
68
|
-
|
|
69
61
|
var _default = EmptyView;
|
|
70
62
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EmptyViewWrapper","styled","width","height","display","flexDirection","alignItems","justifyContent","fill","marginBottom","maxWidth","textAlign","color","padding","backgroundColor","EmptyView","icon","title","action"],"sources":["EmptyView.tsx"],"sourcesContent":["import React, { ReactElement } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as TouchIcon } from \"
|
|
1
|
+
{"version":3,"names":["EmptyViewWrapper","styled","width","height","display","flexDirection","alignItems","justifyContent","fill","marginBottom","maxWidth","textAlign","color","padding","backgroundColor","EmptyView","icon","title","action"],"sources":["EmptyView.tsx"],"sourcesContent":["import React, { ReactElement } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as TouchIcon } from \"@material-design-icons/svg/filled/touch_app.svg\";\n\nconst EmptyViewWrapper = styled(\"div\")({\n width: \"100%\",\n height: \"80%\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n\n \"& .media\": {\n \"& svg\": {\n width: 75,\n height: 75,\n fill: \"var(--mdc-theme-text-icon-on-background)\"\n },\n marginBottom: 30\n },\n \"& .title__container\": {\n maxWidth: 276,\n textAlign: \"center\",\n marginBottom: 24,\n \"& .title\": {\n color: \"var(--mdc-theme-text-secondary-on-background)\"\n }\n },\n \"& .action__container\": {\n \"& .mdc-button\": {\n padding: \"0px 16px\",\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n }\n});\nexport interface EmptyViewProps {\n icon?: ReactElement;\n title: string;\n action: ReactElement | null;\n}\nconst EmptyView: React.FC<EmptyViewProps> = ({ icon = <TouchIcon />, title, action }) => {\n return (\n <EmptyViewWrapper>\n <div className={\"media\"}>{icon}</div>\n <div className=\"title__container\">\n <Typography use={\"subtitle1\"} className={\"title\"}>\n {title}\n </Typography>\n </div>\n <div className=\"action__container\">{action}</div>\n </EmptyViewWrapper>\n );\n};\n\nexport default EmptyView;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AAEA,IAAMA,gBAAgB,oBAAGC,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,GAAE;EACnCC,KAAK,EAAE,MAAM;EACbC,MAAM,EAAE,KAAK;EACbC,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE,QAAQ;EACvBC,UAAU,EAAE,QAAQ;EACpBC,cAAc,EAAE,QAAQ;EAExB,UAAU,EAAE;IACR,OAAO,EAAE;MACLL,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVK,IAAI,EAAE;IACV,CAAC;IACDC,YAAY,EAAE;EAClB,CAAC;EACD,qBAAqB,EAAE;IACnBC,QAAQ,EAAE,GAAG;IACbC,SAAS,EAAE,QAAQ;IACnBF,YAAY,EAAE,EAAE;IAChB,UAAU,EAAE;MACRG,KAAK,EAAE;IACX;EACJ,CAAC;EACD,sBAAsB,EAAE;IACpB,eAAe,EAAE;MACbC,OAAO,EAAE,UAAU;MACnBC,eAAe,EAAE;IACrB;EACJ;AACJ,CAAC,CAAC;AAMF,IAAMC,SAAmC,GAAG,SAAtCA,SAAmC,OAAgD;EAAA,qBAA1CC,IAAI;IAAJA,IAAI,uCAAG,6BAAC,yBAAS,OAAG;IAAEC,KAAK,QAALA,KAAK;IAAEC,MAAM,QAANA,MAAM;EAC9E,oBACI,6BAAC,gBAAgB,qBACb;IAAK,SAAS,EAAE;EAAQ,GAAEF,IAAI,CAAO,eACrC;IAAK,SAAS,EAAC;EAAkB,gBAC7B,6BAAC,sBAAU;IAAC,GAAG,EAAE,WAAY;IAAC,SAAS,EAAE;EAAQ,GAC5CC,KAAK,CACG,CACX,eACN;IAAK,SAAS,EAAC;EAAmB,GAAEC,MAAM,CAAO,CAClC;AAE3B,CAAC;AAAC,eAEaH,SAAS;AAAA"}
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.FloatingActionButton = void 0;
|
|
9
|
-
|
|
10
8
|
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _Button = require("@webiny/ui/Button");
|
|
13
|
-
|
|
14
|
-
var _roundAdd24px = require("../assets/icons/round-add-24px.svg");
|
|
15
|
-
|
|
10
|
+
var _add = require("@material-design-icons/svg/outlined/add.svg");
|
|
16
11
|
// Set "styles" inline, since no customizations are possible / needed here.
|
|
17
12
|
var FloatingActionButton = function FloatingActionButton(props) {
|
|
18
13
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -22,8 +17,7 @@ var FloatingActionButton = function FloatingActionButton(props) {
|
|
|
22
17
|
right: 20
|
|
23
18
|
}
|
|
24
19
|
}, /*#__PURE__*/React.createElement(_Button.ButtonFloating, Object.assign({}, props, {
|
|
25
|
-
icon: /*#__PURE__*/React.createElement(
|
|
20
|
+
icon: /*#__PURE__*/React.createElement(_add.ReactComponent, null)
|
|
26
21
|
})));
|
|
27
22
|
};
|
|
28
|
-
|
|
29
23
|
exports.FloatingActionButton = FloatingActionButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FloatingActionButton","props","position","bottom","right"],"sources":["FloatingActionButton.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ButtonFloating } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"
|
|
1
|
+
{"version":3,"names":["FloatingActionButton","props","position","bottom","right"],"sources":["FloatingActionButton.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ButtonFloating } from \"@webiny/ui/Button\";\nimport { ReactComponent as AddIcon } from \"@material-design-icons/svg/outlined/add.svg\";\n\n// Set \"styles\" inline, since no customizations are possible / needed here.\nconst FloatingActionButton: React.FC = props => {\n return (\n <div\n style={{\n position: \"absolute\",\n bottom: 20,\n right: 20\n }}\n >\n <ButtonFloating {...props} icon={<AddIcon />} />\n </div>\n );\n};\n\nexport { FloatingActionButton };\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAEA;AACA,IAAMA,oBAA8B,GAAG,SAAjCA,oBAA8B,CAAGC,KAAK,EAAI;EAC5C,oBACI;IACI,KAAK,EAAE;MACHC,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,EAAE;MACVC,KAAK,EAAE;IACX;EAAE,gBAEF,oBAAC,sBAAc,oBAAKH,KAAK;IAAE,IAAI,eAAE,oBAAC,mBAAO;EAAI,GAAG,CAC9C;AAEd,CAAC;AAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { RichTextEditorProps } from "@webiny/lexical-editor/types";
|
|
3
|
+
import { Theme } from "@webiny/app-theme/types";
|
|
4
|
+
interface LexicalEditorProps extends Omit<RichTextEditorProps, "theme"> {
|
|
5
|
+
theme?: Theme;
|
|
6
|
+
}
|
|
7
|
+
export declare const LexicalEditor: (props: LexicalEditorProps) => JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.LexicalEditor = void 0;
|
|
8
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _ = require("./..");
|
|
12
|
+
var _lexicalEditor = require("@webiny/lexical-editor");
|
|
13
|
+
var _appTheme = require("@webiny/app-theme");
|
|
14
|
+
var LexicalEditor = function LexicalEditor(props) {
|
|
15
|
+
var _useTheme = (0, _appTheme.useTheme)(),
|
|
16
|
+
theme = _useTheme.theme;
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement(_.FileManager, null, function (_ref) {
|
|
18
|
+
var showFileManager = _ref.showFileManager;
|
|
19
|
+
return /*#__PURE__*/_react.default.createElement(_lexicalEditor.RichTextEditor, Object.assign({}, props, {
|
|
20
|
+
theme: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, theme), props === null || props === void 0 ? void 0 : props.theme),
|
|
21
|
+
toolbarActionPlugins: [].concat((0, _toConsumableArray2.default)(props.toolbarActionPlugins || []), [{
|
|
22
|
+
targetAction: "image-action",
|
|
23
|
+
plugin: showFileManager
|
|
24
|
+
}])
|
|
25
|
+
}));
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
exports.LexicalEditor = LexicalEditor;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["LexicalEditor","props","useTheme","theme","showFileManager","toolbarActionPlugins","targetAction","plugin"],"sources":["LexicalEditor.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManager } from \"~/components\";\nimport { RichTextEditor as BaseEditor } from \"@webiny/lexical-editor\";\nimport { RichTextEditorProps } from \"@webiny/lexical-editor/types\";\nimport { useTheme } from \"@webiny/app-theme\";\nimport { Theme } from \"@webiny/app-theme/types\";\n\ninterface LexicalEditorProps extends Omit<RichTextEditorProps, \"theme\"> {\n theme?: Theme;\n}\n\nexport const LexicalEditor = (props: LexicalEditorProps) => {\n const { theme } = useTheme();\n\n return (\n <FileManager>\n {({ showFileManager }) => (\n <BaseEditor\n {...props}\n theme={{ ...theme, ...props?.theme }}\n toolbarActionPlugins={[\n ...(props.toolbarActionPlugins || []),\n { targetAction: \"image-action\", plugin: showFileManager }\n ]}\n />\n )}\n </FileManager>\n );\n};\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AAEA;AAOO,IAAMA,aAAa,GAAG,SAAhBA,aAAa,CAAIC,KAAyB,EAAK;EACxD,gBAAkB,IAAAC,kBAAQ,GAAE;IAApBC,KAAK,aAALA,KAAK;EAEb,oBACI,6BAAC,aAAW,QACP;IAAA,IAAGC,eAAe,QAAfA,eAAe;IAAA,oBACf,6BAAC,6BAAU,oBACHH,KAAK;MACT,KAAK,8DAAOE,KAAK,GAAKF,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,KAAK,CAAG;MACrC,oBAAoB,6CACZF,KAAK,CAACI,oBAAoB,IAAI,EAAE,IACpC;QAAEC,YAAY,EAAE,cAAc;QAAEC,MAAM,EAAEH;MAAgB,CAAC;IAC3D,GACJ;EAAA,CACL,CACS;AAEtB,CAAC;AAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { LexicalEditor } from "./LexicalEditor";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "LexicalEditor", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _LexicalEditor.LexicalEditor;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _LexicalEditor = require("./LexicalEditor");
|