@plutonhq/core-frontend 0.0.1
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/LICENSE +202 -0
- package/README.md +3 -0
- package/dist/@types/backups.d.ts +76 -0
- package/dist/@types/backups.d.ts.map +1 -0
- package/dist/@types/devices.d.ts +234 -0
- package/dist/@types/devices.d.ts.map +1 -0
- package/dist/@types/index.d.ts +11 -0
- package/dist/@types/index.d.ts.map +1 -0
- package/dist/@types/index.js +2 -0
- package/dist/@types/index.js.map +1 -0
- package/dist/@types/plans.d.ts +192 -0
- package/dist/@types/plans.d.ts.map +1 -0
- package/dist/@types/restores.d.ts +107 -0
- package/dist/@types/restores.d.ts.map +1 -0
- package/dist/@types/settings.d.ts +20 -0
- package/dist/@types/settings.d.ts.map +1 -0
- package/dist/@types/storages.d.ts +33 -0
- package/dist/@types/storages.d.ts.map +1 -0
- package/dist/@types/system.d.ts +12 -0
- package/dist/@types/system.d.ts.map +1 -0
- package/dist/components/App/App/App.d.ts +3 -0
- package/dist/components/App/App/App.d.ts.map +1 -0
- package/dist/components/App/App/App.js +35 -0
- package/dist/components/App/App/App.js.map +1 -0
- package/dist/components/App/App/App.module.scss +14 -0
- package/dist/components/App/App/App.module.scss.js +10 -0
- package/dist/components/App/App/App.module.scss.js.map +1 -0
- package/dist/components/App/AppContent/AppContent.d.ts +4 -0
- package/dist/components/App/AppContent/AppContent.d.ts.map +1 -0
- package/dist/components/App/AppContent/AppContent.js +7 -0
- package/dist/components/App/AppContent/AppContent.js.map +1 -0
- package/dist/components/App/AppContent/AppContent.module.scss +12 -0
- package/dist/components/App/AppContent/AppContent.module.scss.js +8 -0
- package/dist/components/App/AppContent/AppContent.module.scss.js.map +1 -0
- package/dist/components/App/Footer/Footer.d.ts +8 -0
- package/dist/components/App/Footer/Footer.d.ts.map +1 -0
- package/dist/components/App/Footer/Footer.js +23 -0
- package/dist/components/App/Footer/Footer.js.map +1 -0
- package/dist/components/App/Footer/Footer.module.scss +23 -0
- package/dist/components/App/Footer/Footer.module.scss.js +8 -0
- package/dist/components/App/Footer/Footer.module.scss.js.map +1 -0
- package/dist/components/App/PageTitle/PageTitle.d.ts +5 -0
- package/dist/components/App/PageTitle/PageTitle.d.ts.map +1 -0
- package/dist/components/App/PageTitle/PageTitle.js +13 -0
- package/dist/components/App/PageTitle/PageTitle.js.map +1 -0
- package/dist/components/App/SideNav/SideNav.d.ts +3 -0
- package/dist/components/App/SideNav/SideNav.d.ts.map +1 -0
- package/dist/components/App/SideNav/SideNav.js +91 -0
- package/dist/components/App/SideNav/SideNav.js.map +1 -0
- package/dist/components/App/SideNav/SideNav.module.scss +58 -0
- package/dist/components/App/SideNav/SideNav.module.scss.js +12 -0
- package/dist/components/App/SideNav/SideNav.module.scss.js.map +1 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.d.ts +7 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.d.ts.map +1 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.js +94 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.js.map +1 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.module.scss +142 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.module.scss.js +40 -0
- package/dist/components/Device/DeviceBackups/DeviceBackups.module.scss.js.map +1 -0
- package/dist/components/Device/DeviceCPU/DeviceCPU.d.ts +7 -0
- package/dist/components/Device/DeviceCPU/DeviceCPU.d.ts.map +1 -0
- package/dist/components/Device/DeviceCPU/DeviceCPU.js +51 -0
- package/dist/components/Device/DeviceCPU/DeviceCPU.js.map +1 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.d.ts +8 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.d.ts.map +1 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.js +27 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.js.map +1 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.module.scss +214 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.module.scss.js +42 -0
- package/dist/components/Device/DeviceInfo/DeviceInfo.module.scss.js.map +1 -0
- package/dist/components/Device/DeviceItem/DeviceItem.d.ts +8 -0
- package/dist/components/Device/DeviceItem/DeviceItem.d.ts.map +1 -0
- package/dist/components/Device/DeviceItem/DeviceItem.js +89 -0
- package/dist/components/Device/DeviceItem/DeviceItem.js.map +1 -0
- package/dist/components/Device/DeviceItem/DeviceItem.module.scss +216 -0
- package/dist/components/Device/DeviceItem/DeviceItem.module.scss.js +38 -0
- package/dist/components/Device/DeviceItem/DeviceItem.module.scss.js.map +1 -0
- package/dist/components/Device/DeviceMemory/DeviceMemory.d.ts +7 -0
- package/dist/components/Device/DeviceMemory/DeviceMemory.d.ts.map +1 -0
- package/dist/components/Device/DeviceMemory/DeviceMemory.js +82 -0
- package/dist/components/Device/DeviceMemory/DeviceMemory.js.map +1 -0
- package/dist/components/Device/DeviceNetworks/DeviceNetworks.d.ts +7 -0
- package/dist/components/Device/DeviceNetworks/DeviceNetworks.d.ts.map +1 -0
- package/dist/components/Device/DeviceNetworks/DeviceNetworks.js +28 -0
- package/dist/components/Device/DeviceNetworks/DeviceNetworks.js.map +1 -0
- package/dist/components/Device/DeviceRcloneSettings/DeviceRcloneSettings.d.ts +8 -0
- package/dist/components/Device/DeviceRcloneSettings/DeviceRcloneSettings.d.ts.map +1 -0
- package/dist/components/Device/DeviceRcloneSettings/DeviceRcloneSettings.js +140 -0
- package/dist/components/Device/DeviceRcloneSettings/DeviceRcloneSettings.js.map +1 -0
- package/dist/components/Device/DeviceResticSettings/DeviceResticSettings.d.ts +8 -0
- package/dist/components/Device/DeviceResticSettings/DeviceResticSettings.d.ts.map +1 -0
- package/dist/components/Device/DeviceResticSettings/DeviceResticSettings.js +55 -0
- package/dist/components/Device/DeviceResticSettings/DeviceResticSettings.js.map +1 -0
- package/dist/components/Device/DeviceStorageDisks/DeviceStorageDisks.d.ts +7 -0
- package/dist/components/Device/DeviceStorageDisks/DeviceStorageDisks.d.ts.map +1 -0
- package/dist/components/Device/DeviceStorageDisks/DeviceStorageDisks.js +26 -0
- package/dist/components/Device/DeviceStorageDisks/DeviceStorageDisks.js.map +1 -0
- package/dist/components/Device/DeviceStorageDrives/DeviceStorageDrives.d.ts +7 -0
- package/dist/components/Device/DeviceStorageDrives/DeviceStorageDrives.d.ts.map +1 -0
- package/dist/components/Device/DeviceStorageDrives/DeviceStorageDrives.js +48 -0
- package/dist/components/Device/DeviceStorageDrives/DeviceStorageDrives.js.map +1 -0
- package/dist/components/Device/DeviceSystem/DeviceSystem.d.ts +8 -0
- package/dist/components/Device/DeviceSystem/DeviceSystem.d.ts.map +1 -0
- package/dist/components/Device/DeviceSystem/DeviceSystem.js +43 -0
- package/dist/components/Device/DeviceSystem/DeviceSystem.js.map +1 -0
- package/dist/components/Device/EditDevice/EditDevice.d.ts +8 -0
- package/dist/components/Device/EditDevice/EditDevice.d.ts.map +1 -0
- package/dist/components/Device/EditDevice/EditDevice.js +130 -0
- package/dist/components/Device/EditDevice/EditDevice.js.map +1 -0
- package/dist/components/Device/EditDevice/EditDevice.module.scss +110 -0
- package/dist/components/Device/EditDevice/EditDevice.module.scss.js +20 -0
- package/dist/components/Device/EditDevice/EditDevice.module.scss.js.map +1 -0
- package/dist/components/Plan/AddPlan/AddPlan.d.ts +7 -0
- package/dist/components/Plan/AddPlan/AddPlan.d.ts.map +1 -0
- package/dist/components/Plan/AddPlan/AddPlan.js +38 -0
- package/dist/components/Plan/AddPlan/AddPlan.js.map +1 -0
- package/dist/components/Plan/AddPlan/AddPlan.module.scss +191 -0
- package/dist/components/Plan/AddPlan/AddPlan.module.scss.js +20 -0
- package/dist/components/Plan/AddPlan/AddPlan.module.scss.js.map +1 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.d.ts +14 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.d.ts.map +1 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.js +73 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.js.map +1 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.module.scss +189 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.module.scss.js +46 -0
- package/dist/components/Plan/BackupEvents/BackupEvents.module.scss.js.map +1 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.d.ts +12 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.d.ts.map +1 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.js +160 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.js.map +1 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.module.scss +120 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.module.scss.js +34 -0
- package/dist/components/Plan/BackupProgress/BackupProgress.module.scss.js.map +1 -0
- package/dist/components/Plan/Backups/Backups.d.ts +11 -0
- package/dist/components/Plan/Backups/Backups.d.ts.map +1 -0
- package/dist/components/Plan/Backups/Backups.js +276 -0
- package/dist/components/Plan/Backups/Backups.js.map +1 -0
- package/dist/components/Plan/Backups/Backups.module.scss +210 -0
- package/dist/components/Plan/Backups/Backups.module.scss.js +46 -0
- package/dist/components/Plan/Backups/Backups.module.scss.js.map +1 -0
- package/dist/components/Plan/EditPlan/EditPlan.d.ts +8 -0
- package/dist/components/Plan/EditPlan/EditPlan.d.ts.map +1 -0
- package/dist/components/Plan/EditPlan/EditPlan.js +42 -0
- package/dist/components/Plan/EditPlan/EditPlan.js.map +1 -0
- package/dist/components/Plan/EditPlan/EditPlan.module.scss +41 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.d.ts +7 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.d.ts.map +1 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.js +49 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.js.map +1 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.module.scss +58 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.module.scss.js +16 -0
- package/dist/components/Plan/PlanBackups/PlanBackups.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanForm/PlanForm.d.ts +15 -0
- package/dist/components/Plan/PlanForm/PlanForm.d.ts.map +1 -0
- package/dist/components/Plan/PlanForm/PlanForm.js +173 -0
- package/dist/components/Plan/PlanForm/PlanForm.js.map +1 -0
- package/dist/components/Plan/PlanForm/PlanForm.module.scss +72 -0
- package/dist/components/Plan/PlanForm/PlanForm.module.scss.js +18 -0
- package/dist/components/Plan/PlanForm/PlanForm.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanForm/PlanFormNav.d.ts +8 -0
- package/dist/components/Plan/PlanForm/PlanFormNav.d.ts.map +1 -0
- package/dist/components/Plan/PlanForm/PlanFormNav.js +70 -0
- package/dist/components/Plan/PlanForm/PlanFormNav.js.map +1 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.d.ts +9 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.d.ts.map +1 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.js +49 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.js.map +1 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.module.scss +44 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.module.scss.js +18 -0
- package/dist/components/Plan/PlanHistory/PlanHistory.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanItems/PlanItem.d.ts +8 -0
- package/dist/components/Plan/PlanItems/PlanItem.d.ts.map +1 -0
- package/dist/components/Plan/PlanItems/PlanItem.js +171 -0
- package/dist/components/Plan/PlanItems/PlanItem.js.map +1 -0
- package/dist/components/Plan/PlanItems/PlanItem.module.scss +332 -0
- package/dist/components/Plan/PlanItems/PlanItem.module.scss.js +40 -0
- package/dist/components/Plan/PlanItems/PlanItem.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanLogs/PlanLogs.d.ts +9 -0
- package/dist/components/Plan/PlanLogs/PlanLogs.d.ts.map +1 -0
- package/dist/components/Plan/PlanLogs/PlanLogs.js +13 -0
- package/dist/components/Plan/PlanLogs/PlanLogs.js.map +1 -0
- package/dist/components/Plan/PlanLogs/PlanLogs.module.scss +0 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.d.ts +7 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.d.ts.map +1 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.js +33 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.js.map +1 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.module.scss +42 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.module.scss.js +20 -0
- package/dist/components/Plan/PlanPendingBackup/PlanPendingBackup.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.d.ts +13 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.d.ts.map +1 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.js +45 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.js.map +1 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.module.scss +19 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.module.scss.js +8 -0
- package/dist/components/Plan/PlanProgress/PlanProgress.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanPruneModal/PlanPruneModal.d.ts +12 -0
- package/dist/components/Plan/PlanPruneModal/PlanPruneModal.d.ts.map +1 -0
- package/dist/components/Plan/PlanPruneModal/PlanPruneModal.js +44 -0
- package/dist/components/Plan/PlanPruneModal/PlanPruneModal.js.map +1 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.d.ts +9 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.d.ts.map +1 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.js +56 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.js.map +1 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.module.scss +9 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.module.scss.js +8 -0
- package/dist/components/Plan/PlanRemoveModal/PlanRemoveModal.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanAdvancedSettings.d.ts +11 -0
- package/dist/components/Plan/PlanSettings/PlanAdvancedSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanAdvancedSettings.js +94 -0
- package/dist/components/Plan/PlanSettings/PlanAdvancedSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanGeneralSettings.d.ts +8 -0
- package/dist/components/Plan/PlanSettings/PlanGeneralSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanGeneralSettings.js +55 -0
- package/dist/components/Plan/PlanSettings/PlanGeneralSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanNotificationSettings.d.ts +10 -0
- package/dist/components/Plan/PlanSettings/PlanNotificationSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanNotificationSettings.js +67 -0
- package/dist/components/Plan/PlanSettings/PlanNotificationSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanPerformanceSettings.d.ts +8 -0
- package/dist/components/Plan/PlanSettings/PlanPerformanceSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanPerformanceSettings.js +88 -0
- package/dist/components/Plan/PlanSettings/PlanPerformanceSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanPruneSettings.d.ts +8 -0
- package/dist/components/Plan/PlanSettings/PlanPruneSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanPruneSettings.js +104 -0
- package/dist/components/Plan/PlanSettings/PlanPruneSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanScriptsSettings.d.ts +9 -0
- package/dist/components/Plan/PlanSettings/PlanScriptsSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanScriptsSettings.js +273 -0
- package/dist/components/Plan/PlanSettings/PlanScriptsSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanSettings.module.scss +464 -0
- package/dist/components/Plan/PlanSettings/PlanSettings.module.scss.js +60 -0
- package/dist/components/Plan/PlanSettings/PlanSettings.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanSourceSettings.d.ts +10 -0
- package/dist/components/Plan/PlanSettings/PlanSourceSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanSourceSettings.js +47 -0
- package/dist/components/Plan/PlanSettings/PlanSourceSettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanStrategySettings.d.ts +16 -0
- package/dist/components/Plan/PlanSettings/PlanStrategySettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanStrategySettings.js +19 -0
- package/dist/components/Plan/PlanSettings/PlanStrategySettings.js.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanTypeSettings.d.ts +16 -0
- package/dist/components/Plan/PlanSettings/PlanTypeSettings.d.ts.map +1 -0
- package/dist/components/Plan/PlanSettings/PlanTypeSettings.js +17 -0
- package/dist/components/Plan/PlanSettings/PlanTypeSettings.js.map +1 -0
- package/dist/components/Plan/PlanStats/PlanStats.d.ts +9 -0
- package/dist/components/Plan/PlanStats/PlanStats.d.ts.map +1 -0
- package/dist/components/Plan/PlanStats/PlanStats.js +81 -0
- package/dist/components/Plan/PlanStats/PlanStats.js.map +1 -0
- package/dist/components/Plan/PlanStats/PlanStats.module.scss +125 -0
- package/dist/components/Plan/PlanStats/PlanStats.module.scss.js +22 -0
- package/dist/components/Plan/PlanStats/PlanStats.module.scss.js.map +1 -0
- package/dist/components/Plan/PlanUnlockModal/PlanUnlockModal.d.ts +8 -0
- package/dist/components/Plan/PlanUnlockModal/PlanUnlockModal.d.ts.map +1 -0
- package/dist/components/Plan/PlanUnlockModal/PlanUnlockModal.js +29 -0
- package/dist/components/Plan/PlanUnlockModal/PlanUnlockModal.js.map +1 -0
- package/dist/components/Plan/Restores/Restores.d.ts +10 -0
- package/dist/components/Plan/Restores/Restores.d.ts.map +1 -0
- package/dist/components/Plan/Restores/Restores.js +144 -0
- package/dist/components/Plan/Restores/Restores.js.map +1 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.d.ts +8 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.d.ts.map +1 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.js +27 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.js.map +1 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.module.scss +71 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.module.scss.js +16 -0
- package/dist/components/Restore/RestoreChangeViewer/RestoreChangeViewer.module.scss.js.map +1 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.d.ts +17 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.d.ts.map +1 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.js +268 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.js.map +1 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.module.scss +326 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.module.scss.js +70 -0
- package/dist/components/Restore/RestoreFileSelector/RestoreFileSelector.module.scss.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreConfirmStep.d.ts +17 -0
- package/dist/components/Restore/RestoreWizard/RestoreConfirmStep.d.ts.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreConfirmStep.js +77 -0
- package/dist/components/Restore/RestoreWizard/RestoreConfirmStep.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreFileSelectorStep.d.ts +19 -0
- package/dist/components/Restore/RestoreWizard/RestoreFileSelectorStep.d.ts.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreFileSelectorStep.js +59 -0
- package/dist/components/Restore/RestoreWizard/RestoreFileSelectorStep.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestorePreviewStep.d.ts +18 -0
- package/dist/components/Restore/RestoreWizard/RestorePreviewStep.d.ts.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestorePreviewStep.js +85 -0
- package/dist/components/Restore/RestoreWizard/RestorePreviewStep.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreSettingsStep.d.ts +11 -0
- package/dist/components/Restore/RestoreWizard/RestoreSettingsStep.d.ts.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreSettingsStep.js +160 -0
- package/dist/components/Restore/RestoreWizard/RestoreSettingsStep.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.d.ts +8 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.d.ts.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.js +115 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.js.map +1 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.module.scss +390 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.module.scss.js +64 -0
- package/dist/components/Restore/RestoreWizard/RestoreWizard.module.scss.js.map +1 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.d.ts +8 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.d.ts.map +1 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.js +192 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.js.map +1 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.module.scss +299 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.module.scss.js +68 -0
- package/dist/components/Restore/RestoredFileBrowser/RestoredFileBrowser.module.scss.js.map +1 -0
- package/dist/components/Settings/AppLogs/AppLogs.d.ts +6 -0
- package/dist/components/Settings/AppLogs/AppLogs.d.ts.map +1 -0
- package/dist/components/Settings/AppLogs/AppLogs.js +14 -0
- package/dist/components/Settings/AppLogs/AppLogs.js.map +1 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.d.ts +8 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.d.ts.map +1 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.js +59 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.js.map +1 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.module.scss +3 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.module.scss.js +8 -0
- package/dist/components/Settings/GeneralSettings/GeneralSettings.module.scss.js.map +1 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.d.ts +8 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.d.ts.map +1 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.js +47 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.js.map +1 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.module.scss +38 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.module.scss.js +12 -0
- package/dist/components/Settings/IntegrationSettings/IntegrationSettings.module.scss.js.map +1 -0
- package/dist/components/Settings/IntegrationSettings/SMTPSettings.d.ts +9 -0
- package/dist/components/Settings/IntegrationSettings/SMTPSettings.d.ts.map +1 -0
- package/dist/components/Settings/IntegrationSettings/SMTPSettings.js +73 -0
- package/dist/components/Settings/IntegrationSettings/SMTPSettings.js.map +1 -0
- package/dist/components/Skeleton/SkeletonItems.d.ts +8 -0
- package/dist/components/Skeleton/SkeletonItems.d.ts.map +1 -0
- package/dist/components/Skeleton/SkeletonItems.js +21 -0
- package/dist/components/Skeleton/SkeletonItems.js.map +1 -0
- package/dist/components/Skeleton/SkeletonItems.module.scss +162 -0
- package/dist/components/Skeleton/SkeletonItems.module.scss.js +26 -0
- package/dist/components/Skeleton/SkeletonItems.module.scss.js.map +1 -0
- package/dist/components/Storage/AddStorage/AddStorage.d.ts +6 -0
- package/dist/components/Storage/AddStorage/AddStorage.d.ts.map +1 -0
- package/dist/components/Storage/AddStorage/AddStorage.js +186 -0
- package/dist/components/Storage/AddStorage/AddStorage.js.map +1 -0
- package/dist/components/Storage/AddStorage/AddStorage.module.scss +168 -0
- package/dist/components/Storage/AddStorage/AddStorage.module.scss.js +34 -0
- package/dist/components/Storage/AddStorage/AddStorage.module.scss.js.map +1 -0
- package/dist/components/Storage/EditStorage/EditStorage.d.ts +8 -0
- package/dist/components/Storage/EditStorage/EditStorage.d.ts.map +1 -0
- package/dist/components/Storage/EditStorage/EditStorage.js +149 -0
- package/dist/components/Storage/EditStorage/EditStorage.js.map +1 -0
- package/dist/components/Storage/EditStorage/EditStorage.module.scss +0 -0
- package/dist/components/Storage/StorageAuthSettings/StorageAuthSettings.d.ts +14 -0
- package/dist/components/Storage/StorageAuthSettings/StorageAuthSettings.d.ts.map +1 -0
- package/dist/components/Storage/StorageAuthSettings/StorageAuthSettings.js +116 -0
- package/dist/components/Storage/StorageAuthSettings/StorageAuthSettings.js.map +1 -0
- package/dist/components/Storage/StorageItem/StorageItem.d.ts +8 -0
- package/dist/components/Storage/StorageItem/StorageItem.d.ts.map +1 -0
- package/dist/components/Storage/StorageItem/StorageItem.js +149 -0
- package/dist/components/Storage/StorageItem/StorageItem.js.map +1 -0
- package/dist/components/Storage/StorageItem/StorageItem.module.scss +231 -0
- package/dist/components/Storage/StorageItem/StorageItem.module.scss.js +32 -0
- package/dist/components/Storage/StorageItem/StorageItem.module.scss.js.map +1 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.d.ts +10 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.d.ts.map +1 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.js +139 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.js.map +1 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.module.scss +29 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.module.scss.js +8 -0
- package/dist/components/Storage/StorageSettings/StorageSettings.module.scss.js.map +1 -0
- package/dist/components/common/ActionModal/ActionModal.d.ts +25 -0
- package/dist/components/common/ActionModal/ActionModal.d.ts.map +1 -0
- package/dist/components/common/ActionModal/ActionModal.js +42 -0
- package/dist/components/common/ActionModal/ActionModal.js.map +1 -0
- package/dist/components/common/ActionModal/ActionModal.module.scss +60 -0
- package/dist/components/common/ActionModal/ActionModal.module.scss.js +16 -0
- package/dist/components/common/ActionModal/ActionModal.module.scss.js.map +1 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.d.ts +13 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.d.ts.map +1 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.js +47 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.js.map +1 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.module.scss +88 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.module.scss.js +30 -0
- package/dist/components/common/AnimatedWrapper/AnimatedWrapper.module.scss.js.map +1 -0
- package/dist/components/common/Button/Button.d.ts +15 -0
- package/dist/components/common/Button/Button.d.ts.map +1 -0
- package/dist/components/common/Button/Button.js +25 -0
- package/dist/components/common/Button/Button.js.map +1 -0
- package/dist/components/common/Button/Button.module.scss +56 -0
- package/dist/components/common/Button/Button.module.scss.js +26 -0
- package/dist/components/common/Button/Button.module.scss.js.map +1 -0
- package/dist/components/common/FileIcon/FileIcon.d.ts +8 -0
- package/dist/components/common/FileIcon/FileIcon.d.ts.map +1 -0
- package/dist/components/common/FileIcon/FileIcon.js +10 -0
- package/dist/components/common/FileIcon/FileIcon.js.map +1 -0
- package/dist/components/common/FileManager/FileManager.d.ts +14 -0
- package/dist/components/common/FileManager/FileManager.d.ts.map +1 -0
- package/dist/components/common/FileManager/FileManager.js +156 -0
- package/dist/components/common/FileManager/FileManager.js.map +1 -0
- package/dist/components/common/FileManager/FileManager.module.scss +196 -0
- package/dist/components/common/FileManager/FileManager.module.scss.js +30 -0
- package/dist/components/common/FileManager/FileManager.module.scss.js.map +1 -0
- package/dist/components/common/FolderPicker/FolderPicker.d.ts +12 -0
- package/dist/components/common/FolderPicker/FolderPicker.d.ts.map +1 -0
- package/dist/components/common/FolderPicker/FolderPicker.js +50 -0
- package/dist/components/common/FolderPicker/FolderPicker.js.map +1 -0
- package/dist/components/common/FolderPicker/FolderPicker.module.scss +77 -0
- package/dist/components/common/FolderPicker/FolderPicker.module.scss.js +16 -0
- package/dist/components/common/FolderPicker/FolderPicker.module.scss.js.map +1 -0
- package/dist/components/common/Icon/Icon.d.ts +10 -0
- package/dist/components/common/Icon/Icon.d.ts.map +1 -0
- package/dist/components/common/Icon/Icon.js +1349 -0
- package/dist/components/common/Icon/Icon.js.map +1 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.d.ts +8 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.d.ts.map +1 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.js +30 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.js.map +1 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.module.scss +51 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.module.scss.js +10 -0
- package/dist/components/common/ItemsLayout/ItemsLayout.module.scss.js.map +1 -0
- package/dist/components/common/LogViewer/LogViewer.d.ts +13 -0
- package/dist/components/common/LogViewer/LogViewer.d.ts.map +1 -0
- package/dist/components/common/LogViewer/LogViewer.js +112 -0
- package/dist/components/common/LogViewer/LogViewer.js.map +1 -0
- package/dist/components/common/LogViewer/LogViewer.module.scss +188 -0
- package/dist/components/common/LogViewer/LogViewer.module.scss.js +52 -0
- package/dist/components/common/LogViewer/LogViewer.module.scss.js.map +1 -0
- package/dist/components/common/Logo/Logo.d.ts +9 -0
- package/dist/components/common/Logo/Logo.d.ts.map +1 -0
- package/dist/components/common/Logo/Logo.js +12 -0
- package/dist/components/common/Logo/Logo.js.map +1 -0
- package/dist/components/common/Modal/Modal.d.ts +13 -0
- package/dist/components/common/Modal/Modal.d.ts.map +1 -0
- package/dist/components/common/Modal/Modal.js +49 -0
- package/dist/components/common/Modal/Modal.js.map +1 -0
- package/dist/components/common/Modal/Modal.module.scss +81 -0
- package/dist/components/common/Modal/Modal.module.scss.js +16 -0
- package/dist/components/common/Modal/Modal.module.scss.js.map +1 -0
- package/dist/components/common/NotFound/NotFound.d.ts +8 -0
- package/dist/components/common/NotFound/NotFound.d.ts.map +1 -0
- package/dist/components/common/NotFound/NotFound.js +20 -0
- package/dist/components/common/NotFound/NotFound.js.map +1 -0
- package/dist/components/common/NotFound/NotFound.module.scss +36 -0
- package/dist/components/common/NotFound/NotFound.module.scss.js +8 -0
- package/dist/components/common/NotFound/NotFound.module.scss.js.map +1 -0
- package/dist/components/common/PageHeader/PageHeader.d.ts +12 -0
- package/dist/components/common/PageHeader/PageHeader.d.ts.map +1 -0
- package/dist/components/common/PageHeader/PageHeader.js +22 -0
- package/dist/components/common/PageHeader/PageHeader.js.map +1 -0
- package/dist/components/common/PageHeader/PageHeader.module.scss +61 -0
- package/dist/components/common/PageHeader/PageHeader.module.scss.js +14 -0
- package/dist/components/common/PageHeader/PageHeader.module.scss.js.map +1 -0
- package/dist/components/common/PathPicker/PathPicker.d.ts +16 -0
- package/dist/components/common/PathPicker/PathPicker.d.ts.map +1 -0
- package/dist/components/common/PathPicker/PathPicker.js +213 -0
- package/dist/components/common/PathPicker/PathPicker.js.map +1 -0
- package/dist/components/common/PathPicker/PathPicker.module.scss +278 -0
- package/dist/components/common/PathPicker/PathPicker.module.scss.js +38 -0
- package/dist/components/common/PathPicker/PathPicker.module.scss.js.map +1 -0
- package/dist/components/common/SearchItems/SearchItems.d.ts +7 -0
- package/dist/components/common/SearchItems/SearchItems.d.ts.map +1 -0
- package/dist/components/common/SearchItems/SearchItems.js +38 -0
- package/dist/components/common/SearchItems/SearchItems.js.map +1 -0
- package/dist/components/common/SearchItems/SearchItems.module.scss +48 -0
- package/dist/components/common/SearchItems/SearchItems.module.scss.js +14 -0
- package/dist/components/common/SearchItems/SearchItems.module.scss.js.map +1 -0
- package/dist/components/common/SidePanel/SidePanel.d.ts +12 -0
- package/dist/components/common/SidePanel/SidePanel.d.ts.map +1 -0
- package/dist/components/common/SidePanel/SidePanel.js +40 -0
- package/dist/components/common/SidePanel/SidePanel.js.map +1 -0
- package/dist/components/common/SidePanel/SidePanel.module.scss +217 -0
- package/dist/components/common/SidePanel/SidePanel.module.scss.js +26 -0
- package/dist/components/common/SidePanel/SidePanel.module.scss.js.map +1 -0
- package/dist/components/common/SortItems/SortItems.d.ts +10 -0
- package/dist/components/common/SortItems/SortItems.d.ts.map +1 -0
- package/dist/components/common/SortItems/SortItems.js +52 -0
- package/dist/components/common/SortItems/SortItems.js.map +1 -0
- package/dist/components/common/SortItems/SortItems.module.scss +53 -0
- package/dist/components/common/SortItems/SortItems.module.scss.js +16 -0
- package/dist/components/common/SortItems/SortItems.module.scss.js.map +1 -0
- package/dist/components/common/StatusLabel/StatusLabel.d.ts +7 -0
- package/dist/components/common/StatusLabel/StatusLabel.d.ts.map +1 -0
- package/dist/components/common/StatusLabel/StatusLabel.js +29 -0
- package/dist/components/common/StatusLabel/StatusLabel.js.map +1 -0
- package/dist/components/common/StatusLabel/StatusLabel.module.scss +0 -0
- package/dist/components/common/Tabs/Tabs.d.ts +32 -0
- package/dist/components/common/Tabs/Tabs.d.ts.map +1 -0
- package/dist/components/common/Tabs/Tabs.js +33 -0
- package/dist/components/common/Tabs/Tabs.js.map +1 -0
- package/dist/components/common/Tabs/Tabs.module.scss +43 -0
- package/dist/components/common/Tabs/Tabs.module.scss.js +15 -0
- package/dist/components/common/Tabs/Tabs.module.scss.js.map +1 -0
- package/dist/components/common/TagsFilter/TagsFilter.d.ts +7 -0
- package/dist/components/common/TagsFilter/TagsFilter.d.ts.map +1 -0
- package/dist/components/common/TagsFilter/TagsFilter.js +45 -0
- package/dist/components/common/TagsFilter/TagsFilter.js.map +1 -0
- package/dist/components/common/TagsFilter/TagsFilter.module.scss +59 -0
- package/dist/components/common/TagsFilter/TagsFilter.module.scss.js +18 -0
- package/dist/components/common/TagsFilter/TagsFilter.module.scss.js.map +1 -0
- package/dist/components/common/form/FormField/FormField.d.ts +14 -0
- package/dist/components/common/form/FormField/FormField.d.ts.map +1 -0
- package/dist/components/common/form/FormField/FormField.js +19 -0
- package/dist/components/common/form/FormField/FormField.js.map +1 -0
- package/dist/components/common/form/FormField/FormField.module.scss +32 -0
- package/dist/components/common/form/FormField/FormField.module.scss.js +18 -0
- package/dist/components/common/form/FormField/FormField.module.scss.js.map +1 -0
- package/dist/components/common/form/Input/Input.d.ts +21 -0
- package/dist/components/common/form/Input/Input.d.ts.map +1 -0
- package/dist/components/common/form/Input/Input.js +57 -0
- package/dist/components/common/form/Input/Input.js.map +1 -0
- package/dist/components/common/form/Input/Input.module.scss +71 -0
- package/dist/components/common/form/Input/Input.module.scss.js +22 -0
- package/dist/components/common/form/Input/Input.module.scss.js.map +1 -0
- package/dist/components/common/form/IntervalField/IntervalField.d.ts +14 -0
- package/dist/components/common/form/IntervalField/IntervalField.d.ts.map +1 -0
- package/dist/components/common/form/IntervalField/IntervalField.js +133 -0
- package/dist/components/common/form/IntervalField/IntervalField.js.map +1 -0
- package/dist/components/common/form/IntervalField/IntervalField.module.scss +47 -0
- package/dist/components/common/form/IntervalField/IntervalField.module.scss.js +18 -0
- package/dist/components/common/form/IntervalField/IntervalField.module.scss.js.map +1 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.d.ts +26 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.d.ts.map +1 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.js +76 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.js.map +1 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.module.scss +157 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.module.scss.js +30 -0
- package/dist/components/common/form/MultiSelect/MultiSelect.module.scss.js.map +1 -0
- package/dist/components/common/form/NumberInput/NumberInput.d.ts +19 -0
- package/dist/components/common/form/NumberInput/NumberInput.d.ts.map +1 -0
- package/dist/components/common/form/NumberInput/NumberInput.js +63 -0
- package/dist/components/common/form/NumberInput/NumberInput.js.map +1 -0
- package/dist/components/common/form/NumberInput/NumberInput.module.scss +102 -0
- package/dist/components/common/form/NumberInput/NumberInput.module.scss.js +22 -0
- package/dist/components/common/form/NumberInput/NumberInput.module.scss.js.map +1 -0
- package/dist/components/common/form/PasswordField/PasswordField.d.ts +19 -0
- package/dist/components/common/form/PasswordField/PasswordField.d.ts.map +1 -0
- package/dist/components/common/form/PasswordField/PasswordField.js +57 -0
- package/dist/components/common/form/PasswordField/PasswordField.js.map +1 -0
- package/dist/components/common/form/PasswordField/PasswordField.module.scss +78 -0
- package/dist/components/common/form/PasswordField/PasswordField.module.scss.js +24 -0
- package/dist/components/common/form/PasswordField/PasswordField.module.scss.js.map +1 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.d.ts +20 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.d.ts.map +1 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.js +50 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.js.map +1 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.module.scss +104 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.module.scss.js +26 -0
- package/dist/components/common/form/RadioIconSelect/RadioIconSelect.module.scss.js.map +1 -0
- package/dist/components/common/form/Select/Select.d.ts +27 -0
- package/dist/components/common/form/Select/Select.d.ts.map +1 -0
- package/dist/components/common/form/Select/Select.js +76 -0
- package/dist/components/common/form/Select/Select.js.map +1 -0
- package/dist/components/common/form/Select/Select.module.scss +193 -0
- package/dist/components/common/form/Select/Select.module.scss.js +40 -0
- package/dist/components/common/form/Select/Select.module.scss.js.map +1 -0
- package/dist/components/common/form/SizePicker/SizePicker.d.ts +13 -0
- package/dist/components/common/form/SizePicker/SizePicker.d.ts.map +1 -0
- package/dist/components/common/form/SizePicker/SizePicker.js +60 -0
- package/dist/components/common/form/SizePicker/SizePicker.js.map +1 -0
- package/dist/components/common/form/SizePicker/SizePicker.module.scss +82 -0
- package/dist/components/common/form/SizePicker/SizePicker.module.scss.js +20 -0
- package/dist/components/common/form/SizePicker/SizePicker.module.scss.js.map +1 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.d.ts +18 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.d.ts.map +1 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.js +77 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.js.map +1 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.module.scss +114 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.module.scss.js +16 -0
- package/dist/components/common/form/StoragePicker/StoragePicker.module.scss.js.map +1 -0
- package/dist/components/common/form/TagsInput/TagsInput.d.ts +13 -0
- package/dist/components/common/form/TagsInput/TagsInput.d.ts.map +1 -0
- package/dist/components/common/form/TagsInput/TagsInput.js +51 -0
- package/dist/components/common/form/TagsInput/TagsInput.js.map +1 -0
- package/dist/components/common/form/TagsInput/TagsInput.module.scss +54 -0
- package/dist/components/common/form/TagsInput/TagsInput.module.scss.js +14 -0
- package/dist/components/common/form/TagsInput/TagsInput.module.scss.js.map +1 -0
- package/dist/components/common/form/TimePicker/TimePicker.d.ts +10 -0
- package/dist/components/common/form/TimePicker/TimePicker.d.ts.map +1 -0
- package/dist/components/common/form/TimePicker/TimePicker.js +69 -0
- package/dist/components/common/form/TimePicker/TimePicker.js.map +1 -0
- package/dist/components/common/form/TimePicker/TimePicker.module.scss +73 -0
- package/dist/components/common/form/TimePicker/TimePicker.module.scss.js +28 -0
- package/dist/components/common/form/TimePicker/TimePicker.module.scss.js.map +1 -0
- package/dist/components/common/form/Toggle/Toggle.d.ts +13 -0
- package/dist/components/common/form/Toggle/Toggle.d.ts.map +1 -0
- package/dist/components/common/form/Toggle/Toggle.js +19 -0
- package/dist/components/common/form/Toggle/Toggle.js.map +1 -0
- package/dist/components/common/form/Toggle/Toggle.module.scss +68 -0
- package/dist/components/common/form/Toggle/Toggle.module.scss.js +12 -0
- package/dist/components/common/form/Toggle/Toggle.module.scss.js.map +1 -0
- package/dist/components/common/form/Tristate/Tristate.d.ts +17 -0
- package/dist/components/common/form/Tristate/Tristate.d.ts.map +1 -0
- package/dist/components/common/form/Tristate/Tristate.js +34 -0
- package/dist/components/common/form/Tristate/Tristate.js.map +1 -0
- package/dist/components/common/form/Tristate/Tristate.module.scss +67 -0
- package/dist/components/common/form/Tristate/Tristate.module.scss.js +18 -0
- package/dist/components/common/form/Tristate/Tristate.module.scss.js.map +1 -0
- package/dist/components/index.d.ts +100 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components.js +198 -0
- package/dist/components.js.map +1 -0
- package/dist/config/features.d.ts +5 -0
- package/dist/config/features.d.ts.map +1 -0
- package/dist/context/ComponentOverrideContext.d.ts +13 -0
- package/dist/context/ComponentOverrideContext.d.ts.map +1 -0
- package/dist/context/ComponentOverrideContext.js +9 -0
- package/dist/context/ComponentOverrideContext.js.map +1 -0
- package/dist/context/ThemeContext.d.ts +13 -0
- package/dist/context/ThemeContext.d.ts.map +1 -0
- package/dist/context/ThemeContext.js +38 -0
- package/dist/context/ThemeContext.js.map +1 -0
- package/dist/context/index.d.ts +6 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context.js +10 -0
- package/dist/context.js.map +1 -0
- package/dist/favicon.png +0 -0
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/usePlanSingleActions.d.ts +28 -0
- package/dist/hooks/usePlanSingleActions.d.ts.map +1 -0
- package/dist/hooks/usePlanSingleActions.js +70 -0
- package/dist/hooks/usePlanSingleActions.js.map +1 -0
- package/dist/hooks/usePwaAutoUpdate.d.ts +6 -0
- package/dist/hooks/usePwaAutoUpdate.d.ts.map +1 -0
- package/dist/hooks/usePwaAutoUpdate.js +16 -0
- package/dist/hooks/usePwaAutoUpdate.js.map +1 -0
- package/dist/hooks.js +7 -0
- package/dist/hooks.js.map +1 -0
- package/dist/icons/icon-128x128.png +0 -0
- package/dist/icons/icon-144x144.png +0 -0
- package/dist/icons/icon-192x192.png +0 -0
- package/dist/icons/icon-512x512.png +0 -0
- package/dist/icons/icon-72x72.png +0 -0
- package/dist/icons/icon-96x96.png +0 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/providers/1fichier.png +0 -0
- package/dist/providers/arvan.png +0 -0
- package/dist/providers/azureBlob.png +0 -0
- package/dist/providers/azureFiles.png +0 -0
- package/dist/providers/b2.png +0 -0
- package/dist/providers/box.png +0 -0
- package/dist/providers/ceph.png +0 -0
- package/dist/providers/dreamobjects.png +0 -0
- package/dist/providers/drive.png +0 -0
- package/dist/providers/dropbox.png +0 -0
- package/dist/providers/files.png +0 -0
- package/dist/providers/ftp.png +0 -0
- package/dist/providers/gcs.png +0 -0
- package/dist/providers/gofile.png +0 -0
- package/dist/providers/gphotos.png +0 -0
- package/dist/providers/hdfs.png +0 -0
- package/dist/providers/hidrive.png +0 -0
- package/dist/providers/http.png +0 -0
- package/dist/providers/ibmcos.png +0 -0
- package/dist/providers/idrive.png +0 -0
- package/dist/providers/internetarchive.png +0 -0
- package/dist/providers/ionos.png +0 -0
- package/dist/providers/jottacloud.png +0 -0
- package/dist/providers/koofr.png +0 -0
- package/dist/providers/leviia.png +0 -0
- package/dist/providers/liara.png +0 -0
- package/dist/providers/linkbox.png +0 -0
- package/dist/providers/linode.png +0 -0
- package/dist/providers/local.png +0 -0
- package/dist/providers/lyvecloud.png +0 -0
- package/dist/providers/magalu.png +0 -0
- package/dist/providers/mailru.png +0 -0
- package/dist/providers/mega.png +0 -0
- package/dist/providers/minio.png +0 -0
- package/dist/providers/netstorage.png +0 -0
- package/dist/providers/obs.png +0 -0
- package/dist/providers/onedrive.png +0 -0
- package/dist/providers/opendrive.png +0 -0
- package/dist/providers/oracle.png +0 -0
- package/dist/providers/oss.png +0 -0
- package/dist/providers/outscale.png +0 -0
- package/dist/providers/pcloud.png +0 -0
- package/dist/providers/petabox.png +0 -0
- package/dist/providers/pikpak.png +0 -0
- package/dist/providers/pixeldrain.png +0 -0
- package/dist/providers/premiumizeme.png +0 -0
- package/dist/providers/proton.png +0 -0
- package/dist/providers/putio.png +0 -0
- package/dist/providers/qingstor.png +0 -0
- package/dist/providers/qiniu.png +0 -0
- package/dist/providers/quatrix.png +0 -0
- package/dist/providers/r2.png +0 -0
- package/dist/providers/rackcorp.png +0 -0
- package/dist/providers/rclone.png +0 -0
- package/dist/providers/s3.png +0 -0
- package/dist/providers/scaleway.png +0 -0
- package/dist/providers/seafile.png +0 -0
- package/dist/providers/seaweedfs.png +0 -0
- package/dist/providers/selectel.png +0 -0
- package/dist/providers/sftp.png +0 -0
- package/dist/providers/sharefile.png +0 -0
- package/dist/providers/sia.png +0 -0
- package/dist/providers/smb.png +0 -0
- package/dist/providers/spaces.png +0 -0
- package/dist/providers/storj.png +0 -0
- package/dist/providers/sugarsync.png +0 -0
- package/dist/providers/swift.png +0 -0
- package/dist/providers/synologyc2.png +0 -0
- package/dist/providers/tencent.png +0 -0
- package/dist/providers/ulozto.png +0 -0
- package/dist/providers/wasabi.png +0 -0
- package/dist/providers/webdav.png +0 -0
- package/dist/providers/yandex.png +0 -0
- package/dist/providers/zoho.png +0 -0
- package/dist/router.d.ts +2 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +40 -0
- package/dist/router.js.map +1 -0
- package/dist/routes/DeviceSingle/DeviceSingle.d.ts +3 -0
- package/dist/routes/DeviceSingle/DeviceSingle.d.ts.map +1 -0
- package/dist/routes/DeviceSingle/DeviceSingle.js +67 -0
- package/dist/routes/DeviceSingle/DeviceSingle.js.map +1 -0
- package/dist/routes/DeviceSingle/DeviceSingle.module.scss +105 -0
- package/dist/routes/DeviceSingle/DeviceSingle.module.scss.js +14 -0
- package/dist/routes/DeviceSingle/DeviceSingle.module.scss.js.map +1 -0
- package/dist/routes/Login/Login.d.ts +3 -0
- package/dist/routes/Login/Login.d.ts.map +1 -0
- package/dist/routes/Login/Login.js +72 -0
- package/dist/routes/Login/Login.js.map +1 -0
- package/dist/routes/Login/Login.module.scss +94 -0
- package/dist/routes/Login/Login.module.scss.js +20 -0
- package/dist/routes/Login/Login.module.scss.js.map +1 -0
- package/dist/routes/NotFoundRoute/NotFoundRoute.d.ts +3 -0
- package/dist/routes/NotFoundRoute/NotFoundRoute.d.ts.map +1 -0
- package/dist/routes/NotFoundRoute/NotFoundRoute.js +7 -0
- package/dist/routes/NotFoundRoute/NotFoundRoute.js.map +1 -0
- package/dist/routes/NotFoundRoute/NotFoundRoute.module.scss +0 -0
- package/dist/routes/PlanSingle/PlanSingle.d.ts +3 -0
- package/dist/routes/PlanSingle/PlanSingle.d.ts.map +1 -0
- package/dist/routes/PlanSingle/PlanSingle.js +172 -0
- package/dist/routes/PlanSingle/PlanSingle.js.map +1 -0
- package/dist/routes/PlanSingle/PlanSingle.module.scss +76 -0
- package/dist/routes/PlanSingle/PlanSingle.module.scss.js +20 -0
- package/dist/routes/PlanSingle/PlanSingle.module.scss.js.map +1 -0
- package/dist/routes/Plans/Plans.d.ts +3 -0
- package/dist/routes/Plans/Plans.d.ts.map +1 -0
- package/dist/routes/Plans/Plans.js +91 -0
- package/dist/routes/Plans/Plans.js.map +1 -0
- package/dist/routes/Plans/Plans.module.scss +29 -0
- package/dist/routes/Plans/Plans.module.scss.js +12 -0
- package/dist/routes/Plans/Plans.module.scss.js.map +1 -0
- package/dist/routes/Settings/Settings.d.ts +3 -0
- package/dist/routes/Settings/Settings.d.ts.map +1 -0
- package/dist/routes/Settings/Settings.js +89 -0
- package/dist/routes/Settings/Settings.js.map +1 -0
- package/dist/routes/Settings/Settings.module.scss +112 -0
- package/dist/routes/Settings/Settings.module.scss.js +20 -0
- package/dist/routes/Settings/Settings.module.scss.js.map +1 -0
- package/dist/routes/Sources/Sources.d.ts +7 -0
- package/dist/routes/Sources/Sources.d.ts.map +1 -0
- package/dist/routes/Sources/Sources.js +50 -0
- package/dist/routes/Sources/Sources.js.map +1 -0
- package/dist/routes/Sources/Sources.module.scss +29 -0
- package/dist/routes/Sources/Sources.module.scss.js +12 -0
- package/dist/routes/Sources/Sources.module.scss.js.map +1 -0
- package/dist/routes/Storages/Storages.d.ts +3 -0
- package/dist/routes/Storages/Storages.d.ts.map +1 -0
- package/dist/routes/Storages/Storages.js +63 -0
- package/dist/routes/Storages/Storages.js.map +1 -0
- package/dist/routes/Storages/Storages.module.scss +30 -0
- package/dist/routes/Storages/Storages.module.scss.js +12 -0
- package/dist/routes/Storages/Storages.module.scss.js.map +1 -0
- package/dist/routes/index.d.ts +9 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes.js +19 -0
- package/dist/routes.js.map +1 -0
- package/dist/screenshots/screenshot-desktop.png +0 -0
- package/dist/screenshots/screenshot-mobile.png +0 -0
- package/dist/services/backups.d.ts +53 -0
- package/dist/services/backups.d.ts.map +1 -0
- package/dist/services/backups.js +182 -0
- package/dist/services/backups.js.map +1 -0
- package/dist/services/devices.d.ts +33 -0
- package/dist/services/devices.d.ts.map +1 -0
- package/dist/services/devices.js +130 -0
- package/dist/services/devices.js.map +1 -0
- package/dist/services/index.d.ts +11 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/plans.d.ts +40 -0
- package/dist/services/plans.d.ts.map +1 -0
- package/dist/services/plans.js +307 -0
- package/dist/services/plans.js.map +1 -0
- package/dist/services/restores.d.ts +71 -0
- package/dist/services/restores.d.ts.map +1 -0
- package/dist/services/restores.js +204 -0
- package/dist/services/restores.js.map +1 -0
- package/dist/services/settings.d.ts +27 -0
- package/dist/services/settings.d.ts.map +1 -0
- package/dist/services/settings.js +124 -0
- package/dist/services/settings.js.map +1 -0
- package/dist/services/storage.d.ts +33 -0
- package/dist/services/storage.d.ts.map +1 -0
- package/dist/services/storage.js +147 -0
- package/dist/services/storage.js.map +1 -0
- package/dist/services/users.d.ts +12 -0
- package/dist/services/users.d.ts.map +1 -0
- package/dist/services/users.js +68 -0
- package/dist/services/users.js.map +1 -0
- package/dist/services.js +110 -0
- package/dist/services.js.map +1 -0
- package/dist/styles/core-frontend.css +1 -0
- package/dist/styles/fields.scss +49 -0
- package/dist/styles/global.scss +360 -0
- package/dist/styles/steps.scss +67 -0
- package/dist/utils/constants.d.ts +6 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/constants.js +92 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/dummy.d.ts +2 -0
- package/dist/utils/dummy.d.ts.map +1 -0
- package/dist/utils/getIconNameforFile.d.ts +2 -0
- package/dist/utils/getIconNameforFile.d.ts.map +1 -0
- package/dist/utils/getIconNameforFile.js +71 -0
- package/dist/utils/getIconNameforFile.js.map +1 -0
- package/dist/utils/helpers.d.ts +36 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +176 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/utils/index.d.ts +11 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/plans.d.ts +5 -0
- package/dist/utils/plans.d.ts.map +1 -0
- package/dist/utils/plans.js +61 -0
- package/dist/utils/plans.js.map +1 -0
- package/dist/utils/progressHelpers.d.ts +7 -0
- package/dist/utils/progressHelpers.d.ts.map +1 -0
- package/dist/utils/progressHelpers.js +164 -0
- package/dist/utils/progressHelpers.js.map +1 -0
- package/dist/utils/restore.d.ts +5 -0
- package/dist/utils/restore.d.ts.map +1 -0
- package/dist/utils/restore.js +14 -0
- package/dist/utils/restore.js.map +1 -0
- package/dist/utils/storageProviders.d.ts +376 -0
- package/dist/utils/storageProviders.d.ts.map +1 -0
- package/dist/utils/storageProviders.js +377 -0
- package/dist/utils/storageProviders.js.map +1 -0
- package/dist/utils/supportedExtensions.d.ts +1797 -0
- package/dist/utils/supportedExtensions.d.ts.map +1 -0
- package/dist/utils/supportedExtensions.js +5471 -0
- package/dist/utils/supportedExtensions.js.map +1 -0
- package/dist/utils.js +48 -0
- package/dist/utils.js.map +1 -0
- package/package.json +142 -0
- package/src/@types/backups.ts +75 -0
- package/src/@types/devices.ts +239 -0
- package/src/@types/index.ts +11 -0
- package/src/@types/plans.ts +197 -0
- package/src/@types/restores.ts +115 -0
- package/src/@types/settings.ts +20 -0
- package/src/@types/storages.ts +30 -0
- package/src/@types/system.ts +11 -0
- package/src/assets/fileicons.css +6205 -0
- package/src/assets/fileicons.png +0 -0
- package/src/assets/fonts/Inter18pt-Bold.woff +0 -0
- package/src/assets/fonts/Inter18pt-Bold.woff2 +0 -0
- package/src/assets/fonts/Inter18pt-Regular.woff +0 -0
- package/src/assets/fonts/Inter18pt-Regular.woff2 +0 -0
- package/src/assets/fonts/Inter18pt-SemiBold.woff +0 -0
- package/src/assets/fonts/Inter18pt-SemiBold.woff2 +0 -0
- package/src/assets/fonts/fonts.css +29 -0
- package/src/components/App/App/App.module.scss +14 -0
- package/src/components/App/App/App.tsx +51 -0
- package/src/components/App/AppContent/AppContent.module.scss +12 -0
- package/src/components/App/AppContent/AppContent.tsx +14 -0
- package/src/components/App/Footer/Footer.module.scss +23 -0
- package/src/components/App/Footer/Footer.tsx +34 -0
- package/src/components/App/PageTitle/PageTitle.tsx +16 -0
- package/src/components/App/SideNav/SideNav.module.scss +58 -0
- package/src/components/App/SideNav/SideNav.tsx +106 -0
- package/src/components/Device/DeviceBackups/DeviceBackups.module.scss +142 -0
- package/src/components/Device/DeviceBackups/DeviceBackups.tsx +135 -0
- package/src/components/Device/DeviceCPU/DeviceCPU.tsx +60 -0
- package/src/components/Device/DeviceInfo/DeviceInfo.module.scss +214 -0
- package/src/components/Device/DeviceInfo/DeviceInfo.tsx +44 -0
- package/src/components/Device/DeviceItem/DeviceItem.module.scss +216 -0
- package/src/components/Device/DeviceItem/DeviceItem.tsx +94 -0
- package/src/components/Device/DeviceMemory/DeviceMemory.tsx +97 -0
- package/src/components/Device/DeviceNetworks/DeviceNetworks.tsx +48 -0
- package/src/components/Device/DeviceRcloneSettings/DeviceRcloneSettings.tsx +150 -0
- package/src/components/Device/DeviceResticSettings/DeviceResticSettings.tsx +59 -0
- package/src/components/Device/DeviceStorageDisks/DeviceStorageDisks.tsx +38 -0
- package/src/components/Device/DeviceStorageDrives/DeviceStorageDrives.tsx +51 -0
- package/src/components/Device/DeviceSystem/DeviceSystem.tsx +52 -0
- package/src/components/Device/EditDevice/EditDevice.module.scss +110 -0
- package/src/components/Device/EditDevice/EditDevice.tsx +154 -0
- package/src/components/Plan/AddPlan/AddPlan.module.scss +191 -0
- package/src/components/Plan/AddPlan/AddPlan.tsx +56 -0
- package/src/components/Plan/BackupEvents/BackupEvents.module.scss +189 -0
- package/src/components/Plan/BackupEvents/BackupEvents.tsx +113 -0
- package/src/components/Plan/BackupProgress/BackupProgress.module.scss +120 -0
- package/src/components/Plan/BackupProgress/BackupProgress.tsx +212 -0
- package/src/components/Plan/Backups/Backups.module.scss +210 -0
- package/src/components/Plan/Backups/Backups.tsx +295 -0
- package/src/components/Plan/EditPlan/EditPlan.module.scss +41 -0
- package/src/components/Plan/EditPlan/EditPlan.tsx +56 -0
- package/src/components/Plan/PlanBackups/PlanBackups.module.scss +58 -0
- package/src/components/Plan/PlanBackups/PlanBackups.tsx +55 -0
- package/src/components/Plan/PlanForm/PlanForm.module.scss +72 -0
- package/src/components/Plan/PlanForm/PlanForm.tsx +249 -0
- package/src/components/Plan/PlanForm/PlanFormNav.tsx +64 -0
- package/src/components/Plan/PlanHistory/PlanHistory.module.scss +44 -0
- package/src/components/Plan/PlanHistory/PlanHistory.tsx +65 -0
- package/src/components/Plan/PlanItems/PlanItem.module.scss +332 -0
- package/src/components/Plan/PlanItems/PlanItem.tsx +202 -0
- package/src/components/Plan/PlanLogs/PlanLogs.module.scss +0 -0
- package/src/components/Plan/PlanLogs/PlanLogs.tsx +25 -0
- package/src/components/Plan/PlanPendingBackup/PlanPendingBackup.module.scss +42 -0
- package/src/components/Plan/PlanPendingBackup/PlanPendingBackup.tsx +55 -0
- package/src/components/Plan/PlanProgress/PlanProgress.module.scss +19 -0
- package/src/components/Plan/PlanProgress/PlanProgress.tsx +75 -0
- package/src/components/Plan/PlanPruneModal/PlanPruneModal.tsx +59 -0
- package/src/components/Plan/PlanRemoveModal/PlanRemoveModal.module.scss +9 -0
- package/src/components/Plan/PlanRemoveModal/PlanRemoveModal.tsx +72 -0
- package/src/components/Plan/PlanSettings/PlanAdvancedSettings.tsx +115 -0
- package/src/components/Plan/PlanSettings/PlanGeneralSettings.tsx +53 -0
- package/src/components/Plan/PlanSettings/PlanNotificationSettings.tsx +78 -0
- package/src/components/Plan/PlanSettings/PlanPerformanceSettings.tsx +87 -0
- package/src/components/Plan/PlanSettings/PlanPruneSettings.tsx +104 -0
- package/src/components/Plan/PlanSettings/PlanScriptsSettings.tsx +290 -0
- package/src/components/Plan/PlanSettings/PlanSettings.module.scss +464 -0
- package/src/components/Plan/PlanSettings/PlanSourceSettings.tsx +56 -0
- package/src/components/Plan/PlanSettings/PlanStrategySettings.tsx +34 -0
- package/src/components/Plan/PlanSettings/PlanTypeSettings.tsx +34 -0
- package/src/components/Plan/PlanStats/PlanStats.module.scss +125 -0
- package/src/components/Plan/PlanStats/PlanStats.tsx +96 -0
- package/src/components/Plan/PlanUnlockModal/PlanUnlockModal.tsx +34 -0
- package/src/components/Plan/Restores/Restores.tsx +155 -0
- package/src/components/Restore/RestoreChangeViewer/RestoreChangeViewer.module.scss +71 -0
- package/src/components/Restore/RestoreChangeViewer/RestoreChangeViewer.tsx +37 -0
- package/src/components/Restore/RestoreFileSelector/RestoreFileSelector.module.scss +326 -0
- package/src/components/Restore/RestoreFileSelector/RestoreFileSelector.tsx +518 -0
- package/src/components/Restore/RestoreWizard/RestoreConfirmStep.tsx +105 -0
- package/src/components/Restore/RestoreWizard/RestoreFileSelectorStep.tsx +79 -0
- package/src/components/Restore/RestoreWizard/RestorePreviewStep.tsx +124 -0
- package/src/components/Restore/RestoreWizard/RestoreSettingsStep.tsx +171 -0
- package/src/components/Restore/RestoreWizard/RestoreWizard.module.scss +390 -0
- package/src/components/Restore/RestoreWizard/RestoreWizard.tsx +135 -0
- package/src/components/Restore/RestoredFileBrowser/RestoredFileBrowser.module.scss +299 -0
- package/src/components/Restore/RestoredFileBrowser/RestoredFileBrowser.tsx +329 -0
- package/src/components/Settings/AppLogs/AppLogs.tsx +23 -0
- package/src/components/Settings/GeneralSettings/GeneralSettings.module.scss +3 -0
- package/src/components/Settings/GeneralSettings/GeneralSettings.tsx +65 -0
- package/src/components/Settings/IntegrationSettings/IntegrationSettings.module.scss +38 -0
- package/src/components/Settings/IntegrationSettings/IntegrationSettings.tsx +62 -0
- package/src/components/Settings/IntegrationSettings/SMTPSettings.tsx +97 -0
- package/src/components/Skeleton/SkeletonItems.module.scss +162 -0
- package/src/components/Skeleton/SkeletonItems.tsx +33 -0
- package/src/components/Storage/AddStorage/AddStorage.module.scss +168 -0
- package/src/components/Storage/AddStorage/AddStorage.tsx +279 -0
- package/src/components/Storage/EditStorage/EditStorage.module.scss +0 -0
- package/src/components/Storage/EditStorage/EditStorage.tsx +213 -0
- package/src/components/Storage/StorageAuthSettings/StorageAuthSettings.tsx +120 -0
- package/src/components/Storage/StorageItem/StorageItem.module.scss +231 -0
- package/src/components/Storage/StorageItem/StorageItem.tsx +150 -0
- package/src/components/Storage/StorageSettings/StorageSettings.module.scss +29 -0
- package/src/components/Storage/StorageSettings/StorageSettings.tsx +176 -0
- package/src/components/common/ActionModal/ActionModal.module.scss +60 -0
- package/src/components/common/ActionModal/ActionModal.tsx +71 -0
- package/src/components/common/AnimatedWrapper/AnimatedWrapper.module.scss +88 -0
- package/src/components/common/AnimatedWrapper/AnimatedWrapper.tsx +66 -0
- package/src/components/common/Button/Button.module.scss +56 -0
- package/src/components/common/Button/Button.tsx +36 -0
- package/src/components/common/FileIcon/FileIcon.tsx +20 -0
- package/src/components/common/FileManager/FileManager.module.scss +196 -0
- package/src/components/common/FileManager/FileManager.tsx +251 -0
- package/src/components/common/FolderPicker/FolderPicker.module.scss +77 -0
- package/src/components/common/FolderPicker/FolderPicker.tsx +60 -0
- package/src/components/common/Icon/Icon.tsx +1494 -0
- package/src/components/common/ItemsLayout/ItemsLayout.module.scss +51 -0
- package/src/components/common/ItemsLayout/ItemsLayout.tsx +43 -0
- package/src/components/common/LogViewer/LogViewer.module.scss +188 -0
- package/src/components/common/LogViewer/LogViewer.tsx +161 -0
- package/src/components/common/Logo/Logo.tsx +19 -0
- package/src/components/common/Modal/Modal.module.scss +81 -0
- package/src/components/common/Modal/Modal.tsx +88 -0
- package/src/components/common/NotFound/NotFound.module.scss +36 -0
- package/src/components/common/NotFound/NotFound.tsx +22 -0
- package/src/components/common/PageHeader/PageHeader.module.scss +61 -0
- package/src/components/common/PageHeader/PageHeader.tsx +36 -0
- package/src/components/common/PathPicker/PathPicker.module.scss +278 -0
- package/src/components/common/PathPicker/PathPicker.tsx +270 -0
- package/src/components/common/SearchItems/SearchItems.module.scss +48 -0
- package/src/components/common/SearchItems/SearchItems.tsx +45 -0
- package/src/components/common/SidePanel/SidePanel.module.scss +217 -0
- package/src/components/common/SidePanel/SidePanel.tsx +68 -0
- package/src/components/common/SortItems/SortItems.module.scss +53 -0
- package/src/components/common/SortItems/SortItems.tsx +61 -0
- package/src/components/common/StatusLabel/StatusLabel.module.scss +0 -0
- package/src/components/common/StatusLabel/StatusLabel.tsx +36 -0
- package/src/components/common/Tabs/Tabs.module.scss +43 -0
- package/src/components/common/Tabs/Tabs.tsx +101 -0
- package/src/components/common/TagsFilter/TagsFilter.module.scss +59 -0
- package/src/components/common/TagsFilter/TagsFilter.tsx +52 -0
- package/src/components/common/form/FormField/FormField.module.scss +32 -0
- package/src/components/common/form/FormField/FormField.tsx +38 -0
- package/src/components/common/form/Input/Input.module.scss +71 -0
- package/src/components/common/form/Input/Input.tsx +72 -0
- package/src/components/common/form/IntervalField/IntervalField.module.scss +47 -0
- package/src/components/common/form/IntervalField/IntervalField.tsx +148 -0
- package/src/components/common/form/MultiSelect/MultiSelect.module.scss +157 -0
- package/src/components/common/form/MultiSelect/MultiSelect.tsx +132 -0
- package/src/components/common/form/NumberInput/NumberInput.module.scss +102 -0
- package/src/components/common/form/NumberInput/NumberInput.tsx +90 -0
- package/src/components/common/form/PasswordField/PasswordField.module.scss +78 -0
- package/src/components/common/form/PasswordField/PasswordField.tsx +73 -0
- package/src/components/common/form/RadioIconSelect/RadioIconSelect.module.scss +104 -0
- package/src/components/common/form/RadioIconSelect/RadioIconSelect.tsx +68 -0
- package/src/components/common/form/Select/Select.module.scss +193 -0
- package/src/components/common/form/Select/Select.tsx +123 -0
- package/src/components/common/form/SizePicker/SizePicker.module.scss +82 -0
- package/src/components/common/form/SizePicker/SizePicker.tsx +98 -0
- package/src/components/common/form/StoragePicker/StoragePicker.module.scss +114 -0
- package/src/components/common/form/StoragePicker/StoragePicker.tsx +106 -0
- package/src/components/common/form/TagsInput/TagsInput.module.scss +54 -0
- package/src/components/common/form/TagsInput/TagsInput.tsx +83 -0
- package/src/components/common/form/TimePicker/TimePicker.module.scss +73 -0
- package/src/components/common/form/TimePicker/TimePicker.tsx +99 -0
- package/src/components/common/form/Toggle/Toggle.module.scss +68 -0
- package/src/components/common/form/Toggle/Toggle.tsx +34 -0
- package/src/components/common/form/Tristate/Tristate.module.scss +67 -0
- package/src/components/common/form/Tristate/Tristate.tsx +48 -0
- package/src/components/index.ts +117 -0
- package/src/config/features.ts +4 -0
- package/src/context/ComponentOverrideContext.tsx +25 -0
- package/src/context/ThemeContext.tsx +68 -0
- package/src/context/index.ts +6 -0
- package/src/hooks/index.ts +6 -0
- package/src/hooks/usePlanSingleActions.tsx +137 -0
- package/src/hooks/usePwaAutoUpdate.ts +33 -0
- package/src/index.ts +26 -0
- package/src/main.tsx +24 -0
- package/src/router.tsx +48 -0
- package/src/routes/DeviceSingle/DeviceSingle.module.scss +105 -0
- package/src/routes/DeviceSingle/DeviceSingle.tsx +86 -0
- package/src/routes/Login/Login.module.scss +94 -0
- package/src/routes/Login/Login.tsx +99 -0
- package/src/routes/NotFoundRoute/NotFoundRoute.module.scss +0 -0
- package/src/routes/NotFoundRoute/NotFoundRoute.tsx +7 -0
- package/src/routes/PlanSingle/PlanSingle.module.scss +76 -0
- package/src/routes/PlanSingle/PlanSingle.tsx +181 -0
- package/src/routes/Plans/Plans.module.scss +29 -0
- package/src/routes/Plans/Plans.tsx +128 -0
- package/src/routes/Settings/Settings.module.scss +112 -0
- package/src/routes/Settings/Settings.tsx +102 -0
- package/src/routes/Sources/Sources.module.scss +29 -0
- package/src/routes/Sources/Sources.tsx +86 -0
- package/src/routes/Storages/Storages.module.scss +30 -0
- package/src/routes/Storages/Storages.tsx +92 -0
- package/src/routes/index.ts +9 -0
- package/src/services/backups.ts +231 -0
- package/src/services/devices.ts +161 -0
- package/src/services/index.ts +11 -0
- package/src/services/plans.ts +393 -0
- package/src/services/restores.ts +261 -0
- package/src/services/settings.ts +163 -0
- package/src/services/storage.ts +201 -0
- package/src/services/users.ts +91 -0
- package/src/styles/fields.scss +49 -0
- package/src/styles/global.scss +360 -0
- package/src/styles/steps.scss +67 -0
- package/src/utils/constants.ts +89 -0
- package/src/utils/dummy.ts +0 -0
- package/src/utils/getIconNameforFile.ts +142 -0
- package/src/utils/helpers.ts +440 -0
- package/src/utils/index.ts +12 -0
- package/src/utils/plans.ts +78 -0
- package/src/utils/progressHelpers.ts +244 -0
- package/src/utils/restore.ts +28 -0
- package/src/utils/storageProviders.ts +374 -0
- package/src/utils/supportedExtensions.ts +5595 -0
- package/src/vite-env.d.ts +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,eAAO,MAAM,QAAQ,QAAO,OA0B3B,CAAC;AAGF,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI,uBAkBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,MAoBhD,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,GAAG,MAAM,KAAG,MAYzD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,MAW3C,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,KAAG,MAI7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAEhD,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,KAAG,MAe3C,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,EAAE,oBAAgB,WAOtD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,IAAI,MAAM,yIAuCnC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,kCAU7C,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,EAAE,QAAQ,MAAM,YAa9D,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,EAAE,UAAU,MAAM,KAAG,OAyBlE,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiBrD;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,OA0D5C,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,kBAAkB,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,kBAAkB,EAAE,KAAG,OAqBrI,CAAC;AAGF,eAAO,MAAM,uBAAuB,GAAI,OAAO,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC,EAAE;;CA4B/F,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,QAAQ,EAAE,EAAE,WAAW,MAAM,QAAQ,EAAE,eAAe,KAAK,GAAG,MAAM,eAqBxG,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,WAAW,MAAM;WACH,MAAM;WAAS,MAAM;GAmCtE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,WAK/C,CAAC"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
const f = () => {
|
|
2
|
+
if (typeof navigator > "u" || typeof window > "u")
|
|
3
|
+
return !1;
|
|
4
|
+
const e = navigator.userAgent || navigator.vendor || window.opera || "", t = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|mobile|CriOS/i, n = "ontouchstart" in window || navigator.maxTouchPoints > 0, r = window.innerWidth <= 768;
|
|
5
|
+
return !!(t.test(e) || n && r);
|
|
6
|
+
}, c = new Intl.RelativeTimeFormat("en"), d = (e) => {
|
|
7
|
+
const t = e instanceof Date ? e : new Date(e), n = {
|
|
8
|
+
years: 3600 * 24 * 365,
|
|
9
|
+
months: 3600 * 24 * 30,
|
|
10
|
+
weeks: 3600 * 24 * 7,
|
|
11
|
+
days: 3600 * 24,
|
|
12
|
+
hours: 3600,
|
|
13
|
+
minutes: 60,
|
|
14
|
+
seconds: 1
|
|
15
|
+
}, r = (t.getTime() - Date.now()) / 1e3;
|
|
16
|
+
for (const s in n)
|
|
17
|
+
if (n[s] < Math.abs(r)) {
|
|
18
|
+
const i = r / n[s];
|
|
19
|
+
return c.format(Math.round(i), s);
|
|
20
|
+
}
|
|
21
|
+
}, h = (e) => {
|
|
22
|
+
if (!e) return "0s";
|
|
23
|
+
if (e < 1)
|
|
24
|
+
return `${Math.round(e * 1e3)}ms`;
|
|
25
|
+
const t = Math.floor(e / 3600), n = Math.floor(e % 3600 / 60), r = Math.floor(e % 60);
|
|
26
|
+
return t >= 1 ? `${t} h ${n} min` : n >= 1 ? `${n} min` : `${r}s`;
|
|
27
|
+
}, m = (e) => {
|
|
28
|
+
const t = new Date(e), n = {
|
|
29
|
+
year: "numeric",
|
|
30
|
+
month: "short",
|
|
31
|
+
day: "numeric",
|
|
32
|
+
hour: "2-digit",
|
|
33
|
+
minute: "2-digit"
|
|
34
|
+
};
|
|
35
|
+
return t.toLocaleString("en-US", n);
|
|
36
|
+
}, g = (e) => {
|
|
37
|
+
const t = ["B", "KB", "MB", "GB", "TB", "PB"];
|
|
38
|
+
let n = e || 0, r = 0;
|
|
39
|
+
for (; n >= 1024 && r < t.length - 1; )
|
|
40
|
+
n /= 1024, r++;
|
|
41
|
+
return `${n.toFixed(2)} ${t[r]}`;
|
|
42
|
+
}, w = (e) => e < 1e3 ? e.toString() : `${(e / 1e3).toFixed(1)}k`, b = (e) => (e & 511).toString(8).padStart(3, "0"), v = (e) => e >= 86400 ? `${Math.floor(e / 86400)}d` : e >= 3600 ? `${Math.floor(e / 3600)}h` : e >= 60 ? `${Math.floor(e / 60)}m` : `${Math.floor(e)}s`, p = (e, t = 10) => {
|
|
43
|
+
if (e.length <= t * 2) return e;
|
|
44
|
+
const n = e.slice(0, t), r = e.slice(-t);
|
|
45
|
+
return `${n}...${r}`;
|
|
46
|
+
}, $ = (e) => {
|
|
47
|
+
const t = e.toLowerCase();
|
|
48
|
+
return t.includes("windows") ? "windows" : t.includes("mac") ? "macos" : t.includes("centos") ? "centos" : t.includes("fedora") ? "fedora" : t.includes("debian") ? "debian" : t.includes("mint") ? "mint" : t.includes("pop") ? "popos" : t.includes("ubuntu") ? "ubuntu" : t.includes("kali") ? "kali" : t.includes("arch") ? "arch" : t.includes("zorin") ? "zorin" : t.includes("manjaro") ? "manjaro" : "linux";
|
|
49
|
+
}, z = (e) => {
|
|
50
|
+
const t = e.toLowerCase();
|
|
51
|
+
return t.includes("amd") ? "amd" : t.includes("intel") ? "intel" : "processor";
|
|
52
|
+
}, A = (e, t) => {
|
|
53
|
+
if (!e || !t) return !1;
|
|
54
|
+
const n = e.split(".").map(Number), r = t.split(".").map(Number);
|
|
55
|
+
for (let s = 0; s < 3; s++) {
|
|
56
|
+
const i = n[s] || 0, o = r[s] || 0;
|
|
57
|
+
if (i < o) return !0;
|
|
58
|
+
if (i > o) return !1;
|
|
59
|
+
}
|
|
60
|
+
return !1;
|
|
61
|
+
}, M = (e, t) => t === "win32" ? e.includes("server") || e.includes("windows server") : t === "linux" ? e.includes("server") || e.includes("enterprise") || e.includes("centos") || e.includes("redhat") || e.includes("ubuntu server") || e.includes("debian") || e.includes("fedora server") : t === "darwin" ? e.includes("server") : !1;
|
|
62
|
+
function S(e) {
|
|
63
|
+
switch (e) {
|
|
64
|
+
case 10:
|
|
65
|
+
return "trace";
|
|
66
|
+
case 20:
|
|
67
|
+
return "debug";
|
|
68
|
+
case 30:
|
|
69
|
+
return "info";
|
|
70
|
+
case 40:
|
|
71
|
+
return "warn";
|
|
72
|
+
case 50:
|
|
73
|
+
return "error";
|
|
74
|
+
case 60:
|
|
75
|
+
return "fatal";
|
|
76
|
+
default:
|
|
77
|
+
return "unknown";
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const B = (e) => {
|
|
81
|
+
if (!e || typeof e != "string")
|
|
82
|
+
return !1;
|
|
83
|
+
const t = e.trim();
|
|
84
|
+
if (t.length === 0 || t.length > 254 || !/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/.test(t))
|
|
85
|
+
return !1;
|
|
86
|
+
const [r, s] = t.split("@");
|
|
87
|
+
if (!r || r.length > 64 || !s || s.length > 253 || !s.includes("."))
|
|
88
|
+
return !1;
|
|
89
|
+
const i = s.split("."), o = i[i.length - 1];
|
|
90
|
+
return !(!o || o.length < 2 || r.startsWith(".") || r.endsWith(".") || r.includes("..") || s.startsWith(".") || s.endsWith(".") || s.includes(".."));
|
|
91
|
+
}, P = (e, t, n) => !e.condition || e.condition.length === 0 ? !0 : e.condition.some((r) => Object.entries(r).every(([s, i]) => {
|
|
92
|
+
const o = n.find((a) => a.value === s);
|
|
93
|
+
return o ? (t[s] !== void 0 ? t[s] : o.default) === i : !1;
|
|
94
|
+
})), x = (e) => {
|
|
95
|
+
const t = {};
|
|
96
|
+
return e.forEach((n) => {
|
|
97
|
+
n.isDirectory && (t[n.path] = 0);
|
|
98
|
+
}), e.forEach((n) => {
|
|
99
|
+
if (!n.isDirectory && n.size) {
|
|
100
|
+
let r = n.path.split("/").filter(Boolean), s = "";
|
|
101
|
+
for (let i = 0; i < r.length - 1; i++)
|
|
102
|
+
s = s ? `${s}/${r[i]}` : `/${r[i]}`, t[s] !== void 0 && (t[s] += n.size);
|
|
103
|
+
}
|
|
104
|
+
}), t;
|
|
105
|
+
}, y = (e, t, n) => [...e].sort((r, s) => {
|
|
106
|
+
var i, o;
|
|
107
|
+
if (t === "name") {
|
|
108
|
+
const u = r.name.toLowerCase(), a = s.name.toLowerCase();
|
|
109
|
+
return n === "asc" ? u.localeCompare(a) : a.localeCompare(u);
|
|
110
|
+
} else if (t === "modifiedAt") {
|
|
111
|
+
const u = new Date(r.modifiedAt).getTime(), a = new Date(s.modifiedAt).getTime();
|
|
112
|
+
return n === "asc" ? u - a : a - u;
|
|
113
|
+
} else if (t === "size") {
|
|
114
|
+
const u = r.size || 0, a = s.size || 0;
|
|
115
|
+
return n === "asc" ? u - a : a - u;
|
|
116
|
+
} else {
|
|
117
|
+
const u = n === "asc" ? 1 : -1, a = ((i = r[t]) == null ? void 0 : i.toString()) || "", l = ((o = s[t]) == null ? void 0 : o.toString()) || "";
|
|
118
|
+
return a.localeCompare(l) * u;
|
|
119
|
+
}
|
|
120
|
+
}), C = (e) => {
|
|
121
|
+
const t = {
|
|
122
|
+
Windows: [
|
|
123
|
+
{ label: "PowerShell", value: "powershell" },
|
|
124
|
+
{ label: "Command Prompt (CMD)", value: "cmd" },
|
|
125
|
+
{ label: "Bash", value: "bash" }
|
|
126
|
+
],
|
|
127
|
+
MacOs: [
|
|
128
|
+
{ label: "Zsh", value: "zsh" },
|
|
129
|
+
{ label: "Bash", value: "/bin/bash" },
|
|
130
|
+
{ label: "sh", value: "/bin/sh" }
|
|
131
|
+
],
|
|
132
|
+
Linux: [
|
|
133
|
+
{ label: "Bash", value: "/bin/bash" },
|
|
134
|
+
{ label: "sh", value: "/bin/sh" },
|
|
135
|
+
{ label: "Zsh", value: "zsh" }
|
|
136
|
+
]
|
|
137
|
+
};
|
|
138
|
+
switch (e) {
|
|
139
|
+
case "win32":
|
|
140
|
+
return t.Windows;
|
|
141
|
+
case "darwin":
|
|
142
|
+
return t.MacOs;
|
|
143
|
+
case "linux":
|
|
144
|
+
return t.Linux;
|
|
145
|
+
default:
|
|
146
|
+
const n = [];
|
|
147
|
+
return Object.keys(t).map((r) => {
|
|
148
|
+
t[r].forEach((s) => {
|
|
149
|
+
n.push({ label: r + ": " + s.label, value: s.value });
|
|
150
|
+
});
|
|
151
|
+
}), n;
|
|
152
|
+
}
|
|
153
|
+
}, D = (e) => e === 0 ? "" : e > 60 ? `${Math.round(e / 60)} min` : `${e} sec`;
|
|
154
|
+
export {
|
|
155
|
+
x as calculateDirectorySizes,
|
|
156
|
+
p as clipPath,
|
|
157
|
+
A as compareVersions,
|
|
158
|
+
g as formatBytes,
|
|
159
|
+
m as formatDateTime,
|
|
160
|
+
h as formatDuration,
|
|
161
|
+
w as formatNumberToK,
|
|
162
|
+
b as formatPermissions,
|
|
163
|
+
v as formatSeconds,
|
|
164
|
+
C as getAvailableCliApps,
|
|
165
|
+
S as getLogLevelName,
|
|
166
|
+
$ as getOSIcon,
|
|
167
|
+
z as getProcessorIcon,
|
|
168
|
+
f as isMobile,
|
|
169
|
+
M as isServerEdition,
|
|
170
|
+
B as isValidEmail,
|
|
171
|
+
D as secondsToMinutes,
|
|
172
|
+
P as shouldDisplayStorageField,
|
|
173
|
+
y as sortFileItems,
|
|
174
|
+
d as timeAgo
|
|
175
|
+
};
|
|
176
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sources":["../../src/utils/helpers.ts"],"sourcesContent":["import { storageOptionField } from '../@types/storages';\r\nimport { FileItem } from '../@types/system';\r\n\r\nexport const isMobile = (): boolean => {\r\n // Server-side rendering check\r\n if (typeof navigator === 'undefined' || typeof window === 'undefined') {\r\n return false;\r\n }\r\n\r\n const userAgent = navigator.userAgent || navigator.vendor || (window as any).opera || '';\r\n\r\n // Check for mobile user agents\r\n const mobileRegex = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|mobile|CriOS/i;\r\n\r\n // Check for touch capability and screen size\r\n const hasTouch = 'ontouchstart' in window || navigator.maxTouchPoints > 0;\r\n const smallScreen = window.innerWidth <= 768;\r\n\r\n // Primary check: user agent\r\n if (mobileRegex.test(userAgent)) {\r\n return true;\r\n }\r\n\r\n // Secondary check: touch + small screen (for edge cases)\r\n if (hasTouch && smallScreen) {\r\n return true;\r\n }\r\n\r\n return false;\r\n};\r\n\r\nconst formatter = new Intl.RelativeTimeFormat('en');\r\nexport const timeAgo = (input: Date) => {\r\n const date = input instanceof Date ? input : new Date(input);\r\n const ranges: { [k: string]: number } = {\r\n years: 3600 * 24 * 365,\r\n months: 3600 * 24 * 30,\r\n weeks: 3600 * 24 * 7,\r\n days: 3600 * 24,\r\n hours: 3600,\r\n minutes: 60,\r\n seconds: 1,\r\n };\r\n const secondsElapsed = (date.getTime() - Date.now()) / 1000;\r\n for (const key in ranges) {\r\n if (ranges[key] < Math.abs(secondsElapsed)) {\r\n const delta = secondsElapsed / ranges[key];\r\n return formatter.format(Math.round(delta), key as Intl.RelativeTimeFormatUnit);\r\n }\r\n }\r\n};\r\n\r\n/** * Formats a duration in seconds to a human-readable string\r\n * @param seconds - Duration in seconds\r\n */\r\nexport const formatDuration = (seconds: number): string => {\r\n if (!seconds) return '0s';\r\n\r\n if (seconds < 1) {\r\n return `${Math.round(seconds * 1000)}ms`;\r\n }\r\n\r\n const hours = Math.floor(seconds / 3600);\r\n const minutes = Math.floor((seconds % 3600) / 60);\r\n const remainingSeconds = Math.floor(seconds % 60);\r\n\r\n if (hours >= 1) {\r\n return `${hours} h ${minutes} min`;\r\n }\r\n\r\n if (minutes >= 1) {\r\n return `${minutes} min`;\r\n }\r\n\r\n return `${remainingSeconds}s`;\r\n};\r\n\r\nexport const formatDateTime = (isoDate: string | number): string => {\r\n const date = new Date(isoDate);\r\n\r\n const options: Intl.DateTimeFormatOptions = {\r\n year: 'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n };\r\n\r\n return date.toLocaleString('en-US', options);\r\n};\r\n\r\nexport const formatBytes = (bytes: number): string => {\r\n const units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];\r\n let value = bytes || 0;\r\n let unitIndex = 0;\r\n\r\n while (value >= 1024 && unitIndex < units.length - 1) {\r\n value /= 1024;\r\n unitIndex++;\r\n }\r\n\r\n return `${value.toFixed(2)} ${units[unitIndex]}`;\r\n};\r\n\r\nexport const formatNumberToK = (num: number): string => {\r\n if (num < 1000) return num.toString();\r\n const value = num / 1000;\r\n return `${value.toFixed(1)}k`;\r\n};\r\n\r\nexport const formatPermissions = (mode: number): string => {\r\n return (mode & 0o777).toString(8).padStart(3, '0');\r\n};\r\n\r\nexport const formatSeconds = (num: number): string => {\r\n // should convert seconds to minutes, hours or days if applicable\r\n if (num >= 86400) {\r\n return `${Math.floor(num / 86400)}d`;\r\n }\r\n\r\n if (num >= 3600) {\r\n return `${Math.floor(num / 3600)}h`;\r\n }\r\n\r\n if (num >= 60) {\r\n return `${Math.floor(num / 60)}m`;\r\n }\r\n\r\n return `${Math.floor(num)}s`;\r\n};\r\n\r\nexport const clipPath = (path: string, charsOnSide = 10) => {\r\n if (path.length <= charsOnSide * 2) return path;\r\n\r\n const start = path.slice(0, charsOnSide);\r\n const end = path.slice(-charsOnSide);\r\n\r\n return `${start}...${end}`;\r\n};\r\n\r\nexport const getOSIcon = (os: string) => {\r\n const osString = os.toLowerCase();\r\n if (osString.includes('windows')) {\r\n return 'windows';\r\n }\r\n if (osString.includes('mac')) {\r\n return 'macos';\r\n }\r\n if (osString.includes('centos')) {\r\n return 'centos';\r\n }\r\n if (osString.includes('fedora')) {\r\n return 'fedora';\r\n }\r\n if (osString.includes('debian')) {\r\n return 'debian';\r\n }\r\n if (osString.includes('mint')) {\r\n return 'mint';\r\n }\r\n if (osString.includes('pop')) {\r\n return 'popos';\r\n }\r\n if (osString.includes('ubuntu')) {\r\n return 'ubuntu';\r\n }\r\n if (osString.includes('kali')) {\r\n return 'kali';\r\n }\r\n if (osString.includes('arch')) {\r\n return 'arch';\r\n }\r\n if (osString.includes('zorin')) {\r\n return 'zorin';\r\n }\r\n if (osString.includes('manjaro')) {\r\n return 'manjaro';\r\n }\r\n return 'linux';\r\n};\r\n\r\nexport const getProcessorIcon = (brand: string) => {\r\n const osString = brand.toLowerCase();\r\n if (osString.includes('amd')) {\r\n return 'amd';\r\n }\r\n if (osString.includes('intel')) {\r\n return 'intel';\r\n }\r\n\r\n return 'processor';\r\n};\r\n\r\nexport const compareVersions = (current: string, latest: string) => {\r\n if (!current || !latest) return false;\r\n const currentParts = current.split('.').map(Number);\r\n const latestParts = latest.split('.').map(Number);\r\n\r\n for (let i = 0; i < 3; i++) {\r\n const curr = currentParts[i] || 0;\r\n const late = latestParts[i] || 0;\r\n\r\n if (curr < late) return true;\r\n if (curr > late) return false;\r\n }\r\n return false;\r\n};\r\n\r\nexport const isServerEdition = (distro: string, platform: string): boolean => {\r\n // Check Windows Server editions\r\n if (platform === 'win32') {\r\n return distro.includes('server') || distro.includes('windows server');\r\n }\r\n\r\n // Check Linux server distributions\r\n if (platform === 'linux') {\r\n return (\r\n distro.includes('server') ||\r\n distro.includes('enterprise') ||\r\n distro.includes('centos') ||\r\n distro.includes('redhat') ||\r\n distro.includes('ubuntu server') ||\r\n distro.includes('debian') ||\r\n distro.includes('fedora server')\r\n );\r\n }\r\n\r\n // Check macOS Server (though it's discontinued, some may still use it)\r\n if (platform === 'darwin') {\r\n return distro.includes('server');\r\n }\r\n\r\n return false;\r\n};\r\n\r\nexport function getLogLevelName(level: number): string {\r\n switch (level) {\r\n case 10:\r\n return 'trace';\r\n case 20:\r\n return 'debug';\r\n case 30:\r\n return 'info';\r\n case 40:\r\n return 'warn';\r\n case 50:\r\n return 'error';\r\n case 60:\r\n return 'fatal';\r\n default:\r\n return 'unknown';\r\n }\r\n}\r\n\r\n/**\r\n * Validates if a string is a valid email address\r\n * @param email - The email string to validate\r\n * @returns boolean - True if email is valid, false otherwise\r\n */\r\nexport const isValidEmail = (email: string): boolean => {\r\n if (!email || typeof email !== 'string') {\r\n return false;\r\n }\r\n\r\n const trimmedEmail = email.trim();\r\n\r\n // Check length limits\r\n if (trimmedEmail.length === 0 || trimmedEmail.length > 254) {\r\n return false;\r\n }\r\n\r\n // More strict email regex that requires proper TLD\r\n const emailRegex =\r\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/;\r\n\r\n if (!emailRegex.test(trimmedEmail)) {\r\n return false;\r\n }\r\n\r\n // Split and validate local and domain parts\r\n const [localPart, domainPart] = trimmedEmail.split('@');\r\n\r\n // Validate local part (before @)\r\n if (!localPart || localPart.length > 64) {\r\n return false;\r\n }\r\n\r\n // Validate domain part (after @)\r\n if (!domainPart || domainPart.length > 253) {\r\n return false;\r\n }\r\n\r\n // Ensure domain has at least one dot and proper TLD\r\n if (!domainPart.includes('.')) {\r\n return false;\r\n }\r\n\r\n // Check TLD is at least 2 characters\r\n const domainParts = domainPart.split('.');\r\n const tld = domainParts[domainParts.length - 1];\r\n if (!tld || tld.length < 2) {\r\n return false;\r\n }\r\n\r\n // Check for invalid patterns\r\n if (\r\n localPart.startsWith('.') ||\r\n localPart.endsWith('.') ||\r\n localPart.includes('..') ||\r\n domainPart.startsWith('.') ||\r\n domainPart.endsWith('.') ||\r\n domainPart.includes('..')\r\n ) {\r\n return false;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nexport const shouldDisplayStorageField = (field: storageOptionField, settings: Record<string, any>, allFields: storageOptionField[]): boolean => {\r\n // If no conditions, always display the field\r\n if (!field.condition || field.condition.length === 0) {\r\n return true;\r\n }\r\n\r\n // A field is displayed if ANY of its conditions are fully satisfied\r\n return field.condition.some((condition) => {\r\n // A condition is satisfied if ALL its key-value pairs match\r\n return Object.entries(condition).every(([condKey, condValue]) => {\r\n // Find the field that this condition refers to\r\n const targetField = allFields.find((f) => f.value === condKey);\r\n if (!targetField) return false;\r\n\r\n // Get the current value from settings, or use the default\r\n const currentValue = settings[condKey] !== undefined ? settings[condKey] : targetField.default;\r\n\r\n // Check if the condition value matches the field's value\r\n return currentValue === condValue;\r\n });\r\n });\r\n};\r\n\r\n// Calculate the size of each directory based on its files\r\nexport const calculateDirectorySizes = (files: Pick<FileItem, 'path' | 'size' | 'isDirectory'>[]) => {\r\n const dirSizes: { [path: string]: number } = {};\r\n\r\n // Initialize all directories with size 0\r\n files.forEach((file) => {\r\n if (file.isDirectory) {\r\n dirSizes[file.path] = 0;\r\n }\r\n });\r\n\r\n // Sum up file sizes for each directory\r\n files.forEach((file) => {\r\n if (!file.isDirectory && file.size) {\r\n // For each file, add its size to all parent directories\r\n let pathParts = file.path.split('/').filter(Boolean);\r\n let currentPath = '';\r\n\r\n // Add size to each parent directory\r\n for (let i = 0; i < pathParts.length - 1; i++) {\r\n currentPath = currentPath ? `${currentPath}/${pathParts[i]}` : `/${pathParts[i]}`;\r\n if (dirSizes[currentPath] !== undefined) {\r\n dirSizes[currentPath] += file.size;\r\n }\r\n }\r\n }\r\n });\r\n\r\n return dirSizes;\r\n};\r\n\r\nexport const sortFileItems = (items: FileItem[], sortField: keyof FileItem, sortDirection: 'asc' | 'desc') => {\r\n return [...items].sort((a, b) => {\r\n if (sortField === 'name') {\r\n const nameA = a.name.toLowerCase();\r\n const nameB = b.name.toLowerCase();\r\n return sortDirection === 'asc' ? nameA.localeCompare(nameB) : nameB.localeCompare(nameA);\r\n } else if (sortField === 'modifiedAt') {\r\n const dateA = new Date(a.modifiedAt).getTime();\r\n const dateB = new Date(b.modifiedAt).getTime();\r\n return sortDirection === 'asc' ? dateA - dateB : dateB - dateA;\r\n } else if (sortField === 'size') {\r\n const sizeA = a.size || 0;\r\n const sizeB = b.size || 0;\r\n return sortDirection === 'asc' ? sizeA - sizeB : sizeB - sizeA;\r\n } else {\r\n const multiplier = sortDirection === 'asc' ? 1 : -1;\r\n const valueA = a[sortField]?.toString() || '';\r\n const valueB = b[sortField]?.toString() || '';\r\n return valueA.localeCompare(valueB) * multiplier;\r\n }\r\n });\r\n};\r\n\r\nexport const getAvailableCliApps = (platform?: string) => {\r\n const availableShells: Record<string, { label: string; value: string }[]> = {\r\n Windows: [\r\n { label: 'PowerShell', value: 'powershell' },\r\n { label: 'Command Prompt (CMD)', value: 'cmd' },\r\n { label: 'Bash', value: 'bash' },\r\n ],\r\n MacOs: [\r\n { label: 'Zsh', value: 'zsh' },\r\n { label: 'Bash', value: '/bin/bash' },\r\n { label: 'sh', value: '/bin/sh' },\r\n ],\r\n Linux: [\r\n { label: 'Bash', value: '/bin/bash' },\r\n { label: 'sh', value: '/bin/sh' },\r\n { label: 'Zsh', value: 'zsh' },\r\n ],\r\n };\r\n type typeofOSType = keyof typeof availableShells;\r\n\r\n switch (platform) {\r\n case 'win32':\r\n return availableShells.Windows;\r\n case 'darwin':\r\n return availableShells.MacOs;\r\n case 'linux':\r\n return availableShells.Linux;\r\n default:\r\n const allShells: { label: string; value: string }[] = [];\r\n (Object.keys(availableShells) as typeofOSType[]).map((OSType) => {\r\n availableShells[OSType].forEach((shell) => {\r\n allShells.push({ label: OSType + ': ' + shell.label, value: shell.value });\r\n });\r\n });\r\n return allShells;\r\n }\r\n};\r\n\r\nexport const secondsToMinutes = (seconds: number) => {\r\n if (seconds === 0) {\r\n return '';\r\n }\r\n return seconds > 60 ? `${Math.round(seconds / 60)} min` : `${seconds} sec`;\r\n};\r\n"],"names":["isMobile","userAgent","mobileRegex","hasTouch","smallScreen","formatter","timeAgo","input","date","ranges","secondsElapsed","key","delta","formatDuration","seconds","hours","minutes","remainingSeconds","formatDateTime","isoDate","options","formatBytes","bytes","units","value","unitIndex","formatNumberToK","num","formatPermissions","mode","formatSeconds","clipPath","path","charsOnSide","start","end","getOSIcon","os","osString","getProcessorIcon","brand","compareVersions","current","latest","currentParts","latestParts","i","curr","late","isServerEdition","distro","platform","getLogLevelName","level","isValidEmail","email","trimmedEmail","localPart","domainPart","domainParts","tld","shouldDisplayStorageField","field","settings","allFields","condition","condKey","condValue","targetField","f","calculateDirectorySizes","files","dirSizes","file","pathParts","currentPath","sortFileItems","items","sortField","sortDirection","a","b","_a","_b","nameA","nameB","dateA","dateB","sizeA","sizeB","multiplier","valueA","valueB","getAvailableCliApps","availableShells","allShells","OSType","shell","secondsToMinutes"],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utilities exports
|
|
3
|
+
*/
|
|
4
|
+
export * from './constants';
|
|
5
|
+
export * from './helpers';
|
|
6
|
+
export * from './plans';
|
|
7
|
+
export * from './progressHelpers';
|
|
8
|
+
export * from './restore';
|
|
9
|
+
export * from './storageProviders';
|
|
10
|
+
export * from './getIconNameforFile';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { NewPlanSettings, PlanInterval } from '../@types/plans';
|
|
2
|
+
export declare function planIntervalName(interval: PlanInterval): string;
|
|
3
|
+
export declare function planIntervalAgeName(age: string): string;
|
|
4
|
+
export declare function isPlanSettingsValid(newPlan: NewPlanSettings, step?: number | false): boolean;
|
|
5
|
+
//# sourceMappingURL=plans.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/utils/plans.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGhE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAmB/D;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,UAkB9C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,GAAE,MAAM,GAAG,KAAa,GAAG,OAAO,CAgCnG"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { toast as t } from "react-toastify";
|
|
2
|
+
import { isValidEmail as n } from "./helpers.js";
|
|
3
|
+
function u(e) {
|
|
4
|
+
switch (e.type) {
|
|
5
|
+
case "hourly":
|
|
6
|
+
return "Every Hour";
|
|
7
|
+
case "daily":
|
|
8
|
+
return "Every Day";
|
|
9
|
+
case "weekly":
|
|
10
|
+
return "Every Week";
|
|
11
|
+
case "monthly":
|
|
12
|
+
return "Every Month";
|
|
13
|
+
case "days":
|
|
14
|
+
return `Every ${e.days} days`;
|
|
15
|
+
case "hours":
|
|
16
|
+
return `Every ${e.hours} hrs`;
|
|
17
|
+
case "minutes":
|
|
18
|
+
return `Every ${e.minutes} mins`;
|
|
19
|
+
default:
|
|
20
|
+
return "";
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function f(e) {
|
|
24
|
+
const i = e.match(/(\d+)([wdm])/);
|
|
25
|
+
if (!i) return e;
|
|
26
|
+
const r = parseInt(i[1], 10);
|
|
27
|
+
switch (i[2]) {
|
|
28
|
+
case "w":
|
|
29
|
+
return `${r} week${r > 1 ? "s" : ""}`;
|
|
30
|
+
case "m":
|
|
31
|
+
return `${r} month${r > 1 ? "s" : ""}`;
|
|
32
|
+
case "d":
|
|
33
|
+
return `${r} day${r > 1 ? "s" : ""}`;
|
|
34
|
+
default:
|
|
35
|
+
return e;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function c(e, i = !1) {
|
|
39
|
+
if ((i === 1 || i === !1) && !e.title)
|
|
40
|
+
return t.error("Plan Title is required"), !1;
|
|
41
|
+
if ((i === 2 || i === !1) && !e.storage.name)
|
|
42
|
+
return t.error("Storage is required"), !1;
|
|
43
|
+
if ((i === 2 || i === !1) && e.sourceConfig.includes.length === 0)
|
|
44
|
+
return t.error("Sources are required"), !1;
|
|
45
|
+
if ((i === 4 || i === !1) && e.settings.notification.email.enabled && !e.settings.notification.email.emails)
|
|
46
|
+
return t.error("Notification Email not provided"), !1;
|
|
47
|
+
if ((i === 4 || i === !1) && e.settings.notification.webhook.enabled && !e.settings.notification.webhook.url)
|
|
48
|
+
return t.error("Webhook URL is not provided"), !1;
|
|
49
|
+
if ((i === 4 || i === !1) && e.settings.notification.email.emails) {
|
|
50
|
+
const a = e.settings.notification.email.emails.split(",").filter((o) => n(o) === !1);
|
|
51
|
+
if (console.log("invalidEmails: ", a), a.length > 0)
|
|
52
|
+
return t.error(`Invalid Notification Email Provided: ${a.join(", ")}`), !1;
|
|
53
|
+
}
|
|
54
|
+
return !0;
|
|
55
|
+
}
|
|
56
|
+
export {
|
|
57
|
+
c as isPlanSettingsValid,
|
|
58
|
+
f as planIntervalAgeName,
|
|
59
|
+
u as planIntervalName
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=plans.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plans.js","sources":["../../src/utils/plans.ts"],"sourcesContent":["import { toast } from 'react-toastify';\r\nimport { NewPlanSettings, PlanInterval } from '../@types/plans';\r\nimport { isValidEmail } from './helpers';\r\n\r\nexport function planIntervalName(interval: PlanInterval): string {\r\n switch (interval.type) {\r\n case 'hourly':\r\n return 'Every Hour';\r\n case 'daily':\r\n return 'Every Day';\r\n case 'weekly':\r\n return 'Every Week';\r\n case 'monthly':\r\n return 'Every Month';\r\n case 'days':\r\n return `Every ${interval.days} days`;\r\n case 'hours':\r\n return `Every ${interval.hours} hrs`;\r\n case 'minutes':\r\n return `Every ${interval.minutes} mins`;\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport function planIntervalAgeName(age: string) {\r\n //it could be 2w, 3m, 1d\r\n const match = age.match(/(\\d+)([wdm])/);\r\n if (!match) return age;\r\n\r\n const value = parseInt(match[1], 10);\r\n const unit = match[2];\r\n\r\n switch (unit) {\r\n case 'w':\r\n return `${value} week${value > 1 ? 's' : ''}`;\r\n case 'm':\r\n return `${value} month${value > 1 ? 's' : ''}`;\r\n case 'd':\r\n return `${value} day${value > 1 ? 's' : ''}`;\r\n default:\r\n return age;\r\n }\r\n}\r\n\r\nexport function isPlanSettingsValid(newPlan: NewPlanSettings, step: number | false = false): boolean {\r\n if ((step === 1 || step === false) && !newPlan.title) {\r\n toast.error(`Plan Title is required`);\r\n return false;\r\n }\r\n if ((step === 2 || step === false) && !newPlan.storage.name) {\r\n toast.error(`Storage is required`);\r\n return false;\r\n }\r\n if ((step === 2 || step === false) && newPlan.sourceConfig.includes.length === 0) {\r\n toast.error(`Sources are required`);\r\n return false;\r\n }\r\n if ((step === 4 || step === false) && newPlan.settings.notification.email.enabled && !newPlan.settings.notification.email.emails) {\r\n toast.error(`Notification Email not provided`);\r\n return false;\r\n }\r\n if ((step === 4 || step === false) && newPlan.settings.notification.webhook.enabled && !newPlan.settings.notification.webhook.url) {\r\n toast.error(`Webhook URL is not provided`);\r\n return false;\r\n }\r\n if ((step === 4 || step === false) && newPlan.settings.notification.email.emails) {\r\n const notification_emails = newPlan.settings.notification.email.emails.split(',');\r\n const invalidEmails = notification_emails.filter((x) => isValidEmail(x) === false);\r\n console.log('invalidEmails: ', invalidEmails);\r\n if (invalidEmails.length > 0) {\r\n toast.error(`Invalid Notification Email Provided: ${invalidEmails.join(', ')}`);\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n}\r\n"],"names":["planIntervalName","interval","planIntervalAgeName","age","match","value","isPlanSettingsValid","newPlan","step","toast","invalidEmails","x","isValidEmail"],"mappings":";;AAIO,SAASA,EAAiBC,GAAgC;AAC9D,UAAQA,EAAS,MAAA;AAAA,IACd,KAAK;AACF,aAAO;AAAA,IACV,KAAK;AACF,aAAO;AAAA,IACV,KAAK;AACF,aAAO;AAAA,IACV,KAAK;AACF,aAAO;AAAA,IACV,KAAK;AACF,aAAO,SAASA,EAAS,IAAI;AAAA,IAChC,KAAK;AACF,aAAO,SAASA,EAAS,KAAK;AAAA,IACjC,KAAK;AACF,aAAO,SAASA,EAAS,OAAO;AAAA,IACnC;AACG,aAAO;AAAA,EAAA;AAEhB;AAEO,SAASC,EAAoBC,GAAa;AAE9C,QAAMC,IAAQD,EAAI,MAAM,cAAc;AACtC,MAAI,CAACC,EAAO,QAAOD;AAEnB,QAAME,IAAQ,SAASD,EAAM,CAAC,GAAG,EAAE;AAGnC,UAFaA,EAAM,CAAC,GAEZ;AAAA,IACL,KAAK;AACF,aAAO,GAAGC,CAAK,QAAQA,IAAQ,IAAI,MAAM,EAAE;AAAA,IAC9C,KAAK;AACF,aAAO,GAAGA,CAAK,SAASA,IAAQ,IAAI,MAAM,EAAE;AAAA,IAC/C,KAAK;AACF,aAAO,GAAGA,CAAK,OAAOA,IAAQ,IAAI,MAAM,EAAE;AAAA,IAC7C;AACG,aAAOF;AAAA,EAAA;AAEhB;AAEO,SAASG,EAAoBC,GAA0BC,IAAuB,IAAgB;AAClG,OAAKA,MAAS,KAAKA,MAAS,OAAU,CAACD,EAAQ;AAC5C,WAAAE,EAAM,MAAM,wBAAwB,GAC7B;AAEV,OAAKD,MAAS,KAAKA,MAAS,OAAU,CAACD,EAAQ,QAAQ;AACpD,WAAAE,EAAM,MAAM,qBAAqB,GAC1B;AAEV,OAAKD,MAAS,KAAKA,MAAS,OAAUD,EAAQ,aAAa,SAAS,WAAW;AAC5E,WAAAE,EAAM,MAAM,sBAAsB,GAC3B;AAEV,OAAKD,MAAS,KAAKA,MAAS,OAAUD,EAAQ,SAAS,aAAa,MAAM,WAAW,CAACA,EAAQ,SAAS,aAAa,MAAM;AACvH,WAAAE,EAAM,MAAM,iCAAiC,GACtC;AAEV,OAAKD,MAAS,KAAKA,MAAS,OAAUD,EAAQ,SAAS,aAAa,QAAQ,WAAW,CAACA,EAAQ,SAAS,aAAa,QAAQ;AAC3H,WAAAE,EAAM,MAAM,6BAA6B,GAClC;AAEV,OAAKD,MAAS,KAAKA,MAAS,OAAUD,EAAQ,SAAS,aAAa,MAAM,QAAQ;AAE/E,UAAMG,IADsBH,EAAQ,SAAS,aAAa,MAAM,OAAO,MAAM,GAAG,EACtC,OAAO,CAACI,MAAMC,EAAaD,CAAC,MAAM,EAAK;AAEjF,QADA,QAAQ,IAAI,mBAAmBD,CAAa,GACxCA,EAAc,SAAS;AACxB,aAAAD,EAAM,MAAM,wCAAwCC,EAAc,KAAK,IAAI,CAAC,EAAE,GACvE;AAAA,EAEb;AAEA,SAAO;AACV;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BackupProgressData } from '../@types/backups';
|
|
2
|
+
export declare function generateBackupProgressMessage(progressData: BackupProgressData | null): string;
|
|
3
|
+
export declare const getBackupEventActionMessage: (action: string) => string;
|
|
4
|
+
export declare function generateRestoreProgressMessage(progressData: BackupProgressData | null): string;
|
|
5
|
+
export declare const getRestoreEventActionMessage: (action: string) => string;
|
|
6
|
+
export declare function extractResticData(progressData: BackupProgressData | null): any;
|
|
7
|
+
//# sourceMappingURL=progressHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/progressHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,GAAG,MAAM,CAoC7F;AAoCD,eAAO,MAAM,2BAA2B,GAAI,QAAQ,MAAM,KAAG,MAiE5D,CAAC;AAEF,wBAAgB,8BAA8B,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,GAAG,MAAM,CAqC9F;AAED,eAAO,MAAM,4BAA4B,GAAI,QAAQ,MAAM,KAAG,MAiD7D,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,OAYxE"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
function O(e) {
|
|
2
|
+
var T;
|
|
3
|
+
if (!((T = e == null ? void 0 : e.events) != null && T.length))
|
|
4
|
+
return "Initializing...";
|
|
5
|
+
const n = e.events.slice().reverse().find((s) => !s.completed) || e.events[e.events.length - 1];
|
|
6
|
+
if (!n)
|
|
7
|
+
return "Initializing...";
|
|
8
|
+
const { phase: E, action: i } = n, _ = {
|
|
9
|
+
initializing: "Initializing",
|
|
10
|
+
"pre-backup": "Pre-Backup",
|
|
11
|
+
backup: "Backup",
|
|
12
|
+
"post-backup": "Post-Backup",
|
|
13
|
+
finished: "Complete"
|
|
14
|
+
}[E] || E, r = P(i);
|
|
15
|
+
return E === "finished" ? r : `${_}: ${r}`;
|
|
16
|
+
}
|
|
17
|
+
const S = (e) => {
|
|
18
|
+
const R = {
|
|
19
|
+
ONBACKUPSTART: "Start Script",
|
|
20
|
+
ONBACKUPCOMPLETE: "Complete Script",
|
|
21
|
+
ONBACKUPERROR: "Error Script",
|
|
22
|
+
ONBACKUPFAILURE: "Failure Script",
|
|
23
|
+
ONBACKUPEND: "End Script"
|
|
24
|
+
}, n = {
|
|
25
|
+
START: (i, t) => `Running ${i} ${t}...`,
|
|
26
|
+
COMPLETE: (i, t) => `Script ${t} Complete`,
|
|
27
|
+
FAIL: (i, t) => `Script ${t} Failed`,
|
|
28
|
+
ERROR: (i, t) => `Error in ${i} ${t}`
|
|
29
|
+
}, E = e.match(/^(ONBACKUP\w+)_SCRIPT_(\d+)_(START|COMPLETE|FAIL|ERROR)$/);
|
|
30
|
+
if (E) {
|
|
31
|
+
const [, i, t, _] = E, r = R[i] || "Script", T = n[_];
|
|
32
|
+
if (T)
|
|
33
|
+
return T(r, t);
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}, P = (e) => {
|
|
37
|
+
const R = S(e);
|
|
38
|
+
if (R)
|
|
39
|
+
return R;
|
|
40
|
+
const n = e.match(/RETRY_ATTEMPT_(\d+)_OF_(\d+)_START/);
|
|
41
|
+
if (n) {
|
|
42
|
+
const [, t, _] = n;
|
|
43
|
+
return `Retrying (${t}/${_})...`;
|
|
44
|
+
}
|
|
45
|
+
const E = e.match(/BACKUP_RETRY_(\d+)_OF_(\d+)_SCHEDULED/);
|
|
46
|
+
if (E) {
|
|
47
|
+
const [, t, _] = E;
|
|
48
|
+
return `Scheduling Retry (${parseInt(t)}/${_})...`;
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
INITIALIZE: "Starting Backup...",
|
|
52
|
+
PRE_BACKUP_START: "Preparing Backup...",
|
|
53
|
+
PRE_BACKUP_DRY_RUN_START: "Performing Dry Run...",
|
|
54
|
+
PRE_BACKUP_DRY_RUN_COMPLETE: "Dry Run Complete",
|
|
55
|
+
PRE_BACKUP_CHECKS_START: "Running Checks...",
|
|
56
|
+
PRE_BACKUP_CHECKS_COMPLETE: "Checks Complete",
|
|
57
|
+
PRE_BACKUP_SCRIPTS_START: "Running Scripts...",
|
|
58
|
+
PRE_BACKUP_SCRIPTS_COMPLETE: "Scripts Complete",
|
|
59
|
+
PRE_BACKUP_UNLOCK_STALE_LOCKS: "Unlocking Repository...",
|
|
60
|
+
PRE_BACKUP_COMPLETE: "Pre-Backup Complete",
|
|
61
|
+
BACKUP_OPERATION_START: "Backing Up Files...",
|
|
62
|
+
BACKUP_OPERATION_COMPLETE: "Backup Complete",
|
|
63
|
+
BACKUP_OPERATION_ERROR: "Backup Encountered Errors",
|
|
64
|
+
POST_BACKUP_START: "Finalizing...",
|
|
65
|
+
POST_BACKUP_SCRIPTS_START: "Running Cleanup Scripts...",
|
|
66
|
+
POST_BACKUP_SCRIPTS_COMPLETE: "Cleanup Scripts Complete",
|
|
67
|
+
POST_BACKUP_PRUNE_START: "Pruning Old Backups...",
|
|
68
|
+
POST_BACKUP_PRUNE_COMPLETE: "Pruning Complete",
|
|
69
|
+
POST_BACKUP_PRUNE_FAILED: "Pruning Failed",
|
|
70
|
+
POST_BACKUP_COMPLETE: "Post-Backup Complete",
|
|
71
|
+
POST_BACKUP_REPO_STATS_START: "Updating Repository Statistics...",
|
|
72
|
+
POST_BACKUP_REPO_STATS_COMPLETE: "Repository Statistics Updated",
|
|
73
|
+
POST_BACKUP_REPO_STATS_FAILED: "Failed to Update Repository Statistics",
|
|
74
|
+
TASK_COMPLETED: "Completed Successfully",
|
|
75
|
+
TASK_CANCELLED: "Backup Cancelled by User.",
|
|
76
|
+
TASK_FAILED: "Backup Failed with Error.",
|
|
77
|
+
FAILED_PERMANENTLY: "Failed Permanently",
|
|
78
|
+
ISO_CREATION_START: "Creating ISO...",
|
|
79
|
+
ISO_CREATION_COMPLETE: "ISO Created Successfully",
|
|
80
|
+
ISO_CREATION_FAILED: "ISO Creation Failed",
|
|
81
|
+
REMOTE_BACKUP_START: "Backing Up Data...",
|
|
82
|
+
REMOTE_BACKUP_COMPLETE: "Data Backup Complete",
|
|
83
|
+
REMOTE_BACKUP_FAILED: "Data Backup Failed",
|
|
84
|
+
ISO_ENCRYPTION_START: "Encrypting ISO...",
|
|
85
|
+
ISO_ENCRYPTION_COMPLETE: "ISO Encryption Complete",
|
|
86
|
+
ISO_UPLOAD_START: "Uploading ISO...",
|
|
87
|
+
ISO_UPLOAD_COMPLETE: "ISO Upload Complete",
|
|
88
|
+
ISO_UPLOAD_FAILED: "ISO Upload Failed",
|
|
89
|
+
BACKUP_WARNING: "Hiccup Detected During Backup"
|
|
90
|
+
}[e] || e;
|
|
91
|
+
};
|
|
92
|
+
function o(e) {
|
|
93
|
+
var T;
|
|
94
|
+
if (!((T = e == null ? void 0 : e.events) != null && T.length))
|
|
95
|
+
return "Initializing...";
|
|
96
|
+
const n = e.events.slice().reverse().find((s) => !s.completed) || e.events[e.events.length - 1];
|
|
97
|
+
if (!n)
|
|
98
|
+
return "Initializing...";
|
|
99
|
+
const { phase: E, action: i } = n, _ = {
|
|
100
|
+
initializing: "Initializing",
|
|
101
|
+
"pre-restore": "Pre-Restore",
|
|
102
|
+
restore: "Restore",
|
|
103
|
+
"post-restore": "Post-Restore",
|
|
104
|
+
retry: "Retrying",
|
|
105
|
+
finished: "Complete"
|
|
106
|
+
}[E] || E, r = c(i);
|
|
107
|
+
return E === "finished" ? r : `${_}: ${r}`;
|
|
108
|
+
}
|
|
109
|
+
const c = (e) => {
|
|
110
|
+
const R = S(e);
|
|
111
|
+
if (R)
|
|
112
|
+
return R;
|
|
113
|
+
const n = e.match(/RETRY_ATTEMPT_(\d+)_OF_(\d+)_START/);
|
|
114
|
+
if (n) {
|
|
115
|
+
const [, t, _] = n;
|
|
116
|
+
return `Retrying (${t}/${_})...`;
|
|
117
|
+
}
|
|
118
|
+
const E = e.match(/RESTORE_RETRY_(\d+)_OF_(\d+)_SCHEDULED/);
|
|
119
|
+
if (E) {
|
|
120
|
+
const [, t, _] = E;
|
|
121
|
+
return `Scheduling Retry (${parseInt(t)}/${_})...`;
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
INITIALIZE: "Starting Restore...",
|
|
125
|
+
PRE_RESTORE_START: "Preparing Restore...",
|
|
126
|
+
PRE_RESTORE_GET_SNAPSHOT: "Getting Snapshot to Restore...",
|
|
127
|
+
PRE_RESTORE_GET_SNAPSHOT_COMPLETE: "Snapshot Retrieved",
|
|
128
|
+
PRE_RESTORE_GET_SNAPSHOT_FAILED: "Failed to Retrieve Snapshot",
|
|
129
|
+
PRE_RESTORE_DRY_RUN_START: "Performing Dry Run...",
|
|
130
|
+
PRE_RESTORE_DRY_RUN_COMPLETE: "Dry Run Complete",
|
|
131
|
+
PRE_RESTORE_CHECKS_START: "Running Checks...",
|
|
132
|
+
PRE_RESTORE_CHECKS_COMPLETE: "Checks Complete",
|
|
133
|
+
PRE_RESTORE_UNLOCK_STALE_LOCKS: "Unlocking Repository...",
|
|
134
|
+
PRE_RESTORE_COMPLETE: "Pre-Restore Complete",
|
|
135
|
+
RESTORE_OPERATION_START: "Restoring Files...",
|
|
136
|
+
RESTORE_OPERATION_COMPLETE: "Restore Complete",
|
|
137
|
+
POST_RESTORE_START: "Finalizing...",
|
|
138
|
+
POST_RESTORE_COMPLETE: "Post-Restore Complete",
|
|
139
|
+
POST_RESTORE_REPO_STATS_START: "Updating Repository Statistics...",
|
|
140
|
+
POST_RESTORE_REPO_STATS_COMPLETE: "Repository Statistics Updated",
|
|
141
|
+
POST_RESTORE_WINDOWS_MOVE_START: "Moving Restored files from temp directory to target path...",
|
|
142
|
+
POST_RESTORE_WINDOWS_MOVE_ERROR: "Failed to Move Restored files from temp directory to target path",
|
|
143
|
+
POST_RESTORE_WINDOWS_MOVE_COMPLETE: "Moved Restored files to target path",
|
|
144
|
+
TASK_COMPLETED: "Completed Successfully",
|
|
145
|
+
TASK_FAILED: "Restore Failed with Error.",
|
|
146
|
+
TASK_CANCELLED: "Restore Cancelled by User.",
|
|
147
|
+
FAILED_PERMANENTLY: "Failed Permanently"
|
|
148
|
+
}[e] || e;
|
|
149
|
+
};
|
|
150
|
+
function C(e) {
|
|
151
|
+
var n;
|
|
152
|
+
if (!((n = e == null ? void 0 : e.events) != null && n.length))
|
|
153
|
+
return null;
|
|
154
|
+
const R = e.events.slice().reverse().find((E) => E.resticData);
|
|
155
|
+
return (R == null ? void 0 : R.resticData) || null;
|
|
156
|
+
}
|
|
157
|
+
export {
|
|
158
|
+
C as extractResticData,
|
|
159
|
+
O as generateBackupProgressMessage,
|
|
160
|
+
o as generateRestoreProgressMessage,
|
|
161
|
+
P as getBackupEventActionMessage,
|
|
162
|
+
c as getRestoreEventActionMessage
|
|
163
|
+
};
|
|
164
|
+
//# sourceMappingURL=progressHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressHelpers.js","sources":["../../src/utils/progressHelpers.ts"],"sourcesContent":["import { BackupProgressData } from '../@types/backups';\r\n\r\nexport function generateBackupProgressMessage(progressData: BackupProgressData | null): string {\r\n if (!progressData?.events?.length) {\r\n return 'Initializing...';\r\n }\r\n\r\n // Find the last incomplete event or the most recent event\r\n const lastIncompleteEvent = progressData.events\r\n .slice()\r\n .reverse()\r\n .find((event) => !event.completed);\r\n\r\n const currentEvent = lastIncompleteEvent || progressData.events[progressData.events.length - 1];\r\n\r\n if (!currentEvent) {\r\n return 'Initializing...';\r\n }\r\n\r\n const { phase, action } = currentEvent;\r\n\r\n // Map phases to display names\r\n const phaseDisplayNames: Record<string, string> = {\r\n initializing: 'Initializing',\r\n 'pre-backup': 'Pre-Backup',\r\n backup: 'Backup',\r\n 'post-backup': 'Post-Backup',\r\n finished: 'Complete',\r\n };\r\n\r\n const phaseDisplay = phaseDisplayNames[phase] || phase;\r\n const actionDisplay = getBackupEventActionMessage(action);\r\n\r\n if (phase === 'finished') {\r\n return actionDisplay;\r\n }\r\n\r\n return `${phaseDisplay}: ${actionDisplay}`;\r\n}\r\n\r\n// Helper function to handle script actions dynamically\r\nconst handleScriptAction = (action: string): string | null => {\r\n const scriptTypes = {\r\n ONBACKUPSTART: 'Start Script',\r\n ONBACKUPCOMPLETE: 'Complete Script',\r\n ONBACKUPERROR: 'Error Script',\r\n ONBACKUPFAILURE: 'Failure Script',\r\n ONBACKUPEND: 'End Script',\r\n };\r\n\r\n const actionStates = {\r\n START: (scriptType: string, num: string) => `Running ${scriptType} ${num}...`,\r\n COMPLETE: (_: string, num: string) => `Script ${num} Complete`,\r\n FAIL: (_: string, num: string) => `Script ${num} Failed`,\r\n ERROR: (scriptType: string, num: string) => `Error in ${scriptType} ${num}`,\r\n };\r\n\r\n // Generic pattern for all script actions: SCRIPTTYPE_SCRIPT_NUMBER_STATE\r\n const scriptMatch = action.match(/^(ONBACKUP\\w+)_SCRIPT_(\\d+)_(START|COMPLETE|FAIL|ERROR)$/);\r\n\r\n if (scriptMatch) {\r\n const [, scriptTypeKey, scriptNum, state] = scriptMatch;\r\n const scriptType = scriptTypes[scriptTypeKey as keyof typeof scriptTypes] || 'Script';\r\n const stateHandler = actionStates[state as keyof typeof actionStates];\r\n\r\n if (stateHandler) {\r\n return stateHandler(scriptType, scriptNum);\r\n }\r\n }\r\n\r\n return null;\r\n};\r\n\r\n// Function to extract numbers from action strings and create meaningful messages\r\nexport const getBackupEventActionMessage = (action: string): string => {\r\n // Handle script actions first\r\n const scriptMessage = handleScriptAction(action);\r\n if (scriptMessage) {\r\n return scriptMessage;\r\n }\r\n\r\n // Handle retry attempts\r\n const retryAttemptMatch = action.match(/RETRY_ATTEMPT_(\\d+)_OF_(\\d+)_START/);\r\n if (retryAttemptMatch) {\r\n const [, current, total] = retryAttemptMatch;\r\n return `Retrying (${current}/${total})...`;\r\n }\r\n\r\n // Handle backup retry scheduling\r\n const backupRetryMatch = action.match(/BACKUP_RETRY_(\\d+)_OF_(\\d+)_SCHEDULED/);\r\n if (backupRetryMatch) {\r\n const [, current, total] = backupRetryMatch;\r\n return `Scheduling Retry (${parseInt(current)}/${total})...`;\r\n }\r\n\r\n // Static action mappings\r\n const staticMessages: Record<string, string> = {\r\n INITIALIZE: 'Starting Backup...',\r\n PRE_BACKUP_START: 'Preparing Backup...',\r\n PRE_BACKUP_DRY_RUN_START: 'Performing Dry Run...',\r\n PRE_BACKUP_DRY_RUN_COMPLETE: 'Dry Run Complete',\r\n PRE_BACKUP_CHECKS_START: 'Running Checks...',\r\n PRE_BACKUP_CHECKS_COMPLETE: 'Checks Complete',\r\n PRE_BACKUP_SCRIPTS_START: 'Running Scripts...',\r\n PRE_BACKUP_SCRIPTS_COMPLETE: 'Scripts Complete',\r\n PRE_BACKUP_UNLOCK_STALE_LOCKS: 'Unlocking Repository...',\r\n PRE_BACKUP_COMPLETE: 'Pre-Backup Complete',\r\n BACKUP_OPERATION_START: 'Backing Up Files...',\r\n BACKUP_OPERATION_COMPLETE: 'Backup Complete',\r\n BACKUP_OPERATION_ERROR: 'Backup Encountered Errors',\r\n POST_BACKUP_START: 'Finalizing...',\r\n POST_BACKUP_SCRIPTS_START: 'Running Cleanup Scripts...',\r\n POST_BACKUP_SCRIPTS_COMPLETE: 'Cleanup Scripts Complete',\r\n POST_BACKUP_PRUNE_START: 'Pruning Old Backups...',\r\n POST_BACKUP_PRUNE_COMPLETE: 'Pruning Complete',\r\n POST_BACKUP_PRUNE_FAILED: 'Pruning Failed',\r\n POST_BACKUP_COMPLETE: 'Post-Backup Complete',\r\n POST_BACKUP_REPO_STATS_START: 'Updating Repository Statistics...',\r\n POST_BACKUP_REPO_STATS_COMPLETE: 'Repository Statistics Updated',\r\n POST_BACKUP_REPO_STATS_FAILED: 'Failed to Update Repository Statistics',\r\n TASK_COMPLETED: 'Completed Successfully',\r\n TASK_CANCELLED: 'Backup Cancelled by User.',\r\n TASK_FAILED: 'Backup Failed with Error.',\r\n FAILED_PERMANENTLY: 'Failed Permanently',\r\n ISO_CREATION_START: 'Creating ISO...',\r\n ISO_CREATION_COMPLETE: 'ISO Created Successfully',\r\n ISO_CREATION_FAILED: 'ISO Creation Failed',\r\n REMOTE_BACKUP_START: 'Backing Up Data...',\r\n REMOTE_BACKUP_COMPLETE: 'Data Backup Complete',\r\n REMOTE_BACKUP_FAILED: 'Data Backup Failed',\r\n ISO_ENCRYPTION_START: 'Encrypting ISO...',\r\n ISO_ENCRYPTION_COMPLETE: 'ISO Encryption Complete',\r\n ISO_UPLOAD_START: 'Uploading ISO...',\r\n ISO_UPLOAD_COMPLETE: 'ISO Upload Complete',\r\n ISO_UPLOAD_FAILED: 'ISO Upload Failed',\r\n BACKUP_WARNING: 'Hiccup Detected During Backup',\r\n };\r\n\r\n return staticMessages[action] || action;\r\n};\r\n\r\nexport function generateRestoreProgressMessage(progressData: BackupProgressData | null): string {\r\n if (!progressData?.events?.length) {\r\n return 'Initializing...';\r\n }\r\n\r\n // Find the last incomplete event or the most recent event\r\n const lastIncompleteEvent = progressData.events\r\n .slice()\r\n .reverse()\r\n .find((event) => !event.completed);\r\n\r\n const currentEvent = lastIncompleteEvent || progressData.events[progressData.events.length - 1];\r\n\r\n if (!currentEvent) {\r\n return 'Initializing...';\r\n }\r\n\r\n const { phase, action } = currentEvent;\r\n\r\n // Map phases to display names\r\n const phaseDisplayNames: Record<string, string> = {\r\n initializing: 'Initializing',\r\n 'pre-restore': 'Pre-Restore',\r\n restore: 'Restore',\r\n 'post-restore': 'Post-Restore',\r\n retry: 'Retrying',\r\n finished: 'Complete',\r\n };\r\n\r\n const phaseDisplay = phaseDisplayNames[phase] || phase;\r\n const actionDisplay = getRestoreEventActionMessage(action);\r\n\r\n if (phase === 'finished') {\r\n return actionDisplay;\r\n }\r\n\r\n return `${phaseDisplay}: ${actionDisplay}`;\r\n}\r\n\r\nexport const getRestoreEventActionMessage = (action: string): string => {\r\n // Handle script actions first\r\n const scriptMessage = handleScriptAction(action);\r\n if (scriptMessage) {\r\n return scriptMessage;\r\n }\r\n\r\n // Handle retry attempts\r\n const retryAttemptMatch = action.match(/RETRY_ATTEMPT_(\\d+)_OF_(\\d+)_START/);\r\n if (retryAttemptMatch) {\r\n const [, current, total] = retryAttemptMatch;\r\n return `Retrying (${current}/${total})...`;\r\n }\r\n\r\n // Handle backup retry scheduling\r\n const backupRetryMatch = action.match(/RESTORE_RETRY_(\\d+)_OF_(\\d+)_SCHEDULED/);\r\n if (backupRetryMatch) {\r\n const [, current, total] = backupRetryMatch;\r\n return `Scheduling Retry (${parseInt(current)}/${total})...`;\r\n }\r\n\r\n // Static action mappings\r\n const staticMessages: Record<string, string> = {\r\n INITIALIZE: 'Starting Restore...',\r\n PRE_RESTORE_START: 'Preparing Restore...',\r\n PRE_RESTORE_GET_SNAPSHOT: 'Getting Snapshot to Restore...',\r\n PRE_RESTORE_GET_SNAPSHOT_COMPLETE: 'Snapshot Retrieved',\r\n PRE_RESTORE_GET_SNAPSHOT_FAILED: 'Failed to Retrieve Snapshot',\r\n PRE_RESTORE_DRY_RUN_START: 'Performing Dry Run...',\r\n PRE_RESTORE_DRY_RUN_COMPLETE: 'Dry Run Complete',\r\n PRE_RESTORE_CHECKS_START: 'Running Checks...',\r\n PRE_RESTORE_CHECKS_COMPLETE: 'Checks Complete',\r\n PRE_RESTORE_UNLOCK_STALE_LOCKS: 'Unlocking Repository...',\r\n PRE_RESTORE_COMPLETE: 'Pre-Restore Complete',\r\n RESTORE_OPERATION_START: 'Restoring Files...',\r\n RESTORE_OPERATION_COMPLETE: 'Restore Complete',\r\n POST_RESTORE_START: 'Finalizing...',\r\n POST_RESTORE_COMPLETE: 'Post-Restore Complete',\r\n POST_RESTORE_REPO_STATS_START: 'Updating Repository Statistics...',\r\n POST_RESTORE_REPO_STATS_COMPLETE: 'Repository Statistics Updated',\r\n POST_RESTORE_WINDOWS_MOVE_START: 'Moving Restored files from temp directory to target path...',\r\n POST_RESTORE_WINDOWS_MOVE_ERROR: 'Failed to Move Restored files from temp directory to target path',\r\n POST_RESTORE_WINDOWS_MOVE_COMPLETE: 'Moved Restored files to target path',\r\n TASK_COMPLETED: 'Completed Successfully',\r\n TASK_FAILED: 'Restore Failed with Error.',\r\n TASK_CANCELLED: 'Restore Cancelled by User.',\r\n FAILED_PERMANENTLY: 'Failed Permanently',\r\n };\r\n return staticMessages[action] || action;\r\n};\r\n\r\nexport function extractResticData(progressData: BackupProgressData | null) {\r\n if (!progressData?.events?.length) {\r\n return null;\r\n }\r\n\r\n // Find the most recent event with resticData\r\n const eventWithResticData = progressData.events\r\n .slice()\r\n .reverse()\r\n .find((event) => event.resticData);\r\n\r\n return eventWithResticData?.resticData || null;\r\n}\r\n"],"names":["generateBackupProgressMessage","progressData","_a","currentEvent","event","phase","action","phaseDisplay","actionDisplay","getBackupEventActionMessage","handleScriptAction","scriptTypes","actionStates","scriptType","num","_","scriptMatch","scriptTypeKey","scriptNum","state","stateHandler","scriptMessage","retryAttemptMatch","current","total","backupRetryMatch","generateRestoreProgressMessage","getRestoreEventActionMessage","extractResticData","eventWithResticData"],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const getPathSeparator: (path: string) => string;
|
|
2
|
+
export declare const normalizePath: (path: string) => string;
|
|
3
|
+
export declare const splitPath: (path: string) => string[];
|
|
4
|
+
export declare const getParentPath: (path: string) => string;
|
|
5
|
+
//# sourceMappingURL=restore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/utils/restore.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAE/C,CAAC;AAIF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAG5C,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAAM,EAI9C,CAAC;AAMF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAK5C,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const e = (t) => t.includes("\\") ? "\\" : "/", o = (t) => t.replace(/^[\\\/]+/, ""), s = (t) => {
|
|
2
|
+
const n = e(t), r = o(t);
|
|
3
|
+
return r ? r.split(n) : [];
|
|
4
|
+
}, a = (t, n) => t.join(n), c = (t) => {
|
|
5
|
+
const n = e(t), r = s(t);
|
|
6
|
+
return r.pop(), r.length > 0 ? a(r, n) : "";
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
c as getParentPath,
|
|
10
|
+
e as getPathSeparator,
|
|
11
|
+
o as normalizePath,
|
|
12
|
+
s as splitPath
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=restore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"restore.js","sources":["../../src/utils/restore.ts"],"sourcesContent":["// Helper function to detect path separator and normalize paths\r\nexport const getPathSeparator = (path: string): string => {\r\n return path.includes('\\\\') ? '\\\\' : '/';\r\n};\r\n\r\n// Normalizes the path\r\n// the path is formatted like this for Windows: \\\\E\\\\pluton_files_viewer_test or for Linux: /home/towfiqi/games/Battle Realm\r\nexport const normalizePath = (path: string): string => {\r\n // Remove leading slashes/backslashes for consistency but keep the structure\r\n return path.replace(/^[\\\\\\/]+/, '');\r\n};\r\n\r\nexport const splitPath = (path: string): string[] => {\r\n const separator = getPathSeparator(path);\r\n const normalized = normalizePath(path);\r\n return normalized ? normalized.split(separator) : [];\r\n};\r\n\r\nconst joinPath = (parts: string[], separator: string): string => {\r\n return parts.join(separator);\r\n};\r\n\r\nexport const getParentPath = (path: string): string => {\r\n const separator = getPathSeparator(path);\r\n const parts = splitPath(path);\r\n parts.pop(); // Remove the last part (filename)\r\n return parts.length > 0 ? joinPath(parts, separator) : '';\r\n};\r\n"],"names":["getPathSeparator","path","normalizePath","splitPath","separator","normalized","joinPath","parts","getParentPath"],"mappings":"AACO,MAAMA,IAAmB,CAACC,MACvBA,EAAK,SAAS,IAAI,IAAI,OAAO,KAK1BC,IAAgB,CAACD,MAEpBA,EAAK,QAAQ,YAAY,EAAE,GAGxBE,IAAY,CAACF,MAA2B;AAClD,QAAMG,IAAYJ,EAAiBC,CAAI,GACjCI,IAAaH,EAAcD,CAAI;AACrC,SAAOI,IAAaA,EAAW,MAAMD,CAAS,IAAI,CAAA;AACrD,GAEME,IAAW,CAACC,GAAiBH,MACzBG,EAAM,KAAKH,CAAS,GAGjBI,IAAgB,CAACP,MAAyB;AACpD,QAAMG,IAAYJ,EAAiBC,CAAI,GACjCM,IAAQJ,EAAUF,CAAI;AAC5B,SAAAM,EAAM,IAAA,GACCA,EAAM,SAAS,IAAID,EAASC,GAAOH,CAAS,IAAI;AAC1D;"}
|