ryugi-artifacts 1.63.0 → 1.65.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.
@@ -8,5 +8,5 @@ import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{_ as t,a as n,h as r,i
8
8
  `):e}var Zp=/\p{M}/u;function Qp(e,t,n){if(t===`pre-wrap`){if(e===32)return 4;if(e===9)return 5;if(e===10)return 8}return e===32?1:e===8203?2:e===173?3:e===133&&n===`webkit`?7:0}function $p(e){return e===32||e===9||e===10||e===13||e===12}function em(e,t,n,r,i){let a=new Uint8Array(t+1),o=0;if(r===`pre-wrap`){for(let t=0;t<e.length;t++,o++)a[o]=n[t],e.charCodeAt(t)===13&&e.charCodeAt(t+1)===10&&(t++,n[t]&1&&(a[o]=n[t]));return a[t]=n[e.length],a}let s=0;for(;s<e.length&&$p(e.charCodeAt(s));)s++;for(;s<e.length;){let t=s+1;if($p(e.charCodeAt(s))){for(;t<e.length&&$p(e.charCodeAt(t));)t++;if(t===e.length)break}!(n[s]&1)&&a[o]===0&&(a[o]=n[s]),i!==null&&(i[o]=e.charCodeAt(s));let r=s;for(;s<t;s++)n[s]&1&&(a[s===r?o:o+1]=n[s]);o++}return a[t]=n[s]&1?n[s]&4:n[s],a}function tm(e,t,n,r,i,a){return(r===8232||r===8233)&&t[n+1]&4?8:r===173&&t[n+1]&8&&nm(e,n)?2:Qp(r,i,a)}function nm(e,t){let n=t-1;for(;n>=0&&e.charCodeAt(n)===173;)n--;return n>=0&&e.charCodeAt(n)!==10}function rm(e){return e===0||e===1||e===4||e===3}function im(e){return e<32||e>=127&&e<=159||e===8232||e===8233}function am(e,t,n,r,i,a,o){let s=i===`gecko`?128:0,c=[],l=[],u=!1,d=!1,f=-1,p=-1;for(let t=0;t<e.length;t++){let a=e.charCodeAt(t);if(o&&t<f)continue;if(o&&Zf(a,!1)&&(t===0||n[t]&16||!Zf(e.charCodeAt(t-1),!1))){let a=t,o=-1;for(;a<e.length&&Zf(e.charCodeAt(a),!1)&&(a===t||!(n[a]&16));a++)zf(e.charCodeAt(a))&&(o=a+1);if(o>0){let m=p>=0&&p!==8&&!!(n[t]&16),h=p<0||p===8||m;if(h){let o=a===e.length||tm(e,n,a,e.charCodeAt(a),r,i)===8;if(o||(m&&(n[t]=n[t]|n[a]&1),n[a]=n[a]&-10),f=a,o&&p>=0)continue}else f=o;(h||u||d)&&(c.push(t),l.push(0|s),p=0,u=!1,d=!1);continue}}let m=tm(e,n,t,a,r,i),h=m===0&&im(a),g=!(n[t]&1);!(n[t]&17)&&!h&&!u&&(!d||Zp.test(e[t]))&&m===p&&rm(m)?n[t]&2&&(l[l.length-1]=l[l.length-1]&-129):(d=g&&m===0&&Zp.test(e[t])&&(u||p===2||p===3||p===7),c.push(t),l.push(m|s),p=m,u=h)}let m=!1,h=l.length;for(let e=h-2;e>=0;e--){let t=l[e]&15,r=l[e+1]&15;if(!(n[c[e+1]]&1||t===8)){if(!a&&(r===5||r===4&&t===5)){if(t===3)continue}else if(r===0||r===6||r===7)(t===2||t===3)&&(l[e]=l[e]&-16|6);else continue;l[e+1]=l[e+1]|32,m=!0}}if(m)for(let e=0;e<h;e++)l[e]&32||(l[e]=l[e]|64);let g=[];for(let t=0;t<h;t++)g.push(e.slice(c[t],t+1<h?c[t+1]:e.length));return{normalized:e,spaceSources:t,texts:g,starts:c,flags:l,hasUnbroken:m}}function om(e,t,n=`normal`,r=`normal`,i=null,a=null){let o=n===`pre-wrap`,s=a===null?null:[],c=o?e:a!==null&&a.ownSegmentBreaks?sm(e,a.starts,t,i,s):Kp(e,t,i);if(a!==null&&s.length===0)for(let e=0;e<a.starts.length;e++)s.push(a.starts[e]);let l=o?Xp(e):Yp(c),u=r===`keep-all`,d,f=null,p=!1;if(t.lineBreakScan===`blink`)d=sf(l,u,i);else{let e;if(t.lineBreakScan===`webkit`){if(e=a===null?Pf(c,o,u,i):um(c,a,o,u,i),!o&&c!==l&&/\r(?!\n)/.test(c)){let t=0;for(let n=0;n<c.length;n++)c.charCodeAt(n)!==13||c.charCodeAt(n+1)===10?e[t++]=e[n]:e[n+1]=e[n+1]|e[n];e[t]=e[c.length],c=c.replace(/\r(?!\n)/g,``),l=Yp(c)}}else{let n=Hp(c,o,u,t.graphemeTable,s);if(p=n.dropsBidiControl,e=n.breaks,a!==null)for(let t=0;t<a.atomic.length;t++){if(!a.atomic[t])continue;let n=s[t]+1;for(;n<c.length&&Zf(c.charCodeAt(n),!1);)n++;e[n]=e[n]&-9}let r=n.leftOut,i=!o&&(p||r!==null)?qp(c,0,t):c.length;if(r!==null||i<c.length){let t=-1;if(r!==null&&i<c.length)for(let e=i-1;e>=0;e--){let n=c.charCodeAt(e);if(!$f(n)&&!Zf(n,!1))break;if($f(n)&&r[e]!==1){t=-1;break}$f(n)&&(t=e)}let n=r===null?i:0,a=``,o=0,s=n,u=n-1;for(let l=n;l<c.length;l++){if(l<i?r!==null&&r[l]===1&&l!==t:$p(c.charCodeAt(l))){a+=c.slice(o,l),o=l+1;continue}let n=e[l];e[s++]=u>=0&&u<l-1&&n&1&&c.charCodeAt(u)===173?n|8:n,u=l}e[s]=e[c.length],c=a+c.slice(o),l=Yp(c)}}t.lineBreakScan===`webkit`&&!o&&c!==l&&(f=new Uint16Array(l.length)),d=c===l?e:em(c,l.length,e,n,f)}return a!==null&&lm(e,l,d,a,t.lineBreakScan),am(l,f,d,n,t.lineBreakScan,t.hangTabs,p)}function sm(e,t,n,r,i){if(n.lineBreakScan===`webkit`||!e.includes(`
9
9
  `))return e;let a=``,o=0,s=e.indexOf(`
10
10
  `);for(let c=0;c<t.length;c++){let l=t[c],u=c+1<t.length?t[c+1]:e.length;if(i.push(a.length+l-o),s<0||s>=u)continue;let d=e.slice(l,u),f=Kp(d,n,r);f.length!==d.length&&(a+=e.slice(o,l)+f,o=u),s=e.indexOf(`
11
- `,u)}return o===0?e:a+e.slice(o)}function cm(e,t,n){let r=new Int32Array(t.length),i=n===`blink`?-1:13,a=n===`gecko`?12:-1,o=0;for(let n=0;n<t.length;n++){let s=t.charCodeAt(n);for(;o<e.length;){let t=e.charCodeAt(o);if(t===s||$p(t)&&(s===32?t!==i&&t!==a:s===10))break;o++}r[n]=o++,s===10&&e.charCodeAt(o-1)===13&&e.charCodeAt(o)===10&&o++}return r}function lm(e,t,n,r,i){let a=r.sourceOffsets=cm(e,t,i),{starts:o,atomic:s}=r;for(let e=0,r=0;e<o.length;e++){for(;r<t.length&&a[r]<o[e];)r++;if(r===t.length)break;n[r]=n[r]|16,s[e]&&a[r]===o[e]&&(n[r]=n[r]|1,n[r+1]=n[r+1]|17)}}function um(e,t,n,r,i){let{items:a,starts:o,atomic:s}=t,c=new Uint8Array(e.length+1),l=-1;for(let t=0;t<o.length;t++){let u=o[t],d=t+1<o.length?o[t+1]:e.length;if(u===d)continue;let f=e.charCodeAt(u);if(d-u>1||f===8232||f===8233){let e=Pf(a[t].text,n,r,i);for(let t=1;t<=d-u;t++)c[u+t]=e[t]}if(l>=0&&!s[t]&&!s[l]){let o=e.charCodeAt(u-1);(!n&&(f!==13&&$p(f)||o!==13&&$p(o))||Ff(a[l].text,a[t].text,r,i))&&(c[u]=c[u]|1)}l=t}return c}var dm=`.Zapfino.Menlo.Kefa III.Geeza Pro.Snell Roundhand.Kohinoor Bangla.Kokonor|Kailasa.Kailasa.Galvji.Noto Sans Tagalog.Kohinoor Gujarati.Lucida Grande|Arial Hebrew.Apple Chancery|Arial Hebrew.Courier New.ITF Devanagari|Kohinoor Devanagari.Kohinoor Devanagari.Noto Sans Armenian.Euphemia UCAS.Hiragino Mincho ProN.Hiragino Sans.Helvetica.Khmer MN|Khmer Sangam MN.Khmer Sangam MN.Kannada MN|Noto Sans Kannada.Noto Sans Kannada.AppleMyungjo|Apple SD Gothic Neo.Apple SD Gothic Neo.Noto Nastaliq Urdu.Lao MN|Lao Sangam MN.Lao Sangam MN.Malayalam MN|Malayalam Sangam MN.Malayalam Sangam MN.Noto Serif Myanmar|Noto Sans Myanmar.Noto Sans Myanmar.Oriya MN|Noto Sans Oriya.Noto Sans Oriya.Mukta Mahee.Sinhala MN|Sinhala Sangam MN.Sinhala Sangam MN.Tamil Sangam MN.Kohinoor Telugu.Thonburi.Songti TC|PingFang HK.PingFang HK.Songti SC|PingFang SC.PingFang SC.Songti TC|PingFang TC.PingFang TC.Songti TC|PingFang MO.PingFang MO`.split(`.`),fm={"":[0,0,0,1,2],am:[3,3,3,3,2],ar:[4,4,4,4,2],bg:[0,0,5,5,2],bn:[6,6,6,6,2],bo:[7,8,7,7,2],chr:[9,9,9,9,2],ckb:[4,4,4,4,2],fa:[4,4,4,4,2],fil:[10,10,10,10,2],gu:[11,11,11,11,2],he:[0,12,13,0,14],hi:[15,16,16,16,2],hy:[17,17,17,17,2],iu:[18,18,18,18,2],ja:[19,20,19,19,2],ka:[21,0,21,21,2],km:[22,23,22,22,2],kn:[24,25,24,24,2],ko:[26,27,26,26,2],ks:[28,28,28,28,2],lo:[29,30,29,29,2],lrc:[4,4,4,4,2],ml:[31,32,31,31,2],my:[33,34,33,33,2],mzn:[4,4,4,4,2],or:[35,36,35,35,2],pa:[37,37,37,37,2],ps:[4,4,4,4,2],ro:[0,0,5,5,2],ru:[0,0,5,5,2],sd:[4,4,4,4,2],si:[38,39,38,38,2],sr:[0,0,5,5,2],ta:[40,40,40,40,2],te:[41,41,41,41,2],th:[42,42,42,42,2],tr:[0,0,5,5,2],ug:[4,4,4,4,2],uk:[0,0,5,5,2],ur:[28,28,28,28,2],yi:[0,12,13,0,14],yue:[43,44,43,43,2],zh:[45,46,45,45,2],"kk-arab":[4,4,4,4,2],"ks-arab":[4,4,4,4,2],"ks-deva":[0,0,0,1,2],"ms-arab":[4,4,4,4,2],"pa-arab":[4,4,4,4,2],"sd-deva":[0,0,0,1,2],"ur-arab":[4,4,4,4,2],"uz-arab":[4,4,4,4,2],"yue-hans":[45,46,45,45,2],"zh-hant":[47,48,47,47,2],"zh-hk":[43,44,43,43,2],"zh-mo":[49,50,49,49,2],"zh-tw":[47,48,47,47,2],"pa-aran-pk":[28,28,28,28,2],"yue-hant-mo":[49,50,49,49,2],"zh-hant-hk":[43,44,43,43,2],"zh-hant-mo":[49,50,49,49,2]},pm=null,mm=null,hm=96,gm=`0.000001px`,_m=1<<18,vm=/\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{Emoji}\uFE0F/u,ym=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,bm=[`serif`,`sans-serif`,`cursive`,`fantasy`,`monospace`],xm=/("[^"]*"|'[^']*')|(^|,)(\s*)(serif|sans-serif|cursive|fantasy|monospace)(?=\s*(?:,|$))/gi,Sm=/\dpx(?:\s*\/\s*\S+)?\s+/,Cm=/(?:"[^"]*"|'[^']*'|[^,])+/g;function wm(e,t){let n=e.toLowerCase().replaceAll(`_`,`-`),r=null;for(let e=n;r===null;)if(` aa ab ady af ak am ar as ast av ay az ba be bg bi bn bo bs ca ce ceb ch chk cs cy da de dv dz ee efi el en es et eu fa fi fil fj fo fr fur fy ga gaa gd gil gl gn gsw gu ha haw he hi hil ho hr ht hu hy id ig ii ilo inh is it iu ja jv ka kaj kam kbd kha kk kl km kn ko kok kos kpe krc ks ku kum ky la lah lb lez ln lo lt lv mai mdf mg mh mi mk ml mn mr ms mt my myv na nb ne niu nl nn nr nso ny oc om or os pa pag pap pau pl pon ps pt qu rm rn ro ru rw sa sah sat sd se sg si sid sk sl sm so sq sr ss st su sv sw ta te tet tg th ti tig tk tkl tl tn to tpi tr trv ts tt tvl tw ty tyv udm ug uk und ur uz ve vi wal war wo xh yap yo za zh zh-hk zh-tw zu `.includes(` ${e} `))r=e===`zh`;else{let t=e.lastIndexOf(`-`);if(t<0||e.endsWith(`-zyyy`))return null;` arab armn bali batk beng blis bopo brah brai bugi buhd cans cham cher cirt copt cprt cyrl cyrs deva dsrt egyd egyh egyp ethi geok geor glag goth grek gujr guru hang hani hano hans hant hebr hira hmng hrkt hung inds ital java jpan kali kana khar khmr knda kore laoo latf latg latn lepc limb lina linb mand maya mero mlym mong mymr nkoo ogam orkh orya osma perm phag phnx plrd qaai roro runr sara shaw sinh sylo syrc syre syrj syrn tagb tale talu taml telu teng tfng tglg thaa thai tibt ugar vaii visp xpeo xsux yiii zxxx `.includes(` ${e.slice(t+1)} `)&&(r=e.endsWith(`-hani`)),e=e.slice(0,t)}r&&(n=`zh-hans`);let i=fm[n];for(;i===void 0;)n=n.slice(0,Math.max(0,n.lastIndexOf(`-`))),i=fm[n];let a=[];for(let e=0;e<i.length;e++){let n=i.indexOf(i[e]);if(n<e){a.push(a[n]);continue}let r=dm[i[e]],o=r.indexOf(`|`),s=o<0?r:Em(t,r.slice(0,o))?r.slice(0,o):r.slice(o+1);a.push(s===``?``:`"${s}"`)}return a}var Tm=`Hamburg 한中 नम សួ ನಮ ສະ നമ မင ନମ ආය བཀ`;function Em(e,t){for(let n of[`monospace`,`serif`]){e.font=`16px ${n}`;let r=e.measureText(Tm).width;if(e.font=`16px "${t}", ${n}`,e.measureText(Tm).width!==r)return!0}return!1}function Dm(e,t){let n=Sm.exec(e);if(n===null)return e;let r=n.index+n[0].length;return e.slice(0,r)+e.slice(r).replace(xm,(e,n,r,i,a)=>{let o=n===void 0?t[bm.indexOf(a.toLowerCase())]:``;return o===``?e:r+i+o})}function Om(e){if(e.hyphenText!==null)return e.hyphenText;let t=e.canvasFont,n=Sm.exec(t),r=`-`;if(n!==null&&Lm(`‐`,e).width!==Lm(`-`,e).width){let i=wh(e),a=n.index+n[0].length,o=t.slice(0,a),s=t.slice(a).match(Cm)??[],c=o+`monospace`,l=o+`serif`;if(km(i,c,` `)!==km(i,l,` `)&&km(i,c,`‐`)!==km(i,l,`‐`))for(let e=0;e<s.length;e++){let t=`${o}${s[e]}, monospace`,n=`${o}${s[e]}, serif`;if(km(i,t,` `)===km(i,n,` `)){km(i,t,`‐`)===km(i,n,`‐`)&&(r=`‐`);break}}i.font=t}return e.hyphenText=r,r}function km(e,t,n){return e.font=t,e.measureText(n).width}function Am(e){pm!==null&&pm.segments>_m&&Dh();let t=null;if(typeof document<`u`){let e=document.documentElement?.lang;typeof e==`string`&&(t=e)}return t===``&&e.laysOutUnderDefaultLocale?$d():t}var jm=(1<<30)-1;function Mm(e,t){let n=e??0;if(!Number.isFinite(n))throw RangeError(`letterSpacing must be a finite number of CSS px, not ${n}`);if(!t.letterSpacingInAppUnits)return n;let r=Math.fround(Math.fround(n)*60);return Math.min(Math.round(Math.abs(r)),jm)*Math.sign(r)/60}function Nm(e){let t=[];for(let n=0;n<e;n++)t.push(0);return t}var Pm=2**20,Fm=[];function Im(e,t){if(!t.state.takesLetterSpacing)return Fm;let n=new Int32Array(e.length),r=Bf(ih().graphemeTable,e,0,e.length,n),i=r<=hm,a=t.glyphCounts,o=null,s=Fm;try{let c=0;for(let l=0,u=0;l<r;u=n[l++]){let d=e.slice(i?0:u,n[l]),f=a.get(d);f===void 0&&(o===null&&(o=wh(t),o.letterSpacing=`${Pm}px`),f=Math.round(o.measureText(d).width/Pm),a.set(d,f));let p=f-(i?c:0)-1;c=f,(p!==0||s.length!==0)&&(s.length===0&&(s=Nm(r)),s[l]=p)}}finally{o!==null&&(o.letterSpacing=t.letterSpacing)}return s}function Lm(e,t){return t.metrics.get(e)??zm(t.metrics,e,e,t)}function Rm(e,t){return t.followingSpaceMetrics.get(e)??zm(t.followingSpaceMetrics,e,e+` `,t)}function zm(e,t,n,r){let i={width:wh(r).measureText(n).width,emojiCount:-1,fit:null,spaceKerning:null,extraSpacings:null};return e.set(t,i),r.state.segments++,!r.measuredKana&&Bm.test(t)&&(r.measuredKana=!0),i}var Bm=/[\u3041-\u30FF]/,Vm=/[\u3041-\u30FF]{2}/,Hm=191,Um={after:0,before:0};function Wm(e){return e>=12353&&e<=12438||e>=12449&&e<=12538||e>=13312&&e<=40959||e>=63744&&e<=64255}function Gm(e){return Ad(e,1)||(e&63488)==55296||Wm(e)||e>=44032&&e<=55203}function Km(e){if(e.spaceKerning===void 0){let t=wh(e),n=`\u2028`;for(let e=33;e<=126;e++)n+=String.fromCharCode(e)+`\u2028`;let r=t.measureText(n).width;t.fontKerning=`none`;let i=t.measureText(n).width;t.fontKerning=`auto`,e.spaceKerning=r!==i&&t.measureText(`\u2028`).width===Lm(` `,e).width?new Map:null}return e.spaceKerning}function qm(e,t,n,r){let i=e<<1|!!t,a=r.get(i);if(a===void 0){if(a=0,!Gm(e)){let r=String.fromCharCode(e),i=wh(n).measureText(t?`\u2028`+r:r+`\u2028`).width;a=i-Lm(r,n).width-Lm(` `,n).width,Math.abs(a)<=i/4194304&&(a=0)}r.set(i,a)}return a}function Jm(e,t,n,r){let i=0,a=e.length-1;for(;i<a&&Ad(e.charCodeAt(i),4);)i++;for(;a>i&&Ad(e.charCodeAt(a),4);)a--;let o=i<a&&Ad(e.charCodeAt(i+1),1)?0:qm(e.charCodeAt(i),!0,n,r),s=qm(e.charCodeAt(a),!1,n,r);return t.spaceKerning=s===0&&o===0?Um:{after:s,before:o}}function Ym(e){return e.spaceWidth??=Lm(` `,e).width}var Xm=`プダグタノムブイメえずぺ`;function Zm(e){let t=e.state;return t.wholeRunContext===null&&(t.wholeRunContext=Th(t.language),t.wholeRunContext.textRendering=`optimizeLegibility`),t.wholeRunFont!==e.kanaFont&&(t.wholeRunContext.font=t.wholeRunFont=e.kanaFont),t.wholeRunContext}function Qm(e,t){let n=e.width/4194304;return Math.abs(e.width-t.width)<=n&&Math.abs(e.actualBoundingBoxLeft-t.actualBoundingBoxLeft)<=n&&Math.abs(e.actualBoundingBoxRight-t.actualBoundingBoxRight)<=n}function $m(e){if(e.kanaKerning===void 0){e.kanaKerning=null;let t=e.canvasFont,n=Sm.exec(t),r=n===null?0:n.index+n[0].length,i=n===null?null:t.slice(r).match(Cm),a=i===null?1:i.length,o=null;for(let n=0;n<a;n++){let a=n===0?t:t.slice(0,r)+i.slice(n).join(`,`);e.kanaFont=a;let s=Zm(e),c=s.measureText(Xm).width;s.fontKerning=`none`;let l=s.measureText(Xm);if(s.fontKerning=`auto`,o===null)o=l;else if(!Qm(o,l))break;if(c!==l.width){if(n>0){let n=``;for(let e=12353;e<=12438;e++)n+=String.fromCharCode(e,12290);let r=s.measureText(n).width;e.kanaFont=t;let i=Zm(e),o=i.measureText(n).width;i.fontKerning=`none`;let c=i.measureText(n).width;if(i.fontKerning=`auto`,o===c||Math.abs(r-o)>o/4194304)break;e.kanaFont=a}e.kanaKerning=new Float64Array(36481).fill(NaN);break}}e.kanaKerning===null&&(e.kanaFont=t)}return e.kanaKerning}function eh(e,t,n,r,i){let a=e.charCodeAt(n);if(a<12353||a>12543)return 0;let o=e.charCodeAt(n-1);if(o<12353||o>12543)return 0;if(n>t){if(!Wm(a))return 0;let r=n-1,i=o;for(;i>=12353&&i<=12543&&!Wm(i);){if(r===t)return 0;i=e.charCodeAt(--r)}if(i>=11904&&!Wm(i))return 0}let s=(o-12353)*Hm+a-12353,c=i[s];return Number.isNaN(c)?i[s]=th(e.slice(n-1,n+1),r):c}function th(e,t){let n=Zm(t).measureText(e).width,r=n-Lm(e[0],t).width-Lm(e[1],t).width;return Math.abs(r)<=n/4194304?0:r}function nh(e,t,n){return gh(e,Lm(e,t),t,n)}function rh(e){return e.includes(`Firefox/`)?`gecko`:e.includes(`AppleWebKit/537.36`)?e.includes(`Chrome/`)||e.includes(`Chromium/`)?`blink`:null:e.includes(`AppleWebKit/`)?`webkit`:null}function ih(){return mm??=ah()}function ah(){let e=rh(typeof navigator>`u`?``:navigator.userAgent??``)??`blink`;return{lineBreakScan:e,graphemeTable:e===`webkit`?`apple/char`:e===`gecko`?`gecko/char`:`chromium/char`,lineFitEpsilon:e===`webkit`?1/64:.005,cutWordFit:e===`blink`?`reshaped-lines`:`segment-prefixes`,prefixFitMinWidth:e===`webkit`?0:80,cutWordKeepsLigatures:e===`gecko`,measureTextWithFollowingSpace:e===`webkit`,kernsAcrossCanvasWords:e===`blink`,letterSpaceDiscretionaryHyphen:e!==`blink`,letterSpacingInAppUnits:e===`gecko`,canvasLetterSpacingDropsLigatures:e!==`webkit`,unspacedCursive:e===`blink`?`run`:e===`gecko`?`cluster`:`none`,letterSpacesGlyphs:e===`webkit`,unfitHyphenRetreat:e===`blink`?`reduced-width`:e===`gecko`?`full-width`:`full-width-or-first`,hyphenFromPrimaryFont:e!==`gecko`,letterSpaceTabStops:e!==`webkit`,letterSpaceTabs:e===`webkit`,tabMinimumCharacter:e===`gecko`?`0`:` `,tabsInAppUnits:e===`gecko`,hangTabs:e!==`gecko`,zeroWidthGlueTakesLine:e!==`gecko`,hidesControlCharacters:e===`gecko`,hanKerning:e===`blink`,hangsIdeographicSpace:e!==`webkit`,laysOutUnderDefaultLocale:e===`blink`,namesGenericFamiliesByLanguage:e===`webkit`&&!/^(?:Linux|Win32|Haiku|$)/.test(navigator.platform),hardBreakItemRetreat:e===`blink`?`item`:e===`webkit`?`fit`:`last-grapheme`,paddedOpeningFit:e===`blink`?`start`:e===`webkit`?`placed`:`both`,emptyAtomicAlwaysFits:e===`gecko`,hangsSpacesPerTextFrame:e===`gecko`,testsHyphenBeforeAtomic:e!==`webkit`,transformsSegmentBreaksAcrossItems:e===`blink`}}function oh(e){let t=e.match(/(?:^|\D)(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function sh(e){return ym.test(e)}function ch(e,t){let n=t.emojiCorrection;if(n!==null)return n;let r=oh(e),i=t.emojiWidth!==0,a=t.emojiWidth=wh(t).measureText(`😀`).width;if(n=0,a>r+.5&&typeof document<`u`){let r=lh(e);if(Number.isNaN(r))return 0;if(a-r>.5&&(n=a-r,i)){for(let e of t.metrics.values())e.fit=null;for(let e of t.followingSpaceMetrics.values())e.fit=null}}return t.emojiCorrection=n,n}function lh(e){let t=document.body;if(t===null&&document.head===null)return NaN;let n=document.createElement(`span`);n.style.cssText=`all:initial!important;-webkit-locale:inherit!important;display:inline-block!important;visibility:hidden!important;position:absolute!important`,n.style.setProperty(`font`,e,`important`),n.textContent=`😀`;let r=t===null?NaN:uh(t,n);return Number.isNaN(r)&&(r=uh(document.documentElement,n)),r}function uh(e,t){e.appendChild(t);let n=t.getBoundingClientRect().width,r=parseFloat(getComputedStyle(t).width);return e.removeChild(t),Math.abs(n-r)<=r*1e-5?n:r}var dh=2**-20,fh=2**-17;function ph(e,t){let n=Lm(e,t).width,r=Math.round(n/t.emojiWidth);return Math.abs(n-r*t.emojiWidth)<=n*dh?r:0}var mh=/[\p{Extended_Pictographic}\p{Emoji_Component}\uFE0E]+/gu;function hh(e,t){let n=new Int32Array(e.length),r=Bf(ih().graphemeTable,e,0,e.length,n),i=0;for(let a=0,o=0;a<r;o=n[a++]){let r=e.slice(o,n[a]);if(!vm.test(r))continue;let s=r.match(mh);for(let e=0;e<s.length;e++)i+=ph(s[e],t)}return i}function gh(e,t,n,r){return r===0?t.width:(t.emojiCount<0&&(t.emojiCount=hh(e,n)),t.width-t.emojiCount*r)}function _h(e,t,n,r,i,a=null){if(t.fit!==null&&t.fit.mode===i)return t.fit;let o=ih(),s=new Int32Array(e.length),c=Bf(o.graphemeTable,e,0,e.length,s);if(c<=1)return t.fit={mode:i,advances:null,lineStartExtras:null};let l,u=null,d=!1;if(i===`reshaped-lines`){let i=gh(e,t,n,r)-(a??0),o=xh(e,s,c,`sum-graphemes`,t,n,r,a);if(l=o,!bh(o,i)){l=xh(e,s,c,`pair-context`,t,n,r,a),d=c>hm||bh(l,i),d||(l=xh(e,s,c,`segment-prefixes`,t,n,r,a)),u=[0];for(let e=1;e<c;e++)u.push(o[e]-l[e])}}else{let u=i===`segment-prefixes`&&c<=hm;d=i!==`sum-graphemes`&&!u,l=xh(e,s,c,d?`pair-context`:i,t,n,r,a),u&&o.cutWordKeepsLigatures&&vh(e,s,l,n,r)}if(o.kernsAcrossCanvasWords&&n.kanaKerning!==null&&Vm.test(e)){let t=$m(n);if(t!==null)for(let r=1;r<c;r++){let i=eh(e,d&&r>1?s[r-2]:0,s[r-1],n,t);i>0?l[r-1]=l[r-1]+i:i<0&&(l[r]=l[r]+i,u??=Nm(c),u[r]=u[r]-i)}}return t.fit={mode:i,advances:l,lineStartExtras:u}}function vh(e,t,n,r,i){if(!r.state.shapesLetterSpaced||r.letterSpacing!==`0px`)return;let a=0;for(let o=1;o<n.length;o++){let s=t[o-1],c=nh(e.slice(s,t[o]),r,i);Math.round((n[o]-c)*60)!==0&&yh(e.slice(o===1?0:t[o-2],t[o]),r)?(n[a]=n[a]+n[o],n[o]=0):a=o}}function yh(e,t){let n=t.ligaturePairs.get(e);if(n===void 0){let r=wh(t),i=Lm(e,t).width;r.letterSpacing=gm,n=r.measureText(e).width!==i,r.letterSpacing=`0px`,t.ligaturePairs.set(e,n)}return n}function bh(e,t){let n=0;for(let t=0;t<e.length;t++)n+=e[t];return Math.abs(n-t)<=t*fh}function xh(e,t,n,r,i,a,o,s){let c=r===`segment-prefixes`,l=r===`pair-context`,u=[],d=0,f=0;for(let r=0,p=0;r<n;p=t[r++]){let m=t[r];if(c){let t=s!==null&&r===n-1?gh(e,i,a,o)-s:nh(e.slice(0,m),a,o);u.push(t-f),f=t;continue}let h=nh(e.slice(p,m),a,o);u.push(l&&r>0?nh(e.slice(d,m),a,o)-f:h),d=p,f=h}return s!==null&&!c&&(u[n-1]=u[n-1]+i.width-Lm(e,a).width-s),u}function Sh(e,t,n){(pm===null||pm.language!==t)&&(pm=Eh(t));let r=pm,i=n&&r.shapesLetterSpaced,a=i?r.letterSpacedFonts:r.fonts;r.font=``;let o=a.get(e);if(o===void 0){let t=r.genericFamilies===null?e:Dm(e,r.genericFamilies);if(!Ch(r.context,t))throw RangeError(`font must be a font string Canvas takes, a size in px then a family, such as 16px Inter, not "${e}"`);o={state:r,canvasFont:t,letterSpacing:i?gm:`0px`,metrics:new Map,followingSpaceMetrics:new Map,spaceKerning:void 0,measuredKana:!1,kanaKerning:void 0,kanaFont:t,emojiCorrection:null,emojiWidth:0,hyphenText:null,spaceWidth:null,hanKerning:void 0,ligaturePairs:new Map,glyphCounts:new Map},a.set(e,o)}return o}function Ch(e,t){return e.font=`1px serif`,e.font=t,e.font!==`1px serif`||(e.font=`2px serif`,e.font=t,e.font!==`2px serif`)}function wh(e){let t=e.state;return t.font!==e.canvasFont&&(t.context.font=t.font=e.canvasFont),t.letterSpacing!==e.letterSpacing&&(t.context.letterSpacing=t.letterSpacing=e.letterSpacing),t.context}function Th(e){let t=null;if(typeof OffscreenCanvas<`u`?t=new OffscreenCanvas(1,1).getContext(`2d`):typeof document<`u`&&(t=document.createElement(`canvas`).getContext(`2d`)),t===null)throw Error(`Text measurement requires OffscreenCanvas or a DOM canvas context.`);return e!==null&&`lang`in t&&(t.lang=e),t}function Eh(e){let t=Th(e),n=ih(),r=typeof t.letterSpacing==`string`;return{language:e,context:t,font:``,letterSpacing:`0px`,wholeRunContext:null,wholeRunFont:``,genericFamilies:e!==null&&n.namesGenericFamiliesByLanguage?wm(e,t):null,takesLetterSpacing:r,shapesLetterSpaced:r&&n.canvasLetterSpacingDropsLigatures,fonts:new Map,letterSpacedFonts:new Map,segments:0}}function Dh(){pm!==null&&(pm.fonts.clear(),pm.letterSpacedFonts.clear(),pm.segments=0)}var Oh=0,kh=1,Ah=2,jh=3,Mh=4,Nh=5,Ph=6,Fh=7,Ih=8,Lh=9,Rh=10,zh=/\p{Ps}/uy,Bh=/\p{Pe}/uy,Vh=/[\u2018-\u301F\uFF08-\uFF60]/;function Hh(e){return e>=8216&&e<=12319||e>=65288&&e<=65376}function Uh(e){return Vh.test(e)}function Wh(e,t){let n=e.charCodeAt(t);switch(n){case 8216:case 8220:return Lh;case 8217:case 8221:return Rh;case 12289:case 12290:case 65292:case 65294:return Ph;case 65306:return Fh;case 65307:return Ih;case 183:case 8231:case 12288:case 12539:return jh;default:{if(n<40||!Ad(n,2))return Oh;let r=n>=12288&&n<=12351||n>=65281&&n<=65376||n>=65504&&n<=65510;return zh.lastIndex=Bh.lastIndex=t,zh.test(e)?r?kh:Mh:Bh.test(e)?r?Ah:Nh:Oh}}}function Gh(e,t,n){let r=String.fromCharCode(t),i,a,o;if(Xh(t)){let t=e.measureText(`中`+r);i=t.width-n,o=t.actualBoundingBoxRight-n,a=-e.measureText(r+`中`).actualBoundingBoxLeft}else{let t=e.measureText(r);i=t.width,a=-t.actualBoundingBoxLeft,o=t.actualBoundingBoxRight}let s=i/2,c=o<=s?Ah:a>=s?kh:o-a<=s&&a>=s/2?jh:Oh;return{advance:i,type:c}}function Kh(e,t,n){let r=e.trims.get(t);if(r===void 0){let i=String.fromCharCode(t);r=2*Lm(i,n).width-Lm(i+i,n).width,e.trims.set(t,r)}return r}function qh(e){if(e.hanKerning!==void 0)return e.hanKerning;let t={typeForDot:Oh,typeForColon:Oh,typeForSemicolon:Oh,quoteFullwidth:!1,trims:new Map};if(Kh(t,12300,e)<=.001)return e.hanKerning=null,null;let n=Lm(`中`,e).width,r=wh(e),i=[12289,12290,65292,65294,65306,65307,8220,8216,8221,8217].map(e=>Gh(r,e,n)),a=(e,t)=>{for(let n=e+1;n<t;n++)if(i[n].advance!==i[e].advance||i[n].type!==i[e].type)return Oh;return i[e].type};return t.typeForDot=a(0,4),t.typeForColon=i[4].type,t.typeForSemicolon=i[5].type,t.quoteFullwidth=a(6,8)===kh&&a(8,10)===Ah,e.hanKerning=t,t}function Jh(e,t,n){let r=Wh(t,n);switch(r){case Ph:return e.typeForDot;case Fh:return e.typeForColon;case Ih:return e.typeForSemicolon;case Lh:return e.quoteFullwidth?kh:Mh;case Rh:return e.quoteFullwidth?Ah:Nh;default:return r}}function Yh(e,t){return t===kh&&(e===kh||e===jh||e===Ah||e===Mh)?1:e===Ah&&(t===Ah||t===jh||t===Nh)?-1:0}function Xh(e){return e>=12288&&e<=12543||e>=65072&&e<=65135||e>=65280&&e<=65519&&e!==65307}function Zh(e,t,n,r){let i={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null},a=qh(e);if(a===null)return i;let{flags:o,starts:s,normalized:c}=t,l=o.length,u=(e,t)=>{i.widthTrims??=Nm(r-n),i.widthTrims[e-n]=i.widthTrims[e-n]+t};for(let t=n;t<r;t++){if(o[t]&15)continue;let d=s[t],f=t+1<l?s[t+1]:c.length,p=c.charCodeAt(d);if(t>0&&Hh(p)&&Yh(Jh(a,c,d-1),Jh(a,c,d))===1){let o=Kh(a,p,e);i.lineStartExtras??=Nm(r-n),i.lineStartExtras[t-n]=o,u(t,o)}for(let n=d+1;n<f;n++){let r=c.charCodeAt(n-1),i=c.charCodeAt(n);if(!(Hh(r)||Hh(i))||Xh(r)===Xh(i))continue;let o=Yh(Jh(a,c,n-1),Jh(a,c,n));o!==0&&u(t,Kh(a,o===1?i:r,e))}let m=c.charCodeAt(f-1);if(!Hh(m))continue;let h=t+1===l;if(!h&&Yh(Jh(a,c,f-1),Jh(a,c,f))===-1){u(t,Kh(a,m,e));continue}let g=Wh(c,f-1);g!==Ah&&g!==Rh||Jh(a,c,f-1)!==Ah||(h||!(o[t+1]&15)&&!(o[t+1]&32)?(i.lineEndTrims??=Nm(r-n),i.lineEndTrims[t-n]=Kh(a,m,e)):(i.overflowLineEndTrims??=Nm(r-n),i.overflowLineEndTrims[t-n]=Kh(a,m,e)))}return i}function Qh(e,t,n){return t===2?0:Bf(n,e,0,e.length,null)}function $h(e,t,n){return t>1?e+(t-1)*n:e}var eg=[741,745,768,879,1425,1469,1471,1487,1536,4255,4352,4607,4957,4959,5888,6319,6400,6479,6528,6623,6656,7423,7616,7679,8400,8447,9977,9977,11503,11505,12330,12335,12441,12444,42620,42621,42736,42737,43008,44031,55216,55295,65024,65039,65056,65071,68096,68191,69632,69839,69888,70111,70144,70223,70320,70527,70656,70879,71040,71263,71296,71375,71424,72895,92928,93071,125184,125279,127462,127487,127995,127999,917504,917631,917760,917999],tg=/\p{Extended_Pictographic}/u,ng=Ed(String.raw`^\p{M}`,`u`),rg=/^[\p{Nd}:\-/×,.+\u2013\u2014]+$/u,ig=/^[\p{Cc}\u2028\u2029]$/u;function ag(e){let t=!1;for(let n=0;n<e.length;){let r=e.codePointAt(n);if(n+=r>65535?2:1,r===8205&&t)return!0;t=r>65535&&tg.test(String.fromCodePoint(r));for(let e=0;e<eg.length&&r>=eg[e];e+=2)if(r<=eg[e+1])return!0}return!1}var og=/[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}\u202A-\u202E\u2066-\u2069]/u;function sg(e){return e===1||e===4}var cg=null;function lg(e){return fd[xd(cg??=Td(`chromium/script`),e)]}function ug(e,t){let n=e.codePointAt(t),r=lg(n),i=t+(n>65535?2:1);if(r&1024&&i<e.length){let t=lg(e.codePointAt(i))>>5&31;if(t!==0)return r&-32|t}return r}function dg(e){for(let t=0;t<e.length;t++){if(e.charCodeAt(t)<128)continue;let n=lg(e.codePointAt(t));if((n&31)==16||(n>>5&31)==16)return!0}return!1}function fg(e,t,n){let{openBrackets:r}=e;for(;e.read<n||e.scripts===31&&e.read<t.length;){let n=t.codePointAt(e.read),i=ug(t,e.read),a=i&31,o=i&8192?r.lastIndexOf(n-(i>>14)):-1;if(o>=0&&(r[o+1]!==0&&(a=r[o+1]),r.length=o+2),(e.scripts&a)!==0)e.scripts&=a;else{for(let t=r.length-1;t>0&&r[t]===0;t-=2)r[t]=e.scripts&-e.scripts;e.scripts=a}i&4096&&(r.length===64&&r.splice(0,2),r.push(n,0)),e.read+=n>65535?2:1}return e.scripts}function pg(e,t,n,r){let i=ug(t,n)&31;for(let e=n;i===31&&e+1<r&&Ad(t.charCodeAt(e),4);e++)i=ug(t,e+1)&31;if(i===31)return!0;for(let e=n-2;e>=0;e--){(t.charCodeAt(e)&64512)==56320&&e>0&&e--;let n=ug(t,e);if(n&8192)break;let r=n&31;if(r!==31){if(!(r&r-1))return(r&i)!==0;break}}return(fg(e,t,n)&i)!==0}function mg(e,t,n,r,i){let a=new Int32Array(n-t),o=Bf(r,e,t,n,a),s=null;for(let n=0,r=t;n<o;r=a[n++])(i===null?lg(e.codePointAt(r))&2048:fg(i,e,r+1)===16&&e.charCodeAt(r)!==160)&&(s??=[]).push(n);return s}function hg(e,t,n){let{normalized:r,spaceSources:i,starts:a,flags:o}=e,s=t+1;for(;s<n&&(o[s]&15)==2;)s++;if(s>=n)return null;let c=o[s]&15,l=a[s];return c!==1&&c!==4||(i===null?r.charCodeAt(l):i[l])!==32?null:r.slice(a[t+1],l)}function gg(e,t,n){return Rm(e,t).width-Lm(e,t).width-n}function _g(e,t,n,r,i,a,o,s){if(r===null)return 0;let{texts:c,flags:l}=e,u=t+1;for(;u<n&&(l[u]&15)==3;)u++;if(u>=n||l[u]&15)return 0;let d=c[u],f=gh(r,i,a,o)+nh(d,a,o),p=nh(r+d,a,o);return f-p>s?f-p:0}function vg(e,t,n,r,i,a){return gh(e,t,n,r)-i+a}function yg(e,t,n,r,i,a,o,s,c,l){let{normalized:u,texts:d,starts:f,flags:p}=e,m=t===0?0:f[t],h=t===0&&n===p.length?u:n===t+1?d[t]:u.slice(m,n<p.length?f[n]:u.length),g=l===null?[]:l.widths,_=l===null?new Uint8Array(n-t):l.segmentFlags,v=l===null?[]:l.breakableFitAdvances,y=i?[]:null,b=g.length,x=a!==0,S=Sh(r,s,x),C=sh(h)?ch(r,S):0,w=h.includes(` `),T=w||h.includes(` `)?Ym(S):0,E=o.letterSpaceTabStops?a:0,D=o.tabsInAppUnits?(Math.round(T*60)+Math.round(E*60))*8/60:(T+E)*8,O=0,k=o.kernsAcrossCanvasWords&&h.includes(` `)?Km(S):null;k!==null&&og.test(h)&&(k=null);let A={read:0,scripts:31,openBrackets:[]},j=0,M=x&&o.unspacedCursive!==`none`&&dg(h),N=!x,P=null,F=null,ee=null,te=null,ne=o.unfitHyphenRetreat===`full-width-or-first`;for(let r=t,i=b;r<n;r++,i++){let s=d[r],l=p[r],u=l&15,b=0,E=0,D=null;switch(u){case 0:{if(o.hidesControlCharacters&&ig.test(s)){E=1;break}let d=o.measureTextWithFollowingSpace&&w?hg(e,r,n):null,_=d===``,v=_?Rm(s,S):Lm(s,S);ee=s,te=v;let y=d===null||_?0:gg(s+d,S,T);if(k!==null&&v.spaceKerning!==Um){let e=r>t&&sg(p[r-1]&15),a=r+1<n&&sg(p[r+1]&15);if(e||a){let n=v.spaceKerning??Jm(s,v,S,k);a&&(y=Math.max(n.after,0),j=Math.min(n.after,0)),e&&n.before!==0&&((p[r-1]&15)!=4||r!==t+1&&(p[r-2]&15)!=8)&&pg(A,h,f[r]-m,f[r]-m+s.length)&&(g[i-1]=g[i-1]+n.before)}}b=vg(s,v,S,C,_?T:0,y);let O=null,N=Fm;if(x&&(E=Qh(s,u,o.graphemeTable),M&&(O=mg(h,f[r]-m,f[r]-m+s.length,o.graphemeTable,o.unspacedCursive===`run`?A:null),O!==null&&(b-=O.length*a)),o.letterSpacesGlyphs)){N=v.extraSpacings??=ag(s)?Im(s,S):Fm;for(let e=0;e<N.length;e++)b+=N[e]*a}if(!c||l&128||s.length===1)break;let F=_h(s,v,S,C,a===0?rg.test(s)?`pair-context`:v.width<o.prefixFitMinWidth?`sum-graphemes`:o.cutWordFit:`segment-prefixes`,_?T:null);if(D=F.advances,D===null)break;if(F.lineStartExtras!==null&&((P??=Array(n-t).fill(null))[r-t]=F.lineStartExtras),y!==0&&(D=D.slice(),D[D.length-1]=D[D.length-1]+y),N.length!==0){D=D.slice();for(let e=0;e<N.length;e++)D[e]=D[e]+N[e]*a}if(O!==null){D=D.slice();for(let e=0;e<O.length;e++)D[O[e]]=D[O[e]]-a}break}case 1:case 4:case 2:b=nh(s,S,C)+j,j=0,x&&(E=Qh(s,u,o.graphemeTable));break;case 5:o.letterSpaceTabs&&(E=1),O===0&&(O=nh(o.tabMinimumCharacter,S,C)/2);break;case 7:{b=nh(s,S,C);let e=r+1<n?d[r+1]:``;x&&(r>t&&!(p[r-1]&15)&&ag(d[r-1])||ng().test(e)&&ag(e))&&(E=1);break}}u!==0&&u!==1&&u!==2&&(N=!1),u!==0&&u!==3&&(ee=null),_[i]=l&-129|(x&&E>0?16:0),g[i]=$h(b,E,a),v[i]=D,y!==null&&(y[r-t]=s),u!==0&&s.charCodeAt(0)===173?(F??=Nm(r-t),F[r-t]=ne?0:_g(e,r,n,ee,te,S,C,o.lineFitEpsilon)):F!==null&&(F[r-t]=0)}let I=nh(F===null?`-`:o.hyphenFromPrimaryFont?Om(S):`‐`,S,C)+(a===0?0:a*(o.letterSpaceDiscretionaryHyphen?2:1)),re={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null};if(o.hanKerning&&Uh(h)){re=Zh(S,e,t,n);let r=re.widthTrims;if(r!==null)for(let e=0;e<r.length;e++)g[b+e]=g[b+e]-r[e]}let L=re.lineStartExtras;if(o.kernsAcrossCanvasWords&&S.measuredKana&&S.kanaKerning!==null&&Vm.test(h)){let r=$m(S);r!==null&&(L=bg(L,g,b,e,t,n,S,r))}let R=re.lineEndTrims;o.hangsIdeographicSpace&&h.includes(` `)&&(R=xg(R,e,S,a,I,t,n));let z={widths:g,segmentFlags:_,simpleLineWalkFastPath:N&&!e.hasUnbroken,simpleLineCountFastPath:N,breakableFitAdvances:v,letterSpacing:a,discretionaryHyphenWidth:I,discretionaryHyphenContexts:F,breakableLineStartExtras:P,lineStartExtras:L,lineEndTrims:R,overflowLineEndTrims:re.overflowLineEndTrims,tabStopAdvance:D,minimumTabAdvance:O};return y!==null&&(z.segments=y),z}function bg(e,t,n,r,i,a,o,s){let{normalized:c,starts:l,flags:u}=r;for(let r=i;r<a;r++){if(u[r]&15)continue;let d=l[r],f=r+1<u.length?l[r+1]:c.length,p=n+r-i;for(let n=r>i?d:d+1;n<f;n++){let l=eh(c,d,n,o,s);l!==0&&(n>d?t[p]=t[p]+l:l>0?t[p-1]=t[p-1]+l:(t[p]=t[p]+l,e??=Nm(a-i),e[r-i]=e[r-i]-l))}}return e}function xg(e,t,n,r,i,a,o){let{normalized:s,starts:c,flags:l}=t;for(let t=a;t<o;t++){let u=t+1<l.length?c[t+1]:s.length;if(l[t]&15||s.charCodeAt(u-1)!==12288)continue;if(t+1<o){let e=l[t+1]&15;if(e!==8&&e!==1&&(e!==0||l[t+1]&32))continue}let d=u-1;for(;d>c[t]&&s.charCodeAt(d-1)===12288;)d--;let f=s.slice(d,u),p=t>0&&d===c[t]&&s.charCodeAt(d-1)===173,m=Lm(f,n).width+f.length*r-(p?i:0);m<=0||(e??=Nm(o-a),e[t-a]=e[t-a]+m)}return e}var Sg=62;function Cg(e){return!!(1<<e&Sg)}function wg(e,t,n,r){return r===0&&n>0&&n<t&&(e[n-1]&15)==3}function Tg(e,t){return e===1||e===3||e===2&&!t}function Eg(e,t,n,r){if(r){let r=Math.round(t*60);if(r<=0)return 0;let i=Math.round(e*60);return(Math.ceil((i+Math.round(n*120)/2)/r)*r-i)/60}if(t<=0)return 0;let i=t-(e-Math.floor(e/t)*t);return i<n?i+t:i}function Dg(e,t,n,r,i){let a=t.tabStopAdvances===null?e.tabStopAdvance:t.tabStopAdvances[n],o=t.minimumTabAdvances===null?e.minimumTabAdvance:t.minimumTabAdvances[n];return Eg(r-(t.insideExtras===null?0:t.insideExtras[n]/2),a,o,i)+e.widths[n]}function Og(e,t,n,r,i,a,o){let{letterSpacing:s,segmentFlags:c}=e;if(s===0)return 0;if(o>0)return c[a]&16?s:0;let l=e.widths.length;if(wg(c,l,a,o)||a>r&&a<l&&(c[a]&15)!=8&&1<<(c[a-1]&15)&n)return 0;for(let e=a-1;e>=r;e--){let n=c[e],a=n&15;if(a!==1&&(a===7||a===5||n&16||a===9||t!==null&&t[e]!==0))return e===r&&i>0||n&16?s:0}return 0}function kg(e){return e<=1/0?e:1/0}function Ag(e,t){let{segmentFlags:n}=e,r=e.widths.length,i=t.segmentIndex;if(i>=r)return!1;if(t.graphemeIndex>0)return!0;let a=i===0||(n[i-1]&15)==8;for(;;){let e=n[i]&15;if(e===8){if(a)return t.segmentIndex=i,t.graphemeIndex=0,!0;if(++i>=r)return!1;t.segmentIndex=i,t.graphemeIndex=0,a=!0}else if(Tg(e,a)){if(++i>=r)return!1}else return t.segmentIndex=i,t.graphemeIndex=0,!0}}function jg(e,t,n,r={lineCount:0,maxLineWidth:0}){let i={segmentIndex:0,graphemeIndex:0};if(!e.simpleLineWalkFastPath)return Ag(e,i)&&Pg(e,i,t,n,r),r.lineCount;let{segmentFlags:a}=e,o=e.widths.length;for(;;){let s=i.segmentIndex,c=s===0;for(;s<o&&Tg(a[s]&15,c);)s++;if(s>=o)return r.lineCount;let l=i.graphemeIndex;i.segmentIndex=s;let u=Fg(e,i,t);r.lineCount++,u>r.maxLineWidth&&(r.maxLineWidth=u),n?.(u,s,l,i.segmentIndex,i.graphemeIndex)}}function Mg(e,t,n,r){let i=n+1;for(;i<t&&1<<(e[i]&15)&r;)i++;return i===t||(e[i]&15)!=5}function Ng(e,t,n,r,i,a){let{discretionaryHyphenContexts:o,segmentFlags:s}=e,c=n-1;if(c<t||(s[c]&15)!=3||r<=i)return!1;let l=r-i,u=0,d=a?c:c-1;if(o!==null)for(let e=t;e<=d;e++)u+=o[e];return u<l}function Pg(e,t,n,r,i,a=!1){let{widths:o,segmentFlags:s,breakableFitAdvances:c,discretionaryHyphenWidth:l,letterSpacing:u,lineStartExtras:d,lineEndTrims:f,overflowLineEndTrims:p,tabStopAdvance:m,minimumTabAdvance:h}=e,g=o.length,_=e.items,v=_===void 0?null:_.hyphenWidths,y=_===void 0?null:_.hyphenRooms,b=_===void 0?null:_.itemEndHalts,x=_===void 0?null:_.insideExtras,S=_===void 0?null:_.fillExtras,C=_===void 0?null:_.openingEdges,w=_===void 0?null:_.emptyObjectSpaces,T=_===void 0?null:_.emptyObjectReturns,E=ih(),D=16|(E.hangTabs?32:0),O=_!==void 0&&E.hangsSpacesPerTextFrame,k=E.testsHyphenBeforeAtomic,A=E.zeroWidthGlueTakesLine,j=E.tabsInAppUnits,M=E.paddedOpeningFit,N=E.hardBreakItemRetreat,P=Math.max(0,n),F=P+E.lineFitEpsilon,ee=e.discretionaryHyphenContexts!==null,te=E.unfitHyphenRetreat===`reduced-width`,ne=te?l:0,I=ee&&E.unfitHyphenRetreat===`full-width-or-first`,re=E.unfitHyphenRetreat===`full-width`,L=null;for(;;){let n=t.segmentIndex,E=t.graphemeIndex,R=0,z=!1,B=n,V=E,H=-1,U=0,ie=-1,W=0,G=-1,K=0,ae=!1,oe=0,q=0,se=!0,ce=!1,le=-1,J=0,ue=0,de=!1,fe=null;if((s[n]&15)==8)t.segmentIndex=n+1,t.graphemeIndex=0,fe=d===null?0:d[n];else{decided:{let t;for(let r=n;;r++){if(r>=g){t=g;break}let i,a=0,re=s[r],L=re&15;if(L===8){t=r+1;break}let fe=!!(re&16),pe=!!(1<<L&Sg),Y=r===n?E:0,me=u!==0&&z&&!se&&!ce?u:0,he=0;u!==0&&(fe||L===7||L===5||L===9||C!==null&&C[r]!==0)&&(he=me,ce=!fe),L!==2&&L!==6&&(se=!1);let ge=L===5?_===void 0?Eg(R+he,m,h,j):Dg(e,_,r,z?R+he:d===null?0:d[r],j):o[r],_e=he+ge,ve=f===null?0:f[r];if(L===3&&Y===0){if(z){let e=l,t=!0;_!==void 0&&(ee&&r>n&&(s[r-1]&15)==9&&(ie=r,W=R),O&&G===r&&(G=r+1,K=Math.max(K,Math.min(R,P))),v!==null&&(e=v[r]),t=k||r+1===g||(s[r+1]&15)!=9||C!==null&&C[r+1]!==0),B=r+1,V=0,r+1<g&&(s[r+1]&15)!=8&&(H=r+1,U=R+e,ee&&((t?U:R)<=F||I&&ie<0)&&(ie=H,W=U))}continue}let ye=0;if(u!==0&&!fe&&!pe&&L!==7)ye=me+ge;else if(pe?L===5:ge!==0||L===7){let e=ge+(fe?u:0);e!==0&&(ye=he+e)}let be=!!(1<<L&D);if(O&&L===2&&G===r&&(be=!0),be&&(G!==r&&(K=R-q+he,ae=!1,_!==void 0&&r>n&&(s[r-1]&15)==9&&(ae=Mg(s,g,r,D),ae||(H=r,U=R-q)),oe=0),G=r+1,C!==null&&(K+=C[r],oe+=C[r])),!z&&L===6&&!A){B=r+1,V=0;continue}if(z){let e=be?K-oe:R+ye,t=e-ve>F;if(_!==void 0){let n=!1;if(w!==null&&L===9&&ge===0&&e>F){let e=G===r?K:R,t=w[r];n=e<=F||!(t>=0&&e-t>F||T[r]===1)}let i=ye<0&&R-q>F;t=(t||i)&&!(be&&ae)&&!n,O&&!t&&G===r&&L===9&&ge===0&&(G=r+1,K=Math.max(K,Math.min(R+_e,P)))}if(t){let t=R-q;if(pe&&(be||L!==5)&&(t<=F||H<0&&(L===1||L===2)||L===2&&(s[r-1]&15)==9)){ue=be?K:t,R+=_e,le=r+1,J=0;break decided}if(L===5&&!be&&H<0){le=r,J=0,ue=G===r&&r>n?K:t;break decided}let l=!!(re&32);if(L===9&&l&&G===r&&(M===`start`?K-oe/2<=F&&R-oe/2>F:M===`placed`&&K-oe+ge-ve<=F)){G=r+1,K+=ge,oe+=ge,R+=_e,B=r+1,V=0;continue}if(l&&H>=0&&(B=H,V=0),!l||H>=0){de=!0;break decided}if(p!==null&&e-p[r]<=F){R+=_e,B=r+1,V=0,q=p[r],b!==null&&b[r]!==0&&(R-=q,q=0);continue}if(L===9&&N!==`item`&&r+1<g&&(s[r+1]&15)==8){let e=s[r-1],t=e&15,i=t===4?c[r-1]:null;if(i!==null){let e=i.length,t=i[0],a=N!==`fit`||R<=F?1:t>0?Math.min(e,Math.ceil((R-F)/t)):e,o=C!==null&&C[n]!==0?n+1:n;if(r-1>o||e-a>E){le=r-1,J=e-a,ue=K;break decided}}let a=t===0||t===7?c[r-1]:null,l=e&16?u:0;if(a!==null&&(r-1>n||a.length-1>E)){le=r-1,J=a.length-1,ue=R-a[J]-l;break decided}if(a===null&&(t===0||t===7)&&r-1>n){le=r-1,J=0,ue=R-o[r-1]-l;break decided}if(i!==null||t!==4&&t!==5){R+=_e,B=r+1,V=0,q=0;continue}}if(c[r]===null){de=!0;break decided}i=0,a=he}else{re&64&&!pe&&H!==r&&(H=r,U=R),ee&&!pe&&!(re&32)&&r>n&&!Cg(s[r-1]&15)&&(!te||R+(y===null?l:y[r])<=F)&&(ie=r,W=R),B=r+1,V=0,b!==null&&e>F&&b[r]!==0?(R+=_e-ve,q=0):(R+=_e,ye!==0&&!be&&(q=e>F&&L!==9?ve:0)),pe&&(r+1===g||!(s[r+1]&32))&&(H=r+1,U=be?K:L===5?R:R-_e-q),ee&&pe&&U+(y===null||H<0?ne:y[H])<=F&&(ie=H,W=U);continue}}else if(Y>0)i=Y;else{let e=d===null?0:d[r],t=p!==null&&ye+e-p[r]<=F?p[r]:ve;if(ye+e-t>F&&c[r]!==null&&!be)i=0;else{z=!0,B=r+1,V=0,R=ge+e,be&&(K+=e),q=ye+e>F&&L!==9?t:0,b!==null&&q!==0&&b[r]!==0&&(R-=q,q=0),pe&&(r+1===g||!(s[r+1]&32))&&(H=r+1,U=be?K:L===5?R:R-_e),ee&&pe&&U+(y===null||H<0?ne:y[H])<=F&&(ie=H,W=U);continue}}let xe=c[r],Se=xe.length;for(let t=i;t<Se;t++){let n=xe[t];if(z){let e=R+(n+(t>i?u:a));if(e+u>F)break decided;R=e,B=r,V=t+1}else{z=!0,B=r,V=t+1;let i=e.breakableLineStartExtras?.[r]??null;R=i===null?n:n+i[t],(t>0?x!==null:S!==null)&&(R+=t>0?x[r]:S[r])}}z&&B===r&&V===Se&&(B=r+1,V=0)}le=t,J=0,H===t&&V===0?(ue=U,de=!0):ue=R-q}if(z){de&&ie>=0&&H===B&&V===0&&Ng(e,n,B,U,F,re)?(le=ie,J=0,ue=W):le<0&&(le=B,J=V,ue=H===B&&V===0?U:_!==void 0&&G===B&&V===0?K:R-q),t.segmentIndex=le,t.graphemeIndex=J;let r=J===0&&G>=0&&(le===G||le===G+1)&&(G===g||(s[G]&15)==8),i=(r?R-q:ue)+Og(e,C,D,n,E,le,J);fe=r?Math.max(K,Math.min(i,P)):i}}if(fe===null||(L=fe,i!==null&&(i.lineCount++,fe>i.maxLineWidth&&(i.maxLineWidth=fe)),r?.(fe,n,E,t.segmentIndex,t.graphemeIndex),a||!Ag(e,t)))break}return L}function Fg(e,t,n){let{widths:r,segmentFlags:i,breakableFitAdvances:a,lineStartExtras:o,lineEndTrims:s,overflowLineEndTrims:c}=e,l=Math.max(0,n)+ih().lineFitEpsilon,u=t.segmentIndex,d=a[u],f=o===null?r[u]:r[u]+o[u],p=s===null?0:s[u],m=c!==null&&f-c[u]<=l?c[u]:p,h,g=0;if(t.graphemeIndex>0||f-m>l&&d!==null){let n=d,r=e.breakableLineStartExtras?.[u]??null,i=t.graphemeIndex+1;h=r===null?n[i-1]:n[i-1]+r[i-1];let a=e.items;for(a!==void 0&&(i>1?a.insideExtras!==null:a.fillExtras!==null)&&(h+=i>1?a.insideExtras[u]:a.fillExtras[u]);i<n.length;i++){if(h+n[i]>l)return t.graphemeIndex=i,h;h+=n[i]}}else h=f,f>l&&(g=m);for(let e=u+1;e<r.length;e++){let n=r[e],a=s===null?0:s[e];if(h+n-a>l){let n=Cg(i[e]&15);return t.segmentIndex=n?e+1:e,t.graphemeIndex=0,!n&&Cg(i[e-1]&15)?h-r[e-1]:h-g}h+=n,g=h>l?a:0}return t.segmentIndex=r.length,t.graphemeIndex=0,h-g}function Ig(e,t,n,r){let i=r?.wordBreak??`normal`,a=ih(),o=Mm(r?.letterSpacing,a),s=Am(a),c=om(e,a,r?.whiteSpace,i,s);return yg(c,0,c.flags.length,t,n,o,a,s,!0,null)}function Lg(e,t,n){return Ig(e,t,!1,n)}function Rg(e){return e}function zg(e,t){let n={lineCount:0,maxLineWidth:0};return jg(Rg(e),kg(t),void 0,n),n}function Bg(e){return zg(e,1/0).maxLineWidth}function Vg(){Nd(),Dh()}var Hg={1:24,2:40},Ug=8,Wg=6;function Gg(e,t,n){let r=t/n-e.lead-(e.actions?e.actions+Ug:0),i=e.title+e.tail,a=i<=r?1:2;return{lines:a,showId:i+Wg+e.id<=r*a}}var Kg=(e,t,n,r,i)=>`/artboard/${e}${Ce(i,{with:t[0].document,...n?{group:r}:{board:r}})}`;function qg({artboard:e,entries:t,group:n,id:r}){let{t:i}=Un();return(0,Q.jsxs)(`button`,{"data-backlink-badge":r,title:i(`split.openDocument`),type:`button`,onPointerDown:e=>e.stopPropagation(),onClick:i=>{i.stopPropagation(),Or()?Dr({kind:`open-doc`,document:t[0].document,key:r}):location.assign(Kg(e,t,n,r,location.search))},className:`x3nfvp2 x6s0dn4 x1ed6fcf xmix8c7 xdzw4kq x1xijbu4 xmkeg23 x1y0btm7 x12xov25 xhpnuu7 x1rozbrz x1bo0w0s xqfszdh x1s31vzs xo5v014 xuxw1ft x67bb7w x1ypdohk x1uyjgin xytdrwj`,children:[(0,Q.jsx)(dn,{size:10}),i(`split.references`,{count:t.length})]})}ur.success,ur.danger;var Jg=(e,t)=>new Date(e).toLocaleTimeString(t,{hour:`2-digit`,minute:`2-digit`,hour12:!1});function Yg({verdict:e,evidenceAt:t,hideEvidenceNote:n,canJudge:r,onPass:i,onReject:a,onUndo:o}){let{t:s,i18n:c}=Un();return e.state===`pass`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xwzsjwp`,children:[(0,Q.jsx)(_t,{size:13}),s(`verdict.passed`)]}),e.at&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:Jg(e.at,c.language)}),e.by===`agent`&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.byAgent`)}),r&&(0,Q.jsx)(`button`,{type:`button`,onClick:o,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1ypdohk xo1l8bm xfifm61 xddlp02`,children:s(`verdict.undo`)})]}):e.state===`reject`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xh4xifv`,children:[(0,Q.jsx)(E,{size:13}),s(`verdict.rejected`)]}),e.by===`agent`&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.byAgent`)}),(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.waitingFix`,{count:e.rejectThreads})})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xddlp02`,children:[(0,Q.jsx)(`span`,{className:`x1xc55vz xdk7pt x9f619 x16rqkct xvndefy x1y0btm7 x1r7ld26`}),s(`verdict.pending`)]}),e.evidenceUpdated&&t>0&&!n&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.evidenceUpdatedAt`,{time:Jg(t,c.language)})}),r&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`x1i1rx1s x1kpxq89 xjgtzcg xcn5yip`}),(0,Q.jsxs)(`button`,{type:`button`,onClick:i,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1qlqyl8 xk50ysn x1ypdohk x1bo0w0s x1liw68r`,children:[(0,Q.jsx)(_t,{size:13}),s(`verdict.pass`)]}),(0,Q.jsxs)(`button`,{type:`button`,onClick:a,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1qlqyl8 xk50ysn x1ypdohk x1bo0w0s x1m4k60b`,children:[(0,Q.jsx)(E,{size:13}),s(`verdict.reject`)]})]})]})}function Xg({board:e,checked:t,disabled:n,onChoose:r,radioRef:i}){let{t:a}=Un();return(0,Q.jsx)(`button`,{"aria-checked":t,"aria-label":a(`choices.chooseBoard`,{id:e}),"data-choice-radio":e,disabled:n,ref:i,role:`radio`,type:`button`,onClick:()=>r(e),...{0:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct xvndefy x1y0btm7 xct3ywq x1dd4nyv x1rozbrz x1ypdohk`},2:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct x1y0btm7 x1rozbrz x1ypdohk xa5x8dy x1lvdfi3`},1:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct xvndefy x1y0btm7 xct3ywq x1dd4nyv x1rozbrz xt0e3qv x197sbye`},3:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct x1y0btm7 x1rozbrz xa5x8dy x1lvdfi3 xt0e3qv x197sbye`}}[!!t<<1|!!n]})}var Zg=20,Qg=16;function $g(e,t){let n=document.createElement(`a`);n.href=e,n.download=t,n.click()}function e_(e,t){let n=getComputedStyle(e);return Bg(Lg(t,`${n.fontWeight} ${n.fontSize} ${n.fontFamily}`,{letterSpacing:Number.parseFloat(n.letterSpacing)||0}))}function t_({active:e,choice:t,onChoose:r,board:i,contentBase:a,fontsVersion:o,id:s,interactive:c,modified:l,playing:u,ready:d,rect:f,scale:p,onExpand:m,onReplay:h,onTogglePlay:g,onToggleParameters:_,onLines:v}){let y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),[w,T]=(0,Z.useState)({title:0,id:0,actions:0,lead:0,tail:0}),E=f.width/p,D=E<160,O=E<90,k=l!==void 0&&E>=60,A=Wn(i),j=i.title??s,M=A?`${s} · ${i.file.split(`/`).pop()}`:s;(0,Z.useLayoutEffect)(()=>{let e=y.current,n=b.current,r=S.current;if(!e||!n||!r)return;let i=e_(e,j)+(A?18:0),a=e_(n,M),o=x.current,s=o?e_(o,o.textContent??``)+Qg:0,c=t?Zg:0,l=()=>{let e={title:i,id:a,actions:r.offsetWidth,lead:c,tail:s};T(t=>t.title===e.title&&t.id===e.id&&t.actions===e.actions&&t.lead===e.lead&&t.tail===e.tail?t:e)};if(l(),typeof ResizeObserver!=`function`)return;let u=new ResizeObserver(l);return u.observe(r),()=>u.disconnect()},[j,M,A,o,D,O,k,d,c,u,t?.recommended,!!t]);let{lines:N,showId:P}=Gg(w,f.width,p);(0,Z.useLayoutEffect)(()=>(v(s,N),()=>v(s,1)),[s,N,v]);let F=()=>$g(`${a}${i.file}`,i.file.split(`/`).pop()??`${s}.html`);return(0,Q.jsxs)(`div`,{"data-board-label":s,"data-chrome":`board-label`,className:`x10l6tqk x78zum5 x1cy8zhl x1hj3fc7 x1120s5i x1bo0w0s x67bb7w`,style:{left:f.left,top:f.top,width:E,height:Hg[N],transform:`scale(${p}) translateY(-100%)`},children:[t&&r&&(0,Q.jsx)(Xg,{board:s,checked:t.chosen,disabled:t.disabled,onChoose:r}),(0,Q.jsxs)(`span`,{className:`x98rzlu x104kibb x1ua5tub xeuugli xb3r6kr xyqdw3p xfifm61 x1d3mw78 xqfszdh xj0a0fe`,style:{WebkitLineClamp:N},title:j,children:[A&&(0,Q.jsx)(`span`,{"data-board-type":i.type,className:`x3nfvp2 x2fvf9 xmziwt1 xddlp02`,children:i.type===`video`?(0,Q.jsx)(Ni,{"aria-hidden":!0,size:12}):(0,Q.jsx)(Xt,{"aria-hidden":!0,size:12})}),(0,Q.jsx)(`span`,{ref:y,children:j}),t?.recommended&&(0,Q.jsx)(`span`,{ref:x,className:`x1rg5ohu xdzw4kq xfn1xvj xmkeg23 x1y0btm7 xjuql9v x12oqio5 x12ogdgn x1k6wstc x1jlp1m6 xiygsch`,children:n(`choices.recommended`)}),(0,Q.jsx)(`span`,{hidden:!P,ref:b,className:`xdzw4kq x1fao0z8 x1j6dyjg x1bo0w0s`,children:M})]}),(0,Q.jsxs)(`div`,{ref:S,className:`x78zum5 x6s0dn4 x195vfkc x2lah0s x17rw0jw x13fj5qh`,children:[d&&!D&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(ct,{"aria-label":n(`chrome.expandBoard`,{id:s}),icon:Dn,size:{blockSize:22,size:13},title:n(`chrome.expand`),onClick:()=>m(s)}),(0,Q.jsx)(ct,{"aria-label":n(`chrome.downloadBoard`,{id:s}),icon:qt,size:{blockSize:22,size:13},title:n(`chrome.download`),onClick:F})]}),d&&k&&(0,Q.jsx)(`button`,{"aria-expanded":e,type:`button`,"aria-label":n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),title:n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),onClick:e=>_?.(s,e.currentTarget),...{0:{className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j xjbqb8w x1bo0w0s x1ypdohk x1717udv`},1:{className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j x1ypdohk x1717udv x1ghaxfu x12jjvdw x12ogdgn`}}[!!l|0],children:(0,Q.jsx)(Gt,{"aria-hidden":!0,size:13})}),c&&u&&!D&&(0,Q.jsx)(ct,{"aria-label":n(`chrome.replayBoard`,{id:s}),icon:an,size:{blockSize:22,size:13},title:n(`chrome.replay`),onClick:()=>h(s)}),c&&!O&&(0,Q.jsx)(ct,{active:u,"aria-label":n(u?`chrome.stopBoard`:`chrome.playBoard`,{id:s}),"aria-pressed":u,fill:u?`currentColor`:`none`,icon:zi,size:{blockSize:22,size:13},title:n(u?`chrome.playing`:`chrome.play`),onClick:()=>g(s),...{0:{},1:{className:`x1ghaxfu x12jjvdw x12ogdgn`}}[!!u|0]}),d&&D&&(0,Q.jsx)(Vn,{items:[{key:`expand`,icon:Dn,label:n(`chrome.expand`),onClick:()=>m(s)},{key:`download`,icon:qt,label:n(`chrome.download`),onClick:F},l!==void 0&&!k?{key:`parameters`,icon:Gt,label:n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),onClick:()=>{C.current&&_?.(s,C.current)}}:null,c&&O?{key:`play`,icon:zi,label:n(u?`chrome.playing`:`chrome.play`),onClick:()=>g(s)}:null,c&&u?{key:`replay`,icon:an,label:n(`chrome.replay`),onClick:()=>h(s)}:null],children:(0,Q.jsx)(`button`,{"aria-label":n(`chrome.moreBoard`,{id:s}),ref:C,type:`button`,className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j xjbqb8w x1bo0w0s x1ypdohk x1717udv`,children:(0,Q.jsx)(on,{"aria-hidden":!0,size:13})})})]})]})}var n_=(e,t)=>e===null?null:e/t;function r_(){let[e,t]=(0,Z.useState)(0);return(0,Z.useEffect)(()=>{if(!document.fonts)return;let e=!0,n=()=>{e&&(Vg(),t(e=>e+1))};return document.fonts.ready.then(n),document.fonts.addEventListener(`loadingdone`,n),()=>{e=!1,document.fonts.removeEventListener(`loadingdone`,n)}},[]),e}function i_({view:e,artboard:t,backlinks:n,boards:r,groups:i,allBoards:a,contentBase:o,versions:s,pending:c,playing:l,onExpand:u,onTogglePlay:d,onReplay:f,parameters:p,activeParameters:m,onToggleParameters:h,updates:g,verdicts:_,choices:v,overlayRef:y}){let b=r_(),[x,S]=(0,Z.useState)(()=>new Set),C=(0,Z.useCallback)((e,t)=>{S(n=>{let r=t===2;if(n.has(e)===r)return n;let i=new Set(n);return r?i.add(e):i.delete(e),i})},[]),w=n_(ar(lr,e.k),12);return(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t x47corl xb3r6kr`,children:(0,Q.jsxs)(`div`,{ref:y,className:`x10l6tqk x10a8y8t`,children:[i.map(([r,i])=>{let o=i.boards.map(e=>a[e]).filter(e=>!!e);if(o.length===0)return null;let s=Math.min(...o.map(e=>e.x)),c=Math.min(...o.map(e=>e.y)),l=w!==null&&i.boards.some(e=>x.has(e))?(Hg[2]-Hg[1])*w:0,u=tr({minX:s,maxX:Math.max(...o.map(e=>e.x+e.w))},e.k,l);if(!u)return null;let d=_?.states[r];return(0,Q.jsxs)(`div`,{"data-chrome":d?`group-label`:void 0,"data-group-label":r,...{0:{className:`x10l6tqk x78zum5 x6s0dn4 x17d4w8g x1hj3fc7 x1s688f xo2rkog xuxw1ft xb3r6kr`},1:{className:`x10l6tqk x78zum5 x6s0dn4 x17d4w8g x1hj3fc7 x1s688f xo2rkog xuxw1ft xb3r6kr x67bb7w`}}[!!d|0],style:{left:e.x+s*e.k,top:e.y+c*e.k-l,maxWidth:u.maxWidth,fontSize:13,transform:`scale(${u.scale}) translateY(calc(-100% - 26px))`},children:[(0,Q.jsx)(`span`,{className:`xm9j1uf x12oqio5 x19ckca5 xs0jrwl x1fao0z8 x1j6dyjg xk50ysn xd4r4e8 x2lah0s`,children:r}),i.title&&(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xlyipyv`,children:i.title}),d&&_&&(0,Q.jsx)(Yg,{canJudge:_.canJudge,evidenceAt:_.evidenceAt(r),hideEvidenceNote:!!g?.[r],verdict:d,onPass:()=>_.pass(r),onReject:()=>_.startReject(r),onUndo:()=>_.undoPass(r)}),g?.[r]&&(0,Q.jsx)(Nn,{update:g[r]}),t&&n?.[r]&&(0,Q.jsx)(qg,{group:!0,artboard:t,entries:n[r],id:r})]},r)}),v&&r.map(([t,n])=>v.chosenBoards.has(t)?(0,Q.jsx)(`div`,{"data-chosen-board":t,className:`x10l6tqk x9f619 x9r2w2z x1y0btm7 x1lvdfi3 x1cum3z5 x47corl`,style:{left:e.x+n.x*e.k,top:e.y+n.y*e.k,width:n.w*e.k,height:n.h*e.k}},`chosen-${t}`):null),t&&w!==null&&r.map(([r,i])=>n?.[r]?(0,Q.jsx)(`div`,{className:`x10l6tqk x90hvkt x67bb7w`,style:{left:e.x+(i.x+i.w)*e.k,top:e.y+(i.y+i.h)*e.k},children:(0,Q.jsx)(qg,{artboard:t,entries:n[r],group:!1,id:r})},`backlinks-${r}`):null),w!==null&&r.map(([t,n])=>{let r=Yn(n,e);if(!r)return null;let i=Pn(s,n.file)&&!c.has(t);return(0,Q.jsx)(t_,{active:m===t,board:n,choice:v?.boardChoice(t),contentBase:o,fontsVersion:b,id:t,interactive:i&&kn(n,s),modified:p?.[t],playing:l.has(t),ready:i,rect:r,scale:w,onChoose:v?.choose,onExpand:u,onLines:C,onReplay:f,onToggleParameters:h,onTogglePlay:d},t)})]})})}var a_=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;function o_({commentTool:e,hasVerify:t,inspectorOpen:n,setMode:r}){let[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=e?`comments`:n?`inspector`:(i||o)&&t?`verify`:null,l=e=>{a(e===`verify`),r(e)},u=()=>{a(!1),r(null)};return{tab:c,pinned:o,show:l,close:u,toggle:e=>c===e&&!o?u():l(e),togglePin:()=>{c===`verify`&&a(!0),s(e=>!e)}}}function s_(e){let[t,n]=(0,Z.useState)(e),[r,i]=(0,Z.useState)(!1);return e&&(e!==t||r)&&(n(e),i(!1)),!e&&t&&!r&&(a_()?n(null):i(!0)),(0,Z.useEffect)(()=>{if(!r)return;let e=setTimeout(()=>{i(!1),n(null)},160);return()=>clearTimeout(e)},[r]),{shown:e??t,closing:!e&&r}}var c_={top:64,right:414,bottom:24,left:24};function l_({available:e,counts:t,panes:n,pinned:r,tab:i,onPin:a,onTab:o}){let{t:s}=Un(),{shown:c,closing:l}=s_(i),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),[f,p]=(0,Z.useState)(null),m=Math.max(120,e-62-14);if((0,Z.useLayoutEffect)(()=>{let e=d.current;if(!e){p(null);return}let t=()=>p((u.current?.offsetHeight??0)+e.offsetHeight+2);if(t(),typeof ResizeObserver!=`function`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[c]),!c)return null;let h=r?m:f===null?void 0:Math.min(f,m),g=[...t.verify===void 0?[]:[[`verify`,(0,Q.jsxs)(Z.Fragment,{children:[s(`panel.verify`),(0,Q.jsx)(`span`,{className:`xdwrcjd xddlp02 xss6m8b`,children:t.verify})]},`verify`)]],[`comments`,(0,Q.jsxs)(Z.Fragment,{children:[s(`panel.comments`),(0,Q.jsx)(`span`,{className:`xdwrcjd xddlp02 xss6m8b`,children:t.comments})]},`comments`)],[`inspector`,s(`panel.inspector`)]];return(0,Q.jsxs)(`section`,{"aria-label":s(`panel.label`),"data-chrome":``,"data-closing":l||void 0,"data-pinned":r,"data-side-panel":``,...{0:{className:`x10l6tqk x1355qak x78zum5 xdt5ytf xb3r6kr x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 xo2rkog x4z9k3i x12t5ck7 xqa01rw x1shwlz2 x1debuo4 xua3uq3 x1mbqufl xpkt1hu x1aquc0h x4wkmsb`},1:{className:`x10l6tqk x1355qak x78zum5 xdt5ytf xb3r6kr x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 xo2rkog x4z9k3i x12t5ck7 x1shwlz2 x1debuo4 xua3uq3 x1mbqufl xpkt1hu x1aquc0h x4wkmsb x1su791e x10e4vud x47corl`}}[!!l|0],style:{top:62,right:10,width:380,height:h,maxHeight:m},children:[(0,Q.jsxs)(`div`,{ref:u,className:`x78zum5 x6s0dn4 x17d4w8g x2lah0s x1vvogim x1awh872 xso031l x1q0q8m5 xtrfj0v`,children:[(0,Q.jsx)(`div`,{"aria-label":s(`panel.label`),role:`tablist`,className:`x78zum5 x195vfkc x98rzlu`,children:g.map(([e,t])=>(0,Q.jsx)(`button`,{"aria-selected":c===e,role:`tab`,type:`button`,onClick:()=>o(e),...{0:{className:`xifx94n x1q4txso xc342km x1kogg8i xjbqb8w xj0l527 x1bo0w0s xln7xf2 x1ypdohk`},1:{className:`xifx94n x1q4txso xc342km x1kogg8i xln7xf2 x1ypdohk x15dg6x3 xo2rkog xk50ysn`}}[c===e|0],children:t},e))}),(0,Q.jsx)(`button`,{"aria-label":s(r?`panel.unpin`:`panel.pin`),"aria-pressed":r,title:s(r?`panel.unpin`:`panel.pin`),type:`button`,onClick:a,...{0:{className:`xrvj5dj x1ku5rj1 xgd8bvy x1fgtraw x1717udv xc342km x1kogg8i xjbqb8w xj0l527 x1bo0w0s x1ypdohk`},1:{className:`xrvj5dj x1ku5rj1 xgd8bvy x1fgtraw x1717udv xc342km x1kogg8i x1ypdohk x1oaqgua xotqas5`}}[!!r|0],children:(0,Q.jsx)(Li,{size:15,...{0:{className:`x11xpdln x13dflua`},1:{className:`x11xpdln x13dflua xnu3goq`}}[!!r|0]})})]}),(0,Q.jsx)(`div`,{className:`x98rzlu x2lwn1j xysyzu8 x78zum5 xdt5ytf`,children:(0,Q.jsx)(`div`,{ref:d,role:`tabpanel`,...{0:{className:`x78zum5 xdt5ytf x2lah0s xnjr9wf x1shwlz2 x1debuo4 x1aquc0h`},1:{className:`x78zum5 xdt5ytf x2lah0s xnjr9wf x1shwlz2 x1debuo4 x1aquc0h x98rzlu x2lwn1j`}}[!!r|0],children:n[c]},c)})]})}var u_={blockSize:34,borderRadius:8,size:18,strokeWidth:1.75};function d_({pages:e,page:t,onPageChange:n,tool:r,onToolChange:i,commenting:a=!1}){let{t:o}=Un(),s=e.find(e=>e.id===t);return(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x1eu8d0j x78zum5 x6s0dn4 x195vfkc xn3w4p2 xfn1xvj x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 x4z9k3i xo2rkog x1n327nk x12lbrt0`,children:[(0,Q.jsx)(Vn,{placement:`bottomLeft`,items:e.map(e=>({key:e.id,label:e.name,icon:e.id===t?_t:void 0,onClick:()=>n(e.id)})),children:(0,Q.jsxs)(`button`,{"aria-label":o(`chrome.switchPage`),type:`button`,className:`x78zum5 x6s0dn4 x167g77z x90ne7k xe2zdcy xf159sx xc342km xur7f20 xjbqb8w xj0l527 xo2rkog x1ypdohk xuxw1ft`,children:[(0,Q.jsx)(ln,{size:16,className:`xddlp02`}),(0,Q.jsx)(`span`,{className:`xif65rj x1s688f x1racy4e xb3r6kr xlyipyv`,children:s?.name??o(`chrome.noPages`)}),(0,Q.jsx)(Pt,{size:14,className:`xddlp02`})]})}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),(0,Q.jsx)(ct,{active:r===`select`,"aria-label":o(`chrome.select`),icon:Nt,size:u_,title:o(`chrome.selectTitle`),onClick:()=>i(`select`)}),(0,Q.jsx)(ct,{active:r===`hand`,"aria-label":o(`chrome.hand`),icon:kt,size:u_,title:o(`chrome.handTitle`),onClick:()=>i(`hand`)}),a?(0,Q.jsx)(ct,{active:r===`comment`,"aria-label":o(`chrome.comment`),icon:At,size:u_,title:o(`chrome.commentTitle`),onClick:()=>i(`comment`)}):null]})}function f_({actions:e,live:t,warnings:n,zoom:r,onZoomIn:i,onZoomOut:a,onFit:o,onActualSize:s,inspectorOpen:c,onToggleInspector:l,verify:u,verifyOpen:d,onToggleVerify:f}){let{t:p}=Un(),m=e=>(0,Q.jsx)(`span`,{className:`xddlp02 x1fao0z8 xfifm61`,children:e});return(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x1eu8d0j x78zum5 x6s0dn4 x195vfkc xn3w4p2 xfn1xvj x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 x4z9k3i xo2rkog x1n327nk x131sewu`,children:[u&&u.total>0&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`button`,{"aria-pressed":!!d,title:p(`panel.verify`),type:`button`,onClick:f,...{0:{className:`x78zum5 x6s0dn4 x17d4w8g x1gnnpzl x1xijbu4 xc342km xjbqb8w x1bo0w0s xqfszdh x4z9k3i xk50ysn x1kogg8i x1ypdohk`},1:{className:`x78zum5 x6s0dn4 x17d4w8g x1gnnpzl x1xijbu4 xc342km xqfszdh x4z9k3i xk50ysn x1kogg8i x1ypdohk x15dg6x3 xo2rkog`}}[!!d|0],children:[(0,Q.jsx)(_t,{size:13,className:`xwzsjwp`}),p(`verdict.progress`,{passed:u.passed,total:u.total})]}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`})]}),t===void 0?null:(0,Q.jsx)(`span`,{className:`x78zum5 x6s0dn4 xl56j7k x23j0i4 x1gnnpzl`,title:p(t?`chrome.live`:`chrome.reconnecting`),children:(0,Q.jsx)(`span`,{...{0:{className:`xci0xqf x1hagigm x16rqkct x1alw6we`},1:{className:`xci0xqf x1hagigm x16rqkct xux1nz0 x1s780dp xaatb59 x198oqkg`}}[!!t|0]})}),n.length>0&&(0,Q.jsx)(Ht,{placement:`bottomRight`,content:(0,Q.jsx)(`ul`,{className:`x1ghz6dp x12ulsxz xwn43p0 x1lr1uin x4z9k3i x1dbl2gt`,children:n.map(e=>(0,Q.jsx)(`li`,{children:e},e))}),children:(0,Q.jsx)(`button`,{type:`button`,className:`xd7y6wv xdqyycr xc342km x1kogg8i xqdcvd7 x7zghnd xk50ysn x1ypdohk`,children:p(`chrome.warnings`,{count:n.length})})}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),(0,Q.jsx)(ct,{active:c,"aria-label":p(`chrome.toggleInspector`),"aria-pressed":c,icon:Fi,size:`small`,title:p(`chrome.inspector`),onClick:l}),(0,Q.jsx)(Vn,{placement:`bottomRight`,items:[{key:`in`,label:p(`chrome.zoomIn`),extra:m(`⌘ +`),onClick:i},{key:`out`,label:p(`chrome.zoomOut`),extra:m(`⌘ −`),onClick:a},{key:`fit`,label:p(`chrome.zoomFit`),extra:m(`⇧ 1`),onClick:o},{key:`actual`,label:p(`chrome.zoomActual`),extra:m(`⇧ 0`),onClick:s}],children:(0,Q.jsxs)(`button`,{"aria-label":p(`chrome.zoom`),type:`button`,className:`x78zum5 x6s0dn4 x1jnr06f x1gnnpzl xdqyycr xc342km x1kogg8i xjbqb8w xj0l527 x1ypdohk xuxw1ft`,children:[(0,Q.jsxs)(`span`,{className:`xss6m8b x15hfatp x1hr2gdg`,children:[Math.round(r*100),`%`]}),(0,Q.jsx)(vt,{size:14,className:`xddlp02`})]})}),e?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),e]}):null]})}function p_({canvas:e,page:t,changePage:n,viewNow:r,place:i}){let a=(0,Z.useEffectEvent)(()=>t?{kind:`artboard`,page:t,...r()}:null),o=(0,Z.useEffectEvent)((r,a)=>e?.pages.some(e=>e.id===r)?(r!==t&&n(r,!1),i(a),!0):!1);(0,Z.useEffect)(()=>Ue({read:a,apply:e=>e.kind===`artboard`&&o(e.page,{x:e.x,y:e.y,k:e.k})}),[])}function m_({canvas:e,layout:t,fitPage:n,startAtFocus:r=!1}){let[i,a]=(0,Z.useState)(null),o=(0,Z.useRef)(null),s=(0,Z.useRef)(!1),[c,l]=Er(),u=(0,Z.useRef)(c),d=(0,Z.useCallback)((e,t=!0,n=!0)=>{a(e),o.current=n?e:null,u.current=e,l(e,t)},[l]);return(0,Z.useEffect)(()=>{if(!e||!t)return;let n=e.pages[0]?.id??null,a=t=>t&&e.pages.some(e=>e.id===t)?t:null;if(s.current)c===u.current?i&&e.pages.some(e=>e.id===i)||d(n):d(a(c)??n);else{s.current=!0;let i=r&&e.focus?Xn(e,t,e.focus.target)?.page:void 0,o=a(c)??(c===null?a(i)??a(e.activePage)??n:n);d(o)}},[e,t,i,r,c,d]),(0,Z.useEffect)(()=>{o.current!==null&&o.current===i&&n(i)&&(o.current=null)}),{page:i,changePage:(t,n=!0)=>{e?.pages.some(e=>e.id===t)&&d(t,!1,n)}}}function h_({comments:e,comment:t,page:n,boards:r,inspector:i}){let[a,o]=(0,Z.useState)(null),[s,c]=(0,Z.useState)(null),l=(0,Z.useRef)(null),u=(0,Z.useMemo)(()=>e?.comments.threads??[],[e]),d=(0,Z.useMemo)(()=>new Set(e?.stale??[]),[e]),f=(0,Z.useMemo)(()=>Ou(u),[u]);(0,Z.useEffect)(()=>{o(null),c(null)},[n]);let p=(0,Z.useCallback)((e,t)=>t===void 0?void 0:i.frames[e]?.nodes.find(e=>e.id===t)?.path,[i.frames]),m=(0,Z.useCallback)(e=>{c(null),o(e)},[]);return{threads:u,stale:d,numbers:f,draft:a,openId:s,setOpenId:c,onFrameDrag:(0,Z.useCallback)((e,t)=>{if(!n)return;if(t.phase===`start`){l.current={boardId:e,id:t.id,x:t.x,y:t.y};return}let r=l.current;if(l.current=null,t.phase!==`cancel`||!r||r.boardId!==e)return;let a=i.hover,o=a&&a.boardId===e&&a.id===r.id?a.rect:void 0,s=p(e,r.id);m(bu(n,e,r,o&&s?{rect:o,path:s}:void 0))},[n,i.hover,p,m]),onCanvasClick:(0,Z.useCallback)(e=>{if(!n)return;let t=Object.entries(r).find(([,t])=>t.page===n&&e.x>=t.x&&e.x<=t.x+t.w&&e.y>=t.y&&e.y<=t.y+t.h);m(t?bu(n,t[0],{x:e.x-t[1].x,y:e.y-t[1].y}):bu(n,null,e))},[n,r,m]),commentSelection:(0,Z.useCallback)(()=>{if(!n)return!1;let e=xu(n,i.selectedTargets.map(e=>({boardId:e.boardId,rect:e.rect,path:p(e.boardId,e.id)})));return e?(m(e),!0):!1},[n,i.selectedTargets,p,m]),submit:(0,Z.useCallback)(async e=>{if(!a||!t)return!1;try{return await t({op:`create`,anchor:a,text:e}),o(null),!0}catch{return!1}},[a,t]),cancelDraft:()=>o(null),actions:(0,Z.useMemo)(()=>{if(!t)return;let e=e=>t(e).then(()=>!0,()=>!1);return{reply:(t,n)=>e({op:`reply`,threadId:t,text:n}),edit:(t,n,r)=>void e({op:`edit`,threadId:t,messageId:n,text:r}),remove:(t,n)=>void e({op:`delete`,threadId:t,messageId:n}),resolve:t=>void e({op:`resolve`,threadId:t}),reopen:t=>void e({op:`reopen`,threadId:t})}},[t]),close:(0,Z.useCallback)(()=>{let e=a!==null||s!==null;return o(null),c(null),e},[a,s])}}var g_=3e5,__=8e3,v_=1e4;function y_(e,t,n,r){let i=t.x+e.x*t.k,a=t.y+e.y*t.k,o=i+e.w*t.k,s=a+e.h*t.k;return o>-n.width*r&&i<n.width*(1+r)&&s>-n.height*r&&a<n.height*(1+r)}function b_({now:e=()=>performance.now(),idleMs:t=g_,readyTimeoutMs:n=__,captureTimeoutMs:r=v_}={}){let i=new Map,a=(e,i,a,o,s,c)=>{switch(e.phase){case`mounted`:!a&&s-e.lastActive>=t&&e.uncapturableVersion!==i.version&&(e.phase=`capturing`,e.captureStartedAt=s,e.capturingVersion=i.version,c.push(i.id));return;case`capturing`:a?e.phase=`mounted`:s-e.captureStartedAt>=r&&(e.uncapturableVersion=e.capturingVersion,e.phase=`mounted`);return;case`unloaded`:(a||o)&&(e.phase=`restoring`,e.restoreStartedAt=s,e.lastActive=s);return;case`restoring`:s-e.restoreStartedAt>=n&&(e.phase=`mounted`,e.lastActive=s)}},o=(e,i)=>e.phase===`capturing`?e.captureStartedAt+r:e.phase===`restoring`?e.restoreStartedAt+n:e.phase===`mounted`&&!i&&e.uncapturableVersion!==e.version?e.lastActive+t:null;return{update({boards:t,view:n,viewport:r,active:s,gesturing:c}){let l=e(),u=new Set(t.map(e=>e.id));for(let e of i.keys())u.has(e)||i.delete(e);let d=[],f=new Map,p=new Set,m=null;for(let e of t){let t=i.get(e.id);t||(t={phase:`mounted`,active:!1,lastActive:l,version:e.version,captureStartedAt:0,capturingVersion:e.version,restoreStartedAt:0,uncapturableVersion:null},i.set(e.id,t));let u=t.version!==e.version;t.version=e.version;let h=s.has(e.id)||y_(e,n,r,0);(h||t.active||u&&t.phase!==`unloaded`)&&(t.lastActive=l),t.active=h,c||a(t,e,h,y_(e,n,r,1),l,d),f.set(e.id,t.phase),t.uncapturableVersion===e.version&&p.add(e.id);let g=c?null:o(t,h);g!==null&&(m===null||g<m)&&(m=g)}return{phases:f,capture:d,uncapturable:p,wakeAt:m}},touch(t){let n=i.get(t);n&&(n.lastActive=e())},captured(e,{version:t,ok:n}){let r=i.get(e);r&&r.phase===`capturing`&&t===r.capturingVersion&&(n?r.phase=t===r.version?`unloaded`:`mounted`:(r.uncapturableVersion=t,r.phase=`mounted`))},ready(t){let n=i.get(t);n?.phase===`restoring`&&(n.phase=`mounted`,n.lastActive=e())}}}var x_=2,S_={phases:new Map,capture:[],uncapturable:new Set,wakeAt:null};function C_(e,t){if(e.phases.size!==t.phases.size||e.uncapturable.size!==t.uncapturable.size)return!1;for(let[n,r]of e.phases)if(t.phases.get(n)!==r)return!1;for(let n of e.uncapturable)if(!t.uncapturable.has(n))return!1;return!0}function w_({boards:e,versions:t,pending:n,view:r,viewport:i,active:a,gesturing:o}){let s=(0,Z.useMemo)(()=>b_(),[]),c=(0,Z.useRef)(new Map),l=(0,Z.useRef)(new Map),u=(0,Z.useRef)(new Map),d=(0,Z.useRef)(0),[f,p]=(0,Z.useState)(()=>new Map),m=(0,Z.useRef)(f);m.current=f;let[h,g]=(0,Z.useState)(S_),[_,v]=(0,Z.useState)(0),y=(0,Z.useCallback)(()=>v(e=>e+1),[]),b=(0,Z.useMemo)(()=>e.filter(([e,r])=>!Wn(r)&&Pn(t,r.file)&&!n.has(e)).map(([e,n])=>({id:e,x:n.x,y:n.y,w:n.w,h:n.h,version:t[n.file]??0})),[e,t,n]);(0,Z.useEffect)(()=>{let e=s.update({boards:b,view:r,viewport:i,active:a,gesturing:o});g(t=>C_(t,e)?t:e);let t=Math.min(x_,window.devicePixelRatio||1);for(let n of e.capture){let e=b.find(e=>e.id===n)?.version??0,r=++d.current;u.current.set(n,{request:r,version:e}),requestAnimationFrame(()=>requestAnimationFrame(()=>{u.current.get(n)?.request===r&&c.current.get(n)?.contentWindow?.postMessage({type:`ryugi:board:capture`,request:r,scale:t},`*`)}))}if(e.wakeAt===null)return;let n=setTimeout(y,Math.max(0,e.wakeAt-performance.now()));return()=>clearTimeout(n)},[s,b,r,i,a,o,_,y]),(0,Z.useEffect)(()=>{let e=new Set(b.map(e=>e.id)),t=[...m.current.keys()].filter(t=>!e.has(t));t.length&&p(e=>{let n=new Map(e);for(let e of t)URL.revokeObjectURL(n.get(e)),n.delete(e);return n})},[b]),(0,Z.useEffect)(()=>()=>{for(let e of m.current.values())URL.revokeObjectURL(e)},[]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.data?.type;if(typeof t!=`string`||!t.startsWith(`ryugi:board:`))return;let n=[...c.current].find(([,t])=>t.contentWindow===e.source)?.[0];if(n){if(t===`ryugi:board:ready`)s.ready(n),y();else if(t===`ryugi:board:interacted`||t===`ryugi:board:changed`)s.touch(n);else if(t===`ryugi:board:snapshot`){let t=u.current.get(n);if(!t||e.data.request!==t.request)return;u.current.delete(n);let{blob:r,width:i,height:a}=e.data,o=r instanceof Blob&&typeof i==`number`&&typeof a==`number`&&i>0&&a>0;if(o){let e=URL.createObjectURL(r);p(t=>{let r=new Map(t),i=r.get(n);return i&&URL.revokeObjectURL(i),r.set(n,e),r})}s.captured(n,{version:t.version,ok:o}),y()}}};return window.addEventListener(`message`,e),()=>window.removeEventListener(`message`,e)},[s,y]);let x=(0,Z.useCallback)(e=>{let t=l.current.get(e);return t||(t=t=>{t?c.current.set(e,t):(c.current.delete(e),u.current.delete(e))},l.current.set(e,t)),t},[]),S=(0,Z.useMemo)(()=>{let e={mounted:0,capturing:0,unloaded:0,restoring:0};for(let t of h.phases.values())e[t]++;return{...e,uncapturable:h.uncapturable.size}},[h]);return{phases:h.phases,images:f,frameRef:x,counts:S}}var T_=`allow-scripts allow-same-origin allow-forms allow-popups allow-modals allow-downloads`,E_=`allow-scripts`,D_=e=>e.includes(`:`)?`[${e}]`:e;function O_({location:e,contentBase:t,boardPort:n,boardPath:r,reachable:i}){if(/^https?:\/\//.test(t)){let n=new URL(t).origin===e.origin;return{base:t,sandbox:n?E_:T_,mode:n?`opaque`:`same-site`}}return n&&r&&i?{base:`${e.protocol}//${D_(e.hostname)}:${n}${r}`,sandbox:T_,mode:`same-site`}:{base:t,sandbox:E_,mode:`opaque`}}var k_=(e,t)=>`${e.protocol}//${D_(e.hostname)}:${t}/robots.txt`;function A_({contentBase:e,boardPort:t,boardPath:n}){let r=!/^https?:\/\//.test(e)&&!!t&&!!n,[i,a]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!r||!t)return;let e=!1;return fetch(k_(location,t),{mode:`no-cors`,cache:`no-store`}).then(()=>!e&&a({port:t,ok:!0}),()=>!e&&a({port:t,ok:!1})),()=>{e=!0}},[r,t]),r&&i?.port!==t?null:O_({location,contentBase:e,boardPort:t,boardPath:n,reachable:i?.ok??!1})}function j_(){let e=e=>!!e&&typeof e==`object`&&!Array.isArray(e),t=(e,t=512)=>typeof e==`string`&&e.length<=t,n=e=>typeof e==`number`&&Number.isFinite(e)&&Math.abs(e)<=1e9,r=e=>typeof e==`string`&&/^#[\da-f]{6}$/i.test(e);function i(e,i){if(e.type===`text`)return t(i);if(e.type===`color`)return r(i);if(e.type===`boolean`)return typeof i==`boolean`;if(e.type===`enum`)return typeof i==`string`&&!!e.options?.some(e=>e.value===i);if(!n(i)||e.min!==void 0&&i<e.min||e.max!==void 0&&i>e.max)return!1;let a=e.step===void 0?0:(i-(e.min??0))/e.step;return Math.abs(a-Math.round(a))<1e-7}function a(a){if(a===null)return{schema:null,error:null};let o=e=>({schema:null,error:e});if(!e(a)||a.version!==1||!e(a.controls))return o(`Expected version 1 and a controls object.`);let s=Object.entries(a.controls);if(s.length>32)return o(`Declare at most 32 parameters.`);let c=[],l=new Set;for(let[a,u]of s){let s=e=>o(`Parameter ${a.slice(0,64)}: ${e}`);if(!/^[A-Z][\w-]{0,63}$/i.test(a)||[`constructor`,`prototype`].includes(a))return s(`invalid key.`);if(l.has(a.toLowerCase()))return s(`duplicate case-insensitive key.`);if(l.add(a.toLowerCase()),!e(u)||![`color`,`range`,`number`,`boolean`,`enum`,`text`].includes(String(u.type)))return s(`unsupported type.`);if(u.label!==void 0&&!t(u.label,128))return s(`label must be short text.`);if(u.section!==void 0&&!t(u.section,128))return s(`section must be short text.`);let d={type:u.type,label:u.label??a,default:u.default};if(u.section!==void 0&&(d.section=u.section),d.type===`number`||d.type===`range`){for(let e of[`min`,`max`,`step`])if(u[e]!==void 0){if(!n(u[e]))return s(`${e} must be a finite number.`);d[e]=u[e]}if(d.type===`range`){if(d.min===void 0||d.max===void 0)return s(`range needs min and max.`);d.step??=1}if(d.min!==void 0&&d.max!==void 0&&d.min>=d.max||d.step!==void 0&&d.step<1e-6)return s(`invalid bounds or step.`)}if(d.type===`enum`||d.type===`color`&&u.options!==void 0){if(!Array.isArray(u.options)||!u.options.length||u.options.length>32)return s(`options must contain 1–32 choices.`);let n=[];for(let i of u.options){let a=typeof i==`string`?i:e(i)?i.value:null,o=typeof i==`string`?i:e(i)?i.label??a:null;if(!t(a)||!t(o,128)||d.type===`color`&&!r(a)||n.some(e=>e.value===a))return s(`invalid or duplicate option.`);n.push({value:a,label:o})}d.options=n}if(!i(d,d.default))return s(`default does not match its type, options or bounds.`);c.push([a,d])}return{schema:{version:1,controls:Object.fromEntries(c)},error:null}}function o(t,n){if(!e(n)||Object.keys(n).length!==Object.keys(t.controls).length)return null;let r=[];for(let[e,a]of Object.entries(t.controls)){if(!Object.hasOwn(n,e)||!i(a,n[e]))return null;r.push([e,n[e]])}return Object.fromEntries(r)}function s(e,t={},n){return Object.fromEntries(Object.entries(e.controls).map(([e,r])=>{let a=t[e];return[e,(!n||a!==n.controls[e]?.default)&&i(r,a)?a:r.default]}))}return{readTweakSchema:a,readTweakValues:o,reconcileTweakValues:s}}var{readTweakSchema:M_,readTweakValues:N_,reconcileTweakValues:P_}=j_();function F_(e){let t=(0,Z.useRef)({}),[n,r]=(0,Z.useState)(t.current),i=(0,Z.useRef)(new Map),a=(0,Z.useRef)(new Map),o=(0,Z.useCallback)((e,n)=>{t.current={...t.current,[e]:n},r(t.current)},[]),s=(0,Z.useCallback)((e,t)=>{for(let n of i.current.values())n.boardId===e&&n.session&&n.element.contentWindow?.postMessage({type:`ryugi:tweaks`,action:`set`,connection:n.connection,session:n.session,values:t},`*`)},[]);(0,Z.useEffect)(()=>{t.current={},r({});for(let e of i.current.values())e.connection=crypto.randomUUID(),e.session=null},[e]),(0,Z.useEffect)(()=>{let e=e=>{let n=e.data;if(!n||n.type!==`ryugi:tweaks:ready`||typeof n.session!=`string`||!n.session||n.session.length>128)return;let r=[...i.current.values()].find(t=>t.element.contentWindow===e.source&&t.connection===n.connection);if(!r||r.session&&r.session!==n.session||n.error!==null&&(typeof n.error!=`string`||n.error.length>512))return;r.session=n.session;let a=M_(n.schema);n.error&&(a.schema=null,a.error=n.error);let c=t.current[r.boardId],l=a.schema?P_(a.schema,c?.values,c?.schema??void 0):{};o(r.boardId,{...a,values:l}),a.schema&&s(r.boardId,l)};return window.addEventListener(`message`,e),()=>window.removeEventListener(`message`,e)},[o,s]);let c=(0,Z.useCallback)((e,t=`canvas`)=>{let n=`${t}:${e}`;return a.current.has(n)||a.current.set(n,t=>{t?i.current.get(n)?.element!==t&&i.current.set(n,{boardId:e,element:t,connection:crypto.randomUUID(),session:null}):i.current.delete(n)}),a.current.get(n)},[]),l=(0,Z.useCallback)((e,t=`canvas`)=>{let n=i.current.get(`${t}:${e}`);n&&(n.connection=crypto.randomUUID(),n.session=null,n.element.contentWindow?.postMessage({type:`ryugi:tweaks`,action:`connect`,connection:n.connection},`*`))},[]),u=(0,Z.useCallback)((e,n)=>{let r=t.current[e],i=r?.schema&&N_(r.schema,n);r&&i&&(o(e,{...r,values:i}),s(e,i))},[o,s]);return{states:n,refFor:c,loaded:l,change:(0,Z.useCallback)((e,n,r)=>{u(e,{...t.current[e]?.values,[n]:r})},[u]),reset:(0,Z.useCallback)(e=>{let n=t.current[e]?.schema;n&&u(e,P_(n))},[u])}}function I_({canvas:e,frame:t,order:n,states:r,updates:i}){let[a,o]=(0,Z.useState)(`all`),[s,c]=(0,Z.useState)(null),l=Mu(n,a,r,i),u=n=>{let r=e?.groups?.[n],i=r&&e?rr(r,e.boards):null;c(n),i&&t({minX:i.x,minY:i.y,maxX:i.x+i.w,maxY:i.y+i.h})};return{filter:a,setFilter:o,current:s,rows:l,pick:u,step:e=>{let t=Nu(l,n,s,e);t&&u(t)}}}var L_=(e,t)=>e.closed?`closed`:Yt(t,e.id).submitted?`submitted`:`open`;function R_({canvas:e,layout:t,page:n,threads:r,listening:i,comment:a}){let o=(0,Z.useMemo)(()=>e&&t?Jt(e,t):[],[e,t]),s=(0,Z.useMemo)(()=>{let t=new Map;for(let n of o)for(let r of n.groups)for(let n of e?.groups?.[r]?.boards??[])t.set(n,r);return t},[o,e]),c=(0,Z.useMemo)(()=>{let t=new Map;for(let n of o)for(let i of n.groups)t.set(i,Wt(r,i,e?.groups?.[i]?.recommend));return t},[o,r,e]),l=(0,Z.useMemo)(()=>new Map(o.map(e=>[e.id,L_(e,r)])),[o,r]),u=(0,Z.useMemo)(()=>{let e=new Set;for(let t of o)for(let n of t.groups){let r=c.get(n);r?.choice&&(!r.byRecommendation||l.get(t.id)!==`open`)&&e.add(r.choice)}return e},[o,c,l]),d=(0,Z.useMemo)(()=>{let t=o.filter(e=>e.page===n&&!e.closed).at(-1);if(!t)return null;let i=l.get(t.id);if(i!==`open`&&i!==`submitted`)return null;let a=new Set(t.groups.flatMap(t=>e?.groups?.[t]?.boards??[])),s=new Set(t.groups),u=r.filter(e=>!fu(e)&&e.messages.some(e=>!e.deleted)&&(e.anchor.board&&a.has(e.anchor.board)||e.anchor.group&&s.has(e.anchor.group))).length,d=t.groups.map(e=>[e,c.get(e)]),f=Yt(r,t.id);return{round:t,state:i,total:t.groups.length,chosen:d.filter(([,e])=>e?.choice&&!e.byRecommendation).length,byRecommendation:d.filter(([,e])=>e?.byRecommendation).map(([e])=>e),unanswered:d.filter(([,e])=>!e?.choice).map(([e])=>e),comments:u,...f.submitted&&f.at?{submittedAt:f.at}:{}}},[o,n,l,e,r,c]),f=e=>{a&&a(e).catch(()=>{})},p=t=>{let n=s.get(t);if(!n)return null;let r=Qt(o,n),i=c.get(n);return{group:n,chosen:!!i?.choice&&i.choice===t&&!i.byRecommendation,recommended:e?.groups?.[n]?.recommend===t,disabled:!a||!r||l.get(r.id)!==`open`}},m=t=>{let n=e?.boards[t],r=p(t);if(!n||!r||r.disabled)return;let i=r.chosen?null:t;f({op:`create`,anchor:{page:n.page,x:n.x,y:n.y,group:r.group,choice:i},text:i??`Clear ${r.group}`})},h=e=>{d&&f({op:`create`,anchor:{page:d.round.page,x:0,y:0,round:d.round.id,submit:e},text:`${e?`Submit`:`Withdraw`} ${d.round.id}`})};return{active:o.length>0,boardChoice:p,choose:m,chosenBoards:u,current:d,listening:i,canAct:!!a,submit:()=>h(!0),withdraw:()=>h(!1),choiceOf:e=>c.get(e)}}function z_(e,t,n){let r=[...er(e.map(([e,t])=>({id:e,...t})),t,n)].sort().join(` `);return(0,Z.useMemo)(()=>new Set(r?r.split(` `):[]),[r])}var B_=()=>({joined:{},marks:{},members:null,shown:{},verdicts:{}});function V_(e,t){let n={...e};for(let[e,r]of Object.entries(t))r>0&&(n[e]=r);return n}function H_(e,t){if(!e.members)return{...e,members:t.groups,shown:V_({},t.versions),verdicts:t.verdicts};let n={},r={};for(let[i,a]of Object.entries(t.groups)){let o=e.members[i],s=t.verdicts[i]===e.verdicts[i]?{...e.marks[i]}:{},c=new Set(e.joined[i]??[]);for(let n of a){let r=t.versions[n]??0;o&&!o.includes(n)&&c.add(n),!(r<=0)&&(c.delete(n)?s[n]={at:t.now,compare:!1}:(e.shown[n]??0)>0&&e.shown[n]!==r&&(s[n]={at:t.now,compare:!0}))}for(let e of Object.keys(s))a.includes(e)||delete s[e];Object.keys(s).length&&(n[i]=s),c.size&&(r[i]=[...c])}return{joined:r,marks:n,members:t.groups,shown:V_(e.shown,t.versions),verdicts:t.verdicts}}function U_(e){return Object.fromEntries(Object.entries(e.marks).map(([t,n])=>{let r=e.members?.[t]??[],i=Object.keys(n).sort((e,t)=>r.indexOf(e)-r.indexOf(t));return[t,{at:Math.max(...i.map(e=>n[e].at)),boards:i.map(e=>({id:e,compare:n[e].compare}))}]}))}var W_=(e,t)=>e.filter(e=>e.anchor.group===t&&e.anchor.verdict&&e.messages.some(e=>!e.deleted)).map(e=>({id:e.id,at:e.messages[0]?.at??e.statusAt})).sort((e,t)=>e.at<t.at?-1:+(e.at>t.at)).at(-1)?.id;function G_({canvas:e,pending:t,threads:n,versions:r}){if(!e)return null;let i=Object.fromEntries(Object.entries(e.groups??{}).flatMap(([t,n])=>n.verify?[[t,n.boards.filter(t=>e.boards[t])]]:[])),a=new Set(Object.values(i).flat());return{groups:i,versions:Object.fromEntries([...a].map(n=>[n,t.has(n)?0:r[e.boards[n].file]??0])),verdicts:Object.fromEntries(Object.keys(i).map(e=>[e,W_(n,e)]))}}function K_(e){let t=G_(e),n=t?JSON.stringify(t):null,[r,i]=(0,Z.useState)(()=>({key:n,state:t?H_(B_(),{...t,now:Date.now()}):B_()})),a=r;t&&n!==r.key&&(a={key:n,state:H_(r.state,{...t,now:Date.now()})},i(a));let o=a.state;return(0,Z.useMemo)(()=>{let e=U_(o);return{groups:e,boards:new Map(Object.entries(e).flatMap(([e,t])=>t.boards.map(t=>[t.id,{compare:t.compare,group:e}])))}},[o])}var q_=e=>!!e&&typeof e==`object`&&!Array.isArray(e),J_=(e,t)=>typeof e==`string`&&e.length<=t,Y_=e=>typeof e==`number`&&Number.isFinite(e)&&Math.abs(e)<=1e8,X_=e=>Number.isSafeInteger(e)&&e>0,Z_=e=>e===null||q_(e)&&Y_(e.x)&&Y_(e.y)&&Y_(e.width)&&Y_(e.height)&&e.width>=0&&e.height>=0,Q_=e=>Tr.includes(e),$_=new Set([`Frame`,`Column`,`Row`,`Grid`,`Title`,`Text`,`Image`,`Button`]);function ev(e){if(!Array.isArray(e)||e.length>2500)return!1;let t=new Map;for(let n of e){if(!q_(n)||!X_(n.id)||t.has(n.id)||!J_(n.name,100)||!J_(n.tag,80)||!J_(n.selector,200)||!J_(n.path,4e3)||!$_.has(n.kind)||!Array.isArray(n.children)||n.children.length>e.length||n.children.some(e=>!X_(e))||new Set(n.children).size!==n.children.length||(t.size===0?n.parentId!==null:!X_(n.parentId)||!t.has(n.parentId)))return!1;t.set(n.id,n)}for(let e of t.values())if(e.children.some(n=>t.get(n)?.parentId!==e.id)||e.parentId!==null&&!t.get(e.parentId)?.children.includes(e.id))return!1;return!0}function tv(e){if(!q_(e)||!J_(e.session,128)||!e.session||!J_(e.connection,128))return null;let t=!1;switch(e.type){case`ryugi:inspect:tree`:t=typeof e.truncated==`boolean`&&ev(e.nodes);break;case`ryugi:inspect:hover`:t=Z_(e.rect)&&(e.id===void 0||e.id===null||X_(e.id));break;case`ryugi:inspect:rect`:t=X_(e.id)&&e.rect!==null&&Z_(e.rect);break;case`ryugi:inspect:selection`:{if(![`user`,`command`,`update`,`primary`].includes(e.reason)||e.toggle!==void 0&&typeof e.toggle!=`boolean`)break;let n=e.selection;t=n===null||q_(n)&&X_(n.id)&&J_(n.name,100)&&J_(n.tag,80)&&J_(n.selector,200)&&n.rect!==null&&Z_(n.rect)&&J_(n.html,2e4)&&[`fixed`,`fill`,`hug`].includes(n.widthMode)&&[`fixed`,`hug`].includes(n.heightMode)&&q_(n.css)&&Tr.every(e=>J_(n.css[e],2e3));break}case`ryugi:inspect:targets`:t=X_(e.request)&&Array.isArray(e.targets)&&e.targets.length<=2500&&new Set(e.targets.map(e=>q_(e)?e.id:null)).size===e.targets.length&&e.targets.every(e=>q_(e)&&X_(e.id)&&J_(e.name,100)&&e.rect!==null&&Z_(e.rect));break;case`ryugi:inspect:details`:t=X_(e.request)&&Array.isArray(e.nodes)&&e.nodes.length<=2500&&e.nodes.every(e=>q_(e)&&X_(e.id)&&J_(e.text,200)&&J_(e.html,2e3));break;case`ryugi:inspect:drag`:t=[`start`,`move`,`end`,`cancel`].includes(e.phase)&&Y_(e.x)&&Y_(e.y)&&typeof e.append==`boolean`&&(e.id===void 0||X_(e.id));break;case`ryugi:inspect:tweaks`:t=Array.isArray(e.tweaks)&&e.tweaks.length<=2500&&e.tweaks.every(e=>q_(e)&&X_(e.id)&&J_(e.name,200)&&Q_(e.property)&&J_(e.from,2e3)&&J_(e.value,300));break;case`ryugi:inspect:wheel`:t=Y_(e.deltaX)&&Y_(e.deltaY)&&Y_(e.x)&&Y_(e.y)&&typeof e.zoom==`boolean`;break;case`ryugi:inspect:pan`:t=Y_(e.deltaX)&&Y_(e.deltaY);break;case`ryugi:inspect:key`:t=J_(e.code,32)&&J_(e.key,32)&&[`down`,`ctrlKey`,`metaKey`,`shiftKey`,`altKey`].every(t=>typeof e[t]==`boolean`)}return t?e:null}function nv(e){let[t,n]=(0,Z.useState)({frames:{},selection:null,targets:[],previewTargets:null,hover:null,details:{},revision:0}),r=(0,Z.useRef)({options:e,state:t});r.current={options:e,state:t};let i=(0,Z.useRef)(new Map),a=(0,Z.useRef)(new Map),o=(0,Z.useRef)(0),s=(0,Z.useRef)(null),c=(0,Z.useRef)(new Map),l=(0,Z.useCallback)((e,t)=>{let n=i.current.get(e);n?.element.contentWindow?.postMessage({type:`ryugi:inspect`,connection:n.connection,session:n.session,...t},`*`)},[]),u=(0,Z.useCallback)(e=>{s.current=null,c.current.delete(e),n(t=>{let n={...t.frames};delete n[e];let r=Object.fromEntries(Object.entries(t.details).filter(([t])=>!t.startsWith(`${e}:`)));return{...t,frames:n,details:r,previewTargets:null,targets:t.targets.filter(t=>t.boardId!==e),selection:t.selection?.boardId===e?null:t.selection,hover:t.hover?.boardId===e?null:t.hover}})},[]),d=(0,Z.useCallback)(e=>(a.current.has(e)||a.current.set(e,t=>{i.current.get(e)?.element!==t&&(t?i.current.set(e,{element:t,connection:crypto.randomUUID(),session:null}):(l(e,{action:`disable`}),i.current.delete(e),u(e)))}),a.current.get(e)),[u,l]),f=(0,Z.useCallback)(e=>{let t=e.query;if(!t)return;let r=[...t.base];for(let{boardId:n,rect:i}of t.areas)for(let t of e.leaves.get(n)??[])t.rect.x<i.x+i.width&&t.rect.x+t.rect.width>i.x&&t.rect.y<i.y+i.height&&t.rect.y+t.rect.height>i.y&&!r.some(e=>e.boardId===n&&e.id===t.id)&&r.push(t);n(e=>t.preview?{...e,previewTargets:r,hover:null}:{...e,targets:r,previewTargets:null,selection:t.append?e.selection:null,hover:null,revision:e.revision+1})},[]),p=(0,Z.useCallback)(e=>{let t=i.current.get(e);if(!t)return;t.connection=crypto.randomUUID(),t.session=null,u(e);let{enabled:n,playing:a,mode:o=`select`}=r.current.options;n&&!a.has(e)&&l(e,{action:`enable`}),o!==`select`&&l(e,{action:`mode`,mode:o})},[u,l]);(0,Z.useEffect)(()=>{let e=e=>{let t=Array.from(i.current).find(([,t])=>t.element.contentWindow===e.source);if(!t)return;let[a,o]=t,l=tv(e.data);if(l?.type===`ryugi:inspect:wheel`&&l.zoom)r.current.options.onInput(a,l);else if(!(!l||l.connection!==o.connection||o.session!==null&&o.session!==l.session)&&(r.current.options.enabled||l.type===`ryugi:inspect:tweaks`)&&!(r.current.options.playing.has(a)&&l.type!==`ryugi:inspect:tweaks`)){if(l.type===`ryugi:inspect:tree`){o.session=l.session;let e=new Set(l.nodes.map(e=>e.id));n(t=>({...t,targets:t.targets.filter(t=>t.boardId!==a||e.has(t.id)),selection:t.selection?.boardId===a&&!e.has(t.selection.node.id)?null:t.selection,frames:{...t.frames,[a]:{session:l.session,nodes:l.nodes,truncated:l.truncated,tweaks:t.frames[a]?.tweaks??[]}}}))}else if(o.session!==null){if(l.type===`ryugi:inspect:selection`){let e=l.reason===`user`||l.reason===`command`;e&&(s.current=null),n(t=>{let n=l.selection;if(l.reason===`primary`||l.reason===`update`){if(!n)return t;let e=t.targets.at(-1);return!e||e.boardId!==a||e.id!==n.id?t:{...t,selection:{boardId:a,node:n},targets:t.targets.map(e=>e.boardId===a&&e.id===n.id?{...e,name:n.name||n.selector,rect:n.rect}:e)}}if(!n)return t;let r=t.targets.some(e=>e.boardId===a&&e.id===n.id),i={boardId:a,id:n.id,name:n.name||n.selector,rect:n.rect},o=l.toggle?r?t.targets.filter(e=>e.boardId!==a||e.id!==n.id):[...t.targets,i]:[i];return{...t,targets:o,previewTargets:null,selection:l.toggle&&r?null:{boardId:a,node:n},revision:e?t.revision+1:t.revision}})}else if(l.type===`ryugi:inspect:targets`){let e=s.current;if(!e||l.request!==e.request||e.leaves.has(a))return;e.leaves.set(a,l.targets.map(e=>({...e,boardId:a}))),f(e)}else if(l.type===`ryugi:inspect:details`){if(c.current.get(a)!==l.request)return;n(e=>{let t=Object.fromEntries(Object.entries(e.details).filter(([e])=>!e.startsWith(`${a}:`)));for(let e of l.nodes)t[`${a}:${e.id}`]=e;return{...e,details:t}})}else l.type===`ryugi:inspect:hover`?n(e=>({...e,hover:l.rect?{boardId:a,rect:l.rect,id:l.id??null}:null})):l.type===`ryugi:inspect:rect`?n(e=>({...e,targets:e.targets.map(e=>e.boardId===a&&e.id===l.id?{...e,rect:l.rect}:e),selection:e.selection?.boardId===a&&e.selection.node.id===l.id?{boardId:a,node:{...e.selection.node,rect:l.rect}}:e.selection})):l.type===`ryugi:inspect:tweaks`?n(e=>e.frames[a]?{...e,frames:{...e.frames,[a]:{...e.frames[a],tweaks:l.tweaks}}}:e):r.current.options.onInput(a,l)}}};window.addEventListener(`message`,e);let t=i.current;return()=>{window.removeEventListener(`message`,e);for(let e of t.keys())l(e,{action:`disable`})}},[f,l]);let m=e.mode??`select`;(0,Z.useEffect)(()=>{for(let e of i.current.keys())l(e,{action:`mode`,mode:m})},[m,l]);let h=Array.from(e.playing).sort().join(`\0`);(0,Z.useEffect)(()=>{s.current=null;for(let t of i.current.keys())l(t,{action:e.enabled&&!r.current.options.playing.has(t)?`enable`:`disable`});n(e=>{let t=e.selection&&r.current.options.playing.has(e.selection.boardId);return{...e,previewTargets:null,targets:e.targets.filter(e=>!r.current.options.playing.has(e.boardId)),hover:null,selection:t?null:e.selection}})},[e.enabled,h,l]);let g=JSON.stringify(t.targets.map(({boardId:e,id:t})=>[e,t]));(0,Z.useEffect)(()=>{if(e.enabled)for(let e of i.current.keys())r.current.options.playing.has(e)||l(e,{action:`track`,ids:r.current.state.targets.filter(t=>t.boardId===e).map(e=>e.id)})},[g,e.enabled,h,l]),(0,Z.useEffect)(()=>{if(e.enabled)for(let e of i.current.keys()){if(r.current.options.playing.has(e))continue;let t=r.current.state.targets.filter(t=>t.boardId===e).map(e=>e.id);if(!t.length&&!c.current.has(e))continue;let n=++o.current;c.current.set(e,n),l(e,{action:`describe`,request:n,ids:t})}},[g,e.enabled,h,l]),(0,Z.useEffect)(()=>{let n=t.targets.at(-1);e.enabled&&n&&(t.selection?.boardId!==n.boardId||t.selection.node.id!==n.id)&&l(n.boardId,{action:`select`,id:n.id,primary:!0})},[g,t.selection,e.enabled,l]);let _=(0,Z.useCallback)(()=>{s.current=null,n(e=>({...e,targets:[],previewTargets:null,selection:null,hover:null,revision:e.revision+1}))},[]),v=(0,Z.useCallback)(()=>{s.current?.query?.preview!==!1&&(s.current=null),n(e=>e.previewTargets?{...e,previewTargets:null}:e);for(let e of i.current.keys())l(e,{action:`cancel-drag`})},[l]),y=(0,Z.useCallback)(()=>{let{options:e}=r.current;if(!e.enabled)return;let t={request:++o.current,leaves:new Map,query:null};s.current=t;for(let[n,r]of i.current)r.session&&!e.playing.has(n)&&l(n,{action:`leaves`,request:t.request})},[l]),b=(0,Z.useCallback)((e,t,n=!1)=>{let{options:i,state:a}=r.current,o=s.current;i.enabled&&o&&(o.query={areas:e.filter(({boardId:e})=>!i.playing.has(e)),base:t?a.targets:[],append:t,preview:n},f(o))},[f]),x=(0,Z.useCallback)((e,t,n=!1)=>{r.current.options.enabled&&!r.current.options.playing.has(e)&&(s.current=null,l(e,{action:`select`,id:t,toggle:n}))},[l]),S=(0,Z.useCallback)((e,t)=>{r.current.options.enabled&&!r.current.options.playing.has(e)&&l(e,{action:`hover`,id:t})},[l]),C=(0,Z.useCallback)((e,t)=>{let{state:i,options:a}=r.current,o=i.selection;if(!o||!a.enabled||a.playing.has(o.boardId))return;let s=i.frames[o.boardId]?.session;s&&(l(o.boardId,{action:`style`,id:o.node.id,property:e,value:t,session:s}),n(e=>({...e,revision:e.revision+1})))},[l]),w=(0,Z.useCallback)(()=>{for(let e of i.current.keys())l(e,{action:`reset`});n(e=>({...e,revision:e.revision+1}))},[l]);return{...t,targets:t.previewTargets??t.targets,selectedTargets:t.targets,refFor:d,loaded:p,select:x,beginArea:y,selectArea:b,clearSelection:_,cancelDrag:v,hoverNode:S,change:C,reset:w}}function rv(e,t,n,r){let i=(0,Z.useRef)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null),{cancelDrag:l}=t,u=(0,Z.useCallback)(()=>{i.current=null,c(null),o(!1),l()},[l]);(0,Z.useEffect)(u,[u,...r]);let d=(0,Z.useCallback)(t=>e.flatMap(([e,n])=>{let r=Math.max(t.x,n.x),i=Math.max(t.y,n.y),a=Math.min(t.x+t.width,n.x+n.w),o=Math.min(t.y+t.height,n.y+n.h);return a>r&&o>i?[{boardId:e,rect:{x:r-n.x,y:i-n.y,width:a-r,height:o-i}}]:[]}),[e]);function f(e,r,a,s=!1,l){if(e===`start`){i.current={x:r,y:a,append:s,moved:!1,frame:l},c(null),o(!0),t.beginArea();return}let u=i.current;if(!u)return;let f={x:Math.min(u.x,r),y:Math.min(u.y,a),width:Math.abs(r-u.x),height:Math.abs(a-u.y)};Math.hypot(f.width,f.height)*n>=3&&(u.moved=!0),e===`move`?u.moved&&(c(f),t.selectArea(d(f),u.append,!0)):(i.current=null,c(null),o(!1),e!==`cancel`&&u.moved||t.cancelDrag(),e!==`cancel`&&(u.moved?(t.selectArea(d(f),u.append),t.cancelDrag()):u.frame?t.select(u.frame.boardId,u.frame.id,u.append):u.append||t.clearSelection()))}return{marquee:s,selecting:a,dragging:()=>i.current!==null,drag:f,reset:u}}var iv={top:64,right:24,bottom:24,left:24},av=.01,ov=420,sv=1.1,cv=ir(.2,0,0,1),lv=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches,uv=`[data-chrome]${[`board-label`,`group-label`,`video-controls`,`comments`,`reject`,`parameters`].map(e=>`:not([data-chrome="${e}"])`).join(``)}`;function dv(e,t){let n=t.k/e.k;return{x:t.x-e.x*n,y:t.y-e.y*n,scale:n}}function fv(e,t,n){let{x:r,y:i,scale:a}=dv(e,t);return Math.max(Math.abs(r),Math.abs(i),Math.abs(n.width*(a-1)+r),Math.abs(n.height*(a-1)+i))>160||a>sv||a<1/sv}function pv(e,t,n,r){for(let i=e;i&&i!==t;i=i.parentElement){let{overflowX:e,overflowY:t}=getComputedStyle(i);if(r&&/auto|scroll/.test(t)&&i.scrollHeight>i.clientHeight||n&&/auto|scroll/.test(e)&&i.scrollWidth>i.clientWidth)return!0}return!1}function mv(e){let t=(0,Z.useRef)(null),n=(0,Z.useRef)(null),[r,i]=(0,Z.useState)({x:0,y:0,k:.5}),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1),l=(0,Z.useRef)(null),u=(0,Z.useRef)(new Map),d=(0,Z.useRef)(r),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),[m,h]=(0,Z.useState)(!1),g=(0,Z.useRef)(void 0),_=(0,Z.useRef)(r),v=(0,Z.useRef)(new Set),y=(0,Z.useRef)({width:0,height:0}),b=(0,Z.useCallback)(()=>{let{x:e,y:t,k:r}=d.current,i=n.current;i&&(i.style.transform=`translate(${e}px, ${t}px) scale(${r})`,i.style.setProperty(`--zoom`,String(r)));let a=dv(_.current,d.current),o=a.x===0&&a.y===0&&a.scale===1?``:`translate(${a.x}px, ${a.y}px) scale(${a.scale})`;for(let e of v.current)e.style.transform=o},[]),x=(0,Z.useCallback)(e=>{n.current=e,b()},[b]),S=(0,Z.useCallback)(e=>{if(e)return e.style.transformOrigin=`0 0`,v.current.add(e),b(),()=>{v.current.delete(e)}},[b]);(0,Z.useLayoutEffect)(()=>{_.current=r,b()},[r,b]);let C=(0,Z.useCallback)(e=>{n.current&&(n.current.style.willChange=e);for(let t of v.current)t.style.willChange=e},[]),w=(0,Z.useCallback)(()=>{g.current===void 0&&(h(!0),C(`transform`)),clearTimeout(g.current),g.current=setTimeout(()=>{g.current=void 0,C(``),h(!1),i(d.current)},150)},[C]),T=(0,Z.useCallback)(e=>{d.current=e,b(),fv(_.current,e,y.current)&&i(e)},[b]),E=(0,Z.useCallback)(e=>{d.current=typeof e==`function`?e(d.current):e,w(),!p.current&&(p.current=!0,f.current=requestAnimationFrame(()=>{p.current=!1,f.current=null,T(d.current)}))},[w,T]),D=(0,Z.useCallback)((e,t=!1)=>{f.current!==null&&cancelAnimationFrame(f.current),f.current=null,p.current=!1,d.current=e,t&&w(),b(),i(e)},[w,b]);(0,Z.useEffect)(()=>()=>{f.current!==null&&cancelAnimationFrame(f.current),clearTimeout(g.current)},[]);let O=(0,Z.useCallback)(e=>D(e),[D]),k=(0,Z.useRef)(null),A=(0,Z.useCallback)(()=>{k.current!==null&&cancelAnimationFrame(k.current),k.current=null},[]);(0,Z.useEffect)(()=>A,[A]);let[j,M]=(0,Z.useState)(()=>({width:typeof innerWidth==`number`?innerWidth:0,height:typeof innerHeight==`number`?innerHeight:0}));(0,Z.useEffect)(()=>{let e=t.current;if(!e||typeof ResizeObserver!=`function`)return;let n=new ResizeObserver(()=>M(t=>t.width===e.clientWidth&&t.height===e.clientHeight?t:{width:e.clientWidth,height:e.clientHeight}));return n.observe(e),()=>n.disconnect()},[]),(0,Z.useLayoutEffect)(()=>{y.current=j},[j]);let N=(0,Z.useCallback)((e,t)=>E(n=>({...n,x:n.x+e,y:n.y+t})),[E]),P=(0,Z.useCallback)(e=>{e.zoom?E(t=>Qn(t,Math.exp(-e.deltaY*av),e.x,e.y)):N(-e.deltaX,-e.deltaY)},[N,E]);(0,Z.useEffect)(()=>{let e=t.current;if(!e)return;let n=t=>{let n=t.target,r=t.ctrlKey||t.metaKey;if(n?.closest?.(uv)||!r&&pv(n,e,t.deltaX,t.deltaY))return;t.preventDefault(),A();let i=e.getBoundingClientRect(),a=t.deltaMode===1?16:t.deltaMode===2?e.clientHeight:1;P({deltaX:t.deltaX*a,deltaY:t.deltaY*a,x:t.clientX-i.left,y:t.clientY-i.top,zoom:r})},r=e=>{e.ctrlKey&&e.preventDefault()};return e.addEventListener(`wheel`,n,{passive:!1}),window.addEventListener(`wheel`,r,{passive:!1}),()=>{e.removeEventListener(`wheel`,n),window.removeEventListener(`wheel`,r)}},[P,A]),(0,Z.useEffect)(()=>{let e=e=>e.target?.closest?.(`input, textarea, select, [contenteditable], [data-chrome]`),t=t=>{t.code===`Space`&&!e(t)&&(t.preventDefault(),o(!0))},n=e=>{e.code===`Space`&&o(!1)},r=()=>o(!1);return window.addEventListener(`keydown`,t),window.addEventListener(`keyup`,n),window.addEventListener(`blur`,r),()=>{window.removeEventListener(`keydown`,t),window.removeEventListener(`keyup`,n),window.removeEventListener(`blur`,r)}},[]);let F=e===`hand`||a,ee=(0,Z.useCallback)(e=>{let t=e.pointerType===`touch`,n=e.button===1;(t||(F||n)&&(e.button===0||n))&&e.currentTarget.contains(e.target)&&(e.target.closest(`[data-chrome]`)||(A(),e.currentTarget.setPointerCapture(e.pointerId),l.current={x:e.clientX,y:e.clientY},t&&u.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),c(!0)))},[F,A]),te=(0,Z.useCallback)(e=>{if(e.pointerType===`touch`&&!u.current.has(e.pointerId))return;if(u.current.has(e.pointerId)){let t=[...u.current.values()];u.current.set(e.pointerId,{x:e.clientX,y:e.clientY});let n=[...u.current.values()];if(t.length>=2){E(e=>cr(e,[t[0],t[1]],[n[0],n[1]]));return}}let t=l.current;t&&(l.current={x:e.clientX,y:e.clientY},E(n=>({...n,x:n.x+e.clientX-t.x,y:n.y+e.clientY-t.y})))},[E]),ne=(0,Z.useCallback)(e=>{e?u.current.delete(e.pointerId):u.current.clear();let t=[...u.current.values()][0];l.current=t?{...t}:null,t||c(!1)},[]),I=()=>{let e=t.current;return{cx:(e?.clientWidth??0)/2,cy:(e?.clientHeight??0)/2}},re=(0,Z.useCallback)((e,n=iv,r={})=>{let i=t.current;if(!i||!e)return;let a=sr(e,{width:i.clientWidth,height:i.clientHeight},n);if(A(),!r.animate||lv()){D(a);return}let o=d.current,s=performance.now(),c=()=>{let e=Math.min(1,(performance.now()-s)/ov);e===1?D(a,!0):(w(),T(Zn(o,a,cv(e)))),k.current=e===1?null:requestAnimationFrame(c)};k.current=requestAnimationFrame(c)},[A,D,w,T]),L=(0,Z.useCallback)(e=>{let{cx:t,cy:n}=I();E(r=>Qn(r,e,t,n))},[E]),R=(0,Z.useCallback)(e=>{let{cx:t,cy:n}=I();E(r=>or(r,e,t,n))},[E]);return{viewportRef:t,worldRef:x,overlayRef:S,view:r,viewNow:(0,Z.useCallback)(()=>d.current,[]),gesturing:m,scaling:m,size:j,place:O,fit:re,zoomBy:L,zoomTo:R,panBy:N,wheelAt:P,panning:F,setSpaceHeld:o,cursor:s?`grabbing`:F?`grab`:e===`comment`?wr:Cr,hand:s?`pinch`:F?`open`:null,handlers:{onPointerDown:ee,onPointerMove:te,onPointerUp:ne,onPointerCancel:ne}}}function hv({boards:e,frames:t,targets:n,details:r}){let i=new Map;for(let[n,r]of Object.entries(t)){let t=e[n];if(t)for(let e of r.nodes)i.set(`${n}:${e.id}`,{id:`${n}#${e.id}`,board:n,file:t.file,tag:e.tag,path:e.path,name:e.name})}let a=(e,n)=>(t[e]?.tweaks??[]).filter(e=>e.id===n).map(({property:e,from:t,value:n})=>({property:e,from:t,value:n})),o=n.filter(({boardId:e,id:t})=>i.has(`${e}:${t}`)),s=new Set(o.map(({boardId:e,id:t})=>`${e}:${t}`)),c=o.slice(0,20).map(({boardId:e,id:t})=>{let n=r[`${e}:${t}`];return{...i.get(`${e}:${t}`),text:n?.text??``,html:n?.html??``,tweaks:a(e,t)}}),l=[];for(let[e,n]of Object.entries(t))for(let t of n.tweaks){let n=i.get(`${e}:${t.id}`);n&&!s.has(`${e}:${t.id}`)&&l.push({...n,property:t.property,from:t.from,value:t.value})}return{selected:c,more:o.length-c.length,tweaks:l,nodes:[...i.values()]}}var gv=e=>e.id.length<=Pr.id&&e.board.length<=Pr.board&&e.file.length<=Pr.file&&e.tag.length<=Pr.tag&&e.path.length<=Pr.path&&e.name.length<=Pr.name,_v=e=>new TextEncoder().encode(JSON.stringify(e)).length;function vv(e,t=Ir){let n=e.selected.filter(e=>gv(e)&&e.text.length<=Pr.text&&e.html.length<=Pr.html),r=e.tweaks.filter(e=>gv(e)&&e.from.length<=Pr.from&&e.value.length<=Pr.value),i={...e,selected:n,tweaks:r,nodes:e.nodes.filter(gv).slice(0,Nr)};for(let e=_v(i);e>t&&i.nodes.length;e=_v(i))i={...i,nodes:i.nodes.slice(0,Math.floor(i.nodes.length*Math.min(.95,t/e)))};return i}var yv=crypto.randomUUID();function bv({artifact:e,boards:t,live:n,inspector:r,send:i}){let a=(0,Z.useRef)(0),{frames:o,selectedTargets:s,details:c,revision:l}=r,u=JSON.stringify(s.map(({boardId:e,id:t})=>[e,t])),d=(0,Z.useMemo)(()=>JSON.parse(u),[u]),f=(0,Z.useMemo)(()=>hv({boards:t??{},frames:o,targets:d.map(([e,t])=>({boardId:e,id:t})),details:c}),[t,o,d,c]);(0,Z.useEffect)(()=>{if(!e||!i||!n)return;let t=setTimeout(()=>{let t=l!==a.current;a.current=l,i(vv({type:`selection`,artifact:e,tab:yv,human:t,...f}))},100);return()=>clearTimeout(t)},[e,i,n,f,l])}function xv({canvas:e,page:t,threads:n,stale:r,versions:i,comment:a}){let[o,s]=(0,Z.useState)(null),c=(0,Z.useMemo)(()=>e?.groups??{},[e]),l=(0,Z.useMemo)(()=>e?.boards??{},[e]),u=(0,Z.useMemo)(()=>Object.fromEntries(en(c,l,t).map(([e])=>[e,nn(n,e,r)])),[c,l,t,n,r]),d=(0,Z.useMemo)(()=>Zt(c,l,t,n,r),[c,l,t,n,r]),f=e=>(c[e]?.boards??[]).flatMap(e=>l[e]?[l[e]]:[]),p=e=>({x:Math.max(...f(e).map(e=>e.x+e.w)),y:Math.min(...f(e).map(e=>e.y))}),m=e=>Math.max(0,...f(e).map(e=>i[e.file]??0)),h=async(e,n,r)=>{if(!a||!t)return!1;try{return await a({op:`create`,anchor:{page:t,group:e,verdict:n,...p(e)},text:r}),!0}catch{return!1}};return{states:u,progress:d,rejecting:o,canJudge:!!a,evidenceAt:m,origin:e=>({x:Math.min(...f(e).map(e=>e.x)),y:Math.min(...f(e).map(e=>e.y))}),pass:e=>void h(e,`pass`,`Pass`),undoPass:e=>{let t=n.filter(t=>t.anchor.group===e&&t.anchor.verdict===`pass`&&t.messages.some(e=>!e.deleted)).at(-1),r=t?.messages.find(e=>!e.deleted);t&&r&&a&&a({op:`delete`,threadId:t.id,messageId:r.id}).catch(()=>{})},startReject:e=>s(e),cancelReject:()=>s(null),submitReject:async e=>{if(!o)return!1;let t=await h(o,`reject`,e);return t&&s(null),t}}}function Sv({board:e,rect:n,view:r,name:i,nodeId:a,selected:o}){return n.width<=0||n.height<=0?null:(0,Q.jsxs)(`div`,{"aria-hidden":`true`,"data-outline":``,"data-selected":o?``:void 0,...t($.outline,o&&$.outlineSelected),style:{left:r.x+(e.x+n.x)*r.k,top:r.y+(e.y+n.y)*r.k,width:n.width*r.k,height:n.height*r.k},children:[a&&(0,Q.jsx)(`span`,{"data-outline-id":``,...t($.outlineId),children:a}),o&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{"data-outline-name":``,...t($.outlineName),children:i}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerTl)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerTr)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerBl)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerBr)}),(0,Q.jsxs)(`span`,{...t($.outlineSize),children:[Math.round(n.width),` × `,Math.round(n.height)]})]})]})}var Cv={Frame:un,Column:ki,Row:Vi,Grid:ft,Title:sn,Text:sn,Image:Xt,Button:Nt},wv=(e,t,n)=>`${encodeURIComponent(e)}:${encodeURIComponent(t)}:${n}`;function Tv({boards:e,frames:r,selection:i,targets:a,playing:o,select:s,hoverNode:c}){let[l,u]=(0,Z.useState)([]),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),m=i&&r[i.boardId]?wv(i.boardId,r[i.boardId].session,i.node.id):null,h=a?a.flatMap(e=>r[e.boardId]?[wv(e.boardId,r[e.boardId].session,e.id)]:[]):m?[m]:[],g=h.join(`|`),{treeData:_,byKey:v}=(0,Z.useMemo)(()=>{let i=new Set(g?g.split(`|`):[]),a=new Map,s=[];for(let[c,l]of e){let e=r[c];if(!e?.nodes[0])continue;let u=new Map(e.nodes.map(e=>[e.id,e])),d=o.has(c),f=(r,o)=>{let s=wv(c,e.session,r.id);a.set(s,{boardId:c,node:r,parentKey:o});let p=o===null?`Frame`:r.kind,m=o===null?l.title||c:r.name,h=Cv[p];return{key:s,disabled:d,icon:(0,Q.jsx)(h,{"aria-hidden":!0,size:14}),title:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{title:`${r.tag} · ${m||r.selector}`,...t($.layerLabel),children:[(0,Q.jsx)(`span`,{...t(i.has(s)&&$.layerKindSelected),children:n(`inspector.kind.${p}`)}),(0,Q.jsx)(`span`,{...t($.layerName),children:m?`“${m}”`:`<${r.tag}>`})]}),o!==null&&(0,Q.jsxs)(`span`,{"data-layer-id":``,...t($.layerId),children:[`#`,r.id]}),d&&(0,Q.jsx)(`span`,{...t($.playing),children:n(`inspector.playing`)})]}),children:r.children.flatMap(e=>{let t=u.get(e);return t?[f(t,s)]:[]})}};s.push(f(e.nodes[0],null))}return{treeData:s,byKey:a}},[e,r,o,g]),y=[],b=m?v.get(m)?.parentKey:null;for(;b;)y.push(b),b=v.get(b)?.parentKey;let x=[m,...y].filter(e=>!!e&&!!v.get(e)?.node.children.length).join(`|`);(0,Z.useEffect)(()=>{x&&u(e=>Array.from(new Set([...e,...x.split(`|`)])))},[x]);let S=e=>Array.from(d.current?.querySelectorAll(`[role=treeitem]`)??[]).find(t=>t.dataset.id===e);(0,Z.useEffect)(()=>{m&&S(m)?.scrollIntoView({block:`nearest`})},[m,l]);let C=Object.values(r).reduce((e,t)=>e+t.nodes.length,0);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{...t($.layerHeading),children:[(0,Q.jsx)(`span`,{children:n(`inspector.layers`)}),(0,Q.jsx)(`span`,{...t($.layerHeadingCount),children:C?n(`inspector.elements`,{count:C}):n(`common.loading`)})]}),(0,Q.jsxs)(`div`,{"aria-label":n(`inspector.domLayers`),ref:d,role:`region`,...t($.layers),onClickCapture:e=>{p.current=e.shiftKey||e.metaKey||e.ctrlKey},onKeyDownCapture:e=>{p.current=e.shiftKey||e.metaKey||e.ctrlKey},onMouseLeave:()=>{let e=f.current?v.get(f.current):null;e&&c(e.boardId,null),f.current=null},onMouseOver:e=>{let t=e.target.closest(`[role=treeitem]`)?.dataset.id;if(!t||f.current===t)return;let n=f.current?v.get(f.current):null,r=v.get(t);n&&n.boardId!==r?.boardId&&c(n.boardId,null),f.current=t,r&&c(r.boardId,r.node.id)},children:[(0,Q.jsx)(du,{blockNode:!0,multiple:!0,showIcon:!0,classNames:{node:t($.layer).className},expandedKeys:l,indent:14,selectedKeys:h,size:`small`,treeData:_,styles:{node:{height:27,fontSize:12},title:{display:`flex`,alignItems:`center`,gap:6}},onExpand:(e,{expanded:t,node:n})=>{!t&&(n.key===m||y.includes(n.key))&&S(n.key)?.focus(),u(e)},onSelect:(e,{node:t})=>{let n=v.get(t.key);n&&(p.current?s(n.boardId,n.node.id,!0):s(n.boardId,n.node.id))}}),!_.length&&(0,Q.jsx)(`p`,{...t($.hint,$.hintInLayers),children:n(`inspector.waitingBoard`)})]}),Object.values(r).some(e=>e.truncated)&&(0,Q.jsx)(`p`,{role:`status`,...t($.limit),children:n(`inspector.truncated`)})]})}var Ev=e=>Number.isFinite(parseFloat(e))?Math.round(parseFloat(e)*100)/100:0,Dv=e=>e.map(([e,t])=>({value:e,label:t})),Ov=e=>{let t=e.match(/^rgba?\(([\d.]+),\s*([\d.]+),\s*([\d.]+)(?:,\s*([\d.]+))?\)$/);return t?`#`+t.slice(1).filter(e=>e!==void 0).map((e,t)=>Math.round(Number(e)*(t===3?255:1)).toString(16).padStart(2,`0`)).join(``):e};function kv({label:e,children:n,controlId:r}){return(0,Q.jsxs)(`div`,{...t($.field),children:[r?(0,Q.jsx)(`label`,{htmlFor:r,...t($.fieldLabel),children:e}):(0,Q.jsx)(`span`,{...t($.fieldLabel),children:e}),(0,Q.jsx)(`div`,{...t($.fieldControl),children:n})]})}function Av({label:e,property:n,node:r,change:i,unit:a=`px`,max:o,min:s=0,step:c=1,sizing:l}){let u=(0,Z.useId)(),d=(0,Q.jsx)(Oo,{controls:!1,id:u,max:o,min:s,size:`small`,step:c,style:{width:`100%`},suffix:a||void 0,value:Ev(r.css[n]),onChange:e=>{e!==null&&i(n,String(e)+a)}});return(0,Q.jsx)(kv,{controlId:u,label:e,children:l?(0,Q.jsxs)(`div`,{...t($.numberSizing),children:[(0,Q.jsx)(`div`,{...t($.sizeInput),children:d}),(0,Q.jsx)(`div`,{...t($.sizeMode),children:l})]}):d})}function jv({label:e,property:t,values:n,node:r,change:i}){let a=(0,Z.useId)(),o=r.css[t],s=n.some(([e])=>e===o)?n:[...n,[o,o]];return(0,Q.jsx)(kv,{controlId:a,label:e,children:(0,Q.jsx)(wn,{id:a,options:Dv(s),size:`small`,style:{width:`100%`},value:o,onChange:e=>{typeof e==`string`&&i(t,e)}})})}function Mv({node:e,change:r}){let i={node:e,change:r},a=(0,Z.useId)(),o=(0,Z.useId)(),[s,c]=(0,Z.useState)(e.css[`box-shadow`]);return(0,Z.useEffect)(()=>c(e.css[`box-shadow`]),[e.css[`box-shadow`]]),(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.size`)}),(0,Q.jsx)(Av,{...i,label:n(`inspector.width`),property:`width`,sizing:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`label`,{...t($.srOnly),htmlFor:a,children:n(`inspector.widthSizing`)}),(0,Q.jsx)(wn,{className:t($.sizeModeChild).className,id:a,size:`small`,value:e.widthMode,options:Dv([[`fixed`,n(`inspector.fixed`)],[`fill`,n(`inspector.fill`)],[`hug`,n(`inspector.hug`)]]),onChange:t=>r(`width`,t===`fill`?`100%`:t===`hug`?`max-content`:`${Ev(e.css.width)||e.rect.width}px`)})]})}),(0,Q.jsx)(Av,{...i,label:n(`inspector.height`),property:`height`,sizing:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`label`,{...t($.srOnly),htmlFor:o,children:n(`inspector.heightSizing`)}),(0,Q.jsx)(wn,{className:t($.sizeModeChild).className,id:o,size:`small`,value:e.heightMode,options:Dv([[`hug`,n(`inspector.hug`)],[`fixed`,n(`inspector.fixed`)]]),onChange:t=>r(`height`,t===`hug`?`auto`:`${Ev(e.css.height)||e.rect.height}px`)})]})}),(0,Q.jsx)(jv,{...i,label:n(`inspector.position`),property:`position`,values:[[`static`,n(`inspector.inline`)],[`relative`,n(`inspector.relative`)],[`absolute`,n(`inspector.absolute`)],[`fixed`,n(`inspector.fixed`)],[`sticky`,n(`inspector.sticky`)]]}),(0,Q.jsx)(Av,{...i,label:n(`inspector.grow`),max:100,property:`flex-grow`,unit:``})]}),(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.layout`)}),(0,Q.jsx)(jv,{...i,label:n(`inspector.layout`),property:`display`,values:[[`flex`,n(`inspector.stack`)],[`grid`,n(`inspector.grid`)],[`block`,n(`inspector.block`)],[`inline`,n(`inspector.inline`)],[`inline-flex`,n(`inspector.inlineStack`)],[`none`,n(`inspector.hidden`)]]}),(e.css.display===`flex`||e.css.display===`inline-flex`)&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(kv,{label:n(`inspector.direction`),children:(0,Q.jsx)(Ln,{block:!0,size:`small`,value:e.css[`flex-direction`],options:[{value:`row`,icon:(0,Q.jsx)(ht,{"aria-hidden":!0,size:14}),label:(0,Q.jsx)(`span`,{...t($.srOnly),children:n(`inspector.horizontal`)}),title:n(`inspector.horizontal`)},{value:`column`,icon:(0,Q.jsx)(mt,{"aria-hidden":!0,size:14}),label:(0,Q.jsx)(`span`,{...t($.srOnly),children:n(`inspector.vertical`)}),title:n(`inspector.vertical`)}],onChange:e=>r(`flex-direction`,e)})}),(0,Q.jsx)(kv,{label:n(`inspector.align`),children:(0,Q.jsx)(Ln,{block:!0,"aria-label":n(`inspector.align`),size:`small`,value:e.css[`align-items`],options:Dv([[`flex-start`,n(`inspector.start`)],[`center`,n(`inspector.center`)],[`stretch`,n(`inspector.fill`)]]),onChange:e=>r(`align-items`,e)})})]}),(0,Q.jsx)(Av,{...i,label:n(`inspector.gap`),property:`gap`}),(0,Q.jsx)(Av,{...i,label:n(`inspector.padding`),property:`padding`})]}),(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.appearance`)}),(0,Q.jsx)(kv,{label:n(`inspector.fill`),children:(0,Q.jsx)(kc,{alpha:!0,recent:!1,size:`small`,trigger:`field`,value:Ov(e.css[`background-color`]),onChange:e=>r(`background-color`,e)})}),(0,Q.jsx)(Av,{...i,label:n(`inspector.opacity`),max:1,property:`opacity`,step:.1,unit:``}),(0,Q.jsx)(Av,{...i,label:n(`inspector.radius`),property:`border-radius`}),(0,Q.jsx)(jv,{...i,label:n(`inspector.border`),property:`border-style`,values:[[`none`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(Ti,{"aria-hidden":!0,size:13}),n(`inspector.none`)]},`none`)],[`solid`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)($t,{"aria-hidden":!0,size:13}),n(`inspector.solid`)]},`solid`)],[`dashed`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(Ui,{"aria-hidden":!0,size:13}),n(`inspector.dashed`)]},`dashed`)],[`dotted`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(on,{"aria-hidden":!0,size:13}),n(`inspector.dotted`)]},`dotted`)]]})]}),(0,Q.jsx)(ea,{keepMounted:!0,classNames:{item:t($.section).className},gap:0,indicatorPlacement:`end`,items:[{key:`typography`,title:n(`inspector.typography`),children:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Av,{...i,label:n(`inspector.fontSize`),min:1,property:`font-size`}),(0,Q.jsx)(kv,{label:n(`inspector.color`),children:(0,Q.jsx)(kc,{alpha:!0,recent:!1,size:`small`,trigger:`field`,value:Ov(e.css.color),onChange:e=>r(`color`,e)})})]})},{key:`effects`,title:n(`inspector.effects`),children:(0,Q.jsx)(kv,{label:n(`inspector.shadow`),children:(0,Q.jsx)(xn,{"aria-label":n(`inspector.shadow`),size:`small`,value:s,onBlur:()=>r(`box-shadow`,s),onChange:e=>c(e.target.value),onPressEnter:e=>e.currentTarget.blur()})})}],styles:{header:{margin:0},trigger:{padding:0,fontSize:13,fontWeight:550},content:{padding:`12px 0 0`}}})]})}var Nv=[`Properties`,`Code`,`Tweaks`],Pv=(0,Z.memo)(function({boards:e,frames:r,selection:i,targets:a,playing:o,select:s,hoverNode:c,change:l,reset:u,enabled:d,onClose:f,embedded:p}){let[m,h]=(0,Z.useState)(`Properties`),[g,_]=(0,Z.useState)(``),v=i?.node,b=Object.entries(r).flatMap(([e,t])=>t.tweaks.map(t=>({...t,boardId:e}))),x=v?`${v.selector} {\n${Object.entries(v.css).map(([e,t])=>` ${e}: ${t};`).join(`
12
- `)}\n}`:``,S=async e=>{try{await navigator.clipboard.writeText(e),_(n(`inspector.copied`))}catch{_(n(`inspector.copyFailed`))}},C=[t($.panel,p&&$.embedded).className,`ryugi-inspector`].filter(Boolean).join(` `);return(0,Q.jsx)(y,{config:{"aria-hidden":!0},children:(0,Q.jsx)(`aside`,{"data-chrome":!0,"aria-label":n(`inspector.label`),className:C,children:(0,Q.jsxs)(gl,{size:`small`,style:{display:`contents`},value:m,variant:`rounded`,onValueChange:e=>{Nv.includes(e)&&h(e)},children:[(0,Q.jsxs)(`header`,{...t($.header),children:[(0,Q.jsxs)(_l,{activateOnFocus:!0,"aria-label":n(`inspector.views`),className:t($.tabs).className,style:{alignSelf:`center`},children:[(0,Q.jsx)(bl,{}),Nv.map(e=>(0,Q.jsxs)(vl,{style:{position:`relative`},value:e,children:[n(`inspector.tab.${e}`),e===`Tweaks`&&b.length>0&&(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:4,...t($.changeDot)})]},e))]}),!p&&(0,Q.jsx)(ct,{"aria-label":n(`inspector.close`),icon:E,size:`small`,title:n(`inspector.close`),onClick:f})]}),(0,Q.jsx)(Tv,{boards:e,frames:r,hoverNode:c,playing:o,select:s,selection:i,targets:a}),(0,Q.jsxs)(`div`,{"data-node-meta":``,...t($.nodeMeta),children:[(0,Q.jsx)(`code`,{children:a.length>1?n(`inspector.selected`,{count:a.length}):v?`<${v.tag}>`:n(`inspector.selectElement`)}),v&&(0,Q.jsxs)(`span`,{"data-node-id":``,...t($.nodeId),children:[`${i.boardId}#${v.id}`,(0,Q.jsx)(ct,{"aria-label":n(`inspector.copyNode`),icon:gt,size:{blockSize:16,size:10},title:n(`inspector.copyNode`),onClick:()=>void S(`${i.boardId}#${v.id}`)})]}),(0,Q.jsx)(`span`,{title:v?.selector,...t($.nodeSelector),children:v?.selector}),v&&(0,Q.jsxs)(`span`,{...t($.live),children:[(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:6}),n(`inspector.live`)]})]}),a.length>1&&(0,Q.jsx)(`p`,{...t($.hint),style:{margin:`8px 16px`},children:n(`inspector.lastSelected`)}),(0,Q.jsxs)(`div`,{...t($.panelBody),children:[(0,Q.jsx)(yl,{value:`Properties`,...t($.panelBodyPanel),children:v&&d?(0,Q.jsx)(Mv,{change:l,node:v},`${i.boardId}:${r[i.boardId]?.session}:${v.id}`):(0,Q.jsx)(`p`,{...t($.empty),children:n(d?`inspector.pickElement`:`inspector.closeExpanded`)})}),(0,Q.jsx)(yl,{value:`Code`,...t($.panelBodyPanel),children:v?(0,Q.jsxs)(`div`,{...t($.code),children:[(0,Q.jsxs)(`div`,{...t($.codeHeading),children:[(0,Q.jsx)(`h2`,{...t($.codeTitle),children:n(`inspector.computedCss`)}),(0,Q.jsx)(je,{icon:gt,size:`small`,type:`text`,onClick:()=>void S(x),children:n(`inspector.copy`)})]}),(0,Q.jsx)(`pre`,{tabIndex:0,...t($.codePre),children:x}),(0,Q.jsxs)(`div`,{...t($.codeHeading),children:[(0,Q.jsx)(`h2`,{...t($.codeTitle),children:`HTML`}),(0,Q.jsx)(je,{icon:gt,size:`small`,type:`text`,onClick:()=>void S(v.html),children:n(`inspector.copy`)})]}),(0,Q.jsx)(`pre`,{tabIndex:0,...t($.codePre),children:v.html}),(0,Q.jsx)(`p`,{role:`status`,...t($.hint),children:g||n(`inspector.fromDom`)})]}):(0,Q.jsx)(`p`,{...t($.empty),children:n(`inspector.selectForCode`)})}),(0,Q.jsx)(yl,{value:`Tweaks`,...t($.panelBodyPanel),children:(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsxs)(`h2`,{...t($.sectionTitle),children:[n(`inspector.sessionChanges`),` `,(0,Q.jsx)(`span`,{...t($.count),children:b.length})]}),(0,Q.jsx)(`p`,{...t($.hint),children:n(`inspector.changesApply`)}),(0,Q.jsx)(`div`,{...t($.tweaks),children:b.map(n=>(0,Q.jsxs)(`div`,{...t($.tweak),children:[(0,Q.jsxs)(`span`,{...t($.tweakLabel),children:[e.find(([e])=>e===n.boardId)?.[1].title||n.boardId,` ·`,` `,n.name]}),(0,Q.jsxs)(`code`,{...t($.tweakCode),children:[n.property,`: `,n.value]})]},`${n.boardId}:${n.id}:${n.property}`))}),!b.length&&(0,Q.jsx)(`p`,{...t($.hint),children:n(`inspector.noChanges`)}),(0,Q.jsx)(je,{block:!0,disabled:!b.length,icon:an,size:`small`,onClick:u,children:n(`inspector.resetPreview`)})]})})]}),(0,Q.jsxs)(`footer`,{...t($.footer),children:[(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:5,...t($.statusDot)}),b.length?n(`inspector.previewChanges`,{count:b.length}):n(`inspector.liveInspection`),(0,Q.jsx)(`span`,{...t($.footerNote),children:n(`inspector.previewOnly`)})]})]})})})});function Fv(e,t,n){if(n.board){let t=e.boards[n.board];return t?{minX:t.x,minY:t.y,maxX:t.x+t.w,maxY:t.y+t.h}:null}if(n.group){let t=e.groups?.[n.group],r=t?rr(t,e.boards):null;return r?{minX:r.x,minY:r.y,maxX:r.x+r.w,maxY:r.y+r.h}:null}let r=e.pages[0]?.id;return r&&t?.pages[r]?.bounds||null}function Iv({canvas:e,layout:t,fit:n,threads:r,stale:i}){let a=(0,Z.useRef)({canvas:e,layout:t,fit:n});a.current={canvas:e,layout:t,fit:n};let o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(0),l=!!e&&!!t;(0,Z.useEffect)(()=>{if(!l||!o.current)return;let e=o.current;o.current=null;let t=0,n=requestAnimationFrame(()=>{t=requestAnimationFrame(()=>{let{canvas:t,layout:n,fit:r}=a.current,i=t&&Fv(t,n,e);i&&r(i)})});return()=>{cancelAnimationFrame(n),cancelAnimationFrame(t)}},[l,s]),(0,Z.useEffect)(()=>{e&&Or()&&Dr({kind:`board-state`,board:{canvas:e,layout:t,threads:r,stale:i}})},[e,t,r,i]),(0,Z.useEffect)(()=>{if(!Or())return;let e=kr(e=>{e.kind===`focus`&&(o.current=e,c(e=>e+1))}),t=e=>{let t=e.target;if(t?.closest(`[data-backlink-badge]`))return;let n=t?.closest(`[data-group-label], [data-board-label]`),r=n?.dataset.groupLabel??n?.dataset.boardLabel;r&&Dr({kind:`select`,key:r})};return document.addEventListener(`click`,t,!0),Dr({kind:`ready`}),()=>{e(),document.removeEventListener(`click`,t,!0)}},[])}var Lv=(e,t)=>({left:t.x+(e.x+e.w)*t.k+12,top:t.y+e.y*t.k});function Rv(e,t,n){let r=Lv(e,t);return{x:Math.min(Math.max(12,r.left),Math.max(12,n.width-352-12))-r.left,y:Math.min(Math.max(60,r.top),Math.max(60,n.height-604-12))-r.top}}function zv({control:e,value:t,change:n,id:r,width:i}){return(0,Q.jsxs)(_a,{style:{width:i??`100%`,flexShrink:0},children:[(0,Q.jsx)(ba,{className:`x10l6tqk x1i1rx1s xjm9jq1 x1717udv xkdpibf xb3r6kr xzpqnlu xuxw1ft xc342km`,children:e.label}),(0,Q.jsx)(Oo,{controls:e.type!==`range`,id:r,max:e.max,min:e.min,size:`small`,step:e.step,style:{width:`100%`},value:t,onChange:e=>{e!==null&&n(e)}})]})}function Bv({control:e,value:t,change:r}){let i=(0,Z.useId)(),a=e.type===`enum`&&e.options.length<=3,o=a?`fieldset`:`div`,s;s=e.type===`color`?(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z xeuugli`,children:[e.options&&(0,Q.jsx)(`div`,{"aria-label":e.label,role:`group`,className:`x78zum5 x6s0dn4 x1nejdyq xmbed50 x2lah0s xw2csxc xf4egzd x5k8d2m x1597r2g`,children:e.options.map(n=>(0,Q.jsx)(`button`,{"aria-label":`${e.label}: ${n.label}`,"aria-pressed":t===n.value,style:{backgroundColor:n.value},type:`button`,...{0:{className:`x1xp8n7a xmix8c7 x9f619 x2lah0s xdh2fpr x1y0btm7 x1h8xy2i x1sxf85j x1717udv x1ypdohk x784prv x9v5kkp xv8siiq x13iak60`},1:{className:`x1xp8n7a xmix8c7 x9f619 x2lah0s xdh2fpr x1y0btm7 x1h8xy2i x1sxf85j x1717udv x1ypdohk x784prv x9v5kkp xv8siiq x13iak60 x1qgsegg xaatb59 x1um9acj x1y3gkto`}}[t===n.value|0],onClick:()=>r(n.value)},n.value))}),(0,Q.jsx)(kc,{alpha:!1,recent:!1,size:`small`,value:t,onChange:r,children:(0,Q.jsxs)(je,{"aria-label":e.label,className:{className:`xeuugli x98rzlu xlkn9b3`}.className,id:i,size:`small`,children:[(0,Q.jsx)(`span`,{style:{backgroundColor:t},className:`x1rg5ohu xsmyaan x1kpxq89 x9f619 x18zih8k xmkeg23 x1y0btm7 x12xov25 x2lah0s`}),(0,Q.jsx)(`code`,{className:`x1k6wstc`,children:String(t)})]})})]}):e.type===`boolean`?(0,Q.jsx)(Gn,{"aria-label":e.label,checked:t,className:{className:`x1lliihq xvc5jky`}.className,id:i,onChange:r}):e.type===`range`?(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z xeuugli`,children:[(0,Q.jsx)(Us,{"aria-labelledby":`${i}-label`,className:{className:`x98rzlu xeuugli`}.className,max:e.max,min:e.min,step:e.step,value:t,onChange:r}),(0,Q.jsx)(zv,{change:r,control:e,id:`${i}-number`,value:t,width:48})]}):e.type===`number`?(0,Q.jsx)(zv,{change:r,control:e,id:i,value:t}):e.type===`enum`?a?(0,Q.jsx)(Ln,{block:!0,options:e.options,size:`small`,value:t,onChange:r}):(0,Q.jsx)(wn,{id:i,options:e.options,size:`small`,style:{width:`100%`},value:t,onChange:e=>{typeof e==`string`&&r(e)}}):(0,Q.jsx)(xn,{"aria-label":e.label,id:i,maxLength:512,size:`small`,value:t,onChange:e=>r(e.target.value)});let c=t!==e.default;return(0,Q.jsxs)(o,{"data-changed":c||void 0,...{0:{className:`x1n2onr6 xrvj5dj x1x765j0 x6s0dn4 xtqikln x1gg8mnh x9f619`},1:{className:`x1n2onr6 x1x765j0 x6s0dn4 xtqikln x1gg8mnh x9f619 x1lliihq xc342km x1t0vds8 x4g923t xyri2b xeuugli x1ghz6dp`}}[!!a|0],children:[a?(0,Q.jsx)(`legend`,{...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe x10l6tqk xwa60dl xu96u03 x1cb1t30 x1d7z9mz x1ghz6dp x1717udv x9f619`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe x10l6tqk xwa60dl xu96u03 x1cb1t30 x1d7z9mz x1ghz6dp x1717udv x9f619 xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}):e.type===`range`?(0,Q.jsx)(`span`,{id:`${i}-label`,...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}):(0,Q.jsx)(`label`,{htmlFor:i,...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}),(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x1jnr06f xeuugli`,children:[(0,Q.jsx)(`div`,{className:`x98rzlu xeuugli`,children:s}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.resetControl`,{label:e.label}),className:{0:{className:`x2lah0s`},1:{className:`x2lah0s xlshs6z`}}[!c|0].className,disabled:!c,icon:an,size:{blockSize:22,size:11},title:n(`parameters.resetControl`,{label:e.label}),onClick:()=>r(e.default)})]})]})}function Vv({boardId:e,title:t,state:r,anchor:i,onChange:a,onReset:o,onClose:s}){let c=(0,Z.useRef)(null),l=(0,Z.useId)(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(`schema`),m=n(f===`schema`?`parameters.schema`:`parameters.currentValues`),h=JSON.stringify(f===`schema`?r.schema:r.values,null,2),g=new Map;for(let e of Object.entries(r.schema?.controls??{})){let t=e[1].section||n(`parameters.controls`);g.has(t)||g.set(t,[]),g.get(t).push(e)}let _=Object.entries(r.values).filter(([e,t])=>t!==r.schema?.controls[e]?.default).length,v=[{className:`x52sccv x78zum5 xdt5ytf x2lah0s xmkeg23 x1y0btm7 xgcsv5v x4pepcl x1rozbrz xo2rkog x1d5q07e xqfszdh xfifm61 xt0e3qv x1hx0egp xb3r6kr x9f619`}.className,`ryugi-parameters`].filter(Boolean).join(` `);return(0,Q.jsxs)(y,{config:{"aria-hidden":!0},children:[(0,Q.jsxs)(`aside`,{"aria-label":n(`parameters.title`),className:v,"data-chrome":`parameters`,style:{position:i?`absolute`:`relative`,...i,width:352,maxHeight:i?`min(604px, calc(100% - ${Math.max(0,i.top)}px - 12px))`:`min(604px, calc(100vh - 112px))`},onKeyDown:e=>{e.stopPropagation(),e.key===`Escape`&&!e.defaultPrevented&&!pr(e.nativeEvent)&&s()},children:[(0,Q.jsxs)(`header`,{className:`xn3w4p2 x2lah0s x78zum5 x6s0dn4 x167g77z xf7dkkf x2vl965 x9f619`,children:[(0,Q.jsx)(Gt,{"aria-hidden":!0,size:15,className:`x1bo0w0s`}),(0,Q.jsx)(`h2`,{className:`xfifm61 x1s688f x1ghz6dp`,children:n(`parameters.title`)}),(0,Q.jsx)(`span`,{className:`x1k6wstc x1bo0w0s x4h0osi`,children:Object.keys(r.schema?.controls??{}).length}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.close`),className:{className:`xvc5jky`}.className,icon:E,size:`small`,title:n(`parameters.close`),onClick:s})]}),(0,Q.jsxs)(`div`,{className:`x78zum5 x1pha0wt x167g77z x1hr3lfm x1ug4tga xso031l x1q0q8m5 xtrfj0v x2lah0s xeuugli x9f619`,children:[(0,Q.jsx)(`strong`,{title:t,className:`xeuugli xfifm61 xh88oxj xb3r6kr xuxw1ft xlyipyv`,children:t}),(0,Q.jsx)(`code`,{title:e,className:`xeuugli x1k6wstc x1bo0w0s xb3r6kr xuxw1ft xlyipyv`,children:e}),(0,Q.jsx)(`span`,{className:`xvc5jky x2lah0s xvwhms9 x1bo0w0s`,children:n(`parameters.currentBoard`)})]}),(0,Q.jsxs)(`div`,{className:`x98rzlu x2lwn1j xysyzu8 xish69e x1597r2g`,children:[r.error&&(0,Q.jsx)(`p`,{className:`x1ghz6dp x1tamke2 xfifm61 xa7kkou xpt3syw xj0a0fe`,role:`alert`,children:r.error}),[...g].map(([e,t],n)=>(0,Q.jsxs)(`section`,{...{0:{className:`xqy66fx xsag5q8 x1hr3lfm x9f619`},1:{className:`xqy66fx xsag5q8 x1hr3lfm x9f619 x178xt8z x13fuv20 xxu5053`}}[n>0|0],children:[(0,Q.jsx)(`h3`,{className:`x1k6wstc xh88oxj x1bo0w0s xdj266r xwoyzhm`,children:e}),t.map(([e,t])=>(0,Q.jsx)(Bv,{change:t=>a(e,t),control:t,value:r.values[e]},e))]},e))]}),(0,Q.jsxs)(`footer`,{"data-tweaks-footer":``,className:`x1gg8mnh x2lah0s x78zum5 x6s0dn4 x1ed6fcf xifx94n xf7dkkf xf159sx x178xt8z x13fuv20 xxu5053 x9f619`,children:[(0,Q.jsx)(`span`,{role:`status`,...{0:{className:`x98rzlu xeuugli x1k6wstc x1bo0w0s x1cpjm7i x1fhgk32 x1eencha x1k3893l x1rkpvhg x9msap3 x7fx0ki x1yciqh1`},1:{className:`x98rzlu xeuugli x1k6wstc x1bo0w0s x1cpjm7i x1fhgk32 x1eencha x1k3893l x1rkpvhg x9msap3 x1yciqh1 x1kk9t8l`}}[_>0|0],children:_?n(`parameters.changed`,{count:_}):n(`parameters.defaults`)}),(0,Q.jsx)(je,{className:{className:`x1k6wstc xm9j1uf`}.className,disabled:!_,icon:an,size:`small`,type:`text`,onClick:o,children:n(`parameters.reset`)}),r.schema&&(0,Q.jsx)(je,{"aria-haspopup":`dialog`,className:{className:`x1k6wstc xm9j1uf`}.className,icon:Di,ref:c,size:`small`,type:`text`,onClick:()=>{p(`schema`),d(!0)},children:n(`parameters.viewDeclaration`)})]})]}),(0,Q.jsx)(ce,{open:u,onExitComplete:()=>c.current?.focus(),onOpenChange:d,children:(0,Q.jsxs)($e,{children:[(0,Q.jsx)(he,{}),(0,Q.jsx)(K,{"aria-labelledby":`${l}-title`,style:{height:`min(580px, calc(100dvh - 96px))`,overflow:`hidden`},width:`min(650px, calc(100vw - 32px))`,children:(0,Q.jsxs)(`div`,{"data-chrome":`parameter-declaration`,className:[{className:`x78zum5 xdt5ytf xh8yej3 x5yr21d x2lwn1j xo2rkog xqfszdh`}.className,`rt-dialog`].filter(Boolean).join(` `),onKeyDown:e=>{e.stopPropagation(),e.key===`Escape`&&!e.defaultPrevented&&!pr(e.nativeEvent)&&d(!1)},children:[(0,Q.jsxs)(`header`,{className:`x78zum5 x6s0dn4 x883omv x1peatla x17qtykl x2lah0s xso031l x1q0q8m5 xtrfj0v x9f619`,children:[(0,Q.jsx)(Di,{"aria-hidden":!0,size:17,className:`x1bo0w0s x2lah0s`}),(0,Q.jsx)(Ze,{id:`${l}-title`,className:`xif65rj x1s688f x1ghz6dp`,children:n(`parameters.declaration`)}),(0,Q.jsx)(`code`,{className:`xvc5jky x1k6wstc x1bo0w0s xbgkxdc xb3r6kr xlyipyv xuxw1ft`,children:e}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.closeDeclaration`),icon:E,size:`small`,onClick:()=>d(!1)})]}),(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x1c1vhfx x17qtykl x3sc9yq x2lah0s xso031l x1q0q8m5 xtrfj0v x9f619`,children:[(0,Q.jsx)(`div`,{"aria-label":n(`parameters.declaration`),role:`tablist`,className:`x78zum5 x6s0dn4 x1c1vhfx x3sc9yq`,onKeyDown:e=>{if(![`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key))return;e.preventDefault();let t=e.key===`Home`?`schema`:e.key===`End`||f===`schema`?`values`:`schema`;p(t),e.currentTarget.querySelector(`[data-json-tab="${t}"]`)?.focus()},children:[`schema`,`values`].map(e=>(0,Q.jsx)(`button`,{"aria-controls":`${l}-code`,"aria-selected":f===e,"data-json-tab":e,id:`${l}-${e}`,role:`tab`,tabIndex:f===e?0:-1,type:`button`,...{0:{className:`x99dwph xnjsko4 xc342km xlxy82 x1q0q8m5 x16stqrj xjbqb8w x1bo0w0s xjb2p0i x1j6dyjg x1ypdohk`},1:{className:`x99dwph xnjsko4 xc342km xlxy82 x1q0q8m5 xjbqb8w xjb2p0i x1j6dyjg x1ypdohk xo2rkog x1o2qa4v`}}[f===e|0],onClick:()=>p(e),children:n(e===`schema`?`parameters.schema`:`parameters.currentValues`)},e))}),(0,Q.jsx)(lt,{"aria-label":n(`parameters.copy`),className:{className:`xvc5jky`}.className,content:h,size:`small`,title:n(`parameters.copy`)})]}),(0,Q.jsx)(`div`,{className:`x2lwn1j x98rzlu xhyosrm x65v0h xysyzu8 xish69e x1597r2g`,children:(0,Q.jsx)(`pre`,{"aria-label":m,"aria-labelledby":`${l}-${f}`,id:`${l}-code`,role:`tabpanel`,tabIndex:0,className:`x1fao0z8 x1j6dyjg xbs1c6g x126k92a xj0a0fe x1ghz6dp x1bo0w0s`,children:h})}),(0,Q.jsx)(Ne,{className:`x2lah0s x178xt8z x13fuv20 xxu5053 x99dwph x17qtykl x1k6wstc x1bo0w0s x1dbl2gt x1ghz6dp`,children:n(`parameters.sessionOnly`)})]})})]})})]})}function Hv({group:e,left:t,top:n,onSubmit:r,onCancel:i}){let{t:a}=Un();return(0,Q.jsxs)(`div`,{"data-chrome":`reject`,className:`x10l6tqk xk3oba8 xj6ak53 xb3r6kr xixl9f9 x12ilycc x1d5q07e xqfszdh xfifm61 xo2rkog xt0e3qv`,style:{left:t,top:n},children:[(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z x889kno xqin4a2 x1j6dyjg`,children:[(0,Q.jsx)(`span`,{className:`xh4xifv x1s688f`,children:a(`verdict.reject`)}),(0,Q.jsx)(`span`,{className:`x1fao0z8 xddlp02`,children:e}),(0,Q.jsx)(`span`,{className:`xvc5jky xddlp02`,children:a(`verdict.reasonRequired`)})]}),(0,Q.jsx)(fr,{autoFocus:!0,placeholder:a(`verdict.reasonPlaceholder`),onCancel:i,onSubmit:r}),(0,Q.jsx)(`div`,{className:`xqin4a2 x1a8lsjc x1k6wstc x1dbl2gt xc7n51q`,children:a(`verdict.rejectHint`)})]})}var Uv={ghost:{k1xSpc:`xrvj5dj`,kgQiWS:`x1ku5rj1`,kmuXW:`x2lah0s`,kzqmXN:`x187nhsf`,kZKoxP:`xn3w4p2`,kmVPX3:`x1717udv`,kMzoRj:`xc342km`,kaIpWk:`x4pepcl`,kWkggS:`xjbqb8w xr361xe`,kMwMTN:`xo2rkog xiqg2am`,kkrTdU:`x1ypdohk xtgyt42`,k1ekBW:`xuo13n2`,kIyJzY:`xgdialr`,k3aq6I:`x19kf12q`,$$css:!0}},Wv=120,Gv=.5,Kv=110,qv=.4,Jv=.25;function Yv(e,t,n){if(!e||mr())return{done:Promise.resolve(),cancel:()=>{}};let r=e.animate(t,{fill:`forwards`,...n});return{done:r.finished.then(()=>void 0,()=>void 0),cancel:()=>r.cancel()}}function Xv({id:e,board:r,sandbox:i=`allow-scripts`,src:a,siblings:o,origin:s,choice:c,onChoose:l,onOpen:u,onClose:d}){let{viewportRef:f,view:p,place:m,handlers:h}=mv(`hand`),g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null),[b,x]=(0,Z.useState)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(p);C.current=p;let w=(0,Z.useRef)(!1),T=(0,Z.useRef)(null),E=(0,Z.useRef)(!1),D=o.indexOf(e),O=D>0?o[D-1]:void 0,k=D>=0?o[D+1]:void 0,A=()=>({width:f.current?.clientWidth??r.w,height:f.current?.clientHeight??r.h}),j=e=>{let t=C.current,n=f.current?.getBoundingClientRect();if(!e||!n)return null;let i=e.w/(r.w*t.k);return`translate(${e.x-n.left-i*t.x}px, ${e.y-n.top-i*t.y}px) scale(${i})`},M=()=>[v.current,y.current];(0,Z.useLayoutEffect)(()=>{let{width:e,height:t}=A(),n=r.interactive?Math.min(1,e/r.w,t/r.h):Math.min(1,e/r.w),i={k:n,x:(e-r.w*n)/2,y:0};if(m(i),C.current=i,!w.current){w.current=!0;let e=j(s);e&&hr(g.current,[{transform:e},{transform:`none`}],{duration:_r.duration,easing:_r.easing}),hr(_.current,[{opacity:0},{opacity:1}],{duration:200,easing:vr}),M().forEach((e,t)=>void hr(e,[{opacity:0,transform:`translateY(${t?12:-8}px)`},{opacity:1,transform:`none`}],{duration:180,delay:90,easing:vr}))}else if(T.current){let{dir:t,leaving:n}=T.current;T.current=null,n(),hr(g.current,[{transform:`translateX(${t*e*.35}px)`,opacity:0},{transform:`none`,opacity:1}],{duration:_r.duration,easing:_r.easing})}},[e,r.w,r.h,r.interactive,m,f]);let N=()=>{let e=g.current?.style.transform||`none`;x(null),hr(g.current,[{transform:e},{transform:`none`}],{duration:_r.duration,easing:_r.easing}),[_.current,...M()].forEach(e=>void hr(e,[{opacity:Number(e?.style.opacity||1)},{opacity:1}],{duration:200,easing:vr}))},P=async()=>{if(E.current)return;E.current=!0;let e=g.current?.style.transform||`none`,t=j(s),n={duration:100,easing:gr};await Promise.all([t?Yv(g.current,[{transform:e},{transform:t}],{duration:240,easing:gr}).done:Yv(g.current,[{opacity:1},{opacity:0}],n).done,Yv(_.current,[{opacity:Number(_.current?.style.opacity||1)},{opacity:0}],{duration:240,easing:gr}).done,...M().map(e=>Yv(e,[{opacity:Number(e?.style.opacity||1)},{opacity:0}],n).done)]),d()},F=async(e,t)=>{if(!t||E.current)return;E.current=!0;let n=g.current?.style.transform||`none`,r=Yv(g.current,[{transform:n,opacity:1},{transform:`translateX(${-e*A().width}px)`,opacity:0}],{duration:180,easing:gr});await r.done,T.current={dir:e,leaving:r.cancel},E.current=!1,x(null),u(t)},ee=e=>{let t=S.current;if(E.current||t?.mode===`dismiss`||t?.mode===`swipe`||(t&&(t.mode=`pan`),h.onPointerDown(e),t))return;[g.current,_.current,...M()].forEach(e=>e?.getAnimations().forEach(e=>e.cancel()));let n=yr();n.add(e.clientX,e.clientY,performance.now()),S.current={id:e.pointerId,x:e.clientX,y:e.clientY,mode:`pending`,track:n}},te=e=>{let t=S.current;if(!t||t.id!==e.pointerId)return h.onPointerMove(e);t.track.add(e.clientX,e.clientY,performance.now());let n=e.clientX-t.x,i=e.clientY-t.y;if(t.mode===`pending`){let a=br(n,i);if(!a)return;let s=r.w*p.k<=A().width+1;t.mode=a===`y`&&i>0&&p.y>=-.5?`dismiss`:a===`x`&&s&&o.length>1?`swipe`:`pan`,t.mode!==`pan`&&h.onPointerUp(e)}t.mode===`pan`?h.onPointerMove(e):x({axis:t.mode===`dismiss`?`y`:`x`,dx:n,dy:i})},ne=e=>{let t=S.current;if(!t||t.id!==e.pointerId||(S.current=null,t.mode===`pan`||t.mode===`pending`))return h.onPointerUp(e);let n=t.track.velocity(performance.now()),r=e.clientX-t.x,i=e.clientY-t.y;if(t.mode===`dismiss`)return i>Wv&&n.y>-.4||n.y>Gv?void P():N();let a=n.x<-.4?1:n.x>qv?-1:0,o=r<-110?1:r>Kv?-1:0,s=a===0?o:o===0||o===a?a:0,c=s===1?k:s===-1?O:void 0;c&&s?F(s,c):N()},{width:I,height:re}=A(),L,R=1,z=1;if(b?.axis===`y`){let e=Math.max(0,b.dy),t=1-Math.min(e/900,.3);L=`translate(${b.dx*.6+(1-t)*I/2}px, ${e+(1-t)*re/2}px) scale(${t})`,R=1-Math.min(e/420,.85),z=Math.max(0,1-e/Wv)}else b?.axis===`x`&&(L=`translateX(${b.dx>0&&!O||b.dx<0&&!k?b.dx*Jv:b.dx}px)`);return(0,Q.jsxs)(`div`,{"data-phone-board":!0,className:`xixxii4 x10a8y8t x68pp3s x78zum5 xdt5ytf xo2rkog xqfszdh`,children:[(0,Q.jsx)(`div`,{ref:_,className:`x10l6tqk x10a8y8t x184qs1t`,style:b?{opacity:R}:void 0}),(0,Q.jsxs)(`header`,{ref:v,className:`x1n2onr6 x2lah0s xdd8jsf x78zum5 x6s0dn4 x195vfkc x135b78x xv54qhq xso031l x1q0q8m5 xtrfj0v x1rozbrz`,style:b?{opacity:z}:void 0,children:[(0,Q.jsx)(`button`,{"aria-label":n(`phone.backToCanvas`),type:`button`,onClick:()=>void P(),...t(Uv.ghost),children:(0,Q.jsx)(yt,{size:22})}),(0,Q.jsxs)(`span`,{className:`x98rzlu xeuugli x78zum5 xdt5ytf x12mrbbr`,children:[(0,Q.jsx)(`span`,{className:`xb3r6kr xuxw1ft xlyipyv x1jvydc1 x1s688f`,children:r.title??e}),(0,Q.jsx)(`code`,{className:`xb3r6kr xuxw1ft xlyipyv xddlp02 x1fao0z8 x1j6dyjg`,children:e})]}),c?.recommended?(0,Q.jsx)(`span`,{className:`x2lah0s x1xegmmw x1xijbu4 xmkeg23 x1y0btm7 xjuql9v x1sxf85j x12ogdgn xfifm61 xd4r4e8`,children:n(`choices.recommended`)}):null,o.length>1?(0,Q.jsxs)(`span`,{className:`x2lah0s x1bo0w0s x4z9k3i xss6m8b`,children:[D+1,` / `,o.length]}):null]}),(0,Q.jsx)(`div`,{"data-board-body":!0,ref:f,onPointerDown:ee,onPointerMove:te,onPointerUp:ne,onPointerCancel:e=>{let t=S.current;t?.id===e.pointerId&&((t.mode===`dismiss`||t.mode===`swipe`)&&N(),S.current=null),h.onPointerCancel(e)},className:`x1n2onr6 x98rzlu x2lwn1j xb3r6kr x5ve5x3`,children:(0,Q.jsx)(`div`,{"data-board-stage":!0,ref:g,className:`x10l6tqk x10a8y8t x1hj3fc7`,style:L?{transform:L}:void 0,children:(0,Q.jsx)(`div`,{className:`x10l6tqk xu96u03 x13vifvy x1hj3fc7`,style:{width:r.w,height:r.h,transform:`translate(${p.x}px, ${p.y}px) scale(${p.k})`},children:Wn(r)?(0,Q.jsx)(On,{board:r,id:e,src:a,zoom:p.k},e):(0,Q.jsx)(`iframe`,{sandbox:i,src:a,title:r.title??e,className:`x1lliihq xc342km x1l2ivya`,style:{width:r.w,height:r.h,pointerEvents:r.interactive?`auto`:`none`}},e)})})}),c&&l?(0,Q.jsx)(`div`,{className:`x1n2onr6 x2lah0s x1hr3lfm x889kno x10b6aqq x1rozbrz`,style:b?{opacity:z}:void 0,children:(0,Q.jsx)(`button`,{"aria-pressed":c.chosen,"data-choose-board":e,disabled:c.disabled,type:`button`,onClick:l,...{0:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjbqb8w x12ogdgn xjb2p0i x1jvydc1 x1s688f x1ypdohk`},2:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjb2p0i x1jvydc1 x1s688f x1ypdohk x18t3gi2 xm7i3gb`},1:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjbqb8w x12ogdgn xjb2p0i x1jvydc1 x1s688f xbyyjgo xt0e3qv`},3:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjb2p0i x1jvydc1 x1s688f x18t3gi2 xm7i3gb xbyyjgo xt0e3qv`}}[!!c.chosen<<1|!!c.disabled],children:c.chosen?`✓ ${n(`choices.chosenThis`)}`:n(`choices.chooseThis`)})}):null,o.length>1?(0,Q.jsxs)(`div`,{ref:y,className:`x1n2onr6 x2lah0s x78zum5 x6s0dn4 xdqyycr x1iorvi4 xe1blv6 x178xt8z x13fuv20 xxu5053 x1rozbrz`,style:b?{opacity:z}:void 0,children:[(0,Q.jsx)(`button`,{"aria-label":n(`phone.previousBoard`),disabled:!O,type:`button`,onClick:()=>void F(-1,O),...t(Uv.ghost),children:(0,Q.jsx)(yt,{size:20})}),(0,Q.jsx)(`span`,{className:`x98rzlu x78zum5 xl56j7k x17d4w8g`,children:o.map((e,t)=>(0,Q.jsx)(`span`,{"data-dot":t===D?`current`:``,...{0:{className:`x1v4s8kt xols6we x18zih8k x174nbcu xx99ppg x13dflua`},1:{className:`xols6we x18zih8k xx99ppg x13dflua x1xp8n7a x19ckca5`}}[t===D|0]},e))}),(0,Q.jsx)(`button`,{"aria-label":n(`phone.nextBoard`),disabled:!k,type:`button`,onClick:()=>void F(1,k),...t(Uv.ghost),children:(0,Q.jsx)(Tt,{size:20})})]}):null]})}var Zv=e=>({minX:e.x,minY:e.y,maxX:e.x+e.w,maxY:e.y+e.h});function Qv(e,t,n){let r=t.pages[n];if(!r)return[];let a=new Set,o=[];for(let[t,i]of Object.entries(e.groups??{})){let s=r.groups[t],c=i.boards.filter(t=>e.boards[t]?.page===n);if(s&&c.length!==0){for(let e of i.boards)a.add(e);o.push({id:t,title:i.title??t,boards:c,bounds:Zv(s)})}}for(let[t,r]of Object.entries(e.boards))r.page!==n||a.has(t)||o.push({id:t,title:r.title??t,boards:[t],bounds:Zv(r)});o.sort((e,t)=>e.bounds.minY-t.bounds.minY||e.bounds.minX-t.bounds.minX);let s=Ut(e,t,n),c=new Map;for(let e of o){let t=tn(s,e.bounds.minY),n=t?.id??null;c.has(n)||c.set(n,{id:n,title:t?.text??i.t(`common.other`),questions:[]}),c.get(n).questions.push(e)}let l=e=>s.find(t=>t.id===e)?.rect.y??-1/0;return[...c.values()].sort((e,t)=>l(t.id)-l(e.id))}var $v=e=>e.flatMap(e=>e.questions);function ey(e,t){let n=$v(e);if(t){let r=e.find(e=>e.id===t)?.questions[0]??n.find(e=>e.id===t)??n.find(e=>e.boards.includes(t));if(r)return r}return n[0]??null}function ty(e,t,n){let r=e.findIndex(e=>e.id===t);return r===-1?null:e[r+n]??null}var ny=.66,ry=(e,t,n)=>e.id===t?.id?`current`:n[e.id]?.state===`pass`?`pass`:n[e.id]?.state===`reject`?`reject`:`open`;function iy({rounds:e,current:n,previous:r,next:i,pages:a,page:o,onPageChange:s,onPick:c,snap:l,onSnap:u,verdicts:d={},chose:f={}}){let{t:p}=Un(),m=$v(e),h=n?m.findIndex(e=>e.id===n.id):-1;return(0,Q.jsx)(xr,{snap:l,snaps:[78,ny],header:(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x17d4w8g x1xijbu4 xsag5q8`,children:[(0,Q.jsx)(`button`,{"aria-label":p(`questions.previous`),disabled:!r,type:`button`,onClick:()=>r&&c(r),...t(Uv.ghost),children:(0,Q.jsx)(yt,{size:20})}),(0,Q.jsxs)(`span`,{"data-question-bar":!0,className:`x98rzlu xeuugli x78zum5 xdt5ytf xl56j7k x17d4w8g xn3w4p2 xfn1xvj xqfszdh`,children:[(0,Q.jsx)(`span`,{className:`x78zum5 x1pha0wt x17d4w8g xeuugli xif65rj`,children:n?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`code`,{className:`x2lah0s x1fao0z8 x4z9k3i x12ogdgn x1s688f`,children:n.id}),(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xk50ysn`,children:n.title}),f[n.id]&&(0,Q.jsx)(`span`,{className:`x2lah0s x12ogdgn xfifm61 x1s688f`,children:p(`choices.chose`,{id:f[n.id]})}),(0,Q.jsxs)(`span`,{className:`xvc5jky x2lah0s xddlp02 xfifm61 xss6m8b`,children:[h+1,` / `,m.length]})]}):(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xo1l8bm`,children:p(`questions.jumpTo`)})}),(0,Q.jsx)(`span`,{"data-progress":!0,className:`x78zum5 x1ed6fcf`,children:m.map(e=>{let t=ry(e,n,d);return(0,Q.jsx)(`span`,{"data-mark":t,...{0:{className:`x98rzlu xuoj239 x1cum3z5 x15dg6x3`},8:{className:`x98rzlu xuoj239 x1cum3z5 x18t3gi2`},4:{className:`x98rzlu xuoj239 x1cum3z5 xux1nz0`},12:{className:`x98rzlu xuoj239 x1cum3z5 xux1nz0`},2:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},10:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},6:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},14:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},1:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},9:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},5:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},13:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},3:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},11:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},7:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},15:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`}}[(t===`current`)<<3|(t===`pass`)<<2|(t===`reject`)<<1|!!(t===`open`&&f[e.id])]},e.id)})})]}),(0,Q.jsx)(`button`,{"aria-label":p(`questions.next`),disabled:!i,type:`button`,onClick:()=>i&&c(i),...t(Uv.ghost),children:(0,Q.jsx)(Tt,{size:20})})]}),onScrim:()=>u(78),onSnap:u,children:(0,Q.jsxs)(`div`,{className:`xwxc41k xqfszdh`,children:[a.length>1?(0,Q.jsx)(`div`,{className:`x78zum5 x13a6bvl x1hr3lfm x12ulsxz`,children:(0,Q.jsx)(Ft,{page:o,pages:a,onPageChange:s})}):null,e.map(e=>(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{"data-round":!0,className:`xyinxu5 x10b6aqq x1hr3lfm xddlp02 xfifm61`,children:e.title}),e.questions.map(e=>(0,Q.jsxs)(`button`,{"data-question-row":e.id,type:`button`,onClick:()=>c(e),...{0:{className:`x78zum5 x6s0dn4 x167g77z xh8yej3 x1wxaq2x xrii95j x1hr3lfm xc342km x178xt8z x13fuv20 xxu5053 xjbqb8w xo2rkog xqfszdh xif65rj xdpxx8g x1ypdohk`},1:{className:`x78zum5 x6s0dn4 x167g77z xh8yej3 x1wxaq2x xrii95j x1hr3lfm xc342km x178xt8z x13fuv20 xxu5053 xo2rkog xqfszdh xif65rj xdpxx8g x1ypdohk x2fo67v`}}[e.id===n?.id|0],children:[(0,Q.jsx)(`code`,{className:`x2lah0s x1fao0z8 x4z9k3i`,children:e.id}),(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xo1l8bm`,children:e.title}),(0,Q.jsx)(`span`,{className:`xvc5jky x2lah0s xddlp02 xfifm61`,children:p(`questions.boards`,{count:e.boards.length})})]},e.id))]},e.id??``))]})})}var ay={top:16,right:16,bottom:94,left:16},oy=8,sy=new Set,cy=()=>{},ly=[];function uy({id:e,artifact:t,canvas:n,layout:r,warnings:i,pending:a,contentBase:o,boardPort:s,boardPath:c,versions:l,live:u,loaded:d,agent:f,agentSessions:p,comment:m,comments:h,actions:g}){let{viewportRef:_,worldRef:v,overlayRef:y,view:b,viewNow:x,size:S,gesturing:C,fit:w,handlers:T}=mv(`hand`),[E,D]=(0,Z.useState)(null),[O,k]=(0,Z.useState)(78),[A,j]=(0,Z.useState)(null),M=(0,Z.useRef)(null),N=(0,Z.useCallback)((e,t=!1)=>e?(D(e.id),w(e.bounds,ay,{animate:t}),!0):!1,[w]),{page:P,changePage:F}=m_({canvas:n,layout:r,fitPage:(0,Z.useCallback)(e=>{let t=r?.pages[e];return!n||!t?!1:(N(ey(Qv(n,r,e),n.focus?.target))||(D(null),t.bounds&&w(t.bounds,ay)),!0)},[n,r,w,N]),startAtFocus:!0}),ee=(0,Z.useMemo)(()=>n&&r&&P?Qv(n,r,P):[],[n,r,P]),te=(0,Z.useMemo)(()=>$v(ee),[ee]),ne=te.find(e=>e.id===E)??null,I=e=>{N(e,!0),k(78)},re=n?.boards??{},L=(0,Z.useMemo)(()=>Object.entries(n?.boards??{}).filter(([,e])=>e.page===P),[n,P]),R=Object.entries(n?.groups??{}).filter(([,e])=>e.boards.some(e=>re[e]?.page===P)),z=Object.entries(n?.notes??{}).filter(([,e])=>e.page===P),B=(0,Z.useMemo)(()=>new Set(a),[a]),V=A_({contentBase:o,boardPort:s,boardPath:c}),H=(0,Z.useMemo)(()=>V?B:new Set(L.map(([e])=>e)),[V,B,L]),U=w_({boards:L,versions:l,pending:H,view:b,viewport:S,active:sy,gesturing:C}),ie=z_(L,b,S),W=(0,Z.useMemo)(()=>new Set(h?.stale??[]),[h]),G=xv({canvas:n,page:P,threads:h?.comments.threads??ly,stale:W,versions:l}),K=R_({canvas:n,layout:r,page:P,threads:h?.comments.threads??ly,listening:h?.listening===!0,comment:u===!1?void 0:m}),ae=Object.fromEntries(te.flatMap(e=>{let t=K.choiceOf(e.id);return t?.choice&&!t.byRecommendation?[[e.id,t.choice]]:[]})),oe=e=>{let t=_.current.getBoundingClientRect(),n=x(),r=(e.clientX-t.left-n.x)/n.k,i=(e.clientY-t.top-n.y)/n.k;return L.find(([,e])=>r>=e.x&&r<=e.x+e.w&&i>=e.y&&i<=e.y+e.h)?.[0]??null},q=e=>{T.onPointerDown(e);let t=!e.currentTarget.contains(e.target)||e.target.closest(`[data-chrome]`);M.current=M.current||t?null:{pointer:e.pointerId,x:e.clientX,y:e.clientY}},se=e=>{T.onPointerMove(e);let t=M.current;t&&(t.pointer!==e.pointerId||Math.hypot(e.clientX-t.x,e.clientY-t.y)>oy)&&(M.current=null)},ce=e=>{T.onPointerUp(e);let t=M.current;if(M.current=null,t?.pointer!==e.pointerId)return;let n=oe(e);n&&j(n)},le=A?re[A]:void 0,J=_.current?.getBoundingClientRect(),ue=le&&J?{x:J.left+b.x+le.x*b.k,y:J.top+b.y+le.y*b.k,w:le.w*b.k,h:le.h*b.k}:void 0,de=e=>!n?.groups?.[e.id],fe=A?ee.find(e=>e.questions.some(e=>e.boards.includes(A))):void 0,pe=fe?.questions.find(e=>e.boards.includes(A)),Y=A?pe?de(pe)?fe.questions.filter(de).map(e=>e.id):pe.boards:[A]:[];return(0,Q.jsxs)(`div`,{className:`xixxii4 x10a8y8t x78zum5 xdt5ytf x184qs1t`,children:[(0,Q.jsx)(jt,{actions:g,live:u,page:P,pages:n?.pages??[],title:n?.title||e,onPageChange:F}),(0,Q.jsxs)(`div`,{ref:_,className:`x1n2onr6 x98rzlu x2lwn1j xb3r6kr x5ve5x3 x87ps6o xqfszdh xo2rkog`,onPointerDown:q,onPointerMove:se,onPointerUp:ce,onPointerCancel:e=>{T.onPointerCancel(e),M.current=null},children:[n&&r?(0,Q.jsxs)($n,{resetKey:n,children:[(0,Q.jsx)(Fn,{agent:f,agentSessions:p,artifact:t,boardBase:V?.base,boardSandbox:V?.sandbox,boards:L,contentBase:o,culled:ie,frameLoaded:cy,frameRef:U.frameRef,gesturing:C,images:U.images,inspecting:!1,live:u,notes:z,pending:H,phases:U.phases,playing:sy,replays:{},versions:l,view:b,worldRef:v,writing:u?n.writing:void 0}),(0,Q.jsx)(i_,{allBoards:re,boards:L,choices:K.active?K:void 0,contentBase:o,groups:R,overlayRef:y,pending:B,playing:sy,verdicts:G,versions:l,view:b,onExpand:j,onReplay:()=>{},onTogglePlay:j})]}):(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t xrvj5dj x1ku5rj1 xggk2y7 x1bo0w0s xif65rj x2b8uid`,children:d?i[0]??`Waiting for the agent to write canvas.json…`:`Connecting…`}),te.length>0?(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x10a8y8t x1n327nk x47corl`,children:[K.current&&(0,Q.jsx)(_u,{agent:f,bottom:90,canAct:K.canAct,listening:K.listening,summary:K.current,onSubmit:K.submit,onWithdraw:K.withdraw}),(0,Q.jsx)(iy,{chose:ae,current:ne,next:E?ty(te,E,1):null,page:P,pages:n?.pages??[],previous:E?ty(te,E,-1):null,rounds:ee,snap:O,verdicts:G.states,onPageChange:F,onPick:I,onSnap:k})]}):null]}),A&&le?(0,Q.jsx)(Xv,{board:le,choice:K.boardChoice(A),id:A,origin:ue,sandbox:Wn(le)?void 0:V?.sandbox,siblings:Y,src:`${Wn(le)?o:V?.base??o}${le.file}?v=${l[le.file]??0}`,onChoose:()=>K.choose(A),onClose:()=>j(null),onOpen:j}):null]})}function dy(e){return Ar(Sr(`(max-width: 640px)`))?(0,Q.jsx)(uy,{...e}):(0,Q.jsx)(fy,{...e})}function fy({id:e,artifact:t,canvas:r,layout:i,warnings:a,pending:o,contentBase:s,backlinks:c,boardPort:l,boardPath:u,versions:d,live:f,loaded:p,send:m,agent:h,agentSessions:g,comments:_,comment:v,actions:b}){let[x,S]=(0,Z.useState)(`select`),{viewportRef:C,worldRef:w,overlayRef:T,view:E,viewNow:D,gesturing:O,size:k,fit:A,zoomBy:j,zoomTo:M,cursor:N,hand:P,handlers:F,panBy:ee,wheelAt:te,panning:ne,setSpaceHeld:I,place:re}=mv(x),[L,R]=(0,Z.useState)(!1),[z]=(0,Z.useState)(()=>new URLSearchParams(location.search).has(`debug`)),[B,V]=(0,Z.useState)(`open`),H=e=>e&&i?.pages[e]?.bounds||null,{page:U,changePage:ie}=m_({canvas:r,layout:i,fitPage:(0,Z.useCallback)(e=>{let t=i?.pages[e]?.bounds;return t?(A(t),!0):!1},[i,A])});p_({canvas:r,page:U,changePage:ie,viewNow:D,place:re});let[W,G]=(0,Z.useState)(null),[K,ae]=(0,Z.useState)(()=>new Set),[oe,q]=(0,Z.useState)({}),se=F_(e),[ce,le]=(0,Z.useState)(null),J=(0,Z.useRef)(null);(0,Z.useEffect)(()=>le(null),[U,e]);let ue=()=>{le(null),J.current?.focus()},de=(e,t)=>{J.current=t;let n=r?.boards[e],i=C.current;if(ce!==e&&!W&&n&&i){let e=Rv(n,D(),{width:i.clientWidth,height:i.clientHeight});(e.x||e.y)&&ee(e.x,e.y)}le(t=>t===e?null:e)},fe=x===`select`&&!W&&!ne,pe=x===`comment`,Y=nv({enabled:!W&&(x===`select`||pe||L),mode:pe?`comment`:`select`,playing:K,onInput:(e,t)=>{let n=r?.boards[e];if(n){if(t.type===`ryugi:inspect:wheel`){let e=D();te({...t,x:e.x+(n.x+t.x)*e.k,y:e.y+(n.y+t.y)*e.k})}else t.type===`ryugi:inspect:pan`?ee(t.deltaX,t.deltaY):t.type===`ryugi:inspect:drag`?pe?me.onFrameDrag(e,t):fe&&Ve.drag(t.phase,n.x+t.x,n.y+t.y,t.append,t.id?{boardId:e,id:t.id}:void 0):t.code===`Space`?I(t.down):t.down&&ke(t)}}});bv({artifact:t,boards:r?.boards,live:f,inspector:Y,send:m});let me=h_({comments:_,comment:v,page:U,boards:r?.boards??{},inspector:Y}),he=xv({canvas:r,page:U,threads:me.threads,stale:me.stale,versions:d,comment:v}),ge=K_({canvas:r,pending:new Set(o),threads:me.threads,versions:d}),_e=R_({canvas:r,layout:i,page:U,threads:me.threads,listening:_?.listening===!0,comment:f===!1?void 0:v}),ve=he.rejecting?he.origin(he.rejecting):null,ye=e=>{(e!==`comment`||v)&&(e===`comment`&&x===`select`&&me.commentSelection(),e===`comment`&&R(!1),e!==`comment`&&me.close(),S(e))},be=o_({commentTool:x===`comment`,inspectorOpen:L,hasVerify:he.progress.total>0,setMode:e=>{if(e===`comments`)return ye(`comment`);x===`comment`&&ye(`select`),R(e===`inspector`)}}),xe=en(r?.groups??{},r?.boards??{},U).map(([e])=>e),Se=(0,Z.useMemo)(()=>[...me.stale],[me.stale]);Iv({canvas:r,layout:i,fit:e=>A(e),threads:me.threads,stale:Se});let Ce=I_({canvas:r,order:xe,states:he.states,updates:ge.groups,frame:e=>A(e,be.tab?c_:void 0)}),we=e=>{let t=me.threads.find(t=>t.id===e),n=t&&Su(t.anchor,r?.boards??{}),i=C.current,a=D();n&&i&&ee((i.clientWidth-(be.tab?390:0))/2-(a.x+n.x*a.k),i.clientHeight/2-(a.y+n.y*a.k)),me.setOpenId(e)},Te=(0,Z.useCallback)(()=>R(!1),[]);(0,Z.useEffect)(()=>{W&&I(!1)},[W,I]);let Ee=(0,Z.useMemo)(()=>new Set(o),[o]),De=me.threads.filter(e=>e.anchor.page===U&&Du(e)&&e.status===`open`).length,Oe=r?.pages??[];(0,Z.useEffect)(()=>{let t=r?.title||e;document.title=t,Dr({kind:`title`,title:t})},[r?.title,e]),pt(`artboard`);function ke(e){if(`target`in e&&(e.defaultPrevented||pr(e)||e.target?.closest?.(`input, textarea, select, [contenteditable], [data-chrome="parameters"]`)))return;let t=()=>{`preventDefault`in e&&e.preventDefault()},n=e.metaKey||e.ctrlKey;e.key===`Escape`&&pe?me.close()||ye(`select`):e.key===`Escape`?ce?ue():W||Y.selectedTargets.length>0?(G(null),Y.clearSelection(),Ve.reset()):be.tab&&!be.pinned&&be.close():n&&(e.key===`=`||e.key===`+`)?(t(),j(1.25)):n&&e.key===`-`?(t(),j(.8)):e.shiftKey&&e.code===`Digit1`?A(H(U)):e.shiftKey&&e.code===`Digit0`?M(1):!n&&!e.shiftKey&&e.key.toLowerCase()===`v`?(t(),ye(`select`)):!n&&!e.shiftKey&&e.key.toLowerCase()===`h`?(t(),ye(`hand`)):!n&&!e.shiftKey&&!he.rejecting&&(e.key.toLowerCase()===`j`||e.key.toLowerCase()===`k`)?(t(),Ce.step(e.key.toLowerCase()===`j`?1:-1)):!n&&!e.shiftKey&&e.key.toLowerCase()===`c`&&(t(),ye(`comment`))}(0,Z.useEffect)(()=>(window.addEventListener(`keydown`,ke),()=>window.removeEventListener(`keydown`,ke)));let Ae=r?.boards??{},X=(0,Z.useMemo)(()=>Object.entries(r?.boards??{}).filter(([,e])=>e.page===U),[r,U]),Me=Object.entries(r?.groups??{}).filter(([,e])=>e.boards.some(e=>Ae[e]?.page===U)),Ne=Object.entries(r?.notes??{}).filter(([,e])=>e.page===U),Pe=(0,Z.useMemo)(()=>Object.fromEntries(Object.entries(r?.notes??{}).flatMap(([e,t])=>r&&t.kind===`title`?[[e,nr(r,e)]]:[])),[r]),Fe=W?Ae[W]:void 0,Ie=Object.fromEntries(Object.entries(se.states).flatMap(([e,t])=>{let n=Object.keys(t.schema?.controls??{}).length,r=Object.entries(t.schema?.controls??{}).some(([e,n])=>t.values[e]!==n.default);return n||t.error?[[e,r]]:[]})),Le=ce?se.states[ce]:void 0,Re=ce?Ae[ce]:void 0,ze=e=>ce&&Le&&Re&&(Le.schema||Le.error)?(0,Q.jsx)(Vv,{anchor:e?Lv(Re,E):void 0,boardId:ce,state:Le,title:Re.title??ce,onChange:(e,t)=>se.change(ce,e,t),onClose:ue,onReset:()=>se.reset(ce)}):null,Be=Fe?(d[Fe.file]??0)>0&&!Ee.has(W):!1,Ve=rv(X,Y,E.k,[x,W,U,ne]),He=e=>{let t=C.current.getBoundingClientRect(),n=D();return{x:(e.clientX-t.left-n.x)/n.k,y:(e.clientY-t.top-n.y)/n.k}},Ue=Ve.marquee,We=(0,Z.useMemo)(()=>new Set([...K,...[W,ce].filter(e=>!!e),...Y.selectedTargets.map(e=>e.boardId),...Object.entries(Y.frames).filter(([,e])=>e.tweaks.length>0).map(([e])=>e),...Ue?X.filter(([,e])=>e.x<Ue.x+Ue.width&&e.x+e.w>Ue.x&&e.y<Ue.y+Ue.height&&e.y+e.h>Ue.y).map(([e])=>e):[]]),[K,W,ce,Y.selectedTargets,Y.frames,Ue,X]),Ge=A_({contentBase:s,boardPort:l,boardPath:u}),Ke=(0,Z.useMemo)(()=>Ge?Ee:new Set(X.map(([e])=>e)),[Ge,Ee,X]),qe=w_({boards:X,versions:d,pending:Ke,view:E,viewport:k,active:We,gesturing:O}),Je=z_(X,E,k),Ye=(0,Z.useMemo)(()=>{let e=new Map;return t=>(e.has(t)||e.set(t,e=>{se.refFor(t)(e),Y.refFor(t)(e),qe.frameRef(t)(e)}),e.get(t))},[se.refFor,Y.refFor,qe.frameRef]),Xe=(0,Z.useCallback)(e=>{se.loaded(e),Y.loaded(e)},[se.loaded,Y.loaded]);return(0,Q.jsx)(`div`,{className:`x78zum5 xh8yej3 x5yr21d xb3r6kr`,children:(0,Q.jsxs)(`div`,{ref:C,className:`x98rzlu xeuugli x1n2onr6 xh8yej3 x5yr21d xb3r6kr x5ve5x3 x87ps6o x184qs1t xqfszdh xo2rkog`,style:{cursor:N},onClickCapture:e=>{!W&&(pe||ne)&&e.target.closest(`[data-video-surface]`)&&e.stopPropagation()},onPointerCancel:e=>{F.onPointerCancel(e),Ve.reset()},onPointerDown:e=>{if(F.onPointerDown(e),pe&&!ne&&!W&&e.button===0&&e.pointerType!==`touch`&&e.currentTarget.contains(e.target)&&!e.target.closest(`[data-chrome]`)&&(e.preventDefault(),me.onCanvasClick(He(e))),!fe||e.pointerType===`touch`||e.button!==0||!e.currentTarget.contains(e.target)||e.target.closest(`[data-chrome], [data-video-surface]`))return;let t=He(e);e.currentTarget.setPointerCapture(e.pointerId),Ve.drag(`start`,t.x,t.y,e.shiftKey||e.metaKey||e.ctrlKey)},onPointerMove:e=>{if(F.onPointerMove(e),Ve.dragging()){e.buttons===1&&e.currentTarget.setPointerCapture(e.pointerId);let t=He(e);Ve.drag(`move`,t.x,t.y)}},onPointerUp:e=>{if(F.onPointerUp(e),Ve.dragging()){let t=He(e);Ve.drag(`end`,t.x,t.y)}},children:[(0,Q.jsx)(cd,{hand:P,viewport:C}),z&&(0,Q.jsx)(Gu,{counts:qe.counts,culled:Je.size,gesturing:O}),r&&i&&(0,Q.jsxs)($n,{resetKey:r,children:[(0,Q.jsx)(Fn,{agent:h,agentSessions:g,artifact:t,boardBase:Ge?.base,boardSandbox:Ge?.sandbox,boards:X,contentBase:s,culled:Je,frameLoaded:Xe,frameRef:Ye,gesturing:O,images:qe.images,inspecting:fe||pe&&!W&&!ne,live:f,notes:Ne,pending:Ke,phases:qe.phases,playing:K,replays:oe,titleRooms:Pe,updated:ge.boards,versions:d,view:E,worldRef:w,writing:f?r.writing:void 0,onExpand:G}),(0,Q.jsx)(i_,{activeParameters:ce,allBoards:Ae,artboard:e,backlinks:c,boards:X,choices:_e.active?_e:void 0,contentBase:s,groups:Me,overlayRef:T,parameters:Ie,pending:Ee,playing:K,updates:ge.groups,verdicts:he,versions:d,view:E,onExpand:G,onReplay:e=>q(t=>({...t,[e]:(t[e]??0)+1})),onToggleParameters:de,onTogglePlay:e=>ae(t=>jn(t,e))}),he.rejecting&&ve&&(0,Q.jsx)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y xk3oba8`,children:(0,Q.jsx)(Hv,{group:he.rejecting,left:E.x+ve.x*E.k,top:E.y+ve.y*E.k+8,onCancel:he.cancelReject,onSubmit:he.submitReject})}),pe&&(0,Q.jsx)(Vu,{actions:me.actions,agent:h,boards:Ae,draft:me.draft,height:k.height,numbers:me.numbers,openId:me.openId,overlayRef:T,page:U,showResolved:B===`all`,stale:me.stale,threads:me.threads,view:E,width:(C.current?.clientWidth??0)-(be.tab?390:0),onCancelDraft:me.cancelDraft,onOpen:me.setOpenId,onSubmit:me.submit})]}),(0,Q.jsxs)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y`,children:[(fe||pe)&&!Ve.marquee&&Y.hover&&Ae[Y.hover.boardId]&&(0,Q.jsx)(Sv,{board:Ae[Y.hover.boardId],rect:Y.hover.rect,view:E,nodeId:Y.hover.id?`${Y.hover.boardId}#${Y.hover.id}`:void 0}),!W&&Y.targets.map(e=>Ae[e.boardId]&&(0,Q.jsx)(Sv,{selected:!0,board:Ae[e.boardId],name:e.name,rect:e.rect,view:E},`${e.boardId}:${e.id}`))]}),Ve.selecting&&(0,Q.jsx)(`div`,{"aria-hidden":`true`,"data-selection-capture":``,className:`x10l6tqk x13vifvy x3m8u43 x1ey2m1c xu96u03 x1w0boku x5ve5x3`}),Ve.marquee&&(0,Q.jsx)(`div`,{"aria-hidden":`true`,"data-marquee":``,className:`x10l6tqk x47corl x1w0boku x9f619 xmkeg23 x1y0btm7 x5kefyr xbzdn4w`,style:{left:E.x+Ve.marquee.x*E.k,top:E.y+Ve.marquee.y*E.k,width:Ve.marquee.width*E.k,height:Ve.marquee.height*E.k}}),(!r||!i)&&(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t x78zum5 x6s0dn4 xl56j7k xggk2y7 x1bo0w0s xif65rj x2b8uid x47corl`,children:p?a[0]??n(`chrome.waitingCanvas`):n(`common.connecting`)}),_e.current&&!W&&(0,Q.jsx)(_u,{agent:h,canAct:_e.canAct,listening:_e.listening,summary:_e.current,onSubmit:_e.submit,onWithdraw:_e.withdraw}),(0,Q.jsx)(d_,{commenting:!!v,page:U,pages:Oe,tool:x,onPageChange:ie,onToolChange:ye}),(0,Q.jsx)(f_,{actions:b,inspectorOpen:L,live:f,verify:he.progress,verifyOpen:be.tab===`verify`,warnings:a,zoom:E.k,onActualSize:()=>M(1),onFit:()=>A(H(U)),onToggleInspector:()=>be.toggle(`inspector`),onToggleVerify:()=>be.toggle(`verify`),onZoomIn:()=>j(1.25),onZoomOut:()=>j(.8)}),(0,Q.jsx)(l_,{available:k.height,pinned:be.pinned,tab:be.tab,counts:{comments:De,...he.progress.total>0?{verify:`${he.progress.passed}/${he.progress.total}`}:{}},panes:{verify:(0,Q.jsx)(Pu,{groups:r?.groups??{},nav:Ce,order:xe,states:he.states,updates:ge.groups}),comments:(0,Q.jsx)(Au,{embedded:!0,numbers:me.numbers,openId:me.openId,page:U,stale:me.stale,tab:B,threads:me.threads,onClose:be.close,onOpen:we,onTab:V}),inspector:(0,Q.jsx)(Pv,{embedded:!0,boards:X,change:Y.change,enabled:!W,frames:Y.frames,hoverNode:Y.hoverNode,playing:K,reset:Y.reset,select:Y.select,selection:Y.selection,targets:Y.targets,onClose:Te})},onPin:be.togglePin,onTab:be.show}),!W&&ce&&(0,Q.jsx)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y x52sccv`,children:ze(!0)}),W&&Fe&&Be&&(0,Q.jsx)(Ku,{board:Fe,frameRef:se.refFor(W,`expanded`),id:W,interactive:Fe.interactive===!0,parameters:ce===W?ze(!1):void 0,sandbox:Wn(Fe)?void 0:Ge?.sandbox,src:`${Wn(Fe)?s:Ge?.base??s}${Fe.file}?v=${d[Fe.file]??0}`,parameterAction:Ie[W]===void 0?void 0:(0,Q.jsx)(y,{config:{"aria-hidden":!0},children:(0,Q.jsx)(je,{"aria-expanded":ce===W,icon:Gt,size:`small`,type:`text`,onClick:e=>de(W,e.currentTarget),children:n(`chrome.parameters`)})}),onClose:()=>G(null),onFrameLoad:()=>se.loaded(W,`expanded`)})]})})}function py({id:e}){let t=hu(zr(`artboard`,e));return qn(t.loaded),(0,Q.jsx)(dy,{artifact:`artboard/${e}`,id:e,...t,actions:(0,Q.jsx)(ut,{artifact:`artboard/${e}`})})}export{py as ArtboardLayout};
11
+ `,u)}return o===0?e:a+e.slice(o)}function cm(e,t,n){let r=new Int32Array(t.length),i=n===`blink`?-1:13,a=n===`gecko`?12:-1,o=0;for(let n=0;n<t.length;n++){let s=t.charCodeAt(n);for(;o<e.length;){let t=e.charCodeAt(o);if(t===s||$p(t)&&(s===32?t!==i&&t!==a:s===10))break;o++}r[n]=o++,s===10&&e.charCodeAt(o-1)===13&&e.charCodeAt(o)===10&&o++}return r}function lm(e,t,n,r,i){let a=r.sourceOffsets=cm(e,t,i),{starts:o,atomic:s}=r;for(let e=0,r=0;e<o.length;e++){for(;r<t.length&&a[r]<o[e];)r++;if(r===t.length)break;n[r]=n[r]|16,s[e]&&a[r]===o[e]&&(n[r]=n[r]|1,n[r+1]=n[r+1]|17)}}function um(e,t,n,r,i){let{items:a,starts:o,atomic:s}=t,c=new Uint8Array(e.length+1),l=-1;for(let t=0;t<o.length;t++){let u=o[t],d=t+1<o.length?o[t+1]:e.length;if(u===d)continue;let f=e.charCodeAt(u);if(d-u>1||f===8232||f===8233){let e=Pf(a[t].text,n,r,i);for(let t=1;t<=d-u;t++)c[u+t]=e[t]}if(l>=0&&!s[t]&&!s[l]){let o=e.charCodeAt(u-1);(!n&&(f!==13&&$p(f)||o!==13&&$p(o))||Ff(a[l].text,a[t].text,r,i))&&(c[u]=c[u]|1)}l=t}return c}var dm=`.Zapfino.Menlo.Kefa III.Geeza Pro.Snell Roundhand.Kohinoor Bangla.Kokonor|Kailasa.Kailasa.Galvji.Noto Sans Tagalog.Kohinoor Gujarati.Lucida Grande|Arial Hebrew.Apple Chancery|Arial Hebrew.Courier New.ITF Devanagari|Kohinoor Devanagari.Kohinoor Devanagari.Noto Sans Armenian.Euphemia UCAS.Hiragino Mincho ProN.Hiragino Sans.Helvetica.Khmer MN|Khmer Sangam MN.Khmer Sangam MN.Kannada MN|Noto Sans Kannada.Noto Sans Kannada.AppleMyungjo|Apple SD Gothic Neo.Apple SD Gothic Neo.Noto Nastaliq Urdu.Lao MN|Lao Sangam MN.Lao Sangam MN.Malayalam MN|Malayalam Sangam MN.Malayalam Sangam MN.Noto Serif Myanmar|Noto Sans Myanmar.Noto Sans Myanmar.Oriya MN|Noto Sans Oriya.Noto Sans Oriya.Mukta Mahee.Sinhala MN|Sinhala Sangam MN.Sinhala Sangam MN.Tamil Sangam MN.Kohinoor Telugu.Thonburi.Songti TC|PingFang HK.PingFang HK.Songti SC|PingFang SC.PingFang SC.Songti TC|PingFang TC.PingFang TC.Songti TC|PingFang MO.PingFang MO`.split(`.`),fm={"":[0,0,0,1,2],am:[3,3,3,3,2],ar:[4,4,4,4,2],bg:[0,0,5,5,2],bn:[6,6,6,6,2],bo:[7,8,7,7,2],chr:[9,9,9,9,2],ckb:[4,4,4,4,2],fa:[4,4,4,4,2],fil:[10,10,10,10,2],gu:[11,11,11,11,2],he:[0,12,13,0,14],hi:[15,16,16,16,2],hy:[17,17,17,17,2],iu:[18,18,18,18,2],ja:[19,20,19,19,2],ka:[21,0,21,21,2],km:[22,23,22,22,2],kn:[24,25,24,24,2],ko:[26,27,26,26,2],ks:[28,28,28,28,2],lo:[29,30,29,29,2],lrc:[4,4,4,4,2],ml:[31,32,31,31,2],my:[33,34,33,33,2],mzn:[4,4,4,4,2],or:[35,36,35,35,2],pa:[37,37,37,37,2],ps:[4,4,4,4,2],ro:[0,0,5,5,2],ru:[0,0,5,5,2],sd:[4,4,4,4,2],si:[38,39,38,38,2],sr:[0,0,5,5,2],ta:[40,40,40,40,2],te:[41,41,41,41,2],th:[42,42,42,42,2],tr:[0,0,5,5,2],ug:[4,4,4,4,2],uk:[0,0,5,5,2],ur:[28,28,28,28,2],yi:[0,12,13,0,14],yue:[43,44,43,43,2],zh:[45,46,45,45,2],"kk-arab":[4,4,4,4,2],"ks-arab":[4,4,4,4,2],"ks-deva":[0,0,0,1,2],"ms-arab":[4,4,4,4,2],"pa-arab":[4,4,4,4,2],"sd-deva":[0,0,0,1,2],"ur-arab":[4,4,4,4,2],"uz-arab":[4,4,4,4,2],"yue-hans":[45,46,45,45,2],"zh-hant":[47,48,47,47,2],"zh-hk":[43,44,43,43,2],"zh-mo":[49,50,49,49,2],"zh-tw":[47,48,47,47,2],"pa-aran-pk":[28,28,28,28,2],"yue-hant-mo":[49,50,49,49,2],"zh-hant-hk":[43,44,43,43,2],"zh-hant-mo":[49,50,49,49,2]},pm=null,mm=null,hm=96,gm=`0.000001px`,_m=1<<18,vm=/\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{Emoji}\uFE0F/u,ym=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,bm=[`serif`,`sans-serif`,`cursive`,`fantasy`,`monospace`],xm=/("[^"]*"|'[^']*')|(^|,)(\s*)(serif|sans-serif|cursive|fantasy|monospace)(?=\s*(?:,|$))/gi,Sm=/\dpx(?:\s*\/\s*\S+)?\s+/,Cm=/(?:"[^"]*"|'[^']*'|[^,])+/g;function wm(e,t){let n=e.toLowerCase().replaceAll(`_`,`-`),r=null;for(let e=n;r===null;)if(` aa ab ady af ak am ar as ast av ay az ba be bg bi bn bo bs ca ce ceb ch chk cs cy da de dv dz ee efi el en es et eu fa fi fil fj fo fr fur fy ga gaa gd gil gl gn gsw gu ha haw he hi hil ho hr ht hu hy id ig ii ilo inh is it iu ja jv ka kaj kam kbd kha kk kl km kn ko kok kos kpe krc ks ku kum ky la lah lb lez ln lo lt lv mai mdf mg mh mi mk ml mn mr ms mt my myv na nb ne niu nl nn nr nso ny oc om or os pa pag pap pau pl pon ps pt qu rm rn ro ru rw sa sah sat sd se sg si sid sk sl sm so sq sr ss st su sv sw ta te tet tg th ti tig tk tkl tl tn to tpi tr trv ts tt tvl tw ty tyv udm ug uk und ur uz ve vi wal war wo xh yap yo za zh zh-hk zh-tw zu `.includes(` ${e} `))r=e===`zh`;else{let t=e.lastIndexOf(`-`);if(t<0||e.endsWith(`-zyyy`))return null;` arab armn bali batk beng blis bopo brah brai bugi buhd cans cham cher cirt copt cprt cyrl cyrs deva dsrt egyd egyh egyp ethi geok geor glag goth grek gujr guru hang hani hano hans hant hebr hira hmng hrkt hung inds ital java jpan kali kana khar khmr knda kore laoo latf latg latn lepc limb lina linb mand maya mero mlym mong mymr nkoo ogam orkh orya osma perm phag phnx plrd qaai roro runr sara shaw sinh sylo syrc syre syrj syrn tagb tale talu taml telu teng tfng tglg thaa thai tibt ugar vaii visp xpeo xsux yiii zxxx `.includes(` ${e.slice(t+1)} `)&&(r=e.endsWith(`-hani`)),e=e.slice(0,t)}r&&(n=`zh-hans`);let i=fm[n];for(;i===void 0;)n=n.slice(0,Math.max(0,n.lastIndexOf(`-`))),i=fm[n];let a=[];for(let e=0;e<i.length;e++){let n=i.indexOf(i[e]);if(n<e){a.push(a[n]);continue}let r=dm[i[e]],o=r.indexOf(`|`),s=o<0?r:Em(t,r.slice(0,o))?r.slice(0,o):r.slice(o+1);a.push(s===``?``:`"${s}"`)}return a}var Tm=`Hamburg 한中 नम សួ ನಮ ສະ നമ မင ନମ ආය བཀ`;function Em(e,t){for(let n of[`monospace`,`serif`]){e.font=`16px ${n}`;let r=e.measureText(Tm).width;if(e.font=`16px "${t}", ${n}`,e.measureText(Tm).width!==r)return!0}return!1}function Dm(e,t){let n=Sm.exec(e);if(n===null)return e;let r=n.index+n[0].length;return e.slice(0,r)+e.slice(r).replace(xm,(e,n,r,i,a)=>{let o=n===void 0?t[bm.indexOf(a.toLowerCase())]:``;return o===``?e:r+i+o})}function Om(e){if(e.hyphenText!==null)return e.hyphenText;let t=e.canvasFont,n=Sm.exec(t),r=`-`;if(n!==null&&Lm(`‐`,e).width!==Lm(`-`,e).width){let i=wh(e),a=n.index+n[0].length,o=t.slice(0,a),s=t.slice(a).match(Cm)??[],c=o+`monospace`,l=o+`serif`;if(km(i,c,` `)!==km(i,l,` `)&&km(i,c,`‐`)!==km(i,l,`‐`))for(let e=0;e<s.length;e++){let t=`${o}${s[e]}, monospace`,n=`${o}${s[e]}, serif`;if(km(i,t,` `)===km(i,n,` `)){km(i,t,`‐`)===km(i,n,`‐`)&&(r=`‐`);break}}i.font=t}return e.hyphenText=r,r}function km(e,t,n){return e.font=t,e.measureText(n).width}function Am(e){pm!==null&&pm.segments>_m&&Dh();let t=null;if(typeof document<`u`){let e=document.documentElement?.lang;typeof e==`string`&&(t=e)}return t===``&&e.laysOutUnderDefaultLocale?$d():t}var jm=(1<<30)-1;function Mm(e,t){let n=e??0;if(!Number.isFinite(n))throw RangeError(`letterSpacing must be a finite number of CSS px, not ${n}`);if(!t.letterSpacingInAppUnits)return n;let r=Math.fround(Math.fround(n)*60);return Math.min(Math.round(Math.abs(r)),jm)*Math.sign(r)/60}function Nm(e){let t=[];for(let n=0;n<e;n++)t.push(0);return t}var Pm=2**20,Fm=[];function Im(e,t){if(!t.state.takesLetterSpacing)return Fm;let n=new Int32Array(e.length),r=Bf(ih().graphemeTable,e,0,e.length,n),i=r<=hm,a=t.glyphCounts,o=null,s=Fm;try{let c=0;for(let l=0,u=0;l<r;u=n[l++]){let d=e.slice(i?0:u,n[l]),f=a.get(d);f===void 0&&(o===null&&(o=wh(t),o.letterSpacing=`${Pm}px`),f=Math.round(o.measureText(d).width/Pm),a.set(d,f));let p=f-(i?c:0)-1;c=f,(p!==0||s.length!==0)&&(s.length===0&&(s=Nm(r)),s[l]=p)}}finally{o!==null&&(o.letterSpacing=t.letterSpacing)}return s}function Lm(e,t){return t.metrics.get(e)??zm(t.metrics,e,e,t)}function Rm(e,t){return t.followingSpaceMetrics.get(e)??zm(t.followingSpaceMetrics,e,e+` `,t)}function zm(e,t,n,r){let i={width:wh(r).measureText(n).width,emojiCount:-1,fit:null,spaceKerning:null,extraSpacings:null};return e.set(t,i),r.state.segments++,!r.measuredKana&&Bm.test(t)&&(r.measuredKana=!0),i}var Bm=/[\u3041-\u30FF]/,Vm=/[\u3041-\u30FF]{2}/,Hm=191,Um={after:0,before:0};function Wm(e){return e>=12353&&e<=12438||e>=12449&&e<=12538||e>=13312&&e<=40959||e>=63744&&e<=64255}function Gm(e){return Ad(e,1)||(e&63488)==55296||Wm(e)||e>=44032&&e<=55203}function Km(e){if(e.spaceKerning===void 0){let t=wh(e),n=`\u2028`;for(let e=33;e<=126;e++)n+=String.fromCharCode(e)+`\u2028`;let r=t.measureText(n).width;t.fontKerning=`none`;let i=t.measureText(n).width;t.fontKerning=`auto`,e.spaceKerning=r!==i&&t.measureText(`\u2028`).width===Lm(` `,e).width?new Map:null}return e.spaceKerning}function qm(e,t,n,r){let i=e<<1|!!t,a=r.get(i);if(a===void 0){if(a=0,!Gm(e)){let r=String.fromCharCode(e),i=wh(n).measureText(t?`\u2028`+r:r+`\u2028`).width;a=i-Lm(r,n).width-Lm(` `,n).width,Math.abs(a)<=i/4194304&&(a=0)}r.set(i,a)}return a}function Jm(e,t,n,r){let i=0,a=e.length-1;for(;i<a&&Ad(e.charCodeAt(i),4);)i++;for(;a>i&&Ad(e.charCodeAt(a),4);)a--;let o=i<a&&Ad(e.charCodeAt(i+1),1)?0:qm(e.charCodeAt(i),!0,n,r),s=qm(e.charCodeAt(a),!1,n,r);return t.spaceKerning=s===0&&o===0?Um:{after:s,before:o}}function Ym(e){return e.spaceWidth??=Lm(` `,e).width}var Xm=`プダグタノムブイメえずぺ`;function Zm(e){let t=e.state;return t.wholeRunContext===null&&(t.wholeRunContext=Th(t.language),t.wholeRunContext.textRendering=`optimizeLegibility`),t.wholeRunFont!==e.kanaFont&&(t.wholeRunContext.font=t.wholeRunFont=e.kanaFont),t.wholeRunContext}function Qm(e,t){let n=e.width/4194304;return Math.abs(e.width-t.width)<=n&&Math.abs(e.actualBoundingBoxLeft-t.actualBoundingBoxLeft)<=n&&Math.abs(e.actualBoundingBoxRight-t.actualBoundingBoxRight)<=n}function $m(e){if(e.kanaKerning===void 0){e.kanaKerning=null;let t=e.canvasFont,n=Sm.exec(t),r=n===null?0:n.index+n[0].length,i=n===null?null:t.slice(r).match(Cm),a=i===null?1:i.length,o=null;for(let n=0;n<a;n++){let a=n===0?t:t.slice(0,r)+i.slice(n).join(`,`);e.kanaFont=a;let s=Zm(e),c=s.measureText(Xm).width;s.fontKerning=`none`;let l=s.measureText(Xm);if(s.fontKerning=`auto`,o===null)o=l;else if(!Qm(o,l))break;if(c!==l.width){if(n>0){let n=``;for(let e=12353;e<=12438;e++)n+=String.fromCharCode(e,12290);let r=s.measureText(n).width;e.kanaFont=t;let i=Zm(e),o=i.measureText(n).width;i.fontKerning=`none`;let c=i.measureText(n).width;if(i.fontKerning=`auto`,o===c||Math.abs(r-o)>o/4194304)break;e.kanaFont=a}e.kanaKerning=new Float64Array(36481).fill(NaN);break}}e.kanaKerning===null&&(e.kanaFont=t)}return e.kanaKerning}function eh(e,t,n,r,i){let a=e.charCodeAt(n);if(a<12353||a>12543)return 0;let o=e.charCodeAt(n-1);if(o<12353||o>12543)return 0;if(n>t){if(!Wm(a))return 0;let r=n-1,i=o;for(;i>=12353&&i<=12543&&!Wm(i);){if(r===t)return 0;i=e.charCodeAt(--r)}if(i>=11904&&!Wm(i))return 0}let s=(o-12353)*Hm+a-12353,c=i[s];return Number.isNaN(c)?i[s]=th(e.slice(n-1,n+1),r):c}function th(e,t){let n=Zm(t).measureText(e).width,r=n-Lm(e[0],t).width-Lm(e[1],t).width;return Math.abs(r)<=n/4194304?0:r}function nh(e,t,n){return gh(e,Lm(e,t),t,n)}function rh(e){return e.includes(`Firefox/`)?`gecko`:e.includes(`AppleWebKit/537.36`)?e.includes(`Chrome/`)||e.includes(`Chromium/`)?`blink`:null:e.includes(`AppleWebKit/`)?`webkit`:null}function ih(){return mm??=ah()}function ah(){let e=rh(typeof navigator>`u`?``:navigator.userAgent??``)??`blink`;return{lineBreakScan:e,graphemeTable:e===`webkit`?`apple/char`:e===`gecko`?`gecko/char`:`chromium/char`,lineFitEpsilon:e===`webkit`?1/64:.005,cutWordFit:e===`blink`?`reshaped-lines`:`segment-prefixes`,prefixFitMinWidth:e===`webkit`?0:80,cutWordKeepsLigatures:e===`gecko`,measureTextWithFollowingSpace:e===`webkit`,kernsAcrossCanvasWords:e===`blink`,letterSpaceDiscretionaryHyphen:e!==`blink`,letterSpacingInAppUnits:e===`gecko`,canvasLetterSpacingDropsLigatures:e!==`webkit`,unspacedCursive:e===`blink`?`run`:e===`gecko`?`cluster`:`none`,letterSpacesGlyphs:e===`webkit`,unfitHyphenRetreat:e===`blink`?`reduced-width`:e===`gecko`?`full-width`:`full-width-or-first`,hyphenFromPrimaryFont:e!==`gecko`,letterSpaceTabStops:e!==`webkit`,letterSpaceTabs:e===`webkit`,tabMinimumCharacter:e===`gecko`?`0`:` `,tabsInAppUnits:e===`gecko`,hangTabs:e!==`gecko`,zeroWidthGlueTakesLine:e!==`gecko`,hidesControlCharacters:e===`gecko`,hanKerning:e===`blink`,hangsIdeographicSpace:e!==`webkit`,laysOutUnderDefaultLocale:e===`blink`,namesGenericFamiliesByLanguage:e===`webkit`&&!/^(?:Linux|Win32|Haiku|$)/.test(navigator.platform),hardBreakItemRetreat:e===`blink`?`item`:e===`webkit`?`fit`:`last-grapheme`,paddedOpeningFit:e===`blink`?`start`:e===`webkit`?`placed`:`both`,emptyAtomicAlwaysFits:e===`gecko`,hangsSpacesPerTextFrame:e===`gecko`,testsHyphenBeforeAtomic:e!==`webkit`,transformsSegmentBreaksAcrossItems:e===`blink`}}function oh(e){let t=e.match(/(?:^|\D)(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function sh(e){return ym.test(e)}function ch(e,t){let n=t.emojiCorrection;if(n!==null)return n;let r=oh(e),i=t.emojiWidth!==0,a=t.emojiWidth=wh(t).measureText(`😀`).width;if(n=0,a>r+.5&&typeof document<`u`){let r=lh(e);if(Number.isNaN(r))return 0;if(a-r>.5&&(n=a-r,i)){for(let e of t.metrics.values())e.fit=null;for(let e of t.followingSpaceMetrics.values())e.fit=null}}return t.emojiCorrection=n,n}function lh(e){let t=document.body;if(t===null&&document.head===null)return NaN;let n=document.createElement(`span`);n.style.cssText=`all:initial!important;-webkit-locale:inherit!important;display:inline-block!important;visibility:hidden!important;position:absolute!important`,n.style.setProperty(`font`,e,`important`),n.textContent=`😀`;let r=t===null?NaN:uh(t,n);return Number.isNaN(r)&&(r=uh(document.documentElement,n)),r}function uh(e,t){e.appendChild(t);let n=t.getBoundingClientRect().width,r=parseFloat(getComputedStyle(t).width);return e.removeChild(t),Math.abs(n-r)<=r*1e-5?n:r}var dh=2**-20,fh=2**-17;function ph(e,t){let n=Lm(e,t).width,r=Math.round(n/t.emojiWidth);return Math.abs(n-r*t.emojiWidth)<=n*dh?r:0}var mh=/[\p{Extended_Pictographic}\p{Emoji_Component}\uFE0E]+/gu;function hh(e,t){let n=new Int32Array(e.length),r=Bf(ih().graphemeTable,e,0,e.length,n),i=0;for(let a=0,o=0;a<r;o=n[a++]){let r=e.slice(o,n[a]);if(!vm.test(r))continue;let s=r.match(mh);for(let e=0;e<s.length;e++)i+=ph(s[e],t)}return i}function gh(e,t,n,r){return r===0?t.width:(t.emojiCount<0&&(t.emojiCount=hh(e,n)),t.width-t.emojiCount*r)}function _h(e,t,n,r,i,a=null){if(t.fit!==null&&t.fit.mode===i)return t.fit;let o=ih(),s=new Int32Array(e.length),c=Bf(o.graphemeTable,e,0,e.length,s);if(c<=1)return t.fit={mode:i,advances:null,lineStartExtras:null};let l,u=null,d=!1;if(i===`reshaped-lines`){let i=gh(e,t,n,r)-(a??0),o=xh(e,s,c,`sum-graphemes`,t,n,r,a);if(l=o,!bh(o,i)){l=xh(e,s,c,`pair-context`,t,n,r,a),d=c>hm||bh(l,i),d||(l=xh(e,s,c,`segment-prefixes`,t,n,r,a)),u=[0];for(let e=1;e<c;e++)u.push(o[e]-l[e])}}else{let u=i===`segment-prefixes`&&c<=hm;d=i!==`sum-graphemes`&&!u,l=xh(e,s,c,d?`pair-context`:i,t,n,r,a),u&&o.cutWordKeepsLigatures&&vh(e,s,l,n,r)}if(o.kernsAcrossCanvasWords&&n.kanaKerning!==null&&Vm.test(e)){let t=$m(n);if(t!==null)for(let r=1;r<c;r++){let i=eh(e,d&&r>1?s[r-2]:0,s[r-1],n,t);i>0?l[r-1]=l[r-1]+i:i<0&&(l[r]=l[r]+i,u??=Nm(c),u[r]=u[r]-i)}}return t.fit={mode:i,advances:l,lineStartExtras:u}}function vh(e,t,n,r,i){if(!r.state.shapesLetterSpaced||r.letterSpacing!==`0px`)return;let a=0;for(let o=1;o<n.length;o++){let s=t[o-1],c=nh(e.slice(s,t[o]),r,i);Math.round((n[o]-c)*60)!==0&&yh(e.slice(o===1?0:t[o-2],t[o]),r)?(n[a]=n[a]+n[o],n[o]=0):a=o}}function yh(e,t){let n=t.ligaturePairs.get(e);if(n===void 0){let r=wh(t),i=Lm(e,t).width;r.letterSpacing=gm,n=r.measureText(e).width!==i,r.letterSpacing=`0px`,t.ligaturePairs.set(e,n)}return n}function bh(e,t){let n=0;for(let t=0;t<e.length;t++)n+=e[t];return Math.abs(n-t)<=t*fh}function xh(e,t,n,r,i,a,o,s){let c=r===`segment-prefixes`,l=r===`pair-context`,u=[],d=0,f=0;for(let r=0,p=0;r<n;p=t[r++]){let m=t[r];if(c){let t=s!==null&&r===n-1?gh(e,i,a,o)-s:nh(e.slice(0,m),a,o);u.push(t-f),f=t;continue}let h=nh(e.slice(p,m),a,o);u.push(l&&r>0?nh(e.slice(d,m),a,o)-f:h),d=p,f=h}return s!==null&&!c&&(u[n-1]=u[n-1]+i.width-Lm(e,a).width-s),u}function Sh(e,t,n){(pm===null||pm.language!==t)&&(pm=Eh(t));let r=pm,i=n&&r.shapesLetterSpaced,a=i?r.letterSpacedFonts:r.fonts;r.font=``;let o=a.get(e);if(o===void 0){let t=r.genericFamilies===null?e:Dm(e,r.genericFamilies);if(!Ch(r.context,t))throw RangeError(`font must be a font string Canvas takes, a size in px then a family, such as 16px Inter, not "${e}"`);o={state:r,canvasFont:t,letterSpacing:i?gm:`0px`,metrics:new Map,followingSpaceMetrics:new Map,spaceKerning:void 0,measuredKana:!1,kanaKerning:void 0,kanaFont:t,emojiCorrection:null,emojiWidth:0,hyphenText:null,spaceWidth:null,hanKerning:void 0,ligaturePairs:new Map,glyphCounts:new Map},a.set(e,o)}return o}function Ch(e,t){return e.font=`1px serif`,e.font=t,e.font!==`1px serif`||(e.font=`2px serif`,e.font=t,e.font!==`2px serif`)}function wh(e){let t=e.state;return t.font!==e.canvasFont&&(t.context.font=t.font=e.canvasFont),t.letterSpacing!==e.letterSpacing&&(t.context.letterSpacing=t.letterSpacing=e.letterSpacing),t.context}function Th(e){let t=null;if(typeof OffscreenCanvas<`u`?t=new OffscreenCanvas(1,1).getContext(`2d`):typeof document<`u`&&(t=document.createElement(`canvas`).getContext(`2d`)),t===null)throw Error(`Text measurement requires OffscreenCanvas or a DOM canvas context.`);return e!==null&&`lang`in t&&(t.lang=e),t}function Eh(e){let t=Th(e),n=ih(),r=typeof t.letterSpacing==`string`;return{language:e,context:t,font:``,letterSpacing:`0px`,wholeRunContext:null,wholeRunFont:``,genericFamilies:e!==null&&n.namesGenericFamiliesByLanguage?wm(e,t):null,takesLetterSpacing:r,shapesLetterSpaced:r&&n.canvasLetterSpacingDropsLigatures,fonts:new Map,letterSpacedFonts:new Map,segments:0}}function Dh(){pm!==null&&(pm.fonts.clear(),pm.letterSpacedFonts.clear(),pm.segments=0)}var Oh=0,kh=1,Ah=2,jh=3,Mh=4,Nh=5,Ph=6,Fh=7,Ih=8,Lh=9,Rh=10,zh=/\p{Ps}/uy,Bh=/\p{Pe}/uy,Vh=/[\u2018-\u301F\uFF08-\uFF60]/;function Hh(e){return e>=8216&&e<=12319||e>=65288&&e<=65376}function Uh(e){return Vh.test(e)}function Wh(e,t){let n=e.charCodeAt(t);switch(n){case 8216:case 8220:return Lh;case 8217:case 8221:return Rh;case 12289:case 12290:case 65292:case 65294:return Ph;case 65306:return Fh;case 65307:return Ih;case 183:case 8231:case 12288:case 12539:return jh;default:{if(n<40||!Ad(n,2))return Oh;let r=n>=12288&&n<=12351||n>=65281&&n<=65376||n>=65504&&n<=65510;return zh.lastIndex=Bh.lastIndex=t,zh.test(e)?r?kh:Mh:Bh.test(e)?r?Ah:Nh:Oh}}}function Gh(e,t,n){let r=String.fromCharCode(t),i,a,o;if(Xh(t)){let t=e.measureText(`中`+r);i=t.width-n,o=t.actualBoundingBoxRight-n,a=-e.measureText(r+`中`).actualBoundingBoxLeft}else{let t=e.measureText(r);i=t.width,a=-t.actualBoundingBoxLeft,o=t.actualBoundingBoxRight}let s=i/2,c=o<=s?Ah:a>=s?kh:o-a<=s&&a>=s/2?jh:Oh;return{advance:i,type:c}}function Kh(e,t,n){let r=e.trims.get(t);if(r===void 0){let i=String.fromCharCode(t);r=2*Lm(i,n).width-Lm(i+i,n).width,e.trims.set(t,r)}return r}function qh(e){if(e.hanKerning!==void 0)return e.hanKerning;let t={typeForDot:Oh,typeForColon:Oh,typeForSemicolon:Oh,quoteFullwidth:!1,trims:new Map};if(Kh(t,12300,e)<=.001)return e.hanKerning=null,null;let n=Lm(`中`,e).width,r=wh(e),i=[12289,12290,65292,65294,65306,65307,8220,8216,8221,8217].map(e=>Gh(r,e,n)),a=(e,t)=>{for(let n=e+1;n<t;n++)if(i[n].advance!==i[e].advance||i[n].type!==i[e].type)return Oh;return i[e].type};return t.typeForDot=a(0,4),t.typeForColon=i[4].type,t.typeForSemicolon=i[5].type,t.quoteFullwidth=a(6,8)===kh&&a(8,10)===Ah,e.hanKerning=t,t}function Jh(e,t,n){let r=Wh(t,n);switch(r){case Ph:return e.typeForDot;case Fh:return e.typeForColon;case Ih:return e.typeForSemicolon;case Lh:return e.quoteFullwidth?kh:Mh;case Rh:return e.quoteFullwidth?Ah:Nh;default:return r}}function Yh(e,t){return t===kh&&(e===kh||e===jh||e===Ah||e===Mh)?1:e===Ah&&(t===Ah||t===jh||t===Nh)?-1:0}function Xh(e){return e>=12288&&e<=12543||e>=65072&&e<=65135||e>=65280&&e<=65519&&e!==65307}function Zh(e,t,n,r){let i={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null},a=qh(e);if(a===null)return i;let{flags:o,starts:s,normalized:c}=t,l=o.length,u=(e,t)=>{i.widthTrims??=Nm(r-n),i.widthTrims[e-n]=i.widthTrims[e-n]+t};for(let t=n;t<r;t++){if(o[t]&15)continue;let d=s[t],f=t+1<l?s[t+1]:c.length,p=c.charCodeAt(d);if(t>0&&Hh(p)&&Yh(Jh(a,c,d-1),Jh(a,c,d))===1){let o=Kh(a,p,e);i.lineStartExtras??=Nm(r-n),i.lineStartExtras[t-n]=o,u(t,o)}for(let n=d+1;n<f;n++){let r=c.charCodeAt(n-1),i=c.charCodeAt(n);if(!(Hh(r)||Hh(i))||Xh(r)===Xh(i))continue;let o=Yh(Jh(a,c,n-1),Jh(a,c,n));o!==0&&u(t,Kh(a,o===1?i:r,e))}let m=c.charCodeAt(f-1);if(!Hh(m))continue;let h=t+1===l;if(!h&&Yh(Jh(a,c,f-1),Jh(a,c,f))===-1){u(t,Kh(a,m,e));continue}let g=Wh(c,f-1);g!==Ah&&g!==Rh||Jh(a,c,f-1)!==Ah||(h||!(o[t+1]&15)&&!(o[t+1]&32)?(i.lineEndTrims??=Nm(r-n),i.lineEndTrims[t-n]=Kh(a,m,e)):(i.overflowLineEndTrims??=Nm(r-n),i.overflowLineEndTrims[t-n]=Kh(a,m,e)))}return i}function Qh(e,t,n){return t===2?0:Bf(n,e,0,e.length,null)}function $h(e,t,n){return t>1?e+(t-1)*n:e}var eg=[741,745,768,879,1425,1469,1471,1487,1536,4255,4352,4607,4957,4959,5888,6319,6400,6479,6528,6623,6656,7423,7616,7679,8400,8447,9977,9977,11503,11505,12330,12335,12441,12444,42620,42621,42736,42737,43008,44031,55216,55295,65024,65039,65056,65071,68096,68191,69632,69839,69888,70111,70144,70223,70320,70527,70656,70879,71040,71263,71296,71375,71424,72895,92928,93071,125184,125279,127462,127487,127995,127999,917504,917631,917760,917999],tg=/\p{Extended_Pictographic}/u,ng=Ed(String.raw`^\p{M}`,`u`),rg=/^[\p{Nd}:\-/×,.+\u2013\u2014]+$/u,ig=/^[\p{Cc}\u2028\u2029]$/u;function ag(e){let t=!1;for(let n=0;n<e.length;){let r=e.codePointAt(n);if(n+=r>65535?2:1,r===8205&&t)return!0;t=r>65535&&tg.test(String.fromCodePoint(r));for(let e=0;e<eg.length&&r>=eg[e];e+=2)if(r<=eg[e+1])return!0}return!1}var og=/[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}\u202A-\u202E\u2066-\u2069]/u;function sg(e){return e===1||e===4}var cg=null;function lg(e){return fd[xd(cg??=Td(`chromium/script`),e)]}function ug(e,t){let n=e.codePointAt(t),r=lg(n),i=t+(n>65535?2:1);if(r&1024&&i<e.length){let t=lg(e.codePointAt(i))>>5&31;if(t!==0)return r&-32|t}return r}function dg(e){for(let t=0;t<e.length;t++){if(e.charCodeAt(t)<128)continue;let n=lg(e.codePointAt(t));if((n&31)==16||(n>>5&31)==16)return!0}return!1}function fg(e,t,n){let{openBrackets:r}=e;for(;e.read<n||e.scripts===31&&e.read<t.length;){let n=t.codePointAt(e.read),i=ug(t,e.read),a=i&31,o=i&8192?r.lastIndexOf(n-(i>>14)):-1;if(o>=0&&(r[o+1]!==0&&(a=r[o+1]),r.length=o+2),(e.scripts&a)!==0)e.scripts&=a;else{for(let t=r.length-1;t>0&&r[t]===0;t-=2)r[t]=e.scripts&-e.scripts;e.scripts=a}i&4096&&(r.length===64&&r.splice(0,2),r.push(n,0)),e.read+=n>65535?2:1}return e.scripts}function pg(e,t,n,r){let i=ug(t,n)&31;for(let e=n;i===31&&e+1<r&&Ad(t.charCodeAt(e),4);e++)i=ug(t,e+1)&31;if(i===31)return!0;for(let e=n-2;e>=0;e--){(t.charCodeAt(e)&64512)==56320&&e>0&&e--;let n=ug(t,e);if(n&8192)break;let r=n&31;if(r!==31){if(!(r&r-1))return(r&i)!==0;break}}return(fg(e,t,n)&i)!==0}function mg(e,t,n,r,i){let a=new Int32Array(n-t),o=Bf(r,e,t,n,a),s=null;for(let n=0,r=t;n<o;r=a[n++])(i===null?lg(e.codePointAt(r))&2048:fg(i,e,r+1)===16&&e.charCodeAt(r)!==160)&&(s??=[]).push(n);return s}function hg(e,t,n){let{normalized:r,spaceSources:i,starts:a,flags:o}=e,s=t+1;for(;s<n&&(o[s]&15)==2;)s++;if(s>=n)return null;let c=o[s]&15,l=a[s];return c!==1&&c!==4||(i===null?r.charCodeAt(l):i[l])!==32?null:r.slice(a[t+1],l)}function gg(e,t,n){return Rm(e,t).width-Lm(e,t).width-n}function _g(e,t,n,r,i,a,o,s){if(r===null)return 0;let{texts:c,flags:l}=e,u=t+1;for(;u<n&&(l[u]&15)==3;)u++;if(u>=n||l[u]&15)return 0;let d=c[u],f=gh(r,i,a,o)+nh(d,a,o),p=nh(r+d,a,o);return f-p>s?f-p:0}function vg(e,t,n,r,i,a){return gh(e,t,n,r)-i+a}function yg(e,t,n,r,i,a,o,s,c,l){let{normalized:u,texts:d,starts:f,flags:p}=e,m=t===0?0:f[t],h=t===0&&n===p.length?u:n===t+1?d[t]:u.slice(m,n<p.length?f[n]:u.length),g=l===null?[]:l.widths,_=l===null?new Uint8Array(n-t):l.segmentFlags,v=l===null?[]:l.breakableFitAdvances,y=i?[]:null,b=g.length,x=a!==0,S=Sh(r,s,x),C=sh(h)?ch(r,S):0,w=h.includes(` `),T=w||h.includes(` `)?Ym(S):0,E=o.letterSpaceTabStops?a:0,D=o.tabsInAppUnits?(Math.round(T*60)+Math.round(E*60))*8/60:(T+E)*8,O=0,k=o.kernsAcrossCanvasWords&&h.includes(` `)?Km(S):null;k!==null&&og.test(h)&&(k=null);let A={read:0,scripts:31,openBrackets:[]},j=0,M=x&&o.unspacedCursive!==`none`&&dg(h),N=!x,P=null,F=null,ee=null,te=null,ne=o.unfitHyphenRetreat===`full-width-or-first`;for(let r=t,i=b;r<n;r++,i++){let s=d[r],l=p[r],u=l&15,b=0,E=0,D=null;switch(u){case 0:{if(o.hidesControlCharacters&&ig.test(s)){E=1;break}let d=o.measureTextWithFollowingSpace&&w?hg(e,r,n):null,_=d===``,v=_?Rm(s,S):Lm(s,S);ee=s,te=v;let y=d===null||_?0:gg(s+d,S,T);if(k!==null&&v.spaceKerning!==Um){let e=r>t&&sg(p[r-1]&15),a=r+1<n&&sg(p[r+1]&15);if(e||a){let n=v.spaceKerning??Jm(s,v,S,k);a&&(y=Math.max(n.after,0),j=Math.min(n.after,0)),e&&n.before!==0&&((p[r-1]&15)!=4||r!==t+1&&(p[r-2]&15)!=8)&&pg(A,h,f[r]-m,f[r]-m+s.length)&&(g[i-1]=g[i-1]+n.before)}}b=vg(s,v,S,C,_?T:0,y);let O=null,N=Fm;if(x&&(E=Qh(s,u,o.graphemeTable),M&&(O=mg(h,f[r]-m,f[r]-m+s.length,o.graphemeTable,o.unspacedCursive===`run`?A:null),O!==null&&(b-=O.length*a)),o.letterSpacesGlyphs)){N=v.extraSpacings??=ag(s)?Im(s,S):Fm;for(let e=0;e<N.length;e++)b+=N[e]*a}if(!c||l&128||s.length===1)break;let F=_h(s,v,S,C,a===0?rg.test(s)?`pair-context`:v.width<o.prefixFitMinWidth?`sum-graphemes`:o.cutWordFit:`segment-prefixes`,_?T:null);if(D=F.advances,D===null)break;if(F.lineStartExtras!==null&&((P??=Array(n-t).fill(null))[r-t]=F.lineStartExtras),y!==0&&(D=D.slice(),D[D.length-1]=D[D.length-1]+y),N.length!==0){D=D.slice();for(let e=0;e<N.length;e++)D[e]=D[e]+N[e]*a}if(O!==null){D=D.slice();for(let e=0;e<O.length;e++)D[O[e]]=D[O[e]]-a}break}case 1:case 4:case 2:b=nh(s,S,C)+j,j=0,x&&(E=Qh(s,u,o.graphemeTable));break;case 5:o.letterSpaceTabs&&(E=1),O===0&&(O=nh(o.tabMinimumCharacter,S,C)/2);break;case 7:{b=nh(s,S,C);let e=r+1<n?d[r+1]:``;x&&(r>t&&!(p[r-1]&15)&&ag(d[r-1])||ng().test(e)&&ag(e))&&(E=1);break}}u!==0&&u!==1&&u!==2&&(N=!1),u!==0&&u!==3&&(ee=null),_[i]=l&-129|(x&&E>0?16:0),g[i]=$h(b,E,a),v[i]=D,y!==null&&(y[r-t]=s),u!==0&&s.charCodeAt(0)===173?(F??=Nm(r-t),F[r-t]=ne?0:_g(e,r,n,ee,te,S,C,o.lineFitEpsilon)):F!==null&&(F[r-t]=0)}let I=nh(F===null?`-`:o.hyphenFromPrimaryFont?Om(S):`‐`,S,C)+(a===0?0:a*(o.letterSpaceDiscretionaryHyphen?2:1)),re={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null};if(o.hanKerning&&Uh(h)){re=Zh(S,e,t,n);let r=re.widthTrims;if(r!==null)for(let e=0;e<r.length;e++)g[b+e]=g[b+e]-r[e]}let L=re.lineStartExtras;if(o.kernsAcrossCanvasWords&&S.measuredKana&&S.kanaKerning!==null&&Vm.test(h)){let r=$m(S);r!==null&&(L=bg(L,g,b,e,t,n,S,r))}let R=re.lineEndTrims;o.hangsIdeographicSpace&&h.includes(` `)&&(R=xg(R,e,S,a,I,t,n));let z={widths:g,segmentFlags:_,simpleLineWalkFastPath:N&&!e.hasUnbroken,simpleLineCountFastPath:N,breakableFitAdvances:v,letterSpacing:a,discretionaryHyphenWidth:I,discretionaryHyphenContexts:F,breakableLineStartExtras:P,lineStartExtras:L,lineEndTrims:R,overflowLineEndTrims:re.overflowLineEndTrims,tabStopAdvance:D,minimumTabAdvance:O};return y!==null&&(z.segments=y),z}function bg(e,t,n,r,i,a,o,s){let{normalized:c,starts:l,flags:u}=r;for(let r=i;r<a;r++){if(u[r]&15)continue;let d=l[r],f=r+1<u.length?l[r+1]:c.length,p=n+r-i;for(let n=r>i?d:d+1;n<f;n++){let l=eh(c,d,n,o,s);l!==0&&(n>d?t[p]=t[p]+l:l>0?t[p-1]=t[p-1]+l:(t[p]=t[p]+l,e??=Nm(a-i),e[r-i]=e[r-i]-l))}}return e}function xg(e,t,n,r,i,a,o){let{normalized:s,starts:c,flags:l}=t;for(let t=a;t<o;t++){let u=t+1<l.length?c[t+1]:s.length;if(l[t]&15||s.charCodeAt(u-1)!==12288)continue;if(t+1<o){let e=l[t+1]&15;if(e!==8&&e!==1&&(e!==0||l[t+1]&32))continue}let d=u-1;for(;d>c[t]&&s.charCodeAt(d-1)===12288;)d--;let f=s.slice(d,u),p=t>0&&d===c[t]&&s.charCodeAt(d-1)===173,m=Lm(f,n).width+f.length*r-(p?i:0);m<=0||(e??=Nm(o-a),e[t-a]=e[t-a]+m)}return e}var Sg=62;function Cg(e){return!!(1<<e&Sg)}function wg(e,t,n,r){return r===0&&n>0&&n<t&&(e[n-1]&15)==3}function Tg(e,t){return e===1||e===3||e===2&&!t}function Eg(e,t,n,r){if(r){let r=Math.round(t*60);if(r<=0)return 0;let i=Math.round(e*60);return(Math.ceil((i+Math.round(n*120)/2)/r)*r-i)/60}if(t<=0)return 0;let i=t-(e-Math.floor(e/t)*t);return i<n?i+t:i}function Dg(e,t,n,r,i){let a=t.tabStopAdvances===null?e.tabStopAdvance:t.tabStopAdvances[n],o=t.minimumTabAdvances===null?e.minimumTabAdvance:t.minimumTabAdvances[n];return Eg(r-(t.insideExtras===null?0:t.insideExtras[n]/2),a,o,i)+e.widths[n]}function Og(e,t,n,r,i,a,o){let{letterSpacing:s,segmentFlags:c}=e;if(s===0)return 0;if(o>0)return c[a]&16?s:0;let l=e.widths.length;if(wg(c,l,a,o)||a>r&&a<l&&(c[a]&15)!=8&&1<<(c[a-1]&15)&n)return 0;for(let e=a-1;e>=r;e--){let n=c[e],a=n&15;if(a!==1&&(a===7||a===5||n&16||a===9||t!==null&&t[e]!==0))return e===r&&i>0||n&16?s:0}return 0}function kg(e){return e<=1/0?e:1/0}function Ag(e,t){let{segmentFlags:n}=e,r=e.widths.length,i=t.segmentIndex;if(i>=r)return!1;if(t.graphemeIndex>0)return!0;let a=i===0||(n[i-1]&15)==8;for(;;){let e=n[i]&15;if(e===8){if(a)return t.segmentIndex=i,t.graphemeIndex=0,!0;if(++i>=r)return!1;t.segmentIndex=i,t.graphemeIndex=0,a=!0}else if(Tg(e,a)){if(++i>=r)return!1}else return t.segmentIndex=i,t.graphemeIndex=0,!0}}function jg(e,t,n,r={lineCount:0,maxLineWidth:0}){let i={segmentIndex:0,graphemeIndex:0};if(!e.simpleLineWalkFastPath)return Ag(e,i)&&Pg(e,i,t,n,r),r.lineCount;let{segmentFlags:a}=e,o=e.widths.length;for(;;){let s=i.segmentIndex,c=s===0;for(;s<o&&Tg(a[s]&15,c);)s++;if(s>=o)return r.lineCount;let l=i.graphemeIndex;i.segmentIndex=s;let u=Fg(e,i,t);r.lineCount++,u>r.maxLineWidth&&(r.maxLineWidth=u),n?.(u,s,l,i.segmentIndex,i.graphemeIndex)}}function Mg(e,t,n,r){let i=n+1;for(;i<t&&1<<(e[i]&15)&r;)i++;return i===t||(e[i]&15)!=5}function Ng(e,t,n,r,i,a){let{discretionaryHyphenContexts:o,segmentFlags:s}=e,c=n-1;if(c<t||(s[c]&15)!=3||r<=i)return!1;let l=r-i,u=0,d=a?c:c-1;if(o!==null)for(let e=t;e<=d;e++)u+=o[e];return u<l}function Pg(e,t,n,r,i,a=!1){let{widths:o,segmentFlags:s,breakableFitAdvances:c,discretionaryHyphenWidth:l,letterSpacing:u,lineStartExtras:d,lineEndTrims:f,overflowLineEndTrims:p,tabStopAdvance:m,minimumTabAdvance:h}=e,g=o.length,_=e.items,v=_===void 0?null:_.hyphenWidths,y=_===void 0?null:_.hyphenRooms,b=_===void 0?null:_.itemEndHalts,x=_===void 0?null:_.insideExtras,S=_===void 0?null:_.fillExtras,C=_===void 0?null:_.openingEdges,w=_===void 0?null:_.emptyObjectSpaces,T=_===void 0?null:_.emptyObjectReturns,E=ih(),D=16|(E.hangTabs?32:0),O=_!==void 0&&E.hangsSpacesPerTextFrame,k=E.testsHyphenBeforeAtomic,A=E.zeroWidthGlueTakesLine,j=E.tabsInAppUnits,M=E.paddedOpeningFit,N=E.hardBreakItemRetreat,P=Math.max(0,n),F=P+E.lineFitEpsilon,ee=e.discretionaryHyphenContexts!==null,te=E.unfitHyphenRetreat===`reduced-width`,ne=te?l:0,I=ee&&E.unfitHyphenRetreat===`full-width-or-first`,re=E.unfitHyphenRetreat===`full-width`,L=null;for(;;){let n=t.segmentIndex,E=t.graphemeIndex,R=0,z=!1,B=n,V=E,H=-1,U=0,ie=-1,W=0,G=-1,K=0,ae=!1,oe=0,q=0,se=!0,ce=!1,le=-1,J=0,ue=0,de=!1,fe=null;if((s[n]&15)==8)t.segmentIndex=n+1,t.graphemeIndex=0,fe=d===null?0:d[n];else{decided:{let t;for(let r=n;;r++){if(r>=g){t=g;break}let i,a=0,re=s[r],L=re&15;if(L===8){t=r+1;break}let fe=!!(re&16),pe=!!(1<<L&Sg),Y=r===n?E:0,me=u!==0&&z&&!se&&!ce?u:0,he=0;u!==0&&(fe||L===7||L===5||L===9||C!==null&&C[r]!==0)&&(he=me,ce=!fe),L!==2&&L!==6&&(se=!1);let ge=L===5?_===void 0?Eg(R+he,m,h,j):Dg(e,_,r,z?R+he:d===null?0:d[r],j):o[r],_e=he+ge,ve=f===null?0:f[r];if(L===3&&Y===0){if(z){let e=l,t=!0;_!==void 0&&(ee&&r>n&&(s[r-1]&15)==9&&(ie=r,W=R),O&&G===r&&(G=r+1,K=Math.max(K,Math.min(R,P))),v!==null&&(e=v[r]),t=k||r+1===g||(s[r+1]&15)!=9||C!==null&&C[r+1]!==0),B=r+1,V=0,r+1<g&&(s[r+1]&15)!=8&&(H=r+1,U=R+e,ee&&((t?U:R)<=F||I&&ie<0)&&(ie=H,W=U))}continue}let ye=0;if(u!==0&&!fe&&!pe&&L!==7)ye=me+ge;else if(pe?L===5:ge!==0||L===7){let e=ge+(fe?u:0);e!==0&&(ye=he+e)}let be=!!(1<<L&D);if(O&&L===2&&G===r&&(be=!0),be&&(G!==r&&(K=R-q+he,ae=!1,_!==void 0&&r>n&&(s[r-1]&15)==9&&(ae=Mg(s,g,r,D),ae||(H=r,U=R-q)),oe=0),G=r+1,C!==null&&(K+=C[r],oe+=C[r])),!z&&L===6&&!A){B=r+1,V=0;continue}if(z){let e=be?K-oe:R+ye,t=e-ve>F;if(_!==void 0){let n=!1;if(w!==null&&L===9&&ge===0&&e>F){let e=G===r?K:R,t=w[r];n=e<=F||!(t>=0&&e-t>F||T[r]===1)}let i=ye<0&&R-q>F;t=(t||i)&&!(be&&ae)&&!n,O&&!t&&G===r&&L===9&&ge===0&&(G=r+1,K=Math.max(K,Math.min(R+_e,P)))}if(t){let t=R-q;if(pe&&(be||L!==5)&&(t<=F||H<0&&(L===1||L===2)||L===2&&(s[r-1]&15)==9)){ue=be?K:t,R+=_e,le=r+1,J=0;break decided}if(L===5&&!be&&H<0){le=r,J=0,ue=G===r&&r>n?K:t;break decided}let l=!!(re&32);if(L===9&&l&&G===r&&(M===`start`?K-oe/2<=F&&R-oe/2>F:M===`placed`&&K-oe+ge-ve<=F)){G=r+1,K+=ge,oe+=ge,R+=_e,B=r+1,V=0;continue}if(l&&H>=0&&(B=H,V=0),!l||H>=0){de=!0;break decided}if(p!==null&&e-p[r]<=F){R+=_e,B=r+1,V=0,q=p[r],b!==null&&b[r]!==0&&(R-=q,q=0);continue}if(L===9&&N!==`item`&&r+1<g&&(s[r+1]&15)==8){let e=s[r-1],t=e&15,i=t===4?c[r-1]:null;if(i!==null){let e=i.length,t=i[0],a=N!==`fit`||R<=F?1:t>0?Math.min(e,Math.ceil((R-F)/t)):e,o=C!==null&&C[n]!==0?n+1:n;if(r-1>o||e-a>E){le=r-1,J=e-a,ue=K;break decided}}let a=t===0||t===7?c[r-1]:null,l=e&16?u:0;if(a!==null&&(r-1>n||a.length-1>E)){le=r-1,J=a.length-1,ue=R-a[J]-l;break decided}if(a===null&&(t===0||t===7)&&r-1>n){le=r-1,J=0,ue=R-o[r-1]-l;break decided}if(i!==null||t!==4&&t!==5){R+=_e,B=r+1,V=0,q=0;continue}}if(c[r]===null){de=!0;break decided}i=0,a=he}else{re&64&&!pe&&H!==r&&(H=r,U=R),ee&&!pe&&!(re&32)&&r>n&&!Cg(s[r-1]&15)&&(!te||R+(y===null?l:y[r])<=F)&&(ie=r,W=R),B=r+1,V=0,b!==null&&e>F&&b[r]!==0?(R+=_e-ve,q=0):(R+=_e,ye!==0&&!be&&(q=e>F&&L!==9?ve:0)),pe&&(r+1===g||!(s[r+1]&32))&&(H=r+1,U=be?K:L===5?R:R-_e-q),ee&&pe&&U+(y===null||H<0?ne:y[H])<=F&&(ie=H,W=U);continue}}else if(Y>0)i=Y;else{let e=d===null?0:d[r],t=p!==null&&ye+e-p[r]<=F?p[r]:ve;if(ye+e-t>F&&c[r]!==null&&!be)i=0;else{z=!0,B=r+1,V=0,R=ge+e,be&&(K+=e),q=ye+e>F&&L!==9?t:0,b!==null&&q!==0&&b[r]!==0&&(R-=q,q=0),pe&&(r+1===g||!(s[r+1]&32))&&(H=r+1,U=be?K:L===5?R:R-_e),ee&&pe&&U+(y===null||H<0?ne:y[H])<=F&&(ie=H,W=U);continue}}let xe=c[r],Se=xe.length;for(let t=i;t<Se;t++){let n=xe[t];if(z){let e=R+(n+(t>i?u:a));if(e+u>F)break decided;R=e,B=r,V=t+1}else{z=!0,B=r,V=t+1;let i=e.breakableLineStartExtras?.[r]??null;R=i===null?n:n+i[t],(t>0?x!==null:S!==null)&&(R+=t>0?x[r]:S[r])}}z&&B===r&&V===Se&&(B=r+1,V=0)}le=t,J=0,H===t&&V===0?(ue=U,de=!0):ue=R-q}if(z){de&&ie>=0&&H===B&&V===0&&Ng(e,n,B,U,F,re)?(le=ie,J=0,ue=W):le<0&&(le=B,J=V,ue=H===B&&V===0?U:_!==void 0&&G===B&&V===0?K:R-q),t.segmentIndex=le,t.graphemeIndex=J;let r=J===0&&G>=0&&(le===G||le===G+1)&&(G===g||(s[G]&15)==8),i=(r?R-q:ue)+Og(e,C,D,n,E,le,J);fe=r?Math.max(K,Math.min(i,P)):i}}if(fe===null||(L=fe,i!==null&&(i.lineCount++,fe>i.maxLineWidth&&(i.maxLineWidth=fe)),r?.(fe,n,E,t.segmentIndex,t.graphemeIndex),a||!Ag(e,t)))break}return L}function Fg(e,t,n){let{widths:r,segmentFlags:i,breakableFitAdvances:a,lineStartExtras:o,lineEndTrims:s,overflowLineEndTrims:c}=e,l=Math.max(0,n)+ih().lineFitEpsilon,u=t.segmentIndex,d=a[u],f=o===null?r[u]:r[u]+o[u],p=s===null?0:s[u],m=c!==null&&f-c[u]<=l?c[u]:p,h,g=0;if(t.graphemeIndex>0||f-m>l&&d!==null){let n=d,r=e.breakableLineStartExtras?.[u]??null,i=t.graphemeIndex+1;h=r===null?n[i-1]:n[i-1]+r[i-1];let a=e.items;for(a!==void 0&&(i>1?a.insideExtras!==null:a.fillExtras!==null)&&(h+=i>1?a.insideExtras[u]:a.fillExtras[u]);i<n.length;i++){if(h+n[i]>l)return t.graphemeIndex=i,h;h+=n[i]}}else h=f,f>l&&(g=m);for(let e=u+1;e<r.length;e++){let n=r[e],a=s===null?0:s[e];if(h+n-a>l){let n=Cg(i[e]&15);return t.segmentIndex=n?e+1:e,t.graphemeIndex=0,!n&&Cg(i[e-1]&15)?h-r[e-1]:h-g}h+=n,g=h>l?a:0}return t.segmentIndex=r.length,t.graphemeIndex=0,h-g}function Ig(e,t,n,r){let i=r?.wordBreak??`normal`,a=ih(),o=Mm(r?.letterSpacing,a),s=Am(a),c=om(e,a,r?.whiteSpace,i,s);return yg(c,0,c.flags.length,t,n,o,a,s,!0,null)}function Lg(e,t,n){return Ig(e,t,!1,n)}function Rg(e){return e}function zg(e,t){let n={lineCount:0,maxLineWidth:0};return jg(Rg(e),kg(t),void 0,n),n}function Bg(e){return zg(e,1/0).maxLineWidth}function Vg(){Nd(),Dh()}var Hg={1:24,2:40},Ug=8,Wg=6;function Gg(e,t,n){let r=t/n-e.lead-(e.actions?e.actions+Ug:0),i=e.title+e.tail,a=i<=r?1:2;return{lines:a,showId:i+Wg+e.id<=r*a}}var Kg=(e,t,n,r,i)=>`/artboard/${e}${Ce(i,{with:t[0].document,...n?{group:r}:{board:r}})}`;function qg({artboard:e,entries:t,group:n,id:r}){let{t:i}=Un();return(0,Q.jsxs)(`button`,{"data-backlink-badge":r,title:i(`split.openDocument`),type:`button`,onPointerDown:e=>e.stopPropagation(),onClick:i=>{i.stopPropagation(),Or()?Dr({kind:`open-doc`,document:t[0].document,key:r}):location.assign(Kg(e,t,n,r,location.search))},className:`x3nfvp2 x6s0dn4 x1ed6fcf xmix8c7 xdzw4kq x1xijbu4 xmkeg23 x1y0btm7 x12xov25 xhpnuu7 x1rozbrz x1bo0w0s xqfszdh x1s31vzs xo5v014 xuxw1ft x67bb7w x1ypdohk x1uyjgin xytdrwj`,children:[(0,Q.jsx)(dn,{size:10}),i(`split.references`,{count:t.length})]})}ur.success,ur.danger;var Jg=(e,t)=>new Date(e).toLocaleTimeString(t,{hour:`2-digit`,minute:`2-digit`,hour12:!1});function Yg({verdict:e,evidenceAt:t,hideEvidenceNote:n,canJudge:r,onPass:i,onReject:a,onUndo:o}){let{t:s,i18n:c}=Un();return e.state===`pass`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xwzsjwp`,children:[(0,Q.jsx)(_t,{size:13}),s(`verdict.passed`)]}),e.at&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:Jg(e.at,c.language)}),e.by===`agent`&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.byAgent`)}),r&&(0,Q.jsx)(`button`,{type:`button`,onClick:o,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1ypdohk xo1l8bm xfifm61 xddlp02`,children:s(`verdict.undo`)})]}):e.state===`reject`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xh4xifv`,children:[(0,Q.jsx)(E,{size:13}),s(`verdict.rejected`)]}),e.by===`agent`&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.byAgent`)}),(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.waitingFix`,{count:e.rejectThreads})})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`x78zum5 x6s0dn4 x17d4w8g x1hm9lzh xk50ysn xddlp02`,children:[(0,Q.jsx)(`span`,{className:`x1xc55vz xdk7pt x9f619 x16rqkct xvndefy x1y0btm7 x1r7ld26`}),s(`verdict.pending`)]}),e.evidenceUpdated&&t>0&&!n&&(0,Q.jsx)(`span`,{className:`xo1l8bm xfifm61 xddlp02`,children:s(`verdict.evidenceUpdatedAt`,{time:Jg(t,c.language)})}),r&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`x1i1rx1s x1kpxq89 xjgtzcg xcn5yip`}),(0,Q.jsxs)(`button`,{type:`button`,onClick:i,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1qlqyl8 xk50ysn x1ypdohk x1bo0w0s x1liw68r`,children:[(0,Q.jsx)(_t,{size:13}),s(`verdict.pass`)]}),(0,Q.jsxs)(`button`,{type:`button`,onClick:a,className:`x78zum5 x6s0dn4 x1nejdyq x1717udv xc342km xjbqb8w xjb2p0i x1qlqyl8 xk50ysn x1ypdohk x1bo0w0s x1m4k60b`,children:[(0,Q.jsx)(E,{size:13}),s(`verdict.reject`)]})]})]})}function Xg({board:e,checked:t,disabled:n,onChoose:r,radioRef:i}){let{t:a}=Un();return(0,Q.jsx)(`button`,{"aria-checked":t,"aria-label":a(`choices.chooseBoard`,{id:e}),"data-choice-radio":e,disabled:n,ref:i,role:`radio`,type:`button`,onClick:()=>r(e),...{0:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct xvndefy x1y0btm7 xct3ywq x1dd4nyv x1rozbrz x1ypdohk`},2:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct x1y0btm7 x1rozbrz x1ypdohk xa5x8dy x1lvdfi3`},1:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct xvndefy x1y0btm7 xct3ywq x1dd4nyv x1rozbrz xt0e3qv x197sbye`},3:{className:`x2lah0s x6jxa94 x1v9usgg x1gslohp xbelrpt x1717udv x9f619 x16rqkct x1y0btm7 x1rozbrz xa5x8dy x1lvdfi3 xt0e3qv x197sbye`}}[!!t<<1|!!n]})}var Zg=20,Qg=16;function $g(e,t){let n=document.createElement(`a`);n.href=e,n.download=t,n.click()}function e_(e,t){let n=getComputedStyle(e);return Bg(Lg(t,`${n.fontWeight} ${n.fontSize} ${n.fontFamily}`,{letterSpacing:Number.parseFloat(n.letterSpacing)||0}))}function t_({active:e,choice:t,onChoose:r,board:i,contentBase:a,fontsVersion:o,id:s,interactive:c,modified:l,playing:u,ready:d,rect:f,scale:p,onExpand:m,onReplay:h,onTogglePlay:g,onToggleParameters:_,onLines:v}){let y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),[w,T]=(0,Z.useState)({title:0,id:0,actions:0,lead:0,tail:0}),E=f.width/p,D=E<160,O=E<90,k=l!==void 0&&E>=60,A=Wn(i),j=i.title??s,M=A?`${s} · ${i.file.split(`/`).pop()}`:s;(0,Z.useLayoutEffect)(()=>{let e=y.current,n=b.current,r=S.current;if(!e||!n||!r)return;let i=e_(e,j)+(A?18:0),a=e_(n,M),o=x.current,s=o?e_(o,o.textContent??``)+Qg:0,c=t?Zg:0,l=()=>{let e={title:i,id:a,actions:r.offsetWidth,lead:c,tail:s};T(t=>t.title===e.title&&t.id===e.id&&t.actions===e.actions&&t.lead===e.lead&&t.tail===e.tail?t:e)};if(l(),typeof ResizeObserver!=`function`)return;let u=new ResizeObserver(l);return u.observe(r),()=>u.disconnect()},[j,M,A,o,D,O,k,d,c,u,t?.recommended,!!t]);let{lines:N,showId:P}=Gg(w,f.width,p);(0,Z.useLayoutEffect)(()=>(v(s,N),()=>v(s,1)),[s,N,v]);let F=()=>$g(`${a}${i.file}`,i.file.split(`/`).pop()??`${s}.html`);return(0,Q.jsxs)(`div`,{"data-board-label":s,"data-chrome":`board-label`,className:`x10l6tqk x78zum5 x1cy8zhl x1hj3fc7 x1120s5i x1bo0w0s x67bb7w`,style:{left:f.left,top:f.top,width:E,height:Hg[N],transform:`scale(${p}) translateY(-100%)`},children:[t&&r&&(0,Q.jsx)(Xg,{board:s,checked:t.chosen,disabled:t.disabled,onChoose:r}),(0,Q.jsxs)(`span`,{className:`x98rzlu x104kibb x1ua5tub xeuugli xb3r6kr xyqdw3p xfifm61 x1d3mw78 xqfszdh xj0a0fe`,style:{WebkitLineClamp:N},title:j,children:[A&&(0,Q.jsx)(`span`,{"data-board-type":i.type,className:`x3nfvp2 x2fvf9 xmziwt1 xddlp02`,children:i.type===`video`?(0,Q.jsx)(Ni,{"aria-hidden":!0,size:12}):(0,Q.jsx)(Xt,{"aria-hidden":!0,size:12})}),(0,Q.jsx)(`span`,{ref:y,children:j}),t?.recommended&&(0,Q.jsx)(`span`,{ref:x,className:`x1rg5ohu xdzw4kq xfn1xvj xmkeg23 x1y0btm7 xjuql9v x12oqio5 x12ogdgn x1k6wstc x1jlp1m6 xiygsch`,children:n(`choices.recommended`)}),(0,Q.jsx)(`span`,{hidden:!P,ref:b,className:`xdzw4kq x1fao0z8 x1j6dyjg x1bo0w0s`,children:M})]}),(0,Q.jsxs)(`div`,{ref:S,className:`x78zum5 x6s0dn4 x195vfkc x2lah0s x17rw0jw x13fj5qh`,children:[d&&!D&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(ct,{"aria-label":n(`chrome.expandBoard`,{id:s}),icon:Dn,size:{blockSize:22,size:13},title:n(`chrome.expand`),onClick:()=>m(s)}),(0,Q.jsx)(ct,{"aria-label":n(`chrome.downloadBoard`,{id:s}),icon:qt,size:{blockSize:22,size:13},title:n(`chrome.download`),onClick:F})]}),d&&k&&(0,Q.jsx)(`button`,{"aria-expanded":e,type:`button`,"aria-label":n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),title:n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),onClick:e=>_?.(s,e.currentTarget),...{0:{className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j xjbqb8w x1bo0w0s x1ypdohk x1717udv`},1:{className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j x1ypdohk x1717udv x1ghaxfu x12jjvdw x12ogdgn`}}[!!l|0],children:(0,Q.jsx)(Gt,{"aria-hidden":!0,size:13})}),c&&u&&!D&&(0,Q.jsx)(ct,{"aria-label":n(`chrome.replayBoard`,{id:s}),icon:an,size:{blockSize:22,size:13},title:n(`chrome.replay`),onClick:()=>h(s)}),c&&!O&&(0,Q.jsx)(ct,{active:u,"aria-label":n(u?`chrome.stopBoard`:`chrome.playBoard`,{id:s}),"aria-pressed":u,fill:u?`currentColor`:`none`,icon:zi,size:{blockSize:22,size:13},title:n(u?`chrome.playing`:`chrome.play`),onClick:()=>g(s),...{0:{},1:{className:`x1ghaxfu x12jjvdw x12ogdgn`}}[!!u|0]}),d&&D&&(0,Q.jsx)(Vn,{items:[{key:`expand`,icon:Dn,label:n(`chrome.expand`),onClick:()=>m(s)},{key:`download`,icon:qt,label:n(`chrome.download`),onClick:F},l!==void 0&&!k?{key:`parameters`,icon:Gt,label:n(l?`chrome.modifiedParametersBoard`:`chrome.parametersBoard`,{id:s}),onClick:()=>{C.current&&_?.(s,C.current)}}:null,c&&O?{key:`play`,icon:zi,label:n(u?`chrome.playing`:`chrome.play`),onClick:()=>g(s)}:null,c&&u?{key:`replay`,icon:an,label:n(`chrome.replay`),onClick:()=>h(s)}:null],children:(0,Q.jsx)(`button`,{"aria-label":n(`chrome.moreBoard`,{id:s}),ref:C,type:`button`,className:`xrvj5dj x1ku5rj1 x17z2i9w x17rw0jw xc342km x1sxf85j xjbqb8w x1bo0w0s x1ypdohk x1717udv`,children:(0,Q.jsx)(on,{"aria-hidden":!0,size:13})})})]})]})}var n_=(e,t)=>e===null?null:e/t;function r_(){let[e,t]=(0,Z.useState)(0);return(0,Z.useEffect)(()=>{if(!document.fonts)return;let e=!0,n=()=>{e&&(Vg(),t(e=>e+1))};return document.fonts.ready.then(n),document.fonts.addEventListener(`loadingdone`,n),()=>{e=!1,document.fonts.removeEventListener(`loadingdone`,n)}},[]),e}function i_({view:e,artboard:t,backlinks:n,boards:r,groups:i,allBoards:a,contentBase:o,versions:s,pending:c,playing:l,onExpand:u,onTogglePlay:d,onReplay:f,parameters:p,activeParameters:m,onToggleParameters:h,updates:g,verdicts:_,choices:v,overlayRef:y}){let b=r_(),[x,S]=(0,Z.useState)(()=>new Set),C=(0,Z.useCallback)((e,t)=>{S(n=>{let r=t===2;if(n.has(e)===r)return n;let i=new Set(n);return r?i.add(e):i.delete(e),i})},[]),w=n_(ar(lr,e.k),12);return(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t x47corl xb3r6kr`,children:(0,Q.jsxs)(`div`,{ref:y,className:`x10l6tqk x10a8y8t`,children:[i.map(([r,i])=>{let o=i.boards.map(e=>a[e]).filter(e=>!!e);if(o.length===0)return null;let s=Math.min(...o.map(e=>e.x)),c=Math.min(...o.map(e=>e.y)),l=w!==null&&i.boards.some(e=>x.has(e))?(Hg[2]-Hg[1])*w:0,u=tr({minX:s,maxX:Math.max(...o.map(e=>e.x+e.w))},e.k,l);if(!u)return null;let d=_?.states[r];return(0,Q.jsxs)(`div`,{"data-chrome":d?`group-label`:void 0,"data-group-label":r,...{0:{className:`x10l6tqk x78zum5 x6s0dn4 x17d4w8g x1hj3fc7 x1s688f xo2rkog xuxw1ft xb3r6kr`},1:{className:`x10l6tqk x78zum5 x6s0dn4 x17d4w8g x1hj3fc7 x1s688f xo2rkog xuxw1ft xb3r6kr x67bb7w`}}[!!d|0],style:{left:e.x+s*e.k,top:e.y+c*e.k-l,maxWidth:u.maxWidth,fontSize:13,transform:`scale(${u.scale}) translateY(calc(-100% - 26px))`},children:[(0,Q.jsx)(`span`,{className:`xm9j1uf x12oqio5 x19ckca5 xs0jrwl x1fao0z8 x1j6dyjg xk50ysn xd4r4e8 x2lah0s`,children:r}),i.title&&(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xlyipyv`,children:i.title}),d&&_&&(0,Q.jsx)(Yg,{canJudge:_.canJudge,evidenceAt:_.evidenceAt(r),hideEvidenceNote:!!g?.[r],verdict:d,onPass:()=>_.pass(r),onReject:()=>_.startReject(r),onUndo:()=>_.undoPass(r)}),g?.[r]&&(0,Q.jsx)(Nn,{update:g[r]}),t&&n?.[r]&&(0,Q.jsx)(qg,{group:!0,artboard:t,entries:n[r],id:r})]},r)}),v&&r.map(([t,n])=>v.chosenBoards.has(t)?(0,Q.jsx)(`div`,{"data-chosen-board":t,className:`x10l6tqk x9f619 x9r2w2z x1y0btm7 x1lvdfi3 x1cum3z5 x47corl`,style:{left:e.x+n.x*e.k,top:e.y+n.y*e.k,width:n.w*e.k,height:n.h*e.k}},`chosen-${t}`):null),t&&w!==null&&r.map(([r,i])=>n?.[r]?(0,Q.jsx)(`div`,{className:`x10l6tqk x90hvkt x67bb7w`,style:{left:e.x+(i.x+i.w)*e.k,top:e.y+(i.y+i.h)*e.k},children:(0,Q.jsx)(qg,{artboard:t,entries:n[r],group:!1,id:r})},`backlinks-${r}`):null),w!==null&&r.map(([t,n])=>{let r=Yn(n,e);if(!r)return null;let i=Pn(s,n.file)&&!c.has(t);return(0,Q.jsx)(t_,{active:m===t,board:n,choice:v?.boardChoice(t),contentBase:o,fontsVersion:b,id:t,interactive:i&&kn(n,s),modified:p?.[t],playing:l.has(t),ready:i,rect:r,scale:w,onChoose:v?.choose,onExpand:u,onLines:C,onReplay:f,onToggleParameters:h,onTogglePlay:d},t)})]})})}var a_=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;function o_({commentTool:e,hasVerify:t,inspectorOpen:n,setMode:r}){let[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=e?`comments`:n?`inspector`:(i||o)&&t?`verify`:null,l=e=>{a(e===`verify`),r(e)},u=()=>{a(!1),r(null)};return{tab:c,pinned:o,show:l,close:u,toggle:e=>c===e&&!o?u():l(e),togglePin:()=>{c===`verify`&&a(!0),s(e=>!e)}}}function s_(e){let[t,n]=(0,Z.useState)(e),[r,i]=(0,Z.useState)(!1);return e&&(e!==t||r)&&(n(e),i(!1)),!e&&t&&!r&&(a_()?n(null):i(!0)),(0,Z.useEffect)(()=>{if(!r)return;let e=setTimeout(()=>{i(!1),n(null)},160);return()=>clearTimeout(e)},[r]),{shown:e??t,closing:!e&&r}}var c_={top:64,right:414,bottom:24,left:24};function l_({available:e,counts:t,panes:n,pinned:r,tab:i,onPin:a,onTab:o}){let{t:s}=Un(),{shown:c,closing:l}=s_(i),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),[f,p]=(0,Z.useState)(null),m=Math.max(120,e-62-14);if((0,Z.useLayoutEffect)(()=>{let e=d.current;if(!e){p(null);return}let t=()=>p((u.current?.offsetHeight??0)+e.offsetHeight+2);if(t(),typeof ResizeObserver!=`function`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[c]),!c)return null;let h=r?m:f===null?void 0:Math.min(f,m),g=[...t.verify===void 0?[]:[[`verify`,(0,Q.jsxs)(Z.Fragment,{children:[s(`panel.verify`),(0,Q.jsx)(`span`,{className:`xdwrcjd xddlp02 xss6m8b`,children:t.verify})]},`verify`)]],[`comments`,(0,Q.jsxs)(Z.Fragment,{children:[s(`panel.comments`),(0,Q.jsx)(`span`,{className:`xdwrcjd xddlp02 xss6m8b`,children:t.comments})]},`comments`)],[`inspector`,s(`panel.inspector`)]];return(0,Q.jsxs)(`section`,{"aria-label":s(`panel.label`),"data-chrome":``,"data-closing":l||void 0,"data-pinned":r,"data-side-panel":``,...{0:{className:`x10l6tqk x1355qak x78zum5 xdt5ytf xb3r6kr x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 xo2rkog x4z9k3i x12t5ck7 xqa01rw x1shwlz2 x1debuo4 xua3uq3 x1mbqufl xpkt1hu x1aquc0h x4wkmsb`},1:{className:`x10l6tqk x1355qak x78zum5 xdt5ytf xb3r6kr x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 xo2rkog x4z9k3i x12t5ck7 x1shwlz2 x1debuo4 xua3uq3 x1mbqufl xpkt1hu x1aquc0h x4wkmsb x1su791e x10e4vud x47corl`}}[!!l|0],style:{top:62,right:10,width:380,height:h,maxHeight:m},children:[(0,Q.jsxs)(`div`,{ref:u,className:`x78zum5 x6s0dn4 x17d4w8g x2lah0s x1vvogim x1awh872 xso031l x1q0q8m5 xtrfj0v`,children:[(0,Q.jsx)(`div`,{"aria-label":s(`panel.label`),role:`tablist`,className:`x78zum5 x195vfkc x98rzlu`,children:g.map(([e,t])=>(0,Q.jsx)(`button`,{"aria-selected":c===e,role:`tab`,type:`button`,onClick:()=>o(e),...{0:{className:`xifx94n x1q4txso xc342km x1kogg8i xjbqb8w xj0l527 x1bo0w0s xln7xf2 x1ypdohk`},1:{className:`xifx94n x1q4txso xc342km x1kogg8i xln7xf2 x1ypdohk x15dg6x3 xo2rkog xk50ysn`}}[c===e|0],children:t},e))}),(0,Q.jsx)(`button`,{"aria-label":s(r?`panel.unpin`:`panel.pin`),"aria-pressed":r,title:s(r?`panel.unpin`:`panel.pin`),type:`button`,onClick:a,...{0:{className:`xrvj5dj x1ku5rj1 xgd8bvy x1fgtraw x1717udv xc342km x1kogg8i xjbqb8w xj0l527 x1bo0w0s x1ypdohk`},1:{className:`xrvj5dj x1ku5rj1 xgd8bvy x1fgtraw x1717udv xc342km x1kogg8i x1ypdohk x1oaqgua xotqas5`}}[!!r|0],children:(0,Q.jsx)(Li,{size:15,...{0:{className:`x11xpdln x13dflua`},1:{className:`x11xpdln x13dflua xnu3goq`}}[!!r|0]})})]}),(0,Q.jsx)(`div`,{className:`x98rzlu x2lwn1j xysyzu8 x78zum5 xdt5ytf`,children:(0,Q.jsx)(`div`,{ref:d,role:`tabpanel`,...{0:{className:`x78zum5 xdt5ytf x2lah0s xnjr9wf x1shwlz2 x1debuo4 x1aquc0h`},1:{className:`x78zum5 xdt5ytf x2lah0s xnjr9wf x1shwlz2 x1debuo4 x1aquc0h x98rzlu x2lwn1j`}}[!!r|0],children:n[c]},c)})]})}var u_={blockSize:34,borderRadius:8,size:18,strokeWidth:1.75};function d_({pages:e,page:t,onPageChange:n,tool:r,onToolChange:i,commenting:a=!1}){let{t:o}=Un(),s=e.find(e=>e.id===t);return(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x1eu8d0j x78zum5 x6s0dn4 x195vfkc xn3w4p2 xfn1xvj x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 x4z9k3i xo2rkog x1n327nk x12lbrt0`,children:[(0,Q.jsx)(Vn,{placement:`bottomLeft`,items:e.map(e=>({key:e.id,label:e.name,icon:e.id===t?_t:void 0,onClick:()=>n(e.id)})),children:(0,Q.jsxs)(`button`,{"aria-label":o(`chrome.switchPage`),type:`button`,className:`x78zum5 x6s0dn4 x167g77z x90ne7k xe2zdcy xf159sx xc342km xur7f20 xjbqb8w xj0l527 xo2rkog x1ypdohk xuxw1ft`,children:[(0,Q.jsx)(ln,{size:16,className:`xddlp02`}),(0,Q.jsx)(`span`,{className:`xif65rj x1s688f x1racy4e xb3r6kr xlyipyv`,children:s?.name??o(`chrome.noPages`)}),(0,Q.jsx)(Pt,{size:14,className:`xddlp02`})]})}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),(0,Q.jsx)(ct,{active:r===`select`,"aria-label":o(`chrome.select`),icon:Nt,size:u_,title:o(`chrome.selectTitle`),onClick:()=>i(`select`)}),(0,Q.jsx)(ct,{active:r===`hand`,"aria-label":o(`chrome.hand`),icon:kt,size:u_,title:o(`chrome.handTitle`),onClick:()=>i(`hand`)}),a?(0,Q.jsx)(ct,{active:r===`comment`,"aria-label":o(`chrome.comment`),icon:At,size:u_,title:o(`chrome.commentTitle`),onClick:()=>i(`comment`)}):null]})}function f_({actions:e,live:t,warnings:n,zoom:r,onZoomIn:i,onZoomOut:a,onFit:o,onActualSize:s,inspectorOpen:c,onToggleInspector:l,verify:u,verifyOpen:d,onToggleVerify:f}){let{t:p}=Un(),m=e=>(0,Q.jsx)(`span`,{className:`xddlp02 x1fao0z8 xfifm61`,children:e});return(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x1eu8d0j x78zum5 x6s0dn4 x195vfkc xn3w4p2 xfn1xvj x12ilycc xmkeg23 x1y0btm7 x12xov25 x4pepcl x1cqdj14 x4z9k3i xo2rkog x1n327nk x131sewu`,children:[u&&u.total>0&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`button`,{"aria-pressed":!!d,title:p(`panel.verify`),type:`button`,onClick:f,...{0:{className:`x78zum5 x6s0dn4 x17d4w8g x1gnnpzl x1xijbu4 xc342km xjbqb8w x1bo0w0s xqfszdh x4z9k3i xk50ysn x1kogg8i x1ypdohk`},1:{className:`x78zum5 x6s0dn4 x17d4w8g x1gnnpzl x1xijbu4 xc342km xqfszdh x4z9k3i xk50ysn x1kogg8i x1ypdohk x15dg6x3 xo2rkog`}}[!!d|0],children:[(0,Q.jsx)(_t,{size:13,className:`xwzsjwp`}),p(`verdict.progress`,{passed:u.passed,total:u.total})]}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`})]}),t===void 0?null:(0,Q.jsx)(`span`,{className:`x78zum5 x6s0dn4 xl56j7k x23j0i4 x1gnnpzl`,title:p(t?`chrome.live`:`chrome.reconnecting`),children:(0,Q.jsx)(`span`,{...{0:{className:`xci0xqf x1hagigm x16rqkct x1alw6we`},1:{className:`xci0xqf x1hagigm x16rqkct xux1nz0 x1s780dp xaatb59 x198oqkg`}}[!!t|0]})}),n.length>0&&(0,Q.jsx)(Ht,{placement:`bottomRight`,content:(0,Q.jsx)(`ul`,{className:`x1ghz6dp x12ulsxz xwn43p0 x1lr1uin x4z9k3i x1dbl2gt`,children:n.map(e=>(0,Q.jsx)(`li`,{children:e},e))}),children:(0,Q.jsx)(`button`,{type:`button`,className:`xd7y6wv xdqyycr xc342km x1kogg8i xqdcvd7 x7zghnd xk50ysn x1ypdohk`,children:p(`chrome.warnings`,{count:n.length})})}),(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),(0,Q.jsx)(ct,{active:c,"aria-label":p(`chrome.toggleInspector`),"aria-pressed":c,icon:Fi,size:`small`,title:p(`chrome.inspector`),onClick:l}),(0,Q.jsx)(Vn,{placement:`bottomRight`,items:[{key:`in`,label:p(`chrome.zoomIn`),extra:m(`⌘ +`),onClick:i},{key:`out`,label:p(`chrome.zoomOut`),extra:m(`⌘ −`),onClick:a},{key:`fit`,label:p(`chrome.zoomFit`),extra:m(`⇧ 1`),onClick:o},{key:`actual`,label:p(`chrome.zoomActual`),extra:m(`⇧ 0`),onClick:s}],children:(0,Q.jsxs)(`button`,{"aria-label":p(`chrome.zoom`),type:`button`,className:`x78zum5 x6s0dn4 x1jnr06f x1gnnpzl xdqyycr xc342km x1kogg8i xjbqb8w xj0l527 x1ypdohk xuxw1ft`,children:[(0,Q.jsxs)(`span`,{className:`xss6m8b x15hfatp x1hr2gdg`,children:[Math.round(r*100),`%`]}),(0,Q.jsx)(vt,{size:14,className:`xddlp02`})]})}),e?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`x1i1rx1s xmix8c7 xjgtzcg xh6qj2i`}),e]}):null]})}function p_({canvas:e,page:t,changePage:n,viewNow:r,place:i}){let a=(0,Z.useEffectEvent)(()=>t?{kind:`artboard`,page:t,...r()}:null),o=(0,Z.useEffectEvent)((r,a)=>e?.pages.some(e=>e.id===r)?(r!==t&&n(r,!1),i(a),!0):!1);(0,Z.useEffect)(()=>Ue({read:a,apply:e=>e.kind===`artboard`&&o(e.page,{x:e.x,y:e.y,k:e.k})}),[])}function m_({canvas:e,layout:t,fitPage:n,startAtFocus:r=!1}){let[i,a]=(0,Z.useState)(null),o=(0,Z.useRef)(null),s=(0,Z.useRef)(!1),[c,l]=Er(),u=(0,Z.useRef)(c),d=(0,Z.useCallback)((e,t=!0,n=!0)=>{a(e),o.current=n?e:null,u.current=e,l(e,t)},[l]);return(0,Z.useEffect)(()=>{if(!e||!t)return;let n=e.pages[0]?.id??null,a=t=>t&&e.pages.some(e=>e.id===t)?t:null;if(s.current)c===u.current?i&&e.pages.some(e=>e.id===i)||d(n):d(a(c)??n);else{s.current=!0;let i=r&&e.focus?Xn(e,t,e.focus.target)?.page:void 0,o=a(c)??(c===null?a(i)??a(e.activePage)??n:n);d(o)}},[e,t,i,r,c,d]),(0,Z.useEffect)(()=>{o.current!==null&&o.current===i&&n(i)&&(o.current=null)}),{page:i,changePage:(t,n=!0)=>{e?.pages.some(e=>e.id===t)&&d(t,!1,n)}}}function h_({comments:e,comment:t,page:n,boards:r,inspector:i}){let[a,o]=(0,Z.useState)(null),[s,c]=(0,Z.useState)(null),l=(0,Z.useRef)(null),u=(0,Z.useMemo)(()=>e?.comments.threads??[],[e]),d=(0,Z.useMemo)(()=>new Set(e?.stale??[]),[e]),f=(0,Z.useMemo)(()=>Ou(u),[u]);(0,Z.useEffect)(()=>{o(null),c(null)},[n]);let p=(0,Z.useCallback)((e,t)=>t===void 0?void 0:i.frames[e]?.nodes.find(e=>e.id===t)?.path,[i.frames]),m=(0,Z.useCallback)(e=>{c(null),o(e)},[]);return{threads:u,stale:d,numbers:f,draft:a,openId:s,setOpenId:c,onFrameDrag:(0,Z.useCallback)((e,t)=>{if(!n)return;if(t.phase===`start`){l.current={boardId:e,id:t.id,x:t.x,y:t.y};return}let r=l.current;if(l.current=null,t.phase!==`cancel`||!r||r.boardId!==e)return;let a=i.hover,o=a&&a.boardId===e&&a.id===r.id?a.rect:void 0,s=p(e,r.id);m(bu(n,e,r,o&&s?{rect:o,path:s}:void 0))},[n,i.hover,p,m]),onCanvasClick:(0,Z.useCallback)(e=>{if(!n)return;let t=Object.entries(r).find(([,t])=>t.page===n&&e.x>=t.x&&e.x<=t.x+t.w&&e.y>=t.y&&e.y<=t.y+t.h);m(t?bu(n,t[0],{x:e.x-t[1].x,y:e.y-t[1].y}):bu(n,null,e))},[n,r,m]),commentSelection:(0,Z.useCallback)(()=>{if(!n)return!1;let e=xu(n,i.selectedTargets.map(e=>({boardId:e.boardId,rect:e.rect,path:p(e.boardId,e.id)})));return e?(m(e),!0):!1},[n,i.selectedTargets,p,m]),submit:(0,Z.useCallback)(async e=>{if(!a||!t)return!1;try{return await t({op:`create`,anchor:a,text:e}),o(null),!0}catch{return!1}},[a,t]),cancelDraft:()=>o(null),actions:(0,Z.useMemo)(()=>{if(!t)return;let e=e=>t(e).then(()=>!0,()=>!1);return{reply:(t,n)=>e({op:`reply`,threadId:t,text:n}),edit:(t,n,r)=>void e({op:`edit`,threadId:t,messageId:n,text:r}),remove:(t,n)=>void e({op:`delete`,threadId:t,messageId:n}),resolve:t=>void e({op:`resolve`,threadId:t}),reopen:t=>void e({op:`reopen`,threadId:t})}},[t]),close:(0,Z.useCallback)(()=>{let e=a!==null||s!==null;return o(null),c(null),e},[a,s])}}var g_=3e5,__=8e3,v_=1e4;function y_(e,t,n,r){let i=t.x+e.x*t.k,a=t.y+e.y*t.k,o=i+e.w*t.k,s=a+e.h*t.k;return o>-n.width*r&&i<n.width*(1+r)&&s>-n.height*r&&a<n.height*(1+r)}function b_({now:e=()=>performance.now(),idleMs:t=g_,readyTimeoutMs:n=__,captureTimeoutMs:r=v_}={}){let i=new Map,a=(e,i,a,o,s,c)=>{switch(e.phase){case`mounted`:!a&&s-e.lastActive>=t&&e.uncapturableVersion!==i.version&&(e.phase=`capturing`,e.captureStartedAt=s,e.capturingVersion=i.version,c.push(i.id));return;case`capturing`:a?e.phase=`mounted`:s-e.captureStartedAt>=r&&(e.uncapturableVersion=e.capturingVersion,e.phase=`mounted`);return;case`unloaded`:(a||o)&&(e.phase=`restoring`,e.restoreStartedAt=s,e.lastActive=s);return;case`restoring`:s-e.restoreStartedAt>=n&&(e.phase=`mounted`,e.lastActive=s)}},o=(e,i)=>e.phase===`capturing`?e.captureStartedAt+r:e.phase===`restoring`?e.restoreStartedAt+n:e.phase===`mounted`&&!i&&e.uncapturableVersion!==e.version?e.lastActive+t:null;return{update({boards:t,view:n,viewport:r,active:s,gesturing:c}){let l=e(),u=new Set(t.map(e=>e.id));for(let e of i.keys())u.has(e)||i.delete(e);let d=[],f=new Map,p=new Set,m=null;for(let e of t){let t=i.get(e.id);t||(t={phase:`mounted`,active:!1,lastActive:l,version:e.version,captureStartedAt:0,capturingVersion:e.version,restoreStartedAt:0,uncapturableVersion:null},i.set(e.id,t));let u=t.version!==e.version;t.version=e.version;let h=s.has(e.id)||y_(e,n,r,0);(h||t.active||u&&t.phase!==`unloaded`)&&(t.lastActive=l),t.active=h,c||a(t,e,h,y_(e,n,r,1),l,d),f.set(e.id,t.phase),t.uncapturableVersion===e.version&&p.add(e.id);let g=c?null:o(t,h);g!==null&&(m===null||g<m)&&(m=g)}return{phases:f,capture:d,uncapturable:p,wakeAt:m}},touch(t){let n=i.get(t);n&&(n.lastActive=e())},captured(e,{version:t,ok:n}){let r=i.get(e);r&&r.phase===`capturing`&&t===r.capturingVersion&&(n?r.phase=t===r.version?`unloaded`:`mounted`:(r.uncapturableVersion=t,r.phase=`mounted`))},ready(t){let n=i.get(t);n?.phase===`restoring`&&(n.phase=`mounted`,n.lastActive=e())}}}var x_=2,S_={phases:new Map,capture:[],uncapturable:new Set,wakeAt:null};function C_(e,t){if(e.phases.size!==t.phases.size||e.uncapturable.size!==t.uncapturable.size)return!1;for(let[n,r]of e.phases)if(t.phases.get(n)!==r)return!1;for(let n of e.uncapturable)if(!t.uncapturable.has(n))return!1;return!0}function w_({boards:e,versions:t,pending:n,view:r,viewport:i,active:a,gesturing:o}){let s=(0,Z.useMemo)(()=>b_(),[]),c=(0,Z.useRef)(new Map),l=(0,Z.useRef)(new Map),u=(0,Z.useRef)(new Map),d=(0,Z.useRef)(0),[f,p]=(0,Z.useState)(()=>new Map),m=(0,Z.useRef)(f);m.current=f;let[h,g]=(0,Z.useState)(S_),[_,v]=(0,Z.useState)(0),y=(0,Z.useCallback)(()=>v(e=>e+1),[]),b=(0,Z.useMemo)(()=>e.filter(([e,r])=>!Wn(r)&&Pn(t,r.file)&&!n.has(e)).map(([e,n])=>({id:e,x:n.x,y:n.y,w:n.w,h:n.h,version:t[n.file]??0})),[e,t,n]);(0,Z.useEffect)(()=>{let e=s.update({boards:b,view:r,viewport:i,active:a,gesturing:o});g(t=>C_(t,e)?t:e);let t=Math.min(x_,window.devicePixelRatio||1);for(let n of e.capture){let e=b.find(e=>e.id===n)?.version??0,r=++d.current;u.current.set(n,{request:r,version:e}),requestAnimationFrame(()=>requestAnimationFrame(()=>{u.current.get(n)?.request===r&&c.current.get(n)?.contentWindow?.postMessage({type:`ryugi:board:capture`,request:r,scale:t},`*`)}))}if(e.wakeAt===null)return;let n=setTimeout(y,Math.max(0,e.wakeAt-performance.now()));return()=>clearTimeout(n)},[s,b,r,i,a,o,_,y]),(0,Z.useEffect)(()=>{let e=new Set(b.map(e=>e.id)),t=[...m.current.keys()].filter(t=>!e.has(t));t.length&&p(e=>{let n=new Map(e);for(let e of t)URL.revokeObjectURL(n.get(e)),n.delete(e);return n})},[b]),(0,Z.useEffect)(()=>()=>{for(let e of m.current.values())URL.revokeObjectURL(e)},[]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.data?.type;if(typeof t!=`string`||!t.startsWith(`ryugi:board:`))return;let n=[...c.current].find(([,t])=>t.contentWindow===e.source)?.[0];if(n){if(t===`ryugi:board:ready`)s.ready(n),y();else if(t===`ryugi:board:interacted`||t===`ryugi:board:changed`)s.touch(n);else if(t===`ryugi:board:snapshot`){let t=u.current.get(n);if(!t||e.data.request!==t.request)return;u.current.delete(n);let{blob:r,width:i,height:a}=e.data,o=r instanceof Blob&&typeof i==`number`&&typeof a==`number`&&i>0&&a>0;if(o){let e=URL.createObjectURL(r);p(t=>{let r=new Map(t),i=r.get(n);return i&&URL.revokeObjectURL(i),r.set(n,e),r})}s.captured(n,{version:t.version,ok:o}),y()}}};return window.addEventListener(`message`,e),()=>window.removeEventListener(`message`,e)},[s,y]);let x=(0,Z.useCallback)(e=>{let t=l.current.get(e);return t||(t=t=>{t?c.current.set(e,t):(c.current.delete(e),u.current.delete(e))},l.current.set(e,t)),t},[]),S=(0,Z.useMemo)(()=>{let e={mounted:0,capturing:0,unloaded:0,restoring:0};for(let t of h.phases.values())e[t]++;return{...e,uncapturable:h.uncapturable.size}},[h]);return{phases:h.phases,images:f,frameRef:x,counts:S}}var T_=`allow-scripts allow-same-origin allow-forms allow-popups allow-modals allow-downloads`,E_=`allow-scripts`,D_=e=>e.includes(`:`)?`[${e}]`:e;function O_({location:e,contentBase:t,boardPort:n,boardPath:r,reachable:i}){if(/^https?:\/\//.test(t)){let n=new URL(t).origin===e.origin;return{base:t,sandbox:n?E_:T_,mode:n?`opaque`:`same-site`}}return n&&r&&i?{base:`${e.protocol}//${D_(e.hostname)}:${n}${r}`,sandbox:T_,mode:`same-site`}:{base:t,sandbox:E_,mode:`opaque`}}var k_=(e,t)=>`${e.protocol}//${D_(e.hostname)}:${t}/robots.txt`;function A_({contentBase:e,boardPort:t,boardPath:n}){let r=!/^https?:\/\//.test(e)&&!!t&&!!n,[i,a]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!r||!t)return;let e=!1;return fetch(k_(location,t),{mode:`no-cors`,cache:`no-store`}).then(()=>!e&&a({port:t,ok:!0}),()=>!e&&a({port:t,ok:!1})),()=>{e=!0}},[r,t]),r&&i?.port!==t?null:O_({location,contentBase:e,boardPort:t,boardPath:n,reachable:i?.ok??!1})}function j_(){let e=e=>!!e&&typeof e==`object`&&!Array.isArray(e),t=(e,t=512)=>typeof e==`string`&&e.length<=t,n=e=>typeof e==`number`&&Number.isFinite(e)&&Math.abs(e)<=1e9,r=e=>typeof e==`string`&&/^#[\da-f]{6}$/i.test(e);function i(e,i){if(e.type===`text`)return t(i);if(e.type===`color`)return r(i);if(e.type===`boolean`)return typeof i==`boolean`;if(e.type===`enum`)return typeof i==`string`&&!!e.options?.some(e=>e.value===i);if(!n(i)||e.min!==void 0&&i<e.min||e.max!==void 0&&i>e.max)return!1;let a=e.step===void 0?0:(i-(e.min??0))/e.step;return Math.abs(a-Math.round(a))<1e-7}function a(a){if(a===null)return{schema:null,error:null};let o=e=>({schema:null,error:e});if(!e(a)||a.version!==1||!e(a.controls))return o(`Expected version 1 and a controls object.`);let s=Object.entries(a.controls);if(s.length>32)return o(`Declare at most 32 parameters.`);let c=[],l=new Set;for(let[a,u]of s){let s=e=>o(`Parameter ${a.slice(0,64)}: ${e}`);if(!/^[A-Z][\w-]{0,63}$/i.test(a)||[`constructor`,`prototype`].includes(a))return s(`invalid key.`);if(l.has(a.toLowerCase()))return s(`duplicate case-insensitive key.`);if(l.add(a.toLowerCase()),!e(u)||![`color`,`range`,`number`,`boolean`,`enum`,`text`].includes(String(u.type)))return s(`unsupported type.`);if(u.label!==void 0&&!t(u.label,128))return s(`label must be short text.`);if(u.section!==void 0&&!t(u.section,128))return s(`section must be short text.`);let d={type:u.type,label:u.label??a,default:u.default};if(u.section!==void 0&&(d.section=u.section),d.type===`number`||d.type===`range`){for(let e of[`min`,`max`,`step`])if(u[e]!==void 0){if(!n(u[e]))return s(`${e} must be a finite number.`);d[e]=u[e]}if(d.type===`range`){if(d.min===void 0||d.max===void 0)return s(`range needs min and max.`);d.step??=1}if(d.min!==void 0&&d.max!==void 0&&d.min>=d.max||d.step!==void 0&&d.step<1e-6)return s(`invalid bounds or step.`)}if(d.type===`enum`||d.type===`color`&&u.options!==void 0){if(!Array.isArray(u.options)||!u.options.length||u.options.length>32)return s(`options must contain 1–32 choices.`);let n=[];for(let i of u.options){let a=typeof i==`string`?i:e(i)?i.value:null,o=typeof i==`string`?i:e(i)?i.label??a:null;if(!t(a)||!t(o,128)||d.type===`color`&&!r(a)||n.some(e=>e.value===a))return s(`invalid or duplicate option.`);n.push({value:a,label:o})}d.options=n}if(!i(d,d.default))return s(`default does not match its type, options or bounds.`);c.push([a,d])}return{schema:{version:1,controls:Object.fromEntries(c)},error:null}}function o(t,n){if(!e(n)||Object.keys(n).length!==Object.keys(t.controls).length)return null;let r=[];for(let[e,a]of Object.entries(t.controls)){if(!Object.hasOwn(n,e)||!i(a,n[e]))return null;r.push([e,n[e]])}return Object.fromEntries(r)}function s(e,t={},n){return Object.fromEntries(Object.entries(e.controls).map(([e,r])=>{let a=t[e];return[e,(!n||a!==n.controls[e]?.default)&&i(r,a)?a:r.default]}))}return{readTweakSchema:a,readTweakValues:o,reconcileTweakValues:s}}var{readTweakSchema:M_,readTweakValues:N_,reconcileTweakValues:P_}=j_();function F_(e){let t=(0,Z.useRef)({}),[n,r]=(0,Z.useState)(t.current),i=(0,Z.useRef)(new Map),a=(0,Z.useRef)(new Map),o=(0,Z.useCallback)((e,n)=>{t.current={...t.current,[e]:n},r(t.current)},[]),s=(0,Z.useCallback)((e,t)=>{for(let n of i.current.values())n.boardId===e&&n.session&&n.element.contentWindow?.postMessage({type:`ryugi:tweaks`,action:`set`,connection:n.connection,session:n.session,values:t},`*`)},[]);(0,Z.useEffect)(()=>{t.current={},r({});for(let e of i.current.values())e.connection=crypto.randomUUID(),e.session=null},[e]),(0,Z.useEffect)(()=>{let e=e=>{let n=e.data;if(!n||n.type!==`ryugi:tweaks:ready`||typeof n.session!=`string`||!n.session||n.session.length>128)return;let r=[...i.current.values()].find(t=>t.element.contentWindow===e.source&&t.connection===n.connection);if(!r||r.session&&r.session!==n.session||n.error!==null&&(typeof n.error!=`string`||n.error.length>512))return;r.session=n.session;let a=M_(n.schema);n.error&&(a.schema=null,a.error=n.error);let c=t.current[r.boardId],l=a.schema?P_(a.schema,c?.values,c?.schema??void 0):{};o(r.boardId,{...a,values:l}),a.schema&&s(r.boardId,l)};return window.addEventListener(`message`,e),()=>window.removeEventListener(`message`,e)},[o,s]);let c=(0,Z.useCallback)((e,t=`canvas`)=>{let n=`${t}:${e}`;return a.current.has(n)||a.current.set(n,t=>{t?i.current.get(n)?.element!==t&&i.current.set(n,{boardId:e,element:t,connection:crypto.randomUUID(),session:null}):i.current.delete(n)}),a.current.get(n)},[]),l=(0,Z.useCallback)((e,t=`canvas`)=>{let n=i.current.get(`${t}:${e}`);n&&(n.connection=crypto.randomUUID(),n.session=null,n.element.contentWindow?.postMessage({type:`ryugi:tweaks`,action:`connect`,connection:n.connection},`*`))},[]),u=(0,Z.useCallback)((e,n)=>{let r=t.current[e],i=r?.schema&&N_(r.schema,n);r&&i&&(o(e,{...r,values:i}),s(e,i))},[o,s]);return{states:n,refFor:c,loaded:l,change:(0,Z.useCallback)((e,n,r)=>{u(e,{...t.current[e]?.values,[n]:r})},[u]),reset:(0,Z.useCallback)(e=>{let n=t.current[e]?.schema;n&&u(e,P_(n))},[u])}}function I_({canvas:e,frame:t,order:n,states:r,updates:i}){let[a,o]=(0,Z.useState)(`all`),[s,c]=(0,Z.useState)(null),l=Mu(n,a,r,i),u=n=>{let r=e?.groups?.[n],i=r&&e?rr(r,e.boards):null;c(n),i&&t({minX:i.x,minY:i.y,maxX:i.x+i.w,maxY:i.y+i.h})};return{filter:a,setFilter:o,current:s,rows:l,pick:u,step:e=>{let t=Nu(l,n,s,e);t&&u(t)}}}var L_=(e,t)=>e.closed?`closed`:Yt(t,e.id).submitted?`submitted`:`open`;function R_({canvas:e,layout:t,page:n,threads:r,listening:i,comment:a}){let o=(0,Z.useMemo)(()=>e&&t?Jt(e,t):[],[e,t]),s=(0,Z.useMemo)(()=>{let t=new Map;for(let n of o)for(let r of n.groups)for(let n of e?.groups?.[r]?.boards??[])t.set(n,r);return t},[o,e]),c=(0,Z.useMemo)(()=>{let t=new Map;for(let n of o)for(let i of n.groups)t.set(i,Wt(r,i,e?.groups?.[i]?.recommend));return t},[o,r,e]),l=(0,Z.useMemo)(()=>new Map(o.map(e=>[e.id,L_(e,r)])),[o,r]),u=(0,Z.useMemo)(()=>{let e=new Set;for(let t of o)for(let n of t.groups){let r=c.get(n);r?.choice&&(!r.byRecommendation||l.get(t.id)!==`open`)&&e.add(r.choice)}return e},[o,c,l]),d=(0,Z.useMemo)(()=>{let t=o.filter(e=>e.page===n&&!e.closed).at(-1);if(!t)return null;let i=l.get(t.id);if(i!==`open`&&i!==`submitted`)return null;let a=new Set(t.groups.flatMap(t=>e?.groups?.[t]?.boards??[])),s=new Set(t.groups),u=r.filter(e=>!fu(e)&&e.messages.some(e=>!e.deleted)&&(e.anchor.board&&a.has(e.anchor.board)||e.anchor.group&&s.has(e.anchor.group))).length,d=t.groups.map(e=>[e,c.get(e)]),f=Yt(r,t.id);return{round:t,state:i,total:t.groups.length,chosen:d.filter(([,e])=>e?.choice&&!e.byRecommendation).length,byRecommendation:d.filter(([,e])=>e?.byRecommendation).map(([e])=>e),unanswered:d.filter(([,e])=>!e?.choice).map(([e])=>e),comments:u,...f.submitted&&f.at?{submittedAt:f.at}:{}}},[o,n,l,e,r,c]),f=e=>{a&&a(e).catch(()=>{})},p=t=>{let n=s.get(t);if(!n)return null;let r=Qt(o,n),i=c.get(n);return{group:n,chosen:!!i?.choice&&i.choice===t&&!i.byRecommendation,recommended:e?.groups?.[n]?.recommend===t,disabled:!a||!r||l.get(r.id)!==`open`}},m=t=>{let n=e?.boards[t],r=p(t);if(!n||!r||r.disabled)return;let i=r.chosen?null:t;f({op:`create`,anchor:{page:n.page,x:n.x,y:n.y,group:r.group,choice:i},text:i??`Clear ${r.group}`})},h=e=>{d&&f({op:`create`,anchor:{page:d.round.page,x:0,y:0,round:d.round.id,submit:e},text:`${e?`Submit`:`Withdraw`} ${d.round.id}`})};return{active:o.length>0,boardChoice:p,choose:m,chosenBoards:u,current:d,listening:i,canAct:!!a,submit:()=>h(!0),withdraw:()=>h(!1),choiceOf:e=>c.get(e)}}function z_(e,t,n){let r=[...er(e.map(([e,t])=>({id:e,...t})),t,n)].sort().join(` `);return(0,Z.useMemo)(()=>new Set(r?r.split(` `):[]),[r])}var B_=()=>({joined:{},marks:{},members:null,shown:{},verdicts:{}});function V_(e,t){let n={...e};for(let[e,r]of Object.entries(t))r>0&&(n[e]=r);return n}function H_(e,t){if(!e.members)return{...e,members:t.groups,shown:V_({},t.versions),verdicts:t.verdicts};let n={},r={};for(let[i,a]of Object.entries(t.groups)){let o=e.members[i],s=t.verdicts[i]===e.verdicts[i]?{...e.marks[i]}:{},c=new Set(e.joined[i]??[]);for(let n of a){let r=t.versions[n]??0;o&&!o.includes(n)&&c.add(n),!(r<=0)&&(c.delete(n)?s[n]={at:t.now,compare:!1}:(e.shown[n]??0)>0&&e.shown[n]!==r&&(s[n]={at:t.now,compare:!0}))}for(let e of Object.keys(s))a.includes(e)||delete s[e];Object.keys(s).length&&(n[i]=s),c.size&&(r[i]=[...c])}return{joined:r,marks:n,members:t.groups,shown:V_(e.shown,t.versions),verdicts:t.verdicts}}function U_(e){return Object.fromEntries(Object.entries(e.marks).map(([t,n])=>{let r=e.members?.[t]??[],i=Object.keys(n).sort((e,t)=>r.indexOf(e)-r.indexOf(t));return[t,{at:Math.max(...i.map(e=>n[e].at)),boards:i.map(e=>({id:e,compare:n[e].compare}))}]}))}var W_=(e,t)=>e.filter(e=>e.anchor.group===t&&e.anchor.verdict&&e.messages.some(e=>!e.deleted)).map(e=>({id:e.id,at:e.messages[0]?.at??e.statusAt})).sort((e,t)=>e.at<t.at?-1:+(e.at>t.at)).at(-1)?.id;function G_({canvas:e,pending:t,threads:n,versions:r}){if(!e)return null;let i=Object.fromEntries(Object.entries(e.groups??{}).flatMap(([t,n])=>n.verify?[[t,n.boards.filter(t=>e.boards[t])]]:[])),a=new Set(Object.values(i).flat());return{groups:i,versions:Object.fromEntries([...a].map(n=>[n,t.has(n)?0:r[e.boards[n].file]??0])),verdicts:Object.fromEntries(Object.keys(i).map(e=>[e,W_(n,e)]))}}function K_(e){let t=G_(e),n=t?JSON.stringify(t):null,[r,i]=(0,Z.useState)(()=>({key:n,state:t?H_(B_(),{...t,now:Date.now()}):B_()})),a=r;t&&n!==r.key&&(a={key:n,state:H_(r.state,{...t,now:Date.now()})},i(a));let o=a.state;return(0,Z.useMemo)(()=>{let e=U_(o);return{groups:e,boards:new Map(Object.entries(e).flatMap(([e,t])=>t.boards.map(t=>[t.id,{compare:t.compare,group:e}])))}},[o])}var q_=e=>!!e&&typeof e==`object`&&!Array.isArray(e),J_=(e,t)=>typeof e==`string`&&e.length<=t,Y_=e=>typeof e==`number`&&Number.isFinite(e)&&Math.abs(e)<=1e8,X_=e=>Number.isSafeInteger(e)&&e>0,Z_=e=>e===null||q_(e)&&Y_(e.x)&&Y_(e.y)&&Y_(e.width)&&Y_(e.height)&&e.width>=0&&e.height>=0,Q_=e=>Tr.includes(e),$_=new Set([`Frame`,`Column`,`Row`,`Grid`,`Title`,`Text`,`Image`,`Button`]);function ev(e){if(!Array.isArray(e)||e.length>2500)return!1;let t=new Map;for(let n of e){if(!q_(n)||!X_(n.id)||t.has(n.id)||!J_(n.name,100)||!J_(n.tag,80)||!J_(n.selector,200)||!J_(n.path,4e3)||!$_.has(n.kind)||!Array.isArray(n.children)||n.children.length>e.length||n.children.some(e=>!X_(e))||new Set(n.children).size!==n.children.length||(t.size===0?n.parentId!==null:!X_(n.parentId)||!t.has(n.parentId)))return!1;t.set(n.id,n)}for(let e of t.values())if(e.children.some(n=>t.get(n)?.parentId!==e.id)||e.parentId!==null&&!t.get(e.parentId)?.children.includes(e.id))return!1;return!0}function tv(e){if(!q_(e)||!J_(e.session,128)||!e.session||!J_(e.connection,128))return null;let t=!1;switch(e.type){case`ryugi:inspect:tree`:t=typeof e.truncated==`boolean`&&ev(e.nodes);break;case`ryugi:inspect:hover`:t=Z_(e.rect)&&(e.id===void 0||e.id===null||X_(e.id));break;case`ryugi:inspect:rect`:t=X_(e.id)&&e.rect!==null&&Z_(e.rect);break;case`ryugi:inspect:selection`:{if(![`user`,`command`,`update`,`primary`].includes(e.reason)||e.toggle!==void 0&&typeof e.toggle!=`boolean`)break;let n=e.selection;t=n===null||q_(n)&&X_(n.id)&&J_(n.name,100)&&J_(n.tag,80)&&J_(n.selector,200)&&n.rect!==null&&Z_(n.rect)&&J_(n.html,2e4)&&[`fixed`,`fill`,`hug`].includes(n.widthMode)&&[`fixed`,`hug`].includes(n.heightMode)&&q_(n.css)&&Tr.every(e=>J_(n.css[e],2e3));break}case`ryugi:inspect:targets`:t=X_(e.request)&&Array.isArray(e.targets)&&e.targets.length<=2500&&new Set(e.targets.map(e=>q_(e)?e.id:null)).size===e.targets.length&&e.targets.every(e=>q_(e)&&X_(e.id)&&J_(e.name,100)&&e.rect!==null&&Z_(e.rect));break;case`ryugi:inspect:details`:t=X_(e.request)&&Array.isArray(e.nodes)&&e.nodes.length<=2500&&e.nodes.every(e=>q_(e)&&X_(e.id)&&J_(e.text,200)&&J_(e.html,2e3));break;case`ryugi:inspect:drag`:t=[`start`,`move`,`end`,`cancel`].includes(e.phase)&&Y_(e.x)&&Y_(e.y)&&typeof e.append==`boolean`&&(e.id===void 0||X_(e.id));break;case`ryugi:inspect:tweaks`:t=Array.isArray(e.tweaks)&&e.tweaks.length<=2500&&e.tweaks.every(e=>q_(e)&&X_(e.id)&&J_(e.name,200)&&Q_(e.property)&&J_(e.from,2e3)&&J_(e.value,300));break;case`ryugi:inspect:wheel`:t=Y_(e.deltaX)&&Y_(e.deltaY)&&Y_(e.x)&&Y_(e.y)&&typeof e.zoom==`boolean`;break;case`ryugi:inspect:pan`:t=Y_(e.deltaX)&&Y_(e.deltaY);break;case`ryugi:inspect:key`:t=J_(e.code,32)&&J_(e.key,32)&&[`down`,`ctrlKey`,`metaKey`,`shiftKey`,`altKey`].every(t=>typeof e[t]==`boolean`)}return t?e:null}function nv(e){let[t,n]=(0,Z.useState)({frames:{},selection:null,targets:[],previewTargets:null,hover:null,details:{},revision:0}),r=(0,Z.useRef)({options:e,state:t});r.current={options:e,state:t};let i=(0,Z.useRef)(new Map),a=(0,Z.useRef)(new Map),o=(0,Z.useRef)(0),s=(0,Z.useRef)(null),c=(0,Z.useRef)(new Map),l=(0,Z.useCallback)((e,t)=>{let n=i.current.get(e);n?.element.contentWindow?.postMessage({type:`ryugi:inspect`,connection:n.connection,session:n.session,...t},`*`)},[]),u=(0,Z.useCallback)(e=>{s.current=null,c.current.delete(e),n(t=>{let n={...t.frames};delete n[e];let r=Object.fromEntries(Object.entries(t.details).filter(([t])=>!t.startsWith(`${e}:`)));return{...t,frames:n,details:r,previewTargets:null,targets:t.targets.filter(t=>t.boardId!==e),selection:t.selection?.boardId===e?null:t.selection,hover:t.hover?.boardId===e?null:t.hover}})},[]),d=(0,Z.useCallback)(e=>(a.current.has(e)||a.current.set(e,t=>{i.current.get(e)?.element!==t&&(t?i.current.set(e,{element:t,connection:crypto.randomUUID(),session:null}):(l(e,{action:`disable`}),i.current.delete(e),u(e)))}),a.current.get(e)),[u,l]),f=(0,Z.useCallback)(e=>{let t=e.query;if(!t)return;let r=[...t.base];for(let{boardId:n,rect:i}of t.areas)for(let t of e.leaves.get(n)??[])t.rect.x<i.x+i.width&&t.rect.x+t.rect.width>i.x&&t.rect.y<i.y+i.height&&t.rect.y+t.rect.height>i.y&&!r.some(e=>e.boardId===n&&e.id===t.id)&&r.push(t);n(e=>t.preview?{...e,previewTargets:r,hover:null}:{...e,targets:r,previewTargets:null,selection:t.append?e.selection:null,hover:null,revision:e.revision+1})},[]),p=(0,Z.useCallback)(e=>{let t=i.current.get(e);if(!t)return;t.connection=crypto.randomUUID(),t.session=null,u(e);let{enabled:n,playing:a,mode:o=`select`}=r.current.options;n&&!a.has(e)&&l(e,{action:`enable`}),o!==`select`&&l(e,{action:`mode`,mode:o})},[u,l]);(0,Z.useEffect)(()=>{let e=e=>{let t=Array.from(i.current).find(([,t])=>t.element.contentWindow===e.source);if(!t)return;let[a,o]=t,l=tv(e.data);if(l?.type===`ryugi:inspect:wheel`&&l.zoom)r.current.options.onInput(a,l);else if(!(!l||l.connection!==o.connection||o.session!==null&&o.session!==l.session)&&(r.current.options.enabled||l.type===`ryugi:inspect:tweaks`)&&!(r.current.options.playing.has(a)&&l.type!==`ryugi:inspect:tweaks`)){if(l.type===`ryugi:inspect:tree`){o.session=l.session;let e=new Set(l.nodes.map(e=>e.id));n(t=>({...t,targets:t.targets.filter(t=>t.boardId!==a||e.has(t.id)),selection:t.selection?.boardId===a&&!e.has(t.selection.node.id)?null:t.selection,frames:{...t.frames,[a]:{session:l.session,nodes:l.nodes,truncated:l.truncated,tweaks:t.frames[a]?.tweaks??[]}}}))}else if(o.session!==null){if(l.type===`ryugi:inspect:selection`){let e=l.reason===`user`||l.reason===`command`;e&&(s.current=null),n(t=>{let n=l.selection;if(l.reason===`primary`||l.reason===`update`){if(!n)return t;let e=t.targets.at(-1);return!e||e.boardId!==a||e.id!==n.id?t:{...t,selection:{boardId:a,node:n},targets:t.targets.map(e=>e.boardId===a&&e.id===n.id?{...e,name:n.name||n.selector,rect:n.rect}:e)}}if(!n)return t;let r=t.targets.some(e=>e.boardId===a&&e.id===n.id),i={boardId:a,id:n.id,name:n.name||n.selector,rect:n.rect},o=l.toggle?r?t.targets.filter(e=>e.boardId!==a||e.id!==n.id):[...t.targets,i]:[i];return{...t,targets:o,previewTargets:null,selection:l.toggle&&r?null:{boardId:a,node:n},revision:e?t.revision+1:t.revision}})}else if(l.type===`ryugi:inspect:targets`){let e=s.current;if(!e||l.request!==e.request||e.leaves.has(a))return;e.leaves.set(a,l.targets.map(e=>({...e,boardId:a}))),f(e)}else if(l.type===`ryugi:inspect:details`){if(c.current.get(a)!==l.request)return;n(e=>{let t=Object.fromEntries(Object.entries(e.details).filter(([e])=>!e.startsWith(`${a}:`)));for(let e of l.nodes)t[`${a}:${e.id}`]=e;return{...e,details:t}})}else l.type===`ryugi:inspect:hover`?n(e=>({...e,hover:l.rect?{boardId:a,rect:l.rect,id:l.id??null}:null})):l.type===`ryugi:inspect:rect`?n(e=>({...e,targets:e.targets.map(e=>e.boardId===a&&e.id===l.id?{...e,rect:l.rect}:e),selection:e.selection?.boardId===a&&e.selection.node.id===l.id?{boardId:a,node:{...e.selection.node,rect:l.rect}}:e.selection})):l.type===`ryugi:inspect:tweaks`?n(e=>e.frames[a]?{...e,frames:{...e.frames,[a]:{...e.frames[a],tweaks:l.tweaks}}}:e):r.current.options.onInput(a,l)}}};window.addEventListener(`message`,e);let t=i.current;return()=>{window.removeEventListener(`message`,e);for(let e of t.keys())l(e,{action:`disable`})}},[f,l]);let m=e.mode??`select`;(0,Z.useEffect)(()=>{for(let e of i.current.keys())l(e,{action:`mode`,mode:m})},[m,l]);let h=Array.from(e.playing).sort().join(`\0`);(0,Z.useEffect)(()=>{s.current=null;for(let t of i.current.keys())l(t,{action:e.enabled&&!r.current.options.playing.has(t)?`enable`:`disable`});n(e=>{let t=e.selection&&r.current.options.playing.has(e.selection.boardId);return{...e,previewTargets:null,targets:e.targets.filter(e=>!r.current.options.playing.has(e.boardId)),hover:null,selection:t?null:e.selection}})},[e.enabled,h,l]);let g=JSON.stringify(t.targets.map(({boardId:e,id:t})=>[e,t]));(0,Z.useEffect)(()=>{if(e.enabled)for(let e of i.current.keys())r.current.options.playing.has(e)||l(e,{action:`track`,ids:r.current.state.targets.filter(t=>t.boardId===e).map(e=>e.id)})},[g,e.enabled,h,l]),(0,Z.useEffect)(()=>{if(e.enabled)for(let e of i.current.keys()){if(r.current.options.playing.has(e))continue;let t=r.current.state.targets.filter(t=>t.boardId===e).map(e=>e.id);if(!t.length&&!c.current.has(e))continue;let n=++o.current;c.current.set(e,n),l(e,{action:`describe`,request:n,ids:t})}},[g,e.enabled,h,l]),(0,Z.useEffect)(()=>{let n=t.targets.at(-1);e.enabled&&n&&(t.selection?.boardId!==n.boardId||t.selection.node.id!==n.id)&&l(n.boardId,{action:`select`,id:n.id,primary:!0})},[g,t.selection,e.enabled,l]);let _=(0,Z.useCallback)(()=>{s.current=null,n(e=>({...e,targets:[],previewTargets:null,selection:null,hover:null,revision:e.revision+1}))},[]),v=(0,Z.useCallback)(()=>{s.current?.query?.preview!==!1&&(s.current=null),n(e=>e.previewTargets?{...e,previewTargets:null}:e);for(let e of i.current.keys())l(e,{action:`cancel-drag`})},[l]),y=(0,Z.useCallback)(()=>{let{options:e}=r.current;if(!e.enabled)return;let t={request:++o.current,leaves:new Map,query:null};s.current=t;for(let[n,r]of i.current)r.session&&!e.playing.has(n)&&l(n,{action:`leaves`,request:t.request})},[l]),b=(0,Z.useCallback)((e,t,n=!1)=>{let{options:i,state:a}=r.current,o=s.current;i.enabled&&o&&(o.query={areas:e.filter(({boardId:e})=>!i.playing.has(e)),base:t?a.targets:[],append:t,preview:n},f(o))},[f]),x=(0,Z.useCallback)((e,t,n=!1)=>{r.current.options.enabled&&!r.current.options.playing.has(e)&&(s.current=null,l(e,{action:`select`,id:t,toggle:n}))},[l]),S=(0,Z.useCallback)((e,t)=>{r.current.options.enabled&&!r.current.options.playing.has(e)&&l(e,{action:`hover`,id:t})},[l]),C=(0,Z.useCallback)((e,t)=>{let{state:i,options:a}=r.current,o=i.selection;if(!o||!a.enabled||a.playing.has(o.boardId))return;let s=i.frames[o.boardId]?.session;s&&(l(o.boardId,{action:`style`,id:o.node.id,property:e,value:t,session:s}),n(e=>({...e,revision:e.revision+1})))},[l]),w=(0,Z.useCallback)(()=>{for(let e of i.current.keys())l(e,{action:`reset`});n(e=>({...e,revision:e.revision+1}))},[l]);return{...t,targets:t.previewTargets??t.targets,selectedTargets:t.targets,refFor:d,loaded:p,select:x,beginArea:y,selectArea:b,clearSelection:_,cancelDrag:v,hoverNode:S,change:C,reset:w}}function rv(e,t,n,r){let i=(0,Z.useRef)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null),{cancelDrag:l}=t,u=(0,Z.useCallback)(()=>{i.current=null,c(null),o(!1),l()},[l]);(0,Z.useEffect)(u,[u,...r]);let d=(0,Z.useCallback)(t=>e.flatMap(([e,n])=>{let r=Math.max(t.x,n.x),i=Math.max(t.y,n.y),a=Math.min(t.x+t.width,n.x+n.w),o=Math.min(t.y+t.height,n.y+n.h);return a>r&&o>i?[{boardId:e,rect:{x:r-n.x,y:i-n.y,width:a-r,height:o-i}}]:[]}),[e]);function f(e,r,a,s=!1,l){if(e===`start`){i.current={x:r,y:a,append:s,moved:!1,frame:l},c(null),o(!0),t.beginArea();return}let u=i.current;if(!u)return;let f={x:Math.min(u.x,r),y:Math.min(u.y,a),width:Math.abs(r-u.x),height:Math.abs(a-u.y)};Math.hypot(f.width,f.height)*n>=3&&(u.moved=!0),e===`move`?u.moved&&(c(f),t.selectArea(d(f),u.append,!0)):(i.current=null,c(null),o(!1),e!==`cancel`&&u.moved||t.cancelDrag(),e!==`cancel`&&(u.moved?(t.selectArea(d(f),u.append),t.cancelDrag()):u.frame?t.select(u.frame.boardId,u.frame.id,u.append):u.append||t.clearSelection()))}return{marquee:s,selecting:a,dragging:()=>i.current!==null,drag:f,reset:u}}var iv={top:64,right:24,bottom:24,left:24},av=.01,ov=20,sv=420,cv=1.1,lv=ir(.2,0,0,1),uv=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches,dv=`[data-chrome]${[`board-label`,`group-label`,`video-controls`,`comments`,`reject`,`parameters`].map(e=>`:not([data-chrome="${e}"])`).join(``)}`;function fv(e,t){let n=t.k/e.k;return{x:t.x-e.x*n,y:t.y-e.y*n,scale:n}}function pv(e,t,n){let{x:r,y:i,scale:a}=fv(e,t);return Math.max(Math.abs(r),Math.abs(i),Math.abs(n.width*(a-1)+r),Math.abs(n.height*(a-1)+i))>160||a>cv||a<1/cv}function mv(e,t,n,r){for(let i=e;i&&i!==t;i=i.parentElement){let{overflowX:e,overflowY:t}=getComputedStyle(i);if(r&&/auto|scroll/.test(t)&&i.scrollHeight>i.clientHeight||n&&/auto|scroll/.test(e)&&i.scrollWidth>i.clientWidth)return!0}return!1}function hv(e){let t=(0,Z.useRef)(null),n=(0,Z.useRef)(null),[r,i]=(0,Z.useState)({x:0,y:0,k:.5}),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1),l=(0,Z.useRef)(null),u=(0,Z.useRef)(new Map),d=(0,Z.useRef)(r),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),[m,h]=(0,Z.useState)(!1),g=(0,Z.useRef)(void 0),_=(0,Z.useRef)(r),v=(0,Z.useRef)(new Set),y=(0,Z.useRef)({width:0,height:0}),b=(0,Z.useCallback)(()=>{let{x:e,y:t,k:r}=d.current,i=n.current;i&&(i.style.transform=`translate(${e}px, ${t}px) scale(${r})`,i.style.setProperty(`--zoom`,String(r)));let a=fv(_.current,d.current),o=a.x===0&&a.y===0&&a.scale===1?``:`translate(${a.x}px, ${a.y}px) scale(${a.scale})`;for(let e of v.current)e.style.transform=o},[]),x=(0,Z.useCallback)(e=>{n.current=e,b()},[b]),S=(0,Z.useCallback)(e=>{if(e)return e.style.transformOrigin=`0 0`,v.current.add(e),b(),()=>{v.current.delete(e)}},[b]);(0,Z.useLayoutEffect)(()=>{_.current=r,b()},[r,b]);let C=(0,Z.useCallback)(e=>{n.current&&(n.current.style.willChange=e);for(let t of v.current)t.style.willChange=e},[]),w=(0,Z.useCallback)(()=>{g.current===void 0&&(h(!0),C(`transform`)),clearTimeout(g.current),g.current=setTimeout(()=>{g.current=void 0,C(``),h(!1),i(d.current)},150)},[C]),T=(0,Z.useCallback)(e=>{d.current=e,b(),pv(_.current,e,y.current)&&i(e)},[b]),E=(0,Z.useCallback)(e=>{d.current=typeof e==`function`?e(d.current):e,w(),!p.current&&(p.current=!0,f.current=requestAnimationFrame(()=>{p.current=!1,f.current=null,T(d.current)}))},[w,T]),D=(0,Z.useCallback)((e,t=!1)=>{f.current!==null&&cancelAnimationFrame(f.current),f.current=null,p.current=!1,d.current=e,t&&w(),b(),i(e)},[w,b]);(0,Z.useEffect)(()=>()=>{f.current!==null&&cancelAnimationFrame(f.current),clearTimeout(g.current)},[]);let O=(0,Z.useCallback)(e=>D(e),[D]),k=(0,Z.useRef)(null),A=(0,Z.useCallback)(()=>{k.current!==null&&cancelAnimationFrame(k.current),k.current=null},[]);(0,Z.useEffect)(()=>A,[A]);let[j,M]=(0,Z.useState)(()=>({width:typeof innerWidth==`number`?innerWidth:0,height:typeof innerHeight==`number`?innerHeight:0}));(0,Z.useEffect)(()=>{let e=t.current;if(!e||typeof ResizeObserver!=`function`)return;let n=new ResizeObserver(()=>M(t=>t.width===e.clientWidth&&t.height===e.clientHeight?t:{width:e.clientWidth,height:e.clientHeight}));return n.observe(e),()=>n.disconnect()},[]),(0,Z.useLayoutEffect)(()=>{y.current=j},[j]);let N=(0,Z.useCallback)((e,t)=>E(n=>({...n,x:n.x+e,y:n.y+t})),[E]),P=(0,Z.useCallback)(e=>{if(e.zoom){let t=Math.max(-20,Math.min(ov,e.deltaY));E(n=>Qn(n,Math.exp(-t*av),e.x,e.y))}else N(-e.deltaX,-e.deltaY)},[N,E]);(0,Z.useEffect)(()=>{let e=t.current;if(!e)return;let n=t=>{let n=t.target,r=t.ctrlKey||t.metaKey;if(n?.closest?.(dv)||!r&&mv(n,e,t.deltaX,t.deltaY))return;t.preventDefault(),A();let i=e.getBoundingClientRect(),a=t.deltaMode===1?16:t.deltaMode===2?e.clientHeight:1;P({deltaX:t.deltaX*a,deltaY:t.deltaY*a,x:t.clientX-i.left,y:t.clientY-i.top,zoom:r})},r=e=>{e.ctrlKey&&e.preventDefault()};return e.addEventListener(`wheel`,n,{passive:!1}),window.addEventListener(`wheel`,r,{passive:!1}),()=>{e.removeEventListener(`wheel`,n),window.removeEventListener(`wheel`,r)}},[P,A]),(0,Z.useEffect)(()=>{let e=e=>e.target?.closest?.(`input, textarea, select, [contenteditable], [data-chrome]`),t=t=>{t.code===`Space`&&!e(t)&&(t.preventDefault(),o(!0))},n=e=>{e.code===`Space`&&o(!1)},r=()=>o(!1);return window.addEventListener(`keydown`,t),window.addEventListener(`keyup`,n),window.addEventListener(`blur`,r),()=>{window.removeEventListener(`keydown`,t),window.removeEventListener(`keyup`,n),window.removeEventListener(`blur`,r)}},[]);let F=e===`hand`||a,ee=(0,Z.useCallback)(e=>{let t=e.pointerType===`touch`,n=e.button===1;(t||(F||n)&&(e.button===0||n))&&e.currentTarget.contains(e.target)&&(e.target.closest(`[data-chrome]`)||(A(),e.currentTarget.setPointerCapture(e.pointerId),l.current={x:e.clientX,y:e.clientY},t&&u.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),c(!0)))},[F,A]),te=(0,Z.useCallback)(e=>{if(e.pointerType===`touch`&&!u.current.has(e.pointerId))return;if(u.current.has(e.pointerId)){let t=[...u.current.values()];u.current.set(e.pointerId,{x:e.clientX,y:e.clientY});let n=[...u.current.values()];if(t.length>=2){E(e=>cr(e,[t[0],t[1]],[n[0],n[1]]));return}}let t=l.current;t&&(l.current={x:e.clientX,y:e.clientY},E(n=>({...n,x:n.x+e.clientX-t.x,y:n.y+e.clientY-t.y})))},[E]),ne=(0,Z.useCallback)(e=>{e?u.current.delete(e.pointerId):u.current.clear();let t=[...u.current.values()][0];l.current=t?{...t}:null,t||c(!1)},[]),I=()=>{let e=t.current;return{cx:(e?.clientWidth??0)/2,cy:(e?.clientHeight??0)/2}},re=(0,Z.useCallback)((e,n=iv,r={})=>{let i=t.current;if(!i||!e)return;let a=sr(e,{width:i.clientWidth,height:i.clientHeight},n);if(A(),!r.animate||uv()){D(a);return}let o=d.current,s=performance.now(),c=()=>{let e=Math.min(1,(performance.now()-s)/sv);e===1?D(a,!0):(w(),T(Zn(o,a,lv(e)))),k.current=e===1?null:requestAnimationFrame(c)};k.current=requestAnimationFrame(c)},[A,D,w,T]),L=(0,Z.useCallback)(e=>{let{cx:t,cy:n}=I();E(r=>Qn(r,e,t,n))},[E]),R=(0,Z.useCallback)(e=>{let{cx:t,cy:n}=I();E(r=>or(r,e,t,n))},[E]);return{viewportRef:t,worldRef:x,overlayRef:S,view:r,viewNow:(0,Z.useCallback)(()=>d.current,[]),gesturing:m,scaling:m,size:j,place:O,fit:re,zoomBy:L,zoomTo:R,panBy:N,wheelAt:P,panning:F,setSpaceHeld:o,cursor:s?`grabbing`:F?`grab`:e===`comment`?wr:Cr,hand:s?`pinch`:F?`open`:null,handlers:{onPointerDown:ee,onPointerMove:te,onPointerUp:ne,onPointerCancel:ne}}}function gv({boards:e,frames:t,targets:n,details:r}){let i=new Map;for(let[n,r]of Object.entries(t)){let t=e[n];if(t)for(let e of r.nodes)i.set(`${n}:${e.id}`,{id:`${n}#${e.id}`,board:n,file:t.file,tag:e.tag,path:e.path,name:e.name})}let a=(e,n)=>(t[e]?.tweaks??[]).filter(e=>e.id===n).map(({property:e,from:t,value:n})=>({property:e,from:t,value:n})),o=n.filter(({boardId:e,id:t})=>i.has(`${e}:${t}`)),s=new Set(o.map(({boardId:e,id:t})=>`${e}:${t}`)),c=o.slice(0,20).map(({boardId:e,id:t})=>{let n=r[`${e}:${t}`];return{...i.get(`${e}:${t}`),text:n?.text??``,html:n?.html??``,tweaks:a(e,t)}}),l=[];for(let[e,n]of Object.entries(t))for(let t of n.tweaks){let n=i.get(`${e}:${t.id}`);n&&!s.has(`${e}:${t.id}`)&&l.push({...n,property:t.property,from:t.from,value:t.value})}return{selected:c,more:o.length-c.length,tweaks:l,nodes:[...i.values()]}}var _v=e=>e.id.length<=Pr.id&&e.board.length<=Pr.board&&e.file.length<=Pr.file&&e.tag.length<=Pr.tag&&e.path.length<=Pr.path&&e.name.length<=Pr.name,vv=e=>new TextEncoder().encode(JSON.stringify(e)).length;function yv(e,t=Ir){let n=e.selected.filter(e=>_v(e)&&e.text.length<=Pr.text&&e.html.length<=Pr.html),r=e.tweaks.filter(e=>_v(e)&&e.from.length<=Pr.from&&e.value.length<=Pr.value),i={...e,selected:n,tweaks:r,nodes:e.nodes.filter(_v).slice(0,Nr)};for(let e=vv(i);e>t&&i.nodes.length;e=vv(i))i={...i,nodes:i.nodes.slice(0,Math.floor(i.nodes.length*Math.min(.95,t/e)))};return i}var bv=crypto.randomUUID();function xv({artifact:e,boards:t,live:n,inspector:r,send:i}){let a=(0,Z.useRef)(0),{frames:o,selectedTargets:s,details:c,revision:l}=r,u=JSON.stringify(s.map(({boardId:e,id:t})=>[e,t])),d=(0,Z.useMemo)(()=>JSON.parse(u),[u]),f=(0,Z.useMemo)(()=>gv({boards:t??{},frames:o,targets:d.map(([e,t])=>({boardId:e,id:t})),details:c}),[t,o,d,c]);(0,Z.useEffect)(()=>{if(!e||!i||!n)return;let t=setTimeout(()=>{let t=l!==a.current;a.current=l,i(yv({type:`selection`,artifact:e,tab:bv,human:t,...f}))},100);return()=>clearTimeout(t)},[e,i,n,f,l])}function Sv({canvas:e,page:t,threads:n,stale:r,versions:i,comment:a}){let[o,s]=(0,Z.useState)(null),c=(0,Z.useMemo)(()=>e?.groups??{},[e]),l=(0,Z.useMemo)(()=>e?.boards??{},[e]),u=(0,Z.useMemo)(()=>Object.fromEntries(en(c,l,t).map(([e])=>[e,nn(n,e,r)])),[c,l,t,n,r]),d=(0,Z.useMemo)(()=>Zt(c,l,t,n,r),[c,l,t,n,r]),f=e=>(c[e]?.boards??[]).flatMap(e=>l[e]?[l[e]]:[]),p=e=>({x:Math.max(...f(e).map(e=>e.x+e.w)),y:Math.min(...f(e).map(e=>e.y))}),m=e=>Math.max(0,...f(e).map(e=>i[e.file]??0)),h=async(e,n,r)=>{if(!a||!t)return!1;try{return await a({op:`create`,anchor:{page:t,group:e,verdict:n,...p(e)},text:r}),!0}catch{return!1}};return{states:u,progress:d,rejecting:o,canJudge:!!a,evidenceAt:m,origin:e=>({x:Math.min(...f(e).map(e=>e.x)),y:Math.min(...f(e).map(e=>e.y))}),pass:e=>void h(e,`pass`,`Pass`),undoPass:e=>{let t=n.filter(t=>t.anchor.group===e&&t.anchor.verdict===`pass`&&t.messages.some(e=>!e.deleted)).at(-1),r=t?.messages.find(e=>!e.deleted);t&&r&&a&&a({op:`delete`,threadId:t.id,messageId:r.id}).catch(()=>{})},startReject:e=>s(e),cancelReject:()=>s(null),submitReject:async e=>{if(!o)return!1;let t=await h(o,`reject`,e);return t&&s(null),t}}}function Cv({board:e,rect:n,view:r,name:i,nodeId:a,selected:o}){return n.width<=0||n.height<=0?null:(0,Q.jsxs)(`div`,{"aria-hidden":`true`,"data-outline":``,"data-selected":o?``:void 0,...t($.outline,o&&$.outlineSelected),style:{left:r.x+(e.x+n.x)*r.k,top:r.y+(e.y+n.y)*r.k,width:n.width*r.k,height:n.height*r.k},children:[a&&(0,Q.jsx)(`span`,{"data-outline-id":``,...t($.outlineId),children:a}),o&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{"data-outline-name":``,...t($.outlineName),children:i}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerTl)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerTr)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerBl)}),(0,Q.jsx)(`i`,{...t($.corner,$.cornerBr)}),(0,Q.jsxs)(`span`,{...t($.outlineSize),children:[Math.round(n.width),` × `,Math.round(n.height)]})]})]})}var wv={Frame:un,Column:ki,Row:Vi,Grid:ft,Title:sn,Text:sn,Image:Xt,Button:Nt},Tv=(e,t,n)=>`${encodeURIComponent(e)}:${encodeURIComponent(t)}:${n}`;function Ev({boards:e,frames:r,selection:i,targets:a,playing:o,select:s,hoverNode:c}){let[l,u]=(0,Z.useState)([]),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),m=i&&r[i.boardId]?Tv(i.boardId,r[i.boardId].session,i.node.id):null,h=a?a.flatMap(e=>r[e.boardId]?[Tv(e.boardId,r[e.boardId].session,e.id)]:[]):m?[m]:[],g=h.join(`|`),{treeData:_,byKey:v}=(0,Z.useMemo)(()=>{let i=new Set(g?g.split(`|`):[]),a=new Map,s=[];for(let[c,l]of e){let e=r[c];if(!e?.nodes[0])continue;let u=new Map(e.nodes.map(e=>[e.id,e])),d=o.has(c),f=(r,o)=>{let s=Tv(c,e.session,r.id);a.set(s,{boardId:c,node:r,parentKey:o});let p=o===null?`Frame`:r.kind,m=o===null?l.title||c:r.name,h=wv[p];return{key:s,disabled:d,icon:(0,Q.jsx)(h,{"aria-hidden":!0,size:14}),title:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{title:`${r.tag} · ${m||r.selector}`,...t($.layerLabel),children:[(0,Q.jsx)(`span`,{...t(i.has(s)&&$.layerKindSelected),children:n(`inspector.kind.${p}`)}),(0,Q.jsx)(`span`,{...t($.layerName),children:m?`“${m}”`:`<${r.tag}>`})]}),o!==null&&(0,Q.jsxs)(`span`,{"data-layer-id":``,...t($.layerId),children:[`#`,r.id]}),d&&(0,Q.jsx)(`span`,{...t($.playing),children:n(`inspector.playing`)})]}),children:r.children.flatMap(e=>{let t=u.get(e);return t?[f(t,s)]:[]})}};s.push(f(e.nodes[0],null))}return{treeData:s,byKey:a}},[e,r,o,g]),y=[],b=m?v.get(m)?.parentKey:null;for(;b;)y.push(b),b=v.get(b)?.parentKey;let x=[m,...y].filter(e=>!!e&&!!v.get(e)?.node.children.length).join(`|`);(0,Z.useEffect)(()=>{x&&u(e=>Array.from(new Set([...e,...x.split(`|`)])))},[x]);let S=e=>Array.from(d.current?.querySelectorAll(`[role=treeitem]`)??[]).find(t=>t.dataset.id===e);(0,Z.useEffect)(()=>{m&&S(m)?.scrollIntoView({block:`nearest`})},[m,l]);let C=Object.values(r).reduce((e,t)=>e+t.nodes.length,0);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{...t($.layerHeading),children:[(0,Q.jsx)(`span`,{children:n(`inspector.layers`)}),(0,Q.jsx)(`span`,{...t($.layerHeadingCount),children:C?n(`inspector.elements`,{count:C}):n(`common.loading`)})]}),(0,Q.jsxs)(`div`,{"aria-label":n(`inspector.domLayers`),ref:d,role:`region`,...t($.layers),onClickCapture:e=>{p.current=e.shiftKey||e.metaKey||e.ctrlKey},onKeyDownCapture:e=>{p.current=e.shiftKey||e.metaKey||e.ctrlKey},onMouseLeave:()=>{let e=f.current?v.get(f.current):null;e&&c(e.boardId,null),f.current=null},onMouseOver:e=>{let t=e.target.closest(`[role=treeitem]`)?.dataset.id;if(!t||f.current===t)return;let n=f.current?v.get(f.current):null,r=v.get(t);n&&n.boardId!==r?.boardId&&c(n.boardId,null),f.current=t,r&&c(r.boardId,r.node.id)},children:[(0,Q.jsx)(du,{blockNode:!0,multiple:!0,showIcon:!0,classNames:{node:t($.layer).className},expandedKeys:l,indent:14,selectedKeys:h,size:`small`,treeData:_,styles:{node:{height:27,fontSize:12},title:{display:`flex`,alignItems:`center`,gap:6}},onExpand:(e,{expanded:t,node:n})=>{!t&&(n.key===m||y.includes(n.key))&&S(n.key)?.focus(),u(e)},onSelect:(e,{node:t})=>{let n=v.get(t.key);n&&(p.current?s(n.boardId,n.node.id,!0):s(n.boardId,n.node.id))}}),!_.length&&(0,Q.jsx)(`p`,{...t($.hint,$.hintInLayers),children:n(`inspector.waitingBoard`)})]}),Object.values(r).some(e=>e.truncated)&&(0,Q.jsx)(`p`,{role:`status`,...t($.limit),children:n(`inspector.truncated`)})]})}var Dv=e=>Number.isFinite(parseFloat(e))?Math.round(parseFloat(e)*100)/100:0,Ov=e=>e.map(([e,t])=>({value:e,label:t})),kv=e=>{let t=e.match(/^rgba?\(([\d.]+),\s*([\d.]+),\s*([\d.]+)(?:,\s*([\d.]+))?\)$/);return t?`#`+t.slice(1).filter(e=>e!==void 0).map((e,t)=>Math.round(Number(e)*(t===3?255:1)).toString(16).padStart(2,`0`)).join(``):e};function Av({label:e,children:n,controlId:r}){return(0,Q.jsxs)(`div`,{...t($.field),children:[r?(0,Q.jsx)(`label`,{htmlFor:r,...t($.fieldLabel),children:e}):(0,Q.jsx)(`span`,{...t($.fieldLabel),children:e}),(0,Q.jsx)(`div`,{...t($.fieldControl),children:n})]})}function jv({label:e,property:n,node:r,change:i,unit:a=`px`,max:o,min:s=0,step:c=1,sizing:l}){let u=(0,Z.useId)(),d=(0,Q.jsx)(Oo,{controls:!1,id:u,max:o,min:s,size:`small`,step:c,style:{width:`100%`},suffix:a||void 0,value:Dv(r.css[n]),onChange:e=>{e!==null&&i(n,String(e)+a)}});return(0,Q.jsx)(Av,{controlId:u,label:e,children:l?(0,Q.jsxs)(`div`,{...t($.numberSizing),children:[(0,Q.jsx)(`div`,{...t($.sizeInput),children:d}),(0,Q.jsx)(`div`,{...t($.sizeMode),children:l})]}):d})}function Mv({label:e,property:t,values:n,node:r,change:i}){let a=(0,Z.useId)(),o=r.css[t],s=n.some(([e])=>e===o)?n:[...n,[o,o]];return(0,Q.jsx)(Av,{controlId:a,label:e,children:(0,Q.jsx)(wn,{id:a,options:Ov(s),size:`small`,style:{width:`100%`},value:o,onChange:e=>{typeof e==`string`&&i(t,e)}})})}function Nv({node:e,change:r}){let i={node:e,change:r},a=(0,Z.useId)(),o=(0,Z.useId)(),[s,c]=(0,Z.useState)(e.css[`box-shadow`]);return(0,Z.useEffect)(()=>c(e.css[`box-shadow`]),[e.css[`box-shadow`]]),(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.size`)}),(0,Q.jsx)(jv,{...i,label:n(`inspector.width`),property:`width`,sizing:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`label`,{...t($.srOnly),htmlFor:a,children:n(`inspector.widthSizing`)}),(0,Q.jsx)(wn,{className:t($.sizeModeChild).className,id:a,size:`small`,value:e.widthMode,options:Ov([[`fixed`,n(`inspector.fixed`)],[`fill`,n(`inspector.fill`)],[`hug`,n(`inspector.hug`)]]),onChange:t=>r(`width`,t===`fill`?`100%`:t===`hug`?`max-content`:`${Dv(e.css.width)||e.rect.width}px`)})]})}),(0,Q.jsx)(jv,{...i,label:n(`inspector.height`),property:`height`,sizing:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`label`,{...t($.srOnly),htmlFor:o,children:n(`inspector.heightSizing`)}),(0,Q.jsx)(wn,{className:t($.sizeModeChild).className,id:o,size:`small`,value:e.heightMode,options:Ov([[`hug`,n(`inspector.hug`)],[`fixed`,n(`inspector.fixed`)]]),onChange:t=>r(`height`,t===`hug`?`auto`:`${Dv(e.css.height)||e.rect.height}px`)})]})}),(0,Q.jsx)(Mv,{...i,label:n(`inspector.position`),property:`position`,values:[[`static`,n(`inspector.inline`)],[`relative`,n(`inspector.relative`)],[`absolute`,n(`inspector.absolute`)],[`fixed`,n(`inspector.fixed`)],[`sticky`,n(`inspector.sticky`)]]}),(0,Q.jsx)(jv,{...i,label:n(`inspector.grow`),max:100,property:`flex-grow`,unit:``})]}),(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.layout`)}),(0,Q.jsx)(Mv,{...i,label:n(`inspector.layout`),property:`display`,values:[[`flex`,n(`inspector.stack`)],[`grid`,n(`inspector.grid`)],[`block`,n(`inspector.block`)],[`inline`,n(`inspector.inline`)],[`inline-flex`,n(`inspector.inlineStack`)],[`none`,n(`inspector.hidden`)]]}),(e.css.display===`flex`||e.css.display===`inline-flex`)&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Av,{label:n(`inspector.direction`),children:(0,Q.jsx)(Ln,{block:!0,size:`small`,value:e.css[`flex-direction`],options:[{value:`row`,icon:(0,Q.jsx)(ht,{"aria-hidden":!0,size:14}),label:(0,Q.jsx)(`span`,{...t($.srOnly),children:n(`inspector.horizontal`)}),title:n(`inspector.horizontal`)},{value:`column`,icon:(0,Q.jsx)(mt,{"aria-hidden":!0,size:14}),label:(0,Q.jsx)(`span`,{...t($.srOnly),children:n(`inspector.vertical`)}),title:n(`inspector.vertical`)}],onChange:e=>r(`flex-direction`,e)})}),(0,Q.jsx)(Av,{label:n(`inspector.align`),children:(0,Q.jsx)(Ln,{block:!0,"aria-label":n(`inspector.align`),size:`small`,value:e.css[`align-items`],options:Ov([[`flex-start`,n(`inspector.start`)],[`center`,n(`inspector.center`)],[`stretch`,n(`inspector.fill`)]]),onChange:e=>r(`align-items`,e)})})]}),(0,Q.jsx)(jv,{...i,label:n(`inspector.gap`),property:`gap`}),(0,Q.jsx)(jv,{...i,label:n(`inspector.padding`),property:`padding`})]}),(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsx)(`h2`,{...t($.sectionTitle),children:n(`inspector.appearance`)}),(0,Q.jsx)(Av,{label:n(`inspector.fill`),children:(0,Q.jsx)(kc,{alpha:!0,recent:!1,size:`small`,trigger:`field`,value:kv(e.css[`background-color`]),onChange:e=>r(`background-color`,e)})}),(0,Q.jsx)(jv,{...i,label:n(`inspector.opacity`),max:1,property:`opacity`,step:.1,unit:``}),(0,Q.jsx)(jv,{...i,label:n(`inspector.radius`),property:`border-radius`}),(0,Q.jsx)(Mv,{...i,label:n(`inspector.border`),property:`border-style`,values:[[`none`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(Ti,{"aria-hidden":!0,size:13}),n(`inspector.none`)]},`none`)],[`solid`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)($t,{"aria-hidden":!0,size:13}),n(`inspector.solid`)]},`solid`)],[`dashed`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(Ui,{"aria-hidden":!0,size:13}),n(`inspector.dashed`)]},`dashed`)],[`dotted`,(0,Q.jsxs)(`span`,{...t($.option),children:[(0,Q.jsx)(on,{"aria-hidden":!0,size:13}),n(`inspector.dotted`)]},`dotted`)]]})]}),(0,Q.jsx)(ea,{keepMounted:!0,classNames:{item:t($.section).className},gap:0,indicatorPlacement:`end`,items:[{key:`typography`,title:n(`inspector.typography`),children:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(jv,{...i,label:n(`inspector.fontSize`),min:1,property:`font-size`}),(0,Q.jsx)(Av,{label:n(`inspector.color`),children:(0,Q.jsx)(kc,{alpha:!0,recent:!1,size:`small`,trigger:`field`,value:kv(e.css.color),onChange:e=>r(`color`,e)})})]})},{key:`effects`,title:n(`inspector.effects`),children:(0,Q.jsx)(Av,{label:n(`inspector.shadow`),children:(0,Q.jsx)(xn,{"aria-label":n(`inspector.shadow`),size:`small`,value:s,onBlur:()=>r(`box-shadow`,s),onChange:e=>c(e.target.value),onPressEnter:e=>e.currentTarget.blur()})})}],styles:{header:{margin:0},trigger:{padding:0,fontSize:13,fontWeight:550},content:{padding:`12px 0 0`}}})]})}var Pv=[`Properties`,`Code`,`Tweaks`],Fv=(0,Z.memo)(function({boards:e,frames:r,selection:i,targets:a,playing:o,select:s,hoverNode:c,change:l,reset:u,enabled:d,onClose:f,embedded:p}){let[m,h]=(0,Z.useState)(`Properties`),[g,_]=(0,Z.useState)(``),v=i?.node,b=Object.entries(r).flatMap(([e,t])=>t.tweaks.map(t=>({...t,boardId:e}))),x=v?`${v.selector} {\n${Object.entries(v.css).map(([e,t])=>` ${e}: ${t};`).join(`
12
+ `)}\n}`:``,S=async e=>{try{await navigator.clipboard.writeText(e),_(n(`inspector.copied`))}catch{_(n(`inspector.copyFailed`))}},C=[t($.panel,p&&$.embedded).className,`ryugi-inspector`].filter(Boolean).join(` `);return(0,Q.jsx)(y,{config:{"aria-hidden":!0},children:(0,Q.jsx)(`aside`,{"data-chrome":!0,"aria-label":n(`inspector.label`),className:C,children:(0,Q.jsxs)(gl,{size:`small`,style:{display:`contents`},value:m,variant:`rounded`,onValueChange:e=>{Pv.includes(e)&&h(e)},children:[(0,Q.jsxs)(`header`,{...t($.header),children:[(0,Q.jsxs)(_l,{activateOnFocus:!0,"aria-label":n(`inspector.views`),className:t($.tabs).className,style:{alignSelf:`center`},children:[(0,Q.jsx)(bl,{}),Pv.map(e=>(0,Q.jsxs)(vl,{style:{position:`relative`},value:e,children:[n(`inspector.tab.${e}`),e===`Tweaks`&&b.length>0&&(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:4,...t($.changeDot)})]},e))]}),!p&&(0,Q.jsx)(ct,{"aria-label":n(`inspector.close`),icon:E,size:`small`,title:n(`inspector.close`),onClick:f})]}),(0,Q.jsx)(Ev,{boards:e,frames:r,hoverNode:c,playing:o,select:s,selection:i,targets:a}),(0,Q.jsxs)(`div`,{"data-node-meta":``,...t($.nodeMeta),children:[(0,Q.jsx)(`code`,{children:a.length>1?n(`inspector.selected`,{count:a.length}):v?`<${v.tag}>`:n(`inspector.selectElement`)}),v&&(0,Q.jsxs)(`span`,{"data-node-id":``,...t($.nodeId),children:[`${i.boardId}#${v.id}`,(0,Q.jsx)(ct,{"aria-label":n(`inspector.copyNode`),icon:gt,size:{blockSize:16,size:10},title:n(`inspector.copyNode`),onClick:()=>void S(`${i.boardId}#${v.id}`)})]}),(0,Q.jsx)(`span`,{title:v?.selector,...t($.nodeSelector),children:v?.selector}),v&&(0,Q.jsxs)(`span`,{...t($.live),children:[(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:6}),n(`inspector.live`)]})]}),a.length>1&&(0,Q.jsx)(`p`,{...t($.hint),style:{margin:`8px 16px`},children:n(`inspector.lastSelected`)}),(0,Q.jsxs)(`div`,{...t($.panelBody),children:[(0,Q.jsx)(yl,{value:`Properties`,...t($.panelBodyPanel),children:v&&d?(0,Q.jsx)(Nv,{change:l,node:v},`${i.boardId}:${r[i.boardId]?.session}:${v.id}`):(0,Q.jsx)(`p`,{...t($.empty),children:n(d?`inspector.pickElement`:`inspector.closeExpanded`)})}),(0,Q.jsx)(yl,{value:`Code`,...t($.panelBodyPanel),children:v?(0,Q.jsxs)(`div`,{...t($.code),children:[(0,Q.jsxs)(`div`,{...t($.codeHeading),children:[(0,Q.jsx)(`h2`,{...t($.codeTitle),children:n(`inspector.computedCss`)}),(0,Q.jsx)(je,{icon:gt,size:`small`,type:`text`,onClick:()=>void S(x),children:n(`inspector.copy`)})]}),(0,Q.jsx)(`pre`,{tabIndex:0,...t($.codePre),children:x}),(0,Q.jsxs)(`div`,{...t($.codeHeading),children:[(0,Q.jsx)(`h2`,{...t($.codeTitle),children:`HTML`}),(0,Q.jsx)(je,{icon:gt,size:`small`,type:`text`,onClick:()=>void S(v.html),children:n(`inspector.copy`)})]}),(0,Q.jsx)(`pre`,{tabIndex:0,...t($.codePre),children:v.html}),(0,Q.jsx)(`p`,{role:`status`,...t($.hint),children:g||n(`inspector.fromDom`)})]}):(0,Q.jsx)(`p`,{...t($.empty),children:n(`inspector.selectForCode`)})}),(0,Q.jsx)(yl,{value:`Tweaks`,...t($.panelBodyPanel),children:(0,Q.jsxs)(`section`,{...t($.section),children:[(0,Q.jsxs)(`h2`,{...t($.sectionTitle),children:[n(`inspector.sessionChanges`),` `,(0,Q.jsx)(`span`,{...t($.count),children:b.length})]}),(0,Q.jsx)(`p`,{...t($.hint),children:n(`inspector.changesApply`)}),(0,Q.jsx)(`div`,{...t($.tweaks),children:b.map(n=>(0,Q.jsxs)(`div`,{...t($.tweak),children:[(0,Q.jsxs)(`span`,{...t($.tweakLabel),children:[e.find(([e])=>e===n.boardId)?.[1].title||n.boardId,` ·`,` `,n.name]}),(0,Q.jsxs)(`code`,{...t($.tweakCode),children:[n.property,`: `,n.value]})]},`${n.boardId}:${n.id}:${n.property}`))}),!b.length&&(0,Q.jsx)(`p`,{...t($.hint),children:n(`inspector.noChanges`)}),(0,Q.jsx)(je,{block:!0,disabled:!b.length,icon:an,size:`small`,onClick:u,children:n(`inspector.resetPreview`)})]})})]}),(0,Q.jsxs)(`footer`,{...t($.footer),children:[(0,Q.jsx)(Mt,{"aria-hidden":!0,fill:`currentColor`,size:5,...t($.statusDot)}),b.length?n(`inspector.previewChanges`,{count:b.length}):n(`inspector.liveInspection`),(0,Q.jsx)(`span`,{...t($.footerNote),children:n(`inspector.previewOnly`)})]})]})})})});function Iv(e,t,n){if(n.board){let t=e.boards[n.board];return t?{minX:t.x,minY:t.y,maxX:t.x+t.w,maxY:t.y+t.h}:null}if(n.group){let t=e.groups?.[n.group],r=t?rr(t,e.boards):null;return r?{minX:r.x,minY:r.y,maxX:r.x+r.w,maxY:r.y+r.h}:null}let r=e.pages[0]?.id;return r&&t?.pages[r]?.bounds||null}function Lv({canvas:e,layout:t,fit:n,threads:r,stale:i}){let a=(0,Z.useRef)({canvas:e,layout:t,fit:n});a.current={canvas:e,layout:t,fit:n};let o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(0),l=!!e&&!!t;(0,Z.useEffect)(()=>{if(!l||!o.current)return;let e=o.current;o.current=null;let t=0,n=requestAnimationFrame(()=>{t=requestAnimationFrame(()=>{let{canvas:t,layout:n,fit:r}=a.current,i=t&&Iv(t,n,e);i&&r(i)})});return()=>{cancelAnimationFrame(n),cancelAnimationFrame(t)}},[l,s]),(0,Z.useEffect)(()=>{e&&Or()&&Dr({kind:`board-state`,board:{canvas:e,layout:t,threads:r,stale:i}})},[e,t,r,i]),(0,Z.useEffect)(()=>{if(!Or())return;let e=kr(e=>{e.kind===`focus`&&(o.current=e,c(e=>e+1))}),t=e=>{let t=e.target;if(t?.closest(`[data-backlink-badge]`))return;let n=t?.closest(`[data-group-label], [data-board-label]`),r=n?.dataset.groupLabel??n?.dataset.boardLabel;r&&Dr({kind:`select`,key:r})};return document.addEventListener(`click`,t,!0),Dr({kind:`ready`}),()=>{e(),document.removeEventListener(`click`,t,!0)}},[])}var Rv=(e,t)=>({left:t.x+(e.x+e.w)*t.k+12,top:t.y+e.y*t.k});function zv(e,t,n){let r=Rv(e,t);return{x:Math.min(Math.max(12,r.left),Math.max(12,n.width-352-12))-r.left,y:Math.min(Math.max(60,r.top),Math.max(60,n.height-604-12))-r.top}}function Bv({control:e,value:t,change:n,id:r,width:i}){return(0,Q.jsxs)(_a,{style:{width:i??`100%`,flexShrink:0},children:[(0,Q.jsx)(ba,{className:`x10l6tqk x1i1rx1s xjm9jq1 x1717udv xkdpibf xb3r6kr xzpqnlu xuxw1ft xc342km`,children:e.label}),(0,Q.jsx)(Oo,{controls:e.type!==`range`,id:r,max:e.max,min:e.min,size:`small`,step:e.step,style:{width:`100%`},value:t,onChange:e=>{e!==null&&n(e)}})]})}function Vv({control:e,value:t,change:r}){let i=(0,Z.useId)(),a=e.type===`enum`&&e.options.length<=3,o=a?`fieldset`:`div`,s;s=e.type===`color`?(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z xeuugli`,children:[e.options&&(0,Q.jsx)(`div`,{"aria-label":e.label,role:`group`,className:`x78zum5 x6s0dn4 x1nejdyq xmbed50 x2lah0s xw2csxc xf4egzd x5k8d2m x1597r2g`,children:e.options.map(n=>(0,Q.jsx)(`button`,{"aria-label":`${e.label}: ${n.label}`,"aria-pressed":t===n.value,style:{backgroundColor:n.value},type:`button`,...{0:{className:`x1xp8n7a xmix8c7 x9f619 x2lah0s xdh2fpr x1y0btm7 x1h8xy2i x1sxf85j x1717udv x1ypdohk x784prv x9v5kkp xv8siiq x13iak60`},1:{className:`x1xp8n7a xmix8c7 x9f619 x2lah0s xdh2fpr x1y0btm7 x1h8xy2i x1sxf85j x1717udv x1ypdohk x784prv x9v5kkp xv8siiq x13iak60 x1qgsegg xaatb59 x1um9acj x1y3gkto`}}[t===n.value|0],onClick:()=>r(n.value)},n.value))}),(0,Q.jsx)(kc,{alpha:!1,recent:!1,size:`small`,value:t,onChange:r,children:(0,Q.jsxs)(je,{"aria-label":e.label,className:{className:`xeuugli x98rzlu xlkn9b3`}.className,id:i,size:`small`,children:[(0,Q.jsx)(`span`,{style:{backgroundColor:t},className:`x1rg5ohu xsmyaan x1kpxq89 x9f619 x18zih8k xmkeg23 x1y0btm7 x12xov25 x2lah0s`}),(0,Q.jsx)(`code`,{className:`x1k6wstc`,children:String(t)})]})})]}):e.type===`boolean`?(0,Q.jsx)(Gn,{"aria-label":e.label,checked:t,className:{className:`x1lliihq xvc5jky`}.className,id:i,onChange:r}):e.type===`range`?(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z xeuugli`,children:[(0,Q.jsx)(Us,{"aria-labelledby":`${i}-label`,className:{className:`x98rzlu xeuugli`}.className,max:e.max,min:e.min,step:e.step,value:t,onChange:r}),(0,Q.jsx)(Bv,{change:r,control:e,id:`${i}-number`,value:t,width:48})]}):e.type===`number`?(0,Q.jsx)(Bv,{change:r,control:e,id:i,value:t}):e.type===`enum`?a?(0,Q.jsx)(Ln,{block:!0,options:e.options,size:`small`,value:t,onChange:r}):(0,Q.jsx)(wn,{id:i,options:e.options,size:`small`,style:{width:`100%`},value:t,onChange:e=>{typeof e==`string`&&r(e)}}):(0,Q.jsx)(xn,{"aria-label":e.label,id:i,maxLength:512,size:`small`,value:t,onChange:e=>r(e.target.value)});let c=t!==e.default;return(0,Q.jsxs)(o,{"data-changed":c||void 0,...{0:{className:`x1n2onr6 xrvj5dj x1x765j0 x6s0dn4 xtqikln x1gg8mnh x9f619`},1:{className:`x1n2onr6 x1x765j0 x6s0dn4 xtqikln x1gg8mnh x9f619 x1lliihq xc342km x1t0vds8 x4g923t xyri2b xeuugli x1ghz6dp`}}[!!a|0],children:[a?(0,Q.jsx)(`legend`,{...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe x10l6tqk xwa60dl xu96u03 x1cb1t30 x1d7z9mz x1ghz6dp x1717udv x9f619`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe x10l6tqk xwa60dl xu96u03 x1cb1t30 x1d7z9mz x1ghz6dp x1717udv x9f619 xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}):e.type===`range`?(0,Q.jsx)(`span`,{id:`${i}-label`,...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}):(0,Q.jsx)(`label`,{htmlFor:i,...{0:{className:`x1j6dyjg x1evy7pa x1bo0w0s xj0a0fe`},1:{className:`x1j6dyjg x1evy7pa xj0a0fe xo2rkog x1s928wv x1e1aq9x x1p6hnwz xlhiwpz x2coff9 xw5yhgz x1dzcmgn xvg789c`}}[!!c|0],children:e.label}),(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x1jnr06f xeuugli`,children:[(0,Q.jsx)(`div`,{className:`x98rzlu xeuugli`,children:s}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.resetControl`,{label:e.label}),className:{0:{className:`x2lah0s`},1:{className:`x2lah0s xlshs6z`}}[!c|0].className,disabled:!c,icon:an,size:{blockSize:22,size:11},title:n(`parameters.resetControl`,{label:e.label}),onClick:()=>r(e.default)})]})]})}function Hv({boardId:e,title:t,state:r,anchor:i,onChange:a,onReset:o,onClose:s}){let c=(0,Z.useRef)(null),l=(0,Z.useId)(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(`schema`),m=n(f===`schema`?`parameters.schema`:`parameters.currentValues`),h=JSON.stringify(f===`schema`?r.schema:r.values,null,2),g=new Map;for(let e of Object.entries(r.schema?.controls??{})){let t=e[1].section||n(`parameters.controls`);g.has(t)||g.set(t,[]),g.get(t).push(e)}let _=Object.entries(r.values).filter(([e,t])=>t!==r.schema?.controls[e]?.default).length,v=[{className:`x52sccv x78zum5 xdt5ytf x2lah0s xmkeg23 x1y0btm7 xgcsv5v x4pepcl x1rozbrz xo2rkog x1d5q07e xqfszdh xfifm61 xt0e3qv x1hx0egp xb3r6kr x9f619`}.className,`ryugi-parameters`].filter(Boolean).join(` `);return(0,Q.jsxs)(y,{config:{"aria-hidden":!0},children:[(0,Q.jsxs)(`aside`,{"aria-label":n(`parameters.title`),className:v,"data-chrome":`parameters`,style:{position:i?`absolute`:`relative`,...i,width:352,maxHeight:i?`min(604px, calc(100% - ${Math.max(0,i.top)}px - 12px))`:`min(604px, calc(100vh - 112px))`},onKeyDown:e=>{e.stopPropagation(),e.key===`Escape`&&!e.defaultPrevented&&!pr(e.nativeEvent)&&s()},children:[(0,Q.jsxs)(`header`,{className:`xn3w4p2 x2lah0s x78zum5 x6s0dn4 x167g77z xf7dkkf x2vl965 x9f619`,children:[(0,Q.jsx)(Gt,{"aria-hidden":!0,size:15,className:`x1bo0w0s`}),(0,Q.jsx)(`h2`,{className:`xfifm61 x1s688f x1ghz6dp`,children:n(`parameters.title`)}),(0,Q.jsx)(`span`,{className:`x1k6wstc x1bo0w0s x4h0osi`,children:Object.keys(r.schema?.controls??{}).length}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.close`),className:{className:`xvc5jky`}.className,icon:E,size:`small`,title:n(`parameters.close`),onClick:s})]}),(0,Q.jsxs)(`div`,{className:`x78zum5 x1pha0wt x167g77z x1hr3lfm x1ug4tga xso031l x1q0q8m5 xtrfj0v x2lah0s xeuugli x9f619`,children:[(0,Q.jsx)(`strong`,{title:t,className:`xeuugli xfifm61 xh88oxj xb3r6kr xuxw1ft xlyipyv`,children:t}),(0,Q.jsx)(`code`,{title:e,className:`xeuugli x1k6wstc x1bo0w0s xb3r6kr xuxw1ft xlyipyv`,children:e}),(0,Q.jsx)(`span`,{className:`xvc5jky x2lah0s xvwhms9 x1bo0w0s`,children:n(`parameters.currentBoard`)})]}),(0,Q.jsxs)(`div`,{className:`x98rzlu x2lwn1j xysyzu8 xish69e x1597r2g`,children:[r.error&&(0,Q.jsx)(`p`,{className:`x1ghz6dp x1tamke2 xfifm61 xa7kkou xpt3syw xj0a0fe`,role:`alert`,children:r.error}),[...g].map(([e,t],n)=>(0,Q.jsxs)(`section`,{...{0:{className:`xqy66fx xsag5q8 x1hr3lfm x9f619`},1:{className:`xqy66fx xsag5q8 x1hr3lfm x9f619 x178xt8z x13fuv20 xxu5053`}}[n>0|0],children:[(0,Q.jsx)(`h3`,{className:`x1k6wstc xh88oxj x1bo0w0s xdj266r xwoyzhm`,children:e}),t.map(([e,t])=>(0,Q.jsx)(Vv,{change:t=>a(e,t),control:t,value:r.values[e]},e))]},e))]}),(0,Q.jsxs)(`footer`,{"data-tweaks-footer":``,className:`x1gg8mnh x2lah0s x78zum5 x6s0dn4 x1ed6fcf xifx94n xf7dkkf xf159sx x178xt8z x13fuv20 xxu5053 x9f619`,children:[(0,Q.jsx)(`span`,{role:`status`,...{0:{className:`x98rzlu xeuugli x1k6wstc x1bo0w0s x1cpjm7i x1fhgk32 x1eencha x1k3893l x1rkpvhg x9msap3 x7fx0ki x1yciqh1`},1:{className:`x98rzlu xeuugli x1k6wstc x1bo0w0s x1cpjm7i x1fhgk32 x1eencha x1k3893l x1rkpvhg x9msap3 x1yciqh1 x1kk9t8l`}}[_>0|0],children:_?n(`parameters.changed`,{count:_}):n(`parameters.defaults`)}),(0,Q.jsx)(je,{className:{className:`x1k6wstc xm9j1uf`}.className,disabled:!_,icon:an,size:`small`,type:`text`,onClick:o,children:n(`parameters.reset`)}),r.schema&&(0,Q.jsx)(je,{"aria-haspopup":`dialog`,className:{className:`x1k6wstc xm9j1uf`}.className,icon:Di,ref:c,size:`small`,type:`text`,onClick:()=>{p(`schema`),d(!0)},children:n(`parameters.viewDeclaration`)})]})]}),(0,Q.jsx)(ce,{open:u,onExitComplete:()=>c.current?.focus(),onOpenChange:d,children:(0,Q.jsxs)($e,{children:[(0,Q.jsx)(he,{}),(0,Q.jsx)(K,{"aria-labelledby":`${l}-title`,style:{height:`min(580px, calc(100dvh - 96px))`,overflow:`hidden`},width:`min(650px, calc(100vw - 32px))`,children:(0,Q.jsxs)(`div`,{"data-chrome":`parameter-declaration`,className:[{className:`x78zum5 xdt5ytf xh8yej3 x5yr21d x2lwn1j xo2rkog xqfszdh`}.className,`rt-dialog`].filter(Boolean).join(` `),onKeyDown:e=>{e.stopPropagation(),e.key===`Escape`&&!e.defaultPrevented&&!pr(e.nativeEvent)&&d(!1)},children:[(0,Q.jsxs)(`header`,{className:`x78zum5 x6s0dn4 x883omv x1peatla x17qtykl x2lah0s xso031l x1q0q8m5 xtrfj0v x9f619`,children:[(0,Q.jsx)(Di,{"aria-hidden":!0,size:17,className:`x1bo0w0s x2lah0s`}),(0,Q.jsx)(Ze,{id:`${l}-title`,className:`xif65rj x1s688f x1ghz6dp`,children:n(`parameters.declaration`)}),(0,Q.jsx)(`code`,{className:`xvc5jky x1k6wstc x1bo0w0s xbgkxdc xb3r6kr xlyipyv xuxw1ft`,children:e}),(0,Q.jsx)(ct,{"aria-label":n(`parameters.closeDeclaration`),icon:E,size:`small`,onClick:()=>d(!1)})]}),(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x1c1vhfx x17qtykl x3sc9yq x2lah0s xso031l x1q0q8m5 xtrfj0v x9f619`,children:[(0,Q.jsx)(`div`,{"aria-label":n(`parameters.declaration`),role:`tablist`,className:`x78zum5 x6s0dn4 x1c1vhfx x3sc9yq`,onKeyDown:e=>{if(![`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key))return;e.preventDefault();let t=e.key===`Home`?`schema`:e.key===`End`||f===`schema`?`values`:`schema`;p(t),e.currentTarget.querySelector(`[data-json-tab="${t}"]`)?.focus()},children:[`schema`,`values`].map(e=>(0,Q.jsx)(`button`,{"aria-controls":`${l}-code`,"aria-selected":f===e,"data-json-tab":e,id:`${l}-${e}`,role:`tab`,tabIndex:f===e?0:-1,type:`button`,...{0:{className:`x99dwph xnjsko4 xc342km xlxy82 x1q0q8m5 x16stqrj xjbqb8w x1bo0w0s xjb2p0i x1j6dyjg x1ypdohk`},1:{className:`x99dwph xnjsko4 xc342km xlxy82 x1q0q8m5 xjbqb8w xjb2p0i x1j6dyjg x1ypdohk xo2rkog x1o2qa4v`}}[f===e|0],onClick:()=>p(e),children:n(e===`schema`?`parameters.schema`:`parameters.currentValues`)},e))}),(0,Q.jsx)(lt,{"aria-label":n(`parameters.copy`),className:{className:`xvc5jky`}.className,content:h,size:`small`,title:n(`parameters.copy`)})]}),(0,Q.jsx)(`div`,{className:`x2lwn1j x98rzlu xhyosrm x65v0h xysyzu8 xish69e x1597r2g`,children:(0,Q.jsx)(`pre`,{"aria-label":m,"aria-labelledby":`${l}-${f}`,id:`${l}-code`,role:`tabpanel`,tabIndex:0,className:`x1fao0z8 x1j6dyjg xbs1c6g x126k92a xj0a0fe x1ghz6dp x1bo0w0s`,children:h})}),(0,Q.jsx)(Ne,{className:`x2lah0s x178xt8z x13fuv20 xxu5053 x99dwph x17qtykl x1k6wstc x1bo0w0s x1dbl2gt x1ghz6dp`,children:n(`parameters.sessionOnly`)})]})})]})})]})}function Uv({group:e,left:t,top:n,onSubmit:r,onCancel:i}){let{t:a}=Un();return(0,Q.jsxs)(`div`,{"data-chrome":`reject`,className:`x10l6tqk xk3oba8 xj6ak53 xb3r6kr xixl9f9 x12ilycc x1d5q07e xqfszdh xfifm61 xo2rkog xt0e3qv`,style:{left:t,top:n},children:[(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x167g77z x889kno xqin4a2 x1j6dyjg`,children:[(0,Q.jsx)(`span`,{className:`xh4xifv x1s688f`,children:a(`verdict.reject`)}),(0,Q.jsx)(`span`,{className:`x1fao0z8 xddlp02`,children:e}),(0,Q.jsx)(`span`,{className:`xvc5jky xddlp02`,children:a(`verdict.reasonRequired`)})]}),(0,Q.jsx)(fr,{autoFocus:!0,placeholder:a(`verdict.reasonPlaceholder`),onCancel:i,onSubmit:r}),(0,Q.jsx)(`div`,{className:`xqin4a2 x1a8lsjc x1k6wstc x1dbl2gt xc7n51q`,children:a(`verdict.rejectHint`)})]})}var Wv={ghost:{k1xSpc:`xrvj5dj`,kgQiWS:`x1ku5rj1`,kmuXW:`x2lah0s`,kzqmXN:`x187nhsf`,kZKoxP:`xn3w4p2`,kmVPX3:`x1717udv`,kMzoRj:`xc342km`,kaIpWk:`x4pepcl`,kWkggS:`xjbqb8w xr361xe`,kMwMTN:`xo2rkog xiqg2am`,kkrTdU:`x1ypdohk xtgyt42`,k1ekBW:`xuo13n2`,kIyJzY:`xgdialr`,k3aq6I:`x19kf12q`,$$css:!0}},Gv=120,Kv=.5,qv=110,Jv=.4,Yv=.25;function Xv(e,t,n){if(!e||mr())return{done:Promise.resolve(),cancel:()=>{}};let r=e.animate(t,{fill:`forwards`,...n});return{done:r.finished.then(()=>void 0,()=>void 0),cancel:()=>r.cancel()}}function Zv({id:e,board:r,sandbox:i=`allow-scripts`,src:a,siblings:o,origin:s,choice:c,onChoose:l,onOpen:u,onClose:d}){let{viewportRef:f,view:p,place:m,handlers:h}=hv(`hand`),g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null),[b,x]=(0,Z.useState)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(p);C.current=p;let w=(0,Z.useRef)(!1),T=(0,Z.useRef)(null),E=(0,Z.useRef)(!1),D=o.indexOf(e),O=D>0?o[D-1]:void 0,k=D>=0?o[D+1]:void 0,A=()=>({width:f.current?.clientWidth??r.w,height:f.current?.clientHeight??r.h}),j=e=>{let t=C.current,n=f.current?.getBoundingClientRect();if(!e||!n)return null;let i=e.w/(r.w*t.k);return`translate(${e.x-n.left-i*t.x}px, ${e.y-n.top-i*t.y}px) scale(${i})`},M=()=>[v.current,y.current];(0,Z.useLayoutEffect)(()=>{let{width:e,height:t}=A(),n=r.interactive?Math.min(1,e/r.w,t/r.h):Math.min(1,e/r.w),i={k:n,x:(e-r.w*n)/2,y:0};if(m(i),C.current=i,!w.current){w.current=!0;let e=j(s);e&&hr(g.current,[{transform:e},{transform:`none`}],{duration:_r.duration,easing:_r.easing}),hr(_.current,[{opacity:0},{opacity:1}],{duration:200,easing:vr}),M().forEach((e,t)=>void hr(e,[{opacity:0,transform:`translateY(${t?12:-8}px)`},{opacity:1,transform:`none`}],{duration:180,delay:90,easing:vr}))}else if(T.current){let{dir:t,leaving:n}=T.current;T.current=null,n(),hr(g.current,[{transform:`translateX(${t*e*.35}px)`,opacity:0},{transform:`none`,opacity:1}],{duration:_r.duration,easing:_r.easing})}},[e,r.w,r.h,r.interactive,m,f]);let N=()=>{let e=g.current?.style.transform||`none`;x(null),hr(g.current,[{transform:e},{transform:`none`}],{duration:_r.duration,easing:_r.easing}),[_.current,...M()].forEach(e=>void hr(e,[{opacity:Number(e?.style.opacity||1)},{opacity:1}],{duration:200,easing:vr}))},P=async()=>{if(E.current)return;E.current=!0;let e=g.current?.style.transform||`none`,t=j(s),n={duration:100,easing:gr};await Promise.all([t?Xv(g.current,[{transform:e},{transform:t}],{duration:240,easing:gr}).done:Xv(g.current,[{opacity:1},{opacity:0}],n).done,Xv(_.current,[{opacity:Number(_.current?.style.opacity||1)},{opacity:0}],{duration:240,easing:gr}).done,...M().map(e=>Xv(e,[{opacity:Number(e?.style.opacity||1)},{opacity:0}],n).done)]),d()},F=async(e,t)=>{if(!t||E.current)return;E.current=!0;let n=g.current?.style.transform||`none`,r=Xv(g.current,[{transform:n,opacity:1},{transform:`translateX(${-e*A().width}px)`,opacity:0}],{duration:180,easing:gr});await r.done,T.current={dir:e,leaving:r.cancel},E.current=!1,x(null),u(t)},ee=e=>{let t=S.current;if(E.current||t?.mode===`dismiss`||t?.mode===`swipe`||(t&&(t.mode=`pan`),h.onPointerDown(e),t))return;[g.current,_.current,...M()].forEach(e=>e?.getAnimations().forEach(e=>e.cancel()));let n=yr();n.add(e.clientX,e.clientY,performance.now()),S.current={id:e.pointerId,x:e.clientX,y:e.clientY,mode:`pending`,track:n}},te=e=>{let t=S.current;if(!t||t.id!==e.pointerId)return h.onPointerMove(e);t.track.add(e.clientX,e.clientY,performance.now());let n=e.clientX-t.x,i=e.clientY-t.y;if(t.mode===`pending`){let a=br(n,i);if(!a)return;let s=r.w*p.k<=A().width+1;t.mode=a===`y`&&i>0&&p.y>=-.5?`dismiss`:a===`x`&&s&&o.length>1?`swipe`:`pan`,t.mode!==`pan`&&h.onPointerUp(e)}t.mode===`pan`?h.onPointerMove(e):x({axis:t.mode===`dismiss`?`y`:`x`,dx:n,dy:i})},ne=e=>{let t=S.current;if(!t||t.id!==e.pointerId||(S.current=null,t.mode===`pan`||t.mode===`pending`))return h.onPointerUp(e);let n=t.track.velocity(performance.now()),r=e.clientX-t.x,i=e.clientY-t.y;if(t.mode===`dismiss`)return i>Gv&&n.y>-.4||n.y>Kv?void P():N();let a=n.x<-.4?1:n.x>Jv?-1:0,o=r<-110?1:r>qv?-1:0,s=a===0?o:o===0||o===a?a:0,c=s===1?k:s===-1?O:void 0;c&&s?F(s,c):N()},{width:I,height:re}=A(),L,R=1,z=1;if(b?.axis===`y`){let e=Math.max(0,b.dy),t=1-Math.min(e/900,.3);L=`translate(${b.dx*.6+(1-t)*I/2}px, ${e+(1-t)*re/2}px) scale(${t})`,R=1-Math.min(e/420,.85),z=Math.max(0,1-e/Gv)}else b?.axis===`x`&&(L=`translateX(${b.dx>0&&!O||b.dx<0&&!k?b.dx*Yv:b.dx}px)`);return(0,Q.jsxs)(`div`,{"data-phone-board":!0,className:`xixxii4 x10a8y8t x68pp3s x78zum5 xdt5ytf xo2rkog xqfszdh`,children:[(0,Q.jsx)(`div`,{ref:_,className:`x10l6tqk x10a8y8t x184qs1t`,style:b?{opacity:R}:void 0}),(0,Q.jsxs)(`header`,{ref:v,className:`x1n2onr6 x2lah0s xdd8jsf x78zum5 x6s0dn4 x195vfkc x135b78x xv54qhq xso031l x1q0q8m5 xtrfj0v x1rozbrz`,style:b?{opacity:z}:void 0,children:[(0,Q.jsx)(`button`,{"aria-label":n(`phone.backToCanvas`),type:`button`,onClick:()=>void P(),...t(Wv.ghost),children:(0,Q.jsx)(yt,{size:22})}),(0,Q.jsxs)(`span`,{className:`x98rzlu xeuugli x78zum5 xdt5ytf x12mrbbr`,children:[(0,Q.jsx)(`span`,{className:`xb3r6kr xuxw1ft xlyipyv x1jvydc1 x1s688f`,children:r.title??e}),(0,Q.jsx)(`code`,{className:`xb3r6kr xuxw1ft xlyipyv xddlp02 x1fao0z8 x1j6dyjg`,children:e})]}),c?.recommended?(0,Q.jsx)(`span`,{className:`x2lah0s x1xegmmw x1xijbu4 xmkeg23 x1y0btm7 xjuql9v x1sxf85j x12ogdgn xfifm61 xd4r4e8`,children:n(`choices.recommended`)}):null,o.length>1?(0,Q.jsxs)(`span`,{className:`x2lah0s x1bo0w0s x4z9k3i xss6m8b`,children:[D+1,` / `,o.length]}):null]}),(0,Q.jsx)(`div`,{"data-board-body":!0,ref:f,onPointerDown:ee,onPointerMove:te,onPointerUp:ne,onPointerCancel:e=>{let t=S.current;t?.id===e.pointerId&&((t.mode===`dismiss`||t.mode===`swipe`)&&N(),S.current=null),h.onPointerCancel(e)},className:`x1n2onr6 x98rzlu x2lwn1j xb3r6kr x5ve5x3`,children:(0,Q.jsx)(`div`,{"data-board-stage":!0,ref:g,className:`x10l6tqk x10a8y8t x1hj3fc7`,style:L?{transform:L}:void 0,children:(0,Q.jsx)(`div`,{className:`x10l6tqk xu96u03 x13vifvy x1hj3fc7`,style:{width:r.w,height:r.h,transform:`translate(${p.x}px, ${p.y}px) scale(${p.k})`},children:Wn(r)?(0,Q.jsx)(On,{board:r,id:e,src:a,zoom:p.k},e):(0,Q.jsx)(`iframe`,{sandbox:i,src:a,title:r.title??e,className:`x1lliihq xc342km x1l2ivya`,style:{width:r.w,height:r.h,pointerEvents:r.interactive?`auto`:`none`}},e)})})}),c&&l?(0,Q.jsx)(`div`,{className:`x1n2onr6 x2lah0s x1hr3lfm x889kno x10b6aqq x1rozbrz`,style:b?{opacity:z}:void 0,children:(0,Q.jsx)(`button`,{"aria-pressed":c.chosen,"data-choose-board":e,disabled:c.disabled,type:`button`,onClick:l,...{0:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjbqb8w x12ogdgn xjb2p0i x1jvydc1 x1s688f x1ypdohk`},2:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjb2p0i x1jvydc1 x1s688f x1ypdohk x18t3gi2 xm7i3gb`},1:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjbqb8w x12ogdgn xjb2p0i x1jvydc1 x1s688f xbyyjgo xt0e3qv`},3:{className:`xh8yej3 xwvwv9b xvndefy x1y0btm7 x1lvdfi3 x4pepcl xjb2p0i x1jvydc1 x1s688f x18t3gi2 xm7i3gb xbyyjgo xt0e3qv`}}[!!c.chosen<<1|!!c.disabled],children:c.chosen?`✓ ${n(`choices.chosenThis`)}`:n(`choices.chooseThis`)})}):null,o.length>1?(0,Q.jsxs)(`div`,{ref:y,className:`x1n2onr6 x2lah0s x78zum5 x6s0dn4 xdqyycr x1iorvi4 xe1blv6 x178xt8z x13fuv20 xxu5053 x1rozbrz`,style:b?{opacity:z}:void 0,children:[(0,Q.jsx)(`button`,{"aria-label":n(`phone.previousBoard`),disabled:!O,type:`button`,onClick:()=>void F(-1,O),...t(Wv.ghost),children:(0,Q.jsx)(yt,{size:20})}),(0,Q.jsx)(`span`,{className:`x98rzlu x78zum5 xl56j7k x17d4w8g`,children:o.map((e,t)=>(0,Q.jsx)(`span`,{"data-dot":t===D?`current`:``,...{0:{className:`x1v4s8kt xols6we x18zih8k x174nbcu xx99ppg x13dflua`},1:{className:`xols6we x18zih8k xx99ppg x13dflua x1xp8n7a x19ckca5`}}[t===D|0]},e))}),(0,Q.jsx)(`button`,{"aria-label":n(`phone.nextBoard`),disabled:!k,type:`button`,onClick:()=>void F(1,k),...t(Wv.ghost),children:(0,Q.jsx)(Tt,{size:20})})]}):null]})}var Qv=e=>({minX:e.x,minY:e.y,maxX:e.x+e.w,maxY:e.y+e.h});function $v(e,t,n){let r=t.pages[n];if(!r)return[];let a=new Set,o=[];for(let[t,i]of Object.entries(e.groups??{})){let s=r.groups[t],c=i.boards.filter(t=>e.boards[t]?.page===n);if(s&&c.length!==0){for(let e of i.boards)a.add(e);o.push({id:t,title:i.title??t,boards:c,bounds:Qv(s)})}}for(let[t,r]of Object.entries(e.boards))r.page!==n||a.has(t)||o.push({id:t,title:r.title??t,boards:[t],bounds:Qv(r)});o.sort((e,t)=>e.bounds.minY-t.bounds.minY||e.bounds.minX-t.bounds.minX);let s=Ut(e,t,n),c=new Map;for(let e of o){let t=tn(s,e.bounds.minY),n=t?.id??null;c.has(n)||c.set(n,{id:n,title:t?.text??i.t(`common.other`),questions:[]}),c.get(n).questions.push(e)}let l=e=>s.find(t=>t.id===e)?.rect.y??-1/0;return[...c.values()].sort((e,t)=>l(t.id)-l(e.id))}var ey=e=>e.flatMap(e=>e.questions);function ty(e,t){let n=ey(e);if(t){let r=e.find(e=>e.id===t)?.questions[0]??n.find(e=>e.id===t)??n.find(e=>e.boards.includes(t));if(r)return r}return n[0]??null}function ny(e,t,n){let r=e.findIndex(e=>e.id===t);return r===-1?null:e[r+n]??null}var ry=.66,iy=(e,t,n)=>e.id===t?.id?`current`:n[e.id]?.state===`pass`?`pass`:n[e.id]?.state===`reject`?`reject`:`open`;function ay({rounds:e,current:n,previous:r,next:i,pages:a,page:o,onPageChange:s,onPick:c,snap:l,onSnap:u,verdicts:d={},chose:f={}}){let{t:p}=Un(),m=ey(e),h=n?m.findIndex(e=>e.id===n.id):-1;return(0,Q.jsx)(xr,{snap:l,snaps:[78,ry],header:(0,Q.jsxs)(`div`,{className:`x78zum5 x6s0dn4 x17d4w8g x1xijbu4 xsag5q8`,children:[(0,Q.jsx)(`button`,{"aria-label":p(`questions.previous`),disabled:!r,type:`button`,onClick:()=>r&&c(r),...t(Wv.ghost),children:(0,Q.jsx)(yt,{size:20})}),(0,Q.jsxs)(`span`,{"data-question-bar":!0,className:`x98rzlu xeuugli x78zum5 xdt5ytf xl56j7k x17d4w8g xn3w4p2 xfn1xvj xqfszdh`,children:[(0,Q.jsx)(`span`,{className:`x78zum5 x1pha0wt x17d4w8g xeuugli xif65rj`,children:n?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`code`,{className:`x2lah0s x1fao0z8 x4z9k3i x12ogdgn x1s688f`,children:n.id}),(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xk50ysn`,children:n.title}),f[n.id]&&(0,Q.jsx)(`span`,{className:`x2lah0s x12ogdgn xfifm61 x1s688f`,children:p(`choices.chose`,{id:f[n.id]})}),(0,Q.jsxs)(`span`,{className:`xvc5jky x2lah0s xddlp02 xfifm61 xss6m8b`,children:[h+1,` / `,m.length]})]}):(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xo1l8bm`,children:p(`questions.jumpTo`)})}),(0,Q.jsx)(`span`,{"data-progress":!0,className:`x78zum5 x1ed6fcf`,children:m.map(e=>{let t=iy(e,n,d);return(0,Q.jsx)(`span`,{"data-mark":t,...{0:{className:`x98rzlu xuoj239 x1cum3z5 x15dg6x3`},8:{className:`x98rzlu xuoj239 x1cum3z5 x18t3gi2`},4:{className:`x98rzlu xuoj239 x1cum3z5 xux1nz0`},12:{className:`x98rzlu xuoj239 x1cum3z5 xux1nz0`},2:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},10:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},6:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},14:{className:`x98rzlu xuoj239 x1cum3z5 xzkukvh`},1:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},9:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},5:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},13:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},3:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},11:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},7:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`},15:{className:`x98rzlu xuoj239 x1cum3z5 x1ozhlv3`}}[(t===`current`)<<3|(t===`pass`)<<2|(t===`reject`)<<1|!!(t===`open`&&f[e.id])]},e.id)})})]}),(0,Q.jsx)(`button`,{"aria-label":p(`questions.next`),disabled:!i,type:`button`,onClick:()=>i&&c(i),...t(Wv.ghost),children:(0,Q.jsx)(Tt,{size:20})})]}),onScrim:()=>u(78),onSnap:u,children:(0,Q.jsxs)(`div`,{className:`xwxc41k xqfszdh`,children:[a.length>1?(0,Q.jsx)(`div`,{className:`x78zum5 x13a6bvl x1hr3lfm x12ulsxz`,children:(0,Q.jsx)(Ft,{page:o,pages:a,onPageChange:s})}):null,e.map(e=>(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{"data-round":!0,className:`xyinxu5 x10b6aqq x1hr3lfm xddlp02 xfifm61`,children:e.title}),e.questions.map(e=>(0,Q.jsxs)(`button`,{"data-question-row":e.id,type:`button`,onClick:()=>c(e),...{0:{className:`x78zum5 x6s0dn4 x167g77z xh8yej3 x1wxaq2x xrii95j x1hr3lfm xc342km x178xt8z x13fuv20 xxu5053 xjbqb8w xo2rkog xqfszdh xif65rj xdpxx8g x1ypdohk`},1:{className:`x78zum5 x6s0dn4 x167g77z xh8yej3 x1wxaq2x xrii95j x1hr3lfm xc342km x178xt8z x13fuv20 xxu5053 xo2rkog xqfszdh xif65rj xdpxx8g x1ypdohk x2fo67v`}}[e.id===n?.id|0],children:[(0,Q.jsx)(`code`,{className:`x2lah0s x1fao0z8 x4z9k3i`,children:e.id}),(0,Q.jsx)(`span`,{className:`xeuugli xb3r6kr xuxw1ft xlyipyv xo1l8bm`,children:e.title}),(0,Q.jsx)(`span`,{className:`xvc5jky x2lah0s xddlp02 xfifm61`,children:p(`questions.boards`,{count:e.boards.length})})]},e.id))]},e.id??``))]})})}var oy={top:16,right:16,bottom:94,left:16},sy=8,cy=new Set,ly=()=>{},uy=[];function dy({id:e,artifact:t,canvas:n,layout:r,warnings:i,pending:a,contentBase:o,boardPort:s,boardPath:c,versions:l,live:u,loaded:d,agent:f,agentSessions:p,comment:m,comments:h,actions:g}){let{viewportRef:_,worldRef:v,overlayRef:y,view:b,viewNow:x,size:S,gesturing:C,fit:w,handlers:T}=hv(`hand`),[E,D]=(0,Z.useState)(null),[O,k]=(0,Z.useState)(78),[A,j]=(0,Z.useState)(null),M=(0,Z.useRef)(null),N=(0,Z.useCallback)((e,t=!1)=>e?(D(e.id),w(e.bounds,oy,{animate:t}),!0):!1,[w]),{page:P,changePage:F}=m_({canvas:n,layout:r,fitPage:(0,Z.useCallback)(e=>{let t=r?.pages[e];return!n||!t?!1:(N(ty($v(n,r,e),n.focus?.target))||(D(null),t.bounds&&w(t.bounds,oy)),!0)},[n,r,w,N]),startAtFocus:!0}),ee=(0,Z.useMemo)(()=>n&&r&&P?$v(n,r,P):[],[n,r,P]),te=(0,Z.useMemo)(()=>ey(ee),[ee]),ne=te.find(e=>e.id===E)??null,I=e=>{N(e,!0),k(78)},re=n?.boards??{},L=(0,Z.useMemo)(()=>Object.entries(n?.boards??{}).filter(([,e])=>e.page===P),[n,P]),R=Object.entries(n?.groups??{}).filter(([,e])=>e.boards.some(e=>re[e]?.page===P)),z=Object.entries(n?.notes??{}).filter(([,e])=>e.page===P),B=(0,Z.useMemo)(()=>new Set(a),[a]),V=A_({contentBase:o,boardPort:s,boardPath:c}),H=(0,Z.useMemo)(()=>V?B:new Set(L.map(([e])=>e)),[V,B,L]),U=w_({boards:L,versions:l,pending:H,view:b,viewport:S,active:cy,gesturing:C}),ie=z_(L,b,S),W=(0,Z.useMemo)(()=>new Set(h?.stale??[]),[h]),G=Sv({canvas:n,page:P,threads:h?.comments.threads??uy,stale:W,versions:l}),K=R_({canvas:n,layout:r,page:P,threads:h?.comments.threads??uy,listening:h?.listening===!0,comment:u===!1?void 0:m}),ae=Object.fromEntries(te.flatMap(e=>{let t=K.choiceOf(e.id);return t?.choice&&!t.byRecommendation?[[e.id,t.choice]]:[]})),oe=e=>{let t=_.current.getBoundingClientRect(),n=x(),r=(e.clientX-t.left-n.x)/n.k,i=(e.clientY-t.top-n.y)/n.k;return L.find(([,e])=>r>=e.x&&r<=e.x+e.w&&i>=e.y&&i<=e.y+e.h)?.[0]??null},q=e=>{T.onPointerDown(e);let t=!e.currentTarget.contains(e.target)||e.target.closest(`[data-chrome]`);M.current=M.current||t?null:{pointer:e.pointerId,x:e.clientX,y:e.clientY}},se=e=>{T.onPointerMove(e);let t=M.current;t&&(t.pointer!==e.pointerId||Math.hypot(e.clientX-t.x,e.clientY-t.y)>sy)&&(M.current=null)},ce=e=>{T.onPointerUp(e);let t=M.current;if(M.current=null,t?.pointer!==e.pointerId)return;let n=oe(e);n&&j(n)},le=A?re[A]:void 0,J=_.current?.getBoundingClientRect(),ue=le&&J?{x:J.left+b.x+le.x*b.k,y:J.top+b.y+le.y*b.k,w:le.w*b.k,h:le.h*b.k}:void 0,de=e=>!n?.groups?.[e.id],fe=A?ee.find(e=>e.questions.some(e=>e.boards.includes(A))):void 0,pe=fe?.questions.find(e=>e.boards.includes(A)),Y=A?pe?de(pe)?fe.questions.filter(de).map(e=>e.id):pe.boards:[A]:[];return(0,Q.jsxs)(`div`,{className:`xixxii4 x10a8y8t x78zum5 xdt5ytf x184qs1t`,children:[(0,Q.jsx)(jt,{actions:g,live:u,page:P,pages:n?.pages??[],title:n?.title||e,onPageChange:F}),(0,Q.jsxs)(`div`,{ref:_,className:`x1n2onr6 x98rzlu x2lwn1j xb3r6kr x5ve5x3 x87ps6o xqfszdh xo2rkog`,onPointerDown:q,onPointerMove:se,onPointerUp:ce,onPointerCancel:e=>{T.onPointerCancel(e),M.current=null},children:[n&&r?(0,Q.jsxs)($n,{resetKey:n,children:[(0,Q.jsx)(Fn,{agent:f,agentSessions:p,artifact:t,boardBase:V?.base,boardSandbox:V?.sandbox,boards:L,contentBase:o,culled:ie,frameLoaded:ly,frameRef:U.frameRef,gesturing:C,images:U.images,inspecting:!1,live:u,notes:z,pending:H,phases:U.phases,playing:cy,replays:{},versions:l,view:b,worldRef:v,writing:u?n.writing:void 0}),(0,Q.jsx)(i_,{allBoards:re,boards:L,choices:K.active?K:void 0,contentBase:o,groups:R,overlayRef:y,pending:B,playing:cy,verdicts:G,versions:l,view:b,onExpand:j,onReplay:()=>{},onTogglePlay:j})]}):(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t xrvj5dj x1ku5rj1 xggk2y7 x1bo0w0s xif65rj x2b8uid`,children:d?i[0]??`Waiting for the agent to write canvas.json…`:`Connecting…`}),te.length>0?(0,Q.jsxs)(`div`,{"data-chrome":!0,className:`x10l6tqk x10a8y8t x1n327nk x47corl`,children:[K.current&&(0,Q.jsx)(_u,{agent:f,bottom:90,canAct:K.canAct,listening:K.listening,summary:K.current,onSubmit:K.submit,onWithdraw:K.withdraw}),(0,Q.jsx)(ay,{chose:ae,current:ne,next:E?ny(te,E,1):null,page:P,pages:n?.pages??[],previous:E?ny(te,E,-1):null,rounds:ee,snap:O,verdicts:G.states,onPageChange:F,onPick:I,onSnap:k})]}):null]}),A&&le?(0,Q.jsx)(Zv,{board:le,choice:K.boardChoice(A),id:A,origin:ue,sandbox:Wn(le)?void 0:V?.sandbox,siblings:Y,src:`${Wn(le)?o:V?.base??o}${le.file}?v=${l[le.file]??0}`,onChoose:()=>K.choose(A),onClose:()=>j(null),onOpen:j}):null]})}function fy(e){return Ar(Sr(`(max-width: 640px)`))?(0,Q.jsx)(dy,{...e}):(0,Q.jsx)(py,{...e})}function py({id:e,artifact:t,canvas:r,layout:i,warnings:a,pending:o,contentBase:s,backlinks:c,boardPort:l,boardPath:u,versions:d,live:f,loaded:p,send:m,agent:h,agentSessions:g,comments:_,comment:v,actions:b}){let[x,S]=(0,Z.useState)(`select`),{viewportRef:C,worldRef:w,overlayRef:T,view:E,viewNow:D,gesturing:O,size:k,fit:A,zoomBy:j,zoomTo:M,cursor:N,hand:P,handlers:F,panBy:ee,wheelAt:te,panning:ne,setSpaceHeld:I,place:re}=hv(x),[L,R]=(0,Z.useState)(!1),[z]=(0,Z.useState)(()=>new URLSearchParams(location.search).has(`debug`)),[B,V]=(0,Z.useState)(`open`),H=e=>e&&i?.pages[e]?.bounds||null,{page:U,changePage:ie}=m_({canvas:r,layout:i,fitPage:(0,Z.useCallback)(e=>{let t=i?.pages[e]?.bounds;return t?(A(t),!0):!1},[i,A])});p_({canvas:r,page:U,changePage:ie,viewNow:D,place:re});let[W,G]=(0,Z.useState)(null),[K,ae]=(0,Z.useState)(()=>new Set),[oe,q]=(0,Z.useState)({}),se=F_(e),[ce,le]=(0,Z.useState)(null),J=(0,Z.useRef)(null);(0,Z.useEffect)(()=>le(null),[U,e]);let ue=()=>{le(null),J.current?.focus()},de=(e,t)=>{J.current=t;let n=r?.boards[e],i=C.current;if(ce!==e&&!W&&n&&i){let e=zv(n,D(),{width:i.clientWidth,height:i.clientHeight});(e.x||e.y)&&ee(e.x,e.y)}le(t=>t===e?null:e)},fe=x===`select`&&!W&&!ne,pe=x===`comment`,Y=nv({enabled:!W&&(x===`select`||pe||L),mode:pe?`comment`:`select`,playing:K,onInput:(e,t)=>{let n=r?.boards[e];if(n){if(t.type===`ryugi:inspect:wheel`){let e=D();te({...t,x:e.x+(n.x+t.x)*e.k,y:e.y+(n.y+t.y)*e.k})}else t.type===`ryugi:inspect:pan`?ee(t.deltaX,t.deltaY):t.type===`ryugi:inspect:drag`?pe?me.onFrameDrag(e,t):fe&&Ve.drag(t.phase,n.x+t.x,n.y+t.y,t.append,t.id?{boardId:e,id:t.id}:void 0):t.code===`Space`?I(t.down):t.down&&ke(t)}}});xv({artifact:t,boards:r?.boards,live:f,inspector:Y,send:m});let me=h_({comments:_,comment:v,page:U,boards:r?.boards??{},inspector:Y}),he=Sv({canvas:r,page:U,threads:me.threads,stale:me.stale,versions:d,comment:v}),ge=K_({canvas:r,pending:new Set(o),threads:me.threads,versions:d}),_e=R_({canvas:r,layout:i,page:U,threads:me.threads,listening:_?.listening===!0,comment:f===!1?void 0:v}),ve=he.rejecting?he.origin(he.rejecting):null,ye=e=>{(e!==`comment`||v)&&(e===`comment`&&x===`select`&&me.commentSelection(),e===`comment`&&R(!1),e!==`comment`&&me.close(),S(e))},be=o_({commentTool:x===`comment`,inspectorOpen:L,hasVerify:he.progress.total>0,setMode:e=>{if(e===`comments`)return ye(`comment`);x===`comment`&&ye(`select`),R(e===`inspector`)}}),xe=en(r?.groups??{},r?.boards??{},U).map(([e])=>e),Se=(0,Z.useMemo)(()=>[...me.stale],[me.stale]);Lv({canvas:r,layout:i,fit:e=>A(e),threads:me.threads,stale:Se});let Ce=I_({canvas:r,order:xe,states:he.states,updates:ge.groups,frame:e=>A(e,be.tab?c_:void 0)}),we=e=>{let t=me.threads.find(t=>t.id===e),n=t&&Su(t.anchor,r?.boards??{}),i=C.current,a=D();n&&i&&ee((i.clientWidth-(be.tab?390:0))/2-(a.x+n.x*a.k),i.clientHeight/2-(a.y+n.y*a.k)),me.setOpenId(e)},Te=(0,Z.useCallback)(()=>R(!1),[]);(0,Z.useEffect)(()=>{W&&I(!1)},[W,I]);let Ee=(0,Z.useMemo)(()=>new Set(o),[o]),De=me.threads.filter(e=>e.anchor.page===U&&Du(e)&&e.status===`open`).length,Oe=r?.pages??[];(0,Z.useEffect)(()=>{let t=r?.title||e;document.title=t,Dr({kind:`title`,title:t})},[r?.title,e]),pt(`artboard`);function ke(e){if(`target`in e&&(e.defaultPrevented||pr(e)||e.target?.closest?.(`input, textarea, select, [contenteditable], [data-chrome="parameters"]`)))return;let t=()=>{`preventDefault`in e&&e.preventDefault()},n=e.metaKey||e.ctrlKey;e.key===`Escape`&&pe?me.close()||ye(`select`):e.key===`Escape`?ce?ue():W||Y.selectedTargets.length>0?(G(null),Y.clearSelection(),Ve.reset()):be.tab&&!be.pinned&&be.close():n&&(e.key===`=`||e.key===`+`)?(t(),j(1.25)):n&&e.key===`-`?(t(),j(.8)):e.shiftKey&&e.code===`Digit1`?A(H(U)):e.shiftKey&&e.code===`Digit0`?M(1):!n&&!e.shiftKey&&e.key.toLowerCase()===`v`?(t(),ye(`select`)):!n&&!e.shiftKey&&e.key.toLowerCase()===`h`?(t(),ye(`hand`)):!n&&!e.shiftKey&&!he.rejecting&&(e.key.toLowerCase()===`j`||e.key.toLowerCase()===`k`)?(t(),Ce.step(e.key.toLowerCase()===`j`?1:-1)):!n&&!e.shiftKey&&e.key.toLowerCase()===`c`&&(t(),ye(`comment`))}(0,Z.useEffect)(()=>(window.addEventListener(`keydown`,ke),()=>window.removeEventListener(`keydown`,ke)));let Ae=r?.boards??{},X=(0,Z.useMemo)(()=>Object.entries(r?.boards??{}).filter(([,e])=>e.page===U),[r,U]),Me=Object.entries(r?.groups??{}).filter(([,e])=>e.boards.some(e=>Ae[e]?.page===U)),Ne=Object.entries(r?.notes??{}).filter(([,e])=>e.page===U),Pe=(0,Z.useMemo)(()=>Object.fromEntries(Object.entries(r?.notes??{}).flatMap(([e,t])=>r&&t.kind===`title`?[[e,nr(r,e)]]:[])),[r]),Fe=W?Ae[W]:void 0,Ie=Object.fromEntries(Object.entries(se.states).flatMap(([e,t])=>{let n=Object.keys(t.schema?.controls??{}).length,r=Object.entries(t.schema?.controls??{}).some(([e,n])=>t.values[e]!==n.default);return n||t.error?[[e,r]]:[]})),Le=ce?se.states[ce]:void 0,Re=ce?Ae[ce]:void 0,ze=e=>ce&&Le&&Re&&(Le.schema||Le.error)?(0,Q.jsx)(Hv,{anchor:e?Rv(Re,E):void 0,boardId:ce,state:Le,title:Re.title??ce,onChange:(e,t)=>se.change(ce,e,t),onClose:ue,onReset:()=>se.reset(ce)}):null,Be=Fe?(d[Fe.file]??0)>0&&!Ee.has(W):!1,Ve=rv(X,Y,E.k,[x,W,U,ne]),He=e=>{let t=C.current.getBoundingClientRect(),n=D();return{x:(e.clientX-t.left-n.x)/n.k,y:(e.clientY-t.top-n.y)/n.k}},Ue=Ve.marquee,We=(0,Z.useMemo)(()=>new Set([...K,...[W,ce].filter(e=>!!e),...Y.selectedTargets.map(e=>e.boardId),...Object.entries(Y.frames).filter(([,e])=>e.tweaks.length>0).map(([e])=>e),...Ue?X.filter(([,e])=>e.x<Ue.x+Ue.width&&e.x+e.w>Ue.x&&e.y<Ue.y+Ue.height&&e.y+e.h>Ue.y).map(([e])=>e):[]]),[K,W,ce,Y.selectedTargets,Y.frames,Ue,X]),Ge=A_({contentBase:s,boardPort:l,boardPath:u}),Ke=(0,Z.useMemo)(()=>Ge?Ee:new Set(X.map(([e])=>e)),[Ge,Ee,X]),qe=w_({boards:X,versions:d,pending:Ke,view:E,viewport:k,active:We,gesturing:O}),Je=z_(X,E,k),Ye=(0,Z.useMemo)(()=>{let e=new Map;return t=>(e.has(t)||e.set(t,e=>{se.refFor(t)(e),Y.refFor(t)(e),qe.frameRef(t)(e)}),e.get(t))},[se.refFor,Y.refFor,qe.frameRef]),Xe=(0,Z.useCallback)(e=>{se.loaded(e),Y.loaded(e)},[se.loaded,Y.loaded]);return(0,Q.jsx)(`div`,{className:`x78zum5 xh8yej3 x5yr21d xb3r6kr`,children:(0,Q.jsxs)(`div`,{ref:C,className:`x98rzlu xeuugli x1n2onr6 xh8yej3 x5yr21d xb3r6kr x5ve5x3 x87ps6o x184qs1t xqfszdh xo2rkog`,style:{cursor:N},onClickCapture:e=>{!W&&(pe||ne)&&e.target.closest(`[data-video-surface]`)&&e.stopPropagation()},onPointerCancel:e=>{F.onPointerCancel(e),Ve.reset()},onPointerDown:e=>{if(F.onPointerDown(e),pe&&!ne&&!W&&e.button===0&&e.pointerType!==`touch`&&e.currentTarget.contains(e.target)&&!e.target.closest(`[data-chrome]`)&&(e.preventDefault(),me.onCanvasClick(He(e))),!fe||e.pointerType===`touch`||e.button!==0||!e.currentTarget.contains(e.target)||e.target.closest(`[data-chrome], [data-video-surface]`))return;let t=He(e);e.currentTarget.setPointerCapture(e.pointerId),Ve.drag(`start`,t.x,t.y,e.shiftKey||e.metaKey||e.ctrlKey)},onPointerMove:e=>{if(F.onPointerMove(e),Ve.dragging()){e.buttons===1&&e.currentTarget.setPointerCapture(e.pointerId);let t=He(e);Ve.drag(`move`,t.x,t.y)}},onPointerUp:e=>{if(F.onPointerUp(e),Ve.dragging()){let t=He(e);Ve.drag(`end`,t.x,t.y)}},children:[(0,Q.jsx)(cd,{hand:P,viewport:C}),z&&(0,Q.jsx)(Gu,{counts:qe.counts,culled:Je.size,gesturing:O}),r&&i&&(0,Q.jsxs)($n,{resetKey:r,children:[(0,Q.jsx)(Fn,{agent:h,agentSessions:g,artifact:t,boardBase:Ge?.base,boardSandbox:Ge?.sandbox,boards:X,contentBase:s,culled:Je,frameLoaded:Xe,frameRef:Ye,gesturing:O,images:qe.images,inspecting:fe||pe&&!W&&!ne,live:f,notes:Ne,pending:Ke,phases:qe.phases,playing:K,replays:oe,titleRooms:Pe,updated:ge.boards,versions:d,view:E,worldRef:w,writing:f?r.writing:void 0,onExpand:G}),(0,Q.jsx)(i_,{activeParameters:ce,allBoards:Ae,artboard:e,backlinks:c,boards:X,choices:_e.active?_e:void 0,contentBase:s,groups:Me,overlayRef:T,parameters:Ie,pending:Ee,playing:K,updates:ge.groups,verdicts:he,versions:d,view:E,onExpand:G,onReplay:e=>q(t=>({...t,[e]:(t[e]??0)+1})),onToggleParameters:de,onTogglePlay:e=>ae(t=>jn(t,e))}),he.rejecting&&ve&&(0,Q.jsx)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y xk3oba8`,children:(0,Q.jsx)(Uv,{group:he.rejecting,left:E.x+ve.x*E.k,top:E.y+ve.y*E.k+8,onCancel:he.cancelReject,onSubmit:he.submitReject})}),pe&&(0,Q.jsx)(Vu,{actions:me.actions,agent:h,boards:Ae,draft:me.draft,height:k.height,numbers:me.numbers,openId:me.openId,overlayRef:T,page:U,showResolved:B===`all`,stale:me.stale,threads:me.threads,view:E,width:(C.current?.clientWidth??0)-(be.tab?390:0),onCancelDraft:me.cancelDraft,onOpen:me.setOpenId,onSubmit:me.submit})]}),(0,Q.jsxs)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y`,children:[(fe||pe)&&!Ve.marquee&&Y.hover&&Ae[Y.hover.boardId]&&(0,Q.jsx)(Cv,{board:Ae[Y.hover.boardId],rect:Y.hover.rect,view:E,nodeId:Y.hover.id?`${Y.hover.boardId}#${Y.hover.id}`:void 0}),!W&&Y.targets.map(e=>Ae[e.boardId]&&(0,Q.jsx)(Cv,{selected:!0,board:Ae[e.boardId],name:e.name,rect:e.rect,view:E},`${e.boardId}:${e.id}`))]}),Ve.selecting&&(0,Q.jsx)(`div`,{"aria-hidden":`true`,"data-selection-capture":``,className:`x10l6tqk x13vifvy x3m8u43 x1ey2m1c xu96u03 x1w0boku x5ve5x3`}),Ve.marquee&&(0,Q.jsx)(`div`,{"aria-hidden":`true`,"data-marquee":``,className:`x10l6tqk x47corl x1w0boku x9f619 xmkeg23 x1y0btm7 x5kefyr xbzdn4w`,style:{left:E.x+Ve.marquee.x*E.k,top:E.y+Ve.marquee.y*E.k,width:Ve.marquee.width*E.k,height:Ve.marquee.height*E.k}}),(!r||!i)&&(0,Q.jsx)(`div`,{className:`x10l6tqk x10a8y8t x78zum5 x6s0dn4 xl56j7k xggk2y7 x1bo0w0s xif65rj x2b8uid x47corl`,children:p?a[0]??n(`chrome.waitingCanvas`):n(`common.connecting`)}),_e.current&&!W&&(0,Q.jsx)(_u,{agent:h,canAct:_e.canAct,listening:_e.listening,summary:_e.current,onSubmit:_e.submit,onWithdraw:_e.withdraw}),(0,Q.jsx)(d_,{commenting:!!v,page:U,pages:Oe,tool:x,onPageChange:ie,onToolChange:ye}),(0,Q.jsx)(f_,{actions:b,inspectorOpen:L,live:f,verify:he.progress,verifyOpen:be.tab===`verify`,warnings:a,zoom:E.k,onActualSize:()=>M(1),onFit:()=>A(H(U)),onToggleInspector:()=>be.toggle(`inspector`),onToggleVerify:()=>be.toggle(`verify`),onZoomIn:()=>j(1.25),onZoomOut:()=>j(.8)}),(0,Q.jsx)(l_,{available:k.height,pinned:be.pinned,tab:be.tab,counts:{comments:De,...he.progress.total>0?{verify:`${he.progress.passed}/${he.progress.total}`}:{}},panes:{verify:(0,Q.jsx)(Pu,{groups:r?.groups??{},nav:Ce,order:xe,states:he.states,updates:ge.groups}),comments:(0,Q.jsx)(Au,{embedded:!0,numbers:me.numbers,openId:me.openId,page:U,stale:me.stale,tab:B,threads:me.threads,onClose:be.close,onOpen:we,onTab:V}),inspector:(0,Q.jsx)(Fv,{embedded:!0,boards:X,change:Y.change,enabled:!W,frames:Y.frames,hoverNode:Y.hoverNode,playing:K,reset:Y.reset,select:Y.select,selection:Y.selection,targets:Y.targets,onClose:Te})},onPin:be.togglePin,onTab:be.show}),!W&&ce&&(0,Q.jsx)(`div`,{ref:T,className:`x10l6tqk xu96u03 x13vifvy xnalus7 xqtp20y x52sccv`,children:ze(!0)}),W&&Fe&&Be&&(0,Q.jsx)(Ku,{board:Fe,frameRef:se.refFor(W,`expanded`),id:W,interactive:Fe.interactive===!0,parameters:ce===W?ze(!1):void 0,sandbox:Wn(Fe)?void 0:Ge?.sandbox,src:`${Wn(Fe)?s:Ge?.base??s}${Fe.file}?v=${d[Fe.file]??0}`,parameterAction:Ie[W]===void 0?void 0:(0,Q.jsx)(y,{config:{"aria-hidden":!0},children:(0,Q.jsx)(je,{"aria-expanded":ce===W,icon:Gt,size:`small`,type:`text`,onClick:e=>de(W,e.currentTarget),children:n(`chrome.parameters`)})}),onClose:()=>G(null),onFrameLoad:()=>se.loaded(W,`expanded`)})]})})}function my({id:e}){let t=hu(zr(`artboard`,e));return qn(t.loaded),(0,Q.jsx)(fy,{artifact:`artboard/${e}`,id:e,...t,actions:(0,Q.jsx)(ut,{artifact:`artboard/${e}`})})}export{my as ArtboardLayout};