diff --git a/frontend/src/components/VAudioDetails/VRelatedAudio.vue b/frontend/src/components/VAudioDetails/VRelatedAudio.vue
deleted file mode 100644
index 2c22ce6afa0..00000000000
--- a/frontend/src/components/VAudioDetails/VRelatedAudio.vue
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
- {{ $t("audioDetails.relatedAudios") }}
-
-
-
-
-
-
diff --git a/frontend/src/components/VCollectionPage.vue b/frontend/src/components/VCollectionPage.vue
index 3bca3fa7923..6b70974b2cf 100644
--- a/frontend/src/components/VCollectionPage.vue
+++ b/frontend/src/components/VCollectionPage.vue
@@ -7,7 +7,7 @@
:media-type="mediaType"
:class="mediaType === 'image' ? 'mb-4' : 'mb-2'"
/>
- ,
diff --git a/frontend/src/components/VImageDetails/VRelatedImages.vue b/frontend/src/components/VImageDetails/VRelatedImages.vue
deleted file mode 100644
index 954b620e0bb..00000000000
--- a/frontend/src/components/VImageDetails/VRelatedImages.vue
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
diff --git a/frontend/src/components/VMediaInfo/VRelatedMedia.vue b/frontend/src/components/VMediaInfo/VRelatedMedia.vue
new file mode 100644
index 00000000000..77cbca6d7c6
--- /dev/null
+++ b/frontend/src/components/VMediaInfo/VRelatedMedia.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/components/VSearchResultsGrid/VAllResultsGrid.vue b/frontend/src/components/VSearchResultsGrid/VAllResultsGrid.vue
index 2c657caf92b..23f0caf8e86 100644
--- a/frontend/src/components/VSearchResultsGrid/VAllResultsGrid.vue
+++ b/frontend/src/components/VSearchResultsGrid/VAllResultsGrid.vue
@@ -51,7 +51,7 @@
:search-term="searchTerm"
layout="box"
:size="isSm ? 'l' : 's'"
- :is-related="false"
+ kind="search"
/>
diff --git a/frontend/src/components/VSearchResultsGrid/VAudioCollection.vue b/frontend/src/components/VSearchResultsGrid/VAudioCollection.vue
index db3f04ab70a..5bc9492ae5b 100644
--- a/frontend/src/components/VSearchResultsGrid/VAudioCollection.vue
+++ b/frontend/src/components/VSearchResultsGrid/VAudioCollection.vue
@@ -1,44 +1,36 @@
-
-
-
-
-
- {{
- $t(`audioResults.snackbar.${keyboardKey}`)
- }}
-
-
-
-
-
-
+
diff --git a/frontend/src/components/VSearchResultsGrid/VAudioList.vue b/frontend/src/components/VSearchResultsGrid/VAudioList.vue
index fe7618e32f1..fb116ecb4b7 100644
--- a/frontend/src/components/VSearchResultsGrid/VAudioList.vue
+++ b/frontend/src/components/VSearchResultsGrid/VAudioList.vue
@@ -1,47 +1,88 @@
-
-
-
+
-
+
+
+
+ {{
+ $t(`audioResults.snackbar.${keyboardKey}`)
+ }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/components/VSearchResultsGrid/VMediaCollection.vue b/frontend/src/components/VSearchResultsGrid/VMediaCollection.vue
new file mode 100644
index 00000000000..062e1639a03
--- /dev/null
+++ b/frontend/src/components/VSearchResultsGrid/VMediaCollection.vue
@@ -0,0 +1,105 @@
+
+
+
+
diff --git a/frontend/src/pages/audio/_id/index.vue b/frontend/src/pages/audio/_id/index.vue
index e117a3f8a85..7722adb40be 100644
--- a/frontend/src/pages/audio/_id/index.vue
+++ b/frontend/src/pages/audio/_id/index.vue
@@ -28,8 +28,11 @@
-
@@ -60,7 +63,7 @@ import { useSingleResultPageMeta } from "~/composables/use-single-result-page-me
import VAudioTrack from "~/components/VAudioTrack/VAudioTrack.vue"
import VMediaReuse from "~/components/VMediaInfo/VMediaReuse.vue"
-import VRelatedAudio from "~/components/VAudioDetails/VRelatedAudio.vue"
+import VRelatedMedia from "~/components/VMediaInfo/VRelatedMedia.vue"
import VMediaDetails from "~/components/VMediaInfo/VMediaDetails.vue"
import VSafetyWall from "~/components/VSafetyWall/VSafetyWall.vue"
import VSingleResultControls from "~/components/VSingleResultControls.vue"
@@ -77,7 +80,7 @@ export default defineComponent({
VMediaDetails,
VAudioTrack,
VMediaReuse,
- VRelatedAudio,
+ VRelatedMedia,
},
layout: "content-layout",
middleware: singleResultMiddleware,
@@ -89,7 +92,12 @@ export default defineComponent({
const route = useRoute()
- const audio = ref(singleResultStore.audio)
+ const audio = ref(
+ singleResultStore.audio?.id &&
+ singleResultStore.audio.id === route.value.params.id
+ ? singleResultStore.audio
+ : null
+ )
const fetchingError = computed(
() => singleResultStore.fetchState.fetchingError
)
diff --git a/frontend/src/pages/image/_id/index.vue b/frontend/src/pages/image/_id/index.vue
index 4b1d54872ed..540d1b11aad 100644
--- a/frontend/src/pages/image/_id/index.vue
+++ b/frontend/src/pages/image/_id/index.vue
@@ -97,12 +97,13 @@
:image-height="imageHeight"
:image-type="imageType"
/>
-
+
+
@@ -119,7 +120,7 @@ import {
useRoute,
} from "@nuxtjs/composition-api"
-import { IMAGE, isAdditionalSearchType } from "~/constants/media"
+import { IMAGE } from "~/constants/media"
import { skipToContentTargetId } from "~/constants/window"
import type { ImageDetail } from "~/types/media"
import { useAnalytics } from "~/composables/use-analytics"
@@ -134,14 +135,13 @@ import { singleResultMiddleware } from "~/middleware/single-result"
import VBone from "~/components/VSkeleton/VBone.vue"
import VLink from "~/components/VLink.vue"
import VMediaReuse from "~/components/VMediaInfo/VMediaReuse.vue"
-import VRelatedImages from "~/components/VImageDetails/VRelatedImages.vue"
+import VRelatedMedia from "~/components/VMediaInfo/VRelatedMedia.vue"
import VSketchFabViewer from "~/components/VSketchFabViewer.vue"
import VSafetyWall from "~/components/VSafetyWall/VSafetyWall.vue"
import VSingleResultControls from "~/components/VSingleResultControls.vue"
import VMediaDetails from "~/components/VMediaInfo/VMediaDetails.vue"
import VGetMediaButton from "~/components/VMediaInfo/VGetMediaButton.vue"
import VMediaInfo from "~/components/VMediaInfo/VMediaInfo.vue"
-
import VErrorSection from "~/components/VErrorSection/VErrorSection.vue"
import errorImage from "~/assets/image_not_available_placeholder.png"
@@ -158,7 +158,7 @@ export default defineComponent({
VBone,
VLink,
VMediaReuse,
- VRelatedImages,
+ VRelatedMedia,
VSketchFabViewer,
},
layout: "content-layout",
@@ -168,7 +168,12 @@ export default defineComponent({
const route = useRoute()
- const image = ref(singleResultStore.image)
+ const image = ref(
+ singleResultStore.image?.id &&
+ singleResultStore.image.id === route.value.params.id
+ ? singleResultStore.image
+ : null
+ )
const fetchingError = computed(
() => singleResultStore.fetchState.fetchingError
)
@@ -341,7 +346,6 @@ export default defineComponent({
},
// Necessary for useMeta
head: {},
- methods: { isAdditionalSearchType },
// Fetching on the server is disabled because it is
// handled by the `singleResultMiddleware`.
fetchOnServer: false,
@@ -349,8 +353,7 @@ export default defineComponent({
diff --git a/frontend/src/pages/search/audio.vue b/frontend/src/pages/search/audio.vue
index c76494639c1..e35bc8defbb 100644
--- a/frontend/src/pages/search/audio.vue
+++ b/frontend/src/pages/search/audio.vue
@@ -1,5 +1,5 @@
- {
await page.goto("audio/")
await expect(errorPageHeading(page)).toBeVisible()
})
+
+test("sends SELECT_SEARCH_RESULT event on related audio click", async ({
+ context,
+ page,
+}) => {
+ const analyticsEvents = collectAnalyticsEvents(context)
+
+ await goToCustomAudioPage(page)
+
+ // Clicking on the link seeks the audio, that's why we click on the heading
+ const firstRelatedAudio = page
+ .getByRole("region", { name: t("audioDetails.relatedAudios") })
+ .locator("a")
+ .first()
+ .getByRole("heading", { level: 2 })
+
+ await firstRelatedAudio.click()
+
+ await page.waitForURL(/audio\/0b94484c-d7d1-43f2-8710-69399b6a0310/)
+
+ const selectSearchResultEvent = analyticsEvents.find(
+ (event) => event.n === "SELECT_SEARCH_RESULT"
+ )
+
+ expectEventPayloadToMatch(selectSearchResultEvent, {
+ id: "0b94484c-d7d1-43f2-8710-69399b6a0310",
+ relatedTo: audioObject.id,
+ kind: "related",
+ mediaType: "audio",
+ provider: "wikimedia_audio",
+ query: "",
+ sensitivities: "",
+ isBlurred: false,
+ })
+})
diff --git a/frontend/test/playwright/e2e/image-detail.spec.ts b/frontend/test/playwright/e2e/image-detail.spec.ts
index 13b26dc4d75..73ff8922b41 100644
--- a/frontend/test/playwright/e2e/image-detail.spec.ts
+++ b/frontend/test/playwright/e2e/image-detail.spec.ts
@@ -5,6 +5,7 @@ import {
preparePageForTests,
scrollDownAndUp,
} from "~~/test/playwright/utils/navigation"
+import { t } from "~~/test/playwright/utils/i18n"
import {
collectAnalyticsEvents,
expectEventPayloadToMatch,
@@ -106,3 +107,34 @@ test("sends RIGHT_CLICK_IMAGE event on right-click", async ({
id: imageObject.id,
})
})
+
+test("sends SELECT_SEARCH_RESULT event on related image click", async ({
+ context,
+ page,
+}) => {
+ const analyticsEvents = collectAnalyticsEvents(context)
+
+ await goToCustomImagePage(page)
+
+ await page
+ .getByRole("region", { name: t("imageDetails.relatedImages") })
+ .locator("img")
+ .first()
+ .click()
+ await page.waitForURL(/image\/1c57f839-6be5-449a-b41a-b1c7de819182/)
+
+ const selectSearchResultEvent = analyticsEvents.find(
+ (event) => event.n === "SELECT_SEARCH_RESULT"
+ )
+
+ expectEventPayloadToMatch(selectSearchResultEvent, {
+ id: "1c57f839-6be5-449a-b41a-b1c7de819182",
+ relatedTo: imageObject.id,
+ kind: "related",
+ mediaType: "image",
+ provider: "flickr",
+ query: "",
+ sensitivities: "",
+ isBlurred: false,
+ })
+})
diff --git a/frontend/test/tapes/related/audio/1cb1af19-7232-40c2-b9ea-8d6c47e677f9_keep-alive.json5 b/frontend/test/tapes/related/audio/1cb1af19-7232-40c2-b9ea-8d6c47e677f9_keep-alive.json5
new file mode 100644
index 00000000000..8b3b97512f1
--- /dev/null
+++ b/frontend/test/tapes/related/audio/1cb1af19-7232-40c2-b9ea-8d6c47e677f9_keep-alive.json5
@@ -0,0 +1,428 @@
+{
+ meta: {
+ createdAt: '2024-03-01T17:57:55.217Z',
+ host: 'https://api.openverse.engineering',
+ resHumanReadable: true,
+ resUncompressed: true,
+ },
+ req: {
+ headers: {
+ connection: 'keep-alive',
+ },
+ url: '/v1/audio/1cb1af19-7232-40c2-b9ea-8d6c47e677f9/related/?peaks=true',
+ method: 'GET',
+ body: '',
+ },
+ res: {
+ status: 200,
+ headers: {
+ date: [
+ 'Fri, 01 Mar 2024 17:57:56 GMT',
+ ],
+ 'content-type': [
+ 'application/json',
+ ],
+ 'transfer-encoding': [
+ 'chunked',
+ ],
+ connection: [
+ 'keep-alive',
+ ],
+ vary: [
+ 'Accept-Encoding, Accept, Authorization, origin',
+ ],
+ allow: [
+ 'GET, HEAD, OPTIONS',
+ ],
+ 'x-ratelimit-limit-anon_burst': [
+ '20/min',
+ ],
+ 'x-ratelimit-available-anon_burst': [
+ '19',
+ ],
+ 'x-ratelimit-limit-anon_sustained': [
+ '200/day',
+ ],
+ 'x-ratelimit-available-anon_sustained': [
+ '199',
+ ],
+ 'x-frame-options': [
+ 'DENY',
+ ],
+ 'x-content-type-options': [
+ 'nosniff',
+ ],
+ 'referrer-policy': [
+ 'same-origin',
+ ],
+ 'cross-origin-opener-policy': [
+ 'same-origin',
+ ],
+ 'x-request-id': [
+ 'd1652212f7124e64b6267a22d509c087',
+ ],
+ 'cache-control': [
+ 'max-age=14400',
+ ],
+ 'cf-cache-status': [
+ 'MISS',
+ ],
+ 'last-modified': [
+ 'Fri, 01 Mar 2024 17:57:56 GMT',
+ ],
+ 'strict-transport-security': [
+ 'max-age=15552000; includeSubDomains; preload',
+ ],
+ server: [
+ 'cloudflare',
+ ],
+ 'cf-ray': [
+ '85db083f2a349295-FRA',
+ ],
+ 'content-encoding': [
+ 'br',
+ ],
+ 'alt-svc': [
+ 'h3=":443"; ma=86400',
+ ],
+ },
+ body: {
+ result_count: 10,
+ page_count: 1,
+ page_size: 10,
+ page: 1,
+ results: [
+ {
+ id: '0b94484c-d7d1-43f2-8710-69399b6a0310',
+ title: 'En-us-honey plant',
+ indexed_on: '2023-04-23T10:50:59.108716Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=71324819',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/c/cc/En-us-honey_plant.flac',
+ creator: 'Baymiwuk',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Baymiwuk',
+ license: 'by-sa',
+ license_version: '4.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/4.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 109019,
+ filetype: 'flac',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-honey plant" by Baymiwuk is licensed under CC BY-SA 4.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/4.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 2925,
+ bit_rate: 298098,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/0b94484c-d7d1-43f2-8710-69399b6a0310/',
+ related_url: 'http://localhost:49153/v1/audio/0b94484c-d7d1-43f2-8710-69399b6a0310/related/',
+ waveform: 'http://localhost:49153/v1/audio/0b94484c-d7d1-43f2-8710-69399b6a0310/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '2bf0802e-5b4c-4ca2-91db-fce302edee7d',
+ title: 'En-us-hangover',
+ indexed_on: '2023-04-02T11:28:46.091884Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=1785152',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/f/f3/En-us-hangover.ogg',
+ creator: 'Dvortygirl',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Dvortygirl',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 13547,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-hangover" by Dvortygirl is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1100,
+ bit_rate: 80000,
+ sample_rate: 44000,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/2bf0802e-5b4c-4ca2-91db-fce302edee7d/',
+ related_url: 'http://localhost:49153/v1/audio/2bf0802e-5b4c-4ca2-91db-fce302edee7d/related/',
+ waveform: 'http://localhost:49153/v1/audio/2bf0802e-5b4c-4ca2-91db-fce302edee7d/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '1a83bd4c-621e-4bf1-aebf-f9ee61bed581',
+ title: 'En-us-lemongrass',
+ indexed_on: '2023-04-02T11:28:46.091884Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=1785176',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/e/e7/En-us-lemongrass.ogg',
+ creator: 'Dvortygirl',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Dvortygirl',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 16104,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-lemongrass" by Dvortygirl is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1350,
+ bit_rate: 80000,
+ sample_rate: 44000,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/1a83bd4c-621e-4bf1-aebf-f9ee61bed581/',
+ related_url: 'http://localhost:49153/v1/audio/1a83bd4c-621e-4bf1-aebf-f9ee61bed581/related/',
+ waveform: 'http://localhost:49153/v1/audio/1a83bd4c-621e-4bf1-aebf-f9ee61bed581/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: 'b173728b-ce64-42da-9aa3-c33ac28b00fe',
+ title: 'En-us-incur',
+ indexed_on: '2023-02-26T18:38:57.050261Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=4478589',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/1/15/En-us-incur.ogg',
+ creator: 'EncycloPetey',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:EncycloPetey',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 15919,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-incur" by EncycloPetey is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1393,
+ bit_rate: 96000,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/b173728b-ce64-42da-9aa3-c33ac28b00fe/',
+ related_url: 'http://localhost:49153/v1/audio/b173728b-ce64-42da-9aa3-c33ac28b00fe/related/',
+ waveform: 'http://localhost:49153/v1/audio/b173728b-ce64-42da-9aa3-c33ac28b00fe/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '32c8237b-be69-4400-bbe1-48a76a36c09c',
+ title: 'En-us-phagocytosis',
+ indexed_on: '2023-07-13T00:09:33.097368Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=134331612',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/3/36/En-us-phagocytosis.ogg',
+ creator: 'K schadd',
+ creator_url: 'https://commons.wikimedia.org/w/index.php?title=User:K_schadd&action=edit&redlink=1',
+ license: 'by-sa',
+ license_version: '4.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/4.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 48512,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-phagocytosis" by K schadd is licensed under CC BY-SA 4.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/4.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1555,
+ bit_rate: 256000,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/32c8237b-be69-4400-bbe1-48a76a36c09c/',
+ related_url: 'http://localhost:49153/v1/audio/32c8237b-be69-4400-bbe1-48a76a36c09c/related/',
+ waveform: 'http://localhost:49153/v1/audio/32c8237b-be69-4400-bbe1-48a76a36c09c/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '9f0a8b59-b3f4-4246-a104-eb2f0149297b',
+ title: 'En-US Pulliam',
+ indexed_on: '2023-10-08T00:16:08.443366Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=138588941',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/6/63/En-US_Pulliam.ogg',
+ creator: 'JutishMale',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:JutishMale',
+ license: 'by-sa',
+ license_version: '4.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/4.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: null,
+ genres: null,
+ filesize: 17780,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-US Pulliam" by JutishMale is licensed under CC BY-SA 4.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/4.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1739,
+ bit_rate: 80000,
+ sample_rate: 48000,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/9f0a8b59-b3f4-4246-a104-eb2f0149297b/',
+ related_url: 'http://localhost:49153/v1/audio/9f0a8b59-b3f4-4246-a104-eb2f0149297b/related/',
+ waveform: 'http://localhost:49153/v1/audio/9f0a8b59-b3f4-4246-a104-eb2f0149297b/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '9655c45e-1fde-45e4-a901-451bce9793e1',
+ title: 'En-us-faith',
+ indexed_on: '2023-11-12T22:12:01.665345Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=399134',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/3/3d/En-us-faith.ogg',
+ creator: 'Dvortygirl',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Dvortygirl',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 13295,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-faith" by Dvortygirl is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 859,
+ bit_rate: 96001,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/9655c45e-1fde-45e4-a901-451bce9793e1/',
+ related_url: 'http://localhost:49153/v1/audio/9655c45e-1fde-45e4-a901-451bce9793e1/related/',
+ waveform: 'http://localhost:49153/v1/audio/9655c45e-1fde-45e4-a901-451bce9793e1/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: 'e0455496-7d3f-4df8-a383-39bf3dba6b6e',
+ title: 'En-us-backlash',
+ indexed_on: '2023-01-01T17:19:01.506240Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=194518',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/8/88/En-us-backlash.ogg',
+ creator: 'Dvortygirl',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Dvortygirl',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 12029,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-backlash" by Dvortygirl is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 661,
+ bit_rate: 96001,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/e0455496-7d3f-4df8-a383-39bf3dba6b6e/',
+ related_url: 'http://localhost:49153/v1/audio/e0455496-7d3f-4df8-a383-39bf3dba6b6e/related/',
+ waveform: 'http://localhost:49153/v1/audio/e0455496-7d3f-4df8-a383-39bf3dba6b6e/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: 'a2b0f9a4-09a6-4036-9748-abf656375121',
+ title: 'En-us-asked',
+ indexed_on: '2023-04-16T12:13:03.247420Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=1225610',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/8/87/En-us-asked.ogg',
+ creator: 'Dvortygirl',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:Dvortygirl',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 12351,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-asked" by Dvortygirl is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 754,
+ bit_rate: 96001,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/a2b0f9a4-09a6-4036-9748-abf656375121/',
+ related_url: 'http://localhost:49153/v1/audio/a2b0f9a4-09a6-4036-9748-abf656375121/related/',
+ waveform: 'http://localhost:49153/v1/audio/a2b0f9a4-09a6-4036-9748-abf656375121/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ {
+ id: '18afe312-fefc-4c8a-92b5-64973e91cf52',
+ title: 'En-us-Iran',
+ indexed_on: '2023-07-02T13:36:45.166361Z',
+ foreign_landing_url: 'https://commons.wikimedia.org/w/index.php?curid=12140601',
+ url: 'https://upload.wikimedia.org/wikipedia/commons/e/e3/En-us-Iran.ogg',
+ creator: 'EncycloPetey',
+ creator_url: 'https://commons.wikimedia.org/wiki/User:EncycloPetey',
+ license: 'by-sa',
+ license_version: '3.0',
+ license_url: 'https://creativecommons.org/licenses/by-sa/3.0/',
+ provider: 'wikimedia_audio',
+ source: 'wikimedia_audio',
+ category: 'pronunciation',
+ genres: null,
+ filesize: 15149,
+ filetype: 'ogg',
+ tags: [],
+ alt_files: null,
+ attribution: '"En-us-Iran" by EncycloPetey is licensed under CC BY-SA 3.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/3.0/.',
+ fields_matched: [],
+ mature: false,
+ audio_set: null,
+ duration: 1346,
+ bit_rate: 96000,
+ sample_rate: 44100,
+ thumbnail: null,
+ detail_url: 'http://localhost:49153/v1/audio/18afe312-fefc-4c8a-92b5-64973e91cf52/',
+ related_url: 'http://localhost:49153/v1/audio/18afe312-fefc-4c8a-92b5-64973e91cf52/related/',
+ waveform: 'http://localhost:49153/v1/audio/18afe312-fefc-4c8a-92b5-64973e91cf52/waveform/',
+ peaks: [],
+ unstable__sensitivity: [],
+ },
+ ],
+ },
+ },
+}
\ No newline at end of file