@nuxt/scripts 1.3.4 → 1.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Dl7W1ViV.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.9HJPJ6Hp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Dl7W1ViV.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Dl7W1ViV.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"c38edf4f-387c-4148-a34a-ca78a5b40869",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786626908840,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.CYUdJFoE.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"173480db-0944-415b-962d-d619682f0042",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786893487959,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Dl7W1ViV.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.9HJPJ6Hp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Dl7W1ViV.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Dl7W1ViV.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"c38edf4f-387c-4148-a34a-ca78a5b40869",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786626908841,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.CYUdJFoE.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"173480db-0944-415b-962d-d619682f0042",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786893487960,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Dl7W1ViV.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.9HJPJ6Hp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Dl7W1ViV.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Dl7W1ViV.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"c38edf4f-387c-4148-a34a-ca78a5b40869",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786626908842,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.CYUdJFoE.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"173480db-0944-415b-962d-d619682f0042",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786893487961,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Dl7W1ViV.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.9HJPJ6Hp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Dl7W1ViV.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Dl7W1ViV.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"c38edf4f-387c-4148-a34a-ca78a5b40869",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786626908842,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"}}</script><link rel="stylesheet" href="/__nuxt-scripts/_nuxt/entry.CYUdJFoE.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B551Pnuh.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BKdLzFmX.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CH5oUfNi.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CP7c-Js6.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DK3Fl9T5.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/C_v3_O0R.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CC0GKROJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/B8_EBdhg.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/CxN78VhB.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BDNMzG2s.js"><script type="module" src="/__nuxt-scripts/_nuxt/Bf2Kt1P0.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DMbpbO54.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/qhed-kSA.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BgS3c2Ky.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/VbXTXTou.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/BZCL-v6S.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-404.Bq2JQbJs.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/DTP8MRtW.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-scripts/_nuxt/error-500.5E_FOzlc.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-scripts/_nuxt/KxC4Q3ev.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-scripts",buildId:"173480db-0944-415b-962d-d619682f0042",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1786893487960,false]</script></body></html>
package/dist/module.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "compatibility": {
5
5
  "nuxt": ">=3.16"
6
6
  },
