feat : update
CI / Verify (push) Successful in 1m21s
CI / Build immutable images and deploy (push) Successful in 3m12s

This commit is contained in:
2026-09-06 14:47:11 +07:00 Unverified
parent 37d6d6703f
commit c3a7a44d02
19 changed files with 4218 additions and 38 deletions
+9 -2
View File
@@ -8,6 +8,7 @@ import {
characters,
dataSources,
dataSourceVersions,
guides,
media,
pageDataSources,
pages,
@@ -308,7 +309,7 @@ export async function getMediaVisibility(mediaId: string): Promise<{
retained: boolean;
}> {
const db = getDb();
const [referencedBlocks, portraitCharacters, [mediaRecord]] = await Promise.all([
const [referencedBlocks, portraitCharacters, posterGuides, [mediaRecord]] = await Promise.all([
db
.select({ block: blocks, page: pages, character: characters })
.from(blocks)
@@ -318,6 +319,10 @@ export async function getMediaVisibility(mediaId: string): Promise<{
.select({ character: characters })
.from(characters)
.where(eq(characters.portraitMediaId, mediaId)),
db
.select({ guide: guides })
.from(guides)
.where(eq(guides.posterArtMediaId, mediaId)),
db.select().from(media).where(eq(media.id, mediaId)).limit(1),
]);
@@ -336,10 +341,12 @@ export async function getMediaVisibility(mediaId: string): Promise<{
public:
references.some(
({ page, character }) => page.visible && character.visible,
) || portraitCharacters.some(({ character }) => character.visible),
) || portraitCharacters.some(({ character }) => character.visible) ||
posterGuides.some(({ guide }) => guide.isPublic && !guide.trashedAt),
retained:
references.length > 0 ||
portraitCharacters.length > 0 ||
posterGuides.length > 0 ||
Boolean(
mediaRecord &&
(mediaRecord.currentReferenceCount > 0 ||