@plutonhq/core-backend 0.1.23 → 0.1.25
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/PlanController.js +1 -1
- package/dist/controllers/PlanController.js.map +1 -1
- package/dist/controllers/SettingsController.d.ts.map +1 -1
- package/dist/controllers/SettingsController.js +1 -1
- package/dist/controllers/SettingsController.js.map +1 -1
- package/dist/managers/BaseStorageManager.d.ts.map +1 -1
- package/dist/managers/BaseStorageManager.js +1 -1
- package/dist/managers/BaseStorageManager.js.map +1 -1
- package/dist/managers/CronManager.d.ts +5 -0
- package/dist/managers/CronManager.d.ts.map +1 -1
- package/dist/managers/CronManager.js +1 -1
- package/dist/managers/CronManager.js.map +1 -1
- package/dist/notifications/BackupNotification.d.ts +1 -0
- package/dist/notifications/BackupNotification.d.ts.map +1 -1
- package/dist/notifications/BackupNotification.js +1 -1
- package/dist/notifications/BackupNotification.js.map +1 -1
- package/dist/notifications/channels/NotificationChannelResolver.d.ts.map +1 -1
- package/dist/notifications/channels/NotificationChannelResolver.js +1 -1
- package/dist/notifications/channels/NotificationChannelResolver.js.map +1 -1
- package/dist/notifications/channels/NtfyChannel.d.ts +12 -0
- package/dist/notifications/channels/NtfyChannel.d.ts.map +1 -0
- package/dist/notifications/channels/NtfyChannel.js +1 -0
- package/dist/notifications/channels/NtfyChannel.js.map +1 -0
- package/dist/notifications/templates/email/backup/BackupFailedNotification.d.ts +1 -0
- package/dist/notifications/templates/email/backup/BackupFailedNotification.d.ts.map +1 -1
- package/dist/notifications/templates/email/backup/BackupFailedNotification.js +1 -1
- package/dist/notifications/templates/email/backup/BackupFailedNotification.js.map +1 -1
- package/dist/notifications/templates/email/backup/BackupStartedNotification.d.ts +1 -0
- package/dist/notifications/templates/email/backup/BackupStartedNotification.d.ts.map +1 -1
- package/dist/notifications/templates/email/backup/BackupStartedNotification.js +1 -1
- package/dist/notifications/templates/email/backup/BackupStartedNotification.js.map +1 -1
- package/dist/notifications/templates/email/backup/BackupSuccessNotification.d.ts +1 -0
- package/dist/notifications/templates/email/backup/BackupSuccessNotification.d.ts.map +1 -1
- package/dist/notifications/templates/email/backup/BackupSuccessNotification.js +1 -1
- package/dist/notifications/templates/email/backup/BackupSuccessNotification.js.map +1 -1
- package/dist/notifications/templates/email/backup/ReplicationFailedNotification.d.ts +1 -0
- package/dist/notifications/templates/email/backup/ReplicationFailedNotification.d.ts.map +1 -1
- package/dist/notifications/templates/email/backup/ReplicationFailedNotification.js +1 -1
- package/dist/notifications/templates/email/backup/ReplicationFailedNotification.js.map +1 -1
- package/dist/notifications/templates/push/test-ntfy/TestNtfyNotification.d.ts +14 -0
- package/dist/notifications/templates/push/test-ntfy/TestNtfyNotification.d.ts.map +1 -0
- package/dist/notifications/templates/push/test-ntfy/TestNtfyNotification.js +1 -0
- package/dist/notifications/templates/push/test-ntfy/TestNtfyNotification.js.map +1 -0
- 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/PlanService.d.ts +1 -1
- 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/SettingsService.d.ts +3 -2
- package/dist/services/SettingsService.d.ts.map +1 -1
- package/dist/services/SettingsService.js +1 -1
- package/dist/services/SettingsService.js.map +1 -1
- package/dist/strategies/snapshot/SnapshotStrategy.d.ts +2 -0
- package/dist/strategies/snapshot/SnapshotStrategy.d.ts.map +1 -1
- package/dist/types/notifications.d.ts +8 -0
- package/dist/types/notifications.d.ts.map +1 -1
- package/dist/utils/executeUserScript.d.ts.map +1 -1
- package/dist/utils/executeUserScript.js +1 -1
- package/dist/utils/executeUserScript.js.map +1 -1
- package/dist/utils/providers/_features.d.ts +4 -4
- package/dist/utils/providers/_features.js +1 -1
- package/dist/utils/providers/_features.js.map +1 -1
- package/dist/utils/providers/_s3Options.d.ts.map +1 -1
- package/dist/utils/providers/_s3Options.js +1 -1
- package/dist/utils/providers/_s3Options.js.map +1 -1
- package/dist/utils/providers/{boxCom.d.ts → box.d.ts} +1 -1
- package/dist/utils/providers/box.d.ts.map +1 -0
- package/dist/utils/providers/box.js.map +1 -0
- package/dist/utils/providers/{filesCom.d.ts → filescom.d.ts} +1 -1
- package/dist/utils/providers/filescom.d.ts.map +1 -0
- package/dist/utils/providers/{filesCom.js.map → filescom.js.map} +1 -1
- package/dist/utils/providers/{oracle.d.ts → oracleobjectstorage.d.ts} +1 -1
- package/dist/utils/providers/oracleobjectstorage.d.ts.map +1 -0
- package/dist/utils/providers/oracleobjectstorage.js.map +1 -0
- package/dist/utils/providers/protondrive.js +1 -1
- package/dist/utils/providers/protondrive.js.map +1 -1
- package/dist/utils/providers/s3compatible.js +1 -1
- package/dist/utils/providers/s3compatible.js.map +1 -1
- package/dist/utils/providers/smb.js +1 -1
- package/dist/utils/providers/smb.js.map +1 -1
- package/dist/utils/providers.d.ts +1 -1
- package/dist/utils/providers.d.ts.map +1 -1
- package/dist/utils/providers.js +1 -1
- package/dist/utils/providers.js.map +1 -1
- package/dist/utils/rclone/rclone.js.map +1 -1
- package/dist/utils/restic/restic.js.map +1 -1
- package/package.json +1 -1
- package/dist/utils/providers/boxCom.d.ts.map +0 -1
- package/dist/utils/providers/boxCom.js.map +0 -1
- package/dist/utils/providers/filesCom.d.ts.map +0 -1
- package/dist/utils/providers/oracle.d.ts.map +0 -1
- package/dist/utils/providers/oracle.js.map +0 -1
- /package/dist/utils/providers/{boxCom.js → box.js} +0 -0
- /package/dist/utils/providers/{filesCom.js → filescom.js} +0 -0
- /package/dist/utils/providers/{oracle.js → oracleobjectstorage.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
export class PlanController{planService;constructor(planService){this.planService=planService}async getPlans(req,res){try{const allPlans=await this.planService.getAllPlans();res.status(200).json({success:!0,result:allPlans||[]})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:"Internal Server Error. Details: "+(appError?.message||"Unknown Error")})}}async getPlan(req,res){if(req.params.id)try{const thePlan=await this.planService.getPlan(req.params.id,!0);res.status(200).json({success:!0,result:thePlan})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Internal Server Error"})}else res.status(400).json({success:!1,error:"Plan ID is required"})}async checkActiveBackupsOrRestore(req,res){if(req.params.id)try{const type="restore"===req.query.type?"restore":"backup",hasActiveBackup=await this.planService.checkActiveBackupsOrRestore(req.params.id,type);res.status(200).json({success:!0,result:hasActiveBackup})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:"Internal Server Error. Details: "+(appError?.message||"Unknown Error")})}else res.status(400).json({success:!1,error:"Plan ID is required"})}async createPlan(req,res){const planPayload=req.body;try{if(!(planPayload&&planPayload.settings&&planPayload.settings.interval&&planPayload.storage.id&&planPayload.sourceType&&planPayload.sourceConfig))return void res.status(400).json({success:!1,error:"Required fields missing: interval, storage Id, sourceId, sourceType, sourceConfig"});const plan=await this.planService.createPlan(planPayload);res.status(201).json({success:!0,result:plan})}catch(error){const appError=error;return void res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to create plan"})}}async updatePlan(req,res){const planPayload=req.body.plan;try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required."});if(!planPayload)return void res.status(400).json({success:!1,error:"Payload Missing."});const updatedPlan=await this.planService.updatePlan(req.params.id,planPayload);res.status(200).json({success:!0,result:updatedPlan})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to update plan"})}}async deletePlan(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const removeRemoteData=!!req.query.removeData;await this.planService.deletePlan(req.params.id,removeRemoteData),res.status(200).json({success:!0,message:"Plan deleted successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to delete plan"})}}async performBackup(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});await this.planService.performBackup(req.params.id)
|
|
1
|
+
export class PlanController{planService;constructor(planService){this.planService=planService}async getPlans(req,res){try{const allPlans=await this.planService.getAllPlans();res.status(200).json({success:!0,result:allPlans||[]})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:"Internal Server Error. Details: "+(appError?.message||"Unknown Error")})}}async getPlan(req,res){if(req.params.id)try{const thePlan=await this.planService.getPlan(req.params.id,!0);res.status(200).json({success:!0,result:thePlan})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Internal Server Error"})}else res.status(400).json({success:!1,error:"Plan ID is required"})}async checkActiveBackupsOrRestore(req,res){if(req.params.id)try{const type="restore"===req.query.type?"restore":"backup",hasActiveBackup=await this.planService.checkActiveBackupsOrRestore(req.params.id,type);res.status(200).json({success:!0,result:hasActiveBackup})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:"Internal Server Error. Details: "+(appError?.message||"Unknown Error")})}else res.status(400).json({success:!1,error:"Plan ID is required"})}async createPlan(req,res){const planPayload=req.body;try{if(!(planPayload&&planPayload.settings&&planPayload.settings.interval&&planPayload.storage.id&&planPayload.sourceType&&planPayload.sourceConfig))return void res.status(400).json({success:!1,error:"Required fields missing: interval, storage Id, sourceId, sourceType, sourceConfig"});const plan=await this.planService.createPlan(planPayload);res.status(201).json({success:!0,result:plan})}catch(error){const appError=error;return void res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to create plan"})}}async updatePlan(req,res){const planPayload=req.body.plan;try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required."});if(!planPayload)return void res.status(400).json({success:!1,error:"Payload Missing."});const updatedPlan=await this.planService.updatePlan(req.params.id,planPayload);res.status(200).json({success:!0,result:updatedPlan})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to update plan"})}}async deletePlan(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const removeRemoteData=!!req.query.removeData;await this.planService.deletePlan(req.params.id,removeRemoteData),res.status(200).json({success:!0,message:"Plan deleted successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to delete plan"})}}async performBackup(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const result=await this.planService.performBackup(req.params.id);res.status(200).json({success:!0,message:result||"Backup initiated successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to initiate backup"})}}async pauseBackup(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});await this.planService.pauseBackup(req.params.id),res.status(200).json({success:!0,message:"Backup paused successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError.message||"Failed to pause backup"})}}async resumeBackup(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});await this.planService.resumeBackup(req.params.id),res.status(200).json({success:!0,message:"Backup resumed successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError.message||"Failed to pause backup"})}}async pruneBackup(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const pruneResult=await this.planService.pruneBackups(req.params.id);res.status(200).json({success:!0,message:pruneResult||"Backup pruned successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError.message||"Failed to prune backups"})}}async unlockRepo(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const result=await this.planService.unlockRepo(req.params.id);res.status(result.success?200:500).json(result)}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError.message||"Failed to unlock repository"})}}async deleteReplicationStorage(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const{storageID:storageID,storagePath:storagePath,removeData:removeData,replicationId:replicationId}=req.body;if(!storageID||!storagePath)return void res.status(400).json({success:!1,error:"storageID and storagePath are required"});const result=await this.planService.deleteReplicationStorage(req.params.id,storageID,storagePath,!0===removeData,replicationId);res.status(200).json(result)}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError.message||"Failed to remove replication storage"})}}async getLogs(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const logs=await this.planService.getPlanLogs(req.params.id);res.status(200).json({success:!0,logs:logs})}catch(error){const appError=error;return void res.status(appError.statusCode||500).json({success:!1,error:"Failed to get logs: "+appError.message})}}async downloadLogs(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Plan ID is required"});const fileStream=await this.planService.downloadPlanLogs(req.params.id);res.setHeader("Content-Type","text/plain"),res.setHeader("Content-Disposition",'attachment; filename="plan.log"'),fileStream.pipe(res)}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:`Failed to download logs: ${appError.message}`})}}async checkIntegrity(req,res){if(req.params.id)try{const result=await this.planService.checkIntegrity(req.params.id);res.status(result.success?200:500).json(result)}catch(error){return void res.status(500).json({success:!1,error:"Internal Server Error"})}else res.status(400).json({success:!1,error:"Plan ID is required"})}async sendTestBackupNotification(req,res){if(req.body.planId&&req.body.notificationCase&&req.body.channelSettings&&req.body.notificationChannel)try{const notificationChannel=req.body.notificationChannel;await this.planService.sendTestNotification(req.body.planId,notificationChannel,req.body.notificationCase,req.body.channelSettings),res.status(200).json({success:!0,message:"Test notification sent successfully"})}catch(error){const appError=error;res.status(appError.statusCode||500).json({success:!1,error:appError?.message||"Failed to send test notification"})}else res.status(400).json({success:!1,error:"Payload Missing."})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanController.js","sourceRoot":"","sources":["../../src/controllers/PlanController.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlanController.js","sourceRoot":"","sources":["../../src/controllers/PlanController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsController.d.ts","sourceRoot":"","sources":["../../src/controllers/SettingsController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,qBAAa,kBAAkB;IAClB,SAAS,CAAC,eAAe,EAAE,eAAe;gBAAhC,eAAe,EAAE,eAAe;IAEhD,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3D,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvD,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B1D,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"SettingsController.d.ts","sourceRoot":"","sources":["../../src/controllers/SettingsController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,qBAAa,kBAAkB;IAClB,SAAS,CAAC,eAAe,EAAE,eAAe;gBAAhC,eAAe,EAAE,eAAe;IAEhD,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3D,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvD,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B1D,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC/D,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBtD,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B3D,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB9D,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAkClE,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAQpE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export class SettingsController{settingsService;constructor(settingsService){this.settingsService=settingsService}async getMainSettings(req,res){try{const appSettings=await this.settingsService.getMainSettings();return void res.status(appSettings?200:404).json({success:!0,result:appSettings})}catch(error){res.status(500).json({success:!1,error:"couldn't Retrieve App settings."})}}async getSettings(req,res){if(req.params.id)try{const appSettings=await this.settingsService.getSettings(parseInt(req.params.id,10));res.status(appSettings?200:404).json({success:!0,result:appSettings})}catch(error){res.status(500).json({success:!1,error:"couldn't Retrieve settings for the given ID."})}else res.status(400).json({success:!1,error:"Settings ID is required"})}async updateSettings(req,res){if(!req.params.id||!req.body.settings)return void res.status(400).json({success:!1,error:"Settings ID or Settings Data Missing"});const appSettings=req.body.settings;try{const updatedSettings=await this.settingsService.updateSettings(parseInt(req.params.id,10),appSettings);return void res.status(updatedSettings?200:404).json({success:!0,result:updatedSettings})}catch(error){return void res.status(500).json({success:!1,error:error instanceof Error?error.message:"Failed to update settings"})}}async validateIntegration(req,res){if(!(req.body.settingsID&&req.body.type&&req.body.settings&&req.body.test))return void res.status(400).json({success:!1,error:"Integration Payload Missing."});const appSettings=req.body.settings,integrationType=req.body.type;try{return await this.settingsService.validateIntegration(parseInt(req.body.settingsID,10),integrationType,req.body.test,appSettings),void res.status(200).json({success:!0,result:"
|
|
1
|
+
export class SettingsController{settingsService;constructor(settingsService){this.settingsService=settingsService}async getMainSettings(req,res){try{const appSettings=await this.settingsService.getMainSettings();return void res.status(appSettings?200:404).json({success:!0,result:appSettings})}catch(error){res.status(500).json({success:!1,error:"couldn't Retrieve App settings."})}}async getSettings(req,res){if(req.params.id)try{const appSettings=await this.settingsService.getSettings(parseInt(req.params.id,10));res.status(appSettings?200:404).json({success:!0,result:appSettings})}catch(error){res.status(500).json({success:!1,error:"couldn't Retrieve settings for the given ID."})}else res.status(400).json({success:!1,error:"Settings ID is required"})}async updateSettings(req,res){if(!req.params.id||!req.body.settings)return void res.status(400).json({success:!1,error:"Settings ID or Settings Data Missing"});const appSettings=req.body.settings;try{const updatedSettings=await this.settingsService.updateSettings(parseInt(req.params.id,10),appSettings);return void res.status(updatedSettings?200:404).json({success:!0,result:updatedSettings})}catch(error){return void res.status(500).json({success:!1,error:error instanceof Error?error.message:"Failed to update settings"})}}async validateIntegration(req,res){if(!(req.body.settingsID&&req.body.type&&req.body.settings&&req.body.test))return void res.status(400).json({success:!1,error:"Integration Payload Missing."});const appSettings=req.body.settings,integrationType=req.body.type;try{return await this.settingsService.validateIntegration(parseInt(req.body.settingsID,10),integrationType,req.body.test,appSettings),void res.status(200).json({success:!0,result:"Notification Sent Successfully. Integration Validated."})}catch(error){return void res.status(500).json({success:!1,error:error instanceof Error?error.message:`Failed to send test notification using ${integrationType}.`})}}async getAppLogs(req,res){try{if(!req.params.id)return void res.status(400).json({success:!1,error:"Settings ID is required"});const logs=await this.settingsService.getAppLogs(parseInt(req.params.id,10));return void res.status(200).json({success:!0,result:logs})}catch(error){return void res.status(500).json({success:!1,error:"Failed to get logs: "+error.message})}}async downloadAppLogs(req,res){if(req.params.id)try{const logFileStream=await this.settingsService.getAppLogsFile();return res.setHeader("Content-Type","text/plain"),res.setHeader("Content-Disposition",'attachment; filename="app.log"'),void logFileStream.pipe(res)}catch(error){return void res.status(500).json({success:!1,error:`Failed to download logs: ${error.message}`})}else res.status(400).json({success:!1,error:"Settings ID is required"})}async setupTwoFactorAuth(req,res){try{const{qrCodeDataUrl:qrCodeDataUrl,setupKey:setupKey,tempSecret:tempSecret}=await this.settingsService.setupTwoFactorAuth();req.session.totpSecret=tempSecret,res.status(200).json({success:!0,result:{qrCodeDataUrl:qrCodeDataUrl,setupKey:setupKey}})}catch(error){res.status(error.statusCode||500).json({success:!1,error:error.message})}}async finalizeTwoFactorSetup(req,res){const{code:code}=req.body,settingsId=parseInt(req.params.id,10),tempSecret=req.session.totpSecret;if(tempSecret)try{const{recoveryCodes:recoveryCodes}=await this.settingsService.finalizeTwoFactorSetup(tempSecret,code,settingsId);delete req.session.totpSecret,res.status(200).json({success:!0,result:{recoveryCodes:recoveryCodes}})}catch(error){res.status(error.statusCode||500).json({success:!1,error:error.message})}else res.status(400).json({success:!1,error:"Your session has expired. Please start the setup process again."})}async checkLatestVersion(req,res){try{const latestVersion=await this.settingsService.checkLatestVersion();res.status(200).json({success:!0,result:{latestVersion:latestVersion}})}catch(error){res.status(error.statusCode||500).json({success:!1,error:error.message})}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsController.js","sourceRoot":"","sources":["../../src/controllers/SettingsController.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SettingsController.js","sourceRoot":"","sources":["../../src/controllers/SettingsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStorageManager.d.ts","sourceRoot":"","sources":["../../src/managers/BaseStorageManager.ts"],"names":[],"mappings":"AAGA,qBAAa,kBAAkB;IACxB,YAAY,CACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseStorageManager.d.ts","sourceRoot":"","sources":["../../src/managers/BaseStorageManager.ts"],"names":[],"mappings":"AAGA,qBAAa,kBAAkB;IACxB,YAAY,CACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,GAAG,CAAC;IA+FT,YAAY,CACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,OAAO,CAAC,GAAG,CAAC;IA4CT,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAexC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkE3C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAe1F,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC;IAe3B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,GAAG,OAAO,CAAC,GAAG,CAAC;IAyB9D,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAehE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAgBjE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{providers}from"../utils/providers";import{runRcloneCommand}from"../utils/rclone/rclone";export class BaseStorageManager{async createRemote(type,name,authType,credentials,settings){const provider=providers[type],bucketName=credentials?.bucket?credentials.bucket.trim():"";if(!provider&&"local"!==type)throw new Error(`Unsupported storage type: ${type}`);
|
|
1
|
+
import{providers}from"../utils/providers";import{runRcloneCommand}from"../utils/rclone/rclone";export class BaseStorageManager{async createRemote(type,name,authType,credentials,settings){const provider=providers[type],bucketName=credentials?.bucket?credentials.bucket.trim():"";if(!provider&&"local"!==type)throw new Error(`Unsupported storage type: ${type}`);const rcloneStorageType=provider?.type||type;if("s3"===rcloneStorageType&&!bucketName)return{success:!1,result:"Bucket Name is required."};const args=["config","create",name,rcloneStorageType],setupArgs=provider.setup(credentials,authType);if(!1===setupArgs)throw new Error("Missing Required credentials.");if(args.push(...setupArgs),settings&&Object.entries(settings).forEach(([key,value])=>{args.push(key,value)}),"onedrive"===type&&"oauth"===authType&&credentials.token){const oneDriveCreds=JSON.parse(credentials.token),myHeaders=new Headers;myHeaders.append("Authorization",oneDriveCreds.access_token);try{await fetch("https://graph.microsoft.com/v1.0/me/drive",{method:"GET",headers:myHeaders,redirect:"follow"}).then(response=>response.json()).then(result=>{result&&result.id&&result.driveType&&args.push("drive_id",result.id,"drive_type",result.driveType)})}catch(error){return{success:!1,result:"Failed to fetch OneDrive drive information. Please verify your credentials and try again."}}}args.push("--obscure","--non-interactive");try{const output=await runRcloneCommand(args);try{await runRcloneCommand(["lsd",name+":"+(bucketName??"")]);return{success:!0,result:output}}catch(error){const storageListingError=(error?.message||"").split("\n")[0];return await runRcloneCommand(["config","delete",name]),{success:!1,result:storageListingError}}}catch(error){return{success:!1,result:(error?.message||"").split("\n")[0]}}}async updateRemote(name,newSettings,oldSettings){const availableCreds=newSettings.credentials||oldSettings.credentials,bucketName=availableCreds?.bucket?availableCreds?.bucket.trim():"",updateArgs=["config","update",name];Object.entries(newSettings).forEach(([key,value])=>{updateArgs.push(key,value.toString())});try{const output=await runRcloneCommand([...updateArgs,"--non-interactive"]);try{await runRcloneCommand(["lsd",name+":"+(bucketName??"")]);return{success:!0,result:output}}catch(error){const revertArgs=["config","update",name,"--non-interactive"];return Object.entries(oldSettings).forEach(([key,value])=>{revertArgs.push(key,value.toString())}),await runRcloneCommand(revertArgs),{success:!1,result:error?.message||""}}}catch(error){return{success:!1,result:error?.message||""}}}async deleteRemote(name){try{return{success:!0,result:await runRcloneCommand(["config","delete",name])}}catch(error){return{success:!1,result:error?.message||""}}}async getRemoteConfig(name){try{const lines=(await runRcloneCommand(["config","show",name])).trim().split("\n"),result={};let remoteName="";const errorLines=[],configLines=[];for(const line of lines){const trimmedLine=line.trim();if(trimmedLine)if(trimmedLine.startsWith("[")&&trimmedLine.endsWith("]"))remoteName=trimmedLine.slice(1,-1),result.name=remoteName;else if(configLines.push(trimmedLine),trimmedLine.startsWith("#"))errorLines.push(trimmedLine);else if(trimmedLine.includes(" = ")){const[key,...valueParts]=trimmedLine.split(" = "),value=valueParts.join(" = ");key&&void 0!==value&&(result[key.trim()]=value.trim())}}return configLines.length>0&&configLines.every(line=>line.startsWith("#"))?{success:!1,result:errorLines.join(" ").replace(/^#\s*/,"")}:{success:!0,result:result}}catch(error){return{success:!1,result:error?.message||""}}}async verifyRemote(name,bucket){try{return{success:!0,result:await runRcloneCommand(["lsd",name+":"+(bucket??"")])}}catch(error){return{success:!1,result:error?.message||""}}}async listRemotes(){try{return{success:!0,result:await runRcloneCommand(["listremotes"])}}catch(error){return{success:!1,result:error?.message||""}}}async browseRemote(remote,path="/"){try{const output=await runRcloneCommand(["lsjson",`${remote}:${path}`]);return{success:!0,result:{path:path,items:JSON.parse(output).map(item=>({name:item.Name,type:item.IsDir?"dir":"file",size:item.Size,modTime:item.ModTime,path:item.Path}))}}}catch(error){return{success:!1,result:error?.message||""}}}async getRemoteFileContent(remote,path){try{return{success:!0,result:await runRcloneCommand(["cat",`${remote}:${path}`])}}catch(error){return{success:!1,result:error?.message||""}}}async getDownloadLink(remote,path){try{return{success:!0,result:(await runRcloneCommand(["link",`${remote}:${path}`])).trim()}}catch(error){return{success:!1,result:error?.message||""}}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStorageManager.js","sourceRoot":"","sources":["../../src/managers/BaseStorageManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,OAAO,kBAAkB;IAC9B,KAAK,CAAC,YAAY,CACjB,IAAY,EACZ,IAAY,EACZ,QAAgB,EAChB,WAAmC,EACnC,QAAiC;QAEjC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,
|
|
1
|
+
{"version":3,"file":"BaseStorageManager.js","sourceRoot":"","sources":["../../src/managers/BaseStorageManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,11 @@ export declare class CronManager<T extends ScheduleOptions> {
|
|
|
20
20
|
private readonly SCHEDULE_FILE;
|
|
21
21
|
private constructor();
|
|
22
22
|
static getInstance<T extends ScheduleOptions>(taskCallbacks: TaskCallbacks, scheduleFilePath?: string): CronManager<T>;
|
|
23
|
+
/**
|
|
24
|
+
* Merge new taskCallbacks into the existing map and patch any already-loaded
|
|
25
|
+
* schedules whose callback was undefined because the callback wasn't registered yet.
|
|
26
|
+
*/
|
|
27
|
+
private registerCallbacks;
|
|
23
28
|
private saveSchedules;
|
|
24
29
|
loadSchedules(): Promise<void>;
|
|
25
30
|
scheduleTask(id: string, cronExpression: string, options: T, scheduleType: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CronManager.d.ts","sourceRoot":"","sources":["../../src/managers/CronManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAK9B,UAAU,eAAe;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAC9D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB;AASD,UAAU,aAAa,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;CACX;AAED,UAAU,aAAa;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACvE;AAED,qBAAa,WAAW,CAAC,CAAC,SAAS,eAAe;IAEjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmB;IAC1C,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO;WASO,WAAW,CAAC,CAAC,SAAS,eAAe,EAClD,aAAa,EAAE,aAAa,EAC5B,gBAAgB,CAAC,EAAE,MAAM,GACvB,WAAW,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"CronManager.d.ts","sourceRoot":"","sources":["../../src/managers/CronManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAK9B,UAAU,eAAe;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAC9D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB;AASD,UAAU,aAAa,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;CACX;AAED,UAAU,aAAa;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACvE;AAED,qBAAa,WAAW,CAAC,CAAC,SAAS,eAAe;IAEjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmB;IAC1C,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO;WASO,WAAW,CAAC,CAAC,SAAS,eAAe,EAClD,aAAa,EAAE,aAAa,EAC5B,gBAAgB,CAAC,EAAE,MAAM,GACvB,WAAW,CAAC,CAAC,CAAC;IASjB;;;OAGG;YACW,iBAAiB;YAsCjB,aAAa;IAkBrB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB9B,YAAY,CACjB,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,CAAC,EACV,YAAY,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAoCV,cAAc,CACnB,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,CAAC,EACV,YAAY,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAoCV,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IAKtE,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS;IAKrD,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAKxD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB3C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAiBlD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Cron}from"croner";import path from"path";import{mkdir,writeFile,readFile}from"fs/promises";import{appPaths}from"../utils/AppPaths";export class CronManager{static instance;schedules=new Map;initialized;taskCallbacks;SCHEDULE_FILE;constructor(taskCallbacks,scheduleFilePath){const dataDir=appPaths.getDataDir();this.SCHEDULE_FILE=scheduleFilePath||path.join(dataDir,"schedules.json"),this.taskCallbacks=taskCallbacks,this.initialized=this.loadSchedules()}static getInstance(taskCallbacks,scheduleFilePath){return CronManager.instance
|
|
1
|
+
import{Cron}from"croner";import path from"path";import{mkdir,writeFile,readFile}from"fs/promises";import{appPaths}from"../utils/AppPaths";export class CronManager{static instance;schedules=new Map;initialized;taskCallbacks;SCHEDULE_FILE;constructor(taskCallbacks,scheduleFilePath){const dataDir=appPaths.getDataDir();this.SCHEDULE_FILE=scheduleFilePath||path.join(dataDir,"schedules.json"),this.taskCallbacks=taskCallbacks,this.initialized=this.loadSchedules()}static getInstance(taskCallbacks,scheduleFilePath){return CronManager.instance?CronManager.instance.registerCallbacks(taskCallbacks):CronManager.instance=new CronManager(taskCallbacks,scheduleFilePath),CronManager.instance}async registerCallbacks(callbacks){let hasNew=!1;for(const key of Object.keys(callbacks))this.taskCallbacks[key]||(this.taskCallbacks[key]=callbacks[key],hasNew=!0);if(hasNew){await this.initialized;for(const[id,entries]of this.schedules.entries()){const patched=[];for(const entry of entries){const cb=this.taskCallbacks[entry.type];if(!entry.options.taskCallback&&cb){entry.cron.stop();const patchedOptions={...entry.options,taskCallback:cb},cronExpression=patchedOptions.cronExpression,newCron=new Cron(cronExpression,()=>{patchedOptions.taskCallback(id,patchedOptions)});patchedOptions.isActive||newCron.pause(),patched.push({type:entry.type,cron:newCron,options:patchedOptions})}else patched.push(entry)}this.schedules.set(id,patched)}}}async saveSchedules(){const scheduleData=[];this.schedules.forEach((entries,id)=>{entries.forEach(entry=>{scheduleData.push({id:id,cronExpression:entry.options.cronExpression,scheduleType:entry.type,options:entry.options})})}),await mkdir(path.dirname(this.SCHEDULE_FILE),{recursive:!0}),await writeFile(this.SCHEDULE_FILE,JSON.stringify(scheduleData,null,2))}async loadSchedules(){try{const data=await readFile(this.SCHEDULE_FILE,"utf8"),scheduleData=JSON.parse(data);for(const{id:id,cronExpression:cronExpression,options:options,scheduleType:scheduleType}of scheduleData){const taskOptions={...options,taskCallback:this.taskCallbacks[scheduleType]};await this.scheduleTask(id,cronExpression,taskOptions,scheduleType)}}catch(error){error.code}}async scheduleTask(id,cronExpression,options,scheduleType){const existingSchedules=this.schedules.get(id)||[];if(!existingSchedules.find(s=>s.type===scheduleType))try{const cron=new Cron(cronExpression,()=>{options&&"object"==typeof options&&"taskCallback"in options&&options.taskCallback&&options.taskCallback(id,options)});options&&"object"==typeof options&&"isActive"in options&&!options.isActive&&cron.pause(),existingSchedules.push({type:scheduleType,cron:cron,options:options}),this.schedules.set(id,existingSchedules),await this.saveSchedules()}catch(error){throw new Error(`Could Not Schedule Cron. ${error.message}`)}}async updateSchedule(id,cronExpression,options,scheduleType){await this.initialized;const existingSchedules=this.schedules.get(id);if(existingSchedules){const scheduleToUpdate=existingSchedules.find(s=>s.type===scheduleType);if(scheduleToUpdate)try{scheduleToUpdate.cron.stop();const newCron=new Cron(cronExpression,()=>{options&&"object"==typeof options&&"taskCallback"in options&&options.taskCallback(id,options)});options&&"object"==typeof options&&"isActive"in options&&!options.isActive&&newCron.pause();const updatedSchedules=existingSchedules.map(s=>s.type===scheduleType?{type:scheduleType,cron:newCron,options:options}:s);this.schedules.set(id,updatedSchedules),await this.saveSchedules()}catch(error){throw new Error(`Could Not Schedule Cron with Updated Settings. ${error.message}`)}}}async removeSchedule(id){await this.initialized;const schedules=this.schedules.get(id);schedules&&(schedules.forEach(schedule=>schedule.cron.stop()),this.schedules.delete(id),await this.saveSchedules())}async getSchedule(id){return await this.initialized,this.schedules.get(id)}getScheduleSync(id){return this.schedules.get(id)}async getSchedules(){return await this.initialized,this.schedules}async pauseSchedule(id){await this.initialized;const schedules=this.schedules.get(id);if(schedules){const success=schedules.every(schedule=>(schedule.options.isActive=!1,schedule.cron.pause()));return success&&await this.saveSchedules(),success}return!1}async resumeSchedule(id){await this.initialized;const schedules=this.schedules.get(id);if(schedules){const success=schedules.every(schedule=>(schedule.options.isActive=!0,schedule.cron.resume()));return success&&await this.saveSchedules(),success}return!1}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CronManager.js","sourceRoot":"","sources":["../../src/managers/CronManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CronManager.js","sourceRoot":"","sources":["../../src/managers/CronManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAyB7C,MAAM,OAAO,WAAW;IACvB,wCAAwC;IAChC,MAAM,CAAC,QAAQ,CAAmB;IAClC,SAAS,GAAoC,IAAI,GAAG,EAAE,CAAC;IACvD,WAAW,CAAgB;IAC3B,aAAa,CAAgB;IACpB,aAAa,CAAS;IAEvC,+BAA+B;IAC/B,YAAoB,aAA4B,EAAE,gBAAyB;QAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,gBAAgB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,2CAA2C;IACpC,MAAM,CAAC,WAAW,CACxB,aAA4B,EAC5B,gBAAyB;QAEzB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC3B,WAAW,CAAC,QAAQ,GAAG,IAAI,WAAW,CAAI,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACP,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,WAAW,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAAC,SAAwB;QACvD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;gBACzC,MAAM,GAAG,IAAI,CAAC;YACf,CAAC;QACF,CAAC;QACD,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,kDAAkD;QAClD,MAAM,IAAI,CAAC,WAAW,CAAC;QAEvB,2EAA2E;QAC3E,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,MAAM,OAAO,GAAuB,EAAE,CAAC;YACvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,CAAE,KAAK,CAAC,OAAe,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;oBAChD,gEAAgE;oBAChE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClB,MAAM,cAAc,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,EAAO,CAAC;oBACnE,MAAM,cAAc,GAAI,cAAsB,CAAC,cAAc,CAAC;oBAC9D,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;wBAC5C,cAAsB,CAAC,YAAY,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;oBAC1D,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;wBAC9B,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjB,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;gBAC5E,CAAC;qBAAM,CAAC;oBACP,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC;YACF,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,aAAa;QAC1B,MAAM,YAAY,GAAwB,EAAE,CAAC;QAE7C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE;YACtC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACvB,YAAY,CAAC,IAAI,CAAC;oBACjB,EAAE;oBACF,cAAc,EAAG,KAAK,CAAC,OAAe,CAAC,cAAc;oBACrD,YAAY,EAAE,KAAK,CAAC,IAAI;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACtB,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YACxD,MAAM,YAAY,GAAwB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE3D,KAAK,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,YAAY,EAAE,CAAC;gBAC1E,MAAM,WAAW,GAAG;oBACnB,GAAG,OAAO;oBACV,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;iBAC9C,CAAC;gBAEF,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YACxE,CAAC;QACF,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,YAAY,CACjB,EAAU,EACV,cAAsB,EACtB,OAAU,EACV,YAAoB;QAEpB,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAEvD,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QAC9E,IAAI,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CACX,uBAAuB,EAAE,eAAe,YAAY,6BAA6B,CACjF,CAAC;YACF,OAAO;QACR,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;gBAC1C,IACC,OAAO;oBACP,OAAO,OAAO,KAAK,QAAQ;oBAC3B,cAAc,IAAI,OAAO;oBACxB,OAAe,CAAC,YAAY,EAC5B,CAAC;oBACD,OAAe,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC5C,CAAC;YACF,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,UAAU,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC1F,IAAI,CAAC,KAAK,EAAE,CAAC;YACd,CAAC;YAED,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;IACF,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,EAAU,EACV,cAAsB,EACtB,OAAU,EACV,YAAoB;QAEpB,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,iBAAiB,EAAE,CAAC;YACvB,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;YAC9E,IAAI,gBAAgB,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACJ,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC7B,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;wBAC7C,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,cAAc,IAAI,OAAO,EAAE,CAAC;4BACxE,OAAe,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;wBAC5C,CAAC;oBACF,CAAC,CAAC,CAAC;oBAEH,IACC,OAAO;wBACP,OAAO,OAAO,KAAK,QAAQ;wBAC3B,UAAU,IAAI,OAAO;wBACrB,CAAC,OAAO,CAAC,QAAQ,EAChB,CAAC;wBACF,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjB,CAAC;oBAED,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAClD,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAC5E,CAAC;oBAEF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;oBACzC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC5B,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,kDAAkD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpF,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC9B,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC3B,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,EAAU;QACzB,0EAA0E;QAC1E,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC7B,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC1C,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;gBAClC,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5B,CAAC;YAED,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC9B,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC1C,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5B,CAAC;YAED,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;CACD"}
|
|
@@ -25,6 +25,7 @@ export declare class BackupNotification {
|
|
|
25
25
|
sendEmail(plan: PlanFull, notificationType: NotificationType, backupData?: BackupDataType, notificationCase?: string): Promise<void>;
|
|
26
26
|
sendSlack(plan: PlanFull, notificationType: NotificationType, backupData?: BackupDataType, notificationCase?: string): Promise<void>;
|
|
27
27
|
sendDiscord(plan: PlanFull, notificationType: NotificationType, backupData?: BackupDataType, notificationCase?: string): Promise<void>;
|
|
28
|
+
sendPushNotification(plan: PlanFull, notificationType: NotificationType, backupData?: BackupDataType, notificationCase?: string): Promise<void>;
|
|
28
29
|
getNotificationClass(plan: PlanFull, notificationType: NotificationType, backupData?: BackupDataType, output?: 'html' | 'json' | 'push' | 'slack' | 'discord'): Promise<BackupStartedNotification | BackupSuccessNotification | BackupFailedNotification | ReplicationFailedNotification>;
|
|
29
30
|
}
|
|
30
31
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackupNotification.d.ts","sourceRoot":"","sources":["../../src/notifications/BackupNotification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,4BAA4B,
|
|
1
|
+
{"version":3,"file":"BackupNotification.d.ts","sourceRoot":"","sources":["../../src/notifications/BackupNotification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,4BAA4B,EAA2B,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AAOvG,UAAU,cAAc;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,eAAe,GAAG,qBAAqB,CAAC;IAChD,mBAAmB,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC/C;AAED,KAAK,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,qBAAqB,CAAC;AAExF,qBAAa,kBAAkB;IAC9B,SAAS,CAAC,8BAA8B,mCAA6B;IACrE,SAAS,CAAC,8BAA8B,mCAA6B;IACrE,SAAS,CAAC,6BAA6B,kCAA4B;IACnE,SAAS,CAAC,kCAAkC,uCAAiC;IAC7E,SAAS,CAAC,2BAA2B,EAAE,4BAA4B,CAA+B;IAElG,UAAU,CAAC,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;IAQvD,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,cAAc;IAiBpF,SAAS,CACd,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,cAAc,EAC3B,gBAAgB,CAAC,EAAE,MAAM;IAmCpB,SAAS,CACd,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,cAAc,EAC3B,gBAAgB,CAAC,EAAE,MAAM;IAkCpB,WAAW,CAChB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,cAAc,EAC3B,gBAAgB,CAAC,EAAE,MAAM;IAkCpB,oBAAoB,CACzB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,cAAc,EAC3B,gBAAgB,CAAC,EAAE,MAAM;IAmDpB,oBAAoB,CACzB,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,CAAC,EAAE,cAAc,EAC3B,MAAM,GAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAkB;CA+FhE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{BackupStartedNotification}from"./templates/email/backup/BackupStartedNotification";import{BackupSuccessNotification}from"./templates/email/backup/BackupSuccessNotification";import{BackupFailedNotification}from"./templates/email/backup/BackupFailedNotification";import{ReplicationFailedNotification}from"./templates/email/backup/ReplicationFailedNotification";import{planLogger}from"../utils/logger";import{NotificationChannelResolver}from"../notifications/channels/NotificationChannelResolver";import{SlackChannel}from"../notifications/channels/SlackChannel";import{DiscordChannel}from"../notifications/channels/DiscordChannel";import{configService}from"../services/ConfigService";export class BackupNotification{BackupStartedNotificationClass=BackupStartedNotification;BackupSuccessNotificationClass=BackupSuccessNotification;BackupFailedNotificationClass=BackupFailedNotification;ReplicationFailedNotificationClass=ReplicationFailedNotification;notificationChannelResolver=NotificationChannelResolver;shouldSend(notificationCase,notificationType){return"both"===notificationCase||notificationCase===notificationType||"end"===notificationCase&&["success","failure"].includes(notificationType)}async send(plan,notificationType,backupData){const notification=plan.settings.notification;notification?.email?.enabled&&await this.sendEmail(plan,notificationType,backupData),notification?.slack?.enabled&&await this.sendSlack(plan,notificationType,backupData),notification?.discord?.enabled&&await this.sendDiscord(plan,notificationType,backupData)}async sendEmail(plan,notificationType,backupData,notificationCase){try{const notification=plan.settings.notification;if(!this.shouldSend(notification?.email?.case||"end",notificationType))
|
|
1
|
+
import{BackupStartedNotification}from"./templates/email/backup/BackupStartedNotification";import{BackupSuccessNotification}from"./templates/email/backup/BackupSuccessNotification";import{BackupFailedNotification}from"./templates/email/backup/BackupFailedNotification";import{ReplicationFailedNotification}from"./templates/email/backup/ReplicationFailedNotification";import{planLogger}from"../utils/logger";import{NotificationChannelResolver}from"../notifications/channels/NotificationChannelResolver";import{SlackChannel}from"../notifications/channels/SlackChannel";import{DiscordChannel}from"../notifications/channels/DiscordChannel";import{configService}from"../services/ConfigService";export class BackupNotification{BackupStartedNotificationClass=BackupStartedNotification;BackupSuccessNotificationClass=BackupSuccessNotification;BackupFailedNotificationClass=BackupFailedNotification;ReplicationFailedNotificationClass=ReplicationFailedNotification;notificationChannelResolver=NotificationChannelResolver;shouldSend(notificationCase,notificationType){return"both"===notificationCase||notificationCase===notificationType||"end"===notificationCase&&["success","failure"].includes(notificationType)}async send(plan,notificationType,backupData){const notification=plan.settings.notification;notification?.email?.enabled&&await this.sendEmail(plan,notificationType,backupData),notification?.slack?.enabled&&await this.sendSlack(plan,notificationType,backupData),notification?.discord?.enabled&&await this.sendDiscord(plan,notificationType,backupData),notification?.push?.enabled&&await this.sendPushNotification(plan,notificationType,backupData)}async sendEmail(plan,notificationType,backupData,notificationCase){try{const notification=plan.settings.notification;if(!this.shouldSend(notification?.email?.case||"end",notificationType))return;const emailType=notification?.email?.type||"smtp";if(!notification?.email?.emails)throw new Error("Email Notification Emails Missing.");const emailChannel=await this.notificationChannelResolver.getChannel(emailType),notificationClass=await this.getNotificationClass(plan,notificationType,backupData,"html"),notificationResult=await emailChannel.send(notificationClass,{emails:notification.email.emails});if(!notificationResult?.success)throw new Error(notificationResult?.result||"Unknown Error");planLogger("notification",plan.id,backupData?.id).info(`Backup ${notificationType} Notification Email Sent Successfully.`)}catch(error){const errorMessage=error instanceof Error?error.message:"Unknown Error.";planLogger("notification",plan.id,backupData?.id).error(`Error Sending Backup ${notificationType} Email Notification. Reason: ${errorMessage}`)}}async sendSlack(plan,notificationType,backupData,notificationCase){try{const notification=plan.settings.notification,theCase=notificationCase||(notification?.slack?.case||"end");if(!(!!notificationCase||this.shouldSend(theCase,notificationType)))return;const webhookUrl=notification?.slack?.url;if(!webhookUrl)throw new Error("Slack Webhook URL Missing.");const slackChannel=new SlackChannel(webhookUrl),notificationClass=await this.getNotificationClass(plan,notificationType,backupData,"slack"),notificationResult=await slackChannel.send(notificationClass);if(!notificationResult?.success)throw new Error(notificationResult?.result||"Unknown Error");planLogger("notification",plan.id,backupData?.id).info(`Backup ${notificationType} Slack Notification Sent Successfully.`)}catch(error){const errorMessage=error instanceof Error?error.message:"Unknown Error.";planLogger("notification",plan.id,backupData?.id).error(`Error Sending Backup ${notificationType} Slack Notification. Reason: ${errorMessage}`)}}async sendDiscord(plan,notificationType,backupData,notificationCase){try{const notification=plan.settings.notification,theCase=notificationCase||(notification?.discord?.case||"end");if(!(!!notificationCase||this.shouldSend(theCase,notificationType)))return;const webhookUrl=notification?.discord?.url;if(!webhookUrl)throw new Error("Discord Webhook URL Missing.");const discordChannel=new DiscordChannel(webhookUrl),notificationClass=await this.getNotificationClass(plan,notificationType,backupData,"discord"),notificationResult=await discordChannel.send(notificationClass);if(!notificationResult?.success)throw new Error(notificationResult?.result||"Unknown Error");planLogger("notification",plan.id,backupData?.id).info(`Backup ${notificationType} Discord Notification Sent Successfully.`)}catch(error){const errorMessage=error instanceof Error?error.message:"Unknown Error.";planLogger("notification",plan.id,backupData?.id).error(`Error Sending Backup ${notificationType} Discord Notification. Reason: ${errorMessage}`)}}async sendPushNotification(plan,notificationType,backupData,notificationCase){try{const{notification:notification}=plan.settings,theCase=notificationCase||(notification?.push?.case||"end");if(!(!!notificationCase||this.shouldSend(theCase,notificationType)))return;if(!notification?.push?.url)throw new Error("Push Notification URL missing.");const ntfyChannel=await this.notificationChannelResolver.getChannel("ntfy"),notificationClass=await this.getNotificationClass(plan,notificationType,backupData,"push"),body=notificationClass.getContent(),pushContent=JSON.parse(body),pushTags=notification?.push?.tags||"",result=await ntfyChannel.send(notificationClass,{url:notification.push.url,title:pushContent.title,body:pushContent.body,priority:pushContent.priority,tags:`${pushContent.emoji?`${pushContent.emoji}, `:""}${pushTags}`,icon:"https://pluton.b-cdn.net/logo.png",markdown:"yes",actions:pushContent.buttonText&&pushContent.buttonUrl?`view, ${pushContent.buttonText}, ${pushContent.buttonUrl}`:void 0});if(!result.success)throw new Error(result.result);planLogger("notification",plan.id,backupData?.id).info(`Backup ${notificationType} Notification Sent Successfully.`)}catch(error){const errorMessage=error instanceof Error?error.message:"Failed to Send Push Notification.";planLogger("notification",plan.id,backupData?.id).error(`Error Sending Backup ${notificationType} Webhook Notification. Reason: ${errorMessage}`)}}async getNotificationClass(plan,notificationType,backupData,output="html"){let notificationClass;const deviceName=plan.device?.name||"",storageName=plan.storage?.name||"",storageType=plan.storage?.type||"";switch(notificationType){case"replication_failure":notificationClass=new this.ReplicationFailedNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,error:backupData?.error||"Replication failed",startTime:backupData?.startTime||new Date,endTime:backupData?.endTime||new Date,failedMirrors:backupData?.failedMirrors,output:output});break;case"start":notificationClass=new this.BackupStartedNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,startTime:backupData?.startTime||new Date,stats:backupData?.stats,output:output});break;case"success":notificationClass=new this.BackupSuccessNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,startTime:backupData?.startTime||new Date,endTime:backupData?.endTime||new Date,stats:backupData?.stats,replicationFailures:backupData?.replicationFailures,output:output});break;case"failure":notificationClass=new this.BackupFailedNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,error:backupData?.error||"",startTime:backupData?.startTime||new Date,endTime:backupData?.endTime||new Date,stats:backupData?.stats,output:output});break;case"end":notificationClass=backupData?.error?new this.BackupFailedNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,error:backupData?.error||"",startTime:backupData?.startTime||new Date,endTime:backupData?.endTime||new Date,stats:backupData?.stats,output:output}):new this.BackupSuccessNotificationClass({appTitle:configService.config.APP_TITLE||"Pluton",plan:plan,deviceName:deviceName,storageName:storageName,storageType:storageType,startTime:backupData?.startTime||new Date,endTime:backupData?.endTime||new Date,stats:backupData?.stats,output:output})}return notificationClass}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackupNotification.js","sourceRoot":"","sources":["../../src/notifications/BackupNotification.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AACvG,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAa1D,MAAM,OAAO,kBAAkB;IACpB,8BAA8B,GAAG,yBAAyB,CAAC;IAC3D,8BAA8B,GAAG,yBAAyB,CAAC;IAC3D,6BAA6B,GAAG,wBAAwB,CAAC;IACzD,kCAAkC,GAAG,6BAA6B,CAAC;IACnE,2BAA2B,GAAiC,2BAA2B,CAAC;IAElG,UAAU,CAAC,gBAAwB,EAAE,gBAAwB;QAC5D,OAAO,CACN,gBAAgB,KAAK,MAAM;YAC3B,gBAAgB,KAAK,gBAAgB;YACrC,CAAC,gBAAgB,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CACjF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAc,EAAE,gBAAkC,EAAE,UAA2B;QACzF,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QAEhD,IAAI,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC5D,CAAC;IACF,CAAC;IAED,KAAK,CAAC,SAAS,CACd,IAAc,EACd,gBAAkC,EAClC,UAA2B,EAC3B,gBAAyB;QAEzB,IAAI,CAAC;YACJ,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,gBAAgB,CAAC,CAAC;YACzF,IAAI,CAAC,UAAU;gBAAE,
|
|
1
|
+
{"version":3,"file":"BackupNotification.js","sourceRoot":"","sources":["../../src/notifications/BackupNotification.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationChannelResolver.d.ts","sourceRoot":"","sources":["../../../src/notifications/channels/NotificationChannelResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"NotificationChannelResolver.d.ts","sourceRoot":"","sources":["../../../src/notifications/channels/NotificationChannelResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAA8B,MAAM,sBAAsB,CAAC;AAOjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,qBAAa,2BAA2B;IACvC,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,CAAuC;WAEvD,UAAU,CAAC,WAAW,GAAE,gBAAyB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkB7F,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,WAAW,CAAC,aAAa,CAAC;IAkB1F,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,WAAW,CAAC,aAAa,CAAC;IAoB1F,OAAO,CAAC,MAAM,CAAC,kBAAkB;CAQjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Cryptr from"cryptr";import{SMTPChannel}from"./SMTPChannel";import{getNestedValue,setNestedValue}from"../../utils/helpers";import{db}from"../../db/index";import{SettingsStore}from"../../stores/SettingsStore";import{configService}from"../../services/ConfigService";export class NotificationChannelResolver{static secretFields=["smtp.password"];static async getChannel(channelType="smtp"){const settingsStore=new SettingsStore(db),settingsData=await settingsStore.getFirst(),integration=settingsData?.settings?.integration,channelConfig=integration?.[channelType];if(!integration||!channelConfig)throw new Error(`${channelType} configuration is not available`);return new SMTPChannel(channelConfig)}static encryptSecrets(integration){const integrationEncrypted=JSON.parse(JSON.stringify(integration)),cryptr=new Cryptr(configService.config.SECRET);return this.secretFields.forEach(fieldPath=>{const value=getNestedValue(integration,fieldPath);value&&"string"==typeof value&&(this.isAlreadyEncrypted(value,cryptr)?setNestedValue(integrationEncrypted,fieldPath,value):setNestedValue(integrationEncrypted,fieldPath,cryptr.encrypt(value)))}),integrationEncrypted}static decryptSecrets(integration){const integrationDecrypted=JSON.parse(JSON.stringify(integration)),cryptr=new Cryptr(configService.config.SECRET);return this.secretFields.forEach(fieldPath=>{const value=getNestedValue(integration,fieldPath);if(value&&"string"==typeof value)try{const decryptedValue=cryptr.decrypt(value);setNestedValue(integrationDecrypted,fieldPath,decryptedValue)}catch(error){}}),integrationDecrypted}static isAlreadyEncrypted(value,cryptr){try{return cryptr.decrypt(value),!0}catch(error){return!1}}}
|
|
1
|
+
import Cryptr from"cryptr";import{SMTPChannel}from"./SMTPChannel";import{NtfyChannel}from"./NtfyChannel";import{getNestedValue,setNestedValue}from"../../utils/helpers";import{db}from"../../db/index";import{SettingsStore}from"../../stores/SettingsStore";import{configService}from"../../services/ConfigService";export class NotificationChannelResolver{static secretFields=["smtp.password","ntfy.authToken"];static async getChannel(channelType="smtp"){const settingsStore=new SettingsStore(db),settingsData=await settingsStore.getFirst(),integration=settingsData?.settings?.integration,channelConfig=integration?.[channelType];if(!integration||!channelConfig)throw new Error(`${channelType} configuration is not available`);switch(channelType){case"smtp":default:return new SMTPChannel(channelConfig);case"ntfy":return new NtfyChannel(channelConfig)}}static encryptSecrets(integration){const integrationEncrypted=JSON.parse(JSON.stringify(integration)),cryptr=new Cryptr(configService.config.SECRET);return this.secretFields.forEach(fieldPath=>{const value=getNestedValue(integration,fieldPath);value&&"string"==typeof value&&(this.isAlreadyEncrypted(value,cryptr)?setNestedValue(integrationEncrypted,fieldPath,value):setNestedValue(integrationEncrypted,fieldPath,cryptr.encrypt(value)))}),integrationEncrypted}static decryptSecrets(integration){const integrationDecrypted=JSON.parse(JSON.stringify(integration)),cryptr=new Cryptr(configService.config.SECRET);return this.secretFields.forEach(fieldPath=>{const value=getNestedValue(integration,fieldPath);if(value&&"string"==typeof value)try{const decryptedValue=cryptr.decrypt(value);setNestedValue(integrationDecrypted,fieldPath,decryptedValue)}catch(error){}}),integrationDecrypted}static isAlreadyEncrypted(value,cryptr){try{return cryptr.decrypt(value),!0}catch(error){return!1}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationChannelResolver.js","sourceRoot":"","sources":["../../../src/notifications/channels/NotificationChannelResolver.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAG7D,MAAM,OAAO,2BAA2B;IACvC,MAAM,CAAC,YAAY,GAAa,CAAC,eAAe,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NotificationChannelResolver.js","sourceRoot":"","sources":["../../../src/notifications/channels/NotificationChannelResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseNotification } from '../BaseNotification';
|
|
2
|
+
import { NotificationChannel } from '../NotificationChannel';
|
|
3
|
+
import { NTFYSettings } from '../../types/settings';
|
|
4
|
+
export declare class NtfyChannel implements NotificationChannel {
|
|
5
|
+
protected ntfySettings: NTFYSettings;
|
|
6
|
+
constructor(ntfySettings: NTFYSettings);
|
|
7
|
+
send(notification: BaseNotification, options?: Record<string, any>): Promise<{
|
|
8
|
+
success: boolean;
|
|
9
|
+
result: string;
|
|
10
|
+
}>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=NtfyChannel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NtfyChannel.d.ts","sourceRoot":"","sources":["../../../src/notifications/channels/NtfyChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,qBAAa,WAAY,YAAW,mBAAmB;IACtD,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEzB,YAAY,EAAE,YAAY;IAIhC,IAAI,CACT,YAAY,EAAE,gBAAgB,EAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAgDhD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export class NtfyChannel{ntfySettings;constructor(ntfySettings){this.ntfySettings=ntfySettings}async send(notification,options){try{const topicUrl=options?.url;if(!topicUrl)return{success:!1,result:"Ntfy topic URL is required"};const headers={Title:options?.title||notification.getSubject()};this.ntfySettings.authToken&&(headers.Authorization=`Bearer ${this.ntfySettings.authToken}`),options?.priority&&(headers.Priority=String(options.priority)),options?.tags&&(headers.Tags=options.tags),options?.icon&&(headers.Icon=options.icon),options?.markdown&&(headers.Markdown=options.markdown),options?.actions&&(headers.Actions=options.actions);const body=options?.body??notification.getContent(),response=await fetch(topicUrl,{method:"POST",headers:headers,body:body});if(!response.ok){const errorText=await response.text();return{success:!1,result:`Ntfy returned ${response.status}: ${errorText}`}}return{success:!0,result:"Ntfy notification sent successfully"}}catch(error){return{success:!1,result:error?.message||"Failed to send Ntfy notification"}}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NtfyChannel.js","sourceRoot":"","sources":["../../../src/notifications/channels/NtfyChannel.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,WAAW;IACb,YAAY,CAAe;IAErC,YAAY,YAA0B;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,IAAI,CACT,YAA8B,EAC9B,OAA6B;QAE7B,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,OAAO,EAAE,GAAG,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;YACjE,CAAC;YAED,MAAM,OAAO,GAA2B;gBACvC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,YAAY,CAAC,UAAU,EAAE;aAClD,CAAC;YAEF,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;gBACjC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;YACpE,CAAC;YAED,IAAI,OAAO,EAAE,QAAQ;gBAAE,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtE,IAAI,OAAO,EAAE,IAAI;gBAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;YAClD,IAAI,OAAO,EAAE,IAAI;gBAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;YAClD,IAAI,OAAO,EAAE,QAAQ;gBAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9D,IAAI,OAAO,EAAE,OAAO;gBAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;YAE3D,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAExD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACtC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI;aACJ,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,iBAAiB,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE;iBACxD,CAAC;YACH,CAAC;YAED,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,qCAAqC;aAC7C,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,kCAAkC;aAC5D,CAAC;QACH,CAAC;IACF,CAAC;CACD"}
|
|
@@ -20,5 +20,6 @@ export declare class BackupFailedNotification extends BaseNotification {
|
|
|
20
20
|
protected buildHTMLContent(data: BackupFailedNotificationPayload): string;
|
|
21
21
|
protected buildSlackContent(data: BackupFailedNotificationPayload): string;
|
|
22
22
|
protected buildDiscordContent(data: BackupFailedNotificationPayload): string;
|
|
23
|
+
buildPushContent(data: BackupFailedNotificationPayload): string;
|
|
23
24
|
}
|
|
24
25
|
//# sourceMappingURL=BackupFailedNotification.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackupFailedNotification.d.ts","sourceRoot":"","sources":["../../../../../src/notifications/templates/email/backup/BackupFailedNotification.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAEnD,OAAO,EAAiC,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,MAAM,WAAW,+BAA+B;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACxD;AAED,qBAAa,wBAAyB,SAAQ,gBAAgB;gBACjD,IAAI,EAAE,+BAA+B;IAOjD,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"BackupFailedNotification.d.ts","sourceRoot":"","sources":["../../../../../src/notifications/templates/email/backup/BackupFailedNotification.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAEnD,OAAO,EAAiC,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,MAAM,WAAW,+BAA+B;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACxD;AAED,qBAAa,wBAAyB,SAAQ,gBAAgB;gBACjD,IAAI,EAAE,+BAA+B;IAOjD,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;IAgBrE,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;IAsCzE,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;IA2CzE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;IAiD1E,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM;IA6B5E,gBAAgB,CAAC,IAAI,EAAE,+BAA+B;CAatD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import ejs from"ejs";import{configService}from"../../../../services/ConfigService";import{providers}from"../../../../utils/providers";import{formatBytes,formatDuration,formatNumberToK}from"../../../../utils/formatter";import{BaseNotification}from"../../../BaseNotification";import{loadBackupTemplate}from"../../../templateLoader";export class BackupFailedNotification extends BaseNotification{constructor(data){super(),this.subject=`Backup Failed: ${data.plan.title}`,this.contentType=data.output||"html",this.content=this.buildContent(data)}buildContent(data){return"json"===this.contentType?this.buildJSONContent(data):"slack"===this.contentType?this.buildSlackContent(data):"discord"===this.contentType?this.buildDiscordContent(data):this.buildHTMLContent(data)}buildJSONContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,stats:stats,startTime:startTime,endTime:endTime,error:error}=data,payload={appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,storagePath:plan.storagePath||"",stats:stats,startTime:startTime,endTime:endTime,error:error,planID:plan.id,planTitle:plan.title,planType:plan.method,planSource:{included:plan.sourceConfig?.includes.join(", ")||"",excluded:plan.sourceConfig?.excludes.join(", ")||""},replicationStorages:plan.settings.replication?.enabled&&plan.settings.replication?.storages?plan.settings.replication.storages.length:0,eventName:"backup_failed"};return JSON.stringify(payload)}buildHTMLContent(data){const startDate=new Date(data.startTime?data.startTime:0).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"}),endDate=new Date(data.endTime?data.endTime:0).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"}),storageTypeName=data.storageType?providers[data.storageType]?.name||data.storageType:"",templateString=loadBackupTemplate("BackupFailedNotification.ejs"),renderedBody=ejs.render(templateString,{...data,appUrl:configService.config.APP_URL,storageTypeName:storageTypeName,startDate:startDate,endDate:endDate,formatBytes:formatBytes,formatDuration:formatDuration,formatNumberToK:formatNumberToK,replicationStorages:data.plan.settings.replication?.enabled&&data.plan.settings.replication?.storages?data.plan.settings.replication.storages.length:0});return this.applyEmailTemplate(renderedBody,{appTitle:configService.config.APP_TITLE||"Pluton",preHeader:`Backup Failed: ${data.plan.title}`,className:"content--error"})}buildSlackContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,error:error,startTime:startTime,endTime:endTime}=data,storageTypeName=storageType?providers[storageType]?.name||storageType:"",appUrl=configService.config.APP_URL||"",fields=[{type:"mrkdwn",text:`*Plan:* ${plan.title}`},{type:"mrkdwn",text:`*Method:* ${plan.method}`},{type:"mrkdwn",text:`*Device:* ${deviceName}`},{type:"mrkdwn",text:`*Storage:* ${storageName} (${storageTypeName})`}],blocks=[{type:"header",text:{type:"plain_text",text:`❌ Backup Failed: ${plan.title}`,emoji:!0}},{type:"section",fields:fields},{type:"section",text:{type:"mrkdwn",text:`*Error:*\n\`\`\`${error}\`\`\``}}];return appUrl&&blocks.push({type:"actions",elements:[{type:"button",text:{type:"plain_text",text:"View Plan",emoji:!0},url:`${appUrl}/plan/${plan.id}`}]}),blocks.push({type:"context",elements:[{type:"mrkdwn",text:`${appTitle} • ${new Date(startTime).toLocaleString()}`}]}),JSON.stringify({blocks:blocks})}buildDiscordContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,error:error,startTime:startTime,endTime:endTime}=data,storageTypeName=storageType?providers[storageType]?.name||storageType:"",appUrl=configService.config.APP_URL||"",fields=[{name:"Plan",value:plan.title,inline:!0},{name:"Method",value:plan.method,inline:!0},{name:"Device",value:deviceName,inline:!0},{name:"Storage",value:`${storageName} (${storageTypeName})`,inline:!0},{name:"Error",value:`\`\`\`${error}\`\`\``,inline:!1}],embed={title:`❌ Backup Failed: ${plan.title}`,color:15680580,fields:fields,timestamp:new Date(startTime).toISOString(),footer:{text:appTitle}};return appUrl&&(embed.url=`${appUrl}/plan/${plan.id}`),JSON.stringify({embeds:[embed]})}}
|
|
1
|
+
import ejs from"ejs";import{configService}from"../../../../services/ConfigService";import{providers}from"../../../../utils/providers";import{formatBytes,formatDuration,formatNumberToK}from"../../../../utils/formatter";import{BaseNotification}from"../../../BaseNotification";import{loadBackupTemplate}from"../../../templateLoader";export class BackupFailedNotification extends BaseNotification{constructor(data){super(),this.subject=`Backup Failed: ${data.plan.title}`,this.contentType=data.output||"html",this.content=this.buildContent(data)}buildContent(data){return"json"===this.contentType?this.buildJSONContent(data):"push"===this.contentType||"slack"===this.contentType?this.buildSlackContent(data):"discord"===this.contentType?this.buildDiscordContent(data):this.buildHTMLContent(data)}buildJSONContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,stats:stats,startTime:startTime,endTime:endTime,error:error}=data,payload={appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,storagePath:plan.storagePath||"",stats:stats,startTime:startTime,endTime:endTime,error:error,planID:plan.id,planTitle:plan.title,planType:plan.method,planSource:{included:plan.sourceConfig?.includes.join(", ")||"",excluded:plan.sourceConfig?.excludes.join(", ")||""},replicationStorages:plan.settings.replication?.enabled&&plan.settings.replication?.storages?plan.settings.replication.storages.length:0,eventName:"backup_failed"};return JSON.stringify(payload)}buildHTMLContent(data){const startDate=new Date(data.startTime?data.startTime:0).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"}),endDate=new Date(data.endTime?data.endTime:0).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"}),storageTypeName=data.storageType?providers[data.storageType]?.name||data.storageType:"",templateString=loadBackupTemplate("BackupFailedNotification.ejs"),renderedBody=ejs.render(templateString,{...data,appUrl:configService.config.APP_URL,storageTypeName:storageTypeName,startDate:startDate,endDate:endDate,formatBytes:formatBytes,formatDuration:formatDuration,formatNumberToK:formatNumberToK,replicationStorages:data.plan.settings.replication?.enabled&&data.plan.settings.replication?.storages?data.plan.settings.replication.storages.length:0});return this.applyEmailTemplate(renderedBody,{appTitle:configService.config.APP_TITLE||"Pluton",preHeader:`Backup Failed: ${data.plan.title}`,className:"content--error"})}buildSlackContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,error:error,startTime:startTime,endTime:endTime}=data,storageTypeName=storageType?providers[storageType]?.name||storageType:"",appUrl=configService.config.APP_URL||"",fields=[{type:"mrkdwn",text:`*Plan:* ${plan.title}`},{type:"mrkdwn",text:`*Method:* ${plan.method}`},{type:"mrkdwn",text:`*Device:* ${deviceName}`},{type:"mrkdwn",text:`*Storage:* ${storageName} (${storageTypeName})`}],blocks=[{type:"header",text:{type:"plain_text",text:`❌ Backup Failed: ${plan.title}`,emoji:!0}},{type:"section",fields:fields},{type:"section",text:{type:"mrkdwn",text:`*Error:*\n\`\`\`${error}\`\`\``}}];return appUrl&&blocks.push({type:"actions",elements:[{type:"button",text:{type:"plain_text",text:"View Plan",emoji:!0},url:`${appUrl}/plan/${plan.id}`}]}),blocks.push({type:"context",elements:[{type:"mrkdwn",text:`${appTitle} • ${new Date(startTime).toLocaleString()}`}]}),JSON.stringify({blocks:blocks})}buildDiscordContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan,error:error,startTime:startTime,endTime:endTime}=data,storageTypeName=storageType?providers[storageType]?.name||storageType:"",appUrl=configService.config.APP_URL||"",fields=[{name:"Plan",value:plan.title,inline:!0},{name:"Method",value:plan.method,inline:!0},{name:"Device",value:deviceName,inline:!0},{name:"Storage",value:`${storageName} (${storageTypeName})`,inline:!0},{name:"Error",value:`\`\`\`${error}\`\`\``,inline:!1}],embed={title:`❌ Backup Failed: ${plan.title}`,color:15680580,fields:fields,timestamp:new Date(startTime).toISOString(),footer:{text:appTitle}};return appUrl&&(embed.url=`${appUrl}/plan/${plan.id}`),JSON.stringify({embeds:[embed]})}buildPushContent(data){const{appTitle:appTitle,deviceName:deviceName,storageName:storageName,storageType:storageType,plan:plan}=data,sourceCount=plan.sourceConfig.includes.length,payload={title:`${appTitle}: Backup Failed for Plan "${plan.title}"`,body:`Failed to backup ${sourceCount} sources from ${deviceName} to ${storageName}(${storageType}).`,priority:4,emoji:"warning",buttonUrl:`${configService.config.APP_URL}/plan/${data.plan.id}`,buttonText:"View Plan"};return JSON.stringify(payload)}}
|