From a9112f40738c1c6e57899b75eb4f24c395380149 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Mon, 6 Jan 2025 13:45:44 -0600 Subject: [PATCH] Add Riverside support --- src/lib/strings/embed-player.ts | 10 ++++++++++ src/state/persisted/schema.ts | 1 + 2 files changed, 11 insertions(+) diff --git a/src/lib/strings/embed-player.ts b/src/lib/strings/embed-player.ts index 9ee5128c89..ef21d64e5d 100644 --- a/src/lib/strings/embed-player.ts +++ b/src/lib/strings/embed-player.ts @@ -25,6 +25,7 @@ export const embedPlayerSources = [ 'giphy', 'tenor', 'flickr', + 'riverside', ] as const export type EmbedPlayerSource = (typeof embedPlayerSources)[number] @@ -45,6 +46,7 @@ export type EmbedPlayerType = | 'giphy_gif' | 'tenor_gif' | 'flickr_album' + | 'riverside' export const externalEmbedLabels: Record = { youtube: 'YouTube', @@ -57,6 +59,7 @@ export const externalEmbedLabels: Record = { appleMusic: 'Apple Music', soundcloud: 'SoundCloud', flickr: 'Flickr', + riverside: 'Riverside', } export interface EmbedPlayerParams { @@ -85,6 +88,13 @@ export function parseEmbedPlayerFromUrl( return undefined } + if (urlp.hostname.endsWith('riverside.fm')) { + return { + type: 'riverside', + source: 'riverside', + playerUri: urlp.href, + } + } // youtube if (urlp.hostname === 'youtu.be') { const videoId = urlp.pathname.split('/')[1] diff --git a/src/state/persisted/schema.ts b/src/state/persisted/schema.ts index 0a9e5b2c07..635b101559 100644 --- a/src/state/persisted/schema.ts +++ b/src/state/persisted/schema.ts @@ -106,6 +106,7 @@ const schema = z.object({ appleMusic: z.enum(externalEmbedOptions).optional(), soundcloud: z.enum(externalEmbedOptions).optional(), flickr: z.enum(externalEmbedOptions).optional(), + riverside: z.enum(externalEmbedOptions).optional(), }) .optional(), invites: z.object({