fix(shorts): son par defaut, avance auto, anti-Forbidden DM, autoplay Twitch/Rumble
CI / build-and-test (push) Successful in 14m56s
CI / build-and-test (push) Successful in 14m56s
Son active par defaut (YT/OD/DM/PT avec son ; clips Twitch en muet force, sans API de volume). Avance auto en fin de lecture (infoDelivery YT + minuteur duree generique garde par index/videoId, ignore si onglet cache). Dailymotion : allow_embed demande cote serveur, mappe en embeddable, propage en raw.allowEmbed pour le garde isPlayable (fini les Forbidden). Rumble autoplay=1/2 selon muet + nudge playVideo YT.
This commit is contained in:
@@ -20,7 +20,11 @@ const handler = {
|
||||
page: Math.max(1, Number(page || 1)).toString(),
|
||||
// Map our sort to Dailymotion API sort: relevance | visited (views) | recent (date)
|
||||
sort: (sort === 'date' ? 'recent' : (sort === 'views' ? 'visited' : 'relevance')),
|
||||
fields: 'id,title,thumbnail_url,thumbnail_360_url,thumbnail_480_url,thumbnail_720_url,duration,views_total,width,height,owner.id,owner.screenname,owner.avatar_80_url,created_time'
|
||||
// `allow_embed` est indispensable : une vidéo dont le propriétaire a
|
||||
// désactivé l'embed répond "Forbidden" dans le player. Propagé tel
|
||||
// quel (`embeddable`) pour que le front l'exclue AVANT l'affichage
|
||||
// (même garde que le chemin historique `raw.allowEmbed`).
|
||||
fields: 'id,title,thumbnail_url,thumbnail_360_url,thumbnail_480_url,thumbnail_720_url,duration,views_total,width,height,allow_embed,owner.id,owner.screenname,owner.avatar_80_url,created_time'
|
||||
})
|
||||
);
|
||||
|
||||
@@ -47,6 +51,9 @@ const handler = {
|
||||
views: Number(item.views_total || 0),
|
||||
uploadedDate: item.created_time ? new Date(item.created_time * 1000).toISOString() : '',
|
||||
type: 'video',
|
||||
// `false` explicite uniquement : champ absent = on ne sait pas (le
|
||||
// doute profite à la vidéo, doctrine « absent = absent »).
|
||||
...(typeof item.allow_embed === 'boolean' ? { embeddable: item.allow_embed } : {}),
|
||||
...(Number.isFinite(w) && w > 0 ? { width: w } : {}),
|
||||
...(Number.isFinite(h) && h > 0 ? { height: h } : {}),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user