feat(backend): allow disabling cache for sensitive files (#11245)
* feat(backend): allow disabling cache for sensitive files * Update CHANGELOG.md * fix storybook * Update locales/ja-JP.yml --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
This commit is contained in:
		 Kagami Sascha Rosylight
					Kagami Sascha Rosylight
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						GitHub
					
				
			
						parent
						
							f96ed9a3f3
						
					
				
				
					commit
					d5f30ecb86
				
			| @@ -1,5 +1,4 @@ | ||||
| import { Inject, Injectable } from '@nestjs/common'; | ||||
| import { MAX_NOTE_TEXT_LENGTH } from '@/const.js'; | ||||
| import { Endpoint } from '@/server/api/endpoint-base.js'; | ||||
| import { MetaService } from '@/core/MetaService.js'; | ||||
| import type { Config } from '@/config.js'; | ||||
| @@ -20,6 +19,10 @@ export const meta = { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			cacheRemoteSensitiveFiles: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			emailRequiredForSignup: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| @@ -332,6 +335,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | ||||
| 				enableServiceWorker: instance.enableServiceWorker, | ||||
| 				translatorAvailable: instance.deeplAuthKey != null, | ||||
| 				cacheRemoteFiles: instance.cacheRemoteFiles, | ||||
| 				cacheRemoteSensitiveFiles: instance.cacheRemoteSensitiveFiles, | ||||
| 				pinnedUsers: instance.pinnedUsers, | ||||
| 				hiddenTags: instance.hiddenTags, | ||||
| 				blockedHosts: instance.blockedHosts, | ||||
|   | ||||
| @@ -43,6 +43,7 @@ export const paramDef = { | ||||
| 		defaultLightTheme: { type: 'string', nullable: true }, | ||||
| 		defaultDarkTheme: { type: 'string', nullable: true }, | ||||
| 		cacheRemoteFiles: { type: 'boolean' }, | ||||
| 		cacheRemoteSensitiveFiles: { type: 'boolean' }, | ||||
| 		emailRequiredForSignup: { type: 'boolean' }, | ||||
| 		enableHcaptcha: { type: 'boolean' }, | ||||
| 		hcaptchaSiteKey: { type: 'string', nullable: true }, | ||||
| @@ -193,6 +194,10 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | ||||
| 				set.cacheRemoteFiles = ps.cacheRemoteFiles; | ||||
| 			} | ||||
|  | ||||
| 			if (ps.cacheRemoteSensitiveFiles !== undefined) { | ||||
| 				set.cacheRemoteSensitiveFiles = ps.cacheRemoteSensitiveFiles; | ||||
| 			} | ||||
|  | ||||
| 			if (ps.emailRequiredForSignup !== undefined) { | ||||
| 				set.emailRequiredForSignup = ps.emailRequiredForSignup; | ||||
| 			} | ||||
|   | ||||
| @@ -83,6 +83,10 @@ export const meta = { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			cacheRemoteSensitiveFiles: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			emailRequiredForSignup: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| @@ -272,7 +276,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | ||||
| 						.orWhere('ads.dayOfWeek = 0'); | ||||
| 				})) | ||||
| 				.getMany(); | ||||
| 		 | ||||
|  | ||||
| 			const response: any = { | ||||
| 				maintainerName: instance.maintainerName, | ||||
| 				maintainerEmail: instance.maintainerEmail, | ||||
| @@ -329,6 +333,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | ||||
|  | ||||
| 				...(ps.detail ? { | ||||
| 					cacheRemoteFiles: instance.cacheRemoteFiles, | ||||
| 					cacheRemoteSensitiveFiles: instance.cacheRemoteSensitiveFiles, | ||||
| 					requireSetup: (await this.usersRepository.countBy({ | ||||
| 						host: IsNull(), | ||||
| 					})) === 0, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user