fundus 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +73 -0
- package/build/client/_app/immutable/assets/0.DLhIsYA_.css.br +0 -0
- package/build/client/_app/immutable/assets/0.DLhIsYA_.css.gz +0 -0
- package/build/client/_app/immutable/assets/2.ohi-TClG.css +1 -0
- package/build/client/_app/immutable/assets/2.ohi-TClG.css.br +0 -0
- package/build/client/_app/immutable/assets/2.ohi-TClG.css.gz +0 -0
- package/build/client/_app/immutable/assets/3.JwgtcTEd.css +1 -0
- package/build/client/_app/immutable/assets/3.JwgtcTEd.css.br +0 -0
- package/build/client/_app/immutable/assets/3.JwgtcTEd.css.gz +0 -0
- package/build/client/_app/immutable/assets/4.p004hmEN.css +1 -0
- package/build/client/_app/immutable/assets/4.p004hmEN.css.br +0 -0
- package/build/client/_app/immutable/assets/4.p004hmEN.css.gz +0 -0
- package/build/client/_app/immutable/assets/ConfirmDialog.BdKlitwi.css +1 -0
- package/build/client/_app/immutable/assets/ConfirmDialog.BdKlitwi.css.br +0 -0
- package/build/client/_app/immutable/assets/ConfirmDialog.BdKlitwi.css.gz +0 -0
- package/build/client/_app/immutable/assets/LibraryContextMenu.CMefGNE2.css +1 -0
- package/build/client/_app/immutable/assets/LibraryContextMenu.CMefGNE2.css.br +0 -0
- package/build/client/_app/immutable/assets/LibraryContextMenu.CMefGNE2.css.gz +0 -0
- package/build/client/_app/immutable/chunks/Bjy-W4x2.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bjy-W4x2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CNRz3sSw.js.br +0 -0
- package/build/client/_app/immutable/chunks/CNRz3sSw.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CO4RBJfa.js.br +0 -0
- package/build/client/_app/immutable/chunks/CO4RBJfa.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DOpBpjxS.js +108 -0
- package/build/client/_app/immutable/chunks/DOpBpjxS.js.br +0 -0
- package/build/client/_app/immutable/chunks/DOpBpjxS.js.gz +0 -0
- package/{dist/editor/_app/immutable/chunks/BfPE5wdt.js → build/client/_app/immutable/chunks/DVEQFclp.js} +1 -1
- package/build/client/_app/immutable/chunks/DVEQFclp.js.br +1 -0
- package/build/client/_app/immutable/chunks/DVEQFclp.js.gz +0 -0
- package/{dist/editor/_app/immutable/chunks/DjvOiDmq.js → build/client/_app/immutable/chunks/DiFoWL2c.js} +1 -1
- package/build/client/_app/immutable/chunks/DiFoWL2c.js.br +0 -0
- package/build/client/_app/immutable/chunks/DiFoWL2c.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkADHpZF.js +1 -0
- package/build/client/_app/immutable/chunks/DkADHpZF.js.br +0 -0
- package/build/client/_app/immutable/chunks/DkADHpZF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/xihTtKlq.js.br +1 -0
- package/build/client/_app/immutable/chunks/xihTtKlq.js.gz +0 -0
- package/{dist/editor/_app/immutable/entry/app.BkqbfI8n.js → build/client/_app/immutable/entry/app.CKgtYXQb.js} +2 -2
- package/build/client/_app/immutable/entry/app.CKgtYXQb.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CKgtYXQb.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CYZu5qE1.js +1 -0
- package/build/client/_app/immutable/entry/start.CYZu5qE1.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CYZu5qE1.js.gz +0 -0
- package/{dist/editor/_app/immutable/nodes/0.xdMI5GEU.js → build/client/_app/immutable/nodes/0.I_1SApYQ.js} +1 -1
- package/build/client/_app/immutable/nodes/0.I_1SApYQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.I_1SApYQ.js.gz +0 -0
- package/{dist/editor/_app/immutable/nodes/1.D9p2tfoJ.js → build/client/_app/immutable/nodes/1.v6eUTnWq.js} +1 -1
- package/build/client/_app/immutable/nodes/1.v6eUTnWq.js.br +2 -0
- package/build/client/_app/immutable/nodes/1.v6eUTnWq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DoA7Dfl-.js +3 -0
- package/build/client/_app/immutable/nodes/2.DoA7Dfl-.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DoA7Dfl-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.C-DO70Bs.js +1 -0
- package/build/client/_app/immutable/nodes/3.C-DO70Bs.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.C-DO70Bs.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.CALOuSyz.js +2 -0
- package/build/client/_app/immutable/nodes/4.CALOuSyz.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.CALOuSyz.js.gz +0 -0
- package/build/client/_app/version.json +1 -0
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/env.js +100 -0
- package/build/env.js.map +1 -0
- package/build/handler.js +22 -0
- package/build/handler.js.map +1 -0
- package/build/index.js +145 -0
- package/build/index.js.map +1 -0
- package/build/server/chunks/chunks/context.js-BUZqFfWG.js +429 -0
- package/build/server/chunks/chunks/context.js-BUZqFfWG.js.map +1 -0
- package/build/server/chunks/chunks/core.js-xfrkaQpS.js +458 -0
- package/build/server/chunks/chunks/core.js-xfrkaQpS.js.map +1 -0
- package/build/server/chunks/chunks/env.js-l0sNRNKZ.js +2 -0
- package/build/server/chunks/chunks/env.js-l0sNRNKZ.js.map +1 -0
- package/build/server/chunks/chunks/exports.js-C0rwMMtk.js +152 -0
- package/build/server/chunks/chunks/exports.js-C0rwMMtk.js.map +1 -0
- package/build/server/chunks/chunks/folder-path.js-ytx9ucgg.js +64 -0
- package/build/server/chunks/chunks/folder-path.js-ytx9ucgg.js.map +1 -0
- package/build/server/chunks/chunks/http.js-DvopzwKh.js +100 -0
- package/build/server/chunks/chunks/http.js-DvopzwKh.js.map +1 -0
- package/build/server/chunks/chunks/internal.js-DGo2jPcg.js +5753 -0
- package/build/server/chunks/chunks/internal.js-DGo2jPcg.js.map +1 -0
- package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js +22 -0
- package/build/server/chunks/chunks/internal2.js-BlXt2rfE.js.map +1 -0
- package/{dist/operations-DYM-5KVl.js → build/server/chunks/chunks/library-store.js-ZLudCJlT.js} +463 -492
- package/build/server/chunks/chunks/library-store.js-ZLudCJlT.js.map +1 -0
- package/build/server/chunks/chunks/manifest-appearance.js-DTk355LQ.js +146 -0
- package/build/server/chunks/chunks/manifest-appearance.js-DTk355LQ.js.map +1 -0
- package/build/server/chunks/chunks/routing.js-y-tryuip.js +213 -0
- package/build/server/chunks/chunks/routing.js-y-tryuip.js.map +1 -0
- package/build/server/chunks/chunks/shared.js-B1gC9MiJ.js +255 -0
- package/build/server/chunks/chunks/shared.js-B1gC9MiJ.js.map +1 -0
- package/build/server/chunks/chunks/utils.js-DnEJ3UjO.js +1048 -0
- package/build/server/chunks/chunks/utils.js-DnEJ3UjO.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/_...path_/_server.ts.js-Cq5gXVQT.js +27 -0
- package/build/server/chunks/entries/endpoints/api/_...path_/_server.ts.js-Cq5gXVQT.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/assets/_id_/_server.ts.js-RXbedi8q.js +24 -0
- package/build/server/chunks/entries/endpoints/api/assets/_id_/_server.ts.js-RXbedi8q.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/assets/_server.ts.js-D7Qae9vU.js +45 -0
- package/build/server/chunks/entries/endpoints/api/assets/_server.ts.js-D7Qae9vU.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/assets/delete/_server.ts.js-DtO20kgB.js +31 -0
- package/build/server/chunks/entries/endpoints/api/assets/delete/_server.ts.js-DtO20kgB.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/assets/move/_server.ts.js-BUebPbd5.js +31 -0
- package/build/server/chunks/entries/endpoints/api/assets/move/_server.ts.js-BUebPbd5.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/folders/_path_/_server.ts.js-BjT2qPMT.js +38 -0
- package/build/server/chunks/entries/endpoints/api/folders/_path_/_server.ts.js-BjT2qPMT.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/folders/_server.ts.js-DYRLsoT7.js +31 -0
- package/build/server/chunks/entries/endpoints/api/folders/_server.ts.js-DYRLsoT7.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/manifests/_name_/_server.ts.js-BbN2fGNN.js +24 -0
- package/build/server/chunks/entries/endpoints/api/manifests/_name_/_server.ts.js-BbN2fGNN.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/manifests/_server.ts.js-b_MKZ41b.js +31 -0
- package/build/server/chunks/entries/endpoints/api/manifests/_server.ts.js-b_MKZ41b.js.map +1 -0
- package/build/server/chunks/entries/endpoints/api/state/_server.ts.js-evEfMpvn.js +24 -0
- package/build/server/chunks/entries/endpoints/api/state/_server.ts.js-evEfMpvn.js.map +1 -0
- package/build/server/chunks/entries/endpoints/files/_...path_/_server.ts.js-C04XE_1w.js +27 -0
- package/build/server/chunks/entries/endpoints/files/_...path_/_server.ts.js-C04XE_1w.js.map +1 -0
- package/build/server/chunks/entries/endpoints/files/proxy/_...path_/_server.ts.js-DB8TdoEv.js +24 -0
- package/build/server/chunks/entries/endpoints/files/proxy/_...path_/_server.ts.js-DB8TdoEv.js.map +1 -0
- package/build/server/chunks/entries/endpoints/files/raw/_...path_/_server.ts.js-BrpaijZO.js +24 -0
- package/build/server/chunks/entries/endpoints/files/raw/_...path_/_server.ts.js-BrpaijZO.js.map +1 -0
- package/build/server/chunks/entries/hooks.server.js-BJJwZW_I.js +23 -0
- package/build/server/chunks/entries/hooks.server.js-BJJwZW_I.js.map +1 -0
- package/build/server/chunks/handler-DnbS2t1B.js +1475 -0
- package/build/server/chunks/handler-DnbS2t1B.js.map +1 -0
- package/build/server/chunks/index.js-g77q3Boj.js +3789 -0
- package/build/server/chunks/index.js-g77q3Boj.js.map +1 -0
- package/build/server/chunks/manifest.js-qmEXbstS.js +149 -0
- package/build/server/chunks/manifest.js-qmEXbstS.js.map +1 -0
- package/build/server/chunks/nodes/0.js-Bk6IZ-vD.js +11 -0
- package/build/server/chunks/nodes/0.js-Bk6IZ-vD.js.map +1 -0
- package/build/server/chunks/nodes/1.js-H-qwo4GJ.js +7 -0
- package/build/server/chunks/nodes/1.js-H-qwo4GJ.js.map +1 -0
- package/build/server/chunks/nodes/2.js-DRpXVLwp.js +7 -0
- package/build/server/chunks/nodes/2.js-DRpXVLwp.js.map +1 -0
- package/build/server/chunks/nodes/3.js-CDEzNFeU.js +7 -0
- package/build/server/chunks/nodes/3.js-CDEzNFeU.js.map +1 -0
- package/build/server/chunks/nodes/4.js-BKL7LSSm.js +7 -0
- package/build/server/chunks/nodes/4.js-BKL7LSSm.js.map +1 -0
- package/build/shims.js +33 -0
- package/build/shims.js.map +1 -0
- package/dist/cli.d.ts +2 -1
- package/dist/cli.js +116 -1336
- package/dist/config.d.ts +3 -2
- package/dist/config.js +2 -2
- package/dist/core/api-types.d.ts +141 -0
- package/dist/core/api-types.js +1 -0
- package/dist/core/asset-id.d.ts +28 -0
- package/dist/core/asset-id.js +59 -0
- package/dist/core/asset-reference.d.ts +23 -0
- package/dist/core/asset-reference.js +15 -0
- package/dist/core/canonicalize.d.ts +9 -0
- package/dist/core/canonicalize.js +36 -0
- package/dist/core/chroma-key.d.ts +30 -0
- package/dist/core/chroma-key.js +55 -0
- package/dist/core/config.d.ts +35 -0
- package/dist/core/config.js +4 -0
- package/dist/core/folder-path.d.ts +19 -0
- package/dist/core/folder-path.js +86 -0
- package/dist/core/index.d.ts +33 -499
- package/dist/core/index.js +17 -962
- package/dist/core/ingest.d.ts +24 -0
- package/dist/core/ingest.js +42 -0
- package/dist/core/library.d.ts +54 -0
- package/dist/core/library.js +138 -0
- package/dist/core/manifest-appearance.d.ts +35 -0
- package/dist/core/manifest-appearance.js +123 -0
- package/dist/core/manifest-entry.d.ts +104 -0
- package/dist/core/manifest-entry.js +1 -0
- package/dist/core/manifest-membership.d.ts +56 -0
- package/dist/core/manifest-membership.js +54 -0
- package/dist/core/plugins/audio.d.ts +26 -0
- package/dist/core/plugins/audio.js +44 -0
- package/dist/core/plugins/chroma-key-video.d.ts +29 -0
- package/dist/core/plugins/chroma-key-video.js +69 -0
- package/dist/core/plugins/contract.d.ts +35 -0
- package/dist/core/plugins/contract.js +1 -0
- package/dist/core/plugins/image.d.ts +30 -0
- package/dist/core/plugins/image.js +45 -0
- package/dist/core/plugins/registry.d.ts +16 -0
- package/dist/core/plugins/registry.js +52 -0
- package/dist/core/plugins/slice.d.ts +22 -0
- package/dist/core/plugins/slice.js +60 -0
- package/dist/core/plugins/video.d.ts +45 -0
- package/dist/core/plugins/video.js +77 -0
- package/dist/core/reference-graph.d.ts +41 -0
- package/dist/core/reference-graph.js +138 -0
- package/dist/core/slice-data.d.ts +61 -0
- package/dist/core/slice-data.js +49 -0
- package/dist/runtime/chroma-key-gl.d.ts +40 -22
- package/dist/runtime/chroma-key-gl.js +189 -183
- package/dist/runtime/components/ChromaKeyVideo.svelte +3 -3
- package/dist/runtime/components/ChromaKeyVideo.svelte.d.ts +21 -0
- package/dist/runtime/components/Image.svelte +1 -1
- package/dist/runtime/components/Image.svelte.d.ts +9 -0
- package/dist/runtime/components/Slice.svelte +1 -1
- package/dist/runtime/components/Slice.svelte.d.ts +19 -0
- package/dist/runtime/components/SliceCanvas.svelte +3 -3
- package/dist/runtime/components/SliceCanvas.svelte.d.ts +10 -0
- package/dist/runtime/components/SliceDom.svelte +3 -3
- package/dist/runtime/components/SliceDom.svelte.d.ts +10 -0
- package/dist/runtime/components/Video.svelte +2 -2
- package/dist/runtime/components/Video.svelte.d.ts +18 -0
- package/dist/runtime/geometry.d.ts +55 -35
- package/dist/runtime/geometry.js +186 -191
- package/dist/runtime/index.d.ts +9 -9
- package/dist/runtime/index.js +9 -9
- package/dist/runtime/kind-handlers.d.ts +33 -30
- package/dist/runtime/kind-handlers.js +85 -67
- package/dist/runtime/manifest.d.ts +53 -47
- package/dist/runtime/manifest.js +133 -113
- package/dist/runtime/observe-border-box-size.d.ts +1 -4
- package/dist/runtime/observe-border-box-size.js +9 -10
- package/dist/runtime/preload-registry.d.ts +22 -8
- package/dist/runtime/preload-registry.js +65 -62
- package/dist/server/build.d.ts +8 -0
- package/dist/server/build.js +25 -0
- package/dist/server/check.d.ts +24 -0
- package/dist/server/check.js +199 -0
- package/dist/server/cli-commands.d.ts +25 -0
- package/dist/server/cli-commands.js +1178 -0
- package/dist/server/cli-init.d.ts +3 -0
- package/dist/server/cli-init.js +53 -0
- package/dist/server/cli-io.d.ts +46 -0
- package/dist/server/cli-io.js +105 -0
- package/dist/server/codegen.d.ts +58 -0
- package/dist/server/codegen.js +185 -0
- package/dist/server/config-loader.d.ts +35 -0
- package/dist/server/config-loader.js +79 -0
- package/dist/server/context.d.ts +8 -0
- package/dist/server/context.js +19 -0
- package/dist/server/folder-filesystem.d.ts +7 -0
- package/dist/server/folder-filesystem.js +39 -0
- package/dist/server/http.d.ts +12 -0
- package/dist/server/http.js +100 -0
- package/dist/server/index.d.ts +17 -0
- package/dist/server/index.js +9 -0
- package/dist/server/job-hash.d.ts +10 -0
- package/dist/server/job-hash.js +23 -0
- package/dist/server/library-store.d.ts +82 -0
- package/dist/server/library-store.js +763 -0
- package/dist/server/operations.d.ts +87 -0
- package/dist/server/operations.js +427 -0
- package/dist/server/plugins/audio.d.ts +8 -0
- package/dist/server/plugins/audio.js +41 -0
- package/dist/server/plugins/chroma-key-video.d.ts +9 -0
- package/dist/server/plugins/chroma-key-video.js +40 -0
- package/dist/server/plugins/config.d.ts +13 -0
- package/dist/server/plugins/config.js +32 -0
- package/dist/server/plugins/contract.d.ts +114 -0
- package/dist/server/plugins/contract.js +16 -0
- package/dist/server/plugins/image.d.ts +9 -0
- package/dist/server/plugins/image.js +43 -0
- package/dist/server/plugins/slice.d.ts +15 -0
- package/dist/server/plugins/slice.js +76 -0
- package/dist/server/plugins/video.d.ts +7 -0
- package/dist/server/plugins/video.js +54 -0
- package/dist/server/plugins.d.ts +23 -0
- package/dist/server/plugins.js +35 -0
- package/dist/server/processing/audio-processing.d.ts +17 -0
- package/dist/server/processing/audio-processing.js +46 -0
- package/dist/server/processing/ffmpeg.d.ts +9 -0
- package/dist/server/processing/ffmpeg.js +50 -0
- package/dist/server/processing/image-processing.d.ts +16 -0
- package/dist/server/processing/image-processing.js +26 -0
- package/dist/server/processing/media-probe.d.ts +15 -0
- package/dist/server/processing/media-probe.js +27 -0
- package/dist/server/processing/processor.d.ts +50 -0
- package/dist/server/processing/processor.js +158 -0
- package/dist/server/processing/video-processing.d.ts +35 -0
- package/dist/server/processing/video-processing.js +87 -0
- package/dist/server/server.d.ts +13 -0
- package/dist/server/server.js +57 -0
- package/dist/server/start.d.ts +13 -0
- package/dist/server/start.js +80 -0
- package/package.json +31 -16
- package/dist/build-CZYFLLvl.js +0 -191
- package/dist/core/image-Dqmz8FXS.js +0 -54
- package/dist/core/reference-graph-CjuHbLDw.d.ts +0 -280
- package/dist/core/testing.d.ts +0 -27
- package/dist/core/testing.js +0 -80
- package/dist/editor/200.html +0 -37
- package/dist/editor/_app/immutable/assets/2.DIbbW7U1.css +0 -1
- package/dist/editor/_app/immutable/assets/3.C-9vFQ9A.css +0 -1
- package/dist/editor/_app/immutable/assets/4.BS8ElpOV.css +0 -1
- package/dist/editor/_app/immutable/assets/ConfirmDialog.CHEISE-L.css +0 -1
- package/dist/editor/_app/immutable/assets/LibraryContextMenu.CDjCmdV-.css +0 -1
- package/dist/editor/_app/immutable/chunks/Cx6qtxJg.js +0 -1
- package/dist/editor/_app/immutable/chunks/DjdrdRzT.js +0 -1
- package/dist/editor/_app/immutable/chunks/n7mvYc42.js +0 -5
- package/dist/editor/_app/immutable/entry/start.C8HHOLly.js +0 -1
- package/dist/editor/_app/immutable/nodes/2.BrA0Hyzu.js +0 -3
- package/dist/editor/_app/immutable/nodes/3.WO7tZH_d.js +0 -104
- package/dist/editor/_app/immutable/nodes/4.DQtx17aW.js +0 -2
- package/dist/editor/_app/version.json +0 -1
- package/dist/index.d.ts +0 -370
- package/dist/index.js +0 -4
- package/dist/start-Bhnqt9Dc.js +0 -279
- package/dist/start-D2IXOrni.js +0 -2
- /package/{dist/editor → build/client}/_app/immutable/assets/0.DLhIsYA_.css +0 -0
- /package/{dist/editor → build/client}/_app/immutable/chunks/Bjy-W4x2.js +0 -0
- /package/{dist/editor → build/client}/_app/immutable/chunks/CNRz3sSw.js +0 -0
- /package/{dist/editor → build/client}/_app/immutable/chunks/CO4RBJfa.js +0 -0
- /package/{dist/editor → build/client}/_app/immutable/chunks/xihTtKlq.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.context-menu.svelte-3625lw{z-index:200;background:var(--panel-raised);border:1px solid var(--border);border-radius:6px;width:168px;padding:4px;position:fixed;box-shadow:0 8px 24px #00000073}button.svelte-3625lw{width:100%;color:var(--text);font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;padding:6px 8px}button.svelte-3625lw:hover,button.svelte-3625lw:focus-visible{background:var(--accent-soft);outline:none}button.danger.svelte-3625lw{color:var(--danger)}.manifest-label.svelte-19j400l{align-items:center;gap:4px;min-width:0;display:inline-flex}.emoji.svelte-19j400l{flex:none;line-height:1}.name.svelte-19j400l{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chip.svelte-19j400l{background:color-mix(in srgb, var(--manifest-color) 20%, transparent);color:var(--manifest-color);border-radius:4px;padding:0 5px;font-size:10px}.chip.passive.svelte-19j400l{border:1px dashed var(--manifest-color);background:0 0}.library-view.svelte-1uha8ag{flex:1;min-height:0;display:flex}.page.svelte-1uha8ag{flex:1;min-height:0;padding:16px;position:relative;overflow-y:auto}.selection-bar.svelte-1uha8ag,.filter-bar.svelte-1uha8ag{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.selection-bar.svelte-1uha8ag{margin-bottom:8px}.filter-bar.svelte-1uha8ag{margin-bottom:16px}.selection-summary.svelte-1uha8ag{color:var(--accent);white-space:nowrap;font-weight:600}.toggle.svelte-1uha8ag{color:var(--text-dim);align-items:center;gap:6px;display:inline-flex}.search.svelte-1uha8ag{align-items:center;gap:5px;width:220px;padding:0 6px;display:flex}.search.svelte-1uha8ag:focus-within{border-color:var(--accent)}.search-icon.svelte-1uha8ag{fill:none;width:14px;height:14px;stroke:var(--text-faint);stroke-width:1.5px;stroke-linecap:round;flex:none}.search-input.svelte-1uha8ag{min-width:0;height:100%;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:0}.search.svelte-1uha8ag kbd:where(.svelte-1uha8ag){border:1px solid var(--border);color:var(--text-faint);border-radius:3px;flex:none;padding:1px 4px;font:9px/14px system-ui,sans-serif}.import.svelte-1uha8ag{background:var(--accent);color:var(--text);margin-left:auto}.section.svelte-1uha8ag{margin-bottom:24px}.section.svelte-1uha8ag:last-child{margin-bottom:0}.section-emoji.svelte-1uha8ag{margin-right:6px}.grid.svelte-1uha8ag,.folder-grid.svelte-1uha8ag{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.folder-card.svelte-1uha8ag{background:var(--panel);border:1px solid var(--border-soft);min-width:0;height:60px;color:var(--text);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.folder-card.svelte-1uha8ag:hover,.folder-card.svelte-1uha8ag:focus-visible{border-color:var(--accent);outline:none}.folder-card.drop-target.svelte-1uha8ag{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.folder-card.dragging-folder.svelte-1uha8ag{opacity:.55}.folder-card-icon.svelte-1uha8ag{color:var(--text-dim);flex:none;align-items:center;display:flex}.folder-card-details.svelte-1uha8ag{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.folder-card-details.svelte-1uha8ag strong:where(.svelte-1uha8ag){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.folder-card-details.svelte-1uha8ag span:where(.svelte-1uha8ag),.folder-card-arrow.svelte-1uha8ag{color:var(--text-faint)}.folder-card-arrow.svelte-1uha8ag{flex:none;font-size:18px}.card.svelte-1uha8ag{background:var(--panel);border:1px solid var(--border-soft);border-radius:8px;flex-direction:column;gap:8px;padding:8px;display:flex;position:relative}.card.selected.svelte-1uha8ag{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.asset-select.svelte-1uha8ag{z-index:1;width:16px;height:16px;accent-color:var(--accent);position:absolute;top:12px;left:12px}.card.svelte-1uha8ag:hover{border-color:var(--accent)}.thumbnail.svelte-1uha8ag{border-radius:var(--radius);justify-content:center;align-items:center;height:96px;display:flex;overflow:hidden}.thumbnail.svelte-1uha8ag img:where(.svelte-1uha8ag),.thumbnail.svelte-1uha8ag video:where(.svelte-1uha8ag){object-fit:contain;max-width:100%;max-height:100%}.meta.svelte-1uha8ag{align-items:center;gap:6px;min-width:0;display:flex}.id.svelte-1uha8ag{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.type-badge.svelte-1uha8ag{color:var(--text-dim);border:1px solid var(--border);border-radius:4px;flex:none;margin-left:auto;padding:0 5px;font-size:10px}.badges.svelte-1uha8ag{flex-wrap:wrap;gap:4px;min-height:16px;display:flex}.badge.svelte-1uha8ag{border-radius:4px;padding:0 5px;font-size:10px}.badge.warning.svelte-1uha8ag{background:var(--warning-soft);color:var(--warning)}.empty.svelte-1uha8ag{color:var(--text-dim);text-align:center;padding:48px}.dialog-row.svelte-1uha8ag{align-items:center;gap:8px;display:flex}.dialog-row.svelte-1uha8ag span:where(.svelte-1uha8ag){width:44px;color:var(--text-dim)}.dialog-row.svelte-1uha8ag input:where(.svelte-1uha8ag){flex:1}.dialog-text.svelte-1uha8ag,.dialog-warning.svelte-1uha8ag{margin:8px 0 0}.dialog-warning.svelte-1uha8ag{color:var(--warning)}.drop-hint.svelte-1uha8ag{border:2px dashed var(--accent);color:var(--accent);pointer-events:none;background:#0d99ff14;border-radius:12px;justify-content:center;align-items:center;font-size:14px;display:flex;position:fixed;inset:48px 8px 8px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.fundus-slice.svelte-13uxsex{width:100%;height:100%;position:relative;overflow:hidden}.fundus-slice--overdraw.svelte-13uxsex{overflow:visible}.fundus-slice__cell.svelte-13uxsex{position:absolute;overflow:hidden}.fundus-slice__cell.svelte-13uxsex img:where(.svelte-13uxsex){pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;max-height:none;position:absolute}.fundus-slice-canvas.svelte-184b9sd{width:100%;height:100%;position:relative}canvas.svelte-184b9sd{pointer-events:none;display:block;position:absolute}.fundus-chroma-key-video.svelte-13mzqtn{width:100%;height:100%;position:relative}canvas.svelte-13mzqtn,img.svelte-13mzqtn{width:100%;height:100%;display:block}video.svelte-13mzqtn{visibility:hidden;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.icon.svelte-1eqehiz{display:block}.scrub-number.svelte-5sfgfa{flex:1;min-width:0;display:flex;position:relative}.input.svelte-5sfgfa{width:100%;min-width:0;color:var(--text);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;outline:none;flex:1;margin:0;padding:0;font-size:11px}.scrub-number.right.svelte-5sfgfa .input:where(.svelte-5sfgfa){text-align:right}.input.svelte-5sfgfa::-webkit-outer-spin-button{appearance:none;margin:0}.input.svelte-5sfgfa::-webkit-inner-spin-button{appearance:none;margin:0}.scrub-surface.svelte-5sfgfa{cursor:ew-resize;touch-action:none;position:absolute;inset:0}.number-field.svelte-dv122j{flex-direction:column;gap:4px;min-width:0;display:flex}.caption.svelte-dv122j{letter-spacing:.27px;color:#ffffffb2;-webkit-user-select:none;user-select:none;font-size:9px;font-weight:500;line-height:14px}.number-input.svelte-dv122j{border-radius:4px;align-items:center;gap:4px;min-width:0;height:24px;padding:0 6px 0 0;display:flex;position:relative;overflow:hidden}.number-input.svelte-dv122j:focus-within{border-color:var(--accent)}.fill.svelte-dv122j{pointer-events:none;z-index:0;background:#4a4a4a;height:100%;position:absolute;top:0;left:0}.icon-slot.svelte-dv122j{z-index:1;width:24px;height:24px;color:var(--text-dim);-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:flex;position:relative}.number-input.svelte-dv122j .scrub-number{z-index:1}.select-field.svelte-14j49wg{flex-direction:column;gap:4px;min-width:0;display:flex}.caption.svelte-14j49wg{letter-spacing:.27px;color:#ffffffb2;-webkit-user-select:none;user-select:none;font-size:9px;font-weight:500;line-height:14px}.select-input.svelte-14j49wg{border-radius:4px;align-items:center;gap:4px;min-width:0;height:24px;padding:0 6px 0 0;display:flex}.select-input.svelte-14j49wg:focus-within{border-color:var(--accent)}.icon-slot.svelte-14j49wg{width:24px;height:24px;color:var(--text-dim);-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:flex}select.svelte-14j49wg{width:100%;min-width:0;height:100%;color:var(--text);background:0 0;border:none;outline:none;flex:1;margin:0;padding:0;font-size:11px}section.svelte-19alfi{border-bottom:1px solid var(--border-soft);padding:12px}.hint.svelte-19alfi{color:var(--text-faint);margin:4px 0 0;font-size:11px}.info.svelte-19alfi{font-variant-numeric:tabular-nums;margin:0}.file.svelte-19alfi{color:var(--text-dim);word-break:break-all}section.svelte-1ukljmf{border-bottom:1px solid var(--border-soft);padding:12px}.field.svelte-1ukljmf{margin-bottom:8px}section.svelte-1j6qy4a{border-bottom:1px solid var(--border-soft);padding:12px}.modes.svelte-1j6qy4a{flex-direction:column;gap:4px;display:flex}.modes.svelte-1j6qy4a button:where(.svelte-1j6qy4a){text-align:left;background:var(--panel-raised);color:var(--text);border-radius:var(--radius);border:1px solid #0000;padding:6px 10px}.modes.svelte-1j6qy4a button:where(.svelte-1j6qy4a):hover{border-color:var(--border)}.modes.svelte-1j6qy4a button.on:where(.svelte-1j6qy4a){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.insets.svelte-1j6qy4a{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}section.svelte-dkn80h{border-bottom:1px solid var(--border-soft);padding:12px}.field.svelte-dkn80h{margin-bottom:8px}.picker.svelte-18jiq7l{flex-direction:column;gap:4px;min-width:0;margin-bottom:8px;display:flex}.caption.svelte-18jiq7l{letter-spacing:.27px;color:#ffffffb2;-webkit-user-select:none;user-select:none;font-size:9px;font-weight:500;line-height:14px}.reference-input.svelte-18jiq7l{border-radius:4px;align-items:center;min-width:0;height:24px;padding:0;display:flex;position:relative}.reference-input.svelte-18jiq7l:focus-within{border-color:var(--accent)}.current.svelte-18jiq7l{min-width:0;height:100%;color:var(--text);text-align:left;background:0 0;border:none;outline:none;flex:1;align-items:center;gap:4px;padding:0 6px 0 0;display:flex}.current.empty.svelte-18jiq7l{color:var(--text-faint)}.preview-slot.svelte-18jiq7l{box-sizing:border-box;background:#4a4a4a;border-radius:3px 0 0 3px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-left:-1px;padding:2px;display:flex;overflow:hidden}.preview.svelte-18jiq7l{object-fit:contain;width:100%;height:100%}.missing-preview.svelte-18jiq7l{color:var(--warning);font-weight:700}.clear.svelte-18jiq7l{border:none;border-left:1px solid var(--border-soft);width:24px;height:24px;color:var(--text-dim);background:0 0;border-radius:0 3px 3px 0;outline:none;flex:none;padding:0}.clear.svelte-18jiq7l:hover{color:var(--danger)}.id.svelte-18jiq7l,.placeholder.svelte-18jiq7l{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dangling.svelte-18jiq7l{color:var(--warning)}.dropdown.svelte-18jiq7l{z-index:10;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);max-height:240px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000080}.option.svelte-18jiq7l{border-radius:var(--radius);width:100%;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:4px 6px;display:flex}.option.svelte-18jiq7l .thumbnail:where(.svelte-18jiq7l){object-fit:contain;background:var(--canvas);border-radius:3px;flex:none;width:24px;height:24px}.option.svelte-18jiq7l:hover{background:var(--panel-raised)}.option.selected.svelte-18jiq7l{background:var(--accent-soft);color:var(--accent)}.hint.svelte-18jiq7l{color:var(--text-faint);margin:4px;font-size:11px}.color-field.svelte-4dtedr{flex-direction:column;gap:4px;min-width:0;display:flex}.caption.svelte-4dtedr{letter-spacing:.27px;color:#ffffffb2;-webkit-user-select:none;user-select:none;font-size:9px;font-weight:500;line-height:14px}.color-input.svelte-4dtedr{border-radius:4px;align-items:center;gap:4px;min-width:0;height:24px;padding:0 6px 0 0;display:flex}.color-input.svelte-4dtedr:focus-within{border-color:var(--accent)}.swatch-slot.svelte-4dtedr{flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.swatch.svelte-4dtedr{cursor:pointer;background:0 0;border:1px solid #ffffff3d;border-radius:3px;width:16px;height:16px;margin:0;padding:0;overflow:hidden}.swatch.svelte-4dtedr::-webkit-color-swatch-wrapper{padding:0}.swatch.svelte-4dtedr::-webkit-color-swatch{border:none}.hex-input.svelte-4dtedr{width:100%;min-width:0;color:var(--text);font-variant-numeric:tabular-nums;text-transform:uppercase;background:0 0;border:none;outline:none;flex:1;margin:0;padding:0;font-size:11px}section.svelte-45ey1g{border-bottom:1px solid var(--border-soft);padding:12px}.field.svelte-45ey1g{margin-bottom:8px}section.svelte-czsds6{border-bottom:1px solid var(--border-soft);padding:12px}.field.svelte-czsds6{margin-bottom:8px}.canvas.svelte-j0tjy7{flex-direction:column;height:100%;min-height:0;display:flex}.toolbar.svelte-j0tjy7{flex:none;align-items:center;gap:8px;padding:8px 0;display:flex}.toolbar.svelte-j0tjy7 button:where(.svelte-j0tjy7){background:var(--panel-raised);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:4px 10px}.toolbar.svelte-j0tjy7 button:where(.svelte-j0tjy7):hover{border-color:var(--accent)}.toolbar.svelte-j0tjy7 button.active:where(.svelte-j0tjy7){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.zoom.svelte-j0tjy7{text-align:center;min-width:44px;color:var(--text-dim);font-variant-numeric:tabular-nums}.dims.svelte-j0tjy7{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto}.viewport.svelte-j0tjy7{touch-action:none;cursor:grab;border:1px solid var(--border);border-radius:var(--radius-large);flex:1;min-height:0;position:relative;overflow:hidden}.viewport.panning.svelte-j0tjy7{cursor:grabbing}.image-wrap.svelte-j0tjy7{transform-origin:0 0;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #ffffff14}.image-wrap.svelte-j0tjy7 img:where(.svelte-j0tjy7){width:100%;height:100%;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;user-select:none;display:block}.center-rect.svelte-j0tjy7{pointer-events:none;position:absolute}.center-rect.side-edges.svelte-j0tjy7{border-left:1px dashed #0d99ff99;border-right:1px dashed #0d99ff99}.center-rect.cap-edges.svelte-j0tjy7{border-top:1px dashed #0d99ff99;border-bottom:1px dashed #0d99ff99}.overdraw-band.svelte-j0tjy7{pointer-events:none;background:#38bdf829;position:absolute}.line.svelte-j0tjy7{background:var(--accent);touch-action:none;position:absolute}.line.overdraw-line.svelte-j0tjy7{background:#38bdf8 padding-box content-box}.line.overdraw-line.svelte-j0tjy7 .tag:where(.svelte-j0tjy7){background:#38bdf8}.line.v.svelte-j0tjy7{cursor:ew-resize;box-sizing:content-box;background-clip:content-box;width:1px;height:100%;margin-left:-.5px;padding:0 7px;top:0;transform:translate(-7px)}.line.h.svelte-j0tjy7{cursor:ns-resize;box-sizing:content-box;background-clip:content-box;width:100%;height:1px;margin-top:-.5px;padding:7px 0;left:0;transform:translateY(-7px)}.line.active.svelte-j0tjy7{background-color:var(--text);background-clip:content-box}.tag.svelte-j0tjy7{background:var(--accent);color:var(--text);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:4px;padding:1px 5px;font-size:11px;font-weight:600;position:absolute}.line.v.svelte-j0tjy7 .tag:where(.svelte-j0tjy7){top:4px;left:50%;transform:translate(-50%)}.line.h.svelte-j0tjy7 .tag:where(.svelte-j0tjy7){top:50%;left:4px;transform:translateY(-50%)}.line.v.overdraw-line.svelte-j0tjy7 .tag:where(.svelte-j0tjy7){top:auto;bottom:4px}.line.h.overdraw-line.svelte-j0tjy7 .tag:where(.svelte-j0tjy7){left:auto;right:4px}.preview-panel.svelte-1w9ogms{flex-direction:column;height:100%;min-height:0;display:flex}.bar.svelte-1w9ogms{flex:none;align-items:center;gap:10px;padding:8px 0;display:flex}.size.svelte-1w9ogms{color:var(--text-dim);font-variant-numeric:tabular-nums}.backends.svelte-1w9ogms{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);gap:2px;margin-left:auto;padding:2px;display:inline-flex}.backends.svelte-1w9ogms button:where(.svelte-1w9ogms){color:var(--text-dim);background:0 0;border:none;border-radius:4px;padding:2px 8px}.backends.svelte-1w9ogms button.on:where(.svelte-1w9ogms){background:var(--accent-soft);color:var(--accent);font-weight:600}.reset.svelte-1w9ogms{background:var(--panel-raised);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:4px 10px}.reset.svelte-1w9ogms:hover{border-color:var(--accent)}.stage.svelte-1w9ogms{border:1px solid var(--border);border-radius:var(--radius-large);flex:1;min-height:0;padding:24px;overflow:auto}.box.svelte-1w9ogms{position:relative;box-shadow:0 0 0 1px #ffffff1f}.box.svelte-1w9ogms .fill{position:absolute;inset:0}.handle.svelte-1w9ogms{touch-action:none;background:0 0;position:absolute}.handle.edge-right.svelte-1w9ogms{cursor:ew-resize;width:10px;height:100%;top:0;right:-4px}.handle.edge-bottom.svelte-1w9ogms{cursor:ns-resize;width:100%;height:10px;bottom:-4px;left:0}.handle.corner.svelte-1w9ogms{cursor:nwse-resize;background:var(--accent);width:16px;height:16px;box-shadow:0 0 0 2px var(--canvas);border-radius:3px;bottom:-6px;right:-6px}.manifest-selector.svelte-17f73b4{flex-direction:column;gap:4px;width:100%;display:flex}.manifest-option.svelte-17f73b4{border-color:var(--border-soft);width:100%;height:28px;color:var(--text-dim);cursor:pointer;border-radius:4px;align-items:center;gap:7px;padding:2px 7px;display:flex}.manifest-option.svelte-17f73b4:hover{border-color:var(--manifest-color);background:color-mix(in srgb, var(--manifest-color) 10%, var(--panel-raised));color:var(--text)}.manifest-option.svelte-17f73b4:focus-within{border-color:var(--manifest-color)}.manifest-option.selected.svelte-17f73b4{border-color:var(--manifest-color);background:color-mix(in srgb, var(--manifest-color) 20%, var(--panel-raised));color:var(--text)}.manifest-option.passive.svelte-17f73b4{border-color:var(--manifest-color);border-style:dashed}input.svelte-17f73b4{width:14px;height:14px;accent-color:var(--manifest-color);flex:none;margin:0}.marker.svelte-17f73b4{border:1px solid color-mix(in srgb, var(--manifest-color) 70%, var(--border));background:color-mix(in srgb, var(--manifest-color) 24%, var(--panel));border-radius:3px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;display:inline-flex}.color-dot.svelte-17f73b4{background:var(--manifest-color);border-radius:50%;width:8px;height:8px}.name.svelte-17f73b4,.via.svelte-17f73b4{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.name.svelte-17f73b4{font-size:11px;font-weight:500}.via.svelte-17f73b4{color:var(--text-faint);margin-left:auto;font-size:9px}.detail.svelte-xy8zsr{flex:1;grid-template-columns:224px 1fr 280px;min-height:0;display:grid}.center.svelte-xy8zsr{flex-direction:column;min-width:0;min-height:0;padding:12px 16px;display:flex}.center.empty.svelte-xy8zsr,.empty.svelte-xy8zsr{color:var(--text-dim);flex:1;justify-content:center;align-items:center;display:flex}.tabs.svelte-xy8zsr{flex:none;gap:4px;margin-bottom:4px;display:inline-flex}.tabs.svelte-xy8zsr button:where(.svelte-xy8zsr){border-radius:var(--radius);color:var(--text-dim);background:0 0;border:none;padding:4px 10px}.tabs.svelte-xy8zsr button.on:where(.svelte-xy8zsr){background:var(--accent-soft);color:var(--accent)}.pane.svelte-xy8zsr{flex:1;min-height:0}.image-stage.svelte-xy8zsr{border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;display:flex;overflow:auto}.image-stage.svelte-xy8zsr img{object-fit:contain;max-width:90%;max-height:90%}.preview-column.svelte-xy8zsr{flex-direction:column;align-items:center;gap:8px;display:flex}.video-frame.svelte-xy8zsr{width:min(90%,480px)}.video-frame.svelte-xy8zsr video{width:100%;height:100%}.compare-row.svelte-xy8zsr{justify-content:center;align-items:flex-start;gap:16px;width:100%;max-width:760px;display:flex}.compare.svelte-xy8zsr{flex-direction:column;flex:1 1 0;align-items:center;gap:6px;min-width:0;margin:0;display:flex}.compare.svelte-xy8zsr figcaption:where(.svelte-xy8zsr){text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:10px}.compare.svelte-xy8zsr .video-frame:where(.svelte-xy8zsr){width:100%}.audio-frame.svelte-xy8zsr{width:min(90%,480px);height:128px}.stage-hint.svelte-xy8zsr{color:var(--text-dim)}.inspector.svelte-xy8zsr{background:var(--panel);border-left:1px solid var(--border);overflow-y:auto}.inspector.svelte-xy8zsr section:where(.svelte-xy8zsr){border-bottom:1px solid var(--border-soft);padding:12px}.inspector.svelte-xy8zsr h2:where(.svelte-xy8zsr){word-break:break-all;margin:0;font-size:13px}.raw.svelte-xy8zsr{color:var(--text-dim);word-break:break-all;margin:4px 0 0}.warning.svelte-xy8zsr{color:var(--warning);margin:8px 0 0;font-size:11px}.hint.svelte-xy8zsr{color:var(--text-faint);margin:0;font-size:11px}.inspector.svelte-xy8zsr h4:where(.svelte-xy8zsr){text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:8px 0 4px;font-size:10px}.reference-row.svelte-xy8zsr{border-radius:var(--radius);color:var(--text-dim);align-items:center;gap:6px;min-width:0;padding:3px 4px;display:flex}.reference-row.svelte-xy8zsr:hover{background:var(--panel-raised);color:var(--text)}.reference-field.svelte-xy8zsr{color:var(--text-faint);font-size:11px}.reference-arrow.svelte-xy8zsr{color:var(--text-faint);flex:none}.reference-asset.svelte-xy8zsr{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.rename.svelte-xy8zsr{gap:8px;margin-bottom:8px;display:flex}.rename.svelte-xy8zsr input:where(.svelte-xy8zsr){flex:1;min-width:0}.danger.svelte-xy8zsr{width:100%}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.popover-anchor.svelte-okkiwd{display:inline-flex;position:relative}.popover.svelte-okkiwd{z-index:10;background:var(--panel-raised);border:1px solid var(--border);border-radius:var(--radius);padding:8px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0006}.popover.right.svelte-okkiwd{left:auto;right:0}.controls.svelte-1amuajj{align-items:center;gap:4px;display:inline-flex}.emoji-trigger.svelte-1amuajj,.swatch-trigger.svelte-1amuajj{border:1px solid var(--border);background:var(--panel-raised);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.emoji-trigger.svelte-1amuajj{border-radius:var(--radius-small);width:22px;height:22px;font-size:14px;line-height:1}.emoji-trigger.empty.svelte-1amuajj{color:var(--text-faint)}.swatch-trigger.svelte-1amuajj{background:var(--swatch);border-radius:50%;width:16px;height:16px}.swatch-trigger.empty.svelte-1amuajj{background:0 0;position:relative}.swatch-trigger.empty.svelte-1amuajj:after{content:"";background:var(--text-faint);height:1px;position:absolute;inset:50% 1px auto;transform:rotate(-45deg)}.emoji-trigger.active.svelte-1amuajj,.swatch-trigger.active.svelte-1amuajj{border-color:var(--accent)}.picker.svelte-1amuajj{gap:4px;display:grid}.swatches.svelte-1amuajj{grid-template-columns:repeat(7,18px)}.emojis.svelte-1amuajj{grid-template-columns:repeat(8,24px)}.swatch.svelte-1amuajj{border:1px solid var(--border);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0}.swatch.none.svelte-1amuajj{background:0 0;position:relative}.swatch.none.svelte-1amuajj:after{content:"";background:var(--text-faint);height:1px;position:absolute;inset:50% 1px auto;transform:rotate(-45deg)}.swatch.selected.svelte-1amuajj{outline:2px solid var(--text);outline-offset:1px}.emoji.svelte-1amuajj{border-radius:var(--radius-small);border:1px solid var(--border);background:var(--panel);cursor:pointer;width:24px;height:24px;padding:0;font-size:14px;line-height:1}.emoji.none.svelte-1amuajj{color:var(--text-faint);font-size:12px}.emoji.selected.svelte-1amuajj{border-color:var(--accent);background:var(--accent-soft)}.page.svelte-1k9wgg5{flex:1;min-height:0;padding:16px;overflow-y:auto}.create.svelte-1k9wgg5{align-items:center;gap:8px;margin-bottom:16px;display:flex}.create.svelte-1k9wgg5 input:where(.svelte-1k9wgg5){width:240px}.hint.svelte-1k9wgg5{color:var(--text-faint);font-size:11px}.empty.svelte-1k9wgg5{color:var(--text-dim);text-align:center;padding:48px}.list.svelte-1k9wgg5{flex-direction:column;gap:12px;max-width:640px;display:flex}.manifest.svelte-1k9wgg5{background:var(--panel);border:1px solid var(--manifest-color,var(--border-soft));border-radius:var(--radius-large);padding:12px}.manifest.svelte-1k9wgg5 header:where(.svelte-1k9wgg5){align-items:center;gap:12px;display:flex}.manifest.svelte-1k9wgg5 h2:where(.svelte-1k9wgg5){margin:0;font-size:13px}.size.svelte-1k9wgg5{color:var(--accent);font-variant-numeric:tabular-nums}.count.svelte-1k9wgg5{color:var(--text-dim);margin-left:auto}ul.svelte-1k9wgg5{margin:8px 0 0;padding:0;list-style:none}li.svelte-1k9wgg5 a:where(.svelte-1k9wgg5){border-radius:var(--radius);color:var(--text-dim);align-items:center;gap:12px;padding:4px 8px;display:flex}li.svelte-1k9wgg5 a:where(.svelte-1k9wgg5):hover{background:var(--panel-raised);color:var(--text)}.asset-id.svelte-1k9wgg5{color:var(--text);font-weight:600}.asset-type.svelte-1k9wgg5{border:1px solid var(--border);border-radius:4px;padding:0 5px;font-size:10px}.asset-size.svelte-1k9wgg5{font-variant-numeric:tabular-nums;margin-left:auto}.passive-member.svelte-1k9wgg5{margin-left:16px}.passive-member.svelte-1k9wgg5 a:where(.svelte-1k9wgg5),.passive-member.svelte-1k9wgg5 .asset-id:where(.svelte-1k9wgg5){color:var(--text-faint)}.passive-id.svelte-1k9wgg5{text-underline-offset:3px;font-weight:600;text-decoration-line:underline;text-decoration-style:dashed}.asset-via.svelte-1k9wgg5{color:var(--text-faint);font-size:11px}.dialog-text.svelte-1k9wgg5{color:var(--text-dim);margin:0 0 8px}.dialog-text.warn.svelte-1k9wgg5{color:var(--warning);font-size:11px}.dialog-row.svelte-1k9wgg5{align-items:center;gap:8px;margin-bottom:8px;display:flex}.dialog-label.svelte-1k9wgg5{color:var(--text-dim);flex:none}.dialog-row.svelte-1k9wgg5 input:where(.svelte-1k9wgg5){flex:1}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.backdrop.svelte-7e0w24{z-index:100;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog.svelte-7e0w24{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:360px;padding:16px;box-shadow:0 12px 32px #00000080}h2.svelte-7e0w24{margin:0 0 12px;font-size:12px}.actions.svelte-7e0w24{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.backdrop.svelte-1iq6zo4{z-index:100;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog.svelte-1iq6zo4{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:360px;padding:16px;box-shadow:0 12px 32px #00000080}h2.svelte-1iq6zo4{margin:0 0 4px;font-size:12px}.file-name.svelte-1iq6zo4{color:var(--text-dim);font-variant-numeric:tabular-nums;margin:0}.destination.svelte-1iq6zo4{color:var(--text-faint);margin:2px 0 16px}.row.svelte-1iq6zo4{align-items:center;gap:8px;margin-bottom:8px;display:flex}.label.svelte-1iq6zo4{width:48px;color:var(--text-dim);flex:none}.row.svelte-1iq6zo4 input:where(.svelte-1iq6zo4){flex:1}.segmented.svelte-1iq6zo4{border:1px solid var(--border);border-radius:var(--radius);display:inline-flex;overflow:hidden}.segmented.svelte-1iq6zo4 button:where(.svelte-1iq6zo4){background:var(--panel-raised);color:var(--text-dim);border:none;padding:4px 12px}.segmented.svelte-1iq6zo4 button.on:where(.svelte-1iq6zo4){background:var(--accent);color:var(--text)}.hint.svelte-1iq6zo4{color:var(--text-dim);margin:4px 0 0;font-size:11px}.hint.warn.svelte-1iq6zo4,.error.svelte-1iq6zo4{color:var(--warning)}.actions.svelte-1iq6zo4{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.playback.svelte-u1b1yd{align-items:center;gap:6px;width:100%;display:flex}.btn.svelte-u1b1yd{background:var(--panel-raised);border-radius:var(--radius);width:28px;height:28px;color:var(--text);border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn.svelte-u1b1yd:hover:not(:disabled){border-color:var(--border)}.btn.svelte-u1b1yd:focus-visible{border-color:var(--accent);outline:none}.btn.svelte-u1b1yd:disabled{opacity:.4;cursor:not-allowed}.btn.active.svelte-u1b1yd{background:var(--accent-soft);color:var(--accent)}.btn.svelte-u1b1yd svg:where(.svelte-u1b1yd){width:16px;height:16px;display:block}.time.svelte-u1b1yd{color:var(--text-dim);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.volume-group.svelte-u1b1yd{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.range.svelte-u1b1yd{appearance:none;background:var(--panel-raised);cursor:pointer;border-radius:999px;height:4px}.range.scrub.svelte-u1b1yd{flex:1;min-width:0;margin:0 2px}.range.volume.svelte-u1b1yd{flex:none;width:72px}.range.svelte-u1b1yd:disabled{opacity:.4;cursor:not-allowed}.range.svelte-u1b1yd::-webkit-slider-thumb{appearance:none;background:var(--accent);border:none;border-radius:50%;width:12px;height:12px}.range.svelte-u1b1yd::-moz-range-thumb{background:var(--accent);border:none;border-radius:50%;width:12px;height:12px}.range.svelte-u1b1yd:focus-visible{outline:none}.range.svelte-u1b1yd:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--accent-soft)}.range.svelte-u1b1yd:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--accent-soft)}.audio-waveform.svelte-prx3nl{flex-direction:column;gap:8px;width:100%;height:100%;min-height:0;display:flex}.wave.svelte-prx3nl{cursor:pointer;touch-action:none;flex:1;width:100%;min-height:0;display:block}.footer.svelte-prx3nl{flex:none;align-items:center;display:flex}h3.svelte-2penap{letter-spacing:0;text-transform:none;color:#fff;margin:0 0 10px;font-size:11px;font-weight:400}.directory.svelte-13aexy3{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;width:220px;min-width:180px;max-width:320px;min-height:0;display:flex}header.svelte-13aexy3{border-bottom:1px solid var(--border-soft);align-items:center;height:40px;padding:0 8px 0 12px;display:flex}header.svelte-13aexy3 strong:where(.svelte-13aexy3){font-size:11px}.actions.svelte-13aexy3{margin-left:auto;display:flex}.icon-button.svelte-13aexy3{width:24px;height:24px;color:var(--text-dim);border-radius:var(--radius-small);background:0 0;border:0}.icon-button.svelte-13aexy3:hover:not(:disabled){background:var(--panel-raised);color:var(--text)}.icon-button.danger.svelte-13aexy3:hover:not(:disabled){color:var(--danger)}.icon-button.svelte-13aexy3:disabled{opacity:.3;cursor:default}.tree.svelte-13aexy3{padding:6px 4px;overflow:auto}.folder-row.svelte-13aexy3,.asset-row.svelte-13aexy3{padding-left:calc((var(--depth) + 2) * 14px);display:flex}.row.svelte-13aexy3{color:var(--text-dim);border-radius:var(--radius-small);text-align:left;background:0 0;border:0;align-items:center;gap:6px;min-width:0;height:28px;display:flex}.row.special.svelte-13aexy3{width:100%;padding:0 8px}.row.folder.svelte-13aexy3{flex:1;padding:0 8px 0 2px}.row.asset.svelte-13aexy3{cursor:grab;flex:1;padding:0 8px 0 2px}.row.asset.svelte-13aexy3:active{cursor:grabbing}.row.svelte-13aexy3:hover,.row.selected.svelte-13aexy3{background:var(--panel-raised);color:var(--text)}.row.asset.current.svelte-13aexy3,.row.selected.svelte-13aexy3{background:var(--accent-soft);color:var(--accent)}.row.drop-target.svelte-13aexy3{outline:1px solid var(--accent);background:var(--accent-soft)}.glyph.svelte-13aexy3{width:14px;color:var(--text-faint);flex:none;justify-content:center;align-items:center;display:flex}.asset-glyph.svelte-13aexy3{font-size:7px}.asset-warning.svelte-13aexy3{color:var(--warning);flex:none;margin-left:auto}.label.svelte-13aexy3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.count.svelte-13aexy3{color:var(--text-faint);margin-left:auto;font-size:10px}.dialog-row.svelte-13aexy3{align-items:center;gap:8px;display:flex}.dialog-row.svelte-13aexy3 span:where(.svelte-13aexy3){width:44px;color:var(--text-dim)}.dialog-row.svelte-13aexy3 input:where(.svelte-13aexy3){flex:1}.dialog-path.svelte-13aexy3,.dialog-text.svelte-13aexy3,.dialog-warning.svelte-13aexy3{margin:8px 0 0}.dialog-path.svelte-13aexy3{color:var(--text-faint)}.dialog-warning.svelte-13aexy3{color:var(--warning)}.context-menu.svelte-1gtdcf3{z-index:200;background:var(--panel-raised);border:1px solid var(--border);border-radius:6px;width:168px;padding:4px;position:fixed;box-shadow:0 8px 24px #00000073}button.svelte-1gtdcf3{width:100%;color:var(--text);font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;padding:6px 8px}button.svelte-1gtdcf3:hover,button.svelte-1gtdcf3:focus-visible{background:var(--accent-soft);outline:none}button.danger.svelte-1gtdcf3{color:var(--danger)}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$ as e,E as t,K as n,M as r,O as i,T as a,W as o,b as s,et as c,g as l,i as u,it as d,j as f,l as p,z as m}from"./CNRz3sSw.js";import"./xihTtKlq.js";function h(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&typeof e.$asset==`string`&&e.$asset!==``}var g=[`png`,`jpg`,`jpeg`,`webp`,`avif`],_={type:`image`,accepts:[...g],defaultParameters:()=>({preset:`default`}),validateParameters(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Image parameters must be an object.`);let t=e;if(typeof t.preset!=`string`||t.preset.length===0)throw Error(`Image parameters need a non-empty string "preset".`);if(t.targetWidth!==void 0&&(typeof t.targetWidth!=`number`||!Number.isInteger(t.targetWidth)||t.targetWidth<=0))throw Error(`Image "targetWidth" must be a positive integer when set.`);return{preset:t.preset,...t.targetWidth===void 0?{}:{targetWidth:t.targetWidth}}}},v=/[\u0000-\u001f\u007f]/,y=/[<>:"|?*]/,b=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i;function x(e){return e.length===0?`Folder names must not be empty.`:e===e.trim()?e===`.`||e===`..`?`"${e}" is not a valid folder name.`:e.includes(`/`)||e.includes(`\\`)?`Folder names must not contain path separators.`:v.test(e)?`Folder names must not contain control characters.`:y.test(e)?`Folder names must not contain Windows-reserved characters (: * ? " < > |).`:e.endsWith(`.`)?`Folder names must not end with a dot.`:e.toLocaleLowerCase(`en-US`)===`root`?`"${e}" is reserved for the implicit Fundus root folder.`:e.toLocaleLowerCase(`en-US`)===`.gitkeep`?`"${e}" is reserved for Fundus folder management.`:b.test(e)?`"${e}" is a reserved filesystem name.`:null:`Folder names must not start or end with whitespace.`}function S(e){return e.split(`/`).map(e=>e.normalize(`NFC`)).join(`/`)}function C(e){return S(e).toLocaleLowerCase(`en-US`)}function w(e){let t=e.lastIndexOf(`/`);return t===-1?``:e.slice(0,t)}function T(e){let t=e.lastIndexOf(`/`);return t===-1?e:e.slice(t+1)}function E(e,t){return e===``?t:`${e}/${t}`}function D(e,t){return e===t||e.startsWith(`${t}/`)}var O=[`preload`,`release`,`entries`,`constructor`,`prototype`,`hasOwnProperty`,`isPrototypeOf`,`propertyIsEnumerable`,`toLocaleString`,`toString`,`valueOf`],k=/^[a-z][A-Za-z0-9]*$/;function A(e){return k.test(e)?O.includes(e)?`"${e}" is reserved (it collides with a Manifest member name).`:null:`"${e}" is not a valid asset id — use a camelCase identifier starting with a lowercase letter (e.g. "navigationPanel").`}function j(e){return k.test(e)?O.includes(e)?`"${e}" is reserved (it collides with a Manifest member name).`:null:`"${e}" is not a valid manifest name — use a camelCase identifier starting with a lowercase letter (e.g. "mainCatalog").`}var M=[{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`}],N=`🗂️.🏠.🎯.⭐.🔥.💎.🎨.🧩.🚀.🎵.🏆.⚡.🌟.🍀.🎁.📦.🗺️.🔑.🛒.❤️.🐙.🎲.🌈.🧪.🎪.🎭.🎬.🎤.🎧.🎸.🥁.🔔.💡.🔮.🧭.⏰.📸.🖼️.📚.✏️.🖌️.🧲.⚙️.🛠️.🔧.🧰.🔌.🔋.🌍.🌙.☀️.❄️.🌊.🍄.🌵.🌸.🍎.🍕.🍩.☕.🐳.🦄.🐝`.split(`.`),P={type:`audio`,accepts:[`mp3`,`wav`,`m4a`,`ogg`,`flac`],defaultParameters:()=>({preset:`default`}),validateParameters(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Audio parameters must be an object.`);let t=e;if(typeof t.preset!=`string`||t.preset.length===0)throw Error(`Audio parameters need a non-empty string "preset".`);return{preset:t.preset}}},F={keyColor:[0,1,0],colorCutoff:.2,colorFeathering:.33,maskFeathering:1,sharpening:.5,despill:1,despillLuminanceAdd:.2},I=[`colorCutoff`,`colorFeathering`,`maskFeathering`,`sharpening`,`despill`,`despillLuminanceAdd`];function L(e){return Math.min(1,Math.max(0,e))}function R(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`"chromaKey" must be an object.`);let t=e,n=t.keyColor;if(!Array.isArray(n)||n.length!==3||n.some(e=>typeof e!=`number`||!Number.isFinite(e)))throw Error(`"chromaKey.keyColor" must be an array of three numbers (RGB, 0–1 each).`);let r={keyColor:[L(n[0]),L(n[1]),L(n[2])]};for(let e of I){let n=t[e];if(typeof n!=`number`||!Number.isFinite(n))throw Error(`"chromaKey.${e}" must be a number (0–1).`);r[e]=L(n)}return r}var z=[`mp4`,`mov`,`webm`,`m4v`];function B(e,t){if(typeof t!=`object`||!t||Array.isArray(t))throw Error(`${e} parameters must be an object.`);let n=t;if(typeof n.preset!=`string`||n.preset.length===0)throw Error(`${e} parameters need a non-empty string "preset".`);if(n.maxWidth!==void 0&&(typeof n.maxWidth!=`number`||!Number.isInteger(n.maxWidth)||n.maxWidth<=0))throw Error(`${e} "maxWidth" must be a positive integer when set.`);return{preset:n.preset,...n.maxWidth===void 0?{}:{maxWidth:n.maxWidth}}}var V={type:`video`,accepts:[...z],defaultParameters:()=>({preset:`default`}),validateParameters(e){return B(`Video`,e)}};function H(e,t){if(t!==void 0){if(!h(t))throw Error(`"${e}" must be an asset reference ({ "$asset": "<id>" }).`);return{$asset:t.$asset}}}var U={type:`chroma-key-video`,accepts:[...z],defaultParameters:()=>({preset:`default`,chromaKey:{...F,keyColor:[...F.keyColor]}}),validateParameters(e){let t=B(`Chroma-key-video`,e),n=e,r=R(n.chromaKey),i=H(`mask`,n.mask),a=H(`fallback`,n.fallback);return{...t,chromaKey:r,...i===void 0?{}:{mask:i},...a===void 0?{}:{fallback:a}}},collectReferences(e){let t=[];return e.mask&&t.push({field:`mask`,assetId:e.mask.$asset,expectedTypes:[`image`]}),e.fallback&&t.push({field:`fallback`,assetId:e.fallback.$asset,expectedTypes:[`image`]}),t},processingParameters(e){return{preset:e.preset,...e.maxWidth===void 0?{}:{maxWidth:e.maxWidth}}}},W=[`nine`,`three-horizontal`,`three-vertical`,`one`];function G(){return{top:0,right:0,bottom:0,left:0}}function K(e){return{horizontal:e===`nine`||e===`three-horizontal`,vertical:e===`nine`||e===`three-vertical`}}function q(e,t,n,r){return t===`left`?n-e.right:t===`right`?n-e.left:t===`top`?r-e.bottom:r-e.top}function J(e,t,n,r){return q(e,t,n,r)-1}function Y(e,t){if(typeof t!=`object`||!t||Array.isArray(t))throw Error(`Slice ${e} must be an object with top/right/bottom/left.`);let n=t,r=[`top`,`right`,`bottom`,`left`],i=G();for(let t of r){let r=n[t];if(typeof r!=`number`||!Number.isInteger(r)||r<0)throw Error(`Slice ${e}.${t} must be a non-negative integer.`);i[t]=r}return i}var X={type:`slice`,accepts:[...g],defaultParameters:()=>({mode:`nine`,insets:G(),pixelRatio:1,preset:`default`}),validateParameters(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Slice parameters must be an object.`);let t=e;if(typeof t.mode!=`string`||!W.includes(t.mode))throw Error(`Slice "mode" must be one of ${W.map(e=>`'${e}'`).join(` | `)}.`);let n=Y(`insets`,t.insets);if(typeof t.pixelRatio!=`number`||!Number.isInteger(t.pixelRatio)||t.pixelRatio<1)throw Error(`Slice "pixelRatio" must be an integer ≥ 1.`);let r=t.overdraw===void 0?void 0:Y(`overdraw`,t.overdraw);if(typeof t.preset!=`string`||t.preset.length===0)throw Error(`Slice parameters need a non-empty string "preset".`);return{mode:t.mode,insets:n,pixelRatio:t.pixelRatio,...r===void 0?{}:{overdraw:r},preset:t.preset}}},Z=[_,X,V,U,P];function Q(e=Z){return[...new Set(e.flatMap(e=>e.accepts))].sort().map(e=>`.${e}`)}function $(e,t=Z){let n=e.slice(e.lastIndexOf(`.`)+1).toLowerCase();return t.filter(e=>e.accepts.includes(n)).map(e=>e.type)}function ee(e){let t=e.replace(/\.[^.]+$/,``).replace(/(?:@|[-_])\dx$/i,``).replace(/([a-z0-9])([A-Z])/g,`$1 $2`).split(/[^a-zA-Z0-9]+/).filter(Boolean);if(t.length===0)return`asset`;let n=t.map((e,t)=>t===0?e.toLowerCase():e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(``).replace(/^[0-9]+/,``);return n?n.charAt(0).toLowerCase()+n.slice(1):`asset`}var te=i(`<div class="backdrop svelte-7e0w24" role="presentation"><div class="dialog svelte-7e0w24" role="dialog" tabindex="-1"><h2 class="svelte-7e0w24"> </h2> <!> <div class="actions svelte-7e0w24"><button class="control">Cancel</button> <button> </button></div></div></div>`);function ne(i,f){c(f,!0);let h=u(f,`danger`,3,!1),g=u(f,`confirmDisabled`,3,!1),_=u(f,`busy`,3,!1);var v=te(),y=o(v),b=o(y),x=o(b,!0);d(b);var S=n(b,2);s(S,()=>f.children);var C=n(S,2),w=o(C),T=n(w,2);let E;var D=o(T,!0);d(T),d(C),d(y),d(v),m(()=>{p(y,`aria-label`,f.title),a(x,f.title),w.disabled=_(),E=l(T,1,`control`,null,E,{primary:!h(),danger:h()}),T.disabled=g()||_(),a(D,f.confirmLabel)}),r(`click`,v,()=>_()?void 0:f.onCancel()),r(`click`,y,e=>e.stopPropagation()),r(`keydown`,y,e=>{e.key===`Escape`&&!_()&&f.onCancel()}),r(`click`,w,function(...e){f.onCancel?.apply(this,e)}),r(`click`,T,function(...e){f.onConfirm?.apply(this,e)}),t(i,v),e()}f([`click`,`keydown`]);export{_ as C,V as S,C as _,A as a,K as b,G as c,D as d,E as f,w as g,J as h,Q as i,x as l,q as m,M as n,P as o,j as p,N as r,U as s,ne as t,T as u,ee as v,$ as x,X as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} kB`:`${(e/(1024*1024)).toFixed(2)} MB`}function t(e){return`${(e/1e3).toFixed(2)} s`}function n(e,t){let{maxWidth:n,...r}=e;return t===null||!Number.isFinite(t)||t<=0?r:{...r,maxWidth:Math.round(t)}}export{t as n,n as r,e as t};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{$ as e,B as t,E as n,G as r,I as i,J as a,K as o,L as s,M as c,N as l,O as u,P as d,S as f,T as p,U as m,W as h,X as g,Y as _,a as v,b as y,c as b,d as x,et as S,g as C,h as w,i as T,it as E,j as D,k as O,l as k,s as A,w as j,z as M}from"./CNRz3sSw.js";import"./DjvOiDmq.js";import"./xihTtKlq.js";import{f as N,l as P,n as ee,o as F,p as I,t as L}from"./CO4RBJfa.js";import{_ as R,a as te,d as z,f as ne,g as B,l as V,t as H,u as U,v as W,x as G}from"./Cx6qtxJg.js";var re=u(`<p class="error svelte-1iq6zo4">This file type is not supported (raster images, video, or audio).</p>`),ie=u(`<button> </button>`),ae=u(`<p class="hint warn svelte-1iq6zo4"> </p>`),oe=u(`<p class="hint warn svelte-1iq6zo4">An asset with this id already exists.</p>`),K=u(`<div class="row svelte-1iq6zo4"><span class="label svelte-1iq6zo4">Type</span> <div class="segmented svelte-1iq6zo4"></div></div> <label class="row svelte-1iq6zo4"><span class="label svelte-1iq6zo4">Id</span> <input class="control svelte-1iq6zo4" type="text" spellcheck="false"/></label> <!> <!>`,1),se=u(`<div class="backdrop svelte-1iq6zo4" role="presentation"><div class="dialog svelte-1iq6zo4" role="dialog" aria-label="Import asset" tabindex="-1"><h2 class="svelte-1iq6zo4">Import asset</h2> <p class="file-name svelte-1iq6zo4"> </p> <p class="destination svelte-1iq6zo4"> </p> <!> <div class="actions svelte-1iq6zo4"><button class="control">Cancel</button> <button class="control primary"> </button></div></div></div>`);function q(i,s){S(s,!0);let l=g(()=>G(s.file.name)),u=_(`image`),m=_(`asset`),v=_(!1),y=_(null);t(()=>{a(u,G(s.file.name)[0]??`image`,!0),a(m,W(s.file.name),!0)});let x=g(()=>L.state?.assets.some(e=>e.id===d(m))??!1),w=g(()=>te(d(m))),T=g(()=>d(w)===null),D=g(()=>d(T)&&!d(x)&&d(l).length>0&&!d(v));async function O(){if(!d(D))return;let e=d(m),t=d(u);a(v,!0),a(y,null);try{await L.mutate(()=>I(s.file,t,e,s.folder)),s.onDone(e)}catch(e){a(y,e instanceof Error?e.message:String(e),!0)}finally{a(v,!1)}}var k=se(),N=h(k),P=o(h(N),2),ee=h(P,!0);E(P);var F=o(P,2),R=h(F);E(F);var z=o(F,2),ne=e=>{n(e,re())},B=e=>{var t=K(),i=r(t),s=o(h(i),2);f(s,20,()=>d(l),e=>e,(e,t)=>{var r=ie();let i;var o=h(r,!0);E(r),M(()=>{r.disabled=d(v),i=C(r,1,`svelte-1iq6zo4`,null,i,{on:d(u)===t}),p(o,t)}),c(`click`,r,()=>a(u,t,!0)),n(e,r)}),E(s),E(i);var g=o(i,2),_=o(h(g),2);b(_),E(g);var S=o(g,2),D=e=>{var t=ae(),r=h(t,!0);E(t),M(()=>p(r,d(w))),n(e,t)},O=e=>{n(e,oe())};j(S,e=>{d(T)?d(x)&&e(O,1):e(D)});var k=o(S,2),N=e=>{var t=ae(),r=h(t,!0);E(t),M(()=>p(r,d(y))),n(e,t)};j(k,e=>{d(y)&&e(N)}),M(()=>_.disabled=d(v)),A(_,()=>d(m),e=>a(m,e)),n(e,t)};j(z,e=>{d(l).length===0?e(ne):e(B,-1)});var V=o(z,2),H=h(V),U=o(H,2),q=h(U,!0);E(U),E(V),E(N),E(k),M(()=>{p(ee,s.file.name),p(R,`Destination: ${(s.folder||`Root`)??``}`),U.disabled=!d(D),p(q,d(v)?`Importing…`:`Import`)}),c(`click`,k,function(...e){s.onCancel?.apply(this,e)}),c(`click`,N,e=>e.stopPropagation()),c(`keydown`,N,e=>{e.key===`Escape`&&s.onCancel()}),c(`click`,H,function(...e){s.onCancel?.apply(this,e)}),c(`click`,U,()=>void O()),n(i,k),e()}D([`click`,`keydown`]);function J(e){let t=Number.isFinite(e)&&e>0?Math.floor(e):0;return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}var Y=O(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-u1b1yd"><rect x="4.5" y="3.5" width="2.5" height="9" fill="currentColor"></rect><rect x="9" y="3.5" width="2.5" height="9" fill="currentColor"></rect></svg>`),ce=O(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-u1b1yd"><path d="M5 3.3v9.4l7-4.7z" fill="currentColor"></path></svg>`),X=u(`<span class="time svelte-u1b1yd"> </span> <input class="range scrub svelte-u1b1yd" type="range" min="0" step="0.01" aria-label="Seek"/> <span class="time svelte-u1b1yd"> </span>`,1),Z=u(`<span class="time svelte-u1b1yd"> </span>`),le=O(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-u1b1yd"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 6l3.5 4M13.5 6 10 10" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),ue=O(`<svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-u1b1yd"><path d="M2.5 6h2l3-2.5v9l-3-2.5h-2z" fill="currentColor"></path><path d="M10 5.6a3.4 3.4 0 0 1 0 4.8" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path><path d="M11.8 3.9a6 6 0 0 1 0 8.2" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"></path></svg>`),de=u(`<div class="volume-group svelte-u1b1yd"><button class="btn svelte-u1b1yd" type="button"><!></button> <input class="range volume svelte-u1b1yd" type="range" min="0" max="1" step="0.01" aria-label="Volume"/></div>`),fe=u(`<div><button class="btn svelte-u1b1yd" type="button"><!></button> <button class="btn svelte-u1b1yd" type="button" aria-label="Stop"><svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-u1b1yd"><rect x="4" y="4" width="8" height="8" rx="1" fill="currentColor"></rect></svg></button> <button type="button" aria-label="Loop"><svg viewBox="0 0 16 16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" class="svelte-u1b1yd"><path d="M4.4 4.5H9A3.5 3.5 0 0 1 12.5 8"></path><path d="M2.4 6.4 4.3 4.4 6.3 6.1"></path><path d="M11.6 11.5H7A3.5 3.5 0 0 1 3.5 8"></path><path d="M13.6 9.6 11.7 11.6 9.7 9.9"></path></svg></button> <!> <!></div>`);function pe(i,s){S(s,!0);let l=T(s,`media`,7),u=T(s,`showScrub`,3,!1),f=T(s,`showVolume`,3,!0),m=_(!1),v=_(0),y=_(0),w=_(!1),D=_(1),O=_(!1),A=_(!1),N=!1,P=null,ee=g(()=>J(d(v))),F=g(()=>J(d(y))),I=g(()=>d(y)>0),L=g(()=>d(O)?0:d(D));t(()=>{if(!l()){a(m,!1);return}let e=l();a(m,!e.paused),a(v,e.currentTime,!0),a(y,Number.isFinite(e.duration)?e.duration:0,!0),a(w,e.loop,!0),a(D,e.volume,!0),a(O,e.muted,!0);function t(){a(m,!0)}function n(){a(m,!1)}function r(){d(A)||a(v,e.currentTime,!0)}function i(){a(y,Number.isFinite(e.duration)?e.duration:0,!0)}function o(){a(D,e.volume,!0),a(O,e.muted,!0)}return e.addEventListener(`play`,t),e.addEventListener(`playing`,t),e.addEventListener(`pause`,n),e.addEventListener(`ended`,n),e.addEventListener(`timeupdate`,r),e.addEventListener(`seeked`,r),e.addEventListener(`loadedmetadata`,i),e.addEventListener(`durationchange`,i),e.addEventListener(`volumechange`,o),()=>{P===e&&(a(A,!1),N=!1,P=null),e.removeEventListener(`play`,t),e.removeEventListener(`playing`,t),e.removeEventListener(`pause`,n),e.removeEventListener(`ended`,n),e.removeEventListener(`timeupdate`,r),e.removeEventListener(`seeked`,r),e.removeEventListener(`loadedmetadata`,i),e.removeEventListener(`durationchange`,i),e.removeEventListener(`volumechange`,o)}});function R(){l()&&(l().paused?l().play():l().pause())}function te(){l()&&(l().pause(),l().currentTime=0)}function z(){l()&&(l().loop=!l().loop,a(w,l().loop,!0))}function ne(){l()&&(l().muted=!l().muted)}function B(e){if(!l())return;let t=e.currentTarget.valueAsNumber;l().volume=t,l().muted=t===0}function V(){!l()||d(A)||(a(A,!0),N=!l().paused,P=l(),l().pause())}function H(e){let t=P??l();if(!t)return;let n=e.currentTarget.valueAsNumber;Number.isFinite(t.duration)&&(t.currentTime=n),a(v,n,!0)}function U(){if(!d(A))return;let e=P;a(A,!1),N&&e&&l()===e&&e.play(),N=!1,P=null}t(()=>{if(d(A))return window.addEventListener(`pointerup`,U),window.addEventListener(`pointercancel`,U),()=>{window.removeEventListener(`pointerup`,U),window.removeEventListener(`pointercancel`,U)}});var W=fe(),G=h(W),re=h(G),ie=e=>{n(e,Y())},ae=e=>{n(e,ce())};j(re,e=>{d(m)?e(ie):e(ae,-1)}),E(G);var oe=o(G,2),K=o(oe,2);let se;var q=o(K,2),pe=e=>{var t=X(),i=r(t),a=h(i,!0);E(i);var s=o(i,2);b(s);var u=o(s,2),f=h(u,!0);E(u),M(()=>{p(a,d(ee)),k(s,`max`,d(I)?d(y):0),x(s,d(v)),s.disabled=!l()||!d(I),p(f,d(F))}),c(`pointerdown`,s,V),c(`input`,s,H),n(e,t)},me=e=>{var t=Z(),r=h(t);E(t),M(()=>p(r,`${d(ee)??``} / ${d(F)??``}`)),n(e,t)};j(q,e=>{u()?e(pe):d(I)&&e(me,1)});var he=o(q,2),Q=e=>{var t=de(),r=h(t),i=h(r),a=e=>{n(e,le())},s=e=>{n(e,ue())};j(i,e=>{d(O)||d(D)===0?e(a):e(s,-1)}),E(r);var u=o(r,2);b(u),E(t),M(()=>{r.disabled=!l(),k(r,`aria-label`,d(O)?`Unmute`:`Mute`),x(u,d(L)),u.disabled=!l()}),c(`click`,r,ne),c(`input`,u,B),n(e,t)};j(he,e=>{f()&&e(Q)}),E(W),M(()=>{C(W,1,`playback ${s.class??``??``}`,`svelte-u1b1yd`),G.disabled=!l(),k(G,`aria-label`,d(m)?`Pause`:`Play`),oe.disabled=!l(),se=C(K,1,`btn svelte-u1b1yd`,null,se,{active:d(w)}),K.disabled=!l(),k(K,`aria-pressed`,d(w))}),c(`click`,G,R),c(`click`,oe,te),c(`click`,K,z),n(i,W),e()}D([`click`,`pointerdown`,`input`]);var me=null;function he(){return me||=new AudioContext,me}var Q=null;function ge(e){let t=e.numberOfChannels;if(t===1)return e.getChannelData(0);let n=e.length,r=new Float32Array(n);for(let i=0;i<t;i++){let t=e.getChannelData(i);for(let e=0;e<n;e++)r[e]+=t[e]}for(let e=0;e<n;e++)r[e]/=t;return r}function _e(e,t){let n=new Float32Array(t),r=new Float32Array(t),i=e.length/t;for(let a=0;a<t;a++){let t=Math.floor(a*i),o=Math.min(e.length,Math.floor((a+1)*i)),s=0,c=0;for(let n=t;n<o;n++){let t=e[n];t<s&&(s=t),t>c&&(c=t)}n[a]=s,r[a]=c}return{min:n,max:r}}function ve(e,t,n){return Math.min(n,Math.max(t,e))}var ye=u(`<div class="footer svelte-prx3nl"><!></div>`),be=u(`<div><canvas class="wave svelte-prx3nl" role="button" tabindex="0" aria-label="Audio waveform — click or press Enter to play; arrow keys scrub"></canvas> <!></div>`);function xe(r,i){S(i,!0);let l=T(i,`loop`,3,!1),u=T(i,`showControls`,3,!1),f=_(void 0),p=_(null),m=_(!1),g=_(0),y=_(0),b=`idle`,x=null,w=null,D=0,O=1,k=`#0d99ff`,A=`#7a7a7a`,N=`#f24822`,P=0;function ee(){if(!d(f))return;let e=getComputedStyle(d(f));k=e.getPropertyValue(`--accent`).trim()||k,A=e.getPropertyValue(`--text-faint`).trim()||A,N=e.getPropertyValue(`--danger`).trim()||N}function F(){if(!d(f))return;let e=d(f).getBoundingClientRect();O=window.devicePixelRatio||1;let t=Math.max(1,Math.round(e.width*O)),n=Math.max(1,Math.round(e.height*O));(d(f).width!==t||d(f).height!==n)&&(d(f).width=t,d(f).height=n,w=null),ee()}function I(){if(!d(f))return;let e=d(f).getContext(`2d`);if(!e)return;let t=d(f).width,n=d(f).height,r=n/2;if(e.clearRect(0,0,t,n),b!==`ready`||!x){e.strokeStyle=b===`error`?N:A,e.lineWidth=Math.max(1,O),e.beginPath(),e.moveTo(0,r),e.lineTo(t,r),e.stroke();return}let i=Math.max(1,Math.floor(t));(!w||D!==i)&&(w=_e(x,i),D=i);let a=d(y)>0?ve(d(g)/d(y),0,1):0,o=a*t,s=r*.9,c=t/i;e.lineWidth=1;for(let t=0;t<i;t++){let n=t*c,i=r-w.max[t]*s,a=r-w.min[t]*s;e.strokeStyle=n<=o?k:A,e.beginPath(),e.moveTo(n+.5,Math.min(i,r-.5)),e.lineTo(n+.5,Math.max(a,r+.5)),e.stroke()}a>0&&(e.strokeStyle=k,e.lineWidth=Math.max(1,O),e.beginPath(),e.moveTo(o,0),e.lineTo(o,n),e.stroke())}function L(){P&&=(cancelAnimationFrame(P),0)}function R(){d(p)&&a(g,d(p).currentTime,!0),I(),d(m)&&(P=requestAnimationFrame(R))}async function te(e){b=`loading`,I();try{let t=await(await fetch(e)).arrayBuffer(),n=await he().decodeAudioData(t);if(e!==i.src)return;x=ge(n),d(y)||a(y,n.duration,!0),b=`ready`,w=null,I()}catch{if(e!==i.src)return;b=`error`,I()}}function z(e){if(e.preventDefault(),e.stopPropagation(),!d(f)||!d(p))return;let t=d(f).getBoundingClientRect(),n=ve((e.clientX-t.left)/t.width,0,1),r=d(p).duration;Number.isFinite(r)&&r>0&&(d(p).currentTime=n*r),d(p).play()}function ne(){d(p)&&(d(p).paused?d(p).play():d(p).pause())}function B(e){if(d(p)){if(e.key===`Enter`||e.key===` `){e.preventDefault(),ne();return}if(e.key===`ArrowRight`||e.key===`ArrowLeft`){let t=d(p).duration;if(!Number.isFinite(t)||t<=0)return;e.preventDefault();let n=e.key===`ArrowRight`?5:-5;d(p).currentTime=ve(d(p).currentTime+n,0,t)}}}t(()=>{let e=d(p);e&&(e.loop=l())}),t(()=>{let e=i.src,t=d(f);if(!t)return;b=`idle`,x=null,w=null,D=0,a(g,0),a(y,0),a(m,!1);let n=new Audio(e);n.preload=`metadata`,n.loop=s(()=>l());function r(){Q&&Q!==n&&Q.pause(),Q=n,a(m,!0),L(),P=requestAnimationFrame(R)}function o(){Q===n&&(Q=null),a(m,!1),L(),I()}function c(){Q===n&&(Q=null),a(m,!1),L(),I()}function u(){a(g,n.currentTime,!0),d(m)||I()}function h(){Number.isFinite(n.duration)&&a(y,n.duration,!0),I()}n.addEventListener(`play`,r),n.addEventListener(`pause`,o),n.addEventListener(`ended`,c),n.addEventListener(`timeupdate`,u),n.addEventListener(`loadedmetadata`,h),n.addEventListener(`durationchange`,h),n.addEventListener(`seeked`,u),a(p,n,!0);let _=new ResizeObserver(()=>{F(),I()});_.observe(t);let v=new IntersectionObserver(t=>{t.some(e=>e.isIntersecting)&&(v.disconnect(),te(e))});return v.observe(t),F(),I(),()=>{L(),_.disconnect(),v.disconnect(),n.removeEventListener(`play`,r),n.removeEventListener(`pause`,o),n.removeEventListener(`ended`,c),n.removeEventListener(`timeupdate`,u),n.removeEventListener(`loadedmetadata`,h),n.removeEventListener(`durationchange`,h),n.removeEventListener(`seeked`,u),n.pause(),Q===n&&(Q=null),n.removeAttribute(`src`),n.load(),a(p,null)}});var V=be(),H=h(V);v(H,e=>a(f,e),()=>d(f));var U=o(H,2),W=e=>{var t=ye();pe(h(t),{get media(){return d(p)}}),E(t),n(e,t)};j(U,e=>{u()&&e(W)}),E(V),M(()=>C(V,1,`audio-waveform ${i.class??``??``}`,`svelte-prx3nl`)),c(`click`,H,z),c(`keydown`,H,B),n(r,V),e()}D([`click`,`keydown`]);var Se=u(`<h3 class="svelte-2penap"><!></h3>`);function Ce(e,t){var r=Se();y(h(r),()=>t.children),E(r),n(e,r)}function we(e,t){return e!==t&&!z(t,e)&&B(e)!==t}function Te(e,t,n){return e&&t!==null&&we(t,n)}var Ee=O(`<svg viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M1.25 4.25A1.75 1.75 0 0 1 3 2.5h2.45c.55 0 1.06.26 1.39.7l.6.8H13a1.75 1.75 0 0 1 1.75 1.75v5.5A1.75 1.75 0 0 1 13 13H3a1.75 1.75 0 0 1-1.75-1.75v-7Z" fill="currentColor"></path><path d="M1.75 6h12.5" stroke="currentColor" stroke-opacity="0.35"></path></svg>`);function De(e,t){let r=T(t,`size`,3,14);var i=Ee();M(()=>{k(i,`width`,r()),k(i,`height`,r())}),n(e,i)}var Oe=u(`<span class="asset-warning svelte-13aexy3">⚠</span>`),ke=u(`<div class="asset-row svelte-13aexy3"><button class="row asset current svelte-13aexy3" draggable="true" aria-current="page"><span class="glyph asset-glyph svelte-13aexy3">◆</span> <span class="label svelte-13aexy3"> </span> <!></button></div>`),Ae=u(`<div class="folder-row svelte-13aexy3"><button draggable="true"><span class="glyph svelte-13aexy3"><!></span><span class="label svelte-13aexy3"> </span><span class="count svelte-13aexy3"> </span></button></div> <!>`,1),je=u(`<p class="dialog-warning svelte-13aexy3"> </p>`),Me=u(`<p class="dialog-warning svelte-13aexy3">A sibling folder with this name already exists.</p>`),Ne=u(`<label class="dialog-row svelte-13aexy3"><span class="svelte-13aexy3">Name</span> <input class="control svelte-13aexy3" spellcheck="false"/></label> <p class="dialog-path svelte-13aexy3"> </p> <!> <!> <!>`,1),Pe=u(`<p class="dialog-text svelte-13aexy3">Delete <strong> </strong> </p> <!> <!>`,1),Fe=u(`<aside class="directory svelte-13aexy3" aria-label="Asset folders"><header class="svelte-13aexy3"><strong class="svelte-13aexy3">Folders</strong> <div class="actions svelte-13aexy3"><button class="icon-button svelte-13aexy3">+</button> <button class="icon-button svelte-13aexy3">✎</button> <button class="icon-button danger svelte-13aexy3">×</button></div></header> <div class="tree svelte-13aexy3"><button><span class="glyph svelte-13aexy3">▦</span><span class="label svelte-13aexy3">All Assets</span><span class="count svelte-13aexy3"> </span></button> <button><span class="glyph svelte-13aexy3">⌂</span><span class="label svelte-13aexy3">Root</span><span class="count svelte-13aexy3"> </span></button> <!> <!></div></aside> <!> <!>`,1);function Ie(s,u){S(u,!0);let m=T(u,`activeAsset`,3,null),y=T(u,`sharedDraggedFolder`,3,null),x=_(null),D=_(null),O=g(()=>y()??d(D)),I=g(()=>L.state?.library.folders??[]),te=g(()=>L.state?.assets??[]),W=g(()=>[...d(I)].sort((e,t)=>e.localeCompare(t)));function G(e){return d(te).filter(t=>t.folder===e).length}function re(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=Te(e.dataTransfer?.types.includes(`application/x-fundus-folder`)??!1,d(O),t);!n&&!r||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`move`),a(x,t,!0))}function ie(e,t){e.preventDefault(),a(x,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`)&&u.onMoveAssets(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`)||d(O);r&&we(r,t)&&oe(r,t)}function ae(e,t){m()||u.selectedFolder!==null&&z(u.selectedFolder,e)&&u.onSelect(`${t}${u.selectedFolder.slice(e.length)}`)}async function oe(e,t){let n=ne(t,U(e));try{await L.mutate(()=>P(e,t)),ae(e,n)}catch{}finally{a(D,null),u.onFolderDragEnd?.()}}let K=_(null),se=_(``),q=_(null),J=_(null),Y=_(``),ce=_(void 0),X=_(!1),Z=_(null),le=g(()=>u.selectedFolder!==null&&u.selectedFolder!==``?u.selectedFolder:null),ue=g(()=>d(Y)===``?null:V(d(Y))),de=g(()=>ne(d(K)===`rename`?B(d(q)??``):d(se),d(Y).normalize(`NFC`))),fe=g(()=>d(Y)!==``&&d(I).some(e=>e!==(d(K)===`rename`?d(q):null)&&R(e)===R(d(de)))),pe=g(()=>d(Y)!==``&&!d(ue)&&!d(fe)&&!d(X));function me(e=u.selectedFolder??``){a(se,e,!0),a(Y,``),a(Z,null),a(K,`create`),i().then(()=>d(ce)?.focus())}let he=0;t(()=>{u.createRequest!==null&&u.createRequest.id!==he&&(he=u.createRequest.id,me(u.createRequest.parent))});function Q(e,t,n=null){e.preventDefault(),e.stopPropagation(),u.onContextMenu(e.clientX,e.clientY,t,n)}function ge(e){e!==null&&(a(q,e,!0),a(Y,U(e),!0),a(Z,null),a(K,`rename`),i().then(()=>d(ce)?.focus()))}let _e=0;t(()=>{u.renameRequest!==null&&u.renameRequest.id!==_e&&(_e=u.renameRequest.id,ge(u.renameRequest.path))});function ve(e){e!==null&&(a(J,e,!0),a(Z,null),a(K,`delete`))}let ye=0;t(()=>{u.deleteRequest!==null&&u.deleteRequest.id!==ye&&(ye=u.deleteRequest.id,ve(u.deleteRequest.path))});function be(){d(X)||(a(K,null),a(Z,null))}async function xe(){if(d(pe)){a(X,!0),a(Z,null);try{if(d(K)===`create`){let e=d(de);await L.mutate(()=>ee(e)),m()||u.onSelect(e)}else if(d(K)===`rename`&&d(q)!==null){let e=d(q),t=d(de);await L.mutate(()=>N(e,d(Y))),ae(e,t)}a(K,null)}catch(e){a(Z,e instanceof Error?e.message:String(e),!0)}finally{a(X,!1)}}}let Se=g(()=>d(J)===null?[]:d(I).filter(e=>z(e,d(J)??``))),Ce=g(()=>d(J)===null?[]:d(te).filter(e=>z(e.folder,d(J)??``))),Ee=g(()=>new Set(d(Ce).map(e=>e.id))),Ie=g(()=>d(Ce).flatMap(e=>e.references.incoming.filter(e=>!d(Ee).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e.id}`)));async function Le(){if(d(J)===null)return;let e=d(J),t=B(e),n=m()!==null&&z(m().folder,e);a(X,!0),a(Z,null);try{await L.mutate(()=>F(e)),n?u.onActiveAssetDeleted?.(t):!m()&&u.selectedFolder!==null&&z(u.selectedFolder,e)&&u.onSelect(t),a(K,null)}catch(e){a(Z,e instanceof Error?e.message:String(e),!0)}finally{a(X,!1)}}function Re(e){m()&&(e.dataTransfer?.setData(`application/x-fundus-assets`,JSON.stringify([m().id])),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`))}var ze=Fe(),Be=r(ze),Ve=h(Be),He=o(h(Ve),2),Ue=h(He),We=o(Ue,2),Ge=o(We,2);E(He),E(Ve);var Ke=o(Ve,2),qe=h(Ke);let Je;var Ye=o(h(qe),2),Xe=h(Ye,!0);E(Ye),E(qe);var $=o(qe,2);let Ze;var Qe=o(h($),2),$e=h(Qe,!0);E(Qe),E($);var et=o($,2),tt=e=>{var t=ke();w(t,``,{},{"--depth":0});var r=h(t),i=o(h(r),2),a=h(i,!0);E(i);var s=o(i,2),c=e=>{var t=Oe();M(e=>k(t,`title`,e),[()=>m().warnings.join(`
|
|
2
|
-
`)]),n(e,t)};j(s,e=>{m().warnings.length>0&&e(c)}),E(r),E(t),M(()=>{k(r,`title`,m().id),p(a,m().id)}),l(`dragstart`,r,Re),n(e,t)};j(et,e=>{m()?.folder===``&&e(tt)}),f(o(et,2),16,()=>d(W),e=>e,(e,t)=>{let i=g(()=>t.split(`/`).length-1);var s=Ae(),f=r(s);let _;var v=h(f);let y;var b=h(v);De(h(b),{}),E(b);var S=o(b),T=h(S,!0);E(S);var O=o(S),A=h(O,!0);E(O),E(v),E(f);var N=o(f,2),P=e=>{var t=ke();let r;var a=h(t),s=o(h(a),2),c=h(s,!0);E(s);var u=o(s,2),f=e=>{var t=Oe();M(e=>k(t,`title`,e),[()=>m().warnings.join(`
|
|
3
|
-
`)]),n(e,t)};j(u,e=>{m().warnings.length>0&&e(f)}),E(a),E(t),M(()=>{r=w(t,``,r,{"--depth":d(i)+1}),k(a,`title`,m().id),p(c,m().id)}),l(`dragstart`,a,Re),n(e,t)};j(N,e=>{m()?.folder===t&&e(P)}),M((e,n)=>{_=w(f,``,_,{"--depth":d(i)}),y=C(v,1,`row folder svelte-13aexy3`,null,y,{selected:!m()&&u.selectedFolder===t,"drop-target":d(x)===t}),k(S,`title`,t),p(T,e),p(A,n)},[()=>U(t),()=>G(t)]),c(`click`,v,()=>u.onSelect(t)),c(`contextmenu`,v,e=>Q(e,t,t)),l(`dragstart`,v,e=>{a(D,t,!0),u.onFolderDragStart?.(t),e.dataTransfer?.setData(`application/x-fundus-folder`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),l(`dragend`,v,()=>{a(D,null),u.onFolderDragEnd?.(),a(x,null)}),l(`dragover`,v,e=>re(e,t)),l(`dragleave`,v,()=>a(x,null)),l(`drop`,v,e=>ie(e,t)),n(e,s)}),E(Ke),E(Be);var nt=o(Be,2),rt=e=>{{let t=g(()=>d(K)===`create`?`Create folder`:`Rename folder`),i=g(()=>d(X)?`Saving…`:d(K)===`create`?`Create`:`Rename`),s=g(()=>!d(pe));H(e,{get title(){return d(t)},get confirmLabel(){return d(i)},get confirmDisabled(){return d(s)},get busy(){return d(X)},onConfirm:()=>void xe(),onCancel:be,children:(e,t)=>{var i=Ne(),s=r(i),l=o(h(s),2);b(l),v(l,e=>a(ce,e),()=>d(ce)),E(s);var u=o(s,2),f=h(u,!0);E(u);var m=o(u,2),g=e=>{var t=je(),r=h(t,!0);E(t),M(()=>p(r,d(ue))),n(e,t)};j(m,e=>{d(ue)&&e(g)});var _=o(m,2),y=e=>{n(e,Me())};j(_,e=>{d(fe)&&e(y)});var x=o(_,2),S=e=>{var t=je(),r=h(t,!0);E(t),M(()=>p(r,d(Z))),n(e,t)};j(x,e=>{d(Z)&&e(S)}),M(()=>{l.disabled=d(X),p(f,d(de)||`Root`)}),c(`keydown`,l,e=>e.key===`Enter`&&void xe()),A(l,()=>d(Y),e=>a(Y,e)),n(e,i)},$$slots:{default:!0}})}};j(nt,e=>{(d(K)===`create`||d(K)===`rename`)&&e(rt)});var it=o(nt,2),at=e=>{{let t=g(()=>d(X)?`Deleting…`:`Delete recursively`);H(e,{title:`Delete folder`,get confirmLabel(){return d(t)},danger:!0,get busy(){return d(X)},onConfirm:()=>void Le(),onCancel:be,children:(e,t)=>{var i=Pe(),a=r(i),s=o(h(a)),c=h(s,!0);E(s);var l=o(s);E(a);var u=o(a,2),f=e=>{var t=je(),r=h(t);E(t),M(e=>p(r,`This leaves ${d(Ie).length??``} external reference(s) dangling:
|
|
4
|
-
${e??``}`),[()=>d(Ie).join(`, `)]),n(e,t)};j(u,e=>{d(Ie).length>0&&e(f)});var m=o(u,2),g=e=>{var t=je(),r=h(t,!0);E(t),M(()=>p(r,d(Z))),n(e,t)};j(m,e=>{d(Z)&&e(g)}),M(()=>{p(c,d(J)),p(l,`, ${d(Se).length-1} descendant folder(s),
|
|
5
|
-
and ${d(Ce).length??``} asset(s)? Raw and proxy files are removed.`)}),n(e,i)},$$slots:{default:!0}})}};j(it,e=>{d(K)===`delete`&&d(J)!==null&&e(at)}),M(e=>{k(Ue,`title`,m()?`Create folder beside the current asset`:`Create child folder`),k(We,`title`,m()?`Rename the current asset folder`:`Rename selected folder`),We.disabled=d(le)===null,k(Ge,`title`,m()?`Delete the current asset folder`:`Delete selected folder`),Ge.disabled=d(le)===null,Je=C(qe,1,`row special svelte-13aexy3`,null,Je,{selected:!m()&&u.selectedFolder===null}),p(Xe,d(te).length),Ze=C($,1,`row special svelte-13aexy3`,null,Ze,{selected:!m()&&u.selectedFolder===``,"drop-target":d(x)===``}),p($e,e)},[()=>G(``)]),c(`contextmenu`,Be,e=>Q(e,``)),c(`click`,Ue,()=>me()),c(`click`,We,()=>ge(d(le))),c(`click`,Ge,()=>ve(d(le))),c(`click`,qe,()=>u.onSelect(null)),c(`click`,$,()=>u.onSelect(``)),l(`dragover`,$,e=>re(e,``)),l(`dragleave`,$,()=>a(x,null)),l(`drop`,$,e=>ie(e,``)),n(s,ze),e()}D([`contextmenu`,`click`,`keydown`]);var Le=u(`<button role="menuitem" class="svelte-1gtdcf3">Rename</button>`),Re=u(`<button class="danger svelte-1gtdcf3" role="menuitem">Delete Directory</button>`),ze=u(`<div class="context-menu svelte-1gtdcf3" role="menu" aria-label="Library actions" tabindex="-1"><button role="menuitem" class="svelte-1gtdcf3">New Directory</button> <!> <button role="menuitem" class="svelte-1gtdcf3">Import File</button> <!></div>`);function Be(t,r){S(r,!0);let i=g(()=>Math.max(8,Math.min(r.x,window.innerWidth-176))),a=g(()=>2+ +!!r.onRenameDirectory+ +!!r.onDeleteDirectory),s=g(()=>Math.max(8,Math.min(r.y,window.innerHeight-(d(a)*32+8))));function u(e){e(),r.onClose()}var f=ze();l(`click`,m,function(...e){r.onClose?.apply(this,e)}),l(`blur`,m,function(...e){r.onClose?.apply(this,e)}),l(`keydown`,m,e=>e.key===`Escape`&&r.onClose()),l(`resize`,m,function(...e){r.onClose?.apply(this,e)}),l(`scroll`,m,function(...e){r.onClose?.apply(this,e)});let p;var _=h(f),v=o(_,2),y=e=>{var t=Le();c(`click`,t,()=>u(r.onRenameDirectory)),n(e,t)};j(v,e=>{r.onRenameDirectory&&e(y)});var b=o(v,2),x=o(b,2),C=e=>{var t=Re();c(`click`,t,()=>u(r.onDeleteDirectory)),n(e,t)};j(x,e=>{r.onDeleteDirectory&&e(C)}),E(f),M(()=>p=w(f,``,p,{left:`${d(i)}px`,top:`${d(s)}px`})),c(`contextmenu`,f,e=>e.preventDefault()),c(`click`,_,()=>u(r.onNewDirectory)),c(`click`,b,()=>u(r.onImportFile)),n(t,f),e()}D([`contextmenu`,`click`]);export{we as a,pe as c,Te as i,q as l,Ie as n,Ce as o,De as r,xe as s,Be as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,s as t}from"../chunks/DjvOiDmq.js";export{t as load_css,e as start};
|
|
@@ -1,3 +0,0 @@
|
|
|
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 te,it as w,j as T,l as E,o as ne,q as re,rt as ie,s as ae,u as oe,w as D,z as O}from"../chunks/CNRz3sSw.js";import{c as se,t as ce}from"../chunks/DjvOiDmq.js";import"../chunks/xihTtKlq.js";import{a as le,c as ue,l as de,t as k,u as fe}from"../chunks/CO4RBJfa.js";import{a as pe,i as me,l as he,n as ge,o as _e,r as ve,s as ye,t as be}from"../chunks/n7mvYc42.js";import{a as xe,d as Se,f as Ce,g as we,i as Te,t as Ee,u as De}from"../chunks/Cx6qtxJg.js";function A(e){return Array.isArray?Array.isArray(e):je(e)===`[object Array]`}function Oe(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?``:Oe(e)}function j(e){return typeof e==`string`}function M(e){return typeof e==`number`}function N(e){return e===!0||e===!1||Ae(e)&&je(e)==`[object Boolean]`}function P(e){return typeof e==`object`}function Ae(e){return P(e)&&e!==null}function F(e){return e!=null}function I(e){return!e.trim().length}function je(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}.`,Me=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(j(e)||A(e))r=e,t=Ne(e),n=Pe(e);else{if(!U.call(e,`name`))throw Error(Me(`name`));let o=e.name;if(r=o,U.call(e,`weight`)&&e.weight!==void 0&&(i=e.weight,i<=0))throw Error(V(Pe(o)));t=Ne(o),n=Pe(o),a=e.getFn??null}return{path:t,id:n,weight:i,src:r,getFn:a}}function Ne(e){return A(e)?e:e.split(`.`)}function Pe(e){return A(e)?e.join(`.`):e}function Fe(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&&(j(s)||M(s)||N(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,j(t)?t.split(`.`):t,0),r?n:n[0]}var Ie={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},Le={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},Re={location:0,threshold:.6,distance:100},K={useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:`any`,getFn:Fe,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},q=Object.freeze({...Le,...Ie,...Re,...K});function ze(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=ze(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(j(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(j(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(j(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=j(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(j(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 Be(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 Ve(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 He(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 Ue(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 We(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 Ge={ł:`l`,Ł:`L`,đ:`d`,Đ:`D`,ø:`o`,Ø:`O`,ħ:`h`,Ħ:`H`,ŧ:`t`,Ŧ:`T`,ı:`i`,ß:`ss`},Ke=RegExp(`[`+Object.keys(Ge).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(Ke,e=>Ge[e]):e=>e,qe=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:Ue(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}=He(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=We(u)),p}},Je=new Set([`fuzzy`,`include`]);function Ye(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 qe(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)}}}}],Xe=Z.length,Ze=`\0`,Qe=`|`;function $e(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 et(e,t){let n=e.match(t);return n?n[1]:null}function tt(e,t={}){return e.replace(/\\\|/g,Ze).split(Qe).map(e=>{let n=$e(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<Xe;){let e=Z[o],n=et(i,e.multiRegex);n&&(r.push(e.create(n,t)),a=!0)}if(!a)for(o=-1;++o<Xe;){let e=Z[o],n=et(i,e.singleRegex);if(n){r.push(e.create(n,t));break}}}return r})}var nt=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=tt(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,Ye(r.type)&&(c=!0),n&&(Je.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=We(o)),e}}return{isMatch:!1,score:1}}},rt=[];function it(...e){rt.push(...e)}function at(e,t){for(let n=0,r=rt.length;n<r;n+=1){let r=rt[n];if(r.condition(e,t))return new r(e,t)}return new qe(e,t)}var Q={AND:`$and`,OR:`$or`},ot={PATH:`$path`,PATTERN:`$val`},st=e=>!!(e[Q.AND]||e[Q.OR]),ct=e=>!!e[ot.PATH],lt=e=>!A(e)&&P(e)&&!st(e),ut=e=>({[Q.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function dt(e,t,{auto:n=!0}={}){let r=e=>{if(j(e)){let r={keyId:null,pattern:e};return n&&(r.searcher=at(e,t)),r}let i=Object.keys(e),a=ct(e);if(!a&&i.length>1&&!st(e))return r(ut(e));if(lt(e)){let r=a?e[ot.PATH]:i[0],o=a?e[ot.PATTERN]:e[r];if(!j(o))throw Error(z(r));let s={keyId:Pe(r),pattern:o};return n&&(s.searcher=at(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 st(e)||(e=ut(e)),r(e)}function ft(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 pt(e,{ignoreFieldNorm:t=q.ignoreFieldNorm}){e.forEach(e=>{e.score=ft(e.matches,{ignoreFieldNorm:t})})}var mt=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 ht(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 gt(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=ht(e)),r&&(a.score=e.score),a})}var _t=/[\p{L}\p{M}\p{N}_]+/gu,vt=new WeakSet;function yt(e){vt.has(e)||(vt.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 bt(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||yt(e),t=>t.match(e)||[]):e=>e.match(_t)||[]}function xt({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){let r=bt(n);return{tokenize(n){return e||(n=n.toLowerCase()),t&&(n=X(n)),r(n)}}}var St=class{static condition(e,t){return t.useTokenSearch}constructor(e,t){this.options=t,this.analyzer=xt({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 qe(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=We(t)),this.combineAll&&(this.useMask?c.matchedMask=a:c.matchedTerms=o,c.termCount=this.numTerms),c}};function Ct(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 wt(e,t,n,r){let{i,v:a,$:o}=t;if(a!==void 0){Ct(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)Ct(e,t.v,i,r);else Ct(e,n.v,i,r)}}function Tt(e,t,n){let r={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(let i of e)wt(r,i,t,n);return r}function Et(e,t,n,r){wt(e,t,n,r)}function Dt(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 Ot(e,t){if(t.length===0)return;let n=Array.from(new Set(t)).sort((e,t)=>e-t);for(let t of n)Dt(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=at(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||Be(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){let e=xt({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=Tt(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=xt({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});Et(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&&Ot(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&&Ot(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(j(e)&&!e.trim()){let e=this._docs.map((e,t)=>({item:e,refIndex:t}));return M(n)&&n>-1&&(e=e.slice(0,n)),e}let c=M(n)&&n>0&&j(e),l;if(c){let t=new mt(n);j(this._docs[0])?this._searchStringList(e,{heap:t,ignoreFieldNorm:s}):this._searchObjectList(e,{heap:t,ignoreFieldNorm:s}),l=t.extractSorted(o)}else l=j(e)?j(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e),pt(l,{ignoreFieldNorm:s}),a&&l.sort(o),M(n)&&n>-1&&(l=l.slice(0,n));return gt(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=ft(r.matches,{ignoreFieldNorm:n}),t.shouldInsert(r.score)&&t.insert(r)):o.push(r)}}}),o}_searchLogical(e){let t=dt(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=ft(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=Be,$.parseIndex=Ve,$.config=q,$.match=function(e,t,n){if(n&&n.useTokenSearch)throw Error(H);return at(e,{...q,...n}).searchIn(t)},$.parseQuery=dt,it(nt),it(St),$.use=function(...e){e.forEach(e=>it(e))};var kt=$,At=d(`<button role="menuitem" class="svelte-3625lw">Rename…</button>`),jt=d(`<div class="context-menu svelte-3625lw" role="menu" aria-label="Asset actions" tabindex="-1"><!> <button class="danger svelte-3625lw" role="menuitem"> </button></div>`);function Mt(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=jt();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=At();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);w(b),w(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()}T([`contextmenu`,`click`]);var Nt=d(`<span class="emoji svelte-19j400l"> </span>`),Pt=d(`<span><!> <span class="name svelte-19j400l"> </span></span>`);function Ft(t,n){x(n,!0);let r=te(n,`variant`,3,`chip`),a=te(n,`passive`,3,!1),o=te(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=Pt();let p;var h=g(d),v=e=>{var t=Nt(),n=g(t,!0);w(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);w(y),w(d),O(()=>{p=ee(d,1,`manifest-label ${r()??``}`,`svelte-19j400l`,p,{passive:a()}),C(d,`--manifest-color: ${f(l)??``}`),E(d,`title`,f(u)),m(b,n.name)}),i(t,d),e()}var It=d(`<span class="selection-summary svelte-1uha8ag"> </span> <button class="control">Select all shown</button> <button class="control">Clear</button>`,1),Lt=d(`<button class="control">Select All</button>`),Rt=d(`<option> </option>`),zt=d(`<div class="empty svelte-1uha8ag">Loading library…</div>`),Bt=d(`<div class="empty svelte-1uha8ag"> </div>`),Vt=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>`),Ht=d(`<section class="section folder-section svelte-1uha8ag"><!> <div class="folder-grid svelte-1uha8ag"></div></section>`),Ut=d(`<span class="section-emoji svelte-1uha8ag"> </span>`),Wt=d(`<!> `,1),Gt=d(`<video playsinline="" preload="metadata" class="svelte-1uha8ag"></video>`,2),Kt=d(`<img loading="lazy" class="svelte-1uha8ag"/>`),qt=d(`<span class="badge warning svelte-1uha8ag">⚠</span>`),Jt=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>`),Yt=d(`<section class="section svelte-1uha8ag"><!> <div class="grid svelte-1uha8ag"></div></section>`),Xt=d(`<!> <!>`,1),Zt=d(`<div class="drop-hint svelte-1uha8ag"> </div>`),Qt=d(`<p class="dialog-warning svelte-1uha8ag"> </p>`),$t=d(`<p class="dialog-warning svelte-1uha8ag">An asset with this ID already exists.</p>`),en=d(`<label class="dialog-row svelte-1uha8ag"><span class="svelte-1uha8ag">ID</span> <input class="control svelte-1uha8ag" spellcheck="false"/></label> <!> <!> <!> <!>`,1),tn=d(`<p class="dialog-text svelte-1uha8ag"> </p> <!> <!>`,1),nn=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 rn(d,C){x(C,!0);let te=`fundus.gallery.sort`,T=`fundus.gallery.folder`;function A(){try{let e=localStorage.getItem(te);if(e===`type`||e===`manifest`||e===`alphabetical`)return e}catch{}return`alphabetical`}let Oe=v(re(A()));function ke(){try{let e=localStorage.getItem(T);return e===null||e===`__all__`?null:e}catch{return null}}let j=v(re(ke())),M=v(`all`),N=v(`all`),P=v(``),Ae=v(!1),F=v(!1),I=v(null),je=v(``),L=v(null),R=v(null),z=v(null),B=v(``),Me=v(void 0),V=v(re([])),H=v(null),U=v(null),W=v(!1),G=v(null),Ne=v(null),Pe=0,Fe=v(null),Ie=0,Le=v(null),Re=0,K=v(re([])),q=v(null),ze=v(void 0),J=v(void 0),Be=Te().join(`,`),Ve=/Mac|iPhone|iPad/.test(navigator.platform)?`⌘K`:`Ctrl K`;n(()=>{try{localStorage.setItem(te,f(Oe))}catch{}}),n(()=>{try{localStorage.setItem(T,f(j)??`__all__`)}catch{}});let Y=_(()=>k.state?.assets??[]),He=_(()=>f(z)!==null&&f(B)!==f(z)?xe(f(B)):null),Ue=_(()=>f(z)!==null&&f(Y).some(e=>e.id!==f(z)&&e.id===f(B))),We=_(()=>f(z)!==null&&f(B)!==f(z)&&f(He)===null&&!f(Ue)&&!f(W)),Ge=_(()=>f(z)===null?[]:(f(Y).find(e=>e.id===f(z))?.references.incoming??[]).map(e=>`${e.assetId}.${e.field} → ${f(z)}`)),Ke=_(()=>new Set(f(V))),X=_(()=>f(V).flatMap(e=>(f(Y).find(t=>t.id===e)?.references.incoming??[]).filter(e=>!f(Ke).has(e.assetId)).map(t=>`${t.assetId}.${t.field} → ${e}`))),qe=_(()=>k.state?.library.folders??[]),Je=_(()=>k.manifestNames),Ye=_(()=>[...new Set(f(Y).map(e=>e.type))].sort()),Z=_(()=>f(P).trim()),Xe=_(()=>new kt(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})),Ze=_(()=>f(Z)===``?null:new Set(f(Xe).search(f(Z)).map(({item:e})=>e.id))),Qe=_(()=>f(qe).map(e=>({path:e,name:De(e)}))),$e=_(()=>new kt(f(Qe),{keys:[{name:`name`,weight:.7},{name:`path`,weight:.3}],threshold:.35,ignoreLocation:!0,ignoreDiacritics:!0})),et=_(()=>f(Z)===``?null:new Set(f($e).search(f(Z)).map(({item:e})=>e.path))),tt=_(()=>f(j)===null?[]:f(qe).filter(e=>we(e)===f(j)).sort((e,t)=>e.localeCompare(t))),nt=_(()=>f(et)===null?f(tt):f(tt).filter(e=>f(et).has(e)));n(()=>{k.state&&f(j)!==null&&f(j)!==``&&!f(qe).includes(f(j))&&s(j,null)});let rt=_(()=>f(Y).filter(e=>!(f(j)!==null&&e.folder!==f(j)||f(Ze)!==null&&!f(Ze).has(e.id)||f(M)!==`all`&&e.type!==f(M)||f(N)!==`all`&&!e.manifests.includes(f(N))&&!e.passiveManifests.some(e=>e.manifest===f(N))||f(Ae)&&e.warnings.length===0))),it=(e,t)=>e.id.localeCompare(t.id),at=_(()=>{let e=[...f(rt)].sort(it);if(f(Oe)===`alphabetical`)return[{key:`all`,heading:null,assets:e}];if(f(Oe)===`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(Je)){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(at).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 ot(e){s(j,e,!0),s(K,[],!0),s(q,null)}function st(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 ct(){s(K,[...f(Q)],!0),s(q,f(Q).at(-1)??null,!0)}function lt(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 ut(e){e.preventDefault(),s(F,!1);let t=e.dataTransfer?.files?.[0];t&&(s(je,f(j)??``,!0),s(I,t,!0))}function dt(e){s(je,e,!0),f(ze)?.click()}function ft(e){Pe+=1,s(Ne,{id:Pe,parent:e},!0)}function pt(e){Ie+=1,s(Fe,{id:Ie,path:e},!0)}function mt(e){Re+=1,s(Le,{id:Re,path:e},!0)}function ht(e){e.preventDefault(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:f(j)??``,renamePath:null},!0)}function gt(e,t){e.preventDefault(),e.stopPropagation(),s(R,null),s(L,{x:e.clientX,y:e.clientY,parent:t,renamePath:t},!0)}function _t(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 vt(e){s(z,e,!0),s(B,e,!0),s(G,null),o().then(()=>{f(Me)?.focus(),f(Me)?.select()})}function yt(e){s(V,[...new Set(e)],!0),s(G,null)}function bt(){f(W)||(s(z,null),s(V,[],!0),s(G,null))}async function xt(){if(!f(We)||f(z)===null)return;let e=f(z),t=f(B);s(W,!0),s(G,null);try{await k.mutate(()=>fe(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 St(){if(f(V).length===0)return;let e=[...f(V)];s(W,!0),s(G,null);try{await k.mutate(()=>le(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 Ct(e){return f(Y).filter(t=>t.folder===e).length}function wt(e){let t=e.currentTarget,n=t.files?.[0];t.value=``,n&&s(I,n,!0)}async function Tt(e){s(I,null),await ce(se(`/asset/[id]`,{id:e}))}async function Et(e,t){let n=e.filter(e=>k.assetById(e)?.folder!==t);if(n.length!==0)try{await k.mutate(()=>ue(n,t)),s(K,[],!0),s(q,null)}catch{}}function Dt(e,t){let n=e.dataTransfer?.types.includes(`application/x-fundus-assets`)??!1,r=me(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 Ot(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`)&&Et(e,t)}catch{}return}let r=e.dataTransfer?.getData(`application/x-fundus-folder`);r&&pe(r,t)&&$(r,t)}async function $(e,t){let n=Ce(t,De(e));try{await k.mutate(()=>de(e,t)),f(j)!==null&&Se(f(j),e)&&ot(`${n}${f(j).slice(e.length)}`)}catch{}finally{s(H,null),s(U,null)}}function At(e){e&&e.play().catch(()=>{})}function jt(e){e&&(e.pause(),e.currentTime=0)}function Nt(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 Pt=nn();u(`keydown`,h,Nt),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,ut);var rn=a(Pt),an=g(rn);ge(an,{get selectedFolder(){return f(j)},get createRequest(){return f(Ne)},get renameRequest(){return f(Fe)},get deleteRequest(){return f(Le)},onSelect:ot,onMoveAssets:(e,t)=>void Et(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 on=c(an,2);let sn;var cn=g(on),ln=g(cn),un=e=>{var t=It(),n=a(t),r=g(n);w(n);var o=c(n,2),u=c(o,2);O(()=>m(r,`${f(K).length??``} selected`)),l(`click`,o,ct),l(`click`,u,()=>{s(K,[],!0),s(q,null)}),i(e,t)},dn=e=>{var t=Lt();O(()=>t.disabled=f(Q).length===0),l(`click`,t,ct),i(e,t)};D(ln,e=>{f(K).length>0?e(un):e(dn,-1)});var fn=c(ln,2),pn=c(fn,2);y(pn,e=>s(ze,e),()=>f(ze)),w(cn);var mn=c(cn,2),hn=g(mn),gn=g(hn);gn.value=gn.__value=`alphabetical`;var _n=c(gn);_n.value=_n.__value=`type`;var vn=c(_n);vn.value=vn.__value=`manifest`,w(hn);var yn=c(hn,2),bn=g(yn);bn.value=bn.__value=`all`,p(c(bn),16,()=>f(Ye),e=>e,(e,t)=>{var n=Rt(),r=g(n,!0);w(n);var a={};O(()=>{m(r,t),a!==(a=t)&&(n.value=(n.__value=t)??``)}),i(e,n)}),w(yn);var xn=c(yn,2),Sn=g(xn);Sn.value=Sn.__value=`all`,p(c(Sn),16,()=>f(Je),e=>e,(e,t)=>{let n=_(()=>k.manifestAppearance(t).emoji);var r=Rt(),a=g(r,!0);w(r);var o={};O(()=>{m(a,f(n)?`${f(n)} ${t}`:t),o!==(o=t)&&(r.value=(r.__value=t)??``)}),i(e,r)}),w(xn);var Cn=c(xn,2),wn=c(g(Cn),2);b(wn),y(wn,e=>s(J,e),()=>f(J));var Tn=c(wn,2),En=g(Tn,!0);w(Tn),w(Cn);var Dn=c(Cn,2),On=g(Dn);b(On),ie(),w(Dn),w(mn);var kn=c(mn,2),An=e=>{i(e,zt())},jn=e=>{var t=Bt(),n=g(t,!0);w(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)},Mn=e=>{var n=Xt(),o=a(n),d=e=>{var n=Ht(),r=g(n);_e(r,{children:(e,n)=>{ie(),i(e,t(`Folders`))},$$slots:{default:!0}});var a=c(r,2);p(a,20,()=>f(nt),e=>e,(e,t)=>{var n=Vt();let r;var a=g(n);ve(g(a),{size:18}),w(a);var o=c(a,2),d=g(o),p=g(d,!0);w(d);var h=c(d,2),_=g(h);w(h),w(o),ie(2),w(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`)},[()=>De(t),()=>Ct(t)]),l(`click`,n,()=>ot(t)),l(`contextmenu`,n,e=>gt(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=>Dt(e,t)),u(`dragleave`,n,()=>s(U,null)),u(`drop`,n,e=>Ot(e,t)),i(e,n)}),w(a),w(n),i(e,n)};D(o,e=>{f(nt).length>0&&e(d)});var h=c(o,2),v=e=>{var t=r();p(a(t),17,()=>f(at),e=>e.key,(e,t)=>{var n=Yt(),r=g(n),o=e=>{_e(e,{children:(e,n)=>{var r=Wt(),o=a(r),s=e=>{var n=Ut(),r=g(n,!0);w(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(r,e=>{f(t).heading&&e(o)});var s=c(r,2);p(s,21,()=>f(t).assets,e=>e.id,(e,t)=>{var n=Jt();let r;var a=g(n);b(a);var o=c(a,2),s=g(o),d=e=>{var n=Gt();n.muted=!0,O(()=>E(n,`src`,f(t).proxy?.url??f(t).rawUrl)),u(`pointerenter`,n,e=>At(e.currentTarget)),u(`pointerleave`,n,e=>jt(e.currentTarget)),i(e,n)},h=e=>{{let n=_(()=>f(t).proxy?.url??f(t).rawUrl);ye(e,{get src(){return f(n)}})}},v=e=>{var n=Kt();O(()=>{E(n,`src`,f(t).proxy?.url??f(t).rawUrl),E(n,`alt`,f(t).id)}),i(e,n)};D(s,e=>{f(t).type===`video`||f(t).type===`chroma-key-video`?e(d):f(t).type===`audio`?e(h,1):e(v,-1)}),w(o);var y=c(o,2),x=g(y),S=g(x,!0);w(x);var C=c(x,2),te=g(C,!0);w(C),w(y);var T=c(y,2),ne=g(T);p(ne,16,()=>f(t).manifests,e=>e,(e,t)=>{Ft(e,{get name(){return t}})});var re=c(ne,2);p(re,17,()=>f(t).passiveManifests,e=>e.manifest,(e,t)=>{Ft(e,{get name(){return f(t).manifest},passive:!0,get via(){return f(t).via}})}),p(c(re,2),16,()=>f(t).warnings,e=>e,(e,t)=>{var n=qt();O(()=>E(n,`title`,t)),i(e,n)}),w(T),w(n),O((e,i,o)=>{r=ee(n,1,`card svelte-1uha8ag`,null,r,e),E(n,`data-asset-id`,f(t).id),E(n,`href`,i),oe(a,o),E(a,`aria-label`,`Select ${f(t).id}`),m(S,f(t).id),m(te,f(t).type)},[()=>({selected:f(K).includes(f(t).id)}),()=>se(`/asset/[id]`,{id:f(t).id}),()=>f(K).includes(f(t).id)]),l(`contextmenu`,n,e=>_t(e,f(t).id)),l(`click`,n,e=>{(f(K).length>0||e.metaKey||e.ctrlKey||e.shiftKey)&&(e.preventDefault(),st(f(t).id,e.shiftKey))}),u(`dragstart`,n,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`),lt(e,n)}),u(`focus`,n,e=>At(e.currentTarget.querySelector(`video`))),u(`blur`,n,e=>jt(e.currentTarget.querySelector(`video`))),l(`click`,a,e=>{e.stopPropagation(),st(f(t).id,e.shiftKey)}),i(e,n)}),w(s),w(n),i(e,n)}),i(e,t)};D(h,e=>{f(rt).length>0&&e(v)}),i(e,n)};D(kn,e=>{k.state?f(rt).length===0&&f(nt).length===0?e(jn,1):e(Mn,-1):e(An)});var Nn=c(kn,2),Pn=e=>{var t=Zt(),n=g(t);w(t),O(()=>m(n,`Drop to import into ${(f(j)||`Root`)??``}`)),i(e,t)};D(Nn,e=>{f(F)&&e(Pn)}),w(on),w(rn);var Fn=c(rn,2),In=e=>{{let t=_(()=>f(L).renamePath===null?void 0:()=>pt(f(L)?.renamePath??``)),n=_(()=>f(L).renamePath===null?void 0:()=>mt(f(L)?.renamePath??``));be(e,{get x(){return f(L).x},get y(){return f(L).y},onNewDirectory:()=>ft(f(L)?.parent??``),get onRenameDirectory(){return f(t)},onImportFile:()=>dt(f(L)?.parent??``),get onDeleteDirectory(){return f(n)},onClose:()=>s(L,null)})}};D(Fn,e=>{f(L)&&e(In)});var Ln=c(Fn,2),Rn=e=>{{let t=_(()=>f(R).assetIds.length===1?()=>vt(f(R)?.assetIds[0]??``):void 0);Mt(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:()=>yt(f(R)?.assetIds??[]),onClose:()=>s(R,null)})}};D(Ln,e=>{f(R)&&e(Rn)});var zn=c(Ln,2),Bn=e=>{{let t=_(()=>f(W)?`Renaming…`:`Rename`),n=_(()=>!f(We));Ee(e,{title:`Rename asset`,get confirmLabel(){return f(t)},get confirmDisabled(){return f(n)},get busy(){return f(W)},onConfirm:()=>void xt(),onCancel:bt,children:(e,t)=>{var n=en(),r=a(n),o=c(g(r),2);b(o),y(o,e=>s(Me,e),()=>f(Me)),w(r);var u=c(r,2),d=e=>{var t=Qt(),n=g(t,!0);w(t),O(()=>m(n,f(He))),i(e,t)};D(u,e=>{f(He)&&e(d)});var p=c(u,2),h=e=>{i(e,$t())};D(p,e=>{f(Ue)&&e(h)});var _=c(p,2),v=e=>{var t=Qt(),n=g(t);w(t),O(e=>m(n,`Renaming leaves ${f(Ge).length??``} reference(s) pointing to the old ID:
|
|
2
|
-
${e??``}`),[()=>f(Ge).join(`, `)]),i(e,t)};D(_,e=>{f(Ge).length>0&&e(v)});var x=c(_,2),S=e=>{var t=Qt(),n=g(t,!0);w(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 xt()),ae(o,()=>f(B),e=>s(B,e)),i(e,n)},$$slots:{default:!0}})}};D(zn,e=>{f(z)!==null&&e(Bn)});var Vn=c(zn,2),Hn=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`);Ee(e,{get title(){return f(t)},get confirmLabel(){return f(n)},danger:!0,get busy(){return f(W)},onConfirm:()=>void St(),onCancel:bt,children:(e,t)=>{var n=tn(),r=a(n),o=g(r);w(r);var s=c(r,2),l=e=>{var t=Qt(),n=g(t);w(t),O(e=>m(n,`This leaves ${f(X).length??``} external reference(s) dangling:
|
|
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=Qt(),n=g(t,!0);w(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(Vn,e=>{f(V).length>0&&e(Hn)});var Un=c(Vn,2),Wn=e=>{he(e,{get file(){return f(I)},get folder(){return f(je)},onDone:e=>void Tt(e),onCancel:()=>s(I,null)})};D(Un,e=>{f(I)&&e(Wn)}),O(()=>{sn=ee(on,1,`page svelte-1uha8ag`,null,sn,{dragging:f(F)}),E(pn,`accept`,Be),m(En,Ve)}),l(`contextmenu`,on,ht),u(`dragleave`,on,e=>{e.relatedTarget===null&&s(F,!1)}),l(`click`,fn,()=>dt(f(j)??``)),l(`change`,pn,wt),S(hn,()=>f(Oe),e=>s(Oe,e)),S(yn,()=>f(M),e=>s(M,e)),S(xn,()=>f(N),e=>s(N,e)),l(`keydown`,wn,e=>{e.key===`Escape`&&(e.stopPropagation(),f(P)===``?e.currentTarget.blur():s(P,``))}),ae(wn,()=>f(P),e=>s(P,e)),ne(On,()=>f(Ae),e=>s(Ae,e)),i(d,Pt),e()}T([`contextmenu`,`click`,`change`,`keydown`]);export{rn as component};
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import{$ as e,A as t,B as n,C as r,D as i,E as a,G as o,J as s,K as c,L as l,M as u,N as d,O as f,P as p,S as m,T as h,U as g,W as _,X as v,Y as y,_ as b,a as x,b as S,c as C,d as w,et as T,g as E,h as D,i as O,it as k,j as A,k as j,l as M,m as N,n as P,nt as F,p as I,q as L,rt as R,u as z,w as B,x as ee,y as V,z as H}from"../chunks/CNRz3sSw.js";import{c as U,t as W}from"../chunks/DjvOiDmq.js";import"../chunks/xihTtKlq.js";import{t as te}from"../chunks/BfPE5wdt.js";import{c as ne,i as re,t as G,u as ie}from"../chunks/CO4RBJfa.js";import{c as ae,l as oe,n as se,o as K,s as ce,t as le}from"../chunks/n7mvYc42.js";import{C as q,S as ue,a as de,b as fe,c as pe,h as me,i as he,m as ge,o as _e,s as ve,y as ye}from"../chunks/Cx6qtxJg.js";import{n as be,r as J,t as xe}from"../chunks/DjdrdRzT.js";var Se=new Map;function Ce(e){return Se.get(e)?.resources?.objectUrl??e}var we=new Set([`image`,`slice`]),Te=new Set([`video`,`chroma-key-video`,`audio`]);function Ee(e,t){return we.has(e)?t[e]?.decode??!0:!1}async function De(e){let t=await fetch(e);if(!t.ok)throw Error(`Preloading "${e}" failed: ${t.status} ${t.statusText}.`);return t}function Oe(e){return{async preload(t,n){if(await(await De(t)).arrayBuffer(),Ee(e,n)&&typeof globalThis.Image==`function`){let e=new globalThis.Image;e.src=t,await e.decode()}return{}}}}var ke={async preload(e){let t=await(await De(e)).blob();return typeof URL.createObjectURL==`function`?{objectUrl:URL.createObjectURL(t)}:{}},release(e){e.objectUrl!==void 0&&typeof URL.revokeObjectURL==`function`&&URL.revokeObjectURL(e.objectUrl)}};new Map([[`image`,Oe(`image`)],[`slice`,Oe(`slice`)],...[...Te].map(e=>[e,ke])]);var Ae=f(`<img/>`);function je(t,n){T(n,!0);let r=O(n,`alt`,3,``),i=O(n,`class`,3,``);var o=Ae();H(()=>{M(o,`src`,n.src.src),M(o,`width`,n.src.width),M(o,`height`,n.src.height),M(o,`alt`,r()),E(o,1,b(i()))}),a(t,o),e()}function Me(e,t,n){return Math.max(t,Math.min(n,e))}function Ne(e){let{mode:t,insets:n}=e.slicing,r=fe(t);return{top:r.vertical?n.top:0,bottom:r.vertical?n.bottom:0,left:r.horizontal?n.left:0,right:r.horizontal?n.right:0}}function Pe(e){let t=e.slicing.overdraw;if(!t)return pe();let n=e.sourceWidth,r=e.sourceHeight,i=Me(t.left,0,Math.max(0,n-1)),a=Me(t.right,0,Math.max(0,n-i-1)),o=Me(t.top,0,Math.max(0,r-1));return{top:o,right:a,bottom:Me(t.bottom,0,Math.max(0,r-o-1)),left:i}}function Fe(e){let t=Pe(e);return{width:Math.max(1,e.sourceWidth-t.left-t.right),height:Math.max(1,e.sourceHeight-t.top-t.bottom)}}function Ie(e,t,n){let r=Pe(e);if(r.top===0&&r.right===0&&r.bottom===0&&r.left===0)return r;let i=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,a=Fe(e),o,s;return e.slicing.mode===`three-horizontal`?o=s=n/a.height:e.slicing.mode===`three-vertical`?o=s=t/a.width:e.slicing.mode===`one`?(o=t/a.width,s=n/a.height):o=s=1/i,{top:Math.round(r.top*s),right:Math.round(r.right*o),bottom:Math.round(r.bottom*s),left:Math.round(r.left*o)}}function Le(e,t,n,r){let i=Ie(e,t,n),a=t+i.left+i.right,o=n+i.top+i.bottom;return{cssLeft:-i.left+0,cssTop:-i.top+0,cssWidth:a,cssHeight:o,backingWidth:Math.round(a*r),backingHeight:Math.round(o*r),originX:i.left*r,originY:i.top*r}}function Re(e){let t=0,n=[0];for(let r of e)t+=r,n.push(Math.round(t));return n}function Y(e,t,n){if(t<=0||n<=0)return[];let r=Ie(e,t,n),i=t+r.left+r.right,a=n+r.top+r.bottom,o=e.sourceWidth,s=e.sourceHeight,c=e.slicing.pixelRatio>0?e.slicing.pixelRatio:1,l=e.slicing.mode,u=Ne(e),d=Me(u.left,0,o),f=Me(u.right,0,Math.max(0,o-d)),p=Me(u.top,0,s),m=Me(u.bottom,0,Math.max(0,s-p)),h=Math.max(0,o-d-f),g=Math.max(0,s-p-m),_,v;if(l===`three-horizontal`){let e=a/s;_=d*e,v=f*e}else _=d/c,v=f/c;let y=Math.max(0,i-_-v),b,x;if(l===`three-vertical`){let e=i/o;b=p*e,x=m*e}else b=p/c,x=m/c;let S=Math.max(0,a-b-x),C=[d,h,f],w=[p,g,m],T=[0,d,d+h],E=[0,p,p+g],D=Re([_,y,v]),O=Re([b,S,x]),k=[];for(let e=0;e<3;e++)for(let t=0;t<3;t++){let n=C[t],i=w[e];if(n<=0||i<=0)continue;let a=D[t],o=D[t+1]-a,s=O[e],c=O[e+1]-s;o<=0||c<=0||k.push({key:`${e}-${t}`,sx:T[t],sy:E[e],sw:n,sh:i,dx:a-r.left,dy:s-r.top,dw:o,dh:c})}return k}function ze(e,t){let n=new ResizeObserver(n=>{let r=n[0]?.borderBoxSize?.[0];t(Math.round(r?.inlineSize??e.offsetWidth),Math.round(r?.blockSize??e.offsetHeight))});return n.observe(e),()=>n.disconnect()}var Be=f(`<div class="fundus-slice__cell svelte-13uxsex"><img alt="" draggable="false" class="svelte-13uxsex"/></div>`),Ve=f(`<div></div>`);function He(t,r){T(r,!0);let i=O(r,`alt`,3,``),o=O(r,`class`,3,``),c=y(void 0),l=y(0),u=y(0);n(()=>{let e=p(c);if(e)return ze(e,(e,t)=>{s(l,e,!0),s(u,t,!0)})});let d=v(()=>Y(r.src,p(l),p(u))),f=v(()=>{let e=Pe(r.src);return e.top>0||e.right>0||e.bottom>0||e.left>0});var h=Ve();let g;m(h,21,()=>p(d),e=>e.key,(e,t)=>{var n=Be();let i;var o=_(n);let s;k(n),H(()=>{i=D(n,``,i,{left:`${p(t).dx??``}px`,top:`${p(t).dy??``}px`,width:`${p(t).dw??``}px`,height:`${p(t).dh??``}px`}),M(o,`src`,r.src.src),s=D(o,``,s,{width:`${r.src.sourceWidth/p(t).sw*100}%`,height:`${r.src.sourceHeight/p(t).sh*100}%`,left:`${-p(t).sx/p(t).sw*100}%`,top:`${-p(t).sy/p(t).sh*100}%`})}),a(e,n)}),k(h),x(h,e=>s(c,e),()=>p(c)),H(()=>{g=E(h,1,`fundus-slice ${o()??``}`,`svelte-13uxsex`,g,{"fundus-slice--overdraw":p(f)}),M(h,`role`,i()?`img`:void 0),M(h,`aria-label`,i()||void 0)}),a(t,h),e()}var X=f(`<div><canvas class="svelte-184b9sd"></canvas></div>`);function Ue(t,r){T(r,!0);let i=O(r,`alt`,3,``),o=O(r,`class`,3,``),c=y(void 0),l=y(void 0),u=y(void 0),f=y(0),m=y(0),h=y(1),b=y(0);n(()=>{let e=r.src.src,t=new Image,n=!1;return t.onload=()=>{n||s(u,t,!0)},t.src=e,()=>{n=!0,t.onload=null}}),n(()=>{let e=p(h),t=window.matchMedia(`(resolution: ${e}dppx)`),n=()=>{s(h,window.devicePixelRatio||1,!0)};return n(),t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)}),n(()=>{let e=p(c);if(e)return ze(e,(e,t)=>{s(f,e,!0),s(m,t,!0)})});let S=v(()=>Le(r.src,p(f),p(m),p(h)));n(()=>{p(u),r.src,p(S),p(b),C()});function C(){let e=p(l),t=p(u);if(!e||!t)return;if(p(f)===0||p(m)===0){e.width=0,e.height=0;return}e.width=p(S).backingWidth,e.height=p(S).backingHeight;let n=e.getContext(`2d`);if(n){n.setTransform(p(h),0,0,p(h),p(S).originX,p(S).originY),n.clearRect(p(S).cssLeft,p(S).cssTop,p(S).cssWidth,p(S).cssHeight);for(let e of Y(r.src,p(f),p(m)))n.drawImage(t,e.sx,e.sy,e.sw,e.sh,e.dx,e.dy,e.dw,e.dh)}}var w=X();d(`resize`,g,()=>s(b,p(b)+1));var A=_(w);let j;x(A,e=>s(l,e),()=>p(l)),k(w),x(w,e=>s(c,e),()=>p(c)),H(()=>{E(w,1,`fundus-slice-canvas ${o()??``}`,`svelte-184b9sd`),M(w,`role`,i()?`img`:void 0),M(w,`aria-label`,i()||void 0),j=D(A,``,j,{left:`${p(S).cssLeft??``}px`,top:`${p(S).cssTop??``}px`,width:`${p(S).cssWidth??``}px`,height:`${p(S).cssHeight??``}px`})}),a(t,w),e()}function We(e,t){let n=O(t,`backend`,3,`dom`),r=O(t,`alt`,3,``),s=O(t,`class`,3,``);var c=i(),l=o(c),u=e=>{Ue(e,{get src(){return t.src},get alt(){return r()},get class(){return s()}})},d=e=>{He(e,{get src(){return t.src},get alt(){return r()},get class(){return s()}})};B(l,e=>{n()===`canvas`?e(u):e(d,-1)}),a(e,c)}var Ge=f(`<video playsinline="" preload="auto"></video>`,2);function Ke(t,r){T(r,!0);let i=O(r,`loop`,3,!1),o=O(r,`playing`,3,!0),s=O(r,`muted`,3,!0),c=O(r,`controls`,3,!1),l=O(r,`videoElement`,15),u=O(r,`class`,3,``),d=v(()=>Ce(r.src.src));n(()=>{let e=l();e&&(o()?e.play().catch(()=>{}):e.pause())});var f=Ge();x(f,e=>l(e),()=>l()),H(()=>{M(f,`src`,p(d)),M(f,`width`,r.src.width),M(f,`height`,r.src.height),f.loop=i(),f.muted=s(),f.controls=c(),E(f,1,b(u()))}),a(t,f),e()}var Z=`#version 300 es
|
|
2
|
-
in vec2 a_pos;
|
|
3
|
-
out vec2 v_uv;
|
|
4
|
-
void main() {
|
|
5
|
-
// Fullscreen clip-space triangle pair; v flipped so the video isn't mirrored on Y
|
|
6
|
-
// (GL texture rows are bottom-up, and flipping here beats a per-frame UNPACK flip).
|
|
7
|
-
v_uv = vec2(a_pos.x * 0.5 + 0.5, 0.5 - a_pos.y * 0.5);
|
|
8
|
-
gl_Position = vec4(a_pos, 0.0, 1.0);
|
|
9
|
-
}`,qe=`#version 300 es
|
|
10
|
-
precision highp float;
|
|
11
|
-
|
|
12
|
-
in vec2 v_uv;
|
|
13
|
-
out vec4 fragColor;
|
|
14
|
-
|
|
15
|
-
uniform sampler2D u_texture;
|
|
16
|
-
uniform sampler2D u_mask;
|
|
17
|
-
uniform vec2 u_texelSize;
|
|
18
|
-
uniform vec3 u_keyColor;
|
|
19
|
-
uniform vec4 u_tintColor;
|
|
20
|
-
uniform float u_colorCutoff;
|
|
21
|
-
uniform float u_colorFeathering;
|
|
22
|
-
uniform float u_maskFeathering;
|
|
23
|
-
uniform float u_sharpening;
|
|
24
|
-
uniform float u_despill;
|
|
25
|
-
uniform float u_despillLuminanceAdd;
|
|
26
|
-
|
|
27
|
-
float rgb2y(vec3 c) {
|
|
28
|
-
return 0.299 * c.r + 0.587 * c.g + 0.114 * c.b;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
float rgb2cb(vec3 c) {
|
|
32
|
-
return 0.5 - 0.168736 * c.r - 0.331264 * c.g + 0.5 * c.b;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
float rgb2cr(vec3 c) {
|
|
36
|
-
return 0.5 + 0.5 * c.r - 0.418688 * c.g - 0.081312 * c.b;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
float colorclose(float Cb_p, float Cr_p, float Cb_key, float Cr_key, float tola, float tolb) {
|
|
40
|
-
float temp = (Cb_key - Cb_p) * (Cb_key - Cb_p) + (Cr_key - Cr_p) * (Cr_key - Cr_p);
|
|
41
|
-
float tola2 = tola * tola;
|
|
42
|
-
float tolb2 = tolb * tolb;
|
|
43
|
-
if (temp < tola2) return 0.0;
|
|
44
|
-
if (temp < tolb2) return (temp - tola2) / (tolb2 - tola2);
|
|
45
|
-
return 1.0;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
float maskedTex2D(sampler2D tex, vec2 uv) {
|
|
49
|
-
vec4 color = texture(tex, uv);
|
|
50
|
-
|
|
51
|
-
float key_cb = rgb2cb(u_keyColor);
|
|
52
|
-
float key_cr = rgb2cr(u_keyColor);
|
|
53
|
-
float pix_cb = rgb2cb(color.rgb);
|
|
54
|
-
float pix_cr = rgb2cr(color.rgb);
|
|
55
|
-
|
|
56
|
-
return colorclose(pix_cb, pix_cr, key_cb, key_cr, u_colorCutoff, u_colorFeathering);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
void main() {
|
|
60
|
-
vec2 pixelWidth = vec2(u_texelSize.x, 0.0);
|
|
61
|
-
vec2 pixelHeight = vec2(0.0, u_texelSize.y);
|
|
62
|
-
|
|
63
|
-
// Unmodified MainTex
|
|
64
|
-
vec4 color = texture(u_texture, v_uv);
|
|
65
|
-
|
|
66
|
-
// Unfeathered mask
|
|
67
|
-
float mask = maskedTex2D(u_texture, v_uv);
|
|
68
|
-
|
|
69
|
-
// Feathering & smoothing
|
|
70
|
-
float c = mask;
|
|
71
|
-
float r = maskedTex2D(u_texture, v_uv + pixelWidth);
|
|
72
|
-
float l = maskedTex2D(u_texture, v_uv - pixelWidth);
|
|
73
|
-
float d = maskedTex2D(u_texture, v_uv + pixelHeight);
|
|
74
|
-
float u = maskedTex2D(u_texture, v_uv - pixelHeight);
|
|
75
|
-
float rd = maskedTex2D(u_texture, v_uv + pixelWidth + pixelHeight) * 0.707;
|
|
76
|
-
float dl = maskedTex2D(u_texture, v_uv - pixelWidth + pixelHeight) * 0.707;
|
|
77
|
-
float lu = maskedTex2D(u_texture, v_uv - pixelHeight - pixelWidth) * 0.707;
|
|
78
|
-
float ur = maskedTex2D(u_texture, v_uv + pixelWidth - pixelHeight) * 0.707;
|
|
79
|
-
float blurContribution = (r + l + d + u + rd + dl + lu + ur + c) * 0.12774655;
|
|
80
|
-
float smoothedMask = smoothstep(u_sharpening, 1.0, mix(c, blurContribution, u_maskFeathering));
|
|
81
|
-
vec4 result = color * smoothedMask;
|
|
82
|
-
|
|
83
|
-
// Despill
|
|
84
|
-
float v = (2.0 * result.b + result.r) / 4.0;
|
|
85
|
-
if (result.g > v) result.g = mix(result.g, v, u_despill);
|
|
86
|
-
vec4 dif = color - result;
|
|
87
|
-
float desaturatedDif = rgb2y(dif.xyz);
|
|
88
|
-
result += mix(0.0, desaturatedDif, u_despillLuminanceAdd);
|
|
89
|
-
|
|
90
|
-
// Fundus mask pass: a grayscale shape mask multiplies
|
|
91
|
-
// the keyed alpha.
|
|
92
|
-
float shapeMask = texture(u_mask, v_uv).r;
|
|
93
|
-
vec4 keyed = vec4(result.xyz, smoothedMask * shapeMask) * u_tintColor;
|
|
94
|
-
|
|
95
|
-
// Premultiplied output: keyed matches the upstream SrcAlpha/OneMinusSrcAlpha
|
|
96
|
-
// blending; multiplying rgb by alpha is that blend's exact premultiplied
|
|
97
|
-
// equivalent. Straight-alpha output (premultipliedAlpha: false) is NOT an option:
|
|
98
|
-
// iOS WKWebView composites the WebGL canvas as premultiplied regardless of the
|
|
99
|
-
// flag, and the despill luminance-add above leaves fully-transparent background
|
|
100
|
-
// pixels with nonzero rgb (the upstream blend ignores rgb
|
|
101
|
-
// at alpha 0) which then composite additively — a visible bright veil over the
|
|
102
|
-
// whole canvas rect on iOS.
|
|
103
|
-
fragColor = vec4(keyed.rgb * keyed.a, keyed.a);
|
|
104
|
-
}`;function Je(e){let t=(t,n)=>{let r=e.createShader(t);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)){let t=e.getShaderInfoLog(r);throw e.deleteShader(r),Error(`Chroma-key shader compilation failed: ${t}.`)}return r},n=e.createProgram();if(e.attachShader(n,t(e.VERTEX_SHADER,Z)),e.attachShader(n,t(e.FRAGMENT_SHADER,qe)),e.linkProgram(n),!e.getProgramParameter(n,e.LINK_STATUS)){let t=e.getProgramInfoLog(n);throw e.deleteProgram(n),Error(`Chroma-key program linking failed: ${t}.`)}return n}var Ye=class e{#e;#t;#n;#r;#i;#a;#o;#s=null;#c=!1;static create(t){let n=t.getContext(`webgl2`,{premultipliedAlpha:!0,alpha:!0,depth:!1,stencil:!1,antialias:!1});if(!n)return null;try{return new e(n,t)}catch{return null}}constructor(e,t){this.#e=e,this.#t=t,t.addEventListener(`webglcontextlost`,this.#l),t.addEventListener(`webglcontextrestored`,this.#u),this.#d()}#l=e=>{e.preventDefault(),this.#c=!0};#u=()=>{try{this.#d(),this.#c=!1}catch{this.#c=!0}};#d(){let e=this.#e;this.#n=Je(e),e.useProgram(this.#n);let t=t=>e.getUniformLocation(this.#n,t);this.#a={texelSize:t(`u_texelSize`),keyColor:t(`u_keyColor`),tintColor:t(`u_tintColor`),colorCutoff:t(`u_colorCutoff`),colorFeathering:t(`u_colorFeathering`),maskFeathering:t(`u_maskFeathering`),sharpening:t(`u_sharpening`),despill:t(`u_despill`),despillLuminanceAdd:t(`u_despillLuminanceAdd`)},e.uniform1i(e.getUniformLocation(this.#n,`u_texture`),0),e.uniform1i(e.getUniformLocation(this.#n,`u_mask`),1),e.uniform4f(this.#a.tintColor,1,1,1,1),this.#r=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this.#r),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW);let n=e.getAttribLocation(this.#n,`a_pos`);e.enableVertexAttribArray(n),e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0),this.#i=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#i),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#o=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.#o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),this.#f(),e.disable(e.DEPTH_TEST),e.disable(e.BLEND),e.clearColor(0,0,0,0)}setMask(e){this.#s=e,this.#c||this.#f()}#f(){let e=this.#e;e.bindTexture(e.TEXTURE_2D,this.#o),this.#s?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,this.#s):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([255,255,255,255]))}draw(e,t){if(this.#c||e.videoWidth===0)return;let n=this.#e;(this.#t.width!==e.videoWidth||this.#t.height!==e.videoHeight)&&(this.#t.width=e.videoWidth,this.#t.height=e.videoHeight,n.viewport(0,0,e.videoWidth,e.videoHeight)),n.activeTexture(n.TEXTURE1),n.bindTexture(n.TEXTURE_2D,this.#o),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,this.#i),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e),n.useProgram(this.#n),n.uniform2f(this.#a.texelSize,1/e.videoWidth,1/e.videoHeight),n.uniform3fv(this.#a.keyColor,t.keyColor),n.uniform1f(this.#a.colorCutoff,t.colorCutoff),n.uniform1f(this.#a.colorFeathering,t.colorFeathering),n.uniform1f(this.#a.maskFeathering,t.maskFeathering),n.uniform1f(this.#a.sharpening,t.sharpening),n.uniform1f(this.#a.despill,t.despill),n.uniform1f(this.#a.despillLuminanceAdd,t.despillLuminanceAdd),n.clear(n.COLOR_BUFFER_BIT),n.drawArrays(n.TRIANGLE_STRIP,0,4)}dispose(){this.#t.removeEventListener(`webglcontextlost`,this.#l),this.#t.removeEventListener(`webglcontextrestored`,this.#u);let e=this.#e;e.deleteBuffer(this.#r),e.deleteTexture(this.#i),e.deleteTexture(this.#o),e.deleteProgram(this.#n),e.getExtension(`WEBGL_lose_context`)?.loseContext()}},Xe=f(`<img alt="" class="svelte-13mzqtn"/>`),Q=f(`<canvas class="svelte-13mzqtn"></canvas> <video playsinline="" preload="auto" class="svelte-13mzqtn"></video>`,3),Ze=f(`<div><!></div>`);function Qe(t,r){T(r,!0);let l=O(r,`loop`,3,!0),u=O(r,`playing`,3,!0),d=O(r,`videoElement`,15),f=O(r,`class`,3,``),m=y(void 0),h=y(!1),g=null,v=0,b=!1;function C(){let e=d();g&&e&&e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&g.draw(e,r.src.chromaKey)}function w(){C(),b&&D()}function D(){let e=d();v=e.requestVideoFrameCallback?e.requestVideoFrameCallback(w):requestAnimationFrame(w)}function A(){b||(b=!0,D())}function j(){if(!b)return;b=!1;let e=d();e?.cancelVideoFrameCallback?e.cancelVideoFrameCallback(v):cancelAnimationFrame(v)}function N(){!u()||p(h)||d()?.play().catch(()=>{})}function F(){d()?.pause()}P(()=>{if(g=Ye.create(p(m)),!g){s(h,!0);return}let e=g,t=r.src.mask?.src;if(t){let n=new Image;n.src=t,n.decode().then(()=>{g===e&&e.setMask(n)}).catch(()=>{console.warn(`Failed to load chroma-key mask "${t}".`)})}return()=>{j(),e.dispose(),g=null}}),n(()=>{let e=d();if(!e)return;function t(){A()}function n(){j(),C()}function r(){b||C()}return e.addEventListener(`play`,t),e.addEventListener(`pause`,n),e.addEventListener(`ended`,n),e.addEventListener(`seeked`,r),()=>{e.removeEventListener(`play`,t),e.removeEventListener(`pause`,n),e.removeEventListener(`ended`,n),e.removeEventListener(`seeked`,r)}}),n(()=>{p(h)||(u()?N():F())}),n(()=>{let e=r.src.chromaKey;e.keyColor,e.colorCutoff,e.colorFeathering,e.maskFeathering,e.sharpening,e.despill,e.despillLuminanceAdd,b||C()});var I=Ze(),L=_(I),R=e=>{var t=i(),n=o(t),s=e=>{var t=i();S(o(t),()=>r.fallback),a(e,t)},c=e=>{var t=Xe();H(()=>M(t,`src`,r.src.fallback.src)),a(e,t)};B(n,e=>{r.fallback?e(s):r.src.fallback&&e(c,1)}),a(e,t)},z=e=>{var t=Q(),n=o(t);x(n,e=>s(m,e),()=>p(m));var i=c(n,2);i.muted=!0,x(i,e=>d(e),()=>d()),H(e=>{M(i,`src`,e),i.loop=l()},[()=>Ce(r.src.src)]),a(e,t)};B(L,e=>{p(h)?e(R):e(z,-1)}),k(I),H(()=>E(I,1,`fundus-chroma-key-video ${f()??``}`,`svelte-13mzqtn`)),a(t,I),e()}var $e={"arrow-up":`<path d="M12 19V5"/><path d="M6 11l6-6 6 6"/>`,"arrow-right":`<path d="M5 12h14"/><path d="M13 6l6 6-6 6"/>`,"arrow-down":`<path d="M12 5v14"/><path d="M6 13l6 6 6-6"/>`,"arrow-left":`<path d="M19 12H5"/><path d="M11 6l-6 6 6 6"/>`,width:`<path d="M3 12h18"/><path d="M7 8l-4 4 4 4"/><path d="M17 8l4 4-4 4"/>`,ratio:`<rect x="4" y="4" width="7" height="7" rx="1"/><rect x="13" y="4" width="7" height="7" rx="1"/><rect x="4" y="13" width="7" height="7" rx="1"/><rect x="13" y="13" width="7" height="7" rx="1"/>`,preset:`<path d="M4 7h10"/><circle cx="17" cy="7" r="2"/><path d="M20 17H10"/><circle cx="7" cy="17" r="2"/>`,cutoff:`<circle cx="12" cy="12" r="8"/><path d="M12 4a8 8 0 0 1 0 16z" fill="currentColor" stroke="none"/>`,"color-feather":`<circle cx="12" cy="12" r="8" stroke-dasharray="1.5 3"/><circle cx="12" cy="12" r="3.5"/>`,"mask-feather":`<rect x="4" y="4" width="16" height="16" rx="3" stroke-dasharray="1.5 3"/><circle cx="12" cy="12" r="3.5"/>`,sharpen:`<path d="M4 18l8-12 8 12"/><path d="M4 18h16"/>`,despill:`<path d="M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z"/>`,"despill-lum":`<path d="M12 3s5.5 5.5 5.5 10a5.5 5.5 0 0 1-11 0c0-4.5 5.5-10 5.5-10z"/><path d="M12 10v5M9.5 12.5h5"/>`},et=j(`<svg class="icon svelte-1eqehiz" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"></svg>`);function $(e,t){var n=et();ee(n,()=>$e[t.name],!0),k(n),a(e,n)}function tt(e){if(e.scrubbedValue===null)return{};let t=e.startValue??e.min??0;return e.scrubbedValue===t?{rollbackTo:e.startValue}:{commit:e.scrubbedValue}}function nt(e,t){return t.coarse?e*10:t.fine?e*.1:e}function rt(e){if(!Number.isFinite(e))return 0;let t=0,n=Math.abs(e);for(;t<10&&Math.abs(Math.round(n)-n)>1e-9;)n*=10,t+=1;return t}function it(e,t){let n=10**t;return Math.round(e*n)/n}function at(e){let t=nt(e.step,e.modifiers),n=it(e.startValue+e.deltaX*t,rt(t));return e.min!==void 0&&(n=Math.max(e.min,n)),e.max!==void 0&&(n=Math.min(e.max,n)),n}function ot(e,t){t.buttons!==0&&!e.hasPointerCapture(t.pointerId)&&e.setPointerCapture(t.pointerId)}function st(e,t){e.hasPointerCapture(t)&&e.releasePointerCapture(t)}var ct=f(`<span class="scrub-surface svelte-5sfgfa" title="Drag to change — Shift: ×10, Alt: ×0.1" role="presentation" aria-hidden="true"></span>`),lt=f(`<span><input class="input svelte-5sfgfa" type="number"/> <!></span>`);function ut(t,r){T(r,!0);let i=O(r,`step`,3,1),o=O(r,`placeholder`,3,``),l=O(r,`allowNull`,3,!1),f=O(r,`align`,3,`left`),m=y(null),h=y(!1),b=y(null),S=v(()=>p(m)?.activated?p(m).currentValue:r.value);function D(e){return{coarse:e.shiftKey,fine:e.altKey}}function A(e){e.preventDefault(),ot(e.currentTarget,e),s(m,{pointerId:e.pointerId,startX:e.clientX,startValue:r.value,currentValue:null,activated:!1},!0)}function j(e){if(!p(m)||e.pointerId!==p(m).pointerId)return;let t=e.clientX-p(m).startX;if(!p(m).activated){if(Math.abs(t)<3)return;p(m).activated=!0,document.body.style.cursor=`ew-resize`}let n=at({startValue:p(m).startValue??r.min??0,deltaX:t,step:i(),modifiers:D(e),min:r.min,max:r.max});n!==p(m).currentValue&&(p(m).currentValue=n,r.onChange?.(n))}function N(e){if(!p(m)||e.pointerId!==p(m).pointerId)return;st(e.currentTarget,e.pointerId);let t=p(m).activated,n=p(m).startValue,i=p(m).currentValue;if(s(m,null),document.body.style.cursor=``,!t){I();return}let a=tt({startValue:n,scrubbedValue:i,min:r.min});a.commit===void 0?`rollbackTo`in a&&r.onChange?.(a.rollbackTo??null):r.onCommit(a.commit)}function P(){if(!p(m))return;let e=p(m).startValue,t=p(m).activated;s(m,null),document.body.style.cursor=``,t&&r.onChange?.(e)}function F(e){p(m)&&e.key===`Escape`&&(e.preventDefault(),P())}n(()=>()=>{p(m)&&(document.body.style.cursor=``)});function I(){s(h,!0),queueMicrotask(()=>{p(b)?.focus(),p(b)?.select()})}function L(e){let t=e.currentTarget.valueAsNumber;Number.isFinite(t)?r.onCommit(t):r.onCommit(l()?null:r.min??0)}function R(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(e.currentTarget.value=p(S)===null?``:String(p(S)),e.currentTarget.blur())}var z=lt();d(`keydown`,g,F);let ee;var V=_(z);C(V),x(V,e=>s(b,e),()=>p(b));var U=c(V,2),W=e=>{var t=ct();u(`pointerdown`,t,A),u(`pointermove`,t,j),u(`pointerup`,t,N),d(`pointercancel`,t,P),a(e,t)};B(U,e=>{p(h)||e(W)}),k(z),H(()=>{ee=E(z,1,`scrub-number svelte-5sfgfa`,null,ee,{right:f()===`right`}),M(V,`aria-label`,r.ariaLabel),M(V,`min`,r.min),M(V,`max`,r.max),M(V,`step`,i()),M(V,`placeholder`,o()),w(V,p(S)??``)}),d(`focus`,V,()=>s(h,!0)),d(`blur`,V,()=>s(h,!1)),u(`change`,V,L),u(`keydown`,V,R),a(t,z),e()}A([`change`,`keydown`,`pointerdown`,`pointermove`,`pointerup`]);var dt=f(`<span class="caption svelte-dv122j"> </span>`),ft=f(`<span class="fill svelte-dv122j"></span>`),pt=f(`<div class="number-field svelte-dv122j"><!> <div class="number-input control svelte-dv122j"><!> <span class="icon-slot svelte-dv122j"><!></span> <!></div></div>`);function mt(e,n){let r=O(n,`step`,3,1),s=O(n,`placeholder`,3,``),l=O(n,`rangeFill`,3,!0),u=v(()=>!l()||n.min===void 0||n.max===void 0||n.value===null||n.max<=n.min?null:Math.max(0,Math.min(100,(n.value-n.min)/(n.max-n.min)*100)));var d=pt(),f=_(d),m=e=>{var t=dt(),r=_(t,!0);k(t),H(()=>h(r,n.caption)),a(e,t)};B(f,e=>{n.caption&&e(m)});var g=c(f,2),y=_(g),b=e=>{var t=ft();H(()=>D(t,`width: ${p(u)??``}%`)),a(e,t)};B(y,e=>{p(u)!==null&&e(b)});var x=c(y,2),C=_(x),w=e=>{var t=i();S(o(t),()=>n.icon),a(e,t)},T=e=>{var r=t();H(()=>h(r,n.label)),a(e,r)};B(C,e=>{n.icon?e(w):e(T,-1)}),k(x),ut(c(x,2),{get value(){return n.value},get min(){return n.min},get max(){return n.max},get step(){return r()},get placeholder(){return s()},allowNull:!0,get ariaLabel(){return n.label},get onChange(){return n.onChange},get onCommit(){return n.onCommit}}),k(g),k(d),H(()=>M(x,`title`,n.label)),a(e,d)}var ht=f(`<span class="caption svelte-14j49wg"> </span>`),gt=f(`<option> </option>`),_t=f(`<div class="select-field svelte-14j49wg"><!> <div class="select-input control svelte-14j49wg"><span class="icon-slot svelte-14j49wg"><!></span> <select class="svelte-14j49wg"></select></div></div>`);function vt(n,r){T(r,!0);var s=_t(),l=_(s),d=e=>{var t=ht(),n=_(t,!0);k(t),H(()=>h(n,r.caption)),a(e,t)};B(l,e=>{r.caption&&e(d)});var f=c(l,2),p=_(f),g=_(p),v=e=>{var t=i();S(o(t),()=>r.icon),a(e,t)},y=e=>{var n=t();H(e=>h(n,e),[()=>r.label.slice(0,1)]),a(e,n)};B(g,e=>{r.icon?e(v):e(y,-1)}),k(p);var b=c(p,2);m(b,20,()=>r.options,e=>e,(e,t)=>{var n=gt(),r=_(n,!0);k(n);var i={};H(()=>{h(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),a(e,n)}),k(b);var x;I(b),k(f),k(s),H(()=>{M(p,`title`,r.label),M(b,`aria-label`,r.label),x!==(x=r.value)&&(b.value=(b.__value=r.value)??``,N(b,r.value))}),u(`change`,b,e=>r.onChange(e.currentTarget.value)),a(n,s),e()}A([`change`]);var yt=f(`<p class="info svelte-19alfi"><!> <!> <br/> <span class="file svelte-19alfi"> </span></p>`),bt=f(`<p class="hint svelte-19alfi">No proxy yet — add the asset to a manifest to process it.</p>`),xt=f(`<section class="svelte-19alfi"><!> <!></section>`);function St(n,r){T(r,!0);let i=O(r,`showDimensions`,3,!1),o=O(r,`showDuration`,3,!1);var s=xt(),l=_(s);K(l,{children:(e,n)=>{R(),a(e,t(`Output`))},$$slots:{default:!0}});var u=c(l,2),d=e=>{var n=yt(),s=_(n),l=e=>{var n=t();H(()=>h(n,`${r.proxy.width??``} × ${r.proxy.height??``} px ·`)),a(e,n)};B(s,e=>{i()&&r.proxy.width!==void 0&&r.proxy.height!==void 0&&e(l)});var u=c(s,2),d=e=>{var n=t();H(e=>h(n,`${e??``} ·`),[()=>be(r.proxy.durationMs)]),a(e,n)};B(u,e=>{o()&&r.proxy.durationMs!==void 0&&e(d)});var f=c(u),p=c(f,3),m=_(p,!0);k(p),k(n),H(e=>{h(f,` ${e??``} `),h(m,r.proxy.fileName)},[()=>xe(r.proxy.fileSize)]),a(e,n)},f=e=>{a(e,bt())};B(u,e=>{r.proxy?e(d):e(f,-1)}),k(s),a(n,s),e()}var Ct=f(`<section class="svelte-1ukljmf"><!> <div class="field svelte-1ukljmf"><!></div> <div class="field svelte-1ukljmf"><!></div></section> <!>`,1);function wt(n,r){T(r,!0);let i=v(()=>q.validateParameters(r.parameters));function s(e){r.onParametersCommit(e)}function l(e){s({...p(i),preset:e})}function u(e){let{targetWidth:t,...n}=p(i);return e===null||!Number.isFinite(e)||e<=0?n:{...n,targetWidth:Math.round(e)}}function d(e,t){let n=u(e);t?s(n):r.onParametersChange(n)}var f=Ct(),m=o(f),h=_(m);K(h,{children:(e,n)=>{R(),a(e,t(`Image`))},$$slots:{default:!0}});var g=c(h,2);vt(_(g),{label:`Preset`,caption:`Preset`,get value(){return p(i).preset},get options(){return r.presetNames},onChange:l,icon:e=>{$(e,{name:`preset`})},$$slots:{icon:!0}}),k(g);var y=c(g,2),b=_(y);{let e=e=>{$(e,{name:`width`})},t=v(()=>p(i).targetWidth??null);mt(b,{label:`Target width`,caption:`Target width`,min:1,placeholder:`source`,get value(){return p(t)},onChange:e=>d(e,!1),onCommit:e=>d(e,!0),icon:e,$$slots:{icon:!0}})}k(y),k(m),St(c(m,2),{get proxy(){return r.asset.proxy},showDimensions:!0}),a(n,f),e()}var Tt=f(`<button> </button>`),Et=f(`<section class="svelte-1j6qy4a"><!> <div class="insets svelte-1j6qy4a"></div></section>`),Dt=f(`<section class="svelte-1j6qy4a"><!> <!></section>`),Ot=f(`<section class="svelte-1j6qy4a"><!> <div class="modes svelte-1j6qy4a"></div></section> <!> <section class="svelte-1j6qy4a"><!> <div class="insets svelte-1j6qy4a"></div></section> <!> <section class="svelte-1j6qy4a"><!> <div class="field"><!></div></section> <!>`,1);function kt(n,r){T(r,!0);let s=v(()=>ye.validateParameters(r.parameters)),l=v(()=>p(s).overdraw??pe()),d=[{value:`nine`,label:`9-slice`},{value:`three-horizontal`,label:`3-slice horizontal`},{value:`three-vertical`,label:`3-slice vertical`},{value:`one`,label:`No slicing`}],f=[{key:`top`,label:`Top`,icon:`arrow-up`,axis:`y`},{key:`right`,label:`Right`,icon:`arrow-right`,axis:`x`},{key:`bottom`,label:`Bottom`,icon:`arrow-down`,axis:`y`},{key:`left`,label:`Left`,icon:`arrow-left`,axis:`x`}];function g(e,t){let n=fe(t);return e===`x`?n.horizontal:n.vertical}let y=v(()=>r.asset.proxy?.width??2**53-1),b=v(()=>r.asset.proxy?.height??2**53-1);function x(e){r.onParametersCommit(e)}function S(e){x({...p(s),mode:e})}function C(e){return ge(p(s).insets,e,p(y),p(b))}function w(e,t,n){let i=Math.max(0,Math.min(C(e),Math.round(t??0))),a={...p(s),insets:{...p(s).insets,[e]:i}};n?x(a):r.onParametersChange(a)}function D(e){return me(p(l),e,p(y),p(b))}function O(e,t,n){let i=Math.max(0,Math.min(D(e),Math.round(t??0))),a={...p(s),overdraw:{...p(l),[e]:i}};n?x(a):r.onParametersChange(a)}function A(e,t){let n={...p(s),pixelRatio:Math.max(1,Math.round(e??1))};t?x(n):r.onParametersChange(n)}function j(e){x({...p(s),preset:e})}var M=Ot(),N=o(M),P=_(N);K(P,{children:(e,n)=>{R(),a(e,t(`Mode`))},$$slots:{default:!0}});var F=c(P,2);m(F,21,()=>d,e=>e.value,(e,t)=>{var n=Tt();let r;var i=_(n,!0);k(n),H(()=>{r=E(n,1,`svelte-1j6qy4a`,null,r,{on:p(s).mode===p(t).value}),h(i,p(t).label)}),u(`click`,n,()=>S(p(t).value)),a(e,n)}),k(F),k(N);var I=c(N,2),L=e=>{var n=Et(),r=_(n);K(r,{children:(e,n)=>{R(),a(e,t(`Insets (px)`))},$$slots:{default:!0}});var l=c(r,2);m(l,21,()=>f,e=>e.key,(e,t)=>{var n=i(),r=o(n),c=e=>{{let n=e=>{$(e,{get name(){return p(t).icon}})},r=v(()=>C(p(t).key));mt(e,{get label(){return p(t).label},min:0,get max(){return p(r)},rangeFill:!1,get value(){return p(s).insets[p(t).key]},onChange:e=>w(p(t).key,e,!1),onCommit:e=>w(p(t).key,e,!0),icon:n,$$slots:{icon:!0}})}},l=v(()=>g(p(t).axis,p(s).mode));B(r,e=>{p(l)&&e(c)}),a(e,n)}),k(l),k(n),a(e,n)};B(I,e=>{p(s).mode!==`one`&&e(L)});var z=c(I,2),ee=_(z);K(ee,{children:(e,n)=>{R(),a(e,t(`Overdraw (px)`))},$$slots:{default:!0}});var V=c(ee,2);m(V,21,()=>f,e=>e.key,(e,t)=>{{let n=e=>{$(e,{get name(){return p(t).icon}})},r=v(()=>D(p(t).key));mt(e,{get label(){return p(t).label},min:0,get max(){return p(r)},rangeFill:!1,get value(){return p(l)[p(t).key]},onChange:e=>O(p(t).key,e,!1),onCommit:e=>O(p(t).key,e,!0),icon:n,$$slots:{icon:!0}})}}),k(V),k(z);var U=c(z,2),W=e=>{var n=Dt(),r=_(n);K(r,{children:(e,n)=>{R(),a(e,t(`Pixel ratio`))},$$slots:{default:!0}}),mt(c(r,2),{label:`Factor`,min:1,get value(){return p(s).pixelRatio},onChange:e=>A(e,!1),onCommit:e=>A(e,!0),icon:e=>{$(e,{name:`ratio`})},$$slots:{icon:!0}}),k(n),a(e,n)};B(U,e=>{p(s).mode===`nine`&&e(W)});var te=c(U,2),ne=_(te);K(ne,{children:(e,n)=>{R(),a(e,t(`Output`))},$$slots:{default:!0}});var re=c(ne,2);vt(_(re),{label:`Preset`,caption:`Preset`,get value(){return p(s).preset},get options(){return r.presetNames},onChange:j,icon:e=>{$(e,{name:`preset`})},$$slots:{icon:!0}}),k(re),k(te),St(c(te,2),{get proxy(){return r.asset.proxy},showDimensions:!0}),a(n,M),e()}A([`click`]);var At=f(`<section class="svelte-dkn80h"><!> <div class="field svelte-dkn80h"><!></div> <div class="field svelte-dkn80h"><!></div></section> <!>`,1);function jt(n,r){T(r,!0);let i=v(()=>ue.validateParameters(r.parameters));function s(e){r.onParametersCommit(e)}function l(e){s({...p(i),preset:e})}function u(e,t){let n=J(p(i),e);t?s(n):r.onParametersChange(n)}var d=At(),f=o(d),m=_(f);K(m,{children:(e,n)=>{R(),a(e,t(`Video`))},$$slots:{default:!0}});var h=c(m,2);vt(_(h),{label:`Preset`,caption:`Preset`,get value(){return p(i).preset},get options(){return r.presetNames},onChange:l,icon:e=>{$(e,{name:`preset`})},$$slots:{icon:!0}}),k(h);var g=c(h,2),y=_(g);{let e=e=>{$(e,{name:`width`})},t=v(()=>p(i).maxWidth??null);mt(y,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return p(t)},onChange:e=>u(e,!1),onCommit:e=>u(e,!0),icon:e,$$slots:{icon:!0}})}k(g),k(f),St(c(f,2),{get proxy(){return r.asset.proxy},showDimensions:!0,showDuration:!0}),a(n,d),e()}var Mt=f(`<span class="caption svelte-18jiq7l"> </span>`),Nt=f(`<img class="preview svelte-18jiq7l" alt=""/>`),Pt=f(`<span class="missing-preview svelte-18jiq7l" title="References an unknown asset">!</span>`),Ft=f(`<span class="id svelte-18jiq7l"> </span>`),It=f(`<span class="id dangling svelte-18jiq7l" title="References an unknown asset"> </span>`),Lt=f(`<span class="placeholder svelte-18jiq7l"> </span>`),Rt=f(`<button class="clear svelte-18jiq7l">×</button>`),zt=f(`<p class="hint svelte-18jiq7l"> </p>`),Bt=f(`<button><img class="thumbnail svelte-18jiq7l" alt=""/> <span class="id svelte-18jiq7l"> </span></button>`),Vt=f(`<div class="dropdown svelte-18jiq7l"><!></div>`),Ht=f(`<div class="picker svelte-18jiq7l"><!> <div class="reference-input control svelte-18jiq7l"><button><span class="preview-slot svelte-18jiq7l"><!></span> <!></button> <!> <!></div></div>`);function Ut(t,n){T(n,!0);let r=y(!1),l=v(()=>(G.state?.assets??[]).filter(e=>n.expectedTypes.includes(e.type)&&e.id!==n.excludeAssetId)),d=v(()=>n.value?G.assetById(n.value.$asset):null);function f(e){s(r,!1),n.onChange({$asset:e})}function g(){s(r,!1),n.onChange(void 0)}var b=Ht(),x=_(b),S=e=>{var t=Mt(),r=_(t,!0);k(t),H(()=>h(r,n.caption)),a(e,t)};B(x,e=>{n.caption&&e(S)});var C=c(x,2),w=_(C);let D;var O=_(w),A=_(O),j=e=>{var t=Nt();H(()=>M(t,`src`,p(d).rawUrl)),a(e,t)},N=e=>{a(e,Pt())};B(A,e=>{n.value&&p(d)?e(j):n.value&&e(N,1)}),k(O);var P=c(O,2),F=e=>{var t=i(),r=o(t),s=e=>{var t=Ft(),n=_(t,!0);k(t),H(()=>h(n,p(d).id)),a(e,t)},c=e=>{var t=It(),r=_(t,!0);k(t),H(()=>h(r,n.value.$asset)),a(e,t)};B(r,e=>{p(d)?e(s):e(c,-1)}),a(e,t)},I=e=>{var t=Lt(),r=_(t);k(t),H(e=>h(r,`Select ${e??``}...`),[()=>n.expectedTypes.join(`/`)]),a(e,t)};B(P,e=>{n.value?e(F):e(I,-1)}),k(w);var L=c(w,2),R=e=>{var t=Rt();H(()=>M(t,`title`,`Clear ${n.label??``}`)),u(`click`,t,g),a(e,t)};B(L,e=>{n.value&&e(R)});var z=c(L,2),ee=e=>{var t=Vt(),r=_(t),s=e=>{var t=zt(),r=_(t);k(t),H(e=>h(r,`No ${e??``} assets in the library.`),[()=>n.expectedTypes.join(`/`)]),a(e,t)},d=e=>{var t=i();m(o(t),17,()=>p(l),e=>e.id,(e,t)=>{var r=Bt();let i;var o=_(r),s=c(o,2),l=_(s,!0);k(s),k(r),H(()=>{i=E(r,1,`option svelte-18jiq7l`,null,i,{selected:n.value?.$asset===p(t).id}),M(o,`src`,p(t).rawUrl),h(l,p(t).id)}),u(`click`,r,()=>f(p(t).id)),a(e,r)}),a(e,t)};B(r,e=>{p(l).length===0?e(s):e(d,-1)}),k(t),a(e,t)};B(z,e=>{p(r)&&e(ee)}),k(C),k(b),H(()=>{D=E(w,1,`current svelte-18jiq7l`,null,D,{empty:!n.value}),M(w,`title`,n.value?`Change ${n.label}`:`Select ${n.label}`)}),u(`click`,w,()=>s(r,!p(r))),a(t,b),e()}A([`click`]);var Wt=f(`<span class="caption svelte-4dtedr"> </span>`),Gt=f(`<div class="color-field svelte-4dtedr"><!> <div class="color-input control svelte-4dtedr"><span class="swatch-slot svelte-4dtedr"><input class="swatch svelte-4dtedr" type="color" title="Open color picker"/></span> <input class="hex-input svelte-4dtedr" type="text" maxlength="7" spellcheck="false"/></div></div>`);function Kt(t,n){T(n,!0);let r=y(null),i=/^#[0-9a-f]{6}$/i;function o(e){let t=e.startsWith(`#`)?e:`#${e}`;return i.test(t)?t.toUpperCase():null}function l(e){let t=e.currentTarget.value.toUpperCase();s(r,t,!0),n.onChange?.(t)}function f(e){let t=e.currentTarget.value.toUpperCase();s(r,t,!0),n.onCommit(t)}function m(e){s(r,e.currentTarget.value,!0);let t=o(p(r));t&&n.onChange?.(t)}function g(){let e=o(p(r)??n.value);e&&n.onCommit(e),s(r,null)}function v(e){e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(s(r,null),e.currentTarget.value=n.value,e.currentTarget.blur())}var b=Gt(),x=_(b),S=e=>{var t=Wt(),r=_(t,!0);k(t),H(()=>h(r,n.caption)),a(e,t)};B(x,e=>{n.caption&&e(S)});var E=c(x,2),D=_(E),O=_(D);C(O),k(D);var A=c(D,2);C(A),k(E),k(b),H(()=>{w(O,n.value),M(O,`aria-label`,`${n.label} color picker`),w(A,p(r)??n.value),M(A,`aria-label`,`${n.label} hex value`)}),u(`input`,O,l),u(`change`,O,f),d(`focus`,A,()=>s(r,n.value,!0)),u(`input`,A,m),d(`blur`,A,g),u(`keydown`,A,v),a(t,b),e()}A([`input`,`change`,`keydown`]);var qt=f(`<div class="field svelte-45ey1g"><!></div>`),Jt=f(`<section class="svelte-45ey1g"><!> <div class="field svelte-45ey1g"><!></div> <div class="field svelte-45ey1g"><!></div></section> <section class="svelte-45ey1g"><!> <div class="field svelte-45ey1g"><!></div> <!></section> <section class="svelte-45ey1g"><!> <!> <!></section> <!>`,1);function Yt(n,r){T(r,!0);let i=v(()=>ve.validateParameters(r.parameters));function s(e){r.onParametersCommit(e)}function l(e){s({...p(i),preset:e})}function u(e,t){let n=J(p(i),e);t?s(n):r.onParametersChange(n)}function d(e){return{...p(i),chromaKey:e}}let f=[{key:`colorCutoff`,label:`Color cutoff`,icon:`cutoff`,min:0,max:.6,step:.005},{key:`colorFeathering`,label:`Color feathering`,icon:`color-feather`,min:0,max:.8,step:.005},{key:`maskFeathering`,label:`Mask feathering`,icon:`mask-feather`,min:0,max:1,step:.01},{key:`sharpening`,label:`Sharpening`,icon:`sharpen`,min:0,max:1,step:.01},{key:`despill`,label:`Despill`,icon:`despill`,min:0,max:1,step:.01},{key:`despillLuminanceAdd`,label:`Despill lum. add`,icon:`despill-lum`,min:0,max:1,step:.01}];function h(e,t,n){let a=d({...p(i).chromaKey,[e]:t});n?s(a):r.onParametersChange(a)}function g(e){return Math.round(Math.min(1,Math.max(0,e))*255).toString(16).padStart(2,`0`)}function y(e){return`#${g(e[0])}${g(e[1])}${g(e[2])}`}function b(e){let t=parseInt(e.slice(1),16);return[(t>>16&255)/255,(t>>8&255)/255,(t&255)/255]}function x(e,t){let n=d({...p(i).chromaKey,keyColor:b(e)});t?s(n):r.onParametersChange(n)}function S(e,t){let{[e]:n,...r}=p(i);s(t?{...r,[e]:t}:r)}var C=Jt(),w=o(C),E=_(w);K(E,{children:(e,n)=>{R(),a(e,t(`Video`))},$$slots:{default:!0}});var D=c(E,2);vt(_(D),{label:`Preset`,caption:`Preset`,get value(){return p(i).preset},get options(){return r.presetNames},onChange:l,icon:e=>{$(e,{name:`preset`})},$$slots:{icon:!0}}),k(D);var O=c(D,2),A=_(O);{let e=e=>{$(e,{name:`width`})},t=v(()=>p(i).maxWidth??null);mt(A,{label:`Max width`,caption:`Max width`,min:1,placeholder:`source`,get value(){return p(t)},onChange:e=>u(e,!1),onCommit:e=>u(e,!0),icon:e,$$slots:{icon:!0}})}k(O),k(w);var j=c(w,2),M=_(j);K(M,{children:(e,n)=>{R(),a(e,t(`Chroma key`))},$$slots:{default:!0}});var N=c(M,2),P=_(N);{let e=v(()=>y(p(i).chromaKey.keyColor));Kt(P,{label:`Key color`,caption:`Key color`,get value(){return p(e)},onChange:e=>x(e,!1),onCommit:e=>x(e,!0)})}k(N),m(c(N,2),17,()=>f,e=>e.key,(e,t)=>{var n=qt();mt(_(n),{get label(){return p(t).label},get caption(){return p(t).label},get min(){return p(t).min},get max(){return p(t).max},get step(){return p(t).step},get value(){return p(i).chromaKey[p(t).key]},onChange:e=>h(p(t).key,e??p(t).min,!1),onCommit:e=>h(p(t).key,e??p(t).min,!0),icon:e=>{$(e,{get name(){return p(t).icon}})},$$slots:{icon:!0}}),k(n),a(e,n)}),k(j);var F=c(j,2),I=_(F);K(I,{children:(e,n)=>{R(),a(e,t(`References`))},$$slots:{default:!0}});var L=c(I,2);Ut(L,{label:`Mask`,caption:`Mask`,get value(){return p(i).mask},expectedTypes:[`image`],get excludeAssetId(){return r.asset.id},onChange:e=>S(`mask`,e)}),Ut(c(L,2),{label:`Fallback`,caption:`Fallback`,get value(){return p(i).fallback},expectedTypes:[`image`],get excludeAssetId(){return r.asset.id},onChange:e=>S(`fallback`,e)}),k(F),St(c(F,2),{get proxy(){return r.asset.proxy},showDimensions:!0,showDuration:!0}),a(n,C),e()}var Xt=f(`<section class="svelte-czsds6"><!> <div class="field svelte-czsds6"><!></div></section> <!>`,1);function Zt(n,r){T(r,!0);let i=v(()=>_e.validateParameters(r.parameters));function s(e){let t={...p(i),preset:e};r.onParametersCommit(t)}var l=Xt(),u=o(l),d=_(u);K(d,{children:(e,n)=>{R(),a(e,t(`Audio`))},$$slots:{default:!0}});var f=c(d,2);vt(_(f),{label:`Preset`,caption:`Preset`,get value(){return p(i).preset},get options(){return r.presetNames},onChange:s,icon:e=>{$(e,{name:`preset`})},$$slots:{icon:!0}}),k(f),k(u),St(c(u,2),{get proxy(){return r.asset.proxy},showDuration:!0}),a(n,l),e()}var Qt={[q.type]:wt,[ye.type]:kt,[ue.type]:jt,[ve.type]:Yt,[_e.type]:Zt},$t=f(`<div></div>`),en=f(`<div class="overdraw-band svelte-j0tjy7"></div>`),tn=f(`<div role="slider" aria-label="Left slice line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <div role="slider" aria-label="Right slice line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div>`,1),nn=f(`<div role="slider" aria-label="Top slice line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <div role="slider" aria-label="Bottom slice line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div>`,1),rn=f(`<div class="canvas svelte-j0tjy7"><div class="toolbar svelte-j0tjy7"><button title="Zoom out" class="svelte-j0tjy7">−</button> <span class="zoom svelte-j0tjy7"> </span> <button title="Zoom in" class="svelte-j0tjy7">+</button> <button title="100%">1:1</button> <button>Fit</button> <span class="dims svelte-j0tjy7"> </span></div> <div role="application" aria-label="Slice canvas — drag to pan, pinch/⌘+scroll to zoom"><div class="image-wrap svelte-j0tjy7"><img alt="" draggable="false" class="svelte-j0tjy7"/> <!> <!> <!> <!> <!> <div role="slider" aria-label="Left overdraw line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <div role="slider" aria-label="Right overdraw line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <div role="slider" aria-label="Top overdraw line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <div role="slider" aria-label="Bottom overdraw line" tabindex="0"><span class="tag svelte-j0tjy7"> </span></div> <!> <!></div></div></div>`);function an(t,r){T(r,!0);let i=y(void 0),l=y(void 0),f=y(null),m=v(()=>fe(r.mode)),g=v(()=>p(m).horizontal),b=v(()=>p(m).vertical);function S(e,t){return p(f)?.target===e&&p(f).side===t}let C=y(`fit`),w=y(1),O=y(0),A=y(0),j=y(0),N=y(0),P=y(!1),F=new Map,I=null;function L(e){return Math.max(.05,Math.min(8,e))}n(()=>{let e=p(i);if(!e)return;let t=new ResizeObserver(()=>{s(j,e.clientWidth,!0),s(N,e.clientHeight,!0)});return t.observe(e),()=>t.disconnect()}),n(()=>{if(p(C)===`free`||r.width===0||r.height===0||p(j)===0||p(N)===0)return;let e=L(Math.min((p(j)-32)/r.width,(p(N)-32)/r.height));R(p(C)===`one`?1:e)});function R(e){s(w,e,!0),s(O,(p(j)-r.width*e)/2),s(A,(p(N)-r.height*e)/2)}function z(e,t){if(!p(i))return{x:e,y:t};let n=p(i).getBoundingClientRect();return{x:e-n.left-p(i).clientLeft,y:t-n.top-p(i).clientTop}}function ee(e,t,n){let r=L(e);s(O,t-(t-p(O))*(r/p(w))),s(A,n-(n-p(A))*(r/p(w))),s(w,r,!0),s(C,`free`)}function V(e,t,n){return Math.max(t,Math.min(n,Math.round(e)))}function U(){s(C,`fit`)}function W(){s(C,`one`)}function te(e){ee(p(w)*e,p(j)/2,p(N)/2)}function ne(){let[e,t]=[...F.values()];return{distance:Math.hypot(e.x-t.x,e.y-t.y),midX:(e.x+t.x)/2,midY:(e.y+t.y)/2}}function re(e){try{p(i)&&ot(p(i),e)}catch{}F.set(e.pointerId,{x:e.clientX,y:e.clientY}),F.size===2?I=ne():F.size===1&&s(P,!0)}function G(e){let t=F.get(e.pointerId);if(t)if(F.set(e.pointerId,{x:e.clientX,y:e.clientY}),F.size>=2&&I){let e=ne(),t=z(I.midX,I.midY);ee(p(w)*(e.distance/I.distance),t.x,t.y),s(O,p(O)+(e.midX-I.midX)),s(A,p(A)+(e.midY-I.midY)),I=e}else F.size===1&&(s(O,p(O)+(e.clientX-t.x)),s(A,p(A)+(e.clientY-t.y)),s(C,`free`))}function ie(e){F.delete(e.pointerId),F.size<2&&(I=null),F.size===0&&s(P,!1)}function ae(e){if(e.preventDefault(),e.ctrlKey||e.metaKey){let t=z(e.clientX,e.clientY);ee(p(w)*Math.exp(-e.deltaY*.01),t.x,t.y)}else s(O,p(O)-e.deltaX),s(A,p(A)-e.deltaY),s(C,`free`)}function oe(e,t,n){n.preventDefault(),n.stopPropagation(),s(f,{target:e,side:t},!0),ot(n.currentTarget,n)}function se(e){if(!p(f)||!p(l))return;let t=p(l).getBoundingClientRect(),n=(e.clientX-t.left)/p(w),i=(e.clientY-t.top)/p(w),{target:a,side:o}=p(f),s={...a===`inset`?r.insets:r.overdraw};o===`left`?s.left=V(n,0,ce(a,`left`)):o===`right`?s.right=V(r.width-n,0,ce(a,`right`)):o===`top`?s.top=V(i,0,ce(a,`top`)):o===`bottom`&&(s.bottom=V(r.height-i,0,ce(a,`bottom`))),a===`inset`?r.onChange(s):r.onOverdrawChange(s)}function K(e){let t=p(f)!==null;p(f)&&st(e.currentTarget,e.pointerId),s(f,null),t&&r.onCommit()}function ce(e,t){let n=e===`inset`?r.insets:r.overdraw;return e===`inset`?ge(n,t,r.width,r.height):me(n,t,r.width,r.height)}function le(e,t,n){let i=e===`inset`?r.insets:r.overdraw,a={...i};a[t]=V(i[t]+n,0,ce(e,t)),a[t]!==i[t]&&(e===`inset`?r.onChange(a):r.onOverdrawChange(a),r.onCommit())}function q(e,t,n,r){let i=r.shiftKey?10:1,a=n===`x`?`ArrowRight`:`ArrowUp`,o=n===`x`?`ArrowLeft`:`ArrowDown`;if(r.key===a)le(e,t,i);else if(r.key===o)le(e,t,-i);else return;r.preventDefault()}var ue=rn(),de=_(ue),pe=_(de),he=c(pe,2),_e=_(he);k(he);var ve=c(he,2),ye=c(ve,2);let be;var J=c(ye,2);let xe;var Se=c(J,2),Ce=_(Se);k(Se),k(de);var we=c(de,2);let Te;var Ee=_(we);let De;var Oe=_(Ee),ke=c(Oe,2),Ae=e=>{var t=$t();let n,i;H(()=>{n=E(t,1,`center-rect svelte-j0tjy7`,null,n,{"side-edges":!p(g),"cap-edges":!p(b)}),i=D(t,``,i,{left:`${(p(g)?r.insets.left:0)*p(w)}px`,top:`${(p(b)?r.insets.top:0)*p(w)}px`,right:`${(p(g)?r.insets.right:0)*p(w)}px`,bottom:`${(p(b)?r.insets.bottom:0)*p(w)}px`})}),a(e,t)};B(ke,e=>{(p(g)||p(b))&&e(Ae)});var je=c(ke,2),Me=e=>{var t=en();let n;H(()=>n=D(t,``,n,{left:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.left*p(w)}px`})),a(e,t)};B(je,e=>{r.overdraw.left>0&&e(Me)});var Ne=c(je,2),Pe=e=>{var t=en();let n;H(()=>n=D(t,``,n,{right:`0`,top:`0`,bottom:`0`,width:`${r.overdraw.right*p(w)}px`})),a(e,t)};B(Ne,e=>{r.overdraw.right>0&&e(Pe)});var Fe=c(Ne,2),Ie=e=>{var t=en();let n;H(()=>n=D(t,``,n,{top:`0`,left:`${r.overdraw.left*p(w)}px`,right:`${r.overdraw.right*p(w)}px`,height:`${r.overdraw.top*p(w)}px`})),a(e,t)};B(Fe,e=>{r.overdraw.top>0&&e(Ie)});var Le=c(Fe,2),Re=e=>{var t=en();let n;H(()=>n=D(t,``,n,{bottom:`0`,left:`${r.overdraw.left*p(w)}px`,right:`${r.overdraw.right*p(w)}px`,height:`${r.overdraw.bottom*p(w)}px`})),a(e,t)};B(Le,e=>{r.overdraw.bottom>0&&e(Re)});var Y=c(Le,2);let ze;M(Y,`aria-valuemin`,0);let Be;var Ve=_(Y),He=_(Ve,!0);k(Ve),k(Y);var X=c(Y,2);let Ue;M(X,`aria-valuemin`,0);let We;var Ge=_(X),Ke=_(Ge,!0);k(Ge),k(X);var Z=c(X,2);let qe;M(Z,`aria-valuemin`,0);let Je;var Ye=_(Z),Xe=_(Ye,!0);k(Ye),k(Z);var Q=c(Z,2);let Ze;M(Q,`aria-valuemin`,0);let Qe;var $e=_(Q),et=_($e,!0);k($e),k(Q);var $=c(Q,2),tt=e=>{var t=tn(),n=o(t);let i;M(n,`aria-valuemin`,0);let s;var l=_(n),f=_(l,!0);k(l),k(n);var m=c(n,2);let g;M(m,`aria-valuemin`,0);let v;var y=_(m),b=_(y,!0);k(y),k(m),H((e,t,a,o)=>{i=E(n,1,`line v svelte-j0tjy7`,null,i,e),M(n,`aria-valuenow`,r.insets.left),M(n,`aria-valuemax`,t),s=D(n,``,s,{left:`${r.insets.left*p(w)}px`}),h(f,r.insets.left),g=E(m,1,`line v svelte-j0tjy7`,null,g,a),M(m,`aria-valuenow`,r.insets.right),M(m,`aria-valuemax`,o),v=D(m,``,v,{left:`${(r.width-r.insets.right)*p(w)}px`}),h(b,r.insets.right)},[()=>({active:S(`inset`,`left`)}),()=>ce(`inset`,`left`),()=>({active:S(`inset`,`right`)}),()=>ce(`inset`,`right`)]),u(`pointerdown`,n,e=>oe(`inset`,`left`,e)),u(`pointermove`,n,se),u(`pointerup`,n,K),d(`pointercancel`,n,K),u(`keydown`,n,e=>q(`inset`,`left`,`x`,e)),u(`pointerdown`,m,e=>oe(`inset`,`right`,e)),u(`pointermove`,m,se),u(`pointerup`,m,K),d(`pointercancel`,m,K),u(`keydown`,m,e=>q(`inset`,`right`,`x`,e)),a(e,t)};B($,e=>{p(g)&&e(tt)});var nt=c($,2),rt=e=>{var t=nn(),n=o(t);let i;M(n,`aria-valuemin`,0);let s;var l=_(n),f=_(l,!0);k(l),k(n);var m=c(n,2);let g;M(m,`aria-valuemin`,0);let v;var y=_(m),b=_(y,!0);k(y),k(m),H((e,t,a,o)=>{i=E(n,1,`line h svelte-j0tjy7`,null,i,e),M(n,`aria-valuenow`,r.insets.top),M(n,`aria-valuemax`,t),s=D(n,``,s,{top:`${r.insets.top*p(w)}px`}),h(f,r.insets.top),g=E(m,1,`line h svelte-j0tjy7`,null,g,a),M(m,`aria-valuenow`,r.insets.bottom),M(m,`aria-valuemax`,o),v=D(m,``,v,{top:`${(r.height-r.insets.bottom)*p(w)}px`}),h(b,r.insets.bottom)},[()=>({active:S(`inset`,`top`)}),()=>ce(`inset`,`top`),()=>({active:S(`inset`,`bottom`)}),()=>ce(`inset`,`bottom`)]),u(`pointerdown`,n,e=>oe(`inset`,`top`,e)),u(`pointermove`,n,se),u(`pointerup`,n,K),d(`pointercancel`,n,K),u(`keydown`,n,e=>q(`inset`,`top`,`y`,e)),u(`pointerdown`,m,e=>oe(`inset`,`bottom`,e)),u(`pointermove`,m,se),u(`pointerup`,m,K),d(`pointercancel`,m,K),u(`keydown`,m,e=>q(`inset`,`bottom`,`y`,e)),a(e,t)};B(nt,e=>{p(b)&&e(rt)}),k(Ee),x(Ee,e=>s(l,e),()=>p(l)),k(we),x(we,e=>s(i,e),()=>p(i)),k(ue),H((e,t,n,i,a,o,s,c,l)=>{h(_e,`${e??``}%`),be=E(ye,1,`svelte-j0tjy7`,null,be,{active:p(C)===`one`}),xe=E(J,1,`svelte-j0tjy7`,null,xe,{active:p(C)===`fit`}),h(Ce,`${r.width??``} × ${r.height??``} px`),Te=E(we,1,`viewport checkerboard svelte-j0tjy7`,null,Te,{panning:p(P)}),De=D(Ee,``,De,{width:`${r.width*p(w)}px`,height:`${r.height*p(w)}px`,transform:`translate(${p(O)??``}px, ${p(A)??``}px)`}),M(Oe,`src`,r.src),ze=E(Y,1,`line v overdraw-line svelte-j0tjy7`,null,ze,t),M(Y,`aria-valuenow`,r.overdraw.left),M(Y,`aria-valuemax`,n),Be=D(Y,``,Be,{left:`${r.overdraw.left*p(w)}px`}),h(He,r.overdraw.left),Ue=E(X,1,`line v overdraw-line svelte-j0tjy7`,null,Ue,i),M(X,`aria-valuenow`,r.overdraw.right),M(X,`aria-valuemax`,a),We=D(X,``,We,{left:`${(r.width-r.overdraw.right)*p(w)}px`}),h(Ke,r.overdraw.right),qe=E(Z,1,`line h overdraw-line svelte-j0tjy7`,null,qe,o),M(Z,`aria-valuenow`,r.overdraw.top),M(Z,`aria-valuemax`,s),Je=D(Z,``,Je,{top:`${r.overdraw.top*p(w)}px`}),h(Xe,r.overdraw.top),Ze=E(Q,1,`line h overdraw-line svelte-j0tjy7`,null,Ze,c),M(Q,`aria-valuenow`,r.overdraw.bottom),M(Q,`aria-valuemax`,l),Qe=D(Q,``,Qe,{top:`${(r.height-r.overdraw.bottom)*p(w)}px`}),h(et,r.overdraw.bottom)},[()=>Math.round(p(w)*100),()=>({active:S(`overdraw`,`left`)}),()=>ce(`overdraw`,`left`),()=>({active:S(`overdraw`,`right`)}),()=>ce(`overdraw`,`right`),()=>({active:S(`overdraw`,`top`)}),()=>ce(`overdraw`,`top`),()=>({active:S(`overdraw`,`bottom`)}),()=>ce(`overdraw`,`bottom`)]),u(`click`,pe,()=>te(1/1.25)),u(`click`,ve,()=>te(1.25)),u(`click`,ye,W),u(`click`,J,U),u(`pointerdown`,we,re),u(`pointermove`,we,G),u(`pointerup`,we,ie),d(`pointercancel`,we,ie),d(`wheel`,we,ae),u(`pointerdown`,Y,e=>oe(`overdraw`,`left`,e)),u(`pointermove`,Y,se),u(`pointerup`,Y,K),d(`pointercancel`,Y,K),u(`keydown`,Y,e=>q(`overdraw`,`left`,`x`,e)),u(`pointerdown`,X,e=>oe(`overdraw`,`right`,e)),u(`pointermove`,X,se),u(`pointerup`,X,K),d(`pointercancel`,X,K),u(`keydown`,X,e=>q(`overdraw`,`right`,`x`,e)),u(`pointerdown`,Z,e=>oe(`overdraw`,`top`,e)),u(`pointermove`,Z,se),u(`pointerup`,Z,K),d(`pointercancel`,Z,K),u(`keydown`,Z,e=>q(`overdraw`,`top`,`y`,e)),u(`pointerdown`,Q,e=>oe(`overdraw`,`bottom`,e)),u(`pointermove`,Q,se),u(`pointerup`,Q,K),d(`pointercancel`,Q,K),u(`keydown`,Q,e=>q(`overdraw`,`bottom`,`y`,e)),a(t,ue),e()}A([`click`,`pointerdown`,`pointermove`,`pointerup`,`keydown`]);var on=y(`dom`),sn=f(`<div class="preview-panel svelte-1w9ogms"><div class="bar svelte-1w9ogms"><span class="size svelte-1w9ogms"> </span> <div class="backends svelte-1w9ogms" role="group" aria-label="Rendering backend"><button>DOM</button> <button>Canvas</button></div> <button class="reset svelte-1w9ogms">Reset</button></div> <div class="stage checkerboard svelte-1w9ogms"><div class="box svelte-1w9ogms"><!> <div class="handle edge-right svelte-1w9ogms" role="separator" aria-label="Drag width" aria-orientation="vertical"></div> <div class="handle edge-bottom svelte-1w9ogms" role="separator" aria-label="Drag height" aria-orientation="horizontal"></div> <div class="handle corner svelte-1w9ogms" role="separator" aria-label="Drag size"></div></div></div></div>`);function cn(t,n){T(n,!0);function r(){return Math.round(Math.min(360,Math.max(80,n.entry.sourceWidth*2)))}function i(){return Math.round(r()*n.entry.sourceHeight/Math.max(1,n.entry.sourceWidth))}let o=y(L(l(()=>r()))),f=y(L(l(()=>i()))),m=y(null),g={pointerX:0,pointerY:0,width:0,height:0};function v(e,t){t.preventDefault(),s(m,e,!0),g={pointerX:t.clientX,pointerY:t.clientY,width:p(o),height:p(f)},ot(t.currentTarget,t)}function b(e){p(m)&&(p(m)!==`y`&&s(o,Math.max(16,Math.round(g.width+(e.clientX-g.pointerX))),!0),p(m)!==`x`&&s(f,Math.max(16,Math.round(g.height+(e.clientY-g.pointerY))),!0))}function x(e){p(m)&&st(e.currentTarget,e.pointerId),s(m,null)}function S(){s(o,r(),!0),s(f,i(),!0)}var C=sn(),w=_(C),O=_(w),A=_(O);k(O);var j=c(O,2),M=_(j);let N;var P=c(M,2);let F;k(j);var I=c(j,2);k(w);var R=c(w,2),z=_(R);let B;var ee=_(z);We(ee,{get src(){return n.entry},get backend(){return p(on)},class:`fill`});var V=c(ee,2),U=c(V,2),W=c(U,2);k(z),k(R),k(C),H(()=>{h(A,`${p(o)??``} × ${p(f)??``} px`),N=E(M,1,`svelte-1w9ogms`,null,N,{on:p(on)===`dom`}),F=E(P,1,`svelte-1w9ogms`,null,F,{on:p(on)===`canvas`}),B=D(z,``,B,{width:`${p(o)??``}px`,height:`${p(f)??``}px`})}),u(`click`,M,()=>s(on,`dom`)),u(`click`,P,()=>s(on,`canvas`)),u(`click`,I,S),u(`pointerdown`,V,e=>v(`x`,e)),u(`pointermove`,V,b),u(`pointerup`,V,x),d(`pointercancel`,V,x),u(`pointerdown`,U,e=>v(`y`,e)),u(`pointermove`,U,b),u(`pointerup`,U,x),d(`pointercancel`,U,x),u(`pointerdown`,W,e=>v(`both`,e)),u(`pointermove`,W,b),u(`pointerup`,W,x),d(`pointercancel`,W,x),a(t,C),e()}A([`click`,`pointerdown`,`pointermove`,`pointerup`]);var ln=f(`<span class="color-dot svelte-17f73b4"></span>`),un=f(`<span class="via svelte-17f73b4"> </span>`),dn=f(`<label><input type="checkbox" class="svelte-17f73b4"/> <span class="marker svelte-17f73b4" aria-hidden="true"><!></span> <span class="name svelte-17f73b4"> </span> <!></label>`),fn=f(`<div class="manifest-selector svelte-17f73b4" role="group" aria-label="Manifest assignments"></div>`);function pn(n,r){T(r,!0);function i(e){return r.passive.find(t=>t.manifest===e)}function o(e,t,n){return t?`${e}: explicitly assigned`:n?`${e}: passive member via ${n.via.join(`, `)}`:`${e}: not assigned`}var s=fn();m(s,20,()=>r.manifests,e=>e,(e,n)=>{let s=v(()=>G.manifestAppearance(n)),l=v(()=>r.selected.includes(n)),d=v(()=>i(n)),f=v(()=>p(s).color??`var(--accent)`);var m=dn();let g,y;var b=_(m);C(b);var x=c(b,2),S=_(x),w=e=>{var n=t();H(()=>h(n,p(s).emoji)),a(e,n)},T=e=>{a(e,ln())};B(S,e=>{p(s).emoji?e(w):e(T,-1)}),k(x);var O=c(x,2),A=_(O,!0);k(O);var j=c(O,2),N=e=>{var t=un(),n=_(t);k(t),H(e=>h(n,`passive · via ${e??``}`),[()=>p(d).via.join(`, `)]),a(e,t)};B(j,e=>{p(d)&&!p(l)&&e(N)}),k(m),H((e,t)=>{g=E(m,1,`manifest-option control svelte-17f73b4`,null,g,{selected:p(l),passive:p(d)!==void 0&&!p(l)}),M(m,`title`,e),y=D(m,``,y,{"--manifest-color":p(f)}),z(b,p(l)),M(b,`aria-label`,t),h(A,n)},[()=>o(n,p(l),p(d)),()=>o(n,p(l),p(d))]),u(`change`,b,()=>r.onToggle(n)),a(e,m)}),k(s),a(n,s),e()}A([`change`]);var mn=f(`<div class="center empty svelte-xy8zsr">Loading…</div>`),hn=f(`<div class="center empty svelte-xy8zsr"> </div>`),gn=f(`<div class="empty error svelte-xy8zsr"> </div>`),_n=f(`<div class="empty svelte-xy8zsr">Loading image…</div>`),vn=f(`<div class="pane svelte-xy8zsr"><!></div>`),yn=f(`<div class="tabs svelte-xy8zsr"><button>Slicing</button> <button>Preview</button></div> <!>`,1),bn=f(`<div class="preview-column svelte-xy8zsr"><div class="video-frame svelte-xy8zsr"><!></div> <!></div>`),xn=f(`<p class="stage-hint svelte-xy8zsr">No proxy yet — add the asset to a manifest to process it.</p>`),Sn=f(`<div class="pane image-stage checkerboard svelte-xy8zsr"><!></div>`),Cn=f(`<div class="preview-column svelte-xy8zsr"><div class="compare-row svelte-xy8zsr"><figure class="compare svelte-xy8zsr"><figcaption class="svelte-xy8zsr">Input</figcaption> <div class="video-frame svelte-xy8zsr"><!></div></figure> <figure class="compare svelte-xy8zsr"><figcaption class="svelte-xy8zsr">Keyed</figcaption> <div class="video-frame checkerboard svelte-xy8zsr"><!></div></figure></div> <!></div>`),wn=f(`<div class="pane image-stage svelte-xy8zsr"><!></div>`),Tn=f(`<div class="preview-column svelte-xy8zsr"><div class="audio-frame svelte-xy8zsr"><!></div></div>`),En=f(`<img/>`),Dn=f(`<p class="warning svelte-xy8zsr"> </p>`),On=f(`<p class="hint svelte-xy8zsr">No manifests yet — create one in the Manifests view.</p>`),kn=f(`<p class="hint svelte-xy8zsr">No references.</p>`),An=f(`<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>`),jn=f(`<h4 class="svelte-xy8zsr">Outgoing</h4> <!>`,1),Mn=f(`<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>`),Nn=f(`<h4 class="svelte-xy8zsr">Incoming</h4> <!>`,1),Pn=f(`<!> <!>`,1),Fn=f(`<p class="hint error svelte-xy8zsr"> </p>`),In=f(`<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"><!> <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),Ln=f(`<div class="detail svelte-xy8zsr"><!> <!></div> <input type="file" hidden=""/> <!> <!>`,1);function Rn(l,d){T(d,!0);let f=v(()=>te.params.id??``),g=v(()=>G.assetById(p(f))),b=v(()=>G.manifestNames),S=v(()=>p(g)?G.state?.presetNames[p(g).type]??[]:[]),O=v(()=>p(g)?Qt[p(g).type]??null:null),A=y(null),j=v(()=>p(g)?p(A)&&p(A).assetId===p(g).id?p(A).value:F(p(g)).parameters:null);function N(e){p(g)&&s(A,{assetId:p(g).id,value:e},!0)}let P=y(null),I=y(null);n(()=>{let e=p(g)?.type===`slice`?p(g).rawUrl:null;if(s(P,null),s(I,null),!e)return;let t=!1,n=new window.Image;return n.onload=()=>{t||s(P,{width:n.naturalWidth,height:n.naturalHeight},!0)},n.onerror=()=>{t||s(I,`Could not load image dimensions.`)},n.src=e,()=>{t=!0}});let L=v(()=>{if(!p(g)||p(g).type!==`slice`||p(j)===null)return null;try{return ye.validateParameters(p(j))}catch{return null}}),z=v(()=>!p(g)||!p(L)||!p(P)?null:{kind:`slice`,src:p(g).proxy?.url??p(g).rawUrl,slicing:{mode:p(L).mode,insets:p(L).insets,pixelRatio:p(L).pixelRatio,...p(L).overdraw?{overdraw:p(L).overdraw}:{}},sourceWidth:p(P).width,sourceHeight:p(P).height}),ee=v(()=>{if(!p(g)||p(g).type!==`image`||!p(g).proxy)return null;let{width:e,height:t}=p(g).proxy;return e===void 0||t===void 0?null:{kind:`image`,src:p(g).proxy.url,width:e,height:t}}),q=v(()=>{if(!p(g)||p(g).type!==`video`||!p(g).proxy)return null;let{width:e,height:t,durationMs:n}=p(g).proxy;return e===void 0||t===void 0||n===void 0?null:{kind:`video`,src:p(g).proxy.url,width:e,height:t,durationMs:n}});function ue(e){if(!e)return;let t=G.assetById(e);if(!(!t?.proxy||t.proxy.width===void 0||t.proxy.height===void 0))return{kind:`image`,src:t.proxy.url,width:t.proxy.width,height:t.proxy.height}}let fe=v(()=>{if(!p(g)||p(g).type!==`chroma-key-video`||!p(g).proxy||p(j)===null)return null;let{width:e,height:t,durationMs:n}=p(g).proxy;if(e===void 0||t===void 0||n===void 0)return null;let r;try{r=ve.validateParameters(p(j))}catch{return null}let i=ue(r.mask?.$asset),a=ue(r.fallback?.$asset);return{kind:`chroma-key-video`,src:p(g).proxy.url,width:e,height:t,durationMs:n,chromaKey:r.chromaKey,...i?{mask:i}:{},...a?{fallback:a}:{}}}),me=v(()=>{if(!p(g)||p(g).type!==`chroma-key-video`||!p(g).proxy)return null;let{width:e,height:t,durationMs:n}=p(g).proxy;return e===void 0||t===void 0||n===void 0?null:{kind:`video`,src:p(g).proxy.url,width:e,height:t,durationMs:n}}),ge=y(void 0),_e=y(void 0);n(()=>{let e=p(ge),t=p(_e);if(!e||!t)return;function n(){Math.abs(t.currentTime-e.currentTime)>.25&&(t.currentTime=e.currentTime)}function r(){n(),t.play().catch(()=>{})}function i(){t.pause(),t.currentTime=e.currentTime}function a(){t.currentTime=e.currentTime}return e.addEventListener(`play`,r),e.addEventListener(`playing`,r),e.addEventListener(`pause`,i),e.addEventListener(`ended`,i),e.addEventListener(`seeked`,a),e.addEventListener(`timeupdate`,n),a(),e.paused||t.play().catch(()=>{}),()=>{e.removeEventListener(`play`,r),e.removeEventListener(`playing`,r),e.removeEventListener(`pause`,i),e.removeEventListener(`ended`,i),e.removeEventListener(`seeked`,a),e.removeEventListener(`timeupdate`,n)}});let be=y(`slicing`),J=y(null),xe=y(null),Se=0,Ce=y(null),we=0,Te=y(null),Ee=0,De=y(null),Oe=y(``),ke=y(void 0),Ae=he().join(`,`),Me=y(null),Ne=v(()=>p(g)&&p(Me)?.assetId===p(g).id?p(Me).value:p(g)?.id??``),Pe=v(()=>p(g)&&p(Ne)!==p(g).id?de(p(Ne)):null);async function Fe(e){if(!p(g))return;let t=p(g).id;try{await G.mutate(()=>ie(t,{parameters:e})),p(A)?.assetId===t&&s(A,null)}catch{}}async function Ie(e){if(!p(g))return;let t=p(g).manifests.includes(e)?p(g).manifests.filter(t=>t!==e):[...p(g).manifests,e];try{await G.mutate(()=>ie(p(g).id,{manifests:t}))}catch{}}async function Le(){if(!p(g)||p(Ne)===p(g).id||p(Pe))return;let e=p(g).id,t=p(Ne);try{await G.mutate(()=>ie(e,{renameTo:t})),s(Me,null),p(f)===e&&await W(U(`/asset/[id]`,{id:t}),{replaceState:!0})}catch{}}async function Re(){if(!p(g))return;let e=p(g).id;if(confirm(`Delete "${e}"? The raw file and its proxies are removed.`))try{await G.mutate(()=>re(e)),p(f)===e&&await W(U(`/`))}catch{}}async function Y(e){try{localStorage.setItem(`fundus.gallery.folder`,e??`__all__`)}catch{}await W(U(`/`))}async function ze(e,t){let n=e.filter(e=>G.assetById(e)?.folder!==t);if(n.length!==0)try{await G.mutate(()=>ne(n,t))}catch{}}function Be(e){Se+=1,s(xe,{id:Se,parent:e},!0)}function Ve(e){we+=1,s(Ce,{id:we,path:e},!0)}function He(e){Ee+=1,s(Te,{id:Ee,path:e},!0)}function X(e){s(Oe,e,!0),p(ke)?.click()}function Ue(e){let t=e.currentTarget,n=t.files?.[0];t.value=``,n&&s(De,n,!0)}async function We(e){s(De,null),await W(U(`/asset/[id]`,{id:e}))}var Ge=Ln(),Z=o(Ge),qe=_(Z);{let e=v(()=>p(g)?.folder??null);se(qe,{get selectedFolder(){return p(e)},get activeAsset(){return p(g)},get createRequest(){return p(xe)},get renameRequest(){return p(Ce)},get deleteRequest(){return p(Te)},onSelect:e=>void Y(e),onMoveAssets:(e,t)=>void ze(e,t),onActiveAssetDeleted:e=>void Y(e),onContextMenu:(e,t,n,r)=>{s(J,{x:e,y:t,parent:n,renamePath:r},!0)}})}var Je=c(qe,2),Ye=e=>{a(e,mn())},Xe=e=>{var t=hn(),n=_(t);k(t),H(()=>h(n,`No asset with id "${p(f)??``}".`)),a(e,t)},Q=e=>{var n=In(),l=o(n),d=_(l),f=e=>{var t=yn(),n=o(t),i=_(n);let l;var d=c(i,2);let f;k(n);var m=c(n,2),y=e=>{var t=gn(),n=_(t,!0);k(t),H(()=>h(n,p(I))),a(e,t)},b=e=>{a(e,_n())},x=e=>{var t=vn(),n=_(t);{let e=v(()=>p(L).overdraw??pe());an(n,{get src(){return p(g).rawUrl},get width(){return p(P).width},get height(){return p(P).height},get mode(){return p(L).mode},get insets(){return p(L).insets},get overdraw(){return p(e)},onChange:e=>N({...p(L),insets:e}),onOverdrawChange:e=>N({...p(L),overdraw:e}),onCommit:()=>void Fe(p(j))})}k(t),a(e,t)},S=e=>{var t=vn();r(_(t),()=>p(g).id,e=>{cn(e,{get entry(){return p(z)}})}),k(t),a(e,t)};B(m,e=>{p(I)?e(y):!p(L)||!p(P)?e(b,1):p(be)===`slicing`?e(x,2):p(z)&&e(S,3)}),H(()=>{l=E(i,1,`svelte-xy8zsr`,null,l,{on:p(be)===`slicing`}),f=E(d,1,`svelte-xy8zsr`,null,f,{on:p(be)===`preview`})}),u(`click`,i,()=>s(be,`slicing`)),u(`click`,d,()=>s(be,`preview`)),a(e,t)},y=e=>{var t=Sn(),n=_(t),i=e=>{var t=bn(),n=_(t);let i;r(_(n),()=>p(q).src,e=>{Ke(e,{get src(){return p(q)},loop:!0,get videoElement(){return p(ge)},set videoElement(e){s(ge,e,!0)}})}),k(n),ae(c(n,2),{get media(){return p(ge)},showScrub:!0,showVolume:!0}),k(t),H(()=>i=D(n,``,i,{"aspect-ratio":`${p(q).width??``} / ${p(q).height??``}`})),a(e,t)},o=e=>{a(e,xn())};B(n,e=>{p(q)?e(i):e(o,-1)}),k(t),a(e,t)},x=e=>{var t=wn(),n=_(t),i=e=>{var t=Cn(),n=_(t),i=_(n),o=c(_(i),2);let l;r(_(o),()=>p(me).src,e=>{Ke(e,{get src(){return p(me)},loop:!0,get videoElement(){return p(_e)},set videoElement(e){s(_e,e,!0)}})}),k(o),k(i);var u=c(i,2),d=c(_(u),2);let f;r(_(d),()=>`${p(fe).src}|${p(fe).mask?.src??``}`,e=>{Qe(e,{get src(){return p(fe)},get videoElement(){return p(ge)},set videoElement(e){s(ge,e,!0)}})}),k(d),k(u),k(n),ae(c(n,2),{get media(){return p(ge)},showScrub:!0,showVolume:!1}),k(t),H(()=>{l=D(o,``,l,{"aspect-ratio":`${p(me).width??``} / ${p(me).height??``}`}),f=D(d,``,f,{"aspect-ratio":`${p(fe).width??``} / ${p(fe).height??``}`})}),a(e,t)},o=e=>{a(e,xn())};B(n,e=>{p(fe)&&p(me)?e(i):e(o,-1)}),k(t),a(e,t)},T=e=>{var t=Sn(),n=_(t),i=e=>{var t=Tn(),n=_(t);r(_(n),()=>p(g).proxy.url,e=>{ce(e,{get src(){return p(g).proxy.url},showControls:!0})}),k(n),k(t),a(e,t)},o=e=>{a(e,xn())};B(n,e=>{p(g).proxy?e(i):e(o,-1)}),k(t),a(e,t)},A=e=>{var t=Sn(),n=_(t),r=e=>{je(e,{get src(){return p(ee)},get alt(){return p(g).id}})},i=e=>{var t=En();H(()=>{M(t,`src`,p(g).rawUrl),M(t,`alt`,p(g).id)}),a(e,t)};B(n,e=>{p(ee)?e(r):e(i,-1)}),k(t),a(e,t)};B(d,e=>{p(g).type===`slice`?e(f):p(g).type===`video`?e(y,1):p(g).type===`chroma-key-video`?e(x,2):p(g).type===`audio`?e(T,3):e(A,-1)}),k(l);var F=c(l,2),W=_(F),te=_(W),ne=_(te,!0);k(te);var re=c(te,2),G=_(re),ie=c(G),oe=_(ie,!0);k(ie),k(re),m(c(re,2),16,()=>p(g).warnings,e=>e,(e,t)=>{var n=Dn(),r=_(n);k(n),H(()=>h(r,`⚠ ${t??``}`)),a(e,n)}),k(W);var se=c(W,2),le=e=>{var t=i();V(o(t),()=>p(O),(e,t)=>{t(e,{get asset(){return p(g)},get parameters(){return p(j)},onParametersChange:e=>N(e),onParametersCommit:e=>{N(e),Fe(e)},get presetNames(){return p(S)}})}),a(e,t)};B(se,e=>{p(O)&&p(j)!==null&&e(le)});var ue=c(se,2),de=_(ue);K(de,{children:(e,n)=>{R(),a(e,t(`Manifests`))},$$slots:{default:!0}});var he=c(de,2),ve=e=>{a(e,On())},ye=e=>{pn(e,{get manifests(){return p(b)},get selected(){return p(g).manifests},get passive(){return p(g).passiveManifests},onToggle:e=>void Ie(e)})};B(he,e=>{p(b).length===0?e(ve):e(ye,-1)}),k(ue);var J=c(ue,2),xe=_(J);K(xe,{children:(e,n)=>{R(),a(e,t(`References`))},$$slots:{default:!0}});var Se=c(xe,2),Ce=e=>{a(e,kn())},we=e=>{var t=Pn(),n=o(t),r=e=>{var t=jn();m(c(o(t),2),17,()=>p(g).references.outgoing,e=>`${e.field}→${e.assetId}`,(e,t)=>{var n=An(),r=_(n),i=_(r,!0);k(r);var o=c(r,4),s=_(o,!0);k(o),k(n),H(e=>{M(n,`href`,e),h(i,p(t).field),h(s,p(t).assetId)},[()=>U(`/asset/[id]`,{id:p(t).assetId})]),a(e,n)}),a(e,t)};B(n,e=>{p(g).references.outgoing.length>0&&e(r)});var i=c(n,2),s=e=>{var t=Nn();m(c(o(t),2),17,()=>p(g).references.incoming,e=>`${e.assetId}→${e.field}`,(e,t)=>{var n=Mn(),r=_(n),i=_(r,!0);k(r);var o=c(r,4),s=_(o,!0);k(o),k(n),H(e=>{M(n,`href`,e),h(i,p(t).assetId),h(s,p(t).field)},[()=>U(`/asset/[id]`,{id:p(t).assetId})]),a(e,n)}),a(e,t)};B(i,e=>{p(g).references.incoming.length>0&&e(s)}),a(e,t)};B(Se,e=>{p(g).references.outgoing.length===0&&p(g).references.incoming.length===0?e(Ce):e(we,-1)}),k(J);var Te=c(J,2),Ee=_(Te);K(Ee,{children:(e,n)=>{R(),a(e,t(`Asset`))},$$slots:{default:!0}});var De=c(Ee,2),Oe=_(De);C(Oe);var ke=c(Oe,2);k(De);var Ae=c(De,2),Y=e=>{var t=Fn(),n=_(t,!0);k(t),H(()=>h(n,p(Pe))),a(e,t)};B(Ae,e=>{p(Pe)&&e(Y)});var ze=c(Ae,2);k(Te),k(F),H(()=>{h(ne,p(g).id),h(G,`${p(g).type??``} · `),h(oe,p(g).raw),w(Oe,p(Ne)),ke.disabled=p(Ne)===p(g).id||p(Pe)!==null}),u(`input`,Oe,e=>s(Me,{assetId:p(g).id,value:e.currentTarget.value},!0)),u(`click`,ke,()=>void Le()),u(`click`,ze,()=>void Re()),a(e,n)};B(Je,e=>{G.loaded?p(g)?e(Q,-1):e(Xe,1):e(Ye)}),k(Z);var Ze=c(Z,2);x(Ze,e=>s(ke,e),()=>p(ke));var $e=c(Ze,2),et=e=>{{let t=v(()=>p(J).renamePath===null?void 0:()=>Ve(p(J)?.renamePath??``)),n=v(()=>p(J).renamePath===null?void 0:()=>He(p(J)?.renamePath??``));le(e,{get x(){return p(J).x},get y(){return p(J).y},onNewDirectory:()=>Be(p(J)?.parent??``),get onRenameDirectory(){return p(t)},onImportFile:()=>X(p(J)?.parent??``),get onDeleteDirectory(){return p(n)},onClose:()=>s(J,null)})}};B($e,e=>{p(J)&&e(et)});var $=c($e,2),tt=e=>{oe(e,{get file(){return p(De)},get folder(){return p(Oe)},onDone:e=>void We(e),onCancel:()=>s(De,null)})};B($,e=>{p(De)&&e(tt)}),H(()=>M(Ze,`accept`,Ae)),u(`change`,Ze,Ue),a(l,Ge),e()}A([`click`,`input`,`change`]);export{Rn as component};
|