Compare commits

...

4 Commits

Author SHA1 Message Date
01zulfi
5f0b961c93 web: add toasts in email verification dialog
Signed-off-by: 01zulfi <85733202+01zulfi@users.noreply.github.com>
2026-03-26 13:27:10 +05:00
Ammar Ahmed
9b359a91cc Merge pull request #9582 from streetwriters/mobile-release/3.3.17
Mobile release/3.3.17
2026-03-26 12:16:02 +05:00
Ammar Ahmed
0af831d50b mobile: release 3.3.17 2026-03-25 13:08:31 +05:00
Ammar Ahmed
3efaeaeeb9 mobile: fix failing tests 2026-03-25 12:31:54 +05:00
11 changed files with 35 additions and 33 deletions

View File

@@ -125,7 +125,7 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
multiDexEnabled true
versionCode 3096
versionCode 3097
versionName getNpmVersion()
testBuildType System.getProperty('testBuildType', 'debug')
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'

View File

@@ -1,8 +1,3 @@
- Add support audio playback in editor
- Sort tags assigned to a note on top when viewing and managing note tags
- Fix account password changing and account recovery
- Fix title is editable in readonly mode
- Allow attaching image as file
- Minor bug fixes and performance improvements
Thank you for using Notesnook!

View File

@@ -19,13 +19,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
import { FeatureType } from "./components/sheets/new-feature";
export const features: FeatureType[] = [
{
title: "Play audio files",
body: "You can now play audio attachments in the editor"
},
{
title: "Password change & account recovery re-enabled",
body: "We have re-enabled password change and account recovery after making some improvements"
}
];
export const features: FeatureType[] = [];

View File

@@ -46,9 +46,10 @@ describe("Tags", () => {
.waitAndTapByText('Add "#testtag"')
.isVisibleByText("#testtag")
.pressBack(2)
.wait(1000)
.openSideMenu()
.waitAndTapById("tab-tags")
.waitAndTapByText("#testtag")
.waitAndTapByText("testtag")
.processResult(async (note) => {
await TestBuilder.create().isVisibleByText(note.body).run();
})

View File

@@ -1035,7 +1035,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEVELOPMENT_TEAM = 53CWBG3QUC;
ENABLE_BITCODE = NO;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
@@ -1110,7 +1110,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -1141,7 +1141,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 53CWBG3QUC;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
@@ -1216,7 +1216,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
ONLY_ACTIVE_ARCH = NO;
OTHER_LDFLAGS = (
"$(inherited)",
@@ -1373,7 +1373,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 53CWBG3QUC;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
@@ -1385,7 +1385,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.notewidget;
@@ -1416,7 +1416,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 53CWBG3QUC;
@@ -1429,7 +1429,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.notewidget;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -1459,7 +1459,7 @@
CODE_SIGN_ENTITLEMENTS = "Make Note/Make Note.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 53CWBG3QUC;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
@@ -1540,7 +1540,7 @@
"@executable_path/../../Frameworks",
);
LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift$(inherited)";
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.share;
@@ -1571,7 +1571,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2176;
CURRENT_PROJECT_VERSION = 2177;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 53CWBG3QUC;
@@ -1653,7 +1653,7 @@
"@executable_path/../../Frameworks",
);
LIBRARY_SEARCH_PATHS = "$(SDKROOT)/usr/lib/swift$(inherited)";
MARKETING_VERSION = 3.3.16;
MARKETING_VERSION = 3.3.17;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = org.streetwriters.notesnook.share;
PRODUCT_NAME = "$(TARGET_NAME)";

View File

@@ -1,11 +1,11 @@
{
"name": "@notesnook/mobile",
"version": "3.3.16",
"version": "3.3.17",
"private": true,
"license": "GPL-3.0-or-later",
"scripts": {
"postinstall": "patch-package && node ./scripts/optimize-fonts.mjs",
"run-android": "react-native run-android --active-arch-only",
"run-android": "react-native run-android --active-arch-only --mode=release",
"build": "echo 'No build script defined'",
"run-ios": "react-native run-ios",
"start": "react-native start",
@@ -208,4 +208,4 @@
"engines": {
"node": ">=20"
}
}
}

View File

@@ -27,6 +27,7 @@ import { useSessionState } from "../hooks/use-session-state";
import Accordion from "../components/accordion";
import { BaseDialogProps, DialogManager } from "../common/dialog-manager";
import { strings } from "@notesnook/intl";
import { showToast } from "../utils/toast";
let interval = 0;
type EmailVerificationDialogProps = BaseDialogProps<boolean>;
@@ -76,8 +77,10 @@ export const EmailVerificationDialog = DialogManager.register(
try {
await db.user.sendVerificationEmail();
setCanSendAgain(false);
showToast("success", strings.confirmationEmailSent());
} catch (e) {
console.error(e);
showToast("error", strings.somethingWentWrong());
} finally {
setIsSending(false);
}

View File

@@ -0,0 +1,3 @@
- Minor bug fixes and performance improvements
Thank you for using Notesnook!

View File

@@ -1765,6 +1765,10 @@ msgstr "Confirm password"
msgid "Confirm pin"
msgstr "Confirm pin"
#: src/strings.ts:2639
msgid "Confirmation email sent"
msgstr "Confirmation email sent"
#: src/strings.ts:2080
msgid "Congratulations!"
msgstr "Congratulations!"

View File

@@ -1754,6 +1754,10 @@ msgstr ""
msgid "Confirm pin"
msgstr ""
#: src/strings.ts:2639
msgid "Confirmation email sent"
msgstr ""
#: src/strings.ts:2080
msgid "Congratulations!"
msgstr ""

View File

@@ -2635,5 +2635,6 @@ Use this if changes from other devices are not appearing on this device. This wi
noContent: () => t`This note is empty`,
deleteData: () => t`Delete data`,
failedToAttachFile: () => t`Failed to attach file`,
unlockNoteToMergeConflicts: () => t`Unlock note to merge conflicts`
unlockNoteToMergeConflicts: () => t`Unlock note to merge conflicts`,
confirmationEmailSent: () => t`Confirmation email sent`
};