()
| 1032 | } |
| 1033 | |
| 1034 | private getFieldDefinitions(): TaskNotesRuntimeFieldDefinition[] { |
| 1035 | const mapping = this.plugin.settings.fieldMapping ?? {}; |
| 1036 | const coreFields = CORE_FIELD_DEFINITIONS.map((field) => { |
| 1037 | const mappingKey = FIELD_MAPPING_KEY_BY_FIELD_ID[field.id]; |
| 1038 | const queryField = runtimeFilterPropertyForInternal(field.id); |
| 1039 | return { |
| 1040 | ...field, |
| 1041 | frontmatterKey: mappingKey ? mapping[mappingKey] : undefined, |
| 1042 | queryable: !!queryField, |
| 1043 | sortable: queryField?.sortable ?? false, |
| 1044 | groupable: queryField?.groupable ?? false, |
| 1045 | supportedOperators: queryField?.supportedOperators, |
| 1046 | aliases: queryField ? [queryField.id, ...(queryField.aliases ?? [])] : undefined, |
| 1047 | }; |
| 1048 | }); |
| 1049 | const userFields = this.getUserFields().map( |
| 1050 | (field): TaskNotesRuntimeFieldDefinition => ({ |
| 1051 | id: `user:${field.id || field.key}`, |
| 1052 | label: field.displayName || field.key, |
| 1053 | valueType: userFieldTypeToRuntimeValueType(field.type), |
| 1054 | source: "user", |
| 1055 | writable: true, |
| 1056 | queryable: true, |
| 1057 | sortable: true, |
| 1058 | groupable: true, |
| 1059 | supportedOperators: operatorsForRuntimeValueType( |
| 1060 | userFieldTypeToRuntimeValueType(field.type) |
| 1061 | ), |
| 1062 | aliases: [`user.${field.id || field.key}`, `user:${field.id || field.key}`], |
| 1063 | frontmatterKey: field.key, |
| 1064 | description: `User-defined field ${field.key}`, |
| 1065 | }) |
| 1066 | ); |
| 1067 | |
| 1068 | return [...coreFields, ...userFields]; |
| 1069 | } |
| 1070 | |
| 1071 | private getFilterPropertyDefinitions(): TaskNotesRuntimeFilterPropertyDefinition[] { |
| 1072 | const userFields = this.getUserFields().map( |
no test coverage detected