import type { Metadata } from 'next';

export const metadata: Metadata = {
  title: 'YouTube Link Parser - Extract Video ID from URL | YTToolkits',
  description: 'Parse any YouTube URL to extract video ID, playlist ID, and timestamps. Generate short links and embed URLs. Free tool.',
  keywords: 'youtube link parser, extract video id from youtube url, youtube url analyzer, youtube url to video id, youtube video id extractor, parse youtube link, clean youtube url, remove tracking from youtube url, youtube short link converter, youtu be link expander, youtube timestamp link generator, extract youtube playlist id, youtube link debugger, break down youtube url, youtube link cleaner, get 11 character youtube id, free youtube url parser, online youtube link parser, best youtube url analyzer, youtube url format parser, extract youtube channel id from link, convert youtu be to youtube com, convert shorts url to normal url, convert youtube shorts to watch url, youtube url deep link generator, clean youtube tracking parameters, youtube url query string parser, youtube link parser for pc, youtube link parser for mac, youtube link parser for windows, youtube link parser for linux, youtube link parser for android, youtube link parser for iphone, youtube link parser for ipad, youtube link parser for ios, youtube link parser for chrome, youtube link parser for firefox, youtube link parser for edge, youtube link parser for safari, youtube link parser for chromebook, youtube link parser app, youtube link parser software, youtube link parser website, youtube link parser tool, youtube link parser online free, youtube link parser no ads, youtube link parser no registration, youtube link parser fast, youtube link parser safe, youtube link parser instant, youtube link parser accurate, youtube link parser for developers, youtube link parser for programmers, youtube link parser for api, youtube link parser 2026, youtube link parser 2027, youtube link parser 2028, youtube link parser 2029, youtube link parser 2030, youtube link parser 2031, youtube link parser 2032, youtube link parser 2033, youtube link parser 2034, youtube link parser 2035, extract video id from url 2026, extract video id from url 2027, extract video id from url 2028, extract video id from url 2029, extract video id from url 2030, extract video id from url 2031, extract video id from url 2032, extract video id from url 2033, extract video id from url 2034, extract video id from url 2035, youtube url analyzer 2026, youtube url analyzer 2027, youtube url analyzer 2028, youtube url analyzer 2029, youtube url analyzer 2030, parse youtube link 2026, parse youtube link 2027, parse youtube link 2028, parse youtube link 2029, parse youtube link 2030, free youtube link parser 2026, free youtube link parser 2027, free youtube link parser 2028, free youtube link parser 2029, free youtube link parser 2030, best youtube link parser 2026, best youtube link parser 2027, best youtube link parser 2028, best youtube link parser 2029, best youtube link parser 2030, online youtube link parser 2026, online youtube link parser 2027, online youtube link parser 2028, online youtube link parser 2029, online youtube link parser 2030, youtube link parser latest 2026, youtube link parser latest 2027, youtube link parser latest 2028, youtube link parser latest 2029, youtube link parser latest 2030, youtube link parser updated 2026, youtube link parser updated 2027, youtube link parser updated 2028, youtube link parser updated 2029, youtube link parser updated 2030, youtube link parser new 2026, youtube link parser new 2027, youtube link parser new 2028, youtube link parser new 2029, youtube link parser new 2030, youtube link parser working 2026, youtube link parser working 2027, youtube link parser working 2028, youtube link parser working 2029, youtube link parser working 2030, youtube link parser 2026 free, youtube link parser 2027 free, youtube link parser 2028 free, youtube link parser 2029 free, youtube link parser 2030 free, youtube link parser 2026 online, youtube link parser 2027 online, youtube link parser 2028 online, youtube link parser 2029 online, youtube link parser 2030 online, youtube link parser 2026 no ads, youtube link parser 2027 no ads, youtube link parser 2028 no ads, youtube link parser 2029 no ads, youtube link parser 2030 no ads, youtube link parser 2026 safe, youtube link parser 2027 safe, youtube link parser 2028 safe, youtube link parser 2029 safe, youtube link parser 2030 safe, youtube link parser 2026 fast, youtube link parser 2027 fast, youtube link parser 2028 fast, youtube link parser 2029 fast, youtube link parser 2030 fast, youtube video id finder 2026, youtube video id finder 2027, youtube video id finder 2028, clean youtube link 2026, clean youtube link 2027, clean youtube link 2028, youtube link parser 2026 and beyond, youtube link parser 2027 and beyond, youtube link parser 2028 and beyond, youtube link parser 2029 and beyond, youtube link parser 2030 and beyond, youtube link parser 2026-2030, youtube link parser 2026-2035, youtube link parser upcoming years, youtube link parser future years, youtube link parser next year, how to get youtube video id from url, extract v parameter youtube url, youtube link dissecting tool, inspect youtube link parameters, clean youtube url share tool',
  openGraph: {
    title: 'YouTube Link Parser - Extract Video ID from URL | YTToolkits',
    description: 'Parse any YouTube URL to extract video ID, playlist ID, and timestamps. Generate short links and embed URLs. Free tool.',
    url: 'https://yttoolkits.site/link-viewer',
    siteName: 'YTToolkits',
    locale: 'en_US',
    type: 'website',
  },
  twitter: {
    card: 'summary_large_image',
    title: 'YouTube Link Parser - Extract Video ID from URL | YTToolkits',
    description: 'Parse any YouTube URL to extract video ID, playlist ID, and timestamps. Generate short links and embed URLs. Free tool.',
  },
  alternates: {
    canonical: 'https://yttoolkits.site/link-viewer',
  },
};

export default function Layout({ children }: { children: React.ReactNode }) {
  const schemaOrg = {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "SoftwareApplication",
        "name": "YTToolkits YouTube Link Parser",
        "operatingSystem": "All",
        "applicationCategory": "UtilitiesApplication",
        "offers": {
          "@type": "Offer",
          "price": "0",
          "priceCurrency": "USD"
        },
        "aggregateRating": {
          "@type": "AggregateRating",
          "ratingValue": "4.8",
          "ratingCount": "1020"
        },
        "description": "Free online utility to parse YouTube URLs, extract video IDs, timestamps, playlist parameters, and clean tracking tokens."
      },
      {
        "@type": "HowTo",
        "name": "How to Parse YouTube Links and Extract Video IDs",
        "step": [
          {
            "@type": "HowToStep",
            "name": "Enter YouTube URL",
            "text": "Paste standard URLs, short links (youtu.be), Shorts, or playlist links into the input box."
          },
          {
            "@type": "HowToStep",
            "name": "Analyze URL Structure",
            "text": "Click Parse Link to instantly inspect the query string, video ID, channel ID, and timestamps."
          },
          {
            "@type": "HowToStep",
            "name": "Clean Parameters",
            "text": "Automatically strip affiliate tokens, tracking UTM tags, and feature parameters for clean sharing."
          },
          {
            "@type": "HowToStep",
            "name": "Copy Extracted ID or URL",
            "text": "One-click copy the canonical URL, isolated 11-character Video ID, or timestamped deep link."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://yttoolkits.site" },
          { "@type": "ListItem", "position": 2, "name": "Tools", "item": "https://yttoolkits.site/tools" },
          { "@type": "ListItem", "position": 3, "name": "Link Viewer", "item": "https://yttoolkits.site/link-viewer" }
        ]
      }
    ]
  };

  return (
    <>
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(schemaOrg) }}
      />
      {children}
    </>
  );
}
