(result: unknown)
| 166 | } |
| 167 | |
| 168 | function audioPreviewFromResult(result: unknown): AIDevtoolsGenerationPreview { |
| 169 | const record = asRecord(result) |
| 170 | const audio = record?.audio |
| 171 | const resultContentType = stringField(record, 'contentType') |
| 172 | const format = stringField(record, 'format') |
| 173 | const mimeType = resultContentType ?? mimeTypeFromAudioFormat(format) |
| 174 | |
| 175 | const items: Array<AIDevtoolsGenerationMediaItem> = [] |
| 176 | const directItem = |
| 177 | typeof audio === 'string' |
| 178 | ? base64MediaItem(audio, mimeType, { |
| 179 | format, |
| 180 | duration: numberField(record, 'duration'), |
| 181 | }) |
| 182 | : mediaItemFromSource(audio, mimeType, { |
| 183 | format, |
| 184 | }) |
| 185 | |
| 186 | if (directItem) { |
| 187 | items.push(directItem) |
| 188 | } |
| 189 | |
| 190 | return { kind: 'audio', items } |
| 191 | } |
| 192 | |
| 193 | function videoPreviewFromResult( |
| 194 | result: unknown, |
no test coverage detected