File size: 868 Bytes
0d218b1
 
f24ad59
 
3d4392e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { generateSeed } from "@aitube/clap"

import { parseString } from "../../parsers/parseString"
import { parseStringArray } from "../../parsers/parseStringArray"
import { LatentSearchResult, LatentSearchResults } from "./types"

export function unknownObjectToLatentSearchResults(something: any): LatentSearchResults {
  let results: LatentSearchResults = []

  if (Array.isArray(something)) {
    results = something.map(thing => ({
      label: parseString(thing && (thing?.label || thing?.title)),
      summary: parseString(thing && (thing?.summary || thing?.description || thing?.synopsis)),
      thumbnail: parseString(thing && (thing?.thumbnail)),
      tags: parseStringArray(thing && (thing?.tag)),
      seed: generateSeed(), // a seed is necessary for consistency between search results and viewer
    } as LatentSearchResult))
  }

  return results
}