nuxt-seo-utils 8.1.8 → 8.1.10

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.
Files changed (33) hide show
  1. package/dist/cli.mjs +1 -1
  2. package/dist/devtools/200.html +1 -1
  3. package/dist/devtools/404.html +1 -1
  4. package/dist/devtools/_nuxt/6917fNJL.js +1 -0
  5. package/dist/devtools/_nuxt/{DIKkjqSm.js → BChpxOVx.js} +1 -1
  6. package/dist/devtools/_nuxt/{Cy-qCfrn.js → BIbJnj5u.js} +1 -1
  7. package/dist/devtools/_nuxt/{Bywdn9yM.js → BIkoEo48.js} +1 -1
  8. package/dist/devtools/_nuxt/{4KpTtx9F.js → BPZJFUvK.js} +1 -1
  9. package/dist/devtools/_nuxt/{BRD_U32-.js → BlsnyXdL.js} +1 -1
  10. package/dist/devtools/_nuxt/{BEcxVnVC.js → CyZlrzIE.js} +15 -15
  11. package/dist/devtools/_nuxt/DevtoolsMetric.DUURkl9X.css +1 -0
  12. package/dist/devtools/_nuxt/{BNgJYF4-.js → DvboaMJb.js} +1 -1
  13. package/dist/devtools/_nuxt/builds/latest.json +1 -1
  14. package/dist/devtools/_nuxt/builds/meta/cf63f5aa-c6ad-4d5c-8dd1-2c0adeb0242e.json +1 -0
  15. package/dist/devtools/_nuxt/debug.CLOlk-lI.css +1 -0
  16. package/dist/devtools/_nuxt/{entry.DZPkkv65.css → entry.Wg4G8OzK.css} +1 -1
  17. package/dist/devtools/_nuxt/tools.mlqfAfdI.css +1 -0
  18. package/dist/devtools/debug/index.html +1 -1
  19. package/dist/devtools/docs/index.html +1 -1
  20. package/dist/devtools/identity/index.html +1 -1
  21. package/dist/devtools/index.html +1 -1
  22. package/dist/devtools/social/index.html +1 -1
  23. package/dist/module.json +1 -1
  24. package/dist/module.mjs +49 -5
  25. package/dist/runtime/app/logic/applyDefaults.js +9 -5
  26. package/dist/runtime/app/plugins/inferSeoMetaPlugin.js +1 -2
  27. package/dist/runtime/app/plugins/siteConfig.js +7 -5
  28. package/package.json +12 -9
  29. package/dist/devtools/_nuxt/CPBXREPo.js +0 -1
  30. package/dist/devtools/_nuxt/DevtoolsMetric.B0IT7l09.css +0 -1
  31. package/dist/devtools/_nuxt/builds/meta/a24989ac-6153-4246-bbab-8496d363a82d.json +0 -1
  32. package/dist/devtools/_nuxt/debug.B5eeYd8b.css +0 -1
  33. package/dist/devtools/_nuxt/tools.ccu-C3wj.css +0 -1
package/dist/cli.mjs CHANGED
@@ -8,7 +8,7 @@ import { colors } from 'consola/utils';
8
8
  import { resolve } from 'pathe';
9
9
 
10
10
  const name = "nuxt-seo-utils";
11
- const version = "8.1.8";
11
+ const version = "8.1.10";
12
12
  const description = "SEO utilities to improve your Nuxt sites discoverability and shareability";
13
13
 
14
14
  const ICON_SIZES = [
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__nuxt-seo-utils/_nuxt/entry.DZPkkv65.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-seo-utils/_nuxt/BEcxVnVC.js"><script type="module" src="/__nuxt-seo-utils/_nuxt/BEcxVnVC.js" crossorigin></script><script>"use strict";(()=>{const t=window,e=document.documentElement,c=["dark","light"],n=getStorageValue("localStorage","nuxt-color-mode")||"system";let i=n==="system"?u():n;const r=e.getAttribute("data-color-mode-forced");r&&(i=r),l(i),t["__NUXT_COLOR_MODE__"]={preference:n,value:i,getColorScheme:u,addColorScheme:l,removeColorScheme:d};function l(o){const s=""+o+"",a="";e.classList?e.classList.add(s):e.className+=" "+s,a&&e.setAttribute("data-"+a,o)}function d(o){const s=""+o+"",a="";e.classList?e.classList.remove(s):e.className=e.className.replace(new RegExp(s,"g"),""),a&&e.removeAttribute("data-"+a)}function f(o){return t.matchMedia("(prefers-color-scheme"+o+")")}function u(){if(t.matchMedia&&f("").media!=="not all"){for(const o of c)if(f(":"+o).matches)return o}return"light"}})();function getStorageValue(t,e){switch(t){case"localStorage":return window.localStorage.getItem(e);case"sessionStorage":return window.sessionStorage.getItem(e);case"cookie":return getCookie(e);default:return null}}function getCookie(t){const c=("; "+window.document.cookie).split("; "+t+"=");if(c.length===2)return c.pop()?.split(";").shift()}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT_SITE_CONFIG__={_priority:{env:-15},env:"production"}</script><script>window.__NUXT__={};window.__NUXT__.config={public:{i18n:{baseUrl:"",defaultLocale:"",rootRedirect:"",redirectStatusCode:302,skipSettingLocaleOnNavigate:false,locales:[],detectBrowserLanguage:{alwaysRedirect:false,cookieCrossOrigin:false,cookieDomain:"",cookieKey:"i18n_redirected",cookieSecure:false,fallbackLocale:"",redirectOn:"root",useCookie:true},experimental:{localeDetector:"",typedPages:true,typedOptionsAndMessages:false,alternateLinkCanonicalQueries:true,devCache:false,cacheLifetime:"",stripMessagesPayload:false,preload:false,strictSeo:false,nitroContextDetection:true,httpCacheDuration:10},domainLocales:{}}},app:{baseURL:"/__nuxt-seo-utils",buildId:"a24989ac-6153-4246-bbab-8496d363a82d",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1776152524779,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__nuxt-seo-utils/_nuxt/entry.Wg4G8OzK.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-seo-utils/_nuxt/CyZlrzIE.js"><script type="module" src="/__nuxt-seo-utils/_nuxt/CyZlrzIE.js" crossorigin></script><script>"use strict";(()=>{const t=window,e=document.documentElement,c=["dark","light"],n=getStorageValue("localStorage","nuxt-color-mode")||"system";let i=n==="system"?u():n;const r=e.getAttribute("data-color-mode-forced");r&&(i=r),l(i),t["__NUXT_COLOR_MODE__"]={preference:n,value:i,getColorScheme:u,addColorScheme:l,removeColorScheme:d};function l(o){const s=""+o+"",a="";e.classList?e.classList.add(s):e.className+=" "+s,a&&e.setAttribute("data-"+a,o)}function d(o){const s=""+o+"",a="";e.classList?e.classList.remove(s):e.className=e.className.replace(new RegExp(s,"g"),""),a&&e.removeAttribute("data-"+a)}function f(o){return t.matchMedia("(prefers-color-scheme"+o+")")}function u(){if(t.matchMedia&&f("").media!=="not all"){for(const o of c)if(f(":"+o).matches)return o}return"light"}})();function getStorageValue(t,e){switch(t){case"localStorage":return window.localStorage.getItem(e);case"sessionStorage":return window.sessionStorage.getItem(e);case"cookie":return getCookie(e);default:return null}}function getCookie(t){const c=("; "+window.document.cookie).split("; "+t+"=");if(c.length===2)return c.pop()?.split(";").shift()}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT_SITE_CONFIG__={_priority:{env:-15},env:"production"}</script><script>window.__NUXT__={};window.__NUXT__.config={public:{i18n:{baseUrl:"",defaultLocale:"",rootRedirect:"",redirectStatusCode:302,skipSettingLocaleOnNavigate:false,locales:[],detectBrowserLanguage:{alwaysRedirect:false,cookieCrossOrigin:false,cookieDomain:"",cookieKey:"i18n_redirected",cookieSecure:false,fallbackLocale:"",redirectOn:"root",useCookie:true},experimental:{localeDetector:"",typedPages:true,typedOptionsAndMessages:false,alternateLinkCanonicalQueries:true,devCache:false,cacheLifetime:"",stripMessagesPayload:false,preload:false,strictSeo:false,nitroContextDetection:true,httpCacheDuration:10},domainLocales:{}}},app:{baseURL:"/__nuxt-seo-utils",buildId:"cf63f5aa-c6ad-4d5c-8dd1-2c0adeb0242e",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1776872086775,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"><link rel="stylesheet" href="/__nuxt-seo-utils/_nuxt/entry.DZPkkv65.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-seo-utils/_nuxt/BEcxVnVC.js"><script type="module" src="/__nuxt-seo-utils/_nuxt/BEcxVnVC.js" crossorigin></script><script>"use strict";(()=>{const t=window,e=document.documentElement,c=["dark","light"],n=getStorageValue("localStorage","nuxt-color-mode")||"system";let i=n==="system"?u():n;const r=e.getAttribute("data-color-mode-forced");r&&(i=r),l(i),t["__NUXT_COLOR_MODE__"]={preference:n,value:i,getColorScheme:u,addColorScheme:l,removeColorScheme:d};function l(o){const s=""+o+"",a="";e.classList?e.classList.add(s):e.className+=" "+s,a&&e.setAttribute("data-"+a,o)}function d(o){const s=""+o+"",a="";e.classList?e.classList.remove(s):e.className=e.className.replace(new RegExp(s,"g"),""),a&&e.removeAttribute("data-"+a)}function f(o){return t.matchMedia("(prefers-color-scheme"+o+")")}function u(){if(t.matchMedia&&f("").media!=="not all"){for(const o of c)if(f(":"+o).matches)return o}return"light"}})();function getStorageValue(t,e){switch(t){case"localStorage":return window.localStorage.getItem(e);case"sessionStorage":return window.sessionStorage.getItem(e);case"cookie":return getCookie(e);default:return null}}function getCookie(t){const c=("; "+window.document.cookie).split("; "+t+"=");if(c.length===2)return c.pop()?.split(";").shift()}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT_SITE_CONFIG__={_priority:{env:-15},env:"production"}</script><script>window.__NUXT__={};window.__NUXT__.config={public:{i18n:{baseUrl:"",defaultLocale:"",rootRedirect:"",redirectStatusCode:302,skipSettingLocaleOnNavigate:false,locales:[],detectBrowserLanguage:{alwaysRedirect:false,cookieCrossOrigin:false,cookieDomain:"",cookieKey:"i18n_redirected",cookieSecure:false,fallbackLocale:"",redirectOn:"root",useCookie:true},experimental:{localeDetector:"",typedPages:true,typedOptionsAndMessages:false,alternateLinkCanonicalQueries:true,devCache:false,cacheLifetime:"",stripMessagesPayload:false,preload:false,strictSeo:false,nitroContextDetection:true,httpCacheDuration:10},domainLocales:{}}},app:{baseURL:"/__nuxt-seo-utils",buildId:"a24989ac-6153-4246-bbab-8496d363a82d",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1776152524779,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__nuxt-seo-utils/_nuxt/entry.Wg4G8OzK.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-seo-utils/_nuxt/CyZlrzIE.js"><script type="module" src="/__nuxt-seo-utils/_nuxt/CyZlrzIE.js" crossorigin></script><script>"use strict";(()=>{const t=window,e=document.documentElement,c=["dark","light"],n=getStorageValue("localStorage","nuxt-color-mode")||"system";let i=n==="system"?u():n;const r=e.getAttribute("data-color-mode-forced");r&&(i=r),l(i),t["__NUXT_COLOR_MODE__"]={preference:n,value:i,getColorScheme:u,addColorScheme:l,removeColorScheme:d};function l(o){const s=""+o+"",a="";e.classList?e.classList.add(s):e.className+=" "+s,a&&e.setAttribute("data-"+a,o)}function d(o){const s=""+o+"",a="";e.classList?e.classList.remove(s):e.className=e.className.replace(new RegExp(s,"g"),""),a&&e.removeAttribute("data-"+a)}function f(o){return t.matchMedia("(prefers-color-scheme"+o+")")}function u(){if(t.matchMedia&&f("").media!=="not all"){for(const o of c)if(f(":"+o).matches)return o}return"light"}})();function getStorageValue(t,e){switch(t){case"localStorage":return window.localStorage.getItem(e);case"sessionStorage":return window.sessionStorage.getItem(e);case"cookie":return getCookie(e);default:return null}}function getCookie(t){const c=("; "+window.document.cookie).split("; "+t+"=");if(c.length===2)return c.pop()?.split(";").shift()}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT_SITE_CONFIG__={_priority:{env:-15},env:"production"}</script><script>window.__NUXT__={};window.__NUXT__.config={public:{i18n:{baseUrl:"",defaultLocale:"",rootRedirect:"",redirectStatusCode:302,skipSettingLocaleOnNavigate:false,locales:[],detectBrowserLanguage:{alwaysRedirect:false,cookieCrossOrigin:false,cookieDomain:"",cookieKey:"i18n_redirected",cookieSecure:false,fallbackLocale:"",redirectOn:"root",useCookie:true},experimental:{localeDetector:"",typedPages:true,typedOptionsAndMessages:false,alternateLinkCanonicalQueries:true,devCache:false,cacheLifetime:"",stripMessagesPayload:false,preload:false,strictSeo:false,nitroContextDetection:true,httpCacheDuration:10},domainLocales:{}}},app:{baseURL:"/__nuxt-seo-utils",buildId:"cf63f5aa-c6ad-4d5c-8dd1-2c0adeb0242e",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1776872086775,false]</script></body></html>
@@ -0,0 +1 @@
1
+ import{d as b,o as a,g as i,i as d,b as E,A as C,j as p,k as m,h as A,l as k,n as $,z as w}from"./CyZlrzIE.js";const q={class:"devtools-error"},D={class:"devtools-error-icon-wrap"},M={class:"devtools-error-title"},R={key:0,class:"devtools-error-message"},N={key:1,class:"devtools-error-actions"},L=b({__name:"DevtoolsError",props:{icon:{default:"carbon:warning"},title:{default:"Something went wrong"},error:{}},setup(t){return(n,s)=>{const c=C;return a(),i("div",q,[d("div",D,[E(c,{name:t.icon,class:"devtools-error-icon"},null,8,["name"])]),d("p",M,p(t.title),1),t.error?(a(),i("p",R,p(typeof t.error=="string"?t.error:t.error.message),1)):m("",!0),n.$slots.default?(a(),i("div",N,[A(n.$slots,"default",{},void 0,!0)])):m("",!0)])}}}),P=Object.assign(k(L,[["__scopeId","data-v-72af49b5"]]),{__name:"DevtoolsError"}),X={class:"devtools-empty"},H={class:"devtools-empty-title"},O={key:0,class:"devtools-empty-description"},x={key:1,class:"devtools-empty-actions"},j=b({__name:"DevtoolsEmptyState",props:{icon:{default:"carbon:search"},title:{},description:{},variant:{default:"default"}},setup(t){return(n,s)=>{const c=C;return a(),i("div",X,[d("div",{class:$(["devtools-empty-icon",`devtools-empty-icon-${t.variant}`])},[E(c,{name:t.icon,class:"w-8 h-8","aria-hidden":"true"},null,8,["name"])],2),d("h2",H,p(t.title),1),t.description||n.$slots.description?(a(),i("p",O,[A(n.$slots,"description",{},()=>[w(p(t.description),1)],!0)])):m("",!0),n.$slots.default?(a(),i("div",x,[A(n.$slots,"default",{},void 0,!0)])):m("",!0)])}}}),V=Object.assign(k(j,[["__scopeId","data-v-27b1267f"]]),{__name:"DevtoolsEmptyState"}),y={TITLE_MAX_CHARS:60,TITLE_WARN_CHARS:50,TITLE_MAX_PIXELS:580,DESC_MAX_CHARS:160,DESC_WARN_CHARS:150,DESC_MAX_PIXELS:920};function W(t,n=16){return Math.round(t.length*n*.55)}function B(t){const s=new DOMParser().parseFromString(t,"text/html"),c=s.querySelector("title")?.textContent?.trim()||"",I=s.querySelector('meta[name="description"]')?.getAttribute("content")?.trim()||"",T=s.querySelector('link[rel="canonical"]')?.getAttribute("href")||"",v={};s.querySelectorAll('meta[property^="og:"]').forEach(e=>{const o=e.getAttribute("property"),r=e.getAttribute("content");o&&r&&(v[o]=r)});const g={};s.querySelectorAll('meta[name^="twitter:"]').forEach(e=>{const o=e.getAttribute("name"),r=e.getAttribute("content");o&&r&&(g[o]=r)});const l=[];s.querySelectorAll("meta").forEach(e=>{const o=e.getAttribute("name"),r=e.getAttribute("property"),u=e.getAttribute("http-equiv"),h=e.getAttribute("content")||"",f=e.getAttribute("media")||void 0;o?l.push({name:o,content:h,type:"name",media:f}):r?l.push({name:r,content:h,type:"property",media:f}):u&&l.push({name:u,content:h,type:"http-equiv",media:f})});const _=[];s.querySelectorAll('script[type="application/ld+json"]').forEach(e=>{const o=e.textContent?.trim()||"";try{const r=JSON.parse(o),u=r["@type"]||(r["@graph"]?"Graph":"Unknown");_.push({type:u,data:r,raw:o})}catch{_.push({type:"Invalid JSON",data:null,raw:o})}});const S=[];return s.querySelectorAll('link[rel="icon"], link[rel="apple-touch-icon"], link[rel="shortcut icon"]').forEach(e=>{const o=e.getAttribute("href");o&&S.push({rel:e.getAttribute("rel")||"icon",href:o,type:e.getAttribute("type")||void 0,sizes:e.getAttribute("sizes")||void 0,media:e.getAttribute("media")||void 0})}),{title:c,description:I,ogTags:v,twitterTags:g,allMeta:l,canonical:T,schemas:_,iconLinks:S}}function U(t){return t>y.TITLE_MAX_CHARS?"error":t<30?"warning":"success"}function J(t){return t>y.DESC_MAX_CHARS?"error":t>y.DESC_WARN_CHARS||t<70?"warning":"success"}export{y as S,P as _,V as a,J as d,W as e,B as p,U as t};
@@ -1 +1 @@
1
- import{d as K,u as Q,s as Y,q as G,v as H,x as Z,o as l,g as i,c as h,y as ee,w as c,b as r,e as te,F as k,i as t,n as _,z as b,j as a,A as se,p as ae,a as v,B as M,m as $,k as oe,C as ne,r as I,f as u,l as le}from"./BEcxVnVC.js";import{_ as re,S as p,e as ie,a as ce,t as ue,d as ge,p as ve}from"./CPBXREPo.js";import{_ as de}from"./BRD_U32-.js";const _e={class:"space-y-5 stagger-children"},pe={class:"seo-score-ring"},me={viewBox:"0 0 36 36",class:"seo-score-ring__svg"},he=["stroke-dasharray"],fe={class:"seo-score-ring__text"},xe={class:"font-medium text-sm"},ye={class:"text-xs text-[var(--color-text-muted)]"},we={class:"serp-preview-container"},ke={class:"serp-preview"},be={class:"flex items-center gap-3 mb-2"},Te={class:"serp-preview__favicon"},Ce={class:"text-xs text-gray-600 dark:text-[#bdc1c6] leading-tight"},Se={class:"serp-preview__title"},Me={class:"serp-preview__description"},$e={class:"grid md:grid-cols-2 gap-4"},Ae={class:"space-y-3"},Ee={class:"flex items-center justify-between"},Ne={class:"text-xs font-mono text-[var(--color-text-muted)]"},Be={class:"seo-progress-track"},Le={class:"text-xs text-[var(--color-text-muted)] truncate"},Re={class:"space-y-3"},De={class:"flex items-center justify-between"},ze={class:"text-xs font-mono text-[var(--color-text-muted)]"},He={class:"seo-progress-track"},Ie={class:"text-xs text-[var(--color-text-muted)] truncate"},Oe={class:"space-y-1"},Ue={class:"min-w-0"},Ge={class:"text-sm font-mono"},Pe={class:"text-xs text-[var(--color-text-muted)]"},Xe={class:"space-y-5"},We={class:"seo-category-header"},Fe={class:"seo-checklist"},Ve={class:"text-sm font-mono flex-1 min-w-0 truncate"},je={key:0,class:"seo-checklist__value"},Je={class:"seo-meta-table"},qe={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},Ke={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},Qe=K({__name:"index",setup(Ye){const P=/\/$/,{copy:X,copied:W}=Q(),A=I(!1),T=I(null),e=I(null),E=u(()=>e.value?.title.length||0),N=u(()=>e.value?.description.length||0),f=u(()=>ue(E.value)),x=u(()=>ge(N.value)),F=u(()=>{if(!e.value?.url)return"";try{const s=new URL(e.value.url);return s.hostname+(s.pathname==="/"?"":s.pathname.replace(P,""))}catch{return e.value.url}}),B=u(()=>e.value?[{category:"Basic",name:"title",present:!!e.value.title,value:e.value.title},{category:"Basic",name:"description",present:!!e.value.description,value:e.value.description},{category:"Basic",name:"canonical",present:!!e.value.canonical,value:e.value.canonical},{category:"Open Graph",name:"og:title",present:!!e.value.ogTags["og:title"],value:e.value.ogTags["og:title"]},{category:"Open Graph",name:"og:description",present:!!e.value.ogTags["og:description"],value:e.value.ogTags["og:description"]},{category:"Open Graph",name:"og:image",present:!!e.value.ogTags["og:image"],value:e.value.ogTags["og:image"]},{category:"Open Graph",name:"og:url",present:!!e.value.ogTags["og:url"],value:e.value.ogTags["og:url"]},{category:"Twitter",name:"twitter:card",present:!!e.value.twitterTags["twitter:card"],value:e.value.twitterTags["twitter:card"]},{category:"Twitter",name:"twitter:title",present:!!e.value.twitterTags["twitter:title"],value:e.value.twitterTags["twitter:title"],fallback:e.value.ogTags["og:title"]?"og:title":void 0},{category:"Twitter",name:"twitter:image",present:!!e.value.twitterTags["twitter:image"],value:e.value.twitterTags["twitter:image"],fallback:e.value.ogTags["og:image"]?"og:image":void 0}]:[]),V=u(()=>{const s={};return B.value.forEach(o=>{s[o.category]||(s[o.category]=[]),s[o.category].push(o)}),s}),y=u(()=>({present:B.value.filter(o=>o.present||o.fallback).length,total:B.value.length})),j=u(()=>{const{present:s,total:o}=y.value;return o>0?Math.round(s/o*100):0}),d=u(()=>{if(!e.value)return[];const s=[];return e.value.title||s.push({tag:"title",severity:"error",message:"No title tag found."}),e.value.description||s.push({tag:"meta description",severity:"warning",message:"Missing meta description."}),e.value.ogTags["og:title"]||s.push({tag:"og:title",severity:"warning",message:"Missing og:title for social sharing."}),e.value.ogTags["og:description"]||s.push({tag:"og:description",severity:"warning",message:"Missing og:description for social sharing."}),e.value.ogTags["og:image"]||s.push({tag:"og:image",severity:"warning",message:"Missing og:image. Posts with images get higher click rates."}),e.value.canonical||s.push({tag:"canonical",severity:"warning",message:"Missing canonical URL."}),s}),L=u(()=>{if(!e.value)return null;const s=d.value.some(w=>w.severity==="error")||f.value==="error"||x.value==="error",o=d.value.length>0||f.value==="warning"||x.value==="warning";return s?{variant:"warning",message:"Issues found",icon:"carbon:warning-alt"}:o?{variant:"warning",message:"Some suggestions",icon:"carbon:warning"}:{variant:"success",message:"Looking good!",icon:"carbon:checkmark-filled"}});function O(s){return s==="success"?"Good":s==="warning"?"Needs work":"Too long"}async function U(){A.value=!0,T.value=null,e.value=null;try{const s=window.parent?.location?.origin||window.location.origin,o=await fetch(`${s}${H.value}`,{headers:{Accept:"text/html"}});if(!o.ok)throw new Error(`HTTP ${o.status}`);const w=await o.text(),C=ve(w);e.value={...C,url:`${s}${H.value}`}}catch(s){T.value=s.message||"Failed to fetch page"}finally{A.value=!1}}return Y([()=>G.value,H,Z],()=>{G.value&&U()},{immediate:!0}),(s,o)=>{const w=ee,C=te,J=re,R=se,m=ae,D=de,z=ne,q=ce;return l(),i("div",_e,[A.value?(l(),h(w,{key:0})):T.value?(l(),h(J,{key:1,error:T.value,title:"Failed to check page"},{default:c(()=>[r(C,{size:"sm",variant:"ghost",icon:"carbon:reset",label:"Retry",onClick:U})]),_:1},8,["error"])):e.value?(l(),i(k,{key:2},[t("div",{class:_(["seo-status-card",`seo-status-card--${L.value?.variant}`])},[t("div",pe,[(l(),i("svg",me,[o[1]||(o[1]=t("circle",{cx:"18",cy:"18",r:"15.5",fill:"none",stroke:"var(--color-border-subtle)","stroke-width":"2.5"},null,-1)),t("circle",{cx:"18",cy:"18",r:"15.5",fill:"none",class:_(["seo-score-ring__progress",`seo-score-ring__progress--${L.value?.variant}`]),"stroke-width":"2.5","stroke-linecap":"round","stroke-dasharray":`${j.value*.974}, 100`,transform:"rotate(-90 18 18)"},null,10,he)])),t("span",fe,[b(a(y.value.present),1),o[2]||(o[2]=t("span",{class:"seo-score-ring__separator"},"/",-1)),b(a(y.value.total),1)])]),t("div",null,[t("p",xe,a(L.value?.message),1),t("p",ye,a(y.value.present)+" of "+a(y.value.total)+" essential tags present ",1)])],2),r(m,{icon:"carbon:search",text:"Google Search Preview"},{default:c(()=>[t("div",we,[t("div",ke,[t("div",be,[t("div",Te,[r(R,{name:"carbon:earth",class:"w-3.5 h-3.5 text-gray-400"})]),t("div",null,[t("div",Ce,a(F.value),1)])]),t("h3",Se,a(e.value.title||"No title found"),1),t("p",Me,a(e.value.description||"No description found"),1)])])]),_:1}),t("div",$e,[r(m,{icon:"carbon:text-short-paragraph",text:"Title",collapse:!1},{default:c(()=>[t("div",Ae,[t("div",Ee,[t("span",{class:_(["seo-length-status",`seo-length-status--${f.value}`])},a(O(f.value)),3),t("span",Ne,a(E.value)+"/"+a(v(p).TITLE_MAX_CHARS)+" chars · ~"+a(v(ie)(e.value.title))+"px ",1)]),t("div",Be,[t("div",{class:_(["seo-progress-fill",`seo-progress-fill--${f.value}`]),style:M({width:`${Math.min(100,E.value/v(p).TITLE_MAX_CHARS*100)}%`})},null,6),t("div",{class:"seo-progress-marker",style:M({left:`${30/v(p).TITLE_MAX_CHARS*100}%`})},null,4)]),t("p",Le,a(e.value.title||"Not set"),1)])]),_:1}),r(m,{icon:"carbon:text-long-paragraph",text:"Description",collapse:!1},{default:c(()=>[t("div",Re,[t("div",De,[t("span",{class:_(["seo-length-status",`seo-length-status--${x.value}`])},a(O(x.value)),3),t("span",ze,a(N.value)+"/"+a(v(p).DESC_MAX_CHARS)+" chars ",1)]),t("div",He,[t("div",{class:_(["seo-progress-fill",`seo-progress-fill--${x.value}`]),style:M({width:`${Math.min(100,N.value/v(p).DESC_MAX_CHARS*100)}%`})},null,6),t("div",{class:"seo-progress-marker",style:M({left:`${v(p).DESC_WARN_CHARS/v(p).DESC_MAX_CHARS*100}%`})},null,4)]),t("p",Ie,a(e.value.description||"Not set"),1)])]),_:1})]),d.value.length?(l(),h(m,{key:0,icon:"carbon:warning",text:"Missing Tags"},{actions:c(()=>[r(D,{value:d.value.filter(n=>n.severity==="error").length,label:"errors",variant:d.value.some(n=>n.severity==="error")?"danger":void 0},null,8,["value","variant"]),r(D,{value:d.value.filter(n=>n.severity==="warning").length,label:"warnings",variant:d.value.some(n=>n.severity==="warning")?"warning":void 0},null,8,["value","variant"])]),default:c(()=>[t("div",Oe,[(l(!0),i(k,null,$(d.value,n=>(l(),i("div",{key:n.tag,class:"seo-issue-row"},[r(R,{name:n.severity==="error"?"carbon:close-filled":"carbon:warning-filled",class:_(["text-base mt-0.5 shrink-0",n.severity==="error"?"text-red-500":"text-amber-500"])},null,8,["name","class"]),t("div",Ue,[t("span",Ge,a(n.tag),1),t("p",Pe,a(n.message),1)])]))),128))])]),_:1})):oe("",!0),r(m,{icon:"carbon:task",text:"Essential Tags Checklist"},{default:c(()=>[t("div",Xe,[(l(!0),i(k,null,$(V.value,(n,S)=>(l(),i("div",{key:S},[t("div",We,[t("span",null,a(S),1)]),t("div",Fe,[(l(!0),i(k,null,$(n,g=>(l(),i("div",{key:g.name,class:"seo-checklist__item"},[r(R,{name:g.present?"carbon:checkmark-filled":g.fallback?"carbon:information-filled":"carbon:close-filled",class:_(["text-sm shrink-0",g.present?"text-green-500":g.fallback?"text-gray-400":"text-red-400"])},null,8,["name","class"]),t("span",Ve,a(g.name),1),g.value?(l(),i("span",je,a(g.value),1)):g.fallback?(l(),h(z,{key:1,color:"neutral",variant:"subtle",size:"xs"},{default:c(()=>[b(" falls back to "+a(g.fallback),1)]),_:2},1024)):(l(),h(z,{key:2,color:"neutral",variant:"subtle",size:"xs"},{default:c(()=>[...o[3]||(o[3]=[b(" missing ",-1)])]),_:1}))]))),128))])]))),128))])]),_:1}),r(m,{icon:"carbon:list",text:"All Meta Tags"},{actions:c(()=>[r(D,{value:e.value.allMeta.length,label:"tags"},null,8,["value"]),r(C,{size:"xs",variant:"ghost",color:"neutral",icon:"carbon:copy",label:v(W)?"Copied!":"Copy JSON",onClick:o[0]||(o[0]=n=>v(X)(JSON.stringify({title:e.value.title,description:e.value.description,canonical:e.value.canonical,og:e.value.ogTags,twitter:e.value.twitterTags},null,2)))},null,8,["label"])]),default:c(()=>[t("div",Je,[(l(!0),i(k,null,$(e.value.allMeta,(n,S)=>(l(),i("div",{key:n.name+S,class:"seo-meta-table__row"},[r(z,{color:n.type==="property"?"primary":n.type==="name"?"neutral":"warning",variant:"subtle",size:"xs"},{default:c(()=>[b(a(n.type),1)]),_:2},1032,["color"]),t("span",qe,a(n.name),1),t("span",Ke,a(n.content),1)]))),128))])]),_:1})],64)):(l(),h(q,{key:3,icon:"carbon:plug",title:"Waiting for connection",description:"Waiting for connection to host app..."}))])}}}),st=le(Qe,[["__scopeId","data-v-270956ec"]]);export{st as default};
1
+ import{d as K,u as Q,s as Y,q as G,v as H,x as Z,o as l,g as i,c as h,y as ee,w as c,b as r,e as te,F as k,i as t,n as _,z as b,j as a,A as se,p as ae,a as v,B as M,m as $,k as oe,C as ne,r as I,f as u,l as le}from"./CyZlrzIE.js";import{_ as re,S as p,e as ie,a as ce,t as ue,d as ge,p as ve}from"./6917fNJL.js";import{_ as de}from"./BlsnyXdL.js";const _e={class:"space-y-5 stagger-children"},pe={class:"seo-score-ring"},me={viewBox:"0 0 36 36",class:"seo-score-ring__svg"},he=["stroke-dasharray"],fe={class:"seo-score-ring__text"},xe={class:"font-medium text-sm"},ye={class:"text-xs text-[var(--color-text-muted)]"},we={class:"serp-preview-container"},ke={class:"serp-preview"},be={class:"flex items-center gap-3 mb-2"},Te={class:"serp-preview__favicon"},Ce={class:"text-xs text-gray-600 dark:text-[#bdc1c6] leading-tight"},Se={class:"serp-preview__title"},Me={class:"serp-preview__description"},$e={class:"grid md:grid-cols-2 gap-4"},Ae={class:"space-y-3"},Ee={class:"flex items-center justify-between"},Ne={class:"text-xs font-mono text-[var(--color-text-muted)]"},Be={class:"seo-progress-track"},Le={class:"text-xs text-[var(--color-text-muted)] truncate"},Re={class:"space-y-3"},De={class:"flex items-center justify-between"},ze={class:"text-xs font-mono text-[var(--color-text-muted)]"},He={class:"seo-progress-track"},Ie={class:"text-xs text-[var(--color-text-muted)] truncate"},Oe={class:"space-y-1"},Ue={class:"min-w-0"},Ge={class:"text-sm font-mono"},Pe={class:"text-xs text-[var(--color-text-muted)]"},Xe={class:"space-y-5"},We={class:"seo-category-header"},Fe={class:"seo-checklist"},Ve={class:"text-sm font-mono flex-1 min-w-0 truncate"},je={key:0,class:"seo-checklist__value"},Je={class:"seo-meta-table"},qe={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},Ke={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},Qe=K({__name:"index",setup(Ye){const P=/\/$/,{copy:X,copied:W}=Q(),A=I(!1),T=I(null),e=I(null),E=u(()=>e.value?.title.length||0),N=u(()=>e.value?.description.length||0),f=u(()=>ue(E.value)),x=u(()=>ge(N.value)),F=u(()=>{if(!e.value?.url)return"";try{const s=new URL(e.value.url);return s.hostname+(s.pathname==="/"?"":s.pathname.replace(P,""))}catch{return e.value.url}}),B=u(()=>e.value?[{category:"Basic",name:"title",present:!!e.value.title,value:e.value.title},{category:"Basic",name:"description",present:!!e.value.description,value:e.value.description},{category:"Basic",name:"canonical",present:!!e.value.canonical,value:e.value.canonical},{category:"Open Graph",name:"og:title",present:!!e.value.ogTags["og:title"],value:e.value.ogTags["og:title"]},{category:"Open Graph",name:"og:description",present:!!e.value.ogTags["og:description"],value:e.value.ogTags["og:description"]},{category:"Open Graph",name:"og:image",present:!!e.value.ogTags["og:image"],value:e.value.ogTags["og:image"]},{category:"Open Graph",name:"og:url",present:!!e.value.ogTags["og:url"],value:e.value.ogTags["og:url"]},{category:"Twitter",name:"twitter:card",present:!!e.value.twitterTags["twitter:card"],value:e.value.twitterTags["twitter:card"]},{category:"Twitter",name:"twitter:title",present:!!e.value.twitterTags["twitter:title"],value:e.value.twitterTags["twitter:title"],fallback:e.value.ogTags["og:title"]?"og:title":void 0},{category:"Twitter",name:"twitter:image",present:!!e.value.twitterTags["twitter:image"],value:e.value.twitterTags["twitter:image"],fallback:e.value.ogTags["og:image"]?"og:image":void 0}]:[]),V=u(()=>{const s={};return B.value.forEach(o=>{s[o.category]||(s[o.category]=[]),s[o.category].push(o)}),s}),y=u(()=>({present:B.value.filter(o=>o.present||o.fallback).length,total:B.value.length})),j=u(()=>{const{present:s,total:o}=y.value;return o>0?Math.round(s/o*100):0}),d=u(()=>{if(!e.value)return[];const s=[];return e.value.title||s.push({tag:"title",severity:"error",message:"No title tag found."}),e.value.description||s.push({tag:"meta description",severity:"warning",message:"Missing meta description."}),e.value.ogTags["og:title"]||s.push({tag:"og:title",severity:"warning",message:"Missing og:title for social sharing."}),e.value.ogTags["og:description"]||s.push({tag:"og:description",severity:"warning",message:"Missing og:description for social sharing."}),e.value.ogTags["og:image"]||s.push({tag:"og:image",severity:"warning",message:"Missing og:image. Posts with images get higher click rates."}),e.value.canonical||s.push({tag:"canonical",severity:"warning",message:"Missing canonical URL."}),s}),L=u(()=>{if(!e.value)return null;const s=d.value.some(w=>w.severity==="error")||f.value==="error"||x.value==="error",o=d.value.length>0||f.value==="warning"||x.value==="warning";return s?{variant:"warning",message:"Issues found",icon:"carbon:warning-alt"}:o?{variant:"warning",message:"Some suggestions",icon:"carbon:warning"}:{variant:"success",message:"Looking good!",icon:"carbon:checkmark-filled"}});function O(s){return s==="success"?"Good":s==="warning"?"Needs work":"Too long"}async function U(){A.value=!0,T.value=null,e.value=null;try{const s=window.parent?.location?.origin||window.location.origin,o=await fetch(`${s}${H.value}`,{headers:{Accept:"text/html"}});if(!o.ok)throw new Error(`HTTP ${o.status}`);const w=await o.text(),C=ve(w);e.value={...C,url:`${s}${H.value}`}}catch(s){T.value=s.message||"Failed to fetch page"}finally{A.value=!1}}return Y([()=>G.value,H,Z],()=>{G.value&&U()},{immediate:!0}),(s,o)=>{const w=ee,C=te,J=re,R=se,m=ae,D=de,z=ne,q=ce;return l(),i("div",_e,[A.value?(l(),h(w,{key:0})):T.value?(l(),h(J,{key:1,error:T.value,title:"Failed to check page"},{default:c(()=>[r(C,{size:"sm",variant:"ghost",icon:"carbon:reset",label:"Retry",onClick:U})]),_:1},8,["error"])):e.value?(l(),i(k,{key:2},[t("div",{class:_(["seo-status-card",`seo-status-card--${L.value?.variant}`])},[t("div",pe,[(l(),i("svg",me,[o[1]||(o[1]=t("circle",{cx:"18",cy:"18",r:"15.5",fill:"none",stroke:"var(--color-border-subtle)","stroke-width":"2.5"},null,-1)),t("circle",{cx:"18",cy:"18",r:"15.5",fill:"none",class:_(["seo-score-ring__progress",`seo-score-ring__progress--${L.value?.variant}`]),"stroke-width":"2.5","stroke-linecap":"round","stroke-dasharray":`${j.value*.974}, 100`,transform:"rotate(-90 18 18)"},null,10,he)])),t("span",fe,[b(a(y.value.present),1),o[2]||(o[2]=t("span",{class:"seo-score-ring__separator"},"/",-1)),b(a(y.value.total),1)])]),t("div",null,[t("p",xe,a(L.value?.message),1),t("p",ye,a(y.value.present)+" of "+a(y.value.total)+" essential tags present ",1)])],2),r(m,{icon:"carbon:search",text:"Google Search Preview"},{default:c(()=>[t("div",we,[t("div",ke,[t("div",be,[t("div",Te,[r(R,{name:"carbon:earth",class:"w-3.5 h-3.5 text-gray-400"})]),t("div",null,[t("div",Ce,a(F.value),1)])]),t("h3",Se,a(e.value.title||"No title found"),1),t("p",Me,a(e.value.description||"No description found"),1)])])]),_:1}),t("div",$e,[r(m,{icon:"carbon:text-short-paragraph",text:"Title",collapse:!1},{default:c(()=>[t("div",Ae,[t("div",Ee,[t("span",{class:_(["seo-length-status",`seo-length-status--${f.value}`])},a(O(f.value)),3),t("span",Ne,a(E.value)+"/"+a(v(p).TITLE_MAX_CHARS)+" chars · ~"+a(v(ie)(e.value.title))+"px ",1)]),t("div",Be,[t("div",{class:_(["seo-progress-fill",`seo-progress-fill--${f.value}`]),style:M({width:`${Math.min(100,E.value/v(p).TITLE_MAX_CHARS*100)}%`})},null,6),t("div",{class:"seo-progress-marker",style:M({left:`${30/v(p).TITLE_MAX_CHARS*100}%`})},null,4)]),t("p",Le,a(e.value.title||"Not set"),1)])]),_:1}),r(m,{icon:"carbon:text-long-paragraph",text:"Description",collapse:!1},{default:c(()=>[t("div",Re,[t("div",De,[t("span",{class:_(["seo-length-status",`seo-length-status--${x.value}`])},a(O(x.value)),3),t("span",ze,a(N.value)+"/"+a(v(p).DESC_MAX_CHARS)+" chars ",1)]),t("div",He,[t("div",{class:_(["seo-progress-fill",`seo-progress-fill--${x.value}`]),style:M({width:`${Math.min(100,N.value/v(p).DESC_MAX_CHARS*100)}%`})},null,6),t("div",{class:"seo-progress-marker",style:M({left:`${v(p).DESC_WARN_CHARS/v(p).DESC_MAX_CHARS*100}%`})},null,4)]),t("p",Ie,a(e.value.description||"Not set"),1)])]),_:1})]),d.value.length?(l(),h(m,{key:0,icon:"carbon:warning",text:"Missing Tags"},{actions:c(()=>[r(D,{value:d.value.filter(n=>n.severity==="error").length,label:"errors",variant:d.value.some(n=>n.severity==="error")?"danger":void 0},null,8,["value","variant"]),r(D,{value:d.value.filter(n=>n.severity==="warning").length,label:"warnings",variant:d.value.some(n=>n.severity==="warning")?"warning":void 0},null,8,["value","variant"])]),default:c(()=>[t("div",Oe,[(l(!0),i(k,null,$(d.value,n=>(l(),i("div",{key:n.tag,class:"seo-issue-row"},[r(R,{name:n.severity==="error"?"carbon:close-filled":"carbon:warning-filled",class:_(["text-base mt-0.5 shrink-0",n.severity==="error"?"text-red-500":"text-amber-500"])},null,8,["name","class"]),t("div",Ue,[t("span",Ge,a(n.tag),1),t("p",Pe,a(n.message),1)])]))),128))])]),_:1})):oe("",!0),r(m,{icon:"carbon:task",text:"Essential Tags Checklist"},{default:c(()=>[t("div",Xe,[(l(!0),i(k,null,$(V.value,(n,S)=>(l(),i("div",{key:S},[t("div",We,[t("span",null,a(S),1)]),t("div",Fe,[(l(!0),i(k,null,$(n,g=>(l(),i("div",{key:g.name,class:"seo-checklist__item"},[r(R,{name:g.present?"carbon:checkmark-filled":g.fallback?"carbon:information-filled":"carbon:close-filled",class:_(["text-sm shrink-0",g.present?"text-green-500":g.fallback?"text-gray-400":"text-red-400"])},null,8,["name","class"]),t("span",Ve,a(g.name),1),g.value?(l(),i("span",je,a(g.value),1)):g.fallback?(l(),h(z,{key:1,color:"neutral",variant:"subtle",size:"xs"},{default:c(()=>[b(" falls back to "+a(g.fallback),1)]),_:2},1024)):(l(),h(z,{key:2,color:"neutral",variant:"subtle",size:"xs"},{default:c(()=>[...o[3]||(o[3]=[b(" missing ",-1)])]),_:1}))]))),128))])]))),128))])]),_:1}),r(m,{icon:"carbon:list",text:"All Meta Tags"},{actions:c(()=>[r(D,{value:e.value.allMeta.length,label:"tags"},null,8,["value"]),r(C,{size:"xs",variant:"ghost",color:"neutral",icon:"carbon:copy",label:v(W)?"Copied!":"Copy JSON",onClick:o[0]||(o[0]=n=>v(X)(JSON.stringify({title:e.value.title,description:e.value.description,canonical:e.value.canonical,og:e.value.ogTags,twitter:e.value.twitterTags},null,2)))},null,8,["label"])]),default:c(()=>[t("div",Je,[(l(!0),i(k,null,$(e.value.allMeta,(n,S)=>(l(),i("div",{key:n.name+S,class:"seo-meta-table__row"},[r(z,{color:n.type==="property"?"primary":n.type==="name"?"neutral":"warning",variant:"subtle",size:"xs"},{default:c(()=>[b(a(n.type),1)]),_:2},1032,["color"]),t("span",qe,a(n.name),1),t("span",Ke,a(n.content),1)]))),128))])]),_:1})],64)):(l(),h(q,{key:3,icon:"carbon:plug",title:"Waiting for connection",description:"Waiting for connection to host app..."}))])}}}),st=le(Qe,[["__scopeId","data-v-270956ec"]]);export{st as default};
@@ -1 +1 @@
1
- import{_ as D}from"./BRD_U32-.js";import{u as B,d as g,o as a,c as m,_ as O,a as u,w as _,b as c,e as j,n as f,f as k,t as R,r as V,g as r,h as w,i as y,j as p,k as b,l as x,F as N,m as H,p as I,q as v}from"./BEcxVnVC.js";function L(o=2e3){const{copy:n,copied:t}=B({legacy:!0,copiedDuring:o});return{copy:n,copied:t}}const T=g({__name:"DevtoolsCopyButton",props:{text:{}},setup(o){const{copy:n,copied:t}=L();return(s,l)=>{const d=j,i=O;return a(),m(i,{text:u(t)?"Copied!":"Copy"},{default:_(()=>[c(d,{icon:u(t)?"carbon:checkmark":"carbon:copy","aria-label":u(t)?"Copied":"Copy to clipboard",class:f(u(t)?"text-[var(--seo-green)]":""),onClick:l[0]||(l[0]=e=>u(n)(o.text))},null,8,["icon","aria-label","class"])]),_:1},8,["text"])}}}),C=Object.assign(T,{__name:"DevtoolsCopyButton"}),h=V();function F(o,n){return k(()=>h.value&&h.value.codeToHtml(R(o)||"",{lang:n,themes:{light:"vitesse-light",dark:"vitesse-dark"}})||"")}const J=["innerHTML"],K=g({__name:"OCodeBlock",props:{code:{},lang:{},lines:{type:Boolean,default:!1},transformRendered:{type:Function}},setup(o){const n=k(()=>{const t=F(o.code,o.lang);return o.transformRendered?o.transformRendered(t.value||""):t.value});return(t,s)=>(a(),r("pre",{class:f(["code-block p-5",o.lines?"code-block-lines":""]),innerHTML:u(n)},null,10,J))}}),M=Object.assign(K,{__name:"OCodeBlock"}),U={class:"devtools-snippet"},q={key:0,class:"devtools-snippet-header"},z={class:"devtools-snippet-label"},A=g({__name:"DevtoolsSnippet",props:{label:{},code:{},lang:{default:"js"}},setup(o){return(n,t)=>{const s=C,l=M;return a(),r("div",U,[o.label||n.$slots.header?(a(),r("div",q,[w(n.$slots,"header",{},()=>[y("code",z,p(o.label),1)],!0),c(s,{text:o.code},null,8,["text"])])):b("",!0),c(l,{code:o.code,lang:o.lang,class:"devtools-snippet-block"},null,8,["code","lang"])])}}}),S=Object.assign(x(A,[["__scopeId","data-v-0dca7207"]]),{__name:"DevtoolsSnippet"}),E={class:"divide-y divide-[var(--color-border-subtle)]"},G={class:"devtools-kv-key"},P=["href"],Q=["href"],W=g({__name:"DevtoolsKeyValue",props:{items:{},striped:{type:Boolean,default:!1}},setup(o){const n=/^https?:\/\/\S+$/;function t(s){return!s.link&&!s.code&&typeof s.value=="string"&&n.test(s.value)}return(s,l)=>{const d=S,i=C;return a(),r("div",E,[(a(!0),r(N,null,H(o.items,e=>(a(),r("div",{key:e.key,class:f(["devtools-kv-row group",{"devtools-kv-striped":o.striped,"devtools-kv-stacked":!!e.code}])},[y("span",G,p(e.key),1),y("div",{class:f(["devtools-kv-value-wrap",{"devtools-kv-value-wrap-full":!!e.code}])},[e.link?(a(),r("a",{key:0,href:e.link,target:"_blank",rel:"noopener",class:"link-external text-sm"},p(e.value),9,P)):e.code&&e.value!==void 0&&e.value!==""?(a(),m(d,{key:1,code:String(e.value),lang:e.code,class:"devtools-kv-snippet"},null,8,["code","lang"])):t(e)?(a(),r("a",{key:2,href:String(e.value),target:"_blank",rel:"noopener",class:"link-external text-sm"},p(e.value),9,Q)):(a(),r("span",{key:3,class:f(["devtools-kv-value",{"font-mono":e.mono!==!1,"devtools-kv-true":e.value===!0,"devtools-kv-false":e.value===!1,"devtools-kv-empty":e.value===void 0||e.value===""}])},p(e.value===void 0||e.value===""?"(empty)":e.value),3)),!e.code&&e.copyable&&e.value!==void 0&&e.value!==""?(a(),m(i,{key:4,text:String(e.value),class:"opacity-0 group-hover:opacity-100 transition-opacity"},null,8,["text"])):b("",!0)],2)],2))),128))])}}}),X=Object.assign(x(W,[["__scopeId","data-v-d61d36e9"]]),{__name:"DevtoolsKeyValue"}),Y={class:"space-y-5 stagger-children"},oe=g({__name:"debug",setup(o){const n=k(()=>v.value?.runtimeConfig?Object.entries(v.value.runtimeConfig).map(([s,l])=>({key:s,value:typeof l=="object"?JSON.stringify(l):String(l),mono:!0})):[]),t=k(()=>v.value?.siteConfig?Object.entries(v.value.siteConfig).map(([s,l])=>({key:s,value:String(l),mono:!0})):[]);return(s,l)=>{const d=D,i=X,e=I,$=S;return a(),r("div",Y,[c(e,{icon:"carbon:settings",text:"Runtime Config"},{actions:_(()=>[c(d,{value:n.value.length,label:"keys"},null,8,["value"])]),default:_(()=>[c(i,{items:n.value,striped:""},null,8,["items"])]),_:1}),c(e,{icon:"carbon:earth",text:"Site Config"},{actions:_(()=>[c(d,{value:t.value.length,label:"keys"},null,8,["value"])]),default:_(()=>[c(i,{items:t.value,striped:""},null,8,["items"])]),_:1}),c(e,{icon:"carbon:code",text:"Raw JSON"},{default:_(()=>[c($,{code:JSON.stringify(u(v)||{},null,2),lang:"json",label:"debug.json"},null,8,["code"])]),_:1})])}}});export{oe as default};
1
+ import{_ as D}from"./BlsnyXdL.js";import{u as B,d as g,o as a,c as m,_ as O,a as u,w as _,b as c,e as j,n as f,f as k,t as R,r as V,g as r,h as w,i as y,j as p,k as b,l as x,F as N,m as H,p as I,q as v}from"./CyZlrzIE.js";function L(o=2e3){const{copy:n,copied:t}=B({legacy:!0,copiedDuring:o});return{copy:n,copied:t}}const T=g({__name:"DevtoolsCopyButton",props:{text:{}},setup(o){const{copy:n,copied:t}=L();return(s,l)=>{const i=j,d=O;return a(),m(d,{text:u(t)?"Copied!":"Copy"},{default:_(()=>[c(i,{icon:u(t)?"carbon:checkmark":"carbon:copy","aria-label":u(t)?"Copied":"Copy to clipboard",class:f(u(t)?"text-[var(--seo-green)]":""),onClick:l[0]||(l[0]=e=>u(n)(o.text))},null,8,["icon","aria-label","class"])]),_:1},8,["text"])}}}),C=Object.assign(T,{__name:"DevtoolsCopyButton"}),h=V();function F(o,n){return k(()=>h.value&&h.value.codeToHtml(R(o)||"",{lang:n,themes:{light:"vitesse-light",dark:"vitesse-dark"}})||"")}const J=["innerHTML"],K=g({__name:"OCodeBlock",props:{code:{},lang:{},lines:{type:Boolean,default:!1},transformRendered:{type:Function}},setup(o){const n=k(()=>{const t=F(o.code,o.lang);return o.transformRendered?o.transformRendered(t.value||""):t.value});return(t,s)=>(a(),r("pre",{class:f(["code-block p-5",o.lines?"code-block-lines":""]),innerHTML:u(n)},null,10,J))}}),M=Object.assign(K,{__name:"OCodeBlock"}),U={class:"devtools-snippet"},q={key:0,class:"devtools-snippet-header"},z={class:"devtools-snippet-label"},A=g({__name:"DevtoolsSnippet",props:{label:{},code:{},lang:{default:"js"}},setup(o){return(n,t)=>{const s=C,l=M;return a(),r("div",U,[o.label||n.$slots.header?(a(),r("div",q,[w(n.$slots,"header",{},()=>[y("code",z,p(o.label),1)],!0),c(s,{text:o.code},null,8,["text"])])):b("",!0),c(l,{code:o.code,lang:o.lang,class:"devtools-snippet-block"},null,8,["code","lang"])])}}}),S=Object.assign(x(A,[["__scopeId","data-v-a95be543"]]),{__name:"DevtoolsSnippet"}),E={class:"divide-y divide-[var(--color-border-subtle)]"},G={class:"devtools-kv-key"},P=["href"],Q=["href"],W=g({__name:"DevtoolsKeyValue",props:{items:{},striped:{type:Boolean,default:!1}},setup(o){const n=/^https?:\/\/\S+$/;function t(s){return!s.link&&!s.code&&typeof s.value=="string"&&n.test(s.value)}return(s,l)=>{const i=S,d=C;return a(),r("div",E,[(a(!0),r(N,null,H(o.items,e=>(a(),r("div",{key:e.key,class:f(["devtools-kv-row group",{"devtools-kv-striped":o.striped,"devtools-kv-stacked":!!e.code}])},[y("span",G,p(e.key),1),y("div",{class:f(["devtools-kv-value-wrap",{"devtools-kv-value-wrap-full":!!e.code}])},[e.link?(a(),r("a",{key:0,href:e.link,target:"_blank",rel:"noopener",class:"link-external text-sm"},p(e.value),9,P)):e.code&&e.value!==void 0&&e.value!==""?(a(),m(i,{key:1,code:String(e.value),lang:e.code,class:"devtools-kv-snippet"},null,8,["code","lang"])):t(e)?(a(),r("a",{key:2,href:String(e.value),target:"_blank",rel:"noopener",class:"link-external text-sm"},p(e.value),9,Q)):(a(),r("span",{key:3,class:f(["devtools-kv-value",{"font-mono":e.mono!==!1,"devtools-kv-true":e.value===!0,"devtools-kv-false":e.value===!1,"devtools-kv-empty":e.value===void 0||e.value===""}])},p(e.value===void 0||e.value===""?"(empty)":e.value),3)),!e.code&&e.copyable&&e.value!==void 0&&e.value!==""?(a(),m(d,{key:4,text:String(e.value),class:"opacity-0 group-hover:opacity-100 transition-opacity"},null,8,["text"])):b("",!0)],2)],2))),128))])}}}),X=Object.assign(x(W,[["__scopeId","data-v-3f770f4d"]]),{__name:"DevtoolsKeyValue"}),Y={class:"space-y-5 stagger-children"},oe=g({__name:"debug",setup(o){const n=k(()=>v.value?.runtimeConfig?Object.entries(v.value.runtimeConfig).map(([s,l])=>({key:s,value:typeof l=="object"?JSON.stringify(l):String(l),mono:!0})):[]),t=k(()=>v.value?.siteConfig?Object.entries(v.value.siteConfig).map(([s,l])=>({key:s,value:String(l),mono:!0})):[]);return(s,l)=>{const i=D,d=X,e=I,$=S;return a(),r("div",Y,[c(e,{icon:"carbon:settings",text:"Runtime Config"},{actions:_(()=>[c(i,{value:n.value.length,label:"keys"},null,8,["value"])]),default:_(()=>[c(d,{items:n.value,striped:""},null,8,["items"])]),_:1}),c(e,{icon:"carbon:earth",text:"Site Config"},{actions:_(()=>[c(i,{value:t.value.length,label:"keys"},null,8,["value"])]),default:_(()=>[c(d,{items:t.value,striped:""},null,8,["items"])]),_:1}),c(e,{icon:"carbon:code",text:"Raw JSON"},{default:_(()=>[c($,{code:JSON.stringify(u(v)||{},null,2),lang:"json",label:"debug.json"},null,8,["code"])]),_:1})])}}});export{oe as default};
@@ -1 +1 @@
1
- import{d as c,o as t,g as n,i as l,l as r,c as a}from"./BEcxVnVC.js";const _={class:"h-full max-h-full overflow-hidden"},u=["src","title"],i=c({__name:"DevtoolsDocs",props:{url:{}},setup(e){return(s,o)=>(t(),n("div",_,[l("iframe",{src:e.url,title:`Documentation - ${e.url}`,class:"w-full h-full border-none",style:{"min-height":"calc(100vh - 100px)"}},null,8,u)]))}}),m=Object.assign(i,{__name:"DevtoolsDocs"}),d={};function f(e,s){const o=m;return t(),a(o,{url:"https://nuxtseo.com/docs/seo-utils"})}const p=r(d,[["render",f]]);export{p as default};
1
+ import{d as c,o as t,g as n,i as l,l as r,c as a}from"./CyZlrzIE.js";const _={class:"h-full max-h-full overflow-hidden"},u=["src","title"],i=c({__name:"DevtoolsDocs",props:{url:{}},setup(e){return(s,o)=>(t(),n("div",_,[l("iframe",{src:e.url,title:`Documentation - ${e.url}`,class:"w-full h-full border-none",style:{"min-height":"calc(100vh - 100px)"}},null,8,u)]))}}),m=Object.assign(i,{__name:"DevtoolsDocs"}),d={};function f(e,s){const o=m;return t(),a(o,{url:"https://nuxtseo.com/docs/seo-utils"})}const p=r(d,[["render",f]]);export{p as default};
@@ -1 +1 @@
1
- import{d as A,u as q,s as H,q as M,v as z,x as J,o as a,g as l,c as w,y as X,w as v,b as i,e as K,F as f,i as e,m as C,A as Q,n as B,j as n,p as Y,k as p,C as Z,z as F,a as L,r as U,f as h,l as ee}from"./BEcxVnVC.js";import{_ as te,a as ae,p as se}from"./CPBXREPo.js";import{_ as oe}from"./BRD_U32-.js";const le={class:"space-y-5 stagger-children"},ne={class:"space-y-1"},re={class:"min-w-0"},ie={class:"font-mono text-xs"},ce={class:"text-xs text-[var(--color-text-muted)]"},ue={class:"social-tab-bar"},de=["onClick"],ge={class:"social-tab__label"},ve={class:"social-preview-stage"},pe={key:0,class:"social-preview-card"},me={class:"rounded-2xl overflow-hidden border border-neutral-200 dark:border-neutral-700"},_e={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-800"},he=["src","alt"],xe={key:1,class:"social-image-placeholder aspect-[1.91/1]"},be={class:"p-3"},we={class:"text-xs text-neutral-500"},fe={class:"text-sm font-medium line-clamp-1"},ye={class:"text-xs text-neutral-500 line-clamp-2"},ke={key:1,class:"social-preview-card"},Ie={class:"rounded-lg overflow-hidden border border-neutral-200 dark:border-neutral-700 bg-neutral-50 dark:bg-neutral-800"},Te={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-700"},Ce=["src","alt"],Ne={key:1,class:"social-image-placeholder aspect-[1.91/1]"},$e={class:"p-3"},Se={class:"text-[11px] text-neutral-500 uppercase tracking-wider"},Ue={class:"text-base font-semibold line-clamp-1 mt-0.5"},je={class:"text-sm text-neutral-500 line-clamp-1 mt-0.5"},De={key:2,class:"social-preview-card"},Me={class:"rounded-lg overflow-hidden border border-neutral-200 dark:border-neutral-700"},ze={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-800"},Be=["src","alt"],Fe={key:1,class:"social-image-placeholder aspect-[1.91/1]"},Le={class:"p-3 bg-neutral-50 dark:bg-neutral-800"},Oe={class:"text-sm font-semibold line-clamp-2"},Ee={class:"text-xs text-neutral-500 mt-1"},Pe={key:3,class:"social-preview-card"},Re={class:"rounded-lg overflow-hidden border-l-4 border-[#5865F2] bg-[#2f3136] text-white p-4"},Ve={class:"text-xs text-neutral-400 mb-1"},We={class:"text-[#00aff4] text-sm font-semibold hover:underline cursor-pointer"},Ge={class:"text-sm text-neutral-300 mt-1 line-clamp-2"},Ae={key:0,class:"mt-3 rounded-lg overflow-hidden max-w-[300px]"},qe=["src","alt"],He={key:1,class:"social-image-placeholder social-image-placeholder--discord mt-3 max-w-[300px] aspect-video rounded-lg"},Je={key:4,class:"social-preview-card"},Xe={class:"rounded-lg overflow-hidden border-l-4 border-neutral-300 dark:border-neutral-600 pl-4 py-2"},Ke={class:"text-xs text-neutral-500 font-bold mb-1"},Qe={class:"text-[#1264a3] dark:text-[#1d9bd1] text-sm font-bold hover:underline cursor-pointer"},Ye={class:"text-sm text-neutral-600 dark:text-neutral-400 mt-0.5 line-clamp-2"},Ze={key:0,class:"mt-2 rounded overflow-hidden max-w-[360px]"},et=["src","alt"],tt={class:"social-tags-table"},at={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},st={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},ot={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},lt={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},nt={class:"rounded-lg overflow-hidden border border-[var(--color-border)]"},rt=["src","alt"],it={class:"flex items-center gap-2 text-xs text-[var(--color-text-muted)] font-mono"},ct={class:"truncate"},ut=A({__name:"social",setup(dt){const{copy:O,copied:E}=q(),N=U(!1),y=U(null),t=U(null),_=U("twitter"),P=[{label:"X / Twitter",value:"twitter",icon:"carbon:logo-x"},{label:"Facebook",value:"facebook",icon:"carbon:logo-facebook"},{label:"LinkedIn",value:"linkedin",icon:"carbon:logo-linkedin"},{label:"Discord",value:"discord",icon:"carbon:logo-discord"},{label:"Slack",value:"slack",icon:"carbon:logo-slack"}],x=h(()=>{if(!t.value)return[];const c=[];if(t.value.og["og:title"]||c.push({type:"warning",property:"og:title",message:"Missing og:title. Social previews will use the page title as fallback."}),t.value.og["og:description"]||c.push({type:"warning",property:"og:description",message:"Missing og:description."}),t.value.ogImages.length||c.push({type:"warning",property:"og:image",message:"No og:image found. Posts with images get higher engagement."}),t.value.og["og:url"]||c.push({type:"warning",property:"og:url",message:"Missing og:url."}),t.value.twitter["twitter:card"]||c.push({type:"warning",property:"twitter:card",message:'Missing twitter:card. Defaults to "summary".'}),t.value.ogImages.length){const o=t.value.ogImages[0];o.url&&!o.url.startsWith("http")&&c.push({type:"error",property:"og:image",message:"og:image must be an absolute URL."});const r=Number.parseInt(o.width||"0"),u=Number.parseInt(o.height||"0");r&&u&&(r<200||u<200)&&c.push({type:"warning",property:"og:image",message:`Image is ${r}x${u}. Minimum recommended: 200x200, ideal: 1200x630.`})}return c}),d=h(()=>t.value?.og["og:title"]||t.value?.twitter["twitter:title"]||t.value?.title||"Untitled"),$=h(()=>t.value?.og["og:description"]||t.value?.twitter["twitter:description"]||t.value?.description||""),g=h(()=>t.value?.ogImages[0]?.url||t.value?.twitter["twitter:image"]||null),k=h(()=>{if(t.value?.og["og:site_name"])return t.value.og["og:site_name"];try{return new URL(t.value?.url||"").hostname}catch{return""}}),R=h(()=>t.value?Object.keys(t.value.og).length:0),V=h(()=>t.value?Object.keys(t.value.twitter).length:0);function W(c,o){const r=se(c),u=[];r.ogTags["og:image"]&&u.push({url:r.ogTags["og:image"],width:r.ogTags["og:image:width"],height:r.ogTags["og:image:height"],alt:r.ogTags["og:image:alt"]});let I="";try{I=new URL(o).hostname}catch{I=o}return{title:r.title,description:r.description,url:o,siteName:r.ogTags["og:site_name"]||I,og:r.ogTags,ogImages:u,twitter:r.twitterTags,twitterCard:r.twitterTags["twitter:card"]||"summary"}}async function j(){N.value=!0,y.value=null,t.value=null;try{const o=`${window.parent?.location?.origin||window.location.origin}${z.value}`,r=await fetch(o,{headers:{Accept:"text/html"}});if(!r.ok)throw new Error(`HTTP ${r.status}`);const u=await r.text();t.value=W(u,o)}catch(c){y.value=c.message||"Failed to fetch page"}finally{N.value=!1}}return H([()=>M.value,z,J],()=>{M.value&&j()},{immediate:!0}),(c,o)=>{const r=X,u=K,I=te,T=oe,b=Q,S=Y,D=Z,G=ae;return a(),l("div",le,[N.value?(a(),w(r,{key:0})):y.value?(a(),w(I,{key:1,error:y.value,title:"Failed to check page"},{default:v(()=>[i(u,{size:"sm",variant:"ghost",icon:"carbon:reset",label:"Retry",onClick:j})]),_:1},8,["error"])):t.value?(a(),l(f,{key:2},[x.value.length?(a(),w(S,{key:0,icon:"carbon:warning",text:"Warnings"},{actions:v(()=>[i(T,{value:x.value.filter(s=>s.type==="error").length,label:"errors",variant:x.value.some(s=>s.type==="error")?"danger":void 0},null,8,["value","variant"]),i(T,{value:x.value.filter(s=>s.type==="warning").length,label:"warnings",variant:x.value.some(s=>s.type==="warning")?"warning":void 0},null,8,["value","variant"])]),default:v(()=>[e("div",ne,[(a(!0),l(f,null,C(x.value,s=>(a(),l("div",{key:s.property+s.message,class:"social-issue-row"},[i(b,{name:s.type==="error"?"carbon:close-filled":"carbon:warning-filled",class:B(["mt-0.5 shrink-0",s.type==="error"?"text-red-500":"text-amber-500"])},null,8,["name","class"]),e("div",re,[e("span",ie,n(s.property),1),e("p",ce,n(s.message),1)])]))),128))])]),_:1})):p("",!0),i(S,{icon:"carbon:view",text:"Social Preview",padding:!1},{default:v(()=>[e("div",ue,[(a(),l(f,null,C(P,s=>e("button",{key:s.value,class:B(["social-tab",{"social-tab--active":_.value===s.value}]),onClick:m=>_.value=s.value},[i(b,{name:s.icon,class:"text-sm"},null,8,["name"]),e("span",ge,n(s.label),1)],10,de)),64))]),e("div",ve,[_.value==="twitter"?(a(),l("div",pe,[e("div",me,[g.value?(a(),l("div",_e,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,he)])):(a(),l("div",xe,[i(b,{name:"carbon:image",class:"text-2xl"}),o[1]||(o[1]=e("span",null,"No og:image",-1))])),e("div",be,[e("p",we,n(k.value),1),e("p",fe,n(d.value),1),e("p",ye,n($.value),1)])])])):p("",!0),_.value==="facebook"?(a(),l("div",ke,[e("div",Ie,[g.value?(a(),l("div",Te,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,Ce)])):(a(),l("div",Ne,[i(b,{name:"carbon:image",class:"text-2xl"}),o[2]||(o[2]=e("span",null,"No og:image",-1))])),e("div",$e,[e("p",Se,n(k.value),1),e("p",Ue,n(d.value),1),e("p",je,n($.value),1)])])])):p("",!0),_.value==="linkedin"?(a(),l("div",De,[e("div",Me,[g.value?(a(),l("div",ze,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,Be)])):(a(),l("div",Fe,[i(b,{name:"carbon:image",class:"text-2xl"}),o[3]||(o[3]=e("span",null,"No og:image",-1))])),e("div",Le,[e("p",Oe,n(d.value),1),e("p",Ee,n(k.value),1)])])])):p("",!0),_.value==="discord"?(a(),l("div",Pe,[e("div",Re,[e("p",Ve,n(k.value),1),e("p",We,n(d.value),1),e("p",Ge,n($.value),1),g.value?(a(),l("div",Ae,[e("img",{src:g.value,class:"w-full object-cover",alt:d.value},null,8,qe)])):(a(),l("div",He,[i(b,{name:"carbon:image",class:"text-xl"}),o[4]||(o[4]=e("span",null,"No image",-1))]))])])):p("",!0),_.value==="slack"?(a(),l("div",Je,[e("div",Xe,[e("p",Ke,n(k.value),1),e("p",Qe,n(d.value),1),e("p",Ye,n($.value),1),g.value?(a(),l("div",Ze,[e("img",{src:g.value,class:"w-full object-cover",alt:d.value},null,8,et)])):p("",!0)])])):p("",!0)])]),_:1}),i(S,{icon:"carbon:tag-group",text:"Open Graph Tags"},{actions:v(()=>[i(T,{value:R.value,label:"og"},null,8,["value"]),i(T,{value:V.value,label:"twitter"},null,8,["value"]),i(u,{size:"xs",variant:"ghost",color:"neutral",icon:"carbon:copy",label:L(E)?"Copied!":"Copy",onClick:o[0]||(o[0]=s=>L(O)(JSON.stringify({og:t.value.og,twitter:t.value.twitter},null,2)))},null,8,["label"])]),default:v(()=>[e("div",tt,[(a(!0),l(f,null,C(t.value.og,(s,m)=>(a(),l("div",{key:m,class:"social-tags-table__row"},[i(D,{color:"primary",variant:"subtle",size:"xs"},{default:v(()=>[...o[5]||(o[5]=[F(" og ",-1)])]),_:1}),e("span",at,n(m),1),e("span",st,n(s),1)]))),128)),(a(!0),l(f,null,C(t.value.twitter,(s,m)=>(a(),l("div",{key:m,class:"social-tags-table__row"},[i(D,{color:"neutral",variant:"subtle",size:"xs"},{default:v(()=>[...o[6]||(o[6]=[F(" twitter ",-1)])]),_:1}),e("span",ot,n(m),1),e("span",lt,n(s),1)]))),128))])]),_:1}),t.value.ogImages.length?(a(),w(S,{key:1,icon:"carbon:image",text:"OG Image"},{actions:v(()=>[t.value.ogImages[0]?.width&&t.value.ogImages[0]?.height?(a(),w(T,{key:0,value:`${t.value.ogImages[0].width}×${t.value.ogImages[0].height}`,label:"px"},null,8,["value"])):p("",!0)]),default:v(()=>[(a(!0),l(f,null,C(t.value.ogImages,(s,m)=>(a(),l("div",{key:m,class:"space-y-2"},[e("div",nt,[e("img",{src:s.url,class:"w-full max-h-64 object-contain bg-neutral-100 dark:bg-neutral-800",alt:s.alt||"OG Image"},null,8,rt)]),e("div",it,[e("span",ct,n(s.url),1)])]))),128))]),_:1})):p("",!0)],64)):!N.value&&!y.value?(a(),w(G,{key:3,icon:"carbon:share",title:"Waiting for connection",description:"Waiting for connection to host app..."})):p("",!0)])}}}),mt=ee(ut,[["__scopeId","data-v-59fbea83"]]);export{mt as default};
1
+ import{d as A,u as q,s as H,q as M,v as z,x as J,o as a,g as l,c as w,y as X,w as v,b as i,e as K,F as f,i as e,m as C,A as Q,n as B,j as n,p as Y,k as p,C as Z,z as F,a as L,r as U,f as h,l as ee}from"./CyZlrzIE.js";import{_ as te,a as ae,p as se}from"./6917fNJL.js";import{_ as oe}from"./BlsnyXdL.js";const le={class:"space-y-5 stagger-children"},ne={class:"space-y-1"},re={class:"min-w-0"},ie={class:"font-mono text-xs"},ce={class:"text-xs text-[var(--color-text-muted)]"},ue={class:"social-tab-bar"},de=["onClick"],ge={class:"social-tab__label"},ve={class:"social-preview-stage"},pe={key:0,class:"social-preview-card"},me={class:"rounded-2xl overflow-hidden border border-neutral-200 dark:border-neutral-700"},_e={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-800"},he=["src","alt"],xe={key:1,class:"social-image-placeholder aspect-[1.91/1]"},be={class:"p-3"},we={class:"text-xs text-neutral-500"},fe={class:"text-sm font-medium line-clamp-1"},ye={class:"text-xs text-neutral-500 line-clamp-2"},ke={key:1,class:"social-preview-card"},Ie={class:"rounded-lg overflow-hidden border border-neutral-200 dark:border-neutral-700 bg-neutral-50 dark:bg-neutral-800"},Te={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-700"},Ce=["src","alt"],Ne={key:1,class:"social-image-placeholder aspect-[1.91/1]"},$e={class:"p-3"},Se={class:"text-[11px] text-neutral-500 uppercase tracking-wider"},Ue={class:"text-base font-semibold line-clamp-1 mt-0.5"},je={class:"text-sm text-neutral-500 line-clamp-1 mt-0.5"},De={key:2,class:"social-preview-card"},Me={class:"rounded-lg overflow-hidden border border-neutral-200 dark:border-neutral-700"},ze={key:0,class:"aspect-[1.91/1] bg-neutral-100 dark:bg-neutral-800"},Be=["src","alt"],Fe={key:1,class:"social-image-placeholder aspect-[1.91/1]"},Le={class:"p-3 bg-neutral-50 dark:bg-neutral-800"},Oe={class:"text-sm font-semibold line-clamp-2"},Ee={class:"text-xs text-neutral-500 mt-1"},Pe={key:3,class:"social-preview-card"},Re={class:"rounded-lg overflow-hidden border-l-4 border-[#5865F2] bg-[#2f3136] text-white p-4"},Ve={class:"text-xs text-neutral-400 mb-1"},We={class:"text-[#00aff4] text-sm font-semibold hover:underline cursor-pointer"},Ge={class:"text-sm text-neutral-300 mt-1 line-clamp-2"},Ae={key:0,class:"mt-3 rounded-lg overflow-hidden max-w-[300px]"},qe=["src","alt"],He={key:1,class:"social-image-placeholder social-image-placeholder--discord mt-3 max-w-[300px] aspect-video rounded-lg"},Je={key:4,class:"social-preview-card"},Xe={class:"rounded-lg overflow-hidden border-l-4 border-neutral-300 dark:border-neutral-600 pl-4 py-2"},Ke={class:"text-xs text-neutral-500 font-bold mb-1"},Qe={class:"text-[#1264a3] dark:text-[#1d9bd1] text-sm font-bold hover:underline cursor-pointer"},Ye={class:"text-sm text-neutral-600 dark:text-neutral-400 mt-0.5 line-clamp-2"},Ze={key:0,class:"mt-2 rounded overflow-hidden max-w-[360px]"},et=["src","alt"],tt={class:"social-tags-table"},at={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},st={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},ot={class:"text-sm font-mono shrink-0 text-[var(--color-text)]"},lt={class:"text-xs text-[var(--color-text-muted)] truncate min-w-0 flex-1 text-right font-mono"},nt={class:"rounded-lg overflow-hidden border border-[var(--color-border)]"},rt=["src","alt"],it={class:"flex items-center gap-2 text-xs text-[var(--color-text-muted)] font-mono"},ct={class:"truncate"},ut=A({__name:"social",setup(dt){const{copy:O,copied:E}=q(),N=U(!1),y=U(null),t=U(null),_=U("twitter"),P=[{label:"X / Twitter",value:"twitter",icon:"carbon:logo-x"},{label:"Facebook",value:"facebook",icon:"carbon:logo-facebook"},{label:"LinkedIn",value:"linkedin",icon:"carbon:logo-linkedin"},{label:"Discord",value:"discord",icon:"carbon:logo-discord"},{label:"Slack",value:"slack",icon:"carbon:logo-slack"}],x=h(()=>{if(!t.value)return[];const c=[];if(t.value.og["og:title"]||c.push({type:"warning",property:"og:title",message:"Missing og:title. Social previews will use the page title as fallback."}),t.value.og["og:description"]||c.push({type:"warning",property:"og:description",message:"Missing og:description."}),t.value.ogImages.length||c.push({type:"warning",property:"og:image",message:"No og:image found. Posts with images get higher engagement."}),t.value.og["og:url"]||c.push({type:"warning",property:"og:url",message:"Missing og:url."}),t.value.twitter["twitter:card"]||c.push({type:"warning",property:"twitter:card",message:'Missing twitter:card. Defaults to "summary".'}),t.value.ogImages.length){const o=t.value.ogImages[0];o.url&&!o.url.startsWith("http")&&c.push({type:"error",property:"og:image",message:"og:image must be an absolute URL."});const r=Number.parseInt(o.width||"0"),u=Number.parseInt(o.height||"0");r&&u&&(r<200||u<200)&&c.push({type:"warning",property:"og:image",message:`Image is ${r}x${u}. Minimum recommended: 200x200, ideal: 1200x630.`})}return c}),d=h(()=>t.value?.og["og:title"]||t.value?.twitter["twitter:title"]||t.value?.title||"Untitled"),$=h(()=>t.value?.og["og:description"]||t.value?.twitter["twitter:description"]||t.value?.description||""),g=h(()=>t.value?.ogImages[0]?.url||t.value?.twitter["twitter:image"]||null),k=h(()=>{if(t.value?.og["og:site_name"])return t.value.og["og:site_name"];try{return new URL(t.value?.url||"").hostname}catch{return""}}),R=h(()=>t.value?Object.keys(t.value.og).length:0),V=h(()=>t.value?Object.keys(t.value.twitter).length:0);function W(c,o){const r=se(c),u=[];r.ogTags["og:image"]&&u.push({url:r.ogTags["og:image"],width:r.ogTags["og:image:width"],height:r.ogTags["og:image:height"],alt:r.ogTags["og:image:alt"]});let I="";try{I=new URL(o).hostname}catch{I=o}return{title:r.title,description:r.description,url:o,siteName:r.ogTags["og:site_name"]||I,og:r.ogTags,ogImages:u,twitter:r.twitterTags,twitterCard:r.twitterTags["twitter:card"]||"summary"}}async function j(){N.value=!0,y.value=null,t.value=null;try{const o=`${window.parent?.location?.origin||window.location.origin}${z.value}`,r=await fetch(o,{headers:{Accept:"text/html"}});if(!r.ok)throw new Error(`HTTP ${r.status}`);const u=await r.text();t.value=W(u,o)}catch(c){y.value=c.message||"Failed to fetch page"}finally{N.value=!1}}return H([()=>M.value,z,J],()=>{M.value&&j()},{immediate:!0}),(c,o)=>{const r=X,u=K,I=te,T=oe,b=Q,S=Y,D=Z,G=ae;return a(),l("div",le,[N.value?(a(),w(r,{key:0})):y.value?(a(),w(I,{key:1,error:y.value,title:"Failed to check page"},{default:v(()=>[i(u,{size:"sm",variant:"ghost",icon:"carbon:reset",label:"Retry",onClick:j})]),_:1},8,["error"])):t.value?(a(),l(f,{key:2},[x.value.length?(a(),w(S,{key:0,icon:"carbon:warning",text:"Warnings"},{actions:v(()=>[i(T,{value:x.value.filter(s=>s.type==="error").length,label:"errors",variant:x.value.some(s=>s.type==="error")?"danger":void 0},null,8,["value","variant"]),i(T,{value:x.value.filter(s=>s.type==="warning").length,label:"warnings",variant:x.value.some(s=>s.type==="warning")?"warning":void 0},null,8,["value","variant"])]),default:v(()=>[e("div",ne,[(a(!0),l(f,null,C(x.value,s=>(a(),l("div",{key:s.property+s.message,class:"social-issue-row"},[i(b,{name:s.type==="error"?"carbon:close-filled":"carbon:warning-filled",class:B(["mt-0.5 shrink-0",s.type==="error"?"text-red-500":"text-amber-500"])},null,8,["name","class"]),e("div",re,[e("span",ie,n(s.property),1),e("p",ce,n(s.message),1)])]))),128))])]),_:1})):p("",!0),i(S,{icon:"carbon:view",text:"Social Preview",padding:!1},{default:v(()=>[e("div",ue,[(a(),l(f,null,C(P,s=>e("button",{key:s.value,class:B(["social-tab",{"social-tab--active":_.value===s.value}]),onClick:m=>_.value=s.value},[i(b,{name:s.icon,class:"text-sm"},null,8,["name"]),e("span",ge,n(s.label),1)],10,de)),64))]),e("div",ve,[_.value==="twitter"?(a(),l("div",pe,[e("div",me,[g.value?(a(),l("div",_e,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,he)])):(a(),l("div",xe,[i(b,{name:"carbon:image",class:"text-2xl"}),o[1]||(o[1]=e("span",null,"No og:image",-1))])),e("div",be,[e("p",we,n(k.value),1),e("p",fe,n(d.value),1),e("p",ye,n($.value),1)])])])):p("",!0),_.value==="facebook"?(a(),l("div",ke,[e("div",Ie,[g.value?(a(),l("div",Te,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,Ce)])):(a(),l("div",Ne,[i(b,{name:"carbon:image",class:"text-2xl"}),o[2]||(o[2]=e("span",null,"No og:image",-1))])),e("div",$e,[e("p",Se,n(k.value),1),e("p",Ue,n(d.value),1),e("p",je,n($.value),1)])])])):p("",!0),_.value==="linkedin"?(a(),l("div",De,[e("div",Me,[g.value?(a(),l("div",ze,[e("img",{src:g.value,class:"w-full h-full object-cover",alt:d.value},null,8,Be)])):(a(),l("div",Fe,[i(b,{name:"carbon:image",class:"text-2xl"}),o[3]||(o[3]=e("span",null,"No og:image",-1))])),e("div",Le,[e("p",Oe,n(d.value),1),e("p",Ee,n(k.value),1)])])])):p("",!0),_.value==="discord"?(a(),l("div",Pe,[e("div",Re,[e("p",Ve,n(k.value),1),e("p",We,n(d.value),1),e("p",Ge,n($.value),1),g.value?(a(),l("div",Ae,[e("img",{src:g.value,class:"w-full object-cover",alt:d.value},null,8,qe)])):(a(),l("div",He,[i(b,{name:"carbon:image",class:"text-xl"}),o[4]||(o[4]=e("span",null,"No image",-1))]))])])):p("",!0),_.value==="slack"?(a(),l("div",Je,[e("div",Xe,[e("p",Ke,n(k.value),1),e("p",Qe,n(d.value),1),e("p",Ye,n($.value),1),g.value?(a(),l("div",Ze,[e("img",{src:g.value,class:"w-full object-cover",alt:d.value},null,8,et)])):p("",!0)])])):p("",!0)])]),_:1}),i(S,{icon:"carbon:tag-group",text:"Open Graph Tags"},{actions:v(()=>[i(T,{value:R.value,label:"og"},null,8,["value"]),i(T,{value:V.value,label:"twitter"},null,8,["value"]),i(u,{size:"xs",variant:"ghost",color:"neutral",icon:"carbon:copy",label:L(E)?"Copied!":"Copy",onClick:o[0]||(o[0]=s=>L(O)(JSON.stringify({og:t.value.og,twitter:t.value.twitter},null,2)))},null,8,["label"])]),default:v(()=>[e("div",tt,[(a(!0),l(f,null,C(t.value.og,(s,m)=>(a(),l("div",{key:m,class:"social-tags-table__row"},[i(D,{color:"primary",variant:"subtle",size:"xs"},{default:v(()=>[...o[5]||(o[5]=[F(" og ",-1)])]),_:1}),e("span",at,n(m),1),e("span",st,n(s),1)]))),128)),(a(!0),l(f,null,C(t.value.twitter,(s,m)=>(a(),l("div",{key:m,class:"social-tags-table__row"},[i(D,{color:"neutral",variant:"subtle",size:"xs"},{default:v(()=>[...o[6]||(o[6]=[F(" twitter ",-1)])]),_:1}),e("span",ot,n(m),1),e("span",lt,n(s),1)]))),128))])]),_:1}),t.value.ogImages.length?(a(),w(S,{key:1,icon:"carbon:image",text:"OG Image"},{actions:v(()=>[t.value.ogImages[0]?.width&&t.value.ogImages[0]?.height?(a(),w(T,{key:0,value:`${t.value.ogImages[0].width}×${t.value.ogImages[0].height}`,label:"px"},null,8,["value"])):p("",!0)]),default:v(()=>[(a(!0),l(f,null,C(t.value.ogImages,(s,m)=>(a(),l("div",{key:m,class:"space-y-2"},[e("div",nt,[e("img",{src:s.url,class:"w-full max-h-64 object-contain bg-neutral-100 dark:bg-neutral-800",alt:s.alt||"OG Image"},null,8,rt)]),e("div",it,[e("span",ct,n(s.url),1)])]))),128))]),_:1})):p("",!0)],64)):!N.value&&!y.value?(a(),w(G,{key:3,icon:"carbon:share",title:"Waiting for connection",description:"Waiting for connection to host app..."})):p("",!0)])}}}),mt=ee(ut,[["__scopeId","data-v-59fbea83"]]);export{mt as default};
@@ -1 +1 @@
1
- import{d as n,o as a,g as t,n as l,c as i,A as r,k as o,i as m,j as s,l as d}from"./BEcxVnVC.js";const _={class:"devtools-metric-value"},v={key:1,class:"devtools-metric-label"},u=n({__name:"DevtoolsMetric",props:{label:{},value:{},icon:{},variant:{default:"default"}},setup(e){return(f,k)=>{const c=r;return a(),t("div",{class:l(["devtools-metric",`devtools-metric-${e.variant}`])},[e.icon?(a(),i(c,{key:0,name:e.icon,class:"devtools-metric-icon","aria-hidden":"true"},null,8,["name"])):o("",!0),m("span",_,s(e.value),1),e.label?(a(),t("span",v,s(e.label),1)):o("",!0)],2)}}}),h=Object.assign(d(u,[["__scopeId","data-v-86d8e7a9"]]),{__name:"DevtoolsMetric"});export{h as _};
1
+ import{d as n,o as a,g as t,n as l,c as i,A as r,k as o,i as m,j as s,l as d}from"./CyZlrzIE.js";const _={class:"devtools-metric-value"},v={key:1,class:"devtools-metric-label"},u=n({__name:"DevtoolsMetric",props:{label:{},value:{},icon:{},variant:{default:"default"}},setup(e){return(f,k)=>{const c=r;return a(),t("div",{class:l(["devtools-metric",`devtools-metric-${e.variant}`])},[e.icon?(a(),i(c,{key:0,name:e.icon,class:"devtools-metric-icon","aria-hidden":"true"},null,8,["name"])):o("",!0),m("span",_,s(e.value),1),e.label?(a(),t("span",v,s(e.label),1)):o("",!0)],2)}}}),h=Object.assign(d(u,[["__scopeId","data-v-3ed821e0"]]),{__name:"DevtoolsMetric"});export{h as _};