{"version":3,"file":"shared-lib.BQtVts--.mjs","names":["fonts","css","className"],"sources":["https:/framerusercontent.com/modules/duGhCAt9bvzIyV20DxzD/4lkQRTPfCXmlLiSgnnGm/SsgXhVhkB.js","https:/framerusercontent.com/modules/fF0FKBkscC9HmL9MXbMJ/XL9YtDwlfEcnkDxbvGhn/VMIkv62v4.js","https:/framerusercontent.com/modules/zuKn7eVYWxEkHoQM6k3T/YQQDNKGjX1TmoNmTaX85/siteMetadata.js"],"sourcesContent":["// Generated by Framer (915daba)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Afacad Flux-regular\",\"GF;Afacad Flux-700\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Afacad Flux\",openType:true,source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/afacadflux/v2/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwXZaFqQsJr67E.woff2\",weight:\"400\"},{family:\"Afacad Flux\",openType:true,source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/afacadflux/v2/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsasQZaFqQsJr67E.woff2\",weight:\"700\"}]}];export const css=[\".framer-1y9xY .framer-styles-preset-txo004:not(.rich-text-wrapper), .framer-1y9xY .framer-styles-preset-txo004.rich-text-wrapper p { --framer-font-family: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: -0.01em; --framer-line-height: 1.6em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-030af5ef-a173-4e40-8eea-6a76aac802aa, #191919); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-1y9xY\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (5b26096)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Afacad Flux-500\",\"GF;Afacad Flux-700\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Afacad Flux\",openType:true,source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/afacadflux/v2/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsX4XZaFqQsJr67E.woff2\",weight:\"500\"},{family:\"Afacad Flux\",openType:true,source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/afacadflux/v2/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsasQZaFqQsJr67E.woff2\",weight:\"700\"}]}];export const css=[\".framer-EDjRx .framer-styles-preset-pyp0id:not(.rich-text-wrapper), .framer-EDjRx .framer-styles-preset-pyp0id.rich-text-wrapper h4 { --framer-font-family: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 30px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-030af5ef-a173-4e40-8eea-6a76aac802aa, #191919); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\",\"@media (max-width: 1199px) and (min-width: 810px) { .framer-EDjRx .framer-styles-preset-pyp0id:not(.rich-text-wrapper), .framer-EDjRx .framer-styles-preset-pyp0id.rich-text-wrapper h4 { --framer-font-family: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 30px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-030af5ef-a173-4e40-8eea-6a76aac802aa, #191919); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\",\"@media (max-width: 809px) and (min-width: 0px) { .framer-EDjRx .framer-styles-preset-pyp0id:not(.rich-text-wrapper), .framer-EDjRx .framer-styles-preset-pyp0id.rich-text-wrapper h4 { --framer-font-family: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Afacad Flux\\\", \\\"Afacad Flux Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 30px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-030af5ef-a173-4e40-8eea-6a76aac802aa, #191919); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\"];export const className=\"framer-EDjRx\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (2ac8f15)\nconst valuesByLocaleId={uPtG1Bu6Q:{v0:\"İbrahim Yazıcı\",v1:\"Music Director at Istanbul State Opera. Orchestrator, pianist, composer, vocal coach, educator.\"}};function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}export default function metadata(params,activeLocale){return{customHTMLHeadEnd:\"<script>\\n// Bu fonksiyon GG/AA/YYYY - SS:DD formatındaki metni Date nesnesine \\xe7evirir\\nfunction parseTurkceTarihSaat(tarihSaatMetni) {\\n    if (!tarihSaatMetni || !tarihSaatMetni.includes('-') || !tarihSaatMetni.includes('/')) {\\n        return null; // Ge\\xe7ersiz veya eksik format\\n    }\\n    try {\\n        // Metni temizle (başındaki/sonundaki boşluklar)\\n        const temizMetin = tarihSaatMetni.trim();\\n\\n        // Tarih formatını kontrol etmek i\\xe7in basit bir regex\\n        // GG/AA/YYYY - SS:DD formatına uymalı\\n        const tarihRegex = /^\\\\d{1,2}\\\\/\\\\d{1,2}\\\\/\\\\d{4}\\\\s*-\\\\s*\\\\d{1,2}:\\\\d{2}$/;\\n        if (!tarihRegex.test(temizMetin)) {\\n             // console.warn('parseTurkceTarihSaat: Format regex ile uyuşmadı:', temizMetin);\\n             return null; // Format uyuşmuyorsa null d\\xf6n (mekan adı vb. olabilir)\\n        }\\n\\n        const [tarihKismi, saatKismi] = temizMetin.split(' - ');\\n        if (!tarihKismi || !saatKismi) return null;\\n\\n        const [gun, ay, yil] = tarihKismi.split('/');\\n        if (!gun || !ay || !yil || gun.length > 2 || ay.length > 2 || yil.length !== 4) return null; // Basit format kontrol\\xfc\\n\\n        const [saat, dakika] = saatKismi.split(':');\\n        if (!saat || !dakika || saat.length > 2 || dakika.length !== 2) return null; // Basit format kontrol\\xfc\\n\\n        // JavaScript'te ay 0'dan başlar (Ocak=0, Aralık=11)\\n        const dateObj = new Date(\\n            parseInt(yil, 10),\\n            parseInt(ay, 10) - 1,\\n            parseInt(gun, 10),\\n            parseInt(saat, 10),\\n            parseInt(dakika, 10),\\n            0, 0\\n        );\\n\\n        // Oluşturulan tarihin ge\\xe7erliliğini kontrol et\\n        if (isNaN(dateObj.getTime()) ||\\n            dateObj.getDate() !== parseInt(gun, 10) ||\\n            dateObj.getMonth() !== (parseInt(ay, 10) - 1) ||\\n            dateObj.getFullYear() !== parseInt(yil, 10)) {\\n            console.warn('parseTurkceTarihSaat: Ge\\xe7ersiz tarih oluşturuldu:', temizMetin);\\n            return null;\\n        }\\n        return dateObj;\\n    } catch (error) {\\n        console.error('parseTurkceTarihSaat: Ayrıştırma hatası:', tarihSaatMetni, error);\\n        return null;\\n    }\\n}\\n\\n// Bu fonksiyon sayfa y\\xfcklendikten sonra \\xe7alışır\\ndocument.addEventListener('DOMContentLoaded', function() {\\n\\n    // 1. Ana Konser Kartlarını Se\\xe7me (HTML yapınıza g\\xf6re bulduk)\\n    const konserKartlari = document.querySelectorAll('.framer-1ljx94j'); // <-- ANA KART SE\\xc7İCİSİ\\n\\n    if (konserKartlari.length === 0) {\\n        console.warn('Hi\\xe7 konser kartı bulunamadı. Se\\xe7iciyi kontrol edin: .framer-1ljx94j');\\n        return;\\n    }\\n\\n    // 2. Mevcut Zamanı Al\\n    const simdi = new Date();\\n    // Sadece bug\\xfcn\\xfcn tarihini karşılaştırmak isterseniz (saati yok sayarak):\\n    // const bugun = new Date();\\n    // bugun.setHours(0, 0, 0, 0);\\n    // Karşılaştırmayı 'simdi' yerine 'bugun' ile yapın ve parseTurkceTarihSaat\\n    // fonksiyonundan d\\xf6nen tarihin de saatini sıfırlayın (konserZamani.setHours(0,0,0,0)).\\n    // Şimdilik tam zaman karşılaştırması yapıyoruz.\\n\\n    // 3. Her Bir Konser Kartını D\\xf6ng\\xfcyle Kontrol Et\\n    konserKartlari.forEach((kart, index) => {\\n        let gelecektekiTarihVar = false; // Bu kart i\\xe7in gelecekte bir tarih bulundu mu?\\n        const bulunanTarihMetinleri = [];\\n\\n        try {\\n            // 3a. Kart i\\xe7indeki T\\xdcM \\\".framer-text\\\" elementlerini bul\\n            const potansiyelTarihElementleri = kart.querySelectorAll('.framer-text'); // <-- Tarih/Mekan vb. metinlerin se\\xe7icisi\\n\\n            if (potansiyelTarihElementleri.length === 0) {\\n                 console.warn(`Kart ${index}: İ\\xe7inde .framer-text elementi bulunamadı.`);\\n                 return; // Bu kartı atla\\n            }\\n\\n            // 3b. Her bir potansiyel elementi kontrol et ve ge\\xe7erli tarihleri ayrıştır\\n            potansiyelTarihElementleri.forEach(element => {\\n                const metin = element.textContent || element.innerText;\\n                if (metin) {\\n                    const konserZamani = parseTurkceTarihSaat(metin); // Formatı kontrol eden ve parse eden fonksiyon\\n\\n                    if (konserZamani) { // Eğer ge\\xe7erli bir tarih ayrıştırıldıysa\\n                        bulunanTarihMetinleri.push(metin.trim()); // Sadece bilgi i\\xe7in listeye ekle\\n                        // 3c. Zamanı Karşılaştır\\n                        if (konserZamani >= simdi) {\\n                            // Eğer bu tarih şimdi veya gelecek zamandaysa\\n                            gelecektekiTarihVar = true;\\n                            // Not: Burada break yapmıyoruz \\xe7\\xfcnk\\xfc diğer .framer-text'leri de kontrol etmeliyiz,\\n                            // ama bir tane gelecek tarih bulmak yeterli.\\n                        }\\n                    }\\n                }\\n            });\\n\\n            // 3d. Gizleme Kararı\\n            if (!gelecektekiTarihVar && bulunanTarihMetinleri.length > 0) {\\n                // Eğer hi\\xe7 gelecekteki tarih bulunamadıysa VE en az bir ge\\xe7erli tarih metni bulunduysa\\n                // (yani t\\xfcm ge\\xe7erli tarihler ge\\xe7mişte kaldıysa)\\n                kart.style.display = 'none';\\n                // console.log(`Kart ${index} gizlendi. Bulunan ge\\xe7miş tarihler:`, bulunanTarihMetinleri);\\n            } else if (bulunanTarihMetinleri.length === 0) {\\n                 // console.log(`Kart ${index}: İ\\xe7inde ge\\xe7erli formatta tarih bulunamadı, gizlenmedi.`);\\n                 // Opsiyonel: İ\\xe7inde hi\\xe7 ge\\xe7erli tarih yoksa da gizlemek isteyebilirsiniz.\\n                 // kart.style.display = 'none';\\n            }\\n\\n        } catch (error) {\\n            console.error(`Kart ${index} işlenirken hata oluştu:`, error, kart);\\n        }\\n    });\\n\\n    console.log(`Tarih kontrol\\xfc tamamlandı. ${konserKartlari.length} kart işlendi.`);\\n});\\n</script>\",description:getLocalizedValue(\"v1\",activeLocale)??\"Music Director at Istanbul State Opera. Conductor, pianist, composer, vocal coach, teacher.\",favicon:\"https://framerusercontent.com/assets/bhWVgxQIuCeakRP1RdafQ1t1GU.svg\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/RIoOOlJE88Cg43FjAvTxGRlNMw.jpg\",title:getLocalizedValue(\"v0\",activeLocale)??\"İbrahim Yazıcı\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"+JAC8B,EAAU,UAAU,CAAC,yBAAyB,qBAAqB,EAAeA,EAAM,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,OAAO,cAAc,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,IAAI,sHAAsH,OAAO,MAAM,CAAC,CAAC,OAAO,cAAc,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,IAAI,sHAAsH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAcC,EAAI,CAAC,o5BAA45B,CAAcC,EAAU,sCCAn9C,EAAU,UAAU,CAAC,qBAAqB,qBAAqB,EAAe,EAAM,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,OAAO,cAAc,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,IAAI,sHAAsH,OAAO,MAAM,CAAC,CAAC,OAAO,cAAc,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,IAAI,sHAAsH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAc,EAAI,CAAC,i5BAAy5B,u8BAA+8B,o8BAA48B,CAAc,EAAU,kBCAvuG,SAAS,EAAkB,EAAI,EAAO,CAAC,KAAM,GAAO,CAAC,IAAM,EAAO,EAAiB,EAAO,IAAI,GAAG,EAAO,CAAC,IAAM,EAAM,EAAO,GAAK,GAAG,EAAM,OAAO,CAAO,GAAO,EAAO,QAAU,CAAC,UAAwB,EAAS,EAAO,EAAa,CAAC,MAAM,CAAC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAAizL,YAAY,EAAkB,KAAK,IAAe,8FAA8F,QAAQ,sEAAsE,OAAO,0BAA0B,YAAY,sEAAsE,MAAM,EAAkB,KAAK,IAAe,iBAAiB,AAAE,iBAAzlN,EAAiB,CAAC,UAAU,CAAC,GAAG,iBAAiB,GAAG,kGAAkG,CAAC"}