mirror of
https://github.com/standardnotes/mobile.git
synced 2026-04-19 05:39:20 -04:00
Merge branch 'develop' into feature/actions
This commit is contained in:
@@ -300,9 +300,9 @@ PODS:
|
||||
- RNZipArchive/Core (6.0.2):
|
||||
- React-Core
|
||||
- SSZipArchive (= 2.2.3)
|
||||
- sn-textview (1.0.0):
|
||||
- sn-textview (1.0.1):
|
||||
- React-Core
|
||||
- SNReactNative (1.0.0):
|
||||
- SNReactNative (1.0.1):
|
||||
- React-Core
|
||||
- SSZipArchive (2.2.3)
|
||||
- TrustKit (1.6.5)
|
||||
@@ -532,8 +532,8 @@ SPEC CHECKSUMS:
|
||||
RNSVG: 1a8855adeb20c5beb0a808281608315fc1092d15
|
||||
RNVectorIcons: bc69e6a278b14842063605de32bec61f0b251a59
|
||||
RNZipArchive: 3dd2de5b7f590d79e83270508b78870bf5a54f36
|
||||
sn-textview: 43135d1feb6e97994b8475b6a1e6e3c902d6b189
|
||||
SNReactNative: 3fa6096f78bea7dbd329c897ee854f73666d20db
|
||||
sn-textview: 0211237b3e0edeeb23aed2a9c47b78af35a81e95
|
||||
SNReactNative: b5e9e529c175c13f3a618e27c76cf3071213d5e1
|
||||
SSZipArchive: 62d4947b08730e4cda640473b0066d209ff033c9
|
||||
TrustKit: 073855e3adecd317417bda4ac9e9ac54a2e3b9f2
|
||||
Yoga: 4bd86afe9883422a7c4028c00e34790f560923d6
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
83DCC09F24C0A21200D58E1B /* Red@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8343BD69244F211C0020E9F0 /* Red@2x.png */; };
|
||||
83DCC0A024C0A21200D58E1B /* Red@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8343BD68244F211C0020E9F0 /* Red@3x.png */; };
|
||||
83F9431824C1EBC5007014C8 /* Dev.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 83F9431724C1EBC5007014C8 /* Dev.xcassets */; };
|
||||
9472713467B26799E9270592 /* Pods_StandardNotes.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 892691A10E7D83241BCA16C1 /* Pods_StandardNotes.framework */; };
|
||||
EC7C2A984CBC86DBCA44D3AF /* libPods-StandardNotes.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D9673D75406FE1C6B945FF8 /* libPods-StandardNotes.a */; };
|
||||
F1AF40B6D465714940D457A3 /* libPods-StandardNotesDev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 340672DE690D292C12CF8DF2 /* libPods-StandardNotesDev.a */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = StandardNotes/Info.plist; sourceTree = "<group>"; };
|
||||
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = StandardNotes/main.m; sourceTree = "<group>"; };
|
||||
340672DE690D292C12CF8DF2 /* libPods-StandardNotesDev.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-StandardNotesDev.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
4D9673D75406FE1C6B945FF8 /* libPods-StandardNotes.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-StandardNotes.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
810594E7EAEF139BFC2FDD3B /* Pods-StandardNotes.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-StandardNotes.release.xcconfig"; path = "Target Support Files/Pods-StandardNotes/Pods-StandardNotes.release.xcconfig"; sourceTree = "<group>"; };
|
||||
8343BD67244F211C0020E9F0 /* Red.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Red.png; sourceTree = "<group>"; };
|
||||
8343BD68244F211C0020E9F0 /* Red@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Red@3x.png"; sourceTree = "<group>"; };
|
||||
@@ -61,7 +62,6 @@
|
||||
83E99B1D24EC4EC5007B8F21 /* SN Dev.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "SN Dev.entitlements"; sourceTree = "<group>"; };
|
||||
83E99B1E24EC9953007B8F21 /* StandardNotes.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = StandardNotes.entitlements; path = StandardNotes/StandardNotes.entitlements; sourceTree = "<group>"; };
|
||||
83F9431724C1EBC5007014C8 /* Dev.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Dev.xcassets; sourceTree = "<group>"; };
|
||||
892691A10E7D83241BCA16C1 /* Pods_StandardNotes.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_StandardNotes.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
91D5BC0CD8D03CC85FE2AAD4 /* Pods-StandardNotesDev.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-StandardNotesDev.debug.xcconfig"; path = "Target Support Files/Pods-StandardNotesDev/Pods-StandardNotesDev.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
A905072699998C893CF2B50C /* Pods-StandardNotes.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-StandardNotes.debug.xcconfig"; path = "Target Support Files/Pods-StandardNotes/Pods-StandardNotes.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
CB9B9DBF83F519AB6584F5FE /* Pods-StandardNotesDev.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-StandardNotesDev.release.xcconfig"; path = "Target Support Files/Pods-StandardNotesDev/Pods-StandardNotesDev.release.xcconfig"; sourceTree = "<group>"; };
|
||||
@@ -81,7 +81,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
9472713467B26799E9270592 /* Pods_StandardNotes.framework in Frameworks */,
|
||||
EC7C2A984CBC86DBCA44D3AF /* libPods-StandardNotes.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -138,7 +138,7 @@
|
||||
ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
|
||||
ED2971642150620600B7C4FE /* JavaScriptCore.framework */,
|
||||
340672DE690D292C12CF8DF2 /* libPods-StandardNotesDev.a */,
|
||||
892691A10E7D83241BCA16C1 /* Pods_StandardNotes.framework */,
|
||||
4D9673D75406FE1C6B945FF8 /* libPods-StandardNotes.a */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
@@ -220,7 +220,7 @@
|
||||
13B07F8C1A680F5B00A75B9A /* Frameworks */,
|
||||
13B07F8E1A680F5B00A75B9A /* Resources */,
|
||||
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
|
||||
94C763DAAEF98E4BE76E8F53 /* [CP] Embed Pods Frameworks */,
|
||||
1DCF3C40742945E814110BC4 /* [CP] Copy Pods Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -349,6 +349,56 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh";
|
||||
};
|
||||
1DCF3C40742945E814110BC4 /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-StandardNotes/Pods-StandardNotes-resources.sh",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf",
|
||||
"${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf",
|
||||
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-StandardNotes/Pods-StandardNotes-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
22CF5F27C67390DA618B03A3 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -394,7 +444,7 @@
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf",
|
||||
"${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf",
|
||||
"${PODS_CONFIGURATION_BUILD_DIR}/React-Core-library/AccessibilityResources.bundle",
|
||||
"${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputPaths = (
|
||||
@@ -454,116 +504,6 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n";
|
||||
};
|
||||
94C763DAAEF98E4BE76E8F53 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-StandardNotes/Pods-StandardNotes-frameworks.sh",
|
||||
"${BUILT_PRODUCTS_DIR}/TrustKit-framework/TrustKit.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/BugsnagReactNative-framework/Bugsnag.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/DoubleConversion-framework/DoubleConversion.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/FBReactNativeSpec-framework/FBReactNativeSpec.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/Folly-framework/folly.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RCTTypeSafety-framework/RCTTypeSafety.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNCAsyncStorage-framework/RNCAsyncStorage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNCMaskedView-framework/RNCMaskedView.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNDefaultPreference-framework/RNDefaultPreference.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNFS-framework/RNFS.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNFileViewer-framework/RNFileViewer.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNGestureHandler-framework/RNGestureHandler.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNKeychain-framework/RNKeychain.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNPrivacySnapshot-framework/RNPrivacySnapshot.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNReanimated-framework/RNReanimated.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNScreens-framework/RNScreens.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNSearchBar-framework/RNSearchBar.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNStoreReview-framework/RNStoreReview.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/RNVectorIcons-framework/RNVectorIcons.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-Core-framework/React.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-CoreModules-framework/CoreModules.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTAnimation-framework/RCTAnimation.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTBlob-framework/RCTBlob.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTImage-framework/RCTImage.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTLinking-framework/RCTLinking.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTNetwork-framework/RCTNetwork.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTSettings-framework/RCTSettings.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTText-framework/RCTText.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-RCTVibration-framework/RCTVibration.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-cxxreact-framework/cxxreact.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-jsi-framework/jsi.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-jsiexecutor-framework/jsireact.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/React-jsinspector-framework/jsinspector.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/ReactCommon-framework/ReactCommon.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/ReactNativeAlternateIcons-framework/ReactNativeAlternateIcons.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/SNReactNative-framework/SNReactNative.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/Yoga-framework/yoga.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/glog-framework/glog.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-aes-framework/react_native_aes.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-fingerprint-scanner-framework/react_native_fingerprint_scanner.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-mail-framework/react_native_mail.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-safe-area-context-framework/react_native_safe_area_context.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-segmented-control-framework/react_native_segmented_control.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-sodium-framework/react_native_sodium.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-version-info-framework/react_native_version_info.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/react-native-webview-framework/react_native_webview.framework",
|
||||
"${BUILT_PRODUCTS_DIR}/sn-textview-framework/sn_textview.framework",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/TrustKit.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Bugsnag.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DoubleConversion.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBReactNativeSpec.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/folly.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTTypeSafety.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNCAsyncStorage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNCMaskedView.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNDefaultPreference.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNFS.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNFileViewer.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNGestureHandler.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNKeychain.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNPrivacySnapshot.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNReanimated.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNScreens.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNSearchBar.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNStoreReview.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RNVectorIcons.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/React.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/CoreModules.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTAnimation.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTBlob.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTImage.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTLinking.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTNetwork.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTSettings.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTText.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RCTVibration.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/cxxreact.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/jsi.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/jsireact.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/jsinspector.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ReactCommon.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ReactNativeAlternateIcons.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SNReactNative.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/yoga.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/glog.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_aes.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_fingerprint_scanner.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_mail.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_safe_area_context.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_segmented_control.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_sodium.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_version_info.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/react_native_webview.framework",
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/sn_textview.framework",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-StandardNotes/Pods-StandardNotes-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
E5E35654B81EF4E64AB5D97C /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
"@react-navigation/native": "^5.9.3",
|
||||
"@react-navigation/stack": "^5.14.3",
|
||||
"@standardnotes/sncrypto-common": "1.2.9",
|
||||
"@standardnotes/snjs": "2.0.72",
|
||||
"@standardnotes/snjs": "2.0.75",
|
||||
"js-base64": "^3.5.2",
|
||||
"moment": "^2.29.1",
|
||||
"react": "16.13.1",
|
||||
@@ -58,8 +58,8 @@
|
||||
"react-native-webview": "^11.0.3",
|
||||
"react-native-zip-archive": "^6.0.2",
|
||||
"react-navigation-header-buttons": "^6.0.2",
|
||||
"sn-textview": "standardnotes/sn-textview#3b56f5c2c87c24370f00ee5a0cee0da9a9fc66c3",
|
||||
"standard-notes-rn": "standardnotes/standard-notes-rn#996b016",
|
||||
"sn-textview": "standardnotes/sn-textview#14cd6fded5c746569a9c6c365d2edc41913811bb",
|
||||
"standard-notes-rn": "standardnotes/standard-notes-rn#d8e5c21b049dd4b97006688617736efbdb7dc4e7",
|
||||
"styled-components": "^5.2.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -138,7 +138,7 @@ export class MobileApplication extends SNApplication {
|
||||
return this.MobileServices.backupsService;
|
||||
}
|
||||
|
||||
public getPrefsService() {
|
||||
public getLocalPreferences() {
|
||||
return this.MobileServices.prefsService;
|
||||
}
|
||||
|
||||
|
||||
@@ -96,6 +96,7 @@ export class ApplicationState extends ApplicationService {
|
||||
keyboardDidHideListener?: EmitterSubscription;
|
||||
keyboardHeight?: number;
|
||||
appEventObersever: any;
|
||||
selectedTagRestored = false;
|
||||
selectedTag: SNTag = this.application.getSmartTags()[0];
|
||||
userPreferences?: SNUserPrefs;
|
||||
tabletMode: boolean = false;
|
||||
@@ -146,24 +147,33 @@ export class ApplicationState extends ApplicationService {
|
||||
this.keyboardDidHideListener = undefined;
|
||||
}
|
||||
|
||||
restoreSelectedTag() {
|
||||
if (this.selectedTagRestored) {
|
||||
return;
|
||||
}
|
||||
const savedTagUuid: string | undefined = this.prefService.getValue(
|
||||
PrefKey.SelectedTagUuid,
|
||||
undefined
|
||||
);
|
||||
|
||||
if (isNullOrUndefined(savedTagUuid)) {
|
||||
this.selectedTagRestored = true;
|
||||
return;
|
||||
}
|
||||
|
||||
const savedTag =
|
||||
(this.application.findItem(savedTagUuid) as SNTag) ||
|
||||
this.application.getSmartTags().find(tag => tag.uuid === savedTagUuid);
|
||||
if (savedTag) {
|
||||
this.setSelectedTag(savedTag, false);
|
||||
this.selectedTagRestored = true;
|
||||
}
|
||||
}
|
||||
|
||||
async onAppStart() {
|
||||
this.removePreferencesLoadedListener = this.prefService.addPreferencesLoadedObserver(
|
||||
() => {
|
||||
this.notifyOfStateChange(AppStateType.PreferencesChanged);
|
||||
const savedTagUuid: string | undefined = this.prefService.getValue(
|
||||
PrefKey.SelectedTagUuid,
|
||||
undefined
|
||||
);
|
||||
|
||||
const savedTag = !isNullOrUndefined(savedTagUuid)
|
||||
? (this.application.findItem(savedTagUuid) as SNTag) ||
|
||||
this.application
|
||||
.getSmartTags()
|
||||
.find(tag => tag.uuid === savedTagUuid)
|
||||
: undefined;
|
||||
if (savedTag) {
|
||||
this.setSelectedTag(savedTag, false);
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
@@ -380,11 +390,21 @@ export class ApplicationState extends ApplicationService {
|
||||
private handleApplicationEvents() {
|
||||
this.appEventObersever = this.application.addEventObserver(
|
||||
async eventName => {
|
||||
if (eventName === ApplicationEvent.Started) {
|
||||
this.locked = true;
|
||||
} else if (eventName === ApplicationEvent.Launched) {
|
||||
this.locked = false;
|
||||
this.notifyLockStateObservers(LockStateType.Unlocked);
|
||||
switch (eventName) {
|
||||
case ApplicationEvent.LocalDataIncrementalLoad:
|
||||
case ApplicationEvent.LocalDataLoaded: {
|
||||
this.restoreSelectedTag();
|
||||
break;
|
||||
}
|
||||
case ApplicationEvent.Started: {
|
||||
this.locked = true;
|
||||
break;
|
||||
}
|
||||
case ApplicationEvent.Launched: {
|
||||
this.locked = false;
|
||||
this.notifyLockStateObservers(LockStateType.Unlocked);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
@@ -393,8 +413,8 @@ export class ApplicationState extends ApplicationService {
|
||||
/**
|
||||
* Set selected @SNTag
|
||||
*/
|
||||
public setSelectedTag(tag: SNTag, saveSelection: boolean) {
|
||||
if (this.selectedTag === tag) {
|
||||
public setSelectedTag(tag: SNTag, saveSelection: boolean = true) {
|
||||
if (this.selectedTag.uuid === tag.uuid) {
|
||||
return;
|
||||
}
|
||||
const previousTag = this.selectedTag;
|
||||
@@ -402,7 +422,7 @@ export class ApplicationState extends ApplicationService {
|
||||
|
||||
if (saveSelection) {
|
||||
this.application
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.SelectedTagUuid, tag.uuid);
|
||||
}
|
||||
|
||||
@@ -675,7 +695,7 @@ export class ApplicationState extends ApplicationService {
|
||||
}
|
||||
|
||||
private get prefService() {
|
||||
return this.application.getPrefsService();
|
||||
return this.application.getLocalPreferences();
|
||||
}
|
||||
|
||||
public getEnvironment() {
|
||||
|
||||
@@ -158,10 +158,8 @@ export const useSyncStatus = () => {
|
||||
const [refreshing, setRefreshing] = React.useState(false);
|
||||
|
||||
const setStatus = useCallback(
|
||||
(status?: string, color?: string) => {
|
||||
application
|
||||
?.getStatusManager()
|
||||
.setMessage(SCREEN_NOTES, status ?? '', color);
|
||||
(status = '', color?: string) => {
|
||||
application?.getStatusManager().setMessage(SCREEN_NOTES, status, color);
|
||||
},
|
||||
[application]
|
||||
);
|
||||
@@ -173,11 +171,16 @@ export const useSyncStatus = () => {
|
||||
application!.isEncryptionAvailable() &&
|
||||
application!.getStorageEncryptionPolicy() ===
|
||||
StorageEncryptionPolicies.Default;
|
||||
if (stats.localDataDone) {
|
||||
|
||||
if (
|
||||
stats.localDataCurrent === 0 ||
|
||||
stats.localDataTotal === 0 ||
|
||||
stats.localDataDone
|
||||
) {
|
||||
setStatus();
|
||||
return;
|
||||
}
|
||||
const notesString = `${stats.localDataCurrent}/${stats.localDataTotal} items...`;
|
||||
const notesString = `${stats.localDataCurrent}/${stats.localDataTotal} items…`;
|
||||
const loadingStatus = encryption
|
||||
? `Decrypting ${notesString}`
|
||||
: `Loading ${notesString}`;
|
||||
@@ -213,7 +216,9 @@ export const useSyncStatus = () => {
|
||||
setStatus(
|
||||
`Syncing ${stats.uploadCompletionCount}/${stats.uploadTotalCount} items...`
|
||||
);
|
||||
} else if (!syncStatus.syncInProgress) {
|
||||
} else if (syncStatus.syncInProgress) {
|
||||
setStatus('Syncing…');
|
||||
} else {
|
||||
setStatus();
|
||||
}
|
||||
}, [application, setStatus]);
|
||||
@@ -232,10 +237,6 @@ export const useSyncStatus = () => {
|
||||
setDecrypting(false);
|
||||
setLoading(false);
|
||||
updateLocalDataStatus();
|
||||
} else if (eventName === ApplicationEvent.WillSync) {
|
||||
if (application.hasAccount() && !completedInitialSync) {
|
||||
setStatus('Syncing...');
|
||||
}
|
||||
} else if (eventName === ApplicationEvent.CompletedFullSync) {
|
||||
if (
|
||||
!completedInitialSync ||
|
||||
|
||||
@@ -92,7 +92,7 @@ export const ComponentView = ({
|
||||
useEffect(() => {
|
||||
const warnUnsupportedEditors = async () => {
|
||||
const doNotShowAgainUnsupportedEditors = application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.getValue(PrefKey.DoNotShowAgainUnsupportedEditors, false);
|
||||
if (!doNotShowAgainUnsupportedEditors) {
|
||||
const confirmed = await application?.alertService?.confirm(
|
||||
@@ -104,7 +104,7 @@ export const ComponentView = ({
|
||||
);
|
||||
if (confirmed) {
|
||||
application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.DoNotShowAgainUnsupportedEditors, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,7 +89,12 @@ export class Compose extends React.Component<{}, State> {
|
||||
{
|
||||
title: newNote.title,
|
||||
},
|
||||
() => this.reloadComponentEditorState()
|
||||
() => {
|
||||
this.reloadComponentEditorState();
|
||||
if (newNote.dirty) {
|
||||
this.showSavingStatus();
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
@@ -105,14 +110,15 @@ export class Compose extends React.Component<{}, State> {
|
||||
this.setState({ title: newNote.title });
|
||||
}
|
||||
|
||||
if (newNote.lastSyncBegan) {
|
||||
if (newNote.lastSyncBegan || newNote.dirty) {
|
||||
if (newNote.lastSyncEnd) {
|
||||
if (
|
||||
newNote.lastSyncBegan?.getTime() > newNote.lastSyncEnd.getTime()
|
||||
newNote.dirty ||
|
||||
newNote.lastSyncBegan!.getTime() > newNote.lastSyncEnd.getTime()
|
||||
) {
|
||||
this.showSavingStatus();
|
||||
} else if (
|
||||
newNote.lastSyncEnd.getTime() > newNote.lastSyncBegan.getTime()
|
||||
newNote.lastSyncEnd.getTime() > newNote.lastSyncBegan!.getTime()
|
||||
) {
|
||||
this.showAllChangesSavedStatus();
|
||||
}
|
||||
@@ -222,6 +228,9 @@ export class Compose extends React.Component<{}, State> {
|
||||
this.removeComponentGroupObserver = undefined;
|
||||
this.removeEditorNoteChangeObserver = undefined;
|
||||
this.removeEditorNoteValueChangeObserver = undefined;
|
||||
if (this.editor) {
|
||||
this.context?.editorGroup?.closeEditor(this.editor);
|
||||
}
|
||||
|
||||
this.context?.getStatusManager()?.setMessage(SCREEN_COMPOSE, '');
|
||||
if (this.saveTimeout) {
|
||||
@@ -325,41 +334,43 @@ export class Compose extends React.Component<{}, State> {
|
||||
isUserModified: boolean,
|
||||
dontUpdatePreviews: boolean,
|
||||
closeAfterSync: boolean,
|
||||
newNoteText: string | undefined = this.note!.text
|
||||
newNoteText?: string
|
||||
) => {
|
||||
if (!this.note) {
|
||||
const { editor, note } = this;
|
||||
const { title } = this.state;
|
||||
|
||||
if (!note) {
|
||||
return;
|
||||
}
|
||||
if (this.note?.deleted) {
|
||||
if (note?.deleted) {
|
||||
this.context!.alertService!.alert(
|
||||
'Attempting to save this note has failed. The note has previously been deleted.'
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
if (this.editor?.isTemplateNote) {
|
||||
await this.editor?.insertTemplatedNote();
|
||||
if (editor?.isTemplateNote) {
|
||||
await editor?.insertTemplatedNote();
|
||||
if (this.context?.getAppState().selectedTag?.isSmartTag === false) {
|
||||
await this.context.changeItem(
|
||||
this.context?.getAppState().selectedTag!.uuid,
|
||||
mutator => {
|
||||
mutator.addItemAsRelationship(this.note!);
|
||||
mutator.addItemAsRelationship(note!);
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
if (!this.context?.findItem(this.note!.uuid)) {
|
||||
if (!this.context?.findItem(note!.uuid)) {
|
||||
this.context?.alertService!.alert(
|
||||
'Attempting to save this note has failed. The note cannot be found.'
|
||||
);
|
||||
return;
|
||||
}
|
||||
await this.context!.changeItem(
|
||||
this.note!.uuid,
|
||||
note!.uuid,
|
||||
mutator => {
|
||||
const noteMutator = mutator as NoteMutator;
|
||||
noteMutator.title = this.state.title!;
|
||||
noteMutator.text = newNoteText;
|
||||
noteMutator.title = title!;
|
||||
noteMutator.text = newNoteText ?? note.text;
|
||||
if (!dontUpdatePreviews) {
|
||||
const text = newNoteText ?? '';
|
||||
const truncate = text.length > NOTE_PREVIEW_CHAR_LIMIT;
|
||||
@@ -382,7 +393,7 @@ export class Compose extends React.Component<{}, State> {
|
||||
this.saveTimeout = setTimeout(() => {
|
||||
this.context?.sync();
|
||||
if (closeAfterSync) {
|
||||
this.context?.getAppState().closeEditor(this.editor!);
|
||||
this.context?.getAppState().closeEditor(editor!);
|
||||
}
|
||||
}, syncDebouceMs);
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ApplicationContext } from '@Root/ApplicationContext';
|
||||
import { ItemSessionHistory, SNNote } from '@standardnotes/snjs';
|
||||
import { HistoryEntry, SNNote } from '@standardnotes/snjs';
|
||||
import { NoteHistoryEntry } from '@standardnotes/snjs/dist/@types/services/history/entries/note_history_entry';
|
||||
import React, { useCallback, useContext, useEffect, useState } from 'react';
|
||||
import { FlatList, ListRenderItem } from 'react-native';
|
||||
@@ -16,7 +16,7 @@ export const SessionHistory: React.FC<Props> = ({ note, onPress }) => {
|
||||
const insets = useSafeAreaInsets();
|
||||
|
||||
// State
|
||||
const [sessionHistory, setSessionHistory] = useState<ItemSessionHistory>();
|
||||
const [sessionHistory, setSessionHistory] = useState<HistoryEntry[]>();
|
||||
|
||||
useEffect(() => {
|
||||
if (note) {
|
||||
@@ -52,7 +52,7 @@ export const SessionHistory: React.FC<Props> = ({ note, onPress }) => {
|
||||
initialNumToRender={10}
|
||||
windowSize={10}
|
||||
keyboardShouldPersistTaps={'never'}
|
||||
data={sessionHistory?.entries as NoteHistoryEntry[]}
|
||||
data={sessionHistory as NoteHistoryEntry[]}
|
||||
renderItem={RenderItem}
|
||||
/>
|
||||
);
|
||||
|
||||
@@ -60,18 +60,20 @@ export const Notes = React.memo(
|
||||
// State
|
||||
const [sortBy, setSortBy] = useState<CollectionSort>(() =>
|
||||
application!
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.SortNotesBy, CollectionSort.CreatedAt)
|
||||
);
|
||||
const [sortReverse, setSortReverse] = useState<boolean>(() =>
|
||||
application!.getPrefsService().getValue(PrefKey.SortNotesReverse, false)
|
||||
application!
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.SortNotesReverse, false)
|
||||
);
|
||||
const [hideDates, setHideDates] = useState<boolean>(() =>
|
||||
application!.getPrefsService().getValue(PrefKey.NotesHideDate, false)
|
||||
application!.getLocalPreferences().getValue(PrefKey.NotesHideDate, false)
|
||||
);
|
||||
const [hidePreviews, setHidePreviews] = useState<boolean>(() =>
|
||||
application!
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.NotesHideNotePreview, false)
|
||||
);
|
||||
const [notes, setNotes] = useState<SNNote[]>([]);
|
||||
@@ -485,18 +487,18 @@ export const Notes = React.memo(
|
||||
|
||||
const reloadPreferences = useCallback(async () => {
|
||||
const newSortBy = application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.getValue(PrefKey.SortNotesBy, CollectionSort.CreatedAt);
|
||||
let displayOptionsChanged = false;
|
||||
|
||||
const newSortReverse = application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.getValue(PrefKey.SortNotesReverse, false);
|
||||
const newHidePreview = application!
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.NotesHideNotePreview, false);
|
||||
const newHideDate = application!
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.NotesHideDate, false);
|
||||
|
||||
if (sortBy !== newSortBy) {
|
||||
|
||||
@@ -29,7 +29,9 @@ export const OptionsSection = ({ title, encryptionAvailable }: Props) => {
|
||||
// State
|
||||
const [exporting, setExporting] = useState(false);
|
||||
const [lastExportDate, setLastExportDate] = useState<Date | undefined>(() =>
|
||||
application?.getPrefsService().getValue(PrefKey.LastExportDate, undefined)
|
||||
application
|
||||
?.getLocalPreferences()
|
||||
.getValue(PrefKey.LastExportDate, undefined)
|
||||
);
|
||||
|
||||
const lastExportData = useMemo(() => {
|
||||
@@ -93,7 +95,7 @@ export const OptionsSection = ({ title, encryptionAvailable }: Props) => {
|
||||
const exportDate = new Date();
|
||||
setLastExportDate(exportDate);
|
||||
application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.LastExportDate, exportDate);
|
||||
}
|
||||
setExporting(false);
|
||||
|
||||
@@ -13,17 +13,19 @@ export const PreferencesSection = () => {
|
||||
// State
|
||||
const [sortBy, setSortBy] = useState<CollectionSort>(() =>
|
||||
application!
|
||||
.getPrefsService()
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.SortNotesBy, CollectionSort.CreatedAt)
|
||||
);
|
||||
const [sortReverse, setSortReverse] = useState<boolean>(() =>
|
||||
application!.getPrefsService().getValue(PrefKey.SortNotesReverse, false)
|
||||
application!.getLocalPreferences().getValue(PrefKey.SortNotesReverse, false)
|
||||
);
|
||||
const [hideDates, setHideDates] = useState<boolean>(() =>
|
||||
application!.getPrefsService().getValue(PrefKey.NotesHideDate, false)
|
||||
application!.getLocalPreferences().getValue(PrefKey.NotesHideDate, false)
|
||||
);
|
||||
const [hidePreviews, setHidePreviews] = useState<boolean>(() =>
|
||||
application!.getPrefsService().getValue(PrefKey.NotesHideNotePreview, false)
|
||||
application!
|
||||
.getLocalPreferences()
|
||||
.getValue(PrefKey.NotesHideNotePreview, false)
|
||||
);
|
||||
|
||||
const sortOptions = useMemo(() => {
|
||||
@@ -36,24 +38,26 @@ export const PreferencesSection = () => {
|
||||
|
||||
const toggleReverseSort = () => {
|
||||
application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.SortNotesReverse, !sortReverse);
|
||||
setSortReverse(value => !value);
|
||||
};
|
||||
|
||||
const changeSortOption = (key: CollectionSort) => {
|
||||
application?.getPrefsService().setUserPrefValue(PrefKey.SortNotesBy, key);
|
||||
application
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.SortNotesBy, key);
|
||||
setSortBy(key);
|
||||
};
|
||||
const toggleNotesPreviewHidden = () => {
|
||||
application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.NotesHideNotePreview, !hidePreviews);
|
||||
setHidePreviews(value => !value);
|
||||
};
|
||||
const toggleNotesDateHidden = () => {
|
||||
application
|
||||
?.getPrefsService()
|
||||
?.getLocalPreferences()
|
||||
.setUserPrefValue(PrefKey.NotesHideDate, !hideDates);
|
||||
setHideDates(value => !value);
|
||||
};
|
||||
|
||||
@@ -245,7 +245,7 @@ export const MainSideMenu = React.memo(({ drawerRef }: Props) => {
|
||||
mutator.conflictOf = undefined;
|
||||
});
|
||||
}
|
||||
application!.getAppState().setSelectedTag(tag, true);
|
||||
application?.getAppState().setSelectedTag(tag, true);
|
||||
drawerRef?.closeDrawer();
|
||||
};
|
||||
|
||||
|
||||
@@ -235,6 +235,12 @@ export const NoteSideMenu = React.memo((props: Props) => {
|
||||
|
||||
const onEditorPress = useCallback(
|
||||
async (selectedComponent?: SNComponent) => {
|
||||
if (note?.locked) {
|
||||
application?.alertService.alert(
|
||||
"This note is locked. If you'd like to edit its options, unlock it, and try again."
|
||||
);
|
||||
return;
|
||||
}
|
||||
if (editor?.isTemplateNote) {
|
||||
await editor?.insertTemplatedNote();
|
||||
}
|
||||
|
||||
20
yarn.lock
20
yarn.lock
@@ -1602,10 +1602,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@standardnotes/sncrypto-common/-/sncrypto-common-1.2.9.tgz#5212a959e4ec563584e42480bfd39ef129c3cbdf"
|
||||
integrity sha512-xJ5IUGOZztjSgNP/6XL+Ut5+q9UgSTv6xMtKkcQC5aJxCOkJy9u6RamPLdF00WQgwibxx2tu0e43bKUjTgzMig==
|
||||
|
||||
"@standardnotes/snjs@2.0.72":
|
||||
version "2.0.72"
|
||||
resolved "https://registry.yarnpkg.com/@standardnotes/snjs/-/snjs-2.0.72.tgz#1ff7d691f0d907a1513ec88e6b5d5ae0691f2947"
|
||||
integrity sha512-OL1jeb0sEz4SZwGHeceoKttVcBmcKAh5y/96TELJxM1ZHL2Ayf6DxAXCz3KZBoD7JZllbJ9QWR37/bp+E4y2TA==
|
||||
"@standardnotes/snjs@2.0.75":
|
||||
version "2.0.75"
|
||||
resolved "https://registry.yarnpkg.com/@standardnotes/snjs/-/snjs-2.0.75.tgz#aeb0ead927da63dc85e28f78da2362126bb16602"
|
||||
integrity sha512-QL5YgDT0aN9t95gxgURqNudXr5dteVsc1ylsKKSw0DpEGiq0bACPxbI+sUFppoWTFmprxmDh3+vc+FFcFg7Lyw==
|
||||
dependencies:
|
||||
"@standardnotes/auth" "^2.0.0"
|
||||
"@standardnotes/sncrypto-common" "^1.2.9"
|
||||
@@ -8363,9 +8363,9 @@ slide@^1.1.5:
|
||||
resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707"
|
||||
integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=
|
||||
|
||||
sn-textview@standardnotes/sn-textview#3b56f5c2c87c24370f00ee5a0cee0da9a9fc66c3:
|
||||
version "1.0.0"
|
||||
resolved "https://codeload.github.com/standardnotes/sn-textview/tar.gz/3b56f5c2c87c24370f00ee5a0cee0da9a9fc66c3"
|
||||
sn-textview@standardnotes/sn-textview#14cd6fded5c746569a9c6c365d2edc41913811bb:
|
||||
version "1.0.1"
|
||||
resolved "https://codeload.github.com/standardnotes/sn-textview/tar.gz/14cd6fded5c746569a9c6c365d2edc41913811bb"
|
||||
|
||||
snapdragon-node@^2.0.1:
|
||||
version "2.1.1"
|
||||
@@ -8535,9 +8535,9 @@ stacktrace-parser@^0.1.3:
|
||||
dependencies:
|
||||
type-fest "^0.7.1"
|
||||
|
||||
standard-notes-rn@standardnotes/standard-notes-rn#996b016:
|
||||
version "1.0.0"
|
||||
resolved "https://codeload.github.com/standardnotes/standard-notes-rn/tar.gz/996b016f5a63e0e36fb50a86f5ad41c0c072b41e"
|
||||
standard-notes-rn@standardnotes/standard-notes-rn#d8e5c21b049dd4b97006688617736efbdb7dc4e7:
|
||||
version "1.0.1"
|
||||
resolved "https://codeload.github.com/standardnotes/standard-notes-rn/tar.gz/d8e5c21b049dd4b97006688617736efbdb7dc4e7"
|
||||
|
||||
static-extend@^0.1.1:
|
||||
version "0.1.2"
|
||||
|
||||
Reference in New Issue
Block a user