diff --git a/CliClient/package.json b/CliClient/package.json index 770b2c0228..fee9e3e126 100644 --- a/CliClient/package.json +++ b/CliClient/package.json @@ -7,7 +7,7 @@ "url": "https://github.com/laurent22/joplin" }, "url": "git://github.com/laurent22/joplin.git", - "version": "0.8.40", + "version": "0.8.41", "bin": { "joplin": "./main_launcher.js" }, diff --git a/ReactNativeClient/android/app/build.gradle b/ReactNativeClient/android/app/build.gradle index 8dba60ce91..f9733c7c02 100644 --- a/ReactNativeClient/android/app/build.gradle +++ b/ReactNativeClient/android/app/build.gradle @@ -90,8 +90,8 @@ android { applicationId "net.cozic.joplin" minSdkVersion 16 targetSdkVersion 22 - versionCode 11 - versionName "0.8.9" + versionCode 12 + versionName "0.8.10" ndk { abiFilters "armeabi-v7a", "x86" } diff --git a/ReactNativeClient/lib/models/base-item.js b/ReactNativeClient/lib/models/base-item.js index 6c1624336f..6f98dcef38 100644 --- a/ReactNativeClient/lib/models/base-item.js +++ b/ReactNativeClient/lib/models/base-item.js @@ -310,6 +310,13 @@ class BaseItem extends BaseModel { }); } + static modelTypeToClassName(type) { + for (let i = 0; i < BaseItem.syncItemDefinitions_.length; i++) { + if (BaseItem.syncItemDefinitions_[i].type == type) return BaseItem.syncItemDefinitions_[i].className; + } + throw new Error('Invalid type: ' + type); + } + } // Also update: diff --git a/ReactNativeClient/lib/services/report.js b/ReactNativeClient/lib/services/report.js index 5a199f9e05..bb40faed80 100644 --- a/ReactNativeClient/lib/services/report.js +++ b/ReactNativeClient/lib/services/report.js @@ -59,7 +59,11 @@ class ReportService { section.title = _('Folders'); section.body = []; - let folders = await Folder.all(); + let folders = await Folder.all({ + orderBy: 'title', + caseInsensitive: true, + }); + for (let i = 0; i < folders.length; i++) { let folder = folders[i]; section.body.push(_('%s: %d notes', folders[i].title, await Folder.noteCount(folders[i].id))); diff --git a/ReactNativeClient/lib/shim-init-node.js b/ReactNativeClient/lib/shim-init-node.js index 790edeac65..abdcc314f0 100644 --- a/ReactNativeClient/lib/shim-init-node.js +++ b/ReactNativeClient/lib/shim-init-node.js @@ -1,3 +1,4 @@ +import fs from 'fs-extra'; import { shim } from 'lib/shim.js'; import { GeolocationNode } from 'lib/geolocation-node.js'; diff --git a/ReactNativeClient/lib/synchronizer.js b/ReactNativeClient/lib/synchronizer.js index a9189ad41d..df7a53291c 100644 --- a/ReactNativeClient/lib/synchronizer.js +++ b/ReactNativeClient/lib/synchronizer.js @@ -46,6 +46,11 @@ class Synchronizer { line.push(action); line.push(reason); + let type = local && local.type_ ? local.type_ : null; + if (!type) type = remote && remote.type_ ? remote.type_ : null; + + if (type) line.push(BaseItem.modelTypeToClassName(type)); + if (local) { let s = []; s.push(local.id);