vault backup: 2026-05-28 10:08:57

This commit is contained in:
2026-05-28 10:08:57 +02:00
parent ce7c9efe9e
commit 0968e5f226
9 changed files with 974 additions and 469 deletions

View File

@@ -5706,6 +5706,7 @@ var DEFAULT_SETTINGS = {
todoPageName: "todo",
showChecked: false,
showAllTodos: false,
showOnlyActiveFile: false,
autoRefresh: true,
subGroups: false,
groupBy: "page",
@@ -5748,6 +5749,12 @@ var TodoSettingTab = class extends import_obsidian.PluginSettingTab {
yield this.plugin.updateSettings({ showAllTodos: value });
}));
});
new import_obsidian.Setting(this.containerEl).setName("Show only in currently active file?").setDesc("Show only todos present in currently active file?").addToggle((toggle) => {
toggle.setValue(this.plugin.getSettingValue("showOnlyActiveFile"));
toggle.onChange((value) => __async(this, null, function* () {
yield this.plugin.updateSettings({ showOnlyActiveFile: value });
}));
});
new import_obsidian.Setting(this.containerEl).setName("Grouping & Sorting");
new import_obsidian.Setting(this.containerEl).setName("Group By").addDropdown((dropdown) => {
dropdown.addOption("page", "Page");
@@ -6293,7 +6300,7 @@ var getFileFromPath = (vault, path) => {
let file = vault.getAbstractFileByPath(path);
if (file instanceof import_obsidian2.TFile)
return file;
const files = vault.getFiles();
const files = vault.getMarkdownFiles();
file = files.find((e) => e.name === path);
if (file instanceof import_obsidian2.TFile)
return file;
@@ -8124,6 +8131,11 @@ var TodoListView = class extends import_obsidian4.ItemView {
return;
yield this.refresh();
})));
this.registerEvent(this.app.workspace.on("active-leaf-change", () => __async(this, null, function* () {
if (!this.plugin.getSettingValue("showOnlyActiveFile"))
return;
yield this.refresh();
})));
this.registerEvent(this.app.vault.on("delete", (file) => this.deleteFile(file.path)));
this.refresh();
});
@@ -8166,7 +8178,7 @@ var TodoListView = class extends import_obsidian4.ItemView {
}
calculateAllItems() {
return __async(this, null, function* () {
const todosForUpdatedFiles = yield parseTodos(this.app.vault.getFiles(), this.todoTagArray.length === 0 ? ["*"] : this.visibleTodoTagArray, this.app.metadataCache, this.app.vault, this.plugin.getSettingValue("includeFiles"), this.plugin.getSettingValue("showChecked"), this.plugin.getSettingValue("showAllTodos"), this.lastRerender);
const todosForUpdatedFiles = yield parseTodos(this.app.vault.getMarkdownFiles(), this.todoTagArray.length === 0 ? ["*"] : this.visibleTodoTagArray, this.app.metadataCache, this.app.vault, this.plugin.getSettingValue("includeFiles"), this.plugin.getSettingValue("showChecked"), this.plugin.getSettingValue("showAllTodos"), this.lastRerender);
for (const [file, todos] of todosForUpdatedFiles) {
this.itemsByFile.set(file.path, todos);
}
@@ -8174,7 +8186,10 @@ var TodoListView = class extends import_obsidian4.ItemView {
}
groupItems() {
const flattenedItems = Array.from(this.itemsByFile.values()).flat();
const searchedItems = flattenedItems.filter((e) => e.originalText.toLowerCase().includes(this.searchTerm.toLowerCase()));
const viewOnlyOpen = this.plugin.getSettingValue("showOnlyActiveFile");
const openFile = this.app.workspace.getActiveFile();
const filteredItems = viewOnlyOpen ? flattenedItems.filter((i) => i.filePath === openFile.path) : flattenedItems;
const searchedItems = filteredItems.filter((e) => e.originalText.toLowerCase().includes(this.searchTerm.toLowerCase()));
this.groupedItems = groupTodos(searchedItems, this.plugin.getSettingValue("groupBy"), this.plugin.getSettingValue("sortDirectionGroups"), this.plugin.getSettingValue("sortDirectionItems"), this.plugin.getSettingValue("subGroups"), this.plugin.getSettingValue("sortDirectionSubGroups"));
}
renderView() {
@@ -8280,3 +8295,5 @@ var TodoPlugin = class extends import_obsidian5.Plugin {
return this.settings[setting];
}
};
/* nosourcemap */

View File

@@ -1,9 +1,9 @@
{
"id": "obsidian-checklist-plugin",
"name": "Checklist",
"version": "2.2.13",
"minAppVersion": "0.14.5",
"description": "Combines checklists across pages into users sidebar",
"author": "delashum",
"isDesktopOnly": false
}
"id": "obsidian-checklist-plugin",
"name": "Checklist",
"version": "2.2.14",
"minAppVersion": "0.14.5",
"description": "Combines checklists across pages into users sidebar",
"author": "delashum",
"isDesktopOnly": false
}

View File

@@ -1,51 +1,51 @@
/* no content */
.checklist-plugin-main {
--checklist-checkboxSize: 20px;
--checklist-checkboxCheckedSize: 12px;
--checklist-checkboxBorder: 2px solid var(--text-muted);
--checklist-checkboxFill: var(--text-muted);
--checklist-listItemBorderRadius: 8px;
--checklist-listItemMargin: 0 0 12px;
--checklist-listItemBackground: var(--interactive-normal);
--checklist-listItemBackground--hover: var(--interactive-hover);
--checklist-listItemMargin--compact: 0 0 8px;
--checklist-listItemBoxShadow: none;
--checklist-headerMargin: 0 0 8px;
--checklist-headerGap: 4px;
--checklist-headerFontSize: 18px;
--checklist-headerFontWeight: 600;
--checklist-iconSize: 24px;
--checklist-iconFill: var(--text-normal);
--checklist-iconFill--accent: #777;
--checklist-textColor: var(--text-muted);
--checklist-accentColor: var(--text-accent);
--checklist-accentColor--active: var(--text-accent-hover);
--checklist-pageMargin: 0 0 4px;
--checklist-loaderSize: 16px;
--checklist-loaderBorderColor: var(--text-muted) var(--text-muted)
var(--text-normal);
--checklist-buttonPadding: 0 5px;
--checklist-buttonBoxShadow: none;
--checklist-countPadding: 0 6px;
--checklist-countBackground: var(--interactive-normal);
--checklist-countFontSize: 13px;
--checklist-togglePadding: 8px 8px 8px 12px;
--checklist-contentPadding: 8px 12px 8px 0;
--checklist-contentPadding--compact: 4px 8px;
--checklist-togglePadding--compact: 4px 8px;
--checklist-countBorderRadius: 4px;
--checklist-tagBaseColor: var(--text-faint);
--checklist-tagSubColor: #bbb;
--checklist-groupMargin: 8px;
--checklist-contentFontSize: var(--editor-font-size);
--checklist-searchBackground: var(--background-primary);
}
.checklist-plugin-main button {
margin: initial;
}
.checklist-plugin-main p {
margin: initial;
word-break: break-word;
}
/* no content */
.checklist-plugin-main {
--checklist-checkboxSize: 20px;
--checklist-checkboxCheckedSize: 12px;
--checklist-checkboxBorder: 2px solid var(--text-muted);
--checklist-checkboxFill: var(--text-muted);
--checklist-listItemBorderRadius: 8px;
--checklist-listItemMargin: 0 0 12px;
--checklist-listItemBackground: var(--interactive-normal);
--checklist-listItemBackground--hover: var(--interactive-hover);
--checklist-listItemMargin--compact: 0 0 8px;
--checklist-listItemBoxShadow: none;
--checklist-headerMargin: 0 0 8px;
--checklist-headerGap: 4px;
--checklist-headerFontSize: 18px;
--checklist-headerFontWeight: 600;
--checklist-iconSize: 24px;
--checklist-iconFill: var(--text-normal);
--checklist-iconFill--accent: #777;
--checklist-textColor: var(--text-muted);
--checklist-accentColor: var(--text-accent);
--checklist-accentColor--active: var(--text-accent-hover);
--checklist-pageMargin: 0 0 4px;
--checklist-loaderSize: 16px;
--checklist-loaderBorderColor: var(--text-muted) var(--text-muted)
var(--text-normal);
--checklist-buttonPadding: 0 5px;
--checklist-buttonBoxShadow: none;
--checklist-countPadding: 0 6px;
--checklist-countBackground: var(--interactive-normal);
--checklist-countFontSize: 13px;
--checklist-togglePadding: 8px 8px 8px 12px;
--checklist-contentPadding: 8px 12px 8px 0;
--checklist-contentPadding--compact: 4px 8px;
--checklist-togglePadding--compact: 4px 8px;
--checklist-countBorderRadius: 4px;
--checklist-tagBaseColor: var(--text-faint);
--checklist-tagSubColor: #bbb;
--checklist-groupMargin: 8px;
--checklist-contentFontSize: var(--editor-font-size);
--checklist-searchBackground: var(--background-primary);
}
.checklist-plugin-main button {
margin: initial;
}
.checklist-plugin-main p {
margin: initial;
word-break: break-word;
}