YouTube Helper API

YouTube Helper API.

Pada tanggal 21 September 2025. Lihat %(latest_version_link).

Ini adalah versi dari skrip ini yang kodenya telah diperbarui. Tampilkan semua versi.

  • v0.5.7 01 Oktober 2025
    New
    • Refactored storageApi to use a declarative lookup table, making it more readable and easier to extend.
    • Converted dynamic DOM element properties on the page object to use getters, ensuring references are always current on a Single Page Application.
    • Consolidated reloadVideo functions to remove duplicated code and follow the DRY principle.
    • Adopted underscore (_) prefix as a naming convention for internal functions to clearly separate them from the public API.
    • Added a console warning if a non-existent YouTube function was called through the API proxy instead of failing silently.
    Fixes
    • Fixed a bug that caused duplicate timeupdate event listeners to be added repeatedly by tracking listener attachment in a WeakMap.
    • Corrected storage functions to consistently use the storageApi abstraction instead of calling GM functions directly.
  • v0.5.6 01 Oktober 2025

    Added a fuction to reload the current video.

  • v0.5.5 01 Oktober 2025

    Added distinction between content that is live or was live (VOD), and content that is currently live exclusively.

  • v0.5.4 29 September 2025

    Added a private event target so we don't fire event into the document directly. Global event handshake may eventually be added.

  • v0.5.3 29 September 2025

    Use a singleton pattern for initiation to avoid duplicate events firing.

  • v0.5.2 29 September 2025

    Fixed tracked playback progress not updating when loading a new video.

  • v0.5.1 29 September 2025

    Updated all public storage functions to eager sync between script storage and local storage.
    Updated page type updating to listen for different events. Should now update earlier and more consistently.
    Fix time specified video detection. YouTube player response object turns out to be unreliable for this.

  • v0.5.0 29 September 2025

    No longer exposing storageApi.
    Added public delete and list functions for synced storage.

  • v0.4.8 29 September 2025

    Added support for time specified video detection.
    Added support for playlist id detection.
    Exposed storagedApi to publicApi.

  • v0.4.7 29 September 2025

    Fixed ad detection and tracking.

  • v0.4.6 29 September 2025

    Updated player selector for mobile.

  • v0.4.5 28 September 2025

    Updated how premium bitrate options are determined.

  • v0.4.4 27 September 2025

    minor update. no functional change.

  • v0.4.3 27 September 2025

    Updated saving and loading logic to try to use both GM and localStorage in parallel.

  • v0.4.2 27 September 2025

    Let consumer scripts to grant handling.

  • v0.4.1 27 September 2025

    minor bug fix.

  • v0.4.0 27 September 2025

    Testing if GM functions can be extracted to a helper api.

  • v0.3.0 22 September 2025

    Implemented a custom video playback progress tracking function that avoids tracking ad playback progresses.
    Implemented a custom ad state tracking function.
    Implemented a custom function to reload the current playing video to the current tracked playback progress. Removed inline comments. Code is just updating too much to maintain comments at this point.

  • v0.2.1 21 September 2025

    -

  • v0.2.0 21 September 2025

    Added inline documentations.
    Added save/load functions for settings.

  • v0.1.2 21 September 2025

    Delay initial player update check with the pageshow event listener.

  • v0.1.1 21 September 2025
  • v0.1.0 21 September 2025

    Added a proxy for YouTube's API

  • v0.0.9 20 September 2025

    -

  • v0.0.9 20 September 2025

    Changed page type finding logic. Could be reverted.

  • v0.0.8.3 20 September 2025
  • v0.0.8.3 20 September 2025

    test loading order.

  • v0.0.8.1 20 September 2025
  • v0.0.8 20 September 2025

    Bug Fixes

  • v0.0.7 20 September 2025

    Pass entire api with event.

  • v0.0.6.2 20 September 2025

    Update custom event name for consistency.

  • v0.0.6.1 20 September 2025

    Just use shallow copy. Deep freeze needs more logic to work properly and I have decided to hold off until absolutely needed.

  • v0.0.6 20 September 2025

    Updated getter logic in the public API section.

  • v0.0.5.2 20 September 2025

    fix bug

  • v0.0.5.1 20 September 2025
  • v0.0.5 20 September 2025
  • v0.0.3 18 September 2025

    Added playback resolution control functions.

  • v0.0.2 18 September 2025

    Added a bunch for stuff.

  • v0.0.1 17 September 2025