From de1d4ac00a2fb905e2b6e9a2a8cb9db131be9ed2 Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 12:37:57 -0400 Subject: [PATCH 1/6] Initial commit --- src/constants.ts | 2 ++ src/delete-scheduling-data.ts | 19 ++++++++++++++++++ src/gui/confirmation-modal.tsx | 36 ++++++++++++++++++++++++++++++++++ src/gui/settings.tsx | 20 +++++++++++++++++++ src/lang/locale/en.ts | 11 +++++++++-- 5 files changed, 86 insertions(+), 2 deletions(-) create mode 100644 src/delete-scheduling-data.ts create mode 100644 src/gui/confirmation-modal.tsx diff --git a/src/constants.ts b/src/constants.ts index 2b8a094f..200aacf9 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -6,6 +6,8 @@ export const YAML_FRONT_MATTER_REGEX = /^---\r?\n((?:.*\r?\n)*?)---/; export const MULTI_SCHEDULING_EXTRACTOR = /!([\d-]+),(\d+),(\d+)/gm; export const LEGACY_SCHEDULING_EXTRACTOR = //gm; +export const SCHEDULING_EXTRACTOR = /[\s]*/g; + export const OBSIDIAN_TAG_AT_STARTOFLINE_REGEX = /^#[^\s#]+/gi; // https://help.obsidian.md/Linking+notes+and+files/Internal+links#Link+to+a+block+in+a+note diff --git a/src/delete-scheduling-data.ts b/src/delete-scheduling-data.ts new file mode 100644 index 00000000..3ab12afb --- /dev/null +++ b/src/delete-scheduling-data.ts @@ -0,0 +1,19 @@ +import { TFile, Vault } from "obsidian"; +import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "./constants"; + +function modifyFile(vault: Vault, file: TFile): Promise { + return vault.process(file, (data) => { + return data.replace(SCHEDULING_INFO_REGEX, '') + .replace(SCHEDULING_EXTRACTOR, '') + .trim(); + }); +} + +export function deleteSchedulingData() { + const files = this.app.vault.getMarkdownFiles() + + for (const file of files) { + modifyFile(this.app.vault, file); + } +} + diff --git a/src/gui/confirmation-modal.tsx b/src/gui/confirmation-modal.tsx new file mode 100644 index 00000000..07290460 --- /dev/null +++ b/src/gui/confirmation-modal.tsx @@ -0,0 +1,36 @@ +import { App, Modal, Notice, Setting } from 'obsidian'; +import { t } from 'src/lang/helpers'; + +export class ConfirmationModal extends Modal { + constructor(app: App, title: string, message: string, confirmationMessage?: string, onConfirm?: () => void) { + super(app); + + this.setTitle(title); + this.titleEl.addClass('modal-header'); + + this.setContent(message); + this.contentEl.addClass('modal-content'); + + new Setting(this.contentEl).setClass('modal-button-container') + .addButton((button) => + button + .setButtonText(t('CONFIRM')) + .setClass('mod-warning') + .onClick(() => { + if (onConfirm) { + onConfirm(); + } + if (confirmationMessage) { + new Notice(confirmationMessage); + } + this.close(); + }) + ) + .addButton((button) => + button + .setButtonText(t('CANCEL')).onClick(() => { + this.close(); + }) + ); + } +} \ No newline at end of file diff --git a/src/gui/settings.tsx b/src/gui/settings.tsx index 20dc2092..d8dbef4e 100644 --- a/src/gui/settings.tsx +++ b/src/gui/settings.tsx @@ -6,6 +6,9 @@ import { t } from "src/lang/helpers"; import type SRPlugin from "src/main"; import { setDebugParser } from "src/parser"; import { DEFAULT_SETTINGS } from "src/settings"; +import { ConfirmationModal } from "./confirmation-modal"; +import { deleteSchedulingData } from "src/delete-scheduling-data"; + // https://github.com/mgmeyers/obsidian-kanban/blob/main/src/Settings.ts let applyDebounceTimer = 0; @@ -1040,6 +1043,23 @@ export class SRSettingTab extends PluginSettingTab { await this.plugin.savePluginData(); }), ); + + containerEl.createEl("h3", { text: t("DELETE_SCHEDULING_DATA") }); + new Setting(containerEl) + .setName(t("DELETE_SCHEDULING_DATA")) + .setDesc(t("DELETE_SCHEDULING_DATA_IN_NOTES_AND_FLASHCARDS")) + .addButton((button) => + button + .setButtonText(t("DELETE")) + .setClass("mod-warning") + .onClick(async () => { + new ConfirmationModal(this.plugin.app, + t("DELETE_SCHEDULING_DATA"), + t("CONFIRM_SCHEDULING_DATA_DELETION"), + t("SCHEDULING_DATA_HAS_BEEN_DELETED"), + deleteSchedulingData).open(); + }), + ); } private async tabHelp(containerEl: HTMLElement): Promise { diff --git a/src/lang/locale/en.ts b/src/lang/locale/en.ts index 5f9f0aed..e38530b6 100644 --- a/src/lang/locale/en.ts +++ b/src/lang/locale/en.ts @@ -194,8 +194,15 @@ export default { EXPERIMENTAL: "Experimental", HELP: "Help", STORE_IN_NOTES: "In the notes", - - // sidebar.ts + DELETE_SCHEDULING_DATA: "Delete Scheduling Data", + DELETE_SCHEDULING_DATA_IN_NOTES_AND_FLASHCARDS: "Delete scheduling data from all notes and flashcards.", + DELETE: "Delete", + CONFIRM_SCHEDULING_DATA_DELETION: + "Are you sure you want to delete all scheduling data from your notes and flashcards? This action cannot be undone.", + CONFIRM: "Confirm", + SCHEDULING_DATA_HAS_BEEN_DELETED: "Scheduling data has been deleted from all notes and flashcards.", + +// sidebar.ts NOTES_REVIEW_QUEUE: "Notes Review Queue", CLOSE: "Close", NEW: "New", From f34bbb20269c5bd9029aac18f62fe87e71fddd64 Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 14:20:10 -0400 Subject: [PATCH 2/6] update imports --- src/delete-scheduling-data.ts | 2 +- src/gui/settings.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/delete-scheduling-data.ts b/src/delete-scheduling-data.ts index 3ab12afb..cd4432c3 100644 --- a/src/delete-scheduling-data.ts +++ b/src/delete-scheduling-data.ts @@ -1,5 +1,5 @@ import { TFile, Vault } from "obsidian"; -import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "./constants"; +import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; function modifyFile(vault: Vault, file: TFile): Promise { return vault.process(file, (data) => { diff --git a/src/gui/settings.tsx b/src/gui/settings.tsx index d8dbef4e..70de4a45 100644 --- a/src/gui/settings.tsx +++ b/src/gui/settings.tsx @@ -6,7 +6,7 @@ import { t } from "src/lang/helpers"; import type SRPlugin from "src/main"; import { setDebugParser } from "src/parser"; import { DEFAULT_SETTINGS } from "src/settings"; -import { ConfirmationModal } from "./confirmation-modal"; +import { ConfirmationModal } from "src/gui/confirmation-modal"; import { deleteSchedulingData } from "src/delete-scheduling-data"; From e602e2998539c90a65816300b16bec870775796b Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 17:23:11 -0400 Subject: [PATCH 3/6] added comments --- src/delete-scheduling-data.ts | 14 +++++++++++--- src/gui/confirmation-modal.tsx | 11 +++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/delete-scheduling-data.ts b/src/delete-scheduling-data.ts index cd4432c3..8fdbff3e 100644 --- a/src/delete-scheduling-data.ts +++ b/src/delete-scheduling-data.ts @@ -1,6 +1,12 @@ import { TFile, Vault } from "obsidian"; import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; +/** + * Modifies a file to remove scheduling data. + * @param vault - The Obsidian vault instance. + * @param file - The file to modify. + * @returns - A promise that resolves to the modified file content. + */ function modifyFile(vault: Vault, file: TFile): Promise { return vault.process(file, (data) => { return data.replace(SCHEDULING_INFO_REGEX, '') @@ -9,11 +15,13 @@ function modifyFile(vault: Vault, file: TFile): Promise { }); } +/** + * Deletes all scheduling data from all markdown files in the vault. + */ export function deleteSchedulingData() { const files = this.app.vault.getMarkdownFiles() for (const file of files) { - modifyFile(this.app.vault, file); + modifyFile(this.app.vault, file); } -} - +} \ No newline at end of file diff --git a/src/gui/confirmation-modal.tsx b/src/gui/confirmation-modal.tsx index 07290460..18ca905a 100644 --- a/src/gui/confirmation-modal.tsx +++ b/src/gui/confirmation-modal.tsx @@ -1,7 +1,18 @@ import { App, Modal, Notice, Setting } from 'obsidian'; import { t } from 'src/lang/helpers'; +/** + * A reusable confirmation modal. + */ export class ConfirmationModal extends Modal { + /** + * Creates a confirmation modal. + * @param app - The Obsidian app instance. + * @param title - Title of the modal. + * @param message - Body message of the modal. + * @param confirmationMessage - Notice message to display upon confirmation. + * @param onConfirm - Callback function to execute upon confirmation. + */ constructor(app: App, title: string, message: string, confirmationMessage?: string, onConfirm?: () => void) { super(app); From f960fbea96b1f8bd9c936c82fb2d2009b651063c Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 18:55:36 -0400 Subject: [PATCH 4/6] update formatting --- CHANGELOG.md | 2 +- CONTRIBUTING.md | 2 +- data.json | 62 +++++++++++++++++++++++++ src/delete-scheduling-data.ts | 17 ++++--- src/gui/confirmation-modal.tsx | 85 ++++++++++++++++++---------------- src/gui/settings.tsx | 19 ++++---- src/lang/locale/en.ts | 10 ++-- 7 files changed, 134 insertions(+), 63 deletions(-) create mode 100644 data.json diff --git a/CHANGELOG.md b/CHANGELOG.md index cb4f94f7..1fcfbd40 120000 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1 +1 @@ -docs/docs/changelog.md \ No newline at end of file +docs/docs/changelog.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 54cb9a6d..f6af8f1f 120000 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1 +1 @@ -docs/docs/en/contributing.md \ No newline at end of file +docs/docs/en/contributing.md diff --git a/data.json b/data.json new file mode 100644 index 00000000..67aef640 --- /dev/null +++ b/data.json @@ -0,0 +1,62 @@ +{ + "settings": { + "flashcardTags": [ + "#flashcards" + ], + "convertFoldersToDecks": true, + "burySiblingCards": false, + "randomizeCardOrder": null, + "flashcardCardOrder": "DueFirstRandom", + "flashcardDeckOrder": "PrevDeckComplete_Sequential", + "convertHighlightsToClozes": false, + "convertBoldTextToClozes": false, + "convertCurlyBracketsToClozes": true, + "clozePatterns": [ + "{{[123;;]answer[;;hint]}}" + ], + "singleLineCardSeparator": "::", + "singleLineReversedCardSeparator": ":::", + "multilineCardSeparator": "?", + "multilineReversedCardSeparator": "??", + "multilineCardEndMarker": "-_=", + "editLaterTag": "#edit-later", + "enableNoteReviewPaneOnStartup": true, + "tagsToReview": [ + "#review" + ], + "noteFoldersToIgnore": [ + "**/*.excalidraw.md", + "Files" + ], + "openRandomNote": false, + "autoNextNote": false, + "disableFileMenuReviewOptions": false, + "maxNDaysNotesReviewQueue": 365, + "showRibbonIcon": true, + "showStatusBar": true, + "initiallyExpandAllSubdecksInTree": false, + "showContextInCards": true, + "showIntervalInReviewButtons": true, + "flashcardHeightPercentage": 80, + "flashcardWidthPercentage": 40, + "flashcardEasyText": "Easy", + "flashcardGoodText": "Good", + "flashcardHardText": "Hard", + "reviewButtonDelay": 0, + "openViewInNewTab": false, + "algorithm": "SM-2-OSR", + "baseEase": 250, + "lapsesIntervalChange": 0.5, + "easyBonus": 1.3, + "loadBalance": true, + "maximumInterval": 36525, + "maxLinkFactor": 1, + "dataStore": "NOTES", + "cardCommentOnSameLine": false, + "showSchedulingDebugMessages": false, + "showParserDebugMessages": false + }, + "buryDate": "", + "buryList": [], + "historyDeck": null +} \ No newline at end of file diff --git a/src/delete-scheduling-data.ts b/src/delete-scheduling-data.ts index 8fdbff3e..cef59ea8 100644 --- a/src/delete-scheduling-data.ts +++ b/src/delete-scheduling-data.ts @@ -1,4 +1,5 @@ import { TFile, Vault } from "obsidian"; + import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; /** @@ -8,20 +9,18 @@ import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; * @returns - A promise that resolves to the modified file content. */ function modifyFile(vault: Vault, file: TFile): Promise { - return vault.process(file, (data) => { - return data.replace(SCHEDULING_INFO_REGEX, '') - .replace(SCHEDULING_EXTRACTOR, '') - .trim(); - }); + return vault.process(file, (data) => { + return data.replace(SCHEDULING_INFO_REGEX, "").replace(SCHEDULING_EXTRACTOR, "").trim(); + }); } /** * Deletes all scheduling data from all markdown files in the vault. */ export function deleteSchedulingData() { - const files = this.app.vault.getMarkdownFiles() - + const files = this.app.vault.getMarkdownFiles(); + for (const file of files) { - modifyFile(this.app.vault, file); + modifyFile(this.app.vault, file); } -} \ No newline at end of file +} diff --git a/src/gui/confirmation-modal.tsx b/src/gui/confirmation-modal.tsx index 18ca905a..a3da0ad8 100644 --- a/src/gui/confirmation-modal.tsx +++ b/src/gui/confirmation-modal.tsx @@ -1,47 +1,54 @@ -import { App, Modal, Notice, Setting } from 'obsidian'; -import { t } from 'src/lang/helpers'; +import { App, Modal, Notice, Setting } from "obsidian"; + +import { t } from "src/lang/helpers"; /** * A reusable confirmation modal. */ export class ConfirmationModal extends Modal { - /** - * Creates a confirmation modal. - * @param app - The Obsidian app instance. - * @param title - Title of the modal. - * @param message - Body message of the modal. - * @param confirmationMessage - Notice message to display upon confirmation. - * @param onConfirm - Callback function to execute upon confirmation. - */ - constructor(app: App, title: string, message: string, confirmationMessage?: string, onConfirm?: () => void) { - super(app); - - this.setTitle(title); - this.titleEl.addClass('modal-header'); + /** + * Creates a confirmation modal. + * @param app - The Obsidian app instance. + * @param title - Title of the modal. + * @param message - Body message of the modal. + * @param confirmationMessage - Notice message to display upon confirmation. + * @param onConfirm - Callback function to execute upon confirmation. + */ + constructor( + app: App, + title: string, + message: string, + confirmationMessage?: string, + onConfirm?: () => void, + ) { + super(app); + + this.setTitle(title); + this.titleEl.addClass("modal-header"); - this.setContent(message); - this.contentEl.addClass('modal-content'); + this.setContent(message); + this.contentEl.addClass("modal-content"); - new Setting(this.contentEl).setClass('modal-button-container') - .addButton((button) => - button - .setButtonText(t('CONFIRM')) - .setClass('mod-warning') - .onClick(() => { - if (onConfirm) { - onConfirm(); - } - if (confirmationMessage) { - new Notice(confirmationMessage); - } - this.close(); - }) - ) - .addButton((button) => - button - .setButtonText(t('CANCEL')).onClick(() => { - this.close(); - }) + new Setting(this.contentEl) + .setClass("modal-button-container") + .addButton((button) => + button + .setButtonText(t("CONFIRM")) + .setClass("mod-warning") + .onClick(() => { + if (onConfirm) { + onConfirm(); + } + if (confirmationMessage) { + new Notice(confirmationMessage); + } + this.close(); + }), + ) + .addButton((button) => + button.setButtonText(t("CANCEL")).onClick(() => { + this.close(); + }), ); - } -} \ No newline at end of file + } +} diff --git a/src/gui/settings.tsx b/src/gui/settings.tsx index 70de4a45..419dd93b 100644 --- a/src/gui/settings.tsx +++ b/src/gui/settings.tsx @@ -1,14 +1,13 @@ import { App, Notice, PluginSettingTab, Setting } from "obsidian"; +import { deleteSchedulingData } from "src/delete-scheduling-data"; +import { ConfirmationModal } from "src/gui/confirmation-modal"; import { StatisticsView } from "src/gui/statistics"; import { createTabs, TabStructure } from "src/gui/tabs"; import { t } from "src/lang/helpers"; import type SRPlugin from "src/main"; import { setDebugParser } from "src/parser"; import { DEFAULT_SETTINGS } from "src/settings"; -import { ConfirmationModal } from "src/gui/confirmation-modal"; -import { deleteSchedulingData } from "src/delete-scheduling-data"; - // https://github.com/mgmeyers/obsidian-kanban/blob/main/src/Settings.ts let applyDebounceTimer = 0; @@ -1053,12 +1052,14 @@ export class SRSettingTab extends PluginSettingTab { .setButtonText(t("DELETE")) .setClass("mod-warning") .onClick(async () => { - new ConfirmationModal(this.plugin.app, - t("DELETE_SCHEDULING_DATA"), - t("CONFIRM_SCHEDULING_DATA_DELETION"), - t("SCHEDULING_DATA_HAS_BEEN_DELETED"), - deleteSchedulingData).open(); - }), + new ConfirmationModal( + this.plugin.app, + t("DELETE_SCHEDULING_DATA"), + t("CONFIRM_SCHEDULING_DATA_DELETION"), + t("SCHEDULING_DATA_HAS_BEEN_DELETED"), + deleteSchedulingData, + ).open(); + }), ); } diff --git a/src/lang/locale/en.ts b/src/lang/locale/en.ts index e38530b6..3108bca8 100644 --- a/src/lang/locale/en.ts +++ b/src/lang/locale/en.ts @@ -195,14 +195,16 @@ export default { HELP: "Help", STORE_IN_NOTES: "In the notes", DELETE_SCHEDULING_DATA: "Delete Scheduling Data", - DELETE_SCHEDULING_DATA_IN_NOTES_AND_FLASHCARDS: "Delete scheduling data from all notes and flashcards.", + DELETE_SCHEDULING_DATA_IN_NOTES_AND_FLASHCARDS: + "Delete scheduling data from all notes and flashcards.", DELETE: "Delete", CONFIRM_SCHEDULING_DATA_DELETION: "Are you sure you want to delete all scheduling data from your notes and flashcards? This action cannot be undone.", CONFIRM: "Confirm", - SCHEDULING_DATA_HAS_BEEN_DELETED: "Scheduling data has been deleted from all notes and flashcards.", - -// sidebar.ts + SCHEDULING_DATA_HAS_BEEN_DELETED: + "Scheduling data has been deleted from all notes and flashcards.", + + // sidebar.ts NOTES_REVIEW_QUEUE: "Notes Review Queue", CLOSE: "Close", NEW: "New", From 990ce13c0d95907b08172573bbe2eee2b1356017 Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 19:01:49 -0400 Subject: [PATCH 5/6] Delete data.json --- data.json | 62 ------------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 data.json diff --git a/data.json b/data.json deleted file mode 100644 index 67aef640..00000000 --- a/data.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "settings": { - "flashcardTags": [ - "#flashcards" - ], - "convertFoldersToDecks": true, - "burySiblingCards": false, - "randomizeCardOrder": null, - "flashcardCardOrder": "DueFirstRandom", - "flashcardDeckOrder": "PrevDeckComplete_Sequential", - "convertHighlightsToClozes": false, - "convertBoldTextToClozes": false, - "convertCurlyBracketsToClozes": true, - "clozePatterns": [ - "{{[123;;]answer[;;hint]}}" - ], - "singleLineCardSeparator": "::", - "singleLineReversedCardSeparator": ":::", - "multilineCardSeparator": "?", - "multilineReversedCardSeparator": "??", - "multilineCardEndMarker": "-_=", - "editLaterTag": "#edit-later", - "enableNoteReviewPaneOnStartup": true, - "tagsToReview": [ - "#review" - ], - "noteFoldersToIgnore": [ - "**/*.excalidraw.md", - "Files" - ], - "openRandomNote": false, - "autoNextNote": false, - "disableFileMenuReviewOptions": false, - "maxNDaysNotesReviewQueue": 365, - "showRibbonIcon": true, - "showStatusBar": true, - "initiallyExpandAllSubdecksInTree": false, - "showContextInCards": true, - "showIntervalInReviewButtons": true, - "flashcardHeightPercentage": 80, - "flashcardWidthPercentage": 40, - "flashcardEasyText": "Easy", - "flashcardGoodText": "Good", - "flashcardHardText": "Hard", - "reviewButtonDelay": 0, - "openViewInNewTab": false, - "algorithm": "SM-2-OSR", - "baseEase": 250, - "lapsesIntervalChange": 0.5, - "easyBonus": 1.3, - "loadBalance": true, - "maximumInterval": 36525, - "maxLinkFactor": 1, - "dataStore": "NOTES", - "cardCommentOnSameLine": false, - "showSchedulingDebugMessages": false, - "showParserDebugMessages": false - }, - "buryDate": "", - "buryList": [], - "historyDeck": null -} \ No newline at end of file From 6321e1627c87d19186ed9b9f7d9f6f170e6fdecd Mon Sep 17 00:00:00 2001 From: woodsj1206 <47829885+woodsj1206@users.noreply.github.com> Date: Sat, 1 Nov 2025 22:52:52 -0400 Subject: [PATCH 6/6] fix: handles property blocks with extra fields --- src/constants.ts | 4 ++++ src/delete-scheduling-data.ts | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/constants.ts b/src/constants.ts index 200aacf9..4d663350 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -2,6 +2,10 @@ // https://github.com/st3v3nmw/obsidian-spaced-repetition/issues/776 export const SCHEDULING_INFO_REGEX = /^---\r?\n((?:.*\r?\n)*)sr-due: (.+)\r?\nsr-interval: (\d+)\r?\nsr-ease: (\d+)\r?\n((?:.*\r?\n)?)---/; + +export const SCHEDULING_INFO_BLOCK = /---\s(sr-due:[^>\n]+)\s(sr-interval:[^>\n]+)\s(sr-ease:[^>\n]+)\s---/g; +export const SCHEDULING_INFO_TEXT = /(sr-due:[^>\n]+)\s(sr-interval:[^>\n]+)\s(sr-ease:[^>\n]+)\s/g + export const YAML_FRONT_MATTER_REGEX = /^---\r?\n((?:.*\r?\n)*?)---/; export const MULTI_SCHEDULING_EXTRACTOR = /!([\d-]+),(\d+),(\d+)/gm; diff --git a/src/delete-scheduling-data.ts b/src/delete-scheduling-data.ts index cef59ea8..e3b78b6e 100644 --- a/src/delete-scheduling-data.ts +++ b/src/delete-scheduling-data.ts @@ -1,6 +1,6 @@ import { TFile, Vault } from "obsidian"; -import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; +import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_BLOCK, SCHEDULING_INFO_TEXT } from "src/constants"; /** * Modifies a file to remove scheduling data. @@ -10,7 +10,7 @@ import { SCHEDULING_EXTRACTOR, SCHEDULING_INFO_REGEX } from "src/constants"; */ function modifyFile(vault: Vault, file: TFile): Promise { return vault.process(file, (data) => { - return data.replace(SCHEDULING_INFO_REGEX, "").replace(SCHEDULING_EXTRACTOR, "").trim(); + return data.replace(SCHEDULING_INFO_BLOCK, "").replace(SCHEDULING_INFO_TEXT, "").replace(SCHEDULING_EXTRACTOR, "").trim(); }); }