PageSourceSearch

https://jinero.online/build/assets/font-family-bE9bl2l7.js

js jinero.online collected 2026-09-24 15:08:22 UTC 14,274 bytes, 6 lines download raw bytes

1import{f as fe}from"./app-Doso7iid.js";import{Prism as he}from"./prism-0AWU3Ihj.js";import{s as me}from"./code-tabs-BNbzAZFu.js";const pe={serif:"serif",slab:"serif",sans:"sans-serif","sans-serif":"sans-serif",display:"sans-serif",mono:"monospace",monospace:"monospace",handwriting:"cursive",script:"cursive"},ye={html:"language-html",import:"language-css",css:"language-css"};function we(l=document){const s=l.querySelector("#ffEmbed");if(!s)return;const c=s.dataset.cssEndpoint||"",u=s.dataset.fontSlug||"",p=s.dataset.fontFamily||"",g=pe[(s.dataset.fontCategory||"").toLowerCase()]||"sans-serif";let h="";try{h=new URL(c,window.location.origin).origin}catch{h=window.location.origin}const d=[...s.querySelectorAll(".ff-embed__check")],C="swap",e=parseInt(s.dataset.wghtMin||"",10),i=parseInt(s.dataset.wghtMax||"",10),N=s.dataset.fontVariable==="1"&&Number.isFinite(e)&&Number.isFinite(i)&&i>e;function x(){return d.filter(o=>o.checked).map(o=>({id:Number(o.value),weight:Number(o.dataset.weight||400),italic:o.dataset.italic==="1"})).sort((o,L)=>Number(o.italic)-Number(L.italic)||o.weight-L.weight)}function R(o){if(N){const f=`${e}..${i}`,y=o.some(v=>!v.italic),w=o.some(v=>v.italic),m=[];return y&&m.push(`0,${f}`),w&&m.push(`1,${f}`),w?`${u}:ital,wght@${m.join(";")}`:`${u}:wght@${f}`}if(o.some(f=>f.italic)){const f=o.map(y=>`${y.italic?1:0},${y.weight}`).join(";");return`${u}:ital,wght@${f}`}const b=o.map(f=>f.weight).join(";");return`${u}:wght@${b}`}function k(o,L){const b=s.querySelector(`[data-lang-panel="${o}"]`);if(!b)return;const f=b.querySelector(".code-toolbar, pre"),y=document.createElement("pre");y.className="c-code-output c-scroll line-numbers mb-0";const w=document.createElement("code");w.className=ye[o]||"language-css",w.textContent=L,y.appendChild(w),f?f.replaceWith(y):b.appendChild(y),he.highlightElement(w)}function I(){const o=x();if(!o.length){const m="/* Select at least one style above */";["html","import","css"].forEach(v=>k(v,m));return}const L=R(o),b=`${c}?family=${L}&display=${C}`,f=[...new Set(o.map(m=>m.weight))].sort((m,v)=>m-v),y=o.some(m=>m.italic)?", italic available":"",w=N?`Weight: ${e}–${i} (variable)${y}`:`Weights: ${f.join(", ")}${y}`;k("html",`<link rel="preconnect" href="${h}" crossorigin>
2<link rel="stylesheet" href="${b}">`),k("import",`@import url('${b}');`),k("css",`.your-element {
3  font-family: '${p}', ${g};
4}
5
6/* ${w} */`)}me(s),I(),d.forEach(o=>o.addEventListener("change",I))}const ue=new Set;function Se(l=document){l.querySelectorAll(".fl-card[data-font-url]").forEach(s=>{var g,h;const c=s.dataset.fontUrl,u=(h=(g=s.querySelector(".fl-title"))==null?void 0:g.textContent)==null?void 0:h.trim();if(c&&u&&!ue.has(u)&&(ue.add(u),new FontFace(u,`url(${c})`).load().then(d=>document.fonts.add(d)).catch(d=>console.warn("Font preview load failed:",u,d))),s.dataset.navInit==="1")return;s.dataset.navInit="1";const p=()=>{s.dataset.href&&(window.location.href=s.dataset.href)};s.addEventListener("click",d=>{d.target.closest("a, button")||p()}),s.addEventListener("keydown",d=>{d.key==="Enter"&&(d.preventDefault(),p())})})}const de=new Set;function P(l){if(!(l!=null&&l.url)||!l.family)return Promise.resolve();const s=`${l.family}:${l.weight||400}:${l.italic?"italic":"normal"}:${l.url}`;if(de.has(s))return Promise.resolve();const c={weight:String(l.weight||400),style:l.italic?"italic":"normal"};return new FontFace(l.family,`url(${l.url})`,c).load().then(p=>{document.fonts.add(p),de.add(s)}).catch(p=>{console.warn("Font preview load failed:",l.family,p)})}function ve(l,s){l.forEach(c=>{c.classList.toggle("active",c.dataset.theme===s)})}function be(l){const s=Number(l||0);return Number.isInteger(s)?String(s):String(Number(s.toFixed(2)))}function Ee(l){l.querySelectorAll('[role="tablist"]').forEach(s=>{const c=[...s.querySelectorAll("[data-tab-target]")];if(!c.length)return;const u=s.parentElement,p=g=>
6{c.forEach(h=>{const d=h.dataset.tabTarget===g;h.classList.toggle("is-active",d),h.classList.toggle("active",d)}),u.querySelectorAll("[data-tab-panel]").forEach(h=>{const d=h.dataset.tabPanel===g;h.classList.toggle("is-active",d),h.hidden=!d})};c.forEach(g=>{g.addEventListener("click",()=>p(g.dataset.tabTarget))})})}function ke(){var z,T,q,B,W,j,_,H,O,D,M,U,G,J,X,Y,K,Q,Z,ee,te,ne,ae,ie;if(!document.body.classList.contains("font-family-page"))return;const l=document.getElementById("fontFamilyPage");if(!l)return;we(l),Se(l);const s=l.dataset.family||"",c=JSON.parse(l.dataset.styles||"[]"),u=JSON.parse(l.dataset.defaultStyle||"null"),p=JSON.parse(l.dataset.axes||"[]"),g=p.find(t=>String((t==null?void 0:t.tag)||"").toLowerCase()==="wght")||null,h=t=>Array.isArray(t)&&t.some(n=>{const a=String((n==null?void 0:n.tag)||"").toLowerCase();return a?a!=="wght"?!0:Number(n.min)<Number(n.max):!1}),d=c.find(t=>h(t.axes)),C=d?`${s} VF`:null;if(d&&d.url){const t=g?`${g.min||1} ${g.max||1e3}`:"1 1000";new FontFace(C,`url(${d.url})`,{weight:t,style:"normal"}).load().then(a=>document.fonts.add(a)).catch(a=>console.warn("Variable font preview load failed:",a))}const e={style:document.getElementById("ffStyleSelect"),size:document.getElementById("ffPreviewSize"),sizeRange:document.getElementById("ffPreviewSizeRange"),weightValue:document.getElementById("ffWeightValue"),lineHeight:document.getElementById("ffLineHeight"),letterSpacing:document.getElementById("ffLetterSpacing"),letterSpacingRange:document.getElementById("ffLetterSpacingRange"),weightRange:document.getElementById("ffWeightRange"),display:document.getElementById("ffPreviewDisplay"),alphabet:document.getElementById("ffPreviewAlphabet"),previewEdit:document.getElementById("ffPreviewEdit"),surface:document.getElementById("ffPreviewSurface"),themeChips:[...document.querySelectorAll(".ff-theme-toggle .chip")],styleCards:[...document.querySelectorAll(".ff-style-card")],axisInputs:[...document.querySelectorAll("[data-axis-input]")],glyphPanels:document.getElementById("ffGlyphPanels"),glyphToggle:document.getElementById("ffGlyphToggle"),glyphOptionalChip:document.querySelector(".ff-tab--optional"),actionButtons:[...document.querySelectorAll(".js-like-font, .js-bookmark-font")]};if(!e.display||!e.alphabet||!e.style)return;Ee(l);const i={previewText:((T=(z=e.display)==null?void 0:z.textContent)==null?void 0:T.trim())||l.dataset.defaultText||s,size:Number(((q=e.size)==null?void 0:q.value)||72),lineHeight:Number(((B=e.lineHeight)==null?void 0:B.value)||1.05),letterSpacing:Number(((W=e.letterSpacing)==null?void 0:W.value)||0),theme:"light",activeStyleId:Number((u==null?void 0:u.id)||((j=c[0])==null?void 0:j.id)||0),axisValues:{},weightValue:Number(l.dataset.weightDefault||(u==null?void 0:u.weight)||((_=c[0])==null?void 0:_.weight)||400),slug:l.dataset.slug||"",isAuthenticated:l.dataset.authenticated==="1"};let N=!1;function x(t){return c.find(n=>Number(n.id)===Number(t))||c[0]||null}function R(){var t;return((t=document.querySelector('meta[name="csrf-token"]'))==null?void 0:t.getAttribute("content"))||""}function k(t,n){const a=t==="bookmark"?l.dataset.bookmarkTemplate:l.dataset.likeTemplate;return a&&n?a.replace("__SLUG__",encodeURIComponent(n)):t==="bookmark"?l.dataset.bookmarkUrl:l.dataset.likeUrl}async function I(t,n){const a=await fetch(k(t,n),{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","X-CSRF-TOKEN":R(),"X-Requested-With":"XMLHttpRequest"},body:JSON.stringify({})});if(!a.ok)throw new Error(`Failed to update font ${t}`);return a.json()}function o(t){if(!e.style)return;const n=String(t);N=!0,e.style.tomselect?e.style.tomselect.setValue(n,!0):e.style.value=n,N=!1}function L(t){return c.reduce((n,a)=>{if(!n)return a;const r=Math.abs(Number(a.weight||400)-t),$=Math.abs(Number(n.weight||400)-t);return r<$||r===$&&(a.italic?1:0)<(n.italic?1:0)?a:n},null)}function b(){e.weightValue&&(e.weightValue.value=String(Math.round(i.weightValue))),e.weightRange&&(e.weightRange.value=String(Math.round(i.weightValue)))}function f(t){p.forEach(n=>{const a=String(n.tag||"").toLowerCase();if(!a||i.axisValues[a]!==void 0)return;let r=n.default;r==null&&a==="wght"&&(r=(t==null?void 0:t.weight)??i.weightValue??400),r==null&&(r=n.min??0),i.axisValues[a]=Number(r)})}
6function y(){b(),e.axisInputs.forEach(t=>{const n=t.closest("[data-axis-control]"),a=n==null?void 0:n.querySelector("[data-axis-value]");a&&(a.textContent=be(i.axisValues[t.dataset.axisTag]??t.value))})}function w(t,{updateAxis:n=!0}={}){t&&(i.activeStyleId=Number(t.id),i.weightValue=Number(t.weight||i.weightValue||400),n&&g&&(i.axisValues.wght=i.weightValue),o(t.id),y())}function m(t){i.size=Number(t||72),e.size&&(e.size.value=String(i.size)),e.sizeRange&&(e.sizeRange.value=String(i.size)),E()}function v(t){i.letterSpacing=Number(t||0),e.letterSpacing&&(e.letterSpacing.value=String(i.letterSpacing)),e.letterSpacingRange&&(e.letterSpacingRange.value=String(i.letterSpacing)),E()}function ge(t){e.styleCards.forEach(n=>{const a=Number(n.dataset.styleId)===Number(t==null?void 0:t.id);n.classList.toggle("is-active",a);const r=n.querySelector(".ff-style-card__preview");r&&(r.style.fontFamily=`'${s}', ${n.dataset.fontStyle==="italic"?"serif":"sans-serif"}`,r.style.fontWeight=n.dataset.fontWeight||"400",r.style.fontStyle=n.dataset.fontStyle||"normal")})}function E(){var le,se,oe,re;const t=x(i.activeStyleId);if(!t)return;P(t),f(t),g&&(i.axisValues.wght=i.weightValue);const n=i.previewText||s,a=g?i.weightValue:t.weight??i.weightValue??400,r=p.filter(S=>(S==null?void 0:S.tag)&&i.axisValues[String(S.tag).toLowerCase()]!==void 0).map(S=>`"${String(S.tag).toLowerCase()}" ${i.axisValues[String(S.tag).toLowerCase()]}`).join(", ");e.display.textContent!==n&&(e.display.textContent=n);const $=p.some(S=>{const F=String((S==null?void 0:S.tag)||"").toLowerCase();if(!F||F==="wght")return!1;const ce=i.axisValues[F];return ce!==void 0&&ce!==(S.default??S.min??0)}),V=C&&(g||$)?C:s;e.alphabet.style.fontFamily=`'${V}', sans-serif`,e.display.style.fontFamily=`'${V}', sans-serif`,e.alphabet.style.fontWeight=String(a),e.display.style.fontWeight=String(a),e.alphabet.style.fontStyle=t.italic?"italic":"normal",e.display.style.fontStyle=t.italic?"italic":"normal",e.alphabet.style.fontVariationSettings=r||"normal",e.display.style.fontVariationSettings=r||"normal",e.display.style.fontSize=`${i.size}px`,e.display.style.lineHeight=String(i.lineHeight),e.display.style.letterSpacing=`${i.letterSpacing}em`,(le=e.glyphPanels)==null||le.style.setProperty("--ff-glyph-weight",String(a)),(se=e.glyphPanels)==null||se.style.setProperty("--ff-glyph-style",t.italic?"italic":"normal"),(oe=e.glyphPanels)==null||oe.style.setProperty("--ff-glyph-variation-settings",r||"normal"),(re=e.glyphPanels)==null||re.style.setProperty("--ff-glyph-family",`'${s}', sans-serif`),e.surface.dataset.theme=i.theme,ve(e.themeChips,i.theme),ge(t),y()}function A(t=null){var a,r;if(!e.weightRange&&!e.weightValue)return;i.weightValue=Number(t??((a=e.weightValue)==null?void 0:a.value)??((r=e.weightRange)==null?void 0:r.value)??i.weightValue??400);const n=L(i.weightValue);n&&(i.activeStyleId=Number(n.id),o(n.id)),E()}P(u||c[0]),c.forEach(t=>P(t)),f(u||c[0]),w(u||c[0]),(H=e.display)==null||H.addEventListener("input",()=>{i.previewText=e.display.textContent,E()}),(O=e.display)==null||O.addEventListener("focus",()=>{const t=window.getSelection();if(!t||!e.display)return;const n=document.createRange();n.selectNodeContents(e.display),t.removeAllRanges(),t.addRange(n)}),(D=e.previewEdit)==null||D.addEventListener("click",()=>{var t;(t=e.display)==null||t.focus()}),e.style.addEventListener("change",()=>{N||(i.activeStyleId=Number(e.style.value),w(x(i.activeStyleId)),E())}),(M=e.size)==null||M.addEventListener("input",()=>m(e.size.value)),(U=e.size)==null||U.addEventListener("change",()=>m(e.size.value)),(G=e.sizeRange)==null||G.addEventListener("input",()=>m(e.sizeRange.value)),(J=e.sizeRange)==null||J.addEventListener("change",()=>m(e.sizeRange.value)),(X=e.lineHeight)==null||X.addEventListener("input",()=>{i.lineHeight=Number(e.lineHeight.value||1.05),E()}),(Y=e.letterSpacing)==null||Y.addEventListener("input",()=>v(e.letterSpacing.value)),(K=e.letterSpacing)==null||K.addEventListener("change",()=>v(e.letterSpacing.value)),(Q=e.letterSpacingRange)==null||Q.addEventListener("input",()=>v(e.letterSpacingRange.value)),(Z=e.letterSpacingRange)==null||Z.addEventListener("change",()=>v(e.letterSpacingRange.value)),(ee=e.weightRange)==null||ee.addEventListener("input",()=>A(e.weightRange.value)),(te=e.weightRange)==null||te.addEventListener("change",()=>A(e.weightRange.value)),(ne=e.weightValue)==null||ne.addEventListener("input",()=>A(e.weightValue.value)),(ae=e.weightValue)==null||ae.addEventListener("change",()=>A(e.weightValue.value)),e.themeChips.forEach(t=>{t.addEventListener("click",()=>{i.theme=t.dataset.theme||"light",E()})}),e.styleCards.forEach(t=>{const n=()=>{const a=Number(t.dataset.styleId);i.activeStyleId=a,w(x(a)),E()};t.addEventListener("click",a=>{a.target.closest(".ff-style-card__download")||n()}),t.addEventListener("keydown",a=>{a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),n())})}
6),e.axisInputs.forEach(t=>{t.addEventListener("input",()=>{const n=t.dataset.axisTag;n&&(i.axisValues[n]=Number(t.value),E())})}),e.actionButtons.forEach(t=>{t.addEventListener("click",async()=>{if(!i.isAuthenticated){l.dataset.loginUrl&&(window.location.href=l.dataset.loginUrl);return}const n=t.classList.contains("js-bookmark-font")?"bookmark":"like",a=t.dataset.slug||i.slug;t.disabled=!0;try{const r=await I(n,a);n==="bookmark"?document.querySelectorAll(`.js-bookmark-font[data-slug="${a}"]`).forEach($=>{$.classList.toggle("is-active",!!r.bookmarked)}):document.querySelectorAll(`.js-like-font[data-slug="${a}"]`).forEach($=>{$.classList.toggle("is-active",!!r.liked);const V=$.querySelector(".js-font-likes-count");V&&(V.textContent=fe(r.likes_count??0))})}catch(r){console.error(r)}finally{t.disabled=!1}})}),(ie=e.glyphToggle)==null||ie.addEventListener("click",()=>{const n=!(e.glyphToggle.dataset.expanded==="1");e.glyphToggle.dataset.expanded=n?"1":"0",e.glyphToggle.textContent=n?"Hide Full Set":"Show Full Set";const a=l.querySelector('[data-glyph-panel="symbols"]');e.glyphOptionalChip&&(e.glyphOptionalChip.hidden=!n),a&&(a.hidden=!n)}),E()}export{ke as initFontFamily};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.