Ver Fonte

use manual close

reiji-h há 2 anos atrás
pai
commit
73dcbc8d5e

+ 7 - 2
packages/editor/src/components/CodeMirrorEditor/Toolbar/AttachmentsDropdownItem.tsx

@@ -11,6 +11,7 @@ type Props = {
   acceptedUploadFileType: AcceptedUploadFileType,
   acceptedUploadFileType: AcceptedUploadFileType,
   children?: ReactNode,
   children?: ReactNode,
   onUpload?: (files: File[]) => void,
   onUpload?: (files: File[]) => void,
+  onClose?: () => void,
 }
 }
 
 
 export const AttachmentsDropdownItem = (props: Props): JSX.Element => {
 export const AttachmentsDropdownItem = (props: Props): JSX.Element => {
@@ -19,6 +20,7 @@ export const AttachmentsDropdownItem = (props: Props): JSX.Element => {
     acceptedUploadFileType,
     acceptedUploadFileType,
     children,
     children,
     onUpload,
     onUpload,
+    onClose,
   } = props;
   } = props;
 
 
   const {
   const {
@@ -26,10 +28,13 @@ export const AttachmentsDropdownItem = (props: Props): JSX.Element => {
     getInputProps,
     getInputProps,
     open,
     open,
   } = useFileDropzone({
   } = useFileDropzone({
-    onUpload,
+    onUpload: (files: File[]) => { onUpload?.(files); onClose?.() },
     acceptedUploadFileType,
     acceptedUploadFileType,
     dropzoneOpts: {
     dropzoneOpts: {
-      noClick: true, noDrag: true, noKeyboard: true,
+      noClick: true,
+      noDrag: true,
+      noKeyboard: true,
+      onFileDialogCancel: onClose,
     },
     },
   });
   });
 
 

+ 2 - 2
packages/editor/src/components/CodeMirrorEditor/Toolbar/AttachmentsDropup.tsx

@@ -38,14 +38,14 @@ export const AttachmentsDropup = (props: Props): JSX.Element => {
           <DropdownItem divider />
           <DropdownItem divider />
 
 
           { acceptedUploadFileType === AcceptedUploadFileType.ALL && (
           { acceptedUploadFileType === AcceptedUploadFileType.ALL && (
-            <AttachmentsDropdownItem acceptedUploadFileType={AcceptedUploadFileType.ALL} onUpload={onUpload}>
+            <AttachmentsDropdownItem acceptedUploadFileType={AcceptedUploadFileType.ALL} onUpload={onUpload} onClose={() => setOpen(false)}>
               <span className="material-symbols-outlined fs-5">attach_file</span>
               <span className="material-symbols-outlined fs-5">attach_file</span>
               Files
               Files
             </AttachmentsDropdownItem>
             </AttachmentsDropdownItem>
           ) }
           ) }
 
 
           { acceptedUploadFileType !== AcceptedUploadFileType.NONE && (
           { acceptedUploadFileType !== AcceptedUploadFileType.NONE && (
-            <AttachmentsDropdownItem acceptedUploadFileType={AcceptedUploadFileType.IMAGE} onUpload={onUpload}>
+            <AttachmentsDropdownItem acceptedUploadFileType={AcceptedUploadFileType.IMAGE} onUpload={onUpload} onClose={() => setOpen(false)}>
               <span className="material-symbols-outlined fs-5">image</span>
               <span className="material-symbols-outlined fs-5">image</span>
               Images
               Images
             </AttachmentsDropdownItem>
             </AttachmentsDropdownItem>