1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-11-29 22:48:10 +02:00

Mobile: Fixes #11864: Fix voice recorder crash (#11876)

This commit is contained in:
Henry Heino
2025-02-23 05:53:28 -08:00
committed by GitHub
parent 01a62acfdf
commit 5143fae0f6
3 changed files with 14 additions and 19 deletions

View File

@@ -10,8 +10,6 @@ import * as dayjs from 'dayjs';
// - import * as dayJsRelativeTimeType causes a runtime error.
import type * as dayJsRelativeTimeType from 'dayjs/plugin/relativeTime';
const dayJsRelativeTime: typeof dayJsRelativeTimeType = require('dayjs/plugin/relativeTime');
import type * as dayJsDurationType from 'dayjs/plugin/duration';
const dayJsDuration: typeof dayJsDurationType = require('dayjs/plugin/duration');
const supportedLocales: Record<string, unknown> = {
'ar': require('dayjs/locale/ar'),
@@ -65,7 +63,6 @@ export const Week = 7 * Day;
export const Month = 30 * Day;
function initDayJs() {
dayjs.extend(dayJsDuration);
dayjs.extend(dayJsRelativeTime);
}
@@ -161,14 +158,11 @@ export const formatDateTimeLocalToMs = (anything: string) => {
return dayjs(anything).unix() * 1000;
};
export const formatMsToDurationLocal = (ms: number) => {
let format;
if (ms < Hour) {
format = 'm:ss';
} else if (ms < Day) {
format = 'H:mm:ss';
} else {
format = 'YYYY-MM-DDTHH:mm';
}
return dayjs.duration(ms).format(format);
export const formatMsToDurationCompat = (ms: number) => {
// Avoid using dayjs (and @joplin/utils/time) for formatting here.
// See https://github.com/laurent22/joplin/issues/11864
const seconds = Math.floor(ms / Second) % 60;
const minutes = Math.floor(ms / Minute);
const paddedSeconds = `${seconds}`.padStart(2, '0');
return `${minutes}:${paddedSeconds}`;
};