summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/web/ClientServerService.ts
diff options
context:
space:
mode:
authorEbise Lutica <7106976+EbiseLutica@users.noreply.github.com>2023-06-09 14:00:53 +0900
committerGitHub <noreply@github.com>2023-06-09 14:00:53 +0900
commit34a32a8334b332de1fd202c9e3fd871d566bab0b (patch)
treec268e17ca8e4eddc61751d79dd9a197be2be2963 /packages/backend/src/server/web/ClientServerService.ts
parenttweak of 6032c2be1 (diff)
downloadsharkey-34a32a8334b332de1fd202c9e3fd871d566bab0b.tar.gz
sharkey-34a32a8334b332de1fd202c9e3fd871d566bab0b.tar.bz2
sharkey-34a32a8334b332de1fd202c9e3fd871d566bab0b.zip
エラー画像URLを設定可能に (#10959)
* エラー画像URLを設定可能に * Update CHANGELOG.md * 設定したエラーアイコンをprefetchするようにbase.pugを変更 * 不足していたデータを追加 * enhance(frontend): デザイン調整
Diffstat (limited to 'packages/backend/src/server/web/ClientServerService.ts')
-rw-r--r--packages/backend/src/server/web/ClientServerService.ts48
1 files changed, 22 insertions, 26 deletions
diff --git a/packages/backend/src/server/web/ClientServerService.ts b/packages/backend/src/server/web/ClientServerService.ts
index f780280c1f..07ba2731c3 100644
--- a/packages/backend/src/server/web/ClientServerService.ts
+++ b/packages/backend/src/server/web/ClientServerService.ts
@@ -26,7 +26,7 @@ import { PageEntityService } from '@/core/entities/PageEntityService.js';
import { GalleryPostEntityService } from '@/core/entities/GalleryPostEntityService.js';
import { ClipEntityService } from '@/core/entities/ClipEntityService.js';
import { ChannelEntityService } from '@/core/entities/ChannelEntityService.js';
-import type { ChannelsRepository, ClipsRepository, FlashsRepository, GalleryPostsRepository, NotesRepository, PagesRepository, UserProfilesRepository, UsersRepository } from '@/models/index.js';
+import type { ChannelsRepository, ClipsRepository, FlashsRepository, GalleryPostsRepository, Meta, NotesRepository, PagesRepository, UserProfilesRepository, UsersRepository } from '@/models/index.js';
import type Logger from '@/logger.js';
import { deepClone } from '@/misc/clone.js';
import { bindThis } from '@/decorators.js';
@@ -118,6 +118,18 @@ export class ClientServerService {
}
@bindThis
+ private generateCommonPugData(meta: Meta) {
+ return {
+ instanceName: meta.name ?? 'Misskey',
+ icon: meta.iconUrl,
+ themeColor: meta.themeColor,
+ serverErrorImageUrl: meta.serverErrorImageUrl ?? 'https://xn--931a.moe/assets/error.jpg',
+ infoImageUrl: meta.infoImageUrl ?? 'https://xn--931a.moe/assets/info.jpg',
+ notFoundImageUrl: meta.notFoundImageUrl ?? 'https://xn--931a.moe/assets/not-found.jpg',
+ };
+ }
+
+ @bindThis
public createServer(fastify: FastifyInstance, options: FastifyPluginOptions, done: (err?: Error) => void) {
fastify.register(fastifyCookie, {});
@@ -341,12 +353,10 @@ export class ClientServerService {
reply.header('Cache-Control', 'public, max-age=30');
return await reply.view('base', {
img: meta.bannerUrl,
- title: meta.name ?? 'Misskey',
- instanceName: meta.name ?? 'Misskey',
url: this.config.url,
+ title: meta.name ?? 'Misskey',
desc: meta.description,
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
};
@@ -431,9 +441,7 @@ export class ClientServerService {
user, profile, me,
avatarUrl: user.avatarUrl ?? this.userEntityService.getIdenticonUrl(user),
sub: request.params.sub,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
// リモートユーザーなので
@@ -481,9 +489,7 @@ export class ClientServerService {
avatarUrl: _note.user.avatarUrl,
// TODO: Let locale changeable by instance setting
summary: getNoteSummary(_note),
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);
@@ -522,9 +528,7 @@ export class ClientServerService {
page: _page,
profile,
avatarUrl: _page.user.avatarUrl,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);
@@ -550,9 +554,7 @@ export class ClientServerService {
flash: _flash,
profile,
avatarUrl: _flash.user.avatarUrl,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);
@@ -578,9 +580,7 @@ export class ClientServerService {
clip: _clip,
profile,
avatarUrl: _clip.user.avatarUrl,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);
@@ -604,9 +604,7 @@ export class ClientServerService {
post: _post,
profile,
avatarUrl: _post.user.avatarUrl,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);
@@ -625,9 +623,7 @@ export class ClientServerService {
reply.header('Cache-Control', 'public, max-age=15');
return await reply.view('channel', {
channel: _channel,
- instanceName: meta.name ?? 'Misskey',
- icon: meta.iconUrl,
- themeColor: meta.themeColor,
+ ...this.generateCommonPugData(meta),
});
} else {
return await renderBase(reply);