mirror of
https://github.com/streetwriters/notesnook.git
synced 2026-09-01 19:49:54 +02:00
mobile: add force sync sheets
This commit is contained in:
221
apps/mobile/app/components/sheets/force-sync/index.tsx
Normal file
221
apps/mobile/app/components/sheets/force-sync/index.tsx
Normal file
@@ -0,0 +1,221 @@
|
||||
/*
|
||||
This file is part of the Notesnook project (https://notesnook.com/)
|
||||
|
||||
Copyright (C) 2023 Streetwriters (Private) Limited
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import { strings } from "@notesnook/intl";
|
||||
import { useThemeColors } from "@notesnook/theme";
|
||||
import React, { useState } from "react";
|
||||
import { View } from "react-native";
|
||||
import { Radius, Spacing } from "../../../common/design/spacing";
|
||||
import { Button } from "../../ui/button";
|
||||
import AppIcon from "../../ui/AppIcon";
|
||||
import { Pressable } from "../../ui/pressable";
|
||||
import Heading from "../../ui/typography/heading";
|
||||
import Paragraph from "../../ui/typography/paragraph";
|
||||
import { AppFontSize } from "../../../utils/size";
|
||||
import { presentSheet, eSendEvent } from "../../../services/event-manager";
|
||||
import { eCloseSheet } from "../../../utils/events";
|
||||
import { sleep } from "../../../utils/time";
|
||||
import { Progress } from "../progress";
|
||||
import Sync from "../../../services/sync";
|
||||
|
||||
type ForceSyncMode = "fetch" | "send";
|
||||
|
||||
type ForceSyncProps = {
|
||||
mode: ForceSyncMode;
|
||||
close?: (ctx?: string) => void;
|
||||
};
|
||||
|
||||
function ForceSync({ mode, close }: ForceSyncProps) {
|
||||
const { colors } = useThemeColors();
|
||||
const [acknowledged, setAcknowledged] = useState(true);
|
||||
|
||||
const onForceSyncPress = async () => {
|
||||
if (!acknowledged) return;
|
||||
|
||||
close?.();
|
||||
await sleep(300);
|
||||
Progress.present();
|
||||
Sync.run("global", true, mode, () => {
|
||||
eSendEvent(eCloseSheet);
|
||||
});
|
||||
};
|
||||
|
||||
const title =
|
||||
mode === "fetch" ? strings.forcePullChanges() : strings.forcePushChanges();
|
||||
const description =
|
||||
mode === "fetch"
|
||||
? strings.forceSyncPullSheetDesc()
|
||||
: strings.forceSyncPushSheetDesc();
|
||||
const actionText =
|
||||
mode === "fetch" ? strings.forcePullAction() : strings.forcePushAction();
|
||||
|
||||
return (
|
||||
<View
|
||||
style={{
|
||||
width: "100%",
|
||||
backgroundColor: colors.primary.background,
|
||||
borderTopLeftRadius: 35,
|
||||
borderTopRightRadius: 35,
|
||||
paddingHorizontal: Spacing.LEVEL_3,
|
||||
paddingTop: Spacing.LEVEL_2,
|
||||
gap: Spacing.LEVEL_3
|
||||
}}
|
||||
>
|
||||
<View
|
||||
style={{
|
||||
flexDirection: "row",
|
||||
alignItems: "flex-start",
|
||||
gap: Spacing.LEVEL_1
|
||||
}}
|
||||
>
|
||||
<View
|
||||
style={{
|
||||
width: 32,
|
||||
height: 32,
|
||||
borderRadius: Radius.XS,
|
||||
alignItems: "center",
|
||||
justifyContent: "center",
|
||||
backgroundColor: colors.error.background
|
||||
}}
|
||||
>
|
||||
<AppIcon
|
||||
name="warning"
|
||||
iconFamily="notesnook"
|
||||
size={16}
|
||||
color={colors.error.accent}
|
||||
/>
|
||||
</View>
|
||||
|
||||
<View
|
||||
style={{
|
||||
flex: 1,
|
||||
gap: Spacing.LEVEL_0
|
||||
}}
|
||||
>
|
||||
<Heading size={AppFontSize.lg} lineHeight="100%">
|
||||
{title}
|
||||
</Heading>
|
||||
<Paragraph size={AppFontSize.xs}>{description}</Paragraph>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
<View
|
||||
style={{
|
||||
height: 1,
|
||||
backgroundColor: colors.primary.border
|
||||
}}
|
||||
/>
|
||||
|
||||
<View
|
||||
style={{
|
||||
gap: Spacing.LEVEL_2
|
||||
}}
|
||||
>
|
||||
<Paragraph size={AppFontSize.sm}>
|
||||
{strings.forceSyncWarningShort()}
|
||||
</Paragraph>
|
||||
<View
|
||||
style={{
|
||||
gap: Spacing.LEVEL_0
|
||||
}}
|
||||
>
|
||||
<Paragraph size={AppFontSize.sm}>
|
||||
{strings.forceSyncNeedHelpContact()}
|
||||
</Paragraph>
|
||||
<Paragraph
|
||||
size={AppFontSize.sm}
|
||||
fontFamily="SEMI_BOLD"
|
||||
color={colors.primary.accent}
|
||||
>
|
||||
support@streetwriters.co
|
||||
</Paragraph>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
<Pressable
|
||||
type="shade"
|
||||
style={{
|
||||
width: "100%",
|
||||
borderRadius: Radius.XS,
|
||||
paddingHorizontal: Spacing.LEVEL_2,
|
||||
paddingVertical: Spacing.LEVEL_1,
|
||||
flexDirection: "row",
|
||||
alignItems: "center",
|
||||
gap: Spacing.LEVEL_1,
|
||||
justifyContent: "flex-start"
|
||||
}}
|
||||
onPress={() => setAcknowledged((value) => !value)}
|
||||
>
|
||||
<AppIcon
|
||||
size={16}
|
||||
name={acknowledged ? "checkbox" : "checkbox-blank-outline"}
|
||||
iconFamily="notesnook"
|
||||
color={
|
||||
acknowledged
|
||||
? [colors.primary.accent, "white"]
|
||||
: colors.primary.icon
|
||||
}
|
||||
/>
|
||||
<Paragraph size={AppFontSize.sm}>
|
||||
{strings.forceSyncRiskAcknowledgement()}
|
||||
</Paragraph>
|
||||
</Pressable>
|
||||
|
||||
<View
|
||||
style={{
|
||||
flexDirection: "row",
|
||||
gap: Spacing.LEVEL_2
|
||||
}}
|
||||
>
|
||||
<Button
|
||||
title={strings.cancel()}
|
||||
type="plain-outline"
|
||||
width="100%"
|
||||
style={{
|
||||
flex: 1,
|
||||
borderRadius: Radius.S
|
||||
}}
|
||||
onPress={() => close?.()}
|
||||
/>
|
||||
|
||||
<Button
|
||||
title={actionText}
|
||||
type="error"
|
||||
width="100%"
|
||||
disabled={!acknowledged}
|
||||
style={{
|
||||
flex: 1,
|
||||
borderRadius: Radius.S,
|
||||
borderColor: colors.error.border
|
||||
}}
|
||||
onPress={onForceSyncPress}
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
ForceSync.present = (mode: ForceSyncMode) => {
|
||||
presentSheet({
|
||||
disableClosing: false,
|
||||
component: (_ref, close) => <ForceSync mode={mode} close={close} />
|
||||
});
|
||||
};
|
||||
|
||||
export default ForceSync;
|
||||
@@ -31,16 +31,14 @@ import {
|
||||
endProgress,
|
||||
startProgress
|
||||
} from "../../../components/dialogs/progress";
|
||||
import { Progress } from "../../../components/sheets/progress";
|
||||
import ForceSyncSheet from "../../../components/sheets/force-sync";
|
||||
import { BackgroundSync } from "../../../services/background-sync";
|
||||
import BiometricService from "../../../services/biometrics";
|
||||
import Navigation from "../../../services/navigation";
|
||||
import PremiumService from "../../../services/premium";
|
||||
import SettingsService from "../../../services/settings";
|
||||
import Sync from "../../../services/sync";
|
||||
import { useSettingStore } from "../../../stores/use-setting-store";
|
||||
import { useUserStore } from "../../../stores/use-user-store";
|
||||
import { sleep } from "../../../utils/time";
|
||||
import {
|
||||
createFormRef,
|
||||
validators
|
||||
@@ -700,20 +698,7 @@ export const accountGroup: SettingSection = {
|
||||
icon: "git-pull-request",
|
||||
iconFamily: "notesnook",
|
||||
modifer: () => {
|
||||
presentDialog({
|
||||
title: strings.forcePullChanges(),
|
||||
paragraph: strings.forceSyncNotice(),
|
||||
negativeText: strings.cancel(),
|
||||
positiveText: strings.start(),
|
||||
positivePress: async () => {
|
||||
eSendEvent(eCloseSheet);
|
||||
await sleep(300);
|
||||
Progress.present();
|
||||
Sync.run("global", true, "fetch", () => {
|
||||
eSendEvent(eCloseSheet);
|
||||
});
|
||||
}
|
||||
});
|
||||
ForceSyncSheet.present("fetch");
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -723,20 +708,7 @@ export const accountGroup: SettingSection = {
|
||||
icon: "arrow-fat-up",
|
||||
iconFamily: "notesnook",
|
||||
modifer: () => {
|
||||
presentDialog({
|
||||
title: strings.forcePushChanges(),
|
||||
paragraph: strings.forceSyncNotice(),
|
||||
negativeText: strings.cancel(),
|
||||
positiveText: strings.start(),
|
||||
positivePress: async () => {
|
||||
eSendEvent(eCloseSheet);
|
||||
await sleep(300);
|
||||
Progress.present();
|
||||
Sync.run("global", true, "send", () => {
|
||||
eSendEvent(eCloseSheet);
|
||||
});
|
||||
}
|
||||
});
|
||||
ForceSyncSheet.present("send");
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"m":{"f":"notesnook-icons","u":1024,"z":1020,"s":59648,"h":"ed87d51c541700d863c75e1c0ba9f42fa7e5f8cc5549f0049cb3931307de6789"},"i":{"archive":[1024,[[59648,"#666666"]]],"arrow-back":[1024,[[59649,"rgba(255,255,255,0.7)"]]],"arrow-counter-clockwise":[1024,[[59650,"var(--fill-0, #181818)"]]],"arrow-fat-up":[1024,[[59651,"var(--fill-0, #181818)"]]],"arrow-u-up-left":[1024,[[59652,"var(--fill-0, #181818)"]]],"arrows-clockwise":[1024,[[59653,"var(--fill-0, #181818)"]]],"bag-simple":[1024,[[59654,"var(--fill-0, #181818)"]]],"bell":[1024,[[59655,"#666666"]]],"book-open":[1024,[[59656,"#666666"]]],"bookmark":[1024,[[59657,"#666666"]]],"box-empty":[1024,[[59658,"#B0B0B1"]]],"bug-droid":[1024,[[59659,"var(--fill-0, #181818)"]]],"calendar":[1024,[[59660,"rgba(102,102,102,0.8)"]]],"chart-line-up":[1024,[[59661,"var(--fill-0, #181818)"]]],"chat":[1024,[[59662,"white"]]],"checkbox":[1024,[[59663,"#008836"],[59664,"white"]]],"checks":[1024,[[59665,"#181818"]]],"chevron-down":[1024,[[59666,"#181818"]]],"chevron-right":[1024,[[59667,"#181818"]]],"chevron-up":[1024,[[59668,"#181818"]]],"clock-counter-clockwise":[1024,[[59669,"var(--fill-0, #181818)"]]],"close":[1024,[[59670,"#666666"]]],"cloud-check":[1024,[[59671,"var(--fill-0, #181818)"]]],"cloud":[1024,[[59672,"white"]]],"dark-mode-outline":[1024,[[59673,"currentColor"]]],"device-mobile-camera":[1024,[[59674,"var(--fill-0, #181818)"]]],"discord-logo":[1024,[[59675,"var(--fill-0, #181818)"]]],"dots-three":[1024,[[59676,"#202020"]]],"download-simple":[1024,[[59677,"var(--fill-0, #181818)"]]],"drive-file-move":[1088,[[59678,"#666666"]]],"edit-pencil":[1024,[[59679,"#181818"]]],"envelope-simple":[1024,[[59680,"white"]]],"export":[1024,[[59681,"var(--fill-0, #181818)"]]],"eye-closed":[1024,[[59682,"white"]]],"eye-open":[1024,[[59683,"currentColor"]]],"eye-slash":[1024,[[59684,"var(--fill-0, #181818)"]]],"file-dashed":[1024,[[59685,"var(--fill-0, #181818)"]]],"file-text":[1024,[[59686,"var(--fill-0, #181818)"]]],"file":[1024,[[59687,"white"]]],"funnel":[1024,[[59688,"#666666"]]],"git-pull-request":[1024,[[59689,"var(--fill-0, #181818)"]]],"github-logo":[1024,[[59690,"var(--fill-0, #181818)"]]],"hard-drives":[1024,[[59691,"var(--fill-0, #181818)"]]],"home":[1024,[[59692,"#181818"]]],"image-outline":[1024,[[59693,"white"]]],"key":[1024,[[59694,"var(--fill-0, #181818)"]]],"link":[560,[[59695,"#666666"]]],"lock-simple":[1024,[[59696,"white"]]],"lock":[1024,[[59697,"#181818"]]],"mastodon-logo":[1024,[[59698,"var(--fill-0, #181818)"]]],"menu":[1024,[[59699,"#181818"]]],"network":[1024,[[59700,"var(--fill-0, #181818)"]]],"note":[1024,[[59701,"#181818"]]],"notification":[1024,[[59702,"var(--fill-0, #181818)"]]],"numpad":[1024,[[59703,"#181818"]]],"paperclip":[1024,[[59704,"var(--fill-0, #181818)"]]],"pause":[1024,[[59705,"var(--fill-0, #181818)"]]],"pencil-simple-line":[1024,[[59706,"var(--fill-0, #181818)"]]],"pin":[939,[[59707,"#666666"]]],"plus":[1024,[[59708,"#666666"]]],"recovery-key-cloud-arrow-down":[1024,[[59709,"var(--fill-0, #181818)"]]],"recovery-key-copy":[1024,[[59710,"var(--stroke-0, #008836)"]]],"recovery-key-file":[1024,[[59711,"var(--fill-0, #181818)"]]],"recovery-key-key":[1024,[[59712,"var(--fill-0, #181818)"]]],"recovery-key-qr-code":[1024,[[59713,"var(--fill-0, #181818)"]]],"recovery-key-shield-check":[1024,[[59714,"var(--fill-0, #008836)"]]],"search":[1024,[[59715,"#181818"]]],"shield-check":[1024,[[59716,"#181818"]]],"shield-plus":[1024,[[59717,"#181818"]]],"shield":[1024,[[59718,"var(--fill-0, #181818)"]]],"shopping-mode":[1024,[[59719,"#666666"]]],"sliders-horizontal":[1024,[[59720,"var(--fill-0, #181818)"]]],"sliders":[1024,[[59721,"#181818"]]],"sort-ascending":[1024,[[59722,"#666666"]]],"sort-descending":[1024,[[59723,"currentColor"]]],"square-out":[1024,[[59724,"#181818"]]],"squares-four":[1024,[[59725,"var(--fill-0, #181818)"]]],"star-filled":[1024,[[59726,"#E5C131"]]],"star":[1024,[[59727,"#666666"]]],"sun":[1024,[[59728,"#666666"]]],"telegram-logo":[1024,[[59729,"var(--fill-0, #181818)"]]],"toggle-off":[1725,[[59730,"#DADADA"]]],"toggle-on":[1725,[[59731,"#008836"]]],"trash":[1024,[[59732,"#666666"]]],"user-circle-minus":[1024,[[59733,"var(--fill-0, #FF242E)"]]],"user-sheet-docs":[1024,[[59734,"var(--fill-0, #181818)"]]],"user-sheet-logout":[1024,[[59735,"var(--fill-0, #FB2C36)"]]],"user-sheet-settings":[1024,[[59736,"var(--fill-0, #181818)"]]],"user-sheet-support":[1024,[[59737,"var(--fill-0, #181818)"]]],"user-sheet-sync":[1024,[[59738,"var(--fill-0, #181818)"]]],"user":[1024,[[59739,"var(--fill-0, #181818)"]]],"users-three":[1024,[[59740,"var(--fill-0, #181818)"]]],"view-list":[1024,[[59741,"#181818"]]],"warning-circle":[1024,[[59742,"#BB3431"]]],"wifi-slash":[1024,[[59743,"var(--fill-0, #181818)"]]],"x-logo":[1024,[[59744,"var(--fill-0, #181818)"]]]}}
|
||||
{"m":{"f":"notesnook-icons","u":1024,"z":1020,"s":59648,"h":"42fd4adb550e2c0df8b932f88fd05d03b5ff8bc2aae46ac9c4eea6b1812d3e7a"},"i":{"archive":[1024,[[59648,"#666666"]]],"arrow-back":[1024,[[59649,"rgba(255,255,255,0.7)"]]],"arrow-counter-clockwise":[1024,[[59650,"var(--fill-0, #181818)"]]],"arrow-fat-up":[1024,[[59651,"var(--fill-0, #181818)"]]],"arrow-u-up-left":[1024,[[59652,"var(--fill-0, #181818)"]]],"arrows-clockwise":[1024,[[59653,"var(--fill-0, #181818)"]]],"bag-simple":[1024,[[59654,"var(--fill-0, #181818)"]]],"bell":[1024,[[59655,"#666666"]]],"book-open":[1024,[[59656,"#666666"]]],"bookmark":[1024,[[59657,"#666666"]]],"box-empty":[1024,[[59658,"#B0B0B1"]]],"bug-droid":[1024,[[59659,"var(--fill-0, #181818)"]]],"calendar":[1024,[[59660,"rgba(102,102,102,0.8)"]]],"chart-line-up":[1024,[[59661,"var(--fill-0, #181818)"]]],"chat":[1024,[[59662,"white"]]],"checkbox":[1024,[[59663,"#008836"],[59664,"white"]]],"checks":[1024,[[59665,"#181818"]]],"chevron-down":[1024,[[59666,"#181818"]]],"chevron-right":[1024,[[59667,"#181818"]]],"chevron-up":[1024,[[59668,"#181818"]]],"clock-counter-clockwise":[1024,[[59669,"var(--fill-0, #181818)"]]],"close":[1024,[[59670,"#666666"]]],"cloud-check":[1024,[[59671,"var(--fill-0, #181818)"]]],"cloud":[1024,[[59672,"white"]]],"dark-mode-outline":[1024,[[59673,"currentColor"]]],"device-mobile-camera":[1024,[[59674,"var(--fill-0, #181818)"]]],"discord-logo":[1024,[[59675,"var(--fill-0, #181818)"]]],"dots-three":[1024,[[59676,"#202020"]]],"download-simple":[1024,[[59677,"var(--fill-0, #181818)"]]],"drive-file-move":[1088,[[59678,"#666666"]]],"edit-pencil":[1024,[[59679,"#181818"]]],"envelope-simple":[1024,[[59680,"white"]]],"export":[1024,[[59681,"var(--fill-0, #181818)"]]],"eye-closed":[1024,[[59682,"white"]]],"eye-open":[1024,[[59683,"currentColor"]]],"eye-slash":[1024,[[59684,"var(--fill-0, #181818)"]]],"file-dashed":[1024,[[59685,"var(--fill-0, #181818)"]]],"file-text":[1024,[[59686,"var(--fill-0, #181818)"]]],"file":[1024,[[59687,"white"]]],"funnel":[1024,[[59688,"#666666"]]],"git-pull-request":[1024,[[59689,"var(--fill-0, #181818)"]]],"github-logo":[1024,[[59690,"var(--fill-0, #181818)"]]],"hard-drives":[1024,[[59691,"var(--fill-0, #181818)"]]],"home":[1024,[[59692,"#181818"]]],"image-outline":[1024,[[59693,"white"]]],"key":[1024,[[59694,"var(--fill-0, #181818)"]]],"link":[560,[[59695,"#666666"]]],"lock-simple":[1024,[[59696,"white"]]],"lock":[1024,[[59697,"#181818"]]],"mastodon-logo":[1024,[[59698,"var(--fill-0, #181818)"]]],"menu":[1024,[[59699,"#181818"]]],"network":[1024,[[59700,"var(--fill-0, #181818)"]]],"note":[1024,[[59701,"#181818"]]],"notification":[1024,[[59702,"var(--fill-0, #181818)"]]],"numpad":[1024,[[59703,"#181818"]]],"paperclip":[1024,[[59704,"var(--fill-0, #181818)"]]],"pause":[1024,[[59705,"var(--fill-0, #181818)"]]],"pencil-simple-line":[1024,[[59706,"var(--fill-0, #181818)"]]],"pin":[939,[[59707,"#666666"]]],"plus":[1024,[[59708,"#666666"]]],"recovery-key-cloud-arrow-down":[1024,[[59709,"var(--fill-0, #181818)"]]],"recovery-key-copy":[1024,[[59710,"var(--stroke-0, #008836)"]]],"recovery-key-file":[1024,[[59711,"var(--fill-0, #181818)"]]],"recovery-key-key":[1024,[[59712,"var(--fill-0, #181818)"]]],"recovery-key-qr-code":[1024,[[59713,"var(--fill-0, #181818)"]]],"recovery-key-shield-check":[1024,[[59714,"var(--fill-0, #008836)"]]],"search":[1024,[[59715,"#181818"]]],"shield-check":[1024,[[59716,"#181818"]]],"shield-plus":[1024,[[59717,"#181818"]]],"shield":[1024,[[59718,"var(--fill-0, #181818)"]]],"shopping-mode":[1024,[[59719,"#666666"]]],"sliders-horizontal":[1024,[[59720,"var(--fill-0, #181818)"]]],"sliders":[1024,[[59721,"#181818"]]],"sort-ascending":[1024,[[59722,"#666666"]]],"sort-descending":[1024,[[59723,"currentColor"]]],"square-out":[1024,[[59724,"#181818"]]],"squares-four":[1024,[[59725,"var(--fill-0, #181818)"]]],"star-filled":[1024,[[59726,"#E5C131"]]],"star":[1024,[[59727,"#666666"]]],"sun":[1024,[[59728,"#666666"]]],"telegram-logo":[1024,[[59729,"var(--fill-0, #181818)"]]],"toggle-off":[1725,[[59730,"#DADADA"]]],"toggle-on":[1725,[[59731,"#008836"]]],"trash":[1024,[[59732,"#666666"]]],"user-circle-minus":[1024,[[59733,"var(--fill-0, #FF242E)"]]],"user-sheet-docs":[1024,[[59734,"var(--fill-0, #181818)"]]],"user-sheet-logout":[1024,[[59735,"var(--fill-0, #FB2C36)"]]],"user-sheet-settings":[1024,[[59736,"var(--fill-0, #181818)"]]],"user-sheet-support":[1024,[[59737,"var(--fill-0, #181818)"]]],"user-sheet-sync":[1024,[[59738,"var(--fill-0, #181818)"]]],"user":[1024,[[59739,"var(--fill-0, #181818)"]]],"users-three":[1024,[[59740,"var(--fill-0, #181818)"]]],"view-list":[1024,[[59741,"#181818"]]],"warning-circle":[1024,[[59742,"#BB3431"]]],"warning":[1024,[[59743,"#FF242E"]]],"wifi-slash":[1024,[[59744,"var(--fill-0, #181818)"]]],"x-logo":[1024,[[59745,"var(--fill-0, #181818)"]]]}}
|
||||
3
packages/icons/svgs/warning.svg
Executable file
3
packages/icons/svgs/warning.svg
Executable file
@@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M14.8001 11.7557L9.33444 2.26379C9.19785 2.03124 9.00287 1.83843 8.76881 1.70445C8.53476 1.57048 8.26975 1.5 8.00006 1.5C7.73037 1.5 7.46536 1.57048 7.23131 1.70445C6.99725 1.83843 6.80227 2.03124 6.66569 2.26379L1.20006 11.7557C1.06865 11.9806 0.99939 12.2364 0.99939 12.4969C0.99939 12.7574 1.06865 13.0132 1.20006 13.2382C1.33489 13.4721 1.52954 13.666 1.76404 13.7999C1.99853 13.9338 2.26442 14.0028 2.53444 14H13.4657C13.7355 14.0026 14.0011 13.9334 14.2354 13.7996C14.4696 13.6657 14.6641 13.4719 14.7988 13.2382C14.9304 13.0134 14.9999 12.7576 15.0001 12.4971C15.0003 12.2366 14.9313 11.9807 14.8001 11.7557ZM13.9332 12.7375C13.8855 12.8188 13.8171 12.886 13.735 12.9321C13.6528 12.9782 13.5599 13.0017 13.4657 13H2.53444C2.44023 13.0017 2.34729 12.9782 2.26514 12.9321C2.18299 12.886 2.11458 12.8188 2.06694 12.7375C2.02378 12.6645 2.00101 12.5812 2.00101 12.4963C2.00101 12.4114 2.02378 12.3281 2.06694 12.255L7.53256 2.76317C7.58117 2.68227 7.64989 2.61534 7.73203 2.56887C7.81417 2.5224 7.90694 2.49797 8.00131 2.49797C8.09568 2.49797 8.18845 2.5224 8.27059 2.56887C8.35273 2.61534 8.42145 2.68227 8.47006 2.76317L13.9357 12.255C13.9785 12.3283 14.0008 12.4118 14.0004 12.4966C13.9999 12.5815 13.9767 12.6647 13.9332 12.7375ZM7.50006 9.00004V6.50004C7.50006 6.36743 7.55274 6.24026 7.64651 6.14649C7.74027 6.05272 7.86745 6.00004 8.00006 6.00004C8.13267 6.00004 8.25985 6.05272 8.35361 6.14649C8.44738 6.24026 8.50006 6.36743 8.50006 6.50004V9.00004C8.50006 9.13265 8.44738 9.25983 8.35361 9.35359C8.25985 9.44736 8.13267 9.50004 8.00006 9.50004C7.86745 9.50004 7.74027 9.44736 7.64651 9.35359C7.55274 9.25983 7.50006 9.13265 7.50006 9.00004ZM8.75006 11.25C8.75006 11.3984 8.70607 11.5434 8.62366 11.6667C8.54125 11.7901 8.42412 11.8862 8.28707 11.943C8.15003 11.9997 7.99923 12.0146 7.85374 11.9856C7.70826 11.9567 7.57462 11.8853 7.46973 11.7804C7.36484 11.6755 7.29341 11.5418 7.26447 11.3964C7.23553 11.2509 7.25038 11.1001 7.30715 10.963C7.36392 10.826 7.46005 10.7088 7.58338 10.6264C7.70672 10.544 7.85172 10.5 8.00006 10.5C8.19897 10.5 8.38974 10.5791 8.53039 10.7197C8.67104 10.8604 8.75006 11.0511 8.75006 11.25Z" fill="#FF242E"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.2 KiB |
@@ -3264,10 +3264,18 @@ msgstr "for locking your notes as soon as app enters background"
|
||||
msgid "Force logout from all your other logged in devices."
|
||||
msgstr "Force logout from all your other logged in devices."
|
||||
|
||||
#: src/strings.ts:2808
|
||||
msgid "Force Pull"
|
||||
msgstr "Force Pull"
|
||||
|
||||
#: src/strings.ts:1114
|
||||
msgid "Force pull changes"
|
||||
msgstr "Force pull changes"
|
||||
|
||||
#: src/strings.ts:2809
|
||||
msgid "Force Push"
|
||||
msgstr "Force Push"
|
||||
|
||||
#: src/strings.ts:1123
|
||||
msgid "Force push changes"
|
||||
msgstr "Force push changes"
|
||||
@@ -3467,6 +3475,10 @@ msgstr "Group by"
|
||||
msgid "Hash copied"
|
||||
msgstr "Hash copied"
|
||||
|
||||
#: src/strings.ts:2816
|
||||
msgid "Having issues? Contact"
|
||||
msgstr "Having issues? Contact"
|
||||
|
||||
#: src/strings.ts:2242
|
||||
msgid "Having problems with sync?"
|
||||
msgstr "Having problems with sync?"
|
||||
@@ -3579,6 +3591,10 @@ msgstr "I love cooking and collecting recipes."
|
||||
msgid "I understand"
|
||||
msgstr "I understand"
|
||||
|
||||
#: src/strings.ts:2817
|
||||
msgid "I understand the risks"
|
||||
msgstr "I understand the risks"
|
||||
|
||||
#: src/strings.ts:551
|
||||
msgid "I understand, change my password"
|
||||
msgstr "I understand, change my password"
|
||||
@@ -7126,6 +7142,14 @@ msgstr "This version of Notesnook app does not support in-app purchases. Kindly
|
||||
msgid "This will clear all data stored on THIS DEVICE. Make sure to run sync before logging out."
|
||||
msgstr "This will clear all data stored on THIS DEVICE. Make sure to run sync before logging out."
|
||||
|
||||
#: src/strings.ts:2813
|
||||
msgid "This will overwrite all data on the server with the data from this device."
|
||||
msgstr "This will overwrite all data on the server with the data from this device."
|
||||
|
||||
#: src/strings.ts:2811
|
||||
msgid "This will overwrite all data on this device with the data from the server."
|
||||
msgstr "This will overwrite all data on this device with the data from the server."
|
||||
|
||||
#: src/strings.ts:626
|
||||
msgid "Thu"
|
||||
msgstr "Thu"
|
||||
@@ -7562,6 +7586,10 @@ msgstr "Use this if changes from other devices are not appearing on this device.
|
||||
msgid "Use this if changes made on this device are not appearing on other devices. This will overwrite the data on the server with the data from this device."
|
||||
msgstr "Use this if changes made on this device are not appearing on other devices. This will overwrite the data on the server with the data from this device."
|
||||
|
||||
#: src/strings.ts:2815
|
||||
msgid "Use this only for troubleshooting sync issues. Regular use may lead to data loss or conflicts."
|
||||
msgstr "Use this only for troubleshooting sync issues. Regular use may lead to data loss or conflicts."
|
||||
|
||||
#: src/strings.ts:2507
|
||||
msgid "used"
|
||||
msgstr "used"
|
||||
|
||||
@@ -3253,10 +3253,18 @@ msgstr ""
|
||||
msgid "Force logout from all your other logged in devices."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2808
|
||||
msgid "Force Pull"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:1114
|
||||
msgid "Force pull changes"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2809
|
||||
msgid "Force Push"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:1123
|
||||
msgid "Force push changes"
|
||||
msgstr ""
|
||||
@@ -3449,6 +3457,10 @@ msgstr ""
|
||||
msgid "Hash copied"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2816
|
||||
msgid "Having issues? Contact"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2242
|
||||
msgid "Having problems with sync?"
|
||||
msgstr ""
|
||||
@@ -3561,6 +3573,10 @@ msgstr ""
|
||||
msgid "I understand"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2817
|
||||
msgid "I understand the risks"
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:551
|
||||
msgid "I understand, change my password"
|
||||
msgstr ""
|
||||
@@ -7085,6 +7101,14 @@ msgstr ""
|
||||
msgid "This will clear all data stored on THIS DEVICE. Make sure to run sync before logging out."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2813
|
||||
msgid "This will overwrite all data on the server with the data from this device."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2811
|
||||
msgid "This will overwrite all data on this device with the data from the server."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:626
|
||||
msgid "Thu"
|
||||
msgstr ""
|
||||
@@ -7512,6 +7536,10 @@ msgstr ""
|
||||
msgid "Use this if changes made on this device are not appearing on other devices. This will overwrite the data on the server with the data from this device."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2815
|
||||
msgid "Use this only for troubleshooting sync issues. Regular use may lead to data loss or conflicts."
|
||||
msgstr ""
|
||||
|
||||
#: src/strings.ts:2507
|
||||
msgid "used"
|
||||
msgstr ""
|
||||
|
||||
@@ -2856,5 +2856,15 @@ Continue without attachments?`,
|
||||
remind: () => t`Remind before your trial ends`,
|
||||
yourSecurityIsPriority: () => `Your security is our priority`,
|
||||
enterYourPassword: () => t`Enter your password`,
|
||||
yourRecoveryKey: () => t`Your recovery key`
|
||||
yourRecoveryKey: () => t`Your recovery key`,
|
||||
forcePullAction: () => t`Force Pull`,
|
||||
forcePushAction: () => t`Force Push`,
|
||||
forceSyncPullSheetDesc: () =>
|
||||
t`This will overwrite all data on this device with the data from the server.`,
|
||||
forceSyncPushSheetDesc: () =>
|
||||
t`This will overwrite all data on the server with the data from this device.`,
|
||||
forceSyncWarningShort: () =>
|
||||
t`Use this only for troubleshooting sync issues. Regular use may lead to data loss or conflicts.`,
|
||||
forceSyncNeedHelpContact: () => t`Having issues? Contact`,
|
||||
forceSyncRiskAcknowledgement: () => t`I understand the risks`
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user