mirror of
https://github.com/immich-app/immich.git
synced 2025-12-29 09:14:59 +03:00
feat: Notification Email Templates (#13940)
This commit is contained in:
@@ -3430,6 +3430,57 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"/notifications/templates/{name}": {
|
||||
"post": {
|
||||
"operationId": "getNotificationTemplate",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "name",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"schema": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"requestBody": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/TemplateDto"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/TemplateResponseDto"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": ""
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"bearer": []
|
||||
},
|
||||
{
|
||||
"cookie": []
|
||||
},
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
],
|
||||
"tags": [
|
||||
"Notifications"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/notifications/test-email": {
|
||||
"post": {
|
||||
"operationId": "sendTestEmail",
|
||||
@@ -11538,6 +11589,9 @@
|
||||
"storageTemplate": {
|
||||
"$ref": "#/components/schemas/SystemConfigStorageTemplateDto"
|
||||
},
|
||||
"templates": {
|
||||
"$ref": "#/components/schemas/SystemConfigTemplatesDto"
|
||||
},
|
||||
"theme": {
|
||||
"$ref": "#/components/schemas/SystemConfigThemeDto"
|
||||
},
|
||||
@@ -11565,6 +11619,7 @@
|
||||
"reverseGeocoding",
|
||||
"server",
|
||||
"storageTemplate",
|
||||
"templates",
|
||||
"theme",
|
||||
"trash",
|
||||
"user"
|
||||
@@ -12111,6 +12166,25 @@
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SystemConfigTemplateEmailsDto": {
|
||||
"properties": {
|
||||
"albumInviteTemplate": {
|
||||
"type": "string"
|
||||
},
|
||||
"albumUpdateTemplate": {
|
||||
"type": "string"
|
||||
},
|
||||
"welcomeTemplate": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"albumInviteTemplate",
|
||||
"albumUpdateTemplate",
|
||||
"welcomeTemplate"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SystemConfigTemplateStorageOptionDto": {
|
||||
"properties": {
|
||||
"dayOptions": {
|
||||
@@ -12174,6 +12248,17 @@
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SystemConfigTemplatesDto": {
|
||||
"properties": {
|
||||
"email": {
|
||||
"$ref": "#/components/schemas/SystemConfigTemplateEmailsDto"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"email"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SystemConfigThemeDto": {
|
||||
"properties": {
|
||||
"customCss": {
|
||||
@@ -12352,6 +12437,32 @@
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"TemplateDto": {
|
||||
"properties": {
|
||||
"template": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"template"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"TemplateResponseDto": {
|
||||
"properties": {
|
||||
"html": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"html",
|
||||
"name"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"TestEmailResponseDto": {
|
||||
"properties": {
|
||||
"messageId": {
|
||||
|
||||
@@ -634,6 +634,13 @@ export type MemoryUpdateDto = {
|
||||
memoryAt?: string;
|
||||
seenAt?: string;
|
||||
};
|
||||
export type TemplateDto = {
|
||||
template: string;
|
||||
};
|
||||
export type TemplateResponseDto = {
|
||||
html: string;
|
||||
name: string;
|
||||
};
|
||||
export type SystemConfigSmtpTransportDto = {
|
||||
host: string;
|
||||
ignoreCert: boolean;
|
||||
@@ -1232,6 +1239,14 @@ export type SystemConfigStorageTemplateDto = {
|
||||
hashVerificationEnabled: boolean;
|
||||
template: string;
|
||||
};
|
||||
export type SystemConfigTemplateEmailsDto = {
|
||||
albumInviteTemplate: string;
|
||||
albumUpdateTemplate: string;
|
||||
welcomeTemplate: string;
|
||||
};
|
||||
export type SystemConfigTemplatesDto = {
|
||||
email: SystemConfigTemplateEmailsDto;
|
||||
};
|
||||
export type SystemConfigThemeDto = {
|
||||
customCss: string;
|
||||
};
|
||||
@@ -1259,6 +1274,7 @@ export type SystemConfigDto = {
|
||||
reverseGeocoding: SystemConfigReverseGeocodingDto;
|
||||
server: SystemConfigServerDto;
|
||||
storageTemplate: SystemConfigStorageTemplateDto;
|
||||
templates: SystemConfigTemplatesDto;
|
||||
theme: SystemConfigThemeDto;
|
||||
trash: SystemConfigTrashDto;
|
||||
user: SystemConfigUserDto;
|
||||
@@ -2227,6 +2243,19 @@ export function addMemoryAssets({ id, bulkIdsDto }: {
|
||||
body: bulkIdsDto
|
||||
})));
|
||||
}
|
||||
export function getNotificationTemplate({ name, templateDto }: {
|
||||
name: string;
|
||||
templateDto: TemplateDto;
|
||||
}, opts?: Oazapfts.RequestOpts) {
|
||||
return oazapfts.ok(oazapfts.fetchJson<{
|
||||
status: 200;
|
||||
data: TemplateResponseDto;
|
||||
}>(`/notifications/templates/${encodeURIComponent(name)}`, oazapfts.json({
|
||||
...opts,
|
||||
method: "POST",
|
||||
body: templateDto
|
||||
})));
|
||||
}
|
||||
export function sendTestEmail({ systemConfigSmtpDto }: {
|
||||
systemConfigSmtpDto: SystemConfigSmtpDto;
|
||||
}, opts?: Oazapfts.RequestOpts) {
|
||||
|
||||
Reference in New Issue
Block a user