mirror of
https://github.com/versia-pub/server.git
synced 2026-03-13 05:49:16 +01:00
Add interface to view post and user JSON data
This commit is contained in:
parent
342a8011f1
commit
db37510370
21 changed files with 248 additions and 122 deletions
|
|
@ -260,7 +260,7 @@ export const createNewStatus = async (data: {
|
|||
.join("\n");
|
||||
}
|
||||
|
||||
let status = await client.status.create({
|
||||
const status = await client.status.create({
|
||||
data: {
|
||||
authorId: data.account.id,
|
||||
applicationId: data.application?.id,
|
||||
|
|
@ -290,12 +290,7 @@ export const createNewStatus = async (data: {
|
|||
quotingPostId: data.quote?.id,
|
||||
instanceId: data.account.instanceId || undefined,
|
||||
isReblog: false,
|
||||
uri:
|
||||
data.uri ||
|
||||
new URL(
|
||||
`/statuses/FAKE-${crypto.randomUUID()}`,
|
||||
config.http.base_url,
|
||||
).toString(),
|
||||
uri: data.uri || null,
|
||||
mentions: {
|
||||
connect: mentions.map((mention) => {
|
||||
return {
|
||||
|
|
@ -307,22 +302,6 @@ export const createNewStatus = async (data: {
|
|||
include: statusAndUserRelations,
|
||||
});
|
||||
|
||||
// Update URI
|
||||
status = await client.status.update({
|
||||
where: {
|
||||
id: status.id,
|
||||
},
|
||||
data: {
|
||||
uri:
|
||||
data.uri ||
|
||||
new URL(
|
||||
`/statuses/${status.id}`,
|
||||
config.http.base_url,
|
||||
).toString(),
|
||||
},
|
||||
include: statusAndUserRelations,
|
||||
});
|
||||
|
||||
// Create notification
|
||||
if (status.inReplyToPost) {
|
||||
await client.notification.create({
|
||||
|
|
@ -503,9 +482,19 @@ export const statusToAPI = async (
|
|||
sensitive: status.sensitive,
|
||||
spoiler_text: status.spoilerText,
|
||||
tags: [],
|
||||
uri: new URL(`/statuses/${status.id}`, config.http.base_url).toString(),
|
||||
uri:
|
||||
status.uri ||
|
||||
new URL(
|
||||
`/@${status.author.username}/${status.id}`,
|
||||
config.http.base_url,
|
||||
).toString(),
|
||||
visibility: "public",
|
||||
url: new URL(`/statuses/${status.id}`, config.http.base_url).toString(),
|
||||
url:
|
||||
status.uri ||
|
||||
new URL(
|
||||
`/@${status.author.username}/${status.id}`,
|
||||
config.http.base_url,
|
||||
).toString(),
|
||||
bookmarked: false,
|
||||
quote: status.quotingPost
|
||||
? await statusToAPI(
|
||||
|
|
@ -584,8 +573,8 @@ export const statusToLysand = (status: StatusWithRelations): Note => {
|
|||
// TODO: Add attachments
|
||||
attachments: [],
|
||||
is_sensitive: status.sensitive,
|
||||
mentions: status.mentions.map((mention) => mention.uri),
|
||||
quotes: status.quotingPost ? [status.quotingPost.uri] : [],
|
||||
mentions: status.mentions.map((mention) => mention.uri || ""),
|
||||
quotes: status.quotingPost ? [status.quotingPost.uri || ""] : [],
|
||||
replies_to: status.inReplyToPostId ? [status.inReplyToPostId] : [],
|
||||
subject: status.spoilerText,
|
||||
extensions: {
|
||||
|
|
|
|||
|
|
@ -262,7 +262,6 @@ export const createNewLocalUser = async (data: {
|
|||
avatar: data.avatar ?? config.defaults.avatar,
|
||||
header: data.header ?? config.defaults.avatar,
|
||||
isAdmin: data.admin ?? false,
|
||||
uri: "",
|
||||
publicKey: keys.public_key,
|
||||
privateKey: keys.private_key,
|
||||
source: {
|
||||
|
|
@ -273,20 +272,13 @@ export const createNewLocalUser = async (data: {
|
|||
fields: [],
|
||||
},
|
||||
},
|
||||
include: userRelations,
|
||||
});
|
||||
|
||||
// Add to Meilisearch
|
||||
await addUserToMeilisearch(user);
|
||||
|
||||
return await client.user.update({
|
||||
where: {
|
||||
id: user.id,
|
||||
},
|
||||
data: {
|
||||
uri: new URL(`/users/${user.id}`, config.http.base_url).toString(),
|
||||
},
|
||||
include: userRelations,
|
||||
});
|
||||
return user;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -408,7 +400,9 @@ export const userToAPI = (
|
|||
username: user.username,
|
||||
display_name: user.displayName,
|
||||
note: user.note,
|
||||
url: user.uri,
|
||||
url:
|
||||
user.uri ||
|
||||
new URL(`/@${user.username}`, config.http.base_url).toString(),
|
||||
avatar: getAvatarUrl(user, config),
|
||||
header: getHeaderUrl(user, config),
|
||||
locked: user.isLocked,
|
||||
|
|
@ -458,7 +452,7 @@ export const userToLysand = (user: UserWithRelations): LysandUser => {
|
|||
return {
|
||||
id: user.id,
|
||||
type: "User",
|
||||
uri: user.uri,
|
||||
uri: user.uri || "",
|
||||
bio: [
|
||||
{
|
||||
content: user.note,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue