lostpaul_obsidian-folder-notes/src/ExcludeFolders/ExcludePattern.ts
2025-08-10 12:21:16 +02:00

39 lines
1.3 KiB
TypeScript

import type FolderNotesPlugin from '../main';
export class ExcludePattern {
type: string;
id: string;
string: string;
path: string;
position: number;
subFolders: boolean;
disableSync: boolean;
disableAutoCreate: boolean;
disableFolderNote: boolean;
enableCollapsing: boolean;
excludeFromFolderOverview: boolean;
hideInSettings: boolean;
detached: boolean;
detachedFilePath?: string;
showFolderNote: boolean;
constructor(
pattern: string,
position: number,
id: string | undefined,
plugin: FolderNotesPlugin,
) {
this.type = 'pattern';
this.id = id || crypto.randomUUID();
this.string = pattern;
this.position = position;
this.subFolders = plugin.settings.excludePatternDefaultSettings.subFolders;
this.disableSync = plugin.settings.excludePatternDefaultSettings.disableSync;
this.disableAutoCreate = plugin.settings.excludePatternDefaultSettings.disableAutoCreate;
this.disableFolderNote = plugin.settings.excludePatternDefaultSettings.disableFolderNote;
this.enableCollapsing = plugin.settings.excludePatternDefaultSettings.enableCollapsing;
// eslint-disable-next-line max-len
this.excludeFromFolderOverview = plugin.settings.excludePatternDefaultSettings.excludeFromFolderOverview;
this.path = '';
this.hideInSettings = false;
this.showFolderNote = plugin.settings.excludePatternDefaultSettings.showFolderNote;
}
}