@futo-org/backups-orchestrator-ui 0.27.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/backends/BackendItem.svelte +28 -24
- package/dist/components/backends/BackendsList.svelte +33 -34
- package/dist/components/backends/BackendsList.svelte.d.ts +1 -0
- package/dist/components/backends/dialogs/SelectBackendModal.svelte +44 -55
- package/dist/components/backups/BackupItem.svelte +33 -26
- package/dist/components/backups/BackupStatus.svelte +200 -0
- package/dist/components/backups/BackupStatus.svelte.d.ts +19 -0
- package/dist/components/backups/BackupsList.svelte +17 -11
- package/dist/components/backups/dialogs/RestoreSnapshotModal.svelte +2 -2
- package/dist/components/backups/dialogs/SelectRepositoryModal.svelte +26 -36
- package/dist/components/backups/dialogs/ViewStatusModal.svelte +175 -0
- package/dist/components/backups/dialogs/ViewStatusModal.svelte.d.ts +8 -0
- package/dist/components/backups/run-history/RepositoryRunHistory.svelte +22 -10
- package/dist/components/backups/run-history/RepositoryRunHistory.svelte.d.ts +2 -0
- package/dist/components/backups/run-history/RepositoryRunHistoryItem.svelte +46 -20
- package/dist/components/backups/run-history/RepositoryRunHistoryPage.svelte +135 -0
- package/dist/components/backups/run-history/RepositoryRunHistoryPage.svelte.d.ts +8 -0
- package/dist/components/backups/run-history/RunHistoryModal.svelte +2 -2
- package/dist/components/backups/snapshots-list/RepositorySnapshotsList.svelte +22 -10
- package/dist/components/backups/snapshots-list/RepositorySnapshotsList.svelte.d.ts +2 -0
- package/dist/components/backups/snapshots-list/RepositorySnapshotsListItem.svelte +23 -21
- package/dist/components/backups/snapshots-list/RepositorySnapshotsPage.svelte +115 -0
- package/dist/components/backups/snapshots-list/RepositorySnapshotsPage.svelte.d.ts +9 -0
- package/dist/components/backups/snapshots-list/SnapshotsListModal.svelte +2 -2
- package/dist/components/dashboard/Dashboard.svelte +14 -7
- package/dist/components/dashboard/Dashboard.svelte.d.ts +1 -1
- package/dist/components/dashboard/DashboardAvgBackupTime.svelte +1 -1
- package/dist/components/dashboard/DashboardBackupHealth.svelte +5 -9
- package/dist/components/dashboard/DashboardBackupHealth.svelte.d.ts +1 -1
- package/dist/components/dashboard/DashboardCurrentUsage.svelte +1 -1
- package/dist/components/dashboard/DashboardDailyBackupTime.svelte +1 -1
- package/dist/components/dashboard/DashboardInstall.svelte +1 -1
- package/dist/components/dashboard/DashboardRecentBackups.svelte +47 -78
- package/dist/components/dashboard/DashboardTotalStored.svelte +1 -1
- package/dist/components/integrations/immich/ImmichBackupSettings.svelte +12 -0
- package/dist/components/integrations/immich/ImmichBackupSettings.svelte.d.ts +18 -0
- package/dist/components/integrations/immich/ImmichBackupsCard.svelte +73 -0
- package/dist/components/integrations/immich/ImmichBackupsCard.svelte.d.ts +12 -0
- package/dist/components/integrations/immich/ImmichBackupsNavButton.svelte +55 -0
- package/dist/components/integrations/immich/ImmichBackupsNavButton.svelte.d.ts +10 -0
- package/dist/components/integrations/immich/ImmichBackupsPage.svelte +15 -3
- package/dist/components/integrations/immich/ImmichBackupsPage.svelte.d.ts +7 -1
- package/dist/components/integrations/immich/ImmichBackupsSidebarItem.svelte +66 -0
- package/dist/components/integrations/immich/ImmichBackupsSidebarItem.svelte.d.ts +8 -0
- package/dist/components/integrations/immich/ImmichManageBackup.svelte +53 -14
- package/dist/components/integrations/immich/ImmichManageBackupOverview.svelte +45 -71
- package/dist/components/integrations/immich/ImmichOnboardingSetupFlow.svelte +123 -82
- package/dist/components/integrations/immich/ImmichOnboardingSetupFlow.svelte.d.ts +1 -1
- package/dist/components/integrations/immich/settings/ImmichSettingsBackupContents.svelte +313 -0
- package/dist/components/integrations/immich/settings/ImmichSettingsBackupContents.svelte.d.ts +3 -0
- package/dist/components/integrations/immich/settings/ImmichSettingsSchedule.svelte +218 -0
- package/dist/components/integrations/immich/settings/ImmichSettingsSchedule.svelte.d.ts +3 -0
- package/dist/components/integrations/immich/settings/ImmichSettingsStorage.svelte +207 -0
- package/dist/components/integrations/immich/settings/ImmichSettingsStorage.svelte.d.ts +3 -0
- package/dist/components/onboarding/RecoveryKeyDisplay.svelte +34 -20
- package/dist/components/onboarding/SampleOnboarding.svelte +57 -38
- package/dist/components/onboarding/stages/OnboardingStageBackupServices.svelte +10 -24
- package/dist/components/onboarding/steps/OnboardingStep1FinishSetup.svelte +44 -0
- package/dist/components/onboarding/steps/OnboardingStep1FinishSetup.svelte.d.ts +7 -0
- package/dist/components/onboarding/steps/OnboardingStep2ConnectAccount.svelte +50 -0
- package/dist/components/onboarding/steps/OnboardingStep2ConnectAccount.svelte.d.ts +7 -0
- package/dist/components/onboarding/steps/OnboardingStep3SaveRecoveryKey.svelte +45 -0
- package/dist/components/onboarding/steps/OnboardingStep3SaveRecoveryKey.svelte.d.ts +8 -0
- package/dist/components/onboarding/steps/OnboardingStep4FirstBackup.svelte +67 -0
- package/dist/components/onboarding/steps/OnboardingStep4FirstBackup.svelte.d.ts +9 -0
- package/dist/components/onboarding/steps/OnboardingStepLayout.svelte +58 -0
- package/dist/components/onboarding/steps/OnboardingStepLayout.svelte.d.ts +19 -0
- package/dist/components/onboarding/upsell/UpsellBackupFeaturesGrid.svelte +52 -0
- package/dist/components/onboarding/upsell/UpsellBackupFeaturesGrid.svelte.d.ts +18 -0
- package/dist/components/onboarding/upsell/UpsellExplainFutoBackups.svelte +33 -0
- package/dist/components/onboarding/upsell/UpsellExplainFutoBackups.svelte.d.ts +8 -0
- package/dist/components/onboarding/upsell/UpsellFrequentlyAskedQuestions.svelte +27 -0
- package/dist/components/onboarding/upsell/UpsellFrequentlyAskedQuestions.svelte.d.ts +10 -0
- package/dist/components/onboarding/upsell/UpsellFutoBackupsBadge.svelte +7 -0
- package/dist/components/onboarding/upsell/UpsellFutoBackupsBadge.svelte.d.ts +18 -0
- package/dist/components/onboarding/upsell/UpsellHowItWorks.svelte +46 -0
- package/dist/components/onboarding/upsell/UpsellHowItWorks.svelte.d.ts +6 -0
- package/dist/components/onboarding/upsell/UpsellModal.svelte +43 -0
- package/dist/components/onboarding/upsell/UpsellModal.svelte.d.ts +9 -0
- package/dist/components/onboarding/upsell/UpsellPage.svelte +39 -0
- package/dist/components/onboarding/upsell/UpsellPage.svelte.d.ts +13 -0
- package/dist/components/onboarding/upsell/UpsellProtectYourImmichLibrary.svelte +58 -0
- package/dist/components/onboarding/upsell/UpsellProtectYourImmichLibrary.svelte.d.ts +8 -0
- package/dist/components/schedules/RepositoryPicker.svelte +45 -38
- package/dist/components/schedules/ScheduleItem.svelte +32 -26
- package/dist/components/schedules/ScheduleList.svelte +16 -10
- package/dist/components/settings/GlobalSettings.svelte +8 -0
- package/dist/components/settings/GlobalSettings.svelte.d.ts +18 -0
- package/dist/components/settings/SettingsBackends.svelte +16 -0
- package/dist/components/settings/SettingsBackends.svelte.d.ts +18 -0
- package/dist/components/settings/SettingsBilling.svelte +69 -0
- package/dist/components/settings/SettingsBilling.svelte.d.ts +6 -0
- package/dist/components/settings/SettingsNotifications.svelte +47 -0
- package/dist/components/settings/SettingsNotifications.svelte.d.ts +6 -0
- package/dist/components/test/ImmichTestUi.svelte +129 -27
- package/dist/components/test/TestUi.svelte +4 -4
- package/dist/components/test/dashboard/ActiveJobs.svelte +2 -2
- package/dist/components/test/immich/MockImmichPhotos.svelte +36 -0
- package/dist/components/test/immich/MockImmichPhotos.svelte.d.ts +18 -0
- package/dist/components/test/immich/MockImmichPurchaseInfo.svelte +29 -0
- package/dist/components/test/immich/MockImmichPurchaseInfo.svelte.d.ts +18 -0
- package/dist/components/test/immich/MockImmichStorageSpace.svelte +37 -0
- package/dist/components/test/immich/MockImmichStorageSpace.svelte.d.ts +6 -0
- package/dist/components/ui/Accordion.svelte +67 -0
- package/dist/components/ui/Accordion.svelte.d.ts +11 -0
- package/dist/components/ui/ListToolbar.svelte +60 -0
- package/dist/components/ui/ListToolbar.svelte.d.ts +16 -0
- package/dist/components/ui/PageLayout.svelte +21 -9
- package/dist/components/ui/PageLayout.svelte.d.ts +1 -0
- package/dist/components/ui/Pagination.svelte +80 -0
- package/dist/components/ui/Pagination.svelte.d.ts +8 -0
- package/dist/components/ui/PathListField.svelte +17 -14
- package/dist/components/ui/StackList.svelte +18 -18
- package/dist/components/ui/StackList.svelte.d.ts +6 -27
- package/dist/components/ui/StackListItem.svelte +47 -25
- package/dist/components/ui/StackListItem.svelte.d.ts +5 -2
- package/dist/components/ui/StackListOption.svelte +33 -0
- package/dist/components/ui/StackListOption.svelte.d.ts +11 -0
- package/dist/components/ui/StackListPlaceholder.svelte +12 -0
- package/dist/components/ui/StackListPlaceholder.svelte.d.ts +7 -0
- package/dist/components/ui/StepNumber.svelte +20 -0
- package/dist/components/ui/StepNumber.svelte.d.ts +7 -0
- package/dist/components/util/Suspense.svelte +7 -3
- package/dist/components/util/YuccaContext.svelte +1 -1
- package/dist/events.js +1 -1
- package/dist/fetch-client.d.ts +2 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.js +6 -1
- package/dist/services/backend.service.js +3 -0
- package/dist/services/immich.integration.service.d.ts +1 -1
- package/dist/services/immich.integration.service.js +2 -3
- package/dist/services/integrations.service.d.ts +1 -0
- package/dist/services/integrations.service.js +2 -1
- package/dist/services/log.service.svelte.d.ts +12 -0
- package/dist/services/log.service.svelte.js +15 -1
- package/dist/services/repository.service.js +9 -3
- package/dist/services/runHistory.service.js +2 -2
- package/dist/utils/format.d.ts +1 -1
- package/dist/utils/format.js +2 -2
- package/package.json +3 -3
- package/dist/components/backups/dialogs/ViewLogModal.svelte +0 -208
- package/dist/components/backups/dialogs/ViewLogModal.svelte.d.ts +0 -7
- package/dist/components/integrations/immich/ImmichConfigureBackup.svelte +0 -403
- package/dist/components/integrations/immich/ImmichConfigureBackup.svelte.d.ts +0 -9
- package/dist/components/integrations/immich/ImmichConfirmDefaultBackup.svelte +0 -80
- package/dist/components/integrations/immich/ImmichConfirmDefaultBackup.svelte.d.ts +0 -8
- package/dist/components/onboarding/stages/OnboardingStageKeyConfirm.svelte +0 -56
- package/dist/components/onboarding/stages/OnboardingStageKeyConfirm.svelte.d.ts +0 -9
- package/dist/components/onboarding/stages/OnboardingStageKeyIntro.svelte +0 -50
- package/dist/components/onboarding/stages/OnboardingStageKeyIntro.svelte.d.ts +0 -7
- package/dist/components/onboarding/stages/OnboardingStageKeySave.svelte +0 -44
- package/dist/components/onboarding/stages/OnboardingStageKeySave.svelte.d.ts +0 -8
- package/dist/components/onboarding/stages/OnboardingStageWelcome.svelte +0 -56
- package/dist/components/onboarding/stages/OnboardingStageWelcome.svelte.d.ts +0 -9
- package/dist/components/util/TimedButton.svelte +0 -37
- package/dist/components/util/TimedButton.svelte.d.ts +0 -7
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { useConfigureImmichDefaults } from "../../../services/integrations.service";
|
|
3
|
-
import {
|
|
4
|
-
Button,
|
|
5
|
-
HStack,
|
|
6
|
-
Icon,
|
|
7
|
-
Modal,
|
|
8
|
-
ModalBody,
|
|
9
|
-
ModalFooter,
|
|
10
|
-
Stack,
|
|
11
|
-
Text,
|
|
12
|
-
} from "@immich/ui";
|
|
13
|
-
import {
|
|
14
|
-
mdiClockOutline,
|
|
15
|
-
mdiFolderMultipleOutline,
|
|
16
|
-
mdiImageMultipleOutline,
|
|
17
|
-
} from "@mdi/js";
|
|
18
|
-
|
|
19
|
-
type Props = {
|
|
20
|
-
onCustomize: () => void;
|
|
21
|
-
onConfirm: () => void;
|
|
22
|
-
onCancel: () => void;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
const { onCustomize, onConfirm, onCancel }: Props = $props();
|
|
26
|
-
|
|
27
|
-
const mutation = useConfigureImmichDefaults();
|
|
28
|
-
|
|
29
|
-
const onCreate = () =>
|
|
30
|
-
mutation.mutate(undefined, { onSuccess: () => onConfirm() });
|
|
31
|
-
</script>
|
|
32
|
-
|
|
33
|
-
<Modal title="Ready to back up Immich" size="small" onClose={onCancel}>
|
|
34
|
-
<ModalBody>
|
|
35
|
-
<Stack gap={3}>
|
|
36
|
-
<Text>
|
|
37
|
-
We'll create a backup with sensible defaults. You can change anything
|
|
38
|
-
later from the Immich backups page.
|
|
39
|
-
</Text>
|
|
40
|
-
|
|
41
|
-
<Stack>
|
|
42
|
-
<HStack>
|
|
43
|
-
<Icon
|
|
44
|
-
icon={mdiImageMultipleOutline}
|
|
45
|
-
class="shrink-0 place-self-start mt-1"
|
|
46
|
-
/>
|
|
47
|
-
<Text>Photos, videos, database, and configuration</Text>
|
|
48
|
-
</HStack>
|
|
49
|
-
<HStack>
|
|
50
|
-
<Icon
|
|
51
|
-
icon={mdiFolderMultipleOutline}
|
|
52
|
-
class="shrink-0 place-self-start mt-1"
|
|
53
|
-
/>
|
|
54
|
-
<Text>All external libraries</Text>
|
|
55
|
-
</HStack>
|
|
56
|
-
<HStack>
|
|
57
|
-
<Icon
|
|
58
|
-
icon={mdiClockOutline}
|
|
59
|
-
class="shrink-0 place-self-start mt-1"
|
|
60
|
-
/>
|
|
61
|
-
<Text>Runs every day at 3:00 AM</Text>
|
|
62
|
-
</HStack>
|
|
63
|
-
</Stack>
|
|
64
|
-
</Stack>
|
|
65
|
-
</ModalBody>
|
|
66
|
-
<ModalFooter>
|
|
67
|
-
<HStack gap={2}>
|
|
68
|
-
<Button
|
|
69
|
-
variant="ghost"
|
|
70
|
-
onclick={onCustomize}
|
|
71
|
-
disabled={mutation.isPending}
|
|
72
|
-
>
|
|
73
|
-
Customize
|
|
74
|
-
</Button>
|
|
75
|
-
<Button onclick={onCreate} loading={mutation.isPending}>
|
|
76
|
-
Create backup
|
|
77
|
-
</Button>
|
|
78
|
-
</HStack>
|
|
79
|
-
</ModalFooter>
|
|
80
|
-
</Modal>
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
type Props = {
|
|
2
|
-
onCustomize: () => void;
|
|
3
|
-
onConfirm: () => void;
|
|
4
|
-
onCancel: () => void;
|
|
5
|
-
};
|
|
6
|
-
declare const ImmichConfirmDefaultBackup: import("svelte").Component<Props, {}, "">;
|
|
7
|
-
type ImmichConfirmDefaultBackup = ReturnType<typeof ImmichConfirmDefaultBackup>;
|
|
8
|
-
export default ImmichConfirmDefaultBackup;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import {
|
|
3
|
-
Button,
|
|
4
|
-
Field,
|
|
5
|
-
HStack,
|
|
6
|
-
Input,
|
|
7
|
-
Modal,
|
|
8
|
-
ModalBody,
|
|
9
|
-
ModalFooter,
|
|
10
|
-
Stack,
|
|
11
|
-
Text,
|
|
12
|
-
} from "@immich/ui";
|
|
13
|
-
|
|
14
|
-
type Props = {
|
|
15
|
-
code: string;
|
|
16
|
-
|
|
17
|
-
onConfirmKey: () => Promise<void>;
|
|
18
|
-
onBack: () => void;
|
|
19
|
-
onCancel: () => void;
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const { code, onConfirmKey, onBack, onCancel }: Props = $props();
|
|
23
|
-
|
|
24
|
-
let value = $state("");
|
|
25
|
-
|
|
26
|
-
const strip = (key: string) => {
|
|
27
|
-
return key.replace(/\s/g, "").toLowerCase().trim();
|
|
28
|
-
};
|
|
29
|
-
</script>
|
|
30
|
-
|
|
31
|
-
<Modal
|
|
32
|
-
size="small"
|
|
33
|
-
title="Confirm recovery key"
|
|
34
|
-
onClose={onCancel}
|
|
35
|
-
icon={false}
|
|
36
|
-
>
|
|
37
|
-
<ModalBody>
|
|
38
|
-
<Stack>
|
|
39
|
-
<Text size="small" class="text-muted text-left"
|
|
40
|
-
>Ensure you've saved the key properly.</Text
|
|
41
|
-
>
|
|
42
|
-
|
|
43
|
-
<Field label="Recovery Key">
|
|
44
|
-
<Input bind:value />
|
|
45
|
-
</Field>
|
|
46
|
-
</Stack>
|
|
47
|
-
</ModalBody>
|
|
48
|
-
<ModalFooter>
|
|
49
|
-
<HStack>
|
|
50
|
-
<Button disabled={strip(code) !== strip(value)} onclick={onConfirmKey}
|
|
51
|
-
>Confirm</Button
|
|
52
|
-
>
|
|
53
|
-
<Button variant="ghost" onclick={onBack}>See the key again</Button>
|
|
54
|
-
</HStack>
|
|
55
|
-
</ModalFooter>
|
|
56
|
-
</Modal>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
type Props = {
|
|
2
|
-
code: string;
|
|
3
|
-
onConfirmKey: () => Promise<void>;
|
|
4
|
-
onBack: () => void;
|
|
5
|
-
onCancel: () => void;
|
|
6
|
-
};
|
|
7
|
-
declare const OnboardingStageKeyConfirm: import("svelte").Component<Props, {}, "">;
|
|
8
|
-
type OnboardingStageKeyConfirm = ReturnType<typeof OnboardingStageKeyConfirm>;
|
|
9
|
-
export default OnboardingStageKeyConfirm;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import TimedButton from "../../util/TimedButton.svelte";
|
|
3
|
-
import {
|
|
4
|
-
Button,
|
|
5
|
-
HStack,
|
|
6
|
-
Icon,
|
|
7
|
-
Modal,
|
|
8
|
-
ModalBody,
|
|
9
|
-
ModalFooter,
|
|
10
|
-
Stack,
|
|
11
|
-
Text,
|
|
12
|
-
} from "@immich/ui";
|
|
13
|
-
import { mdiKey, mdiSecurity } from "@mdi/js";
|
|
14
|
-
|
|
15
|
-
type Props = {
|
|
16
|
-
onNext: () => void;
|
|
17
|
-
onCancel: () => void;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const { onNext, onCancel }: Props = $props();
|
|
21
|
-
</script>
|
|
22
|
-
|
|
23
|
-
<Modal
|
|
24
|
-
size="small"
|
|
25
|
-
title="Keeping your photos private"
|
|
26
|
-
onClose={onCancel}
|
|
27
|
-
icon={false}
|
|
28
|
-
>
|
|
29
|
-
<ModalBody>
|
|
30
|
-
<Stack>
|
|
31
|
-
<HStack>
|
|
32
|
-
<Icon icon={mdiKey} class="shrink-0 place-self-start mt-1" />
|
|
33
|
-
<Text
|
|
34
|
-
>You are about to be given a code which you need to put in a safe
|
|
35
|
-
place.</Text
|
|
36
|
-
>
|
|
37
|
-
</HStack>
|
|
38
|
-
<HStack>
|
|
39
|
-
<Icon icon={mdiSecurity} class="shrink-0 place-self-start mt-1" />
|
|
40
|
-
<Text>If you lose the key, your backup is gone.</Text>
|
|
41
|
-
</HStack>
|
|
42
|
-
</Stack>
|
|
43
|
-
</ModalBody>
|
|
44
|
-
<ModalFooter>
|
|
45
|
-
<HStack>
|
|
46
|
-
<TimedButton text="Next" onclick={onNext} />
|
|
47
|
-
<Button variant="ghost" onclick={onCancel}>Cancel</Button>
|
|
48
|
-
</HStack>
|
|
49
|
-
</ModalFooter>
|
|
50
|
-
</Modal>
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
type Props = {
|
|
2
|
-
onNext: () => void;
|
|
3
|
-
onCancel: () => void;
|
|
4
|
-
};
|
|
5
|
-
declare const OnboardingStageKeyIntro: import("svelte").Component<Props, {}, "">;
|
|
6
|
-
type OnboardingStageKeyIntro = ReturnType<typeof OnboardingStageKeyIntro>;
|
|
7
|
-
export default OnboardingStageKeyIntro;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import {
|
|
3
|
-
Button,
|
|
4
|
-
HStack,
|
|
5
|
-
LoadingSpinner,
|
|
6
|
-
Modal,
|
|
7
|
-
ModalBody,
|
|
8
|
-
ModalFooter,
|
|
9
|
-
Stack,
|
|
10
|
-
Text,
|
|
11
|
-
} from "@immich/ui";
|
|
12
|
-
import RecoveryKeyDisplay from "../RecoveryKeyDisplay.svelte";
|
|
13
|
-
|
|
14
|
-
type Props = {
|
|
15
|
-
code: string;
|
|
16
|
-
|
|
17
|
-
onNext: () => void;
|
|
18
|
-
onCancel: () => void;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const { code, onNext, onCancel }: Props = $props();
|
|
22
|
-
</script>
|
|
23
|
-
|
|
24
|
-
<Modal size="small" title="Your recovery key" onClose={onCancel} icon={false}>
|
|
25
|
-
<ModalBody>
|
|
26
|
-
<Stack gap={4}>
|
|
27
|
-
<Text size="small" class="text-muted text-left">
|
|
28
|
-
Save this key somewhere safe, it will be used to restore your backups.
|
|
29
|
-
</Text>
|
|
30
|
-
|
|
31
|
-
{#if code}
|
|
32
|
-
<RecoveryKeyDisplay {code} />
|
|
33
|
-
{:else}
|
|
34
|
-
<LoadingSpinner />
|
|
35
|
-
{/if}
|
|
36
|
-
</Stack>
|
|
37
|
-
</ModalBody>
|
|
38
|
-
<ModalFooter>
|
|
39
|
-
<HStack>
|
|
40
|
-
<Button onclick={onNext}>Next</Button>
|
|
41
|
-
<Button variant="ghost" onclick={onCancel}>Cancel</Button>
|
|
42
|
-
</HStack>
|
|
43
|
-
</ModalFooter>
|
|
44
|
-
</Modal>
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
type Props = {
|
|
2
|
-
code: string;
|
|
3
|
-
onNext: () => void;
|
|
4
|
-
onCancel: () => void;
|
|
5
|
-
};
|
|
6
|
-
declare const OnboardingStageKeySave: import("svelte").Component<Props, {}, "">;
|
|
7
|
-
type OnboardingStageKeySave = ReturnType<typeof OnboardingStageKeySave>;
|
|
8
|
-
export default OnboardingStageKeySave;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import {
|
|
3
|
-
Button,
|
|
4
|
-
HStack,
|
|
5
|
-
Icon,
|
|
6
|
-
Modal,
|
|
7
|
-
ModalBody,
|
|
8
|
-
ModalFooter,
|
|
9
|
-
Stack,
|
|
10
|
-
Text,
|
|
11
|
-
} from "@immich/ui";
|
|
12
|
-
import { mdiImageAlbum, mdiInformation, mdiLock } from "@mdi/js";
|
|
13
|
-
|
|
14
|
-
type Props = {
|
|
15
|
-
onNext: () => void;
|
|
16
|
-
onImportKey: () => void;
|
|
17
|
-
onCancel: () => void;
|
|
18
|
-
icon?: boolean;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const { onNext, onImportKey, onCancel, icon = true }: Props = $props();
|
|
22
|
-
</script>
|
|
23
|
-
|
|
24
|
-
<Modal size="small" title="Welcome to FUTO Backups" onClose={onCancel} {icon}>
|
|
25
|
-
<ModalBody>
|
|
26
|
-
<Stack>
|
|
27
|
-
<HStack>
|
|
28
|
-
<Icon icon={mdiImageAlbum} class="shrink-0 place-self-start mt-1" />
|
|
29
|
-
<Text>
|
|
30
|
-
Keep your most precious memories safe and away from prying eyes.</Text
|
|
31
|
-
>
|
|
32
|
-
</HStack>
|
|
33
|
-
<HStack>
|
|
34
|
-
<Icon icon={mdiLock} class="shrink-0 place-self-start mt-1" />
|
|
35
|
-
<Text>
|
|
36
|
-
You will be guided through setting up a secure way to keep your photos
|
|
37
|
-
private.</Text
|
|
38
|
-
>
|
|
39
|
-
</HStack>
|
|
40
|
-
<HStack>
|
|
41
|
-
<Icon icon={mdiInformation} class="shrink-0 place-self-start mt-1" />
|
|
42
|
-
<Text>
|
|
43
|
-
You'll be able to choose to use our backups service or your own
|
|
44
|
-
storage.</Text
|
|
45
|
-
>
|
|
46
|
-
</HStack>
|
|
47
|
-
</Stack>
|
|
48
|
-
</ModalBody>
|
|
49
|
-
<ModalFooter>
|
|
50
|
-
<HStack>
|
|
51
|
-
<Button onclick={onNext}>Next</Button>
|
|
52
|
-
<Button variant="ghost" onclick={onImportKey}>Import Key</Button>
|
|
53
|
-
<Button variant="ghost" onclick={onCancel}>Cancel</Button>
|
|
54
|
-
</HStack>
|
|
55
|
-
</ModalFooter>
|
|
56
|
-
</Modal>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
type Props = {
|
|
2
|
-
onNext: () => void;
|
|
3
|
-
onImportKey: () => void;
|
|
4
|
-
onCancel: () => void;
|
|
5
|
-
icon?: boolean;
|
|
6
|
-
};
|
|
7
|
-
declare const OnboardingStageWelcome: import("svelte").Component<Props, {}, "">;
|
|
8
|
-
type OnboardingStageWelcome = ReturnType<typeof OnboardingStageWelcome>;
|
|
9
|
-
export default OnboardingStageWelcome;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { onMount, onDestroy } from "svelte";
|
|
3
|
-
import { Button } from "@immich/ui";
|
|
4
|
-
|
|
5
|
-
type Props = {
|
|
6
|
-
text: string;
|
|
7
|
-
onclick: () => void;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
let { text, onclick }: Props = $props();
|
|
11
|
-
|
|
12
|
-
let time = $state(5);
|
|
13
|
-
let interval: number | undefined;
|
|
14
|
-
|
|
15
|
-
onMount(() => {
|
|
16
|
-
interval = setInterval(
|
|
17
|
-
() => {
|
|
18
|
-
if (time === 0) {
|
|
19
|
-
clearInterval(interval);
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
time--;
|
|
24
|
-
},
|
|
25
|
-
import.meta.env.DEV ? 100 : 1000,
|
|
26
|
-
) as never;
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
onDestroy(() => clearInterval(interval));
|
|
30
|
-
</script>
|
|
31
|
-
|
|
32
|
-
<Button {onclick} disabled={time !== 0}
|
|
33
|
-
>{text}
|
|
34
|
-
{#if time !== 0}
|
|
35
|
-
({time})
|
|
36
|
-
{/if}</Button
|
|
37
|
-
>
|