@web-noise/core 0.0.10-fix → 0.0.10-fix2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -1,10 +1,10 @@
1
- var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("react/jsx-runtime"),$9m4Pa$emotionreact=require("@emotion/react"),$9m4Pa$emotionstyled=require("@emotion/styled"),$9m4Pa$nanoid=require("nanoid"),$9m4Pa$react=require("react"),$9m4Pa$reacticonsfa6=require("react-icons/fa6"),$9m4Pa$reacticonsmd=require("react-icons/md");require("reactflow/dist/style.css");var $9m4Pa$webnoisefetch=require("@web-noise/fetch"),$9m4Pa$reactflow=require("reactflow"),$9m4Pa$zustand=require("zustand"),$9m4Pa$webnoisepatch=require("@web-noise/patch"),$9m4Pa$jsondiffpatch=require("jsondiffpatch"),$9m4Pa$emotioncss=require("@emotion/css"),$9m4Pa$reactcontexify=require("react-contexify");require("react-contexify/dist/ReactContexify.css");var $9m4Pa$jsfiledownload=require("js-file-download"),$9m4Pa$hotkeysjs=require("hotkeys-js"),$9m4Pa$reactdom=require("react-dom"),$9m4Pa$reactfiledrop=require("react-file-drop"),$9m4Pa$reacticonsfa=require("react-icons/fa"),$9m4Pa$reresizable=require("re-resizable"),$9m4Pa$reactgridlayout=require("react-grid-layout");require("react-grid-layout/css/styles.css");var $9m4Pa$reacticonsai=require("react-icons/ai"),$9m4Pa$reacticonsrx=require("react-icons/rx"),$9m4Pa$reactmoderndrawer=require("react-modern-drawer");require("react-modern-drawer/dist/index.css");var $9m4Pa$marked=require("marked");function $parcel$export(e,a,t,r){Object.defineProperty(e,a,{get:t,set:r,enumerable:!0,configurable:!0})}function $parcel$interopDefault(e){return e&&e.__esModule?e.default:e}$parcel$export(module.exports,"Editor",()=>$425e92a44a72d3d3$export$2e2bcd8739ae039),$parcel$export(module.exports,"EDITOR_DEFAULTS",()=>$425e92a44a72d3d3$export$d31000d36961d6c2),$parcel$export(module.exports,"Wire",()=>$ebf0a587e54cf53c$export$2e2bcd8739ae039),$parcel$export(module.exports,"WNNode",()=>$4c34e1ef7616f43c$export$361064385d50ec44),$parcel$export(module.exports,"TitleBar",()=>$4c34e1ef7616f43c$export$7e0b3af1e60a3273),$parcel$export(module.exports,"PortsPanel",()=>$4c34e1ef7616f43c$export$bfd3bd1fa283e3c6),$parcel$export(module.exports,"OutputPorts",()=>$4c34e1ef7616f43c$export$af4f9b41fc32ed9e),$parcel$export(module.exports,"OutputHandle",()=>$4c34e1ef7616f43c$export$496e5e1ee1696f64),$parcel$export(module.exports,"InputPorts",()=>$4c34e1ef7616f43c$export$f1afba0ff9ea1277),$parcel$export(module.exports,"InputHandle",()=>$4c34e1ef7616f43c$export$9ea0feffc20ee81),$parcel$export(module.exports,"Port",()=>$4c34e1ef7616f43c$export$a2d375858cc72119),$parcel$export(module.exports,"Modal",()=>$714f7694528a0830$export$2e2bcd8739ae039),$parcel$export(module.exports,"EditableLabel",()=>$aa49bccfd9ae8480$export$2e2bcd8739ae039),$parcel$export(module.exports,"useAudioNode",()=>$e0773c90edc6ed5f$export$2e2bcd8739ae039),$parcel$export(module.exports,"useNode",()=>$cdd180257ba7e9a4$export$2e2bcd8739ae039),$parcel$export(module.exports,"useTheme",()=>$9bcd1fc54f3a4589$export$2e2bcd8739ae039),$parcel$export(module.exports,"useStore",()=>$19f35bee633995ac$export$2e2bcd8739ae039),$parcel$export(module.exports,"theme",()=>$085a27af3d5bf051$export$2e2bcd8739ae039),$parcel$export(module.exports,"isAudio",()=>$c1d6493745b51d4a$export$31c2336f657dc59f),$parcel$export(module.exports,"isPatch",()=>$c1d6493745b51d4a$export$e698b79c63b74136),$parcel$export(module.exports,"PortType",()=>$9cc889581bce45fb$export$b0b7b95ee465c83c);let $9cc889581bce45fb$export$956b3cf15d7c363="web-noise-drag-handle",$9cc889581bce45fb$export$21d634b1d5d9bee3=`.${$9cc889581bce45fb$export$956b3cf15d7c363}`,$9cc889581bce45fb$export$9f05d3e6ade4c09e={rowHeight:10,cols:4};!function(e){e.Gate="gate",e.Number="number",e.Audio="audio",e.Any="any"}($9cc889581bce45fb$export$b0b7b95ee465c83c||($9cc889581bce45fb$export$b0b7b95ee465c83c={}));let $012c17c7734a513e$var$generateNodeId=e=>{let a=+new Date+Math.floor(1e3*Math.random());return e?.type?`${e.type}-${a}`:a.toString()};var $012c17c7734a513e$export$2e2bcd8739ae039=$012c17c7734a513e$var$generateNodeId;let $d2a72ed9ff895ef3$var$nodesStateCreator=(e,a)=>({nodes:[],edges:[],onNodesChange:a=>{e(({nodes:e})=>({nodes:(0,$9m4Pa$reactflow.applyNodeChanges)(a,e).map(e=>({dragHandle:$9cc889581bce45fb$export$21d634b1d5d9bee3,...e}))}))},onEdgesChange:a=>{e(({edges:e})=>({edges:(0,$9m4Pa$reactflow.applyEdgeChanges)(a,e)}))},onConnect:a=>{e(({edges:e})=>({edges:(0,$9m4Pa$reactflow.addEdge)(a,e)}))},addNode:a=>{e(({nodes:e})=>({nodes:e.concat(a)}))},setNodes:a=>{e({nodes:a})},setEdges:a=>{e({edges:a})},setNodesAndEdges:({nodes:a,edges:t})=>{e({nodes:a,edges:t})},getNodesAndEdges:()=>{let{nodes:e,edges:t}=a();return{nodes:e,edges:t}},clearElements:()=>{e({nodes:[],edges:[]})},getNode:e=>{let{nodes:t}=a();return t.find(a=>a.id===e)||null},updateNodeData:(a,t)=>{e(({nodes:e})=>({nodes:e.map(e=>e.id===a?{...e,data:{...e.data,...t}}:e)}))},nodeTypes:{},setNodeTypes:a=>e({nodeTypes:a})});var $d2a72ed9ff895ef3$export$2e2bcd8739ae039=$d2a72ed9ff895ef3$var$nodesStateCreator;let $4b4f9714e387283c$var$cloneObject=e=>JSON.parse(JSON.stringify(e)),$4b4f9714e387283c$export$b1b92d12d1c2ae0e=(e,a)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:t=>{let{history:r}=a(),{maxHistoryLength:o,skipCollect:$}=r;if($)return void e({history:{...r,skipCollect:!1}});e(({history:e})=>{if(!e)return{};let{buffer:a,pointer:r}=e,$=a.slice(Math.max(r-o+1,0),r);return{history:{...e,buffer:[...$,t],pointer:Math.min(r+1,o)}}})},back:()=>{let{nodes:t,edges:r,controlPanel:o,history:$}=a(),{buffer:c,pointer:n}=$,i=c[n-1];if(!i)return;let d=$9m4Pa$jsondiffpatch.reverse(i);if(!d)return;let l=$4b4f9714e387283c$var$cloneObject({nodes:t,edges:r,controlPanel:o});e({...$9m4Pa$jsondiffpatch.patch(l,d),history:{...$,pointer:n-1,skipCollect:!0}})},forward:()=>{let{nodes:t,edges:r,controlPanel:o,history:$}=a(),{buffer:c,pointer:n}=$,i=c[n];if(!i)return;let d=$4b4f9714e387283c$var$cloneObject({nodes:t,edges:r,controlPanel:o});e({...$9m4Pa$jsondiffpatch.patch(d,i),history:{...$,pointer:n+1,skipCollect:!0}})},clear:()=>{let{history:t}=a();e({history:{...t,buffer:[],pointer:0,skipCollect:!0}})}}}),$4b4f9714e387283c$var$COLLECT_CHANGES_DEBOUNCE_TIME=500,$4b4f9714e387283c$export$4e64751394766316=(e,a)=>{let t,r=$9m4Pa$jsondiffpatch.create({propertyFilter:(e,a)=>!!(a.parent?.parent?.childName==="controlPanel"||["data","position","controlPanel"].includes(a.parent?.childName))||["controlPanel","size","edges","nodes","data","label","config","values","position","x","y"].includes(e)}),o=a();return(e,$)=>{e.currentFileIndex!==$.currentFileIndex&&a().history.clear(),clearTimeout(t),o||(o=$),t=setTimeout(()=>{let t=r.diff(o,e);o=null,t&&a().history.push(t)},500)}},$4b4f9714e387283c$var$history=e=>(a,t,r)=>{let o=$4b4f9714e387283c$export$4e64751394766316(a,t);return r.subscribe(o),e((...e)=>a(...e),t,r)};var $4b4f9714e387283c$export$2e2bcd8739ae039=$4b4f9714e387283c$var$history;let $2f2f376881d01fdf$export$e364ea0c1dfb25e5=(e,a)=>{let t=new Set(e.map(e=>e.id)),r=new Set(a.map(e=>e.id));return{added:a.filter(e=>!t.has(e.id)),removed:e.filter(e=>!r.has(e.id))}},$dd35487c97fbdded$export$62647b40ff8aed70=(e,a)=>({patch:(0,$9m4Pa$webnoisepatch.createPatch)(),nodesState:{}}),$dd35487c97fbdded$var$audioPatch=e=>(a,t,r)=>{r.subscribe(async(e,a)=>{});let o=new Set,$={...t(),nodes:[],edges:[]};return e(async(...e)=>{let r=t(),[c]=e,n={...$,..."function"==typeof c?c({...$}):c},i=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.nodes,n.nodes),d=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.edges,n.edges);$=n;let l=i.added,s=d.added,f=d.removed,p=i.removed,{patch:m}=r;if(l.length){let e=m.registerAudioNodes(l);o.add(e),await e,o.delete(e)}if(!(s.length||f.length||p.length))return void a(...e);if(o.size)try{await Promise.all([...o.values()])}catch(e){console.log("some error",e)}s.length&&m.registerAudioConnections(s),f.length&&m.unregisterAudioConnections(f),p.length&&m.unregisterAudioNodes(p),a(...e)},t,r)};var $dd35487c97fbdded$export$2e2bcd8739ae039=$dd35487c97fbdded$var$audioPatch;let $c1d6493745b51d4a$export$e698b79c63b74136=e=>!("type"in e)||"patch"===e.type,$c1d6493745b51d4a$export$31c2336f657dc59f=e=>"audio"===e.type,$2c1440cf65b5bcde$var$projectStateCreator=(e,a)=>({project:{files:[]},setProject(a){e({project:a,currentFileIndex:0})},getProject:()=>a().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:t,updateFileContent:r,project:o}=a(),$=o.files[t];$c1d6493745b51d4a$export$31c2336f657dc59f($)||r(t,{...$,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:t,project:r}=a(),o=r.files[e];if("audio"===o.type)return void console.log("audio file. skipping");t(o.file)},currentFileIndex:0,setCurrentFileIndex(t){let{currentFileIndex:r}=a();t!==r&&e({currentFileIndex:t})},updateFileContent(t,r){let{project:o}=a();e({project:{...o,files:o.files.map((e,a)=>a===t?{...e,...r}:e)}})},updateFileName(t,r){let{project:o}=a();e({project:{...o,files:o.files.map((e,a)=>a===t?{...e,name:r}:e)}})},addFile(t){let{project:r}=a(),o=[...r.files,t];e({project:{...r,files:o}})},deleteFile:t=>{let{project:r,currentFileIndex:o}=a();e({project:{...r,files:r.files.filter((e,a)=>t!==a)}}),t<=o&&e({currentFileIndex:o-1})}});var $2c1440cf65b5bcde$export$2e2bcd8739ae039=$2c1440cf65b5bcde$var$projectStateCreator;let $19f35bee633995ac$export$34c5bc865219488e=(...e)=>{let[a,t]=e;return{...$d2a72ed9ff895ef3$export$2e2bcd8739ae039(...e),...$4b4f9714e387283c$export$b1b92d12d1c2ae0e(...e),...$dd35487c97fbdded$export$62647b40ff8aed70(...e),...$2c1440cf65b5bcde$export$2e2bcd8739ae039(...e),setGraph:async({nodes:e,edges:a})=>{let{patch:r,createNodes:o,createEdges:$,setNodesAndEdges:c,nodes:n,edges:i}=t();c({nodes:[],edges:[]}),await o(e),$(a)},clearGraph:()=>{let{setGraph:e}=t();e({nodes:[],edges:[]})},createNodes:async e=>{let{createNode:a}=t();await Promise.all(e.map(e=>a(e)))},createNode:e=>{let{addNode:a,nodesConfiguration:r}=t(),{type:o,id:$,data:c}=e;if(void 0===o)throw Error(`node type is not defined for node: ${$}`);a({...e,data:{...c,config:{...r[o]?.defaultConfig,...c?.config}}})},removeNode:e=>t().removeNodes([e]),removeNodes:e=>{let{edges:r,nodes:o,onNodesDelete:$,removeEdges:c,removeNodesFromControlPanel:n}=t(),i=e.map(({id:e})=>e),d=[...e,...o.filter(({parentNode:e})=>e&&i.includes(e))];n(d),c((0,$9m4Pa$reactflow.getConnectedEdges)(d,r)),$(d);let l=d.map(({id:e})=>e);a({nodes:o.filter(({id:e})=>!l.includes(e))})},removeEdges:e=>{let{edges:r,onEdgesDelete:o}=t(),$=e.map(({id:e})=>e);o(e),a({edges:r.filter(({id:e})=>!$.includes(e))})},createEdges:e=>{let{patch:a,edges:r,setEdges:o}=t();o(e)},onConnect:async e=>{let{edges:a,createEdges:r}=t();r((0,$9m4Pa$reactflow.addEdge)(e,a))},onEdgesDelete:e=>{let{patch:a}=t()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:a,patch:r}=t();a(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:r}=t();a({plugins:e});let o=e.reduce((e,a)=>({...e,...a.components.reduce((e,a)=>({...e,[a.type]:a}),{})}),{}),$=Object.keys(o).reduce((e,a)=>({...e,[a]:o[a].node}),{}),c=Object.keys(o).reduce((e,a)=>({...e,[a]:o[a].audioNode}),{});(0,$9m4Pa$webnoisepatch.setAudioNodeTypes)(c),r($),a(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...o}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{a(({config:a})=>({config:{...a,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:a,viewport:r}=t();return{...e(),controlPanel:a,viewport:r}},setEditorState:async({nodes:e,edges:r,controlPanel:o,viewport:$})=>{let{setGraph:c}=t();await c({nodes:e,edges:r}),await new Promise(e=>setTimeout(e,1e3)),a({controlPanel:o,viewport:$})},isHelpShown:!1,toggleHelp:()=>{let{isHelpShown:e}=t();a({isHelpShown:!e})},copyBuffer:{nodes:[],edges:[]},copy:e=>{a({copyBuffer:e})},copySelectedItems:()=>{let{nodes:e,edges:a,copy:r}=t(),o=e.filter(({selected:e})=>e),$=a.filter(({selected:e})=>e);o.length&&r({nodes:o,edges:$})},pasteBuffer:(e=0,r=0)=>{let{copyBuffer:o,createNodes:$,setEdges:c,nodes:n,edges:i}=t(),{nodes:d,edges:l}=o;if(!d.length)return;a({nodes:n.map(e=>({...e,selected:!1}))});let s=d.reduce((e,a)=>!e||a.position.x<e.position.x&&a.position.y<e.position.y?a:e),f=s.position.x-e,p=s.position.y-r,{nodes:m,mapping:u}=d.reduce((e,a)=>{let t=$012c17c7734a513e$export$2e2bcd8739ae039(a);return{nodes:[...e.nodes,{...a,id:t,position:{x:a.position.x-f,y:a.position.y-p},selected:!0}],mapping:{...e.mapping,[a.id]:t}}},{nodes:[],mapping:{}});$(m);let x=l.map(e=>{let a=u[e.source]||e.source,t=u[e.target]||e.target;return{...e,id:e.id.replace(e.source,a).replace(e.target,t),source:a,target:t,selected:!0}});c([...i.map(e=>({...e,selected:!1})),...x])},getControlPanelNode:e=>{let{nodesConfiguration:a}=t(),{type:r}=e;if(!r)return null;let o=a[r]?.controlPanelNode;return o||(console.error(`could not find node for type ${r}`),null)},controlPanel:{show:!0,nodes:[],size:{width:200,height:100}},showControlPanel:()=>a(({controlPanel:e})=>({controlPanel:{...e,show:!0}})),hideControlPanel:()=>a(({controlPanel:e})=>({controlPanel:{...e,show:!1}})),addNodeToControlPanel:e=>{let{nodesConfiguration:r}=t(),o=e.type?r[e.type]?.defaultConfig:{},{height:$}=o?.size||{},c={id:e.id,...$?{height:$/$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight}:{}};a(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,c]}}))},removeNodeFromControlPanel:e=>t().removeNodesFromControlPanel([e]),removeNodesFromControlPanel:e=>{let t=e.map(({id:e})=>e);a(({controlPanel:e})=>{let a=e.nodes.filter(({id:e})=>!t.includes(e));return{controlPanel:{...e,nodes:a}}})},setControlPanelNodes:e=>{a(({controlPanel:a})=>({controlPanel:{...a,nodes:e}}))},setControlPanelSize:e=>{a(({controlPanel:a})=>({controlPanel:{...a,size:e}}))},viewport:{x:0,y:0,zoom:1},setViewport:e=>a({viewport:e})}},$19f35bee633995ac$var$useStore=(0,$9m4Pa$zustand.create)($dd35487c97fbdded$export$2e2bcd8739ae039($4b4f9714e387283c$export$2e2bcd8739ae039($19f35bee633995ac$export$34c5bc865219488e)));var $19f35bee633995ac$export$2e2bcd8739ae039=$19f35bee633995ac$var$useStore;let $085a27af3d5bf051$var$LEVA_COLOR_ACCENT2_BLUE="#007bff",$085a27af3d5bf051$var$COLOR_GREEN_PRIMARY="#14df42",$085a27af3d5bf051$var$COLOR_WHITE_PRIMARY="#ffffff",$085a27af3d5bf051$var$colors={elevation1:"#292d39",elevation2:"#181c20",elevation3:"#373c4b",accent1:"#0066dc",accent2:"#007bff",accent3:"#3c93ff",highlight1:"#535760",highlight2:"#8c92a4",highlight3:"#fefefe",vivid1:"#14df42",whitePrimary:"#ffffff",error:"#db5353"},$085a27af3d5bf051$var$zIndex={modal:9998,controlPanel:9999,resumeContextLayout:10003},$085a27af3d5bf051$var$theme={colors:$085a27af3d5bf051$var$colors,zIndex:$085a27af3d5bf051$var$zIndex};var $085a27af3d5bf051$export$2e2bcd8739ae039=$085a27af3d5bf051$var$theme;(0,$9m4Pa$emotioncss.injectGlobal)`
1
+ var $07dabc4e7d66bab5$export$b0b7b95ee465c83c,$fmhGi$reactjsxruntime=require("react/jsx-runtime"),$fmhGi$emotionreact=require("@emotion/react"),$fmhGi$emotionstyled=require("@emotion/styled"),$fmhGi$nanoid=require("nanoid"),$fmhGi$react=require("react"),$fmhGi$reacticonsfa6=require("react-icons/fa6"),$fmhGi$reacticonsmd=require("react-icons/md");require("reactflow/dist/style.css");var $fmhGi$webnoisefetch=require("@web-noise/fetch"),$fmhGi$reactflow=require("reactflow"),$fmhGi$zustand=require("zustand"),$fmhGi$webnoisepatch=require("@web-noise/patch"),$fmhGi$jsondiffpatch=require("jsondiffpatch"),$fmhGi$emotioncss=require("@emotion/css"),$fmhGi$reactcontexify=require("react-contexify");require("react-contexify/dist/ReactContexify.css");var $fmhGi$jsfiledownload=require("js-file-download"),$fmhGi$hotkeysjs=require("hotkeys-js"),$fmhGi$reactdom=require("react-dom"),$fmhGi$reactfiledrop=require("react-file-drop"),$fmhGi$reacticonsfa=require("react-icons/fa"),$fmhGi$reresizable=require("re-resizable"),$fmhGi$reactgridlayout=require("react-grid-layout");require("react-grid-layout/css/styles.css");var $fmhGi$reacticonsai=require("react-icons/ai"),$fmhGi$reacticonsrx=require("react-icons/rx"),$fmhGi$reactmoderndrawer=require("react-modern-drawer");require("react-modern-drawer/dist/index.css");var $fmhGi$marked=require("marked");function $parcel$export(e,t,r,a){Object.defineProperty(e,t,{get:r,set:a,enumerable:!0,configurable:!0})}function $parcel$interopDefault(e){return e&&e.__esModule?e.default:e}$parcel$export(module.exports,"Editor",()=>$985a60451d015e23$export$2e2bcd8739ae039),$parcel$export(module.exports,"EDITOR_DEFAULTS",()=>$985a60451d015e23$export$d31000d36961d6c2),$parcel$export(module.exports,"Wire",()=>$89d7409bb8708118$export$2e2bcd8739ae039),$parcel$export(module.exports,"WNNode",()=>$964548e125933395$export$361064385d50ec44),$parcel$export(module.exports,"TitleBar",()=>$964548e125933395$export$7e0b3af1e60a3273),$parcel$export(module.exports,"PortsPanel",()=>$964548e125933395$export$bfd3bd1fa283e3c6),$parcel$export(module.exports,"OutputPorts",()=>$964548e125933395$export$af4f9b41fc32ed9e),$parcel$export(module.exports,"OutputHandle",()=>$964548e125933395$export$496e5e1ee1696f64),$parcel$export(module.exports,"InputPorts",()=>$964548e125933395$export$f1afba0ff9ea1277),$parcel$export(module.exports,"InputHandle",()=>$964548e125933395$export$9ea0feffc20ee81),$parcel$export(module.exports,"Port",()=>$964548e125933395$export$a2d375858cc72119),$parcel$export(module.exports,"Modal",()=>$aecb885983569300$export$2e2bcd8739ae039),$parcel$export(module.exports,"EditableLabel",()=>$35ac08ca6453b68a$export$2e2bcd8739ae039),$parcel$export(module.exports,"useAudioNode",()=>$4772dd2712cec46e$export$2e2bcd8739ae039),$parcel$export(module.exports,"useNode",()=>$9f09b57f57ee1ef4$export$2e2bcd8739ae039),$parcel$export(module.exports,"useTheme",()=>$9a3ae56a32a010df$export$2e2bcd8739ae039),$parcel$export(module.exports,"useStore",()=>$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039),$parcel$export(module.exports,"theme",()=>$92db495027db752c$export$2e2bcd8739ae039),$parcel$export(module.exports,"isAudio",()=>$4f5dab380e6c5337$export$31c2336f657dc59f),$parcel$export(module.exports,"isPatch",()=>$4f5dab380e6c5337$export$e698b79c63b74136),$parcel$export(module.exports,"PortType",()=>$07dabc4e7d66bab5$export$b0b7b95ee465c83c);let $07dabc4e7d66bab5$export$956b3cf15d7c363="web-noise-drag-handle",$07dabc4e7d66bab5$export$21d634b1d5d9bee3=`.${$07dabc4e7d66bab5$export$956b3cf15d7c363}`,$07dabc4e7d66bab5$export$9f05d3e6ade4c09e={rowHeight:10,cols:4};!function(e){e.Gate="gate",e.Number="number",e.Audio="audio",e.Any="any"}($07dabc4e7d66bab5$export$b0b7b95ee465c83c||($07dabc4e7d66bab5$export$b0b7b95ee465c83c={}));let $507ef2c5e9b21f79$var$generateNodeId=e=>{let t=+new Date+Math.floor(1e3*Math.random());return e?.type?`${e.type}-${t}`:t.toString()};var $507ef2c5e9b21f79$export$2e2bcd8739ae039=$507ef2c5e9b21f79$var$generateNodeId;let $5d3bd1dd89353e9d$var$nodesStateCreator=(e,t)=>({nodes:[],edges:[],onNodesChange:t=>{e(({nodes:e})=>({nodes:(0,$fmhGi$reactflow.applyNodeChanges)(t,e).map(e=>({dragHandle:$07dabc4e7d66bab5$export$21d634b1d5d9bee3,...e}))}))},onEdgesChange:t=>{e(({edges:e})=>({edges:(0,$fmhGi$reactflow.applyEdgeChanges)(t,e)}))},onConnect:t=>{e(({edges:e})=>({edges:(0,$fmhGi$reactflow.addEdge)(t,e)}))},addNode:t=>{e(({nodes:e})=>({nodes:e.concat(t)}))},setNodes:t=>{e({nodes:t})},setEdges:t=>{e({edges:t})},setNodesAndEdges:({nodes:t,edges:r})=>{e({nodes:t,edges:r})},getNodesAndEdges:()=>{let{nodes:e,edges:r}=t();return{nodes:e,edges:r}},clearElements:()=>{e({nodes:[],edges:[]})},getNode:e=>{let{nodes:r}=t();return r.find(t=>t.id===e)||null},updateNodeData:(t,r)=>{e(({nodes:e})=>({nodes:e.map(e=>e.id===t?{...e,data:{...e.data,...r}}:e)}))},nodeTypes:{},setNodeTypes:t=>e({nodeTypes:t})});var $5d3bd1dd89353e9d$export$2e2bcd8739ae039=$5d3bd1dd89353e9d$var$nodesStateCreator;let $6ed350e010f7313a$var$cloneObject=e=>JSON.parse(JSON.stringify(e)),$6ed350e010f7313a$export$b1b92d12d1c2ae0e=(e,t)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:r=>{let{history:a}=t(),{maxHistoryLength:o,skipCollect:$}=a;if($)return void e({history:{...a,skipCollect:!1}});e(({history:e})=>{if(!e)return{};let{buffer:t,pointer:a}=e,$=t.slice(Math.max(a-o+1,0),a);return{history:{...e,buffer:[...$,r],pointer:Math.min(a+1,o)}}})},back:()=>{let{nodes:r,edges:a,controlPanel:o,history:$}=t(),{buffer:i,pointer:d}=$,c=i[d-1];if(!c)return;let n=$fmhGi$jsondiffpatch.reverse(c);if(!n)return;let l=$6ed350e010f7313a$var$cloneObject({nodes:r,edges:a,controlPanel:o});e({...$fmhGi$jsondiffpatch.patch(l,n),history:{...$,pointer:d-1,skipCollect:!0}})},forward:()=>{let{nodes:r,edges:a,controlPanel:o,history:$}=t(),{buffer:i,pointer:d}=$,c=i[d];if(!c)return;let n=$6ed350e010f7313a$var$cloneObject({nodes:r,edges:a,controlPanel:o});e({...$fmhGi$jsondiffpatch.patch(n,c),history:{...$,pointer:d+1,skipCollect:!0}})},clear:()=>{let{history:r}=t();e({history:{...r,buffer:[],pointer:0,skipCollect:!0}})}}}),$6ed350e010f7313a$var$COLLECT_CHANGES_DEBOUNCE_TIME=500,$6ed350e010f7313a$export$4e64751394766316=(e,t)=>{let r,a=$fmhGi$jsondiffpatch.create({propertyFilter:(e,t)=>!!(t.parent?.parent?.childName==="controlPanel"||["data","position","controlPanel"].includes(t.parent?.childName))||["controlPanel","size","edges","nodes","data","label","config","values","position","x","y"].includes(e)}),o=t();return(e,$)=>{e.currentFileIndex!==$.currentFileIndex&&t().history.clear(),clearTimeout(r),o||(o=$),r=setTimeout(()=>{let r=a.diff(o,e);o=null,r&&t().history.push(r)},500)}},$6ed350e010f7313a$var$history=e=>(t,r,a)=>{let o=$6ed350e010f7313a$export$4e64751394766316(t,r);return a.subscribe(o),e((...e)=>t(...e),r,a)};var $6ed350e010f7313a$export$2e2bcd8739ae039=$6ed350e010f7313a$var$history;let $5f9c6d90a6525940$export$e364ea0c1dfb25e5=(e,t)=>{let r=new Set(e.map(e=>e.id)),a=new Set(t.map(e=>e.id));return{added:t.filter(e=>!r.has(e.id)),removed:e.filter(e=>!a.has(e.id))}},$95fc1576dd6d8cc3$export$62647b40ff8aed70=(e,t)=>({patch:(0,$fmhGi$webnoisepatch.createPatch)(),nodesState:{}}),$95fc1576dd6d8cc3$var$audioPatch=e=>(t,r,a)=>{a.subscribe(async(e,t)=>{});let o=new Set,$={...r(),nodes:[],edges:[]};return e(async(...e)=>{let a=r(),[i]=e,d={...$,..."function"==typeof i?i({...$}):i},c=$5f9c6d90a6525940$export$e364ea0c1dfb25e5($.nodes,d.nodes),n=$5f9c6d90a6525940$export$e364ea0c1dfb25e5($.edges,d.edges);$=d;let l=c.added,s=n.added,f=n.removed,p=c.removed,{patch:h}=a;if(l.length){let e=h.registerAudioNodes(l);o.add(e),await e,o.delete(e)}if(!(s.length||f.length||p.length))return void t(...e);if(o.size)try{await Promise.all([...o.values()])}catch(e){console.log("some error",e)}s.length&&h.registerAudioConnections(s),f.length&&h.unregisterAudioConnections(f),p.length&&h.unregisterAudioNodes(p),t(...e)},r,a)};var $95fc1576dd6d8cc3$export$2e2bcd8739ae039=$95fc1576dd6d8cc3$var$audioPatch;let $4f5dab380e6c5337$export$e698b79c63b74136=e=>!("type"in e)||"patch"===e.type,$4f5dab380e6c5337$export$31c2336f657dc59f=e=>"audio"===e.type,$e240ebb0a7a2ba54$var$projectStateCreator=(e,t)=>({project:{files:[]},setProject(t){e({project:t,currentFileIndex:0})},getProject:()=>t().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:r,updateFileContent:a,project:o}=t(),$=o.files[r];$4f5dab380e6c5337$export$31c2336f657dc59f($)||a(r,{...$,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:r,project:a}=t(),o=a.files[e];if("audio"===o.type)return void console.log("audio file. skipping");r(o.file)},currentFileIndex:0,setCurrentFileIndex(r){let{currentFileIndex:a}=t();r!==a&&e({currentFileIndex:r})},updateFileContent(r,a){let{project:o}=t();e({project:{...o,files:o.files.map((e,t)=>t===r?{...e,...a}:e)}})},updateFileName(r,a){let{project:o}=t();e({project:{...o,files:o.files.map((e,t)=>t===r?{...e,name:a}:e)}})},addFile(r){let{project:a}=t(),o=[...a.files,r];e({project:{...a,files:o}})},deleteFile:r=>{let{project:a,currentFileIndex:o}=t();e({project:{...a,files:a.files.filter((e,t)=>r!==t)}}),r<=o&&e({currentFileIndex:o-1})}});var $e240ebb0a7a2ba54$export$2e2bcd8739ae039=$e240ebb0a7a2ba54$var$projectStateCreator;let $7d1a5bdfd7b5aa4a$export$34c5bc865219488e=(...e)=>{let[t,r]=e;return{...$5d3bd1dd89353e9d$export$2e2bcd8739ae039(...e),...$6ed350e010f7313a$export$b1b92d12d1c2ae0e(...e),...$95fc1576dd6d8cc3$export$62647b40ff8aed70(...e),...$e240ebb0a7a2ba54$export$2e2bcd8739ae039(...e),setGraph:async({nodes:e,edges:t})=>{let{patch:a,createNodes:o,createEdges:$,setNodesAndEdges:i,nodes:d,edges:c}=r();i({nodes:[],edges:[]}),await o(e),$(t)},clearGraph:()=>{let{setGraph:e}=r();e({nodes:[],edges:[]})},createNodes:async e=>{let{createNode:t}=r();await Promise.all(e.map(e=>t(e)))},createNode:e=>{let{addNode:t,nodesConfiguration:a}=r(),{type:o,id:$,data:i}=e;if(void 0===o)throw Error(`node type is not defined for node: ${$}`);t({...e,data:{...i,config:{...a[o]?.defaultConfig,...i?.config}}})},removeNode:e=>r().removeNodes([e]),removeNodes:e=>{let{edges:a,nodes:o,onNodesDelete:$,removeEdges:i,removeNodesFromControlPanel:d}=r(),c=e.map(({id:e})=>e),n=[...e,...o.filter(({parentNode:e})=>e&&c.includes(e))];d(n),i((0,$fmhGi$reactflow.getConnectedEdges)(n,a)),$(n);let l=n.map(({id:e})=>e);t({nodes:o.filter(({id:e})=>!l.includes(e))})},removeEdges:e=>{let{edges:a,onEdgesDelete:o}=r(),$=e.map(({id:e})=>e);o(e),t({edges:a.filter(({id:e})=>!$.includes(e))})},createEdges:e=>{let{patch:t,edges:a,setEdges:o}=r();o(e)},onConnect:async e=>{let{edges:t,createEdges:a}=r();a((0,$fmhGi$reactflow.addEdge)(e,t))},onEdgesDelete:e=>{let{patch:t}=r()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:t,patch:a}=r();t(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:a}=r();t({plugins:e});let o=e.reduce((e,t)=>({...e,...t.components.reduce((e,t)=>({...e,[t.type]:t}),{})}),{}),$=Object.keys(o).reduce((e,t)=>({...e,[t]:o[t].node}),{}),i=Object.keys(o).reduce((e,t)=>({...e,[t]:o[t].audioNode}),{});(0,$fmhGi$webnoisepatch.setAudioNodeTypes)(i),a($),t(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...o}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{t(({config:t})=>({config:{...t,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:t,viewport:a}=r();return{...e(),controlPanel:t,viewport:a}},setEditorState:async({nodes:e,edges:a,controlPanel:o,viewport:$})=>{let{setGraph:i}=r();await i({nodes:e,edges:a}),await new Promise(e=>setTimeout(e,1e3)),t({controlPanel:o,viewport:$})},isHelpShown:!1,toggleHelp:()=>{let{isHelpShown:e}=r();t({isHelpShown:!e})},copyBuffer:{nodes:[],edges:[]},copy:e=>{t({copyBuffer:e})},copySelectedItems:()=>{let{nodes:e,edges:t,copy:a}=r(),o=e.filter(({selected:e})=>e),$=t.filter(({selected:e})=>e);o.length&&a({nodes:o,edges:$})},pasteBuffer:(e=0,a=0)=>{let{copyBuffer:o,createNodes:$,setEdges:i,nodes:d,edges:c}=r(),{nodes:n,edges:l}=o;if(!n.length)return;t({nodes:d.map(e=>({...e,selected:!1}))});let s=n.reduce((e,t)=>!e||t.position.x<e.position.x&&t.position.y<e.position.y?t:e),f=s.position.x-e,p=s.position.y-a,{nodes:h,mapping:m}=n.reduce((e,t)=>{let r=$507ef2c5e9b21f79$export$2e2bcd8739ae039(t);return{nodes:[...e.nodes,{...t,id:r,position:{x:t.position.x-f,y:t.position.y-p},selected:!0}],mapping:{...e.mapping,[t.id]:r}}},{nodes:[],mapping:{}});$(h);let b=l.map(e=>{let t=m[e.source]||e.source,r=m[e.target]||e.target;return{...e,id:e.id.replace(e.source,t).replace(e.target,r),source:t,target:r,selected:!0}});i([...c.map(e=>({...e,selected:!1})),...b])},getControlPanelNode:e=>{let{nodesConfiguration:t}=r(),{type:a}=e;if(!a)return null;let o=t[a]?.controlPanelNode;return o||(console.error(`could not find node for type ${a}`),null)},controlPanel:{show:!0,nodes:[],size:{width:200,height:100}},showControlPanel:()=>t(({controlPanel:e})=>({controlPanel:{...e,show:!0}})),hideControlPanel:()=>t(({controlPanel:e})=>({controlPanel:{...e,show:!1}})),addNodeToControlPanel:e=>{let{nodesConfiguration:a}=r(),o=e.type?a[e.type]?.defaultConfig:{},{height:$}=o?.size||{},i={id:e.id,...$?{height:$/$07dabc4e7d66bab5$export$9f05d3e6ade4c09e.rowHeight}:{}};t(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,i]}}))},removeNodeFromControlPanel:e=>r().removeNodesFromControlPanel([e]),removeNodesFromControlPanel:e=>{let r=e.map(({id:e})=>e);t(({controlPanel:e})=>{let t=e.nodes.filter(({id:e})=>!r.includes(e));return{controlPanel:{...e,nodes:t}}})},setControlPanelNodes:e=>{t(({controlPanel:t})=>({controlPanel:{...t,nodes:e}}))},setControlPanelSize:e=>{t(({controlPanel:t})=>({controlPanel:{...t,size:e}}))},viewport:{x:0,y:0,zoom:1},setViewport:e=>t({viewport:e})}},$7d1a5bdfd7b5aa4a$var$useStore=(0,$fmhGi$zustand.create)($95fc1576dd6d8cc3$export$2e2bcd8739ae039($6ed350e010f7313a$export$2e2bcd8739ae039($7d1a5bdfd7b5aa4a$export$34c5bc865219488e)));var $7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039=$7d1a5bdfd7b5aa4a$var$useStore;let $92db495027db752c$var$LEVA_COLOR_ACCENT2_BLUE="#007bff",$92db495027db752c$var$COLOR_GREEN_PRIMARY="#14df42",$92db495027db752c$var$COLOR_WHITE_PRIMARY="#ffffff",$92db495027db752c$var$colors={elevation1:"#292d39",elevation2:"#181c20",elevation3:"#373c4b",accent1:"#0066dc",accent2:"#007bff",accent3:"#3c93ff",highlight1:"#535760",highlight2:"#8c92a4",highlight3:"#fefefe",vivid1:"#14df42",whitePrimary:"#ffffff",error:"#db5353"},$92db495027db752c$var$zIndex={modal:9998,controlPanel:9999,resumeContextLayout:10003},$92db495027db752c$var$theme={colors:$92db495027db752c$var$colors,zIndex:$92db495027db752c$var$zIndex};var $92db495027db752c$export$2e2bcd8739ae039=$92db495027db752c$var$theme;(0,$fmhGi$emotioncss.injectGlobal)`
2
2
  .react-flow {
3
3
  .react-flow__pane {
4
4
  /* background: rgb(106 106 106); */
5
5
  /* background: "white"; */
6
6
  // background: #292d39;
7
- background: ${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.elevation3};
7
+ background: ${$92db495027db752c$export$2e2bcd8739ae039.colors.elevation3};
8
8
  }
9
9
 
10
10
  .react-flow__background {
@@ -25,28 +25,28 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
25
25
  }
26
26
 
27
27
  .react-flow__edge-path {
28
- stroke: ${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2};
28
+ stroke: ${$92db495027db752c$export$2e2bcd8739ae039.colors.accent2};
29
29
  }
30
30
 
31
31
  .react-flow__node.selected {
32
- border: 1px solid ${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2};
33
- box-shadow: 0 0 0 0.5px #${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2};
32
+ border: 1px solid ${$92db495027db752c$export$2e2bcd8739ae039.colors.accent2};
33
+ box-shadow: 0 0 0 0.5px #${$92db495027db752c$export$2e2bcd8739ae039.colors.accent2};
34
34
  }
35
35
 
36
36
  .react-flow__node-default.selected, .react-flow__node-default.selected:hover {
37
- box-shadow: 0 0 0 0.5px #${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2};
37
+ box-shadow: 0 0 0 0.5px #${$92db495027db752c$export$2e2bcd8739ae039.colors.accent2};
38
38
  }
39
39
 
40
40
  /* .react-flow__minimap-mask {
41
- fill: ${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.elevation1}
41
+ fill: ${$92db495027db752c$export$2e2bcd8739ae039.colors.elevation1}
42
42
  }
43
43
 
44
44
  .react-flow__minimap-node {
45
- fill:${$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2}
45
+ fill:${$92db495027db752c$export$2e2bcd8739ae039.colors.accent2}
46
46
  } */
47
47
  }
48
48
 
49
- `;let $9bcd1fc54f3a4589$var$useTheme=()=>(0,$9m4Pa$emotionreact.useTheme)();var $9bcd1fc54f3a4589$export$2e2bcd8739ae039=$9bcd1fc54f3a4589$var$useTheme;let $50d95f4d7f0f0ec0$export$ef9839ae55b8ba40=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reactcontexify.Item)``,$50d95f4d7f0f0ec0$export$98eff9c5659394e3=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reactcontexify.Menu)`
49
+ `;let $9a3ae56a32a010df$var$useTheme=()=>(0,$fmhGi$emotionreact.useTheme)();var $9a3ae56a32a010df$export$2e2bcd8739ae039=$9a3ae56a32a010df$var$useTheme;let $cf67378495ee564c$export$ef9839ae55b8ba40=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reactcontexify.Item)``,$cf67378495ee564c$export$98eff9c5659394e3=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reactcontexify.Menu)`
50
50
  background: ${({colors:e})=>e.elevation2};
51
51
  padding: 0;
52
52
  border-radius: 0;
@@ -59,7 +59,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
59
59
  background-color: ${({colors:e})=>e.elevation1};
60
60
  margin: 0;
61
61
  }
62
- `,$137f1cfc6118d808$export$d4cd258d01c03112="editor-edge-menu",$137f1cfc6118d808$export$8b2e4a15453bac1e=()=>{let{show:e}=(0,$9m4Pa$reactcontexify.useContextMenu)({id:$137f1cfc6118d808$export$d4cd258d01c03112});return{onContextMenu:(0,$9m4Pa$react.useCallback)((a,t)=>{a.stopPropagation(),e(a,{props:{edge:t}})},[e])}},$137f1cfc6118d808$var$EdgeContextMenu=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeEdges);return(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactjsxruntime.Fragment,{children:(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$98eff9c5659394e3,{id:$137f1cfc6118d808$export$d4cd258d01c03112,animation:!1,colors:e.colors,children:(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:e=>a([e.props.edge]),children:"Delete Edge (DEL)"})})})};var $137f1cfc6118d808$export$2e2bcd8739ae039=$137f1cfc6118d808$var$EdgeContextMenu;let $714f7694528a0830$var$ModalOuter=$parcel$interopDefault($9m4Pa$emotionstyled).div`
62
+ `,$198f40b4dcd41028$export$d4cd258d01c03112="editor-edge-menu",$198f40b4dcd41028$export$8b2e4a15453bac1e=()=>{let{show:e}=(0,$fmhGi$reactcontexify.useContextMenu)({id:$198f40b4dcd41028$export$d4cd258d01c03112});return{onContextMenu:(0,$fmhGi$react.useCallback)((t,r)=>{t.stopPropagation(),e(t,{props:{edge:r}})},[e])}},$198f40b4dcd41028$var$EdgeContextMenu=()=>{let e=$9a3ae56a32a010df$export$2e2bcd8739ae039(),t=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.removeEdges);return(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactjsxruntime.Fragment,{children:(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$98eff9c5659394e3,{id:$198f40b4dcd41028$export$d4cd258d01c03112,animation:!1,colors:e.colors,children:(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:e=>t([e.props.edge]),children:"Delete Edge (DEL)"})})})};var $198f40b4dcd41028$export$2e2bcd8739ae039=$198f40b4dcd41028$var$EdgeContextMenu;let $aecb885983569300$var$ModalOuter=$parcel$interopDefault($fmhGi$emotionstyled).div`
63
63
  position: fixed;
