(field: string)
| 1651 | } |
| 1652 | |
| 1653 | private runtimeFieldToGroupKey(field: string): TaskGroupKey | null { |
| 1654 | const resolved = this.resolveRuntimeQueryField(field); |
| 1655 | if (!resolved) return null; |
| 1656 | const property = resolved.internalProperty; |
| 1657 | if (property.startsWith("user:")) return property as `user:${string}`; |
| 1658 | if ( |
| 1659 | property === "priority" || |
| 1660 | property === "due" || |
| 1661 | property === "scheduled" || |
| 1662 | property === "status" || |
| 1663 | property === "tags" || |
| 1664 | property === "completedDate" |
| 1665 | ) { |
| 1666 | return property; |
| 1667 | } |
| 1668 | if (property === "contexts") return "context"; |
| 1669 | if (property === "projects") return "project"; |
| 1670 | return null; |
| 1671 | } |
| 1672 | |
| 1673 | private async getTaskStats( |
| 1674 | query?: TaskNotesRuntimeTaskQuery |
no test coverage detected