Files
2026-07-26 18:25:37 +09:00

237 lines
5.6 KiB
JavaScript

export const packedNoteSchema = {
type: "object",
properties: {
id: {
type: "string",
optional: false,
nullable: false,
format: "id",
example: "xxxxxxxxxx"
},
createdAt: {
type: "string",
optional: false,
nullable: false,
format: "date-time"
},
text: {
type: "string",
optional: false,
nullable: true
},
cw: {
type: "string",
optional: true,
nullable: true
},
userId: {
type: "string",
optional: false,
nullable: false,
format: "id"
},
user: {
type: "object",
ref: "UserLite",
optional: false,
nullable: false
},
groupId: {
type: "string",
optional: false,
nullable: true,
format: "id"
},
group: {
type: "object",
ref: "UserGroup",
optional: false,
nullable: true
},
replyId: {
type: "string",
optional: true,
nullable: true,
format: "id",
example: "xxxxxxxxxx"
},
renoteId: {
type: "string",
optional: true,
nullable: true,
format: "id",
example: "xxxxxxxxxx"
},
reply: {
type: "object",
optional: true,
nullable: true,
ref: "Note"
},
renote: {
type: "object",
optional: true,
nullable: true,
ref: "Note"
},
visibility: {
type: "string",
optional: false,
nullable: false
},
mentions: {
type: "array",
optional: true,
nullable: false,
items: {
type: "string",
optional: false,
nullable: false,
format: "id"
}
},
visibleUserIds: {
type: "array",
optional: true,
nullable: false,
items: {
type: "string",
optional: false,
nullable: false,
format: "id"
}
},
fileIds: {
type: "array",
optional: true,
nullable: false,
items: {
type: "string",
optional: false,
nullable: false,
format: "id"
}
},
files: {
type: "array",
optional: true,
nullable: false,
items: {
type: "object",
optional: false,
nullable: false,
ref: "DriveFile"
}
},
tags: {
type: "array",
optional: true,
nullable: false,
items: {
type: "string",
optional: false,
nullable: false
}
},
poll: {
type: "object",
optional: true,
nullable: true
},
channelId: {
type: "string",
optional: true,
nullable: true,
format: "id",
example: "xxxxxxxxxx"
},
channel: {
type: "object",
optional: true,
nullable: true,
items: {
type: "object",
optional: false,
nullable: false,
properties: {
id: {
type: "string",
optional: false,
nullable: false
},
name: {
type: "string",
optional: false,
nullable: true
}
}
}
},
localOnly: {
type: "boolean",
optional: true,
nullable: false
},
emojis: {
type: "object",
optional: true,
nullable: true
},
reactions: {
type: "object",
optional: false,
nullable: false
},
renoteCount: {
type: "number",
optional: false,
nullable: false
},
repliesCount: {
type: "number",
optional: false,
nullable: false
},
viewCount: {
type: "number",
optional: false,
nullable: false
},
uri: {
type: "string",
optional: true,
nullable: false
},
url: {
type: "string",
optional: true,
nullable: false
},
myReaction: {
type: "object",
optional: true,
nullable: true
},
isRenoted: {
type: "boolean",
optional: true,
nullable: true
},
isFiltered: {
type: "boolean",
optional: true,
nullable: true
},
quoteAuthorization: {
type: "string",
optional: true,
nullable: true
},
canBite: {
type: "boolean",
optional: true,
nullable: true
}
}
};