diff --git a/src/lib/server/cloudinary-audit.ts b/src/lib/server/cloudinary-audit.ts index 9edac95..c3895ac 100644 --- a/src/lib/server/cloudinary-audit.ts +++ b/src/lib/server/cloudinary-audit.ts @@ -97,7 +97,7 @@ export async function fetchAllDatabaseCloudinaryReferences(): Promise[] for (const item of gallery) { if (item.url?.includes('cloudinary.com')) { const publicId = extractPublicId(item.url) @@ -121,7 +121,7 @@ export async function fetchAllDatabaseCloudinaryReferences(): Promise[] for (const attachment of attachments) { if (attachment.url?.includes('cloudinary.com')) { const publicId = extractPublicId(attachment.url) @@ -296,7 +296,7 @@ export async function cleanupBrokenReferences(publicIds: string[]): Promise<{ for (const project of projectsToClean) { let updated = false - const updates: any = {} + const updates: Record = {} if (project.featuredImage?.includes('cloudinary.com')) { const publicId = extractPublicId(project.featuredImage) @@ -316,7 +316,7 @@ export async function cleanupBrokenReferences(publicIds: string[]): Promise<{ // Handle gallery items if (project.gallery && typeof project.gallery === 'object') { - const gallery = project.gallery as any[] + const gallery = project.gallery as Record[] const cleanedGallery = gallery.filter((item) => { if (item.url?.includes('cloudinary.com')) { const publicId = extractPublicId(item.url) @@ -349,7 +349,7 @@ export async function cleanupBrokenReferences(publicIds: string[]): Promise<{ for (const post of postsToClean) { let updated = false - const updates: any = {} + const updates: Record = {} if (post.featuredImage?.includes('cloudinary.com')) { const publicId = extractPublicId(post.featuredImage) @@ -361,7 +361,7 @@ export async function cleanupBrokenReferences(publicIds: string[]): Promise<{ // Handle attachments if (post.attachments && typeof post.attachments === 'object') { - const attachments = post.attachments as any[] + const attachments = post.attachments as Record[] const cleanedAttachments = attachments.filter((attachment) => { if (attachment.url?.includes('cloudinary.com')) { const publicId = extractPublicId(attachment.url) diff --git a/src/lib/server/cloudinary.ts b/src/lib/server/cloudinary.ts index d26fe38..dff9378 100644 --- a/src/lib/server/cloudinary.ts +++ b/src/lib/server/cloudinary.ts @@ -69,7 +69,7 @@ export interface UploadResult { format?: string size?: number dominantColor?: string - colors?: any + colors?: Array<{ hex: string; rgb: [number, number, number]; population: number }> aspectRatio?: number duration?: number videoCodec?: string @@ -82,7 +82,7 @@ export interface UploadResult { export async function uploadFile( file: File, type: 'media' | 'photos' | 'projects' = 'media', - customOptions?: any + customOptions?: Record ): Promise { try { // Toggle this to use Cloudinary in development (requires API keys) diff --git a/src/lib/server/media-usage.ts b/src/lib/server/media-usage.ts index d5dfa79..399361d 100644 --- a/src/lib/server/media-usage.ts +++ b/src/lib/server/media-usage.ts @@ -185,7 +185,7 @@ function getFieldDisplayName(fieldName: string): string { /** * Extract media IDs from various data structures */ -export function extractMediaIds(data: any, fieldName: string): number[] { +export function extractMediaIds(data: unknown, fieldName: string): number[] { const value = data[fieldName] if (!value) return [] @@ -224,12 +224,12 @@ export function extractMediaIds(data: any, fieldName: string): number[] { /** * Extract media IDs from rich text content (TipTap/Edra JSON) */ -function extractMediaFromRichText(content: any): number[] { +function extractMediaFromRichText(content: unknown): number[] { if (!content || typeof content !== 'object') return [] const mediaIds: number[] = [] - function traverse(node: any) { + function traverse(node: unknown) { if (!node) return // Handle image nodes