mirror of
https://github.com/zadam/trilium.git
synced 2025-12-04 22:44:25 +01:00
edited notes: allow spaces between keyword and delta in #dateNote
to be compatible with existing search syntax
This commit is contained in:
parent
f083908293
commit
2a65b85302
@ -36,7 +36,7 @@ function keywordDoesNotResolve(dateStrOrKeyword: string) {
|
|||||||
|
|
||||||
describe("edited-notes::dateNoteLabelKeywordToDateFilter", () => {
|
describe("edited-notes::dateNoteLabelKeywordToDateFilter", () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
vi.stubEnv('TZ', 'UTC');
|
vi.stubEnv("TZ", "UTC");
|
||||||
vi.useFakeTimers();
|
vi.useFakeTimers();
|
||||||
vi.setSystemTime(new Date(serverDate));
|
vi.setSystemTime(new Date(serverDate));
|
||||||
});
|
});
|
||||||
@ -67,6 +67,12 @@ describe("edited-notes::dateNoteLabelKeywordToDateFilter", () => {
|
|||||||
keywordResolvesToDate("TODAY-1", expectedTodayMinus1);
|
keywordResolvesToDate("TODAY-1", expectedTodayMinus1);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("resolves 'TODAY - 1' (with spaces) to yesterday's date", () => {
|
||||||
|
keywordResolvesToDate("TODAY - 1", expectedTodayMinus1);
|
||||||
|
keywordResolvesToDate("TODAY- 1", expectedTodayMinus1);
|
||||||
|
keywordResolvesToDate("TODAY -1", expectedTodayMinus1);
|
||||||
|
});
|
||||||
|
|
||||||
it("resolves 'MONTH-2' to 2 months ago", () => {
|
it("resolves 'MONTH-2' to 2 months ago", () => {
|
||||||
keywordResolvesToDate("MONTH-2", expectedMonthMinus2);
|
keywordResolvesToDate("MONTH-2", expectedMonthMinus2);
|
||||||
});
|
});
|
||||||
|
|||||||
@ -155,11 +155,11 @@ type DateFilter = DateValue;
|
|||||||
* @returns A `DateFilter` object containing the resolved date string.
|
* @returns A `DateFilter` object containing the resolved date string.
|
||||||
*/
|
*/
|
||||||
export function dateNoteLabelKeywordToDateFilter(dateStr: string): DateFilter {
|
export function dateNoteLabelKeywordToDateFilter(dateStr: string): DateFilter {
|
||||||
const keywordAndDelta = dateStr.match(/^(today|month|year)([+-]\d+)?$/i);
|
const keywordAndDelta = dateStr.match(/^(today|month|year)\s*([+-]\s*\d+)?$/i);
|
||||||
|
|
||||||
if (keywordAndDelta) {
|
if (keywordAndDelta) {
|
||||||
const keyword = keywordAndDelta[1].toLowerCase();
|
const keyword = keywordAndDelta[1].toLowerCase();
|
||||||
const delta = keywordAndDelta[2] ? parseInt(keywordAndDelta[2]) : 0;
|
const delta = parseInt(keywordAndDelta[2]?.replace(/\s/g, "") ?? "0");
|
||||||
|
|
||||||
const clientDate = dayjs(dateUtils.localNowDate());
|
const clientDate = dayjs(dateUtils.localNowDate());
|
||||||
const date = formatDateFromKeywordAndDelta(clientDate, keyword, delta);
|
const date = formatDateFromKeywordAndDelta(clientDate, keyword, delta);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user