7
- "version": "1.3.4",
7
+ "version": "1.3.5",
8
8
  "builder": {
9
9
  "@nuxt/module-builder": "1.0.2",
10
10
  "unbuild": "3.6.1"
package/dist/module.mjs CHANGED
@@ -21,7 +21,7 @@ import MagicString from 'magic-string';
21
21
  import { hash } from 'ohash';
22
22
  import { getBundleResolve, registry, resolveCapabilities, getPartytownForwards, buildProxyConfigsFromRegistry, generatePartytownResolveUrl } from './registry.mjs';
23
23
  import { ensureNuxtScriptsCacheStorage } from '../dist/runtime/server/utils/cache-config.js';
24
- import { isPublicNetworkHostname } from '../dist/runtime/server/utils/network-host.js';
24
+ import { isPublicNetworkHostname } from '../dist/runtime/server/utils/network-hostname.js';
25
25
  import '../dist/runtime/registry/schemas.js';
26
26
 
27
27
  const renderedScript = /* @__PURE__ */ new Map();
@@ -2132,6 +2132,13 @@ const module$1 = defineNuxtModule({
2132
2132
  logger.debug("The module is disabled, skipping setup.");
2133
2133
  return;
2134
2134
  }
2135
+ const networkDispatcherAlias = "#nuxt-scripts/network-dispatcher";
2136
+ const nodeNetworkDispatcherPath = await resolvePath("./runtime/server/utils/network-dispatcher.node");
2137
+ const platformNetworkDispatcherPath = await resolvePath("./runtime/server/utils/network-dispatcher.platform");
2138
+ nuxt.options.alias[networkDispatcherAlias] = nodeNetworkDispatcherPath;
2139
+ nuxt.hook("nitro:init", (nitro) => {
2140
+ nitro.options.alias[networkDispatcherAlias] = nitro.options.node ? nodeNetworkDispatcherPath : platformNetworkDispatcherPath;
2141
+ });
2135
2142
  await setupNitroRuntimeCompatibility(nuxt);
2136
2143
  if (nuxt.options.dev) {
2137
2144
  setupDevtools(nuxt, { standalone: config._standaloneDevtools });
@@ -0,0 +1,2 @@
1
+ import type { CreateNetworkDispatcher } from './network-host.js';
2
+ export declare const createNetworkDispatcher: CreateNetworkDispatcher;
@@ -0,0 +1,21 @@
1
+ import { lookup } from "node:dns";
2
+ import { Agent, fetch } from "undici";
3
+ export const createNetworkDispatcher = async (createLookup, resolveHostnameOverride) => {
4
+ const resolveHostname = resolveHostnameOverride || ((hostname, callback) => {
5
+ lookup(hostname, { all: true, verbatim: true }, (error, addresses) => {
6
+ callback(error, addresses);
7
+ });
8
+ });
9
+ const dispatcher = new Agent({
10
+ connect: {
11
+ lookup: createLookup(resolveHostname)
12
+ }
13
+ });
14
+ return {
15
+ fetch: ((input, init) => fetch(input, {
16
+ ...init,
17
+ dispatcher
18
+ })),
19
+ close: () => dispatcher.close()
20
+ };
21
+ };
@@ -0,0 +1,2 @@
1
+ import type { CreateNetworkDispatcher } from './network-host.js';
2
+ export declare const createNetworkDispatcher: CreateNetworkDispatcher;
@@ -0,0 +1,5 @@
1
+ export const createNetworkDispatcher = async () => ({
2
+ fetch: globalThis.fetch,
3
+ close: async () => {
4
+ }
5
+ });
@@ -1,21 +1,20 @@
1
1
  import type { LookupFunction } from 'node:net';
2
- interface NetworkAddress {
2
+ export { isPublicNetworkHostname } from './network-hostname.js';
3
+ export interface NetworkAddress {
3
4
  address: string;
4
5
  family: 4 | 6;
5
6
  }
6
- type ResolveNetworkHostname = (hostname: string, callback: (error: Error | null, addresses: NetworkAddress[]) => void) => void;
7
+ export type ResolveNetworkHostname = (hostname: string, callback: (error: Error | null, addresses: NetworkAddress[]) => void) => void;
7
8
  export interface PublicNetworkDispatcher {
8
9
  fetch: typeof globalThis.fetch;
9
10
  close: () => Promise<void>;
10
11
  }
12
+ export type CreateNetworkDispatcher = (createLookup: (resolveHostname: ResolveNetworkHostname) => LookupFunction, resolveHostnameOverride?: ResolveNetworkHostname) => Promise<PublicNetworkDispatcher>;
11
13
  /** Close a dispatcher without replacing the request or stream error already in flight. */
12
14
  export declare function closePublicNetworkDispatcher(dispatcher: PublicNetworkDispatcher | undefined, primaryError?: unknown): Promise<void>;
13
- /** Reject hostnames that directly address local, private, link-local, or reserved networks. */
14
- export declare function isPublicNetworkHostname(input: string): boolean;
15
15
  /** Resolve once inside the socket connection, reject mixed/private answers, then pin the selected address. */
16
16
  export declare function createPublicNetworkLookup(resolveHostname: ResolveNetworkHostname): LookupFunction;
17
- /** Create a Node fetch dispatcher whose socket lookup validates and pins every DNS answer. */
17
+ /** Create a host fetch implementation that validates and pins every DNS answer when Node permits it. */
18
18
  export declare function createPublicNetworkDispatcher(resolveHostnameOverride?: ResolveNetworkHostname): Promise<PublicNetworkDispatcher>;
19
19
  /** Detect the tagged DNS policy error through fetch/ofetch cause wrappers. */
20
20
  export declare function isPrivateNetworkResolutionError(error: unknown): boolean;
21
- export {};
@@ -1,12 +1,6 @@
1
- import { runtime } from "std-env";
2
- const LOCAL_HOST_SUFFIXES = [
3
- "home",
4
- "internal",
5
- "lan",
6
- "local",
7
- "localdomain",
8
- "localhost"
9
- ];
1
+ import { createNetworkDispatcher } from "#nuxt-scripts/network-dispatcher";
2
+ import { isPublicNetworkHostname } from "./network-hostname.js";
3
+ export { isPublicNetworkHostname } from "./network-hostname.js";
10
4
  export async function closePublicNetworkDispatcher(dispatcher, primaryError) {
11
5
  if (!dispatcher)
12
6
  return;
@@ -19,39 +13,6 @@ export async function closePublicNetworkDispatcher(dispatcher, primaryError) {
19
13
  throw cleanupError;
20
14
  });
21
15
  }
22
- function parseIPv4(hostname) {
23
- const parts = hostname.split(".");
24
- if (parts.length !== 4 || parts.some((part) => !/^\d{1,3}$/.test(part)))
25
- return;
26
- const octets = parts.map(Number);
27
- return octets.every((octet) => octet >= 0 && octet <= 255) ? octets : void 0;
28
- }
29
- function isPublicIPv4([a, b, c]) {
30
- return a !== 0 && a !== 10 && a !== 127 && !(a === 100 && b >= 64 && b <= 127) && !(a === 169 && b === 254) && !(a === 172 && b >= 16 && b <= 31) && !(a === 192 && b === 0 && c === 0) && !(a === 192 && b === 0 && c === 2) && !(a === 192 && b === 88 && c === 99) && !(a === 192 && b === 168) && !(a === 198 && (b === 18 || b === 19)) && !(a === 198 && b === 51 && c === 100) && !(a === 203 && b === 0 && c === 113) && a < 224;
31
- }
32
- function isPublicIPv6(hostname) {
33
- const groups = hostname.split(":");
34
- const firstGroup = Number.parseInt(groups[0] || "0", 16);
35
- if (!Number.isInteger(firstGroup) || firstGroup < 8192 || firstGroup > 16383)
36
- return false;
37
- const secondGroup = Number.parseInt(groups[1] || "0", 16);
38
- return !(firstGroup === 8193 && (secondGroup === 0 || secondGroup === 3512)) && firstGroup !== 8194;
39
- }
40
- export function isPublicNetworkHostname(input) {
41
- const hostname = input.trim().toLowerCase().replace(/^\[|\]$/g, "").split("%", 1)[0].replace(/\.$/, "");
42
- if (!hostname)
43
- return false;
44
- const ipv4 = parseIPv4(hostname);
45
- if (ipv4)
46
- return isPublicIPv4(ipv4);
47
- if (hostname.includes(":"))
48
- return isPublicIPv6(hostname);
49
- const labels = hostname.split(".");
50
- if (labels.length < 2)
51
- return false;
52
- const suffix = labels.at(-1);
53
- return !LOCAL_HOST_SUFFIXES.includes(suffix);
54
- }
55
16
  export function createPublicNetworkLookup(resolveHostname) {
56
17
  const networkLookup = (hostname, options, callback) => {
57
18
  resolveHostname(hostname, (error, addresses) => {
@@ -77,29 +38,7 @@ export function createPublicNetworkLookup(resolveHostname) {
77
38
  return networkLookup;
78
39
  }
79
40
  export async function createPublicNetworkDispatcher(resolveHostnameOverride) {
80
- if (runtime !== "node")
81
- return { fetch: globalThis.fetch, close: async () => {
82
- } };
83
- const { Agent, fetch } = await import("undici");
84
- let resolveHostname = resolveHostnameOverride;
85
- if (!resolveHostname) {
86
- const { lookup } = await import("node:dns");
87
- resolveHostname = (hostname, callback) => lookup(hostname, { all: true, verbatim: true }, (error, addresses) => {
88
- callback(error, addresses);
89
- });
90
- }
91
- const dispatcher = new Agent({
92
- connect: {
93
- lookup: createPublicNetworkLookup(resolveHostname)
94
- }
95
- });
96
- return {
97
- fetch: ((input, init) => fetch(input, {
98
- ...init,
99
- dispatcher
100
- })),
101
- close: () => dispatcher.close()
102
- };
41
+ return createNetworkDispatcher(createPublicNetworkLookup, resolveHostnameOverride);
103
42
  }
104
43
  export function isPrivateNetworkResolutionError(error) {
105
44
  let current = error;
@@ -0,0 +1,2 @@
1
+ /** Reject hostnames that directly address local, private, link-local, or reserved networks. */
2
+ export declare function isPublicNetworkHostname(input: string): boolean;
@@ -0,0 +1,41 @@
1
+ const LOCAL_HOST_SUFFIXES = [
2
+ "home",
3
+ "internal",
4
+ "lan",
5
+ "local",
6
+ "localdomain",
7
+ "localhost"
8
+ ];
9
+ function parseIPv4(hostname) {
10
+ const parts = hostname.split(".");
11
+ if (parts.length !== 4 || parts.some((part) => !/^\d{1,3}$/.test(part)))
12
+ return;
13
+ const octets = parts.map(Number);
14
+ return octets.every((octet) => octet >= 0 && octet <= 255) ? octets : void 0;
15
+ }
16
+ function isPublicIPv4([a, b, c]) {
17
+ return a !== 0 && a !== 10 && a !== 127 && !(a === 100 && b >= 64 && b <= 127) && !(a === 169 && b === 254) && !(a === 172 && b >= 16 && b <= 31) && !(a === 192 && b === 0 && c === 0) && !(a === 192 && b === 0 && c === 2) && !(a === 192 && b === 88 && c === 99) && !(a === 192 && b === 168) && !(a === 198 && (b === 18 || b === 19)) && !(a === 198 && b === 51 && c === 100) && !(a === 203 && b === 0 && c === 113) && a < 224;
18
+ }
19
+ function isPublicIPv6(hostname) {
20
+ const groups = hostname.split(":");
21
+ const firstGroup = Number.parseInt(groups[0] || "0", 16);
22
+ if (!Number.isInteger(firstGroup) || firstGroup < 8192 || firstGroup > 16383)
23
+ return false;
24
+ const secondGroup = Number.parseInt(groups[1] || "0", 16);
25
+ return !(firstGroup === 8193 && (secondGroup === 0 || secondGroup === 3512)) && firstGroup !== 8194;
26
+ }
27
+ export function isPublicNetworkHostname(input) {
28
+ const hostname = input.trim().toLowerCase().replace(/^\[|\]$/g, "").split("%", 1)[0].replace(/\.$/, "");
29
+ if (!hostname)
30
+ return false;
31
+ const ipv4 = parseIPv4(hostname);
32
+ if (ipv4)
33
+ return isPublicIPv4(ipv4);
34
+ if (hostname.includes(":"))
35
+ return isPublicIPv6(hostname);
36
+ const labels = hostname.split(".");
37
+ if (labels.length < 2)
38
+ return false;
39
+ const suffix = labels.at(-1);
40
+ return !LOCAL_HOST_SUFFIXES.includes(suffix);
41
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxt/scripts",
3
3
  "type": "module",
4
- "version": "1.3.4",
4
+ "version": "1.3.5",
5
5
  "description": "Load third-party scripts with better performance, privacy and DX in Nuxt Apps.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",
@@ -1 +0,0 @@
1
- {"id":"c38edf4f-387c-4148-a34a-ca78a5b40869","timestamp":1786626902448,"prerendered":[]}