| | |
| | | children: Array<FileTrieNode<T>> |
| | | |
| | | private slugSegments: string[] |
| | | private displayNameOverride?: string |
| | | data: T | null |
| | | |
| | | constructor(segments: string[], data?: T) { |
| | |
| | | this.slugSegments = segments |
| | | this.data = data ?? null |
| | | this.isFolder = false |
| | | this.displayNameOverride = undefined |
| | | } |
| | | |
| | | get displayName(): string { |
| | | return this.data?.title ?? this.slugSegment ?? "" |
| | | return this.displayNameOverride ?? this.data?.title ?? this.slugSegment ?? "" |
| | | } |
| | | |
| | | set displayName(name: string) { |
| | | this.displayNameOverride = name |
| | | } |
| | | |
| | | get slug(): FullSlug { |