UNPKG

insta-toc

Version:

Simultaneously generate, update, and maintain a table of contents for your notes in real time.

25 lines (18 loc) 676 B
import type { HeadingCache } from "obsidian"; import { omitHeadingRegex } from "../constants"; export function getLocalSettingsOmitSuggestions(headings?: HeadingCache[]): string[] { if (!headings || headings.length === 0) return []; const suggestions = new Set<string>(); for (const heading of headings) { const normalizedHeading = heading.heading.trim(); if ( normalizedHeading.length === 0 || omitHeadingRegex.test(normalizedHeading) || suggestions.has(normalizedHeading) ) { continue; } suggestions.add(normalizedHeading); } return Array.from(suggestions); }