@@ -4,29 +4,29 @@ import { sharedStorage } from '../config';
44import { MASKED_SECRET } from '../types' ;
55import type { IStorageConfig , IStorageConfigCreateInput , IStorageConfigUpdateInput } from '../types' ;
66
7- // Determine mode from storage config row
8- function getMode ( row : db . StorageConfigRow ) : 'shared ' | 'custom ' {
9- // Shared mode uses platform R2 (endpoint is null or matches sharedStorage endpoint)
10- // Custom mode has user-provided endpoint
11- return row . endpoint === null || row . endpoint === sharedStorage . endpoint ? 'shared ' : 'custom ' ;
7+ // Determine provider from storage config row
8+ function getProvider ( row : db . StorageConfigRow ) : 'platform ' | 's3 ' {
9+ // Platform provider uses shared R2 (endpoint is null or matches sharedStorage endpoint)
10+ // S3 provider has user-provided endpoint
11+ return row . endpoint === null || row . endpoint === sharedStorage . endpoint ? 'platform ' : 's3 ' ;
1212}
1313
1414function rowToStorageConfig ( row : db . StorageConfigRow ) : IStorageConfig {
15- const mode = getMode ( row ) ;
15+ const provider = getProvider ( row ) ;
1616
1717 return {
1818 id : row . id ,
1919 name : row . name ,
2020 desc : row . desc ,
21- mode ,
22- // Expose S3 details for custom mode , hide bucket/endpoint for shared
23- bucket : mode === 'custom ' ? row . bucket : undefined ,
21+ provider ,
22+ // Expose S3 details for s3 provider , hide bucket/endpoint for platform
23+ bucket : provider === 's3 ' ? row . bucket : undefined ,
2424 prefix : row . prefix ,
2525 // Always mask credentials
26- accessKeyId : mode === 'custom ' ? MASKED_SECRET : undefined ,
27- secretAccessKey : mode === 'custom ' ? MASKED_SECRET : undefined ,
28- endpoint : mode === 'custom ' ? row . endpoint : undefined ,
29- region : mode === 'custom ' ? row . region : undefined ,
26+ accessKeyId : provider === 's3 ' ? MASKED_SECRET : undefined ,
27+ secretAccessKey : provider === 's3 ' ? MASKED_SECRET : undefined ,
28+ endpoint : provider === 's3 ' ? row . endpoint : undefined ,
29+ region : provider === 's3 ' ? row . region : undefined ,
3030 publicUrl : row . publicUrl ,
3131 createdAt : row . createdAt ,
3232 updatedAt : row . updatedAt
@@ -50,7 +50,7 @@ export class StorageService {
5050 }
5151
5252 async create ( userId : string , input : IStorageConfigCreateInput ) : Promise < IStorageConfig > {
53- const { name, desc, mode } = input ;
53+ const { name, desc, provider } = input ;
5454
5555 // Check limit
5656 const user = await usersDb . findUserById ( userId ) ;
@@ -74,8 +74,8 @@ export class StorageService {
7474
7575 let row : db . StorageConfigRow ;
7676
77- if ( mode === 'shared ' ) {
78- // Shared mode : use platform R2 credentials with user-specific prefix
77+ if ( provider === 'platform ' ) {
78+ // Platform provider : use shared R2 credentials with user-specific prefix
7979 if ( ! sharedStorage . bucket || ! sharedStorage . accessKeyId || ! sharedStorage . secretAccessKey ) {
8080 throw new Error ( 'Shared storage is not configured on this platform' ) ;
8181 }
@@ -93,7 +93,7 @@ export class StorageService {
9393 sharedStorage . publicUrl ?? undefined
9494 ) ;
9595 } else {
96- // Custom mode : use user-provided credentials
96+ // S3 provider : use user-provided credentials
9797 row = await db . createStorageConfig (
9898 userId ,
9999 name ,
0 commit comments