summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/web/ClientServerService.ts
diff options
context:
space:
mode:
authorMarie <marie@kaifa.ch>2024-02-19 10:47:42 +0100
committerMarie <marie@kaifa.ch>2024-02-19 10:47:42 +0100
commit10bfc616706e2903e3a7fd2b461ccfff71b09029 (patch)
tree852f49cd59c678d5a28bba755e0d75255b139c3a /packages/backend/src/server/web/ClientServerService.ts
parentmerge: Bridged error message for when you try search for a post and it fails ... (diff)
parentFix(frontend): オートコンプリートが出るべき状況で出ない... (diff)
downloadsharkey-10bfc616706e2903e3a7fd2b461ccfff71b09029.tar.gz
sharkey-10bfc616706e2903e3a7fd2b461ccfff71b09029.tar.bz2
sharkey-10bfc616706e2903e3a7fd2b461ccfff71b09029.zip
merge: upstream
Diffstat (limited to 'packages/backend/src/server/web/ClientServerService.ts')
-rw-r--r--packages/backend/src/server/web/ClientServerService.ts31
1 files changed, 25 insertions, 6 deletions
diff --git a/packages/backend/src/server/web/ClientServerService.ts b/packages/backend/src/server/web/ClientServerService.ts
index 9fdfafb737..b74fb7ffc5 100644
--- a/packages/backend/src/server/web/ClientServerService.ts
+++ b/packages/backend/src/server/web/ClientServerService.ts
@@ -1,5 +1,5 @@
/*
- * SPDX-FileCopyrightText: syuilo and other misskey contributors
+ * SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
@@ -34,6 +34,7 @@ import { ChannelEntityService } from '@/core/entities/ChannelEntityService.js';
import type { ChannelsRepository, ClipsRepository, FlashsRepository, GalleryPostsRepository, MiMeta, NotesRepository, PagesRepository, ReversiGamesRepository, UserProfilesRepository, UsersRepository } from '@/models/_.js';
import type Logger from '@/logger.js';
import { deepClone } from '@/misc/clone.js';
+import { handleRequestRedirectToOmitSearch } from '@/misc/fastify-hook-handlers.js';
import { bindThis } from '@/decorators.js';
import { FlashEntityService } from '@/core/entities/FlashEntityService.js';
import { RoleService } from '@/core/RoleService.js';
@@ -51,6 +52,7 @@ const clientAssets = `${_dirname}/../../../../frontend/assets/`;
const assets = `${_dirname}/../../../../../built/_frontend_dist_/`;
const swAssets = `${_dirname}/../../../../../built/_sw_dist_/`;
const viteOut = `${_dirname}/../../../../../built/_vite_/`;
+const tarball = `${_dirname}/../../../../../built/tarball/`;
@Injectable()
export class ClientServerService {
@@ -255,11 +257,16 @@ export class ClientServerService {
//#region vite assets
if (this.config.clientManifestExists) {
- fastify.register(fastifyStatic, {
- root: viteOut,
- prefix: '/vite/',
- maxAge: ms('30 days'),
- decorateReply: false,
+ fastify.register((fastify, options, done) => {
+ fastify.register(fastifyStatic, {
+ root: viteOut,
+ prefix: '/vite/',
+ maxAge: ms('30 days'),
+ immutable: true,
+ decorateReply: false,
+ });
+ fastify.addHook('onRequest', handleRequestRedirectToOmitSearch);
+ done();
});
} else {
const port = (process.env.VITE_PORT ?? '5173');
@@ -294,6 +301,18 @@ export class ClientServerService {
decorateReply: false,
});
+ fastify.register((fastify, options, done) => {
+ fastify.register(fastifyStatic, {
+ root: tarball,
+ prefix: '/tarball/',
+ maxAge: ms('30 days'),
+ immutable: true,
+ decorateReply: false,
+ });
+ fastify.addHook('onRequest', handleRequestRedirectToOmitSearch);
+ done();
+ });
+
fastify.get('/favicon.ico', async (request, reply) => {
return reply.sendFile('/favicon.ico', staticAssets);
});