(filters: FieldFilter)
| 7 | import { InlineFieldParser } from "./InlineFieldParser"; |
| 8 | |
| 9 | export function generateFieldCacheKey(filters: FieldFilter): string { |
| 10 | const parts: string[] = []; |
| 11 | if (filters.folder) parts.push(`folder:${filters.folder}`); |
| 12 | if (filters.folders?.length) { |
| 13 | parts.push(`folders:${filters.folders.join(",")}`); |
| 14 | } |
| 15 | if (filters.tags) parts.push(`tags:${filters.tags.join(",")}`); |
| 16 | if (filters.inline) parts.push("inline:true"); |
| 17 | if (filters.inlineCodeBlocks?.length) { |
| 18 | parts.push(`inline-code-blocks:${filters.inlineCodeBlocks.join(",")}`); |
| 19 | } |
| 20 | if (filters.caseSensitive) parts.push("case-sensitive:true"); |
| 21 | if (filters.excludeFolders) |
| 22 | parts.push(`exclude-folders:${filters.excludeFolders.join(",")}`); |
| 23 | if (filters.excludeTags) |
| 24 | parts.push(`exclude-tags:${filters.excludeTags.join(",")}`); |
| 25 | if (filters.excludeFiles) |
| 26 | parts.push(`exclude-files:${filters.excludeFiles.join(",")}`); |
| 27 | if (filters.defaultValue) parts.push(`default:${filters.defaultValue}`); |
| 28 | if (filters.defaultEmpty) parts.push("default-empty:true"); |
| 29 | if (filters.defaultAlways) parts.push("default-always:true"); |
| 30 | return parts.join("|"); |
| 31 | } |
| 32 | |
| 33 | export async function collectFieldValuesProcessed( |
| 34 | app: App, |
no test coverage detected