64
64
  z-index: ${({theme:e})=>e.zIndex.modal};
65
65
  width: 100%;
@@ -70,7 +70,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
70
70
  display: flex;
71
71
  align-items: center;
72
72
  justify-content: center;
73
- `,$714f7694528a0830$var$ModalInner=$parcel$interopDefault($9m4Pa$emotionstyled).div`
73
+ `,$aecb885983569300$var$ModalInner=$parcel$interopDefault($fmhGi$emotionstyled).div`
74
74
  background: ${({theme:e})=>e.colors.elevation2};
75
75
  box-shadow: 1px 1px 1px 1px ${({theme:e})=>e.colors.elevation1};
76
76
  color: white;
@@ -78,19 +78,19 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
78
78
  height: 80%;
79
79
  overflow-y: scroll;
80
80
  position: relative;
81
- `,$714f7694528a0830$var$ModalCloser=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsmd.MdClose)`
81
+ `,$aecb885983569300$var$ModalCloser=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsmd.MdClose)`
82
82
  position: absolute;
83
83
  top: 0.2rem;
84
84
  right: 0.2rem;
85
85
  cursor: pointer;
86
- `,$714f7694528a0830$var$Modal=({children:e,onClose:a,...t})=>{let r=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();return(0,$9m4Pa$react.useEffect)(()=>{let e=e=>{"Escape"===e.key&&a?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[a]),(0,$9m4Pa$reactdom.createPortal)((0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$var$ModalOuter,{theme:r,onClick:a,children:(0,$9m4Pa$reactjsxruntime.jsxs)($714f7694528a0830$var$ModalInner,{...t,onClick:e=>{e.stopPropagation()},theme:r,children:[e,(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$var$ModalCloser,{theme:r,onClick:a})]})}),document.body)};var $714f7694528a0830$export$2e2bcd8739ae039=$714f7694528a0830$var$Modal;let $9195c2794f928a1f$var$PluginsWrapper=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
86
+ `,$aecb885983569300$var$Modal=({children:e,onClose:t,...r})=>{let a=$9a3ae56a32a010df$export$2e2bcd8739ae039();return(0,$fmhGi$react.useEffect)(()=>{let e=e=>{"Escape"===e.key&&t?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[t]),(0,$fmhGi$reactdom.createPortal)((0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$var$ModalOuter,{theme:a,onClick:t,children:(0,$fmhGi$reactjsxruntime.jsxs)($aecb885983569300$var$ModalInner,{...r,onClick:e=>{e.stopPropagation()},theme:a,children:[e,(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$var$ModalCloser,{theme:a,onClick:t})]})}),document.body)};var $aecb885983569300$export$2e2bcd8739ae039=$aecb885983569300$var$Modal;let $ec89cc1a9fe4e2be$var$PluginsWrapper=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
87
87
  width: 100%;
88
- `),$9195c2794f928a1f$var$PluginWrapper=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
88
+ `),$ec89cc1a9fe4e2be$var$PluginWrapper=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
89
89
  padding: 1rem;
90
90
  display: flex;
91
91
  flex-direction: column;
92
92
  gap: 1rem;
93
- `),$9195c2794f928a1f$var$NodesList=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).ul`
93
+ `),$ec89cc1a9fe4e2be$var$NodesList=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).ul`
94
94
  list-style: none;
95
95
  margin: 0;
96
96
  padding: 0;
@@ -111,21 +111,21 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
111
111
  cursor: pointer;
112
112
  }
113
113
  }
114
- `),$9195c2794f928a1f$var$NodeTitle=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
114
+ `),$ec89cc1a9fe4e2be$var$NodeTitle=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
115
115
  white-space: nowrap;
116
116
  overflow: hidden;
117
117
  text-overflow: ellipsis;
118
- `),$9195c2794f928a1f$var$NodeDescription=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
118
+ `),$ec89cc1a9fe4e2be$var$NodeDescription=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
119
119
  color: ${({theme:e})=>e.colors.highlight2};
120
120
  font-size: 12px;
121
- `),$9195c2794f928a1f$export$48f6b48a42d49a36=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
121
+ `),$ec89cc1a9fe4e2be$export$48f6b48a42d49a36=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
122
122
  display: flex;
123
123
  gap: 0.2rem;
124
124
  flex-wrap: wrap;
125
- `),$9195c2794f928a1f$export$7129a6e2db131a76=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).span`
125
+ `),$ec89cc1a9fe4e2be$export$7129a6e2db131a76=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).span`
126
126
  cursor: pointer;
127
127
  font-size: 10px;
128
- background: ${({theme:e,isActive:a})=>a?e.colors.highlight1:e.colors.elevation3};
128
+ background: ${({theme:e,isActive:t})=>t?e.colors.highlight1:e.colors.elevation3};
129
129
  border-radius: 2px;
130
130
  padding: 0.1rem 0.2rem;
131
131
  border: 1px solid;
@@ -133,17 +133,17 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
133
133
  &:hover {
134
134
  border-color: ${({theme:e})=>e.colors.accent2};
135
135
  }
136
- `),$9195c2794f928a1f$var$PluginHeader=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div``),$9195c2794f928a1f$var$PluginTitle=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
136
+ `),$ec89cc1a9fe4e2be$var$PluginHeader=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div``),$ec89cc1a9fe4e2be$var$PluginTitle=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
137
137
  font-size: 1.1rem;
138
138
  padding: 0.25rem 0;
139
139
  color: ${({theme:e})=>e.colors.highlight3};
140
- `),$9195c2794f928a1f$var$PluginDescription=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
140
+ `),$ec89cc1a9fe4e2be$var$PluginDescription=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
141
141
  color: ${({theme:e})=>e.colors.highlight2};
142
142
  font-size: 12px;
143
- `),$9195c2794f928a1f$var$Plugins=({onComponentClick:e,filters:{plugin:a,search:t="",tags:r},onTagClick:o})=>{let $=$19f35bee633995ac$export$2e2bcd8739ae039(({plugins:e})=>e),c=(0,$9m4Pa$react.useMemo)(()=>a?$.filter(({name:e})=>e===a):$,[$,a]),n=(0,$9m4Pa$react.useMemo)(()=>t||r?.length?c.map(e=>({...e,components:r?.length?e.components.filter(e=>r?.every(a=>e.tags?.includes(a))):e.components})).map(e=>({...e,components:e.components.filter(({type:e,name:a})=>e.toLocaleLowerCase().includes(t.toLocaleLowerCase())||a?.toLocaleLowerCase().includes(t.toLocaleLowerCase()))})):c,[c,t,r]);return(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$PluginsWrapper,{children:n.map(({name:a,description:t,components:$},c)=>$.length?(0,$9m4Pa$reactjsxruntime.jsxs)($9195c2794f928a1f$var$PluginWrapper,{children:[(0,$9m4Pa$reactjsxruntime.jsxs)($9195c2794f928a1f$var$PluginHeader,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$PluginTitle,{children:a}),(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$PluginDescription,{children:t})]}),(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$NodesList,{children:$.sort((e,a)=>e.type.toLowerCase()>a.type.toLowerCase()?1:-1).map((a,t)=>(0,$9m4Pa$reactjsxruntime.jsxs)("li",{onClick:()=>e(a),children:[(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$NodeTitle,{children:a.name||a.type}),a.description&&(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$var$NodeDescription,{children:a.description}),(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$export$48f6b48a42d49a36,{children:a.tags?.map((e,a)=>(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$export$7129a6e2db131a76,{isActive:r?.includes(e),onClickCapture:a=>{a.stopPropagation(),o(e)},children:e},a))})]},t))})]},c):null)})};var $9195c2794f928a1f$export$2e2bcd8739ae039=$9195c2794f928a1f$var$Plugins;let $48fe6874c0b2fbf7$var$InputWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
143
+ `),$ec89cc1a9fe4e2be$var$Plugins=({onComponentClick:e,filters:{plugin:t,search:r="",tags:a},onTagClick:o})=>{let $=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({plugins:e})=>e),i=(0,$fmhGi$react.useMemo)(()=>t?$.filter(({name:e})=>e===t):$,[$,t]),d=(0,$fmhGi$react.useMemo)(()=>r||a?.length?i.map(e=>({...e,components:a?.length?e.components.filter(e=>a?.every(t=>e.tags?.includes(t))):e.components})).map(e=>({...e,components:e.components.filter(({type:e,name:t})=>e.toLocaleLowerCase().includes(r.toLocaleLowerCase())||t?.toLocaleLowerCase().includes(r.toLocaleLowerCase()))})):i,[i,r,a]);return(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$PluginsWrapper,{children:d.map(({name:t,description:r,components:$},i)=>$.length?(0,$fmhGi$reactjsxruntime.jsxs)($ec89cc1a9fe4e2be$var$PluginWrapper,{children:[(0,$fmhGi$reactjsxruntime.jsxs)($ec89cc1a9fe4e2be$var$PluginHeader,{children:[(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$PluginTitle,{children:t}),(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$PluginDescription,{children:r})]}),(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$NodesList,{children:$.sort((e,t)=>e.type.toLowerCase()>t.type.toLowerCase()?1:-1).map((t,r)=>(0,$fmhGi$reactjsxruntime.jsxs)("li",{onClick:()=>e(t),children:[(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$NodeTitle,{children:t.name||t.type}),t.description&&(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$var$NodeDescription,{children:t.description}),(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$export$48f6b48a42d49a36,{children:t.tags?.map((e,t)=>(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$export$7129a6e2db131a76,{isActive:a?.includes(e),onClickCapture:t=>{t.stopPropagation(),o(e)},children:e},t))})]},r))})]},i):null)})};var $ec89cc1a9fe4e2be$export$2e2bcd8739ae039=$ec89cc1a9fe4e2be$var$Plugins;let $f5b2357f27640c96$var$InputWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
144
144
  display: flex;
145
145
  position: relative;
146
- `,$48fe6874c0b2fbf7$var$InputInner=$parcel$interopDefault($9m4Pa$emotionstyled).input`
146
+ `,$f5b2357f27640c96$var$InputInner=$parcel$interopDefault($fmhGi$emotionstyled).input`
147
147
  padding-right: 2rem;
148
148
  padding-left: 0.3rem;
149
149
  width: 100%;
@@ -174,14 +174,14 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
174
174
  -webkit-appearance: none;
175
175
  margin-right: 1rem;
176
176
  }
177
- `,$48fe6874c0b2fbf7$var$FiltersWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
177
+ `,$f5b2357f27640c96$var$FiltersWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
178
178
  display: flex;
179
179
  flex-direction: column;
180
180
  padding: 0.6rem;
181
181
  gap: 0.6rem;
182
182
  border-right: 1px solid ${({theme:e})=>e.colors.elevation3};
183
183
  min-width: 14rem;
184
- `,$48fe6874c0b2fbf7$var$PluginName=$parcel$interopDefault($9m4Pa$emotionstyled).label`
184
+ `,$f5b2357f27640c96$var$PluginName=$parcel$interopDefault($fmhGi$emotionstyled).label`
185
185
  user-select: none;
186
186
  input {
187
187
  display: none;
@@ -193,7 +193,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
193
193
  color: ${({theme:e})=>e.colors.accent3};
194
194
  cursor: pointer;
195
195
  }
196
- `,$48fe6874c0b2fbf7$var$StyledPluginTag=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($9195c2794f928a1f$export$7129a6e2db131a76)`
196
+ `,$f5b2357f27640c96$var$StyledPluginTag=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($ec89cc1a9fe4e2be$export$7129a6e2db131a76)`
197
197
  font-size: 12px;
198
198
  padding: 0.2rem 0.4rem;
199
199
  &:hover {
@@ -202,16 +202,16 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
202
202
  content: "×";
203
203
  margin-left: 0.4rem;
204
204
  }
205
- `),$48fe6874c0b2fbf7$var$Filters=({onChange:e,value:a})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),r=$19f35bee633995ac$export$2e2bcd8739ae039(({plugins:e})=>e),o=(0,$9m4Pa$react.useRef)(null);return(0,$9m4Pa$react.useEffect)(()=>{o.current&&o.current.focus()},[o]),(0,$9m4Pa$reactjsxruntime.jsxs)($48fe6874c0b2fbf7$var$FiltersWrapper,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)($48fe6874c0b2fbf7$var$InputWrapper,{children:(0,$9m4Pa$reactjsxruntime.jsx)($48fe6874c0b2fbf7$var$InputInner,{ref:o,theme:t,value:a.search||"",placeholder:"search...",onChange:t=>e({...a,search:t.target.value})})}),(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$export$48f6b48a42d49a36,{children:a.tags?.map((t,r)=>(0,$9m4Pa$reactjsxruntime.jsx)($48fe6874c0b2fbf7$var$StyledPluginTag,{isActive:!0,onClick:()=>{let r=a.tags?.filter(e=>e!==t)||[];e({...a,tags:r})},children:t},r))}),r.map(({name:r,components:o},$)=>r?(0,$9m4Pa$reactjsxruntime.jsxs)($48fe6874c0b2fbf7$var$PluginName,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)("input",{type:"checkbox",name:"plugin",value:r,checked:r===a.plugin,onChange:()=>{e({...a,plugin:r===a.plugin?null:r})}}),(0,$9m4Pa$reactjsxruntime.jsx)("span",{children:r})]},$):null)]})};var $48fe6874c0b2fbf7$export$2e2bcd8739ae039=$48fe6874c0b2fbf7$var$Filters;let $e3515b1f3d198f31$var$AddNodeWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
205
+ `),$f5b2357f27640c96$var$Filters=({onChange:e,value:t})=>{let r=$9a3ae56a32a010df$export$2e2bcd8739ae039(),a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({plugins:e})=>e),o=(0,$fmhGi$react.useRef)(null);return(0,$fmhGi$react.useEffect)(()=>{o.current&&o.current.focus()},[o]),(0,$fmhGi$reactjsxruntime.jsxs)($f5b2357f27640c96$var$FiltersWrapper,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)($f5b2357f27640c96$var$InputWrapper,{children:(0,$fmhGi$reactjsxruntime.jsx)($f5b2357f27640c96$var$InputInner,{ref:o,theme:r,value:t.search||"",placeholder:"search...",onChange:r=>e({...t,search:r.target.value})})}),(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$export$48f6b48a42d49a36,{children:t.tags?.map((r,a)=>(0,$fmhGi$reactjsxruntime.jsx)($f5b2357f27640c96$var$StyledPluginTag,{isActive:!0,onClick:()=>{let a=t.tags?.filter(e=>e!==r)||[];e({...t,tags:a})},children:r},a))}),a.map(({name:a,components:o},$)=>a?(0,$fmhGi$reactjsxruntime.jsxs)($f5b2357f27640c96$var$PluginName,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)("input",{type:"checkbox",name:"plugin",value:a,checked:a===t.plugin,onChange:()=>{e({...t,plugin:a===t.plugin?null:a})}}),(0,$fmhGi$reactjsxruntime.jsx)("span",{children:a})]},$):null)]})};var $f5b2357f27640c96$export$2e2bcd8739ae039=$f5b2357f27640c96$var$Filters;let $6287ff0589198af6$var$AddNodeWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
206
206
  height: 100%;
207
207
  width: 100%;
208
208
  display: flex;
209
209
  gap: 1rem;
210
- `,$e3515b1f3d198f31$var$PluginsPanel=$parcel$interopDefault($9m4Pa$emotionstyled).div`
210
+ `,$6287ff0589198af6$var$PluginsPanel=$parcel$interopDefault($fmhGi$emotionstyled).div`
211
211
  flex-grow: 1;
212
212
  height: 100%;
213
213
  overflow-y: scroll;
214
- `,$e3515b1f3d198f31$var$AddNode=({isOpen:e,closeMenu:a,mousePosition:t})=>{let r=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),{screenToFlowPosition:o}=(0,$9m4Pa$reactflow.useReactFlow)(),{createNode:$}=$19f35bee633995ac$export$2e2bcd8739ae039(({createNode:e})=>({createNode:e})),[c,n]=(0,$9m4Pa$react.useState)({}),i=(0,$9m4Pa$react.useCallback)(({type:e})=>{let{x:r,y:c}=o(t);$({id:`${e}-${+new Date}`,type:e,data:{label:e},position:{x:r,y:c},targetPosition:$9m4Pa$reactflow.Position.Left,sourcePosition:$9m4Pa$reactflow.Position.Right}),a()},[t,o,$,a,t]);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:()=>{a(),n({})},children:(0,$9m4Pa$reactjsxruntime.jsxs)($e3515b1f3d198f31$var$AddNodeWrapper,{theme:r,children:[(0,$9m4Pa$reactjsxruntime.jsx)($48fe6874c0b2fbf7$export$2e2bcd8739ae039,{onChange:n,value:c}),(0,$9m4Pa$reactjsxruntime.jsx)($e3515b1f3d198f31$var$PluginsPanel,{theme:r,children:(0,$9m4Pa$reactjsxruntime.jsx)($9195c2794f928a1f$export$2e2bcd8739ae039,{filters:c,onTagClick:e=>{n(a=>({...a,tags:a.tags?.includes(e)?a.tags.filter(a=>a!==e):[...a.tags||[],e]}))},onComponentClick:e=>{i(e),n({})}})})]})}):null};var $e3515b1f3d198f31$export$2e2bcd8739ae039=$e3515b1f3d198f31$var$AddNode;let $7e0f4f151f03dc3d$var$UploadPatchWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
214
+ `,$6287ff0589198af6$var$AddNode=({isOpen:e,closeMenu:t,mousePosition:r})=>{let a=$9a3ae56a32a010df$export$2e2bcd8739ae039(),{screenToFlowPosition:o}=(0,$fmhGi$reactflow.useReactFlow)(),{createNode:$}=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({createNode:e})=>({createNode:e})),[i,d]=(0,$fmhGi$react.useState)({}),c=(0,$fmhGi$react.useCallback)(({type:e})=>{let{x:a,y:i}=o(r);$({id:`${e}-${+new Date}`,type:e,data:{label:e},position:{x:a,y:i},targetPosition:$fmhGi$reactflow.Position.Left,sourcePosition:$fmhGi$reactflow.Position.Right}),t()},[r,o,$,t,r]);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:()=>{t(),d({})},children:(0,$fmhGi$reactjsxruntime.jsxs)($6287ff0589198af6$var$AddNodeWrapper,{theme:a,children:[(0,$fmhGi$reactjsxruntime.jsx)($f5b2357f27640c96$export$2e2bcd8739ae039,{onChange:d,value:i}),(0,$fmhGi$reactjsxruntime.jsx)($6287ff0589198af6$var$PluginsPanel,{theme:a,children:(0,$fmhGi$reactjsxruntime.jsx)($ec89cc1a9fe4e2be$export$2e2bcd8739ae039,{filters:i,onTagClick:e=>{d(t=>({...t,tags:t.tags?.includes(e)?t.tags.filter(t=>t!==e):[...t.tags||[],e]}))},onComponentClick:e=>{c(e),d({})}})})]})}):null};var $6287ff0589198af6$export$2e2bcd8739ae039=$6287ff0589198af6$var$AddNode;let $0486152ce8944888$var$UploadPatchWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
215
215
  display: flex;
216
216
  align-items: center;
217
217
  justify-content: center;
@@ -237,19 +237,19 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
237
237
  .drop-zone-drag-over {
238
238
  opacity: 1;
239
239
  }
240
- `,$7e0f4f151f03dc3d$var$DropZoneInner=$parcel$interopDefault($9m4Pa$emotionstyled).div`
240
+ `,$0486152ce8944888$var$DropZoneInner=$parcel$interopDefault($fmhGi$emotionstyled).div`
241
241
  display: flex;
242
242
  flex-wrap: wrap;
243
243
  align-items: center;
244
244
  justify-content: center;
245
245
  height: 100%;
246
246
  width: 100%;
247
- `,$7e0f4f151f03dc3d$var$FileUploadIcon=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsfa.FaFileUpload)`
247
+ `,$0486152ce8944888$var$FileUploadIcon=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsfa.FaFileUpload)`
248
248
  width: 100%;
249
249
  height: 8rem;
250
- `,$7e0f4f151f03dc3d$var$FileUploadMessage=$parcel$interopDefault($9m4Pa$emotionstyled).div`
250
+ `,$0486152ce8944888$var$FileUploadMessage=$parcel$interopDefault($fmhGi$emotionstyled).div`
251
251
  font-size: 2rem;
252
- `,$7e0f4f151f03dc3d$var$UploadPatch=({isOpen:e,closeMenu:a})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),r=$19f35bee633995ac$export$2e2bcd8739ae039(({setGraph:e})=>e),o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setEditorState),$=(0,$9m4Pa$react.useRef)(null),c=(0,$9m4Pa$react.useCallback)(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{o(e),a()}).catch(console.error)},[r,a]);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:a,children:(0,$9m4Pa$reactjsxruntime.jsxs)($7e0f4f151f03dc3d$var$UploadPatchWrapper,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>c(e),ref:$,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{$.current?.click()},onDrop:e=>c(e),children:(0,$9m4Pa$reactjsxruntime.jsxs)($7e0f4f151f03dc3d$var$DropZoneInner,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)($7e0f4f151f03dc3d$var$FileUploadIcon,{}),(0,$9m4Pa$reactjsxruntime.jsx)($7e0f4f151f03dc3d$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $7e0f4f151f03dc3d$export$2e2bcd8739ae039=$7e0f4f151f03dc3d$var$UploadPatch;let $ab2f5e2fb2253d0f$var$UploadProjectWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
252
+ `,$0486152ce8944888$var$UploadPatch=({isOpen:e,closeMenu:t})=>{let r=$9a3ae56a32a010df$export$2e2bcd8739ae039(),a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({setGraph:e})=>e),o=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setEditorState),$=(0,$fmhGi$react.useRef)(null),i=(0,$fmhGi$react.useCallback)(e=>{let[r]=e||[];r.text().then(JSON.parse).then(e=>{o(e),t()}).catch(console.error)},[a,t]);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:t,children:(0,$fmhGi$reactjsxruntime.jsxs)($0486152ce8944888$var$UploadPatchWrapper,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>i(e),ref:$,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{$.current?.click()},onDrop:e=>i(e),children:(0,$fmhGi$reactjsxruntime.jsxs)($0486152ce8944888$var$DropZoneInner,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)($0486152ce8944888$var$FileUploadIcon,{}),(0,$fmhGi$reactjsxruntime.jsx)($0486152ce8944888$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $0486152ce8944888$export$2e2bcd8739ae039=$0486152ce8944888$var$UploadPatch;let $b6ead6c552b5468d$var$UploadProjectWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
253
253
  display: flex;
254
254
  align-items: center;
255
255
  justify-content: center;
@@ -275,19 +275,19 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
275
275
  .drop-zone-drag-over {
276
276
  opacity: 1;
277
277
  }
278
- `,$ab2f5e2fb2253d0f$var$DropZoneInner=$parcel$interopDefault($9m4Pa$emotionstyled).div`
278
+ `,$b6ead6c552b5468d$var$DropZoneInner=$parcel$interopDefault($fmhGi$emotionstyled).div`
279
279
  display: flex;
280
280
  flex-wrap: wrap;
281
281
  align-items: center;
282
282
  justify-content: center;
283
283
  height: 100%;
284
284
  width: 100%;
285
- `,$ab2f5e2fb2253d0f$var$FileUploadIcon=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsfa.FaFileUpload)`
285
+ `,$b6ead6c552b5468d$var$FileUploadIcon=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsfa.FaFileUpload)`
286
286
  width: 100%;
287
287
  height: 8rem;
288
- `,$ab2f5e2fb2253d0f$var$FileUploadMessage=$parcel$interopDefault($9m4Pa$emotionstyled).div`
288
+ `,$b6ead6c552b5468d$var$FileUploadMessage=$parcel$interopDefault($fmhGi$emotionstyled).div`
289
289
  font-size: 2rem;
290
- `,$ab2f5e2fb2253d0f$var$UploadProject=({isOpen:e,closeMenu:a})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setProject),o=(0,$9m4Pa$react.useRef)(null),$=(0,$9m4Pa$react.useCallback)(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{r(e),a()}).catch(console.error)},[r,a]);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:a,children:(0,$9m4Pa$reactjsxruntime.jsxs)($ab2f5e2fb2253d0f$var$UploadProjectWrapper,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$9m4Pa$reactjsxruntime.jsxs)($ab2f5e2fb2253d0f$var$DropZoneInner,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)($ab2f5e2fb2253d0f$var$FileUploadIcon,{}),(0,$9m4Pa$reactjsxruntime.jsx)($ab2f5e2fb2253d0f$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $ab2f5e2fb2253d0f$export$2e2bcd8739ae039=$ab2f5e2fb2253d0f$var$UploadProject;let $f64b59af4a41cb85$var$useWorker=e=>{let[a,t]=(0,$9m4Pa$react.useState)(null);return(0,$9m4Pa$react.useEffect)(()=>{let a=new Worker(e);return t(a),()=>{a?.terminate(),t(null)}},[]),a};var $f64b59af4a41cb85$export$2e2bcd8739ae039=$f64b59af4a41cb85$var$useWorker;let $fb25c037bce8ec96$var$useMessageChannel=()=>{let[e,a]=(0,$9m4Pa$react.useState)(null);return(0,$9m4Pa$react.useEffect)(()=>{let e=new MessageChannel;return e.port2.start(),a(e),()=>{a(null),e.port2.close()}},[]),e};var $fb25c037bce8ec96$export$2e2bcd8739ae039=$fb25c037bce8ec96$var$useMessageChannel;let $0c1a6d299c94cfbd$export$cd440e094f060920=(e,a,t)=>{void 0!==a&&e.setValueAtTime(a,t.currentTime)},$0c1a6d299c94cfbd$export$25df2e315be8e003=e=>new Promise((a,t)=>{let r=new FileReader;r.readAsDataURL(e),r.onload=()=>a(r.result?.toString()||""),r.onerror=e=>t(e)}),$c9cd418ce899f4ca$var$UploadAudioWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
290
+ `,$b6ead6c552b5468d$var$UploadProject=({isOpen:e,closeMenu:t})=>{let r=$9a3ae56a32a010df$export$2e2bcd8739ae039(),a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setProject),o=(0,$fmhGi$react.useRef)(null),$=(0,$fmhGi$react.useCallback)(e=>{let[r]=e||[];r.text().then(JSON.parse).then(e=>{a(e),t()}).catch(console.error)},[a,t]);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:t,children:(0,$fmhGi$reactjsxruntime.jsxs)($b6ead6c552b5468d$var$UploadProjectWrapper,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$fmhGi$reactjsxruntime.jsxs)($b6ead6c552b5468d$var$DropZoneInner,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)($b6ead6c552b5468d$var$FileUploadIcon,{}),(0,$fmhGi$reactjsxruntime.jsx)($b6ead6c552b5468d$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $b6ead6c552b5468d$export$2e2bcd8739ae039=$b6ead6c552b5468d$var$UploadProject;let $e15c51f83a85b4ad$var$useWorker=e=>{let[t,r]=(0,$fmhGi$react.useState)(null);return(0,$fmhGi$react.useEffect)(()=>{let t=new Worker(e);return r(t),()=>{t?.terminate(),r(null)}},[]),t};var $e15c51f83a85b4ad$export$2e2bcd8739ae039=$e15c51f83a85b4ad$var$useWorker;let $57c70618ccf03bcf$var$useMessageChannel=()=>{let[e,t]=(0,$fmhGi$react.useState)(null);return(0,$fmhGi$react.useEffect)(()=>{let e=new MessageChannel;return e.port2.start(),t(e),()=>{t(null),e.port2.close()}},[]),e};var $57c70618ccf03bcf$export$2e2bcd8739ae039=$57c70618ccf03bcf$var$useMessageChannel;let $81158361350173a6$export$cd440e094f060920=(e,t,r)=>{void 0!==t&&e.setValueAtTime(t,r.currentTime)},$81158361350173a6$export$25df2e315be8e003=e=>new Promise((t,r)=>{let a=new FileReader;a.readAsDataURL(e),a.onload=()=>t(a.result?.toString()||""),a.onerror=e=>r(e)}),$a6e103adb12b0598$var$UploadAudioWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
291
291
  display: flex;
292
292
  align-items: center;
293
293
  justify-content: center;
@@ -313,19 +313,19 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
313
313
  .drop-zone-drag-over {
314
314
  opacity: 1;
315
315
  }
316
- `,$c9cd418ce899f4ca$var$DropZoneInner=$parcel$interopDefault($9m4Pa$emotionstyled).div`
316
+ `,$a6e103adb12b0598$var$DropZoneInner=$parcel$interopDefault($fmhGi$emotionstyled).div`
317
317
  display: flex;
318
318
  flex-wrap: wrap;
319
319
  align-items: center;
320
320
  justify-content: center;
321
321
  height: 100%;
322
322
  width: 100%;
323
- `,$c9cd418ce899f4ca$var$FileUploadIcon=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsfa.FaFileUpload)`
323
+ `,$a6e103adb12b0598$var$FileUploadIcon=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsfa.FaFileUpload)`
324
324
  width: 100%;
325
325
  height: 8rem;
326
- `,$c9cd418ce899f4ca$var$FileUploadMessage=$parcel$interopDefault($9m4Pa$emotionstyled).div`
326
+ `,$a6e103adb12b0598$var$FileUploadMessage=$parcel$interopDefault($fmhGi$emotionstyled).div`
327
327
  font-size: 2rem;
328
- `,$c9cd418ce899f4ca$var$UploadAudio=({isOpen:e,closeMenu:a})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();$19f35bee633995ac$export$2e2bcd8739ae039(({setGraph:e})=>e),$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setEditorState);let r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addFile),o=(0,$9m4Pa$react.useRef)(null),$=(0,$9m4Pa$react.useCallback)(async e=>{let[t]=e||[],o=await $0c1a6d299c94cfbd$export$25df2e315be8e003(t);r({type:"audio",id:`audio-file-${+new Date}`,name:t.name,file:o}),a()},[r,a]);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:a,children:(0,$9m4Pa$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$UploadAudioWrapper,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$9m4Pa$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$DropZoneInner,{theme:t,children:[(0,$9m4Pa$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadIcon,{}),(0,$9m4Pa$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $c9cd418ce899f4ca$export$2e2bcd8739ae039=$c9cd418ce899f4ca$var$UploadAudio;let $cd0ab85c52ef114c$export$d4cd258d01c03112="editor-menu",$cd0ab85c52ef114c$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$9m4Pa$reactcontexify.useContextMenu)({id:$cd0ab85c52ef114c$export$d4cd258d01c03112});return{onContextMenu:e}},$cd0ab85c52ef114c$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let a=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),[t,r]=(0,$9m4Pa$react.useState)({x:0,y:0}),[o,$]=(0,$9m4Pa$react.useState)(!1),[c,n]=(0,$9m4Pa$react.useState)(!1),[i,d]=(0,$9m4Pa$react.useState)(!1),[l,s]=(0,$9m4Pa$react.useState)(!1),f=(0,$9m4Pa$react.useCallback)((e,a)=>{r({x:e,y:a}),$(!0)},[$]),p=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:m}=(0,$9m4Pa$reactflow.useReactFlow)(),u=(0,$9m4Pa$react.useCallback)(e=>{let{x:a,y:t}=m(e);p(a,t)},[$,m]),x=$19f35bee633995ac$export$2e2bcd8739ae039(({clearGraph:e})=>e),b=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getEditorState),h=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getProject),g=(0,$9m4Pa$react.useCallback)(()=>{x()},[x]),P=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp),v=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.back),j=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.forward),y=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.pointer),w=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.buffer),C=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copySelectedItems),k=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodes),N=(0,$9m4Pa$react.useMemo)(()=>k.filter(({selected:e})=>e),[k]),D=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copyBuffer),z=(0,$9m4Pa$reactflow.useReactFlow)(),M=(0,$9m4Pa$react.useCallback)(()=>{let e={...b()};$parcel$interopDefault($9m4Pa$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-patch.json")},[b,z]),S=(0,$9m4Pa$react.useCallback)(()=>{let e={...h()};$parcel$interopDefault($9m4Pa$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-project.json")},[b,z]);return(0,$9m4Pa$react.useEffect)(()=>($parcel$interopDefault($9m4Pa$hotkeysjs)("command+shift+a",()=>(f(200,50),!1)),$parcel$interopDefault($9m4Pa$hotkeysjs)("shift+/",()=>(P(),!1)),$parcel$interopDefault($9m4Pa$hotkeysjs)("command+z",()=>(v(),!1)),$parcel$interopDefault($9m4Pa$hotkeysjs)("command+shift+z",()=>(j(),!1)),$parcel$interopDefault($9m4Pa$hotkeysjs)("command+c",()=>(C(),!1)),$parcel$interopDefault($9m4Pa$hotkeysjs)("command+v",()=>(u({x:200,y:50}),!1)),()=>{$parcel$interopDefault($9m4Pa$hotkeysjs).unbind()}),[f,u]),(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$reactjsxruntime.Fragment,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($e3515b1f3d198f31$export$2e2bcd8739ae039,{isOpen:o,closeMenu:()=>$(!1),mousePosition:t}),(0,$9m4Pa$reactjsxruntime.jsx)($7e0f4f151f03dc3d$export$2e2bcd8739ae039,{isOpen:c,closeMenu:()=>n(!1)}),(0,$9m4Pa$reactjsxruntime.jsx)($ab2f5e2fb2253d0f$export$2e2bcd8739ae039,{isOpen:i,closeMenu:()=>d(!1)}),(0,$9m4Pa$reactjsxruntime.jsx)($c9cd418ce899f4ca$export$2e2bcd8739ae039,{isOpen:l,closeMenu:()=>s(!1)}),(0,$9m4Pa$reactjsxruntime.jsxs)($50d95f4d7f0f0ec0$export$98eff9c5659394e3,{id:$cd0ab85c52ef114c$export$d4cd258d01c03112,animation:!1,colors:a.colors,children:[(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:({triggerEvent:{clientX:e,clientY:a}})=>f(e,a),children:"Add Node (⌘+⇧+A)"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:g,children:"Delete All"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:M,children:"Download patch"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:()=>n(!0),children:"Upload patch"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:S,children:"Download project"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:()=>d(!0),children:"Upload project"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:()=>s(!0),children:"Upload Audio File"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:0===y,onClick:v,children:"Undo (⌘+z)"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:y===w.length,onClick:j,children:"Redo (⌘+⇧+Z)"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:!N.length,onClick:C,children:"Copy Selected (⌘+c)"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:!D.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:a}})=>u({x:e,y:a}),children:"Paste (⌘+v)"}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),e.map((e,a)=>(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{children:e},a)),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactcontexify.Separator,{}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:P,children:"Help (⇧+?)"})]})]})};var $cd0ab85c52ef114c$export$2e2bcd8739ae039=$cd0ab85c52ef114c$var$EditorContextMenu;let $22b4690c38c8b941$export$d4cd258d01c03112="editor-node-menu",$22b4690c38c8b941$export$cbbbfb9fb15f3780=()=>{let{show:e}=(0,$9m4Pa$reactcontexify.useContextMenu)({id:$22b4690c38c8b941$export$d4cd258d01c03112});return{onContextMenu:(0,$9m4Pa$react.useCallback)((a,t)=>{a.stopPropagation(),e(a,{props:{node:t}})},[])}},$22b4690c38c8b941$var$NodeContextMenu=e=>{let a=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeNodes),r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addNodeToControlPanel),o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),$=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copy),c=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodesConfiguration),n=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.controlPanel.nodes),i=(0,$9m4Pa$react.useCallback)(({props:e})=>!!e?.node.type&&!!n.find(({id:a})=>a===e.node.id),[n]),d=(0,$9m4Pa$react.useCallback)(({props:e})=>{if(!e?.node.type)return!1;let a=c[e.node.type];return!!a?.controlPanelNode},[c]);return(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactjsxruntime.Fragment,{children:(0,$9m4Pa$reactjsxruntime.jsxs)($50d95f4d7f0f0ec0$export$98eff9c5659394e3,{id:$22b4690c38c8b941$export$d4cd258d01c03112,animation:!1,colors:a.colors,children:[(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:e=>t([e.props.node]),children:"Delete Node (DEL)"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{hidden:(...e)=>!d(...e)||i(...e),onClick:e=>r(e.props.node),children:"Add To Control Panel"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{hidden:(...e)=>!d(...e)||!i(...e),onClick:e=>o(e.props.node),children:"Remove From Control Panel"}),(0,$9m4Pa$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:e=>$({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})};var $22b4690c38c8b941$export$2e2bcd8739ae039=$22b4690c38c8b941$var$NodeContextMenu;let $e0773c90edc6ed5f$var$useAudioNode=e=>$19f35bee633995ac$export$2e2bcd8739ae039(({patch:e})=>e).audioNodes.get(e);var $e0773c90edc6ed5f$export$2e2bcd8739ae039=$e0773c90edc6ed5f$var$useAudioNode;let $cdd180257ba7e9a4$var$useNode=e=>{let a=$19f35bee633995ac$export$2e2bcd8739ae039(({updateNodeData:e})=>e),t=(0,$9m4Pa$react.useCallback)(t=>a(e,{values:t}),[e,a]);return{updateNodeValues:t,updateNodeConfig:(0,$9m4Pa$react.useCallback)(t=>a(e,{config:t}),[e,a]),updateNodeLabel:(0,$9m4Pa$react.useCallback)(t=>a(e,{label:t}),[e,a])}};var $cdd180257ba7e9a4$export$2e2bcd8739ae039=$cdd180257ba7e9a4$var$useNode;let $aa49bccfd9ae8480$export$5abe11f802ebd1f2=$parcel$interopDefault($9m4Pa$emotionstyled).input`
328
+ `,$a6e103adb12b0598$var$UploadAudio=({isOpen:e,closeMenu:t})=>{let r=$9a3ae56a32a010df$export$2e2bcd8739ae039();$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({setGraph:e})=>e),$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setEditorState);let a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.addFile),o=(0,$fmhGi$react.useRef)(null),$=(0,$fmhGi$react.useCallback)(async e=>{let[r]=e||[],o=await $81158361350173a6$export$25df2e315be8e003(r);a({type:"audio",id:`audio-file-${+new Date}`,name:r.name,file:o}),t()},[a,t]);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:t,children:(0,$fmhGi$reactjsxruntime.jsxs)($a6e103adb12b0598$var$UploadAudioWrapper,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$fmhGi$reactjsxruntime.jsxs)($a6e103adb12b0598$var$DropZoneInner,{theme:r,children:[(0,$fmhGi$reactjsxruntime.jsx)($a6e103adb12b0598$var$FileUploadIcon,{}),(0,$fmhGi$reactjsxruntime.jsx)($a6e103adb12b0598$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $a6e103adb12b0598$export$2e2bcd8739ae039=$a6e103adb12b0598$var$UploadAudio;let $1648f5ec674bd0e4$export$d4cd258d01c03112="editor-menu",$1648f5ec674bd0e4$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$fmhGi$reactcontexify.useContextMenu)({id:$1648f5ec674bd0e4$export$d4cd258d01c03112});return{onContextMenu:e}},$1648f5ec674bd0e4$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let t=$9a3ae56a32a010df$export$2e2bcd8739ae039(),[r,a]=(0,$fmhGi$react.useState)({x:0,y:0}),[o,$]=(0,$fmhGi$react.useState)(!1),[i,d]=(0,$fmhGi$react.useState)(!1),[c,n]=(0,$fmhGi$react.useState)(!1),[l,s]=(0,$fmhGi$react.useState)(!1),f=(0,$fmhGi$react.useCallback)((e,t)=>{a({x:e,y:t}),$(!0)},[$]),p=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:h}=(0,$fmhGi$reactflow.useReactFlow)(),m=(0,$fmhGi$react.useCallback)(e=>{let{x:t,y:r}=h(e);p(t,r)},[$,h]),b=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({clearGraph:e})=>e),u=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.getEditorState),x=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.getProject),g=(0,$fmhGi$react.useCallback)(()=>{b()},[b]),v=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.toggleHelp),G=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.history.back),j=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.history.forward),y=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.history.pointer),w=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.history.buffer),C=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.copySelectedItems),k=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.nodes),P=(0,$fmhGi$react.useMemo)(()=>k.filter(({selected:e})=>e),[k]),N=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.copyBuffer),D=(0,$fmhGi$reactflow.useReactFlow)(),z=(0,$fmhGi$react.useCallback)(()=>{let e={...u()};$parcel$interopDefault($fmhGi$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-patch.json")},[u,D]),M=(0,$fmhGi$react.useCallback)(()=>{let e={...x()};$parcel$interopDefault($fmhGi$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-project.json")},[u,D]);return(0,$fmhGi$react.useEffect)(()=>($parcel$interopDefault($fmhGi$hotkeysjs)("command+shift+a",()=>(f(200,50),!1)),$parcel$interopDefault($fmhGi$hotkeysjs)("shift+/",()=>(v(),!1)),$parcel$interopDefault($fmhGi$hotkeysjs)("command+z",()=>(G(),!1)),$parcel$interopDefault($fmhGi$hotkeysjs)("command+shift+z",()=>(j(),!1)),$parcel$interopDefault($fmhGi$hotkeysjs)("command+c",()=>(C(),!1)),$parcel$interopDefault($fmhGi$hotkeysjs)("command+v",()=>(m({x:200,y:50}),!1)),()=>{$parcel$interopDefault($fmhGi$hotkeysjs).unbind()}),[f,m]),(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$reactjsxruntime.Fragment,{children:[(0,$fmhGi$reactjsxruntime.jsx)($6287ff0589198af6$export$2e2bcd8739ae039,{isOpen:o,closeMenu:()=>$(!1),mousePosition:r}),(0,$fmhGi$reactjsxruntime.jsx)($0486152ce8944888$export$2e2bcd8739ae039,{isOpen:i,closeMenu:()=>d(!1)}),(0,$fmhGi$reactjsxruntime.jsx)($b6ead6c552b5468d$export$2e2bcd8739ae039,{isOpen:c,closeMenu:()=>n(!1)}),(0,$fmhGi$reactjsxruntime.jsx)($a6e103adb12b0598$export$2e2bcd8739ae039,{isOpen:l,closeMenu:()=>s(!1)}),(0,$fmhGi$reactjsxruntime.jsxs)($cf67378495ee564c$export$98eff9c5659394e3,{id:$1648f5ec674bd0e4$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:({triggerEvent:{clientX:e,clientY:t}})=>f(e,t),children:"Add Node (⌘+⇧+A)"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:g,children:"Delete All"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:z,children:"Download patch"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:()=>d(!0),children:"Upload patch"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:M,children:"Download project"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:()=>n(!0),children:"Upload project"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:()=>s(!0),children:"Upload Audio File"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{disabled:0===y,onClick:G,children:"Undo (⌘+z)"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{disabled:y===w.length,onClick:j,children:"Redo (⌘+⇧+Z)"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{disabled:!P.length,onClick:C,children:"Copy Selected (⌘+c)"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{disabled:!N.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:t}})=>m({x:e,y:t}),children:"Paste (⌘+v)"}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),e.map((e,t)=>(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{children:e},t)),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactcontexify.Separator,{}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:v,children:"Help (⇧+?)"})]})]})};var $1648f5ec674bd0e4$export$2e2bcd8739ae039=$1648f5ec674bd0e4$var$EditorContextMenu;let $8c457fe18f140d5d$export$d4cd258d01c03112="editor-node-menu",$8c457fe18f140d5d$export$cbbbfb9fb15f3780=()=>{let{show:e}=(0,$fmhGi$reactcontexify.useContextMenu)({id:$8c457fe18f140d5d$export$d4cd258d01c03112});return{onContextMenu:(0,$fmhGi$react.useCallback)((t,r)=>{t.stopPropagation(),e(t,{props:{node:r}})},[])}},$8c457fe18f140d5d$var$NodeContextMenu=e=>{let t=$9a3ae56a32a010df$export$2e2bcd8739ae039(),r=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.removeNodes),a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.addNodeToControlPanel),o=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),$=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.copy),i=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.nodesConfiguration),d=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.controlPanel.nodes),c=(0,$fmhGi$react.useCallback)(({props:e})=>!!e?.node.type&&!!d.find(({id:t})=>t===e.node.id),[d]),n=(0,$fmhGi$react.useCallback)(({props:e})=>{if(!e?.node.type)return!1;let t=i[e.node.type];return!!t?.controlPanelNode},[i]);return(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactjsxruntime.Fragment,{children:(0,$fmhGi$reactjsxruntime.jsxs)($cf67378495ee564c$export$98eff9c5659394e3,{id:$8c457fe18f140d5d$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:e=>r([e.props.node]),children:"Delete Node (DEL)"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{hidden:(...e)=>!n(...e)||c(...e),onClick:e=>a(e.props.node),children:"Add To Control Panel"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{hidden:(...e)=>!n(...e)||!c(...e),onClick:e=>o(e.props.node),children:"Remove From Control Panel"}),(0,$fmhGi$reactjsxruntime.jsx)($cf67378495ee564c$export$ef9839ae55b8ba40,{onClick:e=>$({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})};var $8c457fe18f140d5d$export$2e2bcd8739ae039=$8c457fe18f140d5d$var$NodeContextMenu;let $4772dd2712cec46e$var$useAudioNode=e=>$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({patch:e})=>e).audioNodes.get(e);var $4772dd2712cec46e$export$2e2bcd8739ae039=$4772dd2712cec46e$var$useAudioNode;let $9f09b57f57ee1ef4$var$useNode=e=>{let t=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({updateNodeData:e})=>e),r=(0,$fmhGi$react.useCallback)(r=>t(e,{values:r}),[e,t]);return{updateNodeValues:r,updateNodeConfig:(0,$fmhGi$react.useCallback)(r=>t(e,{config:r}),[e,t]),updateNodeLabel:(0,$fmhGi$react.useCallback)(r=>t(e,{label:r}),[e,t])}};var $9f09b57f57ee1ef4$export$2e2bcd8739ae039=$9f09b57f57ee1ef4$var$useNode;let $35ac08ca6453b68a$export$5abe11f802ebd1f2=$parcel$interopDefault($fmhGi$emotionstyled).input`
329
329
  width: 100%;
330
330
  background: none;
331
331
  border: none;
@@ -354,7 +354,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
354
354
  padding: 0.3rem;
355
355
  border-radius: 0.2rem;
356
356
  }
357
- `,$aa49bccfd9ae8480$var$EditableLabel=({onChange:e,value:a="",className:t})=>{let r=(0,$9m4Pa$react.useRef)(null),[o,$]=(0,$9m4Pa$react.useState)(!1),c=(0,$9m4Pa$react.useCallback)(e=>{e.target?.select(),$(!0)},[$]),n=(0,$9m4Pa$react.useCallback)(()=>{window.getSelection()?.collapseToEnd(),$(!1)},[$]),i=(0,$9m4Pa$react.useCallback)(()=>{n(),r.current&&e(r.current.value)},[r,n,e]),d=(0,$9m4Pa$react.useCallback)(()=>{n(),r.current&&a&&(r.current.value=a)},[r,n,a]);return(0,$9m4Pa$react.useEffect)(()=>{r.current&&(r.current.value=a)},[a,r]),(0,$9m4Pa$reactjsxruntime.jsx)($aa49bccfd9ae8480$export$5abe11f802ebd1f2,{ref:r,type:"text",readOnly:!o,onDoubleClick:e=>c(e),onBlur:i,onKeyDown:e=>{switch(e.key){case"Escape":d();break;case"Enter":i()}},className:t})};var $aa49bccfd9ae8480$export$2e2bcd8739ae039=$aa49bccfd9ae8480$var$EditableLabel;let $e3d047fcd7257c33$var$NodeInfoWrapper=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
357
+ `,$35ac08ca6453b68a$var$EditableLabel=({onChange:e,value:t="",className:r})=>{let a=(0,$fmhGi$react.useRef)(null),[o,$]=(0,$fmhGi$react.useState)(!1),i=(0,$fmhGi$react.useCallback)(e=>{e.target?.select(),$(!0)},[$]),d=(0,$fmhGi$react.useCallback)(()=>{window.getSelection()?.collapseToEnd(),$(!1)},[$]),c=(0,$fmhGi$react.useCallback)(()=>{d(),a.current&&e(a.current.value)},[a,d,e]),n=(0,$fmhGi$react.useCallback)(()=>{d(),a.current&&t&&(a.current.value=t)},[a,d,t]);return(0,$fmhGi$react.useEffect)(()=>{a.current&&(a.current.value=t)},[t,a]),(0,$fmhGi$reactjsxruntime.jsx)($35ac08ca6453b68a$export$5abe11f802ebd1f2,{ref:a,type:"text",readOnly:!o,onDoubleClick:e=>i(e),onBlur:c,onKeyDown:e=>{switch(e.key){case"Escape":n();break;case"Enter":c()}},className:r})};var $35ac08ca6453b68a$export$2e2bcd8739ae039=$35ac08ca6453b68a$var$EditableLabel;let $37b2ffed43ea9fcb$var$NodeInfoWrapper=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
358
358
  height: 100%;
359
359
  width: 100%;
360
360
  overflow: scroll;
@@ -382,13 +382,13 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
382
382
  a {
383
383
  color: ${({theme:e})=>e.colors.accent1};
384
384
  }
385
- `),$e3d047fcd7257c33$var$useNodeManifest=e=>$19f35bee633995ac$export$2e2bcd8739ae039(a=>a.nodesConfiguration[e]),$e3d047fcd7257c33$var$NodeInfoModal=({isOpen:e,onClose:a,type:t,node:r})=>{let{info:o,portsDescription:$}=$e3d047fcd7257c33$var$useNodeManifest(t),c=(0,$9m4Pa$react.useMemo)(()=>{let e=[],a=r.inputs;if(a)for(let t in e.push("## Inputs"),a){let r=a[t];e.push(`### *${t}*`);let o=$?.inputs?.[t];o&&e.push(o),Array.isArray(r.type)?e.push(`**Types**: \`${r.type.join(", ")}\``):e.push(`**Type**: \`${r.type||"unknown"}\``),r.range&&e.push(`**Range**: \`[${r.range[0]}, ${r.range[1]}]\``),void 0!==r.defaultValue&&e.push(`**Default**: \`${r.defaultValue}\``)}let t=r.outputs;if(t)for(let a in e.push("## Outputs"),t){let r=t[a];e.push(`### *${a}*`);let o=$?.outputs?.[a];o&&e.push(o),Array.isArray(r.type)?e.push(`**Types**: \`${r.type.join(", ")}\``):e.push(`**Type**: \`${r.type||"unknown"}\``),r.range&&e.push(`**Range**: \`[${r.range[0]}, ${r.range[1]}]\``),void 0!==r.defaultValue&&e.push(`**Default**: \`${r.defaultValue}\``)}return e.join("\n\n")},[r,$]);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:a,children:(0,$9m4Pa$reactjsxruntime.jsx)($e3d047fcd7257c33$var$NodeInfoWrapper,{dangerouslySetInnerHTML:{__html:(0,$9m4Pa$marked.marked)((o||"")+"\n\n"+c||"")}})}):null};var $e3d047fcd7257c33$export$2e2bcd8739ae039=$e3d047fcd7257c33$var$NodeInfoModal;let $4c34e1ef7616f43c$var$NodeWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
385
+ `),$37b2ffed43ea9fcb$var$useNodeManifest=e=>$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(t=>t.nodesConfiguration[e]),$37b2ffed43ea9fcb$var$NodeInfoModal=({isOpen:e,onClose:t,type:r,node:a})=>{let{info:o,portsDescription:$}=$37b2ffed43ea9fcb$var$useNodeManifest(r),i=(0,$fmhGi$react.useMemo)(()=>{let e=[],t=a.inputs;if(t)for(let r in e.push("## Inputs"),t){let a=t[r];e.push(`### *${r}*`);let o=$?.inputs?.[r];o&&e.push(o),Array.isArray(a.type)?e.push(`**Types**: \`${a.type.join(", ")}\``):e.push(`**Type**: \`${a.type||"unknown"}\``),a.range&&e.push(`**Range**: \`[${a.range[0]}, ${a.range[1]}]\``),void 0!==a.defaultValue&&e.push(`**Default**: \`${a.defaultValue}\``)}let r=a.outputs;if(r)for(let t in e.push("## Outputs"),r){let a=r[t];e.push(`### *${t}*`);let o=$?.outputs?.[t];o&&e.push(o),Array.isArray(a.type)?e.push(`**Types**: \`${a.type.join(", ")}\``):e.push(`**Type**: \`${a.type||"unknown"}\``),a.range&&e.push(`**Range**: \`[${a.range[0]}, ${a.range[1]}]\``),void 0!==a.defaultValue&&e.push(`**Default**: \`${a.defaultValue}\``)}return e.join("\n\n")},[a,$]);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:t,children:(0,$fmhGi$reactjsxruntime.jsx)($37b2ffed43ea9fcb$var$NodeInfoWrapper,{dangerouslySetInnerHTML:{__html:(0,$fmhGi$marked.marked)((o||"")+"\n\n"+i||"")}})}):null};var $37b2ffed43ea9fcb$export$2e2bcd8739ae039=$37b2ffed43ea9fcb$var$NodeInfoModal;let $964548e125933395$var$NodeWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
386
386
  background-color: var(--leva-colors-elevation1);
387
- `,$4c34e1ef7616f43c$var$NodeLoaderWrapper=$parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$NodeWrapper)`
387
+ `,$964548e125933395$var$NodeLoaderWrapper=$parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$NodeWrapper)`
388
388
  padding: 2rem 5rem;
389
- `,$4c34e1ef7616f43c$var$NodeErrorWrapper=$parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$NodeWrapper)`
389
+ `,$964548e125933395$var$NodeErrorWrapper=$parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$NodeWrapper)`
390
390
  padding: 1rem 2rem;
391
- `,$4c34e1ef7616f43c$var$SettingsIconWrapper=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsmd.MdSettings)`
391
+ `,$964548e125933395$var$SettingsIconWrapper=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsmd.MdSettings)`
392
392
  font-size: 1.2rem;
393
393
  opacity: 0.4;
394
394
  width: 1rem;
@@ -396,7 +396,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
396
396
  opacity: 1;
397
397
  cursor: pointer;
398
398
  }
399
- `,$4c34e1ef7616f43c$var$InfoIconWrapper=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsmd.MdInfoOutline)`
399
+ `,$964548e125933395$var$InfoIconWrapper=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsmd.MdInfoOutline)`
400
400
  font-size: 1.2rem;
401
401
  opacity: 0.4;
402
402
  width: 1rem;
@@ -404,12 +404,12 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
404
404
  opacity: 1;
405
405
  cursor: pointer;
406
406
  }
407
- `,$4c34e1ef7616f43c$var$Section=$parcel$interopDefault($9m4Pa$emotionstyled).div`
407
+ `,$964548e125933395$var$Section=$parcel$interopDefault($fmhGi$emotionstyled).div`
408
408
  position: relative;
409
409
  font-family: var(--leva-fonts-mono);
410
410
  font-size: var(--leva-fontSizes-root);
411
411
  background-color: var(--leva-colors-elevation1);
412
- `,$4c34e1ef7616f43c$export$1bdb8f2d1fe25c22=$parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$Section)`
412
+ `,$964548e125933395$export$1bdb8f2d1fe25c22=$parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$Section)`
413
413
  display: flex;
414
414
  height: var(--leva-sizes-titleBarHeight);
415
415
  touch-action: none;
@@ -419,38 +419,38 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
419
419
  color: var(--leva-colors-highlight1);
420
420
  padding: 0 0.4rem;
421
421
  gap: 0.3rem;
422
- `,$4c34e1ef7616f43c$export$bfd3bd1fa283e3c6=$parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$Section)(({theme:e})=>`
422
+ `,$964548e125933395$export$bfd3bd1fa283e3c6=$parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$Section)(({theme:e})=>`
423
423
  display: grid;
424
424
  grid-template-areas: "inputs outputs";
425
425
  background: ${e.colors.elevation2};
426
426
  border-bottom: 1px solid ${e.colors.elevation1};
427
427
  color: ${e.colors.highlight3};
428
428
  font-size: 0.6rem;
429
- `),$4c34e1ef7616f43c$export$f1afba0ff9ea1277=$parcel$interopDefault($9m4Pa$emotionstyled).div`
429
+ `),$964548e125933395$export$f1afba0ff9ea1277=$parcel$interopDefault($fmhGi$emotionstyled).div`
430
430
  grid-area: inputs;
431
431
  text-align: left;
432
- `,$4c34e1ef7616f43c$export$af4f9b41fc32ed9e=$parcel$interopDefault($9m4Pa$emotionstyled).div`
432
+ `,$964548e125933395$export$af4f9b41fc32ed9e=$parcel$interopDefault($fmhGi$emotionstyled).div`
433
433
  grid-area: outputs;
434
434
  text-align: right;
435
- `,$4c34e1ef7616f43c$export$a2d375858cc72119=$parcel$interopDefault($9m4Pa$emotionstyled).div`
435
+ `,$964548e125933395$export$a2d375858cc72119=$parcel$interopDefault($fmhGi$emotionstyled).div`
436
436
  position: relative;
437
437
  padding: 5px 10px;
438
- `,$4c34e1ef7616f43c$var$portColors={[$9cc889581bce45fb$export$b0b7b95ee465c83c.Audio]:"#4ade80",[$9cc889581bce45fb$export$b0b7b95ee465c83c.Gate]:"#c084fc",[$9cc889581bce45fb$export$b0b7b95ee465c83c.Number]:"#38bdf8",[$9cc889581bce45fb$export$b0b7b95ee465c83c.Any]:"#ffffff"},$4c34e1ef7616f43c$var$StyledHandle=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reactflow.Handle,{shouldForwardProp:e=>"portType"!==e})`
439
- --port-color: ${e=>{if(!e.portType)return e.theme.colors.highlight2;if(!Array.isArray(e.portType))return $4c34e1ef7616f43c$var$portColors[e.portType];{let a=e.portType.map(e=>$4c34e1ef7616f43c$var$portColors[e]);return`linear-gradient(0.25turn, ${a.join(", ")});`}}};
438
+ `,$964548e125933395$var$portColors={[$07dabc4e7d66bab5$export$b0b7b95ee465c83c.Audio]:"#4ade80",[$07dabc4e7d66bab5$export$b0b7b95ee465c83c.Gate]:"#c084fc",[$07dabc4e7d66bab5$export$b0b7b95ee465c83c.Number]:"#38bdf8",[$07dabc4e7d66bab5$export$b0b7b95ee465c83c.Any]:"#ffffff"},$964548e125933395$var$StyledHandle=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reactflow.Handle,{shouldForwardProp:e=>"portType"!==e})`
439
+ --port-color: ${e=>{if(!e.portType)return e.theme.colors.highlight2;if(!Array.isArray(e.portType))return $964548e125933395$var$portColors[e.portType];{let t=e.portType.map(e=>$964548e125933395$var$portColors[e]);return`linear-gradient(0.25turn, ${t.join(", ")});`}}};
440
440
  border-color: var(--port-color);
441
441
  background: var(--port-color);
442
442
  box-shadow: 0px 0px 0px 1px ${({theme:e})=>e.colors.elevation2} inset;
443
- `),$4c34e1ef7616f43c$var$StyledInputHandle=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$StyledHandle)`
443
+ `),$964548e125933395$var$StyledInputHandle=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$StyledHandle)`
444
444
  left: -3px;
445
- `),$4c34e1ef7616f43c$export$9ea0feffc20ee81=({...e})=>(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$StyledInputHandle,{...e,type:"target",position:$9m4Pa$reactflow.Position.Left}),$4c34e1ef7616f43c$export$222539e2a2fac4e0=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$var$StyledHandle)`
445
+ `),$964548e125933395$export$9ea0feffc20ee81=({...e})=>(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$StyledInputHandle,{...e,type:"target",position:$fmhGi$reactflow.Position.Left}),$964548e125933395$export$222539e2a2fac4e0=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$var$StyledHandle)`
446
446
  right: -3px;
447
- `),$4c34e1ef7616f43c$export$496e5e1ee1696f64=e=>(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$222539e2a2fac4e0,{...e,type:"source",position:$9m4Pa$reactflow.Position.Right}),$4c34e1ef7616f43c$export$7e0b3af1e60a3273=({className:e,...a})=>(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$1bdb8f2d1fe25c22,{...a,className:[e,$9cc889581bce45fb$export$956b3cf15d7c363].join(" ")}),$4c34e1ef7616f43c$var$useNodeManifest=e=>$19f35bee633995ac$export$2e2bcd8739ae039(a=>a.nodesConfiguration[e]),$4c34e1ef7616f43c$var$useConfigNode=e=>{let{configNode:a}=$4c34e1ef7616f43c$var$useNodeManifest(e);return{ConfigNode:a}},$4c34e1ef7616f43c$export$361064385d50ec44=e=>{let{id:a,children:t,selected:r,...o}=e,$=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),c=$19f35bee633995ac$export$2e2bcd8739ae039(({getNode:e})=>e),n=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodesConfiguration),[i,d]=(0,$9m4Pa$react.useState)(!1),{info:l}=$4c34e1ef7616f43c$var$useNodeManifest(e.type),s=(0,$9m4Pa$react.useMemo)(()=>n[e.type].resizable??!1,[n,e.type]),{updateNodeLabel:f,updateNodeConfig:p}=$cdd180257ba7e9a4$export$2e2bcd8739ae039(a),{data:m}=c(a)||{},u=$e0773c90edc6ed5f$export$2e2bcd8739ae039(a),{ConfigNode:x}=$4c34e1ef7616f43c$var$useConfigNode(o.type),[b,h]=(0,$9m4Pa$react.useState)(!1);if(!u)return(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"can't find audio node"});if(u.loading)return(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"loading"});if(u.error)return(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$var$NodeErrorWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:["error: ",u.error.toString()]});if(!u.node)return(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"can't find audio node"});let g=m?.config?.size,{node:{inputs:P,outputs:v}}=u;return(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$var$NodeWrapper,{children:[(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$7e0b3af1e60a3273,{children:[l&&(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$InfoIconWrapper,{onClickCapture:()=>d(!0)}),(0,$9m4Pa$reactjsxruntime.jsx)($aa49bccfd9ae8480$export$2e2bcd8739ae039,{value:m?.label??"No Name",onChange:f}),x&&(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$SettingsIconWrapper,{onClickCapture:()=>h(e=>!e)})]}),(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$bfd3bd1fa283e3c6,{theme:$,children:[(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$f1afba0ff9ea1277,{children:P?Object.keys(P).map((e,a)=>(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$a2d375858cc72119,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$9ea0feffc20ee81,{id:e,portType:P[e].type}),(0,$9m4Pa$reactjsxruntime.jsx)("span",{children:e})]},a)):null}),(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$af4f9b41fc32ed9e,{children:v?Object.keys(v).map((e,a)=>(0,$9m4Pa$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$a2d375858cc72119,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$496e5e1ee1696f64,{id:e,portType:v[e].type}),(0,$9m4Pa$reactjsxruntime.jsx)("span",{children:e})]},a)):null})]}),x&&b&&r?(0,$9m4Pa$reactjsxruntime.jsx)(x,{...e}):s?(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reresizable.Resizable,{size:g,minWidth:180,minHeight:30,enable:{bottom:!0,bottomRight:!0,right:!0},onResizeStop:(e,a,t,r)=>{let o=g?{width:g.width+r.width,height:g.height+r.height}:t.getBoundingClientRect();p({...m?.config,size:o})},children:t}):t,(0,$9m4Pa$reactjsxruntime.jsx)($e3d047fcd7257c33$export$2e2bcd8739ae039,{isOpen:i,type:e.type,onClose:()=>d(!1),node:u.node})]})},$223eae4e8448cdc7$export$86de09faaa70680d=$parcel$interopDefault($9m4Pa$emotionstyled).div`
447
+ `),$964548e125933395$export$496e5e1ee1696f64=e=>(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$222539e2a2fac4e0,{...e,type:"source",position:$fmhGi$reactflow.Position.Right}),$964548e125933395$export$7e0b3af1e60a3273=({className:e,...t})=>(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$1bdb8f2d1fe25c22,{...t,className:[e,$07dabc4e7d66bab5$export$956b3cf15d7c363].join(" ")}),$964548e125933395$var$useNodeManifest=e=>$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(t=>t.nodesConfiguration[e]),$964548e125933395$var$useConfigNode=e=>{let{configNode:t}=$964548e125933395$var$useNodeManifest(e);return{ConfigNode:t}},$964548e125933395$export$361064385d50ec44=e=>{let{id:t,children:r,selected:a,...o}=e,$=$9a3ae56a32a010df$export$2e2bcd8739ae039(),i=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({getNode:e})=>e),d=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.nodesConfiguration),[c,n]=(0,$fmhGi$react.useState)(!1),{info:l}=$964548e125933395$var$useNodeManifest(e.type),s=(0,$fmhGi$react.useMemo)(()=>d[e.type].resizable??!1,[d,e.type]),{updateNodeLabel:f,updateNodeConfig:p}=$9f09b57f57ee1ef4$export$2e2bcd8739ae039(t),{data:h}=i(t)||{},m=$4772dd2712cec46e$export$2e2bcd8739ae039(t),{ConfigNode:b}=$964548e125933395$var$useConfigNode(o.type),[u,x]=(0,$fmhGi$react.useState)(!1);if(!m)return(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$NodeLoaderWrapper,{className:$07dabc4e7d66bab5$export$956b3cf15d7c363,children:"can't find audio node"});if(m.loading)return(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$NodeLoaderWrapper,{className:$07dabc4e7d66bab5$export$956b3cf15d7c363,children:"loading"});if(m.error)return(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$var$NodeErrorWrapper,{className:$07dabc4e7d66bab5$export$956b3cf15d7c363,children:["error: ",m.error.toString()]});if(!m.node)return(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$NodeLoaderWrapper,{className:$07dabc4e7d66bab5$export$956b3cf15d7c363,children:"can't find audio node"});let g=h?.config?.size,{node:{inputs:v,outputs:G}}=m;return(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$var$NodeWrapper,{children:[(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$export$7e0b3af1e60a3273,{children:[l&&(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$InfoIconWrapper,{onClickCapture:()=>n(!0)}),(0,$fmhGi$reactjsxruntime.jsx)($35ac08ca6453b68a$export$2e2bcd8739ae039,{value:h?.label??"No Name",onChange:f}),b&&(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$var$SettingsIconWrapper,{onClickCapture:()=>x(e=>!e)})]}),(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$export$bfd3bd1fa283e3c6,{theme:$,children:[(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$f1afba0ff9ea1277,{children:v?Object.keys(v).map((e,t)=>(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$export$a2d375858cc72119,{children:[(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$9ea0feffc20ee81,{id:e,portType:v[e].type}),(0,$fmhGi$reactjsxruntime.jsx)("span",{children:e})]},t)):null}),(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$af4f9b41fc32ed9e,{children:G?Object.keys(G).map((e,t)=>(0,$fmhGi$reactjsxruntime.jsxs)($964548e125933395$export$a2d375858cc72119,{children:[(0,$fmhGi$reactjsxruntime.jsx)($964548e125933395$export$496e5e1ee1696f64,{id:e,portType:G[e].type}),(0,$fmhGi$reactjsxruntime.jsx)("span",{children:e})]},t)):null})]}),b&&u&&a?(0,$fmhGi$reactjsxruntime.jsx)(b,{...e}):s?(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reresizable.Resizable,{size:g,minWidth:180,minHeight:30,enable:{bottom:!0,bottomRight:!0,right:!0},onResizeStop:(e,t,r,a)=>{let o=g?{width:g.width+a.width,height:g.height+a.height}:r.getBoundingClientRect();p({...h?.config,size:o})},children:r}):r,(0,$fmhGi$reactjsxruntime.jsx)($37b2ffed43ea9fcb$export$2e2bcd8739ae039,{isOpen:c,type:e.type,onClose:()=>n(!1),node:m.node})]})},$0243de1c9dad2904$export$86de09faaa70680d=$parcel$interopDefault($fmhGi$emotionstyled).div`
448
448
  width: 100%;
449
449
  padding: 0.4rem 0;
450
450
  white-space: nowrap;
451
451
  overflow: hidden;
452
452
  text-overflow: ellipsis;
453
- `,$223eae4e8448cdc7$export$548ca3bae446ddc2=$parcel$interopDefault($9m4Pa$emotionstyled)($4c34e1ef7616f43c$export$7e0b3af1e60a3273)`
453
+ `,$0243de1c9dad2904$export$548ca3bae446ddc2=$parcel$interopDefault($fmhGi$emotionstyled)($964548e125933395$export$7e0b3af1e60a3273)`
454
454
  display: flex;
455
455
  gap: 0.1rem;
456
456
  padding: 0 0.4rem;
@@ -458,13 +458,13 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
458
458
  font-size: 0.6rem;
459
459
  height: auto;
460
460
  min-width: 0;
461
- `,$223eae4e8448cdc7$export$9fb15e3cc717240=$parcel$interopDefault($9m4Pa$emotionstyled).div`
461
+ `,$0243de1c9dad2904$export$9fb15e3cc717240=$parcel$interopDefault($fmhGi$emotionstyled).div`
462
462
  display: flex;
463
463
  align-items: center;
464
464
  height: 70%;
465
465
  width: auto;
466
466
  gap: 0.4rem;
467
- `,$223eae4e8448cdc7$export$be58b4326e23250f=$parcel$interopDefault($9m4Pa$emotionstyled).span`
467
+ `,$0243de1c9dad2904$export$be58b4326e23250f=$parcel$interopDefault($fmhGi$emotionstyled).span`
468
468
  width: auto;
469
469
  height: 100%;
470
470
  cursor: pointer;
@@ -476,11 +476,11 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
476
476
  color: ${({theme:e})=>e.colors.highlight2};
477
477
  cursor: pointer;
478
478
  }
479
- `,$c7af67f4f237a751$var$ControlPanelNodeWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
479
+ `,$30e0ee654347e09b$var$ControlPanelNodeWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
480
480
  height: 100%;
481
481
  display: grid;
482
482
  grid-template-rows: auto 1fr;
483
- `,$c7af67f4f237a751$var$PanelNode=e=>{let{node:a}=e,t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getControlPanelNode),r=(0,$9m4Pa$react.useMemo)(()=>t(a),[a]);return r?(0,$9m4Pa$reactjsxruntime.jsx)(r,{...e}):null},$c7af67f4f237a751$var$ControlPanelItem=e=>{let{node:a,showControls:t,onDelete:r}=e,o=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),{id:$}=a,{node:c}=$e0773c90edc6ed5f$export$2e2bcd8739ae039($)||{},{updateNodeValues:n}=$cdd180257ba7e9a4$export$2e2bcd8739ae039($);return(0,$9m4Pa$reactjsxruntime.jsxs)($c7af67f4f237a751$var$ControlPanelNodeWrapper,{theme:o,children:[(0,$9m4Pa$reactjsxruntime.jsxs)($223eae4e8448cdc7$export$548ca3bae446ddc2,{theme:o,children:[(0,$9m4Pa$reactjsxruntime.jsx)($223eae4e8448cdc7$export$86de09faaa70680d,{children:a.data.label}),t&&(0,$9m4Pa$reactjsxruntime.jsxs)($223eae4e8448cdc7$export$9fb15e3cc717240,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($223eae4e8448cdc7$export$be58b4326e23250f,{theme:o,children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsmd.MdDragHandle,{className:"grid-item-handle"})}),(0,$9m4Pa$reactjsxruntime.jsx)($223eae4e8448cdc7$export$be58b4326e23250f,{theme:o,children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsmd.MdClose,{onClick:()=>r(a)})})]})]}),(0,$9m4Pa$reactjsxruntime.jsx)($c7af67f4f237a751$var$PanelNode,{node:a,audioNode:c,updateNodeValues:n})]})};var $c7af67f4f237a751$export$2e2bcd8739ae039=$c7af67f4f237a751$var$ControlPanelItem;let $f51093a35b5dffc7$var$ControlPanelIconWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
483
+ `,$30e0ee654347e09b$var$PanelNode=e=>{let{node:t}=e,r=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.getControlPanelNode),a=(0,$fmhGi$react.useMemo)(()=>r(t),[t]);return a?(0,$fmhGi$reactjsxruntime.jsx)(a,{...e}):null},$30e0ee654347e09b$var$ControlPanelItem=e=>{let{node:t,showControls:r,onDelete:a}=e,o=$9a3ae56a32a010df$export$2e2bcd8739ae039(),{id:$}=t,{node:i}=$4772dd2712cec46e$export$2e2bcd8739ae039($)||{},{updateNodeValues:d}=$9f09b57f57ee1ef4$export$2e2bcd8739ae039($);return(0,$fmhGi$reactjsxruntime.jsxs)($30e0ee654347e09b$var$ControlPanelNodeWrapper,{theme:o,children:[(0,$fmhGi$reactjsxruntime.jsxs)($0243de1c9dad2904$export$548ca3bae446ddc2,{theme:o,children:[(0,$fmhGi$reactjsxruntime.jsx)($0243de1c9dad2904$export$86de09faaa70680d,{children:t.data.label}),r&&(0,$fmhGi$reactjsxruntime.jsxs)($0243de1c9dad2904$export$9fb15e3cc717240,{children:[(0,$fmhGi$reactjsxruntime.jsx)($0243de1c9dad2904$export$be58b4326e23250f,{theme:o,children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsmd.MdDragHandle,{className:"grid-item-handle"})}),(0,$fmhGi$reactjsxruntime.jsx)($0243de1c9dad2904$export$be58b4326e23250f,{theme:o,children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsmd.MdClose,{onClick:()=>a(t)})})]})]}),(0,$fmhGi$reactjsxruntime.jsx)($30e0ee654347e09b$var$PanelNode,{node:t,audioNode:i,updateNodeValues:d})]})};var $30e0ee654347e09b$export$2e2bcd8739ae039=$30e0ee654347e09b$var$ControlPanelItem;let $43256c10008ac3d3$var$ControlPanelIconWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
484
484
  position: fixed;
485
485
  z-index: 5;
486
486
  box-shadow: 0px 1px 2px ${({theme:e})=>e.colors.elevation2};
@@ -500,34 +500,34 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
500
500
  color: ${({theme:e})=>e.colors.highlight2};
501
501
  cursor: pointer;
502
502
  }
503
- `,$f51093a35b5dffc7$var$ControlPanelIconsBar=$parcel$interopDefault($9m4Pa$emotionstyled)($223eae4e8448cdc7$export$9fb15e3cc717240)`
503
+ `,$43256c10008ac3d3$var$ControlPanelIconsBar=$parcel$interopDefault($fmhGi$emotionstyled)($0243de1c9dad2904$export$9fb15e3cc717240)`
504
504
  height: 80%;
505
- `,$f51093a35b5dffc7$var$CloseIconWrapper=$parcel$interopDefault($9m4Pa$emotionstyled)($223eae4e8448cdc7$export$be58b4326e23250f)`
505
+ `,$43256c10008ac3d3$var$CloseIconWrapper=$parcel$interopDefault($fmhGi$emotionstyled)($0243de1c9dad2904$export$be58b4326e23250f)`
506
506
  font-size: 1rem;
507
507
  display: flex;
508
508
  align-items: center;
509
- `,$f51093a35b5dffc7$var$ControlPanelHeader=$parcel$interopDefault($9m4Pa$emotionstyled)($223eae4e8448cdc7$export$548ca3bae446ddc2)`
509
+ `,$43256c10008ac3d3$var$ControlPanelHeader=$parcel$interopDefault($fmhGi$emotionstyled)($0243de1c9dad2904$export$548ca3bae446ddc2)`
510
510
  grid-template-columns: 1fr auto;
511
511
  border-bottom: 1px solid ${({theme:e})=>e.colors.elevation3};
512
512
  font-size: 0.7rem;
513
- `,$f51093a35b5dffc7$var$ControlPanelTitle=$parcel$interopDefault($9m4Pa$emotionstyled)($223eae4e8448cdc7$export$86de09faaa70680d)`
513
+ `,$43256c10008ac3d3$var$ControlPanelTitle=$parcel$interopDefault($fmhGi$emotionstyled)($0243de1c9dad2904$export$86de09faaa70680d)`
514
514
  text-align: center;
515
- `,$f51093a35b5dffc7$var$ControlPanelWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
515
+ `,$43256c10008ac3d3$var$ControlPanelWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
516
516
  height: 100%;
517
517
  width: 100%;
518
518
  padding: 0.3rem 0.4rem;
519
519
  box-sizing: border-box;
520
- `,$f51093a35b5dffc7$var$ControlPanelBody=$parcel$interopDefault($9m4Pa$emotionstyled).div`
520
+ `,$43256c10008ac3d3$var$ControlPanelBody=$parcel$interopDefault($fmhGi$emotionstyled).div`
521
521
  height: auto;
522
522
  padding: 0;
523
523
  max-height: 95vh;
524
524
  overflow-y: scroll;
525
525
  border: 1px solid ${({theme:e})=>e.colors.elevation3};
526
- `,$f51093a35b5dffc7$var$ControlPanelSettings=$parcel$interopDefault($9m4Pa$emotionstyled).div`
526
+ `,$43256c10008ac3d3$var$ControlPanelSettings=$parcel$interopDefault($fmhGi$emotionstyled).div`
527
527
  padding: 1rem 0;
528
528
  font-family: var(--leva-fonts-mono);
529
529
  font-size: 0.8rem;
530
- `,$f51093a35b5dffc7$var$LockGridWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
530
+ `,$43256c10008ac3d3$var$LockGridWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
531
531
  display: flex;
532
532
  align-items: center;
533
533
  gap: 0.5rem;
@@ -536,7 +536,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
536
536
  &:hover {
537
537
  color: ${({theme:e})=>e.colors.highlight2};
538
538
  }
539
- `,$f51093a35b5dffc7$var$GridResizeHandle=$parcel$interopDefault($9m4Pa$emotionstyled).div`
539
+ `,$43256c10008ac3d3$var$GridResizeHandle=$parcel$interopDefault($fmhGi$emotionstyled).div`
540
540
  position: absolute;
541
541
  height: 1rem;
542
542
  top: 0;
@@ -544,14 +544,14 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
544
544
  margin: auto;
545
545
  left: 0.5rem;
546
546
  border-right: 1px solid ${({theme:e})=>e.colors.whitePrimary};
547
- `,$f51093a35b5dffc7$var$ControlPanelItemWrapper=$parcel$interopDefault($9m4Pa$emotionstyled).div`
547
+ `,$43256c10008ac3d3$var$ControlPanelItemWrapper=$parcel$interopDefault($fmhGi$emotionstyled).div`
548
548
  box-sizing: border-box;
549
549
  overflow: hidden;
550
550
  .react-resizable-handle:after {
551
551
  border-color: ${({theme:e})=>e.colors.whitePrimary};
552
552
  border-width: 1px;
553
553
  }
554
- `,$f51093a35b5dffc7$var$ControlPanel=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),a=(0,$9m4Pa$react.useRef)(null),t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodes),{show:r,nodes:o,size:$}=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.controlPanel),{width:c=200,height:n}=$,i=(0,$9m4Pa$react.useMemo)(()=>{let e=o.map(({id:e})=>e);return t.filter(({id:a})=>e.includes(a))},[t,o]),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.showControlPanel),l=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.hideControlPanel),s=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setControlPanelNodes),f=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setControlPanelSize),p=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),[m,u]=(0,$9m4Pa$react.useState)(!0),x=(0,$9m4Pa$react.useMemo)(()=>{let e=o.reduce((e,{height:a=$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight,x:t,y:r=0})=>{let o=r+a;return o>e?o:e},0);return o.map(({id:a,width:t,height:r,x:o,y:$})=>({i:a,w:t||$9cc889581bce45fb$export$9f05d3e6ade4c09e.cols,h:r||6,x:o??0,y:$??e}))},[o]);return i.length?(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$reactjsxruntime.Fragment,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelIconWrapper,{theme:e,ref:a,onClick:d,children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsrx.RxDashboard,{})}),(0,$9m4Pa$reactjsxruntime.jsxs)($parcel$interopDefault($9m4Pa$reactmoderndrawer),{open:r,onClose:l,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$9m4Pa$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$ControlPanelHeader,{theme:e,children:[(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelTitle,{children:"Control Panel"}),(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelIconsBar,{children:(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$CloseIconWrapper,{onClick:l,theme:e,children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsmd.MdClose,{})})})]}),(0,$9m4Pa$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$ControlPanelWrapper,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelSettings,{children:m?(0,$9m4Pa$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$LockGridWrapper,{theme:e,onClick:()=>u(!1),children:[(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$9m4Pa$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$LockGridWrapper,{theme:e,onClick:()=>u(!0),children:[(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reresizable.Resizable,{enable:{top:!1,right:!m,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:c,height:"auto"},onResizeStop:(e,a,t,r)=>{f({width:c+r.width,height:n+r.height})},children:(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelBody,{theme:e,children:(0,$9m4Pa$reactjsxruntime.jsx)($parcel$interopDefault($9m4Pa$reactgridlayout),{layout:x,className:"layout",cols:$9cc889581bce45fb$export$9f05d3e6ade4c09e.cols,rowHeight:$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight,width:c,margin:[0,0],isResizable:!m,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{s(e.map(({i:e,w:a,h:t,x:r,y:o})=>({id:e,width:a,height:t,x:r,y:o})))})},children:i.map(a=>(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelItemWrapper,{theme:e,children:(0,$9m4Pa$reactjsxruntime.jsx)($c7af67f4f237a751$export$2e2bcd8739ae039,{node:a,showControls:!m,onDelete:p})},a.id))})})})]})]})]}):null};var $f51093a35b5dffc7$export$2e2bcd8739ae039=$f51093a35b5dffc7$var$ControlPanel,$73170d3dfa3cb4f9$exports={};$73170d3dfa3cb4f9$exports="# Quick start\n\n## Add node\n - Mouse right click\n - Select **'Add Node'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Press `CMD+SHIFT+A`\n\n<br/>\n\n## Connect nodes\n - Mouse left click and hold on source port\n - Drop on target port\n\n<br/>\n\n## Delete Node or Connection\n - Mouse right click on node/connection\n - Select **'Delete Node'**/**'Delete Connection'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Mouse left click on node/connection, then press `Backspace`\n\n<br/>\n\n\n## Move node\n - Drag and Drop\n\n<br/>\n\n## Upload file\n - Drag and drop audio or patch files onto the application\n - Uploaded file appears as a new tab in the tabs bar at the top\n - Click on the tab to view or edit the file\n\n\n";let $c6cd2caeb5a5450d$var$MdPreview=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
554
+ `,$43256c10008ac3d3$var$ControlPanel=()=>{let e=$9a3ae56a32a010df$export$2e2bcd8739ae039(),t=(0,$fmhGi$react.useRef)(null),r=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.nodes),{show:a,nodes:o,size:$}=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.controlPanel),{width:i=200,height:d}=$,c=(0,$fmhGi$react.useMemo)(()=>{let e=o.map(({id:e})=>e);return r.filter(({id:t})=>e.includes(t))},[r,o]),n=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.showControlPanel),l=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.hideControlPanel),s=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setControlPanelNodes),f=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setControlPanelSize),p=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),[h,m]=(0,$fmhGi$react.useState)(!0),b=(0,$fmhGi$react.useMemo)(()=>{let e=o.reduce((e,{height:t=$07dabc4e7d66bab5$export$9f05d3e6ade4c09e.rowHeight,x:r,y:a=0})=>{let o=a+t;return o>e?o:e},0);return o.map(({id:t,width:r,height:a,x:o,y:$})=>({i:t,w:r||$07dabc4e7d66bab5$export$9f05d3e6ade4c09e.cols,h:a||6,x:o??0,y:$??e}))},[o]);return c.length?(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$reactjsxruntime.Fragment,{children:[(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelIconWrapper,{theme:e,ref:t,onClick:n,children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsrx.RxDashboard,{})}),(0,$fmhGi$reactjsxruntime.jsxs)($parcel$interopDefault($fmhGi$reactmoderndrawer),{open:a,onClose:l,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$fmhGi$reactjsxruntime.jsxs)($43256c10008ac3d3$var$ControlPanelHeader,{theme:e,children:[(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelTitle,{children:"Control Panel"}),(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelIconsBar,{children:(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$CloseIconWrapper,{onClick:l,theme:e,children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsmd.MdClose,{})})})]}),(0,$fmhGi$reactjsxruntime.jsxs)($43256c10008ac3d3$var$ControlPanelWrapper,{children:[(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelSettings,{children:h?(0,$fmhGi$reactjsxruntime.jsxs)($43256c10008ac3d3$var$LockGridWrapper,{theme:e,onClick:()=>m(!1),children:[(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$fmhGi$reactjsxruntime.jsxs)($43256c10008ac3d3$var$LockGridWrapper,{theme:e,onClick:()=>m(!0),children:[(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reresizable.Resizable,{enable:{top:!1,right:!h,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:i,height:"auto"},onResizeStop:(e,t,r,a)=>{f({width:i+a.width,height:d+a.height})},children:(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelBody,{theme:e,children:(0,$fmhGi$reactjsxruntime.jsx)($parcel$interopDefault($fmhGi$reactgridlayout),{layout:b,className:"layout",cols:$07dabc4e7d66bab5$export$9f05d3e6ade4c09e.cols,rowHeight:$07dabc4e7d66bab5$export$9f05d3e6ade4c09e.rowHeight,width:i,margin:[0,0],isResizable:!h,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{s(e.map(({i:e,w:t,h:r,x:a,y:o})=>({id:e,width:t,height:r,x:a,y:o})))})},children:c.map(t=>(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$var$ControlPanelItemWrapper,{theme:e,children:(0,$fmhGi$reactjsxruntime.jsx)($30e0ee654347e09b$export$2e2bcd8739ae039,{node:t,showControls:!h,onDelete:p})},t.id))})})})]})]})]}):null};var $43256c10008ac3d3$export$2e2bcd8739ae039=$43256c10008ac3d3$var$ControlPanel,$f9b3d81f3279b7f3$exports={};$f9b3d81f3279b7f3$exports="# Quick start\n\n## Add node\n - Mouse right click\n - Select **'Add Node'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Press `CMD+SHIFT+A`\n\n<br/>\n\n## Connect nodes\n - Mouse left click and hold on source port\n - Drop on target port\n\n<br/>\n\n## Delete Node or Connection\n - Mouse right click on node/connection\n - Select **'Delete Node'**/**'Delete Connection'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Mouse left click on node/connection, then press `Backspace`\n\n<br/>\n\n\n## Move node\n - Drag and Drop\n\n<br/>\n\n## Upload file\n - Drag and drop audio or patch files onto the application\n - Uploaded file appears as a new tab in the tabs bar at the top\n - Click on the tab to view or edit the file\n\n\n";let $c1639f96a5ce6d94$var$MdPreview=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
555
555
  font-family: var(--leva-fonts-mono);
556
556
  font-size: 0.7rem;
557
557
  box-sizing: border-box;
@@ -565,13 +565,13 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
565
565
  color: ${({theme:e})=>e.colors.accent3};
566
566
  filter: hue-rotate(180deg);
567
567
  }
568
- `),$c6cd2caeb5a5450d$var$ModalContent=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
568
+ `),$c1639f96a5ce6d94$var$ModalContent=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
569
569
  padding: 1rem;
570
570
  height: 100%;
571
571
  width: 100%;
572
572
  box-sizing: border-box;
573
573
  overflow: hidden;
574
- `),$c6cd2caeb5a5450d$var$HelpModal=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.isHelpShown),a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return e?(0,$9m4Pa$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:()=>{a()},children:(0,$9m4Pa$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$ModalContent,{children:(0,$9m4Pa$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$MdPreview,{dangerouslySetInnerHTML:{__html:(0,$9m4Pa$marked.marked)($parcel$interopDefault($73170d3dfa3cb4f9$exports))},onWheelCapture:e=>e.stopPropagation()})})}):null};var $c6cd2caeb5a5450d$export$2e2bcd8739ae039=$c6cd2caeb5a5450d$var$HelpModal;let $eabee671d6a9ae8e$export$78bddedbcf2939ac=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactjsxruntime.Fragment,{children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactflow.ControlButton,{onClick:e,children:(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsfa.FaQuestion,{})})})},$761795227e3c2557$var$Layout=$parcel$interopDefault($9m4Pa$emotionstyled).div`
574
+ `),$c1639f96a5ce6d94$var$HelpModal=()=>{let e=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.isHelpShown),t=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.toggleHelp);return e?(0,$fmhGi$reactjsxruntime.jsx)($aecb885983569300$export$2e2bcd8739ae039,{onClose:()=>{t()},children:(0,$fmhGi$reactjsxruntime.jsx)($c1639f96a5ce6d94$var$ModalContent,{children:(0,$fmhGi$reactjsxruntime.jsx)($c1639f96a5ce6d94$var$MdPreview,{dangerouslySetInnerHTML:{__html:(0,$fmhGi$marked.marked)($parcel$interopDefault($f9b3d81f3279b7f3$exports))},onWheelCapture:e=>e.stopPropagation()})})}):null};var $c1639f96a5ce6d94$export$2e2bcd8739ae039=$c1639f96a5ce6d94$var$HelpModal;let $a50aac6c340eccc7$export$78bddedbcf2939ac=()=>{let e=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.toggleHelp);return(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactjsxruntime.Fragment,{children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactflow.ControlButton,{onClick:e,children:(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsfa.FaQuestion,{})})})},$568bdb85edee4bec$var$Layout=$parcel$interopDefault($fmhGi$emotionstyled).div`
575
575
  position: fixed;
576
576
  z-index: ${({theme:e})=>e.zIndex.resumeContextLayout};
577
577
  width: 100%;
@@ -585,23 +585,23 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
585
585
  justify-content: center;
586
586
  color: ${({theme:e})=>e.colors.whitePrimary};
587
587
  cursor: pointer;
588
- `,$761795227e3c2557$var$Row=$parcel$interopDefault($9m4Pa$emotionstyled).div`
588
+ `,$568bdb85edee4bec$var$Row=$parcel$interopDefault($fmhGi$emotionstyled).div`
589
589
  display: flex;
590
590
  width: 100%;
591
591
  align-items: center;
592
592
  justify-content: center;
593
- `,$761795227e3c2557$var$Message=$parcel$interopDefault($9m4Pa$emotionstyled).div`
593
+ `,$568bdb85edee4bec$var$Message=$parcel$interopDefault($fmhGi$emotionstyled).div`
594
594
  font-family: var(--leva-fonts-mono);
595
595
  font-size: 2rem;
596
- `,$761795227e3c2557$var$Icon=$parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsfa.FaVolumeOff)`
596
+ `,$568bdb85edee4bec$var$Icon=$parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsfa.FaVolumeOff)`
597
597
  width: 7rem;
598
598
  height: 7rem;
599
- `,$761795227e3c2557$var$ResumeContext=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),a=$19f35bee633995ac$export$2e2bcd8739ae039(({patch:e})=>e).audioContext,[t,r]=(0,$9m4Pa$react.useState)("running"===a.state);return t?null:(0,$9m4Pa$reactjsxruntime.jsxs)($761795227e3c2557$var$Layout,{theme:e,onClick:()=>{a.resume(),r(!0)},children:[(0,$9m4Pa$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$9m4Pa$reactjsxruntime.jsx)($761795227e3c2557$var$Message,{theme:e,children:"Click anywhere to resume audio context"})}),(0,$9m4Pa$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$9m4Pa$reactjsxruntime.jsx)($761795227e3c2557$var$Icon,{})})]})};var $761795227e3c2557$export$2e2bcd8739ae039=$761795227e3c2557$var$ResumeContext;let $07d50afa1b9774c9$var$ToggleMinimap=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(({setConfig:e})=>e),{showMinimap:a}=$19f35bee633995ac$export$2e2bcd8739ae039(({config:e})=>e);return(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactflow.ControlButton,{onClick:()=>e({showMinimap:!a}),children:a?(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsfa.FaMap,{}):(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reacticonsfa.FaRegMap,{})})};var $07d50afa1b9774c9$export$2e2bcd8739ae039=$07d50afa1b9774c9$var$ToggleMinimap;let $ebf0a587e54cf53c$var$Wire=({id:e,sourceX:a,sourceY:t,targetX:r,targetY:o,sourcePosition:$,targetPosition:c,style:n={},data:i,markerStart:d,markerEnd:l,source:s,target:f,sourceHandleId:p,targetHandleId:m,selected:u})=>{let x=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),b=$19f35bee633995ac$export$2e2bcd8739ae039(({getNode:e})=>e),h=b(s),g=b(f),P=h?.selected||g?.selected;(0,$9m4Pa$react.useEffect)(()=>{if(p&&m)return console.log(`connected ${s} to ${f}`),()=>{console.log(`disconnected ${s} from ${f}`)}},[s,p,f,m]);let[v]=(0,$9m4Pa$reactflow.getBezierPath)({targetX:r,targetY:o,targetPosition:c,sourceX:a,sourceY:t,sourcePosition:$});return(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$reactjsxruntime.Fragment,{children:[(0,$9m4Pa$reactjsxruntime.jsx)("path",{id:e,style:{...n,stroke:u?x.colors.accent2:P?x.colors.highlight3:x.colors.highlight2},className:"react-flow__edge-path Wire",d:v,markerEnd:l}),(0,$9m4Pa$reactjsxruntime.jsx)("path",{style:{...n,strokeWidth:8,color:"transparent",opacity:0,cursor:"pointer"},d:v,markerEnd:l})]})};var $ebf0a587e54cf53c$export$2e2bcd8739ae039=$ebf0a587e54cf53c$var$Wire;let $6e1a3b09ea6c45ed$var$onNodeDragStop=(e,a)=>console.log("drag stop",a),$6e1a3b09ea6c45ed$var$onNodeClick=(e,a)=>console.log("click",a),$6e1a3b09ea6c45ed$var$snapGrid=[20,20],$6e1a3b09ea6c45ed$export$72cb76f559fbafcf=({editorState:e,plugins:a=[],editorContextMenu:t=[],onChange:r=()=>{},...o})=>{let $=(0,$9m4Pa$react.useMemo)(()=>({wire:$ebf0a587e54cf53c$export$2e2bcd8739ae039}),[]),{nodes:c,edges:n,controlPanel:i,onNodesChange:d,onNodesDelete:l,onEdgesChange:s,onEdgesDelete:f,onConnect:p,setPlugins:m,setViewport:u,viewport:x}=$19f35bee633995ac$export$2e2bcd8739ae039(),b=$19f35bee633995ac$export$2e2bcd8739ae039(({config:e})=>e),h=$19f35bee633995ac$export$2e2bcd8739ae039(({nodeTypes:e})=>e);(0,$9m4Pa$react.useEffect)(()=>{m(a)},[a]);let[g,P]=(0,$9m4Pa$react.useState)(null);(0,$9m4Pa$react.useEffect)(()=>{g&&r({nodes:c,edges:n,controlPanel:i,viewport:x})},[c,n,i,x]);let v=(0,$9m4Pa$react.useCallback)(e=>{g||(P(e),console.log("flow loaded:",e))},[g]),{onContextMenu:j}=$cd0ab85c52ef114c$export$59ce2a6808e35a29(),{onContextMenu:y}=$22b4690c38c8b941$export$cbbbfb9fb15f3780(),{onContextMenu:w}=$137f1cfc6118d808$export$8b2e4a15453bac1e();return(0,$9m4Pa$react.useEffect)(()=>{x&&g?.setViewport(x)},[x,g]),(0,$9m4Pa$reactflow.useOnViewportChange)({onEnd:u}),(0,$9m4Pa$reactjsxruntime.jsxs)($parcel$interopDefault($9m4Pa$reactflow),{nodes:c,edges:n,onNodesChange:d,onNodesDelete:l,onEdgesChange:s,onConnect:p,onNodeDragStop:$6e1a3b09ea6c45ed$var$onNodeDragStop,onEdgesDelete:f,onInit:v,onNodeClick:$6e1a3b09ea6c45ed$var$onNodeClick,onContextMenu:j,onNodeContextMenu:y,onEdgeContextMenu:w,nodeTypes:h,edgeTypes:$,snapGrid:$6e1a3b09ea6c45ed$var$snapGrid,defaultViewport:e?.viewport,defaultEdgeOptions:{type:"wire"},snapToGrid:!0,fitView:!0,disableKeyboardA11y:!0,children:[(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactflow.Background,{variant:$9m4Pa$reactflow.BackgroundVariant.Dots,gap:12}),b.showMinimap?(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactflow.MiniMap,{}):null,(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$reactflow.Controls,{style:{right:"1rem",left:"initial",bottom:"40%",top:"initial"},showInteractive:!1,children:[(0,$9m4Pa$reactjsxruntime.jsx)($07d50afa1b9774c9$export$2e2bcd8739ae039,{}),(0,$9m4Pa$reactjsxruntime.jsx)($eabee671d6a9ae8e$export$78bddedbcf2939ac,{})]}),(0,$9m4Pa$reactjsxruntime.jsx)($761795227e3c2557$export$2e2bcd8739ae039,{}),(0,$9m4Pa$reactjsxruntime.jsx)($f51093a35b5dffc7$export$2e2bcd8739ae039,{}),(0,$9m4Pa$reactjsxruntime.jsx)($c6cd2caeb5a5450d$export$2e2bcd8739ae039,{}),(0,$9m4Pa$reactjsxruntime.jsx)($cd0ab85c52ef114c$export$2e2bcd8739ae039,{editorContextMenu:t}),(0,$9m4Pa$reactjsxruntime.jsx)($22b4690c38c8b941$export$2e2bcd8739ae039,{}),(0,$9m4Pa$reactjsxruntime.jsx)($137f1cfc6118d808$export$2e2bcd8739ae039,{})]})},$6e1a3b09ea6c45ed$export$7cda8d932e2f33c0=e=>(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$reactflow.ReactFlowProvider,{children:(0,$9m4Pa$reactjsxruntime.jsx)($6e1a3b09ea6c45ed$export$72cb76f559fbafcf,{...e})});var $6e1a3b09ea6c45ed$export$2e2bcd8739ae039=$6e1a3b09ea6c45ed$export$7cda8d932e2f33c0;let $425e92a44a72d3d3$export$d31000d36961d6c2={nodes:[],edges:[],controlPanel:{nodes:[],show:!1,size:{width:200,height:100}},viewport:{x:0,y:0,zoom:1.5}},$425e92a44a72d3d3$export$6cd5d5c1dae69a36=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
599
+ `,$568bdb85edee4bec$var$ResumeContext=()=>{let e=$9a3ae56a32a010df$export$2e2bcd8739ae039(),t=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({patch:e})=>e).audioContext,[r,a]=(0,$fmhGi$react.useState)("running"===t.state);return r?null:(0,$fmhGi$reactjsxruntime.jsxs)($568bdb85edee4bec$var$Layout,{theme:e,onClick:()=>{t.resume(),a(!0)},children:[(0,$fmhGi$reactjsxruntime.jsx)($568bdb85edee4bec$var$Row,{children:(0,$fmhGi$reactjsxruntime.jsx)($568bdb85edee4bec$var$Message,{theme:e,children:"Click anywhere to resume audio context"})}),(0,$fmhGi$reactjsxruntime.jsx)($568bdb85edee4bec$var$Row,{children:(0,$fmhGi$reactjsxruntime.jsx)($568bdb85edee4bec$var$Icon,{})})]})};var $568bdb85edee4bec$export$2e2bcd8739ae039=$568bdb85edee4bec$var$ResumeContext;let $15213dc9c3a207a8$var$ToggleMinimap=()=>{let e=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({setConfig:e})=>e),{showMinimap:t}=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({config:e})=>e);return(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactflow.ControlButton,{onClick:()=>e({showMinimap:!t}),children:t?(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsfa.FaMap,{}):(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reacticonsfa.FaRegMap,{})})};var $15213dc9c3a207a8$export$2e2bcd8739ae039=$15213dc9c3a207a8$var$ToggleMinimap;let $89d7409bb8708118$var$Wire=({id:e,sourceX:t,sourceY:r,targetX:a,targetY:o,sourcePosition:$,targetPosition:i,style:d={},data:c,markerStart:n,markerEnd:l,source:s,target:f,sourceHandleId:p,targetHandleId:h,selected:m})=>{let b=$9a3ae56a32a010df$export$2e2bcd8739ae039(),u=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({getNode:e})=>e),x=u(s),g=u(f),v=x?.selected||g?.selected;(0,$fmhGi$react.useEffect)(()=>{if(p&&h)return console.log(`connected ${s} to ${f}`),()=>{console.log(`disconnected ${s} from ${f}`)}},[s,p,f,h]);let[G]=(0,$fmhGi$reactflow.getBezierPath)({targetX:a,targetY:o,targetPosition:i,sourceX:t,sourceY:r,sourcePosition:$});return(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$reactjsxruntime.Fragment,{children:[(0,$fmhGi$reactjsxruntime.jsx)("path",{id:e,style:{...d,stroke:m?b.colors.accent2:v?b.colors.highlight3:b.colors.highlight2},className:"react-flow__edge-path Wire",d:G,markerEnd:l}),(0,$fmhGi$reactjsxruntime.jsx)("path",{style:{...d,strokeWidth:8,color:"transparent",opacity:0,cursor:"pointer"},d:G,markerEnd:l})]})};var $89d7409bb8708118$export$2e2bcd8739ae039=$89d7409bb8708118$var$Wire;let $927ea3f966266523$var$onNodeDragStop=(e,t)=>console.log("drag stop",t),$927ea3f966266523$var$onNodeClick=(e,t)=>console.log("click",t),$927ea3f966266523$var$snapGrid=[20,20],$927ea3f966266523$export$72cb76f559fbafcf=({editorState:e,plugins:t=[],editorContextMenu:r=[],onChange:a=()=>{},...o})=>{let $=(0,$fmhGi$react.useMemo)(()=>({wire:$89d7409bb8708118$export$2e2bcd8739ae039}),[]),{nodes:i,edges:d,controlPanel:c,onNodesChange:n,onNodesDelete:l,onEdgesChange:s,onEdgesDelete:f,onConnect:p,setPlugins:h,setViewport:m,viewport:b}=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(),u=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({config:e})=>e),x=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(({nodeTypes:e})=>e);(0,$fmhGi$react.useEffect)(()=>{h(t)},[t]);let[g,v]=(0,$fmhGi$react.useState)(null);(0,$fmhGi$react.useEffect)(()=>{g&&a({nodes:i,edges:d,controlPanel:c,viewport:b})},[i,d,c,b]);let G=(0,$fmhGi$react.useCallback)(e=>{g||(v(e),console.log("flow loaded:",e))},[g]),{onContextMenu:j}=$1648f5ec674bd0e4$export$59ce2a6808e35a29(),{onContextMenu:y}=$8c457fe18f140d5d$export$cbbbfb9fb15f3780(),{onContextMenu:w}=$198f40b4dcd41028$export$8b2e4a15453bac1e();return(0,$fmhGi$react.useEffect)(()=>{b&&g?.setViewport(b)},[b,g]),(0,$fmhGi$reactflow.useOnViewportChange)({onEnd:m}),(0,$fmhGi$reactjsxruntime.jsxs)($parcel$interopDefault($fmhGi$reactflow),{nodes:i,edges:d,onNodesChange:n,onNodesDelete:l,onEdgesChange:s,onConnect:p,onNodeDragStop:$927ea3f966266523$var$onNodeDragStop,onEdgesDelete:f,onInit:G,onNodeClick:$927ea3f966266523$var$onNodeClick,onContextMenu:j,onNodeContextMenu:y,onEdgeContextMenu:w,nodeTypes:x,edgeTypes:$,snapGrid:$927ea3f966266523$var$snapGrid,defaultViewport:e?.viewport,defaultEdgeOptions:{type:"wire"},snapToGrid:!0,fitView:!0,disableKeyboardA11y:!0,children:[(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactflow.Background,{variant:$fmhGi$reactflow.BackgroundVariant.Dots,gap:12}),u.showMinimap?(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactflow.MiniMap,{}):null,(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$reactflow.Controls,{style:{right:"1rem",left:"initial",bottom:"40%",top:"initial"},showInteractive:!1,children:[(0,$fmhGi$reactjsxruntime.jsx)($15213dc9c3a207a8$export$2e2bcd8739ae039,{}),(0,$fmhGi$reactjsxruntime.jsx)($a50aac6c340eccc7$export$78bddedbcf2939ac,{})]}),(0,$fmhGi$reactjsxruntime.jsx)($568bdb85edee4bec$export$2e2bcd8739ae039,{}),(0,$fmhGi$reactjsxruntime.jsx)($43256c10008ac3d3$export$2e2bcd8739ae039,{}),(0,$fmhGi$reactjsxruntime.jsx)($c1639f96a5ce6d94$export$2e2bcd8739ae039,{}),(0,$fmhGi$reactjsxruntime.jsx)($1648f5ec674bd0e4$export$2e2bcd8739ae039,{editorContextMenu:r}),(0,$fmhGi$reactjsxruntime.jsx)($8c457fe18f140d5d$export$2e2bcd8739ae039,{}),(0,$fmhGi$reactjsxruntime.jsx)($198f40b4dcd41028$export$2e2bcd8739ae039,{})]})},$927ea3f966266523$export$7cda8d932e2f33c0=e=>(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$reactflow.ReactFlowProvider,{children:(0,$fmhGi$reactjsxruntime.jsx)($927ea3f966266523$export$72cb76f559fbafcf,{...e})});var $927ea3f966266523$export$2e2bcd8739ae039=$927ea3f966266523$export$7cda8d932e2f33c0;let $985a60451d015e23$export$d31000d36961d6c2={nodes:[],edges:[],controlPanel:{nodes:[],show:!1,size:{width:200,height:100}},viewport:{x:0,y:0,zoom:1.5}},$985a60451d015e23$export$6cd5d5c1dae69a36=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
600
600
  display: flex;
601
601
  flex-direction: column;
602
602
  height: 100%;
603
603
  width: 100%;
604
- `),$425e92a44a72d3d3$export$6bc5189622b1f4ec=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
604
+ `),$985a60451d015e23$export$6bc5189622b1f4ec=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
605
605
  position: fixed;
606
606
  height: 100%;
607
607
  width: 100%;
@@ -611,18 +611,18 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
611
611
  justify-content: center;
612
612
  align-items: center;
613
613
  font-size: 2rem;
614
- `),$425e92a44a72d3d3$export$8d546ef2006cd0a2=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
614
+ `),$985a60451d015e23$export$8d546ef2006cd0a2=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
615
615
  height: 100%;
616
616
  width: 100%;
617
617
  display: flex;
618
618
  position: relative;
619
- `),$425e92a44a72d3d3$export$10efbd348f877f87=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
619
+ `),$985a60451d015e23$export$10efbd348f877f87=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
620
620
  display: flex;
621
621
  flex: 1;
622
622
  align-items: center;
623
623
  justify-content: center;
624
624
  background: ${({theme:e})=>e.colors.elevation3};
625
- `),$425e92a44a72d3d3$export$8c347812506d5ac9=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
625
+ `),$985a60451d015e23$export$8c347812506d5ac9=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
626
626
  background: ${({theme:e})=>e.colors.elevation2};
627
627
  opacity: 0.7;
628
628
  position: absolute;
@@ -637,12 +637,12 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
637
637
  align-items: center;
638
638
  justify-content: center;
639
639
  font-size: 6rem;
640
- `),$425e92a44a72d3d3$export$b38a2fd24b22fb35=e=>{let a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.pullEditorChanges),t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.currentFileIndex),[r,o]=(0,$9m4Pa$react.useState)(!0);(0,$9m4Pa$react.useEffect)(()=>{o(!0),setTimeout(()=>{o(!1)},1600)},[t]);let{file:$}=e;return $?"audio"===$.type?(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$10efbd348f877f87,{children:(0,$9m4Pa$reactjsxruntime.jsx)("audio",{src:$.file,controls:!0})}):(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$reactjsxruntime.Fragment,{children:[(0,$9m4Pa$reactjsxruntime.jsx)($6e1a3b09ea6c45ed$export$7cda8d932e2f33c0,{...e,onChange:e=>{a()},editorState:$.file||$425e92a44a72d3d3$export$d31000d36961d6c2}),(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$8c347812506d5ac9,{show:r,children:"Loading..."})]}):null},$425e92a44a72d3d3$export$2206531ad8592d57=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
640
+ `),$985a60451d015e23$export$b38a2fd24b22fb35=e=>{let t=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.pullEditorChanges),r=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.currentFileIndex),[a,o]=(0,$fmhGi$react.useState)(!0);(0,$fmhGi$react.useEffect)(()=>{o(!0),setTimeout(()=>{o(!1)},1600)},[r]);let{file:$}=e;return $?"audio"===$.type?(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$10efbd348f877f87,{children:(0,$fmhGi$reactjsxruntime.jsx)("audio",{src:$.file,controls:!0})}):(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$reactjsxruntime.Fragment,{children:[(0,$fmhGi$reactjsxruntime.jsx)($927ea3f966266523$export$7cda8d932e2f33c0,{...e,onChange:e=>{t()},editorState:$.file||$985a60451d015e23$export$d31000d36961d6c2}),(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$8c347812506d5ac9,{show:a,children:"Loading..."})]}):null},$985a60451d015e23$export$2206531ad8592d57=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
641
641
  height: 2rem;
642
642
  display: flex;
643
643
  align-items: center;
644
644
  background: ${({theme:e})=>e.colors.elevation2};
645
- `),$425e92a44a72d3d3$export$3e41faf802a29e71=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
645
+ `),$985a60451d015e23$export$3e41faf802a29e71=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
646
646
  display: flex;
647
647
  align-items: center;
648
648
  cursor: pointer;
@@ -653,13 +653,13 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
653
653
  border-right: 1px solid ${({theme:e})=>e.colors.elevation1};
654
654
 
655
655
  input {
656
- color: ${({theme:e,active:a})=>a?e.colors.whitePrimary:e.colors.highlight1};
656
+ color: ${({theme:e,active:t})=>t?e.colors.whitePrimary:e.colors.highlight1};
657
657
 
658
658
  &:not([readonly]):focus {
659
659
  background-color: ${({theme:e})=>e.colors.elevation1};
660
660
  }
661
661
  }
662
- `),$425e92a44a72d3d3$export$61e5b3c7bace77b8=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled).div`
662
+ `),$985a60451d015e23$export$61e5b3c7bace77b8=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled).div`
663
663
  display: flex;
664
664
  align-items: center;
665
665
  height: 100%;
@@ -670,10 +670,10 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
670
670
  &:hover {
671
671
  color: ${({theme:e})=>e.colors.whitePrimary};
672
672
  }
673
- `),$425e92a44a72d3d3$export$3aef34186a092045=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsfa6.FaPlus)`
673
+ `),$985a60451d015e23$export$3aef34186a092045=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsfa6.FaPlus)`
674
674
  height: 40%;
675
675
  width: auto;
676
- `),$425e92a44a72d3d3$export$cae179f078f4b4a4=(0,$9m4Pa$emotionreact.withTheme)($parcel$interopDefault($9m4Pa$emotionstyled)($9m4Pa$reacticonsmd.MdClose)`
676
+ `),$985a60451d015e23$export$cae179f078f4b4a4=(0,$fmhGi$emotionreact.withTheme)($parcel$interopDefault($fmhGi$emotionstyled)($fmhGi$reacticonsmd.MdClose)`
677
677
  height: 70%;
678
678
  width: auto;
679
679
  cursor: pointer;
@@ -681,7 +681,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
681
681
  &:hover {
682
682
  color: ${({theme:e})=>e.colors.whitePrimary};
683
683
  }
684
- `),$425e92a44a72d3d3$var$generateId=()=>(0,$9m4Pa$nanoid.nanoid)(),$425e92a44a72d3d3$var$generateEmptyFile=()=>({file:$425e92a44a72d3d3$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$425e92a44a72d3d3$var$generateId()}),$425e92a44a72d3d3$export$86fbec116b87613f=({...e})=>{let{projectState:a,theme:t}=e,r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.currentFileIndex),o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),c=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project),n=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setProject),i=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getProject),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.updateFileName),l=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addFile),s=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.deleteFile),f=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.syncEditorWithCurrentFile),p=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setEditorState);$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.pullEditorChanges);let[m,u]=(0,$9m4Pa$react.useState)(!1);return(0,$9m4Pa$react.useEffect)(()=>{n(a||{files:[$425e92a44a72d3d3$var$generateEmptyFile()]});let e=a?.files[0];e?.file&&e?.type!=="audio"&&p(e.file)},[a]),(0,$9m4Pa$react.useEffect)(()=>{let e=async(...e)=>{let a=new Request(...e),t=i().files,r=a.url.replace("project://",""),o=t.find(({id:e})=>e===r);return o?$c1d6493745b51d4a$export$e698b79c63b74136(o)?new Response(JSON.stringify(o.file??null)):$c1d6493745b51d4a$export$31c2336f657dc59f(o)?fetch(o.file):new Response(null):new Response(`File not found: ${a.url}`,{status:404})};return(0,$9m4Pa$webnoisefetch.registerFetcher)("project://*",e),()=>{}},[i]),(0,$9m4Pa$react.useEffect)(()=>{f()},[r,f]),(0,$9m4Pa$reactjsxruntime.jsxs)($9m4Pa$emotionreact.ThemeProvider,{theme:t||$085a27af3d5bf051$export$2e2bcd8739ae039,children:[(0,$9m4Pa$reactjsxruntime.jsx)($9m4Pa$emotionreact.Global,{styles:(0,$9m4Pa$emotionreact.css)`
684
+ `),$985a60451d015e23$var$generateId=()=>(0,$fmhGi$nanoid.nanoid)(),$985a60451d015e23$var$generateEmptyFile=()=>({file:$985a60451d015e23$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$985a60451d015e23$var$generateId()}),$985a60451d015e23$export$86fbec116b87613f=({...e})=>{let{projectState:t,theme:r}=e,a=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.currentFileIndex),o=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),i=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.project),d=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setProject),c=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.getProject),n=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.updateFileName),l=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.addFile),s=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.deleteFile),f=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.syncEditorWithCurrentFile),p=$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.setEditorState);$7d1a5bdfd7b5aa4a$export$2e2bcd8739ae039(e=>e.pullEditorChanges);let[h,m]=(0,$fmhGi$react.useState)(!1);return(0,$fmhGi$react.useEffect)(()=>{d(t||{files:[$985a60451d015e23$var$generateEmptyFile()]});let e=t?.files[0];e?.file&&e?.type!=="audio"&&p(e.file)},[t]),(0,$fmhGi$react.useEffect)(()=>{let e=async(...e)=>{let t=new Request(...e),r=c().files,a=t.url.replace("project://",""),o=r.find(({id:e})=>e===a);return o?$4f5dab380e6c5337$export$e698b79c63b74136(o)?new Response(JSON.stringify(o.file??null)):$4f5dab380e6c5337$export$31c2336f657dc59f(o)?fetch(o.file):new Response(null):new Response(`File not found: ${t.url}`,{status:404})};return(0,$fmhGi$webnoisefetch.registerFetcher)("project://*",e),()=>{}},[c]),(0,$fmhGi$react.useEffect)(()=>{f()},[a,f]),(0,$fmhGi$reactjsxruntime.jsxs)($fmhGi$emotionreact.ThemeProvider,{theme:r||$92db495027db752c$export$2e2bcd8739ae039,children:[(0,$fmhGi$reactjsxruntime.jsx)($fmhGi$emotionreact.Global,{styles:(0,$fmhGi$emotionreact.css)`
685
685
  :root {
686
686
  --leva-colors-elevation1: #292d39;
687
687
  --leva-colors-elevation2: #181c20;
@@ -738,5 +738,5 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$9m4Pa$reactjsxruntime=require("re
738
738
  --leva-fontWeights-folder: normal;
739
739
  --leva-fontWeights-button: normal;
740
740
  }
741
- `}),(0,$9m4Pa$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$6cd5d5c1dae69a36,{onDragOver:e=>{e.preventDefault(),e.stopPropagation(),u(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),u(!1)},onDrop:e=>{e.preventDefault(),e.stopPropagation(),u(!1),Array.from(e.dataTransfer.files).forEach(async e=>{if("application/json"===e.type){let a=JSON.parse(await e.text());if(a.files&&a.files.length){if(!window.confirm("This action will replace your current project. Continue?"))return;n(a),$(0),f();return}l({...$425e92a44a72d3d3$var$generateEmptyFile(),file:{...a,controlPanel:{...$425e92a44a72d3d3$export$d31000d36961d6c2.controlPanel,...a.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let a=await $0c1a6d299c94cfbd$export$25df2e315be8e003(e);l({type:"audio",id:`audio-file-${+new Date}`,name:e.name,file:a});return}console.error("Unsupported file type",e)})},children:[(0,$9m4Pa$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$2206531ad8592d57,{children:[c.files.map((e,a)=>(0,$9m4Pa$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$3e41faf802a29e71,{onClick:()=>{$(a)},active:a===r,children:[(0,$9m4Pa$reactjsxruntime.jsx)($aa49bccfd9ae8480$export$2e2bcd8739ae039,{onChange:e=>d(a,e),value:e.name||"Unnamed"}),(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&s(a)}})]},a)),(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$61e5b3c7bace77b8,{onClick:()=>{l($425e92a44a72d3d3$var$generateEmptyFile()),$(c.files.length)},children:(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$3aef34186a092045,{})})]}),(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$8d546ef2006cd0a2,{children:(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$b38a2fd24b22fb35,{file:o,...e})}),m&&(0,$9m4Pa$reactjsxruntime.jsx)($425e92a44a72d3d3$export$6bc5189622b1f4ec,{children:"Drop file(s) to upload to the project"})]})]})};var $425e92a44a72d3d3$export$2e2bcd8739ae039=$425e92a44a72d3d3$export$86fbec116b87613f;
741
+ `}),(0,$fmhGi$reactjsxruntime.jsxs)($985a60451d015e23$export$6cd5d5c1dae69a36,{onDragOver:e=>{e.preventDefault(),e.stopPropagation(),m(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),m(!1)},onDrop:e=>{e.preventDefault(),e.stopPropagation(),m(!1),Array.from(e.dataTransfer.files).forEach(async e=>{if("application/json"===e.type){let t=JSON.parse(await e.text());if(t.files&&t.files.length){if(!window.confirm("This action will replace your current project. Continue?"))return;d(t),$(0),f();return}l({...$985a60451d015e23$var$generateEmptyFile(),file:{...t,controlPanel:{...$985a60451d015e23$export$d31000d36961d6c2.controlPanel,...t.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let t=await $81158361350173a6$export$25df2e315be8e003(e);l({type:"audio",id:`audio-file-${+new Date}`,name:e.name,file:t});return}console.error("Unsupported file type",e)})},children:[(0,$fmhGi$reactjsxruntime.jsxs)($985a60451d015e23$export$2206531ad8592d57,{children:[i.files.map((e,t)=>(0,$fmhGi$reactjsxruntime.jsxs)($985a60451d015e23$export$3e41faf802a29e71,{onClick:()=>{$(t)},active:t===a,children:[(0,$fmhGi$reactjsxruntime.jsx)($35ac08ca6453b68a$export$2e2bcd8739ae039,{onChange:e=>n(t,e),value:e.name||"Unnamed"}),(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&s(t)}})]},t)),(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$61e5b3c7bace77b8,{onClick:()=>{l($985a60451d015e23$var$generateEmptyFile()),$(i.files.length)},children:(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$3aef34186a092045,{})})]}),(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$8d546ef2006cd0a2,{children:(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$b38a2fd24b22fb35,{file:o,...e})}),h&&(0,$fmhGi$reactjsxruntime.jsx)($985a60451d015e23$export$6bc5189622b1f4ec,{children:"Drop file(s) to upload to the project"})]})]})};var $985a60451d015e23$export$2e2bcd8739ae039=$985a60451d015e23$export$86fbec116b87613f;
742
742
  //# sourceMappingURL=main.js.map