mirror of
https://github.com/Afilmory/afilmory
synced 2026-02-01 22:48:17 +00:00
- Added MailModule to handle email notifications for comment events. - Introduced CommentCreatedEvent to encapsulate comment creation details. - Implemented CommentNotificationListener to send notifications to relevant users when a comment is created. - Integrated Resend service for sending emails, with templates for comment notifications. - Updated various modules to support the new email notification feature. Signed-off-by: Innei <tukon479@gmail.com>
59 lines
1.2 KiB
TypeScript
59 lines
1.2 KiB
TypeScript
import { merge } from 'es-toolkit/compat'
|
|
|
|
import userConfig from './config.json'
|
|
|
|
export interface SiteConfig {
|
|
name: string
|
|
title: string
|
|
description: string
|
|
url: string
|
|
accentColor: string
|
|
author: Author
|
|
social?: Social
|
|
feed?: Feed
|
|
map?: MapConfig
|
|
mapStyle?: string
|
|
mapProjection?: 'globe' | 'mercator'
|
|
}
|
|
|
|
/**
|
|
* Map configuration - can be either:
|
|
* - A string for a single provider: 'maplibre'
|
|
* - An array for multiple providers in priority order: ['maplibre']
|
|
*/
|
|
type MapConfig = 'maplibre'[]
|
|
|
|
interface Feed {
|
|
folo?: {
|
|
challenge?: {
|
|
feedId: string
|
|
userId: string
|
|
}
|
|
}
|
|
}
|
|
interface Author {
|
|
name: string
|
|
url: string
|
|
avatar?: string
|
|
}
|
|
interface Social {
|
|
twitter?: string
|
|
github?: string
|
|
}
|
|
|
|
const defaultConfig: SiteConfig = {
|
|
name: 'New Afilmory',
|
|
title: 'New Afilmory',
|
|
description: 'A modern photo gallery website.',
|
|
url: 'https://afilmory.art',
|
|
accentColor: '#007bff',
|
|
author: {
|
|
name: 'Afilmory',
|
|
url: 'https://afilmory.art/',
|
|
avatar: 'https://cdn.jsdelivr.net/gh/Afilmory/Afilmory@main/logo.jpg',
|
|
},
|
|
}
|
|
export const siteConfig: SiteConfig = merge(defaultConfig, userConfig) as any
|
|
|
|
export default siteConfig
|