(labels: Array<string>)
| 161 | } |
| 162 | |
| 163 | function dedupeLabels(labels: Array<string>): Array<string> { |
| 164 | const seen = new Set<string>() |
| 165 | |
| 166 | return labels.filter((label) => { |
| 167 | const key = label.toLocaleLowerCase() |
| 168 | if (seen.has(key)) return false |
| 169 | seen.add(key) |
| 170 | return true |
| 171 | }) |
| 172 | } |
| 173 | |
| 174 | function parseRawRecipe(raw: string | undefined): RecipeValue | undefined { |
| 175 | if (!raw) return undefined |