Files
radio.org.tr/.netlify/build/chunks/PageLayout_CDwIBOQs.mjs
T
Buğra Canata e05f99a0d2 Enable KeyStatic CMS for production
Changes:
- Added Netlify adapter for server-side rendering
- Changed output mode from static to server
- Updated KeyStatic storage from local to GitHub
- Removed SKIP_KEYSTATIC from Netlify build
- KeyStatic Admin UI will be available at /keystatic

Features:
- Server-side rendering with Netlify Functions
- GitHub integration for content management
- Production-ready KeyStatic Admin UI

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-17 20:05:42 +03:00

209 lines
17 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { c as createComponent, m as maybeRenderHead, r as renderComponent, a as renderTemplate, e as createAstro, b as addAttribute, f as renderSlot, s as spreadAttributes, F as Fragment, u as unescapeHTML } from './astro/server_BfDhyAjM.mjs';
import 'kleur/colors';
import { a as $$Icon, $ as $$Layout } from './Icon_C8ArtCuv.mjs';
import { Image as $$Image } from './_astro_assets_CEb4NYTX.mjs';
import logoImage from './ARC_2024_bayrak_logo-Large-1-1024x1024_C43xBVnw.mjs';
import { U as UI, t as trimSlash, g as getHomePermalink, b as getAsset, S as SITE, a as getPermalink, d as getBlogPermalink } from './permalinks_BMxSf01e.mjs';
import 'clsx';
import { twMerge } from 'tailwind-merge';
const $$Logo = createComponent(($$result, $$props, $$slots) => {
return renderTemplate`${maybeRenderHead()}<div class="flex items-center"> ${renderComponent($$result, "Image", $$Image, { "src": logoImage, "alt": "ARC Logo", "width": 40, "height": 40, "class": "mr-2" })} <span class="self-center text-2xl md:text-xl font-bold text-gray-900 whitespace-nowrap dark:text-white"> ARC </span> </div>`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/Logo.astro", void 0);
const $$Astro$5 = createAstro("https://www.radio.org.tr");
const $$ToggleTheme = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro$5, $$props, $$slots);
Astro2.self = $$ToggleTheme;
const {
label = "Toggle between Dark and Light mode",
class: className = "text-muted dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 rounded-lg text-sm p-2.5 inline-flex items-center",
iconClass = "w-6 h-6",
iconName = "tabler:sun"
} = Astro2.props;
return renderTemplate`${!(UI.theme.endsWith(":only")) && renderTemplate`${maybeRenderHead()}<button type="button"${addAttribute(className, "class")}${addAttribute(label, "aria-label")} data-aw-toggle-color-scheme>${renderComponent($$result, "Icon", $$Icon, { "name": iconName, "class": iconClass })}</button>`}`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/common/ToggleTheme.astro", void 0);
const $$Astro$4 = createAstro("https://www.radio.org.tr");
const $$ToggleMenu = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro$4, $$props, $$slots);
Astro2.self = $$ToggleMenu;
const {
label = "Toggle Menu",
class: className = "flex flex-col h-12 w-12 rounded justify-center items-center cursor-pointer group"
} = Astro2.props;
return renderTemplate`${maybeRenderHead()}<button type="button"${addAttribute(className, "class")}${addAttribute(label, "aria-label")} data-aw-toggle-menu> <span class="sr-only">${label}</span> ${renderSlot($$result, $$slots["default"], renderTemplate` <span aria-hidden="true" class="h-0.5 w-6 my-1 rounded-full bg-black dark:bg-white transition ease transform duration-200 opacity-80 group-[.expanded]:rotate-45 group-[.expanded]:translate-y-2.5"></span> <span aria-hidden="true" class="h-0.5 w-6 my-1 rounded-full bg-black dark:bg-white transition ease transform duration-200 opacity-80 group-[.expanded]:opacity-0"></span> <span aria-hidden="true" class="h-0.5 w-6 my-1 rounded-full bg-black dark:bg-white transition ease transform duration-200 opacity-80 group-[.expanded]:-rotate-45 group-[.expanded]:-translate-y-2.5"></span> `)} </button>`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/common/ToggleMenu.astro", void 0);
const $$Astro$3 = createAstro("https://www.radio.org.tr");
const $$Button = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro$3, $$props, $$slots);
Astro2.self = $$Button;
const {
variant = "secondary",
target,
text = Astro2.slots.render("default"),
icon = "",
class: className = "",
type,
...rest
} = Astro2.props;
const variants = {
primary: "btn-primary",
secondary: "btn-secondary",
tertiary: "btn btn-tertiary",
link: "cursor-pointer hover:text-primary"
};
return renderTemplate`${type === "button" || type === "submit" || type === "reset" ? renderTemplate`${maybeRenderHead()}<button${addAttribute(type, "type")}${addAttribute(twMerge(variants[variant] || "", className), "class")}${spreadAttributes(rest)}>${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(text)}` })}${icon && renderTemplate`${renderComponent($$result, "Icon", $$Icon, { "name": icon, "class": "w-5 h-5 ml-1 -mr-1.5 rtl:mr-1 rtl:-ml-1.5 inline-block" })}`}</button>` : renderTemplate`<a${addAttribute(twMerge(variants[variant] || "", className), "class")}${spreadAttributes(target ? { target, rel: "noopener noreferrer" } : {})}${spreadAttributes(rest)}>${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(text)}` })}${icon && renderTemplate`${renderComponent($$result, "Icon", $$Icon, { "name": icon, "class": "w-5 h-5 ml-1 -mr-1.5 rtl:mr-1 rtl:-ml-1.5 inline-block" })}`}</a>`}`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/ui/Button.astro", void 0);
const $$Astro$2 = createAstro("https://www.radio.org.tr");
const $$Header = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro$2, $$props, $$slots);
Astro2.self = $$Header;
const {
id = "header",
links = [],
actions = [],
isSticky = false,
isDark = false,
isFullWidth = false,
showToggleTheme = false,
showRssFeed = false,
position = "center"
} = Astro2.props;
const currentPath = `/${trimSlash(new URL(Astro2.url).pathname)}`;
return renderTemplate`${maybeRenderHead()}<header${addAttribute([
{ sticky: isSticky, relative: !isSticky, dark: isDark },
"top-0 z-40 flex-none mx-auto w-full border-b border-gray-50/0 transition-[opacity] ease-in-out"
], "class:list")}${spreadAttributes(isSticky ? { "data-aw-sticky-header": true } : {})}${spreadAttributes(id ? { id } : {})}> <div class="absolute inset-0"></div> <div${addAttribute([
"relative text-default py-3 px-3 md:px-6 mx-auto w-full",
{
"md:flex md:justify-between": position !== "center"
},
{
"md:grid md:grid-cols-3 md:items-center": position === "center"
},
{
"max-w-7xl": !isFullWidth
}
], "class:list")}> <div${addAttribute([{ "mr-auto rtl:mr-0 rtl:ml-auto": position === "right" }, "flex justify-between"], "class:list")}> <a class="flex items-center"${addAttribute(getHomePermalink(), "href")}> ${renderComponent($$result, "Logo", $$Logo, {})} </a> <div class="flex items-center md:hidden"> ${renderComponent($$result, "ToggleMenu", $$ToggleMenu, {})} </div> </div> <nav class="items-center w-full md:w-auto hidden md:flex md:mx-5 text-default overflow-y-auto overflow-x-hidden md:overflow-y-visible md:overflow-x-auto md:justify-self-center" aria-label="Main navigation"> <ul class="flex flex-col md:flex-row md:self-center w-full md:w-auto text-xl md:text-[0.9375rem] tracking-[0.01rem] font-medium md:justify-center"> ${links.map(({ text, href, links: links2 }) => renderTemplate`<li${addAttribute(links2?.length ? "dropdown" : "", "class")}> ${links2?.length ? renderTemplate`${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate` <button type="button" class="hover:text-link dark:hover:text-white px-4 py-3 flex items-center whitespace-nowrap"> ${text}${" "} ${renderComponent($$result2, "Icon", $$Icon, { "name": "tabler:chevron-down", "class": "w-3.5 h-3.5 ml-0.5 rtl:ml-0 rtl:mr-0.5 hidden md:inline" })} </button> <ul class="dropdown-menu md:backdrop-blur-md dark:md:bg-dark rounded md:absolute pl-4 md:pl-0 md:hidden font-medium md:bg-white/90 md:min-w-[200px] drop-shadow-xl"> ${links2.map(({ text: text2, href: href2 }) => renderTemplate`<li> <a${addAttribute([
"first:rounded-t last:rounded-b md:hover:bg-gray-100 hover:text-link dark:hover:text-white dark:hover:bg-gray-700 py-2 px-5 block whitespace-no-wrap",
{ "aw-link-active": href2 === currentPath }
], "class:list")}${addAttribute(href2, "href")}> ${text2} </a> </li>`)} </ul> ` })}` : renderTemplate`<a${addAttribute([
"hover:text-link dark:hover:text-white px-4 py-3 flex items-center whitespace-nowrap",
{ "aw-link-active": href === currentPath }
], "class:list")}${addAttribute(href, "href")}> ${text} </a>`} </li>`)} </ul> </nav> <div${addAttribute([
{ "ml-auto rtl:ml-0 rtl:mr-auto": position === "left" },
"hidden md:self-center md:flex items-center md:mb-0 fixed w-full md:w-auto md:static justify-end left-0 rtl:left-auto rtl:right-0 bottom-0 p-3 md:p-0 md:justify-self-end"
], "class:list")}> <div class="items-center flex justify-between w-full md:w-auto"> <div class="flex"> ${showToggleTheme && renderTemplate`${renderComponent($$result, "ToggleTheme", $$ToggleTheme, { "iconClass": "w-6 h-6 md:w-5 md:h-5 md:inline-block" })}`} ${showRssFeed && renderTemplate`<a class="text-muted dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 rounded-lg text-sm p-2.5 inline-flex items-center" aria-label="RSS Feed"${addAttribute(getAsset("/rss.xml"), "href")}> ${renderComponent($$result, "Icon", $$Icon, { "name": "tabler:rss", "class": "w-5 h-5" })} </a>`} </div> ${actions?.length ? renderTemplate`<span class="ml-4 rtl:ml-0 rtl:mr-4"> ${actions.map((btnProps) => renderTemplate`${renderComponent($$result, "Button", $$Button, { ...btnProps, "class": "ml-2 py-2.5 px-5.5 md:px-6 font-semibold shadow-none text-sm w-auto" })}`)} </span>` : ""} </div> </div> </div> </header>`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/widgets/Header.astro", void 0);
const $$Astro$1 = createAstro("https://www.radio.org.tr");
const $$Footer = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro$1, $$props, $$slots);
Astro2.self = $$Footer;
const { socialLinks = [], secondaryLinks = [], links = [], footNote = "", theme = "light" } = Astro2.props;
return renderTemplate`${maybeRenderHead()}<footer${addAttribute([{ dark: theme === "dark" }, "relative border-t border-gray-200 dark:border-slate-800 not-prose"], "class:list")}> <div class="dark:bg-dark absolute inset-0 pointer-events-none" aria-hidden="true"></div> <div class="relative max-w-7xl mx-auto px-4 sm:px-6 dark:text-slate-300 intersect-once intersect-quarter intercept-no-queue motion-safe:md:opacity-0 motion-safe:md:intersect:animate-fade"> <div class="grid grid-cols-12 gap-4 gap-y-8 sm:gap-8 py-8 md:py-12"> <div class="col-span-12 lg:col-span-4"> <div class="mb-2"> <a class="inline-block font-bold text-xl"${addAttribute(getHomePermalink(), "href")}>${SITE?.name}</a> </div> <div class="text-sm text-muted flex gap-1"> ${secondaryLinks.map(({ text, href }, index) => renderTemplate`${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${index !== 0 ? " \xB7 " : ""}<a class="text-muted hover:text-gray-700 dark:text-gray-400 hover:underline transition duration-150 ease-in-out"${addAttribute(href, "href")}>${unescapeHTML(text)}</a> ` })}`)} </div> </div> ${links.map(({ title, links: links2 }) => renderTemplate`<div class="col-span-6 md:col-span-3 lg:col-span-2"> <div class="dark:text-gray-300 font-medium mb-2">${title}</div> ${links2 && Array.isArray(links2) && links2.length > 0 && renderTemplate`<ul class="text-sm"> ${links2.map(({ text, href, ariaLabel }) => renderTemplate`<li class="mb-2"> <a class="text-muted hover:text-gray-700 hover:underline dark:text-gray-400 transition duration-150 ease-in-out"${addAttribute(href, "href")}${addAttribute(ariaLabel, "aria-label")}> ${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(text)}` })} </a> </li>`)} </ul>`} </div>`)} </div> <div class="md:flex md:items-center md:justify-between py-6 md:py-8"> ${socialLinks?.length ? renderTemplate`<ul class="flex mb-4 md:order-1 -ml-2 md:ml-4 md:mb-0 rtl:ml-0 rtl:-mr-2 rtl:md:ml-0 rtl:md:mr-4"> ${socialLinks.map(({ ariaLabel, href, text, icon }) => renderTemplate`<li> <a class="text-muted dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 rounded-lg text-sm p-2.5 inline-flex items-center"${addAttribute(ariaLabel, "aria-label")}${addAttribute(href, "href")}> ${icon && renderTemplate`${renderComponent($$result, "Icon", $$Icon, { "name": icon, "class": "w-5 h-5" })}`} ${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(text)}` })} </a> </li>`)} </ul>` : ""} <div class="text-sm mr-4 dark:text-muted"> ${renderComponent($$result, "Fragment", Fragment, {}, { "default": ($$result2) => renderTemplate`${unescapeHTML(footNote)}` })} </div> </div> </div> </footer>`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/components/widgets/Footer.astro", void 0);
const headerData = {
links: [
{
text: "Ana Sayfa",
href: getPermalink("/")
},
{
text: "Hakkımızda",
href: getPermalink("/hakkimizda")
},
{
text: "Blog",
href: getBlogPermalink()
},
{
text: "Kategoriler",
href: getPermalink("/kategoriler")
},
{
text: "Etiketler",
href: getPermalink("/etiketler")
},
{
text: "Sınav Hazırlık",
href: "https://sinav.radio.org.tr/",
target: "_blank"
},
{
text: "DMR Editor",
href: "https://dmr.radio.org.tr/",
target: "_blank"
},
{
text: "İletişim",
href: getPermalink("/iletisim")
}
],
actions: [{ text: "İletişim", href: getPermalink("/iletisim"), icon: "tabler:mail" }]
};
const footerData = {
links: [
{
title: "Hızlı Linkler",
links: [
{ text: "Ana Sayfa", href: getPermalink("/") },
{ text: "Hakkımızda", href: getPermalink("/hakkimizda") },
{ text: "Blog", href: getBlogPermalink() },
{ text: "Kategoriler", href: getPermalink("/kategoriler") },
{ text: "Etiketler", href: getPermalink("/etiketler") },
{ text: "Sınav Hazırlık", href: "https://sinav.radio.org.tr/", target: "_blank" },
{ text: "DMR Editor", href: "https://dmr.radio.org.tr/", target: "_blank" },
{ text: "İletişim", href: getPermalink("/iletisim") }
]
},
{
title: "Hizmetler",
links: [
{ text: "Eğitim Programları", href: getPermalink("/iletisim") },
{ text: "Lisans Sınavı Hazırlığı", href: getPermalink("/iletisim") },
{ text: "Teknik Destek", href: getPermalink("/iletisim") },
{ text: "Acil Haberleşme", href: getPermalink("/iletisim") }
]
},
{
title: "İletişim",
links: [
{ text: "E-posta: bilgi@radio.org.tr", href: "mailto:bilgi@radio.org.tr" },
{ text: "Telefon: +90 510 220 50 24", href: "tel:+905102205024" },
{ text: "Adres: Beyoğlu, İstanbul", href: getPermalink("/iletisim") },
{ text: "Çağrı İşareti: YM1KTC", href: getPermalink("/iletisim") }
]
}
],
secondaryLinks: [
{ text: "Gizlilik Politikası", href: getPermalink("/gizlilik") },
{ text: "Kullanım Şartları", href: getPermalink("/kullanim-sartlari") }
],
socialLinks: [
{ ariaLabel: "Facebook", icon: "tabler:brand-facebook", href: "https://facebook.com/ym1ktc" },
{ ariaLabel: "X (Twitter)", icon: "tabler:brand-x", href: "https://x.com/ym1ktc" },
{ ariaLabel: "LinkedIn", icon: "tabler:brand-linkedin", href: "https://www.linkedin.com/company/arctr/" },
{ ariaLabel: "YouTube", icon: "tabler:brand-youtube", href: "https://www.youtube.com/@YM1KTC" },
{ ariaLabel: "Instagram", icon: "tabler:brand-instagram", href: "https://www.instagram.com/ym1ktc" },
{ ariaLabel: "RSS", icon: "tabler:rss", href: getAsset("/rss.xml") }
],
footNote: `
© 2024 Amatör Radyocular Derneği (ARC) - YM1KTC. Tüm hakları saklıdır.
`
};
const $$Astro = createAstro("https://www.radio.org.tr");
const $$PageLayout = createComponent(($$result, $$props, $$slots) => {
const Astro2 = $$result.createAstro($$Astro, $$props, $$slots);
Astro2.self = $$PageLayout;
const { metadata } = Astro2.props;
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "metadata": metadata }, { "default": ($$result2) => renderTemplate` ${renderSlot($$result2, $$slots["header"], renderTemplate` ${renderComponent($$result2, "Header", $$Header, { ...headerData, "isSticky": true, "showRssFeed": true, "showToggleTheme": true })} `)} ${maybeRenderHead()}<main> ${renderSlot($$result2, $$slots["default"])} </main> ${renderSlot($$result2, $$slots["footer"], renderTemplate` ${renderComponent($$result2, "Footer", $$Footer, { ...footerData })} `)} ` })}`;
}, "/Users/bugracanata/Developer/[Telsiz]/ARC-Web-Sitesi/src/layouts/PageLayout.astro", void 0);
export { $$PageLayout as $, $$Header as a, $$Button as b, headerData as h };