fix: inherits memo visibility for default comment visibility (#4728)

pull/4698/head^2
Maximilian Krauß 2 months ago committed by GitHub
parent a317f9e653
commit 77d3853f73
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -40,6 +40,8 @@ export interface Props {
memoName?: string;
// The name of the parent memo if the memo is a comment.
parentMemoName?: string;
// The visibility of the parent memo for preset when commenting
parentMemoVisibility?: Visibility;
autoFocus?: boolean;
onConfirm?: (memoName: string) => void;
onCancel?: () => void;
@ -57,12 +59,12 @@ interface State {
}
const MemoEditor = observer((props: Props) => {
const { className, cacheKey, memoName, parentMemoName, autoFocus, onConfirm, onCancel } = props;
const { className, cacheKey, memoName, parentMemoName, parentMemoVisibility, autoFocus, onConfirm, onCancel } = props;
const t = useTranslate();
const { i18n } = useTranslation();
const currentUser = useCurrentUser();
const [state, setState] = useState<State>({
memoVisibility: Visibility.PRIVATE,
memoVisibility: parentMemoVisibility ?? Visibility.PRIVATE,
resourceList: [],
relationList: [],
location: undefined,
@ -96,7 +98,7 @@ const MemoEditor = observer((props: Props) => {
}, [autoFocus]);
useEffect(() => {
let visibility = userSetting.memoVisibility;
let visibility = parentMemoVisibility ?? userSetting.memoVisibility;
if (workspaceMemoRelatedSetting.disallowPublicVisibility && visibility === "PUBLIC") {
visibility = "PRIVATE";
}
@ -104,7 +106,7 @@ const MemoEditor = observer((props: Props) => {
...prevState,
memoVisibility: convertVisibilityFromString(visibility),
}));
}, [userSetting.memoVisibility, workspaceMemoRelatedSetting.disallowPublicVisibility]);
}, [parentMemoVisibility, userSetting.memoVisibility, workspaceMemoRelatedSetting.disallowPublicVisibility]);
useAsyncEffect(async () => {
if (!memoName) {

@ -160,6 +160,7 @@ const MemoDetail = observer(() => {
cacheKey={`${memo.name}-${memo.updateTime}-comment`}
placeholder={t("editor.add-your-comment-here")}
parentMemoName={memo.name}
parentMemoVisibility={memo.visibility}
autoFocus
onConfirm={handleCommentCreated}
onCancel={() => setShowCommentEditor(false)}

Loading…
Cancel
Save