( selection: ModelSelection, preference: keyof ModelPreference )
| 1084 | } |
| 1085 | |
| 1086 | function getSelectionPreference( |
| 1087 | selection: ModelSelection, |
| 1088 | preference: keyof ModelPreference |
| 1089 | ) { |
| 1090 | for (const param of selection.params ?? []) { |
| 1091 | const key = normalizeToken(`${param.id} ${param.value}`) |
| 1092 | if (key.includes(preference)) { |
| 1093 | return !isFalseValue(key) |
| 1094 | } |
| 1095 | } |
| 1096 | |
| 1097 | const idKey = normalizeToken(selection.id) |
| 1098 | return idKey.includes(preference) ? !isFalseValue(idKey) : undefined |
| 1099 | } |
| 1100 | |
| 1101 | function selectionOverlapScore(left: ModelSelection, right: ModelSelection) { |
| 1102 | const rightParams = new Set( |
no test coverage detected