@plutonhq/core-backend 0.1.2 → 0.1.4
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.
- package/dist/controllers/RestoreController.js +1 -1
- package/dist/controllers/RestoreController.js.map +1 -1
- package/dist/createApp.d.ts.map +1 -1
- package/dist/createApp.js +1 -1
- package/dist/createApp.js.map +1 -1
- package/dist/jobs/systemJobs.js +1 -1
- package/dist/jobs/systemJobs.js.map +1 -1
- package/dist/services/BackupServices.d.ts +1 -2
- package/dist/services/BackupServices.d.ts.map +1 -1
- package/dist/services/BackupServices.js +1 -1
- package/dist/services/BackupServices.js.map +1 -1
- package/dist/services/DeviceService.d.ts +1 -2
- package/dist/services/DeviceService.d.ts.map +1 -1
- package/dist/services/DeviceService.js +1 -1
- package/dist/services/DeviceService.js.map +1 -1
- package/dist/services/PlanService.d.ts +3 -2
- package/dist/services/PlanService.d.ts.map +1 -1
- package/dist/services/PlanService.js +1 -1
- package/dist/services/PlanService.js.map +1 -1
- package/dist/services/RestoreService.d.ts +1 -2
- package/dist/services/RestoreService.d.ts.map +1 -1
- package/dist/services/RestoreService.js +1 -1
- package/dist/services/RestoreService.js.map +1 -1
- package/dist/services/StorageService.d.ts +1 -2
- package/dist/services/StorageService.d.ts.map +1 -1
- package/dist/services/StorageService.js +1 -1
- package/dist/services/StorageService.js.map +1 -1
- package/dist/services/events/DownloadEventService.d.ts +12 -0
- package/dist/services/events/DownloadEventService.d.ts.map +1 -0
- package/dist/services/events/DownloadEventService.js +1 -0
- package/dist/services/events/DownloadEventService.js.map +1 -0
- package/dist/services/listeners/DownloadEventListener.d.ts +2 -0
- package/dist/services/listeners/DownloadEventListener.d.ts.map +1 -1
- package/dist/services/listeners/DownloadEventListener.js +1 -1
- package/dist/services/listeners/DownloadEventListener.js.map +1 -1
- package/dist/stores/RestoreStore.d.ts +1 -0
- package/dist/stores/RestoreStore.d.ts.map +1 -1
- package/dist/stores/RestoreStore.js +1 -1
- package/dist/stores/RestoreStore.js.map +1 -1
- package/dist/strategies/backup/RemoteStrategy.d.ts +1 -2
- package/dist/strategies/backup/RemoteStrategy.d.ts.map +1 -1
- package/dist/strategies/backup/RemoteStrategy.js +1 -1
- package/dist/strategies/backup/RemoteStrategy.js.map +1 -1
- package/dist/strategies/restore/RemoteStrategy.d.ts +1 -2
- package/dist/strategies/restore/RemoteStrategy.d.ts.map +1 -1
- package/dist/strategies/restore/RemoteStrategy.js +1 -1
- package/dist/strategies/restore/RemoteStrategy.js.map +1 -1
- package/dist/strategies/snapshot/RemoteStrategy.d.ts +2 -3
- package/dist/strategies/snapshot/RemoteStrategy.d.ts.map +1 -1
- package/dist/strategies/snapshot/RemoteStrategy.js +1 -1
- package/dist/strategies/snapshot/RemoteStrategy.js.map +1 -1
- package/dist/strategies/system/RemoteStrategy.d.ts +1 -2
- package/dist/strategies/system/RemoteStrategy.d.ts.map +1 -1
- package/dist/strategies/system/RemoteStrategy.js +1 -1
- package/dist/strategies/system/RemoteStrategy.js.map +1 -1
- package/dist/utils/copyFiles.d.ts.map +1 -1
- package/dist/utils/copyFiles.js +1 -1
- package/dist/utils/copyFiles.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
export class RestoreController{restoreService;constructor(restoreService){this.restoreService=restoreService}async listRestores(req,res){try{const result=await this.restoreService.getAllRestores();res.json({success:!0,result:result})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restores"})}}async getRestore(req,res){try{req.params.id||res.status(400).json({success:!1,error:"Restore ID is required"});const restore=await this.restoreService.getRestore(req.params.id);if(!restore)return void res.status(404).json({success:!1,error:"Restore not found"});res.json({success:!0,result:restore})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restore"})}}async getRestoreStats(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Restore ID is required"});const statsRes=await this.restoreService.getRestoreStats(req.params.id);statsRes.success?res.json({success:!0,result:statsRes.result}):res.status(404).json({success:!1,error:"string"==typeof statsRes.result?statsRes.result:"Restore stats not found"})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restore stats"})}}async deleteRestore(req,res){try{req.params.id||res.status(400).json({success:!1,error:"Restore ID is required"}),await this.restoreService.deleteRestore(req.params.id),res.json({success:!0})}catch(error){res.status(500).json({success:!1,error:"Failed to delete restore"})}}async performDryRestore(req,res){const restorePayload=req.body;if(restorePayload&&restorePayload.backupId&&restorePayload.planId)try{const restoreResult=await this.restoreService.dryRestoreBackup(restorePayload.backupId,{target:restorePayload.target,overwrite:restorePayload.overwrite,includes:restorePayload.includes||[],excludes:restorePayload.excludes||[],delete:restorePayload.delete||!1});res.status(200).json({success:!0,result:restoreResult})}catch(error){res.status(500).json({success:!1,error:"Failed to restore
|
|
1
|
+
export class RestoreController{restoreService;constructor(restoreService){this.restoreService=restoreService}async listRestores(req,res){try{const result=await this.restoreService.getAllRestores();res.json({success:!0,result:result})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restores"})}}async getRestore(req,res){try{req.params.id||res.status(400).json({success:!1,error:"Restore ID is required"});const restore=await this.restoreService.getRestore(req.params.id);if(!restore)return void res.status(404).json({success:!1,error:"Restore not found"});res.json({success:!0,result:restore})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restore"})}}async getRestoreStats(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Restore ID is required"});const statsRes=await this.restoreService.getRestoreStats(req.params.id);statsRes.success?res.json({success:!0,result:statsRes.result}):res.status(404).json({success:!1,error:"string"==typeof statsRes.result?statsRes.result:"Restore stats not found"})}catch(error){res.status(500).json({success:!1,error:"Failed to fetch restore stats"})}}async deleteRestore(req,res){try{req.params.id||res.status(400).json({success:!1,error:"Restore ID is required"}),await this.restoreService.deleteRestore(req.params.id),res.json({success:!0})}catch(error){res.status(500).json({success:!1,error:"Failed to delete restore"})}}async performDryRestore(req,res){const restorePayload=req.body;if(restorePayload&&restorePayload.backupId&&restorePayload.planId)try{const restoreResult=await this.restoreService.dryRestoreBackup(restorePayload.backupId,{target:restorePayload.target,overwrite:restorePayload.overwrite,includes:restorePayload.includes||[],excludes:restorePayload.excludes||[],delete:restorePayload.delete||!1});res.status(200).json({success:!0,result:restoreResult})}catch(error){res.status(500).json({success:!1,error:"Failed to perform dry restore. "+(error.message||"")})}else res.status(400).json({success:!1,error:"Required fields missing: backupId, planId"})}async performRestore(req,res){const restorePayload=req.body;if(restorePayload&&restorePayload.backupId&&restorePayload.planId)try{const restoreResult=await this.restoreService.restoreBackup(restorePayload.backupId,{target:restorePayload.target,overwrite:restorePayload.overwrite,includes:restorePayload.includes||[],excludes:restorePayload.excludes||[],delete:restorePayload.delete||!1});res.status(200).json({success:!0,result:restoreResult})}catch(error){res.status(500).json({success:!1,error:"Failed to restore backup"})}else res.status(400).json({success:!1,error:"Required fields missing: Backup or Plan Id."})}async getRestoreProgress(req,res){if(req.params.id&&req.query.sourceId&&req.query.sourceType&&req.query.planId)try{const progressRes=await this.restoreService.getRestoreProgress(req.params.id);res.status(200).json(progressRes)}catch(error){res.status(500).json({success:!1,error:"Failed to retrieve Backup Progress"})}else res.status(400).json({success:!1,error:"Backup, Device or Plan ID is missing"})}async cancelRestore(req,res){if(req.params.id)try{const cancelResult=await this.restoreService.cancelRestore(req.params.id);return void res.status(200).json(cancelResult)}catch(error){res.status(500).json({success:!1,error:"Failed to cancel Download Generation. "+(error.message||"")})}else res.status(400).json({success:!1,error:"Backup ID or Restore ID is required"})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestoreController.js","sourceRoot":"","sources":["../../src/controllers/RestoreController.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RestoreController.js","sourceRoot":"","sources":["../../src/controllers/RestoreController.ts"],"names":[],"mappings":"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"}
|
package/dist/createApp.d.ts.map
CHANGED
|
@@ -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;AAgDhD,wBAAsB,SAAS,IAAI,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../src/createApp.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAgDhD,wBAAsB,SAAS,IAAI,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC,CAiI3D"}
|
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 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,
|
|
1
|
+
import path from"path";import{fileURLToPath}from"url";import express from"express";import cors from"cors";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 __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});return app.use("/api/",apiLimiter),app.use("/api/setup",createSetupRouter(setupController)),app.use("/api/user",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("*",(req,res)=>{res.sendFile(path.join(publicPath,"index.html"))}),systemTaskManager.initialize(),jobProcessor.registerTasks({backupManager:localPlanAgent,restoreManager:localRestoreAgent}),jobProcessor.start(),{app:app}}
|
package/dist/createApp.js.map
CHANGED
|
@@ -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":"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"}
|
package/dist/jobs/systemJobs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const SYSTEM_JOBS=[];
|
|
1
|
+
export const SYSTEM_JOBS=[{name:"CleanDownloads",schedule:"0 2 * * *",maxAttempts:2,retryDelay:3e5}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemJobs.js","sourceRoot":"","sources":["../../src/jobs/systemJobs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAsB;
|
|
1
|
+
{"version":3,"file":"systemJobs.js","sourceRoot":"","sources":["../../src/jobs/systemJobs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC7C;QACC,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,WAAW,EAAE,uBAAuB;QAC9C,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,MAAM;KAClB;IACD,IAAI;IACJ,0BAA0B;IAC1B,kDAAkD;IAClD,mBAAmB;IACnB,KAAK;IACL,IAAI;IACJ,0BAA0B;IAC1B,kDAAkD;IAClD,mBAAmB;IACnB,uBAAuB;IACvB,KAAK;IACL,6BAA6B;CAC7B,CAAC"}
|
|
@@ -15,8 +15,7 @@ export declare class BackupService {
|
|
|
15
15
|
protected backupStore: BackupStore;
|
|
16
16
|
protected restoreStore: RestoreStore;
|
|
17
17
|
protected storageStore: StorageStore;
|
|
18
|
-
|
|
19
|
-
constructor(localSnapshotAgent: BaseSnapshotManager, localPlanAgent: BaseBackupManager, planStore: PlanStore, backupStore: BackupStore, restoreStore: RestoreStore, storageStore: StorageStore, broker: any);
|
|
18
|
+
constructor(localSnapshotAgent: BaseSnapshotManager, localPlanAgent: BaseBackupManager, planStore: PlanStore, backupStore: BackupStore, restoreStore: RestoreStore, storageStore: StorageStore);
|
|
20
19
|
getSnapshotStrategy(deviceId: string, method?: string): SnapshotStrategy;
|
|
21
20
|
getBackupStrategy(deviceId: string): BackupStrategy;
|
|
22
21
|
deleteBackup(backupId: string, removeSnapshot?: boolean): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackupServices.d.ts","sourceRoot":"","sources":["../../src/services/BackupServices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACN,gBAAgB,EAGhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,cAAc,EAGd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"BackupServices.d.ts","sourceRoot":"","sources":["../../src/services/BackupServices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACN,gBAAgB,EAGhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,cAAc,EAGd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,qBAAa,aAAa;IAExB,SAAS,CAAC,kBAAkB,EAAE,mBAAmB;IACjD,SAAS,CAAC,cAAc,EAAE,iBAAiB;IAC3C,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY;IACpC,SAAS,CAAC,YAAY,EAAE,YAAY;gBAL1B,kBAAkB,EAAE,mBAAmB,EACvC,cAAc,EAAE,iBAAiB,EACjC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAGrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,gBAAgB;IAOxE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAO7C,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAE,OAAe;;;;;;;;IAoC9D,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkBjD,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAmBtD,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiBpE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;IAgC7C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBjD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA2B3D,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAWnE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAiBxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{sql}from"drizzle-orm";import{RemoteStrategy as RemoteSnapshotStrategy,LocalStrategy as LocalSnapshotStrategy}from"../strategies/snapshot";import{RemoteStrategy as RemoteBackupStrategy,LocalStrategy as LocalBackupStrategy}from"../strategies/backup";import{jobQueue}from"../jobs/JobQueue";export class BackupService{localSnapshotAgent;localPlanAgent;planStore;backupStore;restoreStore;storageStore;
|
|
1
|
+
import{sql}from"drizzle-orm";import{RemoteStrategy as RemoteSnapshotStrategy,LocalStrategy as LocalSnapshotStrategy}from"../strategies/snapshot";import{RemoteStrategy as RemoteBackupStrategy,LocalStrategy as LocalBackupStrategy}from"../strategies/backup";import{jobQueue}from"../jobs/JobQueue";export class BackupService{localSnapshotAgent;localPlanAgent;planStore;backupStore;restoreStore;storageStore;constructor(localSnapshotAgent,localPlanAgent,planStore,backupStore,restoreStore,storageStore){this.localSnapshotAgent=localSnapshotAgent,this.localPlanAgent=localPlanAgent,this.planStore=planStore,this.backupStore=backupStore,this.restoreStore=restoreStore,this.storageStore=storageStore}getSnapshotStrategy(deviceId,method){return"main"!==deviceId?new RemoteSnapshotStrategy(deviceId):new LocalSnapshotStrategy(this.localSnapshotAgent)}getBackupStrategy(deviceId){return"main"!==deviceId?new RemoteBackupStrategy(deviceId):new LocalBackupStrategy(this.localPlanAgent)}async deleteBackup(backupId,removeSnapshot=!1){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const strategy=this.getSnapshotStrategy(backup.sourceId,backup.method),storageName=await this.getStorageName(backup.storageId),removeResult=await strategy.removeSnapshot(backup.planId,backupId,{storageName:storageName,storagePath:backup.storagePath||"",encryption:backup.encryption||!0,planId:backup.planId});return removeResult.stats&&await this.planStore.update(backup.planId,{stats:{size:removeResult.stats.total_size,snapshots:removeResult.stats.snapshots}}),await this.backupStore.delete(backup.id),removeResult}async getBackupDownload(backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getSnapshotStrategy(backupDevice,backup.method),downloadResult=await strategy.getSnapshotDownload(backup.planId,backupId);if(!downloadResult.success)throw new Error("string"==typeof downloadResult.result?downloadResult.result:"Failed to get Backup Download");return downloadResult.result}async generateBackupDownload(backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getSnapshotStrategy(backupDevice,backup.method),storageName=await this.getStorageName(backup.storageId),downloadResult=await strategy.downloadSnapshot(backup.planId,backupId,"",{storageName:storageName,storagePath:backup.storagePath,encryption:backup.encryption||!0});if(!downloadResult.success)throw new Error(downloadResult.result||"Failed to generate Download Link");return downloadResult.result}async cancelBackupDownload(planId,backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getSnapshotStrategy(backupDevice,backup.method),downloadResult=await strategy.cancelSnapshotDownload(planId,backupId);if(!downloadResult.success)throw new Error(downloadResult.result||"Failed to cancel Download");return await this.backupStore.update(backup.id,{download:null}),downloadResult.result}async cancelBackup(planId,backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getBackupStrategy(backupDevice),cancelResult=strategy.cancelBackup?await strategy.cancelBackup(planId,backupId):{success:!1,result:""};if(!cancelResult.success)throw new Error(cancelResult.result||"Failed to cancel backup");return"main"===backupDevice&&(jobQueue.remove("Backup",planId),jobQueue.remove("RescueBackup",planId)),await this.backupStore.update(backup.id,{status:"cancelled",inProgress:!1,ended:sql`(unixepoch())`}),cancelResult}async getBackupProgress(backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getBackupStrategy(backupDevice),progressResult=strategy.getBackupProgress?await strategy.getBackupProgress(backup.planId,backupId):{success:!1,result:""};if(!progressResult.success)throw new Error(progressResult.result||"Failed to get Backup Progress");return progressResult.result}async getSnapshotFiles(backupId){const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getSnapshotStrategy(backupDevice),storageName=await this.getStorageName(backup.storageId),snapshotFilesResult=await strategy.getSnapshotFiles(backup.planId,backup.id,{storageName:storageName,storagePath:backup.storagePath,encryption:backup.encryption});if(!snapshotFilesResult.success||!Array.isArray(snapshotFilesResult.result))throw new Error("string"==typeof snapshotFilesResult.result?snapshotFilesResult.result:"Failed to get Snapshot Files");return snapshotFilesResult.result}async updateBackup(backupId,data){if(!await this.backupStore.getById(backupId))throw new Error("Backup not found");const title=data.title?.trim()||"",description=data.description?.trim()||"";return await this.backupStore.update(backupId,{title:title,description:description})}async getStorageName(storageId){let storageName="";if("local"!==storageId)try{const storage=await this.storageStore.getById(storageId);storage?.name&&(storageName=storage.name)}catch(error){return storageName}else storageName="local";return storageName}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackupServices.js","sourceRoot":"","sources":["../../src/services/BackupServices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAMlC,OAAO,EAEN,cAAc,IAAI,sBAAsB,EACxC,aAAa,IAAI,qBAAqB,GACtC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEN,cAAc,IAAI,oBAAoB,EACtC,aAAa,IAAI,mBAAmB,GACpC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,MAAM,OAAO,aAAa;
|
|
1
|
+
{"version":3,"file":"BackupServices.js","sourceRoot":"","sources":["../../src/services/BackupServices.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,9 +10,8 @@ export declare class DeviceService {
|
|
|
10
10
|
protected deviceStore: DeviceStore;
|
|
11
11
|
protected planStore: PlanStore;
|
|
12
12
|
protected storageStore: StorageStore;
|
|
13
|
-
protected broker: any;
|
|
14
13
|
protected connectedDeviceIds: Set<string> | undefined;
|
|
15
|
-
constructor(localSystemManager: BaseSystemManager, deviceStore: DeviceStore, planStore: PlanStore, storageStore: StorageStore
|
|
14
|
+
constructor(localSystemManager: BaseSystemManager, deviceStore: DeviceStore, planStore: PlanStore, storageStore: StorageStore);
|
|
16
15
|
getSystemStrategy(deviceId: string): SystemStrategy;
|
|
17
16
|
/**
|
|
18
17
|
* Retrieves all devices.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceService.d.ts","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"AAAA,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;AAGtD,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"DeviceService.d.ts","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"AAAA,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;AAGtD,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,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAWrD,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{DeviceLogger}from"../utils/logger";import{LocalStrategy,RemoteStrategy}from"../strategies/system";import{providers}from"../utils/providers";export class DeviceService{localSystemManager;deviceStore;planStore;storageStore;
|
|
1
|
+
import{DeviceLogger}from"../utils/logger";import{LocalStrategy,RemoteStrategy}from"../strategies/system";import{providers}from"../utils/providers";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,path){if(!await this.deviceStore.getById(id))throw new Error("Device not found.");const strategy=this.getSystemStrategy(id);return await strategy.getBrowsePath(path)}async getMountPoints(id){if(!await this.deviceStore.getById(id))throw new Error("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 Error("Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRestic(),updatedVersion=response.result;if(!response.success)throw new Error("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 Error("Device not found.");const strategy=this.getSystemStrategy(id),response=await strategy.updateRclone(),updatedVersion=response.result;if(!response.success)throw new Error("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":"AAKA,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;AAE/C,MAAM,OAAO,aAAa;
|
|
1
|
+
{"version":3,"file":"DeviceService.js","sourceRoot":"","sources":["../../src/services/DeviceService.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { BaseBackupManager } from '../managers/BaseBackupManager';
|
|
|
2
2
|
import { PlanStore } from '../stores/PlanStore';
|
|
3
3
|
import { BackupStore } from '../stores/BackupStore';
|
|
4
4
|
import { StorageStore } from '../stores/StorageStore';
|
|
5
|
+
import { RestoreStore } from '../stores/RestoreStore';
|
|
5
6
|
import { Plan, NewPlan } from '../db/schema/plans';
|
|
6
7
|
import { NewPlanReq, PlanLogItem } from '../types/plans';
|
|
7
8
|
import { DeviceStore } from '../stores/DeviceStore';
|
|
@@ -17,8 +18,8 @@ export declare class PlanService {
|
|
|
17
18
|
protected backupStore: BackupStore;
|
|
18
19
|
protected storageStore: StorageStore;
|
|
19
20
|
protected deviceStore: DeviceStore;
|
|
20
|
-
protected
|
|
21
|
-
constructor(localAgent: BaseBackupManager, planStore: PlanStore, backupStore: BackupStore, storageStore: StorageStore, deviceStore: DeviceStore,
|
|
21
|
+
protected restoreStore: RestoreStore;
|
|
22
|
+
constructor(localAgent: BaseBackupManager, planStore: PlanStore, backupStore: BackupStore, storageStore: StorageStore, deviceStore: DeviceStore, restoreStore: RestoreStore);
|
|
22
23
|
getStrategy(plan: NewPlan | Plan): BackupStrategy | any;
|
|
23
24
|
getPlan(planId: string, history?: boolean): Promise<Plan | null>;
|
|
24
25
|
getAllPlans(history?: boolean): Promise<Plan[] | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanService.d.ts","sourceRoot":"","sources":["../../src/services/PlanService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAsC,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAkB,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMzE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMtD;;;;GAIG;AACH,qBAAa,WAAW;
|
|
1
|
+
{"version":3,"file":"PlanService.d.ts","sourceRoot":"","sources":["../../src/services/PlanService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAsC,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAkB,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMzE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMtD;;;;GAIG;AACH,qBAAa,WAAW;IAEtB,SAAS,CAAC,UAAU,EAAE,iBAAiB;IACvC,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY;IACpC,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY;gBAL1B,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY;IAGrC,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,cAAc,GAAG,GAAG;IAO1C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAQtE,WAAW,CAAC,OAAO,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC;IAK5D,2BAA2B,CACvC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,QAAQ,GAAG,SAAS,GACxB,OAAO,CAAC,OAAO,CAAC;IAOnB;;OAEG;IACU,UAAU,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAyF5D;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2D/E;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCpF;;OAEG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBzD;;OAEG;IACU,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB1D;;OAEG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvD;;OAEG;IACU,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BtF;;OAEG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC;IA8C5E;;OAEG;IACU,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;YAyB/D,iBAAiB;CAc/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createReadStream}from"fs";import{access,constants,readFile}from"fs/promises";import{planInsertSchema,planUpdateSchema}from"../db/schema/plans";import{planLogger}from"../utils/logger";import{generateUID}from"../utils/helpers";import{intervalToCron}from"../utils/intervalToCron";import{LocalStrategy as LocalBackupStrategy}from"../strategies/backup/LocalStrategy";import{RemoteStrategy as RemoteBackupStrategy}from"../strategies/backup/RemoteStrategy";import{appPaths}from"../utils/AppPaths";import{AppError,NotFoundError}from"../utils/AppError";import{sanitizeStoragePath}from"../utils/sanitizeStoragePath";export class PlanService{localAgent;planStore;backupStore;storageStore;deviceStore;
|
|
1
|
+
import{createReadStream}from"fs";import{access,constants,readFile}from"fs/promises";import{planInsertSchema,planUpdateSchema}from"../db/schema/plans";import{planLogger}from"../utils/logger";import{generateUID}from"../utils/helpers";import{intervalToCron}from"../utils/intervalToCron";import{LocalStrategy as LocalBackupStrategy}from"../strategies/backup/LocalStrategy";import{RemoteStrategy as RemoteBackupStrategy}from"../strategies/backup/RemoteStrategy";import{appPaths}from"../utils/AppPaths";import{AppError,NotFoundError}from"../utils/AppError";import{sanitizeStoragePath}from"../utils/sanitizeStoragePath";export class PlanService{localAgent;planStore;backupStore;storageStore;deviceStore;restoreStore;constructor(localAgent,planStore,backupStore,storageStore,deviceStore,restoreStore){this.localAgent=localAgent,this.planStore=planStore,this.backupStore=backupStore,this.storageStore=storageStore,this.deviceStore=deviceStore,this.restoreStore=restoreStore}getStrategy(plan){return"main"!==plan.sourceId?new RemoteBackupStrategy(plan.sourceId):new LocalBackupStrategy(this.localAgent)}async getPlan(planId,history=!0){const result=await this.planStore.getById(planId,history);if(!result)throw new NotFoundError("Plan not found");return result}async getAllPlans(history=!0){return await this.planStore.getAll(history)}async checkActiveBackupsOrRestore(planId,type){return"restore"===type?await this.planStore.hasActiveRestore(planId):await this.planStore.hasActiveBackups(planId)}async createPlan(planData){const planId=generateUID(),{title:title,description:description,storage:storage,storagePath:storagePath,sourceConfig:sourceConfig,sourceId:sourceId,sourceType:sourceType,method:method,settings:settings,tags:tags=[]}=planData,planStorage=await this.getStorageDetails(planData.storage.id);if(!planStorage.name||!planStorage.type)throw new NotFoundError("Storage not found.");let theStoragePath=sanitizeStoragePath(storagePath,planStorage.type),newPlanData={id:planId,title:title.trim(),description:description?.trim()||"",storageId:storage.id,storagePath:theStoragePath,method:method,sourceConfig:sourceConfig,sourceId:sourceId,sourceType:sourceType,settings:settings,tags:tags};try{const parsedPlanData=planInsertSchema.parse(newPlanData);newPlanData={...parsedPlanData,sourceType:parsedPlanData.sourceType}}catch(error){throw error}if(!await this.deviceStore.getById(sourceId))throw new NotFoundError("Source device not found");const cronExpression=intervalToCron(planData.settings.interval),backupScheduleOptions={...newPlanData,isActive:!0,storage:planStorage,cronExpression:cronExpression};try{const strategy=this.getStrategy(newPlanData),creationRes=await strategy.createBackup(planId,backupScheduleOptions);if(!creationRes.success)throw new AppError(500,creationRes.result)}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Error creating backup schedule")}const createdPlan=await this.planStore.create(newPlanData);if(!createdPlan)throw new AppError(500,"Failed to save the new plan to the database.");return planLogger("create",planId).info("Backup Plan created."),createdPlan}async updatePlan(planId,planData){const currentPlan=await this.planStore.getById(planId);if(!currentPlan)throw new NotFoundError("Plan not found.");let parsedPlanData;try{const parsedData=planUpdateSchema.parse(planData);parsedPlanData={...parsedData,sourceType:parsedData.sourceType||currentPlan.sourceType}}catch(error){throw error}const updatedPlan=await this.planStore.update(planId,parsedPlanData);if(!updatedPlan)throw new AppError(500,"Failed to update plan in the database.");const planStorage=await this.getStorageDetails(currentPlan.storageId);if(!planStorage.name||!planStorage.type)throw new NotFoundError("Storage not found.");const planSettings=parsedPlanData.settings||currentPlan.settings,cronExpression=intervalToCron(planSettings.interval),backupScheduleOptions={...updatedPlan,storage:planStorage,cronExpression:cronExpression};try{const strategy=this.getStrategy(updatedPlan),updateRes=await strategy.updateBackup(planId,backupScheduleOptions);if(!updateRes.success)throw"main"!==updatedPlan.sourceId&&await this.planStore.update(planId,currentPlan),new AppError(500,updateRes.result);return planLogger("update",planId).info("Backup Plan updated by User."),updatedPlan}catch(error){if(error instanceof AppError)throw error;throw new AppError(500,error?.message||"Failed to update plan")}}async deletePlan(planId,removeRemoteData){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError("Plan not found.");const storageName=plan.storage?.name||"",options={storageName:"Local"===storageName||"Local Storage"===storageName?"local":storageName,storagePath:plan.storagePath||"",encryption:plan.settings.encryption||!0,removeRemoteData:removeRemoteData},strategy=this.getStrategy(plan),deleteResult=await strategy.removeBackup(planId,options);if(!deleteResult.success)throw new AppError(500,deleteResult.result);await this.restoreStore.deleteByPlanId(planId),await this.backupStore.deleteByPlanId(planId);const deleteRes=await this.planStore.delete(planId);if(!deleteRes)throw new AppError(500,"Failed to delete plan from the database.");return planLogger("delete",planId).info("Plan and associated data successfully deleted."),deleteRes}async performBackup(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);if(await this.planStore.hasActiveBackups(planId))throw new AppError(500,"A backup is already in progress for this plan.");const strategy=this.getStrategy(plan),performResult=await strategy.performBackup(planId);if(!performResult.success)throw new AppError(500,performResult.result)}async pruneBackups(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);const strategy=this.getStrategy(plan),pruneResult=await strategy.pruneBackups(planId);if(!pruneResult.success)throw new AppError(500,"string"==typeof pruneResult.result?pruneResult.result:"Error Pruning Backup");return planLogger("prune",planId).info("Backup Plan prune successfully performed."),pruneResult.result}async pauseBackup(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);const strategy=this.getStrategy(plan),pauseResult=await strategy.pauseBackup(planId);if(!pauseResult.success)throw new AppError(500,pauseResult.result);await this.planStore.setActive(planId,!1),planLogger("update",planId).info("Plan paused.")}async resumeBackup(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);const strategy=this.getStrategy(plan),resumeResult=await strategy.resumeBackup(planId);if(!resumeResult.success)throw new AppError(500,resumeResult.result);await this.planStore.setActive(planId,!0),planLogger("update",planId).info("Plan resumed.")}async unlockRepo(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);const strategy=this.getStrategy(plan);if(!strategy.unlockRepo)throw new AppError(501,'The "unlockRepo" feature is not implemented for this strategy.');const unlockResult=await strategy.unlockRepo(planId);return unlockResult.success?planLogger("unlock",planId).info("Repository unlocked successfully by user request."):planLogger("unlock",planId).error(`Failed to unlock repository: ${unlockResult.result}`),unlockResult}async getPlanLogs(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);if(plan){const logFilePath=`${appPaths.getLogsDir()}/plan-${plan.id}.log`;try{const rawLogs=await readFile(logFilePath,"utf-8");if(!rawLogs)throw new NotFoundError(`No logs found for plan with ID ${planId}`);return rawLogs.split(/\r?\n/).filter(line=>""!==line.trim()).map(line=>{try{const entry=JSON.parse(line);if(entry.time){const date=new Date(entry.time);entry.formattedTime=date.toLocaleString()}return entry}catch(e){return{raw:line}}})}catch(error){if("ENOENT"===error.code)throw new NotFoundError(`No logs found for plan with ID ${planId}`);throw error}}}async downloadPlanLogs(planId){const plan=await this.planStore.getById(planId);if(!plan)throw new NotFoundError(`Plan with ID ${planId} not found.`);const logFilePath=`${appPaths.getLogsDir()}/plan-${plan.id}.log`;try{await access(logFilePath,constants.F_OK);return createReadStream(logFilePath)}catch(error){if("ENOENT"===error.code)throw new NotFoundError("Log file not found");throw new AppError(403,error?.message||"Failed to access the log file")}}async getStorageDetails(storageId){const storage=await this.storageStore.getById(storageId);if(!storage)throw new NotFoundError("Storage not found");return{name:"local"===storage.id?"local":storage.name,type:storage.type,authType:storage.authType,settings:storage.settings,credentials:storage.credentials,defaultPath:storage.defaultPath}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanService.js","sourceRoot":"","sources":["../../src/services/PlanService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlanService.js","sourceRoot":"","sources":["../../src/services/PlanService.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,8 +14,7 @@ export declare class RestoreService {
|
|
|
14
14
|
protected backupStore: BackupStore;
|
|
15
15
|
protected restoreStore: RestoreStore;
|
|
16
16
|
protected storageStore: StorageStore;
|
|
17
|
-
|
|
18
|
-
constructor(localAgent: BaseRestoreManager, planStore: PlanStore, backupStore: BackupStore, restoreStore: RestoreStore, storageStore: StorageStore, broker: any);
|
|
17
|
+
constructor(localAgent: BaseRestoreManager, planStore: PlanStore, backupStore: BackupStore, restoreStore: RestoreStore, storageStore: StorageStore);
|
|
19
18
|
getRestoreStrategy(deviceId: string, method: string): RestoreStrategy;
|
|
20
19
|
getAllRestores(): Promise<{
|
|
21
20
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestoreService.d.ts","sourceRoot":"","sources":["../../src/services/RestoreService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAiC,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAkB,MAAM,mBAAmB,CAAC;AAElE;;GAEG;AACH,qBAAa,cAAc;IAEzB,SAAS,CAAC,UAAU,EAAE,kBAAkB;IACxC,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY;IACpC,SAAS,CAAC,YAAY,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"RestoreService.d.ts","sourceRoot":"","sources":["../../src/services/RestoreService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAiC,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAkB,MAAM,mBAAmB,CAAC;AAElE;;GAEG;AACH,qBAAa,cAAc;IAEzB,SAAS,CAAC,UAAU,EAAE,kBAAkB;IACxC,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY;IACpC,SAAS,CAAC,YAAY,EAAE,YAAY;gBAJ1B,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAGrC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;IAK/D,cAAc;;;;;;;;;;;;;;;;;;;;IAKd,UAAU,CAAC,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;IAQ5B,eAAe,CAAC,SAAS,EAAE,MAAM;;;;IAWjC,aAAa,CAAC,SAAS,EAAE,MAAM;IAS/B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa;IAwC/D,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa;IA4C5D,aAAa,CAAC,SAAS,EAAE,MAAM;;;;IAgB/B,kBAAkB,CAAC,SAAS,EAAE,MAAM;IAapC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAiBxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{NotFoundError}from"../utils/AppError";import{RemoteStrategy,LocalStrategy}from"../strategies/restore";export class RestoreService{localAgent;planStore;backupStore;restoreStore;storageStore;
|
|
1
|
+
import{NotFoundError}from"../utils/AppError";import{RemoteStrategy,LocalStrategy}from"../strategies/restore";export class RestoreService{localAgent;planStore;backupStore;restoreStore;storageStore;constructor(localAgent,planStore,backupStore,restoreStore,storageStore){this.localAgent=localAgent,this.planStore=planStore,this.backupStore=backupStore,this.restoreStore=restoreStore,this.storageStore=storageStore}getRestoreStrategy(deviceId,method){return"main"!==deviceId?new RemoteStrategy(deviceId):new LocalStrategy(this.localAgent)}async getAllRestores(){return await this.restoreStore.getAll()}async getRestore(restoreId){const restore=await this.restoreStore.getById(restoreId);if(!restore)throw new NotFoundError("Restore Item not found.");return restore}async getRestoreStats(restoreId){const restore=await this.restoreStore.getById(restoreId);if(!restore)throw new NotFoundError("Restore not found");const strategy=this.getRestoreStrategy(restore.sourceId,restore.method);return await strategy.getRestoreStats(restore.planId,restoreId)}async deleteRestore(restoreId){if(!await this.restoreStore.getById(restoreId))throw new NotFoundError("Restore not found");await this.restoreStore.delete(restoreId)}async dryRestoreBackup(backupId,restoreConfig){try{const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");if(await this.restoreStore.isRestoreRunning(backupId))throw new Error("A Restoration is already in progress for this Plan");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getRestoreStrategy(backupDevice,backup.method),storageName=await this.getStorageName(backup.storageId),targetPath=restoreConfig.target||"",restoreResult=await strategy.getRestoreSnapshotStats(backup.planId,backup.id,{storageName:storageName,planId:backup.planId,storagePath:backup.storagePath||"",encryption:backup.encryption||!0,overwrite:restoreConfig.overwrite,target:targetPath,delete:restoreConfig.delete,includes:restoreConfig.includes,excludes:restoreConfig.excludes});if(!restoreResult.success)throw new Error(restoreResult.result||"Failed to dry restore plan");return restoreResult.result}catch(error){throw new Error(error?.message||"Failed to dry restore the backup plan")}}async restoreBackup(backupId,restoreConfig){try{const backup=await this.backupStore.getById(backupId);if(!backup)throw new Error("Backup not found");const plan=await this.planStore.getById(backup.planId);if(!plan)throw new Error("Plan not found");if(await this.restoreStore.isRestoreRunning(backupId))throw new Error("A Restoration is already in progress for this Plan");const backupDevice=backup.sourceId?backup.sourceId:"main",strategy=this.getRestoreStrategy(backupDevice,plan.method),storageName=await this.getStorageName(backup.storageId),performanceSettings=plan.settings.performance,restoreResult=await strategy.restoreSnapshot(backup.planId,backup.id,{planId:backup.planId,storageName:storageName,storagePath:backup.storagePath||"",encryption:backup.encryption||!0,overwrite:restoreConfig.overwrite||"always",target:restoreConfig.target||"",includes:restoreConfig.includes||[],excludes:restoreConfig.excludes||[],delete:restoreConfig.delete||!1,sources:plan.sourceConfig.includes||[],performanceSettings:performanceSettings});if(!restoreResult.success)throw new Error(restoreResult.result||"Failed to restore plan");return restoreResult.result}catch(error){throw new Error(error?.message||"Failed to Dry restore the backup plan")}}async cancelRestore(restoreId){const restore=await this.restoreStore.getById(restoreId);if(!restore)throw new NotFoundError("Restore not found");const strategy=this.getRestoreStrategy(restore.sourceId,restore.method),cancelResult=await strategy.cancelSnapshotRestore(restore.planId,restoreId);return await this.restoreStore.update(restoreId,{status:"cancelled",inProgress:!1}),cancelResult}async getRestoreProgress(restoreId){const restore=await this.restoreStore.getById(restoreId);if(!restore)throw new NotFoundError("Restore not found");const strategy=this.getRestoreStrategy(restore.sourceId,restore.method),progressResult=await strategy.getRestoreProgress(restore.planId,restoreId);if(!progressResult.success)throw new Error(progressResult.result||"Failed to get Restore Progress");return progressResult.result}async getStorageName(storageId){let storageName="";if("local"!==storageId)try{const storage=await this.storageStore.getById(storageId);storage?.name&&(storageName=storage.name)}catch(error){return storageName}else storageName="local";return storageName}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestoreService.js","sourceRoot":"","sources":["../../src/services/RestoreService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAmB,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAOvF;;GAEG;AACH,MAAM,OAAO,cAAc;IAEf;IACA;IACA;IACA;IACA;
|
|
1
|
+
{"version":3,"file":"RestoreService.js","sourceRoot":"","sources":["../../src/services/RestoreService.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,7 @@ export declare class StorageService {
|
|
|
12
12
|
protected systemManager: BaseSystemManager;
|
|
13
13
|
protected storageStore: StorageStore;
|
|
14
14
|
protected planStore: PlanStore;
|
|
15
|
-
|
|
16
|
-
constructor(storageManager: BaseStorageManager, systemManager: BaseSystemManager, storageStore: StorageStore, planStore: PlanStore, broker?: any);
|
|
15
|
+
constructor(storageManager: BaseStorageManager, systemManager: BaseSystemManager, storageStore: StorageStore, planStore: PlanStore);
|
|
17
16
|
getSystemStrategy(deviceId: string): SystemStrategy;
|
|
18
17
|
getStorages(): Promise<Storage[] | null>;
|
|
19
18
|
getStorage(id: string): Promise<Storage & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageService.d.ts","sourceRoot":"","sources":["../../src/services/StorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4C,MAAM,uBAAuB,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAGN,cAAc,EACd,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIlE;;GAEG;AACH,qBAAa,cAAc;
|
|
1
|
+
{"version":3,"file":"StorageService.d.ts","sourceRoot":"","sources":["../../src/services/StorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4C,MAAM,uBAAuB,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAGN,cAAc,EACd,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIlE;;GAEG;AACH,qBAAa,cAAc;IAEzB,SAAS,CAAC,cAAc,EAAE,kBAAkB;IAC5C,SAAS,CAAC,aAAa,EAAE,iBAAiB;IAC1C,SAAS,CAAC,YAAY,EAAE,YAAY;IACpC,SAAS,CAAC,SAAS,EAAE,SAAS;gBAHpB,cAAc,EAAE,kBAAkB,EAClC,aAAa,EAAE,iBAAiB,EAChC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS;IAG/B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IAO7C,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAIxC,UAAU,CACf,EAAE,EAAE,MAAM,GACR,OAAO,CAAC,OAAO,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA2B5E,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAiBxD,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAsDxE,aAAa,CAClB,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,GAC9B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,CAAC;IA2FtE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgC3C,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB1C,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAYvC,qBAAqB;CAoBnC"}
|
|
@@ -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;
|
|
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}}),{})}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;let 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){}let credsDifferent=JSON.stringify(decryptedOldCred)!==JSON.stringify(credentials);const 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;
|
|
1
|
+
{"version":3,"file":"StorageService.js","sourceRoot":"","sources":["../../src/services/StorageService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BackupStore } from '../../stores/BackupStore';
|
|
2
|
+
import { DownloadCompleteEvent, DownloadErrorEvent, DownloadStartEvent } from '../../types/events';
|
|
3
|
+
import { BaseSnapshotManager } from '../../managers/BaseSnapshotManager';
|
|
4
|
+
export declare class DownloadEventService {
|
|
5
|
+
protected backupStore: BackupStore;
|
|
6
|
+
protected localAgent?: BaseSnapshotManager | undefined;
|
|
7
|
+
constructor(backupStore: BackupStore, localAgent?: BaseSnapshotManager | undefined);
|
|
8
|
+
onDownloadStart(eventPayload: DownloadStartEvent): Promise<void>;
|
|
9
|
+
onDownloadError(eventPayload: DownloadErrorEvent): Promise<void>;
|
|
10
|
+
onDownloadComplete(eventPayload: DownloadCompleteEvent): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=DownloadEventService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DownloadEventService.d.ts","sourceRoot":"","sources":["../../../src/services/events/DownloadEventService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE,qBAAa,oBAAoB;IAE/B,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,UAAU,CAAC,EAAE,mBAAmB;gBADhC,WAAW,EAAE,WAAW,EACxB,UAAU,CAAC,EAAE,mBAAmB,YAAA;IAGrC,eAAe,CAAC,YAAY,EAAE,kBAAkB;IAsBhD,eAAe,CAAC,YAAY,EAAE,kBAAkB;IAyBhD,kBAAkB,CAAC,YAAY,EAAE,qBAAqB;CAyB5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{planLogger}from"../../utils/logger";export class DownloadEventService{backupStore;localAgent;constructor(backupStore,localAgent){this.backupStore=backupStore,this.localAgent=localAgent}async onDownloadStart(eventPayload){const{backupId:backupId,planId:planId}=eventPayload;try{const currentTime=Math.floor((new Date).getTime()/1e3);await this.backupStore.update(backupId,{download:{status:"started",started:currentTime}}),planLogger("download",planId,backupId).info(`Download generation started for backup ${backupId}`)}catch(error){planLogger("download",planId,backupId).error(`Failed to handle download generation start for backup ${backupId}: ${error.message}`)}}async onDownloadError(eventPayload){const{backupId:backupId,planId:planId,error:error}=eventPayload;try{const backup=await this.backupStore.getById(backupId);await this.backupStore.update(backupId,{download:{...backup?.download||{},status:"failed",error:error,ended:Math.floor(Date.now()/1e3)}}),planLogger("download",planId,backupId).error(`Failed to complete download generation for backup ${backupId}. Reason: ${error||"Unknown"}`)}catch(error){planLogger("download",planId,backupId).error(`Failed to handle download generation error for backup ${backupId}: ${error.message}`)}}async onDownloadComplete(eventPayload){const{backupId:backupId,planId:planId,success:success}=eventPayload;try{const backup=await this.backupStore.getById(backupId);await this.backupStore.update(backupId,{download:{...backup?.download||{},status:"complete",error:"",ended:Math.floor(Date.now()/1e3)}}),planLogger("download",planId,backupId).info(`Download generation completed for backup ${backupId}`)}catch(error){planLogger("download",planId,backupId).error(`Failed to handle download completion for backup ${backupId}. Reason: ${error?.message||"Unknown"}`)}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DownloadEventService.js","sourceRoot":"","sources":["../../../src/services/events/DownloadEventService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { BaseSnapshotManager } from '../../managers/BaseSnapshotManager';
|
|
2
2
|
import { BackupStore } from '../../stores/BackupStore';
|
|
3
|
+
import { DownloadEventService } from '../events/DownloadEventService';
|
|
3
4
|
export declare class DownloadEventListener {
|
|
4
5
|
protected localAgent: BaseSnapshotManager;
|
|
5
6
|
protected backupStore: BackupStore;
|
|
7
|
+
protected downloadEventService: DownloadEventService;
|
|
6
8
|
constructor(localAgent: BaseSnapshotManager, backupStore: BackupStore);
|
|
7
9
|
protected registerEventListeners(): void;
|
|
8
10
|
private onDownloadStart;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DownloadEventListener.d.ts","sourceRoot":"","sources":["../../../src/services/listeners/DownloadEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"DownloadEventListener.d.ts","sourceRoot":"","sources":["../../../src/services/listeners/DownloadEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,qBAAa,qBAAqB;IAIhC,SAAS,CAAC,UAAU,EAAE,mBAAmB;IACzC,SAAS,CAAC,WAAW,EAAE,WAAW;IAJnC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;gBAG1C,UAAU,EAAE,mBAAmB,EAC/B,WAAW,EAAE,WAAW;IAMnC,SAAS,CAAC,sBAAsB,IAAI,IAAI;YAgB1B,eAAe;YAef,eAAe;YAIf,kBAAkB;CAGhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{DownloadEventService}from"../events/DownloadEventService";export class DownloadEventListener{localAgent;backupStore;downloadEventService;constructor(localAgent,backupStore){this.localAgent=localAgent,this.backupStore=backupStore,this.downloadEventService=new DownloadEventService(backupStore,localAgent),this.registerEventListeners()}registerEventListeners(){this.localAgent.on("download_start",event=>this.onDownloadStart(event)),this.localAgent.on("download_error",event=>this.onDownloadError(event)),this.localAgent.on("download_complete",event=>this.onDownloadComplete(event))}async onDownloadStart(eventPayload){await this.downloadEventService.onDownloadStart(eventPayload)}async onDownloadError(eventPayload){await this.downloadEventService.onDownloadError(eventPayload)}async onDownloadComplete(eventPayload){await this.downloadEventService.onDownloadComplete(eventPayload)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DownloadEventListener.js","sourceRoot":"","sources":["../../../src/services/listeners/DownloadEventListener.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DownloadEventListener.js","sourceRoot":"","sources":["../../../src/services/listeners/DownloadEventListener.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,MAAM,OAAO,qBAAqB;IAItB;IACA;IAJD,oBAAoB,CAAuB;IAErD,YACW,UAA+B,EAC/B,WAAwB;QADxB,eAAU,GAAV,UAAU,CAAqB;QAC/B,gBAAW,GAAX,WAAW,CAAa;QAElC,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9E,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAC/B,CAAC;IAES,sBAAsB;QAC/B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAyB,EAAE,EAAE,CAClE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAC3B,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAyB,EAAE,EAAE,CAClE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAC3B,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAA4B,EAAE,EAAE,CACxE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAC9B,CAAC;QAEF,4EAA4E;QAC5E,kCAAkC;QAClC,KAAK;IACN,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,YAAgC;QAC7D,MAAM,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,0EAA0E;IAC1E,uDAAuD;IACvD,SAAS;IACT,+CAA+C;IAC/C,iGAAiG;IACjG,yDAAyD;IACzD,0BAA0B;IAC1B,wDAAwD;IACxD,KAAK;IACL,IAAI;IAEI,KAAK,CAAC,eAAe,CAAC,YAAgC;QAC7D,MAAM,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,YAAmC;QACnE,MAAM,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;CACD"}
|
|
@@ -12,5 +12,6 @@ export declare class RestoreStore {
|
|
|
12
12
|
update(id: string, updates: Partial<NewRestore>, identifier?: 'id' | 'backupId'): Promise<Restore | null>;
|
|
13
13
|
isRestoreRunning(backupId: string): Promise<boolean>;
|
|
14
14
|
delete(id: string): Promise<boolean>;
|
|
15
|
+
deleteByPlanId(planId: string): Promise<boolean>;
|
|
15
16
|
}
|
|
16
17
|
//# sourceMappingURL=RestoreStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestoreStore.d.ts","sourceRoot":"","sources":["../../src/stores/RestoreStore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAY,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,qBAAa,YAAY;IACZ,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IAE9B,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAKnC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAQnD,MAAM,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAQxD,MAAM,CACX,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,UAAU,GAAE,IAAI,GAAG,UAAiB,GAClC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAmBpB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQpD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"RestoreStore.d.ts","sourceRoot":"","sources":["../../src/stores/RestoreStore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAY,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,qBAAa,YAAY;IACZ,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IAE9B,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAKnC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAQnD,MAAM,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAQxD,MAAM,CACX,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAC5B,UAAU,GAAE,IAAI,GAAG,UAAiB,GAClC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAmBpB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQpD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAItD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{and,eq}from"drizzle-orm";import{sql}from"drizzle-orm/sql";import{restores}from"../db/schema/restores";export class RestoreStore{db;constructor(db){this.db=db}async getAll(){return await this.db.query.restores.findMany()||null}async getById(restoreId){return await this.db.query.restores.findFirst({where:eq(restores.id,restoreId)})||null}async create(restoreData){return(await this.db.insert(restores).values({...restoreData,started:sql`(unixepoch())`}).returning())[0]||null}async update(id,updates,identifier="id"){const ended="completed"===updates.status||"failed"===updates.status||"cancelled"===updates.status;return(await this.db.update(restores).set({...updates,updatedAt:sql`(unixepoch())`,ended:ended?sql`(unixepoch())`:null}).where(eq("backupId"===identifier?restores.backupId:restores.id,id)).returning())[0]||null}async isRestoreRunning(backupId){const restore=await this.db.query.restores.findFirst({where:and(eq(restores.backupId,backupId),eq(restores.inProgress,!0))});return!0===restore?.inProgress||!1}async delete(id){return(await this.db.delete(restores).where(eq(restores.id,id))).changes>0}}
|
|
1
|
+
import{and,eq}from"drizzle-orm";import{sql}from"drizzle-orm/sql";import{restores}from"../db/schema/restores";export class RestoreStore{db;constructor(db){this.db=db}async getAll(){return await this.db.query.restores.findMany()||null}async getById(restoreId){return await this.db.query.restores.findFirst({where:eq(restores.id,restoreId)})||null}async create(restoreData){return(await this.db.insert(restores).values({...restoreData,started:sql`(unixepoch())`}).returning())[0]||null}async update(id,updates,identifier="id"){const ended="completed"===updates.status||"failed"===updates.status||"cancelled"===updates.status;return(await this.db.update(restores).set({...updates,updatedAt:sql`(unixepoch())`,ended:ended?sql`(unixepoch())`:null}).where(eq("backupId"===identifier?restores.backupId:restores.id,id)).returning())[0]||null}async isRestoreRunning(backupId){const restore=await this.db.query.restores.findFirst({where:and(eq(restores.backupId,backupId),eq(restores.inProgress,!0))});return!0===restore?.inProgress||!1}async delete(id){return(await this.db.delete(restores).where(eq(restores.id,id))).changes>0}async deleteByPlanId(planId){return(await this.db.delete(restores).where(eq(restores.planId,planId))).changes>0}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestoreStore.js","sourceRoot":"","sources":["../../src/stores/RestoreStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAuB,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,MAAM,OAAO,YAAY;IACJ;IAApB,YAAoB,EAAgB;QAAhB,OAAE,GAAF,EAAE,CAAc;IAAG,CAAC;IAExC,KAAK,CAAC,MAAM;QACX,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACzD,OAAO,QAAQ,IAAI,IAAI,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB;QAC9B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;YACtD,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;SACjC,CAAC,CAAC;QAEH,OAAO,OAAO,IAAI,IAAI,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAuB;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE;aAC1B,MAAM,CAAC,QAAQ,CAAC;aAChB,MAAM,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,GAAG,CAAA,eAAe,EAAE,CAAC;aACvD,SAAS,EAAE,CAAC;QACd,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CACX,EAAU,EACV,OAA4B,EAC5B,aAAgC,IAAI;QAEpC,MAAM,KAAK,GACV,OAAO,CAAC,MAAM,KAAK,WAAW;YAC9B,OAAO,CAAC,MAAM,KAAK,QAAQ;YAC3B,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE;aAC1B,MAAM,CAAC,QAAQ,CAAC;aAChB,GAAG,CAAC;YACJ,GAAG,OAAO;YACV,SAAS,EAAE,GAAG,CAAA,eAAe;YAC7B,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAA,eAAe,CAAC,CAAC,CAAC,IAAI;SACxC,CAAC;aACD,KAAK,CAAC,EAAE,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;aAC1E,SAAS,EAAE,CAAC;QAEd,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;YACtD,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SAC1E,CAAC,CAAC;QAEH,OAAO,OAAO,EAAE,UAAU,KAAK,IAAI,IAAI,KAAK,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC3B,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"RestoreStore.js","sourceRoot":"","sources":["../../src/stores/RestoreStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { BackupStrategy } from './BackupStrategy';
|
|
2
2
|
export declare class RemoteStrategy implements BackupStrategy {
|
|
3
|
-
protected broker: any;
|
|
4
3
|
protected deviceId: string;
|
|
5
|
-
constructor(
|
|
4
|
+
constructor(deviceId: string);
|
|
6
5
|
createBackup(planId: string, options: Record<string, any>): Promise<{
|
|
7
6
|
success: boolean;
|
|
8
7
|
result: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/backup/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBAAa,cAAe,YAAW,cAAc;IACpD,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/backup/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBAAa,cAAe,YAAW,cAAc;IACpD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEf,QAAQ,EAAE,MAAM;IAItB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;IAIzD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;;;;IAIzC,YAAY,CACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,UAAU,EAAE,OAAO,CAAC;KACpB;;;;IAKI,aAAa,CAAC,MAAM,EAAE,MAAM;iBA+B+B,OAAO;gBAAU,GAAG;;IA3B/E,WAAW,CAAC,MAAM,EAAE,MAAM;iBA2BiC,OAAO;gBAAU,GAAG;;IAvB/E,YAAY,CAAC,MAAM,EAAE,MAAM;iBAuBgC,OAAO;gBAAU,GAAG;;IApB/E,YAAY,CAAC,MAAM,EAAE,MAAM;iBAoBgC,OAAO;gBAAU,GAAG;;IAhB/E,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;iBAgBS,OAAO;gBAAU,GAAG;;IAZ/E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;iBAYc,OAAO;gBAAU,GAAG;;IAR/E,UAAU,CAAC,MAAM,EAAE,MAAM;iBAQkC,OAAO;gBAAU,GAAG;;IAJ/E,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;iBAIJ,OAAO;gBAAU,GAAG;;IAArF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC;CAKxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export class RemoteStrategy{
|
|
1
|
+
export class RemoteStrategy{deviceId;constructor(deviceId){this.deviceId=deviceId}async createBackup(planId,options){return{success:!0,result:"Backup created successfully"}}async updateBackup(planId,options){return{success:!0,result:"Backup updated successfully"}}async removeBackup(planId,options){return{success:!0,result:"Backup removed successfully"}}async performBackup(planId){return await this.publishCommand("PERFORM_BACKUP",{planId:planId})}async pauseBackup(planId){return await this.publishCommand("PAUSE_BACKUP",{planId:planId})}async resumeBackup(planId){return await this.publishCommand("RESUME_BACKUP",{planId:planId})}async pruneBackups(planId){return await this.publishCommand("PRUNE_BACKUPS",{planId:planId})}async getBackupProgress(planId,backupId){return await this.publishCommand("GET_BACKUP_PROGRESS",{planId:planId,backupId:backupId})}async cancelBackup(planId,backupId){return await this.publishCommand("CANCEL_BACKUP",{planId:planId})}async unlockRepo(planId){return await this.publishCommand("UNLOCK_REPO",{planId:planId})}async updatePlanStorageName(storageId,newStorageName){return await this.publishCommand("UPDATE_PLAN_STORAGE_NAME",{storageId:storageId,newStorageName:newStorageName})}publishCommand(action,payload){return new Promise((resolve,reject)=>{resolve({success:!0,result:null})})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/backup/RemoteStrategy.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IAChB,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/backup/RemoteStrategy.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IAChB,QAAQ,CAAS;IAE3B,YAAY,QAAgB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,OAA4B;QAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,OAAY;QAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,YAAY,CACjB,MAAc,EACd,OAKC;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc;QACjC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc;QAC/B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAChC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,CAAC,YAAY,CAAC,MAAc;QAChC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,QAAgB;QACvD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,QAAgB;QAClD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc;QAC9B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,cAAsB;QACpE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,cAAc,CAAC,MAAc,EAAE,OAAY;QAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { RestoreConfig, RestoreOptions } from '../../types/restores';
|
|
2
2
|
import { RestoreStrategy } from './RestoreStrategy';
|
|
3
3
|
export declare class RemoteStrategy implements RestoreStrategy {
|
|
4
|
-
protected broker: any;
|
|
5
4
|
protected deviceId: string;
|
|
6
|
-
constructor(
|
|
5
|
+
constructor(deviceId: string);
|
|
7
6
|
cancelSnapshotRestore(planId: string, restoreId: string): Promise<{
|
|
8
7
|
success: boolean;
|
|
9
8
|
result: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/restore/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,cAAe,YAAW,eAAe;IACrD,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/restore/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,cAAe,YAAW,eAAe;IACrD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEf,QAAQ,EAAE,MAAM;IAItB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;iBA6BI,OAAO;gBAAU,GAAG;;IAzB/E,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;iBAyBO,OAAO;gBAAU,GAAG;;IArB/E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;iBAqBU,OAAO;gBAAU,GAAG;;IAjB/E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc;iBAiBd,OAAO;gBAAU,GAAG;;IAb/E,uBAAuB,CAC5B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,GAAG;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;KACpB;iBAK+D,OAAO;gBAAU,GAAG;;IAArF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC;CAKxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export class RemoteStrategy{
|
|
1
|
+
export class RemoteStrategy{deviceId;constructor(deviceId){this.deviceId=deviceId}async cancelSnapshotRestore(planId,restoreId){return await this.publishCommand("CANCEL_RESTORE",{planId:planId,restoreId:restoreId})}async getRestoreProgress(planId,restoreId){return await this.publishCommand("GET_RESTORE_PROGRESS",{planId:planId,restoreId:restoreId})}async getRestoreStats(planId,restoreId){return await this.publishCommand("GET_RESTORE_STATS",{planId:planId,restoreId:restoreId})}async restoreSnapshot(planId,backupId,options){return await this.publishCommand("PERFORM_RESTORE",{planId:planId,backupId:backupId,options:options})}async getRestoreSnapshotStats(planId,backupId,options){return await this.publishCommand("DRY_RESTORE",{planId:planId,backupId:backupId,options:options})}publishCommand(action,payload){return new Promise((resolve,reject)=>{resolve({success:!0,result:null})})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/restore/RemoteStrategy.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAChB,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/restore/RemoteStrategy.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAChB,QAAQ,CAAS;IAE3B,YAAY,QAAgB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,SAAiB;QAC5D,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAAc,EAAE,SAAiB;QACzD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,SAAiB;QACtD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,QAAgB,EAAE,OAAuB;QAC9E,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,MAAc,EACd,QAAgB,EAChB,OAKC;QAED,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,cAAc,CAAC,MAAc,EAAE,OAAY;QAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { SnapshotStrategy } from './SnapshotStrategy';
|
|
2
2
|
export declare class RemoteStrategy implements SnapshotStrategy {
|
|
3
|
-
protected broker: any;
|
|
4
3
|
protected deviceId: string;
|
|
5
|
-
constructor(
|
|
4
|
+
constructor(deviceId: string);
|
|
6
5
|
removeSnapshot(planId: string, backupId: string, options: {
|
|
7
6
|
storagePath: string;
|
|
8
7
|
storageName: string;
|
|
@@ -20,7 +19,7 @@ export declare class RemoteStrategy implements SnapshotStrategy {
|
|
|
20
19
|
success: boolean;
|
|
21
20
|
result: any;
|
|
22
21
|
}>;
|
|
23
|
-
getSnapshotDownload(backupId: string): Promise<{
|
|
22
|
+
getSnapshotDownload(planId: string, backupId: string): Promise<{
|
|
24
23
|
success: boolean;
|
|
25
24
|
result: any;
|
|
26
25
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/snapshot/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,qBAAa,cAAe,YAAW,gBAAgB;IACtD,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/snapshot/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,qBAAa,cAAe,YAAW,gBAAgB;IACtD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEf,QAAQ,EAAE,MAAM;IAGtB,cAAc,CACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;iBA8B1B,OAAO;gBAAU,GAAG;;IAzB/E,gBAAgB,CACrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE;iBAqBV,OAAO;gBAAU,GAAG;;IAhB/E,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;iBAgBO,OAAO;gBAAU,GAAG;;IAZ/E,sBAAsB,CAAC,QAAQ,EAAE,MAAM;iBAYoB,OAAO;gBAAU,GAAG;;IAR/E,gBAAgB,CACrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE;iBAKV,OAAO;gBAAU,GAAG;;IAArF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC;CAKxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export class RemoteStrategy{
|
|
1
|
+
export class RemoteStrategy{deviceId;constructor(deviceId){this.deviceId=deviceId}async removeSnapshot(planId,backupId,options){return await this.publishCommand("REMOVE_SNAPSHOT",{backupId:backupId,options:options})}async downloadSnapshot(planId,backupId,path,options){return await this.publishCommand("DOWNLOAD_SNAPSHOT",{backupId:backupId,path:path,options:options})}async getSnapshotDownload(planId,backupId){return await this.publishCommand("GET_SNAPSHOT_DOWNLOAD",{planId:planId,backupId:backupId})}async cancelSnapshotDownload(backupId){return await this.publishCommand("CANCEL_SNAPSHOT_DOWNLOAD",{backupId:backupId})}async getSnapshotFiles(planId,backupId,options){return await this.publishCommand("GET_SNAPSHOT_FILES",{planId:planId,backupId:backupId,options:options})}publishCommand(action,payload){return new Promise((resolve,reject)=>{resolve({success:!0,result:null})})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/snapshot/RemoteStrategy.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IAChB,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/snapshot/RemoteStrategy.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IAChB,QAAQ,CAAS;IAE3B,YAAY,QAAgB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IACD,KAAK,CAAC,cAAc,CACnB,MAAc,EACd,QAAgB,EAChB,OAA0F;QAE1F,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,gBAAgB,CACrB,MAAc,EACd,QAAgB,EAChB,IAAY,EACZ,OAA0E;QAE1E,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAc,EAAE,QAAgB;QACzD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QAC5C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,gBAAgB,CACrB,MAAc,EACd,QAAgB,EAChB,OAA0E;QAE1E,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,cAAc,CAAC,MAAc,EAAE,OAAY;QAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { DeviceSettings, DiscoveredFilesystem } from '../../types/devices';
|
|
2
2
|
import { SystemStrategy } from './SystemStrategy';
|
|
3
3
|
export declare class RemoteStrategy implements SystemStrategy {
|
|
4
|
-
protected broker: any;
|
|
5
4
|
protected deviceId: string;
|
|
6
|
-
constructor(
|
|
5
|
+
constructor(deviceId: string);
|
|
7
6
|
getMetrics(): Promise<{
|
|
8
7
|
success: boolean;
|
|
9
8
|
result: Record<string, string | number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/system/RemoteStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBAAa,cAAe,YAAW,cAAc;IACpD,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.d.ts","sourceRoot":"","sources":["../../../src/strategies/system/RemoteStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export class RemoteStrategy{
|
|
1
|
+
export class RemoteStrategy{deviceId;constructor(deviceId){this.deviceId=deviceId}async getMetrics(){return await this.publishCommand("GET_METRICS",{})}async getVersions(){return await this.publishCommand("GET_VERSIONS",{})}async checkDiskSpace(){return await this.publishCommand("CHECK_DISKSPACE",{})}async getBrowsePath(givenPath){return await this.publishCommand("GET_BROWSE_PATH",{givenPath:givenPath})}async getRootDrives(){return await this.publishCommand("GET_ROOTDRIVES",{})}async getMountPoints(){return await this.publishCommand("GET_MOUNT_POINTS",{})}async getOSVersion(){return await this.publishCommand("GET_OS_VERSION",{})}async updateRestic(){return await this.publishCommand("UPDATE_RESTIC",{})}async updateRclone(){return await this.publishCommand("UPDATE_RCLONE",{})}async updateSettings(settings){return await this.publishCommand("UPDATE_SETTINGS",{settings:settings})}async createRemoteStorage(type,name,authType,credentials,settings){return await this.publishCommand("CREATE_REMOTE_STORAGE",{type:type,name:name,authType:authType,credentials:credentials,settings:settings})}async updateRemoteStorage(storageName,settings){return await this.publishCommand("UPDATE_REMOTE_STORAGE",{storageName:storageName,settings:settings})}async removeRemoteStorage(storageName){return await this.publishCommand("REMOVE_REMOTE_STORAGE",{storageName:storageName})}publishCommand(action,payload){return new Promise((resolve,reject)=>{resolve({success:!0,result:null})})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/system/RemoteStrategy.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAChB,
|
|
1
|
+
{"version":3,"file":"RemoteStrategy.js","sourceRoot":"","sources":["../../../src/strategies/system/RemoteStrategy.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAChB,QAAQ,CAAS;IAE3B,YAAY,QAAgB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,UAAU;QACf,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,cAAc;QACnB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,aAAa,CAClB,SAAkB;QAElB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,cAAc;QACnB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAwB;QAC5C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,mBAAmB,CACxB,IAAY,EACZ,IAAY,EACZ,QAAgB,EAChB,WAAmC,EACnC,QAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE;YACzD,IAAI;YACJ,IAAI;YACJ,QAAQ;YACR,WAAW;YACX,QAAQ;SACR,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACxB,WAAmB,EACnB,QAAgE;QAEhE,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,WAAmB;QAC5C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC5E,CAAC;IAES,cAAc,CACvB,MAAc,EACd,OAAY;QAEZ,OAAO,CAAC,GAAG,CACV,4BAA4B,EAC5B,IAAI,CAAC,QAAQ,EACb,kBAAkB,IAAI,CAAC,QAAQ,IAAI,MAAM,EAAE,CAC3C,CAAC;QACF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyFiles.d.ts","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,QAAA,MAAM,SAAS,GACd,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,kBAAiB,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,OAAkB,KACxE,OAAO,CAAC,IAAI,CAMd,CAAC;
|
|
1
|
+
{"version":3,"file":"copyFiles.d.ts","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,QAAA,MAAM,SAAS,GACd,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,kBAAiB,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,OAAkB,KACxE,OAAO,CAAC,IAAI,CAMd,CAAC;AAiSF,eAAe,SAAS,CAAC"}
|
package/dist/utils/copyFiles.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{spawn}from"child_process";import{access,constants}from"fs/promises";const copyFilesWindows=(sourcePath,destinationPath,overwritePolicy="always")=>{const robocopyArgsList=[sourcePath,destinationPath,"/E"];switch(overwritePolicy){case"always":robocopyArgsList.push("/COPY:DAT","/W:1","/R:1");break;case"if-changed":robocopyArgsList.push("/XO","/XC");break;case"if-newer":robocopyArgsList.push("/XO");break;case"never":robocopyArgsList.push("/XC","/XN","/XO")}const psCommand=`\n $ErrorActionPreference = 'Stop'\n try {\n $process = Start-Process robocopy -ArgumentList ${robocopyArgsList.map(arg=>`"${arg.replace(/"/g,'`"')}"`).join(", ")} -Verb runas -PassThru -Wait;\n if ($null -ne $process) {\n exit $process.ExitCode\n } else {\n Write-Error "Failed to start robocopy process or UAC was denied."\n exit 2001\n }\n } catch {\n Write-Error "PowerShell script failed: $($_.Exception.Message)"\n exit 2000\n }\n `;return new Promise((resolve,reject)=>{const subprocess=spawn("powershell.exe",["-NoProfile","-NoLogo","-Command",psCommand],{stdio:["ignore","pipe","pipe"]});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start PowerShell process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;stderrData.trim()&&(errorMessage+=`\nPowerShell Stderr: ${stderrData.trim()}`),null!==code&&(stdoutData.trim()&&(code>=8||16===code)&&(errorMessage+=`\nPowerShell Stdout: ${stdoutData.trim()}`),2e3===code?errorMessage=`PowerShell script execution failed (code ${code}). Details: ${stderrData.trim()||stdoutData.trim()}`:2001===code&&(errorMessage=`Failed to get Robocopy process object (code ${code}), UAC might have been denied. Details: ${stderrData.trim()||stdoutData.trim()}`)),reject(new Error(errorMessage))}})})},copyFilesUnix=async(copyFrom,restorePath,overwritePolicy="always")=>{try{await access(restorePath,constants.F_OK)}catch{throw new Error(`Restore path does not exist: ${restorePath}`)}const rsyncArgs=["-a","--progress"];switch(overwritePolicy){case"always":break;case"if-changed":rsyncArgs.push("--checksum");break;case"if-newer":rsyncArgs.push("--update");break;case"never":rsyncArgs.push("--ignore-existing")}const normalizedSource=restorePath.endsWith("/")?restorePath:restorePath+"/";return rsyncArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("rsync",rsyncArgs,{stdio:"inherit"});subprocess.on("error",err=>{if(err.message.includes("ENOENT"))return copyFilesUnixFallback(copyFrom,restorePath,overwritePolicy).then(resolve).catch(reject);reject(new Error(`Failed to start rsync: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`rsync failed with code ${code}`))})})},copyFilesUnixFallback=(copyFrom,restorePath,overwritePolicy="always")=>{const cpArgs=["-R"];switch(overwritePolicy){case"always":cpArgs.push("-f");break;case"if-changed":case"if-newer":cpArgs.push("-u");break;case"never":cpArgs.push("-n")}const normalizedSource=restorePath.endsWith("/")?restorePath+".":restorePath+"/.";return cpArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("cp",cpArgs,{stdio:"inherit"});subprocess.on("error",err=>{reject(new Error(`Failed to start cp: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`cp failed with code ${code}`))})})};export default(copyFrom,copyTo,overwritePolicy="always")=>"win32"===process.platform?copyFilesWindows(copyFrom,copyTo,overwritePolicy):copyFilesUnix(copyFrom,copyTo,overwritePolicy);
|
|
1
|
+
import{spawn}from"child_process";import{access,constants}from"fs/promises";const copyFilesWindows=(sourcePath,destinationPath,overwritePolicy="always")=>{const isPkg=process.pkg,robocopyArgsList=[sourcePath,destinationPath,"/E"];switch(overwritePolicy){case"always":robocopyArgsList.push("/COPY:DAT","/W:1","/R:1");break;case"if-changed":robocopyArgsList.push("/XO","/XC");break;case"if-newer":robocopyArgsList.push("/XO");break;case"never":robocopyArgsList.push("/XC","/XN","/XO")}return isPkg?copyFilesWindowsDirect(robocopyArgsList):copyFilesWindowsWithUAC(robocopyArgsList)},copyFilesWindowsDirect=robocopyArgsList=>new Promise((resolve,reject)=>{const subprocess=spawn("robocopy",robocopyArgsList,{stdio:["ignore","pipe","pipe"],shell:!0});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start robocopy process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;16===code?errorMessage+=" Serious error - this may indicate permission issues, invalid paths, or insufficient disk space.":null!==code&&code>=8&&(errorMessage+=" Some files could not be copied due to errors."),stderrData.trim()&&(errorMessage+=`\nStderr: ${stderrData.trim()}`),stdoutData.trim()&&(errorMessage+=`\nOutput: ${stdoutData.trim()}`),reject(new Error(errorMessage))}})}),copyFilesWindowsWithUAC=robocopyArgsList=>{const psCommand=`\n $ErrorActionPreference = 'Stop'\n try {\n $process = Start-Process robocopy -ArgumentList ${robocopyArgsList.map(arg=>`"${arg.replace(/"/g,'`"')}"`).join(", ")} -Verb runas -PassThru -Wait;\n if ($null -ne $process) {\n exit $process.ExitCode\n } else {\n Write-Error "Failed to start robocopy process or UAC was denied."\n exit 2001\n }\n } catch {\n Write-Error "PowerShell script failed: $($_.Exception.Message)"\n exit 2000\n }\n `;return new Promise((resolve,reject)=>{const subprocess=spawn("powershell.exe",["-NoProfile","-NoLogo","-Command",psCommand],{stdio:["ignore","pipe","pipe"]});let stdoutData="",stderrData="";subprocess.stdout&&subprocess.stdout.on("data",data=>{stdoutData+=data.toString()}),subprocess.stderr&&subprocess.stderr.on("data",data=>{stderrData+=data.toString()}),subprocess.on("error",err=>{reject(new Error(`Failed to start PowerShell process: ${err.message}. Stderr: ${stderrData}`))}),subprocess.on("close",code=>{if(null!==code&&code<8)resolve();else{let errorMessage=`Robocopy process exited with code ${code}.`;stderrData.trim()&&(errorMessage+=`\nPowerShell Stderr: ${stderrData.trim()}`),null!==code&&(stdoutData.trim()&&(code>=8||16===code)&&(errorMessage+=`\nPowerShell Stdout: ${stdoutData.trim()}`),2e3===code?errorMessage=`PowerShell script execution failed (code ${code}). Details: ${stderrData.trim()||stdoutData.trim()}`:2001===code&&(errorMessage=`Failed to get Robocopy process object (code ${code}), UAC might have been denied. Details: ${stderrData.trim()||stdoutData.trim()}`)),reject(new Error(errorMessage))}})})},copyFilesUnix=async(copyFrom,restorePath,overwritePolicy="always")=>{try{await access(restorePath,constants.F_OK)}catch{throw new Error(`Restore path does not exist: ${restorePath}`)}const rsyncArgs=["-a","--progress"];switch(overwritePolicy){case"always":break;case"if-changed":rsyncArgs.push("--checksum");break;case"if-newer":rsyncArgs.push("--update");break;case"never":rsyncArgs.push("--ignore-existing")}const normalizedSource=restorePath.endsWith("/")?restorePath:restorePath+"/";return rsyncArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("rsync",rsyncArgs,{stdio:"inherit"});subprocess.on("error",err=>{if(err.message.includes("ENOENT"))return copyFilesUnixFallback(copyFrom,restorePath,overwritePolicy).then(resolve).catch(reject);reject(new Error(`Failed to start rsync: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`rsync failed with code ${code}`))})})},copyFilesUnixFallback=(copyFrom,restorePath,overwritePolicy="always")=>{const cpArgs=["-R"];switch(overwritePolicy){case"always":cpArgs.push("-f");break;case"if-changed":case"if-newer":cpArgs.push("-u");break;case"never":cpArgs.push("-n")}const normalizedSource=restorePath.endsWith("/")?restorePath+".":restorePath+"/.";return cpArgs.push(normalizedSource,copyFrom),new Promise((resolve,reject)=>{const subprocess=spawn("cp",cpArgs,{stdio:"inherit"});subprocess.on("error",err=>{reject(new Error(`Failed to start cp: ${err.message}`))}),subprocess.on("close",code=>{0===code?resolve():reject(new Error(`cp failed with code ${code}`))})})};export default(copyFrom,copyTo,overwritePolicy="always")=>"win32"===process.platform?copyFilesWindows(copyFrom,copyTo,overwritePolicy):copyFilesUnix(copyFrom,copyTo,overwritePolicy);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,SAAS,GAAG,CACjB,QAAgB,EAChB,MAAc,EACd,kBAAkE,QAAQ,EAC1D,EAAE;IAClB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACP,OAAO,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACxB,UAAkB,EAAE,oDAAoD;AACxE,eAAuB,EAAE,yDAAyD;AAClF,kBAAkE,QAAQ,EAC1D,EAAE;IAClB,gEAAgE;IAChE,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,mBAAmB,GAAG,eAAe,CAAC;IAE5C,MAAM,gBAAgB,GAAG;QACxB,cAAc;QACd,mBAAmB;QACnB,
|
|
1
|
+
{"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"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"}
|