fundus 0.0.4 → 0.1.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 (164) hide show
  1. package/README.md +18 -8
  2. package/build/client/_app/immutable/assets/{3.JwgtcTEd.css → 3.C-toFWI4.css} +1 -1
  3. package/build/client/_app/immutable/assets/3.C-toFWI4.css.br +0 -0
  4. package/build/client/_app/immutable/assets/3.C-toFWI4.css.gz +0 -0
  5. package/build/client/_app/immutable/chunks/BA62n9FX.js +108 -0
  6. package/build/client/_app/immutable/chunks/BA62n9FX.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/BA62n9FX.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{DkADHpZF.js → CQsKwm8E.js} +1 -1
  9. package/build/client/_app/immutable/chunks/CQsKwm8E.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/CQsKwm8E.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{DVEQFclp.js → D9-155C9.js} +1 -1
  12. package/build/client/_app/immutable/chunks/D9-155C9.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/D9-155C9.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/{DiFoWL2c.js → DVEDrSOn.js} +1 -1
  15. package/build/client/_app/immutable/chunks/DVEDrSOn.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/DVEDrSOn.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/cznBUb-E.js +1 -0
  18. package/build/client/_app/immutable/chunks/cznBUb-E.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/cznBUb-E.js.gz +0 -0
  20. package/build/client/_app/immutable/entry/{app.CKgtYXQb.js → app.DwQWZs1F.js} +2 -2
  21. package/build/client/_app/immutable/entry/app.DwQWZs1F.js.br +0 -0
  22. package/build/client/_app/immutable/entry/app.DwQWZs1F.js.gz +0 -0
  23. package/build/client/_app/immutable/entry/start.DEpAL_8Q.js +1 -0
  24. package/build/client/_app/immutable/entry/start.DEpAL_8Q.js.br +0 -0
  25. package/build/client/_app/immutable/entry/start.DEpAL_8Q.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{0.I_1SApYQ.js → 0.Sr1WDgiY.js} +1 -1
  27. package/build/client/_app/immutable/nodes/0.Sr1WDgiY.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/0.Sr1WDgiY.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{1.v6eUTnWq.js → 1.BwHqv728.js} +1 -1
  30. package/build/client/_app/immutable/nodes/1.BwHqv728.js.br +2 -0
  31. package/build/client/_app/immutable/nodes/1.BwHqv728.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{2.DoA7Dfl-.js → 2.DidxYIU-.js} +1 -1
  33. package/build/client/_app/immutable/nodes/2.DidxYIU-.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/2.DidxYIU-.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/3.C1AavoTf.js +1 -0
  36. package/build/client/_app/immutable/nodes/3.C1AavoTf.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/3.C1AavoTf.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{4.CALOuSyz.js → 4.D8UoOONM.js} +2 -2
  39. package/build/client/_app/immutable/nodes/4.D8UoOONM.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/4.D8UoOONM.js.gz +0 -0
  41. package/build/client/_app/version.json +1 -1
  42. package/build/client/_app/version.json.br +0 -0
  43. package/build/client/_app/version.json.gz +0 -0
  44. package/build/handler.js +7 -7
  45. package/build/index.js +7 -7
  46. package/build/server/chunks/chunks/{context.js-BUZqFfWG.js → context.js-CGD-b_vR.js} +7 -3
  47. package/build/server/chunks/chunks/context.js-CGD-b_vR.js.map +1 -0
  48. package/build/server/chunks/chunks/core.js-xfrkaQpS.js.map +1 -1
  49. package/build/server/chunks/chunks/{exports.js-C0rwMMtk.js → exports.js-B4E0NJIt.js} +2 -2
  50. package/build/server/chunks/chunks/{exports.js-C0rwMMtk.js.map → exports.js-B4E0NJIt.js.map} +1 -1
  51. package/build/server/chunks/chunks/{http.js-DvopzwKh.js → http.js-Bu-Ao0Vk.js} +2 -2
  52. package/build/server/chunks/chunks/{http.js-DvopzwKh.js.map → http.js-Bu-Ao0Vk.js.map} +1 -1
  53. package/build/server/chunks/chunks/{internal.js-DGo2jPcg.js → internal.js-ClSxY3uX.js} +3 -3
  54. package/build/server/chunks/chunks/{internal.js-DGo2jPcg.js.map → internal.js-ClSxY3uX.js.map} +1 -1
  55. package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -1
  56. package/build/server/chunks/chunks/{library-store.js-ZLudCJlT.js → library-store.js-CZCDpai0.js} +53 -2
  57. package/build/server/chunks/chunks/library-store.js-CZCDpai0.js.map +1 -0
  58. package/build/server/chunks/chunks/{shared.js-B1gC9MiJ.js → shared.js-CHQOW_GN.js} +2 -2
  59. package/build/server/chunks/chunks/{shared.js-B1gC9MiJ.js.map → shared.js-CHQOW_GN.js.map} +1 -1
  60. package/build/server/chunks/chunks/{utils.js-DnEJ3UjO.js → utils.js-B9L6I-_K.js} +3 -3
  61. package/build/server/chunks/chunks/{utils.js-DnEJ3UjO.js.map → utils.js-B9L6I-_K.js.map} +1 -1
  62. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-Cq5gXVQT.js → _server.ts.js-PO5RpNzP.js} +3 -3
  63. package/build/server/chunks/entries/endpoints/api/_...path_/{_server.ts.js-Cq5gXVQT.js.map → _server.ts.js-PO5RpNzP.js.map} +1 -1
  64. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-RXbedi8q.js → _server.ts.js-BmgqGEXs.js} +4 -4
  65. package/build/server/chunks/entries/endpoints/api/assets/_id_/{_server.ts.js-RXbedi8q.js.map → _server.ts.js-BmgqGEXs.js.map} +1 -1
  66. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/_server.ts.js-DnTOlfHs.js +35 -0
  67. package/build/server/chunks/entries/endpoints/api/assets/_id_/raw/_server.ts.js-DnTOlfHs.js.map +1 -0
  68. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-D7Qae9vU.js → _server.ts.js-DzdC6OJE.js} +4 -4
  69. package/build/server/chunks/entries/endpoints/api/assets/{_server.ts.js-D7Qae9vU.js.map → _server.ts.js-DzdC6OJE.js.map} +1 -1
  70. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-DtO20kgB.js → _server.ts.js-DXJNoYAs.js} +4 -4
  71. package/build/server/chunks/entries/endpoints/api/assets/delete/{_server.ts.js-DtO20kgB.js.map → _server.ts.js-DXJNoYAs.js.map} +1 -1
  72. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-BUebPbd5.js → _server.ts.js-CqdKXoZL.js} +4 -4
  73. package/build/server/chunks/entries/endpoints/api/assets/move/{_server.ts.js-BUebPbd5.js.map → _server.ts.js-CqdKXoZL.js.map} +1 -1
  74. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-BjT2qPMT.js → _server.ts.js-DIuY66jG.js} +4 -4
  75. package/build/server/chunks/entries/endpoints/api/folders/_path_/{_server.ts.js-BjT2qPMT.js.map → _server.ts.js-DIuY66jG.js.map} +1 -1
  76. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-DYRLsoT7.js → _server.ts.js-D9p-cdJQ.js} +4 -4
  77. package/build/server/chunks/entries/endpoints/api/folders/{_server.ts.js-DYRLsoT7.js.map → _server.ts.js-D9p-cdJQ.js.map} +1 -1
  78. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-BbN2fGNN.js → _server.ts.js-DP1x-xAW.js} +4 -4
  79. package/build/server/chunks/entries/endpoints/api/manifests/_name_/{_server.ts.js-BbN2fGNN.js.map → _server.ts.js-DP1x-xAW.js.map} +1 -1
  80. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-b_MKZ41b.js → _server.ts.js-r1eNMvPd.js} +4 -4
  81. package/build/server/chunks/entries/endpoints/api/manifests/{_server.ts.js-b_MKZ41b.js.map → _server.ts.js-r1eNMvPd.js.map} +1 -1
  82. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-evEfMpvn.js → _server.ts.js-D-m3BwRj.js} +4 -4
  83. package/build/server/chunks/entries/endpoints/api/state/{_server.ts.js-evEfMpvn.js.map → _server.ts.js-D-m3BwRj.js.map} +1 -1
  84. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-C04XE_1w.js → _server.ts.js-3nyAQ3f0.js} +3 -3
  85. package/build/server/chunks/entries/endpoints/files/_...path_/{_server.ts.js-C04XE_1w.js.map → _server.ts.js-3nyAQ3f0.js.map} +1 -1
  86. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-DB8TdoEv.js → _server.ts.js-Ba285FiJ.js} +4 -4
  87. package/build/server/chunks/entries/endpoints/files/proxy/_...path_/{_server.ts.js-DB8TdoEv.js.map → _server.ts.js-Ba285FiJ.js.map} +1 -1
  88. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-BrpaijZO.js → _server.ts.js-X354l2NP.js} +4 -4
  89. package/build/server/chunks/entries/endpoints/files/raw/_...path_/{_server.ts.js-BrpaijZO.js.map → _server.ts.js-X354l2NP.js.map} +1 -1
  90. package/build/server/chunks/entries/{hooks.server.js-BJJwZW_I.js → hooks.server.js-eZ7H27L4.js} +3 -3
  91. package/build/server/chunks/entries/{hooks.server.js-BJJwZW_I.js.map → hooks.server.js-eZ7H27L4.js.map} +1 -1
  92. package/build/server/chunks/{handler-DnbS2t1B.js → handler-Dcc_-rVh.js} +5 -5
  93. package/build/server/chunks/{handler-DnbS2t1B.js.map → handler-Dcc_-rVh.js.map} +1 -1
  94. package/build/server/chunks/{index.js-g77q3Boj.js → index.js-DoVHd4mf.js} +5 -5
  95. package/build/server/chunks/{index.js-g77q3Boj.js.map → index.js-DoVHd4mf.js.map} +1 -1
  96. package/build/server/chunks/{manifest.js-qmEXbstS.js → manifest.js-C_MsDhaa.js} +27 -20
  97. package/build/server/chunks/manifest.js-C_MsDhaa.js.map +1 -0
  98. package/build/server/chunks/nodes/0.js-BP6hHAK9.js +11 -0
  99. package/build/server/chunks/nodes/{0.js-Bk6IZ-vD.js.map → 0.js-BP6hHAK9.js.map} +1 -1
  100. package/build/server/chunks/nodes/1.js-DKlcrAQP.js +7 -0
  101. package/build/server/chunks/nodes/{1.js-H-qwo4GJ.js.map → 1.js-DKlcrAQP.js.map} +1 -1
  102. package/build/server/chunks/nodes/2.js-B-8TTZH_.js +7 -0
  103. package/build/server/chunks/nodes/{2.js-DRpXVLwp.js.map → 2.js-B-8TTZH_.js.map} +1 -1
  104. package/build/server/chunks/nodes/3.js-Cf7H6K5p.js +7 -0
  105. package/build/server/chunks/nodes/3.js-Cf7H6K5p.js.map +1 -0
  106. package/build/server/chunks/nodes/4.js-JQQZnHWZ.js +7 -0
  107. package/build/server/chunks/nodes/{4.js-BKL7LSSm.js.map → 4.js-JQQZnHWZ.js.map} +1 -1
  108. package/dist/cli.js +32 -9
  109. package/dist/core/api-types.d.ts +1 -1
  110. package/dist/core/index.d.ts +1 -1
  111. package/dist/core/index.js +1 -1
  112. package/dist/core/ingest.d.ts +2 -0
  113. package/dist/core/ingest.js +7 -0
  114. package/dist/server/cli-commands.d.ts +2 -1
  115. package/dist/server/cli-commands.js +42 -1
  116. package/dist/server/cli-init.d.ts +1 -1
  117. package/dist/server/cli-init.js +23 -5
  118. package/dist/server/index.d.ts +1 -1
  119. package/dist/server/library-store.d.ts +11 -0
  120. package/dist/server/library-store.js +57 -0
  121. package/dist/server/operations.d.ts +3 -1
  122. package/dist/server/operations.js +5 -1
  123. package/dist/server/start.d.ts +4 -2
  124. package/dist/server/start.js +43 -11
  125. package/package.json +1 -1
  126. package/build/client/_app/immutable/assets/3.JwgtcTEd.css.br +0 -0
  127. package/build/client/_app/immutable/assets/3.JwgtcTEd.css.gz +0 -0
  128. package/build/client/_app/immutable/chunks/CO4RBJfa.js +0 -1
  129. package/build/client/_app/immutable/chunks/CO4RBJfa.js.br +0 -0
  130. package/build/client/_app/immutable/chunks/CO4RBJfa.js.gz +0 -0
  131. package/build/client/_app/immutable/chunks/DOpBpjxS.js +0 -108
  132. package/build/client/_app/immutable/chunks/DOpBpjxS.js.br +0 -0
  133. package/build/client/_app/immutable/chunks/DOpBpjxS.js.gz +0 -0
  134. package/build/client/_app/immutable/chunks/DVEQFclp.js.br +0 -1
  135. package/build/client/_app/immutable/chunks/DVEQFclp.js.gz +0 -0
  136. package/build/client/_app/immutable/chunks/DiFoWL2c.js.br +0 -0
  137. package/build/client/_app/immutable/chunks/DiFoWL2c.js.gz +0 -0
  138. package/build/client/_app/immutable/chunks/DkADHpZF.js.br +0 -0
  139. package/build/client/_app/immutable/chunks/DkADHpZF.js.gz +0 -0
  140. package/build/client/_app/immutable/entry/app.CKgtYXQb.js.br +0 -0
  141. package/build/client/_app/immutable/entry/app.CKgtYXQb.js.gz +0 -0
  142. package/build/client/_app/immutable/entry/start.CYZu5qE1.js +0 -1
  143. package/build/client/_app/immutable/entry/start.CYZu5qE1.js.br +0 -0
  144. package/build/client/_app/immutable/entry/start.CYZu5qE1.js.gz +0 -0
  145. package/build/client/_app/immutable/nodes/0.I_1SApYQ.js.br +0 -0
  146. package/build/client/_app/immutable/nodes/0.I_1SApYQ.js.gz +0 -0
  147. package/build/client/_app/immutable/nodes/1.v6eUTnWq.js.br +0 -2
  148. package/build/client/_app/immutable/nodes/1.v6eUTnWq.js.gz +0 -0
  149. package/build/client/_app/immutable/nodes/2.DoA7Dfl-.js.br +0 -0
  150. package/build/client/_app/immutable/nodes/2.DoA7Dfl-.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/3.C-DO70Bs.js +0 -1
  152. package/build/client/_app/immutable/nodes/3.C-DO70Bs.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/3.C-DO70Bs.js.gz +0 -0
  154. package/build/client/_app/immutable/nodes/4.CALOuSyz.js.br +0 -0
  155. package/build/client/_app/immutable/nodes/4.CALOuSyz.js.gz +0 -0
  156. package/build/server/chunks/chunks/context.js-BUZqFfWG.js.map +0 -1
  157. package/build/server/chunks/chunks/library-store.js-ZLudCJlT.js.map +0 -1
  158. package/build/server/chunks/manifest.js-qmEXbstS.js.map +0 -1
  159. package/build/server/chunks/nodes/0.js-Bk6IZ-vD.js +0 -11
  160. package/build/server/chunks/nodes/1.js-H-qwo4GJ.js +0 -7
  161. package/build/server/chunks/nodes/2.js-DRpXVLwp.js +0 -7
  162. package/build/server/chunks/nodes/3.js-CDEzNFeU.js +0 -7
  163. package/build/server/chunks/nodes/3.js-CDEzNFeU.js.map +0 -1
  164. package/build/server/chunks/nodes/4.js-BKL7LSSm.js +0 -7
@@ -0,0 +1 @@
1
+ import{J as e,P as t,Y as n}from"./CNRz3sSw.js";async function r(e){if(!e.ok){let t=`${e.status} ${e.statusText}`;try{let n=await e.json();n.error?.message&&(t=n.error.message)}catch{}throw Error(t)}return await e.json()}async function i(){return r(await fetch(`/api/state`))}async function a(e,t,n,i){let a=new FormData;return a.set(`file`,e),a.set(`type`,t),a.set(`id`,n),a.set(`folder`,i),r(await fetch(`/api/assets`,{method:`POST`,body:a}))}async function o(e,t){let n=new FormData;return n.set(`file`,t),r(await fetch(`/api/assets/${encodeURIComponent(e)}/raw`,{method:`PUT`,body:n}))}async function s(e){return r(await fetch(`/api/folders`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:e})}))}async function c(e,t){return r(await fetch(`/api/folders/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({name:t})}))}async function l(e,t){return r(await fetch(`/api/folders/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({parent:t})}))}async function u(e){return r(await fetch(`/api/folders/${encodeURIComponent(e)}`,{method:`DELETE`}))}async function d(e,t){return r(await fetch(`/api/assets/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)}))}async function f(e,t){return r(await fetch(`/api/assets/move`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assetIds:e,folder:t})}))}async function p(e){return r(await fetch(`/api/assets/${encodeURIComponent(e)}`,{method:`DELETE`}))}async function m(e){return r(await fetch(`/api/assets/delete`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assetIds:e})}))}async function h(e){return r(await fetch(`/api/manifests`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({name:e})}))}async function g(e){return r(await fetch(`/api/manifests/${encodeURIComponent(e)}`,{method:`DELETE`}))}async function _(e,t){return r(await fetch(`/api/manifests/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)}))}var v=new class{#e=Promise.resolve();#t=n(null);get state(){return t(this.#t)}set state(t){e(this.#t,t,!0)}#n=n(!1);get saving(){return t(this.#n)}set saving(t){e(this.#n,t,!0)}#r=n(null);get error(){return t(this.#r)}set error(t){e(this.#r,t,!0)}#i=n(!1);get loaded(){return t(this.#i)}set loaded(t){e(this.#i,t,!0)}async refresh(){try{this.state=await i(),this.error=null}catch(e){this.error=e instanceof Error?e.message:String(e)}finally{this.loaded=!0}}mutate(e){let t=this.#e.then(async()=>{this.saving=!0,this.error=null;try{let t=await e();return this.state=t,t}catch(e){throw this.error=e instanceof Error?e.message:String(e),e}finally{this.saving=!1}});return this.#e=t.then(()=>{},()=>{}),t}get manifestNames(){return Object.keys(this.state?.library.manifests??{}).sort()}manifestAppearance(e){return this.state?.library.manifests[e]??{}}get generalIssues(){return this.state?.issues.filter(e=>e.assetId===void 0).map(e=>e.message)??[]}assetById(e){return this.state?.assets.find(t=>t.id===e)??null}};export{m as a,f as c,_ as d,c as f,p as i,l,a as m,s as n,u as o,o as p,h as r,g as s,v as t,d as u};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.I_1SApYQ.js","../chunks/CNRz3sSw.js","../chunks/DiFoWL2c.js","../chunks/xihTtKlq.js","../chunks/DVEQFclp.js","../chunks/CO4RBJfa.js","../assets/0.DLhIsYA_.css","../nodes/1.v6eUTnWq.js","../nodes/2.DoA7Dfl-.js","../chunks/DOpBpjxS.js","../chunks/DkADHpZF.js","../assets/ConfirmDialog.BdKlitwi.css","../assets/LibraryContextMenu.CMefGNE2.css","../assets/2.ohi-TClG.css","../nodes/3.C-DO70Bs.js","../assets/3.JwgtcTEd.css","../nodes/4.CALOuSyz.js","../assets/4.p004hmEN.css"])))=>i.map(i=>d[i]);
2
- import{$ as e,A as t,B as n,D as r,E as i,G as a,I as o,J as s,K as c,O as l,P as u,T as d,V as f,W as p,X as m,Y as h,a as g,et as _,i as v,it as y,n as b,r as x,w as S,y as C,z as w}from"../chunks/CNRz3sSw.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=l(`<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=l(`<!> <!>`,1);function M(l,x){_(x,!0);let T=v(x,`components`,23,()=>[]),E=v(x,`data_0`,3,null),D=v(x,`data_1`,3,null);f(()=>x.stores.page.set(x.page)),n(()=>{x.stores,x.page,x.constructors,T(),x.form,E(),D(),x.stores.page.notify()});let O=h(!1),k=h(!1),M=h(null);b(()=>{let e=x.stores.page.subscribe(()=>{u(O)&&(s(k,!0),o().then(()=>{s(M,document.title||`untitled page`,!0)}))});return s(O,!0),e});let N=m(()=>x.constructors[1]);var P=j(),F=a(P),I=e=>{let t=m(()=>x.constructors[0]);var n=r();C(a(n),()=>u(t),(e,t)=>{g(t(e,{get data(){return E()},get form(){return x.form},get params(){return x.page.params},children:(e,t)=>{var n=r();C(a(n),()=>u(N),(e,t)=>{g(t(e,{get data(){return D()},get form(){return x.form},get params(){return x.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),i(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),i(e,n)},L=e=>{let t=m(()=>x.constructors[0]);var n=r();C(a(n),()=>u(t),(e,t)=>{g(t(e,{get data(){return E()},get form(){return x.form},get params(){return x.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),i(e,n)};S(F,e=>{x.constructors[1]?e(I):e(L,-1)});var R=c(F,2),z=e=>{var n=A(),r=p(n),a=e=>{var n=t();w(()=>d(n,u(M))),i(e,n)};S(r,e=>{u(k)&&e(a)}),y(n),i(e,n)};S(R,e=>{u(O)&&e(z)}),i(l,P),e()}var N=x(M),P=[()=>O(()=>import(`../nodes/0.I_1SApYQ.js`),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url),()=>O(()=>import(`../nodes/1.v6eUTnWq.js`),__vite__mapDeps([7,1,3,4,2]),import.meta.url),()=>O(()=>import(`../nodes/2.DoA7Dfl-.js`),__vite__mapDeps([8,1,2,3,5,9,10,11,12,13]),import.meta.url),()=>O(()=>import(`../nodes/3.C-DO70Bs.js`),__vite__mapDeps([14,1,2,3,4,5,9,10,11,12,15]),import.meta.url),()=>O(()=>import(`../nodes/4.CALOuSyz.js`),__vite__mapDeps([16,1,2,3,5,10,11,17]),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.Sr1WDgiY.js","../chunks/CNRz3sSw.js","../chunks/DVEDrSOn.js","../chunks/xihTtKlq.js","../chunks/D9-155C9.js","../chunks/cznBUb-E.js","../assets/0.DLhIsYA_.css","../nodes/1.BwHqv728.js","../nodes/2.DidxYIU-.js","../chunks/BA62n9FX.js","../chunks/CQsKwm8E.js","../assets/ConfirmDialog.BdKlitwi.css","../assets/LibraryContextMenu.CMefGNE2.css","../assets/2.ohi-TClG.css","../nodes/3.C1AavoTf.js","../assets/3.C-toFWI4.css","../nodes/4.D8UoOONM.js","../assets/4.p004hmEN.css"])))=>i.map(i=>d[i]);
2
+ import{$ as e,A as t,B as n,D as r,E as i,G as a,I as o,J as s,K as c,O as l,P as u,T as d,V as f,W as p,X as m,Y as h,a as g,et as _,i as v,it as y,n as b,r as x,w as S,y as C,z as w}from"../chunks/CNRz3sSw.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=l(`<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=l(`<!> <!>`,1);function M(l,x){_(x,!0);let T=v(x,`components`,23,()=>[]),E=v(x,`data_0`,3,null),D=v(x,`data_1`,3,null);f(()=>x.stores.page.set(x.page)),n(()=>{x.stores,x.page,x.constructors,T(),x.form,E(),D(),x.stores.page.notify()});let O=h(!1),k=h(!1),M=h(null);b(()=>{let e=x.stores.page.subscribe(()=>{u(O)&&(s(k,!0),o().then(()=>{s(M,document.title||`untitled page`,!0)}))});return s(O,!0),e});let N=m(()=>x.constructors[1]);var P=j(),F=a(P),I=e=>{let t=m(()=>x.constructors[0]);var n=r();C(a(n),()=>u(t),(e,t)=>{g(t(e,{get data(){return E()},get form(){return x.form},get params(){return x.page.params},children:(e,t)=>{var n=r();C(a(n),()=>u(N),(e,t)=>{g(t(e,{get data(){return D()},get form(){return x.form},get params(){return x.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),i(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),i(e,n)},L=e=>{let t=m(()=>x.constructors[0]);var n=r();C(a(n),()=>u(t),(e,t)=>{g(t(e,{get data(){return E()},get form(){return x.form},get params(){return x.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),i(e,n)};S(F,e=>{x.constructors[1]?e(I):e(L,-1)});var R=c(F,2),z=e=>{var n=A(),r=p(n),a=e=>{var n=t();w(()=>d(n,u(M))),i(e,n)};S(r,e=>{u(k)&&e(a)}),y(n),i(e,n)};S(R,e=>{u(O)&&e(z)}),i(l,P),e()}var N=x(M),P=[()=>O(()=>import(`../nodes/0.Sr1WDgiY.js`),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url),()=>O(()=>import(`../nodes/1.BwHqv728.js`),__vite__mapDeps([7,1,3,4,2]),import.meta.url),()=>O(()=>import(`../nodes/2.DidxYIU-.js`),__vite__mapDeps([8,1,2,3,5,9,10,11,12,13]),import.meta.url),()=>O(()=>import(`../nodes/3.C1AavoTf.js`),__vite__mapDeps([14,1,2,3,4,5,9,10,11,12,15]),import.meta.url),()=>O(()=>import(`../nodes/4.D8UoOONM.js`),__vite__mapDeps([16,1,2,3,5,10,11,17]),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{n as e,s as t}from"../chunks/DVEDrSOn.js";export{t as load_css,e as start};
@@ -1,2 +1,2 @@
1
- import{$ as e,E as t,G as n,H as r,K as i,O as a,P as o,R as s,S as c,T as l,W as u,X as d,at as f,b as p,et as m,g as h,it as g,l as _,n as v,rt as y,v as b,w as x,z as S}from"../chunks/CNRz3sSw.js";import{c as C}from"../chunks/DiFoWL2c.js";import"../chunks/xihTtKlq.js";import{t as w}from"../chunks/DVEQFclp.js";import{t as T}from"../chunks/CO4RBJfa.js";var E=f({ssr:()=>!1}),D=a(`<span class="dot bad svelte-12qhfyh"></span> <span class="status-text error svelte-12qhfyh">Error</span>`,1),O=a(`<span class="dot saving svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Saving…</span>`,1),k=a(`<span class="dot ok svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Saved ✓</span>`,1),A=a(`<span class="dot svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Loading…</span>`,1),j=a(`<div class="notice svelte-12qhfyh"> <code class="svelte-12qhfyh">npx fundus start</code> in the host project.</div>`),M=a(`<span class="svelte-12qhfyh"> </span>`),N=a(`<div class="issue-banner svelte-12qhfyh" role="alert"></div>`),P=a(`<!> <!>`,1),F=a(`<div class="shell svelte-12qhfyh"><header class="topbar svelte-12qhfyh"><a class="brand svelte-12qhfyh"><span class="logo svelte-12qhfyh">◆</span> Fundus</a> <nav class="svelte-12qhfyh"><a>Library</a> <a>Manifests</a></nav> <div class="status svelte-12qhfyh"><!></div></header> <!></div>`);function I(a,f){m(f,!0),v(()=>{T.refresh()});let E=d(()=>w.url.pathname===`/`||w.url.pathname.startsWith(`/asset`)),I=d(()=>w.url.pathname.startsWith(`/manifests`)),L=d(()=>T.error??(T.generalIssues.length>0?T.generalIssues.join(`
1
+ import{$ as e,E as t,G as n,H as r,K as i,O as a,P as o,R as s,S as c,T as l,W as u,X as d,at as f,b as p,et as m,g as h,it as g,l as _,n as v,rt as y,v as b,w as x,z as S}from"../chunks/CNRz3sSw.js";import{c as C}from"../chunks/DVEDrSOn.js";import"../chunks/xihTtKlq.js";import{t as w}from"../chunks/D9-155C9.js";import{t as T}from"../chunks/cznBUb-E.js";var E=f({ssr:()=>!1}),D=a(`<span class="dot bad svelte-12qhfyh"></span> <span class="status-text error svelte-12qhfyh">Error</span>`,1),O=a(`<span class="dot saving svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Saving…</span>`,1),k=a(`<span class="dot ok svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Saved ✓</span>`,1),A=a(`<span class="dot svelte-12qhfyh"></span> <span class="status-text svelte-12qhfyh">Loading…</span>`,1),j=a(`<div class="notice svelte-12qhfyh"> <code class="svelte-12qhfyh">npx fundus start</code> in the host project.</div>`),M=a(`<span class="svelte-12qhfyh"> </span>`),N=a(`<div class="issue-banner svelte-12qhfyh" role="alert"></div>`),P=a(`<!> <!>`,1),F=a(`<div class="shell svelte-12qhfyh"><header class="topbar svelte-12qhfyh"><a class="brand svelte-12qhfyh"><span class="logo svelte-12qhfyh">◆</span> Fundus</a> <nav class="svelte-12qhfyh"><a>Library</a> <a>Manifests</a></nav> <div class="status svelte-12qhfyh"><!></div></header> <!></div>`);function I(a,f){m(f,!0),v(()=>{T.refresh()});let E=d(()=>w.url.pathname===`/`||w.url.pathname.startsWith(`/asset`)),I=d(()=>w.url.pathname.startsWith(`/manifests`)),L=d(()=>T.error??(T.generalIssues.length>0?T.generalIssues.join(`
2
2
  `):null));var R=F();b(`12qhfyh`,e=>{s(()=>{r.title=`Fundus`})});var z=u(R),B=u(z),V=i(B,2),H=u(V);let U;var W=i(H,2);let G;g(V);var K=i(V,2),q=u(K),J=e=>{var r=D(),a=i(n(r),2);S(()=>_(a,`title`,o(L))),t(e,r)},Y=e=>{var n=O();y(2),t(e,n)},X=e=>{var n=k();y(2),t(e,n)},Z=e=>{var n=A();y(2),t(e,n)};x(q,e=>{o(L)?e(J):T.saving?e(Y,1):T.loaded?e(X,2):e(Z,-1)}),g(K),g(z);var Q=i(z,2),$=e=>{var n=j(),r=u(n);y(2),g(n),S(()=>l(r,`Could not reach the Fundus server (${T.error??``}). Start it with `)),t(e,n)},ee=e=>{var r=P(),a=n(r),o=e=>{var n=N();c(n,20,()=>T.generalIssues,e=>e,(e,n)=>{var r=M(),i=u(r,!0);g(r),S(()=>l(i,n)),t(e,r)}),g(n),t(e,n)};x(a,e=>{T.generalIssues.length>0&&e(o)}),p(i(a,2),()=>f.children),t(e,r)};x(Q,e=>{T.error&&!T.state?e($):e(ee,-1)}),g(R),S((e,t,n)=>{_(B,`href`,e),_(H,`href`,t),U=h(H,1,`svelte-12qhfyh`,null,U,{active:o(E)}),_(W,`href`,n),G=h(W,1,`svelte-12qhfyh`,null,G,{active:o(I)})},[()=>C(`/`),()=>C(`/`),()=>C(`/manifests`)]),t(a,R),e()}export{I as component,E as universal};
@@ -1 +1 @@
1
- import{$ as e,E as t,G as n,K as r,O as i,T as a,W as o,et as s,it as c,z as l}from"../chunks/CNRz3sSw.js";import"../chunks/xihTtKlq.js";import{t as u}from"../chunks/DVEQFclp.js";var d=i(`<h1> </h1> <p> </p>`,1);function f(i,f){s(f,!0);var p=d(),m=n(p),h=o(m,!0);c(m);var g=r(m,2),_=o(g,!0);c(g),l(()=>{a(h,u.status),a(_,u.error?.message)}),t(i,p),e()}export{f as component};
1
+ import{$ as e,E as t,G as n,K as r,O as i,T as a,W as o,et as s,it as c,z as l}from"../chunks/CNRz3sSw.js";import"../chunks/xihTtKlq.js";import{t as u}from"../chunks/D9-155C9.js";var d=i(`<h1> </h1> <p> </p>`,1);function f(i,f){s(f,!0);var p=d(),m=n(p),h=o(m,!0);c(m);var g=r(m,2),_=o(g,!0);c(g),l(()=>{a(h,u.status),a(_,u.error?.message)}),t(i,p),e()}export{f as component};
@@ -0,0 +1,2 @@
1
+ v��
2
+ ���M|7��>��A6�&�9�gyllZ���Q�ڲ���I�J��8�n1��u3�IIOí!�=|<#�;,�@�@K�I`E��������� ��|'Y\�}՛付����S����>�Qܤ���"��V�����6�zj��;&'���拈�{�����t����!<U���2�Ӏ<�U�C�Ә<�B��`�D|z�Hd"��2�D0)���>s�H�B�Ј;�l�����1
@@ -1,3 +1,3 @@
1
- import{$ as e,A as t,B as n,D as r,E as i,G as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,S as p,T as m,U as h,W as g,X as _,Y as v,a as y,c as b,et as x,f as S,g as ee,h as C,i as w,it as T,j as te,l as E,o as ne,q as re,rt as ie,s as ae,u as oe,w as D,y as se,z as O}from"../chunks/CNRz3sSw.js";import{c as ce,t as le}from"../chunks/DiFoWL2c.js";import"../chunks/xihTtKlq.js";import{a as ue,c as de,l as fe,t as k,u as pe}from"../chunks/CO4RBJfa.js";import{a as me,c as he,d as ge,f as _e,i as ve,l as ye,n as be,o as xe,r as Se,s as Ce,t as we,u as Te}from"../chunks/DOpBpjxS.js";import{a as Ee,t as De,v as Oe}from"../chunks/DkADHpZF.js";function A(e){return Array.isArray?Array.isArray(e):Me(e)===`[object Array]`}function j(e){if(typeof e==`string`)return e;if(typeof e==`bigint`)return e.toString();let t=e+``;return t==`0`&&1/e==-1/0?`-0`:t}function ke(e){return e==null?``:j(e)}function M(e){return typeof e==`string`}function N(e){return typeof e==`number`}function Ae(e){return e===!0||e===!1||je(e)&&Me(e)==`[object Boolean]`}function P(e){return typeof e==`object`}function je(e){return P(e)&&e!==null}function F(e){return e!=null}function I(e){return!e.trim().length}function Me(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var L=`Incorrect 'index' type`,R=`Invalid doc index: must be a non-negative integer within the bounds of the docs array`,z=e=>`Invalid value for key ${e}`,B=e=>`Pattern length exceeds max of ${e}.`,Ne=e=>`Missing ${e} property in key`,V=e=>`Property 'weight' in key '${e}' must be a positive integer`,H=`Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.`,U=Object.prototype.hasOwnProperty,W=class{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach(e=>{let n=G(e);this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight}),this._keys.forEach(e=>{e.weight/=t})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function G(e){let t=null,n=null,r=null,i=1,a=null;if(M(e)||A(e))r=e,t=Pe(e),n=Fe(e);else{if(!U.call(e,`name`))throw Error(Ne(`name`));let o=e.name;if(r=o,U.call(e,`weight`)&&e.weight!==void 0&&(i=e.weight,i<=0))throw Error(V(Fe(o)));t=Pe(o),n=Fe(o),a=e.getFn??null}return{path:t,id:n,weight:i,src:r,getFn:a}}function Pe(e){return A(e)?e:e.split(`.`)}function Fe(e){return A(e)?e.join(`.`):e}function Ie(e,t){let n=[],r=!1,i=(e,t,a,o)=>{if(F(e))if(!t[a])n.push(o===void 0?e:{v:e,i:o});else{let s=e[t[a]];if(!F(s))return;if(a===t.length-1&&(M(s)||N(s)||Ae(s)||typeof s==`bigint`))n.push(o===void 0?ke(s):{v:ke(s),i:o});else if(A(s)){r=!0;for(let e=0,n=s.length;e<n;e+=1)i(s[e],t,a+1,e)}else t.length&&i(s,t,a+1,o)}};return i(e,M(t)?t.split(`.`):t,0),r?n:n[0]}var Le={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},Re={isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1},ze={location:0,threshold:.6,distance:100},K={useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:`any`,getFn:Ie,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},q=Object.freeze({...Re,...Le,...ze,...K});function Be(e=1,t=3){let n=new Map,r=10**t;return{get(t){let i=1,a=!1;for(let e=0;e<t.length;e++)t.charCodeAt(e)===32?a||=(i++,!0):a=!1;if(n.has(i))return n.get(i);let o=Math.round(r/i**(.5*e))/r;return n.set(i,o),o},clear(){n.clear()}}}var J=class{constructor({getFn:e=q.getFn,fieldNormWeight:t=q.fieldNormWeight}={}){this.norm=Be(t,3),this.getFn=e,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(e=[]){this.docs=e}setIndexRecords(e=[]){this.records=e}setKeys(e=[]){this.keys=e,this._keysMap={},e.forEach((e,t)=>{this._keysMap[e.id]=t})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;let e=this.docs.length;this.records=Array(e);let t=0;if(M(this.docs[0]))for(let n=0;n<e;n++){let e=this._createStringRecord(this.docs[n],n);e&&(this.records[t++]=e)}else for(let n=0;n<e;n++)this.records[t++]=this._createObjectRecord(this.docs[n],n);this.records.length=t,this.norm.clear()}add(e,t){if(!Number.isInteger(t)||t<0)throw Error(R);if(M(e)){let n=this._createStringRecord(e,t);return n&&this.records.push(n),n}let n=this._createObjectRecord(e,t);return this.records.push(n),n}removeAt(e){if(!Number.isInteger(e)||e<0)throw Error(R);for(let t=0,n=this.records.length;t<n;t+=1)if(this.records[t].i===e){this.records.splice(t,1);break}for(let t=0,n=this.records.length;t<n;t+=1)this.records[t].i>e&&--this.records[t].i}removeAll(e){let t=new Set;for(let n of e)Number.isInteger(n)&&n>=0&&t.add(n);if(t.size===0)return;this.records=this.records.filter(e=>!t.has(e.i));let n=Array.from(t).sort((e,t)=>e-t);for(let e of this.records){let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i]<e.i?t=i+1:r=i}e.i-=t}}getValueForItemAtKeyId(e,t){return e[this._keysMap[t]]}size(){return this.records.length}_createStringRecord(e,t){return!F(e)||I(e)?null:{v:e,i:t,n:this.norm.get(e)}}_createObjectRecord(e,t){let n={i:t,$:{}};for(let t=0,r=this.keys.length;t<r;t++){let r=this.keys[t],i=r.getFn?r.getFn(e):this.getFn(e,r.path);if(F(i)){if(A(i)){let e=[];for(let t=0,n=i.length;t<n;t+=1){let n=i[t];if(F(n)){if(M(n)){if(!I(n)){let r={v:n,i:t,n:this.norm.get(n)};e.push(r)}}else if(F(n.v)){let t=M(n.v)?n.v:ke(n.v);if(!I(t)){let r={v:t,i:n.i,n:this.norm.get(t)};e.push(r)}}}}n.$[t]=e}else if(M(i)&&!I(i)){let e={v:i,n:this.norm.get(i)};n.$[t]=e}}}return n}toJSON(){return{keys:this.keys.map(({getFn:e,...t})=>t),records:this.records}}};function Ve(e,t,{getFn:n=q.getFn,fieldNormWeight:r=q.fieldNormWeight}={}){let i=new J({getFn:n,fieldNormWeight:r});return i.setKeys(e.map(G)),i.setSources(t),i.create(),i}function He(e,{getFn:t=q.getFn,fieldNormWeight:n=q.fieldNormWeight}={}){let{keys:r,records:i}=e,a=new J({getFn:t,fieldNormWeight:n});return a.setKeys(r),a.setIndexRecords(i),a}function Y(e=[],t=q.minMatchCharLength){let n=[],r=-1,i=-1,a=0;for(let o=e.length;a<o;a+=1){let o=e[a];o&&r===-1?r=a:!o&&r!==-1&&(i=a-1,i-r+1>=t&&n.push([r,i]),r=-1)}return e[a-1]&&a-r>=t&&n.push([r,a-1]),n}function Ue(e,t,n,{location:r=q.location,distance:i=q.distance,threshold:a=q.threshold,findAllMatches:o=q.findAllMatches,minMatchCharLength:s=q.minMatchCharLength,includeMatches:c=q.includeMatches,ignoreLocation:l=q.ignoreLocation}={}){if(t.length>32)throw Error(B(32));let u=t.length,d=e.length,f=Math.max(0,Math.min(r,d)),p=a,m=f,h=(e,t)=>{let n=e/u;if(l)return n;let r=Math.abs(f-t);return i?n+r/i:r?1:n},g=s>1||c,_=g?Array(d):[],v;for(;(v=e.indexOf(t,m))>-1;){let e=h(0,v);if(p=Math.min(e,p),m=v+u,g){let e=0;for(;e<u;)_[v+e]=1,e+=1}}m=-1;let y=[],b=1,x=0,S=u+d,ee=1<<u-1;for(let t=0;t<u;t+=1){let r=0,i=S;for(;r<i;)h(t,f+i)<=p?r=i:S=i,i=Math.floor((S-r)/2+r);S=i;let a=Math.max(1,f-i+1),s=o?d:Math.min(f+i,d)+u,c=Array(s+2);c[s+1]=(1<<t)-1;for(let r=s;r>=a;--r){let i=r-1,o=n[e[i]];if(c[r]=(c[r+1]<<1|1)&o,t&&(c[r]|=(y[r+1]|y[r])<<1|1|y[r+1]),c[r]&ee&&(b=h(t,i),b<=p)){if(p=b,m=i,x=t,m<=f)break;a=Math.max(1,2*f-m)}}if(h(t+1,f)>p)break;y=c}if(g&&m>=0){let t=Math.min(d-1,m+u-1+x);for(let r=m;r<=t;r+=1)n[e[r]]&&(_[r]=1)}let C={isMatch:m>=0,score:Math.max(.001,b)};if(g){let e=Y(_,s);e.length?c&&(C.indices=e):C.isMatch=!1}return C}function We(e){let t={};for(let n=0,r=e.length;n<r;n+=1){let i=e.charAt(n);t[i]=(t[i]||0)|1<<r-n-1}return t}function Ge(e){if(e.length<=1)return e;e.sort((e,t)=>e[0]-t[0]||e[1]-t[1]);let t=[e[0]];for(let n=1,r=e.length;n<r;n+=1){let r=t[t.length-1],i=e[n];i[0]<=r[1]+1?r[1]=Math.max(r[1],i[1]):t.push(i)}return t}var Ke={ł:`l`,Ł:`L`,đ:`d`,Đ:`D`,ø:`o`,Ø:`O`,ħ:`h`,Ħ:`H`,ŧ:`t`,Ŧ:`T`,ı:`i`,ß:`ss`},qe=RegExp(`[`+Object.keys(Ke).join(``)+`]`,`g`),X=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFD`).replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,``).replace(qe,e=>Ke[e]):e=>e,Je=class{constructor(e,{location:t=q.location,threshold:n=q.threshold,distance:r=q.distance,includeMatches:i=q.includeMatches,findAllMatches:a=q.findAllMatches,minMatchCharLength:o=q.minMatchCharLength,isCaseSensitive:s=q.isCaseSensitive,ignoreDiacritics:c=q.ignoreDiacritics,ignoreLocation:l=q.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:r,includeMatches:i,findAllMatches:a,minMatchCharLength:o,isCaseSensitive:s,ignoreDiacritics:c,ignoreLocation:l},e=s?e:e.toLowerCase(),e=c?X(e):e,this.pattern=e,this.chunks=[],!this.pattern.length)return;let u=(e,t)=>{this.chunks.push({pattern:e,alphabet:We(e),startIndex:t})},d=this.pattern.length;if(d>32){let e=0,t=d%32,n=d-t;for(;e<n;)u(this.pattern.substr(e,32),e),e+=32;if(t){let e=d-32;u(this.pattern.substr(e),e)}}else u(this.pattern,0)}searchIn(e){let{isCaseSensitive:t,ignoreDiacritics:n,includeMatches:r}=this.options;if(e=t?e:e.toLowerCase(),e=n?X(e):e,this.pattern===e){let t={isMatch:!0,score:0};return r&&(t.indices=[[0,e.length-1]]),t}let{location:i,distance:a,threshold:o,findAllMatches:s,minMatchCharLength:c,ignoreLocation:l}=this.options,u=[],d=0,f=!1;this.chunks.forEach(({pattern:t,alphabet:n,startIndex:p})=>{let{isMatch:m,score:h,indices:g}=Ue(e,t,n,{location:i+p,distance:a,threshold:o,findAllMatches:s,minMatchCharLength:c,includeMatches:r,ignoreLocation:l});m&&(f=!0),d+=h,m&&g&&u.push(...g)});let p={isMatch:f,score:f?d/this.chunks.length:1};return f&&r&&(p.indices=Ge(u)),p}},Ye=new Set([`fuzzy`,`include`]);function Xe(e){return e.startsWith(`inverse`)}var Z=[{type:`exact`,multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:e=>({type:`exact`,search(t){let n=t===e;return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`include`,multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:e=>({type:`include`,search(t){let n=0,r,i=[],a=e.length;for(;(r=t.indexOf(e,n))>-1;)n=r+a,i.push([r,n-1]);let o=!!i.length;return{isMatch:o,score:+!o,indices:i}}})},{type:`prefix-exact`,multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:e=>({type:`prefix-exact`,search(t){let n=t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`inverse-prefix-exact`,multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:e=>({type:`inverse-prefix-exact`,search(t){let n=!t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`inverse-suffix-exact`,multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:e=>({type:`inverse-suffix-exact`,search(t){let n=!t.endsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`suffix-exact`,multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:e=>({type:`suffix-exact`,search(t){let n=t.endsWith(e);return{isMatch:n,score:+!n,indices:[t.length-e.length,t.length-1]}}})},{type:`inverse-exact`,multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:e=>({type:`inverse-exact`,search(t){let n=t.indexOf(e)===-1;return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`fuzzy`,multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(e,t={})=>{let n=new Je(e,{location:t.location??q.location,threshold:t.threshold??q.threshold,distance:t.distance??q.distance,includeMatches:t.includeMatches??q.includeMatches,findAllMatches:t.findAllMatches??q.findAllMatches,minMatchCharLength:t.minMatchCharLength??q.minMatchCharLength,isCaseSensitive:t.isCaseSensitive??q.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics??q.ignoreDiacritics,ignoreLocation:t.ignoreLocation??q.ignoreLocation});return{type:`fuzzy`,search(e){return n.searchIn(e)}}}}],Ze=Z.length,Qe=`\0`,$e=`|`;function et(e){let t=[],n=e.length,r=0;for(;r<n;){for(;r<n&&e[r]===` `;)r++;if(r>=n)break;let i=r;for(;i<n&&e[i]!==` `&&e[i]!==`"`;)i++;if(i<n&&e[i]===`"`){for(i++;i<n;){if(e[i]===`"`){let t=i+1;if(t>=n||e[t]===` `){i++;break}if(e[t]===`$`&&(t+1>=n||e[t+1]===` `)){i+=2;break}}i++}t.push(e.substring(r,i)),r=i}else{for(;i<n&&e[i]!==` `;)i++;t.push(e.substring(r,i)),r=i}}return t}function tt(e,t){let n=e.match(t);return n?n[1]:null}function nt(e,t={}){return e.replace(/\\\|/g,Qe).split($e).map(e=>{let n=et(e.replace(/\u0000/g,`|`).trim()).filter(e=>e&&!!e.trim()),r=[];for(let e=0,i=n.length;e<i;e+=1){let i=n[e],a=!1,o=-1;for(;!a&&++o<Ze;){let e=Z[o],n=tt(i,e.multiRegex);n&&(r.push(e.create(n,t)),a=!0)}if(!a)for(o=-1;++o<Ze;){let e=Z[o],n=tt(i,e.singleRegex);if(n){r.push(e.create(n,t));break}}}return r})}var rt=class{constructor(e,{isCaseSensitive:t=q.isCaseSensitive,ignoreDiacritics:n=q.ignoreDiacritics,includeMatches:r=q.includeMatches,minMatchCharLength:i=q.minMatchCharLength,ignoreLocation:a=q.ignoreLocation,findAllMatches:o=q.findAllMatches,location:s=q.location,threshold:c=q.threshold,distance:l=q.distance}={}){this.query=null,this.options={isCaseSensitive:t,ignoreDiacritics:n,includeMatches:r,minMatchCharLength:i,findAllMatches:o,ignoreLocation:a,location:s,threshold:c,distance:l},e=t?e:e.toLowerCase(),e=n?X(e):e,this.pattern=e,this.query=nt(this.pattern,this.options)}static condition(e,t){return t.useExtendedSearch}searchIn(e){let t=this.query;if(!t)return{isMatch:!1,score:1};let{includeMatches:n,isCaseSensitive:r,ignoreDiacritics:i}=this.options;e=r?e:e.toLowerCase(),e=i?X(e):e;let a=0,o=[],s=0,c=!1;for(let r=0,i=t.length;r<i;r+=1){let i=t[r];o.length=0,a=0,c=!1;for(let t=0,r=i.length;t<r;t+=1){let r=i[t],{isMatch:l,indices:u,score:d}=r.search(e);if(l)a+=1,s+=d,Xe(r.type)&&(c=!0),n&&(Ye.has(r.type)?o.push(...u):o.push(u));else{s=0,a=0,o.length=0,c=!1;break}}if(a){let e={isMatch:!0,score:s/a};return c&&(e.hasInverse=!0),n&&(e.indices=Ge(o)),e}}return{isMatch:!1,score:1}}},it=[];function at(...e){it.push(...e)}function ot(e,t){for(let n=0,r=it.length;n<r;n+=1){let r=it[n];if(r.condition(e,t))return new r(e,t)}return new Je(e,t)}var Q={AND:`$and`,OR:`$or`},st={PATH:`$path`,PATTERN:`$val`},ct=e=>!!(e[Q.AND]||e[Q.OR]),lt=e=>!!e[st.PATH],ut=e=>!A(e)&&P(e)&&!ct(e),dt=e=>({[Q.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function ft(e,t,{auto:n=!0}={}){let r=e=>{if(M(e)){let r={keyId:null,pattern:e};return n&&(r.searcher=ot(e,t)),r}let i=Object.keys(e),a=lt(e);if(!a&&i.length>1&&!ct(e))return r(dt(e));if(ut(e)){let r=a?e[st.PATH]:i[0],o=a?e[st.PATTERN]:e[r];if(!M(o))throw Error(z(r));let s={keyId:Fe(r),pattern:o};return n&&(s.searcher=ot(o,t)),s}let o={children:[],operator:i[0]};return i.forEach(t=>{let n=e[t];A(n)&&n.forEach(e=>{o.children.push(r(e))})}),o};return ct(e)||(e=dt(e)),r(e)}function pt(e,{ignoreFieldNorm:t=q.ignoreFieldNorm}){let n=1;return e.forEach(({key:e,norm:r,score:i})=>{let a=e?e.weight:null;n*=(i===0&&a?2**-52:i)**+((a||1)*(t?1:r))}),n}function mt(e,{ignoreFieldNorm:t=q.ignoreFieldNorm}){e.forEach(e=>{e.score=pt(e.matches,{ignoreFieldNorm:t})})}var ht=class{constructor(e){this.limit=e,this.heap=[]}get size(){return this.heap.length}shouldInsert(e){return this.size<this.limit||e<this.heap[0].score}insert(e){this.size<this.limit?(this.heap.push(e),this._bubbleUp(this.size-1)):e.score<this.heap[0].score&&(this.heap[0]=e,this._sinkDown(0))}extractSorted(e){return this.heap.sort(e)}_bubbleUp(e){let t=this.heap;for(;e>0;){let n=e-1>>1;if(t[e].score<=t[n].score)break;let r=t[e];t[e]=t[n],t[n]=r,e=n}}_sinkDown(e){let t=this.heap,n=t.length,r=e;do{e=r;let i=2*e+1,a=2*e+2;if(i<n&&t[i].score>t[r].score&&(r=i),a<n&&t[a].score>t[r].score&&(r=a),r!==e){let n=t[e];t[e]=t[r],t[r]=n}}while(r!==e)}};function gt(e){let t=[];return e.matches.forEach(e=>{if(!F(e.indices)||!e.indices.length)return;let n={indices:e.indices,value:e.value};e.key&&(n.key=e.key.id),e.idx>-1&&(n.refIndex=e.idx),t.push(n)}),t}function _t(e,t,{includeMatches:n=q.includeMatches,includeScore:r=q.includeScore}={}){return e.map(e=>{let{idx:i}=e,a={item:t[i],refIndex:i};return n&&(a.matches=gt(e)),r&&(a.score=e.score),a})}var vt=/[\p{L}\p{M}\p{N}_]+/gu,yt=new WeakSet;function bt(e){yt.has(e)||(yt.add(e),console.warn(`[Fuse] tokenize regex ${e} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function xt(e){if(typeof e==`function`){let t=!1;return n=>{let r=e(n);if(!t&&(t=!0,!Array.isArray(r)||r.some(e=>typeof e!=`string`)))throw Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(r)?`array containing non-strings`:typeof r}.`);return r}}return e instanceof RegExp?(e.global||bt(e),t=>t.match(e)||[]):e=>e.match(vt)||[]}function St({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){let r=xt(n);return{tokenize(n){return e||(n=n.toLowerCase()),t&&(n=X(n)),r(n)}}}var Ct=class{static condition(e,t){return t.useTokenSearch}constructor(e,t){this.options=t,this.analyzer=St({isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,tokenize:t.tokenize});let n=this.analyzer.tokenize(e),{df:r,fieldCount:i}=t._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(let e of n){this.termSearchers.push(new Je(e,{location:t.location,threshold:t.threshold,distance:t.distance,includeMatches:t.includeMatches,findAllMatches:t.findAllMatches,minMatchCharLength:t.minMatchCharLength,isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,ignoreLocation:!0}));let n=r.get(e)||0,a=Math.log(1+(i-n+.5)/(n+.5));this.idfWeights.push(a)}this.combineAll=t.tokenMatch===`all`,this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(e){if(!this.termSearchers.length)return{isMatch:!1,score:1};let t=[],n=0,r=0,i=0,a=0,o=this.combineAll&&!this.useMask?new Set:null;for(let s=0;s<this.termSearchers.length;s++){let c=this.termSearchers[s].searchIn(e),l=this.idfWeights[s];r+=l,c.isMatch&&(i++,n+=l*(1-c.score),c.indices&&t.push(...c.indices),this.combineAll&&(this.useMask?a|=1<<s:o.add(s)))}if(i===0)return{isMatch:!1,score:1};let s=r>0?1-n/r:0,c={isMatch:!0,score:Math.max(.001,s)};return this.options.includeMatches&&t.length&&(c.indices=Ge(t)),this.combineAll&&(this.useMask?c.matchedMask=a:c.matchedTerms=o,c.termCount=this.numTerms),c}};function wt(e,t,n,r){let i=r.tokenize(t);if(!i.length)return;e.fieldCount++,e.docFieldCount.set(n,(e.docFieldCount.get(n)||0)+1);let a=new Set(i),o=e.docTermFieldHits.get(n);o||(o=new Map,e.docTermFieldHits.set(n,o));for(let t of a)o.set(t,(o.get(t)||0)+1),e.df.set(t,(e.df.get(t)||0)+1)}function Tt(e,t,n,r){let{i,v:a,$:o}=t;if(a!==void 0){wt(e,a,i,r);return}if(o)for(let t=0;t<n;t++){let n=o[t];if(n)if(Array.isArray(n))for(let t of n)wt(e,t.v,i,r);else wt(e,n.v,i,r)}}function Et(e,t,n){let r={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(let i of e)Tt(r,i,t,n);return r}function Dt(e,t,n,r){Tt(e,t,n,r)}function Ot(e,t){let n=e.docFieldCount.get(t);if(n===void 0)return;e.fieldCount-=n,e.docFieldCount.delete(t);let r=e.docTermFieldHits.get(t);if(r){for(let[t,n]of r){let r=(e.df.get(t)||0)-n;r<=0?e.df.delete(t):e.df.set(t,r)}e.docTermFieldHits.delete(t)}}function kt(e,t){if(t.length===0)return;let n=Array.from(new Set(t)).sort((e,t)=>e-t);for(let t of n)Ot(e,t);let r=e=>{let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i]<e?t=i+1:r=i}return e-t},i=n[0],a=new Map;for(let[t,n]of e.docFieldCount)a.set(t>i?r(t):t,n);e.docFieldCount=a;let o=new Map;for(let[t,n]of e.docTermFieldHits)o.set(t>i?r(t):t,n);e.docTermFieldHits=o}var $=class{constructor(e,t,n){this.options={...q,...t},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new W(this.options.keys),this._docs=e,this._myIndex=null,this._invertedIndex=null,this.setCollection(e,n),this._lastQuery=null,this._lastSearcher=null}_getSearcher(e){if(this._lastQuery===e)return this._lastSearcher;let t=ot(e,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=e,this._lastSearcher=t,t}setCollection(e,t){if(this._docs=e,t&&!(t instanceof J))throw Error(L);if(this._myIndex=t||Ve(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){let e=St({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=Et(this._myIndex.records,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}add(e){if(!F(e))return;this._docs.push(e);let t=this._myIndex.add(e,this._docs.length-1);if(this._invertedIndex&&t){let e=St({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});Dt(this._invertedIndex,t,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}remove(e=()=>!1){let t=[],n=[];for(let r=0,i=this._docs.length;r<i;r+=1)e(this._docs[r],r)&&(t.push(this._docs[r]),n.push(r));if(n.length){this._invertedIndex&&kt(this._invertedIndex,n);let e=new Set(n);this._docs=this._docs.filter((t,n)=>!e.has(n)),this._myIndex.removeAll(n),this._invalidateSearcherCache()}return t}removeAt(e){if(!Number.isInteger(e)||e<0||e>=this._docs.length)throw Error(R);this._invertedIndex&&kt(this._invertedIndex,[e]);let t=this._docs.splice(e,1)[0];return this._myIndex.removeAt(e),this._invalidateSearcherCache(),t}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}search(e,t){let{limit:n=-1}=t||{},{includeMatches:r,includeScore:i,shouldSort:a,sortFn:o,ignoreFieldNorm:s}=this.options;if(M(e)&&!e.trim()){let e=this._docs.map((e,t)=>({item:e,refIndex:t}));return N(n)&&n>-1&&(e=e.slice(0,n)),e}let c=N(n)&&n>0&&M(e),l;if(c){let t=new ht(n);M(this._docs[0])?this._searchStringList(e,{heap:t,ignoreFieldNorm:s}):this._searchObjectList(e,{heap:t,ignoreFieldNorm:s}),l=t.extractSorted(o)}else l=M(e)?M(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e),mt(l,{ignoreFieldNorm:s}),a&&l.sort(o),N(n)&&n>-1&&(l=l.slice(0,n));return _t(l,this._docs,{includeMatches:r,includeScore:i})}_searchStringList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{records:a}=this._myIndex,o=t?null:[];return a.forEach(({v:e,i:a,n:s})=>{if(!F(e))return;let c=r.searchIn(e);if(c.isMatch){let r={score:c.score,value:e,norm:s,indices:c.indices};i&&(r.matchedMask=c.matchedMask,r.matchedTerms=c.matchedTerms,r.termCount=c.termCount);let l=[r];if(!i||this._coversAllTokens(l)){let r={item:e,idx:a,matches:l};t?(r.score=pt(r.matches,{ignoreFieldNorm:n}),t.shouldInsert(r.score)&&t.insert(r)):o.push(r)}}}),o}_searchLogical(e){let t=ft(e,this.options),n=(e,t,r)=>{if(!(`children`in e)){let{keyId:n,searcher:i}=e,a;return n===null?(a=[],this._myIndex.keys.forEach((e,n)=>{a.push(...this._findMatches({key:e,value:t[n],searcher:i}))})):a=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:i}),a&&a.length?[{idx:r,item:t,matches:a}]:[]}let{children:i,operator:a}=e,o=[];for(let e=0,s=i.length;e<s;e+=1){let s=i[e],c=n(s,t,r);if(c.length)o.push(...c);else if(a===Q.AND)return[]}return o},r=this._myIndex.records,i=new Map,a=[];return r.forEach(({$:e,i:r})=>{if(F(e)){let o=n(t,e,r);o.length&&(i.has(r)||(i.set(r,{idx:r,item:e,matches:[]}),a.push(i.get(r))),o.forEach(({matches:e})=>{i.get(r).matches.push(...e)}))}}),a}_searchObjectList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{keys:a,records:o}=this._myIndex,s=t?null:[];return o.forEach(({$:e,i:o})=>{if(!F(e))return;let c=[],l=!1,u=!1;if(a.forEach((t,n)=>{let i=this._findMatches({key:t,value:e[n],searcher:r});i.length?(c.push(...i),i[0].hasInverse&&(u=!0)):l=!0}),!(u&&l)&&c.length&&(!i||this._coversAllTokens(c))){let r={idx:o,item:e,matches:c};t?(r.score=pt(r.matches,{ignoreFieldNorm:n}),t.shouldInsert(r.score)&&t.insert(r)):s.push(r)}}),s}_findMatches({key:e,value:t,searcher:n}){if(!F(t))return[];let r=[];if(A(t))t.forEach(({v:t,i,n:a})=>{if(!F(t))return;let o=n.searchIn(t);if(o.isMatch){let n={score:o.score,key:e,value:t,idx:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(n.matchedMask=o.matchedMask,n.matchedTerms=o.matchedTerms,n.termCount=o.termCount),r.push(n)}});else{let{v:i,n:a}=t,o=n.searchIn(i);if(o.isMatch){let t={score:o.score,key:e,value:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(t.matchedMask=o.matchedMask,t.matchedTerms=o.matchedTerms,t.termCount=o.termCount),r.push(t)}}return r}_coversAllTokens(e){let t=e.length?e[0].termCount:void 0;if(t===void 0)return!0;if(t<=31){let n=0;for(let t=0;t<e.length;t++)n|=e[t].matchedMask||0;return n===2**t-1}let n=new Set;for(let t=0;t<e.length;t++){let r=e[t].matchedTerms;if(r)for(let e of r)n.add(e)}return n.size===t}};$.version=`7.4.2`,$.createIndex=Ve,$.parseIndex=He,$.config=q,$.match=function(e,t,n){if(n&&n.useTokenSearch)throw Error(H);return ot(e,{...q,...n}).searchIn(t)},$.parseQuery=ft,at(rt),at(Ct),$.use=function(...e){e.forEach(e=>at(e))};var At=$,jt=d(`<button role="menuitem" class="svelte-109nkvw">Rename…</button>`),Mt=d(`<div class="context-menu svelte-109nkvw" role="menu" aria-label="Asset actions" tabindex="-1"><!> <button class="danger svelte-109nkvw" role="menuitem"> </button></div>`);function Nt(t,n){x(n,!0);let r=_(()=>Math.max(8,Math.min(n.x,window.innerWidth-176))),a=_(()=>n.onRename?2:1),o=_(()=>Math.max(8,Math.min(n.y,window.innerHeight-(f(a)*32+8))));function s(e){e(),n.onClose()}var d=Mt();u(`click`,h,function(...e){n.onClose?.apply(this,e)}),u(`blur`,h,function(...e){n.onClose?.apply(this,e)}),u(`keydown`,h,e=>e.key===`Escape`&&n.onClose()),u(`resize`,h,function(...e){n.onClose?.apply(this,e)}),u(`scroll`,h,function(...e){n.onClose?.apply(this,e)});let p;var v=g(d),y=e=>{var t=jt();l(`click`,t,()=>s(n.onRename)),i(e,t)};D(v,e=>{n.onRename&&e(y)});var b=c(v,2),S=g(b,!0);T(b),T(d),O(()=>{p=C(d,``,p,{left:`${f(r)}px`,top:`${f(o)}px`}),m(S,n.assetCount===1?`Delete Asset`:`Delete ${n.assetCount} Assets`)}),l(`contextmenu`,d,e=>e.preventDefault()),l(`click`,b,()=>s(n.onDelete)),i(t,d),e()}te([`contextmenu`,`click`]);var Pt=d(`<span class="emoji svelte-1b4m5oj"> </span>`),Ft=d(`<span><!> <span class="name svelte-1b4m5oj"> </span></span>`);function It(t,n){x(n,!0);let r=w(n,`variant`,3,`chip`),a=w(n,`passive`,3,!1),o=w(n,`via`,19,()=>[]),s=_(()=>k.manifestAppearance(n.name)),l=_(()=>f(s).color??`var(--accent)`),u=_(()=>a()?`${n.name} — passive member${o().length>0?`, via ${o().join(`, `)}`:``}`:n.name);var d=Ft();let p;var h=g(d),v=e=>{var t=Pt(),n=g(t,!0);T(t),O(()=>m(n,f(s).emoji)),i(e,t)};D(h,e=>{f(s).emoji&&e(v)});var y=c(h,2),b=g(y,!0);T(y),T(d),O(()=>{p=ee(d,1,`manifest-label ${r()??``}`,`svelte-1b4m5oj`,p,{passive:a()}),C(d,`--manifest-color: ${f(l)??``}`),E(d,`title`,f(u)),m(b,n.name)}),i(t,d),e()}var Lt=d(`<span class="selection-summary svelte-1uha8ag"> </span> <button class="control">Select all shown</button> <button class="control">Clear</button>`,1),Rt=d(`<button class="control">Select All</button>`),zt=d(`<option> </option>`),Bt=d(`<div class="empty svelte-1uha8ag">Loading library…</div>`),Vt=d(`<div class="empty svelte-1uha8ag"> </div>`),Ht=d(`<button draggable="true"><span class="folder-card-icon svelte-1uha8ag"><!></span> <span class="folder-card-details svelte-1uha8ag"><strong class="svelte-1uha8ag"> </strong> <span class="svelte-1uha8ag"> </span></span> <span class="folder-card-arrow svelte-1uha8ag">›</span></button>`),Ut=d(`<section class="section folder-section svelte-1uha8ag"><!> <div class="folder-grid svelte-1uha8ag"></div></section>`),Wt=d(`<span class="section-emoji svelte-1uha8ag"> </span>`),Gt=d(`<!> `,1),Kt=d(`<span class="badge warning svelte-1uha8ag">⚠</span>`),qt=d(`<a draggable="true"><input class="asset-select svelte-1uha8ag" type="checkbox"/> <div class="thumbnail checkerboard svelte-1uha8ag"><!></div> <div class="meta svelte-1uha8ag"><span class="id svelte-1uha8ag"> </span> <span class="type-badge svelte-1uha8ag"> </span></div> <div class="badges svelte-1uha8ag"><!> <!> <!></div></a>`),Jt=d(`<section class="section svelte-1uha8ag"><!> <div class="grid svelte-1uha8ag"></div></section>`),Yt=d(`<!> <!>`,1),Xt=d(`<div class="drop-hint svelte-1uha8ag"> </div>`),Zt=d(`<p class="dialog-warning svelte-1uha8ag"> </p>`),Qt=d(`<p class="dialog-warning svelte-1uha8ag">An asset with this ID already exists.</p>`),$t=d(`<label class="dialog-row svelte-1uha8ag"><span class="svelte-1uha8ag">ID</span> <input class="control svelte-1uha8ag" spellcheck="false"/></label> <!> <!> <!> <!>`,1),en=d(`<p class="dialog-text svelte-1uha8ag"> </p> <!> <!>`,1),tn=d(`<div class="library-view svelte-1uha8ag"><!> <div role="application" aria-label="Asset library — drop a file anywhere to import it"><div class="selection-bar svelte-1uha8ag"><!> <button class="control import svelte-1uha8ag">Import file</button> <input type="file" hidden=""/></div> <div class="filter-bar svelte-1uha8ag"><select class="control" aria-label="Sort"><option>Sort alphabetically</option><option>Sort by type</option><option>Sort by manifest</option></select> <select class="control" aria-label="Filter by type"><option>All types</option><!></select> <select class="control" aria-label="Filter by manifest"><option>All manifests</option><!></select> <div class="control search svelte-1uha8ag"><svg class="search-icon svelte-1uha8ag" viewBox="0 0 16 16" aria-hidden="true"><circle cx="7" cy="7" r="4.5"></circle><path d="m10.5 10.5 3 3"></path></svg> <input class="search-input svelte-1uha8ag" type="search" placeholder="Search assets and folders…" aria-label="Search assets and folders" spellcheck="false"/> <kbd class="svelte-1uha8ag"> </kbd></div> <label class="toggle svelte-1uha8ag"><input type="checkbox"/> Warnings only</label></div> <!> <!></div></div> <!> <!> <!> <!> <!>`,1);function nn(d,C){x(C,!0);let w=`fundus.gallery.sort`,te=`fundus.gallery.folder`;function A(){try{let e=localStorage.getItem(w);if(e===`type`||e===`manifest`||e===`alphabetical`)return e}catch{}return`alphabetical`}let j=v(re(A()));function ke(){try{let e=localStorage.getItem(te);return e===null||e===`__all__`?null:e}catch{return null}}let M=v(re(ke())),N=v(`all`),Ae=v(`all`),P=v(``),je=v(!1),F=v(!1),I=v(null),Me=v(``),L=v(null),R=v(null),z=v(null),B=v(``),Ne=v(void 0),V=v(re([])),H=v(null),U=v(null),W=v(!1),G=v(null),Pe=v(null),Fe=0,Ie=v(null),Le=0,Re=v(null),ze=0,K=v(re([])),q=v(null),Be=v(void 0),J=v(void 0),Ve=Ee().join(`,`),He=/Mac|iPhone|iPad/.test(navigator.platform)?`⌘K`:`Ctrl K`;n(()=>{try{localStorage.setItem(w,f(j))}catch{}}),n(()=>{try{localStorage.setItem(te,f(M)??`__all__`)}catch{}});let Y=_(()=>k.state?.assets??[]),Ue=_(()=>f(z)!==null&&f(B)!==f(z)?Oe(f(B)):null),We=_(()=>f(z)!==null&&f(Y).some(e=>e.id!==f(z)&&e.id===f(B))),Ge=_(()=>f(z)!==null&&f(B)!==f(z)&&f(Ue)===null&&!f(We)&&!f(W)),Ke=_(()=>f(z)===null?[]:(f(Y).find(e=>e.id===f(z))?.references.incoming??[]).map(e=>`${e.assetId}.${e.field} → ${f(z)}`)),qe=_(()=>new Set(f(V))),X=_(()=>f(V).flatMap(e=>(f(Y).find(t=>t.id===e)?.references.incoming??[]).filter(e=>!f(qe).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e}`))),Je=_(()=>k.state?.library.folders??[]),Ye=_(()=>k.manifestNames),Xe=_(()=>[...new Set(f(Y).map(e=>e.type))].sort()),Z=_(()=>f(P).trim()),Ze=_(()=>new At(f(Y),{keys:[{name:`id`,weight:.5},{name:`raw`,weight:.2},{name:`folder`,weight:.1},{name:`manifests`,weight:.08},{name:`passiveManifests.manifest`,weight:.07},{name:`type`,weight:.05}],threshold:.35,ignoreLocation:!0,ignoreDiacritics:!0})),Qe=_(()=>f(Z)===``?null:new Set(f(Ze).search(f(Z)).map(({item:e})=>e.id))),$e=_(()=>f(Je).map(e=>({path:e,name:ye(e)}))),et=_(()=>new At(f($e),{keys:[{name:`name`,weight:.7},{name:`path`,weight:.3}],threshold:.35,ignoreLocation:!0,ignoreDiacritics:!0})),tt=_(()=>f(Z)===``?null:new Set(f(et).search(f(Z)).map(({item:e})=>e.path))),nt=_(()=>f(M)===null?[]:f(Je).filter(e=>_e(e)===f(M)).sort((e,t)=>e.localeCompare(t))),rt=_(()=>f(tt)===null?f(nt):f(nt).filter(e=>f(tt).has(e)));n(()=>{k.state&&f(M)!==null&&f(M)!==``&&!f(Je).includes(f(M))&&s(M,null)});let it=_(()=>f(Y).filter(e=>!(f(M)!==null&&e.folder!==f(M)||f(Qe)!==null&&!f(Qe).has(e.id)||f(N)!==`all`&&e.type!==f(N)||f(Ae)!==`all`&&!e.manifests.includes(f(Ae))&&!e.passiveManifests.some(e=>e.manifest===f(Ae))||f(je)&&e.warnings.length===0))),at=(e,t)=>e.id.localeCompare(t.id),ot=_(()=>{let e=[...f(it)].sort(at);if(f(j)===`alphabetical`)return[{key:`all`,heading:null,assets:e}];if(f(j)===`type`)return[...new Set(e.map(e=>e.type))].sort().map(t=>({key:t,heading:t,assets:e.filter(e=>e.type===t)}));let t=[];for(let n of f(Ye)){let r=e.filter(e=>e.manifests.includes(n)||e.passiveManifests.some(e=>e.manifest===n));r.length>0&&t.push({key:n,heading:n,emoji:k.manifestAppearance(n).emoji,assets:r})}let n=e.filter(e=>e.manifests.length===0&&e.passiveManifests.length===0);return n.length>0&&t.push({key:`__no-manifest__`,heading:`No manifest`,assets:n}),t}),Q=_(()=>[...new Set(f(ot).flatMap(e=>e.assets.map(e=>e.id)))]);n(()=>{let e=new Set(f(Y).map(e=>e.id)),t=f(K).filter(t=>e.has(t));t.length!==f(K).length&&s(K,t,!0)});function st(e){s(M,e,!0),s(K,[],!0),s(q,null)}function ct(e,t){if(t&&f(q)!==null){let t=f(Q).indexOf(f(q)),n=f(Q).indexOf(e);if(t!==-1&&n!==-1){let r=Math.min(t,n),i=Math.max(t,n);s(K,[...new Set([...f(K),...f(Q).slice(r,i+1)])],!0),s(q,e,!0);return}}s(K,f(K).includes(e)?f(K).filter(t=>t!==e):[...f(K),e],!0),s(q,e,!0)}function lt(){s(K,[...f(Q)],!0),s(q,f(Q).at(-1)??null,!0)}function ut(e,t){if(!e.dataTransfer||t.length<2)return;let n=[...document.querySelectorAll(`.card[data-asset-id]`)],r=t.map(e=>n.find(t=>t.dataset.assetId===e)).filter(e=>e!==void 0);if(r.length<2)return;let i=document.createElement(`div`),a=44/(r.length-1),o=Math.min(r[0].offsetWidth,180),s=r[0].offsetHeight;Object.assign(i.style,{position:`fixed`,left:`-10000px`,top:`-10000px`,width:`${o+44}px`,height:`${s+44}px`,pointerEvents:`none`});for(let[e,t]of r.entries()){let n=t.cloneNode(!0);n.querySelector(`.asset-select`)?.remove(),n.removeAttribute(`href`),n.setAttribute(`aria-hidden`,`true`),Object.assign(n.style,{position:`absolute`,left:`${e*a}px`,top:`${e*a}px`,width:`${o}px`,height:`${s}px`,boxSizing:`border-box`,opacity:`1`}),i.append(n)}let c=document.createElement(`span`);c.textContent=String(t.length),Object.assign(c.style,{position:`absolute`,right:`0`,top:`0`,minWidth:`28px`,height:`28px`,padding:`0 7px`,boxSizing:`border-box`,borderRadius:`14px`,background:`var(--accent)`,color:`var(--text)`,font:`600 13px/28px system-ui, sans-serif`,textAlign:`center`,boxShadow:`0 2px 8px rgba(0, 0, 0, 0.35)`}),i.append(c),document.body.append(i),e.dataTransfer.setDragImage(i,24,24),requestAnimationFrame(()=>i.remove())}function dt(e){e.preventDefault(),s(F,!1);let t=e.dataTransfer?.files?.[0];t&&(s(Me,f(M)??``,!0),s(I,t,!0))}function ft(e){s(Me,e,!0),f(Be)?.click()}function pt(e){Fe+=1,s(Pe,{id:Fe,parent:e},!0)}function mt(e){Le+=1,s(Ie,{id:Le,path:e},!0)}function ht(e){ze+=1,s(Re,{id:ze,path:e},!0)}function gt(e){e.preventDefault(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:f(M)??``,renamePath:null},!0)}function _t(e,t){e.preventDefault(),e.stopPropagation(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:t,renamePath:t},!0)}function vt(e,t){e.preventDefault(),e.stopPropagation(),s(L,null);let n=f(K).includes(t)?[...f(K)]:[t];f(K).includes(t)||(s(K,[t],!0),s(q,t,!0)),s(R,{x:e.clientX,y:e.clientY,assetIds:n},!0)}function yt(e){s(z,e,!0),s(B,e,!0),s(G,null),o().then(()=>{f(Ne)?.focus(),f(Ne)?.select()})}function bt(e){s(V,[...new Set(e)],!0),s(G,null)}function xt(){f(W)||(s(z,null),s(V,[],!0),s(G,null))}async function St(){if(!f(Ge)||f(z)===null)return;let e=f(z),t=f(B);s(W,!0),s(G,null);try{await k.mutate(()=>pe(e,{renameTo:t})),s(K,f(K).map(n=>n===e?t:n),!0),s(q,f(q)===e?t:f(q),!0),s(z,null)}catch(e){s(G,e instanceof Error?e.message:String(e),!0)}finally{s(W,!1)}}async function Ct(){if(f(V).length===0)return;let e=[...f(V)];s(W,!0),s(G,null);try{await k.mutate(()=>ue(e));let t=new Set(e);s(K,f(K).filter(e=>!t.has(e)),!0),f(q)!==null&&t.has(f(q))&&s(q,null),s(V,[],!0)}catch(e){s(G,e instanceof Error?e.message:String(e),!0)}finally{s(W,!1)}}function wt(e){return f(Y).filter(t=>t.folder===e).length}function Tt(e){let t=e.currentTarget,n=t.files?.[0];t.value=``,n&&s(I,n,!0)}async function Et(e){s(I,null),await le(ce(`/asset/[id]`,{id:e}))}async function Dt(e,t){let n=e.filter(e=>k.assetById(e)?.folder!==t);if(n.length!==0)try{await k.mutate(()=>de(n,t)),s(K,[],!0),s(q,null)}catch{}}function Ot(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=ve(e.dataTransfer?.types.includes(`application/x-fundus-folder`)??!1,f(H),t);!n&&!r||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),s(U,t,!0))}function kt(e,t){e.preventDefault(),s(U,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`)&&Dt(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`);r&&me(r,t)&&$(r,t)}async function $(e,t){let n=ge(t,ye(e));try{await k.mutate(()=>fe(e,t)),f(M)!==null&&Te(f(M),e)&&st(`${n}${f(M).slice(e.length)}`)}catch{}finally{s(H,null),s(U,null)}}function jt(e){e&&e.play().catch(()=>{})}function Mt(e){e&&(e.pause(),e.currentTime=0)}function Pt(e){e.defaultPrevented||e.altKey||e.shiftKey||!e.metaKey&&!e.ctrlKey||e.key.toLowerCase()!==`k`||document.querySelector(`[role="dialog"]`)!==null||(e.preventDefault(),f(J)?.focus(),f(J)?.select())}var Ft=tn();u(`keydown`,h,Pt),u(`dragenter`,h,e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),s(F,!0))}),u(`dragover`,h,e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),s(F,!0))}),u(`drop`,h,dt);var nn=a(Ft),rn=g(nn);be(rn,{get selectedFolder(){return f(M)},get createRequest(){return f(Pe)},get renameRequest(){return f(Ie)},get deleteRequest(){return f(Re)},onSelect:st,onMoveAssets:(e,t)=>void Dt(e,t),get sharedDraggedFolder(){return f(H)},onFolderDragStart:e=>s(H,e,!0),onFolderDragEnd:()=>s(H,null),onContextMenu:(e,t,n,r)=>{s(R,null),s(L,{x:e,y:t,parent:n,renamePath:r},!0)}});var an=c(rn,2);let on;var sn=g(an),cn=g(sn),ln=e=>{var t=Lt(),n=a(t),r=g(n);T(n);var o=c(n,2),u=c(o,2);O(()=>m(r,`${f(K).length??``} selected`)),l(`click`,o,lt),l(`click`,u,()=>{s(K,[],!0),s(q,null)}),i(e,t)},un=e=>{var t=Rt();O(()=>t.disabled=f(Q).length===0),l(`click`,t,lt),i(e,t)};D(cn,e=>{f(K).length>0?e(ln):e(un,-1)});var dn=c(cn,2),fn=c(dn,2);y(fn,e=>s(Be,e),()=>f(Be)),T(sn);var pn=c(sn,2),mn=g(pn),hn=g(mn);hn.value=hn.__value=`alphabetical`;var gn=c(hn);gn.value=gn.__value=`type`;var _n=c(gn);_n.value=_n.__value=`manifest`,T(mn);var vn=c(mn,2),yn=g(vn);yn.value=yn.__value=`all`,p(c(yn),16,()=>f(Xe),e=>e,(e,t)=>{var n=zt(),r=g(n,!0);T(n);var a={};O(()=>{m(r,t),a!==(a=t)&&(n.value=(n.__value=t)??``)}),i(e,n)}),T(vn);var bn=c(vn,2),xn=g(bn);xn.value=xn.__value=`all`,p(c(xn),16,()=>f(Ye),e=>e,(e,t)=>{let n=_(()=>k.manifestAppearance(t).emoji);var r=zt(),a=g(r,!0);T(r);var o={};O(()=>{m(a,f(n)?`${f(n)} ${t}`:t),o!==(o=t)&&(r.value=(r.__value=t)??``)}),i(e,r)}),T(bn);var Sn=c(bn,2),Cn=c(g(Sn),2);b(Cn),y(Cn,e=>s(J,e),()=>f(J));var wn=c(Cn,2),Tn=g(wn,!0);T(wn),T(Sn);var En=c(Sn,2),Dn=g(En);b(Dn),ie(),T(En),T(pn);var On=c(pn,2),kn=e=>{i(e,Bt())},An=e=>{var t=Vt(),n=g(t,!0);T(t),O(()=>m(n,f(Y).length===0?`No assets yet — drop an image anywhere to import it.`:`Nothing matches the current filters.`)),i(e,t)},jn=e=>{var n=Yt(),o=a(n),d=e=>{var n=Ut(),r=g(n);he(r,{children:(e,n)=>{ie(),i(e,t(`Folders`))},$$slots:{default:!0}});var a=c(r,2);p(a,20,()=>f(rt),e=>e,(e,t)=>{var n=Ht();let r;var a=g(n);Se(g(a),{size:18}),T(a);var o=c(a,2),d=g(o),p=g(d,!0);T(d);var h=c(d,2),_=g(h);T(h),T(o),ie(2),T(n),O((e,i)=>{r=ee(n,1,`folder-card svelte-1uha8ag`,null,r,{"drop-target":f(U)===t,"dragging-folder":f(H)===t}),m(p,e),m(_,`${i??``} assets`)},[()=>ye(t),()=>wt(t)]),l(`click`,n,()=>st(t)),l(`contextmenu`,n,e=>_t(e,t)),u(`dragstart`,n,e=>{s(H,t,!0),e.dataTransfer?.setData(`application/x-fundus-folder`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),u(`dragend`,n,()=>{s(H,null),s(U,null)}),u(`dragover`,n,e=>Ot(e,t)),u(`dragleave`,n,()=>s(U,null)),u(`drop`,n,e=>kt(e,t)),i(e,n)}),T(a),T(n),i(e,n)};D(o,e=>{f(rt).length>0&&e(d)});var h=c(o,2),v=e=>{var t=r();p(a(t),17,()=>f(ot),e=>e.key,(e,t)=>{var n=Jt(),o=g(n),s=e=>{he(e,{children:(e,n)=>{var r=Gt(),o=a(r),s=e=>{var n=Wt(),r=g(n,!0);T(n),O(()=>m(r,f(t).emoji)),i(e,n)};D(o,e=>{f(t).emoji&&e(s)});var l=c(o,1,!0);O(()=>m(l,f(t).heading)),i(e,r)},$$slots:{default:!0}})};D(o,e=>{f(t).heading&&e(s)});var d=c(o,2);p(d,21,()=>f(t).assets,e=>e.id,(e,t)=>{let n=_(()=>Ce[f(t).type]?.thumbnail);var o=qt();let s;var d=g(o);b(d);var h=c(d,2),v=g(h),y=e=>{var o=r();se(a(o),()=>f(n),(e,n)=>{n(e,{get asset(){return f(t)}})}),i(e,o)};D(v,e=>{f(n)&&e(y)}),T(h);var x=c(h,2),S=g(x),C=g(S,!0);T(S);var w=c(S,2),te=g(w,!0);T(w),T(x);var ne=c(x,2),re=g(ne);p(re,16,()=>f(t).manifests,e=>e,(e,t)=>{It(e,{get name(){return t}})});var ie=c(re,2);p(ie,17,()=>f(t).passiveManifests,e=>e.manifest,(e,t)=>{It(e,{get name(){return f(t).manifest},passive:!0,get via(){return f(t).via}})}),p(c(ie,2),16,()=>f(t).warnings,e=>e,(e,t)=>{var n=Kt();O(()=>E(n,`title`,t)),i(e,n)}),T(ne),T(o),O((e,n,r)=>{s=ee(o,1,`card svelte-1uha8ag`,null,s,e),E(o,`data-asset-id`,f(t).id),E(o,`href`,n),oe(d,r),E(d,`aria-label`,`Select ${f(t).id}`),m(C,f(t).id),m(te,f(t).type)},[()=>({selected:f(K).includes(f(t).id)}),()=>ce(`/asset/[id]`,{id:f(t).id}),()=>f(K).includes(f(t).id)]),l(`contextmenu`,o,e=>vt(e,f(t).id)),l(`click`,o,e=>{(f(K).length>0||e.metaKey||e.ctrlKey||e.shiftKey)&&(e.preventDefault(),ct(f(t).id,e.shiftKey))}),u(`dragstart`,o,e=>{let n=f(K).includes(f(t).id)?f(K):[f(t).id];e.dataTransfer?.setData(`application/x-fundus-assets`,JSON.stringify(n)),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`),ut(e,n)}),u(`focus`,o,e=>jt(e.currentTarget.querySelector(`video`))),u(`blur`,o,e=>Mt(e.currentTarget.querySelector(`video`))),l(`click`,d,e=>{e.stopPropagation(),ct(f(t).id,e.shiftKey)}),i(e,o)}),T(d),T(n),i(e,n)}),i(e,t)};D(h,e=>{f(it).length>0&&e(v)}),i(e,n)};D(On,e=>{k.state?f(it).length===0&&f(rt).length===0?e(An,1):e(jn,-1):e(kn)});var Mn=c(On,2),Nn=e=>{var t=Xt(),n=g(t);T(t),O(()=>m(n,`Drop to import into ${(f(M)||`Root`)??``}`)),i(e,t)};D(Mn,e=>{f(F)&&e(Nn)}),T(an),T(nn);var Pn=c(nn,2),Fn=e=>{{let t=_(()=>f(L).renamePath===null?void 0:()=>mt(f(L)?.renamePath??``)),n=_(()=>f(L).renamePath===null?void 0:()=>ht(f(L)?.renamePath??``));we(e,{get x(){return f(L).x},get y(){return f(L).y},onNewDirectory:()=>pt(f(L)?.parent??``),get onRenameDirectory(){return f(t)},onImportFile:()=>ft(f(L)?.parent??``),get onDeleteDirectory(){return f(n)},onClose:()=>s(L,null)})}};D(Pn,e=>{f(L)&&e(Fn)});var In=c(Pn,2),Ln=e=>{{let t=_(()=>f(R).assetIds.length===1?()=>yt(f(R)?.assetIds[0]??``):void 0);Nt(e,{get x(){return f(R).x},get y(){return f(R).y},get assetCount(){return f(R).assetIds.length},get onRename(){return f(t)},onDelete:()=>bt(f(R)?.assetIds??[]),onClose:()=>s(R,null)})}};D(In,e=>{f(R)&&e(Ln)});var Rn=c(In,2),zn=e=>{{let t=_(()=>f(W)?`Renaming…`:`Rename`),n=_(()=>!f(Ge));De(e,{title:`Rename asset`,get confirmLabel(){return f(t)},get confirmDisabled(){return f(n)},get busy(){return f(W)},onConfirm:()=>void St(),onCancel:xt,children:(e,t)=>{var n=$t(),r=a(n),o=c(g(r),2);b(o),y(o,e=>s(Ne,e),()=>f(Ne)),T(r);var u=c(r,2),d=e=>{var t=Zt(),n=g(t,!0);T(t),O(()=>m(n,f(Ue))),i(e,t)};D(u,e=>{f(Ue)&&e(d)});var p=c(u,2),h=e=>{i(e,Qt())};D(p,e=>{f(We)&&e(h)});var _=c(p,2),v=e=>{var t=Zt(),n=g(t);T(t),O(e=>m(n,`Renaming leaves ${f(Ke).length??``} reference(s) pointing to the old ID:
1
+ import{$ as e,A as t,B as n,D as r,E as i,G as a,I as o,J as s,K as c,M as l,N as u,O as d,P as f,S as p,T as m,U as h,W as g,X as _,Y as v,a as y,c as b,et as x,f as S,g as ee,h as C,i as w,it as T,j as te,l as E,o as ne,q as re,rt as ie,s as ae,u as oe,w as D,y as se,z as O}from"../chunks/CNRz3sSw.js";import{c as ce,t as le}from"../chunks/DVEDrSOn.js";import"../chunks/xihTtKlq.js";import{a as ue,c as de,l as fe,t as k,u as pe}from"../chunks/cznBUb-E.js";import{a as me,c as he,d as ge,f as _e,i as ve,l as ye,n as be,o as xe,r as Se,s as Ce,t as we,u as Te}from"../chunks/BA62n9FX.js";import{a as Ee,t as De,y as Oe}from"../chunks/CQsKwm8E.js";function A(e){return Array.isArray?Array.isArray(e):Me(e)===`[object Array]`}function j(e){if(typeof e==`string`)return e;if(typeof e==`bigint`)return e.toString();let t=e+``;return t==`0`&&1/e==-1/0?`-0`:t}function ke(e){return e==null?``:j(e)}function M(e){return typeof e==`string`}function N(e){return typeof e==`number`}function Ae(e){return e===!0||e===!1||je(e)&&Me(e)==`[object Boolean]`}function P(e){return typeof e==`object`}function je(e){return P(e)&&e!==null}function F(e){return e!=null}function I(e){return!e.trim().length}function Me(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var L=`Incorrect 'index' type`,R=`Invalid doc index: must be a non-negative integer within the bounds of the docs array`,z=e=>`Invalid value for key ${e}`,B=e=>`Pattern length exceeds max of ${e}.`,Ne=e=>`Missing ${e} property in key`,V=e=>`Property 'weight' in key '${e}' must be a positive integer`,H=`Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.`,U=Object.prototype.hasOwnProperty,W=class{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach(e=>{let n=G(e);this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight}),this._keys.forEach(e=>{e.weight/=t})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function G(e){let t=null,n=null,r=null,i=1,a=null;if(M(e)||A(e))r=e,t=Pe(e),n=Fe(e);else{if(!U.call(e,`name`))throw Error(Ne(`name`));let o=e.name;if(r=o,U.call(e,`weight`)&&e.weight!==void 0&&(i=e.weight,i<=0))throw Error(V(Fe(o)));t=Pe(o),n=Fe(o),a=e.getFn??null}return{path:t,id:n,weight:i,src:r,getFn:a}}function Pe(e){return A(e)?e:e.split(`.`)}function Fe(e){return A(e)?e.join(`.`):e}function Ie(e,t){let n=[],r=!1,i=(e,t,a,o)=>{if(F(e))if(!t[a])n.push(o===void 0?e:{v:e,i:o});else{let s=e[t[a]];if(!F(s))return;if(a===t.length-1&&(M(s)||N(s)||Ae(s)||typeof s==`bigint`))n.push(o===void 0?ke(s):{v:ke(s),i:o});else if(A(s)){r=!0;for(let e=0,n=s.length;e<n;e+=1)i(s[e],t,a+1,e)}else t.length&&i(s,t,a+1,o)}};return i(e,M(t)?t.split(`.`):t,0),r?n:n[0]}var Le={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},Re={isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1},ze={location:0,threshold:.6,distance:100},K={useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:`any`,getFn:Ie,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},q=Object.freeze({...Re,...Le,...ze,...K});function Be(e=1,t=3){let n=new Map,r=10**t;return{get(t){let i=1,a=!1;for(let e=0;e<t.length;e++)t.charCodeAt(e)===32?a||=(i++,!0):a=!1;if(n.has(i))return n.get(i);let o=Math.round(r/i**(.5*e))/r;return n.set(i,o),o},clear(){n.clear()}}}var J=class{constructor({getFn:e=q.getFn,fieldNormWeight:t=q.fieldNormWeight}={}){this.norm=Be(t,3),this.getFn=e,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(e=[]){this.docs=e}setIndexRecords(e=[]){this.records=e}setKeys(e=[]){this.keys=e,this._keysMap={},e.forEach((e,t)=>{this._keysMap[e.id]=t})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;let e=this.docs.length;this.records=Array(e);let t=0;if(M(this.docs[0]))for(let n=0;n<e;n++){let e=this._createStringRecord(this.docs[n],n);e&&(this.records[t++]=e)}else for(let n=0;n<e;n++)this.records[t++]=this._createObjectRecord(this.docs[n],n);this.records.length=t,this.norm.clear()}add(e,t){if(!Number.isInteger(t)||t<0)throw Error(R);if(M(e)){let n=this._createStringRecord(e,t);return n&&this.records.push(n),n}let n=this._createObjectRecord(e,t);return this.records.push(n),n}removeAt(e){if(!Number.isInteger(e)||e<0)throw Error(R);for(let t=0,n=this.records.length;t<n;t+=1)if(this.records[t].i===e){this.records.splice(t,1);break}for(let t=0,n=this.records.length;t<n;t+=1)this.records[t].i>e&&--this.records[t].i}removeAll(e){let t=new Set;for(let n of e)Number.isInteger(n)&&n>=0&&t.add(n);if(t.size===0)return;this.records=this.records.filter(e=>!t.has(e.i));let n=Array.from(t).sort((e,t)=>e-t);for(let e of this.records){let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i]<e.i?t=i+1:r=i}e.i-=t}}getValueForItemAtKeyId(e,t){return e[this._keysMap[t]]}size(){return this.records.length}_createStringRecord(e,t){return!F(e)||I(e)?null:{v:e,i:t,n:this.norm.get(e)}}_createObjectRecord(e,t){let n={i:t,$:{}};for(let t=0,r=this.keys.length;t<r;t++){let r=this.keys[t],i=r.getFn?r.getFn(e):this.getFn(e,r.path);if(F(i)){if(A(i)){let e=[];for(let t=0,n=i.length;t<n;t+=1){let n=i[t];if(F(n)){if(M(n)){if(!I(n)){let r={v:n,i:t,n:this.norm.get(n)};e.push(r)}}else if(F(n.v)){let t=M(n.v)?n.v:ke(n.v);if(!I(t)){let r={v:t,i:n.i,n:this.norm.get(t)};e.push(r)}}}}n.$[t]=e}else if(M(i)&&!I(i)){let e={v:i,n:this.norm.get(i)};n.$[t]=e}}}return n}toJSON(){return{keys:this.keys.map(({getFn:e,...t})=>t),records:this.records}}};function Ve(e,t,{getFn:n=q.getFn,fieldNormWeight:r=q.fieldNormWeight}={}){let i=new J({getFn:n,fieldNormWeight:r});return i.setKeys(e.map(G)),i.setSources(t),i.create(),i}function He(e,{getFn:t=q.getFn,fieldNormWeight:n=q.fieldNormWeight}={}){let{keys:r,records:i}=e,a=new J({getFn:t,fieldNormWeight:n});return a.setKeys(r),a.setIndexRecords(i),a}function Y(e=[],t=q.minMatchCharLength){let n=[],r=-1,i=-1,a=0;for(let o=e.length;a<o;a+=1){let o=e[a];o&&r===-1?r=a:!o&&r!==-1&&(i=a-1,i-r+1>=t&&n.push([r,i]),r=-1)}return e[a-1]&&a-r>=t&&n.push([r,a-1]),n}function Ue(e,t,n,{location:r=q.location,distance:i=q.distance,threshold:a=q.threshold,findAllMatches:o=q.findAllMatches,minMatchCharLength:s=q.minMatchCharLength,includeMatches:c=q.includeMatches,ignoreLocation:l=q.ignoreLocation}={}){if(t.length>32)throw Error(B(32));let u=t.length,d=e.length,f=Math.max(0,Math.min(r,d)),p=a,m=f,h=(e,t)=>{let n=e/u;if(l)return n;let r=Math.abs(f-t);return i?n+r/i:r?1:n},g=s>1||c,_=g?Array(d):[],v;for(;(v=e.indexOf(t,m))>-1;){let e=h(0,v);if(p=Math.min(e,p),m=v+u,g){let e=0;for(;e<u;)_[v+e]=1,e+=1}}m=-1;let y=[],b=1,x=0,S=u+d,ee=1<<u-1;for(let t=0;t<u;t+=1){let r=0,i=S;for(;r<i;)h(t,f+i)<=p?r=i:S=i,i=Math.floor((S-r)/2+r);S=i;let a=Math.max(1,f-i+1),s=o?d:Math.min(f+i,d)+u,c=Array(s+2);c[s+1]=(1<<t)-1;for(let r=s;r>=a;--r){let i=r-1,o=n[e[i]];if(c[r]=(c[r+1]<<1|1)&o,t&&(c[r]|=(y[r+1]|y[r])<<1|1|y[r+1]),c[r]&ee&&(b=h(t,i),b<=p)){if(p=b,m=i,x=t,m<=f)break;a=Math.max(1,2*f-m)}}if(h(t+1,f)>p)break;y=c}if(g&&m>=0){let t=Math.min(d-1,m+u-1+x);for(let r=m;r<=t;r+=1)n[e[r]]&&(_[r]=1)}let C={isMatch:m>=0,score:Math.max(.001,b)};if(g){let e=Y(_,s);e.length?c&&(C.indices=e):C.isMatch=!1}return C}function We(e){let t={};for(let n=0,r=e.length;n<r;n+=1){let i=e.charAt(n);t[i]=(t[i]||0)|1<<r-n-1}return t}function Ge(e){if(e.length<=1)return e;e.sort((e,t)=>e[0]-t[0]||e[1]-t[1]);let t=[e[0]];for(let n=1,r=e.length;n<r;n+=1){let r=t[t.length-1],i=e[n];i[0]<=r[1]+1?r[1]=Math.max(r[1],i[1]):t.push(i)}return t}var Ke={ł:`l`,Ł:`L`,đ:`d`,Đ:`D`,ø:`o`,Ø:`O`,ħ:`h`,Ħ:`H`,ŧ:`t`,Ŧ:`T`,ı:`i`,ß:`ss`},qe=RegExp(`[`+Object.keys(Ke).join(``)+`]`,`g`),X=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFD`).replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,``).replace(qe,e=>Ke[e]):e=>e,Je=class{constructor(e,{location:t=q.location,threshold:n=q.threshold,distance:r=q.distance,includeMatches:i=q.includeMatches,findAllMatches:a=q.findAllMatches,minMatchCharLength:o=q.minMatchCharLength,isCaseSensitive:s=q.isCaseSensitive,ignoreDiacritics:c=q.ignoreDiacritics,ignoreLocation:l=q.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:r,includeMatches:i,findAllMatches:a,minMatchCharLength:o,isCaseSensitive:s,ignoreDiacritics:c,ignoreLocation:l},e=s?e:e.toLowerCase(),e=c?X(e):e,this.pattern=e,this.chunks=[],!this.pattern.length)return;let u=(e,t)=>{this.chunks.push({pattern:e,alphabet:We(e),startIndex:t})},d=this.pattern.length;if(d>32){let e=0,t=d%32,n=d-t;for(;e<n;)u(this.pattern.substr(e,32),e),e+=32;if(t){let e=d-32;u(this.pattern.substr(e),e)}}else u(this.pattern,0)}searchIn(e){let{isCaseSensitive:t,ignoreDiacritics:n,includeMatches:r}=this.options;if(e=t?e:e.toLowerCase(),e=n?X(e):e,this.pattern===e){let t={isMatch:!0,score:0};return r&&(t.indices=[[0,e.length-1]]),t}let{location:i,distance:a,threshold:o,findAllMatches:s,minMatchCharLength:c,ignoreLocation:l}=this.options,u=[],d=0,f=!1;this.chunks.forEach(({pattern:t,alphabet:n,startIndex:p})=>{let{isMatch:m,score:h,indices:g}=Ue(e,t,n,{location:i+p,distance:a,threshold:o,findAllMatches:s,minMatchCharLength:c,includeMatches:r,ignoreLocation:l});m&&(f=!0),d+=h,m&&g&&u.push(...g)});let p={isMatch:f,score:f?d/this.chunks.length:1};return f&&r&&(p.indices=Ge(u)),p}},Ye=new Set([`fuzzy`,`include`]);function Xe(e){return e.startsWith(`inverse`)}var Z=[{type:`exact`,multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:e=>({type:`exact`,search(t){let n=t===e;return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`include`,multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:e=>({type:`include`,search(t){let n=0,r,i=[],a=e.length;for(;(r=t.indexOf(e,n))>-1;)n=r+a,i.push([r,n-1]);let o=!!i.length;return{isMatch:o,score:+!o,indices:i}}})},{type:`prefix-exact`,multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:e=>({type:`prefix-exact`,search(t){let n=t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,e.length-1]}}})},{type:`inverse-prefix-exact`,multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:e=>({type:`inverse-prefix-exact`,search(t){let n=!t.startsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`inverse-suffix-exact`,multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:e=>({type:`inverse-suffix-exact`,search(t){let n=!t.endsWith(e);return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`suffix-exact`,multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:e=>({type:`suffix-exact`,search(t){let n=t.endsWith(e);return{isMatch:n,score:+!n,indices:[t.length-e.length,t.length-1]}}})},{type:`inverse-exact`,multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:e=>({type:`inverse-exact`,search(t){let n=t.indexOf(e)===-1;return{isMatch:n,score:+!n,indices:[0,t.length-1]}}})},{type:`fuzzy`,multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(e,t={})=>{let n=new Je(e,{location:t.location??q.location,threshold:t.threshold??q.threshold,distance:t.distance??q.distance,includeMatches:t.includeMatches??q.includeMatches,findAllMatches:t.findAllMatches??q.findAllMatches,minMatchCharLength:t.minMatchCharLength??q.minMatchCharLength,isCaseSensitive:t.isCaseSensitive??q.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics??q.ignoreDiacritics,ignoreLocation:t.ignoreLocation??q.ignoreLocation});return{type:`fuzzy`,search(e){return n.searchIn(e)}}}}],Ze=Z.length,Qe=`\0`,$e=`|`;function et(e){let t=[],n=e.length,r=0;for(;r<n;){for(;r<n&&e[r]===` `;)r++;if(r>=n)break;let i=r;for(;i<n&&e[i]!==` `&&e[i]!==`"`;)i++;if(i<n&&e[i]===`"`){for(i++;i<n;){if(e[i]===`"`){let t=i+1;if(t>=n||e[t]===` `){i++;break}if(e[t]===`$`&&(t+1>=n||e[t+1]===` `)){i+=2;break}}i++}t.push(e.substring(r,i)),r=i}else{for(;i<n&&e[i]!==` `;)i++;t.push(e.substring(r,i)),r=i}}return t}function tt(e,t){let n=e.match(t);return n?n[1]:null}function nt(e,t={}){return e.replace(/\\\|/g,Qe).split($e).map(e=>{let n=et(e.replace(/\u0000/g,`|`).trim()).filter(e=>e&&!!e.trim()),r=[];for(let e=0,i=n.length;e<i;e+=1){let i=n[e],a=!1,o=-1;for(;!a&&++o<Ze;){let e=Z[o],n=tt(i,e.multiRegex);n&&(r.push(e.create(n,t)),a=!0)}if(!a)for(o=-1;++o<Ze;){let e=Z[o],n=tt(i,e.singleRegex);if(n){r.push(e.create(n,t));break}}}return r})}var rt=class{constructor(e,{isCaseSensitive:t=q.isCaseSensitive,ignoreDiacritics:n=q.ignoreDiacritics,includeMatches:r=q.includeMatches,minMatchCharLength:i=q.minMatchCharLength,ignoreLocation:a=q.ignoreLocation,findAllMatches:o=q.findAllMatches,location:s=q.location,threshold:c=q.threshold,distance:l=q.distance}={}){this.query=null,this.options={isCaseSensitive:t,ignoreDiacritics:n,includeMatches:r,minMatchCharLength:i,findAllMatches:o,ignoreLocation:a,location:s,threshold:c,distance:l},e=t?e:e.toLowerCase(),e=n?X(e):e,this.pattern=e,this.query=nt(this.pattern,this.options)}static condition(e,t){return t.useExtendedSearch}searchIn(e){let t=this.query;if(!t)return{isMatch:!1,score:1};let{includeMatches:n,isCaseSensitive:r,ignoreDiacritics:i}=this.options;e=r?e:e.toLowerCase(),e=i?X(e):e;let a=0,o=[],s=0,c=!1;for(let r=0,i=t.length;r<i;r+=1){let i=t[r];o.length=0,a=0,c=!1;for(let t=0,r=i.length;t<r;t+=1){let r=i[t],{isMatch:l,indices:u,score:d}=r.search(e);if(l)a+=1,s+=d,Xe(r.type)&&(c=!0),n&&(Ye.has(r.type)?o.push(...u):o.push(u));else{s=0,a=0,o.length=0,c=!1;break}}if(a){let e={isMatch:!0,score:s/a};return c&&(e.hasInverse=!0),n&&(e.indices=Ge(o)),e}}return{isMatch:!1,score:1}}},it=[];function at(...e){it.push(...e)}function ot(e,t){for(let n=0,r=it.length;n<r;n+=1){let r=it[n];if(r.condition(e,t))return new r(e,t)}return new Je(e,t)}var Q={AND:`$and`,OR:`$or`},st={PATH:`$path`,PATTERN:`$val`},ct=e=>!!(e[Q.AND]||e[Q.OR]),lt=e=>!!e[st.PATH],ut=e=>!A(e)&&P(e)&&!ct(e),dt=e=>({[Q.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function ft(e,t,{auto:n=!0}={}){let r=e=>{if(M(e)){let r={keyId:null,pattern:e};return n&&(r.searcher=ot(e,t)),r}let i=Object.keys(e),a=lt(e);if(!a&&i.length>1&&!ct(e))return r(dt(e));if(ut(e)){let r=a?e[st.PATH]:i[0],o=a?e[st.PATTERN]:e[r];if(!M(o))throw Error(z(r));let s={keyId:Fe(r),pattern:o};return n&&(s.searcher=ot(o,t)),s}let o={children:[],operator:i[0]};return i.forEach(t=>{let n=e[t];A(n)&&n.forEach(e=>{o.children.push(r(e))})}),o};return ct(e)||(e=dt(e)),r(e)}function pt(e,{ignoreFieldNorm:t=q.ignoreFieldNorm}){let n=1;return e.forEach(({key:e,norm:r,score:i})=>{let a=e?e.weight:null;n*=(i===0&&a?2**-52:i)**+((a||1)*(t?1:r))}),n}function mt(e,{ignoreFieldNorm:t=q.ignoreFieldNorm}){e.forEach(e=>{e.score=pt(e.matches,{ignoreFieldNorm:t})})}var ht=class{constructor(e){this.limit=e,this.heap=[]}get size(){return this.heap.length}shouldInsert(e){return this.size<this.limit||e<this.heap[0].score}insert(e){this.size<this.limit?(this.heap.push(e),this._bubbleUp(this.size-1)):e.score<this.heap[0].score&&(this.heap[0]=e,this._sinkDown(0))}extractSorted(e){return this.heap.sort(e)}_bubbleUp(e){let t=this.heap;for(;e>0;){let n=e-1>>1;if(t[e].score<=t[n].score)break;let r=t[e];t[e]=t[n],t[n]=r,e=n}}_sinkDown(e){let t=this.heap,n=t.length,r=e;do{e=r;let i=2*e+1,a=2*e+2;if(i<n&&t[i].score>t[r].score&&(r=i),a<n&&t[a].score>t[r].score&&(r=a),r!==e){let n=t[e];t[e]=t[r],t[r]=n}}while(r!==e)}};function gt(e){let t=[];return e.matches.forEach(e=>{if(!F(e.indices)||!e.indices.length)return;let n={indices:e.indices,value:e.value};e.key&&(n.key=e.key.id),e.idx>-1&&(n.refIndex=e.idx),t.push(n)}),t}function _t(e,t,{includeMatches:n=q.includeMatches,includeScore:r=q.includeScore}={}){return e.map(e=>{let{idx:i}=e,a={item:t[i],refIndex:i};return n&&(a.matches=gt(e)),r&&(a.score=e.score),a})}var vt=/[\p{L}\p{M}\p{N}_]+/gu,yt=new WeakSet;function bt(e){yt.has(e)||(yt.add(e),console.warn(`[Fuse] tokenize regex ${e} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function xt(e){if(typeof e==`function`){let t=!1;return n=>{let r=e(n);if(!t&&(t=!0,!Array.isArray(r)||r.some(e=>typeof e!=`string`)))throw Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(r)?`array containing non-strings`:typeof r}.`);return r}}return e instanceof RegExp?(e.global||bt(e),t=>t.match(e)||[]):e=>e.match(vt)||[]}function St({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){let r=xt(n);return{tokenize(n){return e||(n=n.toLowerCase()),t&&(n=X(n)),r(n)}}}var Ct=class{static condition(e,t){return t.useTokenSearch}constructor(e,t){this.options=t,this.analyzer=St({isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,tokenize:t.tokenize});let n=this.analyzer.tokenize(e),{df:r,fieldCount:i}=t._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(let e of n){this.termSearchers.push(new Je(e,{location:t.location,threshold:t.threshold,distance:t.distance,includeMatches:t.includeMatches,findAllMatches:t.findAllMatches,minMatchCharLength:t.minMatchCharLength,isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,ignoreLocation:!0}));let n=r.get(e)||0,a=Math.log(1+(i-n+.5)/(n+.5));this.idfWeights.push(a)}this.combineAll=t.tokenMatch===`all`,this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(e){if(!this.termSearchers.length)return{isMatch:!1,score:1};let t=[],n=0,r=0,i=0,a=0,o=this.combineAll&&!this.useMask?new Set:null;for(let s=0;s<this.termSearchers.length;s++){let c=this.termSearchers[s].searchIn(e),l=this.idfWeights[s];r+=l,c.isMatch&&(i++,n+=l*(1-c.score),c.indices&&t.push(...c.indices),this.combineAll&&(this.useMask?a|=1<<s:o.add(s)))}if(i===0)return{isMatch:!1,score:1};let s=r>0?1-n/r:0,c={isMatch:!0,score:Math.max(.001,s)};return this.options.includeMatches&&t.length&&(c.indices=Ge(t)),this.combineAll&&(this.useMask?c.matchedMask=a:c.matchedTerms=o,c.termCount=this.numTerms),c}};function wt(e,t,n,r){let i=r.tokenize(t);if(!i.length)return;e.fieldCount++,e.docFieldCount.set(n,(e.docFieldCount.get(n)||0)+1);let a=new Set(i),o=e.docTermFieldHits.get(n);o||(o=new Map,e.docTermFieldHits.set(n,o));for(let t of a)o.set(t,(o.get(t)||0)+1),e.df.set(t,(e.df.get(t)||0)+1)}function Tt(e,t,n,r){let{i,v:a,$:o}=t;if(a!==void 0){wt(e,a,i,r);return}if(o)for(let t=0;t<n;t++){let n=o[t];if(n)if(Array.isArray(n))for(let t of n)wt(e,t.v,i,r);else wt(e,n.v,i,r)}}function Et(e,t,n){let r={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(let i of e)Tt(r,i,t,n);return r}function Dt(e,t,n,r){Tt(e,t,n,r)}function Ot(e,t){let n=e.docFieldCount.get(t);if(n===void 0)return;e.fieldCount-=n,e.docFieldCount.delete(t);let r=e.docTermFieldHits.get(t);if(r){for(let[t,n]of r){let r=(e.df.get(t)||0)-n;r<=0?e.df.delete(t):e.df.set(t,r)}e.docTermFieldHits.delete(t)}}function kt(e,t){if(t.length===0)return;let n=Array.from(new Set(t)).sort((e,t)=>e-t);for(let t of n)Ot(e,t);let r=e=>{let t=0,r=n.length;for(;t<r;){let i=t+r>>>1;n[i]<e?t=i+1:r=i}return e-t},i=n[0],a=new Map;for(let[t,n]of e.docFieldCount)a.set(t>i?r(t):t,n);e.docFieldCount=a;let o=new Map;for(let[t,n]of e.docTermFieldHits)o.set(t>i?r(t):t,n);e.docTermFieldHits=o}var $=class{constructor(e,t,n){this.options={...q,...t},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new W(this.options.keys),this._docs=e,this._myIndex=null,this._invertedIndex=null,this.setCollection(e,n),this._lastQuery=null,this._lastSearcher=null}_getSearcher(e){if(this._lastQuery===e)return this._lastSearcher;let t=ot(e,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=e,this._lastSearcher=t,t}setCollection(e,t){if(this._docs=e,t&&!(t instanceof J))throw Error(L);if(this._myIndex=t||Ve(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){let e=St({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=Et(this._myIndex.records,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}add(e){if(!F(e))return;this._docs.push(e);let t=this._myIndex.add(e,this._docs.length-1);if(this._invertedIndex&&t){let e=St({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});Dt(this._invertedIndex,t,this._myIndex.keys.length,e)}this._invalidateSearcherCache()}remove(e=()=>!1){let t=[],n=[];for(let r=0,i=this._docs.length;r<i;r+=1)e(this._docs[r],r)&&(t.push(this._docs[r]),n.push(r));if(n.length){this._invertedIndex&&kt(this._invertedIndex,n);let e=new Set(n);this._docs=this._docs.filter((t,n)=>!e.has(n)),this._myIndex.removeAll(n),this._invalidateSearcherCache()}return t}removeAt(e){if(!Number.isInteger(e)||e<0||e>=this._docs.length)throw Error(R);this._invertedIndex&&kt(this._invertedIndex,[e]);let t=this._docs.splice(e,1)[0];return this._myIndex.removeAt(e),this._invalidateSearcherCache(),t}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}search(e,t){let{limit:n=-1}=t||{},{includeMatches:r,includeScore:i,shouldSort:a,sortFn:o,ignoreFieldNorm:s}=this.options;if(M(e)&&!e.trim()){let e=this._docs.map((e,t)=>({item:e,refIndex:t}));return N(n)&&n>-1&&(e=e.slice(0,n)),e}let c=N(n)&&n>0&&M(e),l;if(c){let t=new ht(n);M(this._docs[0])?this._searchStringList(e,{heap:t,ignoreFieldNorm:s}):this._searchObjectList(e,{heap:t,ignoreFieldNorm:s}),l=t.extractSorted(o)}else l=M(e)?M(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e),mt(l,{ignoreFieldNorm:s}),a&&l.sort(o),N(n)&&n>-1&&(l=l.slice(0,n));return _t(l,this._docs,{includeMatches:r,includeScore:i})}_searchStringList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{records:a}=this._myIndex,o=t?null:[];return a.forEach(({v:e,i:a,n:s})=>{if(!F(e))return;let c=r.searchIn(e);if(c.isMatch){let r={score:c.score,value:e,norm:s,indices:c.indices};i&&(r.matchedMask=c.matchedMask,r.matchedTerms=c.matchedTerms,r.termCount=c.termCount);let l=[r];if(!i||this._coversAllTokens(l)){let r={item:e,idx:a,matches:l};t?(r.score=pt(r.matches,{ignoreFieldNorm:n}),t.shouldInsert(r.score)&&t.insert(r)):o.push(r)}}}),o}_searchLogical(e){let t=ft(e,this.options),n=(e,t,r)=>{if(!(`children`in e)){let{keyId:n,searcher:i}=e,a;return n===null?(a=[],this._myIndex.keys.forEach((e,n)=>{a.push(...this._findMatches({key:e,value:t[n],searcher:i}))})):a=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:i}),a&&a.length?[{idx:r,item:t,matches:a}]:[]}let{children:i,operator:a}=e,o=[];for(let e=0,s=i.length;e<s;e+=1){let s=i[e],c=n(s,t,r);if(c.length)o.push(...c);else if(a===Q.AND)return[]}return o},r=this._myIndex.records,i=new Map,a=[];return r.forEach(({$:e,i:r})=>{if(F(e)){let o=n(t,e,r);o.length&&(i.has(r)||(i.set(r,{idx:r,item:e,matches:[]}),a.push(i.get(r))),o.forEach(({matches:e})=>{i.get(r).matches.push(...e)}))}}),a}_searchObjectList(e,{heap:t,ignoreFieldNorm:n}={}){let r=this._getSearcher(e),i=this.options.useTokenSearch&&this.options.tokenMatch===`all`,{keys:a,records:o}=this._myIndex,s=t?null:[];return o.forEach(({$:e,i:o})=>{if(!F(e))return;let c=[],l=!1,u=!1;if(a.forEach((t,n)=>{let i=this._findMatches({key:t,value:e[n],searcher:r});i.length?(c.push(...i),i[0].hasInverse&&(u=!0)):l=!0}),!(u&&l)&&c.length&&(!i||this._coversAllTokens(c))){let r={idx:o,item:e,matches:c};t?(r.score=pt(r.matches,{ignoreFieldNorm:n}),t.shouldInsert(r.score)&&t.insert(r)):s.push(r)}}),s}_findMatches({key:e,value:t,searcher:n}){if(!F(t))return[];let r=[];if(A(t))t.forEach(({v:t,i,n:a})=>{if(!F(t))return;let o=n.searchIn(t);if(o.isMatch){let n={score:o.score,key:e,value:t,idx:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(n.matchedMask=o.matchedMask,n.matchedTerms=o.matchedTerms,n.termCount=o.termCount),r.push(n)}});else{let{v:i,n:a}=t,o=n.searchIn(i);if(o.isMatch){let t={score:o.score,key:e,value:i,norm:a,indices:o.indices,hasInverse:o.hasInverse};o.termCount!==void 0&&(t.matchedMask=o.matchedMask,t.matchedTerms=o.matchedTerms,t.termCount=o.termCount),r.push(t)}}return r}_coversAllTokens(e){let t=e.length?e[0].termCount:void 0;if(t===void 0)return!0;if(t<=31){let n=0;for(let t=0;t<e.length;t++)n|=e[t].matchedMask||0;return n===2**t-1}let n=new Set;for(let t=0;t<e.length;t++){let r=e[t].matchedTerms;if(r)for(let e of r)n.add(e)}return n.size===t}};$.version=`7.4.2`,$.createIndex=Ve,$.parseIndex=He,$.config=q,$.match=function(e,t,n){if(n&&n.useTokenSearch)throw Error(H);return ot(e,{...q,...n}).searchIn(t)},$.parseQuery=ft,at(rt),at(Ct),$.use=function(...e){e.forEach(e=>at(e))};var At=$,jt=d(`<button role="menuitem" class="svelte-109nkvw">Rename…</button>`),Mt=d(`<div class="context-menu svelte-109nkvw" role="menu" aria-label="Asset actions" tabindex="-1"><!> <button class="danger svelte-109nkvw" role="menuitem"> </button></div>`);function Nt(t,n){x(n,!0);let r=_(()=>Math.max(8,Math.min(n.x,window.innerWidth-176))),a=_(()=>n.onRename?2:1),o=_(()=>Math.max(8,Math.min(n.y,window.innerHeight-(f(a)*32+8))));function s(e){e(),n.onClose()}var d=Mt();u(`click`,h,function(...e){n.onClose?.apply(this,e)}),u(`blur`,h,function(...e){n.onClose?.apply(this,e)}),u(`keydown`,h,e=>e.key===`Escape`&&n.onClose()),u(`resize`,h,function(...e){n.onClose?.apply(this,e)}),u(`scroll`,h,function(...e){n.onClose?.apply(this,e)});let p;var v=g(d),y=e=>{var t=jt();l(`click`,t,()=>s(n.onRename)),i(e,t)};D(v,e=>{n.onRename&&e(y)});var b=c(v,2),S=g(b,!0);T(b),T(d),O(()=>{p=C(d,``,p,{left:`${f(r)}px`,top:`${f(o)}px`}),m(S,n.assetCount===1?`Delete Asset`:`Delete ${n.assetCount} Assets`)}),l(`contextmenu`,d,e=>e.preventDefault()),l(`click`,b,()=>s(n.onDelete)),i(t,d),e()}te([`contextmenu`,`click`]);var Pt=d(`<span class="emoji svelte-1b4m5oj"> </span>`),Ft=d(`<span><!> <span class="name svelte-1b4m5oj"> </span></span>`);function It(t,n){x(n,!0);let r=w(n,`variant`,3,`chip`),a=w(n,`passive`,3,!1),o=w(n,`via`,19,()=>[]),s=_(()=>k.manifestAppearance(n.name)),l=_(()=>f(s).color??`var(--accent)`),u=_(()=>a()?`${n.name} — passive member${o().length>0?`, via ${o().join(`, `)}`:``}`:n.name);var d=Ft();let p;var h=g(d),v=e=>{var t=Pt(),n=g(t,!0);T(t),O(()=>m(n,f(s).emoji)),i(e,t)};D(h,e=>{f(s).emoji&&e(v)});var y=c(h,2),b=g(y,!0);T(y),T(d),O(()=>{p=ee(d,1,`manifest-label ${r()??``}`,`svelte-1b4m5oj`,p,{passive:a()}),C(d,`--manifest-color: ${f(l)??``}`),E(d,`title`,f(u)),m(b,n.name)}),i(t,d),e()}var Lt=d(`<span class="selection-summary svelte-1uha8ag"> </span> <button class="control">Select all shown</button> <button class="control">Clear</button>`,1),Rt=d(`<button class="control">Select All</button>`),zt=d(`<option> </option>`),Bt=d(`<div class="empty svelte-1uha8ag">Loading library…</div>`),Vt=d(`<div class="empty svelte-1uha8ag"> </div>`),Ht=d(`<button draggable="true"><span class="folder-card-icon svelte-1uha8ag"><!></span> <span class="folder-card-details svelte-1uha8ag"><strong class="svelte-1uha8ag"> </strong> <span class="svelte-1uha8ag"> </span></span> <span class="folder-card-arrow svelte-1uha8ag">›</span></button>`),Ut=d(`<section class="section folder-section svelte-1uha8ag"><!> <div class="folder-grid svelte-1uha8ag"></div></section>`),Wt=d(`<span class="section-emoji svelte-1uha8ag"> </span>`),Gt=d(`<!> `,1),Kt=d(`<span class="badge warning svelte-1uha8ag">⚠</span>`),qt=d(`<a draggable="true"><input class="asset-select svelte-1uha8ag" type="checkbox"/> <div class="thumbnail checkerboard svelte-1uha8ag"><!></div> <div class="meta svelte-1uha8ag"><span class="id svelte-1uha8ag"> </span> <span class="type-badge svelte-1uha8ag"> </span></div> <div class="badges svelte-1uha8ag"><!> <!> <!></div></a>`),Jt=d(`<section class="section svelte-1uha8ag"><!> <div class="grid svelte-1uha8ag"></div></section>`),Yt=d(`<!> <!>`,1),Xt=d(`<div class="drop-hint svelte-1uha8ag"> </div>`),Zt=d(`<p class="dialog-warning svelte-1uha8ag"> </p>`),Qt=d(`<p class="dialog-warning svelte-1uha8ag">An asset with this ID already exists.</p>`),$t=d(`<label class="dialog-row svelte-1uha8ag"><span class="svelte-1uha8ag">ID</span> <input class="control svelte-1uha8ag" spellcheck="false"/></label> <!> <!> <!> <!>`,1),en=d(`<p class="dialog-text svelte-1uha8ag"> </p> <!> <!>`,1),tn=d(`<div class="library-view svelte-1uha8ag"><!> <div role="application" aria-label="Asset library — drop a file anywhere to import it"><div class="selection-bar svelte-1uha8ag"><!> <button class="control import svelte-1uha8ag">Import file</button> <input type="file" hidden=""/></div> <div class="filter-bar svelte-1uha8ag"><select class="control" aria-label="Sort"><option>Sort alphabetically</option><option>Sort by type</option><option>Sort by manifest</option></select> <select class="control" aria-label="Filter by type"><option>All types</option><!></select> <select class="control" aria-label="Filter by manifest"><option>All manifests</option><!></select> <div class="control search svelte-1uha8ag"><svg class="search-icon svelte-1uha8ag" viewBox="0 0 16 16" aria-hidden="true"><circle cx="7" cy="7" r="4.5"></circle><path d="m10.5 10.5 3 3"></path></svg> <input class="search-input svelte-1uha8ag" type="search" placeholder="Search assets and folders…" aria-label="Search assets and folders" spellcheck="false"/> <kbd class="svelte-1uha8ag"> </kbd></div> <label class="toggle svelte-1uha8ag"><input type="checkbox"/> Warnings only</label></div> <!> <!></div></div> <!> <!> <!> <!> <!>`,1);function nn(d,C){x(C,!0);let w=`fundus.gallery.sort`,te=`fundus.gallery.folder`;function A(){try{let e=localStorage.getItem(w);if(e===`type`||e===`manifest`||e===`alphabetical`)return e}catch{}return`alphabetical`}let j=v(re(A()));function ke(){try{let e=localStorage.getItem(te);return e===null||e===`__all__`?null:e}catch{return null}}let M=v(re(ke())),N=v(`all`),Ae=v(`all`),P=v(``),je=v(!1),F=v(!1),I=v(null),Me=v(``),L=v(null),R=v(null),z=v(null),B=v(``),Ne=v(void 0),V=v(re([])),H=v(null),U=v(null),W=v(!1),G=v(null),Pe=v(null),Fe=0,Ie=v(null),Le=0,Re=v(null),ze=0,K=v(re([])),q=v(null),Be=v(void 0),J=v(void 0),Ve=Ee().join(`,`),He=/Mac|iPhone|iPad/.test(navigator.platform)?`⌘K`:`Ctrl K`;n(()=>{try{localStorage.setItem(w,f(j))}catch{}}),n(()=>{try{localStorage.setItem(te,f(M)??`__all__`)}catch{}});let Y=_(()=>k.state?.assets??[]),Ue=_(()=>f(z)!==null&&f(B)!==f(z)?Oe(f(B)):null),We=_(()=>f(z)!==null&&f(Y).some(e=>e.id!==f(z)&&e.id===f(B))),Ge=_(()=>f(z)!==null&&f(B)!==f(z)&&f(Ue)===null&&!f(We)&&!f(W)),Ke=_(()=>f(z)===null?[]:(f(Y).find(e=>e.id===f(z))?.references.incoming??[]).map(e=>`${e.assetId}.${e.field} → ${f(z)}`)),qe=_(()=>new Set(f(V))),X=_(()=>f(V).flatMap(e=>(f(Y).find(t=>t.id===e)?.references.incoming??[]).filter(e=>!f(qe).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e}`))),Je=_(()=>k.state?.library.folders??[]),Ye=_(()=>k.manifestNames),Xe=_(()=>[...new Set(f(Y).map(e=>e.type))].sort()),Z=_(()=>f(P).trim()),Ze=_(()=>new At(f(Y),{keys:[{name:`id`,weight:.5},{name:`raw`,weight:.2},{name:`folder`,weight:.1},{name:`manifests`,weight:.08},{name:`passiveManifests.manifest`,weight:.07},{name:`type`,weight:.05}],threshold:.35,ignoreLocation:!0,ignoreDiacritics:!0})),Qe=_(()=>f(Z)===``?null:new Set(f(Ze).search(f(Z)).map(({item:e})=>e.id))),$e=_(()=>f(Je).map(e=>({path:e,name:ye(e)}))),et=_(()=>new At(f($e),{keys:[{name:`name`,weight:.7},{name:`path`,weight:.3}],threshold:.35,ignoreLocation:!0,ignoreDiacritics:!0})),tt=_(()=>f(Z)===``?null:new Set(f(et).search(f(Z)).map(({item:e})=>e.path))),nt=_(()=>f(M)===null?[]:f(Je).filter(e=>_e(e)===f(M)).sort((e,t)=>e.localeCompare(t))),rt=_(()=>f(tt)===null?f(nt):f(nt).filter(e=>f(tt).has(e)));n(()=>{k.state&&f(M)!==null&&f(M)!==``&&!f(Je).includes(f(M))&&s(M,null)});let it=_(()=>f(Y).filter(e=>!(f(M)!==null&&e.folder!==f(M)||f(Qe)!==null&&!f(Qe).has(e.id)||f(N)!==`all`&&e.type!==f(N)||f(Ae)!==`all`&&!e.manifests.includes(f(Ae))&&!e.passiveManifests.some(e=>e.manifest===f(Ae))||f(je)&&e.warnings.length===0))),at=(e,t)=>e.id.localeCompare(t.id),ot=_(()=>{let e=[...f(it)].sort(at);if(f(j)===`alphabetical`)return[{key:`all`,heading:null,assets:e}];if(f(j)===`type`)return[...new Set(e.map(e=>e.type))].sort().map(t=>({key:t,heading:t,assets:e.filter(e=>e.type===t)}));let t=[];for(let n of f(Ye)){let r=e.filter(e=>e.manifests.includes(n)||e.passiveManifests.some(e=>e.manifest===n));r.length>0&&t.push({key:n,heading:n,emoji:k.manifestAppearance(n).emoji,assets:r})}let n=e.filter(e=>e.manifests.length===0&&e.passiveManifests.length===0);return n.length>0&&t.push({key:`__no-manifest__`,heading:`No manifest`,assets:n}),t}),Q=_(()=>[...new Set(f(ot).flatMap(e=>e.assets.map(e=>e.id)))]);n(()=>{let e=new Set(f(Y).map(e=>e.id)),t=f(K).filter(t=>e.has(t));t.length!==f(K).length&&s(K,t,!0)});function st(e){s(M,e,!0),s(K,[],!0),s(q,null)}function ct(e,t){if(t&&f(q)!==null){let t=f(Q).indexOf(f(q)),n=f(Q).indexOf(e);if(t!==-1&&n!==-1){let r=Math.min(t,n),i=Math.max(t,n);s(K,[...new Set([...f(K),...f(Q).slice(r,i+1)])],!0),s(q,e,!0);return}}s(K,f(K).includes(e)?f(K).filter(t=>t!==e):[...f(K),e],!0),s(q,e,!0)}function lt(){s(K,[...f(Q)],!0),s(q,f(Q).at(-1)??null,!0)}function ut(e,t){if(!e.dataTransfer||t.length<2)return;let n=[...document.querySelectorAll(`.card[data-asset-id]`)],r=t.map(e=>n.find(t=>t.dataset.assetId===e)).filter(e=>e!==void 0);if(r.length<2)return;let i=document.createElement(`div`),a=44/(r.length-1),o=Math.min(r[0].offsetWidth,180),s=r[0].offsetHeight;Object.assign(i.style,{position:`fixed`,left:`-10000px`,top:`-10000px`,width:`${o+44}px`,height:`${s+44}px`,pointerEvents:`none`});for(let[e,t]of r.entries()){let n=t.cloneNode(!0);n.querySelector(`.asset-select`)?.remove(),n.removeAttribute(`href`),n.setAttribute(`aria-hidden`,`true`),Object.assign(n.style,{position:`absolute`,left:`${e*a}px`,top:`${e*a}px`,width:`${o}px`,height:`${s}px`,boxSizing:`border-box`,opacity:`1`}),i.append(n)}let c=document.createElement(`span`);c.textContent=String(t.length),Object.assign(c.style,{position:`absolute`,right:`0`,top:`0`,minWidth:`28px`,height:`28px`,padding:`0 7px`,boxSizing:`border-box`,borderRadius:`14px`,background:`var(--accent)`,color:`var(--text)`,font:`600 13px/28px system-ui, sans-serif`,textAlign:`center`,boxShadow:`0 2px 8px rgba(0, 0, 0, 0.35)`}),i.append(c),document.body.append(i),e.dataTransfer.setDragImage(i,24,24),requestAnimationFrame(()=>i.remove())}function dt(e){e.preventDefault(),s(F,!1);let t=e.dataTransfer?.files?.[0];t&&(s(Me,f(M)??``,!0),s(I,t,!0))}function ft(e){s(Me,e,!0),f(Be)?.click()}function pt(e){Fe+=1,s(Pe,{id:Fe,parent:e},!0)}function mt(e){Le+=1,s(Ie,{id:Le,path:e},!0)}function ht(e){ze+=1,s(Re,{id:ze,path:e},!0)}function gt(e){e.preventDefault(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:f(M)??``,renamePath:null},!0)}function _t(e,t){e.preventDefault(),e.stopPropagation(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:t,renamePath:t},!0)}function vt(e,t){e.preventDefault(),e.stopPropagation(),s(L,null);let n=f(K).includes(t)?[...f(K)]:[t];f(K).includes(t)||(s(K,[t],!0),s(q,t,!0)),s(R,{x:e.clientX,y:e.clientY,assetIds:n},!0)}function yt(e){s(z,e,!0),s(B,e,!0),s(G,null),o().then(()=>{f(Ne)?.focus(),f(Ne)?.select()})}function bt(e){s(V,[...new Set(e)],!0),s(G,null)}function xt(){f(W)||(s(z,null),s(V,[],!0),s(G,null))}async function St(){if(!f(Ge)||f(z)===null)return;let e=f(z),t=f(B);s(W,!0),s(G,null);try{await k.mutate(()=>pe(e,{renameTo:t})),s(K,f(K).map(n=>n===e?t:n),!0),s(q,f(q)===e?t:f(q),!0),s(z,null)}catch(e){s(G,e instanceof Error?e.message:String(e),!0)}finally{s(W,!1)}}async function Ct(){if(f(V).length===0)return;let e=[...f(V)];s(W,!0),s(G,null);try{await k.mutate(()=>ue(e));let t=new Set(e);s(K,f(K).filter(e=>!t.has(e)),!0),f(q)!==null&&t.has(f(q))&&s(q,null),s(V,[],!0)}catch(e){s(G,e instanceof Error?e.message:String(e),!0)}finally{s(W,!1)}}function wt(e){return f(Y).filter(t=>t.folder===e).length}function Tt(e){let t=e.currentTarget,n=t.files?.[0];t.value=``,n&&s(I,n,!0)}async function Et(e){s(I,null),await le(ce(`/asset/[id]`,{id:e}))}async function Dt(e,t){let n=e.filter(e=>k.assetById(e)?.folder!==t);if(n.length!==0)try{await k.mutate(()=>de(n,t)),s(K,[],!0),s(q,null)}catch{}}function Ot(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=ve(e.dataTransfer?.types.includes(`application/x-fundus-folder`)??!1,f(H),t);!n&&!r||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),s(U,t,!0))}function kt(e,t){e.preventDefault(),s(U,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`)&&Dt(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`);r&&me(r,t)&&$(r,t)}async function $(e,t){let n=ge(t,ye(e));try{await k.mutate(()=>fe(e,t)),f(M)!==null&&Te(f(M),e)&&st(`${n}${f(M).slice(e.length)}`)}catch{}finally{s(H,null),s(U,null)}}function jt(e){e&&e.play().catch(()=>{})}function Mt(e){e&&(e.pause(),e.currentTime=0)}function Pt(e){e.defaultPrevented||e.altKey||e.shiftKey||!e.metaKey&&!e.ctrlKey||e.key.toLowerCase()!==`k`||document.querySelector(`[role="dialog"]`)!==null||(e.preventDefault(),f(J)?.focus(),f(J)?.select())}var Ft=tn();u(`keydown`,h,Pt),u(`dragenter`,h,e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),s(F,!0))}),u(`dragover`,h,e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),s(F,!0))}),u(`drop`,h,dt);var nn=a(Ft),rn=g(nn);be(rn,{get selectedFolder(){return f(M)},get createRequest(){return f(Pe)},get renameRequest(){return f(Ie)},get deleteRequest(){return f(Re)},onSelect:st,onMoveAssets:(e,t)=>void Dt(e,t),get sharedDraggedFolder(){return f(H)},onFolderDragStart:e=>s(H,e,!0),onFolderDragEnd:()=>s(H,null),onContextMenu:(e,t,n,r)=>{s(R,null),s(L,{x:e,y:t,parent:n,renamePath:r},!0)}});var an=c(rn,2);let on;var sn=g(an),cn=g(sn),ln=e=>{var t=Lt(),n=a(t),r=g(n);T(n);var o=c(n,2),u=c(o,2);O(()=>m(r,`${f(K).length??``} selected`)),l(`click`,o,lt),l(`click`,u,()=>{s(K,[],!0),s(q,null)}),i(e,t)},un=e=>{var t=Rt();O(()=>t.disabled=f(Q).length===0),l(`click`,t,lt),i(e,t)};D(cn,e=>{f(K).length>0?e(ln):e(un,-1)});var dn=c(cn,2),fn=c(dn,2);y(fn,e=>s(Be,e),()=>f(Be)),T(sn);var pn=c(sn,2),mn=g(pn),hn=g(mn);hn.value=hn.__value=`alphabetical`;var gn=c(hn);gn.value=gn.__value=`type`;var _n=c(gn);_n.value=_n.__value=`manifest`,T(mn);var vn=c(mn,2),yn=g(vn);yn.value=yn.__value=`all`,p(c(yn),16,()=>f(Xe),e=>e,(e,t)=>{var n=zt(),r=g(n,!0);T(n);var a={};O(()=>{m(r,t),a!==(a=t)&&(n.value=(n.__value=t)??``)}),i(e,n)}),T(vn);var bn=c(vn,2),xn=g(bn);xn.value=xn.__value=`all`,p(c(xn),16,()=>f(Ye),e=>e,(e,t)=>{let n=_(()=>k.manifestAppearance(t).emoji);var r=zt(),a=g(r,!0);T(r);var o={};O(()=>{m(a,f(n)?`${f(n)} ${t}`:t),o!==(o=t)&&(r.value=(r.__value=t)??``)}),i(e,r)}),T(bn);var Sn=c(bn,2),Cn=c(g(Sn),2);b(Cn),y(Cn,e=>s(J,e),()=>f(J));var wn=c(Cn,2),Tn=g(wn,!0);T(wn),T(Sn);var En=c(Sn,2),Dn=g(En);b(Dn),ie(),T(En),T(pn);var On=c(pn,2),kn=e=>{i(e,Bt())},An=e=>{var t=Vt(),n=g(t,!0);T(t),O(()=>m(n,f(Y).length===0?`No assets yet — drop an image anywhere to import it.`:`Nothing matches the current filters.`)),i(e,t)},jn=e=>{var n=Yt(),o=a(n),d=e=>{var n=Ut(),r=g(n);he(r,{children:(e,n)=>{ie(),i(e,t(`Folders`))},$$slots:{default:!0}});var a=c(r,2);p(a,20,()=>f(rt),e=>e,(e,t)=>{var n=Ht();let r;var a=g(n);Se(g(a),{size:18}),T(a);var o=c(a,2),d=g(o),p=g(d,!0);T(d);var h=c(d,2),_=g(h);T(h),T(o),ie(2),T(n),O((e,i)=>{r=ee(n,1,`folder-card svelte-1uha8ag`,null,r,{"drop-target":f(U)===t,"dragging-folder":f(H)===t}),m(p,e),m(_,`${i??``} assets`)},[()=>ye(t),()=>wt(t)]),l(`click`,n,()=>st(t)),l(`contextmenu`,n,e=>_t(e,t)),u(`dragstart`,n,e=>{s(H,t,!0),e.dataTransfer?.setData(`application/x-fundus-folder`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),u(`dragend`,n,()=>{s(H,null),s(U,null)}),u(`dragover`,n,e=>Ot(e,t)),u(`dragleave`,n,()=>s(U,null)),u(`drop`,n,e=>kt(e,t)),i(e,n)}),T(a),T(n),i(e,n)};D(o,e=>{f(rt).length>0&&e(d)});var h=c(o,2),v=e=>{var t=r();p(a(t),17,()=>f(ot),e=>e.key,(e,t)=>{var n=Jt(),o=g(n),s=e=>{he(e,{children:(e,n)=>{var r=Gt(),o=a(r),s=e=>{var n=Wt(),r=g(n,!0);T(n),O(()=>m(r,f(t).emoji)),i(e,n)};D(o,e=>{f(t).emoji&&e(s)});var l=c(o,1,!0);O(()=>m(l,f(t).heading)),i(e,r)},$$slots:{default:!0}})};D(o,e=>{f(t).heading&&e(s)});var d=c(o,2);p(d,21,()=>f(t).assets,e=>e.id,(e,t)=>{let n=_(()=>Ce[f(t).type]?.thumbnail);var o=qt();let s;var d=g(o);b(d);var h=c(d,2),v=g(h),y=e=>{var o=r();se(a(o),()=>f(n),(e,n)=>{n(e,{get asset(){return f(t)}})}),i(e,o)};D(v,e=>{f(n)&&e(y)}),T(h);var x=c(h,2),S=g(x),C=g(S,!0);T(S);var w=c(S,2),te=g(w,!0);T(w),T(x);var ne=c(x,2),re=g(ne);p(re,16,()=>f(t).manifests,e=>e,(e,t)=>{It(e,{get name(){return t}})});var ie=c(re,2);p(ie,17,()=>f(t).passiveManifests,e=>e.manifest,(e,t)=>{It(e,{get name(){return f(t).manifest},passive:!0,get via(){return f(t).via}})}),p(c(ie,2),16,()=>f(t).warnings,e=>e,(e,t)=>{var n=Kt();O(()=>E(n,`title`,t)),i(e,n)}),T(ne),T(o),O((e,n,r)=>{s=ee(o,1,`card svelte-1uha8ag`,null,s,e),E(o,`data-asset-id`,f(t).id),E(o,`href`,n),oe(d,r),E(d,`aria-label`,`Select ${f(t).id}`),m(C,f(t).id),m(te,f(t).type)},[()=>({selected:f(K).includes(f(t).id)}),()=>ce(`/asset/[id]`,{id:f(t).id}),()=>f(K).includes(f(t).id)]),l(`contextmenu`,o,e=>vt(e,f(t).id)),l(`click`,o,e=>{(f(K).length>0||e.metaKey||e.ctrlKey||e.shiftKey)&&(e.preventDefault(),ct(f(t).id,e.shiftKey))}),u(`dragstart`,o,e=>{let n=f(K).includes(f(t).id)?f(K):[f(t).id];e.dataTransfer?.setData(`application/x-fundus-assets`,JSON.stringify(n)),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`),ut(e,n)}),u(`focus`,o,e=>jt(e.currentTarget.querySelector(`video`))),u(`blur`,o,e=>Mt(e.currentTarget.querySelector(`video`))),l(`click`,d,e=>{e.stopPropagation(),ct(f(t).id,e.shiftKey)}),i(e,o)}),T(d),T(n),i(e,n)}),i(e,t)};D(h,e=>{f(it).length>0&&e(v)}),i(e,n)};D(On,e=>{k.state?f(it).length===0&&f(rt).length===0?e(An,1):e(jn,-1):e(kn)});var Mn=c(On,2),Nn=e=>{var t=Xt(),n=g(t);T(t),O(()=>m(n,`Drop to import into ${(f(M)||`Root`)??``}`)),i(e,t)};D(Mn,e=>{f(F)&&e(Nn)}),T(an),T(nn);var Pn=c(nn,2),Fn=e=>{{let t=_(()=>f(L).renamePath===null?void 0:()=>mt(f(L)?.renamePath??``)),n=_(()=>f(L).renamePath===null?void 0:()=>ht(f(L)?.renamePath??``));we(e,{get x(){return f(L).x},get y(){return f(L).y},onNewDirectory:()=>pt(f(L)?.parent??``),get onRenameDirectory(){return f(t)},onImportFile:()=>ft(f(L)?.parent??``),get onDeleteDirectory(){return f(n)},onClose:()=>s(L,null)})}};D(Pn,e=>{f(L)&&e(Fn)});var In=c(Pn,2),Ln=e=>{{let t=_(()=>f(R).assetIds.length===1?()=>yt(f(R)?.assetIds[0]??``):void 0);Nt(e,{get x(){return f(R).x},get y(){return f(R).y},get assetCount(){return f(R).assetIds.length},get onRename(){return f(t)},onDelete:()=>bt(f(R)?.assetIds??[]),onClose:()=>s(R,null)})}};D(In,e=>{f(R)&&e(Ln)});var Rn=c(In,2),zn=e=>{{let t=_(()=>f(W)?`Renaming…`:`Rename`),n=_(()=>!f(Ge));De(e,{title:`Rename asset`,get confirmLabel(){return f(t)},get confirmDisabled(){return f(n)},get busy(){return f(W)},onConfirm:()=>void St(),onCancel:xt,children:(e,t)=>{var n=$t(),r=a(n),o=c(g(r),2);b(o),y(o,e=>s(Ne,e),()=>f(Ne)),T(r);var u=c(r,2),d=e=>{var t=Zt(),n=g(t,!0);T(t),O(()=>m(n,f(Ue))),i(e,t)};D(u,e=>{f(Ue)&&e(d)});var p=c(u,2),h=e=>{i(e,Qt())};D(p,e=>{f(We)&&e(h)});var _=c(p,2),v=e=>{var t=Zt(),n=g(t);T(t),O(e=>m(n,`Renaming leaves ${f(Ke).length??``} reference(s) pointing to the old ID:
2
2
  ${e??``}`),[()=>f(Ke).join(`, `)]),i(e,t)};D(_,e=>{f(Ke).length>0&&e(v)});var x=c(_,2),S=e=>{var t=Zt(),n=g(t,!0);T(t),O(()=>m(n,f(G))),i(e,t)};D(x,e=>{f(G)&&e(S)}),O(()=>o.disabled=f(W)),l(`keydown`,o,e=>e.key===`Enter`&&void St()),ae(o,()=>f(B),e=>s(B,e)),i(e,n)},$$slots:{default:!0}})}};D(Rn,e=>{f(z)!==null&&e(zn)});var Bn=c(Rn,2),Vn=e=>{{let t=_(()=>f(V).length===1?`Delete asset`:`Delete ${f(V).length} assets`),n=_(()=>f(W)?`Deleting…`:f(V).length===1?`Delete asset`:`Delete ${f(V).length} assets`);De(e,{get title(){return f(t)},get confirmLabel(){return f(n)},danger:!0,get busy(){return f(W)},onConfirm:()=>void Ct(),onCancel:xt,children:(e,t)=>{var n=en(),r=a(n),o=g(r);T(r);var s=c(r,2),l=e=>{var t=Zt(),n=g(t);T(t),O(e=>m(n,`This leaves ${f(X).length??``} external reference(s) dangling:
3
3
  ${e??``}`),[()=>f(X).join(`, `)]),i(e,t)};D(s,e=>{f(X).length>0&&e(l)});var u=c(s,2),d=e=>{var t=Zt(),n=g(t,!0);T(t),O(()=>m(n,f(G))),i(e,t)};D(u,e=>{f(G)&&e(d)}),O(e=>m(o,`Delete ${e??``}? Their raw files and proxies are removed.`),[()=>f(V).join(`, `)]),i(e,n)},$$slots:{default:!0}})}};D(Bn,e=>{f(V).length>0&&e(Vn)});var Hn=c(Bn,2),Un=e=>{xe(e,{get file(){return f(I)},get folder(){return f(Me)},onDone:e=>void Et(e),onCancel:()=>s(I,null)})};D(Hn,e=>{f(I)&&e(Un)}),O(()=>{on=ee(an,1,`page svelte-1uha8ag`,null,on,{dragging:f(F)}),E(fn,`accept`,Ve),m(Tn,He)}),l(`contextmenu`,an,gt),u(`dragleave`,an,e=>{e.relatedTarget===null&&s(F,!1)}),l(`click`,dn,()=>ft(f(M)??``)),l(`change`,fn,Tt),S(mn,()=>f(j),e=>s(j,e)),S(vn,()=>f(N),e=>s(N,e)),S(bn,()=>f(Ae),e=>s(Ae,e)),l(`keydown`,Cn,e=>{e.key===`Escape`&&(e.stopPropagation(),f(P)===``?e.currentTarget.blur():s(P,``))}),ae(Cn,()=>f(P),e=>s(P,e)),ne(Dn,()=>f(je),e=>s(je,e)),i(d,Ft),e()}te([`contextmenu`,`click`,`change`,`keydown`]);export{nn as component};
@@ -0,0 +1 @@
1
+ import{$ as e,A as t,D as n,E as r,G as i,J as a,K as o,M as s,O as c,P as l,S as u,T as d,W as f,X as p,Y as m,a as h,c as ee,d as te,et as g,g as _,h as v,it as y,j as b,l as x,nt as S,rt as C,u as ne,w,y as T,z as E}from"../chunks/CNRz3sSw.js";import{c as D,t as O}from"../chunks/DVEDrSOn.js";import"../chunks/xihTtKlq.js";import{t as k}from"../chunks/D9-155C9.js";import{c as A,i as j,p as re,t as M,u as N}from"../chunks/cznBUb-E.js";import{c as ie,n as P,o as ae,s as oe,t as se}from"../chunks/BA62n9FX.js";import{a as ce,o as F,y as le}from"../chunks/CQsKwm8E.js";var ue=c(`<span class="color-dot svelte-151zph4"></span>`),I=c(`<span class="via svelte-151zph4"> </span>`),de=c(`<label><input type="checkbox" class="svelte-151zph4"/> <span class="marker svelte-151zph4" aria-hidden="true"><!></span> <span class="name svelte-151zph4"> </span> <!></label>`),fe=c(`<div class="manifest-selector svelte-151zph4" role="group" aria-label="Manifest assignments"></div>`);function pe(n,i){g(i,!0);function a(e){return i.passive.find(t=>t.manifest===e)}function c(e,t,n){return t?`${e}: explicitly assigned`:n?`${e}: passive member via ${n.via.join(`, `)}`:`${e}: not assigned`}var m=fe();u(m,20,()=>i.manifests,e=>e,(e,n)=>{let u=p(()=>M.manifestAppearance(n)),m=p(()=>i.selected.includes(n)),h=p(()=>a(n)),te=p(()=>l(u).color??`var(--accent)`);var g=de();let b,S;var C=f(g);ee(C);var T=o(C,2),D=f(T),O=e=>{var n=t();E(()=>d(n,l(u).emoji)),r(e,n)},k=e=>{r(e,ue())};w(D,e=>{l(u).emoji?e(O):e(k,-1)}),y(T);var A=o(T,2),j=f(A,!0);y(A);var re=o(A,2),N=e=>{var t=I(),n=f(t);y(t),E(e=>d(n,`passive · via ${e??``}`),[()=>l(h).via.join(`, `)]),r(e,t)};w(re,e=>{l(h)&&!l(m)&&e(N)}),y(g),E((e,t)=>{b=_(g,1,`manifest-option control svelte-151zph4`,null,b,{selected:l(m),passive:l(h)!==void 0&&!l(m)}),x(g,`title`,e),S=v(g,``,S,{"--manifest-color":l(te)}),ne(C,l(m)),x(C,`aria-label`,t),d(j,n)},[()=>c(n,l(m),l(h)),()=>c(n,l(m),l(h))]),s(`change`,C,()=>i.onToggle(n)),r(e,g)}),y(m),r(n,m),e()}b([`change`]);var me=c(`<div class="center empty svelte-xy8zsr">Loading…</div>`),he=c(`<div class="center empty svelte-xy8zsr"> </div>`),ge=c(`<div class="empty svelte-xy8zsr"> </div>`),_e=c(`<p class="warning svelte-xy8zsr"> </p>`),ve=c(`<p class="hint svelte-xy8zsr">No manifests yet — create one in the Manifests view.</p>`),ye=c(`<p class="hint svelte-xy8zsr">No references.</p>`),be=c(`<a class="reference-row svelte-xy8zsr"><span class="reference-field svelte-xy8zsr"> </span> <span class="reference-arrow svelte-xy8zsr">→</span> <span class="reference-asset svelte-xy8zsr"> </span></a>`),xe=c(`<h4 class="svelte-xy8zsr">Outgoing</h4> <!>`,1),Se=c(`<a class="reference-row svelte-xy8zsr"><span class="reference-asset svelte-xy8zsr"> </span> <span class="reference-arrow svelte-xy8zsr">→</span> <span class="reference-field svelte-xy8zsr"> </span></a>`),Ce=c(`<h4 class="svelte-xy8zsr">Incoming</h4> <!>`,1),we=c(`<!> <!>`,1),Te=c(`<p class="hint error svelte-xy8zsr"> </p>`),Ee=c(`<div class="center svelte-xy8zsr"><!></div> <aside class="inspector svelte-xy8zsr"><section class="head svelte-xy8zsr"><h2 class="svelte-xy8zsr"> </h2> <p class="raw svelte-xy8zsr"> <span title="Raw file"> </span></p> <!></section> <!> <section class="svelte-xy8zsr"><!> <!></section> <section class="svelte-xy8zsr"><!> <!></section> <section class="svelte-xy8zsr"><!> <button class="control replace-raw svelte-xy8zsr"> </button> <!> <div class="rename svelte-xy8zsr"><input class="control svelte-xy8zsr" type="text" spellcheck="false"/> <button class="control">Rename</button></div> <!> <button class="control danger svelte-xy8zsr">Delete asset</button></section></aside>`,1),De=c(`<div class="detail svelte-xy8zsr"><!> <!></div> <input type="file" hidden=""/> <input type="file" hidden=""/> <!> <!>`,1);function L(c,_){g(_,!0);let v=p(()=>k.params.id??``),b=p(()=>M.assetById(l(v))),ne=p(()=>M.manifestNames),ue=p(()=>l(b)?M.state?.presetNames[l(b).type]??[]:[]),I=p(()=>l(b)?oe[l(b).type]??null:null),de=p(()=>l(I)?.panel??null),fe=p(()=>l(I)?.editor??null),L=m(null),R=p(()=>l(b)?l(L)&&l(L).assetId===l(b).id?l(L).value:S(l(b)).parameters:null);function Oe(e){l(b)&&a(L,{assetId:l(b).id,value:e},!0)}let z=m(null),ke=m(null),B=0,Ae=m(null),V=0,H=m(null),U=0,W=m(null),je=m(``),G=m(void 0),Me=m(void 0),K=m(null),q=m(null),Ne=ce().join(`,`),Pe=p(()=>l(b)?F(l(b).type).join(`,`):``),J=m(null),Y=p(()=>l(b)&&l(J)?.assetId===l(b).id?l(J).value:l(b)?.id??``),X=p(()=>l(b)&&l(Y)!==l(b).id?le(l(Y)):null);async function Fe(e){if(!l(b))return;let t=l(b).id;try{await M.mutate(()=>N(t,{parameters:e})),l(L)?.assetId===t&&a(L,null)}catch{}}async function Ie(e){if(!l(b))return;let t=l(b).manifests.includes(e)?l(b).manifests.filter(t=>t!==e):[...l(b).manifests,e];try{await M.mutate(()=>N(l(b).id,{manifests:t}))}catch{}}async function Le(){if(!l(b)||l(Y)===l(b).id||l(X))return;let e=l(b).id,t=l(Y);try{await M.mutate(()=>N(e,{renameTo:t})),a(J,null),l(v)===e&&await O(D(`/asset/[id]`,{id:t}),{replaceState:!0})}catch{}}async function Re(){if(!l(b))return;let e=l(b).id;if(confirm(`Delete "${e}"? The raw file and its proxies are removed.`))try{await M.mutate(()=>j(e)),l(v)===e&&await O(D(`/`))}catch{}}async function ze(e){try{localStorage.setItem(`fundus.gallery.folder`,e??`__all__`)}catch{}await O(D(`/`))}async function Be(e,t){let n=e.filter(e=>M.assetById(e)?.folder!==t);if(n.length!==0)try{await M.mutate(()=>A(n,t))}catch{}}function Ve(e){B+=1,a(ke,{id:B,parent:e},!0)}function He(e){V+=1,a(Ae,{id:V,path:e},!0)}function Ue(e){U+=1,a(H,{id:U,path:e},!0)}function We(e){a(je,e,!0),l(G)?.click()}function Ge(e){let t=e.currentTarget,n=t.files?.[0];t.value=``,n&&a(W,n,!0)}async function Ke(e){let t=e.currentTarget,n=t.files?.[0];if(t.value=``,!n||!l(b))return;let r=l(b).id;a(K,r,!0),a(q,null);try{await M.mutate(()=>re(r,n))}catch(e){a(q,{assetId:r,message:e instanceof Error?e.message:String(e)},!0)}finally{l(K)===r&&a(K,null)}}async function qe(e){a(W,null),await O(D(`/asset/[id]`,{id:e}))}var Je=De(),Z=i(Je),Ye=f(Z);{let e=p(()=>l(b)?.folder??null);P(Ye,{get selectedFolder(){return l(e)},get activeAsset(){return l(b)},get createRequest(){return l(ke)},get renameRequest(){return l(Ae)},get deleteRequest(){return l(H)},onSelect:e=>void ze(e),onMoveAssets:(e,t)=>void Be(e,t),onActiveAssetDeleted:e=>void ze(e),onContextMenu:(e,t,n,r)=>{a(z,{x:e,y:t,parent:n,renamePath:r},!0)}})}var Xe=o(Ye,2),Ze=e=>{r(e,me())},Qe=e=>{var t=he(),n=f(t);y(t),E(()=>d(n,`No asset with id "${l(v)??``}".`)),r(e,t)},$e=e=>{var c=Ee(),p=i(c),m=f(p),h=e=>{var t=n();T(i(t),()=>l(fe),(e,t)=>{t(e,{get asset(){return l(b)},get parameters(){return l(R)},onParametersChange:Oe,onParametersCommit:e=>void Fe(e)})}),r(e,t)},g=e=>{var t=ge(),n=f(t);y(t),E(()=>d(n,`No editor registered for asset type "${l(b).type??``}".`)),r(e,t)};w(m,e=>{l(fe)&&l(R)!==null?e(h):e(g,-1)}),y(p);var _=o(p,2),v=f(_),S=f(v),O=f(S,!0);y(S);var k=o(S,2),A=f(k),j=o(A),re=f(j,!0);y(j),y(k),u(o(k,2),16,()=>l(b).warnings,e=>e,(e,t)=>{var n=_e(),i=f(n);y(n),E(()=>d(i,`⚠ ${t??``}`)),r(e,n)}),y(v);var M=o(v,2),N=e=>{var t=n();T(i(t),()=>l(de),(e,t)=>{t(e,{get asset(){return l(b)},get parameters(){return l(R)},onParametersChange:e=>Oe(e),onParametersCommit:e=>{Oe(e),Fe(e)},get presetNames(){return l(ue)}})}),r(e,t)};w(M,e=>{l(de)&&l(R)!==null&&e(N)});var P=o(M,2),ae=f(P);ie(ae,{children:(e,n)=>{C(),r(e,t(`Manifests`))},$$slots:{default:!0}});var oe=o(ae,2),se=e=>{r(e,ve())},ce=e=>{pe(e,{get manifests(){return l(ne)},get selected(){return l(b).manifests},get passive(){return l(b).passiveManifests},onToggle:e=>void Ie(e)})};w(oe,e=>{l(ne).length===0?e(se):e(ce,-1)}),y(P);var F=o(P,2),le=f(F);ie(le,{children:(e,n)=>{C(),r(e,t(`References`))},$$slots:{default:!0}});var I=o(le,2),me=e=>{r(e,ye())},he=e=>{var t=we(),n=i(t),a=e=>{var t=xe();u(o(i(t),2),17,()=>l(b).references.outgoing,e=>`${e.field}→${e.assetId}`,(e,t)=>{var n=be(),i=f(n),a=f(i,!0);y(i);var s=o(i,4),c=f(s,!0);y(s),y(n),E(e=>{x(n,`href`,e),d(a,l(t).field),d(c,l(t).assetId)},[()=>D(`/asset/[id]`,{id:l(t).assetId})]),r(e,n)}),r(e,t)};w(n,e=>{l(b).references.outgoing.length>0&&e(a)});var s=o(n,2),c=e=>{var t=Ce();u(o(i(t),2),17,()=>l(b).references.incoming,e=>`${e.assetId}→${e.field}`,(e,t)=>{var n=Se(),i=f(n),a=f(i,!0);y(i);var s=o(i,4),c=f(s,!0);y(s),y(n),E(e=>{x(n,`href`,e),d(a,l(t).assetId),d(c,l(t).field)},[()=>D(`/asset/[id]`,{id:l(t).assetId})]),r(e,n)}),r(e,t)};w(s,e=>{l(b).references.incoming.length>0&&e(c)}),r(e,t)};w(I,e=>{l(b).references.outgoing.length===0&&l(b).references.incoming.length===0?e(me):e(he,-1)}),y(F);var De=o(F,2),L=f(De);ie(L,{children:(e,n)=>{C(),r(e,t(`Asset`))},$$slots:{default:!0}});var z=o(L,2),ke=f(z,!0);y(z);var B=o(z,2),Ae=e=>{var t=Te(),n=f(t,!0);y(t),E(()=>d(n,l(q).message)),r(e,t)};w(B,e=>{l(q)?.assetId===l(b).id&&e(Ae)});var V=o(B,2),H=f(V);ee(H);var U=o(H,2);y(V);var W=o(V,2),je=e=>{var t=Te(),n=f(t,!0);y(t),E(()=>d(n,l(X))),r(e,t)};w(W,e=>{l(X)&&e(je)});var G=o(W,2);y(De),y(_),E(()=>{d(O,l(b).id),d(A,`${l(b).type??``} · `),d(re,l(b).raw),z.disabled=l(K)===l(b).id,d(ke,l(K)===l(b).id?`Replacing…`:`Replace`),te(H,l(Y)),U.disabled=l(Y)===l(b).id||l(X)!==null}),s(`click`,z,()=>l(Me)?.click()),s(`input`,H,e=>a(J,{assetId:l(b).id,value:e.currentTarget.value},!0)),s(`click`,U,()=>void Le()),s(`click`,G,()=>void Re()),r(e,c)};w(Xe,e=>{M.loaded?l(b)?e($e,-1):e(Qe,1):e(Ze)}),y(Z);var Q=o(Z,2);h(Q,e=>a(G,e),()=>l(G));var $=o(Q,2);h($,e=>a(Me,e),()=>l(Me));var et=o($,2),tt=e=>{{let t=p(()=>l(z).renamePath===null?void 0:()=>He(l(z)?.renamePath??``)),n=p(()=>l(z).renamePath===null?void 0:()=>Ue(l(z)?.renamePath??``));se(e,{get x(){return l(z).x},get y(){return l(z).y},onNewDirectory:()=>Ve(l(z)?.parent??``),get onRenameDirectory(){return l(t)},onImportFile:()=>We(l(z)?.parent??``),get onDeleteDirectory(){return l(n)},onClose:()=>a(z,null)})}};w(et,e=>{l(z)&&e(tt)});var nt=o(et,2),rt=e=>{ae(e,{get file(){return l(W)},get folder(){return l(je)},onDone:e=>void qe(e),onCancel:()=>a(W,null)})};w(nt,e=>{l(W)&&e(rt)}),E(()=>{x(Q,`accept`,Ne),x($,`accept`,l(Pe))}),s(`change`,Q,Ge),s(`change`,$,e=>void Ke(e)),r(c,Je),e()}b([`click`,`input`,`change`]);export{L as component};
@@ -1,2 +1,2 @@
1
- import{$ as e,B as t,E as n,G as r,J as i,K as a,M as o,O as s,P as c,S as l,T as u,W as d,X as f,Y as p,a as m,b as h,c as g,et as _,g as v,h as y,i as b,it as x,j as S,l as C,rt as w,s as T,w as E,z as D}from"../chunks/CNRz3sSw.js";import{c as O}from"../chunks/DiFoWL2c.js";import"../chunks/xihTtKlq.js";import{d as k,r as A,s as j,t as M}from"../chunks/CO4RBJfa.js";import{n as N,t as P,y as F}from"../chunks/DkADHpZF.js";var I=[{name:`slate`,value:`#64748b`},{name:`red`,value:`#ef4444`},{name:`orange`,value:`#f97316`},{name:`amber`,value:`#f59e0b`},{name:`yellow`,value:`#eab308`},{name:`lime`,value:`#84cc16`},{name:`green`,value:`#22c55e`},{name:`teal`,value:`#14b8a6`},{name:`cyan`,value:`#06b6d4`},{name:`blue`,value:`#3b82f6`},{name:`indigo`,value:`#6366f1`},{name:`violet`,value:`#8b5cf6`},{name:`pink`,value:`#ec4899`}],ee=`🗂️.🏠.🎯.⭐.🔥.💎.🎨.🧩.🚀.🎵.🏆.⚡.🌟.🍀.🎁.📦.🗺️.🔑.🛒.❤️.🐙.🎲.🌈.🧪.🎪.🎭.🎬.🎤.🎧.🎸.🥁.🔔.💡.🔮.🧭.⏰.📸.🖼️.📚.✏️.🖌️.🧲.⚙️.🛠️.🔧.🧰.🔌.🔋.🌍.🌙.☀️.❄️.🌊.🍄.🌵.🌸.🍎.🍕.🍩.☕.🐳.🦄.🐝`.split(`.`),L=s(`<div role="dialog"><!></div>`),R=s(`<div class="popover-anchor svelte-1rznwff"><!> <!></div>`);function z(r,o){_(o,!0);let s=b(o,`open`,15,!1),l=b(o,`align`,3,`left`),u=p(void 0);function f(){s(!s())}t(()=>{if(!s())return;function e(e){c(u)&&!c(u).contains(e.target)&&s(!1)}function t(e){e.key===`Escape`&&s(!1)}return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});var g=R(),y=d(g);h(y,()=>o.trigger,()=>({toggle:f,open:s()}));var S=a(y,2),w=e=>{var t=L();let r;h(d(t),()=>o.children),x(t),D(()=>{r=v(t,1,`popover svelte-1rznwff`,null,r,{right:l()===`right`}),C(t,`aria-label`,o.label)}),n(e,t)};E(S,e=>{s()&&e(w)}),x(g),m(g,e=>i(u,e),()=>c(u)),n(r,g),e()}var B=s(`<button type="button" title="Emoji"> </button>`),V=s(`<button type="button"> </button>`),H=s(`<div class="picker emojis svelte-58t64l"><button type="button" title="No emoji" aria-label="No emoji">∅</button> <!></div>`),U=s(`<button type="button" title="Color"></button>`),W=s(`<button type="button"></button>`),te=s(`<div class="picker swatches svelte-58t64l"><button type="button" title="No color" aria-label="No color"></button> <!></div>`),ne=s(`<div class="controls svelte-58t64l"><!> <!></div>`);function re(t,r){_(r,!0);let s=f(()=>M.manifestAppearance(r.name)),m=f(()=>c(s).color??null),h=f(()=>c(s).emoji??null),g=p(!1),b=p(!1);async function S(e){i(g,!1);try{await M.mutate(()=>k(r.name,{color:e}))}catch{}}async function w(e){i(b,!1);try{await M.mutate(()=>k(r.name,{emoji:e}))}catch{}}var T=ne(),E=d(T);z(E,{get label(){return`Pick an emoji for ${r.name??``}`},get open(){return c(b)},set open(e){i(b,e,!0)},trigger:(e,t)=>{let i=()=>(t?.()).toggle,a=()=>(t?.()).open;var s=B();let l;var f=d(s,!0);x(s),D(()=>{l=v(s,1,`emoji-trigger svelte-58t64l`,null,l,{empty:!c(h),active:a()}),C(s,`aria-label`,`Emoji for ${r.name??``}`),u(f,c(h)??`☺`)}),o(`click`,s,function(...e){i()?.apply(this,e)}),n(e,s)},children:(e,t)=>{var r=H(),i=d(r);let s;l(a(i,2),16,()=>ee,e=>e,(e,t)=>{var r=V();let i;var a=d(r,!0);x(r),D(()=>{i=v(r,1,`emoji svelte-58t64l`,null,i,{selected:c(h)===t}),C(r,`title`,t),u(a,t)}),o(`click`,r,()=>void w(t)),n(e,r)}),x(r),D(()=>s=v(i,1,`emoji none svelte-58t64l`,null,s,{selected:c(h)===null})),o(`click`,i,()=>void w(null)),n(e,r)},$$slots:{trigger:!0,default:!0}}),z(a(E,2),{get label(){return`Pick a color for ${r.name??``}`},get open(){return c(g)},set open(e){i(g,e,!0)},trigger:(e,t)=>{let i=()=>(t?.()).toggle,a=()=>(t?.()).open;var s=U();let l;D(()=>{l=v(s,1,`swatch-trigger svelte-58t64l`,null,l,{empty:!c(m),active:a()}),y(s,`--swatch: ${c(m)??`transparent`??``}`),C(s,`aria-label`,`Color for ${r.name??``}`)}),o(`click`,s,function(...e){i()?.apply(this,e)}),n(e,s)},children:(e,t)=>{var r=te(),i=d(r);let s;l(a(i,2),17,()=>I,e=>e.value,(e,t)=>{var r=W();let i;D(()=>{i=v(r,1,`swatch svelte-58t64l`,null,i,{selected:c(m)===c(t).value}),y(r,`background: ${c(t).value??``}`),C(r,`title`,c(t).name),C(r,`aria-label`,c(t).name)}),o(`click`,r,()=>void S(c(t).value)),n(e,r)}),x(r),D(()=>s=v(i,1,`swatch none svelte-58t64l`,null,s,{selected:c(m)===null})),o(`click`,i,()=>void S(null)),n(e,r)},$$slots:{trigger:!0,default:!0}}),x(T),n(t,T),e()}S([`click`]);var ie=s(`<span class="hint svelte-1k9wgg5"> </span>`),ae=s(`<div class="empty svelte-1k9wgg5">No manifests yet. Assets only get processed and generated once they are in a manifest.</div>`),oe=s(`<span class="asset-type svelte-1k9wgg5"> </span>`),se=s(`<li class="passive-member svelte-1k9wgg5"><a class="svelte-1k9wgg5"><span class="asset-id passive-id svelte-1k9wgg5"> </span> <!> <span class="asset-via svelte-1k9wgg5"> </span> <span class="asset-size svelte-1k9wgg5"> </span></a></li>`),ce=s(`<li class="svelte-1k9wgg5"><a class="svelte-1k9wgg5"><span class="asset-id svelte-1k9wgg5"> </span> <span class="asset-type svelte-1k9wgg5"> </span> <span class="asset-size svelte-1k9wgg5"> </span></a></li> <!>`,1),le=s(`<ul class="svelte-1k9wgg5"></ul>`),ue=s(`<p class="hint svelte-1k9wgg5">Empty — an empty manifest still generates an (empty) module.</p>`),de=s(`<section class="manifest svelte-1k9wgg5"><header class="svelte-1k9wgg5"><!> <h2 class="svelte-1k9wgg5"> </h2> <span class="size svelte-1k9wgg5" title="Total delivered proxy size incl. the reference closure — the preload budget"> </span> <span class="count svelte-1k9wgg5"> </span> <button class="control">Rename</button> <button class="control danger">Delete</button></header> <!></section>`),fe=s(`<div class="list svelte-1k9wgg5"></div>`),G=s(`<p class="dialog-text warn svelte-1k9wgg5"> </p>`),pe=s(`<p class="dialog-text svelte-1k9wgg5">Delete manifest <strong> </strong> </p> <!>`,1),me=s(`<p class="dialog-text warn svelte-1k9wgg5">A manifest with this name already exists.</p>`),he=s(`<label class="dialog-row svelte-1k9wgg5"><span class="dialog-label svelte-1k9wgg5">Name</span> <input class="control svelte-1k9wgg5" type="text" spellcheck="false"/></label> <!> <p class="dialog-text svelte-1k9wgg5">The generated module is renamed with the manifest — host code importing <code> </code> must be updated by hand.</p> <!>`,1),ge=s(`<div class="page svelte-1k9wgg5"><div class="create svelte-1k9wgg5"><input class="control svelte-1k9wgg5" type="text" placeholder="newManifestName" spellcheck="false"/> <button class="control primary">Create manifest</button> <!></div> <!></div> <!> <!>`,1);function K(t,s){_(s,!0);let m=p(``),h=f(()=>M.state?.assets??[]),v=f(()=>M.manifestNames);function b(e){return c(h).filter(t=>t.manifests.includes(e))}function S(e){return M.state?.manifestMemberships[e]?.passiveMembers??[]}function I(e,t){return S(e).filter(e=>e.via.includes(t))}function ee(e){return M.state?.manifestDeliveredBytes[e]??0}let L=f(()=>c(m)?F(c(m)):null),R=f(()=>c(m)!==``&&!c(L)&&!c(v).includes(c(m)));async function z(){if(c(R))try{await M.mutate(()=>A(c(m))),i(m,``)}catch{}}let B=p(null),V=p(null),H=p(``),U=p(!1),W=p(null);function te(e){i(W,null),i(B,e,!0)}function ne(e){i(W,null),i(H,e,!0),i(V,e,!0)}function K(){i(B,null),i(V,null),i(W,null)}let q=f(()=>c(V)!==null&&c(H)!==c(V)?F(c(H)):null),J=f(()=>c(V)!==null&&c(H)!==c(V)&&c(v).includes(c(H))),_e=f(()=>c(V)!==null&&c(H)!==c(V)&&!c(q)&&!c(J));async function ve(){if(c(B)===null)return;let e=c(B);i(U,!0),i(W,null);try{await M.mutate(()=>j(e)),K()}catch(e){i(W,e instanceof Error?e.message:String(e),!0)}finally{i(U,!1)}}async function ye(){if(c(V)===null||!c(_e))return;let e=c(V),t=c(H);i(U,!0),i(W,null);try{await M.mutate(()=>k(e,{renameTo:t})),K()}catch(e){i(W,e instanceof Error?e.message:String(e),!0)}finally{i(U,!1)}}var be=ge(),Y=r(be),X=d(Y),Z=d(X);g(Z);var Q=a(Z,2),xe=a(Q,2),Se=e=>{var t=ie(),r=d(t,!0);x(t),D(()=>u(r,c(L))),n(e,t)};E(xe,e=>{c(L)&&e(Se)}),x(X);var Ce=a(X,2),we=e=>{n(e,ae())},Te=e=>{var t=fe();l(t,20,()=>c(v),e=>e,(e,t)=>{var i=de(),s=d(i),p=d(s);re(p,{get name(){return t}});var m=a(p,2),h=d(m,!0);x(m);var g=a(m,2),_=d(g,!0);x(g);var v=a(g,2),w=d(v);x(v);var T=a(v,2),k=a(T,2);x(s);var A=a(s,2),j=e=>{var i=le();l(i,21,()=>b(t),e=>e.id,(e,i)=>{var o=ce(),s=r(o),p=d(s),m=d(p),h=d(m,!0);x(m);var g=a(m,2),_=d(g,!0);x(g);var v=a(g,2),y=d(v,!0);x(v),x(p),x(s),l(a(s,2),17,()=>I(t,c(i).id),e=>e.assetId,(e,t)=>{let r=f(()=>M.assetById(c(t).assetId));var o=se(),s=d(o),l=d(s),p=d(l,!0);x(l);var m=a(l,2),h=e=>{var t=oe(),i=d(t,!0);x(t),D(()=>u(i,c(r).type)),n(e,t)};E(m,e=>{c(r)&&e(h)});var g=a(m,2),_=d(g);x(g);var v=a(g,2),y=d(v,!0);x(v),x(s),x(o),D((e,n)=>{C(s,`href`,e),u(p,c(t).assetId),u(_,`via ${c(i).id??``}`),u(y,n)},[()=>O(`/asset/[id]`,{id:c(t).assetId}),()=>c(r)?.proxy?N(c(r).proxy.fileSize):`—`]),n(e,o)}),D((e,t)=>{C(p,`href`,e),u(h,c(i).id),u(_,c(i).type),u(y,t)},[()=>O(`/asset/[id]`,{id:c(i).id}),()=>c(i).proxy?N(c(i).proxy.fileSize):`—`]),n(e,o)}),x(i),n(e,i)},P=f(()=>b(t).length>0),F=e=>{n(e,ue())};E(A,e=>{c(P)?e(j):e(F,-1)}),x(i),D((e,n,r,a)=>{y(i,`--manifest-color: ${e??``}`),u(h,t),u(_,n),u(w,`${r??``} asset(s)${a??``}`)},[()=>M.manifestAppearance(t).color??`var(--border-soft)`,()=>N(ee(t)),()=>b(t).length,()=>S(t).length>0?` + ${S(t).length} passive`:``]),o(`click`,T,()=>ne(t)),o(`click`,k,()=>te(t)),n(e,i)}),x(t),n(e,t)};E(Ce,e=>{c(v).length===0?e(we):e(Te,-1)}),x(Y);var $=a(Y,2),Ee=e=>{let t=f(()=>b(c(B)).length);{let i=f(()=>c(U)?`Deleting…`:`Delete`);P(e,{title:`Delete manifest`,get confirmLabel(){return c(i)},danger:!0,get busy(){return c(U)},onConfirm:()=>void ve(),onCancel:K,children:(e,i)=>{var o=pe(),s=r(o),l=a(d(s)),f=d(l,!0);x(l);var p=a(l);x(s);var m=a(s,2),h=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(W))),n(e,t)};E(m,e=>{c(W)&&e(h)}),D(()=>{u(f,c(B)),u(p,`? Its generated module is removed. Assets are
2
- not deleted${c(t)>0?`, but ${c(t)} asset(s) lose this membership and may become unreachable`:``}.`)}),n(e,o)},$$slots:{default:!0}})}};E($,e=>{c(B)!==null&&e(Ee)});var De=a($,2),Oe=e=>{{let t=f(()=>c(U)?`Renaming…`:`Rename`),s=f(()=>!c(_e));P(e,{title:`Rename manifest`,get confirmLabel(){return c(t)},get confirmDisabled(){return c(s)},get busy(){return c(U)},onConfirm:()=>void ye(),onCancel:K,children:(e,t)=>{var s=he(),l=r(s),f=a(d(l),2);g(f),x(l);var p=a(l,2),m=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(q))),n(e,t)},h=e=>{n(e,me())};E(p,e=>{c(q)?e(m):c(J)&&e(h,1)});var _=a(p,2),v=a(d(_)),y=d(v,!0);x(v),w(),x(_);var b=a(_,2),S=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(W))),n(e,t)};E(b,e=>{c(W)&&e(S)}),D(()=>{f.disabled=c(U),u(y,c(V))}),o(`keydown`,f,e=>{e.key===`Enter`&&ye()}),T(f,()=>c(H),e=>i(H,e)),n(e,s)},$$slots:{default:!0}})}};E(De,e=>{c(V)!==null&&e(Oe)}),D(()=>Q.disabled=!c(R)),o(`keydown`,Z,e=>{e.key===`Enter`&&z()}),T(Z,()=>c(m),e=>i(m,e)),o(`click`,Q,()=>void z()),n(t,be),e()}S([`keydown`,`click`]);export{K as component};
1
+ import{$ as e,B as t,E as n,G as r,J as i,K as a,M as o,O as s,P as c,S as l,T as u,W as d,X as f,Y as p,a as m,b as h,c as g,et as _,g as v,h as y,i as b,it as x,j as S,l as C,rt as w,s as T,w as E,z as D}from"../chunks/CNRz3sSw.js";import{c as O}from"../chunks/DVEDrSOn.js";import"../chunks/xihTtKlq.js";import{d as k,r as A,s as j,t as M}from"../chunks/cznBUb-E.js";import{b as N,n as P,t as F}from"../chunks/CQsKwm8E.js";var I=[{name:`slate`,value:`#64748b`},{name:`red`,value:`#ef4444`},{name:`orange`,value:`#f97316`},{name:`amber`,value:`#f59e0b`},{name:`yellow`,value:`#eab308`},{name:`lime`,value:`#84cc16`},{name:`green`,value:`#22c55e`},{name:`teal`,value:`#14b8a6`},{name:`cyan`,value:`#06b6d4`},{name:`blue`,value:`#3b82f6`},{name:`indigo`,value:`#6366f1`},{name:`violet`,value:`#8b5cf6`},{name:`pink`,value:`#ec4899`}],ee=`🗂️.🏠.🎯.⭐.🔥.💎.🎨.🧩.🚀.🎵.🏆.⚡.🌟.🍀.🎁.📦.🗺️.🔑.🛒.❤️.🐙.🎲.🌈.🧪.🎪.🎭.🎬.🎤.🎧.🎸.🥁.🔔.💡.🔮.🧭.⏰.📸.🖼️.📚.✏️.🖌️.🧲.⚙️.🛠️.🔧.🧰.🔌.🔋.🌍.🌙.☀️.❄️.🌊.🍄.🌵.🌸.🍎.🍕.🍩.☕.🐳.🦄.🐝`.split(`.`),L=s(`<div role="dialog"><!></div>`),R=s(`<div class="popover-anchor svelte-1rznwff"><!> <!></div>`);function z(r,o){_(o,!0);let s=b(o,`open`,15,!1),l=b(o,`align`,3,`left`),u=p(void 0);function f(){s(!s())}t(()=>{if(!s())return;function e(e){c(u)&&!c(u).contains(e.target)&&s(!1)}function t(e){e.key===`Escape`&&s(!1)}return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});var g=R(),y=d(g);h(y,()=>o.trigger,()=>({toggle:f,open:s()}));var S=a(y,2),w=e=>{var t=L();let r;h(d(t),()=>o.children),x(t),D(()=>{r=v(t,1,`popover svelte-1rznwff`,null,r,{right:l()===`right`}),C(t,`aria-label`,o.label)}),n(e,t)};E(S,e=>{s()&&e(w)}),x(g),m(g,e=>i(u,e),()=>c(u)),n(r,g),e()}var B=s(`<button type="button" title="Emoji"> </button>`),V=s(`<button type="button"> </button>`),H=s(`<div class="picker emojis svelte-58t64l"><button type="button" title="No emoji" aria-label="No emoji">∅</button> <!></div>`),U=s(`<button type="button" title="Color"></button>`),W=s(`<button type="button"></button>`),te=s(`<div class="picker swatches svelte-58t64l"><button type="button" title="No color" aria-label="No color"></button> <!></div>`),ne=s(`<div class="controls svelte-58t64l"><!> <!></div>`);function re(t,r){_(r,!0);let s=f(()=>M.manifestAppearance(r.name)),m=f(()=>c(s).color??null),h=f(()=>c(s).emoji??null),g=p(!1),b=p(!1);async function S(e){i(g,!1);try{await M.mutate(()=>k(r.name,{color:e}))}catch{}}async function w(e){i(b,!1);try{await M.mutate(()=>k(r.name,{emoji:e}))}catch{}}var T=ne(),E=d(T);z(E,{get label(){return`Pick an emoji for ${r.name??``}`},get open(){return c(b)},set open(e){i(b,e,!0)},trigger:(e,t)=>{let i=()=>(t?.()).toggle,a=()=>(t?.()).open;var s=B();let l;var f=d(s,!0);x(s),D(()=>{l=v(s,1,`emoji-trigger svelte-58t64l`,null,l,{empty:!c(h),active:a()}),C(s,`aria-label`,`Emoji for ${r.name??``}`),u(f,c(h)??`☺`)}),o(`click`,s,function(...e){i()?.apply(this,e)}),n(e,s)},children:(e,t)=>{var r=H(),i=d(r);let s;l(a(i,2),16,()=>ee,e=>e,(e,t)=>{var r=V();let i;var a=d(r,!0);x(r),D(()=>{i=v(r,1,`emoji svelte-58t64l`,null,i,{selected:c(h)===t}),C(r,`title`,t),u(a,t)}),o(`click`,r,()=>void w(t)),n(e,r)}),x(r),D(()=>s=v(i,1,`emoji none svelte-58t64l`,null,s,{selected:c(h)===null})),o(`click`,i,()=>void w(null)),n(e,r)},$$slots:{trigger:!0,default:!0}}),z(a(E,2),{get label(){return`Pick a color for ${r.name??``}`},get open(){return c(g)},set open(e){i(g,e,!0)},trigger:(e,t)=>{let i=()=>(t?.()).toggle,a=()=>(t?.()).open;var s=U();let l;D(()=>{l=v(s,1,`swatch-trigger svelte-58t64l`,null,l,{empty:!c(m),active:a()}),y(s,`--swatch: ${c(m)??`transparent`??``}`),C(s,`aria-label`,`Color for ${r.name??``}`)}),o(`click`,s,function(...e){i()?.apply(this,e)}),n(e,s)},children:(e,t)=>{var r=te(),i=d(r);let s;l(a(i,2),17,()=>I,e=>e.value,(e,t)=>{var r=W();let i;D(()=>{i=v(r,1,`swatch svelte-58t64l`,null,i,{selected:c(m)===c(t).value}),y(r,`background: ${c(t).value??``}`),C(r,`title`,c(t).name),C(r,`aria-label`,c(t).name)}),o(`click`,r,()=>void S(c(t).value)),n(e,r)}),x(r),D(()=>s=v(i,1,`swatch none svelte-58t64l`,null,s,{selected:c(m)===null})),o(`click`,i,()=>void S(null)),n(e,r)},$$slots:{trigger:!0,default:!0}}),x(T),n(t,T),e()}S([`click`]);var ie=s(`<span class="hint svelte-1k9wgg5"> </span>`),ae=s(`<div class="empty svelte-1k9wgg5">No manifests yet. Assets only get processed and generated once they are in a manifest.</div>`),oe=s(`<span class="asset-type svelte-1k9wgg5"> </span>`),se=s(`<li class="passive-member svelte-1k9wgg5"><a class="svelte-1k9wgg5"><span class="asset-id passive-id svelte-1k9wgg5"> </span> <!> <span class="asset-via svelte-1k9wgg5"> </span> <span class="asset-size svelte-1k9wgg5"> </span></a></li>`),ce=s(`<li class="svelte-1k9wgg5"><a class="svelte-1k9wgg5"><span class="asset-id svelte-1k9wgg5"> </span> <span class="asset-type svelte-1k9wgg5"> </span> <span class="asset-size svelte-1k9wgg5"> </span></a></li> <!>`,1),le=s(`<ul class="svelte-1k9wgg5"></ul>`),ue=s(`<p class="hint svelte-1k9wgg5">Empty — an empty manifest still generates an (empty) module.</p>`),de=s(`<section class="manifest svelte-1k9wgg5"><header class="svelte-1k9wgg5"><!> <h2 class="svelte-1k9wgg5"> </h2> <span class="size svelte-1k9wgg5" title="Total delivered proxy size incl. the reference closure — the preload budget"> </span> <span class="count svelte-1k9wgg5"> </span> <button class="control">Rename</button> <button class="control danger">Delete</button></header> <!></section>`),fe=s(`<div class="list svelte-1k9wgg5"></div>`),G=s(`<p class="dialog-text warn svelte-1k9wgg5"> </p>`),pe=s(`<p class="dialog-text svelte-1k9wgg5">Delete manifest <strong> </strong> </p> <!>`,1),me=s(`<p class="dialog-text warn svelte-1k9wgg5">A manifest with this name already exists.</p>`),he=s(`<label class="dialog-row svelte-1k9wgg5"><span class="dialog-label svelte-1k9wgg5">Name</span> <input class="control svelte-1k9wgg5" type="text" spellcheck="false"/></label> <!> <p class="dialog-text svelte-1k9wgg5">The generated module is renamed with the manifest — host code importing <code> </code> must be updated by hand.</p> <!>`,1),ge=s(`<div class="page svelte-1k9wgg5"><div class="create svelte-1k9wgg5"><input class="control svelte-1k9wgg5" type="text" placeholder="newManifestName" spellcheck="false"/> <button class="control primary">Create manifest</button> <!></div> <!></div> <!> <!>`,1);function K(t,s){_(s,!0);let m=p(``),h=f(()=>M.state?.assets??[]),v=f(()=>M.manifestNames);function b(e){return c(h).filter(t=>t.manifests.includes(e))}function S(e){return M.state?.manifestMemberships[e]?.passiveMembers??[]}function I(e,t){return S(e).filter(e=>e.via.includes(t))}function ee(e){return M.state?.manifestDeliveredBytes[e]??0}let L=f(()=>c(m)?N(c(m)):null),R=f(()=>c(m)!==``&&!c(L)&&!c(v).includes(c(m)));async function z(){if(c(R))try{await M.mutate(()=>A(c(m))),i(m,``)}catch{}}let B=p(null),V=p(null),H=p(``),U=p(!1),W=p(null);function te(e){i(W,null),i(B,e,!0)}function ne(e){i(W,null),i(H,e,!0),i(V,e,!0)}function K(){i(B,null),i(V,null),i(W,null)}let q=f(()=>c(V)!==null&&c(H)!==c(V)?N(c(H)):null),J=f(()=>c(V)!==null&&c(H)!==c(V)&&c(v).includes(c(H))),_e=f(()=>c(V)!==null&&c(H)!==c(V)&&!c(q)&&!c(J));async function ve(){if(c(B)===null)return;let e=c(B);i(U,!0),i(W,null);try{await M.mutate(()=>j(e)),K()}catch(e){i(W,e instanceof Error?e.message:String(e),!0)}finally{i(U,!1)}}async function ye(){if(c(V)===null||!c(_e))return;let e=c(V),t=c(H);i(U,!0),i(W,null);try{await M.mutate(()=>k(e,{renameTo:t})),K()}catch(e){i(W,e instanceof Error?e.message:String(e),!0)}finally{i(U,!1)}}var be=ge(),Y=r(be),X=d(Y),Z=d(X);g(Z);var Q=a(Z,2),xe=a(Q,2),Se=e=>{var t=ie(),r=d(t,!0);x(t),D(()=>u(r,c(L))),n(e,t)};E(xe,e=>{c(L)&&e(Se)}),x(X);var Ce=a(X,2),we=e=>{n(e,ae())},Te=e=>{var t=fe();l(t,20,()=>c(v),e=>e,(e,t)=>{var i=de(),s=d(i),p=d(s);re(p,{get name(){return t}});var m=a(p,2),h=d(m,!0);x(m);var g=a(m,2),_=d(g,!0);x(g);var v=a(g,2),w=d(v);x(v);var T=a(v,2),k=a(T,2);x(s);var A=a(s,2),j=e=>{var i=le();l(i,21,()=>b(t),e=>e.id,(e,i)=>{var o=ce(),s=r(o),p=d(s),m=d(p),h=d(m,!0);x(m);var g=a(m,2),_=d(g,!0);x(g);var v=a(g,2),y=d(v,!0);x(v),x(p),x(s),l(a(s,2),17,()=>I(t,c(i).id),e=>e.assetId,(e,t)=>{let r=f(()=>M.assetById(c(t).assetId));var o=se(),s=d(o),l=d(s),p=d(l,!0);x(l);var m=a(l,2),h=e=>{var t=oe(),i=d(t,!0);x(t),D(()=>u(i,c(r).type)),n(e,t)};E(m,e=>{c(r)&&e(h)});var g=a(m,2),_=d(g);x(g);var v=a(g,2),y=d(v,!0);x(v),x(s),x(o),D((e,n)=>{C(s,`href`,e),u(p,c(t).assetId),u(_,`via ${c(i).id??``}`),u(y,n)},[()=>O(`/asset/[id]`,{id:c(t).assetId}),()=>c(r)?.proxy?P(c(r).proxy.fileSize):`—`]),n(e,o)}),D((e,t)=>{C(p,`href`,e),u(h,c(i).id),u(_,c(i).type),u(y,t)},[()=>O(`/asset/[id]`,{id:c(i).id}),()=>c(i).proxy?P(c(i).proxy.fileSize):`—`]),n(e,o)}),x(i),n(e,i)},N=f(()=>b(t).length>0),F=e=>{n(e,ue())};E(A,e=>{c(N)?e(j):e(F,-1)}),x(i),D((e,n,r,a)=>{y(i,`--manifest-color: ${e??``}`),u(h,t),u(_,n),u(w,`${r??``} asset(s)${a??``}`)},[()=>M.manifestAppearance(t).color??`var(--border-soft)`,()=>P(ee(t)),()=>b(t).length,()=>S(t).length>0?` + ${S(t).length} passive`:``]),o(`click`,T,()=>ne(t)),o(`click`,k,()=>te(t)),n(e,i)}),x(t),n(e,t)};E(Ce,e=>{c(v).length===0?e(we):e(Te,-1)}),x(Y);var $=a(Y,2),Ee=e=>{let t=f(()=>b(c(B)).length);{let i=f(()=>c(U)?`Deleting…`:`Delete`);F(e,{title:`Delete manifest`,get confirmLabel(){return c(i)},danger:!0,get busy(){return c(U)},onConfirm:()=>void ve(),onCancel:K,children:(e,i)=>{var o=pe(),s=r(o),l=a(d(s)),f=d(l,!0);x(l);var p=a(l);x(s);var m=a(s,2),h=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(W))),n(e,t)};E(m,e=>{c(W)&&e(h)}),D(()=>{u(f,c(B)),u(p,`? Its generated module is removed. Assets are
2
+ not deleted${c(t)>0?`, but ${c(t)} asset(s) lose this membership and may become unreachable`:``}.`)}),n(e,o)},$$slots:{default:!0}})}};E($,e=>{c(B)!==null&&e(Ee)});var De=a($,2),Oe=e=>{{let t=f(()=>c(U)?`Renaming…`:`Rename`),s=f(()=>!c(_e));F(e,{title:`Rename manifest`,get confirmLabel(){return c(t)},get confirmDisabled(){return c(s)},get busy(){return c(U)},onConfirm:()=>void ye(),onCancel:K,children:(e,t)=>{var s=he(),l=r(s),f=a(d(l),2);g(f),x(l);var p=a(l,2),m=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(q))),n(e,t)},h=e=>{n(e,me())};E(p,e=>{c(q)?e(m):c(J)&&e(h,1)});var _=a(p,2),v=a(d(_)),y=d(v,!0);x(v),w(),x(_);var b=a(_,2),S=e=>{var t=G(),r=d(t,!0);x(t),D(()=>u(r,c(W))),n(e,t)};E(b,e=>{c(W)&&e(S)}),D(()=>{f.disabled=c(U),u(y,c(V))}),o(`keydown`,f,e=>{e.key===`Enter`&&ye()}),T(f,()=>c(H),e=>i(H,e)),n(e,s)},$$slots:{default:!0}})}};E(De,e=>{c(V)!==null&&e(Oe)}),D(()=>Q.disabled=!c(R)),o(`keydown`,Z,e=>{e.key===`Enter`&&z()}),T(Z,()=>c(m),e=>i(m,e)),o(`click`,Q,()=>void z()),n(t,be),e()}S([`keydown`,`click`]);export{K as component};
@@ -1 +1 @@
1
- {"version":"1783982340628"}
1
+ {"version":"1784016204951"}
Binary file
Binary file
package/build/handler.js CHANGED
@@ -2,9 +2,9 @@ import './shims.js';
2
2
  import 'node:fs';
3
3
  import 'node:path';
4
4
  import 'node:process';
5
- export { h as handler } from './server/chunks/handler-DnbS2t1B.js';
6
- import './server/chunks/index.js-g77q3Boj.js';
7
- import './server/chunks/manifest.js-qmEXbstS.js';
5
+ export { h as handler } from './server/chunks/handler-Dcc_-rVh.js';
6
+ import './server/chunks/index.js-DoVHd4mf.js';
7
+ import './server/chunks/manifest.js-C_MsDhaa.js';
8
8
  import './env.js';
9
9
  import 'node:buffer';
10
10
  import 'node:crypto';
@@ -12,11 +12,11 @@ import 'node:http';
12
12
  import 'node:timers';
13
13
  import 'node:querystring';
14
14
  import 'node:stream';
15
- import './server/chunks/chunks/shared.js-B1gC9MiJ.js';
16
- import './server/chunks/chunks/internal.js-DGo2jPcg.js';
17
- import './server/chunks/chunks/utils.js-DnEJ3UjO.js';
15
+ import './server/chunks/chunks/shared.js-CHQOW_GN.js';
16
+ import './server/chunks/chunks/internal.js-ClSxY3uX.js';
17
+ import './server/chunks/chunks/utils.js-B9L6I-_K.js';
18
18
  import 'node:url';
19
19
  import './server/chunks/chunks/internal2.js-BlXt2rfE.js';
20
- import './server/chunks/chunks/exports.js-C0rwMMtk.js';
20
+ import './server/chunks/chunks/exports.js-B4E0NJIt.js';
21
21
  import './server/chunks/chunks/routing.js-y-tryuip.js';
22
22
  //# sourceMappingURL=handler.js.map
package/build/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import http from 'node:http';
2
2
  import fs__default from 'node:fs';
3
3
  import process from 'node:process';
4
- import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-DnbS2t1B.js';
4
+ import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-Dcc_-rVh.js';
5
5
  import { env, timeout_env } from './env.js';
6
6
  import { rm } from 'node:fs/promises';
7
7
  import './shims.js';
@@ -11,14 +11,14 @@ import 'node:path';
11
11
  import 'node:timers';
12
12
  import 'node:querystring';
13
13
  import 'node:stream';
14
- import './server/chunks/chunks/shared.js-B1gC9MiJ.js';
15
- import './server/chunks/chunks/internal.js-DGo2jPcg.js';
16
- import './server/chunks/chunks/utils.js-DnEJ3UjO.js';
17
- import './server/chunks/index.js-g77q3Boj.js';
14
+ import './server/chunks/chunks/shared.js-CHQOW_GN.js';
15
+ import './server/chunks/chunks/internal.js-ClSxY3uX.js';
16
+ import './server/chunks/chunks/utils.js-B9L6I-_K.js';
17
+ import './server/chunks/index.js-DoVHd4mf.js';
18
18
  import './server/chunks/chunks/internal2.js-BlXt2rfE.js';
19
- import './server/chunks/chunks/exports.js-C0rwMMtk.js';
19
+ import './server/chunks/chunks/exports.js-B4E0NJIt.js';
20
20
  import './server/chunks/chunks/routing.js-y-tryuip.js';
21
- import './server/chunks/manifest.js-qmEXbstS.js';
21
+ import './server/chunks/manifest.js-C_MsDhaa.js';
22
22
  import 'node:url';
23
23
 
24
24
  const path = env('SOCKET_PATH', false);
@@ -1,6 +1,6 @@
1
1
  import './core.js-xfrkaQpS.js';
2
2
  import { r as rawFileNameOfPath, f as folderOfRawPath } from './folder-path.js-ytx9ucgg.js';
3
- import { s as serverPluginsByType, i as isRecord, L as LibraryStore, a as serverPluginForType, p as processAssets, g as generateManifestModules, c as collectAllReferences, d as descriptorsByType, b as computeLibraryMembership, e as allDeliveredAssetIds, f as compareCodeUnits, r as readCurrentProxy, h as encodeRelativePathForUrl } from './library-store.js-ZLudCJlT.js';
3
+ import { s as serverPluginsByType, i as isRecord, L as LibraryStore, a as serverPluginForType, p as processAssets, g as generateManifestModules, c as collectAllReferences, d as descriptorsByType, b as computeLibraryMembership, e as allDeliveredAssetIds, f as compareCodeUnits, r as readCurrentProxy, h as encodeRelativePathForUrl } from './library-store.js-CZCDpai0.js';
4
4
  import { isAbsolute, resolve, join } from 'node:path';
5
5
  import { existsSync } from 'node:fs';
6
6
  import { createJiti } from 'jiti';
@@ -159,6 +159,10 @@ var FundusOperations = class {
159
159
  async moveAsset(id, folder) {
160
160
  return this.#afterMutation(await this.#store.moveAsset(id, folder));
161
161
  }
162
+ /** Replace the raw bytes/name and run the normal processing + codegen tail. */
163
+ async replaceRawFile(id, options) {
164
+ return this.#afterMutation(await this.#store.replaceRawFile(id, options));
165
+ }
162
166
  /** Move a selected asset set as one editor action and roll back on any failure. */
163
167
  async moveAssets(assetIds, folder) {
164
168
  const uniqueIds = [...new Set(assetIds)];
@@ -335,7 +339,7 @@ var FundusOperations = class {
335
339
  type: record.type,
336
340
  raw: record.raw,
337
341
  folder: folderOfRawPath(record.raw),
338
- rawUrl: `/files/raw/${encodeRelativePathForUrl(record.raw)}`,
342
+ rawUrl: `/files/raw/${encodeRelativePathForUrl(record.raw)}?v=${record.rawHash.slice(0, 12)}`,
339
343
  rawHash: record.rawHash,
340
344
  parameters: record.parameters,
341
345
  manifests: record.manifests,
@@ -426,4 +430,4 @@ async function createFundusContext() {
426
430
  }
427
431
 
428
432
  export { getFundusContext as g, initializeFundusContext as i };
429
- //# sourceMappingURL=context.js-BUZqFfWG.js.map
433
+ //# sourceMappingURL=context.js-CGD-b_vR.js.map