diff --git a/CHANGELOG.md b/CHANGELOG.md index c03d3b84..224e847b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ - [#933](https://github.com/estruyf/vscode-front-matter/issues/933): Timezone setting integration in the DateTime field - [#942](https://github.com/estruyf/vscode-front-matter/issues/942): Fix to typo on welcome screen thanks to [Stephanie Wertman](https://github.com/stephanie-wertman) +- [#957](https://github.com/estruyf/vscode-front-matter/issues/957): Fix media assets retrieval where `mtime` is not defined. Fallback to the `mtimeMs` property if available. ## [10.8.0] - 2025-02-27 - [Release notes](https://beta.frontmatter.codes/updates/v10.8.0) diff --git a/src/helpers/MediaHelpers.ts b/src/helpers/MediaHelpers.ts index db8a2036..e95f221f 100644 --- a/src/helpers/MediaHelpers.ts +++ b/src/helpers/MediaHelpers.ts @@ -172,7 +172,14 @@ export class MediaHelpers { } }) ); - files = files.filter((f) => f.mtime !== undefined); + files = files + .filter((f) => f.mtime !== undefined || f.mtimeMs !== undefined) + .map((f) => { + if (f.mtime === undefined && f.mtimeMs !== undefined) { + return { ...f, mtime: new Date(f.mtimeMs as number) }; + } + return f; + }); // Sort the files if (crntSort?.type === SortType.string) { diff --git a/src/models/MediaPaths.ts b/src/models/MediaPaths.ts index 0bd118bd..beb2276a 100644 --- a/src/models/MediaPaths.ts +++ b/src/models/MediaPaths.ts @@ -16,6 +16,7 @@ export interface MediaInfo { dimensions?: ISizeCalculationResult | undefined; mimeType?: string | undefined; mtime?: Date; + mtimeMs?: number; ctime?: Date; size?: number;