( element: HTMLElement, propertyId: string, value: unknown, plugin?: TaskNotesPlugin, displayNameOverride?: string )
| 661 | } |
| 662 | |
| 663 | function renderGenericProperty( |
| 664 | element: HTMLElement, |
| 665 | propertyId: string, |
| 666 | value: unknown, |
| 667 | plugin?: TaskNotesPlugin, |
| 668 | displayNameOverride?: string |
| 669 | ): void { |
| 670 | const displayName = resolveTaskCardPropertyLabel(propertyId, {}, displayNameOverride); |
| 671 | element.createEl("span", { text: `${displayName}: ` }); |
| 672 | const valueContainer = element.createEl("span", { |
| 673 | cls: "task-card__metadata-value", |
| 674 | }); |
| 675 | |
| 676 | if (Array.isArray(value)) { |
| 677 | const filtered = value.map((item) => extractBasesValue(item)).filter(hasValidValue); |
| 678 | filtered.forEach((item, index) => { |
| 679 | if (index > 0) valueContainer.appendChild(activeDocument.createTextNode(", ")); |
| 680 | renderPropertyValue(valueContainer, item, plugin); |
| 681 | }); |
| 682 | } else { |
| 683 | renderPropertyValue(valueContainer, value, plugin); |
| 684 | } |
| 685 | } |
| 686 | |
| 687 | function renderPropertyValue( |
| 688 | container: HTMLElement, |
no test coverage detected