Make more post params cross-postable (#2621)

This commit is contained in:
SleeplessOne1917 2024-07-22 13:29:59 +00:00 committed by GitHub
parent cd15d3c132
commit 5d124a3e14
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 24 additions and 1 deletions

View file

@ -203,6 +203,9 @@ export class CreatePost extends Component<
title: locationState.name,
url: locationState.url,
body: locationState.body,
altText: locationState.altText,
nsfw: locationState.nsfw,
languageId: locationState.languageId,
});
this.setState(s => ({ resetCounter: s.resetCounter + 1 }));
}
@ -234,6 +237,7 @@ export class CreatePost extends Component<
title,
nsfw,
url,
altText,
} = this.props;
const params: PostFormParams = {
@ -244,6 +248,7 @@ export class CreatePost extends Component<
custom_thumbnail: customThumbnailUrl,
language_id: languageId,
nsfw: nsfw === "true",
alt_text: altText,
};
return (
@ -278,6 +283,7 @@ export class CreatePost extends Component<
onUrlBlur={this.handleUrlBlur}
onThumbnailUrlBlur={this.handleThumbnailUrlBlur}
onNsfwChange={this.handleNsfwChange}
onAltTextBlur={this.handleAltTextBlur}
onCopySuggestedTitle={this.handleCopySuggestedTitle}
/>
</div>

View file

@ -878,7 +878,7 @@ export class PostListing extends Component<PostListingProps, PostListingState> {
}
get crossPostParams(): CrossPostParams {
const { name, url } = this.postView.post;
const { name, url, alt_text, nsfw, language_id } = this.postView.post;
const crossPostParams: CrossPostParams = { name };
if (url) {
@ -890,6 +890,18 @@ export class PostListing extends Component<PostListingProps, PostListingState> {
crossPostParams.body = crossPostBody;
}
if (alt_text) {
crossPostParams.altText = alt_text;
}
if (nsfw) {
crossPostParams.nsfw = nsfw ? "true" : "false";
}
if (language_id !== undefined) {
crossPostParams.languageId = language_id;
}
return crossPostParams;
}

View file

@ -1,5 +1,10 @@
import StringBoolean from "./string-boolean";
export default interface CrossPostParams {
name: string;
url?: string;
body?: string;
altText?: string;
nsfw?: StringBoolean;
languageId?: number;
}