From e9bc8eb2dae6314bf9847515d84288cf95c1db0f Mon Sep 17 00:00:00 2001 From: Archos Date: Thu, 9 Oct 2025 15:50:02 +0200 Subject: [PATCH] aktualizace phanpy_cz --- 404.html | 2 +- assets/ICONS-BLqAe1AS.js | 2 + assets/ICONS-BLqAe1AS.js.map | 1 + assets/ScheduledAtField-Bi22_aXV.css | 1 + assets/ScheduledAtField-O5kh-u-d.js | 194 ++++++++++++++++++ assets/ScheduledAtField-O5kh-u-d.js.map | 1 + assets/compose-DPEmvLj7.js | 31 +++ assets/compose-DPEmvLj7.js.map | 1 + assets/compose-DoxvhBtV.css | 1 + assets/compose-P9SlIbYO.js | 2 + assets/compose-P9SlIbYO.js.map | 1 + assets/icons/add-circle-line-VUOz5dLS.js | 1 - assets/icons/alert-line-CcwmWSBO.js | 1 - assets/icons/android-2-line-C7qVwx2U.js | 1 - assets/icons/announcement-line-BdsFnqjO.js | 1 - .../icons/arrow-down-circle-line-SfuiravZ.js | 1 - assets/icons/arrow-down-line-RSwsrALM.js | 1 - assets/icons/arrow-left-line-BGgZ0udH.js | 1 - assets/icons/arrow-right-line-zKtS4vm5.js | 1 - assets/icons/arrow-up-circle-line-SO68bPTf.js | 1 - assets/icons/arrow-up-line-Bow_AQZ6.js | 1 - assets/icons/arrows-right-line-B7gMPCMB.js | 1 - assets/icons/at-line-C4-OGRKX.js | 1 - assets/icons/attachment-line-C4ysC1zZ.js | 1 - assets/icons/blockquote-line-Dcv4EJtN.js | 1 + assets/icons/bookmark-line-BMGZc_Mc.js | 1 - assets/icons/building-5-line-jPUf3HeC.js | 1 - assets/icons/bus-2-line-CfBaNBAi.js | 1 - assets/icons/calendar-day-line-zQlj2fPr.js | 1 - assets/icons/calendar-month-line-DGpTEHfi.js | 1 - .../icons/calendar-time-add-line-BwP_cVys.js | 1 - assets/icons/camera-line-DK82q_yA.js | 1 - assets/icons/celebrate-line-CwClz8eZ.js | 1 - assets/icons/chart-bar-line-W9BuvVdR.js | 1 - assets/icons/chart-line-line-noCpZUdN.js | 1 - assets/icons/chat-3-line-C4e7R0Zy.js | 1 - assets/icons/check-circle-line-CSlVj8QA.js | 1 - assets/icons/clipboard-line-CIOFpSsX.js | 1 - assets/icons/close-circle-line-DlCWcUwK.js | 1 - assets/icons/close-line-Bfj902o4.js | 1 - assets/icons/cloud-line-CCOdtB64.js | 1 - assets/icons/code-line-_8nrb8Yp.js | 1 - assets/icons/comment-2-line-DfD-95ou.js | 1 - assets/icons/copy-2-line-SBRewLs-.js | 1 - assets/icons/delete-2-line-C-lQIJNC.js | 1 - assets/icons/document-line-ewA3UKpU.js | 1 - assets/icons/down-line-PlS1iUy8.js | 1 - assets/icons/edit-4-line-B3lvLrpT.js | 1 - assets/icons/emoji-2-line-DODV8bnC.js | 1 - assets/icons/exit-line-NjC63GxM.js | 1 - assets/icons/external-link-line-BYXsdcMa.js | 1 - assets/icons/eye-2-line-Dvog5oyl.js | 1 - assets/icons/eye-close-line-DQnawnJE.js | 1 - assets/icons/filter-2-line-DLBEPhKS.js | 1 - assets/icons/filter-line-CuUlgBZU.js | 1 - assets/icons/flag-1-line-sWzx_4o4.js | 1 - assets/icons/forbid-circle-line-f_JQE7a8.js | 1 - assets/icons/formula-line-DHbN6ztn.js | 1 - assets/icons/group-line-Cw2Phg9p.js | 1 - assets/icons/hand-finger-2-line-QNYxa4H_.js | 1 - assets/icons/hashtag-line-Cml-0qv2.js | 1 - assets/icons/heart-crack-line-BlrTdexG.js | 1 - assets/icons/heart-line-vi3QqJTo.js | 1 - assets/icons/history-2-line-C2uKqj-3.js | 1 - assets/icons/history-line-Bi2So-je.js | 1 - assets/icons/home-3-line-BLD1YYP8.js | 1 - assets/icons/information-line-Dn255DD5.js | 1 - assets/icons/keyboard-line-BRd9ohM1.js | 1 - assets/icons/layout-4-line-BFFb1cPy.js | 1 - assets/icons/layout-5-line-tauINoiF.js | 1 - assets/icons/left-line-8vYaPuok.js | 1 - assets/icons/lightning-line-cvW5NR-M.js | 1 - assets/icons/link-2-line-SnIkQ_rZ.js | 1 - assets/icons/list-check-line-BaMf8v8i.js | 1 - assets/icons/lock-line-BbTC1fux.js | 1 - assets/icons/mail-line-Cadg2cpP.js | 1 - assets/icons/more-1-fill-Cnnj9cLP.js | 1 - assets/icons/more-3-line-WfszpsFu.js | 1 - assets/icons/notification-line-Cc2m6sh5.js | 1 - assets/icons/pencil-line-BwUdLENj.js | 1 - assets/icons/photo-album-line-DkklX4P5.js | 1 - assets/icons/pin-line-BqseDe3t.js | 1 - assets/icons/play-fill-D1o3ePO2.js | 1 - assets/icons/quill-pen-line-oAx8SSeF.js | 1 - assets/icons/quote-left-line-D0CgS7V6.js | 1 - assets/icons/radar-line-Dch2zZ5p.js | 1 - assets/icons/react-line-C6TecPWI.js | 1 - assets/icons/refresh-2-line-B3CD5yz0.js | 1 - assets/icons/right-line-E80CeS1Q.js | 1 - assets/icons/rocket-line-B7gBxy4I.js | 1 - assets/icons/round-fill-CaZIeOWe.js | 1 - assets/icons/route-line-D10jSVCO.js | 1 - assets/icons/rows-4-line-DIXu-DVG.js | 1 - assets/icons/search-2-line-CoCbFBVR.js | 1 - assets/icons/settings-3-line-BGrM7a5R.js | 1 - assets/icons/settings-6-line-3dTfr4F6.js | 1 - assets/icons/share-2-line-C2byQ30z.js | 1 - assets/icons/share-forward-line-DX1QbiUu.js | 1 - assets/icons/sparkles-2-line-H731KO3v.js | 1 - assets/icons/sparkles-line-DWyRj8uB.js | 1 - assets/icons/time-line-CHAmvUdg.js | 1 - assets/icons/transfer-4-line-BHXBUumZ.js | 1 - assets/icons/translate-line-cdOWN72F.js | 1 - assets/icons/unlock-line-CGrzBxul.js | 1 - assets/icons/upload-3-line-BB2RA_2Z.js | 1 - assets/icons/user-4-line-C89P3h09.js | 1 - assets/icons/user-add-2-line-BbaxtCjf.js | 1 - assets/icons/user-add-line-DuegJyfy.js | 1 - assets/icons/user-edit-line-CC6Y-fJT.js | 1 - assets/icons/user-follow-line-CsL-DB1N.js | 1 - assets/icons/user-star-line-jCNS7JD6.js | 1 - assets/icons/user-warning-line-BLfdr8Bj.js | 1 - assets/icons/user-x-line-Dahn1YZg.js | 1 - assets/icons/volume-line-dtC5ZFr8.js | 1 - assets/icons/volume-mute-line-BluUkhVT.js | 1 - assets/icons/walk-line-BZwRwcxJ.js | 1 - assets/icons/world-2-line-BqQ1RIgL.js | 1 - assets/icons/zoom-in-line-a0TkUNno.js | 1 - assets/icons/zoom-out-line-wfKlvfFM.js | 1 - assets/locales/ar-SA-CDNdOtfs.js | 1 + assets/locales/ca-ES-CxAoO_I3.js | 1 + assets/locales/cs-CZ-CjIobYdO.js | 1 + assets/locales/de-DE-dhPpog3t.js | 1 + assets/locales/eo-UY-BrZQz0vH.js | 1 + assets/locales/es-ES-BqeCFrKf.js | 1 + assets/locales/eu-ES-DpPedTtb.js | 1 + assets/locales/fa-IR-CSZBIA71.js | 1 + assets/locales/fi-FI-ivGhXWUZ.js | 1 + assets/locales/fr-FR-COHx1nPI.js | 1 + assets/locales/gl-ES-CCDsjs9K.js | 1 + assets/locales/he-IL-CDNdOtfs.js | 1 + assets/locales/it-IT-C0_fpwIJ.js | 1 + assets/locales/ja-JP-CDNdOtfs.js | 1 + assets/locales/kab-pD_PUcxx.js | 1 + assets/locales/ko-KR-CwqZ49z-.js | 1 + assets/locales/lt-LT-CncvK9Qo.js | 1 + assets/locales/nb-NO-CDNdOtfs.js | 1 + assets/locales/nl-NL-Akym_zHM.js | 1 + assets/locales/oc-FR-CDNdOtfs.js | 1 + assets/locales/pl-PL-By6FX6b1.js | 1 + assets/locales/pseudo-LOCALE-BwEJy58t.js | 1 + assets/locales/pt-BR-Ds3-9-kj.js | 1 + assets/locales/pt-PT-Vw7HPpab.js | 1 + assets/locales/ru-RU-CijsJMoS.js | 1 + assets/locales/th-TH-CDNdOtfs.js | 1 + assets/locales/tok-CDNdOtfs.js | 1 + assets/locales/tr-TR-CDNdOtfs.js | 1 + assets/locales/uk-UA-DuCAvqrn.js | 1 + assets/locales/zh-CN-BhVLBBpS.js | 1 + assets/locales/zh-TW-CDNdOtfs.js | 1 + assets/main-4pNIlcuh.css | 1 + assets/main-sgpw-Fwy.js | 36 ++++ assets/main-sgpw-Fwy.js.map | 1 + assets/polyfill-force-D2cMya_1.js | 9 + assets/polyfill-force-D2cMya_1.js.map | 1 + assets/pwa-viewport-BBUWca8r.css | 7 + assets/pwa-viewport-cDxGxYgG.js | 45 ++++ assets/pwa-viewport-cDxGxYgG.js.map | 1 + assets/temml-KWa8qPDv.js | 97 +++++++++ assets/temml-KWa8qPDv.js.map | 1 + assets/tinyld.light.node-D9KYf3Y3.js.map | 2 +- compose/index.html | 8 +- index.html | 29 ++- sw.js | 2 +- sw.js.map | 2 +- version.json | 2 +- 166 files changed, 497 insertions(+), 123 deletions(-) create mode 100644 assets/ICONS-BLqAe1AS.js create mode 100644 assets/ICONS-BLqAe1AS.js.map create mode 100644 assets/ScheduledAtField-Bi22_aXV.css create mode 100644 assets/ScheduledAtField-O5kh-u-d.js create mode 100644 assets/ScheduledAtField-O5kh-u-d.js.map create mode 100644 assets/compose-DPEmvLj7.js create mode 100644 assets/compose-DPEmvLj7.js.map create mode 100644 assets/compose-DoxvhBtV.css create mode 100644 assets/compose-P9SlIbYO.js create mode 100644 assets/compose-P9SlIbYO.js.map create mode 100644 assets/icons/blockquote-line-Dcv4EJtN.js create mode 100644 assets/locales/ar-SA-CDNdOtfs.js create mode 100644 assets/locales/ca-ES-CxAoO_I3.js create mode 100644 assets/locales/cs-CZ-CjIobYdO.js create mode 100644 assets/locales/de-DE-dhPpog3t.js create mode 100644 assets/locales/eo-UY-BrZQz0vH.js create mode 100644 assets/locales/es-ES-BqeCFrKf.js create mode 100644 assets/locales/eu-ES-DpPedTtb.js create mode 100644 assets/locales/fa-IR-CSZBIA71.js create mode 100644 assets/locales/fi-FI-ivGhXWUZ.js create mode 100644 assets/locales/fr-FR-COHx1nPI.js create mode 100644 assets/locales/gl-ES-CCDsjs9K.js create mode 100644 assets/locales/he-IL-CDNdOtfs.js create mode 100644 assets/locales/it-IT-C0_fpwIJ.js create mode 100644 assets/locales/ja-JP-CDNdOtfs.js create mode 100644 assets/locales/kab-pD_PUcxx.js create mode 100644 assets/locales/ko-KR-CwqZ49z-.js create mode 100644 assets/locales/lt-LT-CncvK9Qo.js create mode 100644 assets/locales/nb-NO-CDNdOtfs.js create mode 100644 assets/locales/nl-NL-Akym_zHM.js create mode 100644 assets/locales/oc-FR-CDNdOtfs.js create mode 100644 assets/locales/pl-PL-By6FX6b1.js create mode 100644 assets/locales/pseudo-LOCALE-BwEJy58t.js create mode 100644 assets/locales/pt-BR-Ds3-9-kj.js create mode 100644 assets/locales/pt-PT-Vw7HPpab.js create mode 100644 assets/locales/ru-RU-CijsJMoS.js create mode 100644 assets/locales/th-TH-CDNdOtfs.js create mode 100644 assets/locales/tok-CDNdOtfs.js create mode 100644 assets/locales/tr-TR-CDNdOtfs.js create mode 100644 assets/locales/uk-UA-DuCAvqrn.js create mode 100644 assets/locales/zh-CN-BhVLBBpS.js create mode 100644 assets/locales/zh-TW-CDNdOtfs.js create mode 100644 assets/main-4pNIlcuh.css create mode 100644 assets/main-sgpw-Fwy.js create mode 100644 assets/main-sgpw-Fwy.js.map create mode 100644 assets/polyfill-force-D2cMya_1.js create mode 100644 assets/polyfill-force-D2cMya_1.js.map create mode 100644 assets/pwa-viewport-BBUWca8r.css create mode 100644 assets/pwa-viewport-cDxGxYgG.js create mode 100644 assets/pwa-viewport-cDxGxYgG.js.map create mode 100644 assets/temml-KWa8qPDv.js create mode 100644 assets/temml-KWa8qPDv.js.map diff --git a/404.html b/404.html index 0fcb4e9..313e879 100644 --- a/404.html +++ b/404.html @@ -7,7 +7,7 @@ content="width=device-width, initial-scale=1, viewport-fit=cover" /> Page not found - + +
+ + + + + + + + +
+ `,this.domRefFrame=e.querySelector("#frame"),this.domRefImg={fallback:e.querySelector("#fallbackPlaceholder"),webp:e.querySelector("#webpPlaceholder"),jpeg:e.querySelector("#jpegPlaceholder")},this.domRefPlayButton=e.querySelector("#playButton")}setupComponent(){this.shadowRoot.querySelector("slot[name=image]").assignedNodes().length===0&&this.initImagePlaceholder(),this.domRefPlayButton.setAttribute("aria-label",`${this.videoPlay}: ${this.videoTitle}`),this.setAttribute("title",`${this.videoPlay}: ${this.videoTitle}`),(this.autoLoad||this.isYouTubeShort()||this.autoPause)&&this.initIntersectionObserver(),this.disableNoscript||this.injectSearchNoScript()}attributeChangedCallback(e,n,i){n!==i&&(this.setupComponent(),this.domRefFrame.classList.contains("activated")&&(this.domRefFrame.classList.remove("activated"),this.shadowRoot.querySelector("iframe").remove(),this.isIframeLoaded=!1))}injectSearchNoScript(){const e=document.createElement("noscript");this.prepend(e),e.innerHTML=this.generateIframe()}generateIframe(e=!1){let n=e?0:1,i=this.autoPause?"&enablejsapi=1":"";const r=this.noCookie?"-nocookie":"";let a;return this.playlistId?a=`?listType=playlist&list=${this.playlistId}&`:a=`${this.videoId}?`,this.isYouTubeShort()&&(this.params=`loop=1&mute=1&modestbranding=1&playsinline=1&rel=0&enablejsapi=1&playlist=${this.videoId}`,n=1),` +`}addIframe(e=!1){if(!this.isIframeLoaded){const n=this.generateIframe(e);this.domRefFrame.insertAdjacentHTML("beforeend",n),this.domRefFrame.classList.add("activated"),this.isIframeLoaded=!0,this.attemptShortAutoPlay(),this.dispatchEvent(new CustomEvent("liteYoutubeIframeLoaded",{detail:{videoId:this.videoId},bubbles:!0,cancelable:!0}))}}initImagePlaceholder(){this.testPosterImage(),this.domRefImg.fallback.setAttribute("aria-label",`${this.videoPlay}: ${this.videoTitle}`),this.domRefImg?.fallback?.setAttribute("alt",`${this.videoPlay}: ${this.videoTitle}`)}async testPosterImage(){setTimeout(()=>{const e=`https://i.ytimg.com/vi_webp/${this.videoId}/${this.posterQuality}.webp`,n=new Image;n.fetchPriority="low",n.referrerPolicy="origin",n.src=e,n.onload=async i=>{const r=i.target;r?.naturalHeight==90&&r?.naturalWidth==120&&(this.posterQuality="hqdefault");const s=`https://i.ytimg.com/vi_webp/${this.videoId}/${this.posterQuality}.webp`;this.domRefImg.webp.srcset=s;const c=`https://i.ytimg.com/vi/${this.videoId}/${this.posterQuality}.jpg`;this.domRefImg.fallback.loading=this.posterLoading,this.domRefImg.jpeg.srcset=c,this.domRefImg.fallback.src=c,this.domRefImg.fallback.loading=this.posterLoading}},100)}initIntersectionObserver(){const e={root:null,rootMargin:"0px",threshold:0};new IntersectionObserver((i,r)=>{i.forEach(a=>{a.isIntersecting&&!this.isIframeLoaded&&(Ut.warmConnections(this),this.addIframe(!0),r.unobserve(this))})},e).observe(this),this.autoPause&&new IntersectionObserver((r,a)=>{r.forEach(s=>{s.intersectionRatio!==1&&this.shadowRoot.querySelector("iframe")?.contentWindow?.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")})},{threshold:1}).observe(this)}attemptShortAutoPlay(){this.isYouTubeShort()&&setTimeout(()=>{this.shadowRoot.querySelector("iframe")?.contentWindow?.postMessage('{"event":"command","func":"playVideo","args":""}',"*")},2e3)}isYouTubeShort(){return this.getAttribute("short")===""&&window.matchMedia("(max-width: 40em)").matches}static addPrefetch(e,n){const i=document.createElement("link");i.rel=e,i.href=n,i.crossOrigin="true",document.head.append(i)}static warmConnections(e){Ut.isPreconnected||window.liteYouTubeIsPreconnected||(Ut.addPrefetch("preconnect","https://i.ytimg.com/"),Ut.addPrefetch("preconnect","https://s.ytimg.com"),e.noCookie?Ut.addPrefetch("preconnect","https://www.youtube-nocookie.com"):(Ut.addPrefetch("preconnect","https://www.youtube.com"),Ut.addPrefetch("preconnect","https://www.google.com"),Ut.addPrefetch("preconnect","https://googleads.g.doubleclick.net"),Ut.addPrefetch("preconnect","https://static.doubleclick.net")),Ut.isPreconnected=!0,window.liteYouTubeIsPreconnected=!0)}}Ut.isPreconnected=!1;customElements.define("lite-youtube",Ut);function Eg({authors:t,hidden:e,children:n}){if(e||!t?.[0]?.account?.id)return n;const i=t[0].account;return o("div",{class:"card-byline",children:[n,o("div",{class:"card-byline-author",children:[o(x,{icon:"link",size:"s"})," ",o("small",{children:o(I,{id:"4LHHK6",components:{0:o(Ce,{account:i,showAvatar:!0})}})})]})]})}function Qr(t){return["x.com","twitter.com","threads.net","bsky.app","bsky.brid.gy","fed.brid.gy"].includes(t)}function Cg({card:t,selfReferential:e,selfAuthor:n,instance:i}){const r=sn(B),{blurhash:a,title:s,description:c,html:l,providerName:d,providerUrl:h,authorName:u,authorUrl:f,width:p,height:m,image:g,imageDescription:v,url:T,type:_,embedUrl:k,language:S,publishedAt:b,authors:A}=t,C=s||d||u,L=p/m>=1.2?"large":"",[F,M]=z(null);if(W(()=>{C&&g&&!e&&oc(T)&&ic(i,T).then(R=>{if(!R)return;const{id:Q,url:et}=R;M("#"+et)})},[C,g,e]),r.unfurledLinks[T])return null;const E=/`;\n }\n addIframe(isIntersectionObserver = false) {\n if (!this.isIframeLoaded) {\n const iframeHTML = this.generateIframe(isIntersectionObserver);\n this.domRefFrame.insertAdjacentHTML('beforeend', iframeHTML);\n this.domRefFrame.classList.add('activated');\n this.isIframeLoaded = true;\n this.attemptShortAutoPlay();\n this.dispatchEvent(new CustomEvent('liteYoutubeIframeLoaded', {\n detail: {\n videoId: this.videoId,\n },\n bubbles: true,\n cancelable: true,\n }));\n }\n }\n initImagePlaceholder() {\n this.testPosterImage();\n this.domRefImg.fallback.setAttribute('aria-label', `${this.videoPlay}: ${this.videoTitle}`);\n this.domRefImg?.fallback?.setAttribute('alt', `${this.videoPlay}: ${this.videoTitle}`);\n }\n async testPosterImage() {\n setTimeout(() => {\n const webpUrl = `https://i.ytimg.com/vi_webp/${this.videoId}/${this.posterQuality}.webp`;\n const img = new Image();\n img.fetchPriority = 'low';\n img.referrerPolicy = 'origin';\n img.src = webpUrl;\n img.onload = async (e) => {\n const target = e.target;\n const noPoster = target?.naturalHeight == 90 && target?.naturalWidth == 120;\n if (noPoster) {\n this.posterQuality = 'hqdefault';\n }\n const posterUrlWebp = `https://i.ytimg.com/vi_webp/${this.videoId}/${this.posterQuality}.webp`;\n this.domRefImg.webp.srcset = posterUrlWebp;\n const posterUrlJpeg = `https://i.ytimg.com/vi/${this.videoId}/${this.posterQuality}.jpg`;\n this.domRefImg.fallback.loading = this.posterLoading;\n this.domRefImg.jpeg.srcset = posterUrlJpeg;\n this.domRefImg.fallback.src = posterUrlJpeg;\n this.domRefImg.fallback.loading = this.posterLoading;\n };\n }, 100);\n }\n initIntersectionObserver() {\n const options = {\n root: null,\n rootMargin: '0px',\n threshold: 0,\n };\n const observer = new IntersectionObserver((entries, observer) => {\n entries.forEach(entry => {\n if (entry.isIntersecting && !this.isIframeLoaded) {\n LiteYTEmbed.warmConnections(this);\n this.addIframe(true);\n observer.unobserve(this);\n }\n });\n }, options);\n observer.observe(this);\n if (this.autoPause) {\n const windowPause = new IntersectionObserver((e, o) => {\n e.forEach(entry => {\n if (entry.intersectionRatio !== 1) {\n this.shadowRoot\n .querySelector('iframe')\n ?.contentWindow?.postMessage('{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*');\n }\n });\n }, { threshold: 1 });\n windowPause.observe(this);\n }\n }\n attemptShortAutoPlay() {\n if (this.isYouTubeShort()) {\n setTimeout(() => {\n this.shadowRoot\n .querySelector('iframe')\n ?.contentWindow?.postMessage('{\"event\":\"command\",\"func\":\"' + 'playVideo' + '\",\"args\":\"\"}', '*');\n }, 2000);\n }\n }\n isYouTubeShort() {\n return (this.getAttribute('short') === '' &&\n window.matchMedia('(max-width: 40em)').matches);\n }\n static addPrefetch(kind, url) {\n const linkElem = document.createElement('link');\n linkElem.rel = kind;\n linkElem.href = url;\n linkElem.crossOrigin = 'true';\n document.head.append(linkElem);\n }\n static warmConnections(context) {\n if (LiteYTEmbed.isPreconnected || window.liteYouTubeIsPreconnected)\n return;\n LiteYTEmbed.addPrefetch('preconnect', 'https://i.ytimg.com/');\n LiteYTEmbed.addPrefetch('preconnect', 'https://s.ytimg.com');\n if (!context.noCookie) {\n LiteYTEmbed.addPrefetch('preconnect', 'https://www.youtube.com');\n LiteYTEmbed.addPrefetch('preconnect', 'https://www.google.com');\n LiteYTEmbed.addPrefetch('preconnect', 'https://googleads.g.doubleclick.net');\n LiteYTEmbed.addPrefetch('preconnect', 'https://static.doubleclick.net');\n }\n else {\n LiteYTEmbed.addPrefetch('preconnect', 'https://www.youtube-nocookie.com');\n }\n LiteYTEmbed.isPreconnected = true;\n window.liteYouTubeIsPreconnected = true;\n }\n}\nLiteYTEmbed.isPreconnected = false;\ncustomElements.define('lite-youtube', LiteYTEmbed);\n//# sourceMappingURL=lite-youtube.js.map","import { Trans } from '@lingui/react/macro';\n\nimport Icon from './icon';\nimport NameText from './name-text';\n\nfunction Byline({ authors, hidden, children }) {\n if (hidden) return children;\n if (!authors?.[0]?.account?.id) return children;\n const author = authors[0].account;\n\n return (\n
\n {children}\n \n
\n );\n}\n\nexport default Byline;\n","import '@justinribeiro/lite-youtube';\n\nimport { decodeBlurHash, getBlurHashAverageColor } from 'fast-blurhash';\nimport { useCallback, useEffect, useState } from 'preact/hooks';\nimport { useSnapshot } from 'valtio';\n\nimport getDomain from '../utils/get-domain';\nimport isMastodonLinkMaybe from '../utils/isMastodonLinkMaybe';\nimport states from '../utils/states';\nimport unfurlMastodonLink from '../utils/unfurl-link';\n\nimport Byline from './byline';\nimport Icon from './icon';\nimport RelativeTime from './relative-time';\n\n// \"Post\": Quote post + card link preview combo\n// Assume all links from these domains are \"posts\"\n// Mastodon links are \"posts\" too but they are converted to real quote posts and there's too many domains to check\n// This is just \"Progressive Enhancement\"\nfunction isCardPost(domain) {\n return [\n 'x.com',\n 'twitter.com',\n 'threads.net',\n 'bsky.app',\n 'bsky.brid.gy',\n 'fed.brid.gy',\n ].includes(domain);\n}\n\nfunction StatusCard({ card, selfReferential, selfAuthor, instance }) {\n const snapStates = useSnapshot(states);\n const {\n blurhash,\n title,\n description,\n html,\n providerName,\n providerUrl,\n authorName,\n authorUrl,\n width,\n height,\n image,\n imageDescription,\n url,\n type,\n embedUrl,\n language,\n publishedAt,\n authors,\n } = card;\n\n /* type\n link = Link OEmbed\n photo = Photo OEmbed\n video = Video OEmbed\n rich = iframe OEmbed. Not currently accepted, so won't show up in practice.\n */\n\n const hasText = title || providerName || authorName;\n const isLandscape = width / height >= 1.2;\n const size = isLandscape ? 'large' : '';\n\n const [cardStatusURL, setCardStatusURL] = useState(null);\n // const [cardStatusID, setCardStatusID] = useState(null);\n useEffect(() => {\n if (hasText && image && !selfReferential && isMastodonLinkMaybe(url)) {\n unfurlMastodonLink(instance, url).then((result) => {\n if (!result) return;\n const { id, url } = result;\n setCardStatusURL('#' + url);\n\n // NOTE: This is for quote post\n // (async () => {\n // const { masto } = api({ instance });\n // const status = await masto.v1.statuses.$select(id).fetch();\n // saveStatus(status, instance);\n // setCardStatusID(id);\n // })();\n });\n }\n }, [hasText, image, selfReferential]);\n\n // if (cardStatusID) {\n // return (\n // \n // );\n // }\n\n if (snapStates.unfurledLinks[url]) return null;\n\n const hasIframeHTML = /