(relPath: string)
| 270 | * Hidden from the note/asset list. |
| 271 | */ |
| 272 | export function isDatabaseInternalPath(relPath: string): boolean { |
| 273 | const p = toPosixPath(relPath) |
| 274 | if (formDirContaining(p)) { |
| 275 | // Record pages are markdown; everything else in the folder is internal. |
| 276 | return !p.toLowerCase().endsWith('.md') |
| 277 | } |
| 278 | const l = p.toLowerCase() |
| 279 | return ( |
| 280 | l.endsWith(`.csv${DATABASE_SIDECAR_SUFFIX}`) || |
| 281 | l.endsWith('.csv.bak') || |
| 282 | l.endsWith(`.csv${DATABASE_SIDECAR_SUFFIX}.bak`) |
| 283 | ) |
| 284 | } |
| 285 | |
| 286 | /** True for a database data file: new `<Name>.base/data.csv`, or a legacy loose `.csv`. */ |
| 287 | export function isDatabaseCsvPath(relPath: string): boolean { |
no test coverage detected