Lecteur Media

Intègre TOUS les lecteurs pour Instagram, Facebook, Twitter, TikTok, Webmshare, (et 50 autres) sur JVC.

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==UserScript==
// @name         Lecteur Media
// @namespace    http://tampermonkey.net/
// @version      1.5.0
// @description  Intègre TOUS les lecteurs pour Instagram, Facebook, Twitter, TikTok, Webmshare, (et 50 autres) sur JVC.
// @author       FaceDePet
// @match        https://www.jeuxvideo.com/forums/*
// @match        https://jvarchive.com/*
// @match        https://jvarchive.st/*
// @icon         https://cdn-icons-png.flaticon.com/512/4187/4187272.png
// @grant        GM_addStyle
// @grant        GM.xmlHttpRequest
// @grant        GM_registerMenuCommand
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_deleteValue
// @connect      bandcamp.com
// @connect      *.bandcamp.com
// @connect      deviantart.com
// @connect      *.deviantart.com
// @connect      discord.com
// @connect      distrokid.com
// @connect      facebook.com
// @connect      www.flickr.com
// @connect      gph.iss
// @connect      gyazo.com
// @connect      *.gyazo.com
// @connect      ibb.co
// @connect      maps.app.goo.gl
// @connect      postimg.cc
// @connect      reddit.com
// @connect      *.reddit.com
// @connect      soundcloud.com
// @connect      stackexchange.com
// @connect      *.stackexchange.com
// @connect      streamable.com
// @connect      *.streamable.com
// @connect      tenor.com
// @connect      tiktok.com
// @connect      *.tiktok.com
// @connect      vxtwitter.com
// @connect      *.vxtwitter.com
// @connect      jvc-preview-proxy.lecteurmedia.workers.dev
// @connect      vxinstagram.com
// @connect      ddinstagram.com
// @connect      wsrv.nl
// @connect      api.cobalt.tools
// @connect      cobalt.tools
// @connect      *
// @run-at       document-start
// @license      MIT
// @require      https://update.greasyfork.org/scripts/554422/1704871/LecteurMedia%20API%20Library.js
// ==/UserScript==

(function() {
    'use strict';

    if (typeof window.LecteurMedia === 'undefined') {
        console.error('Erreur critique : La librairie Lecteur Media n\'a pas pu être chargée.');
        return;
    }

    // =====================================================================================
    // == Exemples d'utilisation de l'API LecteurMedia ==
    // =====================================================================================

    /*
    // EXEMPLE 1 : Version de base, sans @connect requis.
      const lecteurMediaInstance = new window.LecteurMedia({ providers: 'base' });
      lecteurMediaInstance.initStandalone(); // Lance le script en mode autonome
    */

    /*
    // EXEMPLE 2 : Activer uniquement des fournisseurs spécifiques.
      const lecteurMediaInstance = new window.LecteurMedia({
          providers: ['YouTube', 'Twitter', 'Streamable']
      });
      lecteurMediaInstance.initStandalone();
    */

    /*
    // EXEMPLE 3 : Désactiver la fonctionnalité "Collapse/Expand" par défaut.
      const lecteurMediaInstance = new window.LecteurMedia({ collapsible: false });
      lecteurMediaInstance.initStandalone();
    */

    /*
    // EXEMPLE 4 : Intégration dans un autre script (contrôle manuel avec processNode).
    // C'est le mode API pur : on n'utilise PAS initStandalone().
      const lecteurMediaInstance = new window.LecteurMedia();
      const nouvelElement = document.createElement('div');
      lecteurMediaInstance.processNode(nouvelElement);
    */

    /*
    // OUTIL UTILE : Obtenir la liste des @connect nécessaires pour votre configuration.
      const connects = window.LecteurMedia.getRequiredConnects({ providers: ['base', 'connect'] });
      console.log('Directives @connect requises :\n' + connects.join('\n'));
    */

    // =====================================================================================
    // == Configuration active pour la version publique de ce script ==
    // =====================================================================================

    // Tous les fournisseurs par défaut.
    const lecteurMediaInstance = new window.LecteurMedia();
    lecteurMediaInstance.initStandalone();

})();