support intl tenor links (#2438)

* support intl tenor links

* update test cases
zio/stable
Hailey 2024-01-08 13:55:48 -08:00 committed by GitHub
parent 9eeff2cc5c
commit 928a626c2e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 2 deletions

View File

@ -455,6 +455,7 @@ describe('parseEmbedPlayerFromUrl', () => {
'https://tenor.com/notView/gifId',
'https://tenor.com/view',
'https://tenor.com/view/gifId.gif',
'https://tenor.com/intl/view/gifId.gif',
]
const outputs = [
@ -742,6 +743,13 @@ describe('parseEmbedPlayerFromUrl', () => {
hideDetails: true,
playerUri: 'https://tenor.com/view/gifId.gif',
},
{
type: 'tenor_gif',
source: 'tenor',
isGif: true,
hideDetails: true,
playerUri: 'https://tenor.com/intl/view/gifId.gif',
},
]
it('correctly grabs the correct id from uri', () => {

View File

@ -319,9 +319,12 @@ export function parseEmbedPlayerFromUrl(
}
if (urlp.hostname === 'tenor.com' || urlp.hostname === 'www.tenor.com') {
const [_, path, filename] = urlp.pathname.split('/')
const [_, pathOrIntl, pathOrFilename, intlFilename] =
urlp.pathname.split('/')
const isIntl = pathOrFilename === 'view'
const filename = isIntl ? intlFilename : pathOrFilename
if (path === 'view' && filename) {
if ((pathOrIntl === 'view' || pathOrFilename === 'view') && filename) {
const includesExt = filename.split('.').pop() === 'gif'
return {