12345678910111213141516171819202122 |
- /**
- * Gets the source (i.e. host) of the script currently running.
- * @returns {string}
- */
- function getCurrentScriptSource() {
- // `document.currentScript` is the most accurate way to get the current running script,
- // but is not supported in all browsers (most notably, IE).
- if (document.currentScript) {
- return document.currentScript.getAttribute('src');
- }
- // Fallback to getting all scripts running in the document.
- const scriptElements = document.scripts || [];
- const currentScript = scriptElements[scriptElements.length - 1];
- if (currentScript) {
- return currentScript.getAttribute('src');
- }
- throw new Error('[React Refresh] Failed to get current script source!');
- }
- module.exports = getCurrentScriptSource;
|