@plutonhq/core-backend 0.1.10 → 0.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../src/createApp.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAiDhD,wBAAsB,SAAS,IAAI,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC,CAoJ3D"}
1
+ {"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../src/createApp.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAkDhD,wBAAsB,SAAS,IAAI,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC,CAwL3D"}
package/dist/createApp.js CHANGED
@@ -1 +1 @@
1
- import path from"path";import{fileURLToPath}from"url";import express from"express";import cors from"cors";import helmet from"helmet";import rateLimit from"express-rate-limit";import{db}from"./db";import{createPlanRouter}from"./routes/plans";import{createDeviceRouter}from"./routes/devices";import{createStorageRouter}from"./routes/storages";import{createRestoreRouter}from"./routes/restores";import{createUserRouter}from"./routes/users";import{createSettingsRouter}from"./routes/settings";import{createHealthRouter}from"./routes/health";import{createSetupRouter}from"./routes/setup";import{PlanController}from"./controllers/PlanController";import{DeviceController}from"./controllers/DeviceController";import{StorageController}from"./controllers/StorageController";import{RestoreController}from"./controllers/RestoreController";import{UserController}from"./controllers/UserController";import{SettingsController}from"./controllers/SettingsController";import{SetupController}from"./controllers/SetupController";import{createBackupRouter}from"./routes/backups";import{BackupController}from"./controllers/BackupController";import versionMiddleware from"./middlewares/versionMiddleware";import{PlanStore}from"./stores/PlanStore";import{BackupStore}from"./stores/BackupStore";import{PlanService}from"./services/PlanService";import{RestoreStore}from"./stores/RestoreStore";import{SettingsStore}from"./stores/SettingsStore";import{StorageStore}from"./stores/StorageStore";import{DeviceStore}from"./stores/DeviceStore";import{BaseBackupManager}from"./managers";import{BackupEventListener}from"./services/listeners/BackupEventListener";import{BackupService}from"./services/BackupServices";import{BaseSnapshotManager}from"./managers/BaseSnapshotManager";import{RestoreService}from"./services/RestoreService";import{RestoreEventListener}from"./services/listeners/RestoreEventListener";import{DownloadEventListener}from"./services/listeners/DownloadEventListener";import{DeviceService}from"./services/DeviceService";import{BaseSystemManager}from"./managers/BaseSystemManager";import{BaseStorageManager}from"./managers/BaseStorageManager";import{StorageService}from"./services/StorageService";import{SettingsService}from"./services/SettingsService";import{systemTaskManager}from"./jobs/SystemTaskManager";import{jobProcessor}from"./jobs/JobProcessor";import{initializeLogger}from"./utils/logger";import{configService}from"./services/ConfigService";import{BaseRestoreManager}from"./managers/BaseRestoreManager";export async function createApp(){initializeLogger();const planStore=new PlanStore(db),backupStore=new BackupStore(db),storageStore=new StorageStore(db),deviceStore=new DeviceStore(db),restoreStore=new RestoreStore(db),settingsStore=new SettingsStore(db),localPlanAgent=new BaseBackupManager,localBackupAgent=new BaseSnapshotManager,localRestoreAgent=new BaseRestoreManager,localSystemAgent=new BaseSystemManager,localStorageAgent=new BaseStorageManager;new BackupEventListener(localPlanAgent,planStore,backupStore),new RestoreEventListener(localRestoreAgent,planStore,backupStore,restoreStore),new DownloadEventListener(localBackupAgent,backupStore);const planService=new PlanService(localPlanAgent,planStore,backupStore,storageStore,deviceStore,restoreStore),backupService=new BackupService(localBackupAgent,localPlanAgent,planStore,backupStore,restoreStore,storageStore),restoreService=new RestoreService(localRestoreAgent,planStore,backupStore,restoreStore,storageStore),deviceService=new DeviceService(localSystemAgent,deviceStore,planStore,storageStore),storageService=new StorageService(localStorageAgent,localSystemAgent,storageStore,planStore),settingsService=new SettingsService(settingsStore),planController=new PlanController(planService),backupController=new BackupController(backupService),restoreController=new RestoreController(restoreService),deviceController=new DeviceController(deviceService),storageController=new StorageController(storageService),settingsController=new SettingsController(settingsService),userController=new UserController,setupController=new SetupController,app=express();app.use(cors({origin:[process.env.APP_URL,configService.config.APP_URL||"http://mypluton.com"],credentials:!0,methods:["GET","POST","PUT","DELETE","OPTIONS"],exposedHeaders:["X-App-Version","X-Server-OS"]})),app.use(versionMiddleware),app.use(express.json()),app.use(helmet({contentSecurityPolicy:!1,hsts:!1}));const __filename=fileURLToPath(import.meta.url),__dirname=path.dirname(__filename),publicPath=path.join(__dirname,"..","public");app.use(express.static(publicPath));const apiLimiter=rateLimit({windowMs:9e5,max:1e3,standardHeaders:!0,legacyHeaders:!1});app.use("/api/",apiLimiter);const setupLimiter=rateLimit({windowMs:9e5,max:10,standardHeaders:!0,legacyHeaders:!1}),authLimiter=rateLimit({windowMs:9e5,max:10});return app.use("/api/setup",setupLimiter,createSetupRouter(setupController)),app.use("/api/user",authLimiter,createUserRouter(userController)),app.use("/api/plans",createPlanRouter(planController)),app.use("/api/backups",createBackupRouter(backupController)),app.use("/api/devices",createDeviceRouter(deviceController)),app.use("/api/storages",createStorageRouter(storageController)),app.use("/api/restores",createRestoreRouter(restoreController)),app.use("/api/settings",createSettingsRouter(settingsController)),app.use("/api/health",createHealthRouter()),app.get("{*path}",(req,res)=>{res.sendFile(path.join(publicPath,"index.html"))}),systemTaskManager.initialize(),jobProcessor.registerTasks({backupManager:localPlanAgent,restoreManager:localRestoreAgent}),jobProcessor.start(),{app:app}}
1
+ import path from"path";import{fileURLToPath}from"url";import express from"express";import cors from"cors";import helmet from"helmet";import rateLimit from"express-rate-limit";import{db}from"./db";import{createPlanRouter}from"./routes/plans";import{createDeviceRouter}from"./routes/devices";import{createStorageRouter}from"./routes/storages";import{createRestoreRouter}from"./routes/restores";import{createUserRouter}from"./routes/users";import{createSettingsRouter}from"./routes/settings";import{createHealthRouter}from"./routes/health";import{createSetupRouter}from"./routes/setup";import{PlanController}from"./controllers/PlanController";import{DeviceController}from"./controllers/DeviceController";import{StorageController}from"./controllers/StorageController";import{RestoreController}from"./controllers/RestoreController";import{UserController}from"./controllers/UserController";import{SettingsController}from"./controllers/SettingsController";import{SetupController}from"./controllers/SetupController";import{createBackupRouter}from"./routes/backups";import{BackupController}from"./controllers/BackupController";import versionMiddleware from"./middlewares/versionMiddleware";import{PlanStore}from"./stores/PlanStore";import{BackupStore}from"./stores/BackupStore";import{PlanService}from"./services/PlanService";import{RestoreStore}from"./stores/RestoreStore";import{SettingsStore}from"./stores/SettingsStore";import{StorageStore}from"./stores/StorageStore";import{DeviceStore}from"./stores/DeviceStore";import{BaseBackupManager}from"./managers";import{BackupEventListener}from"./services/listeners/BackupEventListener";import{BackupService}from"./services/BackupServices";import{BaseSnapshotManager}from"./managers/BaseSnapshotManager";import{RestoreService}from"./services/RestoreService";import{RestoreEventListener}from"./services/listeners/RestoreEventListener";import{DownloadEventListener}from"./services/listeners/DownloadEventListener";import{DeviceService}from"./services/DeviceService";import{BaseSystemManager}from"./managers/BaseSystemManager";import{BaseStorageManager}from"./managers/BaseStorageManager";import{StorageService}from"./services/StorageService";import{SettingsService}from"./services/SettingsService";import{systemTaskManager}from"./jobs/SystemTaskManager";import{jobProcessor}from"./jobs/JobProcessor";import{initializeLogger}from"./utils/logger";import{configService}from"./services/ConfigService";import{BaseRestoreManager}from"./managers/BaseRestoreManager";export async function createApp(){initializeLogger();const planStore=new PlanStore(db),backupStore=new BackupStore(db),storageStore=new StorageStore(db),deviceStore=new DeviceStore(db),restoreStore=new RestoreStore(db),settingsStore=new SettingsStore(db),localPlanAgent=new BaseBackupManager,localBackupAgent=new BaseSnapshotManager,localRestoreAgent=new BaseRestoreManager,localSystemAgent=new BaseSystemManager,localStorageAgent=new BaseStorageManager;new BackupEventListener(localPlanAgent,planStore,backupStore),new RestoreEventListener(localRestoreAgent,planStore,backupStore,restoreStore),new DownloadEventListener(localBackupAgent,backupStore);const planService=new PlanService(localPlanAgent,planStore,backupStore,storageStore,deviceStore,restoreStore),backupService=new BackupService(localBackupAgent,localPlanAgent,planStore,backupStore,restoreStore,storageStore),restoreService=new RestoreService(localRestoreAgent,planStore,backupStore,restoreStore,storageStore),deviceService=new DeviceService(localSystemAgent,deviceStore,planStore,storageStore),storageService=new StorageService(localStorageAgent,localSystemAgent,storageStore,planStore),settingsService=new SettingsService(settingsStore),planController=new PlanController(planService),backupController=new BackupController(backupService),restoreController=new RestoreController(restoreService),deviceController=new DeviceController(deviceService),storageController=new StorageController(storageService),settingsController=new SettingsController(settingsService),userController=new UserController,setupController=new SetupController,app=express();app.use(cors({origin:[process.env.APP_URL,configService.config.APP_URL||"http://mypluton.com"],credentials:!0,methods:["GET","POST","PUT","DELETE","OPTIONS"],exposedHeaders:["X-App-Version","X-Server-OS"]})),app.use(versionMiddleware),app.use(express.json());const appUrl=configService.config.APP_URL||"http://localhost",serverPort=configService.config.SERVER_PORT,isDev=configService.isDevelopment(),connectSrc=["'self'",appUrl,(req,_res)=>{const host=req.headers.host;if(host){return`${"https"===req.headers["x-forwarded-proto"]?"https":"http"}://${host}`}return`http://localhost:${serverPort}`}];isDev&&connectSrc.push(`http://localhost:${serverPort}`,`http://127.0.0.1:${serverPort}`),app.use(helmet({contentSecurityPolicy:{directives:{defaultSrc:["'self'"],scriptSrc:["'self'","'unsafe-inline'"],styleSrc:["'self'","'unsafe-inline'"],imgSrc:["'self'","data:","blob:"],fontSrc:["'self'","data:"],connectSrc:connectSrc,frameAncestors:["'none'"],baseUri:["'self'"],formAction:["'self'"],upgradeInsecureRequests:isDev?null:[]}},hsts:!1}));const __filename=fileURLToPath(import.meta.url),__dirname=path.dirname(__filename),publicPath=path.join(__dirname,"..","public");app.use(express.static(publicPath));const apiLimiter=rateLimit({windowMs:9e5,max:1e3,standardHeaders:!0,legacyHeaders:!1});app.use("/api/",apiLimiter);const setupLimiter=rateLimit({windowMs:9e5,max:10,standardHeaders:!0,legacyHeaders:!1}),authLimiter=rateLimit({windowMs:9e5,max:10});return app.use("/api/setup",setupLimiter,createSetupRouter(setupController)),app.use("/api/user",authLimiter,createUserRouter(userController)),app.use("/api/plans",createPlanRouter(planController)),app.use("/api/backups",createBackupRouter(backupController)),app.use("/api/devices",createDeviceRouter(deviceController)),app.use("/api/storages",createStorageRouter(storageController)),app.use("/api/restores",createRestoreRouter(restoreController)),app.use("/api/settings",createSettingsRouter(settingsController)),app.use("/api/health",createHealthRouter()),app.get("{*path}",(req,res)=>{res.sendFile(path.join(publicPath,"index.html"))}),systemTaskManager.initialize(),jobProcessor.registerTasks({backupManager:localPlanAgent,restoreManager:localRestoreAgent}),jobProcessor.start(),{app:app}}
@@ -1 +1 @@
1
- {"version":3,"file":"createApp.js","sourceRoot":"","sources":["../src/createApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createApp.js","sourceRoot":"","sources":["../src/createApp.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,OAAyB,MAAM,SAAS,CAAC;AAEhD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,SAAS;IAC9B,oBAAoB;IACpB,gBAAgB,EAAE,CAAC;IAEnB,SAAS;IACT,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IAE5C,eAAe;IACf,MAAM,cAAc,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAC/C,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,EAAE,CAAC;IACnD,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACnD,MAAM,gBAAgB,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAEnD,kBAAkB;IAClB,IAAI,mBAAmB,CAAC,cAAc,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAChE,IAAI,oBAAoB,CAAC,iBAAiB,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAClF,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IAEzD,4BAA4B;IAC5B,MAAM,WAAW,GAAG,IAAI,WAAW,CAClC,cAAc,EACd,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,CACZ,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,aAAa,CACtC,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,CACZ,CAAC;IACF,MAAM,cAAc,GAAG,IAAI,cAAc,CACxC,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,YAAY,CACZ,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,gBAAgB,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAChG,MAAM,cAAc,GAAG,IAAI,cAAc,CACxC,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,SAAS,CACT,CAAC;IACF,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;IAE3D,wBAAwB;IACxB,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC7D,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC7D,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAC5C,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAE9C,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5E,cAAc;IACd,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CACN,IAAI,CAAC;QACJ,MAAM,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,OAAiB,EAAE,gCAAgC;YAC/D,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,qBAAqB,EAAE,oBAAoB;SAC3E;QACD,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC;QACpD,cAAc,EAAE,CAAC,eAAe,EAAE,aAAa,CAAC;KAChD,CAAC,CACF,CAAC;IACF,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAExB,6BAA6B;IAC7B,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,kBAAkB,CAAC;IAClE,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC;IACpD,MAAM,KAAK,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC;IAE5C,8DAA8D;IAC9D,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,aAAa,GAAG,CAAC,GAAoB,EAAE,IAAoB,EAAE,EAAE;QACpE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9E,OAAO,GAAG,KAAK,MAAM,IAAI,EAAE,CAAC;QAC7B,CAAC;QACD,OAAO,oBAAoB,UAAU,EAAE,CAAC;IACzC,CAAC,CAAC;IAEF,wEAAwE;IACxE,+DAA+D;IAC/D,MAAM,UAAU,GAAsC,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACxF,IAAI,KAAK,EAAE,CAAC;QACX,UAAU,CAAC,IAAI,CAAC,oBAAoB,UAAU,EAAE,EAAE,oBAAoB,UAAU,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,GAAG,CAAC,GAAG,CACN,MAAM,CAAC;QACN,qBAAqB,EAAE;YACtB,UAAU,EAAE;gBACX,UAAU,EAAE,CAAC,QAAQ,CAAC;gBACtB,SAAS,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBACxC,QAAQ,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBACvC,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;gBACpC,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;gBAC5B,UAAU;gBACV,cAAc,EAAE,CAAC,QAAQ,CAAC;gBAC1B,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,UAAU,EAAE,CAAC,QAAQ,CAAC;gBACtB,uBAAuB,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;aAC1C;SACD;QACD,IAAI,EAAE,KAAK,EAAE,qDAAqD;KAClE,CAAC,CACF,CAAC;IAEF,kDAAkD;IAClD,+CAA+C;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAEpC,eAAe;IACf,MAAM,UAAU,GAAG,SAAS,CAAC;QAC5B,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;QACvC,GAAG,EAAE,IAAI,EAAE,4CAA4C;QACvD,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,KAAK;KACpB,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAE7B,yDAAyD;IACzD,MAAM,YAAY,GAAG,SAAS,CAAC;QAC9B,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;QACvC,GAAG,EAAE,EAAE,EAAE,8BAA8B;QACvC,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,KAAK;KACpB,CAAC,CAAC;IACH,oEAAoE;IACpE,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAErE,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,iCAAiC;IAC1G,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;IACpE,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;IACxD,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACnE,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAE7C,0EAA0E;IAC1E,2EAA2E;IAC3E,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC/B,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,8BAA8B;IAC9B,iBAAiB,CAAC,UAAU,EAAE,CAAC;IAE/B,6BAA6B;IAC7B,YAAY,CAAC,aAAa,CAAC;QAC1B,aAAa,EAAE,cAAc;QAC7B,cAAc,EAAE,iBAAiB;KACjC,CAAC,CAAC;IAEH,YAAY,CAAC,KAAK,EAAE,CAAC;IAErB,OAAO,EAAE,GAAG,EAAE,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceService.d.ts","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA4B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAAiC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD,qBAAa,aAAa;IAIxB,SAAS,CAAC,kBAAkB,EAAE,iBAAiB;IAC/C,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,YAAY,EAAE,YAAY;IANrC,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;gBAG3C,kBAAkB,EAAE,iBAAiB,EACrC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY;IAGrC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAKnD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,CAAC,MAAM,GAAG;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,EAAE,GAAG,IAAI,CAAC;IAWvE;;OAEG;IACG,SAAS,CACd,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,OAAO,GACjB,OAAO,CAAC;QACV,MAAM,EAAE,CAAC,MAAM,GAAG;YAAE,SAAS,EAAE,OAAO,CAAA;SAAE,CAAC,GAAG,IAAI,CAAC;QACjD,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;KAC7B,CAAC;IAiFF;;OAEG;IACG,YAAY,CACjB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACtD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAuCnB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAkDrD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAwBxD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAWxC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B1D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAyBhE"}
1
+ {"version":3,"file":"DeviceService.d.ts","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAsB,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA4B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAAiC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD,qBAAa,aAAa;IAIxB,SAAS,CAAC,kBAAkB,EAAE,iBAAiB;IAC/C,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,YAAY,EAAE,YAAY;IANrC,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;gBAG3C,kBAAkB,EAAE,iBAAiB,EACrC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY;IAGrC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAKnD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,CAAC,MAAM,GAAG;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,EAAE,GAAG,IAAI,CAAC;IAWvE;;OAEG;IACG,SAAS,CACd,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,OAAO,GACjB,OAAO,CAAC;QACV,MAAM,EAAE,CAAC,MAAM,GAAG;YAAE,SAAS,EAAE,OAAO,CAAA;SAAE,CAAC,GAAG,IAAI,CAAC;QACjD,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;KAC7B,CAAC;IAiFF;;OAEG;IACG,YAAY,CACjB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACtD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAsCnB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAkDrD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAwBxD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAWxC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B1D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAyBhE"}
@@ -1 +1 @@
1
- import path from"path";import{DeviceLogger}from"../utils/logger";import{LocalStrategy,RemoteStrategy}from"../strategies/system";import{providers}from"../utils/providers";import{configService}from"./ConfigService";import{AppError}from"../utils/AppError";export class DeviceService{localSystemManager;deviceStore;planStore;storageStore;connectedDeviceIds;constructor(localSystemManager,deviceStore,planStore,storageStore){this.localSystemManager=localSystemManager,this.deviceStore=deviceStore,this.planStore=planStore,this.storageStore=storageStore}getSystemStrategy(deviceId){return"main"!==deviceId?new RemoteStrategy(deviceId):new LocalStrategy(this.localSystemManager)}async getDevices(){const allDevices=await this.deviceStore.getAll();return allDevices?.map(device=>({...device,connected:this.connectedDeviceIds?.has(device.id)||!1}))||null}async getDevice(id,getMetrics){const deviceRaw=await this.deviceStore.getById(id);if(!deviceRaw)throw new Error("Device not found.");const device={...deviceRaw,connected:this.connectedDeviceIds?.has(deviceRaw.id)||!1},plans=await this.planStore.getDevicePlans(id),devicePlans=plans&&plans.map(plan=>({id:plan.id,title:plan.title,method:plan.method,createdAt:plan.createdAt,isActive:plan.isActive,sourceConfig:plan.sourceConfig,storage:{id:plan.storageId,path:plan.storagePath,name:"",type:"",typeName:"",size:0},size:plan.stats?.size||0}))||[],storageIds=devicePlans.map(p=>p.storage.id).filter(i=>null!==i);if(storageIds.length>0){const storages=await this.storageStore.getByIds(storageIds);storages&&storages.length>0&&devicePlans.forEach(p=>{const theStorage=storages.find(s=>s.id===p.storage.id);theStorage&&(p.storage.name=theStorage.name,p.storage.type=theStorage.type||"",p.storage.typeName=theStorage.type?theStorage.type in providers?providers[theStorage.type].name:theStorage.type:"")})}if(!getMetrics)return{device:device,metrics:null,plans:devicePlans};try{const strategy=this.getSystemStrategy(id),metricsResp=await strategy.getMetrics();return{device:device,metrics:metricsResp.result&&metricsResp.success&&"string"!=typeof metricsResp.result&&metricsResp.result.system?metricsResp.result:null,plans:devicePlans}}catch(error){return DeviceLogger(id).error(`Error fetching device data for #${id}. Reason : ${error?.message.toString()||"Unknown Error"}`),{device:device,metrics:null,plans:[]}}}async updateDevice(id,data){const existingDevice=await this.deviceStore.getById(id);if(!existingDevice)throw new Error("Device not found.");const updatedObj={};if(data.name&&(updatedObj.name=data.name),data.settings&&(updatedObj.settings=data.settings),data.tags&&(updatedObj.tags=data.tags),data.settings&&"main"!==existingDevice.id)try{const strategy=this.getSystemStrategy(id);if(!(await strategy.updateSettings(data.settings)).success)throw new Error("Failed to update device settings")}catch(error){throw new Error("Failed to update device settings")}return await this.deviceStore.update(id,updatedObj)}async getMetrics(id){const device=await this.deviceStore.getById(id);if(!device)throw new Error("Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.getMetrics();if(!response.success)throw new Error("Failed to get Device metrics");if("string"!=typeof response.result&&response.success&&response.result?.system){const metrics=response.result,payload={metrics:metrics,lastSeen:new Date,status:"active"};if(payload.versions=device.versions||{restic:"",rclone:"",agent:""},metrics.versions?.restic&&(payload.versions.restic=metrics.versions.restic),metrics.versions?.rclone&&(payload.versions.rclone=metrics.versions.rclone),metrics.versions?.agent&&(payload.versions.agent=metrics.versions.agent),metrics.os.hostname&&"unknown"!==metrics.os.hostname&&(payload.hostname=metrics.os.hostname),metrics.os.platform&&"unknown"!==metrics.os.platform&&(payload.platform=metrics.os.platform),metrics.os.platform&&"unknown"!==metrics.os.platform){const detailedOS=`${metrics.os.distro} ${metrics.os.release}`;payload.os=detailedOS}await this.deviceStore.update(id,payload)}return response.result}async getBrowsePath(id,reqPath){if(!await this.deviceStore.getById(id))throw new AppError(404,"Device not found.");if(!1===configService.config.ALLOW_FILE_BROWSER)throw new AppError(403,"File browser is disabled");const browserRoot=configService.config.FILE_BROWSER_ROOT;if(browserRoot&&reqPath){const resolved=path.resolve(reqPath),resolvedRoot=path.resolve(browserRoot);if(!resolved.startsWith(resolvedRoot))throw new AppError(403,"Access denied: path outside allowed root")}const strategy=this.getSystemStrategy(id);return await strategy.getBrowsePath(reqPath)}async getMountPoints(id){if(!await this.deviceStore.getById(id))throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id);return await strategy.getMountPoints()}async updateRestic(id,version){const device=await this.deviceStore.getById(id);if(!device)throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRestic(),updatedVersion=response.result;if(!response.success)throw new AppError(500,"Failed to update restic");try{const versions=device.versions||{restic:"",rclone:"",agent:""};updatedVersion&&(versions.restic=updatedVersion),await this.deviceStore.update(id,{versions:versions})}catch(error){}return response.result}async updateRclone(id,version){const device=await this.deviceStore.getById(id);if(!device)throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRclone(),updatedVersion=response.result;if(!response.success)throw new AppError(500,"Failed to update rclone");try{const versions=device.versions||{restic:"",rclone:"",agent:""};updatedVersion&&(versions.rclone=updatedVersion),await this.deviceStore.update(id,{versions:versions})}catch(error){}return response.result}}
1
+ import path from"path";import{deviceUpdateSchema}from"../db/schema/devices";import{DeviceLogger}from"../utils/logger";import{LocalStrategy,RemoteStrategy}from"../strategies/system";import{providers}from"../utils/providers";import{configService}from"./ConfigService";import{AppError}from"../utils/AppError";export class DeviceService{localSystemManager;deviceStore;planStore;storageStore;connectedDeviceIds;constructor(localSystemManager,deviceStore,planStore,storageStore){this.localSystemManager=localSystemManager,this.deviceStore=deviceStore,this.planStore=planStore,this.storageStore=storageStore}getSystemStrategy(deviceId){return"main"!==deviceId?new RemoteStrategy(deviceId):new LocalStrategy(this.localSystemManager)}async getDevices(){const allDevices=await this.deviceStore.getAll();return allDevices?.map(device=>({...device,connected:this.connectedDeviceIds?.has(device.id)||!1}))||null}async getDevice(id,getMetrics){const deviceRaw=await this.deviceStore.getById(id);if(!deviceRaw)throw new Error("Device not found.");const device={...deviceRaw,connected:this.connectedDeviceIds?.has(deviceRaw.id)||!1},plans=await this.planStore.getDevicePlans(id),devicePlans=plans&&plans.map(plan=>({id:plan.id,title:plan.title,method:plan.method,createdAt:plan.createdAt,isActive:plan.isActive,sourceConfig:plan.sourceConfig,storage:{id:plan.storageId,path:plan.storagePath,name:"",type:"",typeName:"",size:0},size:plan.stats?.size||0}))||[],storageIds=devicePlans.map(p=>p.storage.id).filter(i=>null!==i);if(storageIds.length>0){const storages=await this.storageStore.getByIds(storageIds);storages&&storages.length>0&&devicePlans.forEach(p=>{const theStorage=storages.find(s=>s.id===p.storage.id);theStorage&&(p.storage.name=theStorage.name,p.storage.type=theStorage.type||"",p.storage.typeName=theStorage.type?theStorage.type in providers?providers[theStorage.type].name:theStorage.type:"")})}if(!getMetrics)return{device:device,metrics:null,plans:devicePlans};try{const strategy=this.getSystemStrategy(id),metricsResp=await strategy.getMetrics();return{device:device,metrics:metricsResp.result&&metricsResp.success&&"string"!=typeof metricsResp.result&&metricsResp.result.system?metricsResp.result:null,plans:devicePlans}}catch(error){return DeviceLogger(id).error(`Error fetching device data for #${id}. Reason : ${error?.message.toString()||"Unknown Error"}`),{device:device,metrics:null,plans:[]}}}async updateDevice(id,data){const existingDevice=await this.deviceStore.getById(id);if(!existingDevice)throw new Error("Device not found.");let updatedObj={};try{updatedObj=deviceUpdateSchema.parse({name:data.name??existingDevice.name,settings:data.settings??existingDevice.settings,tags:data.tags??existingDevice.tags})}catch(error){throw new AppError(400,"Invalid device data provided")}if(data.settings&&"main"!==existingDevice.id)try{const strategy=this.getSystemStrategy(id);if(!(await strategy.updateSettings(data.settings)).success)throw new Error("Failed to update device settings")}catch(error){throw new Error("Failed to update device settings")}return await this.deviceStore.update(id,updatedObj)}async getMetrics(id){const device=await this.deviceStore.getById(id);if(!device)throw new Error("Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.getMetrics();if(!response.success)throw new Error("Failed to get Device metrics");if("string"!=typeof response.result&&response.success&&response.result?.system){const metrics=response.result,payload={metrics:metrics,lastSeen:new Date,status:"active"};if(payload.versions=device.versions||{restic:"",rclone:"",agent:""},metrics.versions?.restic&&(payload.versions.restic=metrics.versions.restic),metrics.versions?.rclone&&(payload.versions.rclone=metrics.versions.rclone),metrics.versions?.agent&&(payload.versions.agent=metrics.versions.agent),metrics.os.hostname&&"unknown"!==metrics.os.hostname&&(payload.hostname=metrics.os.hostname),metrics.os.platform&&"unknown"!==metrics.os.platform&&(payload.platform=metrics.os.platform),metrics.os.platform&&"unknown"!==metrics.os.platform){const detailedOS=`${metrics.os.distro} ${metrics.os.release}`;payload.os=detailedOS}await this.deviceStore.update(id,payload)}return response.result}async getBrowsePath(id,reqPath){if(!await this.deviceStore.getById(id))throw new AppError(404,"Device not found.");if(!1===configService.config.ALLOW_FILE_BROWSER)throw new AppError(403,"File browser is disabled");const browserRoot=configService.config.FILE_BROWSER_ROOT;if(browserRoot&&reqPath){const resolved=path.resolve(reqPath),resolvedRoot=path.resolve(browserRoot);if(!resolved.startsWith(resolvedRoot))throw new AppError(403,"Access denied: path outside allowed root")}const strategy=this.getSystemStrategy(id);return await strategy.getBrowsePath(reqPath)}async getMountPoints(id){if(!await this.deviceStore.getById(id))throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id);return await strategy.getMountPoints()}async updateRestic(id,version){const device=await this.deviceStore.getById(id);if(!device)throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRestic(),updatedVersion=response.result;if(!response.success)throw new AppError(500,"Failed to update restic");try{const versions=device.versions||{restic:"",rclone:"",agent:""};updatedVersion&&(versions.restic=updatedVersion),await this.deviceStore.update(id,{versions:versions})}catch(error){}return response.result}async updateRclone(id,version){const device=await this.deviceStore.getById(id);if(!device)throw new AppError(404,"Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRclone(),updatedVersion=response.result;if(!response.success)throw new AppError(500,"Failed to update rclone");try{const versions=device.versions||{restic:"",rclone:"",agent:""};updatedVersion&&(versions.rclone=updatedVersion),await this.deviceStore.update(id,{versions:versions})}catch(error){}return response.result}}
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceService.js","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceService.js","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAU,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAKlE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAC;AAErF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,OAAO,aAAa;IAId;IACA;IACA;IACA;IAND,kBAAkB,CAA0B;IAEtD,YACW,kBAAqC,EACrC,WAAwB,EACxB,SAAoB,EACpB,YAA0B;QAH1B,uBAAkB,GAAlB,kBAAkB,CAAmB;QACrC,gBAAW,GAAX,WAAW,CAAa;QACxB,cAAS,GAAT,SAAS,CAAW;QACpB,iBAAY,GAAZ,YAAY,CAAc;IAClC,CAAC;IAEJ,iBAAiB,CAAC,QAAgB;QACjC,MAAM,QAAQ,GAAG,QAAQ,KAAK,MAAM,CAAC;QACrC,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACf,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAEnD,OAAO,CACN,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,GAAG,MAAM;YACT,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK;SAC3D,CAAC,CAAC,IAAI,IAAI,CACX,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CACd,EAAU,EACV,UAAmB;QAMnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,MAAM,GAAG;YACd,GAAG,SAAS;YACZ,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,KAAK;SAC9D,CAAC;QAEF,mBAAmB;QACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACtD,MAAM,WAAW,GAChB,CAAC,KAAK;YACL,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,OAAO,EAAE;oBACR,EAAE,EAAE,IAAI,CAAC,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,WAAW;oBACtB,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,EAAE;oBACR,QAAQ,EAAE,EAAE;oBACZ,IAAI,EAAE,CAAC;iBACP;gBACD,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC;aAC3B,CAAC,CAAC,CAAC;YACL,EAAE,CAAC;QAEJ,sBAAsB;QACtB,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC9E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACvB,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC7D,IAAI,UAAU,EAAE,CAAC;wBAChB,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;wBACjC,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;wBACvC,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,IAAI;4BACnC,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,SAAS;gCAC7B,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI;gCACjC,CAAC,CAAC,UAAU,CAAC,IAAI;4BAClB,CAAC,CAAC,EAAE,CAAC;oBACP,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACtD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC;gBACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;gBAC5C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAChD,MAAM,cAAc,GACnB,WAAW,CAAC,MAAM;oBAClB,WAAW,CAAC,OAAO;oBACnB,OAAO,WAAW,CAAC,MAAM,KAAK,QAAQ;oBACtC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;gBAE3B,OAAO;oBACN,MAAM;oBACN,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;oBACnD,KAAK,EAAE,WAAW;iBAClB,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;gBACvD,YAAY,CAAC,EAAE,CAAC,CAAC,KAAK,CACrB,mCAAmC,EAAE,cAAc,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,eAAe,EAAE,CACjG,CAAC;gBACF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC7C,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CACjB,EAAU,EACV,IAAwD;QAExD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACtC,CAAC;QAED,gDAAgD;QAChD,IAAI,UAAU,GAAoB,EAAE,CAAC;QACrC,IAAI,CAAC;YACJ,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC;gBACrC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI;gBACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ;gBAClD,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI;aACtC,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,cAAc,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBAC5C,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAChE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;oBACrD,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACrD,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IACf,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,cAAc,GACnB,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAEpF,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,QAAQ,CAAC,MAExB,CAAC;YACF,2DAA2D;YAC3D,MAAM,OAAO,GAAoB;gBAChC,OAAO,EAAE,OAAO;gBAChB,QAAQ,EAAE,IAAI,IAAI,EAAE;gBACpB,MAAM,EAAE,QAAQ;aAChB,CAAC;YACF,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC5E,IAAI,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnD,CAAC;YACD,IAAI,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnD,CAAC;YACD,IAAI,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;gBAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YACjD,CAAC;YACD,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9D,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;YACxC,CAAC;YACD,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9D,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;YACxC,CAAC;YACD,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9D,MAAM,UAAU,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;gBAChE,OAAO,CAAC,EAAE,GAAG,UAAU,CAAC;YACzB,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,QAAQ,CAAC,MAAM,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,OAAe;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC3D,IAAI,WAAW,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;YACrE,CAAC;QACF,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC;QACjD,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,OAAe;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC/C,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC1E,IAAI,cAAc,EAAE,CAAC;gBACpB,QAAQ,CAAC,MAAM,GAAG,cAAc,CAAC;YAClC,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,OAAe;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC/C,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;QAEvC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC1E,IAAI,cAAc,EAAE,CAAC;gBACpB,QAAQ,CAAC,MAAM,GAAG,cAAc,CAAC;YAClC,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC;IACxB,CAAC;CACD"}
@@ -1 +1 @@
1
- import{storageInsertSchema,storageUpdateSchema}from"../db/schema/storages";import{providers}from"../utils/providers";import Cryptr from"cryptr";import{RemoteStrategy as RemoteSystemStrategy,LocalStrategy as LocalSystemStrategy}from"../strategies/system";import{generateUID}from"../utils/helpers";import{runCommand}from"../utils/runCommand";import{configService}from"./ConfigService";import{AppError,NotFoundError}from"../utils/AppError";export class StorageService{storageManager;systemManager;storageStore;planStore;constructor(storageManager,systemManager,storageStore,planStore){this.storageManager=storageManager,this.systemManager=systemManager,this.storageStore=storageStore,this.planStore=planStore}getSystemStrategy(deviceId){return"main"!==deviceId?new RemoteSystemStrategy(deviceId):new LocalSystemStrategy(this.systemManager)}async getStorages(){return await this.storageStore.getAll(!0,!0)}async getStorage(id){const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const decryptedCreds={};try{const cryptr=new Cryptr(configService.config.SECRET),credsObj=storage.credentials;credsObj&&Object.keys(credsObj).forEach(k=>{"string"==typeof credsObj[k]&&(decryptedCreds[k]=cryptr.decrypt(credsObj[k]))});const authTypes=providers[storage.type].authTypes;return{...storage,credentials:decryptedCreds,authTypes:authTypes}}catch(error){throw new AppError(500,"Could not decrypt your Storage Credentials Settings. Your Pluton Secret key may have changed or missing.")}}async getAvailableStorageTypes(){const providersWithoutLocal={...providers};delete providersWithoutLocal.local;return Object.keys(providersWithoutLocal).reduce((acc,key)=>({...acc,[key]:{name:providers[key].name,authTypes:providers[key].authTypes,settings:providers[key].settings,doc:providers[key].doc}}),{})}async createStorage(storagePayload){try{const id=generateUID();let parsedStorageData={...storagePayload,id:id};try{parsedStorageData=storageInsertSchema.parse(parsedStorageData)}catch(error){throw new AppError(400,"Invalid storage configuration provided. Check required fields.")}const{type:type,name:name,authType:authType,credentials:credentials,settings:settings,tags:tags}=parsedStorageData,remoteResult=await this.storageManager.createRemote(type,name,authType,credentials,settings);if(!remoteResult.success)throw new AppError(500,remoteResult.result||"Error creating remote storage.");const cryptr=new Cryptr(configService.config.SECRET),credsObj=credentials,encryptedCreds={};Object.keys(credsObj).forEach(k=>{encryptedCreds[k]=cryptr.encrypt(credsObj[k])});const storageId=generateUID();return await this.storageStore.create({id:storageId,name:name,type:type,settings:settings,credentials:encryptedCreds,authType:authType,tags:tags})}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Error creating storage.")}}async updateStorage(id,storagePayload){try{const existingStorage=await this.storageStore.getById(id);if(!existingStorage)throw new NotFoundError("Storage not found");let parsedStorageData={...storagePayload};try{parsedStorageData=storageUpdateSchema.parse(storagePayload)}catch(error){throw error}const{authType:authType,credentials:credentials,settings:settings,tags:tags}=parsedStorageData,devicesWithStorage=[],plansWithStorage=await this.planStore.getStoragePlans(existingStorage.id),deviceUpdateResult={};if(plansWithStorage&&plansWithStorage.length>0){plansWithStorage.forEach(async plan=>{plan.sourceId&&!devicesWithStorage.includes(plan.sourceId)&&devicesWithStorage.push(plan.sourceId)});const existingCreds=existingStorage?.credentials,decryptedOldCred={};try{if(existingCreds){const eCreds=existingCreds,cryptr=new Cryptr(configService.config.SECRET);Object.keys(eCreds||{}).forEach(k=>{decryptedOldCred[k]=cryptr.decrypt(eCreds[k])})}}catch(error){}const credsDifferent=JSON.stringify(decryptedOldCred)!==JSON.stringify(credentials),deviceUpdatePromises=devicesWithStorage.map(async sourceId=>{const strategy=this.getSystemStrategy(sourceId),updateRes=await strategy.updateRemoteStorage(existingStorage.name,{new:{...settings,...credsDifferent?credentials:{}},old:{...existingStorage.settings||{},...decryptedOldCred&&credsDifferent?decryptedOldCred:{}}});return deviceUpdateResult[sourceId]=updateRes,updateRes});await Promise.all(deviceUpdatePromises)}const cryptr=new Cryptr(configService.config.SECRET),credsObj=credentials,encryptedCreds={};Object.keys(credsObj).forEach(k=>{encryptedCreds[k]=cryptr.encrypt(credsObj[k])});return{storage:await this.storageStore.update(id,{settings:settings,credentials:encryptedCreds,tags:tags}),devicesUpdated:deviceUpdateResult}}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Error updating storage.")}}async deleteStorage(id){try{const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const storagePlans=await this.planStore.getStoragePlans(id);if(storagePlans&&storagePlans.length>0)throw new AppError(400,"There are Backup Plans dependent on this Storage. Please remove them before deleting the Storage.");const remoteResult=await this.storageManager.deleteRemote(storage.name);if(!remoteResult.success)throw new AppError(500,remoteResult.result||"Failed to delete remote storage");return await this.storageStore.delete(id),!0}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to delete storage")}}async verifyStorage(id){try{const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const verifyResult=await this.storageManager.verifyRemote(storage.name);if(!verifyResult.success)throw new AppError(500,verifyResult.result||"Failed to verify storage");return verifyResult.result}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to verify storage")}}async authorizeStorage(type){try{return await this.getRcloneStorageToken(type)}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to authorize storage")}}async getRcloneStorageToken(storageType){try{const tokenMatch=(await runCommand(["rclone","authorize",storageType,"--auth-no-open-browser"],void 0,log=>{})).match(/--->\n\n(.*?)\n\n<---/s);if(tokenMatch&&tokenMatch[1]){return JSON.parse(tokenMatch[1])}throw new Error(`Could not extract ${storageType} token from output`)}catch(error){throw new Error(`Failed to authorize ${storageType}: ${error.message}`)}}}
1
+ import{storageInsertSchema,storageUpdateSchema}from"../db/schema/storages";import{providers}from"../utils/providers";import Cryptr from"cryptr";import{RemoteStrategy as RemoteSystemStrategy,LocalStrategy as LocalSystemStrategy}from"../strategies/system";import{generateUID}from"../utils/helpers";import{runCommand}from"../utils/runCommand";import{configService}from"./ConfigService";import{AppError,NotFoundError}from"../utils/AppError";export class StorageService{storageManager;systemManager;storageStore;planStore;constructor(storageManager,systemManager,storageStore,planStore){this.storageManager=storageManager,this.systemManager=systemManager,this.storageStore=storageStore,this.planStore=planStore}getSystemStrategy(deviceId){return"main"!==deviceId?new RemoteSystemStrategy(deviceId):new LocalSystemStrategy(this.systemManager)}async getStorages(){return await this.storageStore.getAll(!0,!0)}async getStorage(id){const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const decryptedCreds={};try{const cryptr=new Cryptr(configService.config.SECRET),credsObj=storage.credentials;credsObj&&Object.keys(credsObj).forEach(k=>{"string"==typeof credsObj[k]&&(decryptedCreds[k]=cryptr.decrypt(credsObj[k]))});const authTypes=providers[storage.type].authTypes;return{...storage,credentials:decryptedCreds,authTypes:authTypes}}catch(error){throw new AppError(500,"Could not decrypt your Storage Credentials Settings. Your Pluton Secret key may have changed or missing.")}}async getAvailableStorageTypes(){const providersWithoutLocal={...providers};delete providersWithoutLocal.local;return Object.keys(providersWithoutLocal).reduce((acc,key)=>({...acc,[key]:{name:providers[key].name,authTypes:providers[key].authTypes,settings:providers[key].settings,doc:providers[key].doc}}),{})}async createStorage(storagePayload){try{const id=generateUID();let parsedStorageData={...storagePayload,id:id};try{parsedStorageData=storageInsertSchema.parse(parsedStorageData)}catch(error){throw new AppError(400,"Invalid storage configuration provided. Check required fields.")}const{type:type,name:name,authType:authType,credentials:credentials,settings:settings,tags:tags}=parsedStorageData,remoteResult=await this.storageManager.createRemote(type,name,authType,credentials,settings);if(!remoteResult.success)throw new AppError(500,remoteResult.result||"Error creating remote storage.");const cryptr=new Cryptr(configService.config.SECRET),credsObj=credentials,encryptedCreds={};Object.keys(credsObj).forEach(k=>{encryptedCreds[k]=cryptr.encrypt(credsObj[k])});const storageId=generateUID();return await this.storageStore.create({id:storageId,name:name,type:type,settings:settings,credentials:encryptedCreds,authType:authType,tags:tags})}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Error creating storage.")}}async updateStorage(id,storagePayload){try{const existingStorage=await this.storageStore.getById(id);if(!existingStorage)throw new NotFoundError("Storage not found");let parsedStorageData={...storagePayload};try{parsedStorageData=storageUpdateSchema.parse(storagePayload)}catch(error){throw new AppError(400,"Invalid storage data provided")}const{authType:authType,credentials:credentials,settings:settings,tags:tags}=parsedStorageData,devicesWithStorage=[],plansWithStorage=await this.planStore.getStoragePlans(existingStorage.id),deviceUpdateResult={};if(plansWithStorage&&plansWithStorage.length>0){plansWithStorage.forEach(async plan=>{plan.sourceId&&!devicesWithStorage.includes(plan.sourceId)&&devicesWithStorage.push(plan.sourceId)});const existingCreds=existingStorage?.credentials,decryptedOldCred={};try{if(existingCreds){const eCreds=existingCreds,cryptr=new Cryptr(configService.config.SECRET);Object.keys(eCreds||{}).forEach(k=>{decryptedOldCred[k]=cryptr.decrypt(eCreds[k])})}}catch(error){}const credsDifferent=JSON.stringify(decryptedOldCred)!==JSON.stringify(credentials),deviceUpdatePromises=devicesWithStorage.map(async sourceId=>{const strategy=this.getSystemStrategy(sourceId),updateRes=await strategy.updateRemoteStorage(existingStorage.name,{new:{...settings,...credsDifferent?credentials:{}},old:{...existingStorage.settings||{},...decryptedOldCred&&credsDifferent?decryptedOldCred:{}}});return deviceUpdateResult[sourceId]=updateRes,updateRes});await Promise.all(deviceUpdatePromises)}const cryptr=new Cryptr(configService.config.SECRET),credsObj=credentials,encryptedCreds={};Object.keys(credsObj).forEach(k=>{encryptedCreds[k]=cryptr.encrypt(credsObj[k])});return{storage:await this.storageStore.update(id,{settings:settings,credentials:encryptedCreds,tags:tags}),devicesUpdated:deviceUpdateResult}}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Error updating storage.")}}async deleteStorage(id){try{const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const storagePlans=await this.planStore.getStoragePlans(id);if(storagePlans&&storagePlans.length>0)throw new AppError(400,"There are Backup Plans dependent on this Storage. Please remove them before deleting the Storage.");const remoteResult=await this.storageManager.deleteRemote(storage.name);if(!remoteResult.success)throw new AppError(500,remoteResult.result||"Failed to delete remote storage");return await this.storageStore.delete(id),!0}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to delete storage")}}async verifyStorage(id){try{const storage=await this.storageStore.getById(id);if(!storage)throw new NotFoundError("Storage not found");const verifyResult=await this.storageManager.verifyRemote(storage.name);if(!verifyResult.success)throw new AppError(500,verifyResult.result||"Failed to verify storage");return verifyResult.result}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to verify storage")}}async authorizeStorage(type){try{return await this.getRcloneStorageToken(type)}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to authorize storage")}}async getRcloneStorageToken(storageType){try{const tokenMatch=(await runCommand(["rclone","authorize",storageType,"--auth-no-open-browser"],void 0,log=>{})).match(/--->\n\n(.*?)\n\n<---/s);if(tokenMatch&&tokenMatch[1]){return JSON.parse(tokenMatch[1])}throw new Error(`Could not extract ${storageType} token from output`)}catch(error){throw new Error(`Failed to authorize ${storageType}: ${error.message}`)}}}
@@ -1 +1 @@
1
- {"version":3,"file":"StorageService.js","sourceRoot":"","sources":["../../src/services/StorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EACN,cAAc,IAAI,oBAAoB,EACtC,aAAa,IAAI,mBAAmB,GAEpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,MAAM,OAAO,cAAc;IAEf;IACA;IACA;IACA;IAJX,YACW,cAAkC,EAClC,aAAgC,EAChC,YAA0B,EAC1B,SAAoB;QAHpB,mBAAc,GAAd,cAAc,CAAoB;QAClC,kBAAa,GAAb,aAAa,CAAmB;QAChC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,cAAS,GAAT,SAAS,CAAW;IAC5B,CAAC;IAEJ,iBAAiB,CAAC,QAAgB;QACjC,MAAM,QAAQ,GAAG,QAAQ,KAAK,MAAM,CAAC;QACrC,OAAO,QAAQ;YACd,CAAC,CAAC,IAAI,oBAAoB,CAAC,QAAQ,CAAC;YACpC,CAAC,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,UAAU,CACf,EAAU;QAEV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,cAAc,GAA2B,EAAE,CAAC;QAClD,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;YAErC,IAAI,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;oBAC3C,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;wBACrC,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,IAAc,CAAC,CAAC,SAAS,CAAC;YAC9D,OAAO,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CACjB,GAAG,EACH,0GAA0G,CAC1G,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC7B,MAAM,qBAAqB,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;QAC/C,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,CACvD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACd,GAAG,GAAG;YACN,CAAC,GAAG,CAAC,EAAE;gBACN,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI;gBACzB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS;gBACnC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ;gBACjC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG;aACvB;SACD,CAAC,EACF,EAAE,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IACf,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,cAAgC;QACnD,kCAAkC;QAClC,IAAI,CAAC;YACJ,0CAA0C;YAC1C,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;YACzB,IAAI,iBAAiB,GAAG,EAAE,GAAG,cAAc,EAAE,EAAE,EAAE,CAAC;YAClD,IAAI,CAAC;gBACJ,iBAAiB,GAAG,mBAAmB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;gBACpD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,gEAAgE,CAAC,CAAC;YAC3F,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,iBAAiB,CAAC;YAChF,wCAAwC;YACxC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAC1D,IAAc,EACd,IAAc,EACd,QAAkB,EAClB,WAAqC,EACrC,QAAkC,CAClC,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;gBAC3B,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,IAAI,gCAAgC,CAAC,CAAC;YAClF,CAAC;YAED,8BAA8B;YAC9B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,WAAqC,CAAC;YACvD,MAAM,cAAc,GAA2B,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACjC,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,qCAAqC;YACrC,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC;YAChC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBACjD,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,IAAc;gBACpB,IAAI,EAAE,IAAc;gBACpB,QAAQ,EAAE,QAAkC;gBAC5C,WAAW,EAAE,cAAc;gBAC3B,QAAQ,EAAE,QAAkB;gBAC5B,IAAI,EAAE,IAAgB;aACtB,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACnB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,yBAAyB,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,aAAa,CAClB,EAAU,EACV,cAAgC;QAEhC,IAAI,CAAC;YACJ,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACtB,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAC9C,CAAC;YACD,0CAA0C;YAC1C,IAAI,iBAAiB,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;YAC9C,IAAI,CAAC;gBACJ,iBAAiB,GAAG,mBAAmB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC/D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;gBACjD,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,iBAAiB,CAAC;YACpE,kDAAkD;YAClD,MAAM,kBAAkB,GAAa,EAAE,CAAC;YACxC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAClF,MAAM,kBAAkB,GAMpB,EAAE,CAAC;YACP,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrD,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;oBACrC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAClE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACxC,CAAC;gBACF,CAAC,CAAC,CAAC;gBAEH,kCAAkC;gBAClC,MAAM,aAAa,GAAG,eAAe,EAAE,WAAW,CAAC;gBACnD,MAAM,gBAAgB,GAA2B,EAAE,CAAC;gBACpD,IAAI,CAAC;oBACJ,IAAI,aAAa,EAAE,CAAC;wBACnB,MAAM,MAAM,GAAG,aAAuC,CAAC;wBACvD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;wBACjE,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;4BACrC,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;wBACjD,CAAC,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;gBACpE,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,cAAc,GACnB,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;gBAEjF,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;oBACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAClD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE;wBAC1E,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;wBAC5D,GAAG,EAAE;4BACJ,GAAG,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC;4BACnC,GAAG,CAAC,gBAAgB,IAAI,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC/D;qBACD,CAAC,CAAC;oBACH,kBAAkB,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;oBACzC,OAAO,SAAS,CAAC;gBAClB,CAAC,CAAC,CAAC;gBAEH,0CAA0C;gBAC1C,MAAM,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YACzC,CAAC;YAED,8BAA8B;YAC9B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,WAAqC,CAAC;YACvD,MAAM,cAAc,GAA2B,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACjC,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE;gBACzD,QAAQ,EAAE,QAAkC;gBAC5C,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,IAAgB;aACtB,CAAC,CAAC;YAEH,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;QACxE,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,yBAAyB,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC7B,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAC9C,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAE9D,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,QAAQ,CACjB,GAAG,EACH,mGAAmG,CACnG,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;gBAC3B,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,IAAI,iCAAiC,CAAC,CAAC;YACnF,CAAC;YAED,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEnC,OAAO,IAAI,CAAC;QACb,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,0BAA0B,CAAC,CAAC;QACvE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC7B,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAC9C,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;gBAC3B,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,IAAI,0BAA0B,CAAC,CAAC;YAC5E,CAAC;YACD,OAAO,YAAY,CAAC,MAAM,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,0BAA0B,CAAC,CAAC;QACvE,CAAC;IACF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAY;QAClC,IAAI,CAAC;YACJ,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC9D,OAAO,cAAc,CAAC;QACvB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,6BAA6B,CAAC,CAAC;QAC1E,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,WAAmB;QACtD,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,UAAU,CAC9B,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,wBAAwB,CAAC,EAC9D,SAAS,EACT,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAClC,CAAC;YAEF,8CAA8C;YAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC1D,IAAI,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,OAAO,SAAS,CAAC;YAClB,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,qBAAqB,WAAW,oBAAoB,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,WAAW,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"StorageService.js","sourceRoot":"","sources":["../../src/services/StorageService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@plutonhq/core-backend",
3
3
  "description": "Pluton Core Backend Library",
4
- "version": "0.1.10",
4
+ "version": "0.1.11",
5
5
  "author": "plutonhq",
6
6
  "license": "Apache-2.0",
7
7
  "publishConfig": {
@@ -33,7 +33,7 @@
33
33
  "nodemailer": "8.0.1",
34
34
  "pino": "^9.6.0",
35
35
  "systeminformation": "^5.31.0",
36
- "tsx": "^4.19.2",
36
+ "tsx": "^4.21.0",
37
37
  "zod": "^4.1.12"
38
38
  },
39
39
  "devDependencies": {
@@ -61,9 +61,9 @@
61
61
  "prettier": "^3.4.2",
62
62
  "supertest": "^7.2.2",
63
63
  "terser": "^5.44.1",
64
- "ts-jest": "^29.4.5",
65
- "typescript": "^5.7.3",
66
- "typescript-eslint": "^8.46.2"
64
+ "ts-jest": "^29.4.6",
65
+ "typescript": "^5.9.3",
66
+ "typescript-eslint": "^8.56.0"
67
67
  },
68
68
  "exports": {
69
69
  ".": {