fundus 0.23.0 → 0.24.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.
Files changed (102) hide show
  1. package/README.md +92 -26
  2. package/build/client/_app/immutable/chunks/CCIxsMRK.js +1 -0
  3. package/build/client/_app/immutable/chunks/CCIxsMRK.js.br +0 -0
  4. package/build/client/_app/immutable/chunks/CCIxsMRK.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{DWHqxOBm.js → CIZHDrUF.js} +1 -1
  6. package/build/client/_app/immutable/chunks/CIZHDrUF.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/CIZHDrUF.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{CVeOwywf.js → CnnMN4wM.js} +2 -2
  9. package/build/client/_app/immutable/chunks/CnnMN4wM.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/CnnMN4wM.js.gz +0 -0
  11. package/build/client/_app/immutable/entry/{app.BvNykvNA.js → app.BPBGxhbo.js} +2 -2
  12. package/build/client/_app/immutable/entry/app.BPBGxhbo.js.br +0 -0
  13. package/build/client/_app/immutable/entry/app.BPBGxhbo.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/start.CTftTL5f.js +1 -0
  15. package/build/client/_app/immutable/entry/start.CTftTL5f.js.br +0 -0
  16. package/build/client/_app/immutable/entry/start.CTftTL5f.js.gz +0 -0
  17. package/build/client/_app/immutable/nodes/{0.C-TKgrGP.js → 0.CquXHiCP.js} +1 -1
  18. package/build/client/_app/immutable/nodes/0.CquXHiCP.js.br +0 -0
  19. package/build/client/_app/immutable/nodes/0.CquXHiCP.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{1.q-uG--Ye.js → 1.xSi5hUiK.js} +1 -1
  21. package/build/client/_app/immutable/nodes/1.xSi5hUiK.js.br +1 -0
  22. package/build/client/_app/immutable/nodes/1.xSi5hUiK.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{2.EtCNRoA2.js → 2.CgzHO6l0.js} +1 -1
  24. package/build/client/_app/immutable/nodes/2.CgzHO6l0.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/2.CgzHO6l0.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{3.D7nMxWez.js → 3.B-HZ9QO3.js} +1 -1
  27. package/build/client/_app/immutable/nodes/3.B-HZ9QO3.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/3.B-HZ9QO3.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{4.B3M1zSBU.js → 4._rTlKXDo.js} +1 -1
  30. package/build/client/_app/immutable/nodes/4._rTlKXDo.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/4._rTlKXDo.js.gz +0 -0
  32. package/build/client/_app/version.json +1 -1
  33. package/build/client/_app/version.json.br +0 -0
  34. package/build/client/_app/version.json.gz +0 -0
  35. package/build/handler.js +7 -7
  36. package/build/index.js +7 -7
  37. package/build/server/chunks/chunks/{exports.js-BmD4UbfP.js → exports.js-CcnW-JJJ.js} +2 -2
  38. package/build/server/chunks/chunks/{exports.js-BmD4UbfP.js.map → exports.js-CcnW-JJJ.js.map} +1 -1
  39. package/build/server/chunks/chunks/{internal.js-CamOhpYX.js → internal.js-ByBTomBV.js} +2 -2
  40. package/build/server/chunks/chunks/{internal.js-CamOhpYX.js.map → internal.js-ByBTomBV.js.map} +1 -1
  41. package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -1
  42. package/build/server/chunks/chunks/{shared.js-z20dV9L6.js → shared.js-CCqNepI3.js} +2 -2
  43. package/build/server/chunks/chunks/{shared.js-z20dV9L6.js.map → shared.js-CCqNepI3.js.map} +1 -1
  44. package/build/server/chunks/chunks/{utils.js-CCdpL1Io.js → utils.js-GaDYRoLP.js} +3 -3
  45. package/build/server/chunks/chunks/{utils.js-CCdpL1Io.js.map → utils.js-GaDYRoLP.js.map} +1 -1
  46. package/build/server/chunks/{handler-B2BaQ6Ml.js → handler-DegMVxhC.js} +5 -5
  47. package/build/server/chunks/{handler-B2BaQ6Ml.js.map → handler-DegMVxhC.js.map} +1 -1
  48. package/build/server/chunks/{index.js-B77LinCI.js → index.js-BrCnc8Gq.js} +5 -5
  49. package/build/server/chunks/{index.js-B77LinCI.js.map → index.js-BrCnc8Gq.js.map} +1 -1
  50. package/build/server/chunks/{manifest.js-DBhPPiGl.js → manifest.js-mKxXvxuB.js} +7 -7
  51. package/build/server/chunks/{manifest.js-DBhPPiGl.js.map → manifest.js-mKxXvxuB.js.map} +1 -1
  52. package/build/server/chunks/nodes/{0.js-bzZzX1Nn.js → 0.js-Bnw_8E4c.js} +2 -2
  53. package/build/server/chunks/nodes/{0.js-bzZzX1Nn.js.map → 0.js-Bnw_8E4c.js.map} +1 -1
  54. package/build/server/chunks/nodes/1.js-DpvNtg1z.js +7 -0
  55. package/build/server/chunks/nodes/{1.js-CQ-mFntC.js.map → 1.js-DpvNtg1z.js.map} +1 -1
  56. package/build/server/chunks/nodes/{2.js-BSGPEoRK.js → 2.js-h7fLpCKT.js} +2 -2
  57. package/build/server/chunks/nodes/{2.js-BSGPEoRK.js.map → 2.js-h7fLpCKT.js.map} +1 -1
  58. package/build/server/chunks/nodes/3.js-XlL1_Sjt.js +7 -0
  59. package/build/server/chunks/nodes/{3.js-BzUyw6Q9.js.map → 3.js-XlL1_Sjt.js.map} +1 -1
  60. package/build/server/chunks/nodes/{4.js-vMj7JX0_.js → 4.js-BRkm0s7e.js} +2 -2
  61. package/build/server/chunks/nodes/{4.js-vMj7JX0_.js.map → 4.js-BRkm0s7e.js.map} +1 -1
  62. package/dist/core/manifest-entry.d.ts +6 -7
  63. package/dist/runtime/canvas.d.ts +18 -17
  64. package/dist/runtime/canvas.js +35 -36
  65. package/dist/runtime/components/Slice.svelte +4 -4
  66. package/dist/runtime/geometry.d.ts +61 -33
  67. package/dist/runtime/geometry.js +54 -38
  68. package/dist/runtime/index.d.ts +4 -4
  69. package/dist/runtime/index.js +2 -3
  70. package/dist/runtime/kind-handlers.d.ts +1 -26
  71. package/dist/runtime/kind-handlers.js +13 -29
  72. package/dist/runtime/manifest.d.ts +13 -15
  73. package/dist/runtime/manifest.js +23 -23
  74. package/dist/runtime/preload-registry.d.ts +4 -23
  75. package/dist/runtime/preload-registry.js +24 -5
  76. package/dist/runtime/retained-entry.d.ts +48 -0
  77. package/dist/runtime/retained-entry.js +61 -0
  78. package/package.json +1 -1
  79. package/build/client/_app/immutable/chunks/CVeOwywf.js.br +0 -0
  80. package/build/client/_app/immutable/chunks/CVeOwywf.js.gz +0 -0
  81. package/build/client/_app/immutable/chunks/Co7xGpqv.js +0 -1
  82. package/build/client/_app/immutable/chunks/Co7xGpqv.js.br +0 -0
  83. package/build/client/_app/immutable/chunks/Co7xGpqv.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/DWHqxOBm.js.br +0 -0
  85. package/build/client/_app/immutable/chunks/DWHqxOBm.js.gz +0 -0
  86. package/build/client/_app/immutable/entry/app.BvNykvNA.js.br +0 -0
  87. package/build/client/_app/immutable/entry/app.BvNykvNA.js.gz +0 -0
  88. package/build/client/_app/immutable/entry/start.DfWWrqAi.js +0 -1
  89. package/build/client/_app/immutable/entry/start.DfWWrqAi.js.br +0 -0
  90. package/build/client/_app/immutable/entry/start.DfWWrqAi.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/0.C-TKgrGP.js.br +0 -0
  92. package/build/client/_app/immutable/nodes/0.C-TKgrGP.js.gz +0 -0
  93. package/build/client/_app/immutable/nodes/1.q-uG--Ye.js.br +0 -2
  94. package/build/client/_app/immutable/nodes/1.q-uG--Ye.js.gz +0 -0
  95. package/build/client/_app/immutable/nodes/2.EtCNRoA2.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/2.EtCNRoA2.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/3.D7nMxWez.js.br +0 -0
  98. package/build/client/_app/immutable/nodes/3.D7nMxWez.js.gz +0 -0
  99. package/build/client/_app/immutable/nodes/4.B3M1zSBU.js.br +0 -0
  100. package/build/client/_app/immutable/nodes/4.B3M1zSBU.js.gz +0 -0
  101. package/build/server/chunks/nodes/1.js-CQ-mFntC.js +0 -7
  102. package/build/server/chunks/nodes/3.js-BzUyw6Q9.js +0 -7
@@ -1,4 +1,4 @@
1
- import{$ as e,A as t,B as n,D as r,F as i,I as a,K as o,L as s,M as c,N as l,O as u,P as d,Q as f,R as p,T as m,U as h,V as g,W as _,X as v,Z as y,_ as b,a as x,b as S,d as C,dt as w,et as T,f as E,g as D,h as O,j as k,k as A,l as j,n as M,nt as N,o as P,ot as F,p as I,q as L,r as R,rt as z,s as B,st as V,tt as H,ut as U,v as W,x as G,y as K,z as q}from"./DLEDBLL1.js";import"./Co7xGpqv.js";import"./xihTtKlq.js";import{A as J,B as ee,C as Y,D as X,E as te,F as ne,I as re,J as ie,L as ae,N as Z,O as Q,P as oe,S as se,T as ce,W as le,X as ue,_ as de,b as fe,g as pe,i as me,j as he,p as ge,rt as _e,s as ve,st as ye,t as $,tt as be,u as xe,v as Se,w as Ce,x as we,y as Te}from"./Cml0-AYv.js";import{a as Ee,n as De,t as Oe}from"./DGYcFVZ3.js";import{a as ke,i as Ae,n as je,o as Me,r as Ne}from"./CzxolZCO.js";function Pe(e){let t=e.replace(/\.[^.]+$/,``).replace(/(?:@|[-_])\dx$/i,``).replace(/([a-z0-9])([A-Z])/g,`$1 $2`).split(/[^a-zA-Z0-9]+/).filter(Boolean);if(t.length===0)return`asset`;let n=t.map((e,t)=>t===0?e.toLowerCase():e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(``).replace(/^[0-9]+/,``);return n?n.charAt(0).toLowerCase()+n.slice(1):`asset`}var Fe=class{#e=0;#t=!1;#n;#r;constructor(e){this.#r=e}async run(e,t={}){let n=++this.#e,r=t.retainResult&&this.#t?this.#n:void 0;this.#r(t.retainResult&&this.#t?{status:`refreshing`,value:this.#n}:{status:`loading`});try{let t=await e();n===this.#e&&(this.#t=!0,this.#n=t,this.#r({status:`resolved`,value:t}))}catch(e){n===this.#e&&this.#r({status:`failed`,error:e instanceof Error?e.message:String(e),...t.retainResult&&this.#t?{value:r}:{}})}}cancel(){this.#e++,this.#t=!1,this.#r({status:`idle`})}},Ie={folder:null,sort:`alphabetical`,type:[],manifest:[],changes:[],usage:`all`,query:``,warningsOnly:!1,view:`all`},Le=[`folder`,`sort`,`type`,`manifest`,`changes`,`usage`,`q`,`warnings`,`view`],Re=new Set([`alphabetical`,`type`,`manifest`]),ze=new Set([`changed`,`new`]),Be=new Set([`all`,`unused`]),Ve=new Set([`all`,`duplicates`]);function He(e){let t=e.searchParams.get(`sort`),n=e.searchParams.get(`usage`);return{folder:e.searchParams.has(`folder`)?e.searchParams.get(`folder`)??``:null,sort:Re.has(t)?t:`alphabetical`,type:Ue(e,`type`),manifest:Ue(e,`manifest`),changes:We(e),usage:Be.has(n)?n:`all`,query:e.searchParams.get(`q`)??``,warningsOnly:e.searchParams.get(`warnings`)===`1`,view:Ve.has(e.searchParams.get(`view`))?e.searchParams.get(`view`):`all`}}function Ue(e,t){return[...new Set(e.searchParams.getAll(t).filter(e=>e!==``&&e!==`all`))]}function We(e){let t=e.searchParams.getAll(`changes`),n=new Set;for(let e of t)e===`changed-and-new`?(n.add(`changed`),n.add(`new`)):ze.has(e)&&n.add(e);return[`changed`,`new`].filter(e=>n.has(e))}function Ge(e,t){let n=new URL(e);for(let e of Le)n.searchParams.delete(e);t.folder!==null&&n.searchParams.set(`folder`,t.folder),t.sort!==`alphabetical`&&n.searchParams.set(`sort`,t.sort);for(let e of t.type)n.searchParams.append(`type`,e);for(let e of t.manifest)n.searchParams.append(`manifest`,e);for(let e of t.changes)n.searchParams.append(`changes`,e);return t.usage!==`all`&&n.searchParams.set(`usage`,t.usage),t.query.trim()!==``&&n.searchParams.set(`q`,t.query),t.warningsOnly&&n.searchParams.set(`warnings`,`1`),t.view!==`all`&&n.searchParams.set(`view`,t.view),n}function Ke(e,t,n){return e===t?n:{selectedAssetIds:[],lastSelectedAssetId:null}}function qe(e){return e.importSource?.importer===`figma`}function Je(e){return e.length>0&&e.every(e=>e!==null&&qe(e))}function Ye(e){return qe(e)?Xe(e)?`figma-tag`:`figma-link`:`file`}function Xe(e){let t=e.importSource;if(!qe(e)||!t)return!1;let n=t.parameters;return typeof n!=`object`||!n||Array.isArray(n)?!1:n.mode===`tag`}var Ze=new class{#e=0;begin(){return++this.#e}isCurrent(e){return e===this.#e}};function Qe(e){let t=Number.isFinite(e)&&e>0?Math.floor(e):0;return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}var $e=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><rect x="4.5" y="3.5" width="2.5" height="9" fill="currentColor"></rect><rect x="9" y="3.5" width="2.5" height="9" fill="currentColor"></rect></svg>`),et=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M5 3.3v9.4l7-4.7z" fill="currentColor"></path></svg>`),tt=d(`<span class="time svelte-nchstv"> </span> <input class="range scrub svelte-nchstv" type="range" min="0" step="0.01" aria-label="Seek"/> <span class="time svelte-nchstv"> </span>`,1),nt=d(`<span class="time svelte-nchstv"> </span>`),rt=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 6l3.5 4M13.5 6 10 10" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),it=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 5.6a3.4 3.4 0 0 1 0 4.8" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path><path d="M11.8 3.9a6 6 0 0 1 0 8.2" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),at=d(`<div class="volume-group svelte-nchstv"><button class="btn svelte-nchstv" type="button"><!></button> <input class="range volume svelte-nchstv" type="range" min="0" max="1" step="0.01" aria-label="Volume"/></div>`),ot=d(`<div><button class="btn svelte-nchstv" type="button"><!></button> <button class="btn svelte-nchstv" type="button" aria-label="Stop"><svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><rect x="4" y="4" width="8" height="8" rx="1" fill="currentColor"></rect></svg></button> <button type="button" aria-label="Loop"><svg viewBox="0 0 16 16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" class="svelte-nchstv"><path d="M4.4 4.5H9A3.5 3.5 0 0 1 12.5 8"></path><path d="M2.4 6.4 4.3 4.4 6.3 6.1"></path><path d="M11.6 11.5H7A3.5 3.5 0 0 1 3.5 8"></path><path d="M13.6 9.6 11.7 11.6 9.7 9.9"></path></svg></button> <!> <!></div>`);function st(n,r){V(r,!0);let i=x(r,`media`,7),a=x(r,`showScrub`,3,!1),s=x(r,`showVolume`,3,!0),l=N(!1),u=N(0),d=N(0),m=N(!1),h=N(1),_=N(!1),v=N(!1),b=!1,C=null,T=z(()=>Qe(g(u))),D=z(()=>Qe(g(d))),A=z(()=>g(d)>0),j=z(()=>g(_)?0:g(h));L(()=>{if(!i()){H(l,!1);return}let e=i();H(l,!e.paused),H(u,e.currentTime,!0),H(d,Number.isFinite(e.duration)?e.duration:0,!0),H(m,e.loop,!0),H(h,e.volume,!0),H(_,e.muted,!0);function t(){H(l,!0)}function n(){H(l,!1)}function r(){g(v)||H(u,e.currentTime,!0)}function a(){H(d,Number.isFinite(e.duration)?e.duration:0,!0)}function o(){H(h,e.volume,!0),H(_,e.muted,!0)}return e.addEventListener(`play`,t),e.addEventListener(`playing`,t),e.addEventListener(`pause`,n),e.addEventListener(`ended`,n),e.addEventListener(`timeupdate`,r),e.addEventListener(`seeked`,r),e.addEventListener(`loadedmetadata`,a),e.addEventListener(`durationchange`,a),e.addEventListener(`volumechange`,o),()=>{C===e&&(H(v,!1),b=!1,C=null),e.removeEventListener(`play`,t),e.removeEventListener(`playing`,t),e.removeEventListener(`pause`,n),e.removeEventListener(`ended`,n),e.removeEventListener(`timeupdate`,r),e.removeEventListener(`seeked`,r),e.removeEventListener(`loadedmetadata`,a),e.removeEventListener(`durationchange`,a),e.removeEventListener(`volumechange`,o)}});function M(){i()&&(i().paused?i().play():i().pause())}function P(){i()&&(i().pause(),i().currentTime=0)}function R(){i()&&(i().loop=!i().loop,H(m,i().loop,!0))}function B(){i()&&(i().muted=!i().muted)}function U(e){if(!i())return;let t=e.currentTarget.valueAsNumber;i().volume=t,i().muted=t===0}function W(){!i()||g(v)||(H(v,!0),b=!i().paused,C=i(),i().pause())}function G(e){let t=C??i();if(!t)return;let n=e.currentTarget.valueAsNumber;Number.isFinite(t.duration)&&(t.currentTime=n),H(u,n,!0)}function K(){if(!g(v))return;let e=C;H(v,!1),b&&e&&i()===e&&e.play(),b=!1,C=null}L(()=>{if(g(v))return window.addEventListener(`pointerup`,K),window.addEventListener(`pointercancel`,K),()=>{window.removeEventListener(`pointerup`,K),window.removeEventListener(`pointercancel`,K)}});var q=ot(),J=y(q),ee=y(J),Y=e=>{c(e,$e())},X=e=>{c(e,et())};t(ee,e=>{g(l)?e(Y):e(X,-1)}),w(J);var te=e(J,2),ne=e(te,2);let re;var ie=e(ne,2),ae=t=>{var n=tt(),r=f(n),a=y(r,!0);w(r);var s=e(r,2);E(s);var l=e(s,2),m=y(l,!0);w(l),o(()=>{k(a,g(T)),I(s,`max`,g(A)?g(d):0),O(s,g(u)),s.disabled=!i()||!g(A),k(m,g(D))}),p(`pointerdown`,s,W),p(`input`,s,G),c(t,n)},Z=e=>{var t=nt(),n=y(t);w(t),o(()=>k(n,`${g(T)??``} / ${g(D)??``}`)),c(e,t)};t(ie,e=>{a()?e(ae):g(A)&&e(Z,1)});var Q=e(ie,2),oe=n=>{var r=at(),a=y(r),s=y(a),l=e=>{c(e,rt())},u=e=>{c(e,it())};t(s,e=>{g(_)||g(h)===0?e(l):e(u,-1)}),w(a);var d=e(a,2);E(d),w(r),o(()=>{a.disabled=!i(),I(a,`aria-label`,g(_)?`Unmute`:`Mute`),O(d,g(j)),d.disabled=!i()}),p(`click`,a,B),p(`input`,d,U),c(n,r)};t(Q,e=>{s()&&e(oe)}),w(q),o(()=>{S(q,1,`playback ${r.class??``??``}`,`svelte-nchstv`),J.disabled=!i(),I(J,`aria-label`,g(l)?`Pause`:`Play`),te.disabled=!i(),re=S(ne,1,`btn svelte-nchstv`,null,re,{active:g(m)}),ne.disabled=!i(),I(ne,`aria-pressed`,g(m))}),p(`click`,J,M),p(`click`,te,P),p(`click`,ne,R),c(n,q),F()}s([`click`,`pointerdown`,`input`]);var ct=null;function lt(){return ct||=new AudioContext,ct}var ut=null;function dt(e){let t=e.numberOfChannels;if(t===1)return e.getChannelData(0);let n=e.length,r=new Float32Array(n);for(let i=0;i<t;i++){let t=e.getChannelData(i);for(let e=0;e<n;e++)r[e]+=t[e]}for(let e=0;e<n;e++)r[e]/=t;return r}function ft(e,t){let n=new Float32Array(t),r=new Float32Array(t),i=e.length/t;for(let a=0;a<t;a++){let t=Math.floor(a*i),o=Math.min(e.length,Math.floor((a+1)*i)),s=0,c=0;for(let n=t;n<o;n++){let t=e[n];t<s&&(s=t),t>c&&(c=t)}n[a]=s,r[a]=c}return{min:n,max:r}}function pt(e,t,n){return Math.min(n,Math.max(t,e))}var mt=d(`<div class="footer svelte-1liihyn"><!></div>`),ht=d(`<div><canvas class="wave svelte-1liihyn" role="button" tabindex="0" aria-label="Audio waveform — click or press Enter to play; arrow keys scrub"></canvas> <!></div>`);function gt(n,r){V(r,!0);let i=x(r,`loop`,3,!1),a=x(r,`showControls`,3,!1),s=N(void 0),l=N(null),u=N(!1),d=N(0),f=N(0),m=`idle`,h=null,v=null,b=0,C=1,T=`#0d99ff`,E=`#7a7a7a`,D=`#f24822`,O=0;function k(){if(!g(s))return;let e=getComputedStyle(g(s));T=e.getPropertyValue(`--accent`).trim()||T,E=e.getPropertyValue(`--text-faint`).trim()||E,D=e.getPropertyValue(`--danger`).trim()||D}function A(){if(!g(s))return;let e=g(s).getBoundingClientRect();C=window.devicePixelRatio||1;let t=Math.max(1,Math.round(e.width*C)),n=Math.max(1,Math.round(e.height*C));(g(s).width!==t||g(s).height!==n)&&(g(s).width=t,g(s).height=n,v=null),k()}function j(){if(!g(s))return;let e=g(s).getContext(`2d`);if(!e)return;let t=g(s).width,n=g(s).height,r=n/2;if(e.clearRect(0,0,t,n),m!==`ready`||!h){e.strokeStyle=m===`error`?D:E,e.lineWidth=Math.max(1,C),e.beginPath(),e.moveTo(0,r),e.lineTo(t,r),e.stroke();return}let i=Math.max(1,Math.floor(t));(!v||b!==i)&&(v=ft(h,i),b=i);let a=g(f)>0?pt(g(d)/g(f),0,1):0,o=a*t,c=r*.9,l=t/i;e.lineWidth=1;for(let t=0;t<i;t++){let n=t*l,i=r-v.max[t]*c,a=r-v.min[t]*c;e.strokeStyle=n<=o?T:E,e.beginPath(),e.moveTo(n+.5,Math.min(i,r-.5)),e.lineTo(n+.5,Math.max(a,r+.5)),e.stroke()}a>0&&(e.strokeStyle=T,e.lineWidth=Math.max(1,C),e.beginPath(),e.moveTo(o,0),e.lineTo(o,n),e.stroke())}function M(){O&&=(cancelAnimationFrame(O),0)}function P(){g(l)&&H(d,g(l).currentTime,!0),j(),g(u)&&(O=requestAnimationFrame(P))}async function I(e){m=`loading`,j();try{let t=await(await fetch(e)).arrayBuffer(),n=await lt().decodeAudioData(t);if(e!==r.src)return;h=dt(n),g(f)||H(f,n.duration,!0),m=`ready`,v=null,j()}catch{if(e!==r.src)return;m=`error`,j()}}function R(e){if(e.preventDefault(),e.stopPropagation(),!g(s)||!g(l))return;let t=g(s).getBoundingClientRect(),n=pt((e.clientX-t.left)/t.width,0,1),r=g(l).duration;Number.isFinite(r)&&r>0&&(g(l).currentTime=n*r),g(l).play()}function z(){g(l)&&(g(l).paused?g(l).play():g(l).pause())}function U(e){if(g(l)){if(e.key===`Enter`||e.key===` `){e.preventDefault(),z();return}if(e.key===`ArrowRight`||e.key===`ArrowLeft`){let t=g(l).duration;if(!Number.isFinite(t)||t<=0)return;e.preventDefault();let n=e.key===`ArrowRight`?5:-5;g(l).currentTime=pt(g(l).currentTime+n,0,t)}}}L(()=>{let e=g(l);e&&(e.loop=i())}),L(()=>{let e=r.src,t=g(s);if(!t)return;m=`idle`,h=null,v=null,b=0,H(d,0),H(f,0),H(u,!1);let n=new Audio(e);n.preload=`metadata`,n.loop=_(()=>i());function a(){ut&&ut!==n&&ut.pause(),ut=n,H(u,!0),M(),O=requestAnimationFrame(P)}function o(){ut===n&&(ut=null),H(u,!1),M(),j()}function c(){ut===n&&(ut=null),H(u,!1),M(),j()}function p(){H(d,n.currentTime,!0),g(u)||j()}function y(){Number.isFinite(n.duration)&&H(f,n.duration,!0),j()}n.addEventListener(`play`,a),n.addEventListener(`pause`,o),n.addEventListener(`ended`,c),n.addEventListener(`timeupdate`,p),n.addEventListener(`loadedmetadata`,y),n.addEventListener(`durationchange`,y),n.addEventListener(`seeked`,p),H(l,n,!0);let x=new ResizeObserver(()=>{A(),j()});x.observe(t);let S=new IntersectionObserver(t=>{t.some(e=>e.isIntersecting)&&(S.disconnect(),I(e))});return S.observe(t),A(),j(),()=>{M(),x.disconnect(),S.disconnect(),n.removeEventListener(`play`,a),n.removeEventListener(`pause`,o),n.removeEventListener(`ended`,c),n.removeEventListener(`timeupdate`,p),n.removeEventListener(`loadedmetadata`,y),n.removeEventListener(`durationchange`,y),n.removeEventListener(`seeked`,p),n.pause(),ut===n&&(ut=null),n.removeAttribute(`src`),n.load(),H(l,null)}});var W=ht(),G=y(W);B(G,e=>H(s,e),()=>g(s));var K=e(G,2),q=e=>{var t=mt();st(y(t),{get media(){return g(l)}}),w(t),c(e,t)};t(K,e=>{a()&&e(q)}),w(W),o(()=>S(W,1,`audio-waveform ${r.class??``??``}`,`svelte-1liihyn`)),p(`click`,G,R),p(`keydown`,G,U),c(n,W),F()}s([`click`,`keydown`]);var _t=d(`<div class="audio-frame svelte-1ww4cvx"><!></div>`),vt=d(`<p class="svelte-1ww4cvx">No proxy yet — add the asset to a manifest to process it.</p>`),yt=d(`<div class="stage checkerboard svelte-1ww4cvx"><!></div>`);function bt(e,n){V(n,!0);var r=yt(),i=y(r),a=e=>{var t=_t();A(y(t),()=>n.asset.proxy.url,e=>{gt(e,{get src(){return n.asset.proxy.url},showControls:!0})}),w(t),c(e,t)},o=e=>{c(e,vt())};t(i,e=>{n.asset.proxy?e(a):e(o,-1)}),w(r),c(e,r),F()}function xt(e){if(e.scrubbedValue===null)return{};let t=e.startValue??e.min??0;return e.scrubbedValue===t?{rollbackTo:e.startValue}:{commit:e.scrubbedValue}}function St(e,t){return t.coarse?e*10:t.fine?e*.1:e}function Ct(e){if(!Number.isFinite(e))return 0;let t=0,n=Math.abs(e);for(;t<10&&Math.abs(Math.round(n)-n)>1e-9;)n*=10,t+=1;return t}function wt(e,t){let n=10**t;return Math.round(e*n)/n}function Tt(e){let t=St(e.step,e.modifiers),n=wt(e.startValue+e.deltaX*t,Ct(t));return e.min!==void 0&&(n=Math.max(e.min,n)),e.max!==void 0&&(n=Math.min(e.max,n)),n}function Et(e,t){t.buttons!==0&&!e.hasPointerCapture(t.pointerId)&&e.setPointerCapture(t.pointerId)}function Dt(e,t){e.hasPointerCapture(t)&&e.releasePointerCapture(t)}var Ot=d(`<span class="suffix svelte-nhap92" aria-hidden="true"> </span>`),kt=d(`<span class="scrub-surface svelte-nhap92" title="Drag to change — Shift: ×10, Alt: ×0.1" role="presentation" aria-hidden="true"></span>`),At=d(`<span><input class="input svelte-nhap92" type="number"/> <!> <!></span>`);function jt(n,r){V(r,!0);let i=x(r,`step`,3,1),a=x(r,`placeholder`,3,``),s=x(r,`allowNull`,3,!1),l=x(r,`align`,3,`left`),u=N(null),d=N(!1),f=N(null),m=N(null),h=z(()=>g(u)?.activated?g(u).currentValue:r.value),_=z(()=>Math.max(1,g(m)??String(g(h)??a()).length));function b(e){return{coarse:e.shiftKey,fine:e.altKey}}function C(e){e.preventDefault(),Et(e.currentTarget,e),H(u,{pointerId:e.pointerId,startX:e.clientX,startValue:r.value,currentValue:null,activated:!1},!0)}function T(e){if(!g(u)||e.pointerId!==g(u).pointerId)return;let t=e.clientX-g(u).startX;if(!g(u).activated){if(Math.abs(t)<3)return;g(u).activated=!0,document.body.style.cursor=`ew-resize`}let n=Tt({startValue:g(u).startValue??r.min??0,deltaX:t,step:i(),modifiers:b(e),min:r.min,max:r.max});n!==g(u).currentValue&&(g(u).currentValue=n,r.onChange?.(n))}function D(e){if(!g(u)||e.pointerId!==g(u).pointerId)return;Dt(e.currentTarget,e.pointerId);let t=g(u).activated,n=g(u).startValue,i=g(u).currentValue;if(H(u,null),document.body.style.cursor=``,!t){M();return}let a=xt({startValue:n,scrubbedValue:i,min:r.min});a.commit===void 0?`rollbackTo`in a&&r.onChange?.(a.rollbackTo??null):r.onCommit(a.commit)}function A(){if(!g(u))return;let e=g(u).startValue,t=g(u).activated;H(u,null),document.body.style.cursor=``,t&&r.onChange?.(e)}function j(e){g(u)&&e.key===`Escape`&&(e.preventDefault(),A())}L(()=>()=>{g(u)&&(document.body.style.cursor=``)});function M(){H(d,!0),queueMicrotask(()=>{g(f)?.focus(),g(f)?.select()})}function P(e){let t=e.currentTarget.valueAsNumber;Number.isFinite(t)?r.onCommit(t):r.onCommit(s()?null:r.min??0)}function R(e){H(m,e.currentTarget.value.length,!0)}function U(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(e.currentTarget.value=g(h)===null?``:String(g(h)),e.currentTarget.blur())}var W=At();q(`keydown`,v,j);let G;var J=y(W);E(J);let ee;B(J,e=>H(f,e),()=>g(f));var Y=e(J,2),X=e=>{var t=Ot(),n=y(t,!0);w(t),o(()=>k(n,r.suffix)),c(e,t)};t(Y,e=>{r.suffix!==void 0&&e(X)});var te=e(Y,2),ne=e=>{var t=kt();p(`pointerdown`,t,C),p(`pointermove`,t,T),p(`pointerup`,t,D),q(`pointercancel`,t,A),c(e,t)};t(te,e=>{g(d)||e(ne)}),w(W),o(()=>{G=S(W,1,`scrub-number svelte-nhap92`,null,G,{right:l()===`right`,"with-suffix":r.suffix!==void 0}),I(J,`aria-label`,r.ariaLabel),I(J,`min`,r.min),I(J,`max`,r.max),I(J,`step`,i()),I(J,`placeholder`,a()),O(J,g(h)??``),ee=K(J,``,ee,{width:r.suffix===void 0?void 0:`${g(_)}ch`})}),q(`focus`,J,e=>{H(d,!0),H(m,e.currentTarget.value.length,!0)}),q(`blur`,J,()=>{H(d,!1),H(m,null)}),p(`input`,J,R),p(`change`,J,P),p(`keydown`,J,U),c(n,W),F()}s([`input`,`change`,`keydown`,`pointerdown`,`pointermove`,`pointerup`]);var Mt=d(`<span class="caption svelte-368zap"> </span>`),Nt=d(`<span class="fill svelte-368zap"></span>`),Pt=d(`<div class="number-field svelte-368zap"><!> <div class="number-input control svelte-368zap"><!> <span class="icon-slot svelte-368zap"><!></span> <!></div></div>`);function Ft(n,r){let i=x(r,`step`,3,1),s=x(r,`placeholder`,3,``),u=x(r,`rangeFill`,3,!0),d=z(()=>!u()||r.min===void 0||r.max===void 0||r.value===null||r.max<=r.min?null:Math.max(0,Math.min(100,(r.value-r.min)/(r.max-r.min)*100)));var p=Pt(),h=y(p),_=e=>{var t=Mt(),n=y(t,!0);w(t),o(()=>k(n,r.caption)),c(e,t)};t(h,e=>{r.caption&&e(_)});var v=e(h,2),b=y(v),S=e=>{var t=Nt();o(()=>K(t,`width: ${g(d)??``}%`)),c(e,t)};t(b,e=>{g(d)!==null&&e(S)});var C=e(b,2),T=y(C),E=e=>{var t=l();m(f(t),()=>r.icon),c(e,t)},D=e=>{var t=a();o(()=>k(t,r.label)),c(e,t)};t(T,e=>{r.icon?e(E):e(D,-1)}),w(C),jt(e(C,2),{get value(){return r.value},get min(){return r.min},get max(){return r.max},get step(){return i()},get placeholder(){return s()},get suffix(){return r.suffix},allowNull:!0,get ariaLabel(){return r.label},get onChange(){return r.onChange},get onCommit(){return r.onCommit}}),w(v),w(p),o(()=>I(C,`title`,r.label)),c(n,p)}var It=d(`<h3 class="svelte-1ol624f"><!></h3>`);function Lt(e,t){var n=It();m(y(n),()=>t.children),w(n),c(e,n)}var Rt=d(`<span class="caption svelte-bczi6w"> </span>`),zt=d(`<option> </option>`),Bt=d(`<div class="select-field svelte-bczi6w"><!> <div class="select-input control svelte-bczi6w"><span class="icon-slot svelte-bczi6w"><!></span> <select class="svelte-bczi6w"></select></div></div>`);function Vt(n,i){V(i,!0);var s=Bt(),u=y(s),d=e=>{var t=Rt(),n=y(t,!0);w(t),o(()=>k(n,i.caption)),c(e,t)};t(u,e=>{i.caption&&e(d)});var h=e(u,2),g=y(h),_=y(g),v=e=>{var t=l();m(f(t),()=>i.icon),c(e,t)},x=e=>{var t=a();o(e=>k(t,e),[()=>i.label.slice(0,1)]),c(e,t)};t(_,e=>{i.icon?e(v):e(x,-1)}),w(g);var S=e(g,2);r(S,20,()=>i.options,e=>e,(e,t)=>{var n=zt(),r=y(n,!0);w(n);var i={};o(()=>{k(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),c(e,n)}),w(S);var C;b(S),w(h),w(s),o(()=>{I(g,`title`,i.label),I(S,`aria-label`,i.label),C!==(C=i.value)&&(S.value=(S.__value=i.value)??``,W(S,i.value))}),p(`change`,S,e=>i.onChange(e.currentTarget.value)),c(n,s),F()}s([`change`]);var Ht=d(`<p class="info svelte-m9vwwu"><!> <!> <br/> <span class="file svelte-m9vwwu"> </span></p>`),Ut=d(`<p class="hint svelte-m9vwwu">No proxy yet — add the asset to a manifest to process it.</p>`),Wt=d(`<section class="svelte-m9vwwu"><!> <!></section>`);function Gt(n,r){V(r,!0);let i=x(r,`showDimensions`,3,!1),s=x(r,`showDuration`,3,!1);var l=Wt(),u=y(l);Lt(u,{children:(e,t)=>{U(),c(e,a(`Output`))},$$slots:{default:!0}});var d=e(u,2),f=n=>{var l=Ht(),u=y(l),d=e=>{var t=a();o(()=>k(t,`${r.proxy.width??``} × ${r.proxy.height??``} px ·`)),c(e,t)};t(u,e=>{i()&&r.proxy.width!==void 0&&r.proxy.height!==void 0&&e(d)});var f=e(u,2),p=e=>{var t=a();o(e=>k(t,`${e??``} ·`),[()=>ke(r.proxy.durationMs)]),c(e,t)};t(f,e=>{s()&&r.proxy.durationMs!==void 0&&e(p)});var m=e(f),h=e(m,3),g=y(h,!0);w(h),w(l),o(e=>{k(m,` ${e??``} `),k(g,r.proxy.fileName)},[()=>Ae(r.proxy.fileSize)]),c(n,l)},p=e=>{c(e,Ut())};t(d,e=>{r.proxy?e(f):e(p,-1)}),w(l),c(n,l),F()}var Kt=d(`<section class="svelte-1by8n8t"><!> <div class="field svelte-1by8n8t"><!></div> <div class="field svelte-1by8n8t"><!></div></section> <!>`,1);function qt(t,n){V(n,!0);let r=z(()=>Ce.validateParameters(n.parameters));function i(e){n.onParametersCommit(e)}function o(e){i({...g(r),preset:e})}function s(e){let{targetWidth:t,...n}=g(r);return e===null||!Number.isFinite(e)||e<=0?n:{...n,targetWidth:Math.round(e)}}function l(e,t){let r=s(e);t?i(r):n.onParametersChange(r)}var u=Kt(),d=f(u),p=y(d);Lt(p,{children:(e,t)=>{U(),c(e,a(`Image`))},$$slots:{default:!0}});var m=e(p,2);Vt(y(m),{label:`Preset`,caption:`Preset`,get value(){return g(r).preset},get options(){return n.presetNames},onChange:o,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(m);var h=e(m,2),_=y(h);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(r).targetWidth??null);Ft(_,{label:`Target width`,caption:`Target width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>l(e,!1),onCommit:e=>l(e,!0),icon:e,$$slots:{icon:!0}})}w(h),w(d),Gt(e(d,2),{get proxy(){return n.asset.proxy},showDimensions:!0}),c(t,u),F()}var Jt=new Set([`image`,`slice`]);new Set([...new Set([`video`,`chroma-key-video`,`audio`])].filter(e=>de.has(e)));function Yt(e,t){return Jt.has(e)?t[e]?.decode??!0:!1}function Xt(e){if(e.ok)return!0;if(e.status!==0||e.type!==`basic`)return!1;try{let t=new URL(e.url).protocol;return t!==`http:`&&t!==`https:`}catch{return!1}}async function Zt(e){let t=await fetch(e);if(!Xt(t))throw Error(`Preloading "${e}" failed: ${t.status} ${t.statusText}.`);return t}function Qt(e,t,n){if(n!==t)throw Error(`Preloading "${e}" failed: expected ${t} bytes, received ${n}.`)}var $t={async preload(e,t,n){if(Qt(e,t,(await(await Zt(e)).arrayBuffer()).byteLength),Yt(`image`,n)&&typeof globalThis.Image==`function`){let t=new globalThis.Image;return t.src=e,await t.decode(),{image:t}}return{}}},en={async preload(e,t,n,r){let i=await(await Zt(e)).blob();if(Qt(e,t,i.size),!Yt(`slice`,n))return{};if(r?.slicing?.mode!==`one`&&typeof globalThis.createImageBitmap==`function`)return{imageBitmap:await globalThis.createImageBitmap(i)};if(typeof globalThis.Image==`function`){let t=new globalThis.Image;return t.src=e,await t.decode(),{image:t}}return{}},release(e){e.imageBitmap?.close()}},tn={async preload(e,t){let n=await(await Zt(e)).blob();return Qt(e,t,n.size),typeof URL.createObjectURL==`function`?{objectUrl:URL.createObjectURL(n)}:{}},release(e){e.objectUrl!==void 0&&typeof URL.revokeObjectURL==`function`&&URL.revokeObjectURL(e.objectUrl)}},nn={image:$t,slice:en,video:tn,"chroma-key-video":tn,audio:tn};new Map(Object.entries(de.project(nn,`runtime handler`)));var rn=new Map;function an(e){return rn.get(e)?.resources?.objectUrl??e}function on(e){let t=rn.get(e)?.resources;return t?.imageBitmap??t?.image??null}function sn(e,t,n){return Math.max(t,Math.min(n,e))}function cn(e){let{mode:t,insets:n}=e.slicing,r=Y(t);return{top:r.vertical?n.top:0,bottom:r.vertical?n.bottom:0,left:r.horizontal?n.left:0,right:r.horizontal?n.right:0}}function ln(e){let t=e.slicing.overdraw;if(!t)return fe();let n=e.sourceWidth,r=e.sourceHeight,i=sn(t.left,0,Math.max(0,n-1)),a=sn(t.right,0,Math.max(0,n-i-1)),o=sn(t.top,0,Math.max(0,r-1));return{top:o,right:a,bottom:sn(t.bottom,0,Math.max(0,r-o-1)),left:i}}function un(e){let t=ln(e);return{width:Math.max(1,e.sourceWidth-t.left-t.right),height:Math.max(1,e.sourceHeight-t.top-t.bottom)}}function dn(e,t,n){let r=ln(e);if(r.top===0&&r.right===0&&r.bottom===0&&r.left===0)return r;let i=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,a=un(e),o,s;return e.slicing.mode===`three-horizontal`?o=s=n/a.height:e.slicing.mode===`three-vertical`?o=s=t/a.width:e.slicing.mode===`one`?(o=t/a.width,s=n/a.height):o=s=1/i,{top:Math.round(r.top*s),right:Math.round(r.right*o),bottom:Math.round(r.bottom*s),left:Math.round(r.left*o)}}function fn(e,t,n,r){let i=t>0?Math.max(1,Math.round(t)):0,a=n>0?Math.max(1,Math.round(n)):0,o=dn(e,i,a),s=i+o.left+o.right,c=a+o.top+o.bottom,l=i>0?t/i:1,u=a>0?n/a:1;return{renderWidth:i,renderHeight:a,cssLeft:-o.left*l+0,cssTop:-o.top*u+0,cssWidth:s*l,cssHeight:c*u,backingWidth:s*r,backingHeight:c*r,originX:o.left*r,originY:o.top*r}}function pn(e){let t=0,n=[0];for(let r of e)t+=r,n.push(Math.round(t));return n}function mn(e,t,n){if(t<=0||n<=0)return[];let r=dn(e,t,n),i=t+r.left+r.right,a=n+r.top+r.bottom,o=e.sourceWidth,s=e.sourceHeight,c=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,l=e.slicing.mode,u=cn(e),d=sn(u.left,0,o),f=sn(u.right,0,Math.max(0,o-d)),p=sn(u.top,0,s),m=sn(u.bottom,0,Math.max(0,s-p)),h=Math.max(0,o-d-f),g=Math.max(0,s-p-m),_,v;if(l===`three-horizontal`){let e=a/s;_=d*e,v=f*e}else _=d/c,v=f/c;let y=Math.max(0,i-_-v),b,x;if(l===`three-vertical`){let e=i/o;b=p*e,x=m*e}else b=p/c,x=m/c;let S=Math.max(0,a-b-x),C=[d,h,f],w=[p,g,m],T=[0,d,d+h],E=[0,p,p+g],D=pn([_,y,v]),O=pn([b,S,x]),k=[];for(let e=0;e<3;e++)for(let t=0;t<3;t++){let n=C[t],i=w[e];if(n<=0||i<=0)continue;let a=D[t],o=D[t+1]-a,s=O[e],c=O[e+1]-s;o<=0||c<=0||k.push({key:`${e}-${t}`,sx:T[t],sy:E[e],sw:n,sh:i,dx:a-r.left,dy:s-r.top,dw:o,dh:c})}return k}function hn(e,t,n,r,i,a,o){let s=Math.max(1,Math.round(a)),c=Math.max(1,Math.round(o)),l=a/s,u=o/c;for(let a of mn(t,s,c))e.drawImage(n,a.sx,a.sy,a.sw,a.sh,r+a.dx*l,i+a.dy*u,a.dw*l,a.dh*u)}var gn=new Set([`$$slots`,`$$events`,`$$legacy`,`src`]),_n=d(`<img/>`);function vn(e,t){V(t,!0);let r=P(t,gn);L(()=>(t.src,void 0));var i=_n();C(i,()=>({src:t.src.src,width:t.src.width,height:t.src.height,...r})),n(i),c(e,i),F()}function yn(e,t){let n=new ResizeObserver(n=>{let r=n[0]?.borderBoxSize?.[0];t(r?.inlineSize??e.offsetWidth,r?.blockSize??e.offsetHeight)});return n.observe(e),()=>n.disconnect()}function bn(e){return typeof ImageBitmap<`u`&&e instanceof ImageBitmap&&e.width===0}function xn(e){let t=new Image;return t.decoding=`async`,t.src=e,t.decode().then(()=>t)}var Sn=class{#e;#t;#n;#r=null;#i=null;#a=new Map;#o=!1;constructor(e,t=xn,n=on){this.#n=e,this.#e=t,this.#t=n}request(e){if(this.#o)return;this.#r=e;let t=this.#i;if(t?.entry.src===e.src&&!bn(t.image)){this.#l({entry:e,image:t.image});return}let n=this.#t(e.src);if(n){this.#l({entry:e,image:n});return}if(this.#a.has(e.src))return;let r;try{r=Promise.resolve(this.#e(e.src))}catch(e){r=Promise.reject(e)}let i={promise:r};this.#a.set(e.src,i),r.then(t=>this.#s(e.src,i,t),()=>this.#c(e.src,i))}dispose(){this.#o||(this.#o=!0,this.#r=null,this.#i=null,this.#a.clear())}#s(e,t,n){if(this.#a.get(e)!==t||(this.#a.delete(e),this.#o))return;let r=this.#r;!r||r.src!==e||this.#l({entry:r,image:n})}#c(e,t){this.#a.get(e)===t&&this.#a.delete(e)}#l(e){this.#o||(this.#i=e,this.#n(e))}},Cn=d(`<img class="svelte-3n5l3f"/>`),wn=d(`<canvas class="svelte-3n5l3f"></canvas>`),Tn=d(`<div><!></div>`);function En(e,n){V(n,!0);let r=x(n,`maxDpr`,3,2),i=x(n,`alt`,3,``),a=x(n,`class`,3,``),s=N(null),l=new Sn(e=>{H(s,e)});L(()=>{l.request(n.src)}),L(()=>(n.src,void 0)),M(()=>l.dispose());let u=N(void 0),d=N(void 0),f=N(0),p=N(0),m=N(1),h=N(0);L(()=>{let e=g(m),t=window.matchMedia(`(resolution: ${e}dppx)`),n=()=>{H(m,window.devicePixelRatio||1,!0)};return n(),t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)}),L(()=>{let e=g(u);if(e)return yn(e,(e,t)=>{H(f,e,!0),H(p,t,!0)})});let _={renderWidth:0,renderHeight:0,cssLeft:0,cssTop:0,cssWidth:0,cssHeight:0,backingWidth:0,backingHeight:0,originX:0,originY:0},b=z(()=>{let e=Math.max(1,Math.floor(r()));return Math.min(e,Math.max(1,Math.floor(g(m))))}),C=z(()=>{let e=g(s);return e?fn(e.entry,g(f),g(p),g(b)):_});L(()=>{let e=g(s),t=g(C);g(h),T(e,t)});function T(e,t){let r=g(d);if(!r||e?.entry.slicing.mode===`one`)return;if(!e||g(f)===0||g(p)===0){r.width=0,r.height=0;return}if(bn(e.image)){l.request(n.src);return}r.width=t.backingWidth,r.height=t.backingHeight;let i=r.getContext(`2d`);i&&(i.setTransform(g(b),0,0,g(b),t.originX,t.originY),i.clearRect(t.cssLeft,t.cssTop,t.cssWidth,t.cssHeight),hn(i,e.entry,e.image,0,0,t.renderWidth,t.renderHeight))}var E=Tn();q(`resize`,v,()=>H(h,g(h)+1));var D=y(E),O=e=>{var t=Cn();let n;o(()=>{I(t,`src`,g(s).entry.src),I(t,`alt`,i()),n=K(t,``,n,{left:`${g(C).cssLeft??``}px`,top:`${g(C).cssTop??``}px`,width:`${g(C).cssWidth??``}px`,height:`${g(C).cssHeight??``}px`})}),c(e,t)},k=e=>{var t=wn();let n;B(t,e=>H(d,e),()=>g(d)),o(()=>n=K(t,``,n,{left:`${g(C).cssLeft??``}px`,top:`${g(C).cssTop??``}px`,width:`${g(C).cssWidth??``}px`,height:`${g(C).cssHeight??``}px`})),c(e,t)};t(D,e=>{g(s)?.entry.slicing.mode===`one`?e(O):g(s)&&e(k,1)}),w(E),B(E,e=>H(u,e),()=>g(u)),o(()=>{S(E,1,`fundus-slice ${a()??``}`,`svelte-3n5l3f`),K(E,n.style),I(E,`role`,g(s)?.entry.slicing.mode===`one`?void 0:i()?`img`:void 0),I(E,`aria-label`,g(s)?.entry.slicing.mode===`one`?void 0:i()||void 0)}),c(e,E),F()}var Dn=d(`<video playsinline="" preload="auto"></video>`,2);function On(e,t){V(t,!0);let n=x(t,`loop`,3,!1),r=x(t,`playing`,3,!0),i=x(t,`muted`,3,!0),a=x(t,`controls`,3,!1),s=x(t,`videoElement`,15),l=x(t,`class`,3,``),u=z(()=>an(t.src.src));L(()=>(t.src,void 0)),L(()=>{let e=s();e&&(r()?e.play().catch(()=>{}):e.pause())});var d=Dn();B(d,e=>s(e),()=>s()),o(()=>{I(d,`src`,g(u)),I(d,`width`,t.src.width),I(d,`height`,t.src.height),d.loop=n(),d.muted=i(),d.controls=a(),S(d,1,G(l())),K(d,t.style)}),c(e,d),F()}var kn=`#version 300 es
1
+ import{$ as e,A as t,B as n,D as r,F as i,I as a,K as o,L as s,M as c,N as l,O as u,P as d,Q as f,R as p,T as m,U as h,V as g,W as _,X as v,Z as y,_ as b,a as x,b as S,d as C,dt as w,et as T,f as E,g as D,h as O,j as k,k as A,l as j,n as M,nt as N,o as P,ot as F,p as I,q as L,r as R,rt as z,s as B,st as V,tt as H,ut as U,v as W,x as G,y as K,z as q}from"./DLEDBLL1.js";import"./CCIxsMRK.js";import"./xihTtKlq.js";import{A as J,B as ee,C as Y,D as X,E as te,F as ne,I as re,J as ie,L as ae,N as Z,O as Q,P as oe,S as se,T as ce,W as le,X as ue,_ as de,b as fe,g as pe,i as me,j as he,p as ge,rt as _e,s as ve,st as ye,t as $,tt as be,u as xe,v as Se,w as Ce,x as we,y as Te}from"./Cml0-AYv.js";import{a as Ee,n as De,t as Oe}from"./DGYcFVZ3.js";import{a as ke,i as Ae,n as je,o as Me,r as Ne}from"./CzxolZCO.js";function Pe(e){let t=e.replace(/\.[^.]+$/,``).replace(/(?:@|[-_])\dx$/i,``).replace(/([a-z0-9])([A-Z])/g,`$1 $2`).split(/[^a-zA-Z0-9]+/).filter(Boolean);if(t.length===0)return`asset`;let n=t.map((e,t)=>t===0?e.toLowerCase():e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(``).replace(/^[0-9]+/,``);return n?n.charAt(0).toLowerCase()+n.slice(1):`asset`}var Fe=class{#e=0;#t=!1;#n;#r;constructor(e){this.#r=e}async run(e,t={}){let n=++this.#e,r=t.retainResult&&this.#t?this.#n:void 0;this.#r(t.retainResult&&this.#t?{status:`refreshing`,value:this.#n}:{status:`loading`});try{let t=await e();n===this.#e&&(this.#t=!0,this.#n=t,this.#r({status:`resolved`,value:t}))}catch(e){n===this.#e&&this.#r({status:`failed`,error:e instanceof Error?e.message:String(e),...t.retainResult&&this.#t?{value:r}:{}})}}cancel(){this.#e++,this.#t=!1,this.#r({status:`idle`})}},Ie={folder:null,sort:`alphabetical`,type:[],manifest:[],changes:[],usage:`all`,query:``,warningsOnly:!1,view:`all`},Le=[`folder`,`sort`,`type`,`manifest`,`changes`,`usage`,`q`,`warnings`,`view`],Re=new Set([`alphabetical`,`type`,`manifest`]),ze=new Set([`changed`,`new`]),Be=new Set([`all`,`unused`]),Ve=new Set([`all`,`duplicates`]);function He(e){let t=e.searchParams.get(`sort`),n=e.searchParams.get(`usage`);return{folder:e.searchParams.has(`folder`)?e.searchParams.get(`folder`)??``:null,sort:Re.has(t)?t:`alphabetical`,type:Ue(e,`type`),manifest:Ue(e,`manifest`),changes:We(e),usage:Be.has(n)?n:`all`,query:e.searchParams.get(`q`)??``,warningsOnly:e.searchParams.get(`warnings`)===`1`,view:Ve.has(e.searchParams.get(`view`))?e.searchParams.get(`view`):`all`}}function Ue(e,t){return[...new Set(e.searchParams.getAll(t).filter(e=>e!==``&&e!==`all`))]}function We(e){let t=e.searchParams.getAll(`changes`),n=new Set;for(let e of t)e===`changed-and-new`?(n.add(`changed`),n.add(`new`)):ze.has(e)&&n.add(e);return[`changed`,`new`].filter(e=>n.has(e))}function Ge(e,t){let n=new URL(e);for(let e of Le)n.searchParams.delete(e);t.folder!==null&&n.searchParams.set(`folder`,t.folder),t.sort!==`alphabetical`&&n.searchParams.set(`sort`,t.sort);for(let e of t.type)n.searchParams.append(`type`,e);for(let e of t.manifest)n.searchParams.append(`manifest`,e);for(let e of t.changes)n.searchParams.append(`changes`,e);return t.usage!==`all`&&n.searchParams.set(`usage`,t.usage),t.query.trim()!==``&&n.searchParams.set(`q`,t.query),t.warningsOnly&&n.searchParams.set(`warnings`,`1`),t.view!==`all`&&n.searchParams.set(`view`,t.view),n}function Ke(e,t,n){return e===t?n:{selectedAssetIds:[],lastSelectedAssetId:null}}function qe(e){return e.importSource?.importer===`figma`}function Je(e){return e.length>0&&e.every(e=>e!==null&&qe(e))}function Ye(e){return qe(e)?Xe(e)?`figma-tag`:`figma-link`:`file`}function Xe(e){let t=e.importSource;if(!qe(e)||!t)return!1;let n=t.parameters;return typeof n!=`object`||!n||Array.isArray(n)?!1:n.mode===`tag`}var Ze=new class{#e=0;begin(){return++this.#e}isCurrent(e){return e===this.#e}};function Qe(e){let t=Number.isFinite(e)&&e>0?Math.floor(e):0;return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}var $e=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><rect x="4.5" y="3.5" width="2.5" height="9" fill="currentColor"></rect><rect x="9" y="3.5" width="2.5" height="9" fill="currentColor"></rect></svg>`),et=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M5 3.3v9.4l7-4.7z" fill="currentColor"></path></svg>`),tt=d(`<span class="time svelte-nchstv"> </span> <input class="range scrub svelte-nchstv" type="range" min="0" step="0.01" aria-label="Seek"/> <span class="time svelte-nchstv"> </span>`,1),nt=d(`<span class="time svelte-nchstv"> </span>`),rt=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 6l3.5 4M13.5 6 10 10" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),it=i(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 5.6a3.4 3.4 0 0 1 0 4.8" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path><path d="M11.8 3.9a6 6 0 0 1 0 8.2" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),at=d(`<div class="volume-group svelte-nchstv"><button class="btn svelte-nchstv" type="button"><!></button> <input class="range volume svelte-nchstv" type="range" min="0" max="1" step="0.01" aria-label="Volume"/></div>`),ot=d(`<div><button class="btn svelte-nchstv" type="button"><!></button> <button class="btn svelte-nchstv" type="button" aria-label="Stop"><svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-nchstv"><rect x="4" y="4" width="8" height="8" rx="1" fill="currentColor"></rect></svg></button> <button type="button" aria-label="Loop"><svg viewBox="0 0 16 16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" class="svelte-nchstv"><path d="M4.4 4.5H9A3.5 3.5 0 0 1 12.5 8"></path><path d="M2.4 6.4 4.3 4.4 6.3 6.1"></path><path d="M11.6 11.5H7A3.5 3.5 0 0 1 3.5 8"></path><path d="M13.6 9.6 11.7 11.6 9.7 9.9"></path></svg></button> <!> <!></div>`);function st(n,r){V(r,!0);let i=x(r,`media`,7),a=x(r,`showScrub`,3,!1),s=x(r,`showVolume`,3,!0),l=N(!1),u=N(0),d=N(0),m=N(!1),h=N(1),_=N(!1),v=N(!1),b=!1,C=null,T=z(()=>Qe(g(u))),D=z(()=>Qe(g(d))),A=z(()=>g(d)>0),j=z(()=>g(_)?0:g(h));L(()=>{if(!i()){H(l,!1);return}let e=i();H(l,!e.paused),H(u,e.currentTime,!0),H(d,Number.isFinite(e.duration)?e.duration:0,!0),H(m,e.loop,!0),H(h,e.volume,!0),H(_,e.muted,!0);function t(){H(l,!0)}function n(){H(l,!1)}function r(){g(v)||H(u,e.currentTime,!0)}function a(){H(d,Number.isFinite(e.duration)?e.duration:0,!0)}function o(){H(h,e.volume,!0),H(_,e.muted,!0)}return e.addEventListener(`play`,t),e.addEventListener(`playing`,t),e.addEventListener(`pause`,n),e.addEventListener(`ended`,n),e.addEventListener(`timeupdate`,r),e.addEventListener(`seeked`,r),e.addEventListener(`loadedmetadata`,a),e.addEventListener(`durationchange`,a),e.addEventListener(`volumechange`,o),()=>{C===e&&(H(v,!1),b=!1,C=null),e.removeEventListener(`play`,t),e.removeEventListener(`playing`,t),e.removeEventListener(`pause`,n),e.removeEventListener(`ended`,n),e.removeEventListener(`timeupdate`,r),e.removeEventListener(`seeked`,r),e.removeEventListener(`loadedmetadata`,a),e.removeEventListener(`durationchange`,a),e.removeEventListener(`volumechange`,o)}});function M(){i()&&(i().paused?i().play():i().pause())}function P(){i()&&(i().pause(),i().currentTime=0)}function R(){i()&&(i().loop=!i().loop,H(m,i().loop,!0))}function B(){i()&&(i().muted=!i().muted)}function U(e){if(!i())return;let t=e.currentTarget.valueAsNumber;i().volume=t,i().muted=t===0}function W(){!i()||g(v)||(H(v,!0),b=!i().paused,C=i(),i().pause())}function G(e){let t=C??i();if(!t)return;let n=e.currentTarget.valueAsNumber;Number.isFinite(t.duration)&&(t.currentTime=n),H(u,n,!0)}function K(){if(!g(v))return;let e=C;H(v,!1),b&&e&&i()===e&&e.play(),b=!1,C=null}L(()=>{if(g(v))return window.addEventListener(`pointerup`,K),window.addEventListener(`pointercancel`,K),()=>{window.removeEventListener(`pointerup`,K),window.removeEventListener(`pointercancel`,K)}});var q=ot(),J=y(q),ee=y(J),Y=e=>{c(e,$e())},X=e=>{c(e,et())};t(ee,e=>{g(l)?e(Y):e(X,-1)}),w(J);var te=e(J,2),ne=e(te,2);let re;var ie=e(ne,2),ae=t=>{var n=tt(),r=f(n),a=y(r,!0);w(r);var s=e(r,2);E(s);var l=e(s,2),m=y(l,!0);w(l),o(()=>{k(a,g(T)),I(s,`max`,g(A)?g(d):0),O(s,g(u)),s.disabled=!i()||!g(A),k(m,g(D))}),p(`pointerdown`,s,W),p(`input`,s,G),c(t,n)},Z=e=>{var t=nt(),n=y(t);w(t),o(()=>k(n,`${g(T)??``} / ${g(D)??``}`)),c(e,t)};t(ie,e=>{a()?e(ae):g(A)&&e(Z,1)});var Q=e(ie,2),oe=n=>{var r=at(),a=y(r),s=y(a),l=e=>{c(e,rt())},u=e=>{c(e,it())};t(s,e=>{g(_)||g(h)===0?e(l):e(u,-1)}),w(a);var d=e(a,2);E(d),w(r),o(()=>{a.disabled=!i(),I(a,`aria-label`,g(_)?`Unmute`:`Mute`),O(d,g(j)),d.disabled=!i()}),p(`click`,a,B),p(`input`,d,U),c(n,r)};t(Q,e=>{s()&&e(oe)}),w(q),o(()=>{S(q,1,`playback ${r.class??``??``}`,`svelte-nchstv`),J.disabled=!i(),I(J,`aria-label`,g(l)?`Pause`:`Play`),te.disabled=!i(),re=S(ne,1,`btn svelte-nchstv`,null,re,{active:g(m)}),ne.disabled=!i(),I(ne,`aria-pressed`,g(m))}),p(`click`,J,M),p(`click`,te,P),p(`click`,ne,R),c(n,q),F()}s([`click`,`pointerdown`,`input`]);var ct=null;function lt(){return ct||=new AudioContext,ct}var ut=null;function dt(e){let t=e.numberOfChannels;if(t===1)return e.getChannelData(0);let n=e.length,r=new Float32Array(n);for(let i=0;i<t;i++){let t=e.getChannelData(i);for(let e=0;e<n;e++)r[e]+=t[e]}for(let e=0;e<n;e++)r[e]/=t;return r}function ft(e,t){let n=new Float32Array(t),r=new Float32Array(t),i=e.length/t;for(let a=0;a<t;a++){let t=Math.floor(a*i),o=Math.min(e.length,Math.floor((a+1)*i)),s=0,c=0;for(let n=t;n<o;n++){let t=e[n];t<s&&(s=t),t>c&&(c=t)}n[a]=s,r[a]=c}return{min:n,max:r}}function pt(e,t,n){return Math.min(n,Math.max(t,e))}var mt=d(`<div class="footer svelte-1liihyn"><!></div>`),ht=d(`<div><canvas class="wave svelte-1liihyn" role="button" tabindex="0" aria-label="Audio waveform — click or press Enter to play; arrow keys scrub"></canvas> <!></div>`);function gt(n,r){V(r,!0);let i=x(r,`loop`,3,!1),a=x(r,`showControls`,3,!1),s=N(void 0),l=N(null),u=N(!1),d=N(0),f=N(0),m=`idle`,h=null,v=null,b=0,C=1,T=`#0d99ff`,E=`#7a7a7a`,D=`#f24822`,O=0;function k(){if(!g(s))return;let e=getComputedStyle(g(s));T=e.getPropertyValue(`--accent`).trim()||T,E=e.getPropertyValue(`--text-faint`).trim()||E,D=e.getPropertyValue(`--danger`).trim()||D}function A(){if(!g(s))return;let e=g(s).getBoundingClientRect();C=window.devicePixelRatio||1;let t=Math.max(1,Math.round(e.width*C)),n=Math.max(1,Math.round(e.height*C));(g(s).width!==t||g(s).height!==n)&&(g(s).width=t,g(s).height=n,v=null),k()}function j(){if(!g(s))return;let e=g(s).getContext(`2d`);if(!e)return;let t=g(s).width,n=g(s).height,r=n/2;if(e.clearRect(0,0,t,n),m!==`ready`||!h){e.strokeStyle=m===`error`?D:E,e.lineWidth=Math.max(1,C),e.beginPath(),e.moveTo(0,r),e.lineTo(t,r),e.stroke();return}let i=Math.max(1,Math.floor(t));(!v||b!==i)&&(v=ft(h,i),b=i);let a=g(f)>0?pt(g(d)/g(f),0,1):0,o=a*t,c=r*.9,l=t/i;e.lineWidth=1;for(let t=0;t<i;t++){let n=t*l,i=r-v.max[t]*c,a=r-v.min[t]*c;e.strokeStyle=n<=o?T:E,e.beginPath(),e.moveTo(n+.5,Math.min(i,r-.5)),e.lineTo(n+.5,Math.max(a,r+.5)),e.stroke()}a>0&&(e.strokeStyle=T,e.lineWidth=Math.max(1,C),e.beginPath(),e.moveTo(o,0),e.lineTo(o,n),e.stroke())}function M(){O&&=(cancelAnimationFrame(O),0)}function P(){g(l)&&H(d,g(l).currentTime,!0),j(),g(u)&&(O=requestAnimationFrame(P))}async function I(e){m=`loading`,j();try{let t=await(await fetch(e)).arrayBuffer(),n=await lt().decodeAudioData(t);if(e!==r.src)return;h=dt(n),g(f)||H(f,n.duration,!0),m=`ready`,v=null,j()}catch{if(e!==r.src)return;m=`error`,j()}}function R(e){if(e.preventDefault(),e.stopPropagation(),!g(s)||!g(l))return;let t=g(s).getBoundingClientRect(),n=pt((e.clientX-t.left)/t.width,0,1),r=g(l).duration;Number.isFinite(r)&&r>0&&(g(l).currentTime=n*r),g(l).play()}function z(){g(l)&&(g(l).paused?g(l).play():g(l).pause())}function U(e){if(g(l)){if(e.key===`Enter`||e.key===` `){e.preventDefault(),z();return}if(e.key===`ArrowRight`||e.key===`ArrowLeft`){let t=g(l).duration;if(!Number.isFinite(t)||t<=0)return;e.preventDefault();let n=e.key===`ArrowRight`?5:-5;g(l).currentTime=pt(g(l).currentTime+n,0,t)}}}L(()=>{let e=g(l);e&&(e.loop=i())}),L(()=>{let e=r.src,t=g(s);if(!t)return;m=`idle`,h=null,v=null,b=0,H(d,0),H(f,0),H(u,!1);let n=new Audio(e);n.preload=`metadata`,n.loop=_(()=>i());function a(){ut&&ut!==n&&ut.pause(),ut=n,H(u,!0),M(),O=requestAnimationFrame(P)}function o(){ut===n&&(ut=null),H(u,!1),M(),j()}function c(){ut===n&&(ut=null),H(u,!1),M(),j()}function p(){H(d,n.currentTime,!0),g(u)||j()}function y(){Number.isFinite(n.duration)&&H(f,n.duration,!0),j()}n.addEventListener(`play`,a),n.addEventListener(`pause`,o),n.addEventListener(`ended`,c),n.addEventListener(`timeupdate`,p),n.addEventListener(`loadedmetadata`,y),n.addEventListener(`durationchange`,y),n.addEventListener(`seeked`,p),H(l,n,!0);let x=new ResizeObserver(()=>{A(),j()});x.observe(t);let S=new IntersectionObserver(t=>{t.some(e=>e.isIntersecting)&&(S.disconnect(),I(e))});return S.observe(t),A(),j(),()=>{M(),x.disconnect(),S.disconnect(),n.removeEventListener(`play`,a),n.removeEventListener(`pause`,o),n.removeEventListener(`ended`,c),n.removeEventListener(`timeupdate`,p),n.removeEventListener(`loadedmetadata`,y),n.removeEventListener(`durationchange`,y),n.removeEventListener(`seeked`,p),n.pause(),ut===n&&(ut=null),n.removeAttribute(`src`),n.load(),H(l,null)}});var W=ht(),G=y(W);B(G,e=>H(s,e),()=>g(s));var K=e(G,2),q=e=>{var t=mt();st(y(t),{get media(){return g(l)}}),w(t),c(e,t)};t(K,e=>{a()&&e(q)}),w(W),o(()=>S(W,1,`audio-waveform ${r.class??``??``}`,`svelte-1liihyn`)),p(`click`,G,R),p(`keydown`,G,U),c(n,W),F()}s([`click`,`keydown`]);var _t=d(`<div class="audio-frame svelte-1ww4cvx"><!></div>`),vt=d(`<p class="svelte-1ww4cvx">No proxy yet — add the asset to a manifest to process it.</p>`),yt=d(`<div class="stage checkerboard svelte-1ww4cvx"><!></div>`);function bt(e,n){V(n,!0);var r=yt(),i=y(r),a=e=>{var t=_t();A(y(t),()=>n.asset.proxy.url,e=>{gt(e,{get src(){return n.asset.proxy.url},showControls:!0})}),w(t),c(e,t)},o=e=>{c(e,vt())};t(i,e=>{n.asset.proxy?e(a):e(o,-1)}),w(r),c(e,r),F()}function xt(e){if(e.scrubbedValue===null)return{};let t=e.startValue??e.min??0;return e.scrubbedValue===t?{rollbackTo:e.startValue}:{commit:e.scrubbedValue}}function St(e,t){return t.coarse?e*10:t.fine?e*.1:e}function Ct(e){if(!Number.isFinite(e))return 0;let t=0,n=Math.abs(e);for(;t<10&&Math.abs(Math.round(n)-n)>1e-9;)n*=10,t+=1;return t}function wt(e,t){let n=10**t;return Math.round(e*n)/n}function Tt(e){let t=St(e.step,e.modifiers),n=wt(e.startValue+e.deltaX*t,Ct(t));return e.min!==void 0&&(n=Math.max(e.min,n)),e.max!==void 0&&(n=Math.min(e.max,n)),n}function Et(e,t){t.buttons!==0&&!e.hasPointerCapture(t.pointerId)&&e.setPointerCapture(t.pointerId)}function Dt(e,t){e.hasPointerCapture(t)&&e.releasePointerCapture(t)}var Ot=d(`<span class="suffix svelte-nhap92" aria-hidden="true"> </span>`),kt=d(`<span class="scrub-surface svelte-nhap92" title="Drag to change — Shift: ×10, Alt: ×0.1" role="presentation" aria-hidden="true"></span>`),At=d(`<span><input class="input svelte-nhap92" type="number"/> <!> <!></span>`);function jt(n,r){V(r,!0);let i=x(r,`step`,3,1),a=x(r,`placeholder`,3,``),s=x(r,`allowNull`,3,!1),l=x(r,`align`,3,`left`),u=N(null),d=N(!1),f=N(null),m=N(null),h=z(()=>g(u)?.activated?g(u).currentValue:r.value),_=z(()=>Math.max(1,g(m)??String(g(h)??a()).length));function b(e){return{coarse:e.shiftKey,fine:e.altKey}}function C(e){e.preventDefault(),Et(e.currentTarget,e),H(u,{pointerId:e.pointerId,startX:e.clientX,startValue:r.value,currentValue:null,activated:!1},!0)}function T(e){if(!g(u)||e.pointerId!==g(u).pointerId)return;let t=e.clientX-g(u).startX;if(!g(u).activated){if(Math.abs(t)<3)return;g(u).activated=!0,document.body.style.cursor=`ew-resize`}let n=Tt({startValue:g(u).startValue??r.min??0,deltaX:t,step:i(),modifiers:b(e),min:r.min,max:r.max});n!==g(u).currentValue&&(g(u).currentValue=n,r.onChange?.(n))}function D(e){if(!g(u)||e.pointerId!==g(u).pointerId)return;Dt(e.currentTarget,e.pointerId);let t=g(u).activated,n=g(u).startValue,i=g(u).currentValue;if(H(u,null),document.body.style.cursor=``,!t){M();return}let a=xt({startValue:n,scrubbedValue:i,min:r.min});a.commit===void 0?`rollbackTo`in a&&r.onChange?.(a.rollbackTo??null):r.onCommit(a.commit)}function A(){if(!g(u))return;let e=g(u).startValue,t=g(u).activated;H(u,null),document.body.style.cursor=``,t&&r.onChange?.(e)}function j(e){g(u)&&e.key===`Escape`&&(e.preventDefault(),A())}L(()=>()=>{g(u)&&(document.body.style.cursor=``)});function M(){H(d,!0),queueMicrotask(()=>{g(f)?.focus(),g(f)?.select()})}function P(e){let t=e.currentTarget.valueAsNumber;Number.isFinite(t)?r.onCommit(t):r.onCommit(s()?null:r.min??0)}function R(e){H(m,e.currentTarget.value.length,!0)}function U(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(e.currentTarget.value=g(h)===null?``:String(g(h)),e.currentTarget.blur())}var W=At();q(`keydown`,v,j);let G;var J=y(W);E(J);let ee;B(J,e=>H(f,e),()=>g(f));var Y=e(J,2),X=e=>{var t=Ot(),n=y(t,!0);w(t),o(()=>k(n,r.suffix)),c(e,t)};t(Y,e=>{r.suffix!==void 0&&e(X)});var te=e(Y,2),ne=e=>{var t=kt();p(`pointerdown`,t,C),p(`pointermove`,t,T),p(`pointerup`,t,D),q(`pointercancel`,t,A),c(e,t)};t(te,e=>{g(d)||e(ne)}),w(W),o(()=>{G=S(W,1,`scrub-number svelte-nhap92`,null,G,{right:l()===`right`,"with-suffix":r.suffix!==void 0}),I(J,`aria-label`,r.ariaLabel),I(J,`min`,r.min),I(J,`max`,r.max),I(J,`step`,i()),I(J,`placeholder`,a()),O(J,g(h)??``),ee=K(J,``,ee,{width:r.suffix===void 0?void 0:`${g(_)}ch`})}),q(`focus`,J,e=>{H(d,!0),H(m,e.currentTarget.value.length,!0)}),q(`blur`,J,()=>{H(d,!1),H(m,null)}),p(`input`,J,R),p(`change`,J,P),p(`keydown`,J,U),c(n,W),F()}s([`input`,`change`,`keydown`,`pointerdown`,`pointermove`,`pointerup`]);var Mt=d(`<span class="caption svelte-368zap"> </span>`),Nt=d(`<span class="fill svelte-368zap"></span>`),Pt=d(`<div class="number-field svelte-368zap"><!> <div class="number-input control svelte-368zap"><!> <span class="icon-slot svelte-368zap"><!></span> <!></div></div>`);function Ft(n,r){let i=x(r,`step`,3,1),s=x(r,`placeholder`,3,``),u=x(r,`rangeFill`,3,!0),d=z(()=>!u()||r.min===void 0||r.max===void 0||r.value===null||r.max<=r.min?null:Math.max(0,Math.min(100,(r.value-r.min)/(r.max-r.min)*100)));var p=Pt(),h=y(p),_=e=>{var t=Mt(),n=y(t,!0);w(t),o(()=>k(n,r.caption)),c(e,t)};t(h,e=>{r.caption&&e(_)});var v=e(h,2),b=y(v),S=e=>{var t=Nt();o(()=>K(t,`width: ${g(d)??``}%`)),c(e,t)};t(b,e=>{g(d)!==null&&e(S)});var C=e(b,2),T=y(C),E=e=>{var t=l();m(f(t),()=>r.icon),c(e,t)},D=e=>{var t=a();o(()=>k(t,r.label)),c(e,t)};t(T,e=>{r.icon?e(E):e(D,-1)}),w(C),jt(e(C,2),{get value(){return r.value},get min(){return r.min},get max(){return r.max},get step(){return i()},get placeholder(){return s()},get suffix(){return r.suffix},allowNull:!0,get ariaLabel(){return r.label},get onChange(){return r.onChange},get onCommit(){return r.onCommit}}),w(v),w(p),o(()=>I(C,`title`,r.label)),c(n,p)}var It=d(`<h3 class="svelte-1ol624f"><!></h3>`);function Lt(e,t){var n=It();m(y(n),()=>t.children),w(n),c(e,n)}var Rt=d(`<span class="caption svelte-bczi6w"> </span>`),zt=d(`<option> </option>`),Bt=d(`<div class="select-field svelte-bczi6w"><!> <div class="select-input control svelte-bczi6w"><span class="icon-slot svelte-bczi6w"><!></span> <select class="svelte-bczi6w"></select></div></div>`);function Vt(n,i){V(i,!0);var s=Bt(),u=y(s),d=e=>{var t=Rt(),n=y(t,!0);w(t),o(()=>k(n,i.caption)),c(e,t)};t(u,e=>{i.caption&&e(d)});var h=e(u,2),g=y(h),_=y(g),v=e=>{var t=l();m(f(t),()=>i.icon),c(e,t)},x=e=>{var t=a();o(e=>k(t,e),[()=>i.label.slice(0,1)]),c(e,t)};t(_,e=>{i.icon?e(v):e(x,-1)}),w(g);var S=e(g,2);r(S,20,()=>i.options,e=>e,(e,t)=>{var n=zt(),r=y(n,!0);w(n);var i={};o(()=>{k(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),c(e,n)}),w(S);var C;b(S),w(h),w(s),o(()=>{I(g,`title`,i.label),I(S,`aria-label`,i.label),C!==(C=i.value)&&(S.value=(S.__value=i.value)??``,W(S,i.value))}),p(`change`,S,e=>i.onChange(e.currentTarget.value)),c(n,s),F()}s([`change`]);var Ht=d(`<p class="info svelte-m9vwwu"><!> <!> <br/> <span class="file svelte-m9vwwu"> </span></p>`),Ut=d(`<p class="hint svelte-m9vwwu">No proxy yet — add the asset to a manifest to process it.</p>`),Wt=d(`<section class="svelte-m9vwwu"><!> <!></section>`);function Gt(n,r){V(r,!0);let i=x(r,`showDimensions`,3,!1),s=x(r,`showDuration`,3,!1);var l=Wt(),u=y(l);Lt(u,{children:(e,t)=>{U(),c(e,a(`Output`))},$$slots:{default:!0}});var d=e(u,2),f=n=>{var l=Ht(),u=y(l),d=e=>{var t=a();o(()=>k(t,`${r.proxy.width??``} × ${r.proxy.height??``} px ·`)),c(e,t)};t(u,e=>{i()&&r.proxy.width!==void 0&&r.proxy.height!==void 0&&e(d)});var f=e(u,2),p=e=>{var t=a();o(e=>k(t,`${e??``} ·`),[()=>ke(r.proxy.durationMs)]),c(e,t)};t(f,e=>{s()&&r.proxy.durationMs!==void 0&&e(p)});var m=e(f),h=e(m,3),g=y(h,!0);w(h),w(l),o(e=>{k(m,` ${e??``} `),k(g,r.proxy.fileName)},[()=>Ae(r.proxy.fileSize)]),c(n,l)},p=e=>{c(e,Ut())};t(d,e=>{r.proxy?e(f):e(p,-1)}),w(l),c(n,l),F()}var Kt=d(`<section class="svelte-1by8n8t"><!> <div class="field svelte-1by8n8t"><!></div> <div class="field svelte-1by8n8t"><!></div></section> <!>`,1);function qt(t,n){V(n,!0);let r=z(()=>Ce.validateParameters(n.parameters));function i(e){n.onParametersCommit(e)}function o(e){i({...g(r),preset:e})}function s(e){let{targetWidth:t,...n}=g(r);return e===null||!Number.isFinite(e)||e<=0?n:{...n,targetWidth:Math.round(e)}}function l(e,t){let r=s(e);t?i(r):n.onParametersChange(r)}var u=Kt(),d=f(u),p=y(d);Lt(p,{children:(e,t)=>{U(),c(e,a(`Image`))},$$slots:{default:!0}});var m=e(p,2);Vt(y(m),{label:`Preset`,caption:`Preset`,get value(){return g(r).preset},get options(){return n.presetNames},onChange:o,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(m);var h=e(m,2),_=y(h);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(r).targetWidth??null);Ft(_,{label:`Target width`,caption:`Target width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>l(e,!1),onCommit:e=>l(e,!0),icon:e,$$slots:{icon:!0}})}w(h),w(d),Gt(e(d,2),{get proxy(){return n.asset.proxy},showDimensions:!0}),c(t,u),F()}new Set([...new Set([`video`,`chroma-key-video`,`audio`])].filter(e=>de.has(e)));function Jt(e){if(e.ok)return!0;if(e.status!==0||e.type!==`basic`)return!1;try{let t=new URL(e.url).protocol;return t!==`http:`&&t!==`https:`}catch{return!1}}async function Yt(e){let t=await fetch(e);if(!Jt(t))throw Error(`Preloading "${e}" failed: ${t.status} ${t.statusText}.`);return t}function Xt(e,t,n){if(n!==t)throw Error(`Preloading "${e}" failed: expected ${t} bytes, received ${n}.`)}var Zt={async preload(e,t){if(Xt(e,t,(await(await Yt(e)).arrayBuffer()).byteLength),typeof globalThis.Image==`function`){let t=new globalThis.Image;return t.src=e,await t.decode(),{image:t}}return{}}},Qt={async preload(e,t,n){let r=await(await Yt(e)).blob();if(Xt(e,t,r.size),n?.slicing?.mode!==`one`&&typeof globalThis.createImageBitmap==`function`)return{imageBitmap:await globalThis.createImageBitmap(r,{premultiplyAlpha:`premultiply`})};if(typeof globalThis.Image==`function`){let t=new globalThis.Image;return t.src=e,await t.decode(),{image:t}}return{}},release(e){e.imageBitmap?.close()}},$t={async preload(e,t){let n=await(await Yt(e)).blob();return Xt(e,t,n.size),typeof URL.createObjectURL==`function`?{objectUrl:URL.createObjectURL(n)}:{}},release(e){e.objectUrl!==void 0&&typeof URL.revokeObjectURL==`function`&&URL.revokeObjectURL(e.objectUrl)}},en={image:Zt,slice:Qt,video:$t,"chroma-key-video":$t,audio:$t};new Map(Object.entries(de.project(en,`runtime handler`)));var tn=new Map;function nn(e){return tn.get(e)?.resources?.objectUrl??e}function rn(e){let t=tn.get(e)?.resources;return t?.imageBitmap??t?.image??null}function an(e,t,n){return Math.max(t,Math.min(n,e))}function on(e){let{mode:t,insets:n}=e.slicing,r=Y(t);return{top:r.vertical?n.top:0,bottom:r.vertical?n.bottom:0,left:r.horizontal?n.left:0,right:r.horizontal?n.right:0}}function sn(e){let t=e.slicing.overdraw;if(!t)return fe();let n=e.sourceWidth,r=e.sourceHeight,i=an(t.left,0,Math.max(0,n-1)),a=an(t.right,0,Math.max(0,n-i-1)),o=an(t.top,0,Math.max(0,r-1));return{top:o,right:a,bottom:an(t.bottom,0,Math.max(0,r-o-1)),left:i}}function cn(e){let t=sn(e);return{width:Math.max(1,e.sourceWidth-t.left-t.right),height:Math.max(1,e.sourceHeight-t.top-t.bottom)}}function ln(e,t,n){let r=sn(e);if(r.top===0&&r.right===0&&r.bottom===0&&r.left===0)return r;let i=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,a=cn(e),o,s;return e.slicing.mode===`three-horizontal`?o=s=n/a.height:e.slicing.mode===`three-vertical`?o=s=t/a.width:e.slicing.mode===`one`?(o=t/a.width,s=n/a.height):o=s=1/i,{top:Math.round(r.top*s),right:Math.round(r.right*o),bottom:Math.round(r.bottom*s),left:Math.round(r.left*o)}}function un(e,t,n,r){let i=t>0?Math.max(1,Math.round(t)):0,a=n>0?Math.max(1,Math.round(n)):0,o=ln(e,i,a),s=i+o.left+o.right,c=a+o.top+o.bottom,l=i>0?t/i:1,u=a>0?n/a:1;return{renderWidth:i,renderHeight:a,cssLeft:-o.left*l+0,cssTop:-o.top*u+0,cssWidth:s*l,cssHeight:c*u,backingWidth:s*r,backingHeight:c*r,originX:o.left*r,originY:o.top*r}}function dn(e,t){return[t(e[0]),t(e[1]),t(e[2]),t(e[3])]}function fn(e){let t=0,n=[0];for(let r of e)t+=r,n.push(Math.round(t));return n}function pn(e,t,n){let r=ln(e,t,n),i=t+r.left+r.right,a=n+r.top+r.bottom,o=e.sourceWidth,s=e.sourceHeight,c=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,l=e.slicing.mode,u=on(e),d=an(u.left,0,o),f=an(u.right,0,Math.max(0,o-d)),p=an(u.top,0,s),m=an(u.bottom,0,Math.max(0,s-p)),h=Math.max(0,o-d-f),g=Math.max(0,s-p-m),_,v;if(l===`three-horizontal`){let e=a/s;_=d*e,v=f*e}else _=d/c,v=f/c;let y=Math.max(0,i-_-v),b,x;if(l===`three-vertical`){let e=i/o;b=p*e,x=m*e}else b=p/c,x=m/c;let S=Math.max(0,a-b-x),C=fn([_,y,v]),w=fn([b,S,x]);return{sourceX:[0,d,d+h,d+h+f],sourceY:[0,p,p+g,p+g+m],destX:dn(C,e=>e-r.left),destY:dn(w,e=>e-r.top)}}function mn(e,t,n,r,i){if(![t,n,r,i].every(Number.isFinite))throw RangeError(`Slice grid coordinates and dimensions must be finite.`);let a=r>0?Math.max(1,Math.round(r)):0,o=i>0?Math.max(1,Math.round(i)):0,s=pn(e,a,o),c=(e,t,n,r)=>{if(r===0)return[t,t,t,t];let i=n/r;return dn(e,e=>t+e*i)};return{sourceX:s.sourceX,sourceY:s.sourceY,destX:c(s.destX,t,r,a),destY:c(s.destY,n,i,o)}}function hn(e,t,n,r,i,a,o){let{sourceX:s,sourceY:c,destX:l,destY:u}=mn(t,r,i,a,o);for(let t=0;t<3;t++){let r=c[t+1]-c[t],i=u[t+1]-u[t];if(!(r<=0||i<=0))for(let a=0;a<3;a++){let o=s[a+1]-s[a],d=l[a+1]-l[a];o<=0||d<=0||e.drawImage(n,s[a],c[t],o,r,l[a],u[t],d,i)}}}var gn=new Set([`$$slots`,`$$events`,`$$legacy`,`src`]),_n=d(`<img/>`);function vn(e,t){V(t,!0);let r=P(t,gn);L(()=>(t.src,void 0));var i=_n();C(i,()=>({src:t.src.src,width:t.src.width,height:t.src.height,...r})),n(i),c(e,i),F()}function yn(e,t){let n=new ResizeObserver(n=>{let r=n[0]?.borderBoxSize?.[0];t(r?.inlineSize??e.offsetWidth,r?.blockSize??e.offsetHeight)});return n.observe(e),()=>n.disconnect()}function bn(e){return typeof ImageBitmap<`u`&&e instanceof ImageBitmap&&e.width===0}function xn(e){let t=new Image;return t.decoding=`async`,t.src=e,t.decode().then(()=>t)}var Sn=class{#e;#t;#n;#r=null;#i=null;#a=new Map;#o=!1;constructor(e,t=xn,n=rn){this.#n=e,this.#e=t,this.#t=n}request(e){if(this.#o)return;this.#r=e;let t=this.#i;if(t?.entry.src===e.src&&!bn(t.image)){this.#l({entry:e,image:t.image});return}let n=this.#t(e.src);if(n){this.#l({entry:e,image:n});return}if(this.#a.has(e.src))return;let r;try{r=Promise.resolve(this.#e(e.src))}catch(e){r=Promise.reject(e)}let i={promise:r};this.#a.set(e.src,i),r.then(t=>this.#s(e.src,i,t),()=>this.#c(e.src,i))}dispose(){this.#o||(this.#o=!0,this.#r=null,this.#i=null,this.#a.clear())}#s(e,t,n){if(this.#a.get(e)!==t||(this.#a.delete(e),this.#o))return;let r=this.#r;!r||r.src!==e||this.#l({entry:r,image:n})}#c(e,t){this.#a.get(e)===t&&this.#a.delete(e)}#l(e){this.#o||(this.#i=e,this.#n(e))}},Cn=d(`<img class="svelte-3n5l3f"/>`),wn=d(`<canvas class="svelte-3n5l3f"></canvas>`),Tn=d(`<div><!></div>`);function En(e,n){V(n,!0);let r=x(n,`maxDpr`,3,2),i=x(n,`alt`,3,``),a=x(n,`class`,3,``),s=N(null),l=new Sn(e=>{H(s,e)});L(()=>{l.request(n.src)}),L(()=>(n.src,void 0)),M(()=>l.dispose());let u=N(void 0),d=N(void 0),f=N(0),p=N(0),m=N(1),h=N(0);L(()=>{let e=g(m),t=window.matchMedia(`(resolution: ${e}dppx)`),n=()=>{H(m,window.devicePixelRatio||1,!0)};return n(),t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)}),L(()=>{let e=g(u);if(e)return yn(e,(e,t)=>{H(f,e,!0),H(p,t,!0)})});let _={renderWidth:0,renderHeight:0,cssLeft:0,cssTop:0,cssWidth:0,cssHeight:0,backingWidth:0,backingHeight:0,originX:0,originY:0},b=z(()=>{let e=Math.max(1,Math.floor(r()));return Math.min(e,Math.max(1,Math.floor(g(m))))}),C=z(()=>{let e=g(s);return e?un(e.entry,g(f),g(p),g(b)):_});L(()=>{let e=g(s),t=g(C);g(h),T(e,t)});function T(e,t){let r=g(d);if(!r||e?.entry.slicing.mode===`one`)return;if(!e||g(f)===0||g(p)===0){r.width=0,r.height=0;return}if(bn(e.image)){l.request(n.src);return}r.width=t.backingWidth,r.height=t.backingHeight;let i=r.getContext(`2d`);i&&(i.setTransform(g(b),0,0,g(b),t.originX,t.originY),i.clearRect(t.cssLeft,t.cssTop,t.cssWidth,t.cssHeight),hn(i,e.entry,e.image,0,0,t.renderWidth,t.renderHeight))}var E=Tn();q(`resize`,v,()=>H(h,g(h)+1));var D=y(E),O=e=>{var t=Cn();let n;o(()=>{I(t,`src`,g(s).entry.src),I(t,`alt`,i()),n=K(t,``,n,{left:`${g(C).cssLeft??``}px`,top:`${g(C).cssTop??``}px`,width:`${g(C).cssWidth??``}px`,height:`${g(C).cssHeight??``}px`})}),c(e,t)},k=e=>{var t=wn();let n;B(t,e=>H(d,e),()=>g(d)),o(()=>n=K(t,``,n,{left:`${g(C).cssLeft??``}px`,top:`${g(C).cssTop??``}px`,width:`${g(C).cssWidth??``}px`,height:`${g(C).cssHeight??``}px`})),c(e,t)};t(D,e=>{g(s)?.entry.slicing.mode===`one`?e(O):g(s)&&e(k,1)}),w(E),B(E,e=>H(u,e),()=>g(u)),o(()=>{S(E,1,`fundus-slice ${a()??``}`,`svelte-3n5l3f`),K(E,n.style),I(E,`role`,g(s)?.entry.slicing.mode===`one`?void 0:i()?`img`:void 0),I(E,`aria-label`,g(s)?.entry.slicing.mode===`one`?void 0:i()||void 0)}),c(e,E),F()}var Dn=d(`<video playsinline="" preload="auto"></video>`,2);function On(e,t){V(t,!0);let n=x(t,`loop`,3,!1),r=x(t,`playing`,3,!0),i=x(t,`muted`,3,!0),a=x(t,`controls`,3,!1),s=x(t,`videoElement`,15),l=x(t,`class`,3,``),u=z(()=>nn(t.src.src));L(()=>(t.src,void 0)),L(()=>{let e=s();e&&(r()?e.play().catch(()=>{}):e.pause())});var d=Dn();B(d,e=>s(e),()=>s()),o(()=>{I(d,`src`,g(u)),I(d,`width`,t.src.width),I(d,`height`,t.src.height),d.loop=n(),d.muted=i(),d.controls=a(),S(d,1,G(l())),K(d,t.style)}),c(e,d),F()}var kn=`#version 300 es
2
2
  in vec2 a_pos;
3
3
  out vec2 v_uv;
4
4
  void main() {
@@ -101,7 +101,7 @@ void main() {
101
101
  // at alpha 0) which then composite additively — a visible bright veil over the
102
102
  // whole canvas rect on iOS.
103
103
  fragColor = vec4(keyed.rgb * keyed.a, keyed.a);
104
- }`;function jn(e){let t=(t,n)=>{let r=e.createShader(t);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)){let t=e.getShaderInfoLog(r);throw e.deleteShader(r),Error(`Chroma-key shader compilation failed: ${t}.`)}return r},n=e.createProgram();if(e.attachShader(n,t(e.VERTEX_SHADER,kn)),e.attachShader(n,t(e.FRAGMENT_SHADER,An)),e.linkProgram(n),!e.getProgramParameter(n,e.LINK_STATUS)){let t=e.getProgramInfoLog(n);throw e.deleteProgram(n),Error(`Chroma-key program linking failed: ${t}.`)}return n}var Mn=class e{#e;#t;#n;#r;#i;#a;#o;#s=null;#c=!1;static create(t){let n=t.getContext(`webgl2`,{premultipliedAlpha:!0,alpha:!0,depth:!1,stencil:!1,antialias:!1});if(!n)return null;try{return new e(n,t)}catch{return null}}constructor(e,t){this.#e=e,this.#t=t,t.addEventListener(`webglcontextlost`,this.#l),t.addEventListener(`webglcontextrestored`,this.#u),this.#d()}#l=e=>{e.preventDefault(),this.#c=!0};#u=()=>{try{this.#d(),this.#c=!1}catch{this.#c=!0}};#d(){let e=this.#e;this.#n=jn(e),e.useProgram(this.#n);let t=t=>e.getUniformLocation(this.#n,t);this.#a={texelSize:t(`u_texelSize`),keyColor:t(`u_keyColor`),tintColor:t(`u_tintColor`),colorCutoff:t(`u_colorCutoff`),colorFeathering:t(`u_colorFeathering`),maskFeathering:t(`u_maskFeathering`),sharpening:t(`u_sharpening`),despill:t(`u_despill`),despillLuminanceAdd:t(`u_despillLuminanceAdd`)},e.uniform1i(e.getUniformLocation(this.#n,`u_texture`),0),e.uniform1i(e.getUniformLocation(this.#n,`u_mask`),1),e.uniform4f(this.#a.tintColor,1,1,1,1),this.#r=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this.#r),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW);let n=e.getAttribLocation(this.#n,`a_pos`);e.enableVertexAttribArray(n),e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0),this.#i=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#i),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#o=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#f(),e.disable(e.DEPTH_TEST),e.disable(e.BLEND),e.clearColor(0,0,0,0)}setMask(e){this.#s=e,this.#c||this.#f()}#f(){let e=this.#e;e.bindTexture(e.TEXTURE_2D,this.#o),this.#s?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,this.#s):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([255,255,255,255]))}draw(e,t){if(this.#c||e.videoWidth===0)return;let n=this.#e;(this.#t.width!==e.videoWidth||this.#t.height!==e.videoHeight)&&(this.#t.width=e.videoWidth,this.#t.height=e.videoHeight,n.viewport(0,0,e.videoWidth,e.videoHeight)),n.activeTexture(n.TEXTURE1),n.bindTexture(n.TEXTURE_2D,this.#o),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,this.#i),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e),n.useProgram(this.#n),n.uniform2f(this.#a.texelSize,1/e.videoWidth,1/e.videoHeight),n.uniform3fv(this.#a.keyColor,t.keyColor),n.uniform1f(this.#a.colorCutoff,t.colorCutoff),n.uniform1f(this.#a.colorFeathering,t.colorFeathering),n.uniform1f(this.#a.maskFeathering,t.maskFeathering),n.uniform1f(this.#a.sharpening,t.sharpening),n.uniform1f(this.#a.despill,t.despill),n.uniform1f(this.#a.despillLuminanceAdd,t.despillLuminanceAdd),n.clear(n.COLOR_BUFFER_BIT),n.drawArrays(n.TRIANGLE_STRIP,0,4)}clear(){this.#c||this.#e.clear(this.#e.COLOR_BUFFER_BIT)}dispose(){this.#t.removeEventListener(`webglcontextlost`,this.#l),this.#t.removeEventListener(`webglcontextrestored`,this.#u);let e=this.#e;e.deleteBuffer(this.#r),e.deleteTexture(this.#i),e.deleteTexture(this.#o),e.deleteProgram(this.#n),e.getExtension(`WEBGL_lose_context`)?.loseContext()}},Nn=2;function Pn(e){return{...e,keyColor:[...e.keyColor]}}function Fn(e,t){t.loop=e.loop,t.playbackRate=e.playbackRate}var In=class{#e;#t;#n;#r=null;#i=null;#a=0;#o=!1;#s=!1;#c=!1;#l=0;#u=!1;#d=null;constructor(e,t,n=e,r){this.#e=[e,n],this.#t=t,this.#n=r;for(let e of new Set(this.#e))this.#f(e)}switchSource(e){if(this.#s)return;let t=this.#i;if(t&&this.#m(t,e)&&t.status===`loading`)return;let n=this.#r;if(n&&this.#m(n,e)&&n.status===`settled`){this.#g(),n.chromaKey=Pn(e.chromaKey);return}this.#g();let r=this.#h(n),i=n?this.#o&&(n.video.ended||!n.video.paused||n.playRequestPending):this.#o;n&&r===n.video&&(this.#j(n),this.#P(),n.status=`disposed`,this.#r=null,n.video.pause());let a={generation:++this.#a,status:`loading`,video:r,rawVideoUrl:e.rawVideoUrl,normalizedVideoUrl:e.resolvedVideoUrl,maskUrl:e.maskUrl,maskImage:null,chromaKey:Pn(e.chromaKey),mediaSettled:!1,maskSettled:!e.maskUrl,playAfterHandoff:i,playRequestToken:0,playRequestPending:!1,playRejectedForCurrentIntent:!1};this.#i=a,this.#c||this.#t.setMask(null),r.pause(),r.src=e.resolvedVideoUrl,a.normalizedVideoUrl=r.src,r.load(),this.#v(a),e.maskUrl&&this.#_(a,e.maskUrl)}setPlaying(e){if(this.#s)return;let t=this.#o!==e;this.#o=e;let n=this.#r,r=this.#i;if(r?.status===`loading`&&(r.playAfterHandoff=e),!e){this.#j(n),this.#P(),n?.video.pause();return}t&&n&&(n.playRejectedForCurrentIntent=!1),n&&(n.playAfterHandoff=!0,this.#k(n))}setChromaKey(e){if(this.#s)return;let t=this.#i??this.#r;!t||t.status===`failed`||t.status===`disposed`||(t.chromaKey=Pn(e),t===this.#r&&t.status===`settled`&&t.video.paused&&this.#D(t)&&this.#T(t))}dispose(){if(!this.#s){this.#s=!0,this.#a++,this.#j(this.#r),this.#j(this.#i),this.#P(),this.#r&&(this.#r.status=`disposed`),this.#i&&(this.#i.status=`disposed`),this.#r=null,this.#i=null;for(let e of new Set(this.#e))this.#p(e),e.pause()}}#f(e){e.addEventListener(`play`,this.#x),e.addEventListener(`pause`,this.#S),e.addEventListener(`ended`,this.#S),e.addEventListener(`seeked`,this.#C),e.addEventListener(`loadeddata`,this.#y),e.addEventListener(`error`,this.#b)}#p(e){e.removeEventListener(`play`,this.#x),e.removeEventListener(`pause`,this.#S),e.removeEventListener(`ended`,this.#S),e.removeEventListener(`seeked`,this.#C),e.removeEventListener(`loadeddata`,this.#y),e.removeEventListener(`error`,this.#b)}#m(e,t){return e.rawVideoUrl===t.rawVideoUrl&&e.maskUrl===t.maskUrl}#h(e){return e&&this.#e[0]===e.video?this.#e[1]:this.#e[0]}#g(){let e=this.#i;e&&(this.#j(e),e.status=`disposed`,e.video.pause(),this.#i=null)}#_(e,t){let n=new Image;n.src=t,n.decode().then(()=>{this.#O(e)&&(e.maskImage=n,e.maskSettled=!0,this.#w(e))}).catch(()=>{this.#O(e)&&(console.warn(`Failed to load chroma-key mask "${t}".`),e.maskSettled=!0,this.#w(e))})}#v(e){let t;try{t=e.video.play()}catch{return}Promise.resolve(t).catch(()=>{})}#y=e=>{let t=this.#i;!t||t.video!==e.currentTarget||!this.#O(t)||this.#D(t)&&(t.mediaSettled=!0,t.video.pause(),this.#w(t))};#b=e=>{let t=e.currentTarget,n=this.#i;if(n?.video===t&&n.status===`loading`){n.status=`failed`,this.#j(n),n.video.pause(),!this.#r&&!this.#c&&this.#E();return}let r=this.#r;!r||r.video!==t||r.status!==`settled`||(r.status=`failed`,this.#j(r),this.#P(),r.video.pause(),this.#i||this.#E())};#x=e=>{let t=e.currentTarget;if(this.#i?.video===t)return;let n=this.#r;if(!n||n.video!==t||n.status!==`settled`){t&&`pause`in t&&t.pause();return}n.playRejectedForCurrentIntent=!1,n.playAfterHandoff=!0,this.#i?.status===`loading`&&(this.#i.playAfterHandoff=!0),n.video.paused||this.#M(n)};#S=e=>{let t=this.#r;!t||t.video!==e.currentTarget||t.status!==`settled`||(this.#j(t),this.#P(),this.#T(t),t.playAfterHandoff=!1,this.#i?.status===`loading`&&(this.#i.playAfterHandoff=!1))};#C=e=>{let t=this.#r;!t||t.video!==e.currentTarget||t.status!==`settled`||!t.video.paused||this.#T(t)};#w(e){if(!this.#O(e)||!e.mediaSettled||!e.maskSettled||!this.#D(e))return;let t=this.#r;this.#P(),this.#j(t),t&&t.video!==e.video&&Fn(t.video,e.video),e.video.pause(),e.status=`settled`,this.#i=null,this.#r=e,this.#t.setMask(e.maskImage),this.#T(e),this.#n?.(e.video),t&&t!==e&&(t.status=`disposed`,t.video.pause()),this.#o&&e.playAfterHandoff&&this.#k(e)}#T(e){this.#s||this.#r!==e||e.status!==`settled`||!this.#D(e)||(this.#t.draw(e.video,e.chromaKey),this.#c=!0)}#E(){this.#t.clear(),this.#c=!1}#D(e){return e.video.readyState>=Nn&&e.video.currentSrc===e.normalizedVideoUrl}#O(e){return!this.#s&&this.#i===e&&e.status===`loading`&&e.generation===this.#a}#k(e){if(this.#s||this.#r!==e||e.status!==`settled`||!this.#o||!e.playAfterHandoff||!e.video.paused||e.playRequestPending||e.playRejectedForCurrentIntent)return;let t=++e.playRequestToken;e.playRequestPending=!0;let n;try{n=e.video.play()}catch{this.#A(e,t,!1);return}Promise.resolve(n).then(()=>this.#A(e,t,!0),()=>this.#A(e,t,!1))}#A(e,t,n){this.#s||this.#r!==e||e.playRequestToken!==t||(e.playRequestPending=!1,e.playRejectedForCurrentIntent=!n)}#j(e){e&&(e.playRequestToken++,e.playRequestPending=!1)}#M(e){this.#u||this.#s||this.#r!==e||e.status!==`settled`||e.video.paused||(this.#u=!0,this.#l++,this.#N(e,this.#l))}#N(e,t){let n=e.generation,r=e.video,i=0,a=()=>{let a=this.#d;!a||a.generation!==t||a.handle!==i||this.#l!==t||!this.#u||this.#r!==e||e.generation!==n||e.status!==`settled`||r.paused||(this.#d=null,this.#T(e),this.#u&&this.#l===t&&this.#r===e&&!r.paused&&this.#N(e,t))};r.requestVideoFrameCallback?(i=r.requestVideoFrameCallback(a),this.#d={generation:t,kind:`rvfc`,handle:i,video:r}):(i=requestAnimationFrame(a),this.#d={generation:t,kind:`raf`,handle:i,video:r})}#P(){this.#l++,this.#u=!1;let e=this.#d;this.#d=null,e&&(e.kind===`rvfc`?e.video.cancelVideoFrameCallback?.(e.handle):cancelAnimationFrame(e.handle))}},Ln=d(`<img alt="" class="svelte-r30mxh"/>`),Rn=d(`<canvas class="svelte-r30mxh"></canvas> <video playsinline="" preload="auto" class="svelte-r30mxh"></video> <video playsinline="" preload="auto" class="svelte-r30mxh"></video>`,3),zn=d(`<div><!></div>`);function Bn(n,r){V(r,!0);let i=x(r,`loop`,3,!0),a=x(r,`playing`,3,!0),s=x(r,`videoElement`,15),u=x(r,`class`,3,``);L(()=>(r.src,void 0));let d=N(void 0),p=N(void 0),h=N(void 0),v=N(!1),b=null,C=N(null);function T(e){return{...e,keyColor:[...e.keyColor]}}R(()=>{if(b=Mn.create(g(d)),!b){H(v,!0);return}let e=b;s(g(p));let t=new In(g(p),e,g(h),e=>{s(e)});return H(C,t),()=>{t.dispose(),g(C)===t&&H(C,null),e.dispose(),b===e&&(b=null)}}),L(()=>{let e=g(C),t=r.src,n=t.src,i=t.mask?.src;e&&e.switchSource({rawVideoUrl:n,resolvedVideoUrl:an(n),maskUrl:i,chromaKey:_(()=>T(t.chromaKey))})}),L(()=>{g(C)?.setPlaying(a())}),L(()=>{let e=r.src.chromaKey,t={keyColor:[e.keyColor[0],e.keyColor[1],e.keyColor[2]],colorCutoff:e.colorCutoff,colorFeathering:e.colorFeathering,maskFeathering:e.maskFeathering,sharpening:e.sharpening,despill:e.despill,despillLuminanceAdd:e.despillLuminanceAdd};g(C)?.setChromaKey(t)});var E=zn(),D=y(E),O=e=>{var n=l(),i=f(n),a=e=>{var t=l();m(f(t),()=>r.fallback),c(e,t)},s=e=>{var t=Ln();o(()=>I(t,`src`,r.src.fallback.src)),c(e,t)};t(i,e=>{r.fallback?e(a):r.src.fallback&&e(s,1)}),c(e,n)},k=t=>{var n=Rn(),r=f(n);B(r,e=>H(d,e),()=>g(d));var a=e(r,2);a.muted=!0,B(a,e=>H(p,e),()=>g(p));var s=e(a,2);s.muted=!0,B(s,e=>H(h,e),()=>g(h)),o(()=>{a.loop=i(),s.loop=i()}),c(t,n)};t(D,e=>{g(v)?e(O):e(k,-1)}),w(E),o(()=>{S(E,1,`fundus-chroma-key-video ${u()??``}`,`svelte-r30mxh`),K(E,r.style)}),c(n,E),F()}var Vn=d(`<img/>`),Hn=d(`<div class="stage checkerboard svelte-10eps7e"><!></div>`);function Un(e,n){V(n,!0);let r=z(()=>!n.asset.proxy||n.asset.proxy.width===void 0||n.asset.proxy.height===void 0?null:{id:n.asset.id,kind:`image`,src:n.asset.proxy.url,byteSize:n.asset.proxy.fileSize,width:n.asset.proxy.width,height:n.asset.proxy.height});var i=Hn(),a=y(i),s=e=>{vn(e,{get src(){return g(r)},get alt(){return n.asset.id}})},l=e=>{var t=Vn();o(()=>{I(t,`src`,n.asset.rawUrl),I(t,`alt`,n.asset.id)}),c(e,t)};t(a,e=>{g(r)?e(s):e(l,-1)}),w(i),c(e,i),F()}var Wn=d(`<img loading="lazy" class="svelte-gdduef"/>`);function Gn(e,t){V(t,!0);var n=Wn();o(()=>{I(n,`src`,t.asset.proxy?.url??t.asset.rawUrl),I(n,`alt`,t.asset.id)}),c(e,n),F()}var Kn=new Map;function qn(e,t=()=>new window.Image){let n=Kn.get(e);if(n)return n;let r=new Promise((n,r)=>{let i=t();i.onload=()=>n({width:i.naturalWidth,height:i.naturalHeight}),i.onerror=()=>r(Error(`Could not load image dimensions.`)),i.src=e});return Kn.set(e,r),r.catch(()=>{Kn.get(e)===r&&Kn.delete(e)}),r}var Jn=d(`<button> </button>`),Yn=d(`<section class="svelte-1yd7n22"><!> <div class="insets svelte-1yd7n22"></div></section>`),Xn=d(`<section class="svelte-1yd7n22"><!> <div><!> <!></div></section>`),Zn=d(`<section class="svelte-1yd7n22"><!> <!></section>`),Qn=d(`<section class="svelte-1yd7n22"><!> <div class="modes svelte-1yd7n22"></div></section> <!> <!> <section class="svelte-1yd7n22"><!> <div class="insets svelte-1yd7n22"></div></section> <!> <section class="svelte-1yd7n22"><!> <div class="field"><!></div></section> <!>`,1);function $n(n,i){V(i,!0);let s=z(()=>Te.validateParameters(i.parameters)),u=z(()=>g(s).overdraw??fe()),d=z(()=>g(s).compression??{x:0,y:0}),m=N(null),h=null;L(()=>{let e=i.asset.rawUrl;h!==e&&(h=e,H(m,null));let t=!1;return qn(e).then(n=>{!t&&h===e&&H(m,n,!0)},()=>{}),()=>{t=!0}});let _=[{value:`nine`,label:`9-slice`},{value:`three-horizontal`,label:`3-slice horizontal`},{value:`three-vertical`,label:`3-slice vertical`},{value:`one`,label:`No slicing`}],v=[{key:`top`,label:`Top`,icon:`arrow-up`,axis:`y`},{key:`right`,label:`Right`,icon:`arrow-right`,axis:`x`},{key:`bottom`,label:`Bottom`,icon:`arrow-down`,axis:`y`},{key:`left`,label:`Left`,icon:`arrow-left`,axis:`x`}];function b(e,t){let n=Y(t);return e===`x`?n.horizontal:n.vertical}let x=z(()=>g(m)?.width??2**53-1),C=z(()=>g(m)?.height??2**53-1);function T(e){i.onParametersCommit(e)}function E(e){T({...g(s),mode:e})}function D(e){return we(g(s).insets,e,g(x),g(C))}function O(e,t,n){let r=Math.max(0,Math.min(D(e),Math.round(t??0))),a={...g(s),insets:{...g(s).insets,[e]:r}};n?T(a):i.onParametersChange(a)}function A(e){return se(g(u),e,g(x),g(C))}function j(e,t,n){let r=Math.max(0,Math.min(A(e),Math.round(t??0))),a={...g(s),overdraw:{...g(u),[e]:r}};n?T(a):i.onParametersChange(a)}function M(e,t,n){let r=Math.max(0,Math.min(100,Math.round(t??0))),a={...g(d),[e]:r},{compression:o,...c}=g(s),l=a.x===0&&a.y===0?c:{...c,compression:a};n?T(l):i.onParametersChange(l)}function P(e,t){let n={...g(s),pixelRatio:Math.max(1,Math.round(e??1))};t?T(n):i.onParametersChange(n)}function I(e){T({...g(s),preset:e})}var R=Qn(),B=f(R),W=y(B);Lt(W,{children:(e,t)=>{U(),c(e,a(`Mode`))},$$slots:{default:!0}});var G=e(W,2);r(G,21,()=>_,e=>e.value,(e,t)=>{var n=Jn();let r;var i=y(n,!0);w(n),o(()=>{r=S(n,1,`svelte-1yd7n22`,null,r,{on:g(s).mode===g(t).value}),k(i,g(t).label)}),p(`click`,n,()=>E(g(t).value)),c(e,n)}),w(G),w(B);var K=e(B,2),q=n=>{var i=Yn(),o=y(i);Lt(o,{children:(e,t)=>{U(),c(e,a(`Insets (px)`))},$$slots:{default:!0}});var u=e(o,2);r(u,21,()=>v,e=>e.key,(e,n)=>{var r=l(),i=f(r),a=e=>{{let t=e=>{Ee(e,{get name(){return g(n).icon}})},r=z(()=>D(g(n).key));Ft(e,{get label(){return g(n).label},min:0,get max(){return g(r)},rangeFill:!1,get value(){return g(s).insets[g(n).key]},onChange:e=>O(g(n).key,e,!1),onCommit:e=>O(g(n).key,e,!0),icon:t,$$slots:{icon:!0}})}},o=z(()=>b(g(n).axis,g(s).mode));t(i,e=>{g(o)&&e(a)}),c(e,r)}),w(u),w(i),c(n,i)};t(K,e=>{g(s).mode!==`one`&&e(q)});var J=e(K,2),ee=n=>{var r=Xn(),i=y(r);Lt(i,{children:(e,t)=>{U(),c(e,a(`Stretch compression`))},$$slots:{default:!0}});var l=e(i,2);let u;var f=y(l),p=e=>{Ft(e,{label:`X`,min:0,max:100,suffix:`%`,get value(){return g(d).x},onChange:e=>M(`x`,e,!1),onCommit:e=>M(`x`,e,!0)})},m=z(()=>b(`x`,g(s).mode));t(f,e=>{g(m)&&e(p)});var h=e(f,2),_=e=>{Ft(e,{label:`Y`,min:0,max:100,suffix:`%`,get value(){return g(d).y},onChange:e=>M(`y`,e,!1),onCommit:e=>M(`y`,e,!0)})},v=z(()=>b(`y`,g(s).mode));t(h,e=>{g(v)&&e(_)}),w(l),w(r),o(()=>u=S(l,1,`insets svelte-1yd7n22`,null,u,{single:g(s).mode!==`nine`})),c(n,r)};t(J,e=>{g(s).mode!==`one`&&e(ee)});var X=e(J,2),te=y(X);Lt(te,{children:(e,t)=>{U(),c(e,a(`Overdraw (px)`))},$$slots:{default:!0}});var ne=e(te,2);r(ne,21,()=>v,e=>e.key,(e,t)=>{{let n=e=>{Ee(e,{get name(){return g(t).icon}})},r=z(()=>A(g(t).key));Ft(e,{get label(){return g(t).label},min:0,get max(){return g(r)},rangeFill:!1,get value(){return g(u)[g(t).key]},onChange:e=>j(g(t).key,e,!1),onCommit:e=>j(g(t).key,e,!0),icon:n,$$slots:{icon:!0}})}}),w(ne),w(X);var re=e(X,2),ie=t=>{var n=Zn(),r=y(n);Lt(r,{children:(e,t)=>{U(),c(e,a(`Pixel ratio`))},$$slots:{default:!0}}),Ft(e(r,2),{label:`Factor`,min:1,get value(){return g(s).pixelRatio},onChange:e=>P(e,!1),onCommit:e=>P(e,!0),icon:e=>{Ee(e,{name:`ratio`})},$$slots:{icon:!0}}),w(n),c(t,n)};t(re,e=>{g(s).mode===`nine`&&e(ie)});var ae=e(re,2),Z=y(ae);Lt(Z,{children:(e,t)=>{U(),c(e,a(`Output`))},$$slots:{default:!0}});var Q=e(Z,2);Vt(y(Q),{label:`Preset`,caption:`Preset`,get value(){return g(s).preset},get options(){return i.presetNames},onChange:I,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(Q),w(ae),Gt(e(ae,2),{get proxy(){return i.asset.proxy},showDimensions:!0}),c(n,R),F()}s([`click`]);var er=d(`<div class="preview-panel svelte-1mjaycs"><div class="bar svelte-1mjaycs"><span class="size svelte-1mjaycs"> </span> <button class="reset svelte-1mjaycs">Reset</button></div> <div class="stage checkerboard svelte-1mjaycs"><div class="box svelte-1mjaycs"><!> <div class="handle edge-right svelte-1mjaycs" role="separator" aria-label="Drag width" aria-orientation="vertical"></div> <div class="handle edge-bottom svelte-1mjaycs" role="separator" aria-label="Drag height" aria-orientation="horizontal"></div> <div class="handle corner svelte-1mjaycs" role="separator" aria-label="Drag size"></div></div></div></div>`);function tr(t,n){V(n,!0);function r(){return Math.round(Math.min(360,Math.max(80,n.entry.sourceWidth*2)))}function i(){return Math.round(r()*n.entry.sourceHeight/Math.max(1,n.entry.sourceWidth))}let a=N(T(_(()=>r()))),s=N(T(_(()=>i()))),l=N(null),u={pointerX:0,pointerY:0,width:0,height:0};function d(e,t){t.preventDefault(),H(l,e,!0),u={pointerX:t.clientX,pointerY:t.clientY,width:g(a),height:g(s)},Et(t.currentTarget,t)}function f(e){g(l)&&(g(l)!==`y`&&H(a,Math.max(16,Math.round(u.width+(e.clientX-u.pointerX))),!0),g(l)!==`x`&&H(s,Math.max(16,Math.round(u.height+(e.clientY-u.pointerY))),!0))}function m(e){g(l)&&Dt(e.currentTarget,e.pointerId),H(l,null)}function h(){H(a,r(),!0),H(s,i(),!0)}var v=er(),b=y(v),x=y(b),S=y(x);w(x);var C=e(x,2);w(b);var E=e(b,2),D=y(E);let O;var A=y(D);En(A,{get src(){return n.entry},class:`fill`});var j=e(A,2),M=e(j,2),P=e(M,2);w(D),w(E),w(v),o(()=>{k(S,`${g(a)??``} × ${g(s)??``} px`),O=K(D,``,O,{width:`${g(a)??``}px`,height:`${g(s)??``}px`})}),p(`click`,C,h),p(`pointerdown`,j,e=>d(`x`,e)),p(`pointermove`,j,f),p(`pointerup`,j,m),q(`pointercancel`,j,m),p(`pointerdown`,M,e=>d(`y`,e)),p(`pointermove`,M,f),p(`pointerup`,M,m),q(`pointercancel`,M,m),p(`pointerdown`,P,e=>d(`both`,e)),p(`pointermove`,P,f),p(`pointerup`,P,m),q(`pointercancel`,P,m),c(t,v),F()}s([`click`,`pointerdown`,`pointermove`,`pointerup`]);var nr=d(`<div></div>`),rr=d(`<div class="overdraw-band svelte-1jfrg6d"></div>`),ir=d(`<div role="slider" aria-label="Left slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Right slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div>`,1),ar=d(`<div role="slider" aria-label="Top slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Bottom slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div>`,1),or=d(`<div class="canvas svelte-1jfrg6d"><div class="toolbar svelte-1jfrg6d"><button title="Zoom out" class="svelte-1jfrg6d">−</button> <span class="zoom svelte-1jfrg6d"> </span> <button title="Zoom in" class="svelte-1jfrg6d">+</button> <button title="100%">1:1</button> <button>Fit</button> <span class="dims svelte-1jfrg6d"> </span></div> <div role="application" aria-label="Slice canvas — drag to pan, pinch/⌘+scroll to zoom"><div class="image-wrap svelte-1jfrg6d"><img alt="" draggable="false" class="svelte-1jfrg6d"/> <!> <!> <!> <!> <!> <div role="slider" aria-label="Left overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Right overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Top overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Bottom overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <!> <!></div></div></div>`);function sr(n,r){V(r,!0);let i=N(void 0),a=N(void 0),s=N(null),l=null,u=z(()=>Y(r.mode)),d=z(()=>g(u).horizontal),m=z(()=>g(u).vertical);function h(e,t){return g(s)?.target===e&&g(s).side===t}let _=N(`fit`),v=N(1),b=N(0),x=N(0),C=N(0),T=N(0),E=N(!1),D=new Map,O=null;function A(e){return Math.max(.05,Math.min(8,e))}L(()=>{let e=g(i);if(!e)return;let t=new ResizeObserver(()=>{H(C,e.clientWidth,!0),H(T,e.clientHeight,!0)});return t.observe(e),()=>t.disconnect()}),L(()=>{if(g(_)===`free`||r.width===0||r.height===0||g(C)===0||g(T)===0)return;let e=A(Math.min((g(C)-32)/r.width,(g(T)-32)/r.height));j(g(_)===`one`?1:e)});function j(e){H(v,e,!0),H(b,(g(C)-r.width*e)/2),H(x,(g(T)-r.height*e)/2)}function M(e,t){if(!g(i))return{x:e,y:t};let n=g(i).getBoundingClientRect();return{x:e-n.left-g(i).clientLeft,y:t-n.top-g(i).clientTop}}function P(e,t,n){let r=A(e);H(b,t-(t-g(b))*(r/g(v))),H(x,n-(n-g(x))*(r/g(v))),H(v,r,!0),H(_,`free`)}function R(e,t,n){return Math.max(t,Math.min(n,Math.round(e)))}function U(){H(_,`fit`)}function W(){H(_,`one`)}function G(e){P(g(v)*e,g(C)/2,g(T)/2)}function J(){let[e,t]=[...D.values()];return{distance:Math.hypot(e.x-t.x,e.y-t.y),midX:(e.x+t.x)/2,midY:(e.y+t.y)/2}}function ee(e){try{g(i)&&Et(g(i),e)}catch{}D.set(e.pointerId,{x:e.clientX,y:e.clientY}),D.size===2?O=J():D.size===1&&H(E,!0)}function X(e){let t=D.get(e.pointerId);if(t)if(D.set(e.pointerId,{x:e.clientX,y:e.clientY}),D.size>=2&&O){let e=J(),t=M(O.midX,O.midY);P(g(v)*(e.distance/O.distance),t.x,t.y),H(b,g(b)+(e.midX-O.midX)),H(x,g(x)+(e.midY-O.midY)),O=e}else D.size===1&&(H(b,g(b)+(e.clientX-t.x)),H(x,g(x)+(e.clientY-t.y)),H(_,`free`))}function te(e){D.delete(e.pointerId),D.size<2&&(O=null),D.size===0&&H(E,!1)}function ne(e){if(e.preventDefault(),e.ctrlKey||e.metaKey){let t=M(e.clientX,e.clientY);P(g(v)*Math.exp(-e.deltaY*.01),t.x,t.y)}else H(b,g(b)-e.deltaX),H(x,g(x)-e.deltaY),H(_,`free`)}function re(e,t,n){n.preventDefault(),n.stopPropagation(),H(s,{target:e,side:t},!0),l=null,Et(n.currentTarget,n)}function ie(e){if(!g(s)||!g(a))return;let t=g(a).getBoundingClientRect(),n=(e.clientX-t.left)/g(v),i=(e.clientY-t.top)/g(v),{target:o,side:c}=g(s),l={...o===`inset`?r.insets:r.overdraw};c===`left`?l.left=R(n,0,Q(o,`left`)):c===`right`?l.right=R(r.width-n,0,Q(o,`right`)):c===`top`?l.top=R(i,0,Q(o,`top`)):c===`bottom`&&(l.bottom=R(r.height-i,0,Q(o,`bottom`))),ae(o,l)}function ae(e,t){l={target:e,value:t},e===`inset`?r.onChange(t):r.onOverdrawChange(t)}function Z(e){let t=g(s)!==null;g(s)&&Dt(e.currentTarget,e.pointerId),H(s,null),t&&l&&r.onCommit(l.target,l.value),l=null}function Q(e,t){let n=e===`inset`?r.insets:r.overdraw;return e===`inset`?we(n,t,r.width,r.height):se(n,t,r.width,r.height)}function oe(e,t,n){let i=e===`inset`?r.insets:r.overdraw,a={...i};a[t]=R(i[t]+n,0,Q(e,t)),a[t]!==i[t]&&(ae(e,a),r.onCommit(e,a),l=null)}function ce(e,t,n,r){let i=r.shiftKey?10:1,a=n===`x`?`ArrowRight`:`ArrowUp`,o=n===`x`?`ArrowLeft`:`ArrowDown`;if(r.key===a)oe(e,t,i);else if(r.key===o)oe(e,t,-i);else return;r.preventDefault()}var le=or(),ue=y(le),de=y(ue),fe=e(de,2),pe=y(fe);w(fe);var me=e(fe,2),he=e(me,2);let ge;var _e=e(he,2);let ve;var ye=e(_e,2),$=y(ye);w(ye),w(ue);var be=e(ue,2);let xe;var Se=y(be);let Ce;var Te=y(Se),Ee=e(Te,2),De=e=>{var t=nr();let n,i;o(()=>{n=S(t,1,`center-rect svelte-1jfrg6d`,null,n,{"side-edges":!g(d),"cap-edges":!g(m)}),i=K(t,``,i,{left:`${(g(d)?r.insets.left:0)*g(v)}px`,top:`${(g(m)?r.insets.top:0)*g(v)}px`,right:`${(g(d)?r.insets.right:0)*g(v)}px`,bottom:`${(g(m)?r.insets.bottom:0)*g(v)}px`})}),c(e,t)};t(Ee,e=>{(g(d)||g(m))&&e(De)});var Oe=e(Ee,2),ke=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{left:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.left*g(v)}px`})),c(e,t)};t(Oe,e=>{r.overdraw.left>0&&e(ke)});var Ae=e(Oe,2),je=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{right:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.right*g(v)}px`})),c(e,t)};t(Ae,e=>{r.overdraw.right>0&&e(je)});var Me=e(Ae,2),Ne=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{top:`0`,left:`${r.overdraw.left*g(v)}px`,right:`${r.overdraw.right*g(v)}px`,height:`${r.overdraw.top*g(v)}px`})),c(e,t)};t(Me,e=>{r.overdraw.top>0&&e(Ne)});var Pe=e(Me,2),Fe=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{bottom:`0`,left:`${r.overdraw.left*g(v)}px`,right:`${r.overdraw.right*g(v)}px`,height:`${r.overdraw.bottom*g(v)}px`})),c(e,t)};t(Pe,e=>{r.overdraw.bottom>0&&e(Fe)});var Ie=e(Pe,2);let Le;I(Ie,`aria-valuemin`,0);let Re;var ze=y(Ie),Be=y(ze,!0);w(ze),w(Ie);var Ve=e(Ie,2);let He;I(Ve,`aria-valuemin`,0);let Ue;var We=y(Ve),Ge=y(We,!0);w(We),w(Ve);var Ke=e(Ve,2);let qe;I(Ke,`aria-valuemin`,0);let Je;var Ye=y(Ke),Xe=y(Ye,!0);w(Ye),w(Ke);var Ze=e(Ke,2);let Qe;I(Ze,`aria-valuemin`,0);let $e;var et=y(Ze),tt=y(et,!0);w(et),w(Ze);var nt=e(Ze,2),rt=t=>{var n=ir(),i=f(n);let a;I(i,`aria-valuemin`,0);let s;var l=y(i),u=y(l,!0);w(l),w(i);var d=e(i,2);let m;I(d,`aria-valuemin`,0);let _;var b=y(d),x=y(b,!0);w(b),w(d),o((e,t,n,o)=>{a=S(i,1,`line v svelte-1jfrg6d`,null,a,e),I(i,`aria-valuenow`,r.insets.left),I(i,`aria-valuemax`,t),s=K(i,``,s,{left:`${r.insets.left*g(v)}px`}),k(u,r.insets.left),m=S(d,1,`line v svelte-1jfrg6d`,null,m,n),I(d,`aria-valuenow`,r.insets.right),I(d,`aria-valuemax`,o),_=K(d,``,_,{left:`${(r.width-r.insets.right)*g(v)}px`}),k(x,r.insets.right)},[()=>({active:h(`inset`,`left`)}),()=>Q(`inset`,`left`),()=>({active:h(`inset`,`right`)}),()=>Q(`inset`,`right`)]),p(`pointerdown`,i,e=>re(`inset`,`left`,e)),p(`pointermove`,i,ie),p(`pointerup`,i,Z),q(`pointercancel`,i,Z),p(`keydown`,i,e=>ce(`inset`,`left`,`x`,e)),p(`pointerdown`,d,e=>re(`inset`,`right`,e)),p(`pointermove`,d,ie),p(`pointerup`,d,Z),q(`pointercancel`,d,Z),p(`keydown`,d,e=>ce(`inset`,`right`,`x`,e)),c(t,n)};t(nt,e=>{g(d)&&e(rt)});var it=e(nt,2),at=t=>{var n=ar(),i=f(n);let a;I(i,`aria-valuemin`,0);let s;var l=y(i),u=y(l,!0);w(l),w(i);var d=e(i,2);let m;I(d,`aria-valuemin`,0);let _;var b=y(d),x=y(b,!0);w(b),w(d),o((e,t,n,o)=>{a=S(i,1,`line h svelte-1jfrg6d`,null,a,e),I(i,`aria-valuenow`,r.insets.top),I(i,`aria-valuemax`,t),s=K(i,``,s,{top:`${r.insets.top*g(v)}px`}),k(u,r.insets.top),m=S(d,1,`line h svelte-1jfrg6d`,null,m,n),I(d,`aria-valuenow`,r.insets.bottom),I(d,`aria-valuemax`,o),_=K(d,``,_,{top:`${(r.height-r.insets.bottom)*g(v)}px`}),k(x,r.insets.bottom)},[()=>({active:h(`inset`,`top`)}),()=>Q(`inset`,`top`),()=>({active:h(`inset`,`bottom`)}),()=>Q(`inset`,`bottom`)]),p(`pointerdown`,i,e=>re(`inset`,`top`,e)),p(`pointermove`,i,ie),p(`pointerup`,i,Z),q(`pointercancel`,i,Z),p(`keydown`,i,e=>ce(`inset`,`top`,`y`,e)),p(`pointerdown`,d,e=>re(`inset`,`bottom`,e)),p(`pointermove`,d,ie),p(`pointerup`,d,Z),q(`pointercancel`,d,Z),p(`keydown`,d,e=>ce(`inset`,`bottom`,`y`,e)),c(t,n)};t(it,e=>{g(m)&&e(at)}),w(Se),B(Se,e=>H(a,e),()=>g(a)),w(be),B(be,e=>H(i,e),()=>g(i)),w(le),o((e,t,n,i,a,o,s,c,l)=>{k(pe,`${e??``}%`),ge=S(he,1,`svelte-1jfrg6d`,null,ge,{active:g(_)===`one`}),ve=S(_e,1,`svelte-1jfrg6d`,null,ve,{active:g(_)===`fit`}),k($,`${r.width??``} × ${r.height??``} px`),xe=S(be,1,`viewport checkerboard svelte-1jfrg6d`,null,xe,{panning:g(E)}),Ce=K(Se,``,Ce,{width:`${r.width*g(v)}px`,height:`${r.height*g(v)}px`,transform:`translate(${g(b)??``}px, ${g(x)??``}px)`}),I(Te,`src`,r.src),Le=S(Ie,1,`line v overdraw-line svelte-1jfrg6d`,null,Le,t),I(Ie,`aria-valuenow`,r.overdraw.left),I(Ie,`aria-valuemax`,n),Re=K(Ie,``,Re,{left:`${r.overdraw.left*g(v)}px`}),k(Be,r.overdraw.left),He=S(Ve,1,`line v overdraw-line svelte-1jfrg6d`,null,He,i),I(Ve,`aria-valuenow`,r.overdraw.right),I(Ve,`aria-valuemax`,a),Ue=K(Ve,``,Ue,{left:`${(r.width-r.overdraw.right)*g(v)}px`}),k(Ge,r.overdraw.right),qe=S(Ke,1,`line h overdraw-line svelte-1jfrg6d`,null,qe,o),I(Ke,`aria-valuenow`,r.overdraw.top),I(Ke,`aria-valuemax`,s),Je=K(Ke,``,Je,{top:`${r.overdraw.top*g(v)}px`}),k(Xe,r.overdraw.top),Qe=S(Ze,1,`line h overdraw-line svelte-1jfrg6d`,null,Qe,c),I(Ze,`aria-valuenow`,r.overdraw.bottom),I(Ze,`aria-valuemax`,l),$e=K(Ze,``,$e,{top:`${(r.height-r.overdraw.bottom)*g(v)}px`}),k(tt,r.overdraw.bottom)},[()=>Math.round(g(v)*100),()=>({active:h(`overdraw`,`left`)}),()=>Q(`overdraw`,`left`),()=>({active:h(`overdraw`,`right`)}),()=>Q(`overdraw`,`right`),()=>({active:h(`overdraw`,`top`)}),()=>Q(`overdraw`,`top`),()=>({active:h(`overdraw`,`bottom`)}),()=>Q(`overdraw`,`bottom`)]),p(`click`,de,()=>G(1/1.25)),p(`click`,me,()=>G(1.25)),p(`click`,he,W),p(`click`,_e,U),p(`pointerdown`,be,ee),p(`pointermove`,be,X),p(`pointerup`,be,te),q(`pointercancel`,be,te),q(`wheel`,be,ne),p(`pointerdown`,Ie,e=>re(`overdraw`,`left`,e)),p(`pointermove`,Ie,ie),p(`pointerup`,Ie,Z),q(`pointercancel`,Ie,Z),p(`keydown`,Ie,e=>ce(`overdraw`,`left`,`x`,e)),p(`pointerdown`,Ve,e=>re(`overdraw`,`right`,e)),p(`pointermove`,Ve,ie),p(`pointerup`,Ve,Z),q(`pointercancel`,Ve,Z),p(`keydown`,Ve,e=>ce(`overdraw`,`right`,`x`,e)),p(`pointerdown`,Ke,e=>re(`overdraw`,`top`,e)),p(`pointermove`,Ke,ie),p(`pointerup`,Ke,Z),q(`pointercancel`,Ke,Z),p(`keydown`,Ke,e=>ce(`overdraw`,`top`,`y`,e)),p(`pointerdown`,Ze,e=>re(`overdraw`,`bottom`,e)),p(`pointermove`,Ze,ie),p(`pointerup`,Ze,Z),q(`pointercancel`,Ze,Z),p(`keydown`,Ze,e=>ce(`overdraw`,`bottom`,`y`,e)),c(n,le),F()}s([`click`,`pointerdown`,`pointermove`,`pointerup`,`keydown`]);function cr(e){return Number.isFinite(e)?Math.round(Math.min(80,Math.max(20,e))*10)/10:50}function lr(e,t,n){return cr((e-t)/Math.max(1,n)*100)}var ur=d(`<div class="empty error svelte-1ea2lvt"> </div>`),dr=d(`<div class="empty svelte-1ea2lvt">Loading image…</div>`),fr=d(`<div><div class="pane slicing-pane svelte-1ea2lvt"><!></div> <div role="separator" aria-label="Resize slicing and preview panes" aria-orientation="vertical" tabindex="0" title="Drag to resize slicing and preview panes"></div> <div class="pane preview-pane svelte-1ea2lvt"><!></div></div>`),pr=d(`<div class="editor svelte-1ea2lvt"><!></div>`);function mr(n,r){V(r,!0);let i=N(null),a=N(null),s=null,l=N(void 0),u=N(!1),d=`fundus:slice-editor-split`;function f(){try{return cr(Number.parseFloat(localStorage.getItem(d)??``))}catch{return 50}}let m=N(T(f()));L(()=>{try{localStorage.setItem(d,String(g(m)))}catch{}});function h(e){if(!g(l))return;let t=g(l).getBoundingClientRect();H(m,lr(e,t.left,t.width),!0)}function _(e){e.preventDefault(),H(u,!0),h(e.clientX),Et(e.currentTarget,e)}function v(e){g(u)&&h(e.clientX)}function b(e){g(u)&&Dt(e.currentTarget,e.pointerId),H(u,!1)}function x(e){let t=e.shiftKey?10:2;if(e.key===`ArrowLeft`)H(m,cr(g(m)-t),!0);else if(e.key===`ArrowRight`)H(m,cr(g(m)+t),!0);else if(e.key===`Home`)H(m,20,!0);else if(e.key===`End`)H(m,80,!0);else return;e.preventDefault()}L(()=>{let e=r.asset.rawUrl;s!==e&&(s=e,H(i,null),H(a,null));let t=!1;return qn(e).then(n=>{!t&&s===e&&H(i,n,!0)},n=>{!t&&s===e&&H(a,n instanceof Error?n.message:String(n),!0)}),()=>{t=!0}});let C=z(()=>{try{return Te.validateParameters(r.parameters)}catch{return null}}),E=z(()=>{if(!g(C)||!g(i))return null;let e=r.asset.proxy?.width??g(i).width,t=r.asset.proxy?.height??g(i).height;return{id:r.asset.id,kind:`slice`,src:r.asset.proxy?.url??r.asset.rawUrl,byteSize:r.asset.proxy?.fileSize??0,slicing:{mode:g(C).mode,insets:Se({...g(C),width:e,height:t}),pixelRatio:g(C).pixelRatio,...g(C).overdraw?{overdraw:g(C).overdraw}:{}},sourceWidth:e,sourceHeight:t}});var D=pr(),O=y(D),j=e=>{var t=ur(),n=y(t,!0);w(t),o(()=>k(n,g(a))),c(e,t)},M=e=>{c(e,dr())},P=t=>{var n=fr();let a,s;var d=y(n),f=y(d);{let e=z(()=>g(C).overdraw??fe());sr(f,{get src(){return r.asset.rawUrl},get width(){return g(i).width},get height(){return g(i).height},get mode(){return g(C).mode},get insets(){return g(C).insets},get overdraw(){return g(e)},onChange:e=>r.onParametersChange({...g(C),insets:e}),onOverdrawChange:e=>r.onParametersChange({...g(C),overdraw:e}),onCommit:(e,t)=>r.onParametersCommit(e===`inset`?{...g(C),insets:t}:{...g(C),overdraw:t})})}w(d);var h=e(d,2);let T;var D=e(h,2);A(y(D),()=>r.asset.id,e=>{tr(e,{get entry(){return g(E)}})}),w(D),w(n),B(n,e=>H(l,e),()=>g(l)),o(e=>{a=S(n,1,`split-layout svelte-1ea2lvt`,null,a,{resizing:g(u)}),s=K(n,``,s,{"--slice-position":`${g(m)}%`}),T=S(h,1,`splitter svelte-1ea2lvt`,null,T,{active:g(u)}),I(h,`aria-valuemin`,20),I(h,`aria-valuemax`,80),I(h,`aria-valuenow`,e)},[()=>Math.round(g(m))]),p(`pointerdown`,h,_),p(`pointermove`,h,v),p(`pointerup`,h,b),q(`pointercancel`,h,b),q(`lostpointercapture`,h,()=>H(u,!1)),p(`keydown`,h,x),c(t,n)};t(O,e=>{g(a)?e(j):!g(C)||!g(i)?e(M,1):g(E)&&e(P,2)}),w(D),c(n,D),F()}s([`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var hr=d(`<div class="field svelte-ij1927"><!></div>`),gr=d(`<section class="svelte-ij1927"><!> <div class="field svelte-ij1927"><!></div> <!></section> <!>`,1);function _r(n,r){V(r,!0);let i=z(()=>te.validateParameters(r.parameters)),o=z(()=>r.presetCapabilities[g(i).preset]?.maxWidth!==!1);function s(e){r.onParametersCommit(e)}function l(e){if(r.presetCapabilities[e]?.maxWidth===!1){let{maxWidth:t,...n}=g(i);s({...n,preset:e});return}s({...g(i),preset:e})}function u(e,t){let n=Me(g(i),e);t?s(n):r.onParametersChange(n)}var d=gr(),p=f(d),m=y(p);Lt(m,{children:(e,t)=>{U(),c(e,a(`Video`))},$$slots:{default:!0}});var h=e(m,2);Vt(y(h),{label:`Preset`,caption:`Preset`,get value(){return g(i).preset},get options(){return r.presetNames},onChange:l,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(h);var _=e(h,2),v=e=>{var t=hr(),n=y(t);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(i).maxWidth??null);Ft(n,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>u(e,!1),onCommit:e=>u(e,!0),icon:e,$$slots:{icon:!0}})}w(t),c(e,t)};t(_,e=>{g(o)&&e(v)}),w(p),Gt(e(p,2),{get proxy(){return r.asset.proxy},showDimensions:!0,showDuration:!0}),c(n,d),F()}var vr=d(`<div class="preview-column svelte-qls820"><div class="video-frame svelte-qls820"><!></div> <!></div>`),yr=d(`<p class="svelte-qls820">No proxy yet — add the asset to a manifest to process it.</p>`),br=d(`<div class="stage checkerboard svelte-qls820"><!></div>`);function xr(n,r){V(r,!0);let i=N(void 0),a=z(()=>!r.asset.proxy||r.asset.proxy.width===void 0||r.asset.proxy.height===void 0||r.asset.proxy.durationMs===void 0?null:{id:r.asset.id,kind:`video`,src:r.asset.proxy.url,byteSize:r.asset.proxy.fileSize,width:r.asset.proxy.width,height:r.asset.proxy.height,durationMs:r.asset.proxy.durationMs});var s=br(),l=y(s),u=t=>{var n=vr(),r=y(n);let s;A(y(r),()=>g(a).src,e=>{On(e,{get src(){return g(a)},loop:!0,get videoElement(){return g(i)},set videoElement(e){H(i,e,!0)}})}),w(r),st(e(r,2),{get media(){return g(i)},showScrub:!0,showVolume:!0}),w(n),o(()=>s=K(r,``,s,{"aspect-ratio":`${g(a).width??``} / ${g(a).height??``}`})),c(t,n)},d=e=>{c(e,yr())};t(l,e=>{g(a)?e(u):e(d,-1)}),w(s),c(n,s),F()}var Sr=d(`<video playsinline="" preload="metadata" class="svelte-ejgo9x"></video>`,2);function Cr(e,t){V(t,!0);function n(e){e.currentTime=0,e.play().catch(()=>{})}function r(e){e.pause(),e.currentTime=0}var i=Sr();i.muted=!0,o(()=>I(i,`src`,t.asset.proxy?.url??t.asset.rawUrl)),q(`pointerenter`,i,e=>n(e.currentTarget)),q(`pointerleave`,i,e=>r(e.currentTarget)),c(e,i),F()}var wr=d(`<span class="caption svelte-56kutb"> </span>`),Tr=d(`<img class="preview svelte-56kutb" alt=""/>`),Er=d(`<span class="missing-preview svelte-56kutb" title="References an unknown asset">!</span>`),Dr=d(`<span class="id svelte-56kutb"> </span>`),Or=d(`<span class="id dangling svelte-56kutb" title="References an unknown asset"> </span>`),kr=d(`<span class="placeholder svelte-56kutb"> </span>`),Ar=d(`<button class="clear svelte-56kutb">×</button>`),jr=d(`<p class="hint svelte-56kutb"> </p>`),Mr=d(`<button><img class="thumbnail svelte-56kutb" alt=""/> <span class="id svelte-56kutb"> </span></button>`),Nr=d(`<div class="dropdown svelte-56kutb"><!></div>`),Pr=d(`<div class="picker svelte-56kutb"><!> <div class="reference-input control svelte-56kutb"><button><span class="preview-slot svelte-56kutb"><!></span> <!></button> <!> <!></div></div>`);function Fr(n,i){V(i,!0);let a=N(!1),s=z(()=>($.state?.assets??[]).filter(e=>i.expectedTypes.includes(e.type)&&e.id!==i.excludeAssetId)),u=z(()=>i.value?$.assetById(i.value.$asset):null);function d(e){H(a,!1),i.onChange({$asset:e})}function m(){H(a,!1),i.onChange(void 0)}var h=Pr(),_=y(h),v=e=>{var t=wr(),n=y(t,!0);w(t),o(()=>k(n,i.caption)),c(e,t)};t(_,e=>{i.caption&&e(v)});var b=e(_,2),x=y(b);let C;var T=y(x),E=y(T),D=e=>{var t=Tr();o(()=>I(t,`src`,g(u).rawUrl)),c(e,t)},O=e=>{c(e,Er())};t(E,e=>{i.value&&g(u)?e(D):i.value&&e(O,1)}),w(T);var A=e(T,2),j=e=>{var n=l(),r=f(n),a=e=>{var t=Dr(),n=y(t,!0);w(t),o(()=>k(n,g(u).id)),c(e,t)},s=e=>{var t=Or(),n=y(t,!0);w(t),o(()=>k(n,i.value.$asset)),c(e,t)};t(r,e=>{g(u)?e(a):e(s,-1)}),c(e,n)},M=e=>{var t=kr(),n=y(t);w(t),o(e=>k(n,`Select ${e??``}...`),[()=>i.expectedTypes.join(`/`)]),c(e,t)};t(A,e=>{i.value?e(j):e(M,-1)}),w(x);var P=e(x,2),L=e=>{var t=Ar();o(()=>I(t,`title`,`Clear ${i.label??``}`)),p(`click`,t,m),c(e,t)};t(P,e=>{i.value&&e(L)});var R=e(P,2),B=n=>{var a=Nr(),u=y(a),m=e=>{var t=jr(),n=y(t);w(t),o(e=>k(n,`No ${e??``} assets in the library.`),[()=>i.expectedTypes.join(`/`)]),c(e,t)},h=t=>{var n=l();r(f(n),17,()=>g(s),e=>e.id,(t,n)=>{var r=Mr();let a;var s=y(r),l=e(s,2),u=y(l,!0);w(l),w(r),o(()=>{a=S(r,1,`option svelte-56kutb`,null,a,{selected:i.value?.$asset===g(n).id}),I(s,`src`,g(n).rawUrl),k(u,g(n).id)}),p(`click`,r,()=>d(g(n).id)),c(t,r)}),c(t,n)};t(u,e=>{g(s).length===0?e(m):e(h,-1)}),w(a),c(n,a)};t(R,e=>{g(a)&&e(B)}),w(b),w(h),o(()=>{C=S(x,1,`current svelte-56kutb`,null,C,{empty:!i.value}),I(x,`title`,i.value?`Change ${i.label}`:`Select ${i.label}`)}),p(`click`,x,()=>H(a,!g(a))),c(n,h),F()}s([`click`]);var Ir=d(`<span class="caption svelte-gjs979"> </span>`),Lr=d(`<div class="color-field svelte-gjs979"><!> <div class="color-input control svelte-gjs979"><span class="swatch-slot svelte-gjs979"><input class="swatch svelte-gjs979" type="color" title="Open color picker"/></span> <input class="hex-input svelte-gjs979" type="text" maxlength="7" spellcheck="false"/></div></div>`);function Rr(n,r){V(r,!0);let i=N(null),a=/^#[0-9a-f]{6}$/i;function s(e){let t=e.startsWith(`#`)?e:`#${e}`;return a.test(t)?t.toUpperCase():null}function l(e){let t=e.currentTarget.value.toUpperCase();H(i,t,!0),r.onChange?.(t)}function u(e){let t=e.currentTarget.value.toUpperCase();H(i,t,!0),r.onCommit(t)}function d(e){H(i,e.currentTarget.value,!0);let t=s(g(i));t&&r.onChange?.(t)}function f(){let e=s(g(i)??r.value);e&&r.onCommit(e),H(i,null)}function m(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(H(i,null),e.currentTarget.value=r.value,e.currentTarget.blur())}var h=Lr(),_=y(h),v=e=>{var t=Ir(),n=y(t,!0);w(t),o(()=>k(n,r.caption)),c(e,t)};t(_,e=>{r.caption&&e(v)});var b=e(_,2),x=y(b),S=y(x);E(S),w(x);var C=e(x,2);E(C),w(b),w(h),o(()=>{O(S,r.value),I(S,`aria-label`,`${r.label} color picker`),O(C,g(i)??r.value),I(C,`aria-label`,`${r.label} hex value`)}),p(`input`,S,l),p(`change`,S,u),q(`focus`,C,()=>H(i,r.value,!0)),p(`input`,C,d),q(`blur`,C,f),p(`keydown`,C,m),c(n,h),F()}s([`input`,`change`,`keydown`]);var zr=d(`<div class="field svelte-rsjkek"><!></div>`),Br=d(`<section class="svelte-rsjkek"><!> <div class="field svelte-rsjkek"><!></div> <!></section> <section class="svelte-rsjkek"><!> <div class="field svelte-rsjkek"><!></div> <!></section> <section class="svelte-rsjkek"><!> <!> <!></section> <!>`,1);function Vr(n,i){V(i,!0);let o=z(()=>ce.validateParameters(i.parameters)),s=z(()=>i.presetCapabilities[g(o).preset]?.maxWidth!==!1);function l(e){i.onParametersCommit(e)}function u(e){if(i.presetCapabilities[e]?.maxWidth===!1){let{maxWidth:t,...n}=g(o);l({...n,preset:e});return}l({...g(o),preset:e})}function d(e,t){let n=Me(g(o),e);t?l(n):i.onParametersChange(n)}function p(e){return{...g(o),chromaKey:e}}let m=[{key:`colorCutoff`,label:`Color cutoff`,icon:`cutoff`,min:0,max:.6,step:.005},{key:`colorFeathering`,label:`Color feathering`,icon:`color-feather`,min:0,max:.8,step:.005},{key:`maskFeathering`,label:`Mask feathering`,icon:`mask-feather`,min:0,max:1,step:.01},{key:`sharpening`,label:`Sharpening`,icon:`sharpen`,min:0,max:1,step:.01},{key:`despill`,label:`Despill`,icon:`despill`,min:0,max:1,step:.01},{key:`despillLuminanceAdd`,label:`Despill lum. add`,icon:`despill-lum`,min:0,max:1,step:.01}];function h(e,t,n){let r=p({...g(o).chromaKey,[e]:t});n?l(r):i.onParametersChange(r)}function _(e){return Math.round(Math.min(1,Math.max(0,e))*255).toString(16).padStart(2,`0`)}function v(e){return`#${_(e[0])}${_(e[1])}${_(e[2])}`}function b(e){let t=parseInt(e.slice(1),16);return[(t>>16&255)/255,(t>>8&255)/255,(t&255)/255]}function x(e,t){let n=p({...g(o).chromaKey,keyColor:b(e)});t?l(n):i.onParametersChange(n)}function S(e,t){let{[e]:n,...r}=g(o);l(t?{...r,[e]:t}:r)}var C=Br(),T=f(C),E=y(T);Lt(E,{children:(e,t)=>{U(),c(e,a(`Video`))},$$slots:{default:!0}});var D=e(E,2);Vt(y(D),{label:`Preset`,caption:`Preset`,get value(){return g(o).preset},get options(){return i.presetNames},onChange:u,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(D);var O=e(D,2),k=e=>{var t=zr(),n=y(t);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(o).maxWidth??null);Ft(n,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>d(e,!1),onCommit:e=>d(e,!0),icon:e,$$slots:{icon:!0}})}w(t),c(e,t)};t(O,e=>{g(s)&&e(k)}),w(T);var A=e(T,2),j=y(A);Lt(j,{children:(e,t)=>{U(),c(e,a(`Chroma key`))},$$slots:{default:!0}});var M=e(j,2),N=y(M);{let e=z(()=>v(g(o).chromaKey.keyColor));Rr(N,{label:`Key color`,caption:`Key color`,get value(){return g(e)},onChange:e=>x(e,!1),onCommit:e=>x(e,!0)})}w(M),r(e(M,2),17,()=>m,e=>e.key,(e,t)=>{var n=zr();Ft(y(n),{get label(){return g(t).label},get caption(){return g(t).label},get min(){return g(t).min},get max(){return g(t).max},get step(){return g(t).step},get value(){return g(o).chromaKey[g(t).key]},onChange:e=>h(g(t).key,e??g(t).min,!1),onCommit:e=>h(g(t).key,e??g(t).min,!0),icon:e=>{Ee(e,{get name(){return g(t).icon}})},$$slots:{icon:!0}}),w(n),c(e,n)}),w(A);var P=e(A,2),I=y(P);Lt(I,{children:(e,t)=>{U(),c(e,a(`References`))},$$slots:{default:!0}});var L=e(I,2);Fr(L,{label:`Mask`,caption:`Mask`,get value(){return g(o).mask},expectedTypes:[`image`],get excludeAssetId(){return i.asset.id},onChange:e=>S(`mask`,e)}),Fr(e(L,2),{label:`Fallback`,caption:`Fallback`,get value(){return g(o).fallback},expectedTypes:[`image`],get excludeAssetId(){return i.asset.id},onChange:e=>S(`fallback`,e)}),w(P),Gt(e(P,2),{get proxy(){return i.asset.proxy},showDimensions:!0,showDuration:!0}),c(n,C),F()}var Hr=d(`<div class="preview-column svelte-1y3xro5"><div class="compare-row svelte-1y3xro5"><figure class="svelte-1y3xro5"><figcaption class="svelte-1y3xro5">Input</figcaption> <div class="video-frame svelte-1y3xro5"><!></div></figure> <figure class="svelte-1y3xro5"><figcaption class="svelte-1y3xro5">Keyed</figcaption> <div class="video-frame checkerboard svelte-1y3xro5"><!></div></figure></div> <!></div>`),Ur=d(`<p class="svelte-1y3xro5">No proxy yet — add the asset to a manifest to process it.</p>`),Wr=d(`<div class="stage svelte-1y3xro5"><!></div>`);function Gr(n,r){V(r,!0);let i=N(void 0),a=N(void 0);function s(e){if(!e)return;let t=$.assetById(e);if(!(!t?.proxy||t.proxy.width===void 0||t.proxy.height===void 0))return{id:e,kind:`image`,src:t.proxy.url,byteSize:t.proxy.fileSize,width:t.proxy.width,height:t.proxy.height}}let l=z(()=>{if(!r.asset.proxy||r.asset.proxy.width===void 0||r.asset.proxy.height===void 0||r.asset.proxy.durationMs===void 0)return null;try{let e=ce.validateParameters(r.parameters),t=s(e.mask?.$asset),n=s(e.fallback?.$asset);return{id:r.asset.id,kind:`chroma-key-video`,src:r.asset.proxy.url,byteSize:r.asset.proxy.fileSize,width:r.asset.proxy.width,height:r.asset.proxy.height,durationMs:r.asset.proxy.durationMs,chromaKey:e.chromaKey,...t?{mask:t}:{},...n?{fallback:n}:{}}}catch{return null}}),u=z(()=>g(l)?{id:g(l).id,kind:`video`,src:g(l).src,byteSize:g(l).byteSize,width:g(l).width,height:g(l).height,durationMs:g(l).durationMs}:null);L(()=>{let e=g(i),t=g(a);if(!e||!t)return;function n(){Math.abs(t.currentTime-e.currentTime)>.25&&(t.currentTime=e.currentTime)}function r(){n(),t.play().catch(()=>{})}function o(){t.pause(),t.currentTime=e.currentTime}function s(){t.currentTime=e.currentTime}return e.addEventListener(`play`,r),e.addEventListener(`playing`,r),e.addEventListener(`pause`,o),e.addEventListener(`ended`,o),e.addEventListener(`seeked`,s),e.addEventListener(`timeupdate`,n),s(),e.paused||t.play().catch(()=>{}),()=>{e.removeEventListener(`play`,r),e.removeEventListener(`playing`,r),e.removeEventListener(`pause`,o),e.removeEventListener(`ended`,o),e.removeEventListener(`seeked`,s),e.removeEventListener(`timeupdate`,n)}});var d=Wr(),f=y(d),p=t=>{var n=Hr(),r=y(n),s=y(r),d=e(y(s),2);let f;A(y(d),()=>g(u).src,e=>{On(e,{get src(){return g(u)},loop:!0,get videoElement(){return g(a)},set videoElement(e){H(a,e,!0)}})}),w(d),w(s);var p=e(s,2),m=e(y(p),2);let h;A(y(m),()=>`${g(l).src}|${g(l).mask?.src??``}`,e=>{Bn(e,{get src(){return g(l)},get videoElement(){return g(i)},set videoElement(e){H(i,e,!0)}})}),w(m),w(p),w(r),st(e(r,2),{get media(){return g(i)},showScrub:!0,showVolume:!1}),w(n),o(()=>{f=K(d,``,f,{"aspect-ratio":`${g(u).width??``} / ${g(u).height??``}`}),h=K(m,``,h,{"aspect-ratio":`${g(l).width??``} / ${g(l).height??``}`})}),c(t,n)},m=e=>{c(e,Ur())};t(f,e=>{g(l)&&g(u)?e(p):e(m,-1)}),w(d),c(n,d),F()}var Kr=d(`<section class="svelte-3jblpy"><!> <div class="field svelte-3jblpy"><!></div></section> <!>`,1);function qr(t,n){V(n,!0);let r=z(()=>X.validateParameters(n.parameters));function i(e){let t={...g(r),preset:e};n.onParametersCommit(t)}var o=Kr(),s=f(o),l=y(s);Lt(l,{children:(e,t)=>{U(),c(e,a(`Audio`))},$$slots:{default:!0}});var u=e(l,2);Vt(y(u),{label:`Preset`,caption:`Preset`,get value(){return g(r).preset},get options(){return n.presetNames},onChange:i,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(u),w(s),Gt(e(s,2),{get proxy(){return n.asset.proxy},showDuration:!0}),c(t,o),F()}function Jr(e,t){V(t,!0);{let n=z(()=>t.asset.proxy?.url??t.asset.rawUrl);gt(e,{get src(){return g(n)}})}F()}var Yr={[Ce.type]:{panel:qt,editor:Un,thumbnail:Gn},[Te.type]:{panel:$n,editor:mr,thumbnail:Gn},[te.type]:{panel:_r,editor:xr,thumbnail:Cr},[ce.type]:{panel:Vr,editor:Gr,thumbnail:Cr},[X.type]:{panel:qr,editor:bt,thumbnail:Jr}},Xr=de.project(Yr,`editor implementation`),Zr=d(`<p class="error svelte-1f5yh58">This file type is not supported (raster images, video, or audio).</p>`),Qr=d(`<button> </button>`),$r=d(`<p class="empty-manifests svelte-1f5yh58">No manifests available — this asset will be unassigned.</p>`),ei=d(`<div class="manifest-list svelte-1f5yh58"><!></div>`),ti=d(`<p class="hint warn svelte-1f5yh58"> </p>`),ni=d(`<p class="hint warn svelte-1f5yh58">An asset with this id already exists.</p>`),ri=d(`<div class="row svelte-1f5yh58"><span class="label svelte-1f5yh58">Type</span> <div class="segmented svelte-1f5yh58"></div></div> <label class="row svelte-1f5yh58"><span class="label svelte-1f5yh58">Id</span> <input class="control svelte-1f5yh58" type="text" spellcheck="false"/></label> <div class="row manifests svelte-1f5yh58"><span class="label svelte-1f5yh58">Manifests</span> <!></div> <!> <!>`,1),ii=d(`<div class="backdrop svelte-1f5yh58" role="presentation"><div class="dialog svelte-1f5yh58" role="dialog" aria-label="Import asset" tabindex="-1"><h2 class="svelte-1f5yh58">Import asset</h2> <p class="file-name svelte-1f5yh58"> </p> <p class="destination svelte-1f5yh58"> </p> <!> <div class="actions svelte-1f5yh58"><button class="control">Cancel</button> <button class="control primary"> </button></div></div></div>`);function ai(n,i){V(i,!0);let a=z(()=>pe(i.file.name)),s=N(`image`),l=N(`asset`),u=N(T([])),d=N(!1),m=N(null),h=z(()=>$.manifestNames);L(()=>{H(s,pe(i.file.name)[0]??`image`,!0),H(l,Pe(i.file.name),!0),H(u,g(h).length===0?[]:[g(h).includes(`main`)?`main`:g(h)[0]],!0)});let _=z(()=>$.state?.assets.some(e=>e.id===g(l))??!1),b=z(()=>Q(g(l))),x=z(()=>g(b)===null),C=z(()=>g(x)&&!g(_)&&g(a).length>0&&!g(d));function D(e){H(u,g(u).includes(e)?g(u).filter(t=>t!==e):[...g(u),e],!0)}async function O(){if(!g(C))return;let e=g(l),t=g(s),n=[...g(u)],r=i.file,a=i.folder;H(d,!0),H(m,null);try{await $.mutateFromServer(()=>ye(r,t,e,a,n),{dependencies:[`asset:${e}`,`folder:${a}`,...n.map(e=>`manifest:${e}`)]}),i.onDone(e)}catch(e){H(m,e instanceof Error?e.message:String(e),!0)}finally{H(d,!1)}}var A=ii();q(`keydown`,v,e=>Ne(e,{busy:g(d),confirmDisabled:!g(C),onConfirm:()=>void O(),onCancel:i.onCancel}));var M=y(A),P=e(y(M),2),I=y(P,!0);w(P);var R=e(P,2),B=y(R);w(R);var U=e(R,2),W=e=>{c(e,Zr())},G=n=>{var i=ri(),v=f(i),C=e(y(v),2);r(C,20,()=>g(a),e=>e,(e,t)=>{var n=Qr();let r;var i=y(n,!0);w(n),o(()=>{n.disabled=g(d),r=S(n,1,`svelte-1f5yh58`,null,r,{on:g(s)===t}),k(i,t)}),p(`click`,n,()=>H(s,t,!0)),c(e,n)}),w(C),w(v);var T=e(v,2),O=e(y(T),2);E(O),w(T);var A=e(T,2),M=e(y(A),2),N=e=>{c(e,$r())},P=e=>{var t=ei();Oe(y(t),{get manifests(){return g(h)},get selected(){return g(u)},passive:[],onToggle:D,get disabled(){return g(d)}}),w(t),c(e,t)};t(M,e=>{g(h).length===0?e(N):e(P,-1)}),w(A);var F=e(A,2),I=e=>{var t=ti(),n=y(t,!0);w(t),o(()=>k(n,g(b))),c(e,t)},L=e=>{c(e,ni())};t(F,e=>{g(x)?g(_)&&e(L,1):e(I)});var R=e(F,2),z=e=>{var t=ti(),n=y(t,!0);w(t),o(()=>k(n,g(m))),c(e,t)};t(R,e=>{g(m)&&e(z)}),o(()=>O.disabled=g(d)),j(O,()=>g(l),e=>H(l,e)),c(n,i)};t(U,e=>{g(a).length===0?e(W):e(G,-1)});var K=e(U,2),J=y(K),ee=e(J,2),Y=y(ee,!0);w(ee),w(K),w(M),w(A),o(()=>{k(I,i.file.name),k(B,`Destination: ${(i.folder||`Root`)??``}`),J.disabled=g(d),ee.disabled=!g(C),k(Y,g(d)?`Importing…`:`Import`)}),p(`click`,A,e=>{e.target===e.currentTarget&&!g(d)&&i.onCancel()}),p(`click`,J,function(...e){i.onCancel?.apply(this,e)}),p(`click`,ee,()=>void O()),c(n,A),F()}s([`click`]);function oi(e){let t=e.trim();if(t===``)return{key:``};if(!(/^https?:\/\//i.test(t)||/figma\.com/i.test(t)))return{key:t};let n=/^https?:\/\//i.test(t)?t:`https://${t}`,r;try{r=new URL(n)}catch{return{error:`Enter a valid Figma file link or a bare file key.`}}if(r.hostname!==`figma.com`&&r.hostname!==`www.figma.com`)return{error:`Figma links must point to figma.com.`};let i=r.pathname.split(`/`).filter(Boolean);return![`design`,`file`,`proto`].includes(i[0]??``)||!i[1]?{error:`The Figma link must point to a design, file, or prototype.`}:{key:i[1]}}var si=d(`<p class="destination svelte-n5o24b"> </p>`),ci=d(`<label class="field wide svelte-n5o24b"><span>Selection link</span> <input class="control" type="url" placeholder="https://www.figma.com/design/…?node-id=…"/></label>`),li=d(`<label class="field wide svelte-n5o24b"><span>Tag</span> <input class="control" spellcheck="false" placeholder="asset"/></label>`),ui=d(`<!> <label class="field wide svelte-n5o24b"><span>File key</span> <input class="control" spellcheck="false"/></label>`,1),di=d(`<label class="field svelte-n5o24b"><span>Type</span> <select class="control"><option>Image</option><option>Slice</option></select></label>`),fi=d(`<label class="field wide svelte-n5o24b"><span>Asset ID</span> <input class="control" spellcheck="false" placeholder="asset"/></label>`),pi=d(`<div class="field wide svelte-n5o24b"><span>Manifests</span> <!></div>`),mi=d(`<p class="warning svelte-n5o24b"> </p>`),hi=d(`<p class="warning svelte-n5o24b">An asset with this ID already exists.</p>`),gi=d(`<!> <!>`,1),_i=d(`<!> <!> <!>`,1),vi=d(`<div class="backdrop svelte-n5o24b" role="presentation"><div class="dialog svelte-n5o24b" role="dialog" tabindex="-1"><h2 class="svelte-n5o24b"> </h2> <!> <div class="mode-toggle svelte-n5o24b" role="group" aria-label="Import mode"><button type="button">Link</button> <button type="button">Tag</button></div> <!> <div class="row svelte-n5o24b"><!> <label class="field svelte-n5o24b"><span>Export scale</span> <select class="control"><option>1x</option><option>2x</option><option>3x</option><option>4x</option></select></label></div> <!> <!> <!> <div class="actions svelte-n5o24b"><button class="control">Cancel</button> <button class="control primary"> </button></div></div></div>`);function yi(n,r){V(r,!0);let i=x(r,`folder`,3,``),a=`fundus:figma-import-mode`;function s(){try{return localStorage.getItem(a)===`tag`?`tag`:`link`}catch{return`link`}}let l=N(T(s())),u=N(``),d=N(``),m=N(``),h=N(T($.state?.importDefaults.figma.scale??2)),_=N(`image`),b=N(``),C=N(T(De($.manifestNames))),O=N(!1),A=N(null),M=z(()=>$.manifestNames),P=z(()=>Q(g(b))),R=z(()=>$.state?.assets.some(e=>e.id===g(b))??!1),B=z(()=>Q(g(d))),U=z(()=>$.state?.assets.some(e=>e.id===g(d))??!1),W=z(()=>oi(g(m))),G=z(()=>`error`in g(W)?g(W).error:null),K=z(()=>$.state?.importDefaults.figma.defaultFileKey??``);L(()=>{try{localStorage.setItem(a,g(l))}catch{}});let J=z(()=>g(O)?!1:g(l)===`tag`?g(G)===null?r.replacement!==void 0||g(B)===null&&!g(U):!1:g(u).trim().length===0?!1:r.replacement!==void 0||g(P)===null&&!g(R));function ee(e){H(C,g(C).includes(e)?g(C).filter(t=>t!==e):[...g(C),e],!0)}async function Y(){if(!g(J))return;let e=g(b),t=[...g(C)],n=g(u),a=g(d),o=`key`in g(W)&&g(W).key.length>0?g(W).key:void 0,s=g(h),c=g(_),f=i(),p=g(l),m=r.replacement;H(O,!0),H(A,null);try{m?(await $.mutateFromServer(()=>p===`tag`?_e(m.id,{mode:`tag`,tag:m.id,fileKey:o,scale:s}):_e(m.id,{url:n,scale:s}),{dependencies:[`asset:${m.id}`]}),r.onDone(m.id)):p===`tag`?(await $.mutateFromServer(()=>ie({mode:`tag`,tag:a,fileKey:o,scale:s,type:c,folder:f,manifests:t}),{dependencies:[`asset:${a}`,`folder:${f}`,...t.map(e=>`manifest:${e}`)]}),r.onDone(a)):(await $.mutateFromServer(()=>ie({url:n,scale:s,type:c,id:e,folder:f,manifests:t}),{dependencies:[`asset:${e}`,`folder:${f}`,...t.map(e=>`manifest:${e}`)]}),r.onDone(e))}catch(e){H(A,e instanceof Error?e.message:String(e),!0)}finally{H(O,!1)}}var X=vi();q(`keydown`,v,e=>Ne(e,{busy:g(O),confirmDisabled:!g(J),onConfirm:()=>void Y(),onCancel:r.onCancel}));var te=y(X),ne=y(te),re=y(ne,!0);w(ne);var ae=e(ne,2),Z=e=>{var t=si(),n=y(t);w(t),o(()=>k(n,`Asset: ${r.replacement.id??``}`)),c(e,t)},oe=e=>{var t=si(),n=y(t);w(t),o(()=>k(n,`Destination: ${(i()||`Root`)??``}`)),c(e,t)};t(ae,e=>{r.replacement?e(Z):e(oe,-1)});var se=e(ae,2),ce=y(se);let le;var ue=e(ce,2);let de;w(se);var fe=e(se,2),pe=t=>{var n=ci(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(u),e=>H(u,e)),c(t,n)},me=n=>{var i=ui(),a=f(i),s=t=>{var n=li(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(d),e=>H(d,e)),c(t,n)};t(a,e=>{r.replacement||e(s)});var l=e(a,2),u=e(y(l),2);E(u),w(l),o(()=>{u.disabled=g(O),I(u,`placeholder`,g(K)||`file key or figma link`)}),j(u,()=>g(m),e=>H(m,e)),c(n,i)};t(fe,e=>{g(l)===`link`?e(pe):e(me,-1)});var he=e(fe,2),ge=y(he),ve=t=>{var n=di(),r=e(y(n),2),i=y(r);i.value=i.__value=`image`;var a=e(i);a.value=a.__value=`slice`,w(r),w(n),o(()=>r.disabled=g(O)),D(r,()=>g(_),e=>H(_,e)),c(t,n)};t(ge,e=>{r.replacement||e(ve)});var ye=e(ge,2),be=e(y(ye),2),xe=y(be);xe.value=xe.__value=1;var Se=e(xe);Se.value=Se.__value=2;var Ce=e(Se);Ce.value=Ce.__value=3;var we=e(Ce);we.value=we.__value=4,w(be),w(ye),w(he);var Te=e(he,2),Ee=n=>{var r=_i(),i=f(r),a=t=>{var n=fi(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(b),e=>H(b,e)),c(t,n)};t(i,e=>{g(l)===`link`&&e(a)});var s=e(i,2),u=t=>{var n=pi();Oe(e(y(n),2),{get manifests(){return g(M)},get selected(){return g(C)},passive:[],onToggle:ee,get disabled(){return g(O)}}),w(n),c(t,n)};t(s,e=>{g(M).length>0&&e(u)});var p=e(s,2),m=n=>{var r=gi(),i=f(r),a=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(P))),c(e,t)};t(i,e=>{g(b)&&g(P)&&e(a)});var s=e(i,2),l=e=>{c(e,hi())};t(s,e=>{g(R)&&e(l)}),c(n,r)},h=n=>{var r=gi(),i=f(r),a=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(B))),c(e,t)};t(i,e=>{g(d)&&g(B)&&e(a)});var s=e(i,2),l=e=>{c(e,hi())};t(s,e=>{g(U)&&e(l)}),c(n,r)};t(p,e=>{g(l)===`link`?e(m):e(h,-1)}),c(n,r)};t(Te,e=>{r.replacement||e(Ee)});var ke=e(Te,2),Ae=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(G))),c(e,t)};t(ke,e=>{g(G)&&e(Ae)});var je=e(ke,2),Me=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(A))),c(e,t)};t(je,e=>{g(A)&&e(Me)});var Pe=e(je,2),Fe=y(Pe),Ie=e(Fe,2),Le=y(Ie,!0);w(Ie),w(Pe),w(te),w(X),o(()=>{I(te,`aria-label`,r.replacement?`Replace from Figma`:`Import from Figma`),k(re,r.replacement?`Replace from Figma`:`Import from Figma`),le=S(ce,1,`control svelte-n5o24b`,null,le,{active:g(l)===`link`}),I(ce,`aria-pressed`,g(l)===`link`),ce.disabled=g(O),de=S(ue,1,`control svelte-n5o24b`,null,de,{active:g(l)===`tag`}),I(ue,`aria-pressed`,g(l)===`tag`),ue.disabled=g(O),be.disabled=g(O),Fe.disabled=g(O),Ie.disabled=!g(J),k(Le,g(O)?r.replacement?`Replacing…`:`Importing…`:r.replacement?`Replace`:`Import`)}),p(`click`,X,e=>{e.target===e.currentTarget&&!g(O)&&r.onCancel()}),p(`click`,ce,()=>H(l,`link`)),p(`click`,ue,()=>H(l,`tag`)),D(be,()=>g(h),e=>H(h,e)),p(`click`,Fe,function(...e){r.onCancel?.apply(this,e)}),p(`click`,Ie,()=>void Y()),c(n,X),F()}s([`click`]);var bi=d(`<span class="arrow svelte-13hq4tl" aria-hidden="true">›</span>`),xi=d(`<hr class="svelte-13hq4tl"/>`),Si=d(`<button role="menuitem" tabindex="-1" class="svelte-13hq4tl"> </button>`),Ci=d(`<!> <!>`,1),wi=d(`<div role="menu" tabindex="-1"></div>`),Ti=d(`<div class="submenu-anchor svelte-13hq4tl" role="presentation"><button class="submenu-trigger svelte-13hq4tl" role="menuitem"><span> </span> <!></button> <!></div>`);function Ei(n,i){V(i,!0);let a=x(i,`alwaysSubmenu`,3,!1),s=N(void 0),l=N(void 0),d=N(!1),m=N(!1),_=N(240),v=z(()=>i.sections.filter(e=>e.length>0)),b=z(()=>g(v).flat()),C=z(()=>a()||g(b).length>1);async function T(e=!1){if(!g(C)||(H(d,!0),await h(),!g(s)||!g(l)))return;let t=g(s).getBoundingClientRect();H(m,t.right+g(l).offsetWidth+8>window.innerWidth),H(_,Math.max(32,window.innerHeight-t.top-8),!0),e&&g(l).querySelector(`[role="menuitem"]:not(:disabled)`)?.focus()}function E(e){if(!g(C)){let e=g(b)[0];e&&i.onSelect(e.value);return}e.stopPropagation(),T()}function D(e){!g(C)||e.key!==`ArrowRight`&&e.key!==`ArrowDown`||(e.preventDefault(),e.stopPropagation(),T(!0))}function O(e){if(e.key===`ArrowLeft`||e.key===`Escape`){e.preventDefault(),e.stopPropagation(),H(d,!1),g(s)?.focus();return}if(!g(l))return;let t=[...g(l).querySelectorAll(`[role="menuitem"]:not(:disabled)`)];if(t.length===0)return;let n=t.indexOf(document.activeElement),r;if(e.key===`ArrowDown`)r=(n+1)%t.length;else if(e.key===`ArrowUp`)r=(n-1+t.length)%t.length;else if(e.key===`Home`)r=0;else if(e.key===`End`)r=t.length-1;else return;e.preventDefault(),e.stopPropagation(),t[r]?.focus()}var A=Ti(),j=y(A),M=y(j),P=y(M,!0);w(M);var L=e(M,2),R=e=>{c(e,bi())};t(L,e=>{g(C)&&e(R)}),w(j),B(j,e=>H(s,e),()=>g(s));var U=e(j,2),W=n=>{var a=wi();let s,d;r(a,21,()=>g(v),u,(n,a,s)=>{var l=Ci(),u=f(l),d=e=>{c(e,xi())};t(u,e=>{s>0&&e(d)}),r(e(u,2),17,()=>g(a),e=>e.value,(e,t)=>{var n=Si(),r=y(n,!0);w(n),o(()=>{n.disabled=g(t).disabled,I(n,`title`,g(t).title),k(r,g(t).label)}),p(`click`,n,()=>i.onSelect(g(t).value)),c(e,n)}),c(n,l)}),w(a),B(a,e=>H(l,e),()=>g(l)),o(()=>{s=S(a,1,`submenu svelte-13hq4tl`,null,s,{"opens-left":g(m)}),I(a,`aria-label`,i.label),d=K(a,``,d,{"max-height":`${g(_)}px`})}),p(`keydown`,a,O),c(n,a)};t(U,e=>{g(C)&&g(d)&&e(W)}),w(A),o(()=>{I(j,`aria-haspopup`,g(C)?`menu`:void 0),I(j,`aria-expanded`,g(C)?g(d):void 0),k(P,i.label)}),q(`mouseenter`,A,()=>void T()),q(`mouseleave`,A,()=>H(d,!1)),p(`focusout`,A,e=>{e.currentTarget.contains(e.relatedTarget)||H(d,!1)}),p(`click`,j,E),p(`keydown`,j,D),c(n,A),F()}s([`focusout`,`click`,`keydown`]);function Di(e,t,n=[]){let r=e!==t&&!Z(t,e)&&ne(e)!==t;if(!r||n.length===0)return r;let i=oe(t,he(e)),a=new Set(n.filter(t=>!Z(t,e)).map(re));return n.filter(t=>Z(t,e)).every(t=>!a.has(re(ae(t,e,i))))}function Oi(e,t,n,r=[]){return e&&t!==null&&Di(t,n,r)}var ki=i(`<svg viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M1.25 4.25A1.75 1.75 0 0 1 3 2.5h2.45c.55 0 1.06.26 1.39.7l.6.8H13a1.75 1.75 0 0 1 1.75 1.75v5.5A1.75 1.75 0 0 1 13 13H3a1.75 1.75 0 0 1-1.75-1.75v-7Z" fill="currentColor"></path><path d="M1.75 6h12.5" stroke="currentColor" stroke-opacity="0.35"></path></svg>`);function Ai(e,t){let n=x(t,`size`,3,14);var r=ki();o(()=>{I(r,`width`,n()),I(r,`height`,n())}),c(e,r)}var ji=d(`<span class="asset-warning svelte-ftwms1">⚠</span>`),Mi=d(`<div class="asset-row svelte-ftwms1"><button class="row asset current svelte-ftwms1" draggable="true" aria-current="page"><span class="glyph asset-glyph svelte-ftwms1">◆</span> <span class="label svelte-ftwms1"> </span> <!></button></div>`),Ni=d(`<div class="folder-row svelte-ftwms1"><button draggable="true"><span class="glyph svelte-ftwms1"><!></span><span class="label svelte-ftwms1"> </span><span class="count svelte-ftwms1"> </span></button></div> <!>`,1),Pi=d(`<p class="dialog-warning svelte-ftwms1"> </p>`),Fi=d(`<p class="dialog-warning svelte-ftwms1">A sibling folder with this name already exists.</p>`),Ii=d(`<label class="dialog-row svelte-ftwms1"><span class="svelte-ftwms1">Name</span> <input class="control svelte-ftwms1" spellcheck="false"/></label> <p class="dialog-path svelte-ftwms1"> </p> <!> <!> <!>`,1),Li=d(`<p class="dialog-text svelte-ftwms1">Delete <strong> </strong> </p> <!> <!>`,1),Ri=d(`<aside class="directory svelte-ftwms1" aria-label="Asset folders"><header class="svelte-ftwms1"><strong class="svelte-ftwms1">Folders</strong> <div class="actions svelte-ftwms1"><button class="icon-button svelte-ftwms1">+</button> <button class="icon-button svelte-ftwms1">✎</button> <button class="icon-button danger svelte-ftwms1">×</button></div></header> <div class="tree svelte-ftwms1"><button><span class="glyph svelte-ftwms1">▦</span><span class="label svelte-ftwms1">All Assets</span><span class="count svelte-ftwms1"> </span></button> <button><span class="glyph svelte-ftwms1">⌂</span><span class="label svelte-ftwms1">Root</span><span class="count svelte-ftwms1"> </span></button> <!> <!></div></aside> <!> <!>`,1);function zi(n,i){V(i,!0);let a=x(i,`activeAsset`,3,null),s=x(i,`sharedDraggedFolder`,3,null),l=N(null),u=N(null),d=z(()=>s()??g(u)),m=z(()=>$.state?.library.folders??[]),_=z(()=>$.state?.assets??[]),v=z(()=>[...g(m)].sort((e,t)=>e.localeCompare(t)));function b(e){return g(_).filter(t=>t.folder===e).length}function C(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=Oi(e.dataTransfer?.types.includes(`application/x-fundus-folder`)??!1,g(d),t,g(m));!n&&!r||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),H(l,t,!0))}function T(e,t){e.preventDefault(),H(l,null);let n=e.dataTransfer?.getData(`application/x-fundus-assets`);if(n){try{let e=JSON.parse(n);Array.isArray(e)&&e.every(e=>typeof e==`string`)&&i.onMoveAssets(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`)||g(d);r&&Di(r,t,g(m))&&O(r,t)}function D(e,t){a()||i.selectedFolder!==null&&Z(i.selectedFolder,e)&&i.onSelect(`${t}${i.selectedFolder.slice(e.length)}`,!0)}async function O(e,t){let n=oe(t,he(e)),r=$.mutate(()=>ue(e,t),xe(e,t),{dependencies:[`folder:${e}`,`folder:${t}`,`folder:${n}`],invalidatesOnFailure:[`folder:${e}`,`folder:${n}`]});D(e,n);try{await r}catch{g(m).some(t=>Z(t,e))&&D(n,e)}finally{H(u,null),i.onFolderDragEnd?.()}}let A=N(null),M=N(``),P=N(null),R=N(null),U=N(``),W=N(void 0),G=N(!1),Y=N(null),X=0,te=z(()=>i.selectedFolder!==null&&i.selectedFolder!==``?i.selectedFolder:null),ie=z(()=>g(U)===``?null:J(g(U))),ae=z(()=>oe(g(A)===`rename`?ne(g(P)??``):g(M),g(U).normalize(`NFC`))),Q=z(()=>g(U)!==``&&g(m).some(e=>e!==(g(A)===`rename`?g(P):null)&&re(e)===re(g(ae)))),se=z(()=>g(U)!==``&&!g(ie)&&!g(Q)&&!g(G));function ce(e=i.selectedFolder??``){X+=1,H(M,e,!0),H(U,``),H(Y,null),H(A,`create`),h().then(()=>g(W)?.focus())}let de=0;L(()=>{i.createRequest!==null&&i.createRequest.id!==de&&(de=i.createRequest.id,ce(i.createRequest.parent))});function fe(e,t,n=null){e.preventDefault(),e.stopPropagation(),i.onContextMenu(e.clientX,e.clientY,t,n)}function pe(e){e!==null&&(X+=1,H(P,e,!0),H(U,he(e),!0),H(Y,null),H(A,`rename`),h().then(()=>g(W)?.focus()))}let _e=0;L(()=>{i.renameRequest!==null&&i.renameRequest.id!==_e&&(_e=i.renameRequest.id,pe(i.renameRequest.path))});function ye(e){e!==null&&(X+=1,H(R,e,!0),H(Y,null),H(A,`delete`))}let Se=0;L(()=>{i.deleteRequest!==null&&i.deleteRequest.id!==Se&&(Se=i.deleteRequest.id,ye(i.deleteRequest.path))});function Ce(){g(G)||(X+=1,H(A,null),H(Y,null))}async function we(){if(!g(se))return;let e=g(A),t=g(U),n=t.normalize(`NFC`),r=i.selectedFolder,o=null,s=null,c=null;H(G,!0),H(Y,null);try{if(e===`create`){let e=g(ae),t=$.mutate(()=>ee(e),me(e),{dependencies:[`folder:${g(M)}`,`folder:${e}`],invalidatesOnFailure:[`folder:${e}`]});a()||i.onSelect(e,!0),o=()=>{!a()&&i.selectedFolder===e&&!g(m).includes(e)&&i.onSelect(r,!0)},s=()=>!g(m).includes(e),H(A,null),c=++X,H(G,!1),await t}else if(e===`rename`&&g(P)!==null){let e=g(P),t=g(ae),r=$.mutate(()=>be(e,n),ge(e,n),{dependencies:[`folder:${e}`,`folder:${t}`],invalidatesOnFailure:[`folder:${e}`,`folder:${t}`]});D(e,t),o=()=>{g(m).some(t=>Z(t,e))&&D(t,e)},s=()=>g(m).some(t=>Z(t,e)),H(A,null),c=++X,H(G,!1),await r}}catch(n){s?.()&&o?.(),c!==null&&X===c&&s?.()&&(H(A,e,!0),H(U,t,!0),H(Y,n instanceof Error?n.message:String(n),!0))}finally{H(G,!1)}}let Te=z(()=>g(R)===null?[]:g(m).filter(e=>Z(e,g(R)??``))),Ee=z(()=>g(R)===null?[]:g(_).filter(e=>Z(e.folder,g(R)??``))),De=z(()=>new Set(g(Ee).map(e=>e.id))),Oe=z(()=>g(Ee).flatMap(e=>e.references.incoming.filter(e=>!g(De).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e.id}`)));async function ke(){if(g(R)===null)return;let e=g(R),t=ne(e),n=i.selectedFolder,r=a()!==null&&Z(a().folder,e),o=r?a()?.id:null;H(G,!0),H(Y,null);let s=$.mutate(()=>le(e),ve(e),{dependencies:[`folder:${e}`],invalidatesOnFailure:[`folder:${e}`]});r?i.onActiveAssetDeleted?.(t):!a()&&i.selectedFolder!==null&&Z(i.selectedFolder,e)&&i.onSelect(t,!0),H(A,null);let c=++X;H(G,!1);try{await s}catch(r){let a=g(m).some(t=>Z(t,e))||g(_).some(t=>Z(t.folder,e));a&&o?i.onActiveAssetDeleteFailed?.(o):a&&i.selectedFolder===t&&i.onSelect(n,!0),a&&X===c&&(H(A,`delete`),H(R,e,!0),H(Y,r instanceof Error?r.message:String(r),!0))}finally{H(G,!1)}}function Ae(e){a()&&(e.dataTransfer?.setData(`application/x-fundus-assets`,JSON.stringify([a().id])),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`))}var Me=Ri(),Ne=f(Me),Pe=y(Ne),Fe=e(y(Pe),2),Ie=y(Fe),Le=e(Ie,2),Re=e(Le,2);w(Fe),w(Pe);var ze=e(Pe,2),Be=y(ze);let Ve;var He=e(y(Be),2),Ue=y(He,!0);w(He),w(Be);var We=e(Be,2);let Ge;var Ke=e(y(We),2),qe=y(Ke,!0);w(Ke),w(We);var Je=e(We,2),Ye=n=>{var r=Mi();K(r,``,{},{"--depth":0});var i=y(r),s=e(y(i),2),l=y(s,!0);w(s);var u=e(s,2),d=e=>{var t=ji();o(e=>I(t,`title`,e),[()=>a().warnings.join(`
104
+ }`;function jn(e){let t=(t,n)=>{let r=e.createShader(t);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)){let t=e.getShaderInfoLog(r);throw e.deleteShader(r),Error(`Chroma-key shader compilation failed: ${t}.`)}return r},n=e.createProgram();if(e.attachShader(n,t(e.VERTEX_SHADER,kn)),e.attachShader(n,t(e.FRAGMENT_SHADER,An)),e.linkProgram(n),!e.getProgramParameter(n,e.LINK_STATUS)){let t=e.getProgramInfoLog(n);throw e.deleteProgram(n),Error(`Chroma-key program linking failed: ${t}.`)}return n}var Mn=class e{#e;#t;#n;#r;#i;#a;#o;#s=null;#c=!1;static create(t){let n=t.getContext(`webgl2`,{premultipliedAlpha:!0,alpha:!0,depth:!1,stencil:!1,antialias:!1});if(!n)return null;try{return new e(n,t)}catch{return null}}constructor(e,t){this.#e=e,this.#t=t,t.addEventListener(`webglcontextlost`,this.#l),t.addEventListener(`webglcontextrestored`,this.#u),this.#d()}#l=e=>{e.preventDefault(),this.#c=!0};#u=()=>{try{this.#d(),this.#c=!1}catch{this.#c=!0}};#d(){let e=this.#e;this.#n=jn(e),e.useProgram(this.#n);let t=t=>e.getUniformLocation(this.#n,t);this.#a={texelSize:t(`u_texelSize`),keyColor:t(`u_keyColor`),tintColor:t(`u_tintColor`),colorCutoff:t(`u_colorCutoff`),colorFeathering:t(`u_colorFeathering`),maskFeathering:t(`u_maskFeathering`),sharpening:t(`u_sharpening`),despill:t(`u_despill`),despillLuminanceAdd:t(`u_despillLuminanceAdd`)},e.uniform1i(e.getUniformLocation(this.#n,`u_texture`),0),e.uniform1i(e.getUniformLocation(this.#n,`u_mask`),1),e.uniform4f(this.#a.tintColor,1,1,1,1),this.#r=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this.#r),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW);let n=e.getAttribLocation(this.#n,`a_pos`);e.enableVertexAttribArray(n),e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0),this.#i=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#i),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#o=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#f(),e.disable(e.DEPTH_TEST),e.disable(e.BLEND),e.clearColor(0,0,0,0)}setMask(e){this.#s=e,this.#c||this.#f()}#f(){let e=this.#e;e.bindTexture(e.TEXTURE_2D,this.#o),this.#s?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,this.#s):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([255,255,255,255]))}draw(e,t){if(this.#c||e.videoWidth===0)return;let n=this.#e;(this.#t.width!==e.videoWidth||this.#t.height!==e.videoHeight)&&(this.#t.width=e.videoWidth,this.#t.height=e.videoHeight,n.viewport(0,0,e.videoWidth,e.videoHeight)),n.activeTexture(n.TEXTURE1),n.bindTexture(n.TEXTURE_2D,this.#o),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,this.#i),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e),n.useProgram(this.#n),n.uniform2f(this.#a.texelSize,1/e.videoWidth,1/e.videoHeight),n.uniform3fv(this.#a.keyColor,t.keyColor),n.uniform1f(this.#a.colorCutoff,t.colorCutoff),n.uniform1f(this.#a.colorFeathering,t.colorFeathering),n.uniform1f(this.#a.maskFeathering,t.maskFeathering),n.uniform1f(this.#a.sharpening,t.sharpening),n.uniform1f(this.#a.despill,t.despill),n.uniform1f(this.#a.despillLuminanceAdd,t.despillLuminanceAdd),n.clear(n.COLOR_BUFFER_BIT),n.drawArrays(n.TRIANGLE_STRIP,0,4)}clear(){this.#c||this.#e.clear(this.#e.COLOR_BUFFER_BIT)}dispose(){this.#t.removeEventListener(`webglcontextlost`,this.#l),this.#t.removeEventListener(`webglcontextrestored`,this.#u);let e=this.#e;e.deleteBuffer(this.#r),e.deleteTexture(this.#i),e.deleteTexture(this.#o),e.deleteProgram(this.#n),e.getExtension(`WEBGL_lose_context`)?.loseContext()}},Nn=2;function Pn(e){return{...e,keyColor:[...e.keyColor]}}function Fn(e,t){t.loop=e.loop,t.playbackRate=e.playbackRate}var In=class{#e;#t;#n;#r=null;#i=null;#a=0;#o=!1;#s=!1;#c=!1;#l=0;#u=!1;#d=null;constructor(e,t,n=e,r){this.#e=[e,n],this.#t=t,this.#n=r;for(let e of new Set(this.#e))this.#f(e)}switchSource(e){if(this.#s)return;let t=this.#i;if(t&&this.#m(t,e)&&t.status===`loading`)return;let n=this.#r;if(n&&this.#m(n,e)&&n.status===`settled`){this.#g(),n.chromaKey=Pn(e.chromaKey);return}this.#g();let r=this.#h(n),i=n?this.#o&&(n.video.ended||!n.video.paused||n.playRequestPending):this.#o;n&&r===n.video&&(this.#j(n),this.#P(),n.status=`disposed`,this.#r=null,n.video.pause());let a={generation:++this.#a,status:`loading`,video:r,rawVideoUrl:e.rawVideoUrl,normalizedVideoUrl:e.resolvedVideoUrl,maskUrl:e.maskUrl,maskImage:null,chromaKey:Pn(e.chromaKey),mediaSettled:!1,maskSettled:!e.maskUrl,playAfterHandoff:i,playRequestToken:0,playRequestPending:!1,playRejectedForCurrentIntent:!1};this.#i=a,this.#c||this.#t.setMask(null),r.pause(),r.src=e.resolvedVideoUrl,a.normalizedVideoUrl=r.src,r.load(),this.#v(a),e.maskUrl&&this.#_(a,e.maskUrl)}setPlaying(e){if(this.#s)return;let t=this.#o!==e;this.#o=e;let n=this.#r,r=this.#i;if(r?.status===`loading`&&(r.playAfterHandoff=e),!e){this.#j(n),this.#P(),n?.video.pause();return}t&&n&&(n.playRejectedForCurrentIntent=!1),n&&(n.playAfterHandoff=!0,this.#k(n))}setChromaKey(e){if(this.#s)return;let t=this.#i??this.#r;!t||t.status===`failed`||t.status===`disposed`||(t.chromaKey=Pn(e),t===this.#r&&t.status===`settled`&&t.video.paused&&this.#D(t)&&this.#T(t))}dispose(){if(!this.#s){this.#s=!0,this.#a++,this.#j(this.#r),this.#j(this.#i),this.#P(),this.#r&&(this.#r.status=`disposed`),this.#i&&(this.#i.status=`disposed`),this.#r=null,this.#i=null;for(let e of new Set(this.#e))this.#p(e),e.pause()}}#f(e){e.addEventListener(`play`,this.#x),e.addEventListener(`pause`,this.#S),e.addEventListener(`ended`,this.#S),e.addEventListener(`seeked`,this.#C),e.addEventListener(`loadeddata`,this.#y),e.addEventListener(`error`,this.#b)}#p(e){e.removeEventListener(`play`,this.#x),e.removeEventListener(`pause`,this.#S),e.removeEventListener(`ended`,this.#S),e.removeEventListener(`seeked`,this.#C),e.removeEventListener(`loadeddata`,this.#y),e.removeEventListener(`error`,this.#b)}#m(e,t){return e.rawVideoUrl===t.rawVideoUrl&&e.maskUrl===t.maskUrl}#h(e){return e&&this.#e[0]===e.video?this.#e[1]:this.#e[0]}#g(){let e=this.#i;e&&(this.#j(e),e.status=`disposed`,e.video.pause(),this.#i=null)}#_(e,t){let n=new Image;n.src=t,n.decode().then(()=>{this.#O(e)&&(e.maskImage=n,e.maskSettled=!0,this.#w(e))}).catch(()=>{this.#O(e)&&(console.warn(`Failed to load chroma-key mask "${t}".`),e.maskSettled=!0,this.#w(e))})}#v(e){let t;try{t=e.video.play()}catch{return}Promise.resolve(t).catch(()=>{})}#y=e=>{let t=this.#i;!t||t.video!==e.currentTarget||!this.#O(t)||this.#D(t)&&(t.mediaSettled=!0,t.video.pause(),this.#w(t))};#b=e=>{let t=e.currentTarget,n=this.#i;if(n?.video===t&&n.status===`loading`){n.status=`failed`,this.#j(n),n.video.pause(),!this.#r&&!this.#c&&this.#E();return}let r=this.#r;!r||r.video!==t||r.status!==`settled`||(r.status=`failed`,this.#j(r),this.#P(),r.video.pause(),this.#i||this.#E())};#x=e=>{let t=e.currentTarget;if(this.#i?.video===t)return;let n=this.#r;if(!n||n.video!==t||n.status!==`settled`){t&&`pause`in t&&t.pause();return}n.playRejectedForCurrentIntent=!1,n.playAfterHandoff=!0,this.#i?.status===`loading`&&(this.#i.playAfterHandoff=!0),n.video.paused||this.#M(n)};#S=e=>{let t=this.#r;!t||t.video!==e.currentTarget||t.status!==`settled`||(this.#j(t),this.#P(),this.#T(t),t.playAfterHandoff=!1,this.#i?.status===`loading`&&(this.#i.playAfterHandoff=!1))};#C=e=>{let t=this.#r;!t||t.video!==e.currentTarget||t.status!==`settled`||!t.video.paused||this.#T(t)};#w(e){if(!this.#O(e)||!e.mediaSettled||!e.maskSettled||!this.#D(e))return;let t=this.#r;this.#P(),this.#j(t),t&&t.video!==e.video&&Fn(t.video,e.video),e.video.pause(),e.status=`settled`,this.#i=null,this.#r=e,this.#t.setMask(e.maskImage),this.#T(e),this.#n?.(e.video),t&&t!==e&&(t.status=`disposed`,t.video.pause()),this.#o&&e.playAfterHandoff&&this.#k(e)}#T(e){this.#s||this.#r!==e||e.status!==`settled`||!this.#D(e)||(this.#t.draw(e.video,e.chromaKey),this.#c=!0)}#E(){this.#t.clear(),this.#c=!1}#D(e){return e.video.readyState>=Nn&&e.video.currentSrc===e.normalizedVideoUrl}#O(e){return!this.#s&&this.#i===e&&e.status===`loading`&&e.generation===this.#a}#k(e){if(this.#s||this.#r!==e||e.status!==`settled`||!this.#o||!e.playAfterHandoff||!e.video.paused||e.playRequestPending||e.playRejectedForCurrentIntent)return;let t=++e.playRequestToken;e.playRequestPending=!0;let n;try{n=e.video.play()}catch{this.#A(e,t,!1);return}Promise.resolve(n).then(()=>this.#A(e,t,!0),()=>this.#A(e,t,!1))}#A(e,t,n){this.#s||this.#r!==e||e.playRequestToken!==t||(e.playRequestPending=!1,e.playRejectedForCurrentIntent=!n)}#j(e){e&&(e.playRequestToken++,e.playRequestPending=!1)}#M(e){this.#u||this.#s||this.#r!==e||e.status!==`settled`||e.video.paused||(this.#u=!0,this.#l++,this.#N(e,this.#l))}#N(e,t){let n=e.generation,r=e.video,i=0,a=()=>{let a=this.#d;!a||a.generation!==t||a.handle!==i||this.#l!==t||!this.#u||this.#r!==e||e.generation!==n||e.status!==`settled`||r.paused||(this.#d=null,this.#T(e),this.#u&&this.#l===t&&this.#r===e&&!r.paused&&this.#N(e,t))};r.requestVideoFrameCallback?(i=r.requestVideoFrameCallback(a),this.#d={generation:t,kind:`rvfc`,handle:i,video:r}):(i=requestAnimationFrame(a),this.#d={generation:t,kind:`raf`,handle:i,video:r})}#P(){this.#l++,this.#u=!1;let e=this.#d;this.#d=null,e&&(e.kind===`rvfc`?e.video.cancelVideoFrameCallback?.(e.handle):cancelAnimationFrame(e.handle))}},Ln=d(`<img alt="" class="svelte-r30mxh"/>`),Rn=d(`<canvas class="svelte-r30mxh"></canvas> <video playsinline="" preload="auto" class="svelte-r30mxh"></video> <video playsinline="" preload="auto" class="svelte-r30mxh"></video>`,3),zn=d(`<div><!></div>`);function Bn(n,r){V(r,!0);let i=x(r,`loop`,3,!0),a=x(r,`playing`,3,!0),s=x(r,`videoElement`,15),u=x(r,`class`,3,``);L(()=>(r.src,void 0));let d=N(void 0),p=N(void 0),h=N(void 0),v=N(!1),b=null,C=N(null);function T(e){return{...e,keyColor:[...e.keyColor]}}R(()=>{if(b=Mn.create(g(d)),!b){H(v,!0);return}let e=b;s(g(p));let t=new In(g(p),e,g(h),e=>{s(e)});return H(C,t),()=>{t.dispose(),g(C)===t&&H(C,null),e.dispose(),b===e&&(b=null)}}),L(()=>{let e=g(C),t=r.src,n=t.src,i=t.mask?.src;e&&e.switchSource({rawVideoUrl:n,resolvedVideoUrl:nn(n),maskUrl:i,chromaKey:_(()=>T(t.chromaKey))})}),L(()=>{g(C)?.setPlaying(a())}),L(()=>{let e=r.src.chromaKey,t={keyColor:[e.keyColor[0],e.keyColor[1],e.keyColor[2]],colorCutoff:e.colorCutoff,colorFeathering:e.colorFeathering,maskFeathering:e.maskFeathering,sharpening:e.sharpening,despill:e.despill,despillLuminanceAdd:e.despillLuminanceAdd};g(C)?.setChromaKey(t)});var E=zn(),D=y(E),O=e=>{var n=l(),i=f(n),a=e=>{var t=l();m(f(t),()=>r.fallback),c(e,t)},s=e=>{var t=Ln();o(()=>I(t,`src`,r.src.fallback.src)),c(e,t)};t(i,e=>{r.fallback?e(a):r.src.fallback&&e(s,1)}),c(e,n)},k=t=>{var n=Rn(),r=f(n);B(r,e=>H(d,e),()=>g(d));var a=e(r,2);a.muted=!0,B(a,e=>H(p,e),()=>g(p));var s=e(a,2);s.muted=!0,B(s,e=>H(h,e),()=>g(h)),o(()=>{a.loop=i(),s.loop=i()}),c(t,n)};t(D,e=>{g(v)?e(O):e(k,-1)}),w(E),o(()=>{S(E,1,`fundus-chroma-key-video ${u()??``}`,`svelte-r30mxh`),K(E,r.style)}),c(n,E),F()}var Vn=d(`<img/>`),Hn=d(`<div class="stage checkerboard svelte-10eps7e"><!></div>`);function Un(e,n){V(n,!0);let r=z(()=>!n.asset.proxy||n.asset.proxy.width===void 0||n.asset.proxy.height===void 0?null:{id:n.asset.id,kind:`image`,src:n.asset.proxy.url,byteSize:n.asset.proxy.fileSize,width:n.asset.proxy.width,height:n.asset.proxy.height});var i=Hn(),a=y(i),s=e=>{vn(e,{get src(){return g(r)},get alt(){return n.asset.id}})},l=e=>{var t=Vn();o(()=>{I(t,`src`,n.asset.rawUrl),I(t,`alt`,n.asset.id)}),c(e,t)};t(a,e=>{g(r)?e(s):e(l,-1)}),w(i),c(e,i),F()}var Wn=d(`<img loading="lazy" class="svelte-gdduef"/>`);function Gn(e,t){V(t,!0);var n=Wn();o(()=>{I(n,`src`,t.asset.proxy?.url??t.asset.rawUrl),I(n,`alt`,t.asset.id)}),c(e,n),F()}var Kn=new Map;function qn(e,t=()=>new window.Image){let n=Kn.get(e);if(n)return n;let r=new Promise((n,r)=>{let i=t();i.onload=()=>n({width:i.naturalWidth,height:i.naturalHeight}),i.onerror=()=>r(Error(`Could not load image dimensions.`)),i.src=e});return Kn.set(e,r),r.catch(()=>{Kn.get(e)===r&&Kn.delete(e)}),r}var Jn=d(`<button> </button>`),Yn=d(`<section class="svelte-1yd7n22"><!> <div class="insets svelte-1yd7n22"></div></section>`),Xn=d(`<section class="svelte-1yd7n22"><!> <div><!> <!></div></section>`),Zn=d(`<section class="svelte-1yd7n22"><!> <!></section>`),Qn=d(`<section class="svelte-1yd7n22"><!> <div class="modes svelte-1yd7n22"></div></section> <!> <!> <section class="svelte-1yd7n22"><!> <div class="insets svelte-1yd7n22"></div></section> <!> <section class="svelte-1yd7n22"><!> <div class="field"><!></div></section> <!>`,1);function $n(n,i){V(i,!0);let s=z(()=>Te.validateParameters(i.parameters)),u=z(()=>g(s).overdraw??fe()),d=z(()=>g(s).compression??{x:0,y:0}),m=N(null),h=null;L(()=>{let e=i.asset.rawUrl;h!==e&&(h=e,H(m,null));let t=!1;return qn(e).then(n=>{!t&&h===e&&H(m,n,!0)},()=>{}),()=>{t=!0}});let _=[{value:`nine`,label:`9-slice`},{value:`three-horizontal`,label:`3-slice horizontal`},{value:`three-vertical`,label:`3-slice vertical`},{value:`one`,label:`No slicing`}],v=[{key:`top`,label:`Top`,icon:`arrow-up`,axis:`y`},{key:`right`,label:`Right`,icon:`arrow-right`,axis:`x`},{key:`bottom`,label:`Bottom`,icon:`arrow-down`,axis:`y`},{key:`left`,label:`Left`,icon:`arrow-left`,axis:`x`}];function b(e,t){let n=Y(t);return e===`x`?n.horizontal:n.vertical}let x=z(()=>g(m)?.width??2**53-1),C=z(()=>g(m)?.height??2**53-1);function T(e){i.onParametersCommit(e)}function E(e){T({...g(s),mode:e})}function D(e){return we(g(s).insets,e,g(x),g(C))}function O(e,t,n){let r=Math.max(0,Math.min(D(e),Math.round(t??0))),a={...g(s),insets:{...g(s).insets,[e]:r}};n?T(a):i.onParametersChange(a)}function A(e){return se(g(u),e,g(x),g(C))}function j(e,t,n){let r=Math.max(0,Math.min(A(e),Math.round(t??0))),a={...g(s),overdraw:{...g(u),[e]:r}};n?T(a):i.onParametersChange(a)}function M(e,t,n){let r=Math.max(0,Math.min(100,Math.round(t??0))),a={...g(d),[e]:r},{compression:o,...c}=g(s),l=a.x===0&&a.y===0?c:{...c,compression:a};n?T(l):i.onParametersChange(l)}function P(e,t){let n={...g(s),pixelRatio:Math.max(1,Math.round(e??1))};t?T(n):i.onParametersChange(n)}function I(e){T({...g(s),preset:e})}var R=Qn(),B=f(R),W=y(B);Lt(W,{children:(e,t)=>{U(),c(e,a(`Mode`))},$$slots:{default:!0}});var G=e(W,2);r(G,21,()=>_,e=>e.value,(e,t)=>{var n=Jn();let r;var i=y(n,!0);w(n),o(()=>{r=S(n,1,`svelte-1yd7n22`,null,r,{on:g(s).mode===g(t).value}),k(i,g(t).label)}),p(`click`,n,()=>E(g(t).value)),c(e,n)}),w(G),w(B);var K=e(B,2),q=n=>{var i=Yn(),o=y(i);Lt(o,{children:(e,t)=>{U(),c(e,a(`Insets (px)`))},$$slots:{default:!0}});var u=e(o,2);r(u,21,()=>v,e=>e.key,(e,n)=>{var r=l(),i=f(r),a=e=>{{let t=e=>{Ee(e,{get name(){return g(n).icon}})},r=z(()=>D(g(n).key));Ft(e,{get label(){return g(n).label},min:0,get max(){return g(r)},rangeFill:!1,get value(){return g(s).insets[g(n).key]},onChange:e=>O(g(n).key,e,!1),onCommit:e=>O(g(n).key,e,!0),icon:t,$$slots:{icon:!0}})}},o=z(()=>b(g(n).axis,g(s).mode));t(i,e=>{g(o)&&e(a)}),c(e,r)}),w(u),w(i),c(n,i)};t(K,e=>{g(s).mode!==`one`&&e(q)});var J=e(K,2),ee=n=>{var r=Xn(),i=y(r);Lt(i,{children:(e,t)=>{U(),c(e,a(`Stretch compression`))},$$slots:{default:!0}});var l=e(i,2);let u;var f=y(l),p=e=>{Ft(e,{label:`X`,min:0,max:100,suffix:`%`,get value(){return g(d).x},onChange:e=>M(`x`,e,!1),onCommit:e=>M(`x`,e,!0)})},m=z(()=>b(`x`,g(s).mode));t(f,e=>{g(m)&&e(p)});var h=e(f,2),_=e=>{Ft(e,{label:`Y`,min:0,max:100,suffix:`%`,get value(){return g(d).y},onChange:e=>M(`y`,e,!1),onCommit:e=>M(`y`,e,!0)})},v=z(()=>b(`y`,g(s).mode));t(h,e=>{g(v)&&e(_)}),w(l),w(r),o(()=>u=S(l,1,`insets svelte-1yd7n22`,null,u,{single:g(s).mode!==`nine`})),c(n,r)};t(J,e=>{g(s).mode!==`one`&&e(ee)});var X=e(J,2),te=y(X);Lt(te,{children:(e,t)=>{U(),c(e,a(`Overdraw (px)`))},$$slots:{default:!0}});var ne=e(te,2);r(ne,21,()=>v,e=>e.key,(e,t)=>{{let n=e=>{Ee(e,{get name(){return g(t).icon}})},r=z(()=>A(g(t).key));Ft(e,{get label(){return g(t).label},min:0,get max(){return g(r)},rangeFill:!1,get value(){return g(u)[g(t).key]},onChange:e=>j(g(t).key,e,!1),onCommit:e=>j(g(t).key,e,!0),icon:n,$$slots:{icon:!0}})}}),w(ne),w(X);var re=e(X,2),ie=t=>{var n=Zn(),r=y(n);Lt(r,{children:(e,t)=>{U(),c(e,a(`Pixel ratio`))},$$slots:{default:!0}}),Ft(e(r,2),{label:`Factor`,min:1,get value(){return g(s).pixelRatio},onChange:e=>P(e,!1),onCommit:e=>P(e,!0),icon:e=>{Ee(e,{name:`ratio`})},$$slots:{icon:!0}}),w(n),c(t,n)};t(re,e=>{g(s).mode===`nine`&&e(ie)});var ae=e(re,2),Z=y(ae);Lt(Z,{children:(e,t)=>{U(),c(e,a(`Output`))},$$slots:{default:!0}});var Q=e(Z,2);Vt(y(Q),{label:`Preset`,caption:`Preset`,get value(){return g(s).preset},get options(){return i.presetNames},onChange:I,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(Q),w(ae),Gt(e(ae,2),{get proxy(){return i.asset.proxy},showDimensions:!0}),c(n,R),F()}s([`click`]);var er=d(`<div class="preview-panel svelte-1mjaycs"><div class="bar svelte-1mjaycs"><span class="size svelte-1mjaycs"> </span> <button class="reset svelte-1mjaycs">Reset</button></div> <div class="stage checkerboard svelte-1mjaycs"><div class="box svelte-1mjaycs"><!> <div class="handle edge-right svelte-1mjaycs" role="separator" aria-label="Drag width" aria-orientation="vertical"></div> <div class="handle edge-bottom svelte-1mjaycs" role="separator" aria-label="Drag height" aria-orientation="horizontal"></div> <div class="handle corner svelte-1mjaycs" role="separator" aria-label="Drag size"></div></div></div></div>`);function tr(t,n){V(n,!0);function r(){return Math.round(Math.min(360,Math.max(80,n.entry.sourceWidth*2)))}function i(){return Math.round(r()*n.entry.sourceHeight/Math.max(1,n.entry.sourceWidth))}let a=N(T(_(()=>r()))),s=N(T(_(()=>i()))),l=N(null),u={pointerX:0,pointerY:0,width:0,height:0};function d(e,t){t.preventDefault(),H(l,e,!0),u={pointerX:t.clientX,pointerY:t.clientY,width:g(a),height:g(s)},Et(t.currentTarget,t)}function f(e){g(l)&&(g(l)!==`y`&&H(a,Math.max(16,Math.round(u.width+(e.clientX-u.pointerX))),!0),g(l)!==`x`&&H(s,Math.max(16,Math.round(u.height+(e.clientY-u.pointerY))),!0))}function m(e){g(l)&&Dt(e.currentTarget,e.pointerId),H(l,null)}function h(){H(a,r(),!0),H(s,i(),!0)}var v=er(),b=y(v),x=y(b),S=y(x);w(x);var C=e(x,2);w(b);var E=e(b,2),D=y(E);let O;var A=y(D);En(A,{get src(){return n.entry},class:`fill`});var j=e(A,2),M=e(j,2),P=e(M,2);w(D),w(E),w(v),o(()=>{k(S,`${g(a)??``} × ${g(s)??``} px`),O=K(D,``,O,{width:`${g(a)??``}px`,height:`${g(s)??``}px`})}),p(`click`,C,h),p(`pointerdown`,j,e=>d(`x`,e)),p(`pointermove`,j,f),p(`pointerup`,j,m),q(`pointercancel`,j,m),p(`pointerdown`,M,e=>d(`y`,e)),p(`pointermove`,M,f),p(`pointerup`,M,m),q(`pointercancel`,M,m),p(`pointerdown`,P,e=>d(`both`,e)),p(`pointermove`,P,f),p(`pointerup`,P,m),q(`pointercancel`,P,m),c(t,v),F()}s([`click`,`pointerdown`,`pointermove`,`pointerup`]);var nr=d(`<div></div>`),rr=d(`<div class="overdraw-band svelte-1jfrg6d"></div>`),ir=d(`<div role="slider" aria-label="Left slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Right slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div>`,1),ar=d(`<div role="slider" aria-label="Top slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Bottom slice line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div>`,1),or=d(`<div class="canvas svelte-1jfrg6d"><div class="toolbar svelte-1jfrg6d"><button title="Zoom out" class="svelte-1jfrg6d">−</button> <span class="zoom svelte-1jfrg6d"> </span> <button title="Zoom in" class="svelte-1jfrg6d">+</button> <button title="100%">1:1</button> <button>Fit</button> <span class="dims svelte-1jfrg6d"> </span></div> <div role="application" aria-label="Slice canvas — drag to pan, pinch/⌘+scroll to zoom"><div class="image-wrap svelte-1jfrg6d"><img alt="" draggable="false" class="svelte-1jfrg6d"/> <!> <!> <!> <!> <!> <div role="slider" aria-label="Left overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Right overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Top overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <div role="slider" aria-label="Bottom overdraw line" tabindex="0"><span class="tag svelte-1jfrg6d"> </span></div> <!> <!></div></div></div>`);function sr(n,r){V(r,!0);let i=N(void 0),a=N(void 0),s=N(null),l=null,u=z(()=>Y(r.mode)),d=z(()=>g(u).horizontal),m=z(()=>g(u).vertical);function h(e,t){return g(s)?.target===e&&g(s).side===t}let _=N(`fit`),v=N(1),b=N(0),x=N(0),C=N(0),T=N(0),E=N(!1),D=new Map,O=null;function A(e){return Math.max(.05,Math.min(8,e))}L(()=>{let e=g(i);if(!e)return;let t=new ResizeObserver(()=>{H(C,e.clientWidth,!0),H(T,e.clientHeight,!0)});return t.observe(e),()=>t.disconnect()}),L(()=>{if(g(_)===`free`||r.width===0||r.height===0||g(C)===0||g(T)===0)return;let e=A(Math.min((g(C)-32)/r.width,(g(T)-32)/r.height));j(g(_)===`one`?1:e)});function j(e){H(v,e,!0),H(b,(g(C)-r.width*e)/2),H(x,(g(T)-r.height*e)/2)}function M(e,t){if(!g(i))return{x:e,y:t};let n=g(i).getBoundingClientRect();return{x:e-n.left-g(i).clientLeft,y:t-n.top-g(i).clientTop}}function P(e,t,n){let r=A(e);H(b,t-(t-g(b))*(r/g(v))),H(x,n-(n-g(x))*(r/g(v))),H(v,r,!0),H(_,`free`)}function R(e,t,n){return Math.max(t,Math.min(n,Math.round(e)))}function U(){H(_,`fit`)}function W(){H(_,`one`)}function G(e){P(g(v)*e,g(C)/2,g(T)/2)}function J(){let[e,t]=[...D.values()];return{distance:Math.hypot(e.x-t.x,e.y-t.y),midX:(e.x+t.x)/2,midY:(e.y+t.y)/2}}function ee(e){try{g(i)&&Et(g(i),e)}catch{}D.set(e.pointerId,{x:e.clientX,y:e.clientY}),D.size===2?O=J():D.size===1&&H(E,!0)}function X(e){let t=D.get(e.pointerId);if(t)if(D.set(e.pointerId,{x:e.clientX,y:e.clientY}),D.size>=2&&O){let e=J(),t=M(O.midX,O.midY);P(g(v)*(e.distance/O.distance),t.x,t.y),H(b,g(b)+(e.midX-O.midX)),H(x,g(x)+(e.midY-O.midY)),O=e}else D.size===1&&(H(b,g(b)+(e.clientX-t.x)),H(x,g(x)+(e.clientY-t.y)),H(_,`free`))}function te(e){D.delete(e.pointerId),D.size<2&&(O=null),D.size===0&&H(E,!1)}function ne(e){if(e.preventDefault(),e.ctrlKey||e.metaKey){let t=M(e.clientX,e.clientY);P(g(v)*Math.exp(-e.deltaY*.01),t.x,t.y)}else H(b,g(b)-e.deltaX),H(x,g(x)-e.deltaY),H(_,`free`)}function re(e,t,n){n.preventDefault(),n.stopPropagation(),H(s,{target:e,side:t},!0),l=null,Et(n.currentTarget,n)}function ie(e){if(!g(s)||!g(a))return;let t=g(a).getBoundingClientRect(),n=(e.clientX-t.left)/g(v),i=(e.clientY-t.top)/g(v),{target:o,side:c}=g(s),l={...o===`inset`?r.insets:r.overdraw};c===`left`?l.left=R(n,0,Q(o,`left`)):c===`right`?l.right=R(r.width-n,0,Q(o,`right`)):c===`top`?l.top=R(i,0,Q(o,`top`)):c===`bottom`&&(l.bottom=R(r.height-i,0,Q(o,`bottom`))),ae(o,l)}function ae(e,t){l={target:e,value:t},e===`inset`?r.onChange(t):r.onOverdrawChange(t)}function Z(e){let t=g(s)!==null;g(s)&&Dt(e.currentTarget,e.pointerId),H(s,null),t&&l&&r.onCommit(l.target,l.value),l=null}function Q(e,t){let n=e===`inset`?r.insets:r.overdraw;return e===`inset`?we(n,t,r.width,r.height):se(n,t,r.width,r.height)}function oe(e,t,n){let i=e===`inset`?r.insets:r.overdraw,a={...i};a[t]=R(i[t]+n,0,Q(e,t)),a[t]!==i[t]&&(ae(e,a),r.onCommit(e,a),l=null)}function ce(e,t,n,r){let i=r.shiftKey?10:1,a=n===`x`?`ArrowRight`:`ArrowUp`,o=n===`x`?`ArrowLeft`:`ArrowDown`;if(r.key===a)oe(e,t,i);else if(r.key===o)oe(e,t,-i);else return;r.preventDefault()}var le=or(),ue=y(le),de=y(ue),fe=e(de,2),pe=y(fe);w(fe);var me=e(fe,2),he=e(me,2);let ge;var _e=e(he,2);let ve;var ye=e(_e,2),$=y(ye);w(ye),w(ue);var be=e(ue,2);let xe;var Se=y(be);let Ce;var Te=y(Se),Ee=e(Te,2),De=e=>{var t=nr();let n,i;o(()=>{n=S(t,1,`center-rect svelte-1jfrg6d`,null,n,{"side-edges":!g(d),"cap-edges":!g(m)}),i=K(t,``,i,{left:`${(g(d)?r.insets.left:0)*g(v)}px`,top:`${(g(m)?r.insets.top:0)*g(v)}px`,right:`${(g(d)?r.insets.right:0)*g(v)}px`,bottom:`${(g(m)?r.insets.bottom:0)*g(v)}px`})}),c(e,t)};t(Ee,e=>{(g(d)||g(m))&&e(De)});var Oe=e(Ee,2),ke=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{left:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.left*g(v)}px`})),c(e,t)};t(Oe,e=>{r.overdraw.left>0&&e(ke)});var Ae=e(Oe,2),je=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{right:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.right*g(v)}px`})),c(e,t)};t(Ae,e=>{r.overdraw.right>0&&e(je)});var Me=e(Ae,2),Ne=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{top:`0`,left:`${r.overdraw.left*g(v)}px`,right:`${r.overdraw.right*g(v)}px`,height:`${r.overdraw.top*g(v)}px`})),c(e,t)};t(Me,e=>{r.overdraw.top>0&&e(Ne)});var Pe=e(Me,2),Fe=e=>{var t=rr();let n;o(()=>n=K(t,``,n,{bottom:`0`,left:`${r.overdraw.left*g(v)}px`,right:`${r.overdraw.right*g(v)}px`,height:`${r.overdraw.bottom*g(v)}px`})),c(e,t)};t(Pe,e=>{r.overdraw.bottom>0&&e(Fe)});var Ie=e(Pe,2);let Le;I(Ie,`aria-valuemin`,0);let Re;var ze=y(Ie),Be=y(ze,!0);w(ze),w(Ie);var Ve=e(Ie,2);let He;I(Ve,`aria-valuemin`,0);let Ue;var We=y(Ve),Ge=y(We,!0);w(We),w(Ve);var Ke=e(Ve,2);let qe;I(Ke,`aria-valuemin`,0);let Je;var Ye=y(Ke),Xe=y(Ye,!0);w(Ye),w(Ke);var Ze=e(Ke,2);let Qe;I(Ze,`aria-valuemin`,0);let $e;var et=y(Ze),tt=y(et,!0);w(et),w(Ze);var nt=e(Ze,2),rt=t=>{var n=ir(),i=f(n);let a;I(i,`aria-valuemin`,0);let s;var l=y(i),u=y(l,!0);w(l),w(i);var d=e(i,2);let m;I(d,`aria-valuemin`,0);let _;var b=y(d),x=y(b,!0);w(b),w(d),o((e,t,n,o)=>{a=S(i,1,`line v svelte-1jfrg6d`,null,a,e),I(i,`aria-valuenow`,r.insets.left),I(i,`aria-valuemax`,t),s=K(i,``,s,{left:`${r.insets.left*g(v)}px`}),k(u,r.insets.left),m=S(d,1,`line v svelte-1jfrg6d`,null,m,n),I(d,`aria-valuenow`,r.insets.right),I(d,`aria-valuemax`,o),_=K(d,``,_,{left:`${(r.width-r.insets.right)*g(v)}px`}),k(x,r.insets.right)},[()=>({active:h(`inset`,`left`)}),()=>Q(`inset`,`left`),()=>({active:h(`inset`,`right`)}),()=>Q(`inset`,`right`)]),p(`pointerdown`,i,e=>re(`inset`,`left`,e)),p(`pointermove`,i,ie),p(`pointerup`,i,Z),q(`pointercancel`,i,Z),p(`keydown`,i,e=>ce(`inset`,`left`,`x`,e)),p(`pointerdown`,d,e=>re(`inset`,`right`,e)),p(`pointermove`,d,ie),p(`pointerup`,d,Z),q(`pointercancel`,d,Z),p(`keydown`,d,e=>ce(`inset`,`right`,`x`,e)),c(t,n)};t(nt,e=>{g(d)&&e(rt)});var it=e(nt,2),at=t=>{var n=ar(),i=f(n);let a;I(i,`aria-valuemin`,0);let s;var l=y(i),u=y(l,!0);w(l),w(i);var d=e(i,2);let m;I(d,`aria-valuemin`,0);let _;var b=y(d),x=y(b,!0);w(b),w(d),o((e,t,n,o)=>{a=S(i,1,`line h svelte-1jfrg6d`,null,a,e),I(i,`aria-valuenow`,r.insets.top),I(i,`aria-valuemax`,t),s=K(i,``,s,{top:`${r.insets.top*g(v)}px`}),k(u,r.insets.top),m=S(d,1,`line h svelte-1jfrg6d`,null,m,n),I(d,`aria-valuenow`,r.insets.bottom),I(d,`aria-valuemax`,o),_=K(d,``,_,{top:`${(r.height-r.insets.bottom)*g(v)}px`}),k(x,r.insets.bottom)},[()=>({active:h(`inset`,`top`)}),()=>Q(`inset`,`top`),()=>({active:h(`inset`,`bottom`)}),()=>Q(`inset`,`bottom`)]),p(`pointerdown`,i,e=>re(`inset`,`top`,e)),p(`pointermove`,i,ie),p(`pointerup`,i,Z),q(`pointercancel`,i,Z),p(`keydown`,i,e=>ce(`inset`,`top`,`y`,e)),p(`pointerdown`,d,e=>re(`inset`,`bottom`,e)),p(`pointermove`,d,ie),p(`pointerup`,d,Z),q(`pointercancel`,d,Z),p(`keydown`,d,e=>ce(`inset`,`bottom`,`y`,e)),c(t,n)};t(it,e=>{g(m)&&e(at)}),w(Se),B(Se,e=>H(a,e),()=>g(a)),w(be),B(be,e=>H(i,e),()=>g(i)),w(le),o((e,t,n,i,a,o,s,c,l)=>{k(pe,`${e??``}%`),ge=S(he,1,`svelte-1jfrg6d`,null,ge,{active:g(_)===`one`}),ve=S(_e,1,`svelte-1jfrg6d`,null,ve,{active:g(_)===`fit`}),k($,`${r.width??``} × ${r.height??``} px`),xe=S(be,1,`viewport checkerboard svelte-1jfrg6d`,null,xe,{panning:g(E)}),Ce=K(Se,``,Ce,{width:`${r.width*g(v)}px`,height:`${r.height*g(v)}px`,transform:`translate(${g(b)??``}px, ${g(x)??``}px)`}),I(Te,`src`,r.src),Le=S(Ie,1,`line v overdraw-line svelte-1jfrg6d`,null,Le,t),I(Ie,`aria-valuenow`,r.overdraw.left),I(Ie,`aria-valuemax`,n),Re=K(Ie,``,Re,{left:`${r.overdraw.left*g(v)}px`}),k(Be,r.overdraw.left),He=S(Ve,1,`line v overdraw-line svelte-1jfrg6d`,null,He,i),I(Ve,`aria-valuenow`,r.overdraw.right),I(Ve,`aria-valuemax`,a),Ue=K(Ve,``,Ue,{left:`${(r.width-r.overdraw.right)*g(v)}px`}),k(Ge,r.overdraw.right),qe=S(Ke,1,`line h overdraw-line svelte-1jfrg6d`,null,qe,o),I(Ke,`aria-valuenow`,r.overdraw.top),I(Ke,`aria-valuemax`,s),Je=K(Ke,``,Je,{top:`${r.overdraw.top*g(v)}px`}),k(Xe,r.overdraw.top),Qe=S(Ze,1,`line h overdraw-line svelte-1jfrg6d`,null,Qe,c),I(Ze,`aria-valuenow`,r.overdraw.bottom),I(Ze,`aria-valuemax`,l),$e=K(Ze,``,$e,{top:`${(r.height-r.overdraw.bottom)*g(v)}px`}),k(tt,r.overdraw.bottom)},[()=>Math.round(g(v)*100),()=>({active:h(`overdraw`,`left`)}),()=>Q(`overdraw`,`left`),()=>({active:h(`overdraw`,`right`)}),()=>Q(`overdraw`,`right`),()=>({active:h(`overdraw`,`top`)}),()=>Q(`overdraw`,`top`),()=>({active:h(`overdraw`,`bottom`)}),()=>Q(`overdraw`,`bottom`)]),p(`click`,de,()=>G(1/1.25)),p(`click`,me,()=>G(1.25)),p(`click`,he,W),p(`click`,_e,U),p(`pointerdown`,be,ee),p(`pointermove`,be,X),p(`pointerup`,be,te),q(`pointercancel`,be,te),q(`wheel`,be,ne),p(`pointerdown`,Ie,e=>re(`overdraw`,`left`,e)),p(`pointermove`,Ie,ie),p(`pointerup`,Ie,Z),q(`pointercancel`,Ie,Z),p(`keydown`,Ie,e=>ce(`overdraw`,`left`,`x`,e)),p(`pointerdown`,Ve,e=>re(`overdraw`,`right`,e)),p(`pointermove`,Ve,ie),p(`pointerup`,Ve,Z),q(`pointercancel`,Ve,Z),p(`keydown`,Ve,e=>ce(`overdraw`,`right`,`x`,e)),p(`pointerdown`,Ke,e=>re(`overdraw`,`top`,e)),p(`pointermove`,Ke,ie),p(`pointerup`,Ke,Z),q(`pointercancel`,Ke,Z),p(`keydown`,Ke,e=>ce(`overdraw`,`top`,`y`,e)),p(`pointerdown`,Ze,e=>re(`overdraw`,`bottom`,e)),p(`pointermove`,Ze,ie),p(`pointerup`,Ze,Z),q(`pointercancel`,Ze,Z),p(`keydown`,Ze,e=>ce(`overdraw`,`bottom`,`y`,e)),c(n,le),F()}s([`click`,`pointerdown`,`pointermove`,`pointerup`,`keydown`]);function cr(e){return Number.isFinite(e)?Math.round(Math.min(80,Math.max(20,e))*10)/10:50}function lr(e,t,n){return cr((e-t)/Math.max(1,n)*100)}var ur=d(`<div class="empty error svelte-1ea2lvt"> </div>`),dr=d(`<div class="empty svelte-1ea2lvt">Loading image…</div>`),fr=d(`<div><div class="pane slicing-pane svelte-1ea2lvt"><!></div> <div role="separator" aria-label="Resize slicing and preview panes" aria-orientation="vertical" tabindex="0" title="Drag to resize slicing and preview panes"></div> <div class="pane preview-pane svelte-1ea2lvt"><!></div></div>`),pr=d(`<div class="editor svelte-1ea2lvt"><!></div>`);function mr(n,r){V(r,!0);let i=N(null),a=N(null),s=null,l=N(void 0),u=N(!1),d=`fundus:slice-editor-split`;function f(){try{return cr(Number.parseFloat(localStorage.getItem(d)??``))}catch{return 50}}let m=N(T(f()));L(()=>{try{localStorage.setItem(d,String(g(m)))}catch{}});function h(e){if(!g(l))return;let t=g(l).getBoundingClientRect();H(m,lr(e,t.left,t.width),!0)}function _(e){e.preventDefault(),H(u,!0),h(e.clientX),Et(e.currentTarget,e)}function v(e){g(u)&&h(e.clientX)}function b(e){g(u)&&Dt(e.currentTarget,e.pointerId),H(u,!1)}function x(e){let t=e.shiftKey?10:2;if(e.key===`ArrowLeft`)H(m,cr(g(m)-t),!0);else if(e.key===`ArrowRight`)H(m,cr(g(m)+t),!0);else if(e.key===`Home`)H(m,20,!0);else if(e.key===`End`)H(m,80,!0);else return;e.preventDefault()}L(()=>{let e=r.asset.rawUrl;s!==e&&(s=e,H(i,null),H(a,null));let t=!1;return qn(e).then(n=>{!t&&s===e&&H(i,n,!0)},n=>{!t&&s===e&&H(a,n instanceof Error?n.message:String(n),!0)}),()=>{t=!0}});let C=z(()=>{try{return Te.validateParameters(r.parameters)}catch{return null}}),E=z(()=>{if(!g(C)||!g(i))return null;let e=r.asset.proxy?.width??g(i).width,t=r.asset.proxy?.height??g(i).height;return{id:r.asset.id,kind:`slice`,src:r.asset.proxy?.url??r.asset.rawUrl,byteSize:r.asset.proxy?.fileSize??0,slicing:{mode:g(C).mode,insets:Se({...g(C),width:e,height:t}),pixelRatio:g(C).pixelRatio,...g(C).overdraw?{overdraw:g(C).overdraw}:{}},sourceWidth:e,sourceHeight:t}});var D=pr(),O=y(D),j=e=>{var t=ur(),n=y(t,!0);w(t),o(()=>k(n,g(a))),c(e,t)},M=e=>{c(e,dr())},P=t=>{var n=fr();let a,s;var d=y(n),f=y(d);{let e=z(()=>g(C).overdraw??fe());sr(f,{get src(){return r.asset.rawUrl},get width(){return g(i).width},get height(){return g(i).height},get mode(){return g(C).mode},get insets(){return g(C).insets},get overdraw(){return g(e)},onChange:e=>r.onParametersChange({...g(C),insets:e}),onOverdrawChange:e=>r.onParametersChange({...g(C),overdraw:e}),onCommit:(e,t)=>r.onParametersCommit(e===`inset`?{...g(C),insets:t}:{...g(C),overdraw:t})})}w(d);var h=e(d,2);let T;var D=e(h,2);A(y(D),()=>r.asset.id,e=>{tr(e,{get entry(){return g(E)}})}),w(D),w(n),B(n,e=>H(l,e),()=>g(l)),o(e=>{a=S(n,1,`split-layout svelte-1ea2lvt`,null,a,{resizing:g(u)}),s=K(n,``,s,{"--slice-position":`${g(m)}%`}),T=S(h,1,`splitter svelte-1ea2lvt`,null,T,{active:g(u)}),I(h,`aria-valuemin`,20),I(h,`aria-valuemax`,80),I(h,`aria-valuenow`,e)},[()=>Math.round(g(m))]),p(`pointerdown`,h,_),p(`pointermove`,h,v),p(`pointerup`,h,b),q(`pointercancel`,h,b),q(`lostpointercapture`,h,()=>H(u,!1)),p(`keydown`,h,x),c(t,n)};t(O,e=>{g(a)?e(j):!g(C)||!g(i)?e(M,1):g(E)&&e(P,2)}),w(D),c(n,D),F()}s([`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var hr=d(`<div class="field svelte-ij1927"><!></div>`),gr=d(`<section class="svelte-ij1927"><!> <div class="field svelte-ij1927"><!></div> <!></section> <!>`,1);function _r(n,r){V(r,!0);let i=z(()=>te.validateParameters(r.parameters)),o=z(()=>r.presetCapabilities[g(i).preset]?.maxWidth!==!1);function s(e){r.onParametersCommit(e)}function l(e){if(r.presetCapabilities[e]?.maxWidth===!1){let{maxWidth:t,...n}=g(i);s({...n,preset:e});return}s({...g(i),preset:e})}function u(e,t){let n=Me(g(i),e);t?s(n):r.onParametersChange(n)}var d=gr(),p=f(d),m=y(p);Lt(m,{children:(e,t)=>{U(),c(e,a(`Video`))},$$slots:{default:!0}});var h=e(m,2);Vt(y(h),{label:`Preset`,caption:`Preset`,get value(){return g(i).preset},get options(){return r.presetNames},onChange:l,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(h);var _=e(h,2),v=e=>{var t=hr(),n=y(t);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(i).maxWidth??null);Ft(n,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>u(e,!1),onCommit:e=>u(e,!0),icon:e,$$slots:{icon:!0}})}w(t),c(e,t)};t(_,e=>{g(o)&&e(v)}),w(p),Gt(e(p,2),{get proxy(){return r.asset.proxy},showDimensions:!0,showDuration:!0}),c(n,d),F()}var vr=d(`<div class="preview-column svelte-qls820"><div class="video-frame svelte-qls820"><!></div> <!></div>`),yr=d(`<p class="svelte-qls820">No proxy yet — add the asset to a manifest to process it.</p>`),br=d(`<div class="stage checkerboard svelte-qls820"><!></div>`);function xr(n,r){V(r,!0);let i=N(void 0),a=z(()=>!r.asset.proxy||r.asset.proxy.width===void 0||r.asset.proxy.height===void 0||r.asset.proxy.durationMs===void 0?null:{id:r.asset.id,kind:`video`,src:r.asset.proxy.url,byteSize:r.asset.proxy.fileSize,width:r.asset.proxy.width,height:r.asset.proxy.height,durationMs:r.asset.proxy.durationMs});var s=br(),l=y(s),u=t=>{var n=vr(),r=y(n);let s;A(y(r),()=>g(a).src,e=>{On(e,{get src(){return g(a)},loop:!0,get videoElement(){return g(i)},set videoElement(e){H(i,e,!0)}})}),w(r),st(e(r,2),{get media(){return g(i)},showScrub:!0,showVolume:!0}),w(n),o(()=>s=K(r,``,s,{"aspect-ratio":`${g(a).width??``} / ${g(a).height??``}`})),c(t,n)},d=e=>{c(e,yr())};t(l,e=>{g(a)?e(u):e(d,-1)}),w(s),c(n,s),F()}var Sr=d(`<video playsinline="" preload="metadata" class="svelte-ejgo9x"></video>`,2);function Cr(e,t){V(t,!0);function n(e){e.currentTime=0,e.play().catch(()=>{})}function r(e){e.pause(),e.currentTime=0}var i=Sr();i.muted=!0,o(()=>I(i,`src`,t.asset.proxy?.url??t.asset.rawUrl)),q(`pointerenter`,i,e=>n(e.currentTarget)),q(`pointerleave`,i,e=>r(e.currentTarget)),c(e,i),F()}var wr=d(`<span class="caption svelte-56kutb"> </span>`),Tr=d(`<img class="preview svelte-56kutb" alt=""/>`),Er=d(`<span class="missing-preview svelte-56kutb" title="References an unknown asset">!</span>`),Dr=d(`<span class="id svelte-56kutb"> </span>`),Or=d(`<span class="id dangling svelte-56kutb" title="References an unknown asset"> </span>`),kr=d(`<span class="placeholder svelte-56kutb"> </span>`),Ar=d(`<button class="clear svelte-56kutb">×</button>`),jr=d(`<p class="hint svelte-56kutb"> </p>`),Mr=d(`<button><img class="thumbnail svelte-56kutb" alt=""/> <span class="id svelte-56kutb"> </span></button>`),Nr=d(`<div class="dropdown svelte-56kutb"><!></div>`),Pr=d(`<div class="picker svelte-56kutb"><!> <div class="reference-input control svelte-56kutb"><button><span class="preview-slot svelte-56kutb"><!></span> <!></button> <!> <!></div></div>`);function Fr(n,i){V(i,!0);let a=N(!1),s=z(()=>($.state?.assets??[]).filter(e=>i.expectedTypes.includes(e.type)&&e.id!==i.excludeAssetId)),u=z(()=>i.value?$.assetById(i.value.$asset):null);function d(e){H(a,!1),i.onChange({$asset:e})}function m(){H(a,!1),i.onChange(void 0)}var h=Pr(),_=y(h),v=e=>{var t=wr(),n=y(t,!0);w(t),o(()=>k(n,i.caption)),c(e,t)};t(_,e=>{i.caption&&e(v)});var b=e(_,2),x=y(b);let C;var T=y(x),E=y(T),D=e=>{var t=Tr();o(()=>I(t,`src`,g(u).rawUrl)),c(e,t)},O=e=>{c(e,Er())};t(E,e=>{i.value&&g(u)?e(D):i.value&&e(O,1)}),w(T);var A=e(T,2),j=e=>{var n=l(),r=f(n),a=e=>{var t=Dr(),n=y(t,!0);w(t),o(()=>k(n,g(u).id)),c(e,t)},s=e=>{var t=Or(),n=y(t,!0);w(t),o(()=>k(n,i.value.$asset)),c(e,t)};t(r,e=>{g(u)?e(a):e(s,-1)}),c(e,n)},M=e=>{var t=kr(),n=y(t);w(t),o(e=>k(n,`Select ${e??``}...`),[()=>i.expectedTypes.join(`/`)]),c(e,t)};t(A,e=>{i.value?e(j):e(M,-1)}),w(x);var P=e(x,2),L=e=>{var t=Ar();o(()=>I(t,`title`,`Clear ${i.label??``}`)),p(`click`,t,m),c(e,t)};t(P,e=>{i.value&&e(L)});var R=e(P,2),B=n=>{var a=Nr(),u=y(a),m=e=>{var t=jr(),n=y(t);w(t),o(e=>k(n,`No ${e??``} assets in the library.`),[()=>i.expectedTypes.join(`/`)]),c(e,t)},h=t=>{var n=l();r(f(n),17,()=>g(s),e=>e.id,(t,n)=>{var r=Mr();let a;var s=y(r),l=e(s,2),u=y(l,!0);w(l),w(r),o(()=>{a=S(r,1,`option svelte-56kutb`,null,a,{selected:i.value?.$asset===g(n).id}),I(s,`src`,g(n).rawUrl),k(u,g(n).id)}),p(`click`,r,()=>d(g(n).id)),c(t,r)}),c(t,n)};t(u,e=>{g(s).length===0?e(m):e(h,-1)}),w(a),c(n,a)};t(R,e=>{g(a)&&e(B)}),w(b),w(h),o(()=>{C=S(x,1,`current svelte-56kutb`,null,C,{empty:!i.value}),I(x,`title`,i.value?`Change ${i.label}`:`Select ${i.label}`)}),p(`click`,x,()=>H(a,!g(a))),c(n,h),F()}s([`click`]);var Ir=d(`<span class="caption svelte-gjs979"> </span>`),Lr=d(`<div class="color-field svelte-gjs979"><!> <div class="color-input control svelte-gjs979"><span class="swatch-slot svelte-gjs979"><input class="swatch svelte-gjs979" type="color" title="Open color picker"/></span> <input class="hex-input svelte-gjs979" type="text" maxlength="7" spellcheck="false"/></div></div>`);function Rr(n,r){V(r,!0);let i=N(null),a=/^#[0-9a-f]{6}$/i;function s(e){let t=e.startsWith(`#`)?e:`#${e}`;return a.test(t)?t.toUpperCase():null}function l(e){let t=e.currentTarget.value.toUpperCase();H(i,t,!0),r.onChange?.(t)}function u(e){let t=e.currentTarget.value.toUpperCase();H(i,t,!0),r.onCommit(t)}function d(e){H(i,e.currentTarget.value,!0);let t=s(g(i));t&&r.onChange?.(t)}function f(){let e=s(g(i)??r.value);e&&r.onCommit(e),H(i,null)}function m(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(H(i,null),e.currentTarget.value=r.value,e.currentTarget.blur())}var h=Lr(),_=y(h),v=e=>{var t=Ir(),n=y(t,!0);w(t),o(()=>k(n,r.caption)),c(e,t)};t(_,e=>{r.caption&&e(v)});var b=e(_,2),x=y(b),S=y(x);E(S),w(x);var C=e(x,2);E(C),w(b),w(h),o(()=>{O(S,r.value),I(S,`aria-label`,`${r.label} color picker`),O(C,g(i)??r.value),I(C,`aria-label`,`${r.label} hex value`)}),p(`input`,S,l),p(`change`,S,u),q(`focus`,C,()=>H(i,r.value,!0)),p(`input`,C,d),q(`blur`,C,f),p(`keydown`,C,m),c(n,h),F()}s([`input`,`change`,`keydown`]);var zr=d(`<div class="field svelte-rsjkek"><!></div>`),Br=d(`<section class="svelte-rsjkek"><!> <div class="field svelte-rsjkek"><!></div> <!></section> <section class="svelte-rsjkek"><!> <div class="field svelte-rsjkek"><!></div> <!></section> <section class="svelte-rsjkek"><!> <!> <!></section> <!>`,1);function Vr(n,i){V(i,!0);let o=z(()=>ce.validateParameters(i.parameters)),s=z(()=>i.presetCapabilities[g(o).preset]?.maxWidth!==!1);function l(e){i.onParametersCommit(e)}function u(e){if(i.presetCapabilities[e]?.maxWidth===!1){let{maxWidth:t,...n}=g(o);l({...n,preset:e});return}l({...g(o),preset:e})}function d(e,t){let n=Me(g(o),e);t?l(n):i.onParametersChange(n)}function p(e){return{...g(o),chromaKey:e}}let m=[{key:`colorCutoff`,label:`Color cutoff`,icon:`cutoff`,min:0,max:.6,step:.005},{key:`colorFeathering`,label:`Color feathering`,icon:`color-feather`,min:0,max:.8,step:.005},{key:`maskFeathering`,label:`Mask feathering`,icon:`mask-feather`,min:0,max:1,step:.01},{key:`sharpening`,label:`Sharpening`,icon:`sharpen`,min:0,max:1,step:.01},{key:`despill`,label:`Despill`,icon:`despill`,min:0,max:1,step:.01},{key:`despillLuminanceAdd`,label:`Despill lum. add`,icon:`despill-lum`,min:0,max:1,step:.01}];function h(e,t,n){let r=p({...g(o).chromaKey,[e]:t});n?l(r):i.onParametersChange(r)}function _(e){return Math.round(Math.min(1,Math.max(0,e))*255).toString(16).padStart(2,`0`)}function v(e){return`#${_(e[0])}${_(e[1])}${_(e[2])}`}function b(e){let t=parseInt(e.slice(1),16);return[(t>>16&255)/255,(t>>8&255)/255,(t&255)/255]}function x(e,t){let n=p({...g(o).chromaKey,keyColor:b(e)});t?l(n):i.onParametersChange(n)}function S(e,t){let{[e]:n,...r}=g(o);l(t?{...r,[e]:t}:r)}var C=Br(),T=f(C),E=y(T);Lt(E,{children:(e,t)=>{U(),c(e,a(`Video`))},$$slots:{default:!0}});var D=e(E,2);Vt(y(D),{label:`Preset`,caption:`Preset`,get value(){return g(o).preset},get options(){return i.presetNames},onChange:u,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(D);var O=e(D,2),k=e=>{var t=zr(),n=y(t);{let e=e=>{Ee(e,{name:`width`})},t=z(()=>g(o).maxWidth??null);Ft(n,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return g(t)},onChange:e=>d(e,!1),onCommit:e=>d(e,!0),icon:e,$$slots:{icon:!0}})}w(t),c(e,t)};t(O,e=>{g(s)&&e(k)}),w(T);var A=e(T,2),j=y(A);Lt(j,{children:(e,t)=>{U(),c(e,a(`Chroma key`))},$$slots:{default:!0}});var M=e(j,2),N=y(M);{let e=z(()=>v(g(o).chromaKey.keyColor));Rr(N,{label:`Key color`,caption:`Key color`,get value(){return g(e)},onChange:e=>x(e,!1),onCommit:e=>x(e,!0)})}w(M),r(e(M,2),17,()=>m,e=>e.key,(e,t)=>{var n=zr();Ft(y(n),{get label(){return g(t).label},get caption(){return g(t).label},get min(){return g(t).min},get max(){return g(t).max},get step(){return g(t).step},get value(){return g(o).chromaKey[g(t).key]},onChange:e=>h(g(t).key,e??g(t).min,!1),onCommit:e=>h(g(t).key,e??g(t).min,!0),icon:e=>{Ee(e,{get name(){return g(t).icon}})},$$slots:{icon:!0}}),w(n),c(e,n)}),w(A);var P=e(A,2),I=y(P);Lt(I,{children:(e,t)=>{U(),c(e,a(`References`))},$$slots:{default:!0}});var L=e(I,2);Fr(L,{label:`Mask`,caption:`Mask`,get value(){return g(o).mask},expectedTypes:[`image`],get excludeAssetId(){return i.asset.id},onChange:e=>S(`mask`,e)}),Fr(e(L,2),{label:`Fallback`,caption:`Fallback`,get value(){return g(o).fallback},expectedTypes:[`image`],get excludeAssetId(){return i.asset.id},onChange:e=>S(`fallback`,e)}),w(P),Gt(e(P,2),{get proxy(){return i.asset.proxy},showDimensions:!0,showDuration:!0}),c(n,C),F()}var Hr=d(`<div class="preview-column svelte-1y3xro5"><div class="compare-row svelte-1y3xro5"><figure class="svelte-1y3xro5"><figcaption class="svelte-1y3xro5">Input</figcaption> <div class="video-frame svelte-1y3xro5"><!></div></figure> <figure class="svelte-1y3xro5"><figcaption class="svelte-1y3xro5">Keyed</figcaption> <div class="video-frame checkerboard svelte-1y3xro5"><!></div></figure></div> <!></div>`),Ur=d(`<p class="svelte-1y3xro5">No proxy yet — add the asset to a manifest to process it.</p>`),Wr=d(`<div class="stage svelte-1y3xro5"><!></div>`);function Gr(n,r){V(r,!0);let i=N(void 0),a=N(void 0);function s(e){if(!e)return;let t=$.assetById(e);if(!(!t?.proxy||t.proxy.width===void 0||t.proxy.height===void 0))return{id:e,kind:`image`,src:t.proxy.url,byteSize:t.proxy.fileSize,width:t.proxy.width,height:t.proxy.height}}let l=z(()=>{if(!r.asset.proxy||r.asset.proxy.width===void 0||r.asset.proxy.height===void 0||r.asset.proxy.durationMs===void 0)return null;try{let e=ce.validateParameters(r.parameters),t=s(e.mask?.$asset),n=s(e.fallback?.$asset);return{id:r.asset.id,kind:`chroma-key-video`,src:r.asset.proxy.url,byteSize:r.asset.proxy.fileSize,width:r.asset.proxy.width,height:r.asset.proxy.height,durationMs:r.asset.proxy.durationMs,chromaKey:e.chromaKey,...t?{mask:t}:{},...n?{fallback:n}:{}}}catch{return null}}),u=z(()=>g(l)?{id:g(l).id,kind:`video`,src:g(l).src,byteSize:g(l).byteSize,width:g(l).width,height:g(l).height,durationMs:g(l).durationMs}:null);L(()=>{let e=g(i),t=g(a);if(!e||!t)return;function n(){Math.abs(t.currentTime-e.currentTime)>.25&&(t.currentTime=e.currentTime)}function r(){n(),t.play().catch(()=>{})}function o(){t.pause(),t.currentTime=e.currentTime}function s(){t.currentTime=e.currentTime}return e.addEventListener(`play`,r),e.addEventListener(`playing`,r),e.addEventListener(`pause`,o),e.addEventListener(`ended`,o),e.addEventListener(`seeked`,s),e.addEventListener(`timeupdate`,n),s(),e.paused||t.play().catch(()=>{}),()=>{e.removeEventListener(`play`,r),e.removeEventListener(`playing`,r),e.removeEventListener(`pause`,o),e.removeEventListener(`ended`,o),e.removeEventListener(`seeked`,s),e.removeEventListener(`timeupdate`,n)}});var d=Wr(),f=y(d),p=t=>{var n=Hr(),r=y(n),s=y(r),d=e(y(s),2);let f;A(y(d),()=>g(u).src,e=>{On(e,{get src(){return g(u)},loop:!0,get videoElement(){return g(a)},set videoElement(e){H(a,e,!0)}})}),w(d),w(s);var p=e(s,2),m=e(y(p),2);let h;A(y(m),()=>`${g(l).src}|${g(l).mask?.src??``}`,e=>{Bn(e,{get src(){return g(l)},get videoElement(){return g(i)},set videoElement(e){H(i,e,!0)}})}),w(m),w(p),w(r),st(e(r,2),{get media(){return g(i)},showScrub:!0,showVolume:!1}),w(n),o(()=>{f=K(d,``,f,{"aspect-ratio":`${g(u).width??``} / ${g(u).height??``}`}),h=K(m,``,h,{"aspect-ratio":`${g(l).width??``} / ${g(l).height??``}`})}),c(t,n)},m=e=>{c(e,Ur())};t(f,e=>{g(l)&&g(u)?e(p):e(m,-1)}),w(d),c(n,d),F()}var Kr=d(`<section class="svelte-3jblpy"><!> <div class="field svelte-3jblpy"><!></div></section> <!>`,1);function qr(t,n){V(n,!0);let r=z(()=>X.validateParameters(n.parameters));function i(e){let t={...g(r),preset:e};n.onParametersCommit(t)}var o=Kr(),s=f(o),l=y(s);Lt(l,{children:(e,t)=>{U(),c(e,a(`Audio`))},$$slots:{default:!0}});var u=e(l,2);Vt(y(u),{label:`Preset`,caption:`Preset`,get value(){return g(r).preset},get options(){return n.presetNames},onChange:i,icon:e=>{Ee(e,{name:`preset`})},$$slots:{icon:!0}}),w(u),w(s),Gt(e(s,2),{get proxy(){return n.asset.proxy},showDuration:!0}),c(t,o),F()}function Jr(e,t){V(t,!0);{let n=z(()=>t.asset.proxy?.url??t.asset.rawUrl);gt(e,{get src(){return g(n)}})}F()}var Yr={[Ce.type]:{panel:qt,editor:Un,thumbnail:Gn},[Te.type]:{panel:$n,editor:mr,thumbnail:Gn},[te.type]:{panel:_r,editor:xr,thumbnail:Cr},[ce.type]:{panel:Vr,editor:Gr,thumbnail:Cr},[X.type]:{panel:qr,editor:bt,thumbnail:Jr}},Xr=de.project(Yr,`editor implementation`),Zr=d(`<p class="error svelte-1f5yh58">This file type is not supported (raster images, video, or audio).</p>`),Qr=d(`<button> </button>`),$r=d(`<p class="empty-manifests svelte-1f5yh58">No manifests available — this asset will be unassigned.</p>`),ei=d(`<div class="manifest-list svelte-1f5yh58"><!></div>`),ti=d(`<p class="hint warn svelte-1f5yh58"> </p>`),ni=d(`<p class="hint warn svelte-1f5yh58">An asset with this id already exists.</p>`),ri=d(`<div class="row svelte-1f5yh58"><span class="label svelte-1f5yh58">Type</span> <div class="segmented svelte-1f5yh58"></div></div> <label class="row svelte-1f5yh58"><span class="label svelte-1f5yh58">Id</span> <input class="control svelte-1f5yh58" type="text" spellcheck="false"/></label> <div class="row manifests svelte-1f5yh58"><span class="label svelte-1f5yh58">Manifests</span> <!></div> <!> <!>`,1),ii=d(`<div class="backdrop svelte-1f5yh58" role="presentation"><div class="dialog svelte-1f5yh58" role="dialog" aria-label="Import asset" tabindex="-1"><h2 class="svelte-1f5yh58">Import asset</h2> <p class="file-name svelte-1f5yh58"> </p> <p class="destination svelte-1f5yh58"> </p> <!> <div class="actions svelte-1f5yh58"><button class="control">Cancel</button> <button class="control primary"> </button></div></div></div>`);function ai(n,i){V(i,!0);let a=z(()=>pe(i.file.name)),s=N(`image`),l=N(`asset`),u=N(T([])),d=N(!1),m=N(null),h=z(()=>$.manifestNames);L(()=>{H(s,pe(i.file.name)[0]??`image`,!0),H(l,Pe(i.file.name),!0),H(u,g(h).length===0?[]:[g(h).includes(`main`)?`main`:g(h)[0]],!0)});let _=z(()=>$.state?.assets.some(e=>e.id===g(l))??!1),b=z(()=>Q(g(l))),x=z(()=>g(b)===null),C=z(()=>g(x)&&!g(_)&&g(a).length>0&&!g(d));function D(e){H(u,g(u).includes(e)?g(u).filter(t=>t!==e):[...g(u),e],!0)}async function O(){if(!g(C))return;let e=g(l),t=g(s),n=[...g(u)],r=i.file,a=i.folder;H(d,!0),H(m,null);try{await $.mutateFromServer(()=>ye(r,t,e,a,n),{dependencies:[`asset:${e}`,`folder:${a}`,...n.map(e=>`manifest:${e}`)]}),i.onDone(e)}catch(e){H(m,e instanceof Error?e.message:String(e),!0)}finally{H(d,!1)}}var A=ii();q(`keydown`,v,e=>Ne(e,{busy:g(d),confirmDisabled:!g(C),onConfirm:()=>void O(),onCancel:i.onCancel}));var M=y(A),P=e(y(M),2),I=y(P,!0);w(P);var R=e(P,2),B=y(R);w(R);var U=e(R,2),W=e=>{c(e,Zr())},G=n=>{var i=ri(),v=f(i),C=e(y(v),2);r(C,20,()=>g(a),e=>e,(e,t)=>{var n=Qr();let r;var i=y(n,!0);w(n),o(()=>{n.disabled=g(d),r=S(n,1,`svelte-1f5yh58`,null,r,{on:g(s)===t}),k(i,t)}),p(`click`,n,()=>H(s,t,!0)),c(e,n)}),w(C),w(v);var T=e(v,2),O=e(y(T),2);E(O),w(T);var A=e(T,2),M=e(y(A),2),N=e=>{c(e,$r())},P=e=>{var t=ei();Oe(y(t),{get manifests(){return g(h)},get selected(){return g(u)},passive:[],onToggle:D,get disabled(){return g(d)}}),w(t),c(e,t)};t(M,e=>{g(h).length===0?e(N):e(P,-1)}),w(A);var F=e(A,2),I=e=>{var t=ti(),n=y(t,!0);w(t),o(()=>k(n,g(b))),c(e,t)},L=e=>{c(e,ni())};t(F,e=>{g(x)?g(_)&&e(L,1):e(I)});var R=e(F,2),z=e=>{var t=ti(),n=y(t,!0);w(t),o(()=>k(n,g(m))),c(e,t)};t(R,e=>{g(m)&&e(z)}),o(()=>O.disabled=g(d)),j(O,()=>g(l),e=>H(l,e)),c(n,i)};t(U,e=>{g(a).length===0?e(W):e(G,-1)});var K=e(U,2),J=y(K),ee=e(J,2),Y=y(ee,!0);w(ee),w(K),w(M),w(A),o(()=>{k(I,i.file.name),k(B,`Destination: ${(i.folder||`Root`)??``}`),J.disabled=g(d),ee.disabled=!g(C),k(Y,g(d)?`Importing…`:`Import`)}),p(`click`,A,e=>{e.target===e.currentTarget&&!g(d)&&i.onCancel()}),p(`click`,J,function(...e){i.onCancel?.apply(this,e)}),p(`click`,ee,()=>void O()),c(n,A),F()}s([`click`]);function oi(e){let t=e.trim();if(t===``)return{key:``};if(!(/^https?:\/\//i.test(t)||/figma\.com/i.test(t)))return{key:t};let n=/^https?:\/\//i.test(t)?t:`https://${t}`,r;try{r=new URL(n)}catch{return{error:`Enter a valid Figma file link or a bare file key.`}}if(r.hostname!==`figma.com`&&r.hostname!==`www.figma.com`)return{error:`Figma links must point to figma.com.`};let i=r.pathname.split(`/`).filter(Boolean);return![`design`,`file`,`proto`].includes(i[0]??``)||!i[1]?{error:`The Figma link must point to a design, file, or prototype.`}:{key:i[1]}}var si=d(`<p class="destination svelte-n5o24b"> </p>`),ci=d(`<label class="field wide svelte-n5o24b"><span>Selection link</span> <input class="control" type="url" placeholder="https://www.figma.com/design/…?node-id=…"/></label>`),li=d(`<label class="field wide svelte-n5o24b"><span>Tag</span> <input class="control" spellcheck="false" placeholder="asset"/></label>`),ui=d(`<!> <label class="field wide svelte-n5o24b"><span>File key</span> <input class="control" spellcheck="false"/></label>`,1),di=d(`<label class="field svelte-n5o24b"><span>Type</span> <select class="control"><option>Image</option><option>Slice</option></select></label>`),fi=d(`<label class="field wide svelte-n5o24b"><span>Asset ID</span> <input class="control" spellcheck="false" placeholder="asset"/></label>`),pi=d(`<div class="field wide svelte-n5o24b"><span>Manifests</span> <!></div>`),mi=d(`<p class="warning svelte-n5o24b"> </p>`),hi=d(`<p class="warning svelte-n5o24b">An asset with this ID already exists.</p>`),gi=d(`<!> <!>`,1),_i=d(`<!> <!> <!>`,1),vi=d(`<div class="backdrop svelte-n5o24b" role="presentation"><div class="dialog svelte-n5o24b" role="dialog" tabindex="-1"><h2 class="svelte-n5o24b"> </h2> <!> <div class="mode-toggle svelte-n5o24b" role="group" aria-label="Import mode"><button type="button">Link</button> <button type="button">Tag</button></div> <!> <div class="row svelte-n5o24b"><!> <label class="field svelte-n5o24b"><span>Export scale</span> <select class="control"><option>1x</option><option>2x</option><option>3x</option><option>4x</option></select></label></div> <!> <!> <!> <div class="actions svelte-n5o24b"><button class="control">Cancel</button> <button class="control primary"> </button></div></div></div>`);function yi(n,r){V(r,!0);let i=x(r,`folder`,3,``),a=`fundus:figma-import-mode`;function s(){try{return localStorage.getItem(a)===`tag`?`tag`:`link`}catch{return`link`}}let l=N(T(s())),u=N(``),d=N(``),m=N(``),h=N(T($.state?.importDefaults.figma.scale??2)),_=N(`image`),b=N(``),C=N(T(De($.manifestNames))),O=N(!1),A=N(null),M=z(()=>$.manifestNames),P=z(()=>Q(g(b))),R=z(()=>$.state?.assets.some(e=>e.id===g(b))??!1),B=z(()=>Q(g(d))),U=z(()=>$.state?.assets.some(e=>e.id===g(d))??!1),W=z(()=>oi(g(m))),G=z(()=>`error`in g(W)?g(W).error:null),K=z(()=>$.state?.importDefaults.figma.defaultFileKey??``);L(()=>{try{localStorage.setItem(a,g(l))}catch{}});let J=z(()=>g(O)?!1:g(l)===`tag`?g(G)===null?r.replacement!==void 0||g(B)===null&&!g(U):!1:g(u).trim().length===0?!1:r.replacement!==void 0||g(P)===null&&!g(R));function ee(e){H(C,g(C).includes(e)?g(C).filter(t=>t!==e):[...g(C),e],!0)}async function Y(){if(!g(J))return;let e=g(b),t=[...g(C)],n=g(u),a=g(d),o=`key`in g(W)&&g(W).key.length>0?g(W).key:void 0,s=g(h),c=g(_),f=i(),p=g(l),m=r.replacement;H(O,!0),H(A,null);try{m?(await $.mutateFromServer(()=>p===`tag`?_e(m.id,{mode:`tag`,tag:m.id,fileKey:o,scale:s}):_e(m.id,{url:n,scale:s}),{dependencies:[`asset:${m.id}`]}),r.onDone(m.id)):p===`tag`?(await $.mutateFromServer(()=>ie({mode:`tag`,tag:a,fileKey:o,scale:s,type:c,folder:f,manifests:t}),{dependencies:[`asset:${a}`,`folder:${f}`,...t.map(e=>`manifest:${e}`)]}),r.onDone(a)):(await $.mutateFromServer(()=>ie({url:n,scale:s,type:c,id:e,folder:f,manifests:t}),{dependencies:[`asset:${e}`,`folder:${f}`,...t.map(e=>`manifest:${e}`)]}),r.onDone(e))}catch(e){H(A,e instanceof Error?e.message:String(e),!0)}finally{H(O,!1)}}var X=vi();q(`keydown`,v,e=>Ne(e,{busy:g(O),confirmDisabled:!g(J),onConfirm:()=>void Y(),onCancel:r.onCancel}));var te=y(X),ne=y(te),re=y(ne,!0);w(ne);var ae=e(ne,2),Z=e=>{var t=si(),n=y(t);w(t),o(()=>k(n,`Asset: ${r.replacement.id??``}`)),c(e,t)},oe=e=>{var t=si(),n=y(t);w(t),o(()=>k(n,`Destination: ${(i()||`Root`)??``}`)),c(e,t)};t(ae,e=>{r.replacement?e(Z):e(oe,-1)});var se=e(ae,2),ce=y(se);let le;var ue=e(ce,2);let de;w(se);var fe=e(se,2),pe=t=>{var n=ci(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(u),e=>H(u,e)),c(t,n)},me=n=>{var i=ui(),a=f(i),s=t=>{var n=li(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(d),e=>H(d,e)),c(t,n)};t(a,e=>{r.replacement||e(s)});var l=e(a,2),u=e(y(l),2);E(u),w(l),o(()=>{u.disabled=g(O),I(u,`placeholder`,g(K)||`file key or figma link`)}),j(u,()=>g(m),e=>H(m,e)),c(n,i)};t(fe,e=>{g(l)===`link`?e(pe):e(me,-1)});var he=e(fe,2),ge=y(he),ve=t=>{var n=di(),r=e(y(n),2),i=y(r);i.value=i.__value=`image`;var a=e(i);a.value=a.__value=`slice`,w(r),w(n),o(()=>r.disabled=g(O)),D(r,()=>g(_),e=>H(_,e)),c(t,n)};t(ge,e=>{r.replacement||e(ve)});var ye=e(ge,2),be=e(y(ye),2),xe=y(be);xe.value=xe.__value=1;var Se=e(xe);Se.value=Se.__value=2;var Ce=e(Se);Ce.value=Ce.__value=3;var we=e(Ce);we.value=we.__value=4,w(be),w(ye),w(he);var Te=e(he,2),Ee=n=>{var r=_i(),i=f(r),a=t=>{var n=fi(),r=e(y(n),2);E(r),w(n),o(()=>r.disabled=g(O)),j(r,()=>g(b),e=>H(b,e)),c(t,n)};t(i,e=>{g(l)===`link`&&e(a)});var s=e(i,2),u=t=>{var n=pi();Oe(e(y(n),2),{get manifests(){return g(M)},get selected(){return g(C)},passive:[],onToggle:ee,get disabled(){return g(O)}}),w(n),c(t,n)};t(s,e=>{g(M).length>0&&e(u)});var p=e(s,2),m=n=>{var r=gi(),i=f(r),a=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(P))),c(e,t)};t(i,e=>{g(b)&&g(P)&&e(a)});var s=e(i,2),l=e=>{c(e,hi())};t(s,e=>{g(R)&&e(l)}),c(n,r)},h=n=>{var r=gi(),i=f(r),a=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(B))),c(e,t)};t(i,e=>{g(d)&&g(B)&&e(a)});var s=e(i,2),l=e=>{c(e,hi())};t(s,e=>{g(U)&&e(l)}),c(n,r)};t(p,e=>{g(l)===`link`?e(m):e(h,-1)}),c(n,r)};t(Te,e=>{r.replacement||e(Ee)});var ke=e(Te,2),Ae=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(G))),c(e,t)};t(ke,e=>{g(G)&&e(Ae)});var je=e(ke,2),Me=e=>{var t=mi(),n=y(t,!0);w(t),o(()=>k(n,g(A))),c(e,t)};t(je,e=>{g(A)&&e(Me)});var Pe=e(je,2),Fe=y(Pe),Ie=e(Fe,2),Le=y(Ie,!0);w(Ie),w(Pe),w(te),w(X),o(()=>{I(te,`aria-label`,r.replacement?`Replace from Figma`:`Import from Figma`),k(re,r.replacement?`Replace from Figma`:`Import from Figma`),le=S(ce,1,`control svelte-n5o24b`,null,le,{active:g(l)===`link`}),I(ce,`aria-pressed`,g(l)===`link`),ce.disabled=g(O),de=S(ue,1,`control svelte-n5o24b`,null,de,{active:g(l)===`tag`}),I(ue,`aria-pressed`,g(l)===`tag`),ue.disabled=g(O),be.disabled=g(O),Fe.disabled=g(O),Ie.disabled=!g(J),k(Le,g(O)?r.replacement?`Replacing…`:`Importing…`:r.replacement?`Replace`:`Import`)}),p(`click`,X,e=>{e.target===e.currentTarget&&!g(O)&&r.onCancel()}),p(`click`,ce,()=>H(l,`link`)),p(`click`,ue,()=>H(l,`tag`)),D(be,()=>g(h),e=>H(h,e)),p(`click`,Fe,function(...e){r.onCancel?.apply(this,e)}),p(`click`,Ie,()=>void Y()),c(n,X),F()}s([`click`]);var bi=d(`<span class="arrow svelte-13hq4tl" aria-hidden="true">›</span>`),xi=d(`<hr class="svelte-13hq4tl"/>`),Si=d(`<button role="menuitem" tabindex="-1" class="svelte-13hq4tl"> </button>`),Ci=d(`<!> <!>`,1),wi=d(`<div role="menu" tabindex="-1"></div>`),Ti=d(`<div class="submenu-anchor svelte-13hq4tl" role="presentation"><button class="submenu-trigger svelte-13hq4tl" role="menuitem"><span> </span> <!></button> <!></div>`);function Ei(n,i){V(i,!0);let a=x(i,`alwaysSubmenu`,3,!1),s=N(void 0),l=N(void 0),d=N(!1),m=N(!1),_=N(240),v=z(()=>i.sections.filter(e=>e.length>0)),b=z(()=>g(v).flat()),C=z(()=>a()||g(b).length>1);async function T(e=!1){if(!g(C)||(H(d,!0),await h(),!g(s)||!g(l)))return;let t=g(s).getBoundingClientRect();H(m,t.right+g(l).offsetWidth+8>window.innerWidth),H(_,Math.max(32,window.innerHeight-t.top-8),!0),e&&g(l).querySelector(`[role="menuitem"]:not(:disabled)`)?.focus()}function E(e){if(!g(C)){let e=g(b)[0];e&&i.onSelect(e.value);return}e.stopPropagation(),T()}function D(e){!g(C)||e.key!==`ArrowRight`&&e.key!==`ArrowDown`||(e.preventDefault(),e.stopPropagation(),T(!0))}function O(e){if(e.key===`ArrowLeft`||e.key===`Escape`){e.preventDefault(),e.stopPropagation(),H(d,!1),g(s)?.focus();return}if(!g(l))return;let t=[...g(l).querySelectorAll(`[role="menuitem"]:not(:disabled)`)];if(t.length===0)return;let n=t.indexOf(document.activeElement),r;if(e.key===`ArrowDown`)r=(n+1)%t.length;else if(e.key===`ArrowUp`)r=(n-1+t.length)%t.length;else if(e.key===`Home`)r=0;else if(e.key===`End`)r=t.length-1;else return;e.preventDefault(),e.stopPropagation(),t[r]?.focus()}var A=Ti(),j=y(A),M=y(j),P=y(M,!0);w(M);var L=e(M,2),R=e=>{c(e,bi())};t(L,e=>{g(C)&&e(R)}),w(j),B(j,e=>H(s,e),()=>g(s));var U=e(j,2),W=n=>{var a=wi();let s,d;r(a,21,()=>g(v),u,(n,a,s)=>{var l=Ci(),u=f(l),d=e=>{c(e,xi())};t(u,e=>{s>0&&e(d)}),r(e(u,2),17,()=>g(a),e=>e.value,(e,t)=>{var n=Si(),r=y(n,!0);w(n),o(()=>{n.disabled=g(t).disabled,I(n,`title`,g(t).title),k(r,g(t).label)}),p(`click`,n,()=>i.onSelect(g(t).value)),c(e,n)}),c(n,l)}),w(a),B(a,e=>H(l,e),()=>g(l)),o(()=>{s=S(a,1,`submenu svelte-13hq4tl`,null,s,{"opens-left":g(m)}),I(a,`aria-label`,i.label),d=K(a,``,d,{"max-height":`${g(_)}px`})}),p(`keydown`,a,O),c(n,a)};t(U,e=>{g(C)&&g(d)&&e(W)}),w(A),o(()=>{I(j,`aria-haspopup`,g(C)?`menu`:void 0),I(j,`aria-expanded`,g(C)?g(d):void 0),k(P,i.label)}),q(`mouseenter`,A,()=>void T()),q(`mouseleave`,A,()=>H(d,!1)),p(`focusout`,A,e=>{e.currentTarget.contains(e.relatedTarget)||H(d,!1)}),p(`click`,j,E),p(`keydown`,j,D),c(n,A),F()}s([`focusout`,`click`,`keydown`]);function Di(e,t,n=[]){let r=e!==t&&!Z(t,e)&&ne(e)!==t;if(!r||n.length===0)return r;let i=oe(t,he(e)),a=new Set(n.filter(t=>!Z(t,e)).map(re));return n.filter(t=>Z(t,e)).every(t=>!a.has(re(ae(t,e,i))))}function Oi(e,t,n,r=[]){return e&&t!==null&&Di(t,n,r)}var ki=i(`<svg viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M1.25 4.25A1.75 1.75 0 0 1 3 2.5h2.45c.55 0 1.06.26 1.39.7l.6.8H13a1.75 1.75 0 0 1 1.75 1.75v5.5A1.75 1.75 0 0 1 13 13H3a1.75 1.75 0 0 1-1.75-1.75v-7Z" fill="currentColor"></path><path d="M1.75 6h12.5" stroke="currentColor" stroke-opacity="0.35"></path></svg>`);function Ai(e,t){let n=x(t,`size`,3,14);var r=ki();o(()=>{I(r,`width`,n()),I(r,`height`,n())}),c(e,r)}var ji=d(`<span class="asset-warning svelte-ftwms1">⚠</span>`),Mi=d(`<div class="asset-row svelte-ftwms1"><button class="row asset current svelte-ftwms1" draggable="true" aria-current="page"><span class="glyph asset-glyph svelte-ftwms1">◆</span> <span class="label svelte-ftwms1"> </span> <!></button></div>`),Ni=d(`<div class="folder-row svelte-ftwms1"><button draggable="true"><span class="glyph svelte-ftwms1"><!></span><span class="label svelte-ftwms1"> </span><span class="count svelte-ftwms1"> </span></button></div> <!>`,1),Pi=d(`<p class="dialog-warning svelte-ftwms1"> </p>`),Fi=d(`<p class="dialog-warning svelte-ftwms1">A sibling folder with this name already exists.</p>`),Ii=d(`<label class="dialog-row svelte-ftwms1"><span class="svelte-ftwms1">Name</span> <input class="control svelte-ftwms1" spellcheck="false"/></label> <p class="dialog-path svelte-ftwms1"> </p> <!> <!> <!>`,1),Li=d(`<p class="dialog-text svelte-ftwms1">Delete <strong> </strong> </p> <!> <!>`,1),Ri=d(`<aside class="directory svelte-ftwms1" aria-label="Asset folders"><header class="svelte-ftwms1"><strong class="svelte-ftwms1">Folders</strong> <div class="actions svelte-ftwms1"><button class="icon-button svelte-ftwms1">+</button> <button class="icon-button svelte-ftwms1">✎</button> <button class="icon-button danger svelte-ftwms1">×</button></div></header> <div class="tree svelte-ftwms1"><button><span class="glyph svelte-ftwms1">▦</span><span class="label svelte-ftwms1">All Assets</span><span class="count svelte-ftwms1"> </span></button> <button><span class="glyph svelte-ftwms1">⌂</span><span class="label svelte-ftwms1">Root</span><span class="count svelte-ftwms1"> </span></button> <!> <!></div></aside> <!> <!>`,1);function zi(n,i){V(i,!0);let a=x(i,`activeAsset`,3,null),s=x(i,`sharedDraggedFolder`,3,null),l=N(null),u=N(null),d=z(()=>s()??g(u)),m=z(()=>$.state?.library.folders??[]),_=z(()=>$.state?.assets??[]),v=z(()=>[...g(m)].sort((e,t)=>e.localeCompare(t)));function b(e){return g(_).filter(t=>t.folder===e).length}function C(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=Oi(e.dataTransfer?.types.includes(`application/x-fundus-folder`)??!1,g(d),t,g(m));!n&&!r||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),H(l,t,!0))}function T(e,t){e.preventDefault(),H(l,null);let n=e.dataTransfer?.getData(`application/x-fundus-assets`);if(n){try{let e=JSON.parse(n);Array.isArray(e)&&e.every(e=>typeof e==`string`)&&i.onMoveAssets(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`)||g(d);r&&Di(r,t,g(m))&&O(r,t)}function D(e,t){a()||i.selectedFolder!==null&&Z(i.selectedFolder,e)&&i.onSelect(`${t}${i.selectedFolder.slice(e.length)}`,!0)}async function O(e,t){let n=oe(t,he(e)),r=$.mutate(()=>ue(e,t),xe(e,t),{dependencies:[`folder:${e}`,`folder:${t}`,`folder:${n}`],invalidatesOnFailure:[`folder:${e}`,`folder:${n}`]});D(e,n);try{await r}catch{g(m).some(t=>Z(t,e))&&D(n,e)}finally{H(u,null),i.onFolderDragEnd?.()}}let A=N(null),M=N(``),P=N(null),R=N(null),U=N(``),W=N(void 0),G=N(!1),Y=N(null),X=0,te=z(()=>i.selectedFolder!==null&&i.selectedFolder!==``?i.selectedFolder:null),ie=z(()=>g(U)===``?null:J(g(U))),ae=z(()=>oe(g(A)===`rename`?ne(g(P)??``):g(M),g(U).normalize(`NFC`))),Q=z(()=>g(U)!==``&&g(m).some(e=>e!==(g(A)===`rename`?g(P):null)&&re(e)===re(g(ae)))),se=z(()=>g(U)!==``&&!g(ie)&&!g(Q)&&!g(G));function ce(e=i.selectedFolder??``){X+=1,H(M,e,!0),H(U,``),H(Y,null),H(A,`create`),h().then(()=>g(W)?.focus())}let de=0;L(()=>{i.createRequest!==null&&i.createRequest.id!==de&&(de=i.createRequest.id,ce(i.createRequest.parent))});function fe(e,t,n=null){e.preventDefault(),e.stopPropagation(),i.onContextMenu(e.clientX,e.clientY,t,n)}function pe(e){e!==null&&(X+=1,H(P,e,!0),H(U,he(e),!0),H(Y,null),H(A,`rename`),h().then(()=>g(W)?.focus()))}let _e=0;L(()=>{i.renameRequest!==null&&i.renameRequest.id!==_e&&(_e=i.renameRequest.id,pe(i.renameRequest.path))});function ye(e){e!==null&&(X+=1,H(R,e,!0),H(Y,null),H(A,`delete`))}let Se=0;L(()=>{i.deleteRequest!==null&&i.deleteRequest.id!==Se&&(Se=i.deleteRequest.id,ye(i.deleteRequest.path))});function Ce(){g(G)||(X+=1,H(A,null),H(Y,null))}async function we(){if(!g(se))return;let e=g(A),t=g(U),n=t.normalize(`NFC`),r=i.selectedFolder,o=null,s=null,c=null;H(G,!0),H(Y,null);try{if(e===`create`){let e=g(ae),t=$.mutate(()=>ee(e),me(e),{dependencies:[`folder:${g(M)}`,`folder:${e}`],invalidatesOnFailure:[`folder:${e}`]});a()||i.onSelect(e,!0),o=()=>{!a()&&i.selectedFolder===e&&!g(m).includes(e)&&i.onSelect(r,!0)},s=()=>!g(m).includes(e),H(A,null),c=++X,H(G,!1),await t}else if(e===`rename`&&g(P)!==null){let e=g(P),t=g(ae),r=$.mutate(()=>be(e,n),ge(e,n),{dependencies:[`folder:${e}`,`folder:${t}`],invalidatesOnFailure:[`folder:${e}`,`folder:${t}`]});D(e,t),o=()=>{g(m).some(t=>Z(t,e))&&D(t,e)},s=()=>g(m).some(t=>Z(t,e)),H(A,null),c=++X,H(G,!1),await r}}catch(n){s?.()&&o?.(),c!==null&&X===c&&s?.()&&(H(A,e,!0),H(U,t,!0),H(Y,n instanceof Error?n.message:String(n),!0))}finally{H(G,!1)}}let Te=z(()=>g(R)===null?[]:g(m).filter(e=>Z(e,g(R)??``))),Ee=z(()=>g(R)===null?[]:g(_).filter(e=>Z(e.folder,g(R)??``))),De=z(()=>new Set(g(Ee).map(e=>e.id))),Oe=z(()=>g(Ee).flatMap(e=>e.references.incoming.filter(e=>!g(De).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e.id}`)));async function ke(){if(g(R)===null)return;let e=g(R),t=ne(e),n=i.selectedFolder,r=a()!==null&&Z(a().folder,e),o=r?a()?.id:null;H(G,!0),H(Y,null);let s=$.mutate(()=>le(e),ve(e),{dependencies:[`folder:${e}`],invalidatesOnFailure:[`folder:${e}`]});r?i.onActiveAssetDeleted?.(t):!a()&&i.selectedFolder!==null&&Z(i.selectedFolder,e)&&i.onSelect(t,!0),H(A,null);let c=++X;H(G,!1);try{await s}catch(r){let a=g(m).some(t=>Z(t,e))||g(_).some(t=>Z(t.folder,e));a&&o?i.onActiveAssetDeleteFailed?.(o):a&&i.selectedFolder===t&&i.onSelect(n,!0),a&&X===c&&(H(A,`delete`),H(R,e,!0),H(Y,r instanceof Error?r.message:String(r),!0))}finally{H(G,!1)}}function Ae(e){a()&&(e.dataTransfer?.setData(`application/x-fundus-assets`,JSON.stringify([a().id])),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`))}var Me=Ri(),Ne=f(Me),Pe=y(Ne),Fe=e(y(Pe),2),Ie=y(Fe),Le=e(Ie,2),Re=e(Le,2);w(Fe),w(Pe);var ze=e(Pe,2),Be=y(ze);let Ve;var He=e(y(Be),2),Ue=y(He,!0);w(He),w(Be);var We=e(Be,2);let Ge;var Ke=e(y(We),2),qe=y(Ke,!0);w(Ke),w(We);var Je=e(We,2),Ye=n=>{var r=Mi();K(r,``,{},{"--depth":0});var i=y(r),s=e(y(i),2),l=y(s,!0);w(s);var u=e(s,2),d=e=>{var t=ji();o(e=>I(t,`title`,e),[()=>a().warnings.join(`
105
105
  `)]),c(e,t)};t(u,e=>{a().warnings.length>0&&e(d)}),w(i),w(r),o(()=>{I(i,`title`,a().id),k(l,a().id)}),q(`dragstart`,i,Ae),c(n,r)};t(Je,e=>{a()?.folder===``&&e(Ye)}),r(e(Je,2),16,()=>g(v),e=>e,(n,r)=>{let s=z(()=>r.split(`/`).length-1);var d=Ni(),m=f(d);let h;var _=y(m);let v;var x=y(_);Ai(y(x),{}),w(x);var E=e(x),D=y(E,!0);w(E);var O=e(E),A=y(O,!0);w(O),w(_),w(m);var j=e(m,2),M=n=>{var r=Mi();let i;var l=y(r),u=e(y(l),2),d=y(u,!0);w(u);var f=e(u,2),p=e=>{var t=ji();o(e=>I(t,`title`,e),[()=>a().warnings.join(`
106
106
  `)]),c(e,t)};t(f,e=>{a().warnings.length>0&&e(p)}),w(l),w(r),o(()=>{i=K(r,``,i,{"--depth":g(s)+1}),I(l,`title`,a().id),k(d,a().id)}),q(`dragstart`,l,Ae),c(n,r)};t(j,e=>{a()?.folder===r&&e(M)}),o((e,t)=>{h=K(m,``,h,{"--depth":g(s)}),v=S(_,1,`row folder svelte-ftwms1`,null,v,{selected:!a()&&i.selectedFolder===r,"drop-target":g(l)===r}),I(E,`title`,r),k(D,e),k(A,t)},[()=>he(r),()=>b(r)]),p(`click`,_,()=>i.onSelect(r)),p(`contextmenu`,_,e=>fe(e,r,r)),q(`dragstart`,_,e=>{H(u,r,!0),i.onFolderDragStart?.(r),e.dataTransfer?.setData(`application/x-fundus-folder`,r),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),q(`dragend`,_,()=>{H(u,null),i.onFolderDragEnd?.(),H(l,null)}),q(`dragover`,_,e=>C(e,r)),q(`dragleave`,_,()=>H(l,null)),q(`drop`,_,e=>T(e,r)),c(n,d)}),w(ze),w(Ne);var Xe=e(Ne,2),Ze=n=>{{let r=z(()=>g(A)===`create`?`Create folder`:`Rename folder`),i=z(()=>g(G)?`Saving…`:g(A)===`create`?`Create`:`Rename`),a=z(()=>!g(se));je(n,{get title(){return g(r)},get confirmLabel(){return g(i)},get confirmDisabled(){return g(a)},get busy(){return g(G)},onConfirm:()=>void we(),onCancel:Ce,children:(n,r)=>{var i=Ii(),a=f(i),s=e(y(a),2);E(s),B(s,e=>H(W,e),()=>g(W)),w(a);var l=e(a,2),u=y(l,!0);w(l);var d=e(l,2),p=e=>{var t=Pi(),n=y(t,!0);w(t),o(()=>k(n,g(ie))),c(e,t)};t(d,e=>{g(ie)&&e(p)});var m=e(d,2),h=e=>{c(e,Fi())};t(m,e=>{g(Q)&&e(h)});var _=e(m,2),v=e=>{var t=Pi(),n=y(t,!0);w(t),o(()=>k(n,g(Y))),c(e,t)};t(_,e=>{g(Y)&&e(v)}),o(()=>{s.disabled=g(G),k(u,g(ae)||`Root`)}),j(s,()=>g(U),e=>H(U,e)),c(n,i)},$$slots:{default:!0}})}};t(Xe,e=>{(g(A)===`create`||g(A)===`rename`)&&e(Ze)});var Qe=e(Xe,2),$e=n=>{{let r=z(()=>g(G)?`Deleting…`:`Delete recursively`);je(n,{title:`Delete folder`,get confirmLabel(){return g(r)},danger:!0,get busy(){return g(G)},onConfirm:()=>void ke(),onCancel:Ce,children:(n,r)=>{var i=Li(),a=f(i),s=e(y(a)),l=y(s,!0);w(s);var u=e(s);w(a);var d=e(a,2),p=e=>{var t=Pi(),n=y(t);w(t),o(e=>k(n,`This leaves ${g(Oe).length??``} external reference(s) dangling:
107
107
  ${e??``}`),[()=>g(Oe).join(`, `)]),c(e,t)};t(d,e=>{g(Oe).length>0&&e(p)});var m=e(d,2),h=e=>{var t=Pi(),n=y(t,!0);w(t),o(()=>k(n,g(Y))),c(e,t)};t(m,e=>{g(Y)&&e(h)}),o(()=>{k(l,g(R)),k(u,`, ${g(Te).length-1} descendant folder(s),
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.C-TKgrGP.js","../chunks/DLEDBLL1.js","../chunks/Co7xGpqv.js","../chunks/xihTtKlq.js","../chunks/DWHqxOBm.js","../chunks/Cml0-AYv.js","../chunks/DGYcFVZ3.js","../assets/ManifestSelector.Cue3sCA1.css","../chunks/BhqXGxdj.js","../assets/FileChangeBadge.C6wwUZJS.css","../assets/0.CHekvMpo.css","../nodes/1.q-uG--Ye.js","../nodes/2.EtCNRoA2.js","../chunks/CVeOwywf.js","../chunks/CzxolZCO.js","../assets/Popover.CCTioPJZ.css","../assets/AssetSourceMenu.DWPxyX6L.css","../assets/2.CnYmQjo0.css","../nodes/3.D7nMxWez.js","../assets/3.OulZ54CG.css","../nodes/4.B3M1zSBU.js","../assets/4.C0QkCMQ4.css"])))=>i.map(i=>d[i]);
2
- import{$ as e,A as t,I as n,J as r,K as i,M as a,N as o,P as s,Q as c,U as l,V as u,Z as d,a as f,dt as p,i as m,j as h,nt as g,ot as _,q as v,r as y,rt as b,s as x,st as S,tt as C,w}from"../chunks/DLEDBLL1.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=s(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=s(`<!> <!>`,1);function M(s,m){S(m,!0);let T=f(m,`components`,23,()=>[]),E=f(m,`data_0`,3,null),D=f(m,`data_1`,3,null);r(()=>m.stores.page.set(m.page)),v(()=>{m.stores,m.page,m.constructors,T(),m.form,E(),D(),m.stores.page.notify()});let O=g(!1),k=g(!1),M=g(null);y(()=>{let e=m.stores.page.subscribe(()=>{u(O)&&(C(k,!0),l().then(()=>{C(M,document.title||`untitled page`,!0)}))});return C(O,!0),e});let N=b(()=>m.constructors[1]);var P=j(),F=c(P),I=e=>{let t=b(()=>m.constructors[0]);var n=o();w(c(n),()=>u(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return m.form},get params(){return m.page.params},children:(e,t)=>{var n=o();w(c(n),()=>u(N),(e,t)=>{x(t(e,{get data(){return D()},get form(){return m.form},get params(){return m.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),a(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)},L=e=>{let t=b(()=>m.constructors[0]);var n=o();w(c(n),()=>u(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return m.form},get params(){return m.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)};t(F,e=>{m.constructors[1]?e(I):e(L,-1)});var R=e(F,2),z=e=>{var r=A(),o=d(r),s=e=>{var t=n();i(()=>h(t,u(M))),a(e,t)};t(o,e=>{u(k)&&e(s)}),p(r),a(e,r)};t(R,e=>{u(O)&&e(z)}),a(s,P),_()}var N=m(M),P=[()=>O(()=>import(`../nodes/0.C-TKgrGP.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url),()=>O(()=>import(`../nodes/1.q-uG--Ye.js`),__vite__mapDeps([11,1,3,4,2]),import.meta.url),()=>O(()=>import(`../nodes/2.EtCNRoA2.js`),__vite__mapDeps([12,1,2,3,4,5,13,6,7,14,15,16,8,9,17]),import.meta.url),()=>O(()=>import(`../nodes/3.D7nMxWez.js`),__vite__mapDeps([18,1,2,3,4,5,13,6,7,14,15,16,19]),import.meta.url),()=>O(()=>import(`../nodes/4.B3M1zSBU.js`),__vite__mapDeps([20,1,2,3,5,14,15,21]),import.meta.url)],F=[],I={"/":[2],"/asset/[id]":[3],"/manifests":[4]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CquXHiCP.js","../chunks/DLEDBLL1.js","../chunks/CCIxsMRK.js","../chunks/xihTtKlq.js","../chunks/CIZHDrUF.js","../chunks/Cml0-AYv.js","../chunks/DGYcFVZ3.js","../assets/ManifestSelector.Cue3sCA1.css","../chunks/BhqXGxdj.js","../assets/FileChangeBadge.C6wwUZJS.css","../assets/0.CHekvMpo.css","../nodes/1.xSi5hUiK.js","../nodes/2.CgzHO6l0.js","../chunks/CnnMN4wM.js","../chunks/CzxolZCO.js","../assets/Popover.CCTioPJZ.css","../assets/AssetSourceMenu.DWPxyX6L.css","../assets/2.CnYmQjo0.css","../nodes/3.B-HZ9QO3.js","../assets/3.OulZ54CG.css","../nodes/4._rTlKXDo.js","../assets/4.C0QkCMQ4.css"])))=>i.map(i=>d[i]);
2
+ import{$ as e,A as t,I as n,J as r,K as i,M as a,N as o,P as s,Q as c,U as l,V as u,Z as d,a as f,dt as p,i as m,j as h,nt as g,ot as _,q as v,r as y,rt as b,s as x,st as S,tt as C,w}from"../chunks/DLEDBLL1.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=s(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=s(`<!> <!>`,1);function M(s,m){S(m,!0);let T=f(m,`components`,23,()=>[]),E=f(m,`data_0`,3,null),D=f(m,`data_1`,3,null);r(()=>m.stores.page.set(m.page)),v(()=>{m.stores,m.page,m.constructors,T(),m.form,E(),D(),m.stores.page.notify()});let O=g(!1),k=g(!1),M=g(null);y(()=>{let e=m.stores.page.subscribe(()=>{u(O)&&(C(k,!0),l().then(()=>{C(M,document.title||`untitled page`,!0)}))});return C(O,!0),e});let N=b(()=>m.constructors[1]);var P=j(),F=c(P),I=e=>{let t=b(()=>m.constructors[0]);var n=o();w(c(n),()=>u(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return m.form},get params(){return m.page.params},children:(e,t)=>{var n=o();w(c(n),()=>u(N),(e,t)=>{x(t(e,{get data(){return D()},get form(){return m.form},get params(){return m.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),a(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)},L=e=>{let t=b(()=>m.constructors[0]);var n=o();w(c(n),()=>u(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return m.form},get params(){return m.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)};t(F,e=>{m.constructors[1]?e(I):e(L,-1)});var R=e(F,2),z=e=>{var r=A(),o=d(r),s=e=>{var t=n();i(()=>h(t,u(M))),a(e,t)};t(o,e=>{u(k)&&e(s)}),p(r),a(e,r)};t(R,e=>{u(O)&&e(z)}),a(s,P),_()}var N=m(M),P=[()=>O(()=>import(`../nodes/0.CquXHiCP.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url),()=>O(()=>import(`../nodes/1.xSi5hUiK.js`),__vite__mapDeps([11,1,3,4,2]),import.meta.url),()=>O(()=>import(`../nodes/2.CgzHO6l0.js`),__vite__mapDeps([12,1,2,3,4,5,13,6,7,14,15,16,8,9,17]),import.meta.url),()=>O(()=>import(`../nodes/3.B-HZ9QO3.js`),__vite__mapDeps([18,1,2,3,4,5,13,6,7,14,15,16,19]),import.meta.url),()=>O(()=>import(`../nodes/4._rTlKXDo.js`),__vite__mapDeps([20,1,2,3,5,14,15,21]),import.meta.url)],F=[],I={"/":[2],"/asset/[id]":[3],"/manifests":[4]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
@@ -0,0 +1 @@
1
+ import{c as e,r as t}from"../chunks/CCIxsMRK.js";export{e as load_css,t as start};