@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,518 @@
|
|
|
1
|
+
import { useState, useMemo } from 'react';
|
|
2
|
+
import { FixedSizeList as List } from 'react-window';
|
|
3
|
+
import Icon from '../../common/Icon/Icon';
|
|
4
|
+
import { RestoreFileItem } from '../../../@types/restores';
|
|
5
|
+
import { calculateDirectorySizes, formatBytes, formatDateTime, formatNumberToK, isMobile, sortFileItems } from '../../../utils/helpers';
|
|
6
|
+
import FileIcon from '../../common/FileIcon/FileIcon';
|
|
7
|
+
import classes from './RestoreFileSelector.module.scss';
|
|
8
|
+
import { getParentPath, getPathSeparator, normalizePath, splitPath } from '../../../utils/restore';
|
|
9
|
+
|
|
10
|
+
interface RestoreFileSelectorProps {
|
|
11
|
+
selected: {
|
|
12
|
+
includes: Set<string>;
|
|
13
|
+
excludes: Set<string>;
|
|
14
|
+
};
|
|
15
|
+
backupId: string;
|
|
16
|
+
files: RestoreFileItem[];
|
|
17
|
+
isLoading: boolean;
|
|
18
|
+
errorFetching: string | null;
|
|
19
|
+
showChange?: boolean;
|
|
20
|
+
fileSelectCondition?: (file: RestoreFileItem) => boolean;
|
|
21
|
+
onSelect: (selected: RestoreFileSelectorProps['selected']) => void;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const isMobileDevice = isMobile();
|
|
25
|
+
const ITEM_HEIGHT = isMobileDevice ? 65 : 45;
|
|
26
|
+
|
|
27
|
+
const RestoreFileSelector = ({ selected, files, isLoading, errorFetching, showChange, onSelect, fileSelectCondition }: RestoreFileSelectorProps) => {
|
|
28
|
+
const [selectedFolder, setSelectedFolder] = useState<string>('');
|
|
29
|
+
const [search, setSearch] = useState('');
|
|
30
|
+
const [sortField, setSortField] = useState<'name' | 'modifiedAt' | 'size'>('name');
|
|
31
|
+
const [sortDirection, setSortDirection] = useState<'asc' | 'desc'>('asc');
|
|
32
|
+
const [selectedFiles, setSelectedFiles] = useState<{ include: Set<string>; exclude: Set<string> }>(() => ({
|
|
33
|
+
include: new Set(selected.includes),
|
|
34
|
+
exclude: new Set(selected.excludes),
|
|
35
|
+
}));
|
|
36
|
+
|
|
37
|
+
console.log('[RestoreFileSelector] files :', files);
|
|
38
|
+
|
|
39
|
+
const getAllChildPaths = (dirPath: string): string[] => {
|
|
40
|
+
const allPaths: string[] = [];
|
|
41
|
+
|
|
42
|
+
files.forEach((file) => {
|
|
43
|
+
// Use original paths, not normalized
|
|
44
|
+
if (file.path.startsWith(dirPath + '/') || file.path.startsWith(dirPath + '\\')) {
|
|
45
|
+
allPaths.push(file.path);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
return allPaths;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const isPathSelected = (path: string): boolean => {
|
|
53
|
+
// If path is explicitly excluded, it's not selected
|
|
54
|
+
if (selectedFiles.exclude.has(path)) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Check if any parent directory is excluded
|
|
59
|
+
const hasExcludedParent = Array.from(selectedFiles.exclude).some(
|
|
60
|
+
(excludedPath) => path.startsWith(excludedPath + '/') || path.startsWith(excludedPath + '\\'),
|
|
61
|
+
);
|
|
62
|
+
|
|
63
|
+
if (hasExcludedParent) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// If nothing is in includes (default state), everything is selected
|
|
68
|
+
if (selectedFiles.include.size === 0) {
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// If path is explicitly included, it's selected
|
|
73
|
+
if (selectedFiles.include.has(path)) {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Check if any parent is included and this path is not excluded
|
|
78
|
+
const hasIncludedParent = Array.from(selectedFiles.include).some(
|
|
79
|
+
(includedPath) => path.startsWith(includedPath + '/') || path.startsWith(includedPath + '\\'),
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
return hasIncludedParent;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
const getEffectiveParentInclude = (path: string): string | null => {
|
|
86
|
+
return (
|
|
87
|
+
Array.from(selectedFiles.include).find((includedPath) => path.startsWith(includedPath + '/') || path.startsWith(includedPath + '\\')) || null
|
|
88
|
+
);
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const [expandedFolders, setExpandedFolders] = useState<Set<string>>(() => {
|
|
92
|
+
const allPaths = new Set<string>();
|
|
93
|
+
files.forEach((file) => {
|
|
94
|
+
const separator = getPathSeparator(file.path);
|
|
95
|
+
const parts = splitPath(file.path);
|
|
96
|
+
let currentPath = '';
|
|
97
|
+
|
|
98
|
+
parts.forEach((part, index) => {
|
|
99
|
+
currentPath = currentPath ? `${currentPath}${separator}${part}` : part;
|
|
100
|
+
if (index < 3) {
|
|
101
|
+
allPaths.add(currentPath);
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
return allPaths;
|
|
106
|
+
});
|
|
107
|
+
|
|
108
|
+
const fileSystem = useMemo(() => {
|
|
109
|
+
const system: { [key: string]: RestoreFileItem[] } = {};
|
|
110
|
+
const dirSizes = calculateDirectorySizes(files);
|
|
111
|
+
files
|
|
112
|
+
.filter((file) => {
|
|
113
|
+
const matchesSearch = file.path.toLowerCase().includes(search.toLowerCase());
|
|
114
|
+
return matchesSearch;
|
|
115
|
+
})
|
|
116
|
+
.forEach((file) => {
|
|
117
|
+
let theFile = file;
|
|
118
|
+
const dirPath = getParentPath(theFile.path);
|
|
119
|
+
// Use the normalized path as key, but handle root directory
|
|
120
|
+
const normalizedDirPath = normalizePath(dirPath) || '/'; // Use '/' for root
|
|
121
|
+
|
|
122
|
+
if (theFile.isDirectory) {
|
|
123
|
+
theFile.size = dirSizes[theFile.path] || 0;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
if (!system[normalizedDirPath]) {
|
|
127
|
+
system[normalizedDirPath] = [];
|
|
128
|
+
}
|
|
129
|
+
system[normalizedDirPath].push(theFile);
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
return system;
|
|
133
|
+
}, [files, search]);
|
|
134
|
+
|
|
135
|
+
console.log('fileSystem :', fileSystem);
|
|
136
|
+
|
|
137
|
+
const directories = useMemo(() => {
|
|
138
|
+
const dirs = files.filter((file) => file.isDirectory).map((file) => normalizePath(file.path));
|
|
139
|
+
|
|
140
|
+
// Sort directories by their path to ensure proper hierarchical order
|
|
141
|
+
const sortedDirs = dirs.sort((a, b) => {
|
|
142
|
+
const aParts = splitPath(a);
|
|
143
|
+
const bParts = splitPath(b);
|
|
144
|
+
const minLength = Math.min(aParts.length, bParts.length);
|
|
145
|
+
|
|
146
|
+
for (let i = 0; i < minLength; i++) {
|
|
147
|
+
const comparison = aParts[i].localeCompare(bParts[i]);
|
|
148
|
+
if (comparison !== 0) {
|
|
149
|
+
return comparison;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return aParts.length - bParts.length;
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
// Set the first directory as selected by default
|
|
156
|
+
console.log('SelectedFolder :', sortedDirs[0]);
|
|
157
|
+
setSelectedFolder(sortedDirs[0] || '');
|
|
158
|
+
|
|
159
|
+
return sortedDirs;
|
|
160
|
+
}, [files]);
|
|
161
|
+
|
|
162
|
+
const summary = useMemo(() => {
|
|
163
|
+
let selectedFilesCount = 0;
|
|
164
|
+
let selectedBytes = 0;
|
|
165
|
+
|
|
166
|
+
const restorableFiles = fileSelectCondition ? files.filter((file) => fileSelectCondition(file)) : files;
|
|
167
|
+
|
|
168
|
+
console.log('restorableFiles :', restorableFiles);
|
|
169
|
+
|
|
170
|
+
restorableFiles.forEach((file) => {
|
|
171
|
+
if (isPathSelected(file.path)) {
|
|
172
|
+
selectedFilesCount++;
|
|
173
|
+
selectedBytes += file.size;
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
return {
|
|
178
|
+
selectedFiles: selectedFilesCount,
|
|
179
|
+
totalFiles: restorableFiles.length,
|
|
180
|
+
selectedBytes,
|
|
181
|
+
totalBytes: restorableFiles.reduce((acc, file) => acc + (!file.isDirectory ? file.size : 0), 0),
|
|
182
|
+
};
|
|
183
|
+
}, [files, selectedFiles]);
|
|
184
|
+
|
|
185
|
+
const hasSubdirectories = (dir: string) => {
|
|
186
|
+
const separator = getPathSeparator(dir);
|
|
187
|
+
return directories.some((d) => d !== dir && d.startsWith(dir + separator));
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
const handleSort = (field: 'name' | 'modifiedAt' | 'size') => {
|
|
191
|
+
if (sortField === field) {
|
|
192
|
+
// Toggle direction if clicking the same field
|
|
193
|
+
setSortDirection(sortDirection === 'asc' ? 'desc' : 'asc');
|
|
194
|
+
} else {
|
|
195
|
+
// Set new field and default to ascending
|
|
196
|
+
setSortField(field);
|
|
197
|
+
setSortDirection('asc');
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
|
|
201
|
+
const expandParentFolders = (dirPath: string) => {
|
|
202
|
+
const newExpanded = new Set(expandedFolders);
|
|
203
|
+
const separator = getPathSeparator(dirPath);
|
|
204
|
+
const parts = splitPath(dirPath);
|
|
205
|
+
let currentPath = '';
|
|
206
|
+
|
|
207
|
+
// Expand all parent directories
|
|
208
|
+
parts.forEach((part) => {
|
|
209
|
+
currentPath = currentPath ? `${currentPath}${separator}${part}` : part;
|
|
210
|
+
newExpanded.add(currentPath);
|
|
211
|
+
});
|
|
212
|
+
|
|
213
|
+
setExpandedFolders(newExpanded);
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
const toggleFolder = (dir: string) => {
|
|
217
|
+
const newExpanded = new Set(expandedFolders);
|
|
218
|
+
if (expandedFolders.has(dir)) {
|
|
219
|
+
newExpanded.delete(dir);
|
|
220
|
+
} else {
|
|
221
|
+
newExpanded.add(dir);
|
|
222
|
+
}
|
|
223
|
+
setExpandedFolders(newExpanded);
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
const isVisible = (dir: string) => {
|
|
227
|
+
const separator = getPathSeparator(dir);
|
|
228
|
+
const parts = splitPath(dir);
|
|
229
|
+
const parentParts = parts.slice(0, -1);
|
|
230
|
+
let parentPath = '';
|
|
231
|
+
|
|
232
|
+
// Check if all parent folders are expanded
|
|
233
|
+
return parentParts.every((part) => {
|
|
234
|
+
parentPath = parentPath ? `${parentPath}${separator}${part}` : part;
|
|
235
|
+
return expandedFolders.has(parentPath);
|
|
236
|
+
});
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
const onFileSelect = (path: string, isDirectory: boolean) => {
|
|
240
|
+
const newSelected = { ...selectedFiles };
|
|
241
|
+
const isCurrentlySelected = isPathSelected(path);
|
|
242
|
+
|
|
243
|
+
if (isDirectory) {
|
|
244
|
+
const childPaths = getAllChildPaths(path);
|
|
245
|
+
|
|
246
|
+
if (isCurrentlySelected) {
|
|
247
|
+
// Deselecting directory
|
|
248
|
+
newSelected.exclude.add(path);
|
|
249
|
+
newSelected.include.delete(path);
|
|
250
|
+
|
|
251
|
+
// Remove any child paths from both include and exclude (they inherit exclusion from parent)
|
|
252
|
+
childPaths.forEach((childPath) => {
|
|
253
|
+
newSelected.include.delete(childPath);
|
|
254
|
+
newSelected.exclude.delete(childPath);
|
|
255
|
+
});
|
|
256
|
+
} else {
|
|
257
|
+
// Selecting directory
|
|
258
|
+
newSelected.exclude.delete(path);
|
|
259
|
+
|
|
260
|
+
// If we have explicit includes, we need to add this to include
|
|
261
|
+
if (newSelected.include.size > 0) {
|
|
262
|
+
// Check if parent is already included
|
|
263
|
+
const parentInclude = getEffectiveParentInclude(path);
|
|
264
|
+
if (!parentInclude) {
|
|
265
|
+
newSelected.include.add(path);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
// Remove any child paths from both include and exclude (they inherit from parent)
|
|
270
|
+
childPaths.forEach((childPath) => {
|
|
271
|
+
newSelected.include.delete(childPath);
|
|
272
|
+
newSelected.exclude.delete(childPath);
|
|
273
|
+
});
|
|
274
|
+
}
|
|
275
|
+
} else {
|
|
276
|
+
// File selection
|
|
277
|
+
if (isCurrentlySelected) {
|
|
278
|
+
// Deselecting file
|
|
279
|
+
newSelected.exclude.add(path);
|
|
280
|
+
newSelected.include.delete(path);
|
|
281
|
+
} else {
|
|
282
|
+
// Selecting file - always allow this
|
|
283
|
+
newSelected.exclude.delete(path);
|
|
284
|
+
|
|
285
|
+
// If we have explicit includes OR if parent is excluded, we need to add this to include
|
|
286
|
+
if (newSelected.include.size > 0) {
|
|
287
|
+
const parentInclude = getEffectiveParentInclude(path);
|
|
288
|
+
if (!parentInclude) {
|
|
289
|
+
newSelected.include.add(path);
|
|
290
|
+
}
|
|
291
|
+
} else {
|
|
292
|
+
// Check if any parent is excluded - if so, we need to start using includes
|
|
293
|
+
const hasExcludedParent = Array.from(newSelected.exclude).some(
|
|
294
|
+
(excludedPath) => path.startsWith(excludedPath + '/') || path.startsWith(excludedPath + '\\'),
|
|
295
|
+
);
|
|
296
|
+
if (hasExcludedParent) {
|
|
297
|
+
newSelected.include.add(path);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
setSelectedFiles({
|
|
304
|
+
include: new Set(newSelected.include),
|
|
305
|
+
exclude: new Set(newSelected.exclude),
|
|
306
|
+
});
|
|
307
|
+
|
|
308
|
+
onSelect({
|
|
309
|
+
includes: newSelected.include,
|
|
310
|
+
excludes: newSelected.exclude,
|
|
311
|
+
});
|
|
312
|
+
};
|
|
313
|
+
|
|
314
|
+
const getDirectChildren = (parentPath: string) => {
|
|
315
|
+
let children = [];
|
|
316
|
+
|
|
317
|
+
if (!parentPath && fileSystem['']) {
|
|
318
|
+
children = fileSystem[''];
|
|
319
|
+
} else {
|
|
320
|
+
children = fileSystem[parentPath] || [];
|
|
321
|
+
}
|
|
322
|
+
const directories = children.filter((item) => item.isDirectory);
|
|
323
|
+
const files = children.filter((item) => !item.isDirectory);
|
|
324
|
+
return [
|
|
325
|
+
...(sortFileItems(directories, sortField, sortDirection) as RestoreFileItem[]),
|
|
326
|
+
...(sortFileItems(files, sortField, sortDirection) as RestoreFileItem[]),
|
|
327
|
+
];
|
|
328
|
+
};
|
|
329
|
+
|
|
330
|
+
const directChildren = useMemo(() => {
|
|
331
|
+
if (!selectedFolder) return [];
|
|
332
|
+
|
|
333
|
+
const children = getDirectChildren(selectedFolder);
|
|
334
|
+
const hasParent = getParentPath(selectedFolder) !== selectedFolder;
|
|
335
|
+
|
|
336
|
+
// Add parent navigation item if needed
|
|
337
|
+
return hasParent ? [null, ...children] : children;
|
|
338
|
+
}, [selectedFolder, fileSystem, sortField, sortDirection]);
|
|
339
|
+
|
|
340
|
+
const Row = ({ index, style }: { index: number; style: React.CSSProperties }) => {
|
|
341
|
+
const item = directChildren[index];
|
|
342
|
+
|
|
343
|
+
// Parent directory navigation
|
|
344
|
+
if (item === null) {
|
|
345
|
+
return (
|
|
346
|
+
<div
|
|
347
|
+
style={style}
|
|
348
|
+
className={`${classes.file} ${classes.fileIsDir} ${classes.goUpButton}`}
|
|
349
|
+
onClick={() => {
|
|
350
|
+
const parentPath = getParentPath(selectedFolder);
|
|
351
|
+
const normalizedParentPath = normalizePath(parentPath);
|
|
352
|
+
if (!normalizedParentPath || normalizedParentPath === '') return;
|
|
353
|
+
expandParentFolders(normalizedParentPath);
|
|
354
|
+
setSelectedFolder(normalizedParentPath);
|
|
355
|
+
}}
|
|
356
|
+
>
|
|
357
|
+
<div className={classes.fileName}>...</div>
|
|
358
|
+
</div>
|
|
359
|
+
);
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
const file = item;
|
|
363
|
+
const parts = splitPath(file.path);
|
|
364
|
+
const fileName = parts[parts.length - 1];
|
|
365
|
+
const normalizedPath = normalizePath(file.path);
|
|
366
|
+
const isDirectory = directories.includes(normalizedPath);
|
|
367
|
+
const isSelected = isPathSelected(file.path);
|
|
368
|
+
const canBeSelected = fileSelectCondition ? fileSelectCondition(file) : true;
|
|
369
|
+
|
|
370
|
+
return (
|
|
371
|
+
<div
|
|
372
|
+
style={style}
|
|
373
|
+
key={file.path}
|
|
374
|
+
className={`${classes.file} ${isDirectory ? classes.fileIsDir : ''} ${showChange && file.changeType === 'modified' ? classes.fileModified : ''} ${showChange && file.changeType === 'removed' ? classes.fileRemoved : ''}`}
|
|
375
|
+
onClick={() => {
|
|
376
|
+
if (isDirectory) {
|
|
377
|
+
expandParentFolders(normalizedPath);
|
|
378
|
+
setSelectedFolder(normalizedPath);
|
|
379
|
+
}
|
|
380
|
+
}}
|
|
381
|
+
>
|
|
382
|
+
<div className={classes.fileName}>
|
|
383
|
+
<button
|
|
384
|
+
className={`${classes.selectButton} ${isSelected ? classes.selected : ''} ${!canBeSelected ? classes.notSelectable : ''}`}
|
|
385
|
+
onClick={(e) => {
|
|
386
|
+
if (!canBeSelected) return;
|
|
387
|
+
e.stopPropagation();
|
|
388
|
+
onFileSelect(file.path, false);
|
|
389
|
+
}}
|
|
390
|
+
disabled={!canBeSelected}
|
|
391
|
+
>
|
|
392
|
+
{canBeSelected ? <Icon type={isSelected ? 'check-circle-filled' : 'check-circle'} size={13} /> : null}
|
|
393
|
+
</button>
|
|
394
|
+
{isDirectory ? <Icon type={isDirectory ? 'fm-directory' : 'fm-file'} size={16} /> : <FileIcon filename={fileName || ''} />} {fileName}
|
|
395
|
+
</div>
|
|
396
|
+
<div className={classes.fileModified}>{formatDateTime(file.modifiedAt)}</div>
|
|
397
|
+
<div className={classes.fileSize}>{formatBytes(file.size || 0)}</div>
|
|
398
|
+
</div>
|
|
399
|
+
);
|
|
400
|
+
};
|
|
401
|
+
|
|
402
|
+
return (
|
|
403
|
+
<div className={classes.restoreFileSelector}>
|
|
404
|
+
{isLoading && (
|
|
405
|
+
<div className={classes.loader}>
|
|
406
|
+
<Icon type="loading" size={24} /> Loading Snapshot Content..
|
|
407
|
+
</div>
|
|
408
|
+
)}
|
|
409
|
+
<div className={classes.restoredFileBrowser}>
|
|
410
|
+
<div className={classes.toolbar}>
|
|
411
|
+
<div className={classes.toolbarLeft}>
|
|
412
|
+
<div className={classes.stats}>
|
|
413
|
+
<strong>Summary: </strong>
|
|
414
|
+
{formatNumberToK(summary.selectedFiles)}/{formatNumberToK(summary.totalFiles)} Items {' • '}
|
|
415
|
+
{formatBytes(summary.selectedBytes)}/{formatBytes(summary.totalBytes)}
|
|
416
|
+
{selectedFiles.exclude.size > 0 && (
|
|
417
|
+
<div className={classes.excludedStat}>
|
|
418
|
+
{' • '}
|
|
419
|
+
<span>
|
|
420
|
+
Excluded:{' '}
|
|
421
|
+
<i title={Array.from(selectedFiles.exclude).join('\n')}>{formatNumberToK(selectedFiles.exclude.size)} Items</i>
|
|
422
|
+
</span>
|
|
423
|
+
</div>
|
|
424
|
+
)}
|
|
425
|
+
</div>
|
|
426
|
+
</div>
|
|
427
|
+
<div className={classes.toolbarRight}>
|
|
428
|
+
<div className={classes.search}>
|
|
429
|
+
<Icon type="search" size={16} />
|
|
430
|
+
<input type="text" placeholder="Search in current Directory..." value={search} onChange={(e) => setSearch(e.target.value)} />
|
|
431
|
+
</div>
|
|
432
|
+
</div>
|
|
433
|
+
</div>
|
|
434
|
+
|
|
435
|
+
<div className={classes.browserContent}>
|
|
436
|
+
<div className={`${classes.sidebar} styled__scrollbar`}>
|
|
437
|
+
<div className={classes.sidebarHeader}>Directories</div>
|
|
438
|
+
{directories.map((dir) => {
|
|
439
|
+
const parts = splitPath(dir);
|
|
440
|
+
const dirName = parts[parts.length - 1];
|
|
441
|
+
const depth = parts.length - 1;
|
|
442
|
+
const isExpanded = expandedFolders.has(dir);
|
|
443
|
+
const hasChildren = hasSubdirectories(dir);
|
|
444
|
+
const isSelected = isPathSelected(files.find((f) => f.isDirectory && normalizePath(f.path) === dir)?.path || dir);
|
|
445
|
+
|
|
446
|
+
// Only render if parent folders are expanded or if it's a root folder
|
|
447
|
+
if (depth === 0 || isVisible(dir)) {
|
|
448
|
+
return (
|
|
449
|
+
<div
|
|
450
|
+
key={dir}
|
|
451
|
+
className={`${classes.directory} ${selectedFolder === dir ? classes.selected : ''} ${hasChildren ? '' : classes.directoryEmpty}`}
|
|
452
|
+
style={{ paddingLeft: `${depth * 20}px` }}
|
|
453
|
+
onClick={() => setSelectedFolder(dir)}
|
|
454
|
+
>
|
|
455
|
+
{hasChildren ? (
|
|
456
|
+
<button
|
|
457
|
+
className={`${classes.toggleButton} ${isExpanded ? classes.active : ''}`}
|
|
458
|
+
onClick={(e) => {
|
|
459
|
+
e.stopPropagation();
|
|
460
|
+
toggleFolder(dir);
|
|
461
|
+
}}
|
|
462
|
+
>
|
|
463
|
+
{isExpanded ? '-' : '+'}
|
|
464
|
+
</button>
|
|
465
|
+
) : (
|
|
466
|
+
<span className={`${classes.togglePlaceholder}`} />
|
|
467
|
+
)}
|
|
468
|
+
<div className={classes.dirName}>
|
|
469
|
+
<Icon type={'fm-directory'} size={14} />
|
|
470
|
+
<button
|
|
471
|
+
className={`${classes.selectButton} ${isSelected ? classes.selected : ''}`}
|
|
472
|
+
onClick={(e) => {
|
|
473
|
+
e.stopPropagation();
|
|
474
|
+
const originalPath = files.find((f) => f.isDirectory && normalizePath(f.path) === dir)?.path || dir;
|
|
475
|
+
onFileSelect(originalPath, true);
|
|
476
|
+
}}
|
|
477
|
+
>
|
|
478
|
+
<Icon type={isSelected ? 'check-circle-filled' : 'check-circle'} size={13} />
|
|
479
|
+
</button>
|
|
480
|
+
{dirName}
|
|
481
|
+
</div>
|
|
482
|
+
</div>
|
|
483
|
+
);
|
|
484
|
+
}
|
|
485
|
+
return null;
|
|
486
|
+
})}
|
|
487
|
+
</div>
|
|
488
|
+
|
|
489
|
+
<div className={`${classes.content} styled__scrollbar`}>
|
|
490
|
+
<div className={classes.fileList}>
|
|
491
|
+
<div className={classes.header}>
|
|
492
|
+
<div onClick={() => handleSort('name')} className={sortField === 'name' ? classes.activeSort : ''}>
|
|
493
|
+
Name {sortField === 'name' && (sortDirection === 'asc' ? '↑' : '↓')}
|
|
494
|
+
</div>
|
|
495
|
+
<div onClick={() => handleSort('modifiedAt')} className={sortField === 'modifiedAt' ? classes.activeSort : ''}>
|
|
496
|
+
Last Modified {sortField === 'modifiedAt' && (sortDirection === 'asc' ? '↑' : '↓')}
|
|
497
|
+
</div>
|
|
498
|
+
<div onClick={() => handleSort('size')} className={sortField === 'size' ? classes.activeSort : ''}>
|
|
499
|
+
Size {sortField === 'size' && (sortDirection === 'asc' ? '↑' : '↓')}
|
|
500
|
+
</div>
|
|
501
|
+
</div>
|
|
502
|
+
{selectedFolder ? (
|
|
503
|
+
<List height={window.innerHeight - 300} itemCount={directChildren.length} itemSize={ITEM_HEIGHT} width="100%">
|
|
504
|
+
{Row}
|
|
505
|
+
</List>
|
|
506
|
+
) : (
|
|
507
|
+
<div className={classes.fileListEmpty}>Select a folder from the left to browse it's content</div>
|
|
508
|
+
)}
|
|
509
|
+
{errorFetching && <div className={classes.error}>Failed to load files. Please try again.</div>}
|
|
510
|
+
</div>
|
|
511
|
+
</div>
|
|
512
|
+
</div>
|
|
513
|
+
</div>
|
|
514
|
+
</div>
|
|
515
|
+
);
|
|
516
|
+
};
|
|
517
|
+
|
|
518
|
+
export default RestoreFileSelector;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import Icon from '../../common/Icon/Icon';
|
|
2
|
+
import { useRestoreBackup } from '../../../services/restores';
|
|
3
|
+
import classes from './RestoreWizard.module.scss';
|
|
4
|
+
import { RestoredItemsStats, RestoreSettings } from '../../../@types/restores';
|
|
5
|
+
|
|
6
|
+
interface RestoreConfirmStepProps {
|
|
7
|
+
backupId: string;
|
|
8
|
+
planId: string;
|
|
9
|
+
settings: RestoreSettings;
|
|
10
|
+
stats: RestoredItemsStats | null;
|
|
11
|
+
method: string;
|
|
12
|
+
snapshotsStats: { total_files: number; total_bytes: number };
|
|
13
|
+
goBack: () => void;
|
|
14
|
+
close: () => void;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const RestoreConfirmStep = ({ backupId, planId, settings, stats, snapshotsStats, method, goBack, close }: RestoreConfirmStepProps) => {
|
|
18
|
+
const restoreMutation = useRestoreBackup();
|
|
19
|
+
const restoreStats = stats;
|
|
20
|
+
const isSync = method === 'sync';
|
|
21
|
+
|
|
22
|
+
const restoreBackup = () => {
|
|
23
|
+
console.log('restore :', backupId);
|
|
24
|
+
restoreMutation.mutate({
|
|
25
|
+
backupId,
|
|
26
|
+
planId,
|
|
27
|
+
overwrite: settings.overwrite,
|
|
28
|
+
target: settings.type === 'custom' ? settings.path : '',
|
|
29
|
+
includes: settings.includes,
|
|
30
|
+
excludes: settings.excludes,
|
|
31
|
+
deleteOption: settings.delete,
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<div className={classes.stepContent}>
|
|
37
|
+
<div className={classes.step}>
|
|
38
|
+
{!restoreMutation.isSuccess && (
|
|
39
|
+
<div className={classes.restoreConfirm}>
|
|
40
|
+
<p>
|
|
41
|
+
{restoreStats ? (
|
|
42
|
+
<strong>
|
|
43
|
+
{restoreStats?.files_restored}
|
|
44
|
+
{!isSync ? `/${snapshotsStats.total_files} files` : ''}
|
|
45
|
+
</strong>
|
|
46
|
+
) : (
|
|
47
|
+
`The content of the Backup (${backupId}) `
|
|
48
|
+
)}{' '}
|
|
49
|
+
will be restored to{' '}
|
|
50
|
+
<strong>
|
|
51
|
+
{settings.type === 'original' ? (isSync ? 'the original source path' : 'their original source paths') : `"${settings.path}"`}
|
|
52
|
+
</strong>
|
|
53
|
+
. Are you sure you want to proceed with the Restore?
|
|
54
|
+
</p>
|
|
55
|
+
<button
|
|
56
|
+
className={`${classes.restoreButton} ${restoreMutation.isPending ? classes.restoreDisabled : ''}`}
|
|
57
|
+
onClick={() => restoreBackup()}
|
|
58
|
+
disabled={restoreMutation.isPending}
|
|
59
|
+
>
|
|
60
|
+
{restoreMutation.isPending ? (
|
|
61
|
+
<>
|
|
62
|
+
<Icon type="loading" size={12} /> Starting Restore...
|
|
63
|
+
</>
|
|
64
|
+
) : (
|
|
65
|
+
<>
|
|
66
|
+
<Icon type="restore" size={14} /> Yes, Restore
|
|
67
|
+
</>
|
|
68
|
+
)}
|
|
69
|
+
</button>
|
|
70
|
+
</div>
|
|
71
|
+
)}
|
|
72
|
+
{restoreMutation.isSuccess && (
|
|
73
|
+
<p className={classes.restoreSuccessMsg}>
|
|
74
|
+
<Icon type="check-circle-filled" size={14} color="lightseagreen" /> Restore Process Started.{' '}
|
|
75
|
+
<button onClick={() => location.reload()}>
|
|
76
|
+
<Icon type="reload" size={12} /> Reload
|
|
77
|
+
</button>{' '}
|
|
78
|
+
the page to view the restoration progress.
|
|
79
|
+
</p>
|
|
80
|
+
)}
|
|
81
|
+
{restoreMutation.isError && (
|
|
82
|
+
<div className={classes.restoreError}>
|
|
83
|
+
<Icon type="error" size={14} color="red" /> {restoreMutation.error?.message || 'Failed to Generate Preview'}
|
|
84
|
+
</div>
|
|
85
|
+
)}
|
|
86
|
+
</div>
|
|
87
|
+
<div className={classes.footer}>
|
|
88
|
+
<div className={classes.footerLeft}>
|
|
89
|
+
{!restoreMutation.isSuccess && (
|
|
90
|
+
<button className={classes.backButton} onClick={() => goBack()} disabled={restoreMutation.isPending}>
|
|
91
|
+
<Icon type="arrow-left" size={14} /> Back
|
|
92
|
+
</button>
|
|
93
|
+
)}
|
|
94
|
+
</div>
|
|
95
|
+
<div className={classes.footerRight}>
|
|
96
|
+
<button onClick={() => close()} disabled={restoreMutation.isPending}>
|
|
97
|
+
{restoreMutation.isSuccess ? 'Close' : 'Cancel'}
|
|
98
|
+
</button>
|
|
99
|
+
</div>
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export default RestoreConfirmStep;
|