From 1392f31ed8052a95591f9aa571b7e2f14bfd7a33 Mon Sep 17 00:00:00 2001 From: Stanislas Signoud Date: Wed, 12 Jul 2023 03:02:32 +0200 Subject: [PATCH] Fix sounds not being loaded from assets host (#25931) --- .../mastodon/store/middlewares/sounds.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/app/javascript/mastodon/store/middlewares/sounds.ts b/app/javascript/mastodon/store/middlewares/sounds.ts index 6005d3649e..47b9fb8ba5 100644 --- a/app/javascript/mastodon/store/middlewares/sounds.ts +++ b/app/javascript/mastodon/store/middlewares/sounds.ts @@ -1,5 +1,8 @@ import type { Middleware, AnyAction } from 'redux'; +import ready from 'mastodon/ready'; +import { assetHost } from 'mastodon/utils/config'; + import type { RootState } from '..'; interface AudioSource { @@ -35,18 +38,20 @@ export const soundsMiddleware = (): Middleware< Record, RootState > => { - const soundCache: { [key: string]: HTMLAudioElement } = { - boop: createAudio([ + const soundCache: { [key: string]: HTMLAudioElement } = {}; + + void ready(() => { + soundCache.boop = createAudio([ { - src: '/sounds/boop.ogg', + src: `${assetHost}/sounds/boop.ogg`, type: 'audio/ogg', }, { - src: '/sounds/boop.mp3', + src: `${assetHost}/sounds/boop.mp3`, type: 'audio/mpeg', }, - ]), - }; + ]); + }); return () => (next) =>