diff --git a/web/src/components/CommitModalButton/CommitModalButton.tsx b/web/src/components/CommitModalButton/CommitModalButton.tsx index 9ef035091..7c460518b 100644 --- a/web/src/components/CommitModalButton/CommitModalButton.tsx +++ b/web/src/components/CommitModalButton/CommitModalButton.tsx @@ -50,6 +50,7 @@ interface CommitModalButtonProps extends Omit = ({ resourcePath, commitTitlePlaceHolder, oldResourcePath, + disableBranchCreation = false, payload = '', sha, onSuccess, @@ -172,6 +174,7 @@ export const CommitModalButton: React.FC = ({ )}> { setTargetBranchOption(get(e.target, 'defaultValue')) diff --git a/web/src/hooks/useGetResourceContent.ts b/web/src/hooks/useGetResourceContent.ts index 5426c7bd1..2bba85253 100644 --- a/web/src/hooks/useGetResourceContent.ts +++ b/web/src/hooks/useGetResourceContent.ts @@ -25,8 +25,8 @@ export function useGetResourceContent({ lazy: !repoMetadata || lazy }) const isRepositoryEmpty = useMemo( - () => repoMetadata && error && !data && response?.status === 404, - [repoMetadata, error, data, response] + () => (repoMetadata && resourcePath === '' && error && response?.status === 404) || false, + [repoMetadata, resourcePath, error, response] ) return { data, error: isRepositoryEmpty ? undefined : error, loading, refetch, response, isRepositoryEmpty } diff --git a/web/src/pages/RepositoryFileEdit/FileEditor/FileEditor.tsx b/web/src/pages/RepositoryFileEdit/FileEditor/FileEditor.tsx index 376914750..ae3dee563 100644 --- a/web/src/pages/RepositoryFileEdit/FileEditor/FileEditor.tsx +++ b/web/src/pages/RepositoryFileEdit/FileEditor/FileEditor.tsx @@ -15,9 +15,10 @@ import css from './FileEditor.module.scss' interface EditorProps extends Pick { resourceContent: GitInfoProps['resourceContent'] | null + isRepositoryEmpty: boolean } -function Editor({ resourceContent, repoMetadata, gitRef, resourcePath }: EditorProps) { +function Editor({ resourceContent, repoMetadata, gitRef, resourcePath, isRepositoryEmpty }: EditorProps) { const history = useHistory() const inputRef = useRef() const isNew = useMemo(() => !resourceContent || isDir(resourceContent), [resourceContent]) @@ -200,6 +201,7 @@ function Editor({ resourceContent, repoMetadata, gitRef, resourcePath }: EditorP } setOriginalContent(content) }} + disableBranchCreation={isRepositoryEmpty} />