@webiny/app-admin 5.17.4 → 5.18.0-beta.3
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/components/AdminLayout.js +1 -2
- package/components/AppInstaller/Sidebar.js +1 -2
- package/components/AppInstaller/index.js +1 -2
- package/components/AppInstaller/styled.d.ts +4 -4
- package/components/AppInstaller/styled.js +1 -2
- package/components/AppInstaller/useInstaller.js +1 -2
- package/components/EmptyView.js +1 -2
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +1 -2
- package/components/FileManager/BottomInfoBar/UploadStatus.js +1 -2
- package/components/FileManager/BottomInfoBar.js +1 -2
- package/components/FileManager/DropFilesHere.js +1 -2
- package/components/FileManager/File.js +1 -2
- package/components/FileManager/FileDetails/Name.js +1 -2
- package/components/FileManager/FileDetails/Tags.js +1 -2
- package/components/FileManager/FileDetails.js +1 -2
- package/components/FileManager/FileManagerContext.js +1 -2
- package/components/FileManager/FileManagerView.js +1 -2
- package/components/FileManager/LeftSidebar.js +1 -2
- package/components/FileManager/NoPermissionView.js +1 -2
- package/components/FileManager/NoResults.js +1 -2
- package/components/FileManager/getFileTypePlugin.js +1 -2
- package/components/FileManager/getFileUploader.js +1 -2
- package/components/FileManager/graphql.js +1 -2
- package/components/FileManager/outputFileSelectionError.js +1 -2
- package/components/FileManager.js +1 -2
- package/components/FloatingActionButton.js +1 -2
- package/components/MultiImageUpload.js +1 -2
- package/components/OverlayLayout/OverlayLayout.js +1 -2
- package/components/OverlayLayout/index.js +1 -2
- package/components/Permissions/Permissions.js +1 -2
- package/components/Permissions/StyledComponents.js +1 -2
- package/components/Permissions/index.js +1 -2
- package/components/RichTextEditor/RichTextEditor.js +1 -2
- package/components/RichTextEditor/index.js +1 -2
- package/components/RichTextEditor/tools/header/index.js +1 -2
- package/components/RichTextEditor/tools/image/index.d.ts +7 -6
- package/components/RichTextEditor/tools/image/index.js +6 -2
- package/components/RichTextEditor/tools/image/svgs.js +1 -2
- package/components/RichTextEditor/tools/image/tunes.js +1 -2
- package/components/RichTextEditor/tools/image/ui.js +1 -2
- package/components/RichTextEditor/tools/paragraph/index.js +1 -2
- package/components/RichTextEditor/tools/textColor/index.js +1 -2
- package/components/RichTextEditor/tools/utils.js +1 -2
- package/components/SearchUI.js +1 -2
- package/components/SimpleForm/SimpleForm.js +1 -2
- package/components/SimpleForm/index.js +1 -2
- package/components/SimpleUI/InputField.js +1 -2
- package/components/SingleImageUpload.js +1 -2
- package/components/SplitView/SplitView.js +1 -2
- package/components/SplitView/index.js +1 -2
- package/components/index.js +1 -2
- package/hooks/useConfirmationDialog.js +1 -2
- package/hooks/useDialog.js +1 -2
- package/hooks/useSnackbar.js +1 -2
- package/package.json +13 -13
- package/plugins/FileManagerFileTypePlugin.js +1 -2
- package/plugins/MenuPlugin.js +1 -2
- package/plugins/PermissionRendererPlugin.js +1 -2
- package/plugins/fileManager/fileDefault.js +1 -2
- package/plugins/fileManager/fileImage/DeleteAction.js +1 -2
- package/plugins/fileManager/fileImage/EditAction.js +1 -2
- package/plugins/fileManager/fileImage/index.js +1 -2
- package/plugins/fileManager/index.js +1 -2
- package/plugins/globalSearch/SearchBar.js +1 -2
- package/plugins/globalSearch/SearchBarDropdown.js +1 -2
- package/plugins/globalSearch/index.js +1 -2
- package/plugins/globalSearch/styled.d.ts +3 -3
- package/plugins/globalSearch/styled.js +1 -2
- package/plugins/index.js +1 -2
- package/plugins/logo/Logo.d.ts +1 -1
- package/plugins/logo/Logo.js +2 -3
- package/plugins/logo/index.js +1 -2
- package/plugins/menu/documentation.js +3 -3
- package/plugins/menu/fileManager.js +1 -2
- package/plugins/menu/index.js +1 -2
- package/plugins/menu/renderers/MenuGroupRenderer.js +1 -2
- package/plugins/menu/renderers/MenuLinkRenderer.js +4 -3
- package/plugins/menu/renderers/MenuSectionItemRenderer.js +1 -2
- package/plugins/menu/renderers/MenuSectionRenderer.js +1 -2
- package/plugins/menu/slack.js +3 -3
- package/plugins/menu/source.js +3 -3
- package/plugins/uiLayoutRenderer/index.js +1 -2
- package/plugins/userMenu/UserMenuElement.js +1 -2
- package/plugins/userMenu/UserMenuRenderer.js +1 -2
- package/plugins/userMenu/index.js +1 -2
- package/types.js +1 -2
- package/ui/UIElement.js +1 -2
- package/ui/UILayout.js +1 -2
- package/ui/UIRenderer.js +1 -2
- package/ui/UIView.js +1 -2
- package/ui/elements/AccordionElement.js +1 -2
- package/ui/elements/ButtonElement.js +1 -2
- package/ui/elements/ButtonGroupElement.js +1 -2
- package/ui/elements/GenericElement.js +1 -2
- package/ui/elements/LabelElement.js +1 -2
- package/ui/elements/NavigationMenuElement.d.ts +1 -0
- package/ui/elements/NavigationMenuElement.js +1 -2
- package/ui/elements/PanelElement.js +1 -2
- package/ui/elements/PlaceholderElement.js +1 -2
- package/ui/elements/SmallButtonElement.js +1 -2
- package/ui/elements/TypographyElement.js +1 -2
- package/ui/elements/ViewElement.js +1 -2
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +1 -2
- package/ui/elements/form/DynamicFieldsetElement.js +1 -2
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js +1 -2
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +1 -2
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +1 -2
- package/ui/elements/form/FileManagerElement/styled.d.ts +9 -9
- package/ui/elements/form/FileManagerElement/styled.js +1 -2
- package/ui/elements/form/FileManagerElement.d.ts +3 -2
- package/ui/elements/form/FileManagerElement.js +1 -2
- package/ui/elements/form/FormElement.js +1 -2
- package/ui/elements/form/FormFieldElement.js +1 -2
- package/ui/elements/form/HiddenElement.js +1 -2
- package/ui/elements/form/InputElement.js +1 -2
- package/ui/elements/form/PasswordElement.js +1 -2
- package/ui/elements/form/SelectElement.js +1 -2
- package/ui/elements/form/TextareaElement.js +1 -2
- package/ui/views/AdminView/ContentElement.js +1 -2
- package/ui/views/AdminView/HeaderElement.js +1 -2
- package/ui/views/AdminView/HeaderSectionCenterElement.js +1 -2
- package/ui/views/AdminView/HeaderSectionLeftElement.js +1 -2
- package/ui/views/AdminView/HeaderSectionRightElement.js +1 -2
- package/ui/views/AdminView/components/Dialog.js +1 -2
- package/ui/views/AdminView/components/Hamburger.js +1 -2
- package/ui/views/AdminView/components/Snackbar.js +1 -2
- package/ui/views/AdminView.js +1 -2
- package/ui/views/FormView/FormContainerElement.js +1 -2
- package/ui/views/FormView/FormContentElement.js +1 -2
- package/ui/views/FormView/FormFooterElement.js +1 -2
- package/ui/views/FormView/FormHeaderElement.js +1 -2
- package/ui/views/FormView.js +1 -2
- package/ui/views/NavigationView/ContentElement.js +1 -2
- package/ui/views/NavigationView/FooterElement.js +1 -2
- package/ui/views/NavigationView/HeaderElement.js +1 -2
- package/ui/views/NavigationView/NavigationViewRenderer.js +1 -2
- package/ui/views/NavigationView/Styled.d.ts +2 -2
- package/ui/views/NavigationView/Styled.js +1 -2
- package/ui/views/NavigationView/legacyMenu.js +1 -2
- package/ui/views/NavigationView/useNavigation.js +1 -2
- package/ui/views/NavigationView.js +1 -2
- package/ui/views/OverlayView/ContentElement.js +1 -2
- package/ui/views/OverlayView/HeaderElement.js +1 -2
- package/ui/views/OverlayView/HeaderTitleElement.js +1 -2
- package/ui/views/OverlayView/useOverlayView.js +1 -2
- package/ui/views/OverlayView.js +1 -2
- package/ui/views/SplitView/SplitViewPanelElement.js +1 -2
- package/ui/views/SplitView.js +1 -2
- package/components/AdminLayout.js.map +0 -1
- package/components/AppInstaller/Sidebar.js.map +0 -1
- package/components/AppInstaller/index.js.map +0 -1
- package/components/AppInstaller/styled.js.map +0 -1
- package/components/AppInstaller/useInstaller.js.map +0 -1
- package/components/EmptyView.js.map +0 -1
- package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +0 -1
- package/components/FileManager/BottomInfoBar/UploadStatus.js.map +0 -1
- package/components/FileManager/BottomInfoBar.js.map +0 -1
- package/components/FileManager/DropFilesHere.js.map +0 -1
- package/components/FileManager/File.js.map +0 -1
- package/components/FileManager/FileDetails/Name.js.map +0 -1
- package/components/FileManager/FileDetails/Tags.js.map +0 -1
- package/components/FileManager/FileDetails.js.map +0 -1
- package/components/FileManager/FileManagerContext.js.map +0 -1
- package/components/FileManager/FileManagerView.js.map +0 -1
- package/components/FileManager/LeftSidebar.js.map +0 -1
- package/components/FileManager/NoPermissionView.js.map +0 -1
- package/components/FileManager/NoResults.js.map +0 -1
- package/components/FileManager/getFileTypePlugin.js.map +0 -1
- package/components/FileManager/getFileUploader.js.map +0 -1
- package/components/FileManager/graphql.js.map +0 -1
- package/components/FileManager/outputFileSelectionError.js.map +0 -1
- package/components/FileManager.js.map +0 -1
- package/components/FloatingActionButton.js.map +0 -1
- package/components/MultiImageUpload.js.map +0 -1
- package/components/OverlayLayout/OverlayLayout.js.map +0 -1
- package/components/OverlayLayout/index.js.map +0 -1
- package/components/Permissions/Permissions.js.map +0 -1
- package/components/Permissions/StyledComponents.js.map +0 -1
- package/components/Permissions/index.js.map +0 -1
- package/components/RichTextEditor/RichTextEditor.js.map +0 -1
- package/components/RichTextEditor/index.js.map +0 -1
- package/components/RichTextEditor/tools/header/index.js.map +0 -1
- package/components/RichTextEditor/tools/image/index.js.map +0 -1
- package/components/RichTextEditor/tools/image/svgs.js.map +0 -1
- package/components/RichTextEditor/tools/image/tunes.js.map +0 -1
- package/components/RichTextEditor/tools/image/ui.js.map +0 -1
- package/components/RichTextEditor/tools/paragraph/index.js.map +0 -1
- package/components/RichTextEditor/tools/textColor/index.js.map +0 -1
- package/components/RichTextEditor/tools/utils.js.map +0 -1
- package/components/SearchUI.js.map +0 -1
- package/components/SimpleForm/SimpleForm.js.map +0 -1
- package/components/SimpleForm/index.js.map +0 -1
- package/components/SimpleUI/InputField.js.map +0 -1
- package/components/SingleImageUpload.js.map +0 -1
- package/components/SplitView/SplitView.js.map +0 -1
- package/components/SplitView/index.js.map +0 -1
- package/components/index.js.map +0 -1
- package/hooks/useConfirmationDialog.js.map +0 -1
- package/hooks/useDialog.js.map +0 -1
- package/hooks/useSnackbar.js.map +0 -1
- package/plugins/FileManagerFileTypePlugin.js.map +0 -1
- package/plugins/MenuPlugin.js.map +0 -1
- package/plugins/PermissionRendererPlugin.js.map +0 -1
- package/plugins/fileManager/fileDefault.js.map +0 -1
- package/plugins/fileManager/fileImage/DeleteAction.js.map +0 -1
- package/plugins/fileManager/fileImage/EditAction.js.map +0 -1
- package/plugins/fileManager/fileImage/index.js.map +0 -1
- package/plugins/fileManager/index.js.map +0 -1
- package/plugins/globalSearch/SearchBar.js.map +0 -1
- package/plugins/globalSearch/SearchBarDropdown.js.map +0 -1
- package/plugins/globalSearch/index.js.map +0 -1
- package/plugins/globalSearch/styled.js.map +0 -1
- package/plugins/index.js.map +0 -1
- package/plugins/logo/Logo.js.map +0 -1
- package/plugins/logo/index.js.map +0 -1
- package/plugins/menu/documentation.js.map +0 -1
- package/plugins/menu/fileManager.js.map +0 -1
- package/plugins/menu/index.js.map +0 -1
- package/plugins/menu/renderers/MenuGroupRenderer.js.map +0 -1
- package/plugins/menu/renderers/MenuLinkRenderer.js.map +0 -1
- package/plugins/menu/renderers/MenuSectionItemRenderer.js.map +0 -1
- package/plugins/menu/renderers/MenuSectionRenderer.js.map +0 -1
- package/plugins/menu/slack.js.map +0 -1
- package/plugins/menu/source.js.map +0 -1
- package/plugins/uiLayoutRenderer/index.js.map +0 -1
- package/plugins/userMenu/UserMenuElement.js.map +0 -1
- package/plugins/userMenu/UserMenuRenderer.js.map +0 -1
- package/plugins/userMenu/index.js.map +0 -1
- package/types.js.map +0 -1
- package/ui/UIElement.js.map +0 -1
- package/ui/UILayout.js.map +0 -1
- package/ui/UIRenderer.js.map +0 -1
- package/ui/UIView.js.map +0 -1
- package/ui/elements/AccordionElement.js.map +0 -1
- package/ui/elements/ButtonElement.js.map +0 -1
- package/ui/elements/ButtonGroupElement.js.map +0 -1
- package/ui/elements/GenericElement.js.map +0 -1
- package/ui/elements/LabelElement.js.map +0 -1
- package/ui/elements/NavigationMenuElement.js.map +0 -1
- package/ui/elements/PanelElement.js.map +0 -1
- package/ui/elements/PlaceholderElement.js.map +0 -1
- package/ui/elements/SmallButtonElement.js.map +0 -1
- package/ui/elements/TypographyElement.js.map +0 -1
- package/ui/elements/ViewElement.js.map +0 -1
- package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +0 -1
- package/ui/elements/form/DynamicFieldsetElement.js.map +0 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +0 -1
- package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +0 -1
- package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +0 -1
- package/ui/elements/form/FileManagerElement/styled.js.map +0 -1
- package/ui/elements/form/FileManagerElement.js.map +0 -1
- package/ui/elements/form/FormElement.js.map +0 -1
- package/ui/elements/form/FormFieldElement.js.map +0 -1
- package/ui/elements/form/HiddenElement.js.map +0 -1
- package/ui/elements/form/InputElement.js.map +0 -1
- package/ui/elements/form/PasswordElement.js.map +0 -1
- package/ui/elements/form/SelectElement.js.map +0 -1
- package/ui/elements/form/TextareaElement.js.map +0 -1
- package/ui/views/AdminView/ContentElement.js.map +0 -1
- package/ui/views/AdminView/HeaderElement.js.map +0 -1
- package/ui/views/AdminView/HeaderSectionCenterElement.js.map +0 -1
- package/ui/views/AdminView/HeaderSectionLeftElement.js.map +0 -1
- package/ui/views/AdminView/HeaderSectionRightElement.js.map +0 -1
- package/ui/views/AdminView/components/Dialog.js.map +0 -1
- package/ui/views/AdminView/components/Hamburger.js.map +0 -1
- package/ui/views/AdminView/components/Snackbar.js.map +0 -1
- package/ui/views/AdminView.js.map +0 -1
- package/ui/views/FormView/FormContainerElement.js.map +0 -1
- package/ui/views/FormView/FormContentElement.js.map +0 -1
- package/ui/views/FormView/FormFooterElement.js.map +0 -1
- package/ui/views/FormView/FormHeaderElement.js.map +0 -1
- package/ui/views/FormView.js.map +0 -1
- package/ui/views/NavigationView/ContentElement.js.map +0 -1
- package/ui/views/NavigationView/FooterElement.js.map +0 -1
- package/ui/views/NavigationView/HeaderElement.js.map +0 -1
- package/ui/views/NavigationView/NavigationViewRenderer.js.map +0 -1
- package/ui/views/NavigationView/Styled.js.map +0 -1
- package/ui/views/NavigationView/legacyMenu.js.map +0 -1
- package/ui/views/NavigationView/useNavigation.js.map +0 -1
- package/ui/views/NavigationView.js.map +0 -1
- package/ui/views/OverlayView/ContentElement.js.map +0 -1
- package/ui/views/OverlayView/HeaderElement.js.map +0 -1
- package/ui/views/OverlayView/HeaderTitleElement.js.map +0 -1
- package/ui/views/OverlayView/useOverlayView.js.map +0 -1
- package/ui/views/OverlayView.js.map +0 -1
- package/ui/views/SplitView/SplitViewPanelElement.js.map +0 -1
- package/ui/views/SplitView.js.map +0 -1
package/ui/views/FormView.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
export declare const MenuHeader: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "
|
|
2
|
+
export declare const MenuHeader: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "color" | "translate" | "slot" | "style" | "title" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
|
|
3
3
|
export declare const navHeader: string;
|
|
4
4
|
export declare const navContent: string;
|
|
5
5
|
export declare const logoStyle: string;
|
|
6
|
-
export declare const MenuFooter: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "
|
|
6
|
+
export declare const MenuFooter: import("@emotion/styled-base").StyledComponent<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "color" | "translate" | "slot" | "style" | "title" | "children" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture">, object>;
|
|
7
7
|
export declare const subFooter: string;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=legacyMenu.js.map
|
|
1
|
+
export {};
|
package/ui/views/OverlayView.js
CHANGED
package/ui/views/SplitView.js
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/AdminLayout.tsx"],"names":["React","useEffect","useState","UIViewComponent","GenericElement","AdminView","AdminLayout","title","children","view","setView","setTitle","setContentElement"],"mappings":";AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,QAA3B,QAA2C,OAA3C;AACA,SAASC,eAAT;AACA,SAASC,cAAT;AACA,SAASC,SAAT;AAOA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,OAA2C;AAAA,MAAxCC,KAAwC,QAAxCA,KAAwC;AAAA,MAAjCC,QAAiC,QAAjCA,QAAiC;;AAClE,kBAAwBN,QAAQ,CAAC,IAAD,CAAhC;AAAA;AAAA,MAAOO,IAAP;AAAA,MAAaC,OAAb;;AACAT,EAAAA,SAAS,CAAC,YAAM;AACZ,QAAMQ,IAAI,GAAG,IAAIJ,SAAJ,EAAb;;AAEA,QAAIE,KAAJ,EAAW;AACPE,MAAAA,IAAI,CAACE,QAAL,CAAcJ,KAAd;AACH;;AAEDE,IAAAA,IAAI,CAACG,iBAAL,CAAuB,IAAIR,cAAJ,CAAmB,sBAAnB,EAA2C;AAAA,aAAMI,QAAN;AAAA,KAA3C,CAAvB;AAEAE,IAAAA,OAAO,CAACD,IAAD,CAAP;AACH,GAVQ,EAUN,EAVM,CAAT;;AAYA,MAAI,CAACA,IAAL,EAAW;AACP,WAAO,IAAP;AACH;;AAED,sBAAO,oBAAC,eAAD;AAAiB,IAAA,IAAI,EAAEA;AAAvB,IAAP;AACH,CAnBM","sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { UIViewComponent } from \"~/ui/UIView\";\nimport { GenericElement } from \"~/ui/elements/GenericElement\";\nimport { AdminView } from \"~/ui/views/AdminView\";\n\ninterface AdminLayoutProps {\n title?: string;\n children: React.ReactNode;\n}\n\nexport const AdminLayout = ({ title, children }: AdminLayoutProps) => {\n const [view, setView] = useState(null);\n useEffect(() => {\n const view = new AdminView();\n\n if (title) {\n view.setTitle(title);\n }\n\n view.setContentElement(new GenericElement(\"admin-layout-content\", () => children));\n\n setView(view);\n }, []);\n\n if (!view) {\n return null;\n }\n\n return <UIViewComponent view={view} />;\n};\n"],"file":"AdminLayout.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppInstaller/Sidebar.tsx"],"names":["React","Fragment","styled","Typography","classSet","SidebarWrapper","Logo","padding","borderBottom","img","width","height","List","li","display","alignItems","borderRadius","marginRight","textAlign","lineHeight","fontSize","paddingTop","color","backgroundColor","fontWeight","Note","Installations","title","allInstallers","installer","showLogin","renderList","loginItem","signInDivider","items","i","length","name","secure","installed","prev","push","active","pending","Sidebar","upgrades","filter","type","installations","webinyLogo","process","env","REACT_APP_WEBINY_VERSION"],"mappings":"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","sourcesContent":["import React, { Fragment } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport classSet from \"classnames\";\n\nimport webinyLogo from \"../../assets/images/webiny-orange-logo.svg\";\nimport signInDivider from \"./assets/sign-in-divider.svg\";\n\nconst SidebarWrapper = styled(\"div\")({});\n\nconst Logo = styled(\"div\")({\n padding: 15,\n borderBottom: \"1px solid var(--mdc-theme-background)\",\n img: {\n width: \"100px\",\n height: \"auto\"\n }\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});\n\nconst Installations = ({ title, allInstallers, installer, showLogin }) => {\n const renderList = () => {\n const loginItem = (\n <li key={\"login\"} className={\"sign-in\"}>\n <img src={signInDivider} />\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\nconst Sidebar = ({ allInstallers, installer, showLogin }) => {\n const upgrades = allInstallers.filter(installer => installer.type === \"upgrade\");\n const installations = allInstallers.filter(installer => installer.type === \"install\");\n\n return (\n <SidebarWrapper>\n <Logo>\n <img src={webinyLogo} alt=\"Webiny CMS\" />\n </Logo>\n {upgrades.length > 0 ? (\n <Installations\n title={\n <span>\n The following apps will be upgraded to{\" \"}\n <strong>{process.env.REACT_APP_WEBINY_VERSION}</strong>:\n </span>\n }\n allInstallers={upgrades}\n installer={installer}\n showLogin={showLogin}\n />\n ) : null}\n {installations.length > 0 && (\n <Installations\n title={\"The following apps will be installed and configured:\"}\n allInstallers={installations}\n installer={installer}\n showLogin={upgrades.length > 0 ? false : showLogin}\n />\n )}\n </SidebarWrapper>\n );\n};\nexport default Sidebar;\n"],"file":"Sidebar.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppInstaller/index.tsx"],"names":["React","useEffect","useState","default","localStorage","useSecurity","CircularProgress","ButtonPrimary","SplitView","LeftPanel","RightPanel","Grid","Cell","Typography","Elevation","useInstaller","Sidebar","Wrapper","alertClass","InnerContent","InstallContent","installerSplitView","SuccessDialog","AppInstaller","Authentication","children","tenantId","get","lsKey","markInstallerAsCompleted","set","process","env","REACT_APP_WEBINY_VERSION","isInstallerCompleted","finished","setFinished","identity","isInstalled","loading","installers","installer","showNextInstaller","showLogin","onUser","skippingVersions","renderLayout","content","secure","renderBody","length","render","onInstalled","latest","current","availableUpgrades","filter","v","map"],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { default as localStorage } from \"store\";\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\";\nimport {\n Wrapper,\n alertClass,\n InnerContent,\n InstallContent,\n installerSplitView,\n SuccessDialog\n} from \"./styled\";\n\nexport const AppInstaller = ({ Authentication, children }) => {\n const tenantId = localStorage.get(\"webiny_tenant\") || \"root\";\n\n const lsKey = `webiny_installation_${tenantId}`;\n\n const markInstallerAsCompleted = () => {\n localStorage.set(lsKey, process.env.REACT_APP_WEBINY_VERSION);\n };\n\n const isInstallerCompleted = () => {\n return localStorage.get(lsKey) === process.env.REACT_APP_WEBINY_VERSION;\n };\n\n const [finished, setFinished] = useState(false);\n const { identity } = useSecurity();\n const {\n loading,\n installers,\n installer,\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 <Authentication>{children}</Authentication>;\n }\n\n const renderLayout = (content, secure = false) => {\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) && <Authentication>{content}</Authentication>}\n </RightPanel>\n </SplitView>\n );\n };\n\n const renderBody = content => {\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 <Authentication>{children}</Authentication>;\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 <ButtonPrimary\n data-testid={\"open-webiny-cms-admin-button\"}\n onClick={() => {\n markInstallerAsCompleted();\n setFinished(true);\n }}\n >\n Open Admin Area\n </ButtonPrimary>\n </SuccessDialog>\n </Elevation>\n ),\n true\n );\n};\n"],"file":"index.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppInstaller/styled.tsx"],"names":["styled","css","Wrapper","display","flexDirection","justifyContent","minHeight","color","whiteSpace","ul","listStyle","paddingLeft","li","MozOsxFontSmoothing","WebkitFontSmoothing","fontSize","lineHeight","fontWeight","letterSpacing","textDecoration","textTransform","marginTop","marginBottom","InstallContent","maxWidth","margin","borderRadius","boxShadow","installerSplitView","height","SuccessDialog","padding","textAlign","p","paddingBottom","InnerContent","position","alertClass","borderLeft"],"mappings":"AAAA,OAAOA,MAAP,MAAmB,iBAAnB;AACA,SAASC,GAAT,QAAoB,SAApB;AAEA,OAAO,IAAMC,OAAO,gBAAGF,MAAH,CAAU,SAAV;AAAA;AAAA;AAAA,GAAqB;AACrCG,EAAAA,OAAO,EAAE,MAD4B;AAErCC,EAAAA,aAAa,EAAE,QAFsB;AAGrCC,EAAAA,cAAc,EAAE,QAHqB;AAIrCC,EAAAA,SAAS,EAAE,OAJ0B;AAKrCC,EAAAA,KAAK,EAAE,6BAL8B;AAMrC,6BAA2B;AACvBC,IAAAA,UAAU,EAAE;AADW,GANU;AASrCC,EAAAA,EAAE,EAAE;AACAC,IAAAA,SAAS,EAAE,MADX;AAEAC,IAAAA,WAAW,EAAE,6CAFb;AAGAC,IAAAA,EAAE,EAAE;AACAL,MAAAA,KAAK,EAAE,+EADP;AAEAM,MAAAA,mBAAmB,EAAE,WAFrB;AAGAC,MAAAA,mBAAmB,EAAE,aAHrB;AAIAC,MAAAA,QAAQ,EAAE,MAJV;AAKAC,MAAAA,UAAU,EAAE,QALZ;AAMAC,MAAAA,UAAU,EAAE,GANZ;AAOAC,MAAAA,aAAa,EAAE,WAPf;AAQAC,MAAAA,cAAc,EAAE,SARhB;AASAC,MAAAA,aAAa,EAAE,SATf;AAUAC,MAAAA,SAAS,EAAE,MAVX;AAWAC,MAAAA,YAAY,EAAE;AAXd;AAHJ;AATiC,CAArB,CAAb;AA4BP,OAAO,IAAMC,cAAc,gBAAGvB,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACxCwB,EAAAA,QAAQ,EAAE,GAD8B;AAExCC,EAAAA,MAAM,EAAE,kBAFgC;AAGxC,wBAAsB;AAClBC,IAAAA,YAAY,EAAE,CADI;AAElBC,IAAAA,SAAS,EAAE;AAFO;AAHkB,CAAjB,CAApB;AASP,OAAO,IAAMC,kBAAkB,gBAAG3B,GAAG,CAAC;AAClC,+BAA6B;AACzB4B,IAAAA,MAAM,EAAE,OADiB;AAEzB,+CAA2C;AACvCA,MAAAA,MAAM,EAAE;AAD+B;AAFlB;AADK,CAAD,8BAA9B;AASP,OAAO,IAAMC,aAAa,gBAAG9B,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACvC+B,EAAAA,OAAO,EAAE,EAD8B;AAEvCC,EAAAA,SAAS,EAAE,QAF4B;AAGvCC,EAAAA,CAAC,EAAE;AACCC,IAAAA,aAAa,EAAE;AADhB;AAHoC,CAAjB,CAAnB;AAQP,OAAO,IAAMC,YAAY,gBAAGnC,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACtC+B,EAAAA,OAAO,EAAE,EAD6B;AAEtCK,EAAAA,QAAQ,EAAE;AAF4B,CAAjB,CAAlB;AAKP,OAAO,IAAMC,UAAU,gBAAGpC,GAAG,CAAC;AAC1BqC,EAAAA,UAAU,EAAE,eADc;AAE1Bb,EAAAA,MAAM,EAAE,cAFkB;AAG1BM,EAAAA,OAAO,EAAE;AAHiB,CAAD,sBAAtB","sourcesContent":["import styled from \"@emotion/styled\";\nimport { css } from \"emotion\";\n\nexport const Wrapper = styled(\"section\")({\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"center\",\n minHeight: \"100vh\",\n color: \"var(--mdc-theme-on-surface)\",\n \".spinner__inner-wrapper\": {\n whiteSpace: \"nowrap\"\n },\n ul: {\n listStyle: \"disc\",\n paddingLeft: \"var(--mdc-layout-grid-margin-desktop, 24px)\",\n li: {\n color: \"var(--desktop-color, var(--webiny-theme-color-text-primary, rgb(10, 10, 10)))\",\n MozOsxFontSmoothing: \"grayscale\",\n WebkitFontSmoothing: \"antialiased\",\n fontSize: \"1rem\",\n lineHeight: \"1.5rem\",\n fontWeight: 400,\n letterSpacing: \"0.03125em\",\n textDecoration: \"inherit\",\n textTransform: \"inherit\",\n marginTop: \"20px\",\n marginBottom: \"20px\"\n }\n }\n});\n\nexport const InstallContent = styled(\"div\")({\n maxWidth: 800,\n margin: \"0 auto 25px auto\",\n \".mdc-elevation--z2\": {\n borderRadius: 4,\n boxShadow: \"0 1px 3px 0 rgba(0,0,0,0.15)\"\n }\n});\n\nexport const installerSplitView = css({\n \".webiny-split-view__inner\": {\n height: \"100vh\",\n \".webiny-split-view__right-panel-wrapper\": {\n height: \"100vh\"\n }\n }\n});\n\nexport const SuccessDialog = styled(\"div\")({\n padding: 40,\n textAlign: \"center\",\n p: {\n paddingBottom: 40\n }\n});\n\nexport const InnerContent = styled(\"div\")({\n padding: 25,\n position: \"relative\"\n});\n\nexport const alertClass = css({\n borderLeft: \"3px solid red\",\n margin: \"5px 0 15px 0\",\n padding: \"2px 0 2px 10px\"\n});\n"],"file":"styled.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppInstaller/useInstaller.tsx"],"names":["React","useCallback","useReducer","useEffect","Suspense","Graph","alg","sort","gt","lte","useApolloClient","plugins","CircularProgress","Loader","children","props","cloneElement","useInstaller","isInstalled","prev","next","loading","installers","installerIndex","showLogin","skippingVersions","setState","client","validateGraph","graph","isAcyclic","cycles","findCycles","msg","forEach","cycle","index","fromAToB","join","fromBToA","reverse","padLength","length","push","padStart","Error","createGraph","plugin","setNode","name","pl","Array","isArray","dependencies","dep","setEdge","getInstallers","toInstall","toUpgrade","leaf","sinks","installer","find","inst","removeNode","installed","type","title","render","secure","upgrades","filter","version","process","env","REACT_APP_WEBINY_VERSION","availableUpgrades","map","u","latestUpgrade","current","latest","onInstalled","Component","getComponent","a","b","onUser","showNextInstaller","prevInstaller","nextIndex","nextInstaller","prevSecure","nextSecure","allInstallers","Promise","all","byType","getInstalledVersion"],"mappings":"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","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\";\n\nconst Loader = ({ children, ...props }) => (\n <Suspense fallback={<CircularProgress label={\"Loading...\"} />}>\n {React.cloneElement(children, props)}\n </Suspense>\n);\n\nexport const useInstaller = ({ isInstalled }) => {\n const [{ loading, installers, installerIndex, showLogin, skippingVersions }, setState] =\n useReducer((prev, next) => ({ ...prev, ...next }), {\n loading: true,\n installers: [],\n installerIndex: -1,\n showLogin: false,\n skippingVersions: false\n });\n\n const client = useApolloClient();\n\n const validateGraph = graph => {\n const isAcyclic = alg.isAcyclic(graph);\n if (!isAcyclic) {\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\n const createGraph = installers => {\n const graph = new Graph();\n installers.forEach(({ plugin }) => {\n graph.setNode(plugin.name, plugin);\n });\n\n installers.forEach(({ plugin: pl }) => {\n if (Array.isArray(pl.dependencies)) {\n pl.dependencies.forEach(dep => {\n graph.setEdge(pl.name, dep);\n });\n }\n });\n\n validateGraph(graph);\n\n return graph;\n };\n\n const getInstallers = useCallback((installers, graph, toInstall = [], toUpgrade = []) => {\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: false\n });\n } else {\n const upgrades = (installer.plugin.upgrades || []).filter(({ version }) => {\n return (\n lte(version, process.env.REACT_APP_WEBINY_VERSION) &&\n gt(version, installer.installed)\n );\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: false,\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 const onUser = () => {\n setState({ showLogin: false });\n };\n\n const showNextInstaller = () => {\n const prevInstaller = installers[installerIndex];\n\n installers[installerIndex].installed = true;\n setState({ installers });\n\n if (installers.length < installerIndex + 1) {\n setState({ installerIndex: null });\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 = [];\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 return {\n loading,\n installers,\n installer: installers[installerIndex],\n showNextInstaller,\n showLogin,\n onUser,\n skippingVersions\n };\n};\n"],"file":"useInstaller.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/EmptyView.tsx"],"names":["React","styled","Typography","EmptyViewWrapper","width","height","display","flexDirection","alignItems","justifyContent","fill","marginBottom","maxWidth","textAlign","color","padding","backgroundColor","EmptyView","icon","title","action"],"mappings":"AAAA,OAAOA,KAAP,MAAoC,OAApC;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AACA,SAASC,UAAT,QAA2B,uBAA3B;;AAGA,IAAMC,gBAAgB,gBAAGF,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACnCG,EAAAA,KAAK,EAAE,MAD4B;AAEnCC,EAAAA,MAAM,EAAE,KAF2B;AAGnCC,EAAAA,OAAO,EAAE,MAH0B;AAInCC,EAAAA,aAAa,EAAE,QAJoB;AAKnCC,EAAAA,UAAU,EAAE,QALuB;AAMnCC,EAAAA,cAAc,EAAE,QANmB;AAQnC,cAAY;AACR,aAAS;AACLL,MAAAA,KAAK,EAAE,EADF;AAELC,MAAAA,MAAM,EAAE,EAFH;AAGLK,MAAAA,IAAI,EAAE;AAHD,KADD;AAMRC,IAAAA,YAAY,EAAE;AANN,GARuB;AAgBnC,yBAAuB;AACnBC,IAAAA,QAAQ,EAAE,GADS;AAEnBC,IAAAA,SAAS,EAAE,QAFQ;AAGnBF,IAAAA,YAAY,EAAE,EAHK;AAInB,gBAAY;AACRG,MAAAA,KAAK,EAAE;AADC;AAJO,GAhBY;AAwBnC,0BAAwB;AACpB,qBAAiB;AACbC,MAAAA,OAAO,EAAE,UADI;AAEbC,MAAAA,eAAe,EAAE;AAFJ;AADG;AAxBW,CAAjB,CAAtB;;AAoCA,IAAMC,SAAS,GAAG,SAAZA,SAAY,OAA6D;AAAA,uBAA1DC,IAA0D;AAAA,MAA1DA,IAA0D,uCAAnD,oBAAC,SAAD,OAAmD;AAAA,MAApCC,KAAoC,QAApCA,KAAoC;AAAA,MAA7BC,MAA6B,QAA7BA,MAA6B;AAC3E,sBACI,oBAAC,gBAAD,qBACI;AAAK,IAAA,SAAS,EAAE;AAAhB,KAA0BF,IAA1B,CADJ,eAEI;AAAK,IAAA,SAAS,EAAC;AAAf,kBACI,oBAAC,UAAD;AAAY,IAAA,GAAG,EAAE,WAAjB;AAA8B,IAAA,SAAS,EAAE;AAAzC,KACKC,KADL,CADJ,CAFJ,eAOI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoCC,MAApC,CAPJ,CADJ;AAWH,CAZD;;AAcA,eAAeH,SAAf","sourcesContent":["import React, { ReactElement } from \"react\";\nimport styled from \"@emotion/styled\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { ReactComponent as TouchIcon } from \"../assets/icons/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 type EmptyViewProps = {\n icon?: ReactElement;\n title: string;\n action: ReactElement;\n};\nconst EmptyView = ({ icon = <TouchIcon />, title, action }: EmptyViewProps) => {\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"],"file":"EmptyView.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileManager/BottomInfoBar/SupportedFileTypes.tsx"],"names":["React","mime","define","getUniqueFileExtensions","accept","exts","forEach","item","getExtension","Object","keys","SupportedFileTypes","length","join"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,IAAP,MAAiB,WAAjB;AAEAA,IAAI,CAACC,MAAL,CAAY;AAAE,kBAAgB,CAAC,KAAD;AAAlB,CAAZ,EAAyC,IAAzC;AACAD,IAAI,CAACC,MAAL,CAAY;AAAE,eAAa,CAAC,KAAD;AAAf,CAAZ,EAAsC,IAAtC;AACAD,IAAI,CAACC,MAAL,CAAY;AAAE,8BAA4B,CAAC,KAAD;AAA9B,CAAZ,EAAqD,IAArD;;AAEA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAAAC,MAAM,EAAI;AACtC,MAAMC,IAAI,GAAG,EAAb;AACAD,EAAAA,MAAM,CAACE,OAAP,CAAe,UAAAC,IAAI,EAAI;AACnBF,IAAAA,IAAI,CAACJ,IAAI,CAACO,YAAL,CAAkBD,IAAlB,CAAD,CAAJ,GAAgC,IAAhC;AACH,GAFD;AAIA,SAAOE,MAAM,CAACC,IAAP,CAAYL,IAAZ,CAAP;AACH,CAPD;;AASA,IAAMM,kBAAkB,GAAG,SAArBA,kBAAqB,OAAgB;AAAA,MAAbP,MAAa,QAAbA,MAAa;;AACvC,MAAI,CAACA,MAAL,EAAa;AACT,WAAO,IAAP;AACH;;AAED,MAAIA,MAAM,CAACQ,MAAP,KAAkB,CAAtB,EAAyB;AACrB,wBAAO,iEAAP;AACH;;AAED,sBACI,6EAC4CT,uBAAuB,CAACC,MAAD,CAAvB,CAAgCS,IAAhC,CAAqC,IAArC,CAD5C,MADJ;AAKH,CAdD;;AAgBA,eAAeF,kBAAf","sourcesContent":["import React from \"react\";\nimport mime from \"mime/lite\";\n\nmime.define({ \"image/x-icon\": [\"ico\"] }, true);\nmime.define({ \"image/jpg\": [\"jpg\"] }, true);\nmime.define({ \"image/vnd.microsoft.icon\": [\"ico\"] }, true);\n\nconst getUniqueFileExtensions = accept => {\n const exts = {};\n accept.forEach(item => {\n exts[mime.getExtension(item)] = true;\n });\n\n return Object.keys(exts);\n};\n\nconst SupportedFileTypes = ({ accept }) => {\n if (!accept) {\n return null;\n }\n\n if (accept.length === 0) {\n return <span>Showing all file extensions.</span>;\n }\n\n return (\n <span>\n Showing the following file extensions: {getUniqueFileExtensions(accept).join(\", \")}.\n </span>\n );\n};\n\nexport default SupportedFileTypes;\n"],"file":"SupportedFileTypes.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileManager/BottomInfoBar/UploadStatus.tsx"],"names":["React","styled","CircularProgress","StatusWrapper","color","position","right","bottom","marginRight","display","alignItems","CircularProgressHolder","height","width","UploadingLabel","UploadStatus","uploading"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AACA,SAASC,gBAAT,QAAiC,qBAAjC;AAEA,IAAMC,aAAa,gBAAGF,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AAChCG,EAAAA,KAAK,EAAE,0BADyB;AAEhCC,EAAAA,QAAQ,EAAE,UAFsB;AAGhCC,EAAAA,KAAK,EAAE,CAHyB;AAIhCC,EAAAA,MAAM,EAAE,EAJwB;AAKhCC,EAAAA,WAAW,EAAE,EALmB;AAMhCC,EAAAA,OAAO,EAAE,MANuB;AAOhCC,EAAAA,UAAU,EAAE,QAPoB;AAQhC,WAAS;AACLD,IAAAA,OAAO,EAAE;AADJ;AARuB,CAAjB,CAAnB;AAaA,IAAME,sBAAsB,gBAAGV,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACzCI,EAAAA,QAAQ,EAAE,UAD+B;AAEzCO,EAAAA,MAAM,EAAE,EAFiC;AAGzCC,EAAAA,KAAK,EAAE;AAHkC,CAAjB,CAA5B;AAMA,IAAMC,cAAc,gBAAGb,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACjCO,EAAAA,WAAW,EAAE;AADoB,CAAjB,CAApB;;AAIA,IAAMO,YAAY,GAAG,SAAfA,YAAe,OAAmB;AAAA,MAAhBC,SAAgB,QAAhBA,SAAgB;;AACpC,MAAI,CAACA,SAAL,EAAgB;AACZ,WAAO,IAAP;AACH;;AAED,sBACI,oBAAC,aAAD,qBACI,oBAAC,cAAD,uBADJ,eAEI,oBAAC,sBAAD,qBACI,oBAAC,gBAAD;AAAkB,IAAA,IAAI,EAAE,EAAxB;AAA4B,IAAA,YAAY,EAAE;AAA1C,IADJ,CAFJ,CADJ;AAQH,CAbD;;AAeA,eAAeD,YAAf","sourcesContent":["import React from \"react\";\nimport styled from \"@emotion/styled\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\n\nconst StatusWrapper = styled(\"div\")({\n color: \"var(--mdc-theme-primary)\",\n position: \"absolute\",\n right: 0,\n bottom: 10,\n marginRight: 10,\n display: \"flex\",\n alignItems: \"center\",\n \"> div\": {\n display: \"inline-block\"\n }\n});\n\nconst CircularProgressHolder = styled(\"div\")({\n position: \"relative\",\n height: 12,\n width: 12\n});\n\nconst UploadingLabel = styled(\"div\")({\n marginRight: 5\n});\n\nconst UploadStatus = ({ uploading }) => {\n if (!uploading) {\n return null;\n }\n\n return (\n <StatusWrapper>\n <UploadingLabel>Uploading...</UploadingLabel>\n <CircularProgressHolder>\n <CircularProgress size={10} spinnerWidth={1} />\n </CircularProgressHolder>\n </StatusWrapper>\n );\n};\n\nexport default UploadStatus;\n"],"file":"UploadStatus.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/FileManager/BottomInfoBar.tsx"],"names":["React","mime","styled","SupportedFileTypes","UploadStatus","define","BottomInfoBarWrapper","fontSize","position","bottom","height","color","borderTop","backgroundColor","width","transform","overflow","display","alignItems","zIndex","padding","BottomInfoBar","props"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,IAAP,MAAiB,WAAjB;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AACA,OAAOC,kBAAP;AACA,OAAOC,YAAP;AAEAH,IAAI,CAACI,MAAL,CAAY;AAAE,kBAAgB,CAAC,KAAD;AAAlB,CAAZ,EAAyC,IAAzC;AACAJ,IAAI,CAACI,MAAL,CAAY;AAAE,eAAa,CAAC,KAAD;AAAf,CAAZ,EAAsC,IAAtC;AACAJ,IAAI,CAACI,MAAL,CAAY;AAAE,8BAA4B,CAAC,KAAD;AAA9B,CAAZ,EAAqD,IAArD;AAEA,IAAMC,oBAAoB,gBAAGJ,MAAH,CAAU,KAAV;AAAA;AAAA;AAAA,GAAiB;AACvCK,EAAAA,QAAQ,EAAE,QAD6B;AAEvCC,EAAAA,QAAQ,EAAE,QAF6B;AAGvCC,EAAAA,MAAM,EAAE,CAH+B;AAIvCC,EAAAA,MAAM,EAAE,EAJ+B;AAKvCC,EAAAA,KAAK,EAAE,+CALgC;AAMvCC,EAAAA,SAAS,EAAE,0CAN4B;AAOvCC,EAAAA,eAAe,EAAE,0BAPsB;AAQvCC,EAAAA,KAAK,EAAE,MARgC;AASvCC,EAAAA,SAAS,EAAE,eAT4B;AAUvCC,EAAAA,QAAQ,EAAE,QAV6B;AAWvCC,EAAAA,OAAO,EAAE,MAX8B;AAYvCC,EAAAA,UAAU,EAAE,QAZ2B;AAavCC,EAAAA,MAAM,EAAE,CAb+B;AAcvC,WAAS;AACLC,IAAAA,OAAO,EAAE,QADJ;AAELN,IAAAA,KAAK,EAAE;AAFF;AAd8B,CAAjB,CAA1B;;AAoBA,IAAMO,aAAa,GAAG,SAAhBA,aAAgB,CAAAC,KAAK,EAAI;AAC3B,sBACI,oBAAC,oBAAD,qBACI,8CACI,oBAAC,kBAAD,EAAwBA,KAAxB,CADJ,eAEI,oBAAC,YAAD,EAAkBA,KAAlB,CAFJ,CADJ,CADJ;AAQH,CATD;;AAWA,eAAeD,aAAf","sourcesContent":["import React from \"react\";\nimport mime from \"mime/lite\";\nimport styled from \"@emotion/styled\";\nimport SupportedFileTypes from \"./BottomInfoBar/SupportedFileTypes\";\nimport UploadStatus from \"./BottomInfoBar/UploadStatus\";\n\nmime.define({ \"image/x-icon\": [\"ico\"] }, true);\nmime.define({ \"image/jpg\": [\"jpg\"] }, true);\nmime.define({ \"image/vnd.microsoft.icon\": [\"ico\"] }, true);\n\nconst BottomInfoBarWrapper = styled(\"div\")({\n fontSize: \"0.8rem\",\n position: \"sticky\",\n bottom: 0,\n height: 30,\n color: \"var(--mdc-theme-text-secondary-on-background)\",\n borderTop: \"1px solid var(--mdc-theme-on-background)\",\n backgroundColor: \"var(--mdc-theme-surface)\",\n width: \"100%\",\n transform: \"translateZ(0)\",\n overflow: \"hidden\",\n display: \"flex\",\n alignItems: \"center\",\n zIndex: 1,\n \"> div\": {\n padding: \"0 10px\",\n width: \"100%\"\n }\n});\n\nconst BottomInfoBar = props => {\n return (\n <BottomInfoBarWrapper>\n <div>\n <SupportedFileTypes {...props} />\n <UploadStatus {...props} />\n </div>\n </BottomInfoBarWrapper>\n );\n};\n\nexport default BottomInfoBar;\n"],"file":"BottomInfoBar.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/FileManager/DropFilesHere.tsx"],"names":["React","css","classNames","Icon","styles","margin","paddingTop","height","zIndex","width","position","backgroundColor","textAlign","borderRadius","left","top","transform","color","display","DropFilesHere","onDrop","onDragLeave","empty","onClick"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,IAAT,QAAqB,iBAArB;;AAIA,IAAMC,MAAM,gBAAGH,GAAG,CAAC;AACfI,EAAAA,MAAM,EAAE,QADO;AAEfC,EAAAA,UAAU,EAAE,CAFG;AAGfC,EAAAA,MAAM,EAAE,MAHO;AAIfC,EAAAA,MAAM,EAAE,CAJO;AAKfC,EAAAA,KAAK,EAAE,MALQ;AAMfC,EAAAA,QAAQ,EAAE,UANK;AAOfC,EAAAA,eAAe,EAAE,qCAPF;AAQf,aAAW;AACPA,IAAAA,eAAe,EAAE,aADV;AAEP,aAAS;AACLA,MAAAA,eAAe,EAAE;AADZ;AAFF,GARI;AAcf,WAAS;AACLC,IAAAA,SAAS,EAAE,QADN;AAELH,IAAAA,KAAK,EAAE,GAFF;AAGLF,IAAAA,MAAM,EAAE,GAHH;AAILI,IAAAA,eAAe,EAAE,6BAJZ;AAKLE,IAAAA,YAAY,EAAE,KALT;AAMLH,IAAAA,QAAQ,EAAE,UANL;AAOLI,IAAAA,IAAI,EAAE,KAPD;AAQLC,IAAAA,GAAG,EAAE,KARA;AASLC,IAAAA,SAAS,EAAE,oCATN;AAUL,aAAS;AACLN,MAAAA,QAAQ,EAAE,UADL;AAELK,MAAAA,GAAG,EAAE,EAFA;AAGLN,MAAAA,KAAK,EAAE,GAHF;AAILQ,MAAAA,KAAK,EAAE,6BAJF;AAKL,8BAAwB;AACpBR,QAAAA,KAAK,EAAE,GADa;AAEpBS,QAAAA,OAAO,EAAE,cAFW;AAGpBD,QAAAA,KAAK,EAAE;AAHa;AALnB;AAVJ;AAdM,CAAD,kBAAlB;AA6CA,eAAe,SAASE,aAAT,OAAoF;AAAA,MAA3DC,MAA2D,QAA3DA,MAA2D;AAAA,MAAnDC,WAAmD,QAAnDA,WAAmD;AAAA,MAAtCC,KAAsC,QAAtCA,KAAsC;AAAA,MAA/BC,OAA+B,QAA/BA,OAA+B;AAC/F,sBACI;AACI,IAAA,SAAS,EAAErB,UAAU,CAACE,MAAD,EAAS;AAAEkB,MAAAA,KAAK,EAALA;AAAF,KAAT,CADzB;AAEI,IAAA,MAAM,EAAEF,MAFZ;AAGI,IAAA,OAAO,EAAEG,OAHb;AAII,IAAA,WAAW,EAAEF;AAJjB,kBAMI,8CACI,8CACI,oBAAC,IAAD;AAAM,IAAA,IAAI,eAAE,oBAAC,UAAD;AAAZ,IADJ,eAEI,mDAFJ,CADJ,CANJ,CADJ;AAeH","sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\nimport { Icon } from \"@webiny/ui/Icon\";\n\nimport { ReactComponent as UploadIcon } from \"./icons/round-cloud_upload-24px.svg\";\n\nconst styles = css({\n margin: \"0 auto\",\n paddingTop: 0,\n height: \"100%\",\n zIndex: 2,\n width: \"100%\",\n position: \"absolute\",\n backgroundColor: \"var(--mdc-theme-text-hint-on-light)\",\n \"&.empty\": {\n backgroundColor: \"transparent\",\n \"> div\": {\n backgroundColor: \"var(--mdc-theme-surface)\"\n }\n },\n \"> div\": {\n textAlign: \"center\",\n width: 300,\n height: 300,\n backgroundColor: \"var(--mdc-theme-background)\",\n borderRadius: \"50%\",\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translateX(-50%) translateY(-100%)\",\n \"> div\": {\n position: \"absolute\",\n top: 90,\n width: 300,\n color: \"var(--mdc-theme-on-surface)\",\n \"svg.mdc-button__icon\": {\n width: 100,\n display: \"inline-block\",\n color: \"var(--mdc-theme-on-surface)\"\n }\n }\n }\n});\n\nexport type DropFilesHereProps = {\n onDragLeave?: (event?: React.DragEvent<HTMLElement>) => void;\n onDrop?: (event?: React.DragEvent<HTMLElement>) => void;\n empty?: boolean;\n onClick?: (event?: React.MouseEvent<HTMLElement>) => void;\n};\n\nexport default function DropFilesHere({ onDrop, onDragLeave, empty, onClick }: DropFilesHereProps) {\n return (\n <div\n className={classNames(styles, { empty })}\n onDrop={onDrop}\n onClick={onClick}\n onDragLeave={onDragLeave}\n >\n <div>\n <div>\n <Icon icon={<UploadIcon />} />\n <div>Drop files here</div>\n </div>\n </div>\n </div>\n );\n}\n"],"file":"DropFilesHere.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/FileManager/File.tsx"],"names":["React","LazyLoad","classNames","css","keyframes","Ripple","IconButton","COMPONENT_WIDTH","COMPONENT_HEIGHT","grow","styles","display","float","position","zIndex","margin","cursor","width","maxWidth","border","borderRadius","transition","height","overflow","color","top","left","opacity","right","animationName","animationDuration","animationTimingFunction","animationDelay","textAlign","backgroundColor","padding","whiteSpace","textOverflow","fontSize","memo","File","props","file","selected","onSelect","children","showFileDetails","name","prev","next"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport LazyLoad from \"react-lazy-load\";\nimport classNames from \"classnames\";\nimport { css, keyframes } from \"emotion\";\nimport { Ripple } from \"@webiny/ui/Ripple\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { ReactComponent as Checked } from \"./icons/round-check_box-24px.svg\";\nimport { ReactComponent as SettingsIcon } from \"../../assets/icons/round-settings-24px.svg\";\n\nconst COMPONENT_WIDTH = 200;\nconst COMPONENT_HEIGHT = 200;\n\nconst grow = keyframes`\n 0% {\n transform: scale(1)\n }\n 50% {\n transform: scale(1.2)\n }\n 100% {\n transform: scale(1)\n }\n`;\nconst styles = css({\n display: \"inline-block\",\n float: \"left\",\n position: \"relative\",\n zIndex: 1,\n margin: 10,\n cursor: \"pointer\",\n width: \"100%\",\n maxWidth: COMPONENT_WIDTH,\n border: \"1px solid var(--mdc-theme-on-background)\",\n borderRadius: 2,\n \"> .body\": {\n transition: \"200ms ease-in opacity\",\n width: COMPONENT_WIDTH,\n height: COMPONENT_HEIGHT,\n overflow: \"hidden\",\n \"--icon-color\": \"var(--mdc-theme-on-background)\",\n \".checkedIcon\": {\n color: \"var(--mdc-theme-secondary)\",\n position: \"absolute\",\n top: 4,\n left: 4,\n zIndex: 11\n },\n \".infoIcon\": {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n right: 0,\n zIndex: 10,\n transition: \"all 150ms ease-in\",\n \"& .mdc-icon-button svg\": {\n color: \"var(--mdc-theme-secondary)\"\n },\n \"&:hover\": {\n animationName: grow,\n animationDuration: \".4s\",\n animationTimingFunction: \"ease-in\",\n animationDelay: \".2s\"\n }\n },\n \".filePreview\": {\n textAlign: \"center\",\n position: \"relative\",\n backgroundColor: \"#fff\",\n width: \"100%\",\n height: \"100%\",\n \".clickableArea\": {\n position: \"absolute\",\n top: 30,\n left: 0,\n width: \"100%\",\n height: 170,\n zIndex: 2\n }\n },\n \"&:hover .infoIcon\": {\n opacity: 1\n }\n },\n \"> .label\": {\n padding: \"15px 10px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n fontSize: \"0.8rem\",\n color: \"var(--mdc-theme-on-surface)\",\n backgroundColor: \"var(--mdc-theme-on-background)\"\n },\n \"&.disable-select\": {\n cursor: \"auto\"\n }\n});\n\ntype Props = {\n file: { [key: string]: any };\n selected: boolean;\n uploadFile: Function;\n onSelect: (event?: React.MouseEvent) => void;\n onClick: (event?: React.MouseEvent) => void;\n options?: Array<{ label: string; onClick: (file: Object) => void }>;\n children: React.ReactNode;\n showFileDetails: (event?: React.MouseEvent) => void;\n};\n\nexport default React.memo(\n function File(props: Props) {\n const { file, selected, onSelect, children, showFileDetails } = props;\n\n return (\n <div\n className={classNames(styles, { \"disable-select\": !onSelect })}\n data-testid={\"fm-list-wrapper-file\"}\n >\n <div className={\"body\"}>\n <div className={\"checkedIcon\"} onClick={onSelect}>\n {selected ? <Checked /> : null}\n </div>\n <div className={\"infoIcon\"}>\n <IconButton\n icon={<SettingsIcon />}\n onClick={showFileDetails}\n data-testid={\"fm-file-wrapper-file-info-icon\"}\n />\n </div>\n <LazyLoad height={200} offsetVertical={300}>\n <Ripple>\n <div className={\"filePreview\"}>\n <div className=\"clickableArea\" onClick={onSelect} />\n {children}\n </div>\n </Ripple>\n </LazyLoad>\n </div>\n <div className={\"label\"} onClick={onSelect}>\n {file.name}\n </div>\n </div>\n );\n },\n (prev, next) => {\n if (prev.selected !== next.selected) {\n return false;\n }\n\n if (prev.file.name !== next.file.name) {\n return false;\n }\n\n return true;\n }\n);\n"],"file":"File.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileManager/FileDetails/Name.tsx"],"names":["React","useMemo","useApolloClient","Input","Form","validation","useSnackbar","UPDATE_FILE","LIST_FILES","useFileManager","Name","file","canEdit","name","showSnackbar","client","queryParams","editContent","mutate","mutation","variables","id","data","update","cache","updated","newFileData","readQuery","query","fileManager","listFiles","forEach","item","src","writeQuery","Bind","submit","create"],"mappings":"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","sourcesContent":["import React, { useMemo } from \"react\";\nimport { get, cloneDeep } from \"lodash\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Form } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { useSnackbar } from \"../../../hooks/useSnackbar\";\nimport { UPDATE_FILE, LIST_FILES } from \"./../graphql\";\nimport { useFileManager } from \"./../FileManagerContext\";\n\nfunction Name({ file, canEdit }) {\n const name = file.name || \"\";\n const { showSnackbar } = useSnackbar();\n const client = useApolloClient();\n\n const { queryParams } = useFileManager();\n\n const editContent = useMemo(() => {\n return (\n <Form\n data={{\n name\n }}\n onSubmit={async ({ name }) => {\n // Bail out if name is same as the current file name.\n if (name === file.name) {\n return;\n }\n // Update file.\n await client.mutate({\n mutation: UPDATE_FILE,\n variables: {\n id: file.id,\n data: { name }\n },\n update: (cache, updated) => {\n const newFileData = get(updated, \"data.fileManager.updateFile.data\");\n const data: any = cloneDeep(\n cache.readQuery({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n\n data.fileManager.listFiles.data.forEach(item => {\n if (item.src === newFileData.src) {\n item.name = newFileData.name;\n }\n });\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data: data\n });\n }\n });\n\n showSnackbar(\"Name successfully updated.\");\n }}\n >\n {({ Bind, submit }) => (\n <Bind name={\"name\"} validators={validation.create(\"required\")}>\n <Input\n disabled={!canEdit(file)}\n autoFocus\n placeholder={\"Enter name\"}\n fullwidth={true}\n onBlur={submit}\n description={\"A descriptive name is easier to remember.\"}\n />\n </Bind>\n )}\n </Form>\n );\n }, [name, file.name, canEdit]);\n\n return <li-content>{editContent}</li-content>;\n}\n\nexport default Name;\n"],"file":"Name.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileManager/FileDetails/Tags.tsx"],"names":["React","useCallback","useState","classNames","css","useApolloClient","useQuery","set","get","cloneDeep","Chips","Chip","ButtonSecondary","ButtonPrimary","ButtonDefault","IconButton","MultiAutoComplete","Icon","Form","useSnackbar","useFileManager","UPDATE_FILE","LIST_FILES","LIST_TAGS","chipsStyle","padding","marginLeft","backgroundColor","iconButtonStyle","width","height","addTagsStyle","color","textTransform","letterSpacing","actionWrapperStyle","marginTop","marginRight","Tags","file","canEdit","client","editing","setEdit","saving","setSaving","Array","isArray","tags","initialTags","setInitialTags","showSnackbar","queryParams","handleEdit","listTagsQuery","allTags","isEditingAllowed","renderHeaderContent","data","hasTags","length","map","tag","index","label","name","mutate","mutation","variables","id","update","cache","updated","newFileData","readQuery","query","fileManager","listFiles","forEach","item","key","writeQuery","listTagsData","updatedTagsList","listTags","includes","push","then","Bind","setValue","submit","baseOnChange","formattedTags","toLowerCase"],"mappings":"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","sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { css } from \"emotion\";\nimport { useApolloClient, useQuery } from \"@apollo/react-hooks\";\nimport set from \"lodash/set\";\nimport get from \"lodash/get\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport { Chips, Chip } from \"@webiny/ui/Chips\";\nimport { ButtonSecondary, ButtonPrimary, ButtonDefault, IconButton } from \"@webiny/ui/Button\";\nimport { MultiAutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { Form } from \"@webiny/form\";\nimport { useSnackbar } from \"../../../hooks/useSnackbar\";\nimport { useFileManager } from \"./../FileManagerContext\";\nimport { UPDATE_FILE, LIST_FILES, LIST_TAGS } from \"./../graphql\";\nimport { ReactComponent as EditIcon } from \"./../icons/round-edit-24px.svg\";\nimport { ReactComponent as LabelIcon } from \"./../icons/round-label-24px.svg\";\n\nconst chipsStyle = css({\n \"&.mdc-chip-set\": {\n padding: 0,\n marginLeft: -4,\n \"& .mdc-chip\": {\n backgroundColor: \"var(--mdc-theme-background)\"\n }\n }\n});\nconst iconButtonStyle = css({\n \"&.mdc-icon-button svg\": {\n width: 20,\n height: 20\n }\n});\nconst addTagsStyle = css({\n \"&.mdc-button:not(:disabled)\": {\n color: \"var(--mdc-theme-text-secondary-on-background)\",\n textTransform: \"capitalize\",\n letterSpacing: \"initial\",\n marginLeft: -8\n }\n});\nconst actionWrapperStyle = css({\n marginTop: 16,\n \"& button:first-child\": {\n marginRight: 16\n }\n});\n\nfunction Tags({ file, canEdit }) {\n const client = useApolloClient();\n\n const [editing, setEdit] = useState(false);\n const [saving, setSaving] = useState(false);\n const [initialTags, setInitialTags] = useState(Array.isArray(file.tags) ? [...file.tags] : []);\n const { showSnackbar } = useSnackbar();\n const { queryParams } = useFileManager();\n const handleEdit = useCallback(() => setEdit(true), []);\n const listTagsQuery = useQuery(LIST_TAGS);\n const allTags = get(listTagsQuery, \"data.fileManager.listTags\") || [];\n\n const isEditingAllowed = canEdit(file);\n\n const renderHeaderContent = useCallback(\n ({ data }) => {\n if (editing) {\n return null;\n }\n const hasTags = data.tags.length > 0;\n\n if (hasTags) {\n // Render existing tags and \"edit tags\" action.\n return (\n <>\n <Chips className={classNames(\"list-item__content\", chipsStyle)}>\n {data.tags.map((tag, index) => {\n const label = typeof tag === \"string\" ? tag : tag.name;\n return <Chip key={label + index} label={label} />;\n })}\n </Chips>\n {isEditingAllowed && (\n <IconButton\n className={iconButtonStyle}\n icon={<EditIcon />}\n onClick={handleEdit}\n />\n )}\n </>\n );\n }\n // Render \"add tags\" action.\n return (\n <ButtonDefault\n className={addTagsStyle}\n onClick={handleEdit}\n disabled={!isEditingAllowed}\n >\n Add tags...\n </ButtonDefault>\n );\n },\n [editing, isEditingAllowed]\n );\n\n return (\n <Form\n data={{\n tags: initialTags\n }}\n onSubmit={async ({ tags }) => {\n setSaving(true);\n client\n .mutate({\n mutation: UPDATE_FILE,\n variables: {\n id: file.id,\n data: { tags }\n },\n update: (cache, updated) => {\n const newFileData = get(updated, \"data.fileManager.updateFile.data\");\n\n // 1. Update files list cache\n const data: any = cloneDeep(\n cache.readQuery({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n\n data.fileManager.listFiles.data.forEach(item => {\n if (item.key === newFileData.key) {\n item.tags = newFileData.tags;\n }\n });\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data\n });\n // 2. Update \"LIST_TAGS\" cache\n if (Array.isArray(newFileData.tags)) {\n // Get list tags data\n const listTagsData: any = cloneDeep(\n cache.readQuery({\n query: LIST_TAGS\n })\n );\n // Add new tag in list\n const updatedTagsList = [...newFileData.tags];\n\n if (Array.isArray(listTagsData.fileManager.listTags)) {\n listTagsData.fileManager.listTags.forEach(tag => {\n if (!updatedTagsList.includes(tag)) {\n updatedTagsList.push(tag);\n }\n });\n }\n\n set(listTagsData, \"fileManager.listTags\", updatedTagsList);\n // Write it to cache\n cache.writeQuery({\n query: LIST_TAGS,\n data: listTagsData\n });\n }\n }\n })\n .then(() => {\n setInitialTags(tags);\n setSaving(false);\n setEdit(false);\n showSnackbar(\"Tags successfully updated.\");\n });\n }}\n >\n {({ Bind, data, setValue, submit }) => (\n <React.Fragment>\n <li-title>\n <Icon className={\"list-item__icon\"} icon={<LabelIcon />} />\n {renderHeaderContent({ data })}\n </li-title>\n {editing && (\n <li-content>\n <Bind\n name={\"tags\"}\n beforeChange={(tags, baseOnChange) => {\n const formattedTags = tags.map(tag => tag.toLowerCase());\n baseOnChange(formattedTags);\n }}\n >\n <MultiAutoComplete\n options={allTags}\n placeholder={\"homepage asset\"}\n description={\"Type in a new tag or select an existing one.\"}\n unique={true}\n allowFreeInput={true}\n useSimpleValues={true}\n disabled={saving}\n />\n </Bind>\n <div className={actionWrapperStyle}>\n <ButtonPrimary\n small\n onClick={submit}\n data-testid={\"fm.tags.submit\"}\n >\n Submit\n </ButtonPrimary>\n <ButtonSecondary\n small\n onClick={() => {\n setValue(\"tags\", initialTags);\n setEdit(false);\n }}\n >\n Cancel\n </ButtonSecondary>\n </div>\n </li-content>\n )}\n </React.Fragment>\n )}\n </Form>\n );\n}\n\nexport default Tags;\n"],"file":"Tags.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/FileManager/FileDetails.tsx"],"names":["React","useCallback","useMemo","useState","bytes","classNames","css","Drawer","DrawerContent","IconButton","getFileTypePlugin","dayjs","get","set","cloneDeep","Tags","Name","Tooltip","Icon","Typography","useHotkeys","useFileManager","useMutation","useSnackbar","useSecurity","ConfirmationDialog","DELETE_FILE","LIST_FILES","LIST_TAGS","i18n","mime","t","ns","fileDetailsSidebar","width","style","wrapper","height","overflowY","header","textAlign","marginBottom","paddingTop","textTransform","color","fontWeight","preview","boxSizing","display","justifyContent","alignItems","position","margin","img","objectFit","maxHeight","maxWidth","transform","backgroundColor","download","list","li","padding","lineHeight","minHeight","marginRight","flex","whiteSpace","overflow","textOverflow","drawerContent","isImage","file","fileType","getType","name","includes","FileDetails","props","uploadFile","validateFiles","filePlugin","actions","hideFileDetails","queryParams","darkImageBackground","setDarkImageBackground","identity","fmFilePermission","getPermission","canDelete","item","own","identityId","id","login","rwd","zIndex","disabled","keys","esc","update","cache","data","readQuery","query","variables","filteredList","fileManager","listFiles","filter","selectedFile","find","writeQuery","Array","isArray","tags","tagCountMap","forEach","tag","listTagsData","filteredTags","listTags","deleteFile","showSnackbar","renderDeleteImageAction","fileDeleteConfirmationProps","title","message","showConfirmation","fileTypeIcon","type","Boolean","dark","render","navigator","clipboard","writeText","src","map","Component","index","format","size","unitSeparator","createdOn"],"mappings":"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","sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport bytes from \"bytes\";\nimport classNames from \"classnames\";\nimport { css } from \"emotion\";\nimport { Drawer, DrawerContent } from \"@webiny/ui/Drawer\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport getFileTypePlugin from \"./getFileTypePlugin\";\nimport dayjs from \"dayjs\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport Tags from \"./FileDetails/Tags\";\nimport Name from \"./FileDetails/Name\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { ReactComponent as CopyContentIcon } from \"./icons/content_copy-black-24px.svg\";\nimport { ReactComponent as DeleteIcon } from \"./icons/delete.svg\";\nimport { ReactComponent as ImageIcon } from \"../../assets/icons/insert_photo-24px.svg\";\nimport { ReactComponent as FileIcon } from \"../../assets/icons/insert_drive_file-24px.svg\";\nimport { ReactComponent as CalendarIcon } from \"../../assets/icons/today-24px.svg\";\nimport { ReactComponent as HighlightIcon } from \"../../assets/icons/highlight-24px.svg\";\nimport { useFileManager } from \"./FileManagerContext\";\nimport { useMutation } from \"@apollo/react-hooks\";\nimport { useSnackbar } from \"~/hooks/useSnackbar\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { ConfirmationDialog } from \"@webiny/ui/ConfirmationDialog\";\nimport { DELETE_FILE, LIST_FILES, LIST_TAGS } from \"./graphql\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport mime from \"mime\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-details\");\n\nconst fileDetailsSidebar = css({\n \"&.mdc-drawer\": {\n width: 360\n }\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"li-title\": {\n children?: React.ReactNode;\n };\n\n \"li-content\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nconst style: any = {\n wrapper: css({\n height: \"100vh\",\n overflowY: \"auto\"\n }),\n header: css({\n textAlign: \"center\",\n marginBottom: 24,\n paddingTop: 16,\n \"& span\": {\n textTransform: \"capitalize\",\n color: \"var(--mdc-theme-on-surface)\",\n fontWeight: 600\n }\n }),\n preview: css({\n boxSizing: \"border-box\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n width: \"100%\",\n height: 300,\n margin: \"0 auto 24px\",\n img: {\n objectFit: \"contain\",\n maxHeight: 300,\n maxWidth: 300,\n width: \"100%\",\n position: \"static\",\n transform: \"none\"\n },\n \"&.dark\": {\n backgroundColor: \"var(--mdc-theme-background)\"\n }\n }),\n download: css({\n textAlign: \"center\",\n margin: \"0 auto\",\n width: \"100%\",\n \"& .icon--active\": {\n \"&.mdc-icon-button\": {\n color: \"var(--mdc-theme-text-on-primary)\"\n }\n }\n }),\n list: css({\n textAlign: \"left\",\n color: \"var(--mdc-theme-on-surface)\",\n li: {\n padding: \"12px 16px\",\n lineHeight: \"22px\",\n \"li-title\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n minHeight: 48,\n \"& .list-item__title\": {\n fontWeight: 600\n },\n \"& .list-item__icon\": {\n marginRight: 24\n },\n \"& .list-item__content\": {\n flex: \"1 0 200px\"\n }\n },\n \"li-content\": {\n width: \"100%\",\n display: \"block\",\n \"& .list-item__truncate\": {\n display: \"block\",\n width: \"100%\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\"\n }\n }\n }\n }),\n drawerContent: css({\n \"&.mdc-drawer__content\": {\n height: \"auto\",\n overflowY: \"inherit\"\n }\n })\n};\ntype FileDetailsProps = {\n canEdit: (item: any) => boolean;\n file: {\n name: string;\n [key: string]: any;\n };\n [key: string]: any;\n};\n\nconst isImage = file => {\n const fileType = mime.getType(file && file.name);\n\n if (fileType && typeof fileType === \"string\") {\n return fileType.includes(\"image\");\n }\n\n return false;\n};\n\nexport default function FileDetails(props: FileDetailsProps) {\n const { file, uploadFile, validateFiles } = props;\n\n const filePlugin = getFileTypePlugin(file);\n const actions = get(filePlugin, \"fileDetails.actions\") || get(filePlugin, \"actions\") || [];\n\n const { hideFileDetails, queryParams } = useFileManager();\n const [darkImageBackground, setDarkImageBackground] = useState(false);\n\n const { identity } = useSecurity();\n const fmFilePermission = useMemo(() => identity.getPermission(\"fm.file\"), []);\n const canDelete = useCallback(\n item => {\n // Bail out early if no access\n if (!fmFilePermission) {\n return false;\n }\n if (fmFilePermission.own) {\n const identityId = identity.id || identity.login;\n return get(item, \"createdBy.id\") === identityId;\n }\n if (typeof fmFilePermission.rwd === \"string\") {\n return fmFilePermission.rwd.includes(\"d\");\n }\n return true;\n },\n [fmFilePermission]\n );\n\n useHotkeys({\n zIndex: 55,\n disabled: !file,\n keys: {\n esc: hideFileDetails\n }\n });\n\n const [deleteFile] = useMutation(DELETE_FILE, {\n update: cache => {\n // 1. Update files list cache\n const data: any = cloneDeep(\n cache.readQuery({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n const filteredList = data.fileManager.listFiles.data.filter(\n item => item.id !== file.id\n );\n const selectedFile = data.fileManager.listFiles.data.find(item => item.id === file.id);\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data: set(data, \"fileManager.listFiles.data\", filteredList)\n });\n // 2. Update \"ListTags\" cache\n if (Array.isArray(selectedFile.tags)) {\n const tagCountMap = {};\n // Prepare \"tag\" count map\n data.fileManager.listFiles.data.forEach(file => {\n if (!Array.isArray(file.tags)) {\n return;\n }\n file.tags.forEach(tag => {\n if (tagCountMap[tag]) {\n tagCountMap[tag] += 1;\n } else {\n tagCountMap[tag] = 1;\n }\n });\n });\n\n // Get tags from cache\n const listTagsData: any = cloneDeep(\n cache.readQuery({\n query: LIST_TAGS\n })\n );\n // Remove selected file tags from list.\n const filteredTags = listTagsData.fileManager.listTags.filter(tag => {\n if (!selectedFile.tags.includes(tag)) {\n return true;\n }\n return tagCountMap[tag] > 1;\n });\n\n // Write it to cache\n cache.writeQuery({\n query: LIST_TAGS,\n data: set(data, \"fileManager.listTags\", filteredTags)\n });\n }\n }\n });\n const { showSnackbar } = useSnackbar();\n\n const renderDeleteImageAction = useCallback(file => {\n if (!canDelete(file)) {\n return null;\n }\n const fileDeleteConfirmationProps = {\n title: t`Delete file`,\n message: file && (\n <span>\n {t`You're about to delete file {name}. Are you sure you want to continue?`({\n name: file.name\n })}\n </span>\n )\n };\n return (\n <ConfirmationDialog\n {...fileDeleteConfirmationProps}\n data-testid={\"fm-delete-file-confirmation-dialog\"}\n style={{ zIndex: 100 }}\n >\n {({ showConfirmation }) => {\n return (\n <Tooltip\n content={\n isImage ? (\n <span>{t`Delete image`}</span>\n ) : (\n <span>{t`Delete file`}</span>\n )\n }\n placement={\"bottom\"}\n >\n <IconButton\n data-testid={\"fm-delete-file-button\"}\n icon={<DeleteIcon style={{ margin: \"0 8px 0 0\" }} />}\n onClick={() =>\n showConfirmation(async () => {\n await deleteFile({\n variables: {\n id: file.id\n }\n });\n showSnackbar(t`File deleted successfully.`);\n })\n }\n />\n </Tooltip>\n );\n }}\n </ConfirmationDialog>\n );\n }, []);\n\n const fileTypeIcon = useMemo(() => {\n if (file && typeof file.type === \"string\") {\n return file.type.includes(\"image\") ? <ImageIcon /> : <FileIcon />;\n }\n return <ImageIcon />;\n }, [file]);\n\n return (\n <Drawer\n className={fileDetailsSidebar}\n dir=\"rtl\"\n modal\n open={Boolean(file)}\n onClose={hideFileDetails}\n data-testid={\"fm.file-details.drawer\"}\n >\n {file && (\n <div className={style.wrapper} dir=\"ltr\">\n <div className={style.header}>\n <Typography use={\"headline5\"}>{t`File details`}</Typography>\n </div>\n <div\n className={classNames(style.preview, {\n dark: darkImageBackground\n })}\n >\n {filePlugin.render({ file, uploadFile, validateFiles })}\n </div>\n <div className={style.download}>\n <>\n <Tooltip content={<span>{t`Copy URL`}</span>} placement={\"bottom\"}>\n <IconButton\n onClick={() => {\n navigator.clipboard.writeText(file.src);\n showSnackbar(t`URL copied successfully.`);\n }}\n icon={<CopyContentIcon style={{ margin: \"0 8px 0 0\" }} />}\n />\n </Tooltip>\n\n {actions.map((Component, index) => (\n <Component key={index} {...props} />\n ))}\n {renderDeleteImageAction(file)}\n {/* Render background switcher */}\n <Tooltip content={t`Toggle background`} placement={\"bottom\"}>\n <IconButton\n icon={<HighlightIcon />}\n onClick={() => setDarkImageBackground(!darkImageBackground)}\n className={classNames({ \"icon--active\": darkImageBackground })}\n />\n </Tooltip>\n </>\n </div>\n <DrawerContent dir=\"ltr\" className={style.drawerContent}>\n <ul className={style.list}>\n <li>\n <Name {...props} />\n </li>\n <li>\n <li-title>\n <Icon className={\"list-item__icon\"} icon={fileTypeIcon} />\n <div>\n <Typography use={\"subtitle1\"}>{file.type}</Typography>{\" \"}\n {\" - \"}\n <Typography use={\"subtitle1\"}>\n {bytes.format(file.size, { unitSeparator: \" \" })}\n </Typography>\n </div>\n </li-title>\n </li>\n <li>\n <li-title>\n <Icon className={\"list-item__icon\"} icon={<CalendarIcon />} />\n <div>\n <Typography use={\"subtitle1\"}>\n {dayjs(file.createdOn).format(\"DD MMM YYYY [at] HH:mm\")}\n </Typography>\n </div>\n </li-title>\n </li>\n <li>\n <Tags key={props.file.id} {...props} />\n </li>\n </ul>\n </DrawerContent>\n </div>\n )}\n </Drawer>\n );\n}\n"],"file":"FileDetails.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/FileManager/FileManagerContext.tsx"],"names":["React","ListFilesSort","init","accept","showingFileDetails","selected","hasPreviouslyUploadedFiles","queryParams","types","limit","sort","CREATED_ON_DESC","fileManagerReducer","state","action","next","type","existingIndex","findIndex","item","src","file","push","splice","dragging","uploading","FileManagerContext","createContext","FileManagerProvider","children","props","useReducer","dispatch","value","useMemo","useFileManager","context","useContext","Error","toggleSelected","setHasPreviouslyUploadedFiles","setQueryParams","setDragging","setUploading","showFileDetails","hideFileDetails"],"mappings":"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","sourcesContent":["import React from \"react\";\n\nenum ListFilesSort {\n CREATED_ON_ASC,\n CREATED_ON_DESC,\n SIZE_ASC,\n SIZE_DESC\n}\n\nfunction init({ accept }) {\n return {\n showingFileDetails: null,\n selected: [],\n hasPreviouslyUploadedFiles: null,\n queryParams: {\n types: accept,\n limit: 50,\n sort: ListFilesSort.CREATED_ON_DESC\n }\n };\n}\n\nfunction fileManagerReducer(state, action) {\n const next = { ...state };\n switch (action.type) {\n case \"toggleSelected\": {\n const existingIndex = state.selected.findIndex(item => item.src === action.file.src);\n if (existingIndex < 0) {\n next.selected.push(action.file);\n } else {\n next.selected.splice(existingIndex, 1);\n }\n break;\n }\n case \"queryParams\": {\n next.selected = [];\n next.queryParams = {\n ...state.queryParams,\n ...action.queryParams,\n types: state.queryParams.types,\n limit: 40,\n sort: ListFilesSort.CREATED_ON_DESC\n };\n break;\n }\n case \"showFileDetails\": {\n next.showingFileDetails = action.src;\n break;\n }\n case \"dragging\": {\n next.dragging = action.state;\n break;\n }\n case \"hasPreviouslyUploadedFiles\": {\n next.hasPreviouslyUploadedFiles = action.hasPreviouslyUploadedFiles;\n break;\n }\n case \"uploading\": {\n next.uploading = action.state;\n break;\n }\n }\n\n return next;\n}\n\nconst FileManagerContext = React.createContext({});\n\nfunction FileManagerProvider({ children, ...props }) {\n const [state, dispatch] = React.useReducer(fileManagerReducer, props, init);\n\n const value = React.useMemo(() => {\n return {\n state,\n dispatch\n };\n }, [state]);\n\n return (\n <FileManagerContext.Provider value={value} {...props}>\n {children}\n </FileManagerContext.Provider>\n );\n}\n\nfunction useFileManager() {\n const context: any = React.useContext(FileManagerContext);\n if (!context) {\n throw new Error(\"useFileManager must be used within a FileManagerProvider\");\n }\n\n const { state, dispatch } = context;\n return {\n selected: state.selected,\n toggleSelected(file) {\n dispatch({\n type: \"toggleSelected\",\n file\n });\n },\n hasPreviouslyUploadedFiles: state.hasPreviouslyUploadedFiles,\n setHasPreviouslyUploadedFiles(hasPreviouslyUploadedFiles) {\n dispatch({ type: \"hasPreviouslyUploadedFiles\", hasPreviouslyUploadedFiles });\n },\n queryParams: state.queryParams,\n setQueryParams(queryParams) {\n dispatch({ type: \"queryParams\", queryParams });\n },\n setDragging(state = true) {\n dispatch({\n type: \"dragging\",\n state\n });\n },\n dragging: state.dragging,\n setUploading(state = true) {\n dispatch({\n type: \"uploading\",\n state\n });\n },\n uploading: state.uploading,\n showFileDetails(src) {\n dispatch({ type: \"showFileDetails\", src });\n },\n hideFileDetails() {\n dispatch({ type: \"showFileDetails\", src: null });\n },\n showingFileDetails: state.showingFileDetails,\n state,\n dispatch\n };\n}\n\nexport { FileManagerProvider, useFileManager };\n"],"file":"FileManagerContext.js"}
|