diff --git a/src/utils.js b/src/utils.js index 99481106..8d4492a8 100644 --- a/src/utils.js +++ b/src/utils.js @@ -24,7 +24,7 @@ export const IS_TESTING = export const IS_PRODUCTION = typeof WEBPACK_IS_PRODUCTION === "undefined" ? false : WEBPACK_IS_PRODUCTION; -export const READTHEDOCS_URL_CHANGED_EVENT = "readthedocsUrlChanged" +export const READTHEDOCS_URL_CHANGED_EVENT = "readthedocsUrlChanged"; export const domReady = new Promise((resolve) => { if ( From a08340a9f56f60fec4e0a33097ef968132a07b09 Mon Sep 17 00:00:00 2001 From: Manuel Kaufmann Date: Wed, 22 Jan 2025 13:01:42 +0100 Subject: [PATCH 5/5] Minor updates from review feedback --- public/index.html | 2 +- src/events.js | 5 +++++ src/utils.js | 5 ++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/public/index.html b/public/index.html index 01ea0a2e..8d786473 100644 --- a/public/index.html +++ b/public/index.html @@ -53,7 +53,7 @@

    Test URL changes

    history.pushState({}, "", `#url-${randomHash}`); }); - window.addEventListener("readthedocsUrlChanged", (ev) => {console.log("URL Change detected!", ev)}); + window.addEventListener("readthedocs-url-changed", (ev) => {console.log("URL Change detected!", ev)});

    Link Previews

    diff --git a/src/events.js b/src/events.js index 740bed97..02cba032 100644 --- a/src/events.js +++ b/src/events.js @@ -8,6 +8,11 @@ export const EVENT_READTHEDOCS_DOCDIFF_HIDE = "readthedocs-docdiff-hide"; export const EVENT_READTHEDOCS_FLYOUT_SHOW = "readthedocs-flyout-show"; export const EVENT_READTHEDOCS_FLYOUT_HIDE = "readthedocs-flyout-hide"; +/** + * Event triggered when the URL has changed dynamically (modifying the history object) + */ +export const EVENT_READTHEDOCS_URL_CHANGED = "readthedocs-url-changed"; + /** * Event triggered when the Read the Docs data is ready to be consumed. * diff --git a/src/utils.js b/src/utils.js index ca4035e6..ff7b2962 100644 --- a/src/utils.js +++ b/src/utils.js @@ -17,6 +17,7 @@ import { ANTORA, DOCSIFY, } from "./constants"; +import { EVENT_READTHEDOCS_URL_CHANGED } from "./events"; export const ADDONS_API_VERSION = "1"; export const ADDONS_API_ENDPOINT = "/_/addons/"; @@ -29,8 +30,6 @@ export const IS_TESTING = export const IS_PRODUCTION = typeof WEBPACK_IS_PRODUCTION === "undefined" ? false : WEBPACK_IS_PRODUCTION; -export const READTHEDOCS_URL_CHANGED_EVENT = "readthedocsUrlChanged"; - export const domReady = new Promise((resolve) => { if ( document.readyState === "interactive" || @@ -187,7 +186,7 @@ export function setupHistoryEvents() { const originalMethod = history[methodName]; history[methodName] = function () { const result = originalMethod.apply(this, arguments); - const event = new Event(READTHEDOCS_URL_CHANGED_EVENT); + const event = new Event(EVENT_READTHEDOCS_URL_CHANGED); event.arguments = arguments; dispatchEvent(event);