fix: Account for createdBy, updatedBy being undefined. closes #6578
This commit is contained in:
@@ -97,7 +97,7 @@ function DocumentListItem(
|
||||
highlight={highlight}
|
||||
dir={document.dir}
|
||||
/>
|
||||
{document.isBadgedNew && document.createdBy.id !== user.id && (
|
||||
{document.isBadgedNew && document.createdBy?.id !== user.id && (
|
||||
<Badge yellow>{t("New")}</Badge>
|
||||
)}
|
||||
{canStar && (
|
||||
|
||||
@@ -81,7 +81,7 @@ export const OtherAccess = observer(({ document, children }: Props) => {
|
||||
<>
|
||||
<StyledListItem
|
||||
image={<Avatar model={document.createdBy} showBorder={false} />}
|
||||
title={document.createdBy.name}
|
||||
title={document.createdBy?.name}
|
||||
actions={
|
||||
<AccessTooltip content={t("Created the document")}>
|
||||
{t("Can edit")}
|
||||
|
||||
@@ -126,10 +126,10 @@ export default class Document extends ParanoidModel {
|
||||
collaboratorIds: string[];
|
||||
|
||||
@observable
|
||||
createdBy: User;
|
||||
createdBy: User | undefined;
|
||||
|
||||
@observable
|
||||
updatedBy: User;
|
||||
updatedBy: User | undefined;
|
||||
|
||||
@observable
|
||||
publishedAt: string | undefined;
|
||||
|
||||
@@ -123,7 +123,7 @@ class DocumentScene extends React.Component<Props> {
|
||||
componentWillUnmount() {
|
||||
if (
|
||||
this.isEmpty &&
|
||||
this.props.document.createdBy.id === this.props.auth.user?.id &&
|
||||
this.props.document.createdBy?.id === this.props.auth.user?.id &&
|
||||
this.props.document.isDraft &&
|
||||
this.props.document.isActive &&
|
||||
this.props.document.hasEmptyTitle &&
|
||||
|
||||
@@ -115,9 +115,9 @@ function Insights() {
|
||||
title={model.name}
|
||||
image={<Avatar model={model} size={32} />}
|
||||
subtitle={
|
||||
model.id === document.createdBy.id
|
||||
model.id === document.createdBy?.id
|
||||
? t("Creator")
|
||||
: model.id === document.updatedBy.id
|
||||
: model.id === document.updatedBy?.id
|
||||
? t("Last edited")
|
||||
: t("Previously edited")
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ export default function Notices({ document, readOnly }: Props) {
|
||||
{document.archivedAt && !document.deletedAt && (
|
||||
<Notice icon={<ArchiveIcon />}>
|
||||
{t("Archived by {{userName}}", {
|
||||
userName: document.updatedBy.name,
|
||||
userName: document.updatedBy?.name ?? t("Unknown"),
|
||||
})}
|
||||
|
||||
<Time dateTime={document.updatedAt} addSuffix />
|
||||
@@ -77,7 +77,7 @@ export default function Notices({ document, readOnly }: Props) {
|
||||
description={permanentlyDeletedDescription()}
|
||||
>
|
||||
{t("Deleted by {{userName}}", {
|
||||
userName: document.updatedBy.name,
|
||||
userName: document.updatedBy?.name ?? t("Unknown"),
|
||||
})}
|
||||
|
||||
<Time dateTime={document.deletedAt} addSuffix />
|
||||
|
||||
@@ -109,7 +109,7 @@ export default class DocumentsStore extends Store<Document> {
|
||||
|
||||
createdByUser(userId: string): Document[] {
|
||||
return orderBy(
|
||||
filter(this.all, (d) => d.createdBy.id === userId),
|
||||
filter(this.all, (d) => d.createdBy?.id === userId),
|
||||
"updatedAt",
|
||||
"desc"
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user