Updated changelog + date field default value

This commit is contained in:
Elio Struyf
2024-02-28 11:43:36 +01:00
parent 65364b8486
commit be5d15d2f8
5 changed files with 14 additions and 10 deletions
-1
View File
@@ -19,7 +19,6 @@
- [#747](https://github.com/estruyf/vscode-front-matter/issues/747): The `@frontmatter/extensibility` dependency now supports scripts for placeholders
- [#752](https://github.com/estruyf/vscode-front-matter/issues/752): Placeholder support in default `list` field values
- Support for using the `fieldCollection` field in a `block` field
- Updated the list of commands which are available in the command palette
### 🐞 Fixes
+3 -2
View File
@@ -116,9 +116,10 @@ export class Article {
}
const cloneArticle = Object.assign({}, article);
const dateField = ArticleHelper.getModifiedDateField(article) || DefaultFields.LastModified;
const dateField = ArticleHelper.getModifiedDateField(article);
try {
cloneArticle.data[dateField] = Article.formatDate(new Date());
const fieldName = dateField?.name || DefaultFields.LastModified;
cloneArticle.data[fieldName] = Article.formatDate(new Date(), dateField?.dateFormat);
return cloneArticle;
} catch (e: unknown) {
Notifications.error(
+3 -3
View File
@@ -39,7 +39,7 @@ import { Article } from '../commands';
import { join, parse as parseFile } from 'path';
import { EditorHelper } from '@estruyf/vscode';
import sanitize from '../helpers/Sanitize';
import { ContentType as IContentType } from '../models';
import { Field, ContentType as IContentType } from '../models';
import { DateHelper } from './DateHelper';
import { DiagnosticSeverity, Position, window, Range } from 'vscode';
import { DEFAULT_FILE_TYPES } from '../constants/DefaultFileTypes';
@@ -378,7 +378,7 @@ export class ArticleHelper {
* @param article
* @returns
*/
public static getModifiedDateField(article: ParsedFrontMatter | null) {
public static getModifiedDateField(article: ParsedFrontMatter | null): Field | undefined {
if (!article || !article.data) {
return;
}
@@ -386,7 +386,7 @@ export class ArticleHelper {
const articleCt = ArticleHelper.getContentType(article);
const modDateField = articleCt.fields.find((f) => f.isModifiedDate);
return modDateField?.name || DefaultFields.LastModified;
return modDateField;
}
/**
@@ -37,7 +37,11 @@ export const DateTimeField: React.FunctionComponent<IDateTimeFieldProps> = ({
const onDateChange = React.useCallback((date: Date) => {
setDateValue(date);
onChange(DateHelper.format(date, format || DEFAULT_FORMAT) || "");
if (format) {
onChange(DateHelper.format(date, format) || "");
} else {
onChange(date.toISOString());
}
}, [format, onChange]);
const showRequiredState = useMemo(() => {
+3 -3
View File
@@ -193,10 +193,10 @@ export class PagesParser {
? DateHelper.tryParse(article?.data[dateField], dateFormat)
: undefined;
const modifiedField = ArticleHelper.getModifiedDateField(article) || null;
const modifiedField = ArticleHelper.getModifiedDateField(article);
const modifiedFieldValue =
modifiedField && article?.data[modifiedField]
? DateHelper.tryParse(article?.data[modifiedField])?.getTime()
modifiedField?.name && article?.data[modifiedField.name]
? DateHelper.tryParse(article?.data[modifiedField.name])?.getTime()
: undefined;
const staticFolder = Folders.getStaticFolderRelativePath();