38 lines
639 B
TypeScript
38 lines
639 B
TypeScript
|
import $ from 'cafy';
|
||
|
import define from '../../define';
|
||
|
import { createNotification } from '../../../../services/create-notification';
|
||
|
|
||
|
export const meta = {
|
||
|
tags: ['notifications'],
|
||
|
|
||
|
requireCredential: true as const,
|
||
|
|
||
|
kind: 'write:notifications',
|
||
|
|
||
|
params: {
|
||
|
body: {
|
||
|
validator: $.str
|
||
|
},
|
||
|
|
||
|
header: {
|
||
|
validator: $.optional.nullable.str
|
||
|
},
|
||
|
|
||
|
icon: {
|
||
|
validator: $.optional.nullable.str
|
||
|
},
|
||
|
},
|
||
|
|
||
|
errors: {
|
||
|
}
|
||
|
};
|
||
|
|
||
|
export default define(meta, async (ps, user, token) => {
|
||
|
createNotification(user.id, 'app', {
|
||
|
appAccessTokenId: token.id,
|
||
|
customBody: ps.body,
|
||
|
customHeader: ps.header,
|
||
|
customIcon: ps.icon,
|
||
|
});
|
||
|
});
|