furifont 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.mjs +3 -3
- package/dist/client/200.html +1 -1
- package/dist/client/404.html +1 -1
- package/dist/client/_nuxt/3AsBWvce.js +3 -0
- package/dist/client/_nuxt/B2JUvp84.js +1 -0
- package/dist/client/_nuxt/B4Fx_Djw.js +1 -0
- package/dist/client/_nuxt/BClhblIx.js +1 -0
- package/dist/client/_nuxt/BJuAqPpj.js +75 -0
- package/dist/client/_nuxt/B_yYcKkt.js +3 -0
- package/dist/client/_nuxt/BaBNBiev.js +1 -0
- package/dist/client/_nuxt/{D8T7CxEJ.js → BjcMHMZP.js} +1 -1
- package/dist/client/_nuxt/BmkgJMJq.js +1 -0
- package/dist/client/_nuxt/BuNmJC0Q.js +3 -0
- package/dist/client/_nuxt/CHjPDtV4.js +4 -0
- package/dist/client/_nuxt/CUHATrYY.js +1 -0
- package/dist/client/_nuxt/Cl84O_XS.js +1 -0
- package/dist/client/_nuxt/DAxBBWm2.js +2 -0
- package/dist/client/_nuxt/DgjW2lPh.js +1 -0
- package/dist/client/_nuxt/Kki0DvjP.js +1 -0
- package/dist/client/_nuxt/{B8uEzYfq.js → X45Acd-Y.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/5ad83f05-1bf5-46a5-b89b-625cf86451d1.json +1 -0
- package/dist/client/_nuxt/entry.CZW0K6xF.css +1 -0
- package/dist/client/_nuxt/error-404.CaT3AK-0.css +1 -0
- package/dist/client/_nuxt/error-500.WL1uhYQu.css +1 -0
- package/dist/client/_nuxt/{VtV-OZNb.js → y75lAtyQ.js} +2 -2
- package/dist/client/customize/index.html +1 -1
- package/dist/client/furifont.user.js +3 -3
- package/dist/client/index.html +1 -1
- package/dist/client/okurigana.json +774 -4191
- package/dist/client/reference/index.html +1 -1
- package/dist/client/report/index.html +1 -0
- package/dist/client/version.json +1 -1
- package/dist/{config-B9fOD9wc.mjs → config-C-xeUzoA.mjs} +4 -4
- package/dist/devframe.mjs +2 -2
- package/dist/index.d.mts +9 -35
- package/dist/index.mjs +2 -2
- package/dist/{studio-IpmE7PF6.mjs → studio-BmCyOlBh.mjs} +27 -20
- package/package.json +4 -4
- package/dist/client/_nuxt/5JUjClMv.js +0 -3
- package/dist/client/_nuxt/BGvM1Idk.js +0 -2
- package/dist/client/_nuxt/BI2Q9Enf.js +0 -1
- package/dist/client/_nuxt/Bo7DzF0m.js +0 -1
- package/dist/client/_nuxt/Ckc75SSp.js +0 -1
- package/dist/client/_nuxt/DBjETv8r.js +0 -1
- package/dist/client/_nuxt/IB1Ryazr.js +0 -3
- package/dist/client/_nuxt/IYM3Ipyg.js +0 -1
- package/dist/client/_nuxt/OTZjk4e0.js +0 -75
- package/dist/client/_nuxt/OoUlbf8J.js +0 -1
- package/dist/client/_nuxt/Sgj54NgJ.js +0 -3
- package/dist/client/_nuxt/builds/meta/0a20d338-7497-4d3f-82e8-9f5ae0d7be3d.json +0 -1
- package/dist/client/_nuxt/entry.z8A6-8bZ.css +0 -1
- package/dist/client/_nuxt/error-404.DqUWOYf4.css +0 -1
- package/dist/client/_nuxt/error-500.BYTKxx4O.css +0 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DAxBBWm2.js","./CkUAspOr.js","./y07Wd5I9.js","./D4ezFGbh.js","./3AsBWvce.js","./DgjW2lPh.js","./BmkgJMJq.js","./BJuAqPpj.js","./BaBNBiev.js","./Cl84O_XS.js","./BClhblIx.js","./CUHATrYY.js","./B_yYcKkt.js","./B4Fx_Djw.js","./error-404.CaT3AK-0.css","./X45Acd-Y.js","./error-500.WL1uhYQu.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{n as e}from"./y07Wd5I9.js";import{$ as t,A as n,Bt as r,C as i,E as a,F as o,G as s,Gt as c,H as l,Ht as u,I as d,K as f,Kt as p,L as m,M as h,N as g,P as _,R as v,S as y,T as b,U as x,W as S,Wt as ee,X as C,Y as w,Z as T,_ as E,at as D,bt as O,c as te,ct as ne,et as re,f as k,ft as ie,gt as ae,ht as oe,i as A,it as j,j as M,k as se,lt as ce,m as le,mt as ue,n as de,o as N,ot as fe,p as P,pt as F,r as pe,rt as me,s as he,u as ge,ut as _e,v as ve,vt as ye,w as I,y as be,yt as xe,z as Se,zt as L}from"./CkUAspOr.js";import{a as Ce,n as we,r as Te}from"./D4ezFGbh.js";import{$ as Ee,A as De,B as R,C as Oe,Ct as ke,D as Ae,E as z,F as je,G as B,H as V,I as Me,J as Ne,K as H,L as Pe,M as Fe,N as Ie,O as Le,P as Re,Q as ze,R as Be,S as Ve,St as He,T as Ue,U as We,V as Ge,W as Ke,X as qe,Y as U,Z as Je,_ as Ye,_t as Xe,a as Ze,at as Qe,b as $e,bt as et,c as tt,ct as W,d as nt,dt as rt,et as it,f as at,ft as ot,g as st,gt as ct,h as lt,ht as ut,it as G,j as dt,k as ft,l as K,lt as pt,m as q,mt,nt as ht,o as gt,ot as _t,p as vt,pt as yt,q as bt,r as xt,rt as St,s as Ct,st as wt,t as Tt,tt as Et,u as Dt,ut as Ot,v as kt,vt as At,w as J,x as jt,xt as Mt,y as Nt,yt as Pt,z as Ft}from"./Cl84O_XS.js";import{c as It,d as Lt,i as Rt,l as zt,n as Bt,p as Vt,r as Ht,s as Ut,t as Wt}from"./3AsBWvce.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Gt=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,Kt=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,qt=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function Jt(e,t){if(e===`__proto__`||e===`constructor`&&t&&typeof t==`object`&&`prototype`in t)Yt(e);else return t}function Yt(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function Xt(e,t={}){if(typeof e!=`string`)return e;if(e[0]===`"`&&e[e.length-1]===`"`&&e.indexOf(`\\`)===-1)return e.slice(1,-1);let n=e.trim();if(n.length<=9)switch(n.toLowerCase()){case`true`:return!0;case`false`:return!1;case`undefined`:return;case`null`:return null;case`nan`:return NaN;case`infinity`:return 1/0;case`-infinity`:return-1/0}if(!qt.test(e)){if(t.strict)throw SyntaxError(`[destr] Invalid JSON`);return e}try{if(Gt.test(e)||Kt.test(e)){if(t.strict)throw Error(`[destr] Possible prototype pollution`);return JSON.parse(e,Jt)}return JSON.parse(e)}catch(n){if(t.strict)throw n;return e}}var Zt=class extends Error{constructor(e,t){super(e,t),this.name=`FetchError`,t?.cause&&!this.cause&&(this.cause=t.cause)}};function Qt(e){let t=e.error?.message||e.error?.toString()||``,n=e.request?.method||e.options?.method||`GET`,r=e.request?.url||String(e.request)||`/`,i=new Zt(`${`[${n}] ${JSON.stringify(r)}`}: ${e.response?`${e.response.status} ${e.response.statusText}`:`<no response>`}${t?` ${t}`:``}`,e.error?{cause:e.error}:void 0);for(let t of[`request`,`options`,`response`])Object.defineProperty(i,t,{get(){return e[t]}});for(let[t,n]of[[`data`,`_data`],[`status`,`status`],[`statusCode`,`status`],[`statusText`,`statusText`],[`statusMessage`,`statusText`]])Object.defineProperty(i,t,{get(){return e.response&&e.response[n]}});return i}var $t=new Set(Object.freeze([`PATCH`,`POST`,`PUT`,`DELETE`]));function en(e=`GET`){return $t.has(e.toUpperCase())}function tn(e){if(e===void 0)return!1;let t=typeof e;return t===`string`||t===`number`||t===`boolean`||t===null?!0:t===`object`?Array.isArray(e)?!0:e.buffer||e instanceof FormData||e instanceof URLSearchParams?!1:e.constructor&&e.constructor.name===`Object`||typeof e.toJSON==`function`:!1}var nn=new Set([`image/svg`,`application/xml`,`application/xhtml`,`application/html`]),rn=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function an(e=``){if(!e)return`json`;let t=e.split(`;`).shift()||``;return rn.test(t)?`json`:t===`text/event-stream`?`stream`:nn.has(t)||t.startsWith(`text/`)?`text`:`blob`}function on(e,t,n,r){let i=sn(t?.headers??e?.headers,n?.headers,r),a;return(n?.query||n?.params||t?.params||t?.query)&&(a={...n?.params,...n?.query,...t?.params,...t?.query}),{...n,...t,query:a,params:a,headers:i}}function sn(e,t,n){if(!t)return new n(e);let r=new n(t);if(e)for(let[t,i]of Symbol.iterator in e||Array.isArray(e)?e:new n(e))r.set(t,i);return r}async function cn(e,t){if(t){if(Array.isArray(t))for(let n of t)await n(e);else await t(e)}}var ln=new Set([408,409,425,429,500,502,503,504]),un=new Set([101,204,205,304]);function dn(e={}){let{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function i(e){let t=e.error&&e.error.name===`AbortError`&&!e.options.timeout||!1;if(e.options.retry!==!1&&!t){let t;t=typeof e.options.retry==`number`?e.options.retry:+!en(e.options.method);let n=e.response&&e.response.status||500;if(t>0&&(Array.isArray(e.options.retryStatusCodes)?e.options.retryStatusCodes.includes(n):ln.has(n))){let n=typeof e.options.retryDelay==`function`?e.options.retryDelay(e):e.options.retryDelay||0;return n>0&&await new Promise(e=>setTimeout(e,n)),a(e.request,{...e.options,retry:t-1})}}let n=Qt(e);throw Error.captureStackTrace&&Error.captureStackTrace(n,a),n}let a=async function(a,o={}){let s={request:a,options:on(a,o,e.defaults,n),response:void 0,error:void 0};if(s.options.method&&(s.options.method=s.options.method.toUpperCase()),s.options.onRequest&&(await cn(s,s.options.onRequest),s.options.headers instanceof n||(s.options.headers=new n(s.options.headers||{}))),typeof s.request==`string`&&(s.options.baseURL&&(s.request=Mt(s.request,s.options.baseURL)),s.options.query&&(s.request=He(s.request,s.options.query),delete s.options.query),`query`in s.options&&delete s.options.query,`params`in s.options&&delete s.options.params),s.options.body&&en(s.options.method)){if(tn(s.options.body)){let e=s.options.headers.get(`content-type`);typeof s.options.body!=`string`&&(s.options.body=e===`application/x-www-form-urlencoded`?new URLSearchParams(s.options.body).toString():JSON.stringify(s.options.body)),e||s.options.headers.set(`content-type`,`application/json`),s.options.headers.has(`accept`)||s.options.headers.set(`accept`,`application/json`)}else(`pipeTo`in s.options.body&&typeof s.options.body.pipeTo==`function`||typeof s.options.body.pipe==`function`)&&(`duplex`in s.options||(s.options.duplex=`half`))}let c;if(!s.options.signal&&s.options.timeout){let e=new r;c=setTimeout(()=>{let t=Error(`[TimeoutError]: The operation was aborted due to timeout`);t.name=`TimeoutError`,t.code=23,e.abort(t)},s.options.timeout),s.options.signal=e.signal}try{s.response=await t(s.request,s.options)}catch(e){return s.error=e,s.options.onRequestError&&await cn(s,s.options.onRequestError),await i(s)}finally{c&&clearTimeout(c)}if((s.response.body||s.response._bodyInit)&&!un.has(s.response.status)&&s.options.method!==`HEAD`){let e=(s.options.parseResponse?`json`:s.options.responseType)||an(s.response.headers.get(`content-type`)||``);switch(e){case`json`:{let e=await s.response.text(),t=s.options.parseResponse||Xt;s.response._data=t(e);break}case`stream`:s.response._data=s.response.body||s.response._bodyInit;break;default:s.response._data=await s.response[e]()}}return s.options.onResponse&&await cn(s,s.options.onResponse),!s.options.ignoreResponseError&&s.response.status>=400&&s.response.status<600?(s.options.onResponseError&&await cn(s,s.options.onResponseError),await i(s)):s.response},o=async function(e,t){return(await a(e,t))._data};return o.raw=a,o.native=(...e)=>t(...e),o.create=(t={},n={})=>dn({...e,...n,defaults:{...e.defaults,...n.defaults,...t}}),o}var fn=(function(){if(typeof globalThis<`u`)return globalThis;if(typeof self<`u`)return self;if(typeof window<`u`)return window;if(typeof global<`u`)return global;throw Error(`unable to locate global object`)})(),pn=fn.fetch?(...e)=>fn.fetch(...e):()=>Promise.reject(Error(`[ofetch] global.fetch is not supported!`)),mn=fn.Headers,hn=fn.AbortController,gn=dn({fetch:pn,Headers:mn,AbortController:hn}),_n=()=>window?.__NUXT__?.config||window?.useNuxtApp?.().payload?.config,vn=()=>_n().app,yn=()=>vn().baseURL,bn=()=>vn().buildAssetsDir,xn=(...e)=>Pt(Sn(),bn(),...e),Sn=(...e)=>{let t=vn(),n=t.cdnURL||t.baseURL;return e.length?Pt(n,...e):n};globalThis.__buildAssetsURL=xn,globalThis.__publicAssetsURL=Sn,globalThis.$fetch||(globalThis.$fetch=gn.create({baseURL:yn()}));var Cn=globalThis.$fetch;`global`in globalThis||(globalThis.global=globalThis);function wn(e,t){t.push(te),e.vueApp.use(t);let n=!0,r=()=>{n=!1,t.render()};t.hooks?.hook(`dom:beforeRender`,e=>{e.shouldRender=!n}),e.hooks.hook(`page:start`,()=>{n=!0}),e.hooks.hook(`page:finish`,()=>{e.isHydrating||r()}),e.hooks.hook(`app:error`,r),e.hooks.hook(`app:suspense:resolve`,r);let i=t.push.bind(t);t.push=((t,n)=>{let r=i(t,n),a=r.dispose.bind(r);return r.dispose=()=>{let t=e[`~transitionPromise`];t?t.finally(a):a()},r})}function Tn(e,t){if(typeof t==`function`&&t.key&&e.plugins.has(t.key))return;let n=typeof t==`function`?t(e):t,r=n.key||String(e.plugins.size+1);if(!e.plugins.get(r)){e.plugins.set(r,n);for(let t in n.hooks||{})e.hooks?.hook(t,n.hooks[t])}}function En(e,t={}){let n=!t.document,r=new Map,i={_entryCount:1,_h:0,plugins:new Map,resolvedOptions:t,ssr:n,entries:r,hooks:void 0,render:()=>e(i),use:e=>Tn(i,e),push(e,t){let a=t?._index??i._entryCount++,o=t?{...t}:{};delete o.head,delete o.onRendered,delete o._index;let s={_i:a,input:e,options:o};return r.set(a,s),{_i:a,dispose(){r.delete(a)},patch(e){n?(s.input=e,delete s._tags):s._pending=e,r.has(a)||r.set(a,s)}}}};return t.init?.forEach(e=>e&&i.push(e)),i}var Dn=new Set([`link`,`style`,`script`,`noscript`]),On=new Set([`title`,`titleTemplate`,`script`,`style`,`noscript`]),kn=new Set([`base`,`meta`,`link`,`style`,`script`,`noscript`]),An=new Set([`title`,`base`,`htmlAttrs`,`bodyAttrs`,`meta`,`link`,`style`,`script`,`noscript`]),jn=new Set([`base`,`title`,`titleTemplate`,`bodyAttrs`,`htmlAttrs`,`templateParams`]),Mn=new Set([`key`,`tagPosition`,`tagPriority`,`tagDuplicateStrategy`,`innerHTML`,`textContent`,`processTemplateParams`]),Nn=new Set([`templateParams`,`htmlAttrs`,`bodyAttrs`]),Pn=new Set([`theme-color`,`google-site-verification`,`author`,`og:locale:alternate`,`og:image`,`og:video`,`og:audio`,`article:author`,`article:tag`,`book:author`,`book:tag`,`twitter:image`]),Fn={critical:-8,high:-1,low:2},In=e=>typeof e==`number`?Number.isFinite(e):e;function Ln(e){return e===`__proto__`||e===`constructor`||e===`prototype`}function Rn(e){let t=new le;for(let n in e||{})t.hook(n,e[n]);return t}function Y(e,t,n){if(e.hooks?._hooks?.[t]?.length)return e.hooks?.callHook(t,n)}function zn(e,t,n){let r=e.push,i=e;i.ssr=!1,i.hooks=t,i.dirty=!!i.dirty,i.use=e=>Tn(i,e),i.render=()=>n(i);function a(){t.callHook(`entries:updated`,i),i._b||i.render()}return i.invalidate=()=>{for(let e of i.entries.values())delete e._tags;i.dirty=!0,a()},i.push=(n,o)=>{let s=o?.onRendered?t.hook(`dom:rendered`,o.onRendered):void 0,c=r(n,o),l=e.entries.get(c._i);return l&&(l._o=n),i.dirty=!0,a(),{_i:c._i,patch(e){c.patch(e),i.dirty=!0,a()},dispose(){s?.(),e.entries.has(c._i)&&(c.dispose(),i.invalidate())}}},i}var Bn=/^(?:viewport|description|keywords|robots)$/,Vn=[`name`,`property`,`http-equiv`];function Hn(e){let t=e.indexOf(`:`);if(t===-1)return!1;let n=e.slice(t+1);return Pn.has(n)||n.startsWith(`og:image:`)||n.startsWith(`og:video:`)||n.startsWith(`og:audio:`)||n.startsWith(`twitter:image:`)}function Un(e){let{props:t,tag:n,key:r}=e;if(jn.has(n))return n;if(n===`link`){if(t.rel===`canonical`)return`canonical`;if(t.rel===`alternate`&&t.hreflang)return`alternate:${t.hreflang}`}if(t.charset)return`charset`;if(n===`meta`)for(let e of Vn){let n=t[e];if(n!==void 0)return`meta:${n}${(typeof n!=`string`||!n.includes(`:`))&&!Bn.test(n)&&r?`:key:${r}`:``}`}return r?`${n}:key:${r}`:t.id?`${n}:id:${t.id}`:n===`link`&&t.rel&&t.href?`link:${t.rel}:${t.href}`:On.has(n)&&(e.textContent||e.innerHTML)?`${n}:content:${e.textContent||e.innerHTML}`:void 0}function Wn(e){let t=e._h||e._d||e.textContent||e.innerHTML;if(t)return t;let n=Object.keys(e.props).sort(),r=`${e.tag}:`,i=``;for(let t of n)r+=`${i}${t}:${String(e.props[t])}`,i=`,`;return r}function Gn(e,t,n){if(n===`_resolver`)return e;typeof e==`function`&&(!n||n!==`titleTemplate`&&!n.startsWith(`on`))&&(e=e());let r=t?t(n,e):e;if(Array.isArray(r)){let e;for(let n=0;n<r.length;n++){let i=Gn(r[n],t);e?e[n]=i:i!==r[n]&&(e=r.slice(0,n),e[n]=i)}return e||r}if(r?.constructor===Object){let e;for(let n in r){let i=Ln(n),a=i?void 0:Gn(r[n],t,n);if(!e&&(i||a!==r[n])){e={};for(let t in r){if(t===n)break;e[t]=r[t]}}e&&!i&&(e[n]=a)}return e||r}return r}var Kn=/[\s"'<>/=\x00-\x1F\x7F]/;function qn(e,t){let n=e===`style`,r=n?new Map:new Set,i=e=>{if(e){if(n){let t=e.indexOf(`:`);t>0&&r.set(e.slice(0,t).trim(),e.slice(t+1).trim())}else e.split(` `).forEach(e=>e&&r.add(e))}};if(typeof t==`string`)(n?t.split(`;`):[t]).forEach(i);else if(Array.isArray(t))t.forEach(i);else if(t&&typeof t==`object`)for(let e in t){let a=t[e];a&&a!==`false`&&(n?r.set(e.trim(),String(a)):i(e))}return r}function Jn(e,t){if(e.props=e.props||{},!t)return e;if(e.tag===`templateParams`)return e.props=t,e;let n=kn.has(e.tag)||e.tag===`htmlAttrs`||e.tag===`bodyAttrs`;for(let r in t){if(Ln(r))continue;let i=r.startsWith(`data-`),a=n&&!Mn.has(r),o=a&&!i?r.toLowerCase():r;if(a&&(!o||Kn.test(o)))continue;let s=t[r];if(s===null)e.props[o]=null;else if(r===`class`||r===`style`)e.props[r]=qn(r,s);else if(Mn.has(r)){if((r===`textContent`||r===`innerHTML`)&&typeof s==`object`){let n=t.type||`application/json`;(n.endsWith(`json`)||n===`speculationrules`||n===`importmap`)&&(e.props.type=n,e[r]=JSON.stringify(s))}else e[r]=s}else if(s!==void 0){let t=String(s),n=e.tag===`meta`&&o===`content`;e.props[o]=t===`true`||t===``?i||n?t:!0:!s&&i&&t===`false`?`false`:s}}return e}function Yn(e,t){let n;return t.length&&(n=(e,n)=>{for(let r=0;r<t.length;r++)n=t[r](e,n);return n},e=n(void 0,e)),Gn(e,n)}function Xn(e,t){let n=Jn({tag:e,props:{}},typeof t==`object`&&typeof t!=`function`?t:{[e===`script`||e===`noscript`||e===`style`?`innerHTML`:`textContent`]:t});if(n.key&&Dn.has(n.tag)&&(n.props[`data-hid`]=n._h=n.key),n.tag===`script`&&typeof n.innerHTML==`object`&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||`application/json`),Array.isArray(n.props.content)){let e=[];for(let t of n.props.content)e.push({...n,props:{...n.props,content:t}});return e}return n}function Zn(e,t){if(Array.isArray(t))for(let n of t)e.push(n);else e.push(t)}function Qn(e,t){if(!e)return[];typeof e==`function`&&(e=e()),e=Yn(e,t);let n=[];for(let t in e){let r=e[t];if(r!==void 0){if(Array.isArray(r))for(let e of r)Zn(n,Xn(t,e));else Zn(n,Xn(t,r))}}return n}var $n=/</g,er=/<\/script/g,tr=(e,t)=>e._w===t._w?e._p-t._p:e._w-t._w,nr=()=>100;function rr(e){for(let t in e)return!1;return!0}var ir=/^tags:|:render/;function ar(e,t){let n=(t[`entries:resolve`]?.length||0)+(t[`entries:normalize`]?.length||0);if(e._h!==n){e._h=n;for(let t of e.entries.values())delete t._tags}}function or(e){for(let t=0;t<e.length;t++){let n=e[t],r={...n.props};r.class instanceof Set&&(r.class=new Set(r.class)),r.style instanceof Map&&(r.style=new Map(r.style)),e[t]={...n,props:r}}}function sr(e,t){let n=e.tags,r=0;for(let t of e.tagMap.values())if(Array.isArray(t))for(let e of t)n[r++]=e;else n[r++]=t;n.length=r,t&&n.sort(tr)}function cr(e){let t=!1;for(let n of e.tags.sort(tr)){let r=n._d||Wn(n);if(!r)continue;let i=e.tagMap.get(r);if(!i)e.tagMap.set(r,n);else if((n.tagDuplicateStrategy||(Nn.has(n.tag)?`merge`:null)||(n.key&&n.key===i.key?`merge`:null))===`merge`){let t={...i.props};for(let e in n.props)t[e]=e===`style`?new Map([...i.props.style||new Map,...n.props[e]]):e===`class`?new Set([...i.props.class||[],...n.props[e]]):n.props[e];e.tagMap.set(r,{...n,props:t})}else n._p>>10==i._p>>10&&n.tag===`meta`&&Hn(r)?(e.tagMap.set(r,Object.assign([...Array.isArray(i)?i:[i],n],n)),t=!0):(n._w===i._w?n._p>i._p:n._w<i._w)&&e.tagMap.set(r,n)}return t}function lr(e,t){let n=e.tagMap.get(`title`),r=e.tagMap.get(`titleTemplate`);if(t._title=n?.textContent,!r)return;let i=r.textContent;if(t._titleTemplate=i,!i)return;let a=typeof i==`function`?i(n?.textContent):i;typeof a==`string`&&!t.plugins.has(`template-params`)&&(a=a.replace(`%s`,n?.textContent||``)),n?a===null?e.tagMap.delete(`title`):e.tagMap.set(`title`,{...n,textContent:a}):e.tagMap.set(`titleTemplate`,{...r,tag:`title`,textContent:a})}function ur(e){let t=0;for(let n of e){let{innerHTML:r,tag:i,props:a}=n;if(An.has(i)&&(!rr(a)||In(r)||In(n.textContent))&&(i!==`meta`||In(a.content)||a[`http-equiv`]||a.charset)){if(i===`script`&&(r||n.textContent)){let e=String(a.type),t=e.endsWith(`json`)||e===`importmap`||e===`speculationrules`,i=e=>t?(typeof e==`string`?e:JSON.stringify(e)).replace($n,`\\u003C`):typeof e==`string`?e.replace(er,`<\\/script`):e;n={...n},r&&(n.innerHTML=i(r)),n.textContent&&(n.textContent=i(n.textContent)),n._d=Un(n)}e[t++]=n}}return e.length=t,e}function dr(e,t){let n=t?.tagWeight??e.resolvedOptions._tagWeight??nr,r={tagMap:new Map,tags:[]},i=e.hooks?._hooks||{};ar(e,i);for(let t of e.entries.values())t._pending!==void 0&&(t.input=t._pending,delete t._pending,delete t._tags,delete t._precomputedTags);let a;(i[`entries:resolve`]?.length||i[`entries:normalize`]?.length)&&(a=[...e.entries.values()],i[`entries:resolve`]?.length&&Y(e,`entries:resolve`,{entries:a,...r})),ar(e,i);for(let t of a||e.entries.values()){let a=t._tags;if(!a){if(t._precomputedTags&&n===e.resolvedOptions._tagWeight&&!i[`entries:normalize`]?.length&&!i[`entries:resolve`]?.length&&(!t.options||rr(t.options)))a=t._precomputedTags;else{if(a=Qn(t.input,e.resolvedOptions.propResolvers||[]),t.options&&!rr(t.options))for(let e of a)Object.assign(e,t.options);if(i[`entries:normalize`]?.length){let n={tags:a,entry:t};Y(e,`entries:normalize`,n),a=n.tags}for(let e=0;e<a.length;e++){let r=a[e];r._w=n(r),r._p=(t._i<<10)+e,r._d=Un(r),r._d||(r._h=Wn(r))}t._tags=a}}r.tags.push(...a)}for(let e in i)if(i[e]?.length&&ir.test(e)){or(r.tags);break}let o=cr(r);return lr(r,e),sr(r,o),Y(e,`tags:beforeResolve`,r),Y(e,`tags:resolve`,r),Y(e,`tags:afterResolve`,r),ur(r.tags)}var fr=/\s+/;function pr(e={}){return t=>gr(t,e)}function mr(e){for(let t of e.entries.values())if(t._pending!==void 0)return!0;return!1}function hr(e,t){let n={_d:t,_t:t.title,_e:new Map([[`htmlAttrs`,t.documentElement],[`bodyAttrs`,t.body]]),_p:{},_s:{},_l:new Map};for(let t of e.entries.values())if(t._o!==void 0){let e=t._o;for(let t of[`bodyAttrs`,`htmlAttrs`]){let r=e[t]?.class;if(typeof r==`string`){let e=n._e.get(t);for(let i of r.split(fr))i&&(n._p[`${t}:attr:class:${i}`]=()=>e.classList.remove(i))}}}return n}function gr(e,t={}){let n=t.document||e.resolvedOptions.document,r=e._dom;if(!n||e._du||r&&r._d===n&&!e.dirty&&!mr(e))return!1;let i=n.defaultView;e._du=!0;let a=!1;try{let o=function(e,t,n){d._s[e]=!n&&f[e]||t,delete f[e]},s=function(e,t,n,r,i,a){let s=`${e}:event:${t}`,c=d._l.get(s);if(c&&c[0]===a&&c[1]===n&&c[2]===r){o(s,c[4]);return}c?.[4]();let l=`data-${t}`,u=(e=>r.call(i,e)),f=()=>{a.removeEventListener(n,u),i.getAttribute(l)===``&&i.removeAttribute(l),d._l.get(s)?.[3]===u&&d._l.delete(s)};a.addEventListener(n,u),d._l.set(s,[a,n,r,u,f]),i.setAttribute(l,``),o(s,f,!0)},c=function({id:e,$el:t,tag:n}){if(d._e.set(e,t),!n.tag.endsWith(`Attrs`)){let r=n.textContent;r!=null&&r!==``&&(r!==t.textContent&&(t.textContent=r),o(`${e}:text`,()=>{t.textContent===r&&(t.textContent=``)},!0));let i=n.innerHTML;i!=null&&i!==``&&(i!==t.innerHTML&&(t.innerHTML=i),o(`${e}:html`,()=>{t.innerHTML===i&&(t.innerHTML=``)},!0));let a=`${e}:el`;o(a,f[a]||(()=>{t?.remove(),d._e.delete(e)}))}for(let r in n.props){let a=n.props[r];if(r[0]===`o`&&r[1]===`n`&&typeof a==`function`){let o=r.slice(2);t?.dataset?.[`${r}fired`]&&a.call(t,new((i?.Event)||Event)(o)),s(e,r,o,a,t,n.tag===`bodyAttrs`&&i?i:t);continue}let c=`${e}:attr:${r}`;if(r===`class`&&a)for(let e of a){let n=`${c}:${e}`;o(n,f[n]||(()=>t.classList.remove(e))),t.classList.contains(e)||t.classList.add(e)}else if(r===`style`&&a)for(let[e,n]of a){let r=`${c}:${e}`;o(r,f[r]||(()=>t.style.removeProperty(e))),t.style.setProperty(e,n)}else a!==!1&&a!==null&&(t.getAttribute(r)!==a&&t.setAttribute(r,a===!0?``:String(a)),o(c,f[c]||(()=>t.removeAttribute(r))))}},l={shouldRender:!0,tags:[]};if(Y(e,`dom:beforeRender`,l),!l.shouldRender)return!1;let u=r;if(u?._d!==n){if(u){for(let e in u._s)u._s[e]();for(let e in u._p)u._p[e]();u._s=u._p={},u._e.clear(),u._l.clear()}u=void 0}u?u._p=u._s:u=hr(e,n),u._s={};let d=u,f=d._p,p=[],m={};e.dirty=!1;let h=dr(e,t.tagWeight?{tagWeight:t.tagWeight}:void 0),g=[],_={};for(let e of h){let t=_[e._d]||0,r=(t?`${e._d}:${t}`:e._d)||e._h,i={tag:e,id:r,shouldRender:!0};e.tag===`meta`&&e._d&&Hn(e._d)&&(_[e._d]=t+1),g.push(i),e.tag===`title`?(n.title=e.textContent,o(`title:`,()=>n.title=d._t)):(i.$el=d._e.get(r),i.$el?c(i):kn.has(e.tag)&&p.push(i))}if(p.length){let e=new Set(d._e.values());for(let t of[...n.body.children,...n.head.children]){let n=t.tagName.toLowerCase();if(!kn.has(n)||e.has(t))continue;let r={innerHTML:t.innerHTML};for(let e of t.getAttributeNames())r[e]=t.getAttribute(e);let i=Jn({tag:n,props:{}},r);i.key=t.getAttribute(`data-hid`)||void 0;let a=Un(i)||Wn(i),o=a,s=1;for(;d._e.has(o);)o=`${a}:${s++}`;d._e.set(o,t)}}for(let e of p){let t=d._e.get(e.id);e.$el=t||n.createElement(e.tag.tag),c(e),t||(m[e.tag.tagPosition||`head`]??=n.createDocumentFragment()).appendChild(e.$el)}m.head&&n.head.appendChild(m.head),m.bodyOpen&&n.body.insertBefore(m.bodyOpen,n.body.firstChild),m.bodyClose&&n.body.appendChild(m.bodyClose);for(let e in f)f[e]();e._dom=d,a=!0,Y(e,`dom:rendered`,{renders:g})}catch(t){throw e.dirty=!0,t}finally{e._du=!1}return a&&(e.dirty||mr(e))&&gr(e,t),a}var _r=e=>typeof e.tagPriority==`number`?e.tagPriority:100+(Fn[e.tagPriority]||0);function vr(e={}){e.document=e.document||(typeof window<`u`?document:void 0);let t=e.render||pr({document:e.document}),n=zn(En(t,{document:e.document,propResolvers:e.propResolvers,_tagWeight:_r,init:[]}),Rn(e.hooks),t);return e.plugins?.forEach(e=>n.use(e)),e.init?.forEach(e=>e&&n.push(e)),n}var yr=`usehead`;function br(){if(m()){let e=v(yr);if(e)return e}throw Error(`useHead() was called without provide context, ensure you call it through the setup() function.`)}function xr(e){return{install(t){t.config.globalProperties.$unhead=e,t.config.globalProperties.$head=e,t.provide(yr,e)}}.install}function Sr(e,t){return t&&typeof e==`function`&&(e.key=t),e}var Cr=/\\/g,wr=/</g,Tr=/"/g,Er=/%\w+(?:\.\w+)?/g,Dr=`%separator`;function Or(e,t,n=!1){let r;if(t===`s`||t===`pageTitle`)r=e.pageTitle;else if(t.includes(`.`)){let n=t.indexOf(`.`);r=e[t.substring(0,n)]?.[t.substring(n+1)]}else r=e[t];if(r!==void 0)return n?(r||``).replace(Cr,`\\\\`).replace(wr,`\\u003C`).replace(Tr,`\\"`):r||``}function kr(e,t,n,r=!1){if(typeof e!=`string`||!e.includes(`%`))return e;let i=e;try{i=decodeURI(e)}catch{}let a=i.match(Er);if(!a)return e;let o=e.includes(Dr);return e=e.replace(Er,e=>{if(e===Dr||!a.includes(e))return e;let n=Or(t,e.slice(1),r);return n===void 0?e:n}).trim(),o&&(e=e.split(Dr).map(e=>e.trim()).filter(e=>e!==``).join(n?` ${n} `:` `)),e}var Ar=(e,t)=>e._w===t._w?e._p-t._p:e._w-t._w,jr=e=>e.includes(`:key`)?e:e.split(`:`).join(`:key:`),Mr=Sr({key:`aliasSorting`,hooks:{"tags:resolve":e=>{let t=!1;for(let n of e.tags){let r=n.tagPriority;if(!r)continue;let i=String(r);if(i.startsWith(`before:`)){let r=jr(i.slice(7)),a=e.tagMap.get(r);a&&(typeof a.tagPriority==`number`&&(n.tagPriority=a.tagPriority),n._p=a._p-1,t=!0)}else if(i.startsWith(`after:`)){let r=jr(i.slice(6)),a=e.tagMap.get(r);a&&(typeof a.tagPriority==`number`&&(n.tagPriority=a.tagPriority),n._p=a._p+1,t=!0)}}t&&(e.tags=e.tags.sort(Ar))}}}),Nr=Sr({key:`deprecations`,hooks:{"entries:normalize":({tags:e})=>{for(let t of e)t.props.children&&(t.innerHTML=t.props.children,delete t.props.children),t.props.hid&&(t.key=t.props.hid,delete t.props.hid),t.props.vmid&&(t.key=t.props.vmid,delete t.props.vmid),`body`in t.props&&(t.props.body&&(t.tagPosition=`bodyClose`),delete t.props.body),t.props.renderPriority!=null&&(t.tagPriority=t.props.renderPriority,delete t.props.renderPriority)}}});function X(e){return typeof e?.then==`function`}var Pr=256;function Fr(e,t){if(t===e.length)return;if(t===Pr){let n=Array(e.length),r=!1;for(;t<e.length;t++){let i=Z(e[t]);n[t]=i,r||=X(i)}return r?n:void 0}let n=Z(e[t]);if(X(n)){let r=Array(e.length);r[t]=n;for(let n=t+1;n<e.length;n++)r[n]=Z(e[n]);return r}let r=Fr(e,t+1);return r&&(r[t]=n),r}function Ir(e,t,n){if(n===t.length)return;if(n===Pr){let r=Array(t.length),i=!1;for(;n<t.length;n++){let a=Z(e[t[n]]);r[n]=a,i||=X(a)}return i?r:void 0}let r=Z(e[t[n]]);if(X(r)){let i=Array(t.length);i[n]=r;for(let r=n+1;r<t.length;r++)i[r]=Z(e[t[r]]);return i}let i=Ir(e,t,n+1);return i&&(i[n]=r),i}function Z(e){if(typeof e==`function`)return e;if(X(e))return Promise.resolve(e).then(Z);if(Array.isArray(e)){let t=Fr(e,0);return t?Promise.all(t):e}if(e?.constructor===Object){let t=Object.keys(e),n=Ir(e,t,0);if(n)return Promise.all(n).then(e=>Object.fromEntries(t.map((t,n)=>[t,e[n]])))}return e}var Lr=Sr(e=>{let t=new WeakMap;return{key:`promises`,hooks:{"entries:resolve":n=>{for(let r=n.entries.length-1;r>=0;r--){let i=n.entries[r],a=i.input;if(t.get(i)===a){n.entries.splice(r,1);continue}let o=Z(a);X(o)?(t.set(i,a),n.entries.splice(r,1),Promise.resolve(o).then(n=>{t.get(i)===a&&(t.delete(i),i.input=n,delete i._tags,e.invalidate?.())},()=>{t.get(i)===a&&t.delete(i)})):t.delete(i)}}}}},`promises`),Rr={meta:`content`,link:`href`,htmlAttrs:`lang`},zr=[`innerHTML`,`textContent`];function Br(e,t,n,r=!1){return typeof e==`string`&&e.includes(`%`)?kr(e,t,n,r):e}var Vr=Sr(e=>({key:`template-params`,hooks:{"tags:resolve":({tagMap:t,tags:n})=>{let r=t.get(`templateParams`)?.props||{},i=r.separator||`|`;delete r.separator,r.pageTitle=Br(r.pageTitle||e._title||``,r,i);for(let e of n){if(e.processTemplateParams===!1)continue;let t=Rr[e.tag];if(t&&typeof e.props[t]==`string`)e.props[t]=Br(e.props[t],r,i);else if(e.processTemplateParams||e.tag===`titleTemplate`||e.tag===`title`)for(let t of zr)typeof e[t]==`string`&&(e[t]=Br(e[t],r,i,e.tag===`script`&&typeof e.props.type==`string`&&e.props.type.endsWith(`json`)))}e._templateParams=r,e._separator=i},"tags:afterResolve":({tagMap:t})=>{let n=t.get(`title`);n?.textContent&&n.processTemplateParams!==!1&&(n.textContent=Br(n.textContent,e._templateParams,e._separator))}}}),`template-params`),Hr=Object.assign((e,t)=>_e(t)?xe(t):t,{_static:!0});function Ur(e,t={}){let n=t.head||br();return n.ssr?n.push(e||{},t):Wr(n,e,t)}function Wr(e,t,n={}){let r=ne();if(r&&!r.active)return{patch(){},dispose(){},_i:-1};let i=ue(!1);if(n.onRendered&&r){let e=n.onRendered;n={...n,onRendered:t=>r.run(()=>e(t))}}let a;return j(()=>{let r=i.value?{}:Gn(t,Hr);a?a.patch(r):a=e.push(r,n)}),_()&&(S(()=>{a.dispose()}),s(()=>{i.value=!0}),x(()=>{i.value=!1})),a}function Gr(e={}){let t=pr(),n,r=0;return n=vr({render:()=>{let e=++r;setTimeout(()=>{e===r&&t(n)},0)},...e}),n.install=xr(n),n}var Kr={disableDefaults:!0,plugins:[Nr,Lr,Vr,Mr]},qr=A({name:`nuxt:head`,enforce:`pre`,setup(e){wn(e,Gr(Kr))}}),Jr=/(:\w+)\([^)]+\)/g,Yr=/(:\w+)[?+*]/g,Xr=/:\w+/g,Zr=(e,t)=>t.path.replace(Jr,`$1`).replace(Yr,`$1`).replace(Xr,t=>e.params[t.slice(1)]?.toString()||``),Qr=(e,t)=>{let n=e.route.matched.find(t=>t.components?.default===e.Component.type),r=t??n?.meta.key??(n&&Zr(e.route,n));return typeof r==`function`?r(e.route):r},$r=(e,t)=>({default:()=>e?d(ve,e===!0?{}:e,t):t});function ei(e){return Array.isArray(e)?e:[e]}var ti=()=>({}),ni=()=>location.protocol+`//`+location.host;function ri(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),Ft(n,``)}return Ft(n,e)+r+i}function ii(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=ri(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){let{history:e}=window;e.state&&e.replaceState(V({},e.state,{scroll:lt()}),``)}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),{pauseListeners:c,listen:l,destroy:d}}function ai(e,t,n,r=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:null}}function oi(e){let{history:t,location:n}=window,r={value:ri(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:ni()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){let o=V({},t.state,ai(i.value.back,e,i.value.forward,!0),n,{position:i.value.position});a(e,o,!0),Ue(o.position,!0),r.value=e}function s(e,n){let o=V({},i.value,t.state,{forward:e,scroll:lt()});a(o.current,o,!0),a(e,V({},ai(r.value,e,null),{position:o.position+1},n),!1),Ue(o.position),r.value=e}return{location:r,state:i,push:s,replace:o}}function si(e){e=dt(e);let t=oi(e),n=ii(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=V({location:``,base:e,go:r,createHref:st.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var ci={type:0,value:``},li=/[a-zA-Z0-9_]/;function ui(e){if(!e)return[[]];if(e===`/`)return[[ci]];if(!Ke(e))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;)switch(c=e[s++],n){case 0:c===`\\`?(r=n,n=4):c===`/`?(l&&d(),o()):c===`:`?(d(),n=1):f();break;case 4:f(),n=r;break;case 1:c===`(`?n=2:li.test(c)?f():(d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case 2:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=3:u+=c;break;case 3:d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`)}return n===2&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var di=`[^/]+?`,fi={sensitive:!1,strict:!1,start:!0,end:!0},pi=/[.+*?^${}()[\]/\\]/g;function mi(e,t){let n=V({},fi,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(pi,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||di;if(u!==di){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(B(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=B(c)?c.join(`/`):c;if(!l){if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`)}n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function hi(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function gi(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=hi(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if(_i(r))return 1;if(_i(i))return-1}return i.length-r.length}function _i(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var vi={strict:!1,end:!0,sensitive:!1};function yi(e,t,n){let r=mi(ui(e.path),n),i=V(r,{record:e,parent:t,children:[],alias:[]});return t&&!i.record.aliasOf==!t.record.aliasOf&&t.children.push(i),i}function bi(e,t){let n=[],r=new Map;t=Ne(vi,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=Si(e);s.aliasOf=r&&r.record;let l=Ne(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(Si(V({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&!Ke(u)){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=yi(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!wi(d)&&o(e.name)),Oi(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:U}function o(e){if(Ae(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Ei(e,n);n.splice(t,0,e),e.record.name&&!wi(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw We(1,{location:e});s=i.record.name,a=V(xi(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&xi(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw We(1,{location:e,currentLocation:t});s=i.record.name,a=V({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:Ti(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function xi(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Si(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Ci(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Ci(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function wi(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ti(e){return e.reduce((e,t)=>V(e,t.meta),{})}function Ei(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;gi(e,t[i])<0?r=i:n=i+1}let i=Di(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Di(e){let t=e;for(;t=t.parent;)if(Oi(t)&&gi(e,t)===0)return t}function Oi({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function ki(e){let t=v(Je),n=v(qe),r=y(()=>{let n=O(e.to);return t.resolve(n)}),i=y(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(De.bind(null,i));if(o>-1)return o;let s=Pi(e[t-2]);return t>1&&Pi(i)===s&&a[a.length-1].path!==s?a.findIndex(De.bind(null,e[t-2])):o}),a=y(()=>i.value>-1&&Ni(n.params,r.value.params)),o=y(()=>i.value>-1&&i.value===n.matched.length-1&&ft(n.params,r.value.params));function s(n={}){if(Mi(n)){let n=t[O(e.replace)?`replace`:`push`](O(e.to)).catch(U);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:y(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function Ai(e){return e.length===1?e[0]:e}var ji=g({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:ki,setup(e,{slots:t}){let n=ie(ki(e)),{options:r}=v(Je),i=y(()=>({[Fi(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[Fi(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&Ai(t.default(n));return e.custom?r:d(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function Mi(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(e.button===void 0||e.button===0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Ni(e,t){for(let n in t){let r=t[n],i=e[n];if(B(r)){if(!B(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}else if(r!==i)return!1}return!0}function Pi(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var Fi=(e,t,n)=>e??t??n,Ii=g({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=v(ze),i=y(()=>e.route||r.value),a=v(it,0),o=y(()=>{let e=O(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),s=y(()=>i.value.matched[o.value]);C(it,y(()=>o.value+1)),C(bt,s),C(ze,i);let c=new Set;C(Ee,c);let u=ue(),f=q,{app:p}=_().appContext;return me(()=>[u.value,s.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!De(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=s.value,m=o&&o.components[a];if(!m)return Li(n.default,{Component:m,route:r});let h=o.props[a],g=h?h===!0?r.params:typeof h==`function`?h(r):h:null,_=e=>{e.component.isUnmounted&&(o.instances[a]=null)},v=e=>l(()=>{if(f===r||i.value!==r||e.el.getRootNode()!==p._container.getRootNode())return;let t=f;f=r;for(let e of c)e(r,t)}),y=d(m,V({},g,t,{onVnodeUnmounted:_,onVnodeMounted:v,onVnodeUpdated:v,ref:u}));return Li(n.default,{Component:y,route:r})||y}}});function Li(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var Ri=Ii;function zi(e){let t=e.matcher||bi(e.routes,e),n=e.parseQuery||Ie,r=e.stringifyQuery||Pe,i=e.history,a=R(),o=R(),s=R(),c=ae(q),u=ae(0),d=q;z&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let f=Ge.bind(null,e=>``+e),p=Ge.bind(null,Nt),m=Ge.bind(null,Ye);function h(e,n){let r,i;Ae(e)?(r=t.getRecordMatcher(e),i=n):i=e;let a=t.addRoute(i,r);return u.value++,()=>{a(),u.value++}}function g(e){let n=t.getRecordMatcher(e);n&&(t.removeRoute(n),u.value++)}function _(){t.clearRoutes(),u.value++}function v(){return t.getRoutes().map(e=>e.record)}function y(e){return!!t.getRecordMatcher(e)}function b(e,a){if(u.value,typeof e==`string`){a||=e.startsWith(`/`)?q:c.value;let r=Re(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return V(r,o,{params:m(o.params),redirectedFrom:void 0,href:s})}a=V({},a||(e.path!=null&&e.path.startsWith(`/`)&&!(`name`in e&&e.name)?q:c.value));let o;if(e.path!=null)o=V({},e,{path:Re(n,e.path,a.path).path});else{let t=V({},e.params);for(let e in t)t[e]??delete t[e];o=V({},e,{params:p(t)}),a.params=p(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=f(m(s.params));let d=Be(r,V({},e,{hash:kt(l),path:s.path})),h=i.createHref(d);return V({fullPath:d,hash:l,query:r===Pe?Fe(e.query):e.query||{}},s,{redirectedFrom:void 0,href:h})}function x(e){return typeof e==`string`?Re(n,e,c.value.path):V({},e)}function S(e,t){if(d!==e)return We(8,{from:t,to:e})}function ee(e){return T(e)}function C(e){return ee(V(x(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=x(i):{path:i},i.params={}),V({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=d=b(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,l=w(n,i);if(l)return T(V(x(l),{state:typeof l==`object`?V({},a,l.state):a,force:o,replace:s}),t||n);let u=n;u.redirectedFrom=t;let f;return!o&&Le(r,i,n)&&(f=We(16,{to:u,from:i}),ue(i,i,!0,!1)),(f?Promise.resolve(f):te(u,i)).catch(e=>H(e)?H(e,2)?e:le(e):se(e,u,i)).then(e=>{if(e){if(H(e,2))return T(V({replace:s},x(e.to),{state:typeof e.to==`object`?V({},a,e.to.state):a,force:o}),t||u)}else e=re(u,i,!0,s,a);return ne(u,i,e),e})}function E(e,t){let n=S(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=fe.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function te(e,t){let n,[r,i,s]=$e(e,t);n=jt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(J(r,e,t))});let c=E.bind(null,e,t);return n.push(c),F(n).then(()=>{n=[];for(let r of a.list())n.push(J(r,e,t));return n.push(c),F(n)}).then(()=>{n=jt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(J(r,e,t))});return n.push(c),F(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter){if(B(r.beforeEnter))for(let i of r.beforeEnter)n.push(J(i,e,t));else n.push(J(r.beforeEnter,e,t))}return n.push(c),F(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=jt(s,`beforeRouteEnter`,e,t,D),n.push(c),F(n))).then(()=>{n=[];for(let r of o.list())n.push(J(r,e,t));return n.push(c),F(n)}).catch(e=>H(e,8)?e:Promise.reject(e))}function ne(e,t,n){s.list().forEach(r=>D(()=>r(e,t,n)))}function re(e,t,n,r,a){let o=S(e,t);if(o)return o;let s=t===q,l=z?history.state:{};n&&(r||s?i.replace(e.fullPath,V({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,ue(e,t,n,s),le()}let k;function ie(){k||=i.listen((e,t,n)=>{if(!P.listening)return;let r=b(e),a=w(r,P.currentRoute.value);if(a){T(V(a,{replace:!0,force:!0}),r).catch(U);return}d=r;let o=c.value;z&&n.delta&&je(Oe(o.fullPath,n.delta)),te(r,o).catch(e=>H(e,12)?e:H(e,2)?(T(V(x(e.to),{force:!0}),r).then(e=>{H(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(U),Promise.reject()):(n.delta&&i.go(-n.delta,!1),se(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!H(e,8)?i.go(-n.delta,!1):n.type===`pop`&&H(e,20)&&i.go(-1,!1)),ne(r,o,e)}).catch(U)})}let A=R(),j=R(),M;function se(e,t,n){le(e);let r=j.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function ce(){return M&&c.value!==q?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function le(e){return M||(M=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function ue(t,n,r,i){let{scrollBehavior:a}=e;if(!z||!a)return Promise.resolve();let o=!r&&Ve(Oe(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return l().then(()=>a(t,n,o)).then(e=>t===c.value&&e&&Me(e)).catch(e=>t===c.value&&se(e,t,n))}let de=e=>i.go(e),N,fe=new Set,P={currentRoute:c,listening:!0,addRoute:h,removeRoute:g,clearRoutes:_,hasRoute:y,getRoutes:v,resolve:b,options:e,push:ee,replace:C,go:de,back:()=>de(-1),forward:()=>de(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:j.add,isReady:ce,install(e){e.component(`RouterLink`,ji),e.component(`RouterView`,Ri),e.config.globalProperties.$router=P,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>O(c)}),z&&!N&&c.value===q&&(N=!0,ee(i.location).catch(e=>{}));let t={};for(let e in q)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(Je,P),e.provide(qe,oe(t)),e.provide(ze,c);let n=e.unmount;fe.add(e),e.unmount=function(){fe.delete(e),fe.size<1&&(d=q,k&&k(),k=null,c.value=q,N=!1,M=!1),n()}}};function F(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return P}var Bi=_t(async e=>{if(!e.meta?.validate)return;let t=await Promise.resolve(e.meta.validate(e));if(t!==!0)return mt({fatal:!0,status:t&&(t.status||t.statusCode)||404,statusText:t&&(t.statusText||t.statusMessage)||`Page Not Found: ${e.fullPath}`,data:{path:e.fullPath}})}),Vi=e({docsBase:c,reporters:p}),Hi=`modulepreload`,Ui=function(e,t){return new URL(e,t).href},Wi={},Gi=function(e){return e.pathname.endsWith(`.css`)},Ki=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},Q=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=Ui(t,n);let r=s(t),i=Gi(r);return Ki(Wi,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:Hi,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},qi=Cn;function Ji(e){return ti(e)}var Yi;function Xi(){let e;return e=qi(xn(`builds/meta/${he().app.buildId}.json`),{responseType:`json`}).then(e=>{if(!e||typeof e!=`object`||!Array.isArray(e.prerendered))throw Vi.NUXT_E5004();return e}),Yi=e,e.catch(t=>{Yi===e&&(Yi=void 0),Vi.NUXT_E5002({cause:t})}),e}function Zi(){return Yi||Xi()}function Qi(e){let t=typeof e==`string`?e:e.path;try{return Ji(t)}catch(e){return Vi.NUXT_E5003({path:t,cause:e}),{}}}var $i=[Bi,_t(e=>{let t=Qi({path:e.path});if(t.redirect){let n=t.redirect.includes(`#`)?t.redirect:t.redirect+e.hash;return ot(n)?(window.location.href=n,!1):n}})],ea={},ta=[{name:`customize`,path:`/customize`,component:()=>Q(()=>import(`./DAxBBWm2.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]),import.meta.url)},{name:`reference`,path:`/reference`,component:()=>Q(()=>import(`./BClhblIx.js`),__vite__mapDeps([10,1,2,3,4,5,6]),import.meta.url)},{name:`report`,path:`/report`,component:()=>Q(()=>import(`./CUHATrYY.js`),__vite__mapDeps([11,1,2,3,4,5,8,9]),import.meta.url)},{name:`index`,path:`/`,component:()=>Q(()=>import(`./B_yYcKkt.js`),__vite__mapDeps([12,1,2,9,3,4,5,6,7,8]),import.meta.url)}],na=/\/(?=$|[?#])/;function ra(e,t,n){let{pathname:r,search:i,hash:a}=t,o=e.indexOf(`#`);if(o>-1){let t=a.includes(e.slice(o))?e.slice(o).length:1,n=a.slice(t);return n[0]!==`/`&&(n=`/`+n),ke(n,``)}let s=ke(r,e),c=!n||Xe(s,n)?s:n;return c+(c.includes(`?`)?``:i)+a}var ia=A({name:`nuxt:router`,enforce:`pre`,async setup(e){let t=he().app.baseURL,n=K.history?.(t)??si(t),r=K.routes?await K.routes(ta)??ta:ta,i,a=zi({...K,scrollBehavior:(e,t,n)=>{if(t===q)i=n;else if(K.scrollBehavior){if(a.options.scrollBehavior=K.scrollBehavior,`scrollRestoration`in window.history){let e=a.beforeEach(()=>{e(),window.history.scrollRestoration=`manual`})}return K.scrollBehavior(e,q,i||n)}},history:n,routes:r});`scrollRestoration`in window.history&&(window.history.scrollRestoration=`auto`),e.vueApp.use(a);let o=ae(a.currentRoute.value);a.afterEach((e,t)=>{o.value=t}),Object.defineProperty(e.vueApp.config.globalProperties,"previousRoute",{get:()=>o.value});let s=ra(t,window.location,e.payload.path),c=ke(window.location.pathname,t),l=ae(a.currentRoute.value),u=()=>{l.value=a.currentRoute.value};a.afterEach((e,t)=>{let n=e.matched.at(-1)?.components?.default,r=t.matched.at(-1)?.components?.default;n===r?Qr({route:e,Component:{type:n}})===Qr({route:t,Component:{type:r}})&&u():e.matched.length<t.matched.length&&e.matched.every((e,n)=>e.components?.default===t.matched[n]?.components?.default)&&u()});let d={sync:u};for(let e in l.value)Object.defineProperty(d,e,{get:()=>l.value[e],enumerable:!0});e._route=oe(d),e._middleware||={global:[],named:{}};let f=Qe();a.afterEach(async(t,n,r)=>{delete e._processingMiddleware,!e.isHydrating&&f.value&&await e.runWithContext(St),r&&await e.callHook(`page:loading:end`)}),a.onError(async()=>{delete e._processingMiddleware,await e.callHook(`page:loading:end`)});try{await a.isReady()}catch(t){await ht(e,t)}let p=s===a.currentRoute.value.fullPath?a.currentRoute.value:a.resolve(s),m=a.currentRoute.value.fullPath,h=e.isHydrating&&e.payload.prerenderedAt&&e.payload.path&&s.replace(na,``)!==e.payload.path.replace(na,``)&&Xe(a.currentRoute.value.path,e.payload.path);u();function g(r){!e.isHydrating&&r.fullPath!==ra(t,window.location)&&n.push(r.fullPath)}a.beforeEach(t=>{if(!e.isHydrating&&ti(t.path).noScripts)return window.location.assign(a.resolve(t.fullPath).href),!1}),a.beforeResolve(e=>{if(e.matched.length||Xe(e.path,c))return;let n=new URL(Mt(e.fullPath,t),window.location.href);if(n.origin===window.location.origin)return window.location.assign(n),!1});let _=e.payload.state._layout;return a.beforeEach(async(t,n)=>{await e.callHook(`page:loading:start`),t.meta=ie(t.meta),e.isHydrating&&_&&!ce(t.meta.layout)&&(t.meta.layout=_),e._processingMiddleware=!0;{let r=new Set([...$i,...e._middleware.global]);for(let e of t.matched){let t=e.meta.middleware;if(t)for(let e of ei(t))r.add(e)}let i=Qi({path:t.path});if(i.appMiddleware)for(let e in i.appMiddleware)i.appMiddleware[e]?r.add(e):r.delete(e);for(let i of r){let r=typeof i==`string`?e._middleware.named[i]||await ea[i]?.().then(e=>e.default||e):i;if(!r)throw pt.NUXT_E2004({entry:String(i),validMiddleware:void 0});try{let i=await e.runWithContext(()=>r(t,n));if(!e.payload.serverRendered&&e.isHydrating&&(i===!1||i instanceof Error)){let t=i||mt({status:404,statusText:`Page Not Found: ${s}`});return await e.runWithContext(()=>G(t)),!1}if(i===!0)continue;if(i===!1)return i;if(i)return ut(i)&&i.fatal&&(await e.runWithContext(()=>G(i)),g(t)),i}catch(n){let r=mt(n);return r.fatal&&(await e.runWithContext(()=>G(r)),g(t)),r}}}}),a.afterEach(t=>{if(t.matched.length===0&&!f.value)return e.runWithContext(()=>G(mt({status:404,fatal:!1,statusText:`Page not found: ${t.fullPath}`,data:{path:t.fullPath}})))}),e.hooks.hookOnce(`app:created`,async()=>{try{if(`name`in p&&(p.name=void 0),a.currentRoute.value.fullPath===m){if(h){let t=a.resolve(e.payload.path);`name`in t&&(t.name=void 0),await a.replace({...t,force:!0});let n=()=>{e[`~restoreDeferredRoute`]&&(e[`~restoreDeferredRoute`]=void 0,a.currentRoute.value=a.resolve(s),u(),a.replace({...p,force:!0}).catch(()=>{}))};e[`~restoreDeferredRoute`]=n,e.hooks.hookOnce(`app:suspense:resolve`,n)}else await a.replace({...p,force:!0})}a.options.scrollBehavior=K.scrollBehavior}catch(t){await ht(e,t)}}),{provide:{router:a}}}}),aa=A(()=>{let e=W();Ct(()=>{e.beforeResolve(async()=>{await new Promise(e=>{setTimeout(e,100),requestAnimationFrame(()=>{setTimeout(e,0)})})})})}),oa=A(e=>{let t;async function n(){let r;try{r=await Zi()}catch(e){let t=e;if(!(`status`in t&&(t.status===404||t.status===403)))throw t}t&&clearTimeout(t),t=setTimeout(n,k);try{let n=await Cn(xn(`builds/latest.json`)+`?${Date.now()}`);n.id!==r?.id&&(e.hooks.callHook(`app:manifest:update`,n),t&&clearTimeout(t))}catch{}}Ct(()=>{t=setTimeout(n,k)})});function sa(e={}){let t=e.path||window.location.pathname,n=new URL(t,window.location.href);if(n.host!==window.location.host)throw pt.NUXT_E2010({path:t});if(n.protocol&&At(n.protocol))throw pt.NUXT_E2002({toPath:t,protocol:n.protocol});let r={};try{r=JSON.parse(sessionStorage.getItem(`nuxt:reload`)||`{}`)}catch{}if(e.force||r?.path!==t||r?.expires<Date.now()){try{sessionStorage.setItem(`nuxt:reload`,JSON.stringify({path:t,expires:Date.now()+(e.ttl??1e4)}))}catch{}if(e.persistState)try{sessionStorage.setItem(`nuxt:reload:state`,JSON.stringify({state:N().payload.state}))}catch{}window.location.pathname===t?window.location.reload():window.location.href=t}}var ca=A({name:`nuxt:chunk-reload-crawler`,setup(e){let t=!0;e.hooks.hookOnce(`app:suspense:resolve`,()=>{t=!1}),e.hook(`app:chunkError`,()=>{t&&yt(navigator.userAgent)&&sa()})}}),la=A({name:`nuxt:chunk-reload`,setup(e){let t=W(),n=he(),r=new Set;t.beforeEach(()=>{r.clear()}),e.hook(`app:chunkError`,({error:e})=>{r.add(e)});function i(e){sa({path:et(n.app.baseURL,e.fullPath),persistState:!0})}e.hook(`app:manifest:update`,()=>{t.beforeResolve(i)}),t.onError((e,t)=>{r.has(e)&&i(t)})}}),ua=A({name:`nuxt:island-link-navigation`,setup(e){}}),da=A({name:`nuxt:global-components`}),fa={},pa=[`route`,`payload`,`island`,`hint`],ma=12,ha={route:8,payload:8,island:4,hint:8};function ga(e={}){let t={...ha,...e.concurrency},n=e.total??ma,r=e.canPrefetch,i=e.defer,a={route:[],payload:[],island:[],hint:[]},o=pa.map(e=>a[e]),s=new WeakSet,c=new Map,l={route:0,payload:0,island:0,hint:0},u=0,d=new Map,f=new AbortController,p=new AbortController;p.abort();function m(e){c.get(e.key)===e&&c.delete(e.key)}function h(e){m(e),Promise.resolve().then(()=>e.run(p.signal,!1)).catch(()=>{})}function g(){if(!r||r())for(;u<n;){let e=pa.find(e=>a[e].length&&l[e]<t[e]);if(!e)return;let n=a[e].shift();_(n,s.delete(n))}}function _(e,t){let n=e.scope===`app`?f:new AbortController;e.scope===`navigation`&&d.set(e,n),l[e.priority]++,u++;let r=!1,a=()=>{r||(r=!0,l[e.priority]--,u--,d.delete(e),m(e),g())};n.signal.addEventListener(`abort`,a,{once:!0});let o=()=>Promise.resolve().then(()=>e.run(n.signal,t)).then(a,a);i?i(o,t,e.priority):o()}let v=(e,t)=>t!==void 0&&e.group===t&&e.priority!==`hint`;return{schedule(e){let t=[];for(let n of Array.isArray(e)?e:[e])c.has(n.key)?h(n):(c.set(n.key,n),t.push(n));for(let e=t.length-1;e>=0;e--)a[t[e].priority].unshift(t[e]);g()},promote(e){for(let t of o){let n=[],r=[];for(let i of t)i.group===e&&s.add(i),(i.group===e?n:r).push(i);t.length=0,t.push(...n,...r)}g()},reset(e){for(let t of o)for(let n=t.length-1;n>=0;n--){let r=t[n];r.scope===`navigation`&&!v(r,e)&&(t.splice(n,1),h(r))}for(let[t,n]of[...d])v(t,e)||n.abort();g()},resume:g}}var _a=1e3;function va(e,t,n){if(t||n===`route`)return e();let r=globalThis.scheduler;r?.postTask?r.postTask(e,{priority:`background`}).catch(()=>{}):tt(e,{timeout:_a})}function ya(e=N()){if(e._prefetch)return e._prefetch;let t=!1,n=ga({canPrefetch:()=>Ze()&&!t&&document.visibilityState!==`hidden`,defer:va});e._prefetch=n,navigator.connection?.addEventListener?.(`change`,()=>n.resume()),document.addEventListener(`visibilitychange`,()=>n.resume());let r=e.$router;return r.beforeEach(()=>{t=!0}),r.afterEach(e=>{t=!1,n.reset(gt(e.fullPath))}),r.onError(()=>{t=!1,n.resume()}),n}var ba=A({name:`nuxt:prefetch`,setup(e){let t=W();e.hooks.hook(`app:mounted`,()=>{t.beforeEach(async e=>{let t=e?.meta?.layout;typeof t==`string`&&t in fa&&await xt(fa[t])})});let{schedule:n}=ya(e);e.hooks.hook(`link:prefetch`,async e=>{if(ct(e))return;let r=t.resolve(e);if(!r)return;let i=r.meta.layout,a=ei(r.meta.middleware).filter(e=>typeof e==`string`);n({key:`route:chunks:${e}`,priority:`route`,scope:`navigation`,group:gt(e),run:e=>{if(e.aborted)return;let t=[];for(let e of a){let n=ea[e];typeof n==`function`&&t.push(n())}return typeof i==`string`&&i in fa&&t.push(xt(fa[i])),Promise.all(t).catch(()=>{})}})})}}),xa=A(()=>{}),Sa=e({docsBase:c,reporters:p});function Ca(e){let t=e||N();return t.ssrContext?.head||t.runWithContext(()=>{if(m()){let e=v(`usehead`);if(!e)throw Sa.NUXT_E6001();return e}})}function wa(e,t={}){return Ur(e,{head:t.head||Ca(t.nuxt),...t})}var Ta=A(()=>{let e=he().app.baseURL;wa({style:[{key:`furifont-faces`,innerHTML:Rt.map(t=>`@font-face{font-family:"${t.family}";font-display:swap;font-weight:250 900;ascent-override:88%;descent-override:12%;line-gap-override:0%;src:url("${e}${Vt(t,`woff2`)}") format("woff2")}`).join(`
|
|
3
|
+
`)}]})}),Ea=[{code:`en`,name:`English`},{code:`ja`,name:`日本語`},{code:`zh-Hans`,name:`简体中文`},{code:`zh-Hant`,name:`繁體中文`}],Da=`furifont:locale`;function Oa(e){return Ea.some(t=>t.code===e)}function ka(e){for(let t of e.map(e=>e.toLowerCase())){if(t.startsWith(`zh`))return/-(?:tw|hk|mo|hant)\b/.test(t)?`zh-Hant`:`zh-Hans`;if(t.startsWith(`ja`))return`ja`;if(t.startsWith(`en`))return`en`}return`en`}var Aa={meta:{title:`Furifont: furigana built into the font`,description:`A Japanese font that shows furigana by itself.`},nav:{demo:`Intro`,docs:`Docs`,customize:`Customize`,report:`Report`,github:`GitHub repository`,light:`Switch to light`,dark:`Switch to dark`,language:`Language`,rubyOff:`Hide the ruby`,rubyOn:`Show the ruby`},footer:{fonts:`The fonts use the {license}. They come from Source Han Sans and Source Han Serif.`,data:`The readings come from {jmdict}, {jmnedict}, {kanjidic} (EDRDG), {furigana}, {japanpost} (place names) and {desktoptetsu} (JR stations). They use the CC BY-SA 4.0 license.`,code:`The tools use the MIT license.`,report:`Report a wrong reading`,source:`Source on GitHub`,made:`Made by {author}`,supported:`Supported by {vercel} and {sponsors}`,sponsors:`sponsors`},copied:`Copied`,shuffle:`Show another sample`,editable:`Sample text. You can edit it.`,scripts:{hiragana:`Hiragana`,hepburn:`Romaji`},faces:{sans:`Sans`,serif:`Serif`},hero:{title1:`Furigana,`,title2:`set by the font.`,body:`Furifont is a Japanese font that shows furigana on the font itself. With the ligatures to adopt to pronunciation of words. Works everywhere supporting custom fonts.`,download:`Download the fonts`,build:`Build your own`},notice:`Furigana might be incorrect due to the limits of fonts, so keep that in mind.`,sections:{try:`Try it`,how:`How it works`,selectors:`Choosing a reading`,download:`Download`,anyPage:`On Websites`},playground:{script:`Ruby letters`,face:`Font style`,size:`Size / {size}px`,weight:`Weight / {weight}`,ruby:`Furigana`,okurigana:`Okurigana readings`,okuriganaHint:`This requires JavaScript. Font cannot handle okurigana due to browser's limitations.`,textHint:`Click the text to edit it.`,copy:`Copy the text`},how:{build:{title:`Customized build`,body:`Furifont is compiled from a base font, Source Han Sans or Serif. A build step reads a dictionary of thousands of words and draws the ruby into new glyphs. The result is a normal font file. It needs no JavaScript and no plugin.`},ligatures:{title:`Ligatures do the work`,body:`For each word, the font holds a ligature. For example, 今日 becomes one glyph with きょう above it. The swap happens when the text is drawn, so the text itself does not change.`},longest:{title:`Longest word first`,body:`Furifont compares each group of kanji with a list of thousands of common words. It tries the longest word first. For example, it picks 日本語 before 日本. It reads 今日 as one word, きょう.`},bare:{title:`No ruby when unsure`,body:`A single kanji gets ruby only when one reading is clearly the most likely. 大人気 can be read だいにんき or おとなげ, so Furifont shows no ruby.`},okurigana:{title:`Opt-in Okurigana`,body:`Browsers shape each font script separately, so the font cannot see the kana after a kanji (which is called okurigana). We provide optional support for it through JavaScript annotation.`}},selectors:{body:`Some words have more than one common reading. Furifont shows the most common one. To choose another, put a variation selector (an invisible character) right after the first kanji. VS226 gives reading 1, VS227 gives reading 2, and so on. VS225 removes the ruby.`,lookUp:`Look up readings`,default:`Default`,reading2:`Reading 2 (VS227)`,none:`No ruby (VS225)`},downloads:{all:`Download all as zip`,family:`Family`,ruby:`Ruby`,variable:`Variable`,formats:`OTF and TTF are commonly used for installing on your computer. WOFF2 is optimized for websites. We recommend the variable fonts for the best experience. In some cases you may need the static weights for compatibility.`,buildOwn:`Or build your own font. You can choose another base font, a list with fewer or more words, other ruby letters, or other sizes.`},anyPage:{body:`You can use Furifont on any website. Lines with kanji get extra space for the ruby. If Furifont is installed on your computer, nothing downloads. If it is not, the font loads from this site.`,bookmarklet:`Bookmarklet`,bookmarkletHint:`Drag it to your bookmarks bar. On any page, click it to turn Furifont on. Click it again to turn Furifont off. Some sites, such as X and GitHub, do not let fonts load from other sites. On those sites, install Furifont on your computer.`,okurigana:`Okurigana readings`,okuriganaHint:`Picks the right reading of a kanji before its okurigana, such as 来 in 来る and 来ない.`,userscript:`Userscript`,install:`Install the userscript`,userscriptHint:`This works with Tampermonkey or Violentmonkey (browser add-ons that run small scripts). It turns Furifont on by itself on Japanese pages. It also works on sites that do not let fonts load from other sites. Its menu lets you switch to another Furifont font or turn it off.`,toast:{message:`Furifont could not load its font on this page. Some sites, such as X and GitHub, do not let fonts load from other sites. On those sites, you must install Furifont on your computer.`,download:`Download the fonts`,close:`Close`,outdated:`A newer version of Furifont is out.`,userscript:`Update the userscript`,bookmarklet:`Get the new bookmarklet`},menu:{okuriganaOn:`Okurigana readings: on`,okuriganaOff:`Okurigana readings: off`}},reference:{eyebrow:`Reference`,title:`Pick a reading`,body:`Furifont shows the most common reading of a word. To show another reading, put a variation selector (an invisible character) right after the first kanji of the word. VS226 gives reading 1, VS227 gives reading 2, and so on. After a single kanji, the selector chooses the reading of that kanji. VS225 shows the kanji with no ruby.`,search:`Search a word or kanji: 市場, 今日, 生`,searchLabel:`Search readings`,hint:`Click a reading to copy the word with its selector.`,unavailable:`The reference comes with the ready-made fonts, and it could not load here ({error}). Build the fonts with {command}, or open Customize.`,loading:`Loading`,words:`Words with several readings / {count}`,kanji:`Kanji / {count}`,copyWith:`Copy {text} with {selector}`,default:`default`},report:{eyebrow:`Report`,title:`Report a wrong reading`,body:`Did Furifont show the wrong furigana, or none where a word needs it? Tell us the words and the readings they should have. You can report several words at once. We go through the reports to fix the dictionary.`,link:`Report a wrong reading.`,sections:{words:`Words / {count}`,environment:`Where you saw it`,note:`Anything else`},word:`Word`,expected:`Correct reading`,shown:`Reading shown (optional)`,context:`Sentence (optional)`,remove:`Remove {word}`,add:`Add another word`,environment:`Environment`,environments:{playground:`The playground on this site`,website:`Another website`,desktop:`Desktop app`,mobile:`Mobile app`},family:`Font`,familyAny:`(Any)`,url:`Page address (optional)`,app:`App (optional)`,appPlaceholder:{desktop:`Word, Pages, VS Code`,mobile:`Notes, Kindle`},os:`System (optional)`,notePlaceholder:`Anything that helps, for example the browser, or why the reading is wrong.`,name:`Your name (optional)`,nameHint:`To credit you when the reading is fixed. Leave it empty to stay anonymous.`,send:`Send the report`,sending:`Sending`,sent:`Thanks for your report.`,again:`Report more words`,failed:`The report could not be sent. Try again later.`,limited:`You sent many reports in a short time. Try again in an hour.`,privacy:`We store what you enter here, the font version and your browser name. We do not store your IP address.`},docs:{install:`Install the font`,website:`Use on your website`,readings:`Choose a reading`},customize:{connecting:`Connecting to furifont dev`,title:`Customize`,offline:{eyebrow:`Customize / offline`,title:`Build your own Furifont`,body:`Customize is a tool that runs on your computer. It reads your base fonts and saves the fonts that it builds. Start it in any folder. Then this page opens with a live preview, the dictionary, and a Build button. The new fonts go in {folder}.`,needs:`You need Node 22.18 or later (a free program that runs JavaScript tools).`,run:`Start Customize in any folder`},auth:{eyebrow:`Customize / locked`,title:`Enter the code from your terminal`,body:`{command} showed a six-digit code in your terminal (the window where you started it).`,code:`Code`,failed:`That code did not work. Check the terminal and try again.`,unlock:`Unlock`},sections:{preview:`Preview`,build:`Build`,dictionary:`Dictionary`,words:`Your words`},options:{family:`Font name`,base:`Base font`,baseHint:`The font to add ruby to. Use a font to download, such as Source Han Serif JP Bold, or the path to another font file on your computer.`,script:`Ruby letters`,hiragana:`Hiragana`,katakanaOn:`Kata on`,hepburn:`Romaji`,skip:`Skip the most common words`,skipHint:`Of the words left, the most common get no ruby, because a reader already knows them. Words and single kanji are sorted by how common they are, in steps of 500.`,words:`Then add ruby to`,wordsHint:`The next words, the most common first. In all, {count} words get ruby.`,jlpt:`Skip JLPT words`,jlptHint:`Words on the JLPT lists (for the Japanese-Language Proficiency Test) up to this level get no ruby. N5 is the easiest level.`,none:`None`,all:`All`,sources:`Take words from`,source:{jmdict:{name:`All JMdict words`,hint:`JMdict: every word, including those no list ranks, such as 四字熟語. Those fill the text nothing else matches, and add about 700 KB to the font.`},ichi:{name:`Basic words`,hint:`JMdict "ichi1" and "ichi2": words from the Ichimango list (a list of basic words).`},news:{name:`Newspaper words`,hint:`JMdict "news1" and "news2": the 24,000 words that appear most often in newspapers.`},spec:{name:`Everyday words`,hint:`JMdict "spec1" and "spec2": common words that the other lists miss, such as 日本.`},gai:{name:`Loanwords`,hint:`JMdict "gai1" and "gai2": common words that Japanese borrowed from other languages.`},nf:{name:`Newspaper ranking`,hint:`JMdict "nf01" to "nf48": the words the newspaper list ranks, 500 words a step.`},tatoeba:{name:`Tatoeba sentences`,hint:`Tatoeba: words that its example sentences use three times or more, such as 留守中, even when no list above has them.`},place:{name:`Place names`,hint:`JMnedict: stations and places. Furifont uses them where no common word matches the text.`},"mahjong-yaku":{name:`Mahjong yaku`,hint:`Names of the scoring hands and tiles of mahjong, such as 立直. Furifont uses them where no common word matches the text.`},"jr-stations":{name:`JR stations`,hint:`Names of JR stations, such as 阿蘇, from the Desktop Tetsu list. Furifont uses them where no common word matches the text.`},yojijukugo:{name:`Four-character idioms`,hint:`JMdict: yojijukugo, such as 阿鼻叫喚. Furifont uses them where no common word matches the text.`},"japan-post":{name:`Municipalities and towns`,hint:`Names of municipalities and towns, such as 一宮, from Japan Post's postal code data. Furifont uses them where no common word matches the text.`}},isolated:`Ruby on single kanji`,share:`Single kanji: how sure`,shareHint:`A single kanji gets ruby only when one reading makes up at least this share of its uses in the dictionary. Use a number from 0.5 to 1. A higher number gives ruby to fewer kanji.`,rubyScale:`Ruby size (× kanji)`,rubyGap:`Space above kanji (em)`,squeeze:`Narrowest squeeze (× normal)`,maxWidth:`Widest ruby (em)`,reset:`Reset to defaults`,resetHint:`Go back to the settings that Customize loaded. Your words stay.`},preview:{compiling:`Making a preview`,weight:`Preview weight`,size:`Preview size`,stats:`{glyphs} glyphs / {ms} ms`},build:{words:`Words`,places:`Places`,ambiguous:`Several readings`,lone:`Single kanji`,protected:`Your changes`,glyphs:`Ruby glyphs`,rules:`Rules`,planning:`Planning`,estimate:{woff2:`≈ {size} WOFF2`,otf:`{size} OTF`},formats:`Formats`,estimating:`Estimating the size`,run:`Build font`,save:`Save settings`},dictionary:{search:`Search the dictionary: 今日, 生`,results:`{count} words`,hint:`These words have several common readings. Pin one to make it the default reading.`,noTag:`not a common word`,restore:`Restore`,remove:`Never add ruby`},custom:{placeholder:`日[に]本[ほん] or 今日[きょう]`,label:`Word to add`,add:`Add word`,added:`Added / {count}`,pinned:`Pinned / {count}`,removed:`Never given ruby / {count}`,none:`None`,takeOut:`Remove {item}`}}},ja=Aa,Ma={en:async()=>Aa,ja:async()=>(await Q(async()=>{let{default:e}=await import(`./CHjPDtV4.js`);return{default:e}},[],import.meta.url)).default,"zh-Hans":async()=>(await Q(async()=>{let{default:e}=await import(`./B2JUvp84.js`);return{default:e}},[],import.meta.url)).default,"zh-Hant":async()=>(await Q(async()=>{let{default:e}=await import(`./Kki0DvjP.js`);return{default:e}},[],import.meta.url)).default},Na=[qr,ia,aa,oa,ca,la,ua,da,ba,xa,Ta,A(async e=>{let t=localStorage.getItem(Da),n=Oa(t)?t:ka(navigator.languages);e.vueApp.use(Bt({legacy:!1,locale:n,fallbackLocale:`en`,messages:{en:ja,[n]:await Ma[n]()}}))})];function Pa(e=_()){let t=e;t&&!t.sp&&(t.sp=[])}function Fa(){let{locale:e,availableLocales:t,setLocaleMessage:n}=Ht();return y({get:()=>e.value,set:async r=>{Oa(r)&&(t.includes(r)||n(r,await Ma[r]()),e.value=r,localStorage.setItem(Da,r))}})}var Ia=[`title`],La=[`aria-label`],Ra=[`value`,`lang`],za=Object.assign(g({__name:`AppLanguageSelect`,setup(e){let t=Fa();return(e,n)=>(w(),a(`label`,{class:`btn-ghost relative w-9 cursor-pointer px-0 focus-within:outline-2 focus-within:outline-[var(--ff-fg)] focus-within:outline-offset-2`,title:e.$t(`nav.language`)},[n[1]||=i(`span`,{class:`i-ph-translate pointer-events-none`},null,-1),fe(i(`select`,{"onUpdate:modelValue":n[0]||=e=>_e(t)?t.value=e:null,"aria-label":e.$t(`nav.language`),class:`no-ruby absolute inset-0 size-full cursor-pointer appearance-none rounded-none opacity-0 outline-none`},[(w(!0),a(E,null,T(`LOCALES`in e?e.LOCALES:O(Ea),e=>(w(),a(`option`,{key:e.code,value:e.code,lang:e.code},u(e.name),9,Ra))),128))],8,La),[[Ce,O(t)]])],8,Ia))}}),{__name:`AppLanguageSelect`}),Ba=e({docsBase:c,reporters:p}),Va=`$s`;function Ha(...e){let t=typeof e[e.length-1]==`string`?e.pop():void 0;typeof e[0]!=`string`&&e.unshift(t);let[n,r]=e;if(!n||typeof n!=`string`)throw Ba.NUXT_E7009({key:n});if(r!==void 0&&typeof r!=`function`)throw Ba.NUXT_E7007({type:typeof r});let i=Va+n,a=N(),o=ye(a.payload.state,i);if(r&&(a._state[i]??={_default:r}),o.value===void 0&&r){let e=r();if(_e(e))return a.payload.state[i]=e,o;o.value=e}return o}var Ua=`furifont:dark`;function Wa(){let e=Ha(`dark-mode`,()=>{let e=localStorage.getItem(Ua);return e?e===`true`:matchMedia(`(prefers-color-scheme: dark)`).matches});j(()=>document.documentElement.classList.toggle(`dark`,e.value));function t(){e.value=!e.value,localStorage.setItem(Ua,String(e.value))}return{dark:F(e),toggle:t}}var Ga=Sn(`/logo.svg`),Ka={class:`sticky top-0 z-10 border-b border-base bg-base`},qa={class:`relative mx-auto flex h-14 max-w-6xl items-center gap-3 border-x border-base px-3 sm:gap-6 sm:px-6`},Ja=[`href`,`target`],Ya={class:`flex items-center gap-1`},Xa={class:`ml-auto flex items-center gap-1`},Za=[`href`],Qa=[`href`,`aria-label`],$a=[`aria-label`],eo=Object.assign(g({__name:`AppHeader`,setup(e){let{dark:t,toggle:r}=Wa(),o=[{to:`/`,label:`nav.demo`}];return o.push({to:`/customize`,label:`nav.customize`}),o.push({to:`/report`,label:`nav.report`,class:`hidden sm:block`}),(e,s)=>{let c=Wt,l=Tt,d=za;return w(),a(`header`,Ka,[i(`nav`,qa,[M(c,{class:`-bottom-[6px] -left-[6px]`}),M(c,{class:`-bottom-[6px] -right-[6px]`}),i(`a`,{href:`SITE`in e?e.SITE:O(zt),target:O(`_blank`),class:`focus-ring flex items-center gap-2.5 font-mono text-sm font-medium`},[i(`img`,{src:Ga,alt:``,class:L([`size-6`,{invert:O(t)}]),"aria-hidden":`true`},null,2),s[1]||=i(`span`,{class:`hidden sm:inline`},`furifont`,-1)],8,Ja),i(`div`,Ya,[(w(),a(E,null,T(o,t=>M(l,{key:t.to,to:t.to,class:L([t.class,`focus-ring whitespace-nowrap px-1 py-1 font-mono text-xs uppercase tracking-[0.04em] color-muted transition-colors hover:color-base sm:px-2 sm:tracking-[0.12em]`]),"active-class":`!color-base`},{default:D(()=>[n(u(e.$t(t.label)),1)]),_:2},1032,[`to`,`class`])),64))]),i(`div`,Xa,[i(`a`,{href:`RELEASE_URL`in e?e.RELEASE_URL:O(Ut),target:`_blank`,rel:`noopener`,class:`focus-ring hidden px-1 py-1 font-mono text-xs color-muted transition-colors hover:color-base sm:block`},`v`+u(`VERSION`in e?e.VERSION:O(Lt)),9,Za),M(d),i(`a`,{href:`REPOSITORY`in e?e.REPOSITORY:O(It),target:`_blank`,rel:`noopener`,class:`btn-ghost focus-ring hidden w-9 px-0 sm:inline-flex`,"aria-label":e.$t(`nav.github`)},[...s[2]||=[i(`span`,{class:`i-ph-github-logo`},null,-1)]],8,Qa),i(`button`,{type:`button`,class:`btn-ghost focus-ring w-9 px-0`,"aria-label":O(t)?e.$t(`nav.light`):e.$t(`nav.dark`),onClick:s[0]||=(...e)=>O(r)&&O(r)(...e)},[i(`span`,{class:L(O(t)?`i-ph-sun`:`i-ph-moon`)},null,2)],8,$a)])])])}}}),{__name:`AppHeader`}),to=(e=`RouteProvider`)=>g({name:e,props:{route:{type:Object,required:!0},vnode:Object,vnodeRef:Object,renderKey:String,trackRootNodes:Boolean,routeRecord:Object},setup(e){let t=e.renderKey,n=e.route,r={};for(let i in e.route)Object.defineProperty(r,i,{get:()=>t===e.renderKey?e.route[i]:n[i],enumerable:!0});return C(rt,oe(r)),()=>e.vnode?d(e.vnode,{ref:e.vnodeRef}):e.vnode}}),no=to(),ro=new WeakMap,io=g({name:`NuxtPage`,inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t,slots:n,expose:r}){let i=N(),a=ue(),o=v(rt,null),s=new Set,c;r({pageRef:a});let u=v(Ot,null),f,p=i.deferHydration(),m=!1,h=!1,g,_=0;if(i.isHydrating){let e=i.hooks.hookOnce(`app:error`,p),t=W().beforeEach(()=>{e(),t()})}e.pageKey&&me(()=>e.pageKey,(e,t)=>{e!==t&&i.callHook(`page:loading:start`)});let y=!1;{let e=W().beforeResolve(()=>{y=!1});S(()=>{e(),p()})}return()=>d(Ri,{name:e.name,route:e.route,...t},{default:so(t=>{let r=ao(o,t.route,t.Component),v=o&&o.matched.length===t.route.matched.length;if(!t.Component)return f&&!v&&!lo(f)?f:(p(),e.transition??t.route.meta.pageTransition??!1?vt(nt([e.transition,t.route.meta.pageTransition,!1]),null).default():void 0);if(f&&u&&!lo(f)&&!u.isCurrent(t.route))return f;if(r&&o&&(!u||u?.isCurrent(o)))return(v||f)&&!lo(f)?f:null;let b=Qr(t,e.pageKey),x=oo(o,t.route,t.Component);!i.isHydrating&&c===b&&!x&&l(()=>{y||(y=!0,i.callHook(`page:loading:end`))}),m&&c!==b&&h&&_++,c=b;let S=!!(e.transition??t.route.meta.pageTransition??!1),ee=S&&nt([e.transition,t.route.meta.pageTransition,!1,{onAfterLeave(){Dt(i),i.callHook(`page:transition:finish`,t.Component)}}]),C=e.keepalive??t.route.meta.keepalive??!1,w=t.Component.type,T=w.name||w.__name;t.route.meta.keepalive&&T&&s.add(T);let E;if(s.size>0&&e.keepalive==null&&(!C||typeof C==`object`&&C&&C.include)){let e=typeof C==`object`&&C?{...C}:{},t=e.include?Array.isArray(e.include)?e.include:[e.include]:[];E={...e,include:Array.from(new Set([...t,...s]))}}else E=C;return f=vt(S&&ee,$r(E,d(be,{key:_,suspensible:!0,onPending:()=>{m=!0,S&&at(i),g=i.callHook(`page:start`,t.Component)},onResolve:async()=>{m=!1,h=!0,i.isHydrating&&i[`~restoreDeferredRoute`]?.();try{await l(),i._route.sync?.(),await g,await i.callHook(`page:finish`,t.Component),!y&&!x&&(y=!0,await i.callHook(`page:loading:end`))}finally{p()}}},{default:()=>{let e={key:b||void 0,vnode:n.default?co(n.default,t):t.Component,route:t.route,renderKey:b||void 0,trackRootNodes:S,vnodeRef:a,routeRecord:void 0};if(!E)return d(no,e);let r=w,i=ro.get(r);return i||(i=to(T),ro.set(r,i)),d(i,e)}}))).default(),f})})}});function ao(e,t,n){if(!e)return!1;let r=t.matched.findIndex(e=>e.components?.default===n?.type);if(r===-1)return!1;let i=t.matched.slice(0,r).filter(e=>e.components?.default);if(!i.length)return!1;let a=e.matched.filter(e=>e.components?.default);return i.some((e,t)=>e.components?.default!==a[t]?.components?.default)||n&&Qr({route:t,Component:n})!==Qr({route:e,Component:n})}function oo(e,t,n){return e?t.matched.findIndex(e=>e.components?.default===n?.type)<t.matched.length-1:!1}function so(e){let t=(t=>{let n=e(t);return Array.isArray(n)?n:n==null||!Se(n)?[b()]:[n]});return t._n=!0,t}function co(e,t){let n=e(t);return n.length===1?d(n[0]):d(E,void 0,n)}function lo(e){return!!e&&(!!e.suspense?.isUnmounted||!!e.component?.isUnmounted)}var uo={class:`border-t border-base text-xs color-muted`},fo={class:`relative mx-auto max-w-6xl border-x border-base`},po={class:`flex flex-wrap items-center justify-between gap-x-6 gap-y-3 px-6 py-5`},mo={class:`flex flex-wrap items-center gap-x-2`},ho={class:`flex flex-wrap items-center gap-x-4 gap-y-2`},go=[`href`],_o={class:`flex flex-col gap-3 border-t border-base px-6 py-5`},vo=[`href`],$=`underline underline-offset-3 hover:color-base`,yo=Object.assign(g({__name:`AppFooter`,setup(e){let r={jmdict:[`JMdict`,`https://www.edrdg.org/jmdict/j_jmdict.html`],jmnedict:[`JMnedict`,`https://www.edrdg.org/enamdict/enamdict_doc.html`],kanjidic:[`KANJIDIC2`,`https://www.edrdg.org/wiki/index.php/KANJIDIC_Project`],furigana:[`JmdictFurigana`,`https://github.com/Doublevil/JmdictFurigana`],japanpost:[`Japan Post`,`https://www.post.japanpost.jp/zipcode/download.html`],desktoptetsu:[`Desktop Tetsu`,`https://www.desktoptetsu.com/quiz/jr-stations.htm`]};return(e,o)=>{let s=Wt,c=t(`i18n-t`),l=Tt;return w(),a(`footer`,uo,[i(`div`,fo,[M(s,{class:`-left-[6px] -top-[6px]`}),M(s,{class:`-right-[6px] -top-[6px]`}),i(`div`,po,[i(`p`,mo,[M(c,{keypath:`footer.made`,tag:`span`},{author:D(()=>[i(`a`,{class:L($),href:`https://github.com/antfu`,target:`_blank`,rel:`noopener`},`@antfu`)]),_:1}),o[0]||=i(`span`,{"aria-hidden":`true`},`·`,-1),M(c,{keypath:`footer.supported`,tag:`span`},{vercel:D(()=>[i(`a`,{class:L($),href:`https://vercel.com`,target:`_blank`,rel:`noopener`},`▲ Vercel`)]),sponsors:D(()=>[i(`a`,{class:L($),href:`https://github.com/sponsors/antfu`,target:`_blank`,rel:`noopener`},u(e.$t(`footer.sponsors`)),1)]),_:1})]),i(`div`,ho,[M(l,{to:`/report`,class:`inline-flex items-center gap-1.5 hover:color-base`},{default:D(()=>[o[1]||=i(`span`,{class:`i-ph-flag`},null,-1),n(` `+u(e.$t(`footer.report`)),1)]),_:1}),i(`a`,{class:`inline-flex items-center gap-1.5 hover:color-base`,href:`REPOSITORY`in e?e.REPOSITORY:O(It),target:`_blank`,rel:`noopener`},[o[2]||=i(`span`,{class:`i-ph-github-logo`},null,-1),n(` `+u(e.$t(`footer.source`)),1)],8,go)])]),i(`div`,_o,[M(c,{keypath:`footer.fonts`,tag:`p`},{license:D(()=>[i(`a`,{class:L($),href:`https://openfontlicense.org`,target:`_blank`,rel:`noopener`},`SIL Open Font License`)]),_:1}),M(c,{keypath:`footer.data`,tag:`p`},se({_:2},[T(r,(e,t)=>({name:t,fn:D(()=>[i(`a`,{class:L($),href:e[1],target:`_blank`,rel:`noopener`},u(e[0]),9,vo)])}))]),1024),i(`p`,null,u(e.$t(`footer.code`)),1)])])])}}}),{__name:`AppFooter`});function bo(e,t){let n=Ha(e,()=>t(localStorage.getItem(e)));return y({get:()=>n.value,set:t=>{n.value=t,localStorage.setItem(e,String(t))}})}function xo(){let{t:e}=Ht(),t=bo(`furifont:face`,e=>e===`serif`?`serif`:`sans`),n=bo(`furifont:script`,e=>e===`hepburn`?`hepburn`:`hiragana`);return{face:t,script:n,ruby:bo(`furifont:ruby`,e=>e!==`false`),okurigana:bo(`furifont:okurigana`,e=>e!==`false`),family:y(()=>Rt.find(e=>e.face===t.value&&e.script===n.value)),faces:y(()=>[`sans`,`serif`].map(t=>({value:t,label:e(`faces.${t}`)}))),scripts:y(()=>[`hiragana`,`hepburn`].map(t=>({value:t,label:e(`scripts.${t}`)})))}}var So={class:`min-h-screen flex flex-col overflow-x-clip bg-base color-base`},Co={class:`mx-auto w-full max-w-6xl flex-1 border-x border-base`},wo=g({__name:`app`,setup(e){let{t,locale:n}=Ht();wa({htmlAttrs:{lang:n},title:()=>t(`meta.title`),meta:[{name:`description`,content:()=>t(`meta.description`)}]});let{family:r,ruby:o}=xo();return j(()=>{let{style:e}=document.documentElement;e.setProperty(`--ff-font`,`"${r.value.family}"`),e.setProperty(`--ff-features`,o.value?`normal`:`"ss01"`)}),(e,t)=>{let n=eo,r=io,o=yo;return w(),a(`div`,So,[M(n),i(`main`,Co,[M(r)]),M(o)])}}}),To={__name:`nuxt-error-page`,props:{error:Object},setup(e){let t=e.error,n=Number(t.statusCode||500),i=n===404,a=t.statusMessage??(i?`Page Not Found`:`Internal Server Error`),s=t.message||t.toString(),c=h(()=>Q(()=>import(`./B4Fx_Djw.js`),__vite__mapDeps([13,1,2,9,3,14]),import.meta.url)),l=h(()=>Q(()=>import(`./X45Acd-Y.js`),__vite__mapDeps([15,1,2,16]),import.meta.url)),u=i?c:l;return(e,t)=>(w(),I(O(u),r(o({status:O(n),statusText:O(a),statusCode:O(n),statusMessage:O(a),description:O(s),stack:O(void 0)})),null,16))}},Eo=()=>null,Do={key:0},Oo={__name:`nuxt-root`,setup(e){let t=N(),n=t.deferHydration();if(t.isHydrating){let e=t.hooks.hookOnce(`app:error`,n),r=W().beforeEach(()=>{e(),r()})}window.location.pathname,C(rt,wt()),t.hooks.callHookWith(e=>e.map(e=>e()),`vue:setup`,[]);let r=Qe();function i(e,n,r){let i=t.vueApp.config.errorHandler;if(i&&!i.__nuxt_default)try{i(e,n,r)}catch(e){console.error("[nuxt] Error in `app.config.errorHandler`",e)}}return f((e,n,r)=>{if(t.hooks.callHook(`vue:error`,e,n,r)?.catch(e=>console.error("[nuxt] Error in `vue:error` hook",e)),yt(navigator.userAgent))return Et(t,e),!1;if(ut(e)&&(e.fatal||e.unhandled))return t.runWithContext(()=>G(e)),Pa(),i(e,n,r),!1}),(e,t)=>(w(),I(be,{onResolve:O(n)},{default:D(()=>[O(!1)?(w(),a(`div`,Do)):O(r)?(w(),I(O(To),{key:1,error:O(r)},null,8,[`error`])):O(!1)?(w(),I(O(Eo),{key:2,context:O(!1)},null,8,[`context`])):O(!1)?(w(),I(re(O(!1)),{key:3})):(w(),I(O(wo),{key:4}))]),_:1},8,[`onResolve`]))}},ko;{let e;ko=async function(){if(e)return e;let t=!!(window.__NUXT__?.serverRendered??document.getElementById(`__NUXT_DATA__`)?.dataset.ssr===`true`),n=t?Te(Oo):we(Oo),r=pe({vueApp:n});async function i(e){await r.callHook(`app:error`,e),r.payload.error||=mt(e)}i.__nuxt_default=!0,n.config.errorHandler=i,r.hook(`app:suspense:resolve`,()=>{n.config.errorHandler===i&&(n.config.errorHandler=void 0)}),!t&&ge.id&&r.hook(`app:suspense:resolve`,()=>{document.getElementById(ge.id)?.remove()});try{await de(r,Na)}catch(e){i(e)}try{await r.hooks.callHook(`app:created`,n),await r.hooks.callHook(`app:beforeMount`,n),n.mount(P),await r.hooks.callHook(`app:mounted`,n),await l()}catch(e){i(e)}return n},e=ko().catch(e=>{throw ee.NUXT_E1009({cause:e}),e})}export{Cn as i,wa as n,Q as r,xo as t};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var e={meta:{title:`Furifont:ふりがなを表示するフォント`,description:`ふりがなを自分で表示する日本語フォントです。`},nav:{demo:`はじめに`,docs:`ドキュメント`,customize:`カスタマイズ`,report:`報告`,github:`GitHub リポジトリ`,light:`ライトモードに切り替え`,dark:`ダークモードに切り替え`,language:`言語`,rubyOff:`ふりがなを隠す`,rubyOn:`ふりがなを表示`},footer:{fonts:`フォントは{license}です。Source Han Sans と Source Han Serif から作りました。`,data:`読みのデータは {jmdict}、{jmnedict}、{kanjidic}(EDRDG)、{furigana}、{japanpost}(地名)、{desktoptetsu}(JRの駅名)から取っています。ライセンスは CC BY-SA 4.0 です。`,code:`ツールは MIT ライセンスです。`,report:`読みの誤りを報告`,source:`GitHub のソースコード`,made:`制作:{author}`,supported:`{vercel} と{sponsors}の支援を受けています`,sponsors:`スポンサー`},copied:`コピーしました`,shuffle:`別の例文を表示`,editable:`サンプルの文章です。自由に書き換えられます。`,scripts:{hiragana:`ひらがな`,hepburn:`ローマ字`},faces:{sans:`ゴシック`,serif:`明朝`},hero:{title1:`ふりがなは、`,title2:`フォントが振る。`,body:`Furifont は、フォントそのものにふりがなを表示する
|
|
2
|
+
日本語フォントです。言葉ごとの読み方に合わせて、
|
|
3
|
+
合字で切り替えます。カスタムフォントに対応していれば、どこでも使えます。`,download:`フォントをダウンロード`,build:`自分でビルドする`},notice:`フォントの制約により、ふりがなが正しくない場合があります。ご注意ください。`,sections:{try:`試してみる`,how:`仕組み`,selectors:`読みを選ぶ`,download:`ダウンロード`,anyPage:`ウェブサイトで`},playground:{script:`ふりがなの文字`,face:`フォントの種類`,size:`サイズ / {size}px`,weight:`太さ / {weight}`,ruby:`ふりがな`,okurigana:`送り仮名の読み`,okuriganaHint:`JavaScript が必要です。ブラウザの制限により、フォントだけでは送り仮名を扱えません。`,textHint:`文章をクリックすると編集できます。`,copy:`テキストをコピー`},how:{build:{title:`カスタムビルド`,body:`Furifont は、源ノ角ゴシックまたは源ノ明朝を元に作ります。ビルドの工程で、数千の言葉の辞書を読み込み、ふりがなを新しいグリフとして描き込みます。出来上がるのは普通のフォントファイルです。JavaScript もプラグインも要りません。`},ligatures:{title:`仕事をするのは合字`,body:`フォントには、言葉ごとに合字が入っています。今日は、上に「きょう」が付いた一つのグリフになります。置き換えは文字を描くときに行われるので、文章そのものは変わりません。`},longest:{title:`長い単語を優先`,body:`Furifont は、漢字のまとまりを、数千の一般的な言葉の一覧と照らし合わせます。長い言葉から順に試します。たとえば、日本語は日本より先に選ばれます。今日は一つの言葉として、きょうと読みます。`},bare:{title:`迷ったら付けない`,body:`漢字が一つだけのときは、読み方が一つにはっきり決まる場合だけ、ふりがなを付けます。大人気は、だいにんきとも、おとなげとも読めるので、ふりがなを付けません。`},okurigana:{title:`送り仮名はオプトイン`,body:`ブラウザはフォントのスクリプトごとに別々に字形を作るため、フォントは漢字の後ろのかな(送り仮名)を見られません。そこで、JavaScript によるアノテーションで、オプションとして対応しています。`}},selectors:{body:`読み方が複数ある言葉があります。Furifont は、一番よく使う読み方を表示します。別の読み方にするには、最初の漢字のすぐ後ろに異体字セレクタ(目に見えない文字)を書きます。VS226 は読み 1、VS227 は読み 2 で、以降も同じです。VS225 はふりがなを消します。`,lookUp:`読みを調べる`,default:`既定`,reading2:`読み 2(VS227)`,none:`ルビなし(VS225)`},downloads:{all:`すべて ZIP でダウンロード`,family:`ファミリー`,ruby:`ルビ`,variable:`可変`,formats:`OTFとTTFは、パソコンにインストールするときによく使います。WOFF2はウェブサイト向けに最適化されています。最も快適に使えるので、可変フォントをおすすめします。互換性のために、固定のウェイトが必要になることもあります。`,buildOwn:`自分でフォントを作ることもできます。元のフォント、言葉の数、ふりがなの文字、大きさを選べます。`},anyPage:{body:`どんなウェブサイトでも Furifont で表示できます。漢字がある行には、ふりがなのための余白が付きます。パソコンに Furifont が入っていれば、ダウンロードは要りません。入っていなければ、このサイトからフォントを読み込みます。`,bookmarklet:`ブックマークレット`,bookmarkletHint:`ブックマークバーにドラッグしてください。好きなページでクリックすると、Furifont がオンになります。もう一度クリックすると、オフになります。X や GitHub のように、他のサイトのフォントを読み込めないサイトがあります。そのようなサイトでは、パソコンに Furifont をインストールしてください。`,okurigana:`送り仮名の読み`,okuriganaHint:`送り仮名の前の漢字に、正しい読みを付けます(来る、来ない の 来 など)。`,userscript:`ユーザースクリプト`,install:`ユーザースクリプトをインストール`,userscriptHint:`Tampermonkey や Violentmonkey(小さなプログラムを動かすブラウザの拡張機能)で使えます。日本語のページで、Furifont が自動でオンになります。他のサイトのフォントを読み込めないサイトでも動きます。メニューから、別の Furifont に切り替えたり、オフにしたりできます。`,toast:{message:`このページでは Furifont のフォントを読み込めませんでした。X や GitHub のように、他のサイトのフォントを読み込めないサイトがあります。そのようなサイトでは、パソコンに Furifont をインストールする必要があります。`,download:`フォントをダウンロード`,close:`閉じる`,outdated:`Furifont の新しいバージョンがあります。`,userscript:`ユーザースクリプトを更新`,bookmarklet:`新しいブックマークレットを入手`},menu:{okuriganaOn:`送り仮名の読み:オン`,okuriganaOff:`送り仮名の読み:オフ`}},reference:{eyebrow:`リファレンス`,title:`読みを選ぶ`,body:`Furifont は、言葉の一番よく使う読み方を表示します。別の読み方にするには、言葉の最初の漢字のすぐ後ろに異体字セレクタ(目に見えない文字)を書きます。VS226 は読み 1、VS227 は読み 2 で、以降も同じです。漢字が一つだけの場合は、その漢字の読み方を選びます。VS225 は、ふりがなのない漢字を表示します。`,search:`単語や漢字を検索:市場、今日、生`,searchLabel:`読みを検索`,hint:`読みをクリックすると、セレクタ付きの単語をコピーします。`,unavailable:`リファレンスは用意済みのフォントに入っていますが、ここでは読み込めませんでした({error})。{command} でフォントを作るか、カスタマイズを開いてください。`,loading:`読み込み中`,words:`複数の読みを持つ単語 / {count}`,kanji:`漢字 / {count}`,copyWith:`{text} を {selector} 付きでコピー`,default:`既定`},report:{eyebrow:`報告`,title:`読みの誤りを報告`,body:`ふりがなが間違っている、または必要な言葉にふりがなが付いていない
|
|
4
|
+
場合は、その言葉と正しい読みを教えてください。複数の言葉をまとめて報告できます。報告をもとに辞書を修正します。`,link:`読みの誤りを報告する。`,sections:{words:`言葉 / {count}`,environment:`表示された場所`,note:`その他`},word:`言葉`,expected:`正しい読み`,shown:`表示された読み(任意)`,context:`文(任意)`,remove:`{word} を削除`,add:`言葉を追加`,environment:`環境`,environments:{playground:`このサイトのプレイグラウンド`,website:`他のウェブサイト`,desktop:`デスクトップアプリ`,mobile:`モバイルアプリ`},family:`フォント`,familyAny:`(指定なし)`,url:`ページのアドレス(任意)`,app:`アプリ(任意)`,appPlaceholder:{desktop:`Word、Pages、VS Code`,mobile:`メモ、Kindle`},os:`OS(任意)`,notePlaceholder:`ブラウザ名や、読みが間違っている理由など、参考になること。`,name:`お名前(任意)`,nameHint:`読みを修正したときにクレジットとして記載します。匿名の場合は空欄のままにしてください。`,send:`報告を送信`,sending:`送信中`,sent:`ご報告ありがとうございます。`,again:`さらに報告する`,failed:`報告を送信できませんでした。しばらくしてからもう一度お試しください。`,limited:`短時間に多くの報告が送られました。1時間後にもう一度お試しください。`,privacy:`入力内容、フォントのバージョン、ブラウザ名を保存します。IPアドレスは保存しません。`},docs:{install:`フォントのインストール`,website:`ウェブサイトで使う`,readings:`読みを選ぶ`},customize:{connecting:`furifont dev に接続しています`,title:`カスタマイズ`,offline:{eyebrow:`カスタマイズ / オフライン`,title:`自分だけの Furifont を作る`,body:`カスタマイズは、あなたのパソコンで動くツールです。元のフォントを読み込み、作ったフォントを保存します。好きなフォルダで起動すると、このページがつながった状態で開きます。ライブプレビュー、辞書、ビルドボタンが使えます。作ったフォントは {folder} に保存されます。`,needs:`Node 22.18 以上が必要です(JavaScript のツールを動かす無料のプログラムです)。`,run:`好きなフォルダでカスタマイズを起動する`},auth:{eyebrow:`カスタマイズ / ロック中`,title:`ターミナルのコードを入力`,body:`{command} は、起動したターミナル(コマンドを入力する画面)に 6 桁のコードを表示しました。`,code:`コード`,failed:`コードが一致しません。ターミナルを確認して、もう一度お試しください。`,unlock:`ロックを解除`},sections:{preview:`プレビュー`,build:`ビルド`,dictionary:`辞書`,words:`あなたの単語`},options:{family:`フォントの名前`,base:`ベースフォント`,baseHint:`ふりがなを付ける元のフォントです。Source Han Serif JP Bold のようにダウンロードするフォントか、パソコン上の別のフォントファイルのパスを指定します。`,script:`ふりがなの文字`,hiragana:`ひらがな`,katakanaOn:`カタカナ`,hepburn:`ローマ字`,skip:`よく出る言葉を除く`,skipHint:`残った言葉のうち、よく使うものにはふりがなを付けません。読む人がすでに知っているからです。言葉と漢字一文字をよく使う順に並べ、500 ずつ数えます。`,words:`続けてふりがなを付ける言葉の数`,wordsHint:`続く言葉を、よく使う順に選びます。全部で {count} 語にふりがなが付きます。`,jlpt:`JLPT の言葉を除く`,jlptHint:`JLPT(日本語能力試験)の語彙リストで、この級までの言葉にはふりがなを付けません。N5 がいちばんやさしい級です。`,none:`なし`,all:`すべて`,sources:`次の語彙から言葉を選ぶ`,source:{jmdict:{name:`JMdict の全語`,hint:`JMdict:どのリストにも順位がない言葉(四字熟語など)も含む、すべての言葉です。順位のない言葉は、他に当てはまるものがない部分で使います。フォントが約700 KB大きくなります。`},ichi:{name:`基本の言葉`,hint:`JMdict「ichi1」「ichi2」:「一万語」リスト(基本の言葉の一覧)の言葉です。`},news:{name:`新聞の言葉`,hint:`JMdict「news1」「news2」:新聞によく出る 24,000 語です。`},spec:{name:`日常語`,hint:`JMdict「spec1」「spec2」:他の一覧に載っていない、一般的な言葉です。例:日本。`},gai:{name:`外来語`,hint:`JMdict「gai1」「gai2」:他の言語から入った、よく使う言葉です。`},nf:{name:`新聞の順位`,hint:`JMdict「nf01」〜「nf48」:新聞の言葉の一覧で順位がある言葉です(500 語ずつ)。`},tatoeba:{name:`Tatoeba の例文`,hint:`Tatoeba:例文に 3 回以上出てくる言葉です。上のリストにない留守中なども入ります。`},place:{name:`地名`,hint:`JMnedict:駅名と地名です。一般的な言葉に当てはまらない部分で使います。`},"mahjong-yaku":{name:`麻雀の役`,hint:`麻雀の役と牌の名前です(立直など)。一般的な言葉に当てはまらない部分で使います。`},"jr-stations":{name:`JRの駅名`,hint:`デスクトップ鉄のJR駅リストにある駅名です(阿蘇など)。一般的な言葉に当てはまらない部分で使います。`},yojijukugo:{name:`四字熟語`,hint:`JMdict:四字熟語です(阿鼻叫喚など)。一般的な言葉に当てはまらない部分で使います。`},"japan-post":{name:`市区町村と町域`,hint:`日本郵便の郵便番号データにある市区町村と町域の名前です(一宮など)。一般的な言葉に当てはまらない部分で使います。`}},isolated:`漢字一文字にもふりがなを付ける`,share:`漢字一文字のときの確かさ`,shareHint:`漢字が一つだけのとき、辞書の中でその読み方が少なくともこの割合を占める場合だけ、ふりがなを付けます。0.5 から 1 の数を入れます。大きいほど、ふりがなが付く漢字は減ります。`,rubyScale:`ふりがなの大きさ(漢字の何倍か)`,rubyGap:`漢字の上の余白(em)`,squeeze:`最も狭くする幅(通常の何倍か)`,maxWidth:`ふりがなの最大幅(em)`,reset:`初期設定に戻す`,resetHint:`カスタマイズが読み込んだ設定に戻します。追加した言葉はそのまま残ります。`},preview:{compiling:`プレビューを作っています`,weight:`プレビューの太さ`,size:`プレビューのサイズ`,stats:`{glyphs} グリフ / {ms} ms`},build:{words:`単語`,places:`地名`,ambiguous:`複数の読み`,lone:`漢字一文字`,protected:`あなたの設定`,glyphs:`ルビのグリフ`,rules:`ルール`,planning:`計画中`,estimate:{woff2:`≈ {size} WOFF2`,otf:`{size} OTF`},formats:`形式`,estimating:`サイズを見積もり中`,run:`フォントをビルド`,save:`設定を保存`},dictionary:{search:`辞書を検索:今日、生`,results:`{count} 語`,hint:`これらの言葉には、よく使う読み方が複数あります。一つを固定すると、それが標準の読み方になります。`,noTag:`一般的な言葉ではない`,restore:`元に戻す`,remove:`ふりがなを付けない`},custom:{placeholder:`日[に]本[ほん] または 今日[きょう]`,label:`追加する単語`,add:`単語を追加`,added:`追加 / {count}`,pinned:`固定 / {count}`,removed:`ふりがなを付けない / {count}`,none:`なし`,takeOut:`{item} を外す`}}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,C as t,E as n,Ht as r,N as i,S as a,T as o,Y as s,Z as c,_ as l,at as u,bt as d,ft as f,j as p,mt as m,ot as h,t as g,ut as _,w as v,zt as y}from"./CkUAspOr.js";import{a as b,o as x,s as S}from"./D4ezFGbh.js";import{d as C,i as ee,l as w,r as T}from"./3AsBWvce.js";import{C as E,T as D,d as O,g as k,h as A,l as j,n as M,o as N,p as P,t as F,v as I,w as L,y as R}from"./DgjW2lPh.js";import{i as z}from"#entry";import{n as B,t as V}from"./BaBNBiev.js";var H=[`playground`,`website`,`desktop`,`mobile`];function U(e){return R(E(),D(),j(e))}function W(e){return R(U(e),P())}function G(e){return R(k(U(e)),L(e=>e||void 0))}var K=A({word:W(32),expected:W(64),shown:G(64),context:G(200)});A({words:R(M(K),O(1),j(20)),environment:A({type:I(H),url:G(500),app:G(100),os:G(100)}),family:G(100),version:W(32),locale:W(16),note:G(2e3),name:G(100),nickname:k(R(E(),N()))});var q={role:`status`,class:`flex flex-col items-center gap-6 px-6 py-24 text-center`},J={class:`display text-2xl font-semibold`},Y=[`onUpdate:modelValue`],X=[`onUpdate:modelValue`],Z=[`onUpdate:modelValue`],Q={class:`flex items-end gap-2 sm:col-span-3`},te=[`onUpdate:modelValue`],ne=[`aria-label`,`onClick`],re={class:`px-6 py-3`},ie={class:`grid gap-4 p-6 sm:grid-cols-2`},ae=[`value`],oe={value:``},se=[`value`],ce=[`placeholder`],le={class:`flex flex-col gap-4 p-6`},ue=[`placeholder`,`aria-label`],de={class:`flex flex-wrap items-center gap-4`},fe=[`disabled`],pe={key:0,role:`alert`,class:`text-xs color-muted`},$={class:`text-xs color-muted`},me=Object.assign(i({__name:`ReportForm`,setup(i){let g=`${w}/api/report`,{t:E,locale:D}=T(),O=()=>({word:``,expected:``,shown:``,context:``}),k=m([O()]),A=f({type:`playground`,url:``,app:``,os:``}),j=m(``),M=m(``),N=m(``),P=m(``),I=m(`idle`),L=a(()=>H.map(e=>({value:e,label:E(`report.environments.${e}`)}))),R=a(()=>k.value.every(e=>e.word.trim()&&e.expected.trim()));async function U(){I.value=`sending`;let e={words:k.value,environment:A,family:j.value,version:C,locale:D.value,note:M.value,name:N.value,nickname:P.value};try{await z(g,{method:`POST`,body:e}),I.value=`sent`}catch(e){I.value=e instanceof Error&&`statusCode`in e&&e.statusCode===429?`limited`:`failed`}}function W(){k.value=[O()],M.value=``,I.value=`idle`}return(i,a)=>{let f=V,m=F,g=B;return d(I)===`sent`?(s(),v(m,{key:0},{default:u(()=>[t(`div`,q,[a[9]||=t(`span`,{class:`i-ph-check-circle-light text-7xl`,"aria-hidden":`true`},null,-1),t(`p`,J,r(i.$t(`report.sent`)),1),p(f,{icon:`i-ph-plus`,onClick:W},{default:u(()=>[e(r(i.$t(`report.again`)),1)]),_:1})])]),_:1})):(s(),n(`form`,{key:1,onSubmit:S(U,[`prevent`])},[p(m,{index:`01`,title:i.$t(`report.sections.words`,{count:d(k).length})},{default:u(()=>[(s(!0),n(l,null,c(d(k),(e,r)=>(s(),n(`div`,{key:r,class:`grid gap-4 border-b border-base p-6 sm:grid-cols-3`},[p(g,{label:i.$t(`report.word`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":t=>e.word=t,required:``,maxlength:`32`,lang:`ja`,placeholder:`市場`,class:`input`},null,8,Y),[[x,e.word]])]),_:2},1032,[`label`]),p(g,{label:i.$t(`report.expected`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":t=>e.expected=t,required:``,maxlength:`64`,lang:`ja`,placeholder:`いちば`,class:`input`},null,8,X),[[x,e.expected]])]),_:2},1032,[`label`]),p(g,{label:i.$t(`report.shown`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":t=>e.shown=t,maxlength:`64`,lang:`ja`,placeholder:`しじょう`,class:`input`},null,8,Z),[[x,e.shown]])]),_:2},1032,[`label`]),t(`div`,Q,[p(g,{label:i.$t(`report.context`),class:`flex-1`},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":t=>e.context=t,maxlength:`200`,lang:`ja`,placeholder:`駅前の市場で魚を買った。`,class:`input`},null,8,te),[[x,e.context]])]),_:2},1032,[`label`]),d(k).length>1?(s(),n(`button`,{key:0,type:`button`,class:`btn-ghost focus-ring w-9 shrink-0 px-0`,"aria-label":i.$t(`report.remove`,{word:e.word||r+1}),onClick:e=>d(k).splice(r,1)},[...a[10]||=[t(`span`,{class:`i-ph-trash`},null,-1)]],8,ne)):o(``,!0)])]))),128)),t(`div`,re,[p(f,{variant:`ghost`,icon:`i-ph-plus`,disabled:d(k).length>=(`MAX_REPORT_WORDS`in i?i.MAX_REPORT_WORDS:d(20)),onClick:a[0]||=e=>d(k).push(O())},{default:u(()=>[e(r(i.$t(`report.add`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`title`]),p(m,{index:`02`,title:i.$t(`report.sections.environment`)},{default:u(()=>[t(`div`,ie,[p(g,{label:i.$t(`report.environment`)},{default:u(()=>[h(t(`select`,{"onUpdate:modelValue":a[1]||=e=>d(A).type=e,class:`input`},[(s(!0),n(l,null,c(d(L),e=>(s(),n(`option`,{key:e.value,value:e.value},r(e.label),9,ae))),128))],512),[[b,d(A).type]])]),_:1},8,[`label`]),p(g,{label:i.$t(`report.family`)},{default:u(()=>[h(t(`select`,{"onUpdate:modelValue":a[2]||=e=>_(j)?j.value=e:null,class:`input`},[t(`option`,oe,r(i.$t(`report.familyAny`)),1),(s(!0),n(l,null,c(`FAMILIES`in i?i.FAMILIES:d(ee),e=>(s(),n(l,{key:e.family},[(s(),n(l,null,c([`Regular`,`VF`],n=>t(`option`,{key:n,value:`${e.family} ${n}`},r(e.family)+` `+r(n),9,se)),64))],64))),128))],512),[[b,d(j)]])]),_:1},8,[`label`]),d(A).type===`website`?(s(),v(g,{key:0,label:i.$t(`report.url`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":a[3]||=e=>d(A).url=e,type:`url`,maxlength:`500`,placeholder:`https://`,class:`input`},null,512),[[x,d(A).url]])]),_:1},8,[`label`])):o(``,!0),d(A).type===`desktop`||d(A).type===`mobile`?(s(),v(g,{key:1,label:i.$t(`report.app`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":a[4]||=e=>d(A).app=e,maxlength:`100`,placeholder:i.$t(`report.appPlaceholder.${d(A).type}`),class:`input`},null,8,ce),[[x,d(A).app]])]),_:1},8,[`label`])):o(``,!0),p(g,{label:i.$t(`report.os`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":a[5]||=e=>d(A).os=e,maxlength:`100`,placeholder:`macOS 26, Windows 11, iOS 26`,class:`input`},null,512),[[x,d(A).os]])]),_:1},8,[`label`])])]),_:1},8,[`title`]),p(m,{index:`03`,title:i.$t(`report.sections.note`)},{default:u(()=>[t(`div`,le,[h(t(`textarea`,{"onUpdate:modelValue":a[6]||=e=>_(M)?M.value=e:null,maxlength:`2000`,rows:`4`,placeholder:i.$t(`report.notePlaceholder`),"aria-label":i.$t(`report.sections.note`),class:`input resize-y`},null,8,ue),[[x,d(M)]]),p(g,{label:i.$t(`report.name`),hint:i.$t(`report.nameHint`)},{default:u(()=>[h(t(`input`,{"onUpdate:modelValue":a[7]||=e=>_(N)?N.value=e:null,maxlength:`100`,autocomplete:`nickname`,class:`input`},null,512),[[x,d(N)]])]),_:1},8,[`label`,`hint`]),h(t(`input`,{"onUpdate:modelValue":a[8]||=e=>_(P)?P.value=e:null,name:`nickname`,tabindex:`-1`,autocomplete:`off`,"aria-hidden":`true`,class:`sr-only`},null,512),[[x,d(P)]]),t(`div`,de,[t(`button`,{type:`submit`,class:y([`focus-ring`,d(R)?`btn-solid`:`btn-outline`]),disabled:d(I)===`sending`},[a[11]||=t(`span`,{class:`i-ph-paper-plane-tilt`},null,-1),e(` `+r(d(I)===`sending`?i.$t(`report.sending`):i.$t(`report.send`)),1)],10,fe),d(I)===`failed`||d(I)===`limited`?(s(),n(`p`,pe,r(i.$t(`report.${d(I)}`)),1)):o(``,!0),t(`p`,$,r(i.$t(`report.privacy`)),1)])])]),_:1},8,[`title`])],32))}}}),{__name:`ReportForm`}),he={},ge={class:`flex flex-col gap-4 px-6 py-12`},_e={class:`label`},ve={class:`display text-4xl font-semibold`},ye={class:`max-w-[60ch] text-[15px] lh-1.625 color-muted ws-pre-line`};function be(e,i){let a=me;return s(),n(`div`,null,[t(`div`,ge,[t(`span`,_e,r(e.$t(`report.eyebrow`)),1),t(`h1`,ve,r(e.$t(`report.title`)),1),t(`p`,ye,r(e.$t(`report.body`)),1)]),p(a)])}var xe=g(he,[[`render`,be]]);export{xe as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./y07Wd5I9.js";import{$ as t,Gt as n,I as r,Kt as i,L as a,N as o,P as s,R as c,S as l,W as u,Wt as d,a as f,bt as p,ct as m,d as ee,gt as te,mt as ne,o as h,q as re,s as g,vt as _}from"./CkUAspOr.js";import{t as ie}from"./D4ezFGbh.js";String.fromCharCode;var v=/#/g,y=/&/g,b=/\//g,ae=/=/g,x=/\+/g,S=/%5e/gi,oe=/%60/gi,se=/%7c/gi,ce=/%20/gi,le=/%2f/gi;function ue(e){return encodeURI(``+e).replace(se,`|`)}function C(e){return ue(typeof e==`string`?e:JSON.stringify(e)).replace(x,`%2B`).replace(ce,`+`).replace(v,`%23`).replace(y,`%26`).replace(oe,"`").replace(S,`^`).replace(b,`%2F`)}function w(e){return C(e).replace(ae,`%3D`)}function T(e=``){try{return decodeURIComponent(``+e)}catch{return``+e}}function de(e){return T(e.replace(le,`%252F`))}function fe(e){return T(e.replace(x,` `))}function pe(e){return T(e.replace(x,` `))}function E(e=``){let t=Object.create(null);e[0]===`?`&&(e=e.slice(1));for(let n of e.split(`&`)){let e=n.match(/([^=]+)=?(.*)/)||[];if(e.length<2)continue;let r=fe(e[1]);if(r===`__proto__`||r===`constructor`)continue;let i=pe(e[2]||``);t[r]===void 0?t[r]=i:Array.isArray(t[r])?t[r].push(i):t[r]=[t[r],i]}return t}function me(e,t){return(typeof t==`number`||typeof t==`boolean`)&&(t=String(t)),t?Array.isArray(t)?t.map(t=>`${w(e)}=${C(t)}`).join(`&`):`${w(e)}=${C(t)}`:w(e)}function he(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>me(t,e[t])).filter(Boolean).join(`&`)}var ge=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,_e=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,ve=/^([/\\]\s*){2,}[^/\\]/,ye=/^[\s\0]*(blob|data|javascript|vbscript):$/i,be=/\/$|\/\?|\/#/,xe=/^\.?\//;function D(e,t={}){return typeof t==`boolean`&&(t={acceptRelative:t}),t.strict?ge.test(e):_e.test(e)||(t.acceptRelative?ve.test(e):!1)}function Se(e){return!!e&&ye.test(e)}function Ce(e=``,t){return t?be.test(e):e.endsWith(`/`)}function O(e=``,t){if(!t)return(Ce(e)?e.slice(0,-1):e)||`/`;if(!Ce(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);i!==-1&&(n=e.slice(0,i),r=e.slice(i));let[a,...o]=n.split(`?`);return((a.endsWith(`/`)?a.slice(0,-1):a)||`/`)+(o.length>0?`?${o.join(`?`)}`:``)+r}function we(e=``,t){if(!t)return e.endsWith(`/`)?e:e+`/`;if(Ce(e,!0))return e||`/`;let n=e,r=``,i=e.indexOf(`#`);if(i!==-1&&(n=e.slice(0,i),r=e.slice(i),!n))return r;let[a,...o]=n.split(`?`);return a+`/`+(o.length>0?`?${o.join(`?`)}`:``)+r}function Te(e,t){if(Oe(t)||D(e))return e;let n=O(t);if(e.startsWith(n)){let t=e[n.length];if(!t||t===`/`||t===`?`)return e}return k(n,e)}function Ee(e,t){if(Oe(t))return e;let n=O(t);if(!e.startsWith(n))return e;let r=e[n.length];return r&&r!==`/`&&r!==`?`?e:`/`+e.slice(n.length).replace(/^\/+/,``)}function De(e,t){let n=A(e);return n.search=he({...E(n.search),...t}),Pe(n)}function Oe(e){return!e||e===`/`}function ke(e){return e&&e!==`/`}function k(e,...t){let n=e||``;for(let e of t.filter(e=>ke(e)))if(n){let t=e.replace(xe,``);n=we(n)+t}else n=e;return n}function Ae(...e){let t=/\/(?!\/)/,n=e.filter(Boolean),r=[],i=0;for(let e of n)if(e&&e!==`/`){for(let[n,a]of e.split(t).entries())if(a&&a!==`.`){if(a===`..`){if(r.length===1&&D(r[0]))continue;r.pop(),i--}else n===1&&r[r.length-1]?.endsWith(`:/`)?r[r.length-1]+=`/`+a:(r.push(a),i++)}}let a=r.join(`/`);return i>=0?n[0]?.startsWith(`/`)&&!a.startsWith(`/`)?a=`/`+a:n[0]?.startsWith(`./`)&&!a.startsWith(`./`)&&(a=`./`+a):a=`../`.repeat(-1*i)+a,n[n.length-1]?.endsWith(`/`)&&!a.endsWith(`/`)&&(a+=`/`),a}function je(e,t){return T(O(e))===T(O(t))}var Me=Symbol.for(`ufo:protocolRelative`);function A(e=``,t){let n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){let[,e,t=``]=n;return{protocol:e.toLowerCase(),pathname:t,href:e+t,auth:``,host:``,search:``,hash:``}}if(!D(e,{acceptRelative:!0}))return t?A(t+e):Ne(e);let[,r=``,i,a=``]=e.replace(/\\/g,`/`).match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[],[,o=``,s=``]=a.match(/([^#/?]*)(.*)?/)||[];r===`file:`&&(s=s.replace(/\/(?=[A-Za-z]:)/,``));let{pathname:c,search:l,hash:u}=Ne(s);return{protocol:r.toLowerCase(),auth:i?i.slice(0,Math.max(0,i.length-1)):``,host:o,pathname:c,search:l,hash:u,[Me]:!r}}function Ne(e=``){let[t=``,n=``,r=``]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Pe(e){let t=e.pathname||``,n=e.search?(e.search.startsWith(`?`)?``:`?`)+e.search:``,r=e.hash||``,i=e.auth?e.auth+`@`:``,a=e.host||``;return(e.protocol||e[Me]?(e.protocol||``)+`//`:``)+i+a+t+n+r}function j(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function M(e,t,n=`.`,r){if(!j(t))return M(e,{},n,r);let i={...t};for(let t of Object.keys(e)){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(i[t]=Array.isArray(a)&&Array.isArray(i[t])?[...a,...i[t]]:j(a)&&j(i[t])?M(a,i[t],(n?`${n}.`:``)+t.toString(),r):a))}return i}function Fe(e){return(...t)=>t.reduce((t,n)=>M(t,n,``,e),{})}var Ie=Fe();function Le(e,t){try{return t in e}catch{return!1}}var Re=class extends Error{static __h3_error__=!0;statusCode=500;fatal=!1;unhandled=!1;statusMessage;data;cause;constructor(e,t={}){super(e,t),t.cause&&!this.cause&&(this.cause=t.cause)}toJSON(){let e={message:this.message,statusCode:N(this.statusCode,500)};return this.statusMessage&&(e.statusMessage=He(this.statusMessage)),this.data!==void 0&&(e.data=this.data),e}};function ze(e){if(typeof e==`string`)return new Re(e);if(Be(e))return e;let t=new Re(e.message??e.statusMessage??``,{cause:e.cause||e});if(Le(e,`stack`))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=N(e.statusCode,t.statusCode):e.status&&(t.statusCode=N(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){let e=t.statusMessage;He(t.statusMessage)!==e&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function Be(e){return e?.constructor?.__h3_error__===!0}var Ve=/[^\u0009\u0020-\u007E]/g;function He(e=``){return e.replace(Ve,``)}function N(e,t=200){return!e||(typeof e==`string`&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}globalThis.Headers,globalThis.Response;var Ue=`__nuxt_error`,We=e=>!!e&&typeof e==`object`&&`__nuxt_error`in e,P=e=>{if(We(e))return e;typeof e!=`string`&&e?.statusText&&(e.message??=e.statusText);let t=ze(e??{});return Object.defineProperty(t,Ue,{value:!0,configurable:!1,writable:!1}),Object.defineProperty(t,"status",{get:()=>t.statusCode,configurable:!0}),Object.defineProperty(t,"statusText",{get:()=>t.statusMessage,configurable:!0}),t},Ge=`https://a.invalid/probe/`,Ke=`https://b.invalid/probe/`;function F(e,t=Ge){try{return new URL(e,t)}catch{return null}}function I(e){return e[0]===`/`&&e[1]!==`/`&&e[1]!==`\\`}function L(e){if(!e||I(e))return!1;let t=F(e);return!!t&&t.href===F(e,Ke)?.href}function R(e){if(!e||I(e))return null;let t=F(e.replace(/[\u0000-\u001F\u007F\s]+/g,``));for(;t?.protocol===`view-source:`;)t=F(t.pathname);return t?Se(t.protocol)?t.protocol:null:``}function z(e){return R(e)===null?e:null}var qe=/bot\b|chrome-lighthouse|facebookexternalhit|google\b/i;function Je(e){return qe.test(e)}var Ye=Symbol(`layout-meta`),Xe=Symbol(`route`),B=e({docsBase:n,reporters:i}),V=(()=>h()?.$router);function Ze(e){let t=e;return t.parent??t.subs?.sub}function Qe(e){let t=e.scope,n=m();for(;n;){if(n===t)return!0;n=Ze(n)}return!1}var $e=(()=>{if(a()){let e=s();if(!e||Qe(e))return c(Xe,h()._route)}return h()._route});function et(e){return e}var tt=()=>{try{if(h()._processingMiddleware)return!0}catch{return!1}return!1},nt=(e,t)=>{e||=`/`;let n=typeof e==`string`||`path`in e,r=typeof e==`string`?e:`path`in e?H(e):V().resolve(e).href;if(t?.open){let e=R(r);if(e!==null)throw B.NUXT_E2002({toPath:r,protocol:e});let i=n&&!L(r)&&!r.startsWith(`#`)?k(g().app.baseURL,r):r,{target:a=`_blank`,windowFeatures:o={}}=t.open,s=[];for(let[e,t]of Object.entries(o))t!==void 0&&s.push(`${e.toLowerCase()}=${t}`);return open(i,a,s.join(`, `)),Promise.resolve()}let i=L(r),a=t?.external||i;if(a){if(!t?.external)throw B.NUXT_E2001({toPath:r});let e=R(r);if(e!==null)throw B.NUXT_E2002({toPath:r,protocol:e})}let o=tt();if(!a&&o){if(t?.replace){if(typeof e==`string`){let{pathname:t,search:n,hash:r}=A(e);return{path:t,...n&&{query:E(n)},...r&&{hash:r},replace:!0}}return{...e,replace:!0}}return e}let s=V(),c=h();if(a)return c._scope.stop(),t?.replace?location.replace(r):location.href=r,o?c.isHydrating?new Promise(()=>{}):!1:Promise.resolve();let l=typeof e==`string`?rt(e):e;return t?.replace?s.replace(l):s.push(l)};function H(e){return De(e.path||``,e.query||{})+(e.hash||``)}function rt(e){let t=A(e);return ut(de(t.pathname))+t.search+t.hash}var it=/%7C/g,at=/%5B/g,ot=/%5D/g,st=/%252F/gi,ct=/#/g,lt=/\?/g;function ut(e){return encodeURI(e).replace(it,`|`).replace(at,`[`).replace(ot,`]`).replace(ct,`%23`).replace(lt,`%3F`).replace(st,`%2F`)}var U=()=>_(h().payload,`error`),dt=e=>{let t=P(e);try{let e=U();h().hooks.callHook(`app:error`,t),e.value||=t}catch{throw t}return t},ft=(e,t)=>{let n=e.callHook(`app:error`,P(t));return d.NUXT_E1012({userAgent:navigator.userAgent,cause:t}),n},pt=async(e,t)=>{Je(navigator.userAgent)?await ft(e,t):await e.runWithContext(()=>dt(t))},mt=async(e={})=>{let t=h(),n=U();t.callHook(`app:error:cleared`,e),e.redirect&&await V().replace(e.redirect),n.value=void 0},ht=e=>e.startsWith(`/`);function gt(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function _t(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&>(e.default)}var vt=Object.assign;function yt(e,t){let n={};for(let r in t){let i=t[r];n[r]=W(i)?i.map(e):e(i)}return n}var bt=()=>{},W=Array.isArray;function xt(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var St=Symbol(``);function G(e,t){return vt(Error(),{type:e,[St]:!0},t)}function Ct(e,t){return e instanceof Error&&St in e&&(t==null||!!(e.type&t))}var wt=Symbol(``),Tt=Symbol(``),Et=Symbol(``),Dt=Symbol(``),Ot=Symbol(``),kt=Symbol(``),At=typeof document<`u`,jt=/#/g,Mt=/&/g,Nt=/\//g,Pt=/=/g,Ft=/\?/g,It=/\+/g,Lt=/%5B/g,Rt=/%5D/g,zt=/%5E/g,Bt=/%60/g,Vt=/%7B/g,Ht=/%7C/g,Ut=/%7D/g,Wt=/%20/g;function K(e){return e==null?``:encodeURI(``+e).replace(Ht,`|`).replace(Lt,`[`).replace(Rt,`]`)}function Gt(e){return K(e).replace(Vt,`{`).replace(Ut,`}`).replace(zt,`^`)}function Kt(e){return K(e).replace(It,`%2B`).replace(Wt,`+`).replace(jt,`%23`).replace(Mt,`%26`).replace(Bt,"`").replace(Vt,`{`).replace(Ut,`}`).replace(zt,`^`)}function qt(e){return Kt(e).replace(Pt,`%3D`)}function Jt(e){return K(e).replace(jt,`%23`).replace(Ft,`%3F`)}function Yt(e){return Jt(e).replace(Nt,`%2F`)}function q(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var Xt=/\/$/,Zt=e=>e.replace(Xt,``);function Qt(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=on(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:q(o)}}function $t(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function en(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function tn(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&J(t.matched[r],n.matched[i])&&nn(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function J(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function nn(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!rn(e[n],t[n]))return!1;return!0}function rn(e,t){return W(e)?an(e,t):W(t)?an(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function an(e,t){return W(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function on(e,t){if(ht(e))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`){if(s===`..`)a>1&&a--;else break}return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var sn={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function cn(e){if(!e){if(At){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`}return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),Zt(e)}var ln=/^[^#]+#/;function un(e,t){return e.replace(ln,`#`)+t}function dn(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var fn=()=>history.scrollRestoration===`manual`?{left:window.scrollX,top:window.scrollY}:null;function pn(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=dn(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function mn(e,t){return(history.state?history.state.position-t:-1)+e}var Y=new Map;function hn(e){Y.set(e,fn())}function gn(e){let t=Y.get(e);return Y.delete(e),t}function _n(e,t=!1){for(let n of Y.keys()){let r=parseInt(n,10);(r===e||!t&&r>e)&&Y.delete(n)}}function vn(e){return typeof e==`string`||e&&typeof e==`object`}function yn(e){return typeof e==`string`||typeof e==`symbol`}function bn(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(It,` `),i=r.indexOf(`=`),a=q(i<0?r:r.slice(0,i)),o=i<0?null:q(r.slice(i+1));if(a in t){let e=t[a];W(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function xn(e){let t=``;for(let n in e){let r=e[n];n=qt(n),r==null?r!==void 0&&(t+=(t.length?`&`:``)+n):(W(r)?r.map(e=>e&&Kt(e)):[r&&Kt(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Sn(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=W(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Cn(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function X(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(G(4,{from:n,to:t})):e instanceof Error?c(e):vn(e)?c(G(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function wn(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(t===`beforeRouteEnter`||o.instances[e]){if(gt(s)){let c=(s.__vccOpts||s)[t];c&&a.push(X(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=_t(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&X(c,n,r,o,e,i)()}))}}}return a}function Tn(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>J(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>J(e,s))||i.push(s))}return[n,r,i]}var En=(e,t)=>({default:()=>e?r(ie,e===!0?{}:e,t):t.default?.()}),Dn=/(:\w+)\([^)]+\)/g,On=/(:\w+)[?+*]/g,kn=/:\w+/g;function An(e){let t=e?.meta.key??e.path.replace(Dn,`$1`).replace(On,`$1`).replace(kn,t=>e.params[t.slice(1)]?.toString()||``);return typeof t==`function`?t(e):t}function jn(e,t){return e===t||t===sn?!1:An(e)!==An(t)||!e.matched.every((e,n)=>e.components&&e.components.default===t.matched[n]?.components?.default)}function Mn(e){return Array.isArray(e)?e:[e]}function Nn(e){let t=[];for(let n of e)n&&t.push({...n,onAfterLeave:n.onAfterLeave?Mn(n.onAfterLeave):void 0,onBeforeLeave:n.onBeforeLeave?Mn(n.onBeforeLeave):void 0});return Ie(...t)}function Pn(e){e[`~transitionPromise`]||=new Promise(t=>{e[`~transitionFinish`]=t})}function Fn(e){e[`~transitionFinish`]?.(),delete e[`~transitionFinish`],delete e[`~transitionPromise`]}var In={scrollBehavior(e,t,n){let r=h(),i=V(),a=i.options?.scrollBehaviorType??`auto`;return e.path.replace(/\/$/,``)===t.path.replace(/\/$/,``)?t.hash&&!e.hash?n??{left:0,top:0}:e.hash?{el:e.hash,top:Ln(e.hash),behavior:a}:!1:(typeof e.meta.scrollToTop==`function`?e.meta.scrollToTop(e,t):e.meta.scrollToTop)===!1?!1:t===sn?Rn(e,t,n,a):new Promise(o=>{let s=()=>{requestAnimationFrame(()=>{i.currentRoute.value.fullPath===e.fullPath?o(Rn(e,t,n,a)):o(!1)})};r.hooks.hookOnce(`page:loading:end`,()=>{let e=r[`~transitionPromise`];e?e.then(s):s()})})}};function Ln(e){try{let t=document.querySelector(e);if(t)return(Number.parseFloat(getComputedStyle(t).scrollMarginTop)||0)+(Number.parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop)||0)}catch{}return 0}function Rn(e,t,n,r){return n||(e.hash?{el:e.hash,top:Ln(e.hash),behavior:jn(e,t)?r:`instant`}:{left:0,top:0})}var zn={hashMode:!1,scrollBehaviorType:`auto`,sensitive:!1,...In},Z=globalThis.requestIdleCallback||(e=>{let t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),Bn=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),Vn=e=>{let t=h();t.isHydrating?t.hooks.hookOnce(`app:suspense:resolve`,()=>{Z(()=>e())}):Z(()=>e())},Hn=/2g/;function Un(){let e=navigator.connection;return!e||!e.saveData&&!Hn.test(e.effectiveType||``)}function Q(e){let{pathname:t,search:n}=new URL(e,window.location.href);return t+n}function Wn(e){if(e?.__asyncLoader&&!e.__asyncResolved)return e.__asyncLoader()}function Gn(e){return Promise.all(e.map(e=>{let t=e.components?.default;return typeof t==`function`?Promise.resolve(t()).catch(()=>{}):void 0}))}function Kn(e,t){let{fullPath:n,path:r,matched:i}=t.resolve(e);if(!i.length)return;let a=f()?._prefetch;a?a.schedule({key:`route:${r}`,priority:`route`,scope:`navigation`,group:Q(n),run:e=>e.aborted?void 0:Gn(i)}):Gn(i)}var qn=(...e)=>e.find(e=>e!==void 0);function Jn(e){let n=e.componentName||`NuxtLink`;function i(e){return typeof e==`string`&&e.startsWith(`#`)}function a(t,n,r){let i=r??e.trailingSlash;if(!t||i!==`append`&&i!==`remove`)return t;if(typeof t==`string`)return $(t,i);let a=`path`in t&&t.path!==void 0?t.path:n(t).path;return{...t,name:void 0,path:$(a,i)}}function s(t){let n=V(),r=g(),o=n.options?.history?.createHref??(e=>k(r.app.baseURL,e)),s=l(()=>!!p(t.target)&&p(t.target)!==`_self`),c=l(()=>{let e=p(t.to)||p(t.href)||``;return typeof e==`string`&&L(e)}),u=l(()=>{if(p(t.external))return!0;let e=p(t.to)||p(t.href)||``;return typeof e==`object`?!1:e===``||c.value}),d=l(()=>{let e=p(t.to)||p(t.href)||``;return u.value?e:a(e,n.resolve,p(t.trailingSlash))}),f=l(()=>{let r=p(t.trailingSlash)??e.trailingSlash;if(!d.value||c.value||i(d.value)){let e=d.value;return typeof e==`string`?z(e):e}if(u.value){let e=typeof d.value==`object`&&`path`in d.value?H(d.value):d.value,t=typeof e==`object`?n.resolve(e).href:e,i=typeof t==`string`?z(t):t;return i===null?null:$(i,r)}return typeof d.value==`object`?n.resolve(d.value)?.href??null:$(I(d.value)?o(d.value):n.resolve(d.value).href,r)});return{to:d,hasTarget:s,isAbsoluteUrl:c,isExternal:u,href:f,async navigate(e){f.value!==null&&await nt(f.value,{replace:p(t.replace),external:u.value||s.value})}}}function c(e){let n=V(),r=s(e),i=t(`RouterLink`),a=i&&typeof i!=`string`?i.useLink:void 0,o=r.isExternal.value?void 0:a?.({...e,to:r.to,viewTransition:p(e.viewTransition)});return{...r,isActive:o?.isActive??l(()=>r.to.value===n.currentRoute.value.path),isExactActive:o?.isExactActive??l(()=>r.to.value===n.currentRoute.value.path),route:o?.route??l(()=>n.resolve(r.to.value))}}return o({name:n,props:{to:{type:[String,Object],required:!1},href:{type:[String,Object],required:!1},target:{type:String,required:!1},rel:{type:String,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},prefetchOn:{type:[String,Object],required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,required:!1},exactActiveClass:{type:String,required:!1},prefetchedClass:{type:String,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1},trailingSlash:{type:String,required:!1}},useLink:c,setup(n,{slots:a}){let o=V(),c=t(`RouterLink`),{to:l,href:d,navigate:f,isExternal:p,hasTarget:m,isAbsoluteUrl:ee}=s(n),g=te(!1),_=ne(null),ie=e=>{_.value=n.custom?e?.$el?.nextElementSibling:e?.$el};function v(t){return typeof n.prefetchOn==`string`?n.prefetchOn===t:n.prefetchOn?.[t]??e.prefetchOn?.[t]}function y(){return!!((n.prefetch??e.prefetch)!==!1&&n.noPrefetch!==!0&&n.target!==`_blank`&&Un())}function b(e){return!!(!g.value&&v(e)&&y())}function ae(){let e=typeof l.value==`string`?l.value:p.value?H(l.value):o.resolve(l.value).fullPath;return p.value?new URL(e,window.location.href).href:e}function x(){g.value?p.value||h()._prefetch?.promote(Q(ae())):v(`interaction`)&&S()}async function S(e=h()){if(g.value||d.value===null)return;g.value=!0;let t=ae();await Promise.all([e.hooks.callHook(`link:prefetch`,t)?.catch(()=>{}),!p.value&&!m.value&&Kn(l.value,o)])}if(!n.custom&&b(`visibility`)){let e=h(),t,n=null;re(()=>{let r=Xn();Vn(()=>{t=Z(()=>{_?.value?.tagName&&(n=r.observe(_.value,async()=>{n?.(),n=null,await S(e)}))})})}),u(()=>{t&&Bn(t),n?.(),n=null})}return()=>{let t=n.target||null,s=qn(n.noRel?``:n.rel,e.externalRelAttribute,ee.value||m.value?`noopener noreferrer`:``)||null,u=e=>({navigate:f,get route(){if(!d.value)return;let e=new URL(d.value,window.location.href);return{path:e.pathname,fullPath:e.pathname,get query(){return E(e.search)},hash:e.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:d.value}},rel:s,target:t,isExternal:p.value||m.value,isActive:!1,isExactActive:!1,...e,href:typeof e?.href==`string`?z(e.href):d.value,prefetch:S,prefetched:g.value,shouldPrefetch:b});if(!p.value&&!m.value&&!i(l.value)){let t={ref:ie,to:l.value,activeClass:n.activeClass||e.activeClass,exactActiveClass:n.exactActiveClass||e.exactActiveClass,replace:n.replace,ariaCurrentValue:n.ariaCurrentValue,custom:n.custom};return n.custom||((v(`interaction`)||g.value)&&y()&&(t.onPointerenter=x,t.onFocus=x,t.onPointerdown=x),g.value&&(t.class=n.prefetchedClass||e.prefetchedClass),t.rel=n.rel||void 0),r(c,t,n.custom&&a.default?{default:e=>a.default(u(e))}:a.default)}return n.custom?a.default?a.default(u()):null:r(`a`,{ref:_,href:d.value||null,rel:s,target:t,onClick:async e=>{if(!(p.value||m.value)){e.preventDefault();try{let e=rt(d.value??``);return await(n.replace?o.replace(e):o.push(e))}finally{if(i(l.value)){let e=l.value.slice(1),t=e;try{t=decodeURIComponent(e)}catch{}document.getElementById(t)?.focus()}}}}},a.default?.())}}})}var Yn=Jn(ee);function $(e,t){if(t!==`append`&&t!==`remove`)return e;let n=t===`append`?we:O;return D(e)&&!e.startsWith(`http`)?e:n(e,!0)}function Xn(){let e=h();if(e._observer)return e._observer;let t=null,n=new Map;return e._observer={observe:(e,r)=>(t||=new IntersectionObserver(e=>{for(let t of e){let e=n.get(t.target);(t.isIntersecting||t.intersectionRatio>0)&&e&&e()}}),n.set(e,r),t.observe(e),()=>{n.delete(e),t?.unobserve(e),n.size===0&&(t?.disconnect(),t=null)})}}export{kt as $,J as A,Cn as B,mn as C,Ee as Ct,yn as D,At as E,hn as F,W as G,vt as H,pn as I,xt as J,Ct as K,xn as L,Sn as M,bn as N,tn as O,Qt as P,Ot as Q,$t as R,gn as S,De as St,_n as T,G as U,yt as V,ht as W,Dt as X,bt as Y,Et as Z,q as _,je as _t,Un as a,U as at,Tn as b,k as bt,Z as c,V as ct,Nn as d,Xe as dt,Tt as et,Pn as f,L as ft,un as g,D as gt,fn as h,We as ht,Kn as i,dt as it,cn as j,nn as k,zn as l,B as lt,sn as m,P as mt,Xn as n,pt as nt,Q as o,et as ot,En as p,Je as pt,wt as q,Wn as r,mt as rt,Vn as s,$e as st,Yn as t,ft as tt,Fn as u,Ye as ut,Gt as v,Se as vt,X as w,wn as x,Te as xt,Yt as y,Ae as yt,en as z};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./y75lAtyQ.js","./y07Wd5I9.js","./CkUAspOr.js","./D4ezFGbh.js","./Cl84O_XS.js","./3AsBWvce.js","./entry.CZW0K6xF.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{$ as e,A as t,B as n,C as r,E as i,Ht as a,N as o,R as s,S as c,T as l,V as u,W as d,X as f,Y as p,Z as m,_ as h,_t as g,at as _,bt as v,ft as y,gt as b,j as x,mt as S,ot as C,q as w,rt as T,s as E,tt as D,ut as O,w as k,zt as A}from"./CkUAspOr.js";import{o as j,s as M}from"./D4ezFGbh.js";import{_ as N,a as P,o as F,r as I}from"./3AsBWvce.js";import{C as L,S as R,d as z,h as B,n as ee,p as te,t as ne,v as re,y as V}from"./DgjW2lPh.js";import{a as H,i as ie,o as ae,s as U,t as oe}from"./BmkgJMJq.js";import{r as se}from"#entry";import{a as ce,i as le,n as W,r as ue,t as de}from"./BJuAqPpj.js";import{n as fe,t as G}from"./BaBNBiev.js";var pe={class:`grid gap-8 px-6 py-16 lg:grid-cols-2`},me={class:`flex flex-col gap-4`},he={class:`label`},ge={class:`display text-4xl font-semibold`},_e={class:`flex flex-col justify-center gap-5`},ve={class:`text-xs color-muted`},ye={class:`flex flex-col gap-2`},be={class:`label`},K=`npx furifont dev`,xe=Object.assign(o({__name:`CustomizeUnavailable`,setup(t){let{copied:n,copy:o}=ie();return(t,s)=>{let c=e(`i18n-t`);return p(),i(`div`,pe,[r(`div`,me,[r(`span`,he,a(t.$t(`customize.offline.eyebrow`)),1),r(`h1`,ge,a(t.$t(`customize.offline.title`)),1),x(c,{keypath:`customize.offline.body`,tag:`p`,class:`max-w-[52ch] text-[15px] lh-1.625 color-muted`},{folder:_(()=>[...s[1]||=[r(`code`,{class:`font-mono`},`./fonts`,-1)]]),_:1})]),r(`div`,_e,[r(`p`,ve,a(t.$t(`customize.offline.needs`)),1),r(`div`,ye,[r(`span`,be,a(t.$t(`customize.offline.run`)),1),r(`button`,{type:`button`,class:`focus-ring flex items-center justify-between gap-3 border border-strong px-4 py-3 text-left font-mono text-sm`,onClick:s[0]||=e=>v(o)(K)},[r(`span`,{class:`break-all`},`$ `+a(K)),r(`span`,{class:A([v(n)===K?`i-ph-check`:`i-ph-copy`,`shrink-0 color-muted`])},null,2)])])])])}}}),{__name:`CustomizeUnavailable`}),q=`furifont`,J=350,Se=`furifont:customize:`;function Y(e,t){let n;return()=>{clearTimeout(n),n=setTimeout(e,t)}}function Ce(e){return e instanceof Error?e.message:String(e)}var X=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function we(e,t){let n={};for(let r of new Set([...Object.keys(e),...Object.keys(t)])){let[i,a]=[e[r],t[r]];if(X(i)&&X(a)){let e=we(i,a);Object.keys(e).length&&(n[r]=e)}else JSON.stringify(i)!==JSON.stringify(a)&&(n[r]=i??null)}return n}function Te(e,t){let n={...e};for(let[e,r]of Object.entries(t)){let t=n[e];r===null?delete n[e]:n[e]=X(r)&&X(t)?Te(t,r):r}return n}var Z=[`otf`,`woff2`],Ee=B({...ae.entries,base:V(L(),te()),formats:V(ee(re(Z)),z(1))});function De(e,t){let n;try{n=R(Ee,Te(t,JSON.parse(localStorage.getItem(e)??`{}`)))}catch{}return n?.success?n.output:(localStorage.removeItem(e),structuredClone(t))}function Oe(){let{devCustomizeBase:e}=E().public,t=S(`connecting`),n=b(),r=S({}),i=b(),a=S(le[0].text),o=y({loading:!1}),s=y({loading:!1}),c=y({running:!1,files:[]}),l=S(),u,f,p,m=0,h=0,_=0,v={},x=``;async function C(){i.value=await f.call(`report`,g(r.value)).catch(()=>i.value)}async function D(){let e=++_,t=await f.call(`estimate`,g(r.value)).catch(()=>void 0);e===_&&Object.assign(s,{size:t,loading:!1})}async function O(){let e=++m;o.loading=!0;try{let t=await f.call(`preview`,g(r.value),a.value);if(e!==m)return;let n=Uint8Array.from(atob(t.font),e=>e.charCodeAt(0)),i=new FontFace(`Furifont Preview ${e}`,n,{weight:`${F} ${P}`});await i.load(),document.fonts.add(i),p&&document.fonts.delete(p),p=i,Object.assign(o,{family:i.family,ms:t.ms,glyphs:t.stats.glyphs,variable:t.variable,error:void 0})}catch(t){e===m&&(o.error=Ce(t))}finally{e===m&&(o.loading=!1)}}let k=Y(async()=>{let e=++h;s.loading=!0,await Promise.all([C(),O()]),e===h&&D()},J);T(()=>JSON.stringify({...r.value,formats:void 0}),k),T(a,Y(O,J));function A(){let e=we(g(r.value),v);Object.keys(e).length?localStorage.setItem(x,JSON.stringify(e)):localStorage.removeItem(x)}T(r,A,{deep:!0});async function j(){try{let{connectDevframe:e}=await se(async()=>{let{connectDevframe:e}=await import(`./y75lAtyQ.js`);return{connectDevframe:e}},__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url);u=await e(void 0),f=u.scope(q).rpc}catch{t.value=`unavailable`;return}await u.ensureTrusted(1500).catch(()=>!1)?await N():t.value=`locked`}async function M(e){return!u||!await u.requestTrustWithCode(e)?!1:(await N(),!0)}async function N(){n.value=await f.call(`state`),v=n.value.config,x=Se+n.value.configPath,r.value=De(x,v),t.value=`ready`,k()}function I(){r.value={...structuredClone(v),words:g(r.value.words)}}async function L(){Object.assign(c,{running:!0,files:[],error:void 0,step:`plan`,done:null,total:null});try{let{streamId:e}=await f.call(`build`,g(r.value));for await(let t of u.scope(q).rpc.streaming.subscribe(`build`,e))t.type===`progress`?Object.assign(c,{step:t.step,done:t.done,total:t.total}):t.type===`done`?c.files=t.files:c.error=t.message}catch(e){c.error=Ce(e)}finally{c.running=!1}}async function R(){l.value=await f.call(`save`,g(r.value)),v=structuredClone(g(r.value)),A()}function z(e){return f.call(`search`,e)}function B(e,t){let n=r.value.words??={},i=n[e]??[];n[e]=i.includes(t)?i.filter(e=>e!==t):[...i,t]}return w(j),d(()=>{p&&document.fonts.delete(p)}),{status:t,state:n,config:r,report:i,text:a,preview:o,estimate:s,build:c,savedTo:l,unlock:M,runBuild:L,save:R,reset:I,search:z,toggleWord:B}}var ke=Symbol(`customize`);function Ae(){let e=Oe();return f(ke,e),e}function Q(){let e=s(ke);if(!e)throw Error(`useCustomize() is only available inside the customize page`);return e}var je={class:`label`},Me={class:`text-2xl font-semibold tracking-tight`},Ne=[`aria-label`],Pe={key:0,class:`text-sm`},Fe=[`disabled`],Ie=Object.assign(o({__name:`CustomizeAuth`,setup(t){let{unlock:n}=Q(),o=S(``),s=S(!1),c=S(!1);async function u(){c.value=!0,s.value=!await n(o.value.trim()),c.value=!1}return(t,n)=>{let d=e(`i18n-t`);return p(),i(`form`,{class:`mx-auto flex max-w-sm flex-col gap-4 px-6 py-24`,onSubmit:M(u,[`prevent`])},[r(`span`,je,a(t.$t(`customize.auth.eyebrow`)),1),r(`h1`,Me,a(t.$t(`customize.auth.title`)),1),x(d,{keypath:`customize.auth.body`,tag:`p`,class:`text-sm color-muted`},{command:_(()=>[...n[1]||=[r(`code`,{class:`font-mono`},`furifont dev`,-1)]]),_:1}),C(r(`input`,{"onUpdate:modelValue":n[0]||=e=>O(o)?o.value=e:null,inputmode:`numeric`,autocomplete:`one-time-code`,maxlength:`6`,"aria-label":t.$t(`customize.auth.code`),class:`input text-center font-mono text-xl tracking-[0.5em]`},null,8,Ne),[[j,v(o)]]),v(s)?(p(),i(`p`,Pe,a(t.$t(`customize.auth.failed`)),1)):l(``,!0),r(`button`,{type:`submit`,class:`btn-solid focus-ring`,disabled:v(c)||v(o).trim().length!==6},a(t.$t(`customize.auth.unlock`)),9,Fe)],32)}}}),{__name:`CustomizeAuth`}),Le={class:`label flex justify-between gap-3`},Re={class:`color-base tabular-nums`},ze={key:0,class:`text-xs color-muted`},Be=Object.assign(o({__name:`UiRange`,props:n({label:{},display:{},hint:{},min:{},max:{},step:{},disabled:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=D(e,`modelValue`);return(n,o)=>{let s=W;return p(),i(`label`,{class:A([`flex flex-col gap-1.5`,e.disabled&&`opacity-40`])},[r(`span`,Le,[r(`span`,null,a(e.label),1),r(`span`,Re,a(e.display),1)]),x(s,{modelValue:t.value,"onUpdate:modelValue":o[0]||=e=>t.value=e,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`min`,`max`,`step`,`disabled`]),e.hint?(p(),i(`span`,ze,a(e.hint),1)):l(``,!0)],2)}}}),{__name:`UiRange`}),Ve=[`placeholder`],He=[`placeholder`],Ue={id:`customize-base-fonts`},We=[`value`],Ge={class:`flex flex-col gap-2`},Ke={class:`label mb-1.5`},qe={class:`flex flex-wrap gap-2`},Je=[`title`,`aria-pressed`,`onClick`],$=500,Ye=24e3,Xe=3e4,Ze=Object.assign(o({__name:`CustomizeOptions`,setup(e){let{t:n}=I(),{config:o,state:s,report:l,reset:u}=Q(),d=c({get:()=>o.value.skip??N.plan.skip,set:e=>o.value.skip=e}),f=c({get:()=>o.value.take??30500,set:e=>o.value.take=e>Xe?void 0:e}),g=c(()=>l.value&&l.value.stats.patterns-l.value.stats.places),y=c({get:()=>o.value.skipJlpt?H.indexOf(o.value.skipJlpt)+1:0,set:e=>{o.value.skipJlpt=H[e-1]}}),b=c(()=>y.value>1?`N5–${H[y.value-1]}`:H[y.value-1]),S=c({get:()=>o.value.isolated??N.plan.isolated,set:e=>o.value.isolated=e}),w=c({get:()=>o.value.isolatedMinShare??N.plan.isolatedMinShare,set:e=>o.value.isolatedMinShare=e}),T=c(()=>[`hiragana`,`katakanaOn`,`hepburn`].map(e=>({value:e,label:n(`customize.options.${e}`)}))),E=c(()=>o.value.metrics??{}),D=[{key:`rubyScale`,label:`rubyScale`,min:.2,max:.8,step:.05,digits:2},{key:`rubyGap`,label:`rubyGap`,min:0,max:.5,step:.01,digits:2},{key:`compressionFloor`,label:`squeeze`,min:.3,max:1,step:.05,digits:2},{key:`maxRubyWidth`,label:`maxWidth`,min:1,max:3,step:.1,digits:1}],k=c({get:()=>o.value.rubyScript??`hiragana`,set:e=>o.value.rubyScript=e}),P=e=>(o.value.sources??U).includes(e);function F(e){let t=o.value.sources??[...U];o.value.sources=t.includes(e)?t.filter(t=>t!==e):[...t,e]}return(e,n)=>{let c=fe,l=ue,I=Be,L=de,R=G;return p(),i(`form`,{class:`flex flex-col gap-5 p-6`,onSubmit:n[8]||=M(()=>{},[`prevent`])},[x(c,{label:e.$t(`customize.options.family`)},{default:_(()=>[C(r(`input`,{"onUpdate:modelValue":n[0]||=e=>v(o).family=e,class:`input`,placeholder:v(N).plan.family},null,8,Ve),[[j,v(o).family]])]),_:1},8,[`label`]),x(c,{label:e.$t(`customize.options.base`),hint:e.$t(`customize.options.baseHint`)},{default:_(()=>[C(r(`input`,{"onUpdate:modelValue":n[1]||=e=>v(o).base=e,class:`input`,list:`customize-base-fonts`,placeholder:v(N).build.base},null,8,He),[[j,v(o).base]]),r(`datalist`,Ue,[(p(!0),i(h,null,m(v(s)?.baseFonts,e=>(p(),i(`option`,{key:e,value:e},null,8,We))),128))])]),_:1},8,[`label`,`hint`]),x(c,{label:e.$t(`customize.options.script`)},{default:_(()=>[x(l,{modelValue:v(k),"onUpdate:modelValue":n[2]||=e=>O(k)?k.value=e:null,label:e.$t(`customize.options.script`),options:v(T)},null,8,[`modelValue`,`label`,`options`])]),_:1},8,[`label`]),n[9]||=r(`div`,{class:`h-px bg-[var(--ff-line)]`},null,-1),r(`fieldset`,Ge,[r(`legend`,Ke,a(e.$t(`customize.options.sources`)),1),r(`div`,qe,[(p(!0),i(h,null,m(v(U),t=>(p(),i(`button`,{key:t,type:`button`,class:A([`focus-ring border px-2 py-1 text-xs transition-colors`,P(t)?`border-inverse bg-inverse color-inverse`:`border-base color-muted hover:border-strong`]),title:e.$t(`customize.options.source.${t}.hint`),"aria-pressed":P(t),onClick:e=>F(t)},a(e.$t(`customize.options.source.${t}.name`)),11,Je))),128))])]),x(I,{modelValue:v(y),"onUpdate:modelValue":n[3]||=e=>O(y)?y.value=e:null,label:e.$t(`customize.options.jlpt`),display:v(b)??e.$t(`customize.options.none`),hint:e.$t(`customize.options.jlptHint`),min:0,max:v(H).length},null,8,[`modelValue`,`label`,`display`,`hint`,`max`]),x(L,{modelValue:v(S),"onUpdate:modelValue":n[4]||=e=>O(S)?S.value=e:null},{default:_(()=>[t(a(e.$t(`customize.options.isolated`)),1)]),_:1},8,[`modelValue`]),x(I,{modelValue:v(w),"onUpdate:modelValue":n[5]||=e=>O(w)?w.value=e:null,label:e.$t(`customize.options.share`),display:v(w).toFixed(2),hint:e.$t(`customize.options.shareHint`),min:.5,max:1,step:.05,disabled:!v(S)},null,8,[`modelValue`,`label`,`display`,`hint`,`disabled`]),n[10]||=r(`div`,{class:`h-px bg-[var(--ff-line)]`},null,-1),x(I,{modelValue:v(d),"onUpdate:modelValue":n[6]||=e=>O(d)?d.value=e:null,label:e.$t(`customize.options.skip`),display:v(d)?v(d).toLocaleString(`en`):e.$t(`customize.options.none`),hint:e.$t(`customize.options.skipHint`),min:0,max:Ye,step:$},null,8,[`modelValue`,`label`,`display`,`hint`]),x(I,{modelValue:v(f),"onUpdate:modelValue":n[7]||=e=>O(f)?f.value=e:null,label:e.$t(`customize.options.words`),display:v(f)>Xe?e.$t(`customize.options.all`):v(f).toLocaleString(`en`),hint:v(g)===void 0?void 0:e.$t(`customize.options.wordsHint`,{count:v(g).toLocaleString(`en`)}),min:$,max:30500,step:$},null,8,[`modelValue`,`label`,`display`,`hint`,`max`]),n[11]||=r(`div`,{class:`h-px bg-[var(--ff-line)]`},null,-1),(p(),i(h,null,m(D,t=>x(I,{key:t.key,"model-value":v(E)[t.key]??v(N).plan.metrics[t.key],label:e.$t(`customize.options.${t.label}`),display:(v(E)[t.key]??v(N).plan.metrics[t.key]).toFixed(t.digits),min:t.min,max:t.max,step:t.step,"onUpdate:modelValue":e=>v(E)[t.key]=e},null,8,[`model-value`,`label`,`display`,`min`,`max`,`step`,`onUpdate:modelValue`])),64)),x(R,{variant:`ghost`,icon:`i-ph-arrow-counter-clockwise`,class:`self-start`,title:e.$t(`customize.options.resetHint`),onClick:v(u)},{default:_(()=>[t(a(e.$t(`customize.options.reset`)),1)]),_:1},8,[`title`,`onClick`])],32)}}}),{__name:`CustomizeOptions`}),Qe={class:`relative min-h-56 px-6 py-8`},$e={key:0,class:`mt-4 font-mono text-xs`},et={class:`flex flex-wrap items-center gap-4 border-t border-base px-6 py-3`},tt={class:`text-xs color-muted`},nt={class:`font-mono text-xs color-muted tabular-nums`},rt=Object.assign(o({__name:`CustomizePreview`,setup(e){let{text:t,preview:n}=Q(),o=S(32),s=S(400);return(e,c)=>{let u=G,d=oe,f=W;return p(),i(`div`,null,[r(`div`,Qe,[x(u,{variant:`ghost`,icon:`i-ph-shuffle`,class:`absolute right-3 top-3 w-9 px-0`,"aria-label":e.$t(`shuffle`),title:e.$t(`shuffle`),onClick:c[0]||=n=>t.value=(`otherSample`in e?e.otherSample:v(ce))(v(t)).text},null,8,[`aria-label`,`title`]),x(d,{text:v(t),"onUpdate:text":c[1]||=e=>O(t)?t.value=e:null,family:v(n).family,size:v(o),weight:v(s),class:A(v(n).loading&&`opacity-60`)},null,8,[`text`,`family`,`size`,`weight`,`class`]),v(n).error?(p(),i(`p`,$e,a(v(n).error),1)):l(``,!0)]),r(`div`,et,[r(`span`,tt,a(v(n).loading?e.$t(`customize.preview.compiling`):e.$t(`playground.textHint`)),1),v(n).variable?(p(),k(f,{key:0,modelValue:v(s),"onUpdate:modelValue":c[2]||=e=>O(s)?s.value=e:null,min:`MIN_WEIGHT`in e?e.MIN_WEIGHT:v(F),max:`MAX_WEIGHT`in e?e.MAX_WEIGHT:v(P),step:10,"aria-label":e.$t(`customize.preview.weight`),class:`ml-auto w-28`},null,8,[`modelValue`,`min`,`max`,`aria-label`])):l(``,!0),x(f,{modelValue:v(o),"onUpdate:modelValue":c[3]||=e=>O(o)?o.value=e:null,min:16,max:64,"aria-label":e.$t(`customize.preview.size`),class:A(v(n).variable?`w-28`:`ml-auto w-28`)},null,8,[`modelValue`,`aria-label`,`class`]),r(`span`,nt,a(v(n).ms===void 0?``:e.$t(`customize.preview.stats`,{glyphs:v(n).glyphs??0,ms:v(n).ms})),1)])])}}}),{__name:`CustomizePreview`}),it={class:`flex flex-col gap-1 px-4 py-3`},at={class:`font-mono text-xl tabular-nums`},ot={class:`label`},st=Object.assign(o({__name:`UiStat`,props:{label:{},value:{}},setup(e){return(t,n)=>(p(),i(`div`,it,[r(`span`,at,a(typeof e.value==`number`?e.value.toLocaleString(`en`):e.value),1),r(`span`,ot,a(e.label),1)]))}}),{__name:`UiStat`}),ct={class:`grid grid-cols-3 border-b border-base lg:grid-cols-7`},lt={key:0,class:`label col-span-full px-6 py-4`},ut={class:`flex flex-wrap gap-3 px-6 pt-4 font-mono text-xs color-muted tabular-nums items-center`},dt=[`aria-label`],ft=[`aria-pressed`,`disabled`,`onClick`],pt={key:0},mt={key:0},ht={key:1},gt={class:`flex flex-wrap items-center gap-3 px-6 py-4`},_t=[`disabled`],vt={key:0,class:`font-mono text-xs color-muted`},yt={key:0,class:`border-t border-base px-6 py-3 font-mono text-xs`},bt={key:1,class:`border-t border-base`},xt=[`href`],St={class:`font-mono text-xs color-muted tabular-nums`},Ct=Object.assign(o({__name:`CustomizeBuild`,setup(e){let{t:n}=I(),{config:o,report:s,estimate:d,build:f,savedTo:g,runBuild:_,save:y}=Q(),b=e=>`${(e/1024/1024).toFixed(2)} MB`,x=c(()=>o.value.formats??Z);function S(e){o.value.formats=Z.filter(t=>t===e?!x.value.includes(t):x.value.includes(t))}let C=c(()=>{let e=d.size;return e&&[`woff2`,`otf`].filter(e=>x.value.includes(e)).map(t=>n(`customize.build.estimate.${t}`,{size:b(e[t])})).join(` · `)}),w=c(()=>{let e=s.value?.stats;return e?[{label:n(`customize.build.words`),value:e.patterns-e.places},{label:n(`customize.build.places`),value:e.places},{label:n(`customize.build.ambiguous`),value:e.ambiguous},{label:n(`customize.build.lone`),value:e.isolated},{label:n(`customize.build.protected`),value:e.protectedAnnotated+e.protectedBare},{label:n(`customize.build.glyphs`),value:e.glyphs},{label:n(`customize.build.rules`),value:e.rules}]:[]}),T=c(()=>f.total?`${f.step} ${f.done}/${f.total}`:f.step);return(e,n)=>{let o=st;return p(),i(`div`,null,[r(`div`,ct,[(p(!0),i(h,null,m(v(w),e=>(p(),k(o,u({key:e.label},{ref_for:!0},e,{class:`border-r border-base last:border-r-0`}),null,16))),128)),v(w).length?l(``,!0):(p(),i(`span`,lt,a(e.$t(`customize.build.planning`)),1))]),r(`div`,ut,[r(`div`,{role:`group`,"aria-label":e.$t(`customize.build.formats`),class:`flex gap-2`},[(p(!0),i(h,null,m(`FONT_FORMATS`in e?e.FONT_FORMATS:v(Z),e=>(p(),i(`button`,{key:e,type:`button`,class:A([`focus-ring border px-2 py-1 font-mono text-xs transition-colors disabled:cursor-not-allowed`,v(x).includes(e)?`border-strong bg-inverse color-inverse`:`border-base color-muted hover:border-strong`]),"aria-pressed":v(x).includes(e),disabled:v(f).running||v(x).length===1&&v(x).includes(e),onClick:t=>S(e)},` .`+a(e),11,ft))),128))],8,dt),v(C)||v(d).loading?(p(),i(`div`,pt,[v(C)?(p(),i(`span`,mt,a(v(C)),1)):l(``,!0),v(d).loading?(p(),i(`span`,ht,a(e.$t(`customize.build.estimating`)),1)):l(``,!0)])):l(``,!0)]),r(`div`,gt,[r(`button`,{type:`button`,class:`btn-solid focus-ring`,disabled:v(f).running,onClick:n[0]||=(...e)=>v(_)&&v(_)(...e)},[r(`span`,{class:A(v(f).running?`i-ph-circle-notch animate-spin`:`i-ph-hammer`)},null,2),t(` `+a(v(f).running?v(T):e.$t(`customize.build.run`)),1)],8,_t),r(`button`,{type:`button`,class:`btn-outline focus-ring`,onClick:n[1]||=(...e)=>v(y)&&v(y)(...e)},[n[2]||=r(`span`,{class:`i-ph-floppy-disk`},null,-1),t(` `+a(e.$t(`customize.build.save`)),1)]),v(g)?(p(),i(`span`,vt,a(v(g)),1)):l(``,!0)]),v(f).error?(p(),i(`p`,yt,a(v(f).error),1)):l(``,!0),v(f).files.length?(p(),i(`ul`,bt,[(p(!0),i(h,null,m(v(f).files,e=>(p(),i(`li`,{key:e.name,class:`flex items-center gap-4 border-b border-base px-6 py-2 last:border-b-0`},[r(`a`,{href:e.url,download:``,class:`focus-ring font-mono text-sm underline underline-offset-3`},a(e.name),9,xt),r(`span`,St,a(b(e.bytes)),1)]))),128))])):l(``,!0)])}}}),{__name:`CustomizeBuild`}),wt={class:`flex flex-col gap-2 border-b border-base p-6`},Tt=[`placeholder`,`aria-label`],Et={class:`text-xs color-muted`},Dt={class:`max-h-[32rem] overflow-y-auto`},Ot={lang:`ja`,class:`w-28 shrink-0 text-base`},kt=[`aria-pressed`,`title`,`onClick`],At=[`onClick`],jt=Object.assign(o({__name:`CustomizeWords`,setup(e){let{config:t,report:n,search:o,toggleWord:s}=Q(),l=S(``),u=b([]);T(l,async e=>{let t=e.trim(),n=t?await o(t).catch(()=>[]):[];e===l.value&&(u.value=n)});let d=c(()=>new Set(t.value.words?.pin??[])),f=c(()=>new Set(t.value.words?.remove??[])),g=c(()=>l.value.trim()?u.value:Object.entries(n.value?.ivs.words??{}).map(([e,t])=>({form:e,readings:t.map(e=>({notation:e,score:0,sources:[]}))})));return(e,t)=>(p(),i(`div`,null,[r(`div`,wt,[C(r(`input`,{"onUpdate:modelValue":t[0]||=e=>O(l)?l.value=e:null,type:`search`,lang:`ja`,placeholder:e.$t(`customize.dictionary.search`),"aria-label":e.$t(`customize.dictionary.search`),class:`input max-w-md`},null,8,Tt),[[j,v(l)]]),r(`p`,Et,a(v(l).trim()?e.$t(`customize.dictionary.results`,{count:v(u).length}):e.$t(`customize.dictionary.hint`)),1)]),r(`ul`,Dt,[(p(!0),i(h,null,m(v(g),t=>(p(),i(`li`,{key:t.form,class:A([`flex flex-wrap items-center gap-2 border-b border-base px-6 py-2`,v(f).has(t.form)&&`opacity-40`])},[r(`span`,Ot,a(t.form),1),(p(!0),i(h,null,m(t.readings,t=>(p(),i(`button`,{key:t.notation,type:`button`,lang:`ja`,class:A([`focus-ring border px-2 py-0.5 text-sm transition-colors`,v(d).has(t.notation)?`border-inverse bg-inverse color-inverse`:`border-base hover:border-strong`]),"aria-pressed":v(d).has(t.notation),title:t.sources.length?`${t.score} · ${t.sources.join(` `)}`:e.$t(`customize.dictionary.noTag`),onClick:e=>v(s)(`pin`,t.notation)},a(t.notation),11,kt))),128)),r(`button`,{type:`button`,class:`btn-ghost focus-ring ml-auto h-7 px-2 text-xs`,onClick:e=>v(s)(`remove`,t.form)},a(v(f).has(t.form)?e.$t(`customize.dictionary.restore`):e.$t(`customize.dictionary.remove`)),9,At)],2))),128))])]))}}),{__name:`CustomizeWords`}),Mt={class:`flex flex-col gap-4 p-6`},Nt=[`placeholder`,`aria-label`],Pt={type:`submit`,class:`btn-outline focus-ring shrink-0`},Ft={class:`label`},It={class:`flex flex-wrap gap-2`},Lt=[`aria-label`,`onClick`],Rt={key:0,class:`text-xs color-muted`},zt=Object.assign(o({__name:`CustomizeCustomWords`,setup(e){let{config:n,toggleWord:o}=Q(),s=S(``),u=c(()=>[{key:`add`,label:`customize.custom.added`,items:n.value.words?.add??[]},{key:`pin`,label:`customize.custom.pinned`,items:n.value.words?.pin??[]},{key:`remove`,label:`customize.custom.removed`,items:n.value.words?.remove??[]}]);function d(){/\[[^\]]+\]/.test(s.value)&&(o(`add`,s.value.trim()),s.value=``)}return(e,n)=>(p(),i(`div`,Mt,[r(`form`,{class:`flex gap-2`,onSubmit:M(d,[`prevent`])},[C(r(`input`,{"onUpdate:modelValue":n[0]||=e=>O(s)?s.value=e:null,lang:`ja`,placeholder:e.$t(`customize.custom.placeholder`),"aria-label":e.$t(`customize.custom.label`),class:`input font-mono`},null,8,Nt),[[j,v(s)]]),r(`button`,Pt,a(e.$t(`customize.custom.add`)),1)],32),(p(!0),i(h,null,m(v(u),s=>(p(),i(`div`,{key:s.key,class:`flex flex-col gap-2`},[r(`span`,Ft,a(e.$t(s.label,{count:s.items.length})),1),r(`div`,It,[(p(!0),i(h,null,m(s.items,c=>(p(),i(`button`,{key:c,type:`button`,lang:`ja`,class:`focus-ring group flex items-center gap-1.5 border border-base px-2 py-0.5 text-sm hover:border-strong`,"aria-label":e.$t(`customize.custom.takeOut`,{item:c}),onClick:e=>v(o)(s.key,c)},[t(a(c)+` `,1),n[1]||=r(`span`,{class:`i-ph-x text-xs color-muted group-hover:color-base`},null,-1)],8,Lt))),128)),s.items.length?l(``,!0):(p(),i(`span`,Rt,a(e.$t(`customize.custom.none`)),1))])]))),128))]))}}),{__name:`CustomizeCustomWords`}),Bt={key:0,class:`label px-6 py-24 text-center`},Vt={key:3,class:`grid lg:grid-cols-[340px_1fr]`},Ht={class:`border-b border-base lg:border-b-0 lg:border-r`},Ut={class:`flex items-baseline justify-between border-b border-base px-6 py-3`},Wt={class:`label color-base`},Gt={class:`font-mono text-[11px] color-muted`},Kt={class:`min-w-0`},qt=o({__name:`customize`,setup(e){let{status:t,state:n}=Ae();return(e,o)=>{let s=xe,c=Ie,l=Ze,u=rt,d=ne,f=Ct,m=jt,h=zt;return p(),i(`div`,null,[v(t)===`connecting`?(p(),i(`p`,Bt,a(e.$t(`customize.connecting`)),1)):v(t)===`unavailable`?(p(),k(s,{key:1})):v(t)===`locked`?(p(),k(c,{key:2})):(p(),i(`div`,Vt,[r(`aside`,Ht,[r(`div`,Ut,[r(`h1`,Wt,a(e.$t(`customize.title`)),1),r(`span`,Gt,a(v(n)?.sources.JMdict),1)]),x(l)]),r(`div`,Kt,[x(d,{index:`01`,title:e.$t(`customize.sections.preview`),class:`border-t-0 bg-base lg:sticky lg:top-14 lg:z-1 lg:border-b`},{default:_(()=>[x(u)]),_:1},8,[`title`]),x(d,{index:`02`,title:e.$t(`customize.sections.build`),class:`lg:border-t-0`},{default:_(()=>[x(f)]),_:1},8,[`title`]),x(d,{index:`03`,title:e.$t(`customize.sections.dictionary`)},{default:_(()=>[x(m)]),_:1},8,[`title`]),x(d,{index:`04`,title:e.$t(`customize.sections.words`)},{default:_(()=>[x(h)]),_:1},8,[`title`])])]))])}}});export{qt as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as e,E as t,Ht as n,N as r,Q as i,T as a,Y as o,j as s}from"./CkUAspOr.js";import{t as c}from"./3AsBWvce.js";var l={lang:void 0,message:void 0,abortEarly:void 0,abortPipeEarly:void 0};function u(e){return e?{lang:e?.lang??void 0,message:e?.message,abortEarly:e?.abortEarly??void 0,abortPipeEarly:e?.abortPipeEarly??void 0}:l}function d(e){let t=typeof e;return t===`string`?`"${e}"`:t===`number`||t===`bigint`||t===`boolean`?`${e}`:t===`object`||t===`function`?(e&&Object.getPrototypeOf(e)?.constructor?.name)??`null`:t}function f(e,t,n,r,i){let a=i&&`input`in i?i.input:n.value,o=i?.expected??e.expects??null,s=i?.received??d(a),c={kind:e.kind,type:e.type,input:a,expected:o,received:s,message:`Invalid ${t}: ${o?`Expected ${o} but r`:`R`}eceived ${s}`,requirement:e.requirement,path:i?.path,issues:i?.issues,lang:r.lang,abortEarly:r.abortEarly,abortPipeEarly:r.abortPipeEarly},l=e.kind===`schema`,u=i?.message??e.message??(e.reference,c.lang,void 0)??(l?(c.lang,void 0):null)??r.message??(c.lang,void 0);u!==void 0&&(c.message=typeof u==`function`?u(c):u),l&&(n.typed=!1),n.issues?n.issues.push(c):n.issues=[c]}function p(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function m(e,t){return Object.prototype.hasOwnProperty.call(e,t)&&t!==`__proto__`&&t!==`prototype`&&t!==`constructor`}function h(e,t){let n=[...new Set(e)];return n.length>1?`(${n.join(` ${t} `)})`:n[0]??`never`}function g(e){return e[`~standard`]={version:1,vendor:`valibot`,validate:t=>e[`~run`]({value:t},u())},e}var _=class extends Error{constructor(e){super(e[0].message),this.name=`ValiError`,this.issues=e}};function v(e,t){return{kind:`validation`,type:`check`,reference:v,async:!1,expects:null,requirement:e,message:t,"~run"(e,t){return e.typed&&!this.requirement(e.value)&&f(this,`input`,e,t),e}}}function y(e){return{kind:`validation`,type:`empty`,reference:y,async:!1,expects:`0`,message:e,"~run"(e,t){return e.typed&&e.value.length>0&&f(this,`length`,e,t,{received:`${e.value.length}`}),e}}}function b(e){return{kind:`validation`,type:`integer`,reference:b,async:!1,expects:null,requirement:Number.isInteger,message:e,"~run"(e,t){return e.typed&&!this.requirement(e.value)&&f(this,`integer`,e,t),e}}}function x(e,t){return{kind:`validation`,type:`max_length`,reference:x,async:!1,expects:`<=${e}`,requirement:e,message:t,"~run"(e,t){return e.typed&&e.value.length>this.requirement&&f(this,`length`,e,t,{received:`${e.value.length}`}),e}}}function S(e,t){return{kind:`validation`,type:`max_value`,reference:S,async:!1,expects:`<=${e instanceof Date?e.toJSON():d(e)}`,requirement:e,message:t,"~run"(e,t){return e.typed&&!(e.value<=this.requirement)&&f(this,`value`,e,t,{received:e.value instanceof Date?e.value.toJSON():d(e.value)}),e}}}function C(e,t){return{kind:`validation`,type:`min_length`,reference:C,async:!1,expects:`>=${e}`,requirement:e,message:t,"~run"(e,t){return e.typed&&e.value.length<this.requirement&&f(this,`length`,e,t,{received:`${e.value.length}`}),e}}}function w(e,t){return{kind:`validation`,type:`min_value`,reference:w,async:!1,expects:`>=${e instanceof Date?e.toJSON():d(e)}`,requirement:e,message:t,"~run"(e,t){return e.typed&&!(e.value>=this.requirement)&&f(this,`value`,e,t,{received:e.value instanceof Date?e.value.toJSON():d(e.value)}),e}}}function T(e){return{kind:`validation`,type:`non_empty`,reference:T,async:!1,expects:`!0`,message:e,"~run"(e,t){return e.typed&&e.value.length===0&&f(this,`length`,e,t,{received:`0`}),e}}}function E(e,t){return{kind:`validation`,type:`regex`,reference:E,async:!1,expects:`${e}`,requirement:e,message:t,"~run"(e,t){return e.typed&&!this.requirement.test(e.value)&&f(this,`format`,e,t),e}}}function D(e){return{kind:`transformation`,type:`transform`,reference:D,async:!1,operation:e,"~run"(e){return e.value=this.operation(e.value),e}}}function O(){return{kind:`transformation`,type:`trim`,reference:O,async:!1,"~run"(e){return e.value=e.value.trim(),e}}}function k(e,t,n){return typeof e.fallback==`function`?e.fallback(t,n):e.fallback}function A(e,t,n){return typeof e.default==`function`?e.default(t,n):e.default}function j(e,t){return g({kind:`schema`,type:`array`,reference:j,expects:`Array`,async:!1,item:e,message:t,"~run"(e,t){let n=e.value;if(Array.isArray(n)){e.typed=!0,e.value=[];for(let r=0;r<n.length;r++){let i=n[r],a=this.item[`~run`]({value:i},t);if(a.issues){let o={type:`array`,origin:`value`,input:n,key:r,value:i};for(let t of a.issues)t.path?t.path.unshift(o):t.path=[o],e.issues?.push(t);if(e.issues||=a.issues,t.abortEarly){e.typed=!1;break}}a.typed||(e.typed=!1),e.value.push(a.value)}}else f(this,`type`,e,t);return e}})}function M(e){return g({kind:`schema`,type:`boolean`,reference:M,expects:`boolean`,async:!1,message:e,"~run"(e,t){return typeof e.value==`boolean`?e.typed=!0:f(this,`type`,e,t),e}})}function N(e,t){return g({kind:`schema`,type:`custom`,reference:N,expects:`unknown`,async:!1,check:e,message:t,"~run"(e,t){return this.check(e.value)?e.typed=!0:f(this,`type`,e,t),e}})}function P(e,t){return g({kind:`schema`,type:`literal`,reference:P,expects:d(e),async:!1,literal:e,message:t,"~run"(e,t){return p(e.value,this.literal)?e.typed=!0:f(this,`type`,e,t),e}})}function F(e){return g({kind:`schema`,type:`number`,reference:F,expects:`number`,async:!1,message:e,"~run"(e,t){return typeof e.value==`number`&&!isNaN(e.value)?e.typed=!0:f(this,`type`,e,t),e}})}function I(e,t){return g({kind:`schema`,type:`object`,reference:I,expects:`Object`,async:!1,entries:e,message:t,"~run"(e,t){let n=e.value;if(n&&typeof n==`object`){e.typed=!0,e.value={};for(let r in this.entries){let i=this.entries[r];if(r in n||(i.type===`exact_optional`||i.type===`optional`||i.type===`nullish`)&&i.default!==void 0){let a=r in n?n[r]:A(i),o=i[`~run`]({value:a},t);if(o.issues){let i={type:`object`,origin:`value`,input:n,key:r,value:a};for(let t of o.issues)t.path?t.path.unshift(i):t.path=[i],e.issues?.push(t);if(e.issues||=o.issues,t.abortEarly){e.typed=!1;break}}o.typed||(e.typed=!1),e.value[r]=o.value}else if(i.fallback!==void 0)e.value[r]=k(i);else if(i.type!==`exact_optional`&&i.type!==`optional`&&i.type!==`nullish`&&(f(this,`key`,e,t,{input:void 0,expected:`"${r}"`,path:[{type:`object`,origin:`key`,input:n,key:r,value:n[r]}]}),t.abortEarly))break}}else f(this,`type`,e,t);return e}})}function L(e,t){return g({kind:`schema`,type:`optional`,reference:L,expects:`(${e.expects} | undefined)`,async:!1,wrapped:e,default:t,"~run"(e,t){return e.value===void 0&&(this.default!==void 0&&(e.value=A(this,e,t)),e.value===void 0)?(e.typed=!0,e):this.wrapped[`~run`](e,t)}})}function R(e,t){return g({kind:`schema`,type:`picklist`,reference:R,expects:h(e.map(d),`|`),async:!1,options:e,message:t,"~run"(e,t){return this.options.includes(e.value)?e.typed=!0:f(this,`type`,e,t),e}})}function z(e,t,n){return g({kind:`schema`,type:`record`,reference:z,expects:`Object`,async:!1,key:e,value:t,message:n,"~run"(e,t){let n=e.value;if(n&&typeof n==`object`){e.typed=!0,e.value={};for(let r in n)if(m(n,r)){let i=n[r],a=this.key[`~run`]({value:r},t);if(a.issues){let o={type:`object`,origin:`key`,input:n,key:r,value:i};for(let t of a.issues)t.path=[o],e.issues?.push(t);if(e.issues||=a.issues,t.abortEarly){e.typed=!1;break}}let o=this.value[`~run`]({value:i},t);if(o.issues){let a={type:`object`,origin:`value`,input:n,key:r,value:i};for(let t of o.issues)t.path?t.path.unshift(a):t.path=[a],e.issues?.push(t);if(e.issues||=o.issues,t.abortEarly){e.typed=!1;break}}(!a.typed||!o.typed)&&(e.typed=!1),a.typed&&(e.value[a.value]=o.value)}}else f(this,`type`,e,t);return e}})}function B(e){return g({kind:`schema`,type:`string`,reference:B,expects:`string`,async:!1,message:e,"~run"(e,t){return typeof e.value==`string`?e.typed=!0:f(this,`type`,e,t),e}})}function V(e,t,n){let r=e[`~run`]({value:t},u(n));if(r.issues)throw new _(r.issues);return r.value}function H(...e){return g({...e[0],pipe:e,"~run"(t,n){for(let r of e)if(r.kind!==`metadata`){if(t.issues&&(r.kind===`schema`||r.kind===`transformation`)){t.typed=!1;break}(!t.issues||!n.abortEarly&&!n.abortPipeEarly)&&(t=r[`~run`](t,n))}return t}})}function U(e,t,n){let r=e[`~run`]({value:t},u(n));return{typed:r.typed,success:!r.issues,output:r.value,issues:r.issues}}var W={class:`relative border-t border-base`},G={key:0,class:`flex items-baseline gap-3 border-b border-base px-6 py-3`},K={key:0,class:`label`},q={class:`label color-base`},J=Object.assign(r({__name:`UiSection`,props:{index:{},title:{}},setup(r){return(l,u)=>{let d=c;return o(),t(`section`,W,[s(d,{class:`-left-[6px] -top-[6px]`}),s(d,{class:`-right-[6px] -top-[6px]`}),r.title?(o(),t(`header`,G,[r.index?(o(),t(`span`,K,n(r.index),1)):a(``,!0),e(`h2`,q,n(r.title),1),i(l.$slots,`aside`)])):a(``,!0),i(l.$slots,`default`)])}}}),{__name:`UiSection`});export{B as C,U as S,O as T,V as _,N as a,z as b,P as c,C as d,w as f,L as g,I as h,v as i,x as l,F as m,j as n,y as o,T as p,M as r,b as s,J as t,S as u,R as v,D as w,E as x,H as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={meta:{title:`Furifont:內建振假名的日文字型`,description:`自帶振假名的日語字型。`},nav:{demo:`簡介`,docs:`文件`,customize:`自訂`,report:`回報`,github:`GitHub 儲存庫`,light:`切換為淺色`,dark:`切換為深色`,language:`語言`,rubyOff:`隱藏振假名`,rubyOn:`顯示振假名`},footer:{fonts:`字型採用{license},源自 Source Han Sans 和 Source Han Serif。`,data:`讀音資料來自 {jmdict}、{jmnedict}、{kanjidic}(EDRDG)、{furigana}、{japanpost}(地名)和 {desktoptetsu}(JR 站名),採用 CC BY-SA 4.0 授權。`,code:`工具採用 MIT 授權。`,report:`回報錯誤讀音`,source:`GitHub 上的原始碼`,made:`作者:{author}`,supported:`由 {vercel} 和{sponsors}支持`,sponsors:`贊助者`},copied:`已複製`,shuffle:`換一個例句`,editable:`範例文字,可以編輯。`,scripts:{hiragana:`平假名`,hepburn:`羅馬字`},faces:{sans:`黑體`,serif:`明體`},hero:{title1:`振假名,`,title2:`交給字型。`,body:`Furifont 是一款把振假名直接顯示在字型上的日語字型。它用連字(ligature)依詞語的讀音切換。只要支援自訂字型,哪裡都能用。`,download:`下載字型`,build:`自行建置`},notice:`受字型限制,振假名可能不正確,請留意。`,sections:{try:`試試看`,how:`運作原理`,selectors:`選擇讀音`,download:`下載`,anyPage:`用於網站`},playground:{script:`振假名所用文字`,face:`字型樣式`,size:`字級 / {size}px`,weight:`字重 / {weight}`,ruby:`振假名`,okurigana:`送假名讀音`,okuriganaHint:`需要 JavaScript。受瀏覽器限制,字型無法自行處理送假名。`,textHint:`點選文字即可編輯。`,copy:`複製文字`},how:{build:{title:`客製建置`,body:`Furifont 以思源黑體或思源宋體為基礎編譯而成。建置時會讀取包含數千個詞的辭典,並把振假名繪製成新的字形。得到的是普通的字型檔案,不需要 JavaScript,也不需要外掛。`},ligatures:{title:`由連字完成工作`,body:`字型中為每個詞準備了連字。今日 會變成上方帶有 きょう 的單個字形。替換發生在繪製文字時,所以文字本身不會改變。`},longest:{title:`長詞優先`,body:`Furifont 把每一組漢字與幾千個常用詞的清單對照,先試最長的詞。例如,會先選 日本語,再考慮 日本。今日 會當作一個詞,讀作 きょう。`},bare:{title:`拿不準就不加`,body:`只有一個漢字時,只有當某個讀音明顯最可能,才加振假名。大人気 可以讀作 だいにんき,也可以讀作 おとなげ,所以不加振假名。`},okurigana:{title:`可選的送假名支援`,body:`瀏覽器依字型的文字種類分別排版,所以字型看不到漢字後面的假名(稱為送假名)。我們透過 JavaScript 標註,提供可選的支援。`}},selectors:{body:`有些詞有多個常用讀音。Furifont 顯示最常見的那個。要選其他讀音,就在第一個漢字後面緊接一個變體選擇器(看不見的字元)。VS226 是讀音 1,VS227 是讀音 2,依此類推。VS225 會移除振假名。`,lookUp:`查詢讀音`,default:`預設`,reading2:`讀音 2(VS227)`,none:`無振假名(VS225)`},downloads:{all:`全部下載為 ZIP`,family:`字型家族`,ruby:`振假名`,variable:`可變`,formats:`OTF 和 TTF 常用於安裝到電腦上。WOFF2 針對網站做了最佳化。我們推薦使用可變字型,體驗最佳。在某些情況下,為了相容性,你可能需要固定字重的版本。`,buildOwn:`你也可以自己製作字型。可以選擇其他基礎字型、詞的數量、振假名所用文字或尺寸。`},anyPage:{body:`你可以在任何網站上使用 Furifont。有漢字的行會留出放振假名的空間。如果電腦上已安裝 Furifont,就不用下載。否則字型會從本站載入。`,bookmarklet:`書籤小工具`,bookmarkletHint:`把它拖到書籤列。在任何頁面點選它,就會開啟 Furifont;再點一次就會關閉。有些網站(如 X 和 GitHub)不允許載入其他網站的字型。在這些網站上,請在電腦上安裝 Furifont。`,okurigana:`送假名讀音`,okuriganaHint:`為送假名前的漢字選出正確的讀音,例如「来る」「来ない」中的「来」。`,userscript:`使用者腳本`,install:`安裝使用者腳本`,userscriptHint:`適用於 Tampermonkey 或 Violentmonkey(執行小腳本的瀏覽器擴充功能)。它會在日語頁面自動開啟 Furifont,在不允許載入其他網站字型的網站上也能用。你可以在它的選單裡切換到另一款 Furifont 字型,或將其關閉。`,toast:{message:`Furifont 無法在此頁面載入字型。有些網站(如 X 和 GitHub)不允許載入其他網站的字型。在這些網站上,需要在電腦上安裝 Furifont。`,download:`下載字型`,close:`關閉`,outdated:`Furifont 有新版本了。`,userscript:`更新使用者腳本`,bookmarklet:`取得新的書籤小工具`},menu:{okuriganaOn:`送假名讀音:開`,okuriganaOff:`送假名讀音:關`}},reference:{eyebrow:`參考`,title:`選擇讀音`,body:`Furifont 顯示詞最常見的讀音。要顯示其他讀音,就在詞的第一個漢字後面緊接一個變體選擇器(看不見的字元)。VS226 是讀音 1,VS227 是讀音 2,依此類推。單個漢字後面的選擇器,選的是這個漢字的讀音。VS225 顯示不帶振假名的漢字。`,search:`搜尋詞語或漢字:市場、今日、生`,searchLabel:`搜尋讀音`,hint:`點選讀音即可複製帶有選擇器的詞語。`,unavailable:`參考表隨現成字型一起提供,但這裡沒能載入({error})。請用 {command} 製作字型,或開啟自訂。`,loading:`載入中`,words:`有多個讀音的詞 / {count}`,kanji:`漢字 / {count}`,copyWith:`複製帶有 {selector} 的「{text}」`,default:`預設`},report:{eyebrow:`回報`,title:`回報錯誤讀音`,body:`如果 Furifont 顯示了錯誤的假名注音,或該有注音的詞沒有注音,請告訴我們這些詞和正確的讀音。可以一次回報多個詞。我們會根據回報修正詞典。`,link:`回報錯誤讀音。`,sections:{words:`詞語 / {count}`,environment:`出現的位置`,note:`其他`},word:`詞語`,expected:`正確讀音`,shown:`顯示的讀音(選填)`,context:`句子(選填)`,remove:`刪除 {word}`,add:`新增詞語`,environment:`環境`,environments:{playground:`本站的試用區`,website:`其他網站`,desktop:`桌面應用程式`,mobile:`行動應用程式`},family:`字型`,familyAny:`(不限)`,url:`頁面網址(選填)`,app:`應用程式(選填)`,appPlaceholder:{desktop:`Word、Pages、VS Code`,mobile:`備忘錄、Kindle`},os:`系統(選填)`,notePlaceholder:`任何有幫助的資訊,例如瀏覽器,或讀音錯誤的原因。`,name:`你的名字(選填)`,nameHint:`修正讀音時用於致謝。留空即可匿名。`,send:`送出回報`,sending:`傳送中`,sent:`感謝你的回報。`,again:`繼續回報`,failed:`回報送出失敗,請稍後再試。`,limited:`你在短時間內送出了太多回報,請一小時後再試。`,privacy:`我們會儲存你填寫的內容、字型版本和瀏覽器名稱,不會儲存你的 IP 位址。`},docs:{install:`安裝字型`,website:`在網站上使用`,readings:`選擇讀音`},customize:{connecting:`正在連線至 furifont dev`,title:`自訂`,offline:{eyebrow:`自訂 / 離線`,title:`建置你自己的 Furifont`,body:`自訂是執行在你電腦上的工具。它讀取基礎字型,並儲存製作好的字型。在任意資料夾中啟動它,本頁就會連線並開啟,提供即時預覽、辭典和建置按鈕。製作好的字型儲存在 {folder}。`,needs:`需要 Node 22.18 或更新版本(一個執行 JavaScript 工具的免費程式)。`,run:`在任意資料夾中啟動自訂`},auth:{eyebrow:`自訂 / 已鎖定`,title:`輸入終端機顯示的驗證碼`,body:`{command} 在你的終端機(輸入指令的視窗)中顯示了一個六位數驗證碼。`,code:`驗證碼`,failed:`驗證碼無效,請查看終端機後再試一次。`,unlock:`解鎖`},sections:{preview:`預覽`,build:`建置`,dictionary:`辭典`,words:`你的詞語`},options:{family:`字型名稱`,base:`基礎字型`,baseHint:`要加振假名的字型。可以是要下載的字型,如 Source Han Serif JP Bold,也可以是電腦上另一個字型檔案的路徑。`,script:`振假名所用文字`,hiragana:`平假名`,katakanaOn:`片假名`,hepburn:`羅馬字`,skip:`略過最常見的詞`,skipHint:`在剩下的詞中,最常見的不加振假名,因為讀者已經認識。詞語和單個漢字依常用程度排序,每 500 個一級。`,words:`接著加振假名的詞數`,wordsHint:`接下來的詞,依常用程度依次選取。共 {count} 個詞加振假名。`,jlpt:`略過 JLPT 詞彙`,jlptHint:`JLPT(日本語能力試驗)詞表中到這個級別為止的詞不加振假名。N5 是最簡單的級別。`,none:`無`,all:`全部`,sources:`從以下來源選詞`,source:{jmdict:{name:`JMdict 全部詞語`,hint:`JMdict:所有詞語,包括任何列表都沒有排名的詞語,例如 四字熟語。無排名的詞語在沒有其他內容符合的文字上使用,會使字型增大約 700 KB。`},ichi:{name:`基礎詞`,hint:`JMdict「ichi1」和「ichi2」:「一萬語」詞表(基礎詞彙表)中的詞。`},news:{name:`報紙用詞`,hint:`JMdict「news1」和「news2」:報紙中出現最多的 24,000 個詞。`},spec:{name:`日常詞`,hint:`JMdict「spec1」和「spec2」:其他詞表沒有收錄的常用詞,如 日本。`},gai:{name:`外來語`,hint:`JMdict「gai1」和「gai2」:日語從其他語言借來的常用詞。`},nf:{name:`報紙排名`,hint:`JMdict「nf01」至「nf48」:報紙詞表中有排名的詞,每 500 個詞一級。`},tatoeba:{name:`Tatoeba 例句`,hint:`Tatoeba:在例句中出現三次或以上的詞語,例如 留守中,即使上面的列表都沒有收錄。`},place:{name:`地名`,hint:`JMnedict:站名和地名。在沒有常用詞符合的文字上使用。`},"mahjong-yaku":{name:`麻將役種`,hint:`麻將的役種和牌名,例如 立直。在沒有常用詞符合的文字上使用。`},"jr-stations":{name:`JR 站名`,hint:`Desktop Tetsu 列表中的 JR 站名,例如 阿蘇。在沒有常用詞符合的文字上使用。`},yojijukugo:{name:`四字熟語`,hint:`JMdict:四字熟語,例如 阿鼻叫喚。在沒有常用詞符合的文字上使用。`},"japan-post":{name:`市區町村與町域`,hint:`日本郵便郵遞區號資料中的市區町村和町域名稱,例如 一宮。在沒有常用詞符合的文字上使用。`}},isolated:`單個漢字也加振假名`,share:`單個漢字的把握度`,shareHint:`只有一個漢字時,只有當某個讀音在辭典中至少占這個比例,才加振假名。請輸入 0.5 到 1 之間的數。數字越大,加振假名的漢字越少。`,rubyScale:`振假名大小(漢字的幾倍)`,rubyGap:`漢字上方的間距(em)`,squeeze:`最窄壓縮到(正常寬度的幾倍)`,maxWidth:`振假名最大寬度(em)`,reset:`恢復預設`,resetHint:`回到自訂載入的設定。你加入的詞會保留。`},preview:{compiling:`正在製作預覽`,weight:`預覽字重`,size:`預覽字級`,stats:`{glyphs} 個字形 / {ms} ms`},build:{words:`詞語`,places:`地名`,ambiguous:`多讀音`,lone:`單個漢字`,protected:`你的設定`,glyphs:`振假名字形`,rules:`規則`,planning:`規劃中`,estimate:{woff2:`≈ {size} WOFF2`,otf:`{size} OTF`},formats:`格式`,estimating:`正在估算大小`,run:`建置字型`,save:`儲存設定`},dictionary:{search:`搜尋辭典:今日、生`,results:`{count} 個詞`,hint:`這些詞有多個常用讀音。固定其中一個,它就成為預設讀音。`,noTag:`不是常用詞`,restore:`還原`,remove:`不加振假名`},custom:{placeholder:`日[に]本[ほん] 或 今日[きょう]`,label:`要新增的詞`,add:`新增詞語`,added:`已新增 / {count}`,pinned:`已固定 / {count}`,removed:`不加振假名 / {count}`,none:`無`,takeOut:`移除 {item}`}}};export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as e,E as t,Ht as n,Y as r,t as i}from"./CkUAspOr.js";import{n as a}from"#entry";var o={class:`antialiased bg-white dark:bg-neutral-950 dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-neutral-950 tracking-wide`},s={class:`max-w-520px text-center`},c=[`textContent`],l=[`textContent`],u=[`textContent`],d=i({__name:`error-500`,props:{appName:{type:String,default:`Nuxt`},status:{type:Number,default:500},statusText:{type:String,default:`Internal server error`},description:{type:String,default:`This page is temporarily unavailable.`},refresh:{type:String,default:`Refresh this page`}},setup(i){let d=i;return a({title:`${d.status} - ${d.statusText} | ${d.appName}`,script:[],style:[{innerHTML:`*,:after,:before{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb);--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }:after,:before{--un-content:""}html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}h1,h2{font-size:inherit;font-weight:inherit}h1,h2,p{margin:0}`}]}),(a,d)=>(r(),t(`div`,o,[e(`div`,s,[e(`h1`,{class:`font-medium leading-none mb-4 sm:text-[72px] tabular-nums text-[56px]`,textContent:n(i.status)},null,8,c),e(`h2`,{class:`font-semibold mb-2 sm:text-3xl text-2xl`,textContent:n(i.statusText)},null,8,l),e(`p`,{class:`mb-4 px-2 text-md text-neutral-500`,textContent:n(i.description)},null,8,u)])]))}},[[`__scopeId`,`data-v-
|
|
1
|
+
import{C as e,E as t,Ht as n,Y as r,t as i}from"./CkUAspOr.js";import{n as a}from"#entry";var o={class:`antialiased bg-white dark:bg-neutral-950 dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-neutral-950 tracking-wide`},s={class:`max-w-520px text-center`},c=[`textContent`],l=[`textContent`],u=[`textContent`],d=i({__name:`error-500`,props:{appName:{type:String,default:`Nuxt`},status:{type:Number,default:500},statusText:{type:String,default:`Internal server error`},description:{type:String,default:`This page is temporarily unavailable.`},refresh:{type:String,default:`Refresh this page`}},setup(i){let d=i;return a({title:`${d.status} - ${d.statusText} | ${d.appName}`,script:[],style:[{innerHTML:`*,:after,:before{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb);--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }:after,:before{--un-content:""}html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}h1,h2{font-size:inherit;font-weight:inherit}h1,h2,p{margin:0}`}]}),(a,d)=>(r(),t(`div`,o,[e(`div`,s,[e(`h1`,{class:`font-medium leading-none mb-4 sm:text-[72px] tabular-nums text-[56px]`,textContent:n(i.status)},null,8,c),e(`h2`,{class:`font-semibold mb-2 sm:text-3xl text-2xl`,textContent:n(i.statusText)},null,8,l),e(`p`,{class:`mb-4 px-2 text-md text-neutral-500`,textContent:n(i.description)},null,8,u)])]))}},[[`__scopeId`,`data-v-a859b40f`]]);export{d as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"id":"
|
|
1
|
+
{"id":"5ad83f05-1bf5-46a5-b89b-625cf86451d1","timestamp":1792113338325}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"id":"5ad83f05-1bf5-46a5-b89b-625cf86451d1","timestamp":1792113338325,"prerendered":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--ff-bg:#fff;--ff-fg:#0a0a0a;--ff-muted:#0a0a0a9e;--ff-faint:#0a0a0a59;--ff-line:#0a0a0a1f;--ff-line-strong:#0a0a0a66;--ff-hover:#0a0a0a0d;--ff-lh:1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.dark{--ff-bg:#0a0a0a;--ff-fg:#fafafa;--ff-muted:#fafafa9e;--ff-faint:#fafafa59;--ff-line:#fafafa2b;--ff-line-strong:#fafafa66;--ff-hover:#fafafa12;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{scrollbar-gutter:stable;line-height:calc(1.5 * var(--ff-lh))}:lang(ja){--ff-lh:1.3}body,html{background:var(--ff-bg);color:var(--ff-fg)}body{-webkit-font-smoothing:antialiased}:lang(ja) body{font-family:var(--ff-font),ui-sans-serif,system-ui,sans-serif;font-feature-settings:var(--ff-features)}::selection{background:var(--ff-fg);color:var(--ff-bg)}.display{letter-spacing:-.045em;text-wrap:balance;line-height:.95}:lang(ja) .display,:lang(zh) .display{letter-spacing:0;word-break:auto-phrase;line-height:1.8}.hero-title{font-size:calc(clamp(2.75rem,6vw,4.75rem))}:lang(ja) .hero-title,:lang(zh) .hero-title{font-size:calc(clamp(2.25rem,4.4vw,3.5rem))}@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--un-bg-opacity:100%;--un-border-opacity:100%;--un-outline-opacity:100%;--un-outline-style:solid;--un-text-opacity:100%}}@property --un-text-opacity{syntax:"<percentage>";inherits:false;initial-value:100%}@property --un-outline-opacity{syntax:"<percentage>";inherits:false;initial-value:100%}@property --un-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --un-border-opacity{syntax:"<percentage>";inherits:false;initial-value:100%}@property --un-bg-opacity{syntax:"<percentage>";inherits:false;initial-value:100%}@property --un-inset-ring-color{syntax:"*";inherits:false}@property --un-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --un-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --un-inset-shadow-color{syntax:"*";inherits:false}@property --un-ring-color{syntax:"*";inherits:false}@property --un-ring-inset{syntax:"*";inherits:false}@property --un-ring-offset-color{syntax:"*";inherits:false}@property --un-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --un-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --un-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --un-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --un-shadow-color{syntax:"*";inherits:false}@property --un-blur{syntax:"*";inherits:false}@property --un-brightness{syntax:"*";inherits:false}@property --un-contrast{syntax:"*";inherits:false}@property --un-drop-shadow{syntax:"*";inherits:false}@property --un-grayscale{syntax:"*";inherits:false}@property --un-hue-rotate{syntax:"*";inherits:false}@property --un-invert{syntax:"*";inherits:false}@property --un-saturate{syntax:"*";inherits:false}@property --un-sepia{syntax:"*";inherits:false}@property --un-numeric-figure{syntax:"*";inherits:false}@property --un-numeric-fraction{syntax:"*";inherits:false}@property --un-numeric-spacing{syntax:"*";inherits:false}@property --un-ordinal{syntax:"*";inherits:false}@property --un-slashed-zero{syntax:"*";inherits:false}:host,:root{--spacing:.25rem;--fontWeight-semibold:600;--colors-amber-DEFAULT:oklch(82.8% .189 84.429);--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--container-6xl:72rem;--container-md:28rem;--default-transition-timingFunction:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--tracking-tight:-.025em;--fontWeight-normal:400;--fontWeight-medium:500;--container-sm:24rem;--font-sans:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--tracking-wide:.025em;--radius-none:0;--colors-white:#fff;--colors-neutral-950:oklch(14.5% 0 0);--colors-neutral-500:oklch(55.6% 0 0);--text-4xl-fontSize:2.25rem;--text-4xl-lineHeight:2.5rem;--text-xs-fontSize:.75rem;--text-xs-lineHeight:1rem;--text-base-fontSize:1rem;--text-base-lineHeight:1.5rem;--text-7xl-fontSize:4.5rem;--text-7xl-lineHeight:1;--text-2xl-fontSize:1.5rem;--text-2xl-lineHeight:2rem;--text-sm-fontSize:.875rem;--text-sm-lineHeight:1.25rem;--text-xl-fontSize:1.25rem;--text-xl-lineHeight:1.75rem;--leading-none:1;--text-3xl-fontSize:1.875rem;--text-3xl-lineHeight:2.25rem;--default-font-family:var(--font-sans);--default-monoFont-family:var(--font-mono)}*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-featureSettings,normal);font-variation-settings:var(--default-font-variationSettings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-monoFont-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-monoFont-featureSettings,normal);font-variation-settings:var(--default-monoFont-variationSettings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}.resize-y,textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden~=until-found])){display:none!important}.i-ph-arrow-counter-clockwise{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M224%20128a96%2096%200%200%201-94.71%2096H128a95.38%2095.38%200%200%201-65.9-26.2%208%208%200%200%201%2011-11.63%2080%2080%200%201%200-1.67-114.78%203%203%200%200%201-.26.25L44.59%2096H72a8%208%200%200%201%200%2016H24a8%208%200%200%201-8-8V56a8%208%200%200%201%2016%200v29.8L60.25%2060A96%2096%200%200%201%20224%20128%22%2F%3E%3C%2Fsvg%3E)}.i-ph-arrow-counter-clockwise,.i-ph-bookmark-simple,.i-ph-check,.i-ph-check-circle-light,.i-ph-circle-notch,.i-ph-copy,.i-ph-download-simple,.i-ph-flag,.i-ph-floppy-disk,.i-ph-github-logo,.i-ph-hammer,.i-ph-list-magnifying-glass,.i-ph-moon,.i-ph-paper-plane-tilt,.i-ph-plus,.i-ph-puzzle-piece,.i-ph-shuffle,.i-ph-sliders-horizontal,.i-ph-sun,.i-ph-translate,.i-ph-trash,.i-ph-warning,.i-ph-x{-webkit-mask:var(--un-icon) no-repeat;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;color:inherit;background-color:currentColor;width:1.15em;height:1.15em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-ph-bookmark-simple{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M184%2032H72a16%2016%200%200%200-16%2016v176a8%208%200%200%200%2012.24%206.78L128%20193.43l59.77%2037.35A8%208%200%200%200%20200%20224V48a16%2016%200%200%200-16-16m0%20177.57-51.77-32.35a8%208%200%200%200-8.48%200L72%20209.57V48h112Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-check{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22m229.66%2077.66-128%20128a8%208%200%200%201-11.32%200l-56-56a8%208%200%200%201%2011.32-11.32L96%20188.69%20218.34%2066.34a8%208%200%200%201%2011.32%2011.32%22%2F%3E%3C%2Fsvg%3E)}.i-ph-check-circle-light{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M172.24%2099.76a6%206%200%200%201%200%208.48l-56%2056a6%206%200%200%201-8.48%200l-24-24a6%206%200%200%201%208.48-8.48L112%20151.51l51.76-51.75a6%206%200%200%201%208.48%200M230%20128A102%20102%200%201%201%20128%2026a102.12%20102.12%200%200%201%20102%20102m-12%200a90%2090%200%201%200-90%2090%2090.1%2090.1%200%200%200%2090-90%22%2F%3E%3C%2Fsvg%3E)}.i-ph-circle-notch{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M232%20128a104%20104%200%200%201-208%200c0-41%2023.81-78.36%2060.66-95.27a8%208%200%200%201%206.68%2014.54C60.15%2061.59%2040%2093.27%2040%20128a88%2088%200%200%200%20176%200c0-34.73-20.15-66.41-51.34-80.73a8%208%200%200%201%206.68-14.54C208.19%2049.64%20232%2087%20232%20128%22%2F%3E%3C%2Fsvg%3E)}.i-ph-copy{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M216%2032H88a8%208%200%200%200-8%208v40H40a8%208%200%200%200-8%208v128a8%208%200%200%200%208%208h128a8%208%200%200%200%208-8v-40h40a8%208%200%200%200%208-8V40a8%208%200%200%200-8-8m-56%20176H48V96h112Zm48-48h-32V88a8%208%200%200%200-8-8H96V48h112Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-download-simple{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M224%20144v64a8%208%200%200%201-8%208H40a8%208%200%200%201-8-8v-64a8%208%200%200%201%2016%200v56h160v-56a8%208%200%200%201%2016%200m-101.66%205.66a8%208%200%200%200%2011.32%200l40-40a8%208%200%200%200-11.32-11.32L136%20124.69V32a8%208%200%200%200-16%200v92.69L93.66%2098.34a8%208%200%200%200-11.32%2011.32Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-flag{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M42.76%2050A8%208%200%200%200%2040%2056v168a8%208%200%200%200%2016%200v-44.23c26.79-21.16%2049.87-9.75%2076.45%203.41%2016.4%208.11%2034.06%2016.85%2053%2016.85%2013.93%200%2028.54-4.75%2043.82-18a8%208%200%200%200%202.76-6V56a8%208%200%200%200-13.27-6c-28%2024.23-51.72%2012.49-79.21-1.12C111.07%2034.76%2078.78%2018.79%2042.76%2050M216%20172.25c-26.79%2021.16-49.87%209.74-76.45-3.41-25-12.35-52.81-26.13-83.55-8.4V59.79c26.79-21.16%2049.87-9.75%2076.45%203.4%2025%2012.35%2052.82%2026.13%2083.55%208.4Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-floppy-disk{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M219.31%2072%20184%2036.69A15.86%2015.86%200%200%200%20172.69%2032H48a16%2016%200%200%200-16%2016v160a16%2016%200%200%200%2016%2016h160a16%2016%200%200%200%2016-16V83.31A15.86%2015.86%200%200%200%20219.31%2072M168%20208H88v-56h80Zm40%200h-24v-56a16%2016%200%200%200-16-16H88a16%2016%200%200%200-16%2016v56H48V48h124.69L208%2083.31ZM160%2072a8%208%200%200%201-8%208H96a8%208%200%200%201%200-16h56a8%208%200%200%201%208%208%22%2F%3E%3C%2Fsvg%3E)}.i-ph-github-logo{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M208.31%2075.68A59.78%2059.78%200%200%200%20202.93%2028a8%208%200%200%200-6.93-4%2059.75%2059.75%200%200%200-48%2024h-24a59.75%2059.75%200%200%200-48-24%208%208%200%200%200-6.93%204%2059.78%2059.78%200%200%200-5.38%2047.68A58.14%2058.14%200%200%200%2056%20104v8a56.06%2056.06%200%200%200%2048.44%2055.47A39.8%2039.8%200%200%200%2096%20192v8H72a24%2024%200%200%201-24-24%2040%2040%200%200%200-40-40%208%208%200%200%200%200%2016%2024%2024%200%200%201%2024%2024%2040%2040%200%200%200%2040%2040h24v16a8%208%200%200%200%2016%200v-40a24%2024%200%200%201%2048%200v40a8%208%200%200%200%2016%200v-40a39.8%2039.8%200%200%200-8.44-24.53A56.06%2056.06%200%200%200%20216%20112v-8a58.14%2058.14%200%200%200-7.69-28.32M200%20112a40%2040%200%200%201-40%2040h-48a40%2040%200%200%201-40-40v-8a41.74%2041.74%200%200%201%206.9-22.48%208%208%200%200%200%201.1-7.69%2043.8%2043.8%200%200%201%20.79-33.58%2043.88%2043.88%200%200%201%2032.32%2020.06%208%208%200%200%200%206.71%203.69h32.35a8%208%200%200%200%206.74-3.69%2043.87%2043.87%200%200%201%2032.32-20.06%2043.8%2043.8%200%200%201%20.77%2033.58%208.09%208.09%200%200%200%201%207.65%2041.7%2041.7%200%200%201%207%2022.52Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-hammer{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22m251.34%20112-67.46-67.92a96.1%2096.1%200%200%200-135.77%200l-.09.09L34.25%2058.4a8%208%200%200%200%2011.49%2011.13l13.73-14.18a80%2080%200%200%201%2018.71-13.9L124.68%2088l-96%2096a16%2016%200%200%200%200%2022.63l20.69%2020.69a16%2016%200%200%200%2022.63%200l96-96%2014.34%2014.34L200%20163.3a16%2016%200%200%200%2022.63%200l28.69-28.69a16%2016%200%200%200%20.02-22.61M60.68%20216%2040%20195.31l68-68L128.68%20148Zm101.66-101.68L140%20136.67%20119.31%20116l22.35-22.35a8%208%200%200%200%200-11.32L94.32%2035a80%2080%200%200%201%2078.23%2020.41l44.22%2044.51L188%20128.66l-14.34-14.34a8%208%200%200%200-11.32%200m49%2037.66-12-12L228%20111.25l12%2012Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-list-magnifying-glass{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M32%2064a8%208%200%200%201%208-8h176a8%208%200%200%201%200%2016H40a8%208%200%200%201-8-8m8%2072h72a8%208%200%200%200%200-16H40a8%208%200%200%200%200%2016m88%2048H40a8%208%200%200%200%200%2016h88a8%208%200%200%200%200-16m109.66%2013.66a8%208%200%200%201-11.32%200L206%20177.36A40%2040%200%201%201%20217.36%20166l20.3%2020.3a8%208%200%200%201%200%2011.36M184%20168a24%2024%200%201%200-24-24%2024%2024%200%200%200%2024%2024%22%2F%3E%3C%2Fsvg%3E)}.i-ph-moon{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M233.54%20142.23a8%208%200%200%200-8-2%2088.08%2088.08%200%200%201-109.8-109.8%208%208%200%200%200-10-10%20104.84%20104.84%200%200%200-52.91%2037A104%20104%200%200%200%20136%20224a103.1%20103.1%200%200%200%2062.52-20.88%20104.84%20104.84%200%200%200%2037-52.91%208%208%200%200%200-1.98-7.98m-44.64%2048.11A88%2088%200%200%201%2065.66%2067.11a89%2089%200%200%201%2031.4-26A106%20106%200%200%200%2096%2056a104.11%20104.11%200%200%200%20104%20104%20106%20106%200%200%200%2014.92-1.06%2089%2089%200%200%201-26.02%2031.4%22%2F%3E%3C%2Fsvg%3E)}.i-ph-paper-plane-tilt{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M227.32%2028.68a16%2016%200%200%200-15.66-4.08h-.15L19.57%2082.84a16%2016%200%200%200-2.49%2029.8L102%20154l41.3%2084.87a15.86%2015.86%200%200%200%2014.44%209.13q.69%200%201.38-.06a15.88%2015.88%200%200%200%2014-11.51l58.2-191.94v-.15a16%2016%200%200%200-4-15.66m-69.49%20203.17-.05.14v-.07l-40.06-82.3%2048-48a8%208%200%200%200-11.31-11.31l-48%2048-82.33-40.06h-.07.14L216%2040Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-plus{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M224%20128a8%208%200%200%201-8%208h-80v80a8%208%200%200%201-16%200v-80H40a8%208%200%200%201%200-16h80V40a8%208%200%200%201%2016%200v80h80a8%208%200%200%201%208%208%22%2F%3E%3C%2Fsvg%3E)}.i-ph-puzzle-piece{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M220.27%20158.54a8%208%200%200%200-7.7-.46%2020%2020%200%201%201%200-36.16%208%208%200%200%200%2011.43-7.23V72a16%2016%200%200%200-16-16h-36.22a35%2035%200%200%200%20.22-4%2036.1%2036.1%200%200%200-11.36-26.24%2036%2036%200%200%200-60.55%2023.62%2036.6%2036.6%200%200%200%20.14%206.62H64a16%2016%200%200%200-16%2016v32.22a35%2035%200%200%200-4-.22%2036.12%2036.12%200%200%200-26.24%2011.36%2035.7%2035.7%200%200%200-9.69%2027%2036.08%2036.08%200%200%200%2033.31%2033.6%2035.7%2035.7%200%200%200%206.62-.14V208a16%2016%200%200%200%2016%2016h144a16%2016%200%200%200%2016-16v-42.69a8%208%200%200%200-3.73-6.77M208%20208H64v-42.69a8%208%200%200%200-11.43-7.23%2020%2020%200%201%201%200-36.16A8%208%200%200%200%2064%20114.69V72h46.69a8%208%200%200%200%207.23-11.43%2020%2020%200%201%201%2036.16%200A8%208%200%200%200%20161.31%2072H208v32.23a35.7%2035.7%200%200%200-6.62-.14A36%2036%200%200%200%20204%20176a35%2035%200%200%200%204-.22Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-shuffle{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M237.66%20178.34a8%208%200%200%201%200%2011.32l-24%2024a8%208%200%200%201-11.32-11.32L212.69%20192h-11.75a72.12%2072.12%200%200%201-58.59-30.15l-41.72-58.4A56.1%2056.1%200%200%200%2055.06%2080H32a8%208%200%200%201%200-16h23.06a72.12%2072.12%200%200%201%2058.59%2030.15l41.72%2058.4A56.1%2056.1%200%200%200%20200.94%20176h11.75l-10.35-10.34a8%208%200%200%201%2011.32-11.32ZM143%20107a8%208%200%200%200%2011.16-1.86l1.2-1.67A56.1%2056.1%200%200%201%20200.94%2080h11.75l-10.35%2010.34a8%208%200%200%200%2011.32%2011.32l24-24a8%208%200%200%200%200-11.32l-24-24a8%208%200%200%200-11.32%2011.32L212.69%2064h-11.75a72.12%2072.12%200%200%200-58.59%2030.15l-1.2%201.67A8%208%200%200%200%20143%20107m-30%2042a8%208%200%200%200-11.16%201.86l-1.2%201.67A56.1%2056.1%200%200%201%2055.06%20176H32a8%208%200%200%200%200%2016h23.06a72.12%2072.12%200%200%200%2058.59-30.15l1.2-1.67A8%208%200%200%200%20113%20149%22%2F%3E%3C%2Fsvg%3E)}.i-ph-sliders-horizontal{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M40%2088h33a32%2032%200%200%200%2062%200h81a8%208%200%200%200%200-16h-81a32%2032%200%200%200-62%200H40a8%208%200%200%200%200%2016m64-24a16%2016%200%201%201-16%2016%2016%2016%200%200%201%2016-16m112%20104h-17a32%2032%200%200%200-62%200H40a8%208%200%200%200%200%2016h97a32%2032%200%200%200%2062%200h17a8%208%200%200%200%200-16m-48%2024a16%2016%200%201%201%2016-16%2016%2016%200%200%201-16%2016%22%2F%3E%3C%2Fsvg%3E)}.i-ph-sun{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M120%2040V16a8%208%200%200%201%2016%200v24a8%208%200%200%201-16%200m72%2088a64%2064%200%201%201-64-64%2064.07%2064.07%200%200%201%2064%2064m-16%200a48%2048%200%201%200-48%2048%2048.05%2048.05%200%200%200%2048-48M58.34%2069.66a8%208%200%200%200%2011.32-11.32l-16-16a8%208%200%200%200-11.32%2011.32Zm0%20116.68-16%2016a8%208%200%200%200%2011.32%2011.32l16-16a8%208%200%200%200-11.32-11.32M192%2072a8%208%200%200%200%205.66-2.34l16-16a8%208%200%200%200-11.32-11.32l-16%2016A8%208%200%200%200%20192%2072m5.66%20114.34a8%208%200%200%200-11.32%2011.32l16%2016a8%208%200%200%200%2011.32-11.32ZM48%20128a8%208%200%200%200-8-8H16a8%208%200%200%200%200%2016h24a8%208%200%200%200%208-8m80%2080a8%208%200%200%200-8%208v24a8%208%200%200%200%2016%200v-24a8%208%200%200%200-8-8m112-88h-24a8%208%200%200%200%200%2016h24a8%208%200%200%200%200-16%22%2F%3E%3C%2Fsvg%3E)}.i-ph-translate{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22m247.15%20212.42-56-112a8%208%200%200%200-14.31%200l-21.71%2043.43A88%2088%200%200%201%20108%20126.93%20103.65%20103.65%200%200%200%20135.69%2064H160a8%208%200%200%200%200-16h-56V32a8%208%200%200%200-16%200v16H32a8%208%200%200%200%200%2016h87.63A87.76%2087.76%200%200%201%2096%20116.35a87.7%2087.7%200%200%201-19-31%208%208%200%201%200-15.08%205.34A103.6%20103.6%200%200%200%2084%20127a87.55%2087.55%200%200%201-52%2017%208%208%200%200%200%200%2016%20103.46%20103.46%200%200%200%2064-22.08%20104.2%20104.2%200%200%200%2051.44%2021.31l-26.6%2053.19a8%208%200%200%200%2014.31%207.16L148.94%20192h70.11l13.79%2027.58A8%208%200%200%200%20240%20224a8%208%200%200%200%207.15-11.58M156.94%20176%20184%20121.89%20211.05%20176Z%22%2F%3E%3C%2Fsvg%3E)}.i-ph-trash{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M216%2048h-40v-8a24%2024%200%200%200-24-24h-48a24%2024%200%200%200-24%2024v8H40a8%208%200%200%200%200%2016h8v144a16%2016%200%200%200%2016%2016h128a16%2016%200%200%200%2016-16V64h8a8%208%200%200%200%200-16M96%2040a8%208%200%200%201%208-8h48a8%208%200%200%201%208%208v8H96Zm96%20168H64V64h128Zm-80-104v64a8%208%200%200%201-16%200v-64a8%208%200%200%201%2016%200m48%200v64a8%208%200%200%201-16%200v-64a8%208%200%200%201%2016%200%22%2F%3E%3C%2Fsvg%3E)}.i-ph-warning{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M236.8%20188.09%20149.35%2036.22a24.76%2024.76%200%200%200-42.7%200L19.2%20188.09a23.51%2023.51%200%200%200%200%2023.72A24.35%2024.35%200%200%200%2040.55%20224h174.9a24.35%2024.35%200%200%200%2021.33-12.19%2023.51%2023.51%200%200%200%20.02-23.72m-13.87%2015.71a8.5%208.5%200%200%201-7.48%204.2H40.55a8.5%208.5%200%200%201-7.48-4.2%207.59%207.59%200%200%201%200-7.72l87.45-151.87a8.75%208.75%200%200%201%2015%200l87.45%20151.87a7.59%207.59%200%200%201-.04%207.72M120%20144v-40a8%208%200%200%201%2016%200v40a8%208%200%200%201-16%200m20%2036a12%2012%200%201%201-12-12%2012%2012%200%200%201%2012%2012%22%2F%3E%3C%2Fsvg%3E)}.i-ph-x{--un-icon:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221.15em%22%20height%3D%221.15em%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M205.66%20194.34a8%208%200%200%201-11.32%2011.32L128%20139.31l-66.34%2066.35a8%208%200%200%201-11.32-11.32L116.69%20128%2050.34%2061.66a8%208%200%200%201%2011.32-11.32L128%20116.69l66.34-66.35a8%208%200%200%201%2011.32%2011.32L139.31%20128Z%22%2F%3E%3C%2Fsvg%3E)}.btn-ghost{color:color-mix(in oklab,var(--ff-muted) var(--un-text-opacity),transparent);border-color:#0000}.btn-ghost,.btn-outline{font-size:var(--text-sm-fontSize);line-height:var(--un-leading,var(--text-sm-lineHeight));--un-font-weight:var(--fontWeight-medium);font-weight:var(--fontWeight-medium);padding-inline:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 2);height:calc(var(--spacing) * 9);-webkit-user-select:none;user-select:none;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to;transition-timing-function:var(--un-ease,var(--default-transition-timingFunction));transition-duration:var(--un-duration,var(--default-transition-duration));--un-duration:.15s;border-width:1px;justify-content:center;align-items:center;transition-duration:.15s;display:inline-flex}.btn-outline{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent);border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent)}.btn-solid{color:color-mix(in oklab,var(--ff-bg) var(--un-text-opacity),transparent);--un-font-weight:var(--fontWeight-medium);font-weight:var(--fontWeight-medium);padding-inline:calc(var(--spacing) * 4);border-color:color-mix(in oklab,var(--ff-fg) var(--un-border-opacity),transparent);background-color:color-mix(in oklab,var(--ff-fg) var(--un-bg-opacity),transparent);gap:calc(var(--spacing) * 2);height:calc(var(--spacing) * 9);-webkit-user-select:none;user-select:none;transition-duration:var(--un-duration,var(--default-transition-duration));--un-duration:.15s;justify-content:center;align-items:center;transition-duration:.15s;display:inline-flex}.btn-solid,.input{font-size:var(--text-sm-fontSize);line-height:var(--un-leading,var(--text-sm-lineHeight));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to;transition-timing-function:var(--un-ease,var(--default-transition-timingFunction));border-width:1px}.input{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);--un-outline-style:none;border-color:color-mix(in oklab,var(--ff-line) var(--un-border-opacity),transparent);border-radius:var(--radius-none);width:100%;transition-duration:var(--un-duration,var(--default-transition-duration));font-feature-settings:"ss01";background-color:#0000;outline-style:none;line-height:1}.\!color-base{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent)!important}.color-base,.group:hover .group-hover\:color-base{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent)}.color-inverse{color:color-mix(in oklab,var(--ff-bg) var(--un-text-opacity),transparent)}.color-muted,.label{color:color-mix(in oklab,var(--ff-muted) var(--un-text-opacity),transparent)}.label{--un-tracking:.12em;letter-spacing:.12em;font-size:11px;font-family:var(--font-mono);text-transform:uppercase;line-height:calc(1.45 * var(--ff-lh))}.btn-ghost:hover{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent);background-color:color-mix(in oklab,var(--ff-hover) var(--un-bg-opacity),transparent)}.btn-outline:hover{color:color-mix(in oklab,var(--ff-bg) var(--un-text-opacity),transparent);border-color:color-mix(in oklab,var(--ff-fg) var(--un-border-opacity),transparent);background-color:color-mix(in oklab,var(--ff-fg) var(--un-bg-opacity),transparent)}.hover\:color-base:hover{color:color-mix(in oklab,var(--ff-fg) var(--un-text-opacity),transparent)}.hover\:color-muted:hover{color:color-mix(in oklab,var(--ff-muted) var(--un-text-opacity),transparent)}.input::placeholder{color:color-mix(in oklab,var(--ff-faint) var(--un-text-opacity),transparent)}.slider::-webkit-slider-thumb{appearance:none;border-width:1px;border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent);--un-border-style:solid;background-color:color-mix(in oklab,var(--ff-bg) var(--un-bg-opacity),transparent);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);box-sizing:border-box;border-style:solid;margin-top:-5px}.slider{appearance:none;height:calc(var(--spacing) * 3.5);cursor:pointer;background-color:#0000;width:100%}.slider:focus-visible{outline-style:var(--un-outline-style);outline-width:2px;outline-color:color-mix(in oklab,var(--ff-fg) var(--un-outline-opacity),transparent);outline-offset:2px}.slider::-moz-range-thumb{border-radius:var(--radius-none);background-color:color-mix(in oklab,var(--ff-bg) var(--un-bg-opacity),transparent);width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.slider::-moz-range-thumb{border-width:1px;border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent);--un-border-style:solid;box-sizing:border-box;border-style:solid}.slider::-moz-range-track{border-width:1px;border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent);--un-border-style:solid;box-sizing:border-box;border-style:solid}.slider::-moz-range-track{height:calc(var(--spacing) * 1.5)}.slider::-webkit-slider-runnable-track{border-width:1px;border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent);--un-border-style:solid;height:calc(var(--spacing) * 1.5);background:linear-gradient(var(--ff-fg),var(--ff-fg)) 0 0/calc(7px + var(--slider-fraction) * (100% - 14px)) 100% no-repeat;box-sizing:border-box;border-style:solid}.border-base{border-color:color-mix(in oklab,var(--ff-line) var(--un-border-opacity),transparent)}.border-inverse{border-color:color-mix(in oklab,var(--ff-fg) var(--un-border-opacity),transparent)}.border-strong,.hover\:border-strong:hover{border-color:color-mix(in oklab,var(--ff-line-strong) var(--un-border-opacity),transparent)}.input:focus{border-color:color-mix(in oklab,var(--ff-fg) var(--un-border-opacity),transparent)}.bg-base{background-color:color-mix(in oklab,var(--ff-bg) var(--un-bg-opacity),transparent)}.bg-inverse{background-color:color-mix(in oklab,var(--ff-fg) var(--un-bg-opacity),transparent)}.slider::-moz-range-progress{background-color:color-mix(in oklab,var(--ff-fg) var(--un-bg-opacity),transparent);height:calc(var(--spacing) * 1.5)}.hover\:bg-hover:hover{background-color:color-mix(in oklab,var(--ff-hover) var(--un-bg-opacity),transparent)}.btn-solid:hover{opacity:.85}.btn-ghost:disabled,.btn-outline:disabled,.btn-solid:disabled{opacity:.4;cursor:not-allowed}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.text-2xl{font-size:var(--text-2xl-fontSize);line-height:var(--un-leading,var(--text-2xl-lineHeight))}.text-4xl{font-size:var(--text-4xl-fontSize);line-height:var(--un-leading,var(--text-4xl-lineHeight))}.text-7xl{font-size:var(--text-7xl-fontSize);line-height:var(--un-leading,var(--text-7xl-lineHeight))}.text-base{font-size:var(--text-base-fontSize);line-height:var(--un-leading,var(--text-base-lineHeight))}.text-sm{font-size:var(--text-sm-fontSize);line-height:var(--un-leading,var(--text-sm-lineHeight))}.text-xl{font-size:var(--text-xl-fontSize);line-height:var(--un-leading,var(--text-xl-lineHeight))}.text-xs{font-size:var(--text-xs-fontSize);line-height:var(--un-leading,var(--text-xs-lineHeight))}.dark .dark\:text-white{color:color-mix(in srgb,var(--colors-white) var(--un-text-opacity),transparent)}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-\[56px\]{font-size:56px}.text-amber{color:color-mix(in srgb,var(--colors-amber-DEFAULT) var(--un-text-opacity),transparent)}.text-neutral-500{color:color-mix(in srgb,var(--colors-neutral-500) var(--un-text-opacity),transparent)}.text-neutral-950{color:color-mix(in srgb,var(--colors-neutral-950) var(--un-text-opacity),transparent)}.hover\:text-\[\#00DC82\]:hover{color:color-mix(in oklab,#00dc82 var(--un-text-opacity),transparent)}.hover\:color-inherit:hover,.text-inherit{color:inherit}.tracking-\[0\.04em\]{--un-tracking:.04em;letter-spacing:.04em}.tracking-\[0\.5em\]{--un-tracking:.5em;letter-spacing:.5em}.tracking-tight{--un-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--un-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.font-medium{--un-font-weight:var(--fontWeight-medium);font-weight:var(--fontWeight-medium)}.font-mono{font-family:var(--font-mono)}.font-normal{--un-font-weight:var(--fontWeight-normal);font-weight:var(--fontWeight-normal)}.font-sans{font-family:var(--font-sans)}.font-semibold{--un-font-weight:var(--fontWeight-semibold);font-weight:var(--fontWeight-semibold)}.mx-auto{margin-inline:auto}.-mb-px{margin-bottom:-1px}.-mr-px{margin-right:-1px}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ms{margin-inline-start:calc(var(--spacing) * 4)}.mt-4{margin-top:calc(var(--spacing) * 4)}.p-0{padding:calc(var(--spacing) * 0)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px,.px-4{padding-inline:calc(var(--spacing) * 4)}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-1{padding-inline:calc(var(--spacing))}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing))}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-4{padding-top:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.appearance-none{appearance:none}.outline,.outline-1{outline-style:var(--un-outline-style);outline-width:1px}.outline-transparent{outline-color:#0000}.focus-within\:outline-\[var\(--ff-fg\)\]:focus-within{outline-color:color-mix(in oklab,var(--ff-fg) var(--un-outline-opacity),transparent)}.focus-within\:outline-2:focus-within{outline-style:var(--un-outline-style);outline-width:2px}.hover\:outline-\[var\(--ff-line\)\]:hover{outline-color:color-mix(in oklab,var(--ff-line) var(--un-outline-opacity),transparent)}.focus\:outline-\[var\(--ff-fg\)\]:focus,.peer:focus-visible~.peer-focus-visible\:outline-\[var\(--ff-fg\)\]{outline-color:color-mix(in oklab,var(--ff-fg) var(--un-outline-opacity),transparent)}.peer:focus-visible~.peer-focus-visible\:outline-2{outline-style:var(--un-outline-style);outline-width:2px}.outline-offset-4{outline-offset:4px}.focus-within\:outline-offset-2:focus-within,.peer:focus-visible~.peer-focus-visible\:outline-offset-2{outline-offset:2px}.outline-none{--un-outline-style:none;outline-style:none}.focus\:outline-dashed:focus,.hover\:outline-dashed:hover{--un-outline-style:dashed;outline-style:dashed}.border{border-width:1px}.border-x{border-inline-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-0{border-width:0}.border-t-0{border-top-width:0}.last\:border-b-0:last-child{border-bottom-width:0}.last\:border-r-0:last-child{border-right-width:0}.rounded-none{border-radius:var(--radius-none)}.bg-\[var\(--ff-line\)\]{background-color:color-mix(in oklab,var(--ff-line) var(--un-bg-opacity),transparent)}.bg-amber\:5{background-color:color-mix(in srgb,var(--colors-amber-DEFAULT) 5%,transparent)}.bg-transparent{background-color:#0000}.bg-white{background-color:color-mix(in srgb,var(--colors-white) var(--un-bg-opacity),transparent)}.dark .dark\:bg-neutral-950{background-color:color-mix(in srgb,var(--colors-neutral-950) var(--un-bg-opacity),transparent)}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.underline{text-decoration-line:underline}.underline-offset-3{text-underline-offset:3px}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1}.flex-auto{flex:auto}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-1{gap:calc(var(--spacing))}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-x-2{-moz-column-gap:calc(var(--spacing) * 2);column-gap:calc(var(--spacing) * 2)}.gap-x-4{-moz-column-gap:calc(var(--spacing) * 4);column-gap:calc(var(--spacing) * 4)}.gap-x-6{-moz-column-gap:calc(var(--spacing) * 6);column-gap:calc(var(--spacing) * 6)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.grid{display:grid}.col-span-full{grid-column:1/-1}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.size-\[10px\]{width:10px;height:10px}.size-\[11px\]{width:11px;height:11px}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-full{width:100%;height:100%}.h-14{height:calc(var(--spacing) * 14)}.h-4{height:calc(var(--spacing) * 4)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-px{height:1px}.h1{height:calc(var(--spacing))}.h2{height:calc(var(--spacing) * 2)}.h3{height:calc(var(--spacing) * 3)}.max-h-\[32rem\]{max-height:32rem}.max-w-\[46ch\]{max-width:46ch}.max-w-\[52ch\]{max-width:52ch}.max-w-\[60ch\]{max-width:60ch}.max-w-520px{max-width:520px}.max-w-6xl{max-width:var(--container-6xl)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-h-56{min-height:calc(var(--spacing) * 56)}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-screen{min-height:100vh}.min-w-0{min-width:calc(var(--spacing) * 0)}.w-28{width:calc(var(--spacing) * 28)}.w-7{width:calc(var(--spacing) * 7)}.w-9{width:calc(var(--spacing) * 9)}.w-fit{width:fit-content}.w-full{width:100%}.hidden{display:none}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.pointer-events-none{pointer-events:none}.select-none{-webkit-user-select:none;user-select:none}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.ws-pre-line{white-space:pre-line}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.focus-ring:focus{--un-ring-shadow:var(--un-ring-inset,) 0 0 0 calc(1px + var(--un-ring-offset-width)) var(--un-ring-color,currentColor);box-shadow:var(--un-inset-shadow),var(--un-inset-ring-shadow),var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.transition-\[outline-color\]{transition-property:outline-color}.transition-\[outline-color\],.transition-all,.transition-colors{transition-timing-function:var(--un-ease,var(--default-transition-timingFunction));transition-duration:var(--un-duration,var(--default-transition-duration))}.transition-all{transition-property:all}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.self-start{align-self:flex-start}.-inset-\[100vmax\]{inset:-100vmax}.inset-0{inset:calc(var(--spacing) * 0)}.-bottom-\[6px\]{bottom:-6px}.-left-\[6px\]{left:-6px}.-right-\[6px\]{right:-6px}.-top-\[6px\]{top:-6px}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-\[14px\]{left:14px}.left-\[2px\]{left:2px}.left-4{left:calc(var(--spacing) * 4)}.right-3{right:calc(var(--spacing) * 3)}.top-\[2px\]{top:2px}.top-0{top:calc(var(--spacing) * 0)}.top-3{top:calc(var(--spacing) * 3)}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.place-content-center{place-content:center}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-z-1{z-index:-1}.z-1{z-index:1}.z-10{z-index:10}.overflow-hidden{overflow:hidden}.overflow-x-clip{overflow-x:clip}.overflow-y-auto{overflow-y:auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.animate-spin{animation:1s linear infinite spin}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.isolate{isolation:isolate}.invert{--un-invert:invert(100%);filter:var(--un-blur,) var(--un-brightness,) var(--un-contrast,) var(--un-grayscale,) var(--un-hue-rotate,) var(--un-invert,) var(--un-saturate,) var(--un-sepia,) var(--un-drop-shadow,)}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal,) var(--un-slashed-zero,) var(--un-numeric-figure,) var(--un-numeric-spacing,) var(--un-numeric-fraction,)}.no-ruby{font-feature-settings:"ss01";line-height:1}.lh-1\.625{line-height:calc(1.625 * var(--ff-lh))}@supports (color:color-mix(in lab,red,red)){.dark .dark\:text-white{color:color-mix(in oklab,var(--colors-white) var(--un-text-opacity),transparent)}.text-amber{color:color-mix(in oklab,var(--colors-amber-DEFAULT) var(--un-text-opacity),transparent)}.text-neutral-500{color:color-mix(in oklab,var(--colors-neutral-500) var(--un-text-opacity),transparent)}.text-neutral-950{color:color-mix(in oklab,var(--colors-neutral-950) var(--un-text-opacity),transparent)}.bg-amber\:5{background-color:color-mix(in oklab,var(--colors-amber-DEFAULT) 5%,transparent)}.bg-white{background-color:color-mix(in oklab,var(--colors-white) var(--un-bg-opacity),transparent)}.dark .dark\:bg-neutral-950{background-color:color-mix(in oklab,var(--colors-neutral-950) var(--un-bg-opacity),transparent)}}@media (width>=40rem){.sm\:text-3xl{font-size:var(--text-3xl-fontSize);line-height:var(--un-leading,var(--text-3xl-lineHeight))}.sm\:text-\[72px\]{font-size:72px}.sm\:tracking-\[0\.12em\]{--un-tracking:.12em;letter-spacing:.12em}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:border-r{border-right-width:1px}.sm\:border-b-0{border-bottom-width:0}.sm\:inline-flex{display:inline-flex}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:col-span-3{grid-column:span 3/span 3}.sm\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:inline{display:inline}.sm\:block{display:block}}@media (width>=64rem){.lg\:py-24{padding-block:calc(var(--spacing) * 24)}.lg\:border-b{border-bottom-width:1px}.lg\:border-r{border-right-width:1px}.lg\:border-b-0{border-bottom-width:0}.lg\:border-t-0{border-top-width:0}.lg\:grid-cols-\[340px_1fr\]{grid-template-columns:340px 1fr}.lg\:grid-cols-\[5fr_4fr\]{grid-template-columns:5fr 4fr}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:top-14{top:calc(var(--spacing) * 14)}.lg\:sticky{position:sticky}.lg\:z-1{z-index:1}}
|