summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/endpoints/admin
diff options
context:
space:
mode:
authornenohi <kimutipartylove@gmail.com>2023-04-19 08:25:24 +0900
committerGitHub <noreply@github.com>2023-04-19 08:25:24 +0900
commit65ff2c24980b7989a2925772721c0b2bc503d515 (patch)
tree8135e55721852c0540b3f9dd5f96a537fa909524 /packages/backend/src/server/api/endpoints/admin
parentfix: text color of follow button (#10672) (diff)
downloadsharkey-65ff2c24980b7989a2925772721c0b2bc503d515.tar.gz
sharkey-65ff2c24980b7989a2925772721c0b2bc503d515.tar.bz2
sharkey-65ff2c24980b7989a2925772721c0b2bc503d515.zip
カスタム絵文字のライセンスを一括でできるように (#10671)
* setlicensebulk追加 * 5時に誤字った!w * 並び順の変更(set,add,removeの順 * add changelog
Diffstat (limited to 'packages/backend/src/server/api/endpoints/admin')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/emoji/set-license-bulk.ts37
1 files changed, 37 insertions, 0 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/set-license-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/set-license-bulk.ts
new file mode 100644
index 0000000000..b90b9757be
--- /dev/null
+++ b/packages/backend/src/server/api/endpoints/admin/emoji/set-license-bulk.ts
@@ -0,0 +1,37 @@
+import { Inject, Injectable } from '@nestjs/common';
+import { Endpoint } from '@/server/api/endpoint-base.js';
+import { CustomEmojiService } from '@/core/CustomEmojiService.js';
+
+export const meta = {
+ tags: ['admin'],
+
+ requireCredential: true,
+ requireRolePolicy: 'canManageCustomEmojis',
+} as const;
+
+export const paramDef = {
+ type: 'object',
+ properties: {
+ ids: { type: 'array', items: {
+ type: 'string', format: 'misskey:id',
+ } },
+ license: {
+ type: 'string',
+ nullable: true,
+ description: 'Use `null` to reset the license.',
+ },
+ },
+ required: ['ids'],
+} as const;
+
+// eslint-disable-next-line import/no-default-export
+@Injectable()
+export default class extends Endpoint<typeof meta, typeof paramDef> {
+ constructor(
+ private customEmojiService: CustomEmojiService,
+ ) {
+ super(meta, paramDef, async (ps, me) => {
+ await this.customEmojiService.setLicenseBulk(ps.ids, ps.license ?? null);
+ });
+ }
+}