@web-noise/core 0.0.15 → 0.0.16-alpha.2
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/cjs/components.js +23 -18
- package/dist/cjs/components.js.map +1 -1
- package/dist/esm/components.js +57 -52
- package/dist/esm/components.js.map +1 -1
- package/dist/main.js +91 -86
- package/dist/main.js.map +1 -1
- package/dist/module.js +76 -71
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +14 -9
- package/dist/types.d.ts.map +1 -1
- package/package.json +16 -22
package/dist/cjs/components.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("react/jsx-runtime"),$edje1$emotionstyled=require("@emotion/styled"),$edje1$react=require("react"),$edje1$reactdom=require("react-dom"),$edje1$reacticonsmd=require("react-icons/md"),$edje1$emotionreact=require("@emotion/react"),$edje1$nanoid=require("nanoid"),$edje1$reacticonsfa6=require("react-icons/fa6"),$edje1$webnoisefetch=require("@web-noise/fetch"),$edje1$
|
|
1
|
+
var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("react/jsx-runtime"),$edje1$emotionstyled=require("@emotion/styled"),$edje1$react=require("react"),$edje1$reactdom=require("react-dom"),$edje1$reacticonsmd=require("react-icons/md"),$edje1$emotionreact=require("@emotion/react"),$edje1$nanoid=require("nanoid"),$edje1$reacticonsfa6=require("react-icons/fa6"),$edje1$webnoisefetch=require("@web-noise/fetch"),$edje1$xyflowreact=require("@xyflow/react"),$edje1$zustand=require("zustand"),$edje1$webnoisepatch=require("@web-noise/patch"),$edje1$jsondiffpatch=require("jsondiffpatch"),$edje1$emotioncss=require("@emotion/css");require("@xyflow/react/dist/style.css");var $edje1$reactcontexify=require("react-contexify");require("react-contexify/dist/ReactContexify.css");var $edje1$hotkeysjs=require("hotkeys-js"),$edje1$reactfiledrop=require("react-file-drop"),$edje1$reacticonsfa=require("react-icons/fa"),$edje1$reresizable=require("re-resizable"),$edje1$reactgridlayout=require("react-grid-layout");require("react-grid-layout/css/styles.css");var $edje1$reacticonsai=require("react-icons/ai"),$edje1$reacticonsrx=require("react-icons/rx"),$edje1$reactmoderndrawer=require("react-modern-drawer");require("react-modern-drawer/dist/index.css");var $edje1$marked=require("marked"),$edje1$usedebounce=require("use-debounce"),$edje1$rcslider=require("rc-slider");require("rc-slider/assets/index.css");var $edje1$CanvasSpliner=require("CanvasSpliner");function $parcel$exportWildcard(e,t){return Object.keys(t).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[r]}})}),e}function $parcel$export(e,t,r,o){Object.defineProperty(e,t,{get:r,set:o,enumerable:!0,configurable:!0})}function $parcel$interopDefault(e){return e&&e.__esModule?e.default:e}var $1bd32632331c0292$exports={};$parcel$export($1bd32632331c0292$exports,"Modal",()=>$714f7694528a0830$export$2b77a92f1a5ad772),$parcel$export($1bd32632331c0292$exports,"Checker",()=>$2482fab22d0d218d$export$8ecd240bc8faaeeb),$parcel$export($1bd32632331c0292$exports,"RadioGroup",()=>$e4cba61fc6db39ec$export$a98f0dcb43a68a25),$parcel$export($1bd32632331c0292$exports,"Input",()=>$c3feef27e7626a0b$export$f5b8910cec6cf069),$parcel$export($1bd32632331c0292$exports,"DropdownInput",()=>$82440d4d9612c9a6$export$7a40489edcbfb3a1),$parcel$export($1bd32632331c0292$exports,"ColorInput",()=>$1ecf1c618f2a6976$export$5a1d7ca0a925d9c2),$parcel$export($1bd32632331c0292$exports,"NumberInput",()=>$de15e28a46a5e4f6$export$6bf0cd3a219bbade),$parcel$export($1bd32632331c0292$exports,"Button",()=>$b477b1f58fa722c6$export$353f5b6fc5456de1),$parcel$export($1bd32632331c0292$exports,"Select",()=>$3398106214c7ffec$export$ef9b1a59e592288f),$parcel$export($1bd32632331c0292$exports,"Slider",()=>$a29e889f7811b6b4$export$472062a354075cee),$parcel$export($1bd32632331c0292$exports,"SplineEditor",()=>$c3462ff581704bcf$export$2bf7c2638a145e5c),$parcel$export($1bd32632331c0292$exports,"ConfigRowLabel",()=>$ffa36f8855926063$export$555ece15b74b7abc),$parcel$export($1bd32632331c0292$exports,"ConfigRowControl",()=>$ffa36f8855926063$export$ef9ca7b440c0032c),$parcel$export($1bd32632331c0292$exports,"ConfigRowSeparator",()=>$ffa36f8855926063$export$bd1dc14d6df7044e),$parcel$export($1bd32632331c0292$exports,"ConfigRow",()=>$ffa36f8855926063$export$d56900fc3755b916),$parcel$export($1bd32632331c0292$exports,"ConfigPanel",()=>$ffa36f8855926063$export$aac584ace4a7b830),$parcel$export($1bd32632331c0292$exports,"ConfigRowInner",()=>$ffa36f8855926063$export$edaba703bd8b8dfa);const $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;const $9bcd1fc54f3a4589$var$useTheme=()=>{let e=(0,$edje1$emotionreact.useTheme)();return{...$085a27af3d5bf051$export$2e2bcd8739ae039,...e}};var $9bcd1fc54f3a4589$export$2e2bcd8739ae039=$9bcd1fc54f3a4589$var$useTheme;const $714f7694528a0830$var$ModalOuter=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
2
2
|
position: fixed;
|
|
3
3
|
z-index: ${({theme:e})=>e.zIndex.modal};
|
|
4
4
|
width: 100%;
|
|
@@ -22,7 +22,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
22
22
|
top: 0.2rem;
|
|
23
23
|
right: 0.2rem;
|
|
24
24
|
cursor: pointer;
|
|
25
|
-
`,$714f7694528a0830$export$2b77a92f1a5ad772=({children:e,onClose:t,...r})=>{let o=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();return(0,$edje1$react.useEffect)(()=>{let e=e=>{"Escape"===e.key&&t?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[t]),(0,$edje1$reactdom.createPortal)((0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$var$ModalOuter,{theme:o,onClick:t,children:(0,$edje1$reactjsxruntime.jsxs)($714f7694528a0830$var$ModalInner,{...r,onClick:e=>{e.stopPropagation()},theme:o,children:[e,(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$var$ModalCloser,{theme:o,onClick:t})]})}),document.body)};var $714f7694528a0830$export$2e2bcd8739ae039=$714f7694528a0830$export$2b77a92f1a5ad772,$9cc889581bce45fb$exports={};$parcel$export($9cc889581bce45fb$exports,"DRAG_HANDLE_CLASS",()=>$9cc889581bce45fb$export$956b3cf15d7c363),$parcel$export($9cc889581bce45fb$exports,"DRAG_HANDLE_SELECTOR",()=>$9cc889581bce45fb$export$21d634b1d5d9bee3),$parcel$export($9cc889581bce45fb$exports,"CONTROL_PANEL_GRID_CONFIG",()=>$9cc889581bce45fb$export$9f05d3e6ade4c09e),$parcel$export($9cc889581bce45fb$exports,"PortType",()=>$9cc889581bce45fb$export$b0b7b95ee465c83c);const $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={}));const $012c17c7734a513e$var$generateNodeId=e=>{let t=+new Date+Math.floor(1e3*Math.random());return e?.type?`${e.type}-${t}`:t.toString()};var $012c17c7734a513e$export$2e2bcd8739ae039=$012c17c7734a513e$var$generateNodeId;const $d2a72ed9ff895ef3$var$nodesStateCreator=(e,t)=>({nodes:[],edges:[],onNodesChange:t=>{e(({nodes:e})=>({nodes:(0,$edje1$reactflow.applyNodeChanges)(t,e).map(e=>({dragHandle:$9cc889581bce45fb$export$21d634b1d5d9bee3,...e}))}))},onEdgesChange:t=>{e(({edges:e})=>({edges:(0,$edje1$reactflow.applyEdgeChanges)(t,e)}))},onConnect:t=>{e(({edges:e})=>({edges:(0,$edje1$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 $d2a72ed9ff895ef3$export$2e2bcd8739ae039=$d2a72ed9ff895ef3$var$nodesStateCreator;const $4b4f9714e387283c$var$cloneObject=e=>JSON.parse(JSON.stringify(e)),$4b4f9714e387283c$export$b1b92d12d1c2ae0e=(e,t)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:r=>{let{history:o}=t(),{maxHistoryLength:a,skipCollect:$}=o;$?e({history:{...o,skipCollect:!1}}):e(({history:e})=>{if(!e)return{};let{buffer:t,pointer:o}=e,$=t.slice(Math.max(o-a+1,0),o);return{history:{...e,buffer:[...$,r],pointer:Math.min(o+1,a)}}})},back:()=>{let{nodes:r,edges:o,controlPanel:a,history:$}=t(),{buffer:c,pointer:d}=$,n=c[d-1];if(!n)return;let i=$edje1$jsondiffpatch.reverse(n);if(!i)return;let l=$4b4f9714e387283c$var$cloneObject({nodes:r,edges:o,controlPanel:a});e({...$edje1$jsondiffpatch.patch(l,i),history:{...$,pointer:d-1,skipCollect:!0}})},forward:()=>{let{nodes:r,edges:o,controlPanel:a,history:$}=t(),{buffer:c,pointer:d}=$,n=c[d];if(!n)return;let i=$4b4f9714e387283c$var$cloneObject({nodes:r,edges:o,controlPanel:a});e({...$edje1$jsondiffpatch.patch(i,n),history:{...$,pointer:d+1,skipCollect:!0}})},clear:()=>{let{history:r}=t();e({history:{...r,buffer:[],pointer:0,skipCollect:!0}})}}}),$4b4f9714e387283c$var$COLLECT_CHANGES_DEBOUNCE_TIME=500,$4b4f9714e387283c$export$4e64751394766316=(e,t)=>{let r,o=$edje1$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)}),a=t();return(e,$)=>{e.currentFileIndex!==$.currentFileIndex&&t().history.clear(),clearTimeout(r),a||(a=$),r=setTimeout(()=>{let r=o.diff(a,e);a=null,r&&t().history.push(r)},500)}},$4b4f9714e387283c$var$history=e=>(t,r,o)=>{let a=$4b4f9714e387283c$export$4e64751394766316(t,r);return o.subscribe(a),e((...e)=>t(...e),r,o)};var $4b4f9714e387283c$export$2e2bcd8739ae039=$4b4f9714e387283c$var$history;const $2f2f376881d01fdf$export$e364ea0c1dfb25e5=(e,t)=>{let r=new Set(e.map(e=>e.id)),o=new Set(t.map(e=>e.id));return{added:t.filter(e=>!r.has(e.id)),removed:e.filter(e=>!o.has(e.id))}},$dd35487c97fbdded$export$62647b40ff8aed70=(e,t)=>({patch:(0,$edje1$webnoisepatch.createPatch)(),nodesState:{}}),$dd35487c97fbdded$var$audioPatch=e=>(t,r,o)=>{o.subscribe(async(e,t)=>{});let a=new Set,$={...r(),nodes:[],edges:[]};return e(async(...e)=>{let o=r(),[c]=e,d={...$,..."function"==typeof c?c({...$}):c},n=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.nodes,d.nodes),i=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.edges,d.edges);$=d;let l=n.added,s=i.added,f=i.removed,p=n.removed,{patch:u}=o;if(l.length){let e=u.registerAudioNodes(l);a.add(e),await e,a.delete(e)}if(!(s.length||f.length||p.length))return void t(...e);if(a.size)try{await Promise.all([...a.values()])}catch(e){console.log("some error",e)}s.length&&u.registerAudioConnections(s),f.length&&u.unregisterAudioConnections(f),p.length&&u.unregisterAudioNodes(p),t(...e)},r,o)};var $dd35487c97fbdded$export$2e2bcd8739ae039=$dd35487c97fbdded$var$audioPatch;const $c1d6493745b51d4a$export$e698b79c63b74136=e=>!("type"in e)||"patch"===e.type,$c1d6493745b51d4a$export$31c2336f657dc59f=e=>"audio"===e.type,$2c1440cf65b5bcde$var$projectStateCreator=(e,t)=>({project:{files:[]},setProject(t){e({project:t,currentFileIndex:0})},getProject:()=>t().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:r,updateFileContent:o,project:a}=t(),$=a.files[r];"audio"!==$.type&&o(r,{...$,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:r,project:o}=t(),a=o.files[e];"audio"===a.type?console.log("audio file. skipping"):r(a.file)},currentFileIndex:0,setCurrentFileIndex(r){let{currentFileIndex:o}=t();r!==o&&e({currentFileIndex:r})},updateFileContent(r,o){let{project:a}=t();e({project:{...a,files:a.files.map((e,t)=>t===r?{...e,...o}:e)}})},updateFileName(r,o){let{project:a}=t();e({project:{...a,files:a.files.map((e,t)=>t===r?{...e,name:o}:e)}})},addFile(r){let{project:o}=t(),a=[...o.files,r];e({project:{...o,files:a}})},deleteFile:r=>{let{project:o,currentFileIndex:a}=t();e({project:{...o,files:o.files.filter((e,t)=>r!==t)}}),r<=a&&e({currentFileIndex:Math.max(0,a-1)})}});var $2c1440cf65b5bcde$export$2e2bcd8739ae039=$2c1440cf65b5bcde$var$projectStateCreator;const $19f35bee633995ac$export$34c5bc865219488e=(...e)=>{let[t,r]=e;return{...$d2a72ed9ff895ef3$export$2e2bcd8739ae039(...e),...$4b4f9714e387283c$export$b1b92d12d1c2ae0e(...e),...$dd35487c97fbdded$export$62647b40ff8aed70(...e),...$2c1440cf65b5bcde$export$2e2bcd8739ae039(...e),setGraph:async({nodes:e,edges:t})=>{let{patch:o,createNodes:a,createEdges:$,setNodesAndEdges:c,nodes:d,edges:n}=r();c({nodes:[],edges:[]}),await a(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:o}=r(),{type:a,id:$,data:c}=e;if(void 0===a)throw Error(`node type is not defined for node: ${$}`);t({...e,data:{...c,config:{...o[a]?.defaultConfig,...c?.config}}})},removeNode:e=>r().removeNodes([e]),removeNodes:e=>{let{edges:o,nodes:a,onNodesDelete:$,removeEdges:c,removeNodesFromControlPanel:d}=r(),n=e.map(({id:e})=>e),i=[...e,...a.filter(({parentNode:e})=>e&&n.includes(e))];d(i),c((0,$edje1$reactflow.getConnectedEdges)(i,o)),$(i);let l=i.map(({id:e})=>e);t({nodes:a.filter(({id:e})=>!l.includes(e))})},removeEdges:e=>{let{edges:o,onEdgesDelete:a}=r(),$=e.map(({id:e})=>e);a(e),t({edges:o.filter(({id:e})=>!$.includes(e))})},createEdges:e=>{let{patch:t,edges:o,setEdges:a}=r();a(e)},onConnect:async e=>{let{edges:t,createEdges:o}=r();o((0,$edje1$reactflow.addEdge)(e,t))},onEdgesDelete:e=>{let{patch:t}=r()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:t,patch:o}=r();t(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:o}=r();t({plugins:e});let a=e.reduce((e,t)=>({...e,...t.components.reduce((e,t)=>({...e,[t.type]:t}),{})}),{}),$=Object.keys(a).reduce((e,t)=>({...e,[t]:a[t].node}),{}),c=Object.keys(a).reduce((e,t)=>({...e,[t]:a[t].audioNode}),{});(0,$edje1$webnoisepatch.setAudioNodeTypes)(c),o($),t(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...a}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{t(({config:t})=>({config:{...t,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:t,viewport:o}=r();return{...e(),controlPanel:t,viewport:o}},setEditorState:async({nodes:e,edges:o,controlPanel:a,viewport:$})=>{let{setGraph:c}=r();await c({nodes:e,edges:o}),await new Promise(e=>setTimeout(e,1e3)),t({controlPanel:a,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:o}=r(),a=e.filter(({selected:e})=>e),$=t.filter(({selected:e})=>e);a.length&&o({nodes:a,edges:$})},pasteBuffer:(e=0,o=0)=>{let{copyBuffer:a,createNodes:$,setEdges:c,nodes:d,edges:n}=r(),{nodes:i,edges:l}=a;if(!i.length)return;t({nodes:d.map(e=>({...e,selected:!1}))});let s=i.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-o,{nodes:u,mapping:b}=i.reduce((e,t)=>{let r=$012c17c7734a513e$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:{}});$(u);let h=l.map(e=>{let t=b[e.source]||e.source,r=b[e.target]||e.target;return{...e,id:e.id.replace(e.source,t).replace(e.target,r),source:t,target:r,selected:!0}});c([...n.map(e=>({...e,selected:!1})),...h])},getControlPanelNode:e=>{let{nodesConfiguration:t}=r(),{type:o}=e;if(!o)return null;let a=t[o]?.controlPanelNode;return a||(console.error(`could not find node for type ${o}`),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:o}=r(),a=e.type?o[e.type]?.defaultConfig:{},{height:$}=a?.size||{},c={id:e.id,...$?{height:$/$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight}:{}};t(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,c]}}))},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})}},$19f35bee633995ac$var$useStore=(0,$edje1$zustand.create)($dd35487c97fbdded$export$2e2bcd8739ae039($4b4f9714e387283c$export$2e2bcd8739ae039($19f35bee633995ac$export$34c5bc865219488e)));var $19f35bee633995ac$export$2e2bcd8739ae039=$19f35bee633995ac$var$useStore;(0,$edje1$emotioncss.injectGlobal)`
|
|
25
|
+
`,$714f7694528a0830$export$2b77a92f1a5ad772=({children:e,onClose:t,...r})=>{let o=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();return(0,$edje1$react.useEffect)(()=>{let e=e=>{"Escape"===e.key&&t?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[t]),(0,$edje1$reactdom.createPortal)((0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$var$ModalOuter,{theme:o,onClick:t,children:(0,$edje1$reactjsxruntime.jsxs)($714f7694528a0830$var$ModalInner,{...r,onClick:e=>{e.stopPropagation()},theme:o,children:[e,(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$var$ModalCloser,{theme:o,onClick:t})]})}),document.body)};var $714f7694528a0830$export$2e2bcd8739ae039=$714f7694528a0830$export$2b77a92f1a5ad772,$9cc889581bce45fb$exports={};$parcel$export($9cc889581bce45fb$exports,"DRAG_HANDLE_CLASS",()=>$9cc889581bce45fb$export$956b3cf15d7c363),$parcel$export($9cc889581bce45fb$exports,"DRAG_HANDLE_SELECTOR",()=>$9cc889581bce45fb$export$21d634b1d5d9bee3),$parcel$export($9cc889581bce45fb$exports,"CONTROL_PANEL_GRID_CONFIG",()=>$9cc889581bce45fb$export$9f05d3e6ade4c09e),$parcel$export($9cc889581bce45fb$exports,"PortType",()=>$9cc889581bce45fb$export$b0b7b95ee465c83c);const $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={}));const $012c17c7734a513e$var$generateNodeId=e=>{let t=+new Date+Math.floor(1e3*Math.random());return e?.type?`${e.type}-${t}`:t.toString()};var $012c17c7734a513e$export$2e2bcd8739ae039=$012c17c7734a513e$var$generateNodeId;const $d2a72ed9ff895ef3$var$nodesStateCreator=(e,t)=>({nodes:[],edges:[],onNodesChange:t=>{e(({nodes:e})=>({nodes:(0,$edje1$xyflowreact.applyNodeChanges)(t,e).map(e=>({dragHandle:$9cc889581bce45fb$export$21d634b1d5d9bee3,...e,data:{label:"unknown",...e.data}}))}))},onEdgesChange:t=>{e(({edges:e})=>({edges:(0,$edje1$xyflowreact.applyEdgeChanges)(t,e)}))},onConnect:t=>{e(({edges:e})=>({edges:(0,$edje1$xyflowreact.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 $d2a72ed9ff895ef3$export$2e2bcd8739ae039=$d2a72ed9ff895ef3$var$nodesStateCreator;const $4b4f9714e387283c$var$cloneObject=e=>JSON.parse(JSON.stringify(e)),$4b4f9714e387283c$export$b1b92d12d1c2ae0e=(e,t)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:r=>{let{history:o}=t(),{maxHistoryLength:a,skipCollect:$}=o;$?e({history:{...o,skipCollect:!1}}):e(({history:e})=>{if(!e)return{};let{buffer:t,pointer:o}=e,$=t.slice(Math.max(o-a+1,0),o);return{history:{...e,buffer:[...$,r],pointer:Math.min(o+1,a)}}})},back:()=>{let{nodes:r,edges:o,controlPanel:a,history:$}=t(),{buffer:c,pointer:d}=$,n=c[d-1];if(!n)return;let i=$edje1$jsondiffpatch.reverse(n);if(!i)return;let l=$4b4f9714e387283c$var$cloneObject({nodes:r,edges:o,controlPanel:a});e({...$edje1$jsondiffpatch.patch(l,i),history:{...$,pointer:d-1,skipCollect:!0}})},forward:()=>{let{nodes:r,edges:o,controlPanel:a,history:$}=t(),{buffer:c,pointer:d}=$,n=c[d];if(!n)return;let i=$4b4f9714e387283c$var$cloneObject({nodes:r,edges:o,controlPanel:a});e({...$edje1$jsondiffpatch.patch(i,n),history:{...$,pointer:d+1,skipCollect:!0}})},clear:()=>{let{history:r}=t();e({history:{...r,buffer:[],pointer:0,skipCollect:!0}})}}}),$4b4f9714e387283c$var$COLLECT_CHANGES_DEBOUNCE_TIME=500,$4b4f9714e387283c$export$4e64751394766316=(e,t)=>{let r,o=$edje1$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)}),a=t();return(e,$)=>{e.currentFileIndex!==$.currentFileIndex&&t().history.clear(),clearTimeout(r),a||(a=$),r=setTimeout(()=>{let r=o.diff(a,e);a=null,r&&t().history.push(r)},500)}},$4b4f9714e387283c$var$history=e=>(t,r,o)=>{let a=$4b4f9714e387283c$export$4e64751394766316(t,r);return o.subscribe(a),e((...e)=>t(...e),r,o)};var $4b4f9714e387283c$export$2e2bcd8739ae039=$4b4f9714e387283c$var$history;const $2f2f376881d01fdf$export$e364ea0c1dfb25e5=(e,t)=>{let r=new Set(e.map(e=>e.id)),o=new Set(t.map(e=>e.id));return{added:t.filter(e=>!r.has(e.id)),removed:e.filter(e=>!o.has(e.id))}},$dd35487c97fbdded$export$62647b40ff8aed70=(e,t)=>({patch:(0,$edje1$webnoisepatch.createPatch)(),nodesState:{}}),$dd35487c97fbdded$var$audioPatch=e=>(t,r,o)=>{o.subscribe(async(e,t)=>{});let a=new Set,$={...r(),nodes:[],edges:[]};return e(async(...e)=>{let o=r(),[c]=e,d={...$,..."function"==typeof c?c({...$}):c},n=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.nodes,d.nodes),i=$2f2f376881d01fdf$export$e364ea0c1dfb25e5($.edges,d.edges);$=d;let l=n.added,s=i.added,f=i.removed,p=n.removed,{patch:b}=o;if(l.length){let e=b.registerAudioNodes(l);a.add(e),await e,a.delete(e)}if(!(s.length||f.length||p.length))return void t(...e);if(a.size)try{await Promise.all([...a.values()])}catch(e){console.log("some error",e)}s.length&&b.registerAudioConnections(s),f.length&&b.unregisterAudioConnections(f),p.length&&b.unregisterAudioNodes(p),t(...e)},r,o)};var $dd35487c97fbdded$export$2e2bcd8739ae039=$dd35487c97fbdded$var$audioPatch;const $c1d6493745b51d4a$export$e698b79c63b74136=e=>!("type"in e)||"patch"===e.type,$c1d6493745b51d4a$export$31c2336f657dc59f=e=>"audio"===e.type,$2c1440cf65b5bcde$var$projectStateCreator=(e,t)=>({project:{files:[]},setProject(t){e({project:t,currentFileIndex:0})},getProject:()=>t().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:r,updateFileContent:o,project:a}=t(),$=a.files[r];"audio"!==$.type&&o(r,{...$,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:r,project:o}=t(),a=o.files[e];"audio"===a.type?console.log("audio file. skipping"):r(a.file)},currentFileIndex:0,setCurrentFileIndex(r){let{currentFileIndex:o}=t();r!==o&&e({currentFileIndex:r})},updateFileContent(r,o){let{project:a}=t();e({project:{...a,files:a.files.map((e,t)=>t===r?{...e,...o}:e)}})},updateFileName(r,o){let{project:a}=t();e({project:{...a,files:a.files.map((e,t)=>t===r?{...e,name:o}:e)}})},addFile(r){let{project:o}=t(),a=[...o.files,r];e({project:{...o,files:a}})},deleteFile:r=>{let{project:o,currentFileIndex:a}=t();e({project:{...o,files:o.files.filter((e,t)=>r!==t)}}),r<=a&&e({currentFileIndex:Math.max(0,a-1)})}});var $2c1440cf65b5bcde$export$2e2bcd8739ae039=$2c1440cf65b5bcde$var$projectStateCreator;const $19f35bee633995ac$export$34c5bc865219488e=(...e)=>{let[t,r]=e;return{...$d2a72ed9ff895ef3$export$2e2bcd8739ae039(...e),...$4b4f9714e387283c$export$b1b92d12d1c2ae0e(...e),...$dd35487c97fbdded$export$62647b40ff8aed70(...e),...$2c1440cf65b5bcde$export$2e2bcd8739ae039(...e),setGraph:async({nodes:e,edges:t})=>{let{patch:o,createNodes:a,createEdges:$,setNodesAndEdges:c,nodes:d,edges:n}=r();c({nodes:[],edges:[]}),await a(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:o}=r(),{type:a,id:$,data:c}=e;if(void 0===a)throw Error(`node type is not defined for node: ${$}`);t({...e,data:{...c,config:{...o[a]?.defaultConfig,...c?.config}}})},removeNode:e=>r().removeNodes([e]),removeNodes:e=>{let{edges:o,nodes:a,onNodesDelete:$,removeEdges:c,removeNodesFromControlPanel:d}=r(),n=e.map(({id:e})=>e),i=[...e,...a.filter(({parentId:e})=>e&&n.includes(e))];d(i),c((0,$edje1$xyflowreact.getConnectedEdges)(i,o)),$(i);let l=i.map(({id:e})=>e);t({nodes:a.filter(({id:e})=>!l.includes(e))})},removeEdges:e=>{let{edges:o,onEdgesDelete:a}=r(),$=e.map(({id:e})=>e);a(e),t({edges:o.filter(({id:e})=>!$.includes(e))})},createEdges:e=>{let{patch:t,edges:o,setEdges:a}=r();a(e)},onConnect:async e=>{let{edges:t,createEdges:o}=r();o((0,$edje1$xyflowreact.addEdge)(e,t))},onEdgesDelete:e=>{let{patch:t}=r()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:t,patch:o}=r();t(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:o}=r();t({plugins:e});let a=e.reduce((e,t)=>({...e,...t.components.reduce((e,t)=>({...e,[t.type]:t}),{})}),{}),$=Object.keys(a).reduce((e,t)=>({...e,[t]:a[t].node}),{}),c=Object.keys(a).reduce((e,t)=>({...e,[t]:a[t].audioNode}),{});(0,$edje1$webnoisepatch.setAudioNodeTypes)(c),o($),t(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...a}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{t(({config:t})=>({config:{...t,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:t,viewport:o}=r();return{...e(),controlPanel:t,viewport:o}},setEditorState:async({nodes:e,edges:o,controlPanel:a,viewport:$})=>{let{setGraph:c}=r();await c({nodes:e,edges:o}),await new Promise(e=>setTimeout(e,1e3)),t({controlPanel:a,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:o}=r(),a=e.filter(({selected:e})=>e),$=t.filter(({selected:e})=>e);a.length&&o({nodes:a,edges:$})},pasteBuffer:(e=0,o=0)=>{let{copyBuffer:a,createNodes:$,setEdges:c,nodes:d,edges:n}=r(),{nodes:i,edges:l}=a;if(!i.length)return;t({nodes:d.map(e=>({...e,selected:!1}))});let s=i.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-o,{nodes:b,mapping:u}=i.reduce((e,t)=>{let r=$012c17c7734a513e$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:{}});$(b);let x=l.map(e=>{let t=u[e.source]||e.source,r=u[e.target]||e.target;return{...e,id:e.id.replace(e.source,t).replace(e.target,r),source:t,target:r,selected:!0}});c([...n.map(e=>({...e,selected:!1})),...x])},getControlPanelNode:e=>{let{nodesConfiguration:t}=r(),{type:o}=e;if(!o)return null;let a=t[o]?.controlPanelNode;return a||(console.error(`could not find node for type ${o}`),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:o}=r(),a=e.type?o[e.type]?.defaultConfig:{},{height:$}=a?.size||{},c={id:e.id,...$?{height:$/$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight}:{}};t(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,c]}}))},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})}},$19f35bee633995ac$var$useStore=(0,$edje1$zustand.create)($dd35487c97fbdded$export$2e2bcd8739ae039($4b4f9714e387283c$export$2e2bcd8739ae039($19f35bee633995ac$export$34c5bc865219488e)));var $19f35bee633995ac$export$2e2bcd8739ae039=$19f35bee633995ac$var$useStore;(0,$edje1$emotioncss.injectGlobal)`
|
|
26
26
|
.react-flow {
|
|
27
27
|
.react-flow__pane {
|
|
28
28
|
/* background: rgb(106 106 106); */
|
|
@@ -46,6 +46,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
46
46
|
.react-flow__node {
|
|
47
47
|
padding: 0;
|
|
48
48
|
width: auto;
|
|
49
|
+
box-sizing: content-box;
|
|
49
50
|
}
|
|
50
51
|
|
|
51
52
|
.react-flow__edge-path {
|
|
@@ -70,7 +71,11 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
70
71
|
} */
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
`;const $50d95f4d7f0f0ec0$export$ef9839ae55b8ba40=$parcel$interopDefault($edje1$emotionstyled)($edje1$reactcontexify.Item)``,$50d95f4d7f0f0ec0$export$
|
|
74
|
+
`;const $50d95f4d7f0f0ec0$export$ef9839ae55b8ba40=$parcel$interopDefault($edje1$emotionstyled)($edje1$reactcontexify.Item)``,$50d95f4d7f0f0ec0$export$6bf210ee186333a3=(0,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40)`
|
|
75
|
+
.react-contexify__item__content {
|
|
76
|
+
color: ${({theme:e})=>e.colors.error};
|
|
77
|
+
}
|
|
78
|
+
`),$50d95f4d7f0f0ec0$export$98eff9c5659394e3=$parcel$interopDefault($edje1$emotionstyled)($edje1$reactcontexify.Menu)`
|
|
74
79
|
background: ${({colors:e})=>e.elevation2};
|
|
75
80
|
padding: 0;
|
|
76
81
|
border-radius: 0;
|
|
@@ -211,7 +216,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
211
216
|
flex-grow: 1;
|
|
212
217
|
height: 100%;
|
|
213
218
|
overflow-y: scroll;
|
|
214
|
-
`,$e3515b1f3d198f31$var$AddNode=({isOpen:e,closeMenu:t,mousePosition:r})=>{let o=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),{screenToFlowPosition:a}=(0,$edje1$
|
|
219
|
+
`,$e3515b1f3d198f31$var$AddNode=({isOpen:e,closeMenu:t,mousePosition:r})=>{let o=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),{screenToFlowPosition:a}=(0,$edje1$xyflowreact.useReactFlow)(),{createNode:$}=$19f35bee633995ac$export$2e2bcd8739ae039(({createNode:e})=>({createNode:e})),[c,d]=(0,$edje1$react.useState)({}),n=(0,$edje1$react.useCallback)(({type:e})=>{let{x:o,y:c}=a(r);$({id:`${e}-${+new Date}`,type:e,data:{label:e},position:{x:o,y:c},targetPosition:$edje1$xyflowreact.Position.Left,sourcePosition:$edje1$xyflowreact.Position.Right}),t()},[r,a,$,t,r]);return e?(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:()=>{t(),d({})},children:(0,$edje1$reactjsxruntime.jsxs)($e3515b1f3d198f31$var$AddNodeWrapper,{theme:o,children:[(0,$edje1$reactjsxruntime.jsx)($48fe6874c0b2fbf7$export$2e2bcd8739ae039,{onChange:d,value:c}),(0,$edje1$reactjsxruntime.jsx)($e3515b1f3d198f31$var$PluginsPanel,{theme:o,children:(0,$edje1$reactjsxruntime.jsx)($9195c2794f928a1f$export$2e2bcd8739ae039,{filters:c,onTagClick:e=>{d(t=>({...t,tags:t.tags?.includes(e)?t.tags.filter(t=>t!==e):[...t.tags||[],e]}))},onComponentClick:e=>{n(e),d({})}})})]})}):null};var $e3515b1f3d198f31$export$2e2bcd8739ae039=$e3515b1f3d198f31$var$AddNode,$c112add0a92a5fbd$exports={};$parcel$export($c112add0a92a5fbd$exports,"useWorker",()=>$f64b59af4a41cb85$export$3a5757a785a34769),$parcel$export($c112add0a92a5fbd$exports,"useMessageChannel",()=>$fb25c037bce8ec96$export$1e86115ead375efc);const $f64b59af4a41cb85$export$3a5757a785a34769=e=>{let[t,r]=(0,$edje1$react.useState)(null);return(0,$edje1$react.useEffect)(()=>{let t=new Worker(e);return r(t),()=>{t?.terminate(),r(null)}},[]),t};var $f64b59af4a41cb85$export$2e2bcd8739ae039=$f64b59af4a41cb85$export$3a5757a785a34769;const $fb25c037bce8ec96$export$1e86115ead375efc=()=>{let[e,t]=(0,$edje1$react.useState)(null);return(0,$edje1$react.useEffect)(()=>{let e=new MessageChannel;return e.port2.start(),t(e),()=>{t(null),e.port2.close()}},[]),e};var $fb25c037bce8ec96$export$2e2bcd8739ae039=$fb25c037bce8ec96$export$1e86115ead375efc,$0c1a6d299c94cfbd$exports={};$parcel$export($0c1a6d299c94cfbd$exports,"setParameterValue",()=>$0c1a6d299c94cfbd$export$cd440e094f060920),$parcel$export($0c1a6d299c94cfbd$exports,"fileToBase64",()=>$0c1a6d299c94cfbd$export$25df2e315be8e003);const $0c1a6d299c94cfbd$export$cd440e094f060920=(e,t,r)=>{void 0!==t&&e.setValueAtTime(t,r.currentTime)},$0c1a6d299c94cfbd$export$25df2e315be8e003=e=>new Promise((t,r)=>{let o=new FileReader;o.readAsDataURL(e),o.onload=()=>t(o.result?.toString()||""),o.onerror=e=>r(e)});$parcel$exportWildcard($c112add0a92a5fbd$exports,$0c1a6d299c94cfbd$exports);const $c9cd418ce899f4ca$var$UploadAudioWrapper=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
215
220
|
display: flex;
|
|
216
221
|
align-items: center;
|
|
217
222
|
justify-content: center;
|
|
@@ -249,7 +254,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
249
254
|
height: 8rem;
|
|
250
255
|
`,$c9cd418ce899f4ca$var$FileUploadMessage=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
251
256
|
font-size: 2rem;
|
|
252
|
-
`,$c9cd418ce899f4ca$var$UploadAudio=({isOpen:e,closeMenu:t})=>{let r=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();$19f35bee633995ac$export$2e2bcd8739ae039(({setGraph:e})=>e),$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setEditorState);let o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addFile),a=(0,$edje1$react.useRef)(null),$=(0,$edje1$react.useCallback)(async e=>{let[r]=e||[],a=await $0c1a6d299c94cfbd$export$25df2e315be8e003(r);o({type:"audio",id:`audio-file-${+new Date}`,name:r.name,file:a}),t()},[o,t]);return e?(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:t,children:(0,$edje1$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$UploadAudioWrapper,{theme:r,children:[(0,$edje1$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:a,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{a.current?.click()},onDrop:e=>$(e),children:(0,$edje1$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$DropZoneInner,{theme:r,children:[(0,$edje1$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadIcon,{}),(0,$edje1$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $c9cd418ce899f4ca$export$2e2bcd8739ae039=$c9cd418ce899f4ca$var$UploadAudio;const $cd0ab85c52ef114c$export$d4cd258d01c03112="editor-menu",$cd0ab85c52ef114c$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$edje1$reactcontexify.useContextMenu)({id:$cd0ab85c52ef114c$export$d4cd258d01c03112});return{onContextMenu:e}},$cd0ab85c52ef114c$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),[r,o]=(0,$edje1$react.useState)({x:0,y:0}),[a,$]=(0,$edje1$react.useState)(!1),[c,d]=(0,$edje1$react.useState)(!1),n=(0,$edje1$react.useCallback)((e,t)=>{o({x:e,y:t}),$(!0)},[$]),i=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:l}=(0,$edje1$
|
|
257
|
+
`,$c9cd418ce899f4ca$var$UploadAudio=({isOpen:e,closeMenu:t})=>{let r=$9bcd1fc54f3a4589$export$2e2bcd8739ae039();$19f35bee633995ac$export$2e2bcd8739ae039(({setGraph:e})=>e),$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setEditorState);let o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addFile),a=(0,$edje1$react.useRef)(null),$=(0,$edje1$react.useCallback)(async e=>{let[r]=e||[],a=await $0c1a6d299c94cfbd$export$25df2e315be8e003(r);o({type:"audio",id:`audio-file-${+new Date}`,name:r.name,file:a}),t()},[o,t]);return e?(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:t,children:(0,$edje1$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$UploadAudioWrapper,{theme:r,children:[(0,$edje1$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:a,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{a.current?.click()},onDrop:e=>$(e),children:(0,$edje1$reactjsxruntime.jsxs)($c9cd418ce899f4ca$var$DropZoneInner,{theme:r,children:[(0,$edje1$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadIcon,{}),(0,$edje1$reactjsxruntime.jsx)($c9cd418ce899f4ca$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $c9cd418ce899f4ca$export$2e2bcd8739ae039=$c9cd418ce899f4ca$var$UploadAudio;const $cd0ab85c52ef114c$export$d4cd258d01c03112="editor-menu",$cd0ab85c52ef114c$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$edje1$reactcontexify.useContextMenu)({id:$cd0ab85c52ef114c$export$d4cd258d01c03112});return{onContextMenu:e}},$cd0ab85c52ef114c$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),[r,o]=(0,$edje1$react.useState)({x:0,y:0}),[a,$]=(0,$edje1$react.useState)(!1),[c,d]=(0,$edje1$react.useState)(!1),n=(0,$edje1$react.useCallback)((e,t)=>{o({x:e,y:t}),$(!0)},[$]),i=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:l}=(0,$edje1$xyflowreact.useReactFlow)(),s=(0,$edje1$react.useCallback)(e=>{let{x:t,y:r}=l(e);i(t,r)},[$,l]),f=$19f35bee633995ac$export$2e2bcd8739ae039(({clearGraph:e})=>e),p=(0,$edje1$react.useCallback)(()=>{window.confirm("This action will delete all nodes in this patch. Continue?")&&f()},[f]),b=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp),u=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.back),x=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.forward),h=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.pointer),m=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.history.buffer),j=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copySelectedItems),g=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodes),v=(0,$edje1$react.useMemo)(()=>g.filter(({selected:e})=>e),[g]),y=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copyBuffer);return(0,$edje1$xyflowreact.useReactFlow)(),(0,$edje1$react.useEffect)(()=>($parcel$interopDefault($edje1$hotkeysjs)("command+shift+a",()=>(n(200,50),!1)),$parcel$interopDefault($edje1$hotkeysjs)("shift+/",()=>(b(),!1)),$parcel$interopDefault($edje1$hotkeysjs)("command+z",()=>(u(),!1)),$parcel$interopDefault($edje1$hotkeysjs)("command+shift+z",()=>(x(),!1)),$parcel$interopDefault($edje1$hotkeysjs)("command+c",()=>(j(),!1)),$parcel$interopDefault($edje1$hotkeysjs)("command+v",()=>(s({x:200,y:50}),!1)),()=>{$parcel$interopDefault($edje1$hotkeysjs).unbind()}),[n,s]),(0,$edje1$reactjsxruntime.jsxs)($edje1$reactjsxruntime.Fragment,{children:[(0,$edje1$reactjsxruntime.jsx)($e3515b1f3d198f31$export$2e2bcd8739ae039,{isOpen:a,closeMenu:()=>$(!1),mousePosition:r}),(0,$edje1$reactjsxruntime.jsx)($c9cd418ce899f4ca$export$2e2bcd8739ae039,{isOpen:c,closeMenu:()=>d(!1)}),(0,$edje1$reactjsxruntime.jsxs)($50d95f4d7f0f0ec0$export$98eff9c5659394e3,{id:$cd0ab85c52ef114c$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:({triggerEvent:{clientX:e,clientY:t}})=>n(e,t),children:"Add Node (⌘+⇧+A)"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$6bf210ee186333a3,{onClick:p,children:"Delete All"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:()=>d(!0),children:"Upload Audio File"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:0===h,onClick:u,children:"Undo (⌘+z)"}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:h===m.length,onClick:x,children:"Redo (⌘+⇧+Z)"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:!v.length,onClick:j,children:"Copy Selected (⌘+c)"}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{disabled:!y.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:t}})=>s({x:e,y:t}),children:"Paste (⌘+v)"}),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),e.map((e,t)=>null===e?(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{},t):(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{children:e},t)),(0,$edje1$reactjsxruntime.jsx)($edje1$reactcontexify.Separator,{}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:b,children:"Help (⇧+?)"})]})]})};var $cd0ab85c52ef114c$export$2e2bcd8739ae039=$cd0ab85c52ef114c$var$EditorContextMenu;const $22b4690c38c8b941$export$d4cd258d01c03112="editor-node-menu",$22b4690c38c8b941$export$cbbbfb9fb15f3780=()=>{let{show:e}=(0,$edje1$reactcontexify.useContextMenu)({id:$22b4690c38c8b941$export$d4cd258d01c03112});return{onContextMenu:(0,$edje1$react.useCallback)((t,r)=>{t.stopPropagation(),e(t,{props:{node:r}})},[])}},$22b4690c38c8b941$var$NodeContextMenu=e=>{let t=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeNodes),o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.addNodeToControlPanel),a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),$=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.copy),c=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodesConfiguration),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.controlPanel.nodes),n=(0,$edje1$react.useCallback)(({props:e})=>!!e?.node.type&&!!d.find(({id:t})=>t===e.node.id),[d]),i=(0,$edje1$react.useCallback)(({props:e})=>{if(!e?.node.type)return!1;let t=c[e.node.type];return!!t?.controlPanelNode},[c]);return(0,$edje1$reactjsxruntime.jsx)($edje1$reactjsxruntime.Fragment,{children:(0,$edje1$reactjsxruntime.jsxs)($50d95f4d7f0f0ec0$export$98eff9c5659394e3,{id:$22b4690c38c8b941$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:e=>r([e.props.node]),children:"Delete Node (DEL)"}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{hidden:(...e)=>!i(...e)||n(...e),onClick:e=>o(e.props.node),children:"Add To Control Panel"}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{hidden:(...e)=>!i(...e)||!n(...e),onClick:e=>a(e.props.node),children:"Remove From Control Panel"}),(0,$edje1$reactjsxruntime.jsx)($50d95f4d7f0f0ec0$export$ef9839ae55b8ba40,{onClick:e=>$({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})};var $22b4690c38c8b941$export$2e2bcd8739ae039=$22b4690c38c8b941$var$NodeContextMenu;const $e0773c90edc6ed5f$var$useAudioNode=e=>$19f35bee633995ac$export$2e2bcd8739ae039(({patch:e})=>e).audioNodes.get(e);var $e0773c90edc6ed5f$export$2e2bcd8739ae039=$e0773c90edc6ed5f$var$useAudioNode;const $cdd180257ba7e9a4$var$useNode=e=>{let t=$19f35bee633995ac$export$2e2bcd8739ae039(({updateNodeData:e})=>e);return{updateNodeValues:(0,$edje1$react.useCallback)(r=>t(e,{values:r}),[e,t]),updateNodeConfig:(0,$edje1$react.useCallback)(r=>t(e,{config:r}),[e,t]),updateNodeLabel:(0,$edje1$react.useCallback)(r=>t(e,{label:r}),[e,t])}};var $cdd180257ba7e9a4$export$2e2bcd8739ae039=$cdd180257ba7e9a4$var$useNode;const $aa49bccfd9ae8480$export$5abe11f802ebd1f2=$parcel$interopDefault($edje1$emotionstyled).input`
|
|
253
258
|
width: 100%;
|
|
254
259
|
background: none;
|
|
255
260
|
border: none;
|
|
@@ -410,16 +415,16 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
410
415
|
`,$4c34e1ef7616f43c$export$a2d375858cc72119=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
411
416
|
position: relative;
|
|
412
417
|
padding: 5px 10px;
|
|
413
|
-
`,$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,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($edje1$
|
|
418
|
+
`,$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,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($edje1$xyflowreact.Handle,{shouldForwardProp:e=>"portType"!==e})`
|
|
414
419
|
--port-color: ${e=>{if(!e.portType)return e.theme.colors.highlight2;if(!Array.isArray(e.portType))return $4c34e1ef7616f43c$var$portColors[e.portType];{let t=e.portType.map(e=>$4c34e1ef7616f43c$var$portColors[e]);return`linear-gradient(0.25turn, ${t.join(", ")});`}}};
|
|
415
420
|
border-color: var(--port-color);
|
|
416
421
|
background: var(--port-color);
|
|
417
422
|
box-shadow: 0px 0px 0px 1px ${({theme:e})=>e.colors.elevation2} inset;
|
|
418
423
|
`),$4c34e1ef7616f43c$var$StyledInputHandle=(0,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($4c34e1ef7616f43c$var$StyledHandle)`
|
|
419
|
-
left:
|
|
420
|
-
`),$4c34e1ef7616f43c$export$9ea0feffc20ee81=({...e})=>(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$StyledInputHandle,{...e,type:"target",position:$edje1$
|
|
421
|
-
right:
|
|
422
|
-
`),$4c34e1ef7616f43c$export$496e5e1ee1696f64=e=>(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$222539e2a2fac4e0,{...e,type:"source",position:$edje1$
|
|
424
|
+
left: 0;
|
|
425
|
+
`),$4c34e1ef7616f43c$export$9ea0feffc20ee81=({...e})=>(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$StyledInputHandle,{...e,type:"target",position:$edje1$xyflowreact.Position.Left}),$4c34e1ef7616f43c$export$222539e2a2fac4e0=(0,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($4c34e1ef7616f43c$var$StyledHandle)`
|
|
426
|
+
right: 0;
|
|
427
|
+
`),$4c34e1ef7616f43c$export$496e5e1ee1696f64=e=>(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$222539e2a2fac4e0,{...e,type:"source",position:$edje1$xyflowreact.Position.Right}),$4c34e1ef7616f43c$export$7e0b3af1e60a3273=({className:e,...t})=>(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$1bdb8f2d1fe25c22,{...t,className:[e,$9cc889581bce45fb$export$956b3cf15d7c363].join(" ")}),$4c34e1ef7616f43c$var$useNodeManifest=e=>$19f35bee633995ac$export$2e2bcd8739ae039(t=>t.nodesConfiguration[e]),$4c34e1ef7616f43c$var$useConfigNode=e=>{let{configNode:t}=$4c34e1ef7616f43c$var$useNodeManifest(e);return{ConfigNode:t}},$4c34e1ef7616f43c$export$361064385d50ec44=e=>{let{id:t,children:r,selected:o,...a}=e,$=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),c=$19f35bee633995ac$export$2e2bcd8739ae039(({getNode:e})=>e),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodesConfiguration),[n,i]=(0,$edje1$react.useState)(!1),{info:l}=$4c34e1ef7616f43c$var$useNodeManifest(e.type),s=(0,$edje1$react.useMemo)(()=>d[e.type].resizable??!1,[d,e.type]),{updateNodeLabel:f,updateNodeConfig:p}=$cdd180257ba7e9a4$export$2e2bcd8739ae039(t),{data:b}=c(t)||{},u=$e0773c90edc6ed5f$export$2e2bcd8739ae039(t),{ConfigNode:x}=$4c34e1ef7616f43c$var$useConfigNode(a.type),[h,m]=(0,$edje1$react.useState)(!1);if(!u)return(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"can't find audio node"});if(u.loading)return(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"loading"});if(u.error)return(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$var$NodeErrorWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:["error: ",u.error.toString()]});if(!u.node)return(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$NodeLoaderWrapper,{className:$9cc889581bce45fb$export$956b3cf15d7c363,children:"can't find audio node"});let j=b?.config?.size,{node:{inputs:g,outputs:v}}=u;return(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$var$NodeWrapper,{children:[(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$7e0b3af1e60a3273,{children:[l&&(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$InfoIconWrapper,{onClickCapture:()=>i(!0)}),(0,$edje1$reactjsxruntime.jsx)($aa49bccfd9ae8480$export$2e2bcd8739ae039,{value:b?.label??"No Name",onChange:f}),x&&(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$var$SettingsIconWrapper,{onClickCapture:()=>m(e=>!e)})]}),(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$bfd3bd1fa283e3c6,{theme:$,children:[(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$f1afba0ff9ea1277,{children:g?Object.keys(g).map((e,t)=>(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$a2d375858cc72119,{children:[(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$9ea0feffc20ee81,{id:e,portType:g[e].type}),(0,$edje1$reactjsxruntime.jsx)("span",{children:e})]},t)):null}),(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$af4f9b41fc32ed9e,{children:v?Object.keys(v).map((e,t)=>(0,$edje1$reactjsxruntime.jsxs)($4c34e1ef7616f43c$export$a2d375858cc72119,{children:[(0,$edje1$reactjsxruntime.jsx)($4c34e1ef7616f43c$export$496e5e1ee1696f64,{id:e,portType:v[e].type}),(0,$edje1$reactjsxruntime.jsx)("span",{children:e})]},t)):null})]}),x&&h&&o?(0,$edje1$reactjsxruntime.jsx)(x,{...e,data:{label:"unknown",...e.data}}):s?(0,$edje1$reactjsxruntime.jsx)($edje1$reresizable.Resizable,{size:j,minWidth:180,minHeight:30,enable:{bottom:!0,bottomRight:!0,right:!0},onResizeStop:(e,t,r,o)=>{let a=j?{width:j.width+o.width,height:j.height+o.height}:r.getBoundingClientRect();p({...b?.config,size:a})},children:r}):r,(0,$edje1$reactjsxruntime.jsx)($e3d047fcd7257c33$export$2e2bcd8739ae039,{isOpen:n,type:e.type,onClose:()=>i(!1),node:u.node})]})},$223eae4e8448cdc7$export$86de09faaa70680d=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
423
428
|
width: 100%;
|
|
424
429
|
padding: 0.4rem 0;
|
|
425
430
|
white-space: nowrap;
|
|
@@ -526,7 +531,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
526
531
|
border-color: ${({theme:e})=>e.colors.whitePrimary};
|
|
527
532
|
border-width: 1px;
|
|
528
533
|
}
|
|
529
|
-
`,$f51093a35b5dffc7$var$ControlPanel=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),t=(0,$edje1$react.useRef)(null),r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodes),{show:o,nodes:a,size:$}=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.controlPanel),{width:c=200,height:d}=$,n=(0,$edje1$react.useMemo)(()=>{let e=a.map(({id:e})=>e);return r.filter(({id:t})=>e.includes(t))},[r,a]),i=$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),[u
|
|
534
|
+
`,$f51093a35b5dffc7$var$ControlPanel=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),t=(0,$edje1$react.useRef)(null),r=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.nodes),{show:o,nodes:a,size:$}=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.controlPanel),{width:c=200,height:d}=$,n=(0,$edje1$react.useMemo)(()=>{let e=a.map(({id:e})=>e);return r.filter(({id:t})=>e.includes(t))},[r,a]),i=$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),[b,u]=(0,$edje1$react.useState)(!0),x=(0,$edje1$react.useMemo)(()=>{let e=a.reduce((e,{height:t=$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight,x:r,y:o=0})=>{let a=o+t;return a>e?a:e},0);return a.map(({id:t,width:r,height:o,x:a,y:$})=>({i:t,w:r||$9cc889581bce45fb$export$9f05d3e6ade4c09e.cols,h:o||6,x:a??0,y:$??e}))},[a]);return n.length?(0,$edje1$reactjsxruntime.jsxs)($edje1$reactjsxruntime.Fragment,{children:[(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelIconWrapper,{theme:e,ref:t,onClick:i,children:(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsrx.RxDashboard,{})}),(0,$edje1$reactjsxruntime.jsxs)($parcel$interopDefault($edje1$reactmoderndrawer),{open:o,onClose:l,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$edje1$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$ControlPanelHeader,{theme:e,children:[(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelTitle,{children:"Control Panel"}),(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelIconsBar,{children:(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$CloseIconWrapper,{onClick:l,theme:e,children:(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsmd.MdClose,{})})})]}),(0,$edje1$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$ControlPanelWrapper,{children:[(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelSettings,{children:b?(0,$edje1$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$LockGridWrapper,{theme:e,onClick:()=>u(!1),children:[(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$edje1$reactjsxruntime.jsxs)($f51093a35b5dffc7$var$LockGridWrapper,{theme:e,onClick:()=>u(!0),children:[(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$edje1$reactjsxruntime.jsx)($edje1$reresizable.Resizable,{enable:{top:!1,right:!b,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:c,height:"auto"},onResizeStop:(e,t,r,o)=>{f({width:c+o.width,height:d+o.height})},children:(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelBody,{theme:e,children:(0,$edje1$reactjsxruntime.jsx)($parcel$interopDefault($edje1$reactgridlayout),{layout:x,className:"layout",cols:$9cc889581bce45fb$export$9f05d3e6ade4c09e.cols,rowHeight:$9cc889581bce45fb$export$9f05d3e6ade4c09e.rowHeight,width:c,margin:[0,0],isResizable:!b,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{s(e.map(({i:e,w:t,h:r,x:o,y:a})=>({id:e,width:t,height:r,x:o,y:a})))})},children:n.map(t=>(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$var$ControlPanelItemWrapper,{theme:e,children:(0,$edje1$reactjsxruntime.jsx)($c7af67f4f237a751$export$2e2bcd8739ae039,{node:t,showControls:!b,onDelete:p})},t.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 ### 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 ### 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## Rename node\n - Doubleclick the node title\n\n<br/>\n\n## Undo/Redo\n - `CMD+Z` to Undo / `CMD+SHIFT+Z` to Redo\n - Select **'Undo'**/**'Redo'** from the Edit menu\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<br/>\n\n## Rename file in the project\n - Doubleclick the tab title\n\n\n";const $c6cd2caeb5a5450d$var$MdPreview=(0,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled).div`
|
|
530
535
|
font-family: var(--leva-fonts-mono);
|
|
531
536
|
font-size: 0.7rem;
|
|
532
537
|
box-sizing: border-box;
|
|
@@ -597,7 +602,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
597
602
|
width: 100%;
|
|
598
603
|
box-sizing: border-box;
|
|
599
604
|
overflow: hidden;
|
|
600
|
-
`),$c6cd2caeb5a5450d$var$HelpModal=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.isHelpShown),t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return e?(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:()=>{t()},children:(0,$edje1$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$ModalContent,{children:(0,$edje1$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$MdPreview,{dangerouslySetInnerHTML:{__html:(0,$edje1$marked.marked)($parcel$interopDefault($73170d3dfa3cb4f9$exports))},onWheelCapture:e=>e.stopPropagation()})})}):null};var $c6cd2caeb5a5450d$export$2e2bcd8739ae039=$c6cd2caeb5a5450d$var$HelpModal;const $eabee671d6a9ae8e$export$78bddedbcf2939ac=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return(0,$edje1$reactjsxruntime.jsx)($edje1$reactjsxruntime.Fragment,{children:(0,$edje1$reactjsxruntime.jsx)($edje1$
|
|
605
|
+
`),$c6cd2caeb5a5450d$var$HelpModal=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.isHelpShown),t=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return e?(0,$edje1$reactjsxruntime.jsx)($714f7694528a0830$export$2e2bcd8739ae039,{onClose:()=>{t()},children:(0,$edje1$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$ModalContent,{children:(0,$edje1$reactjsxruntime.jsx)($c6cd2caeb5a5450d$var$MdPreview,{dangerouslySetInnerHTML:{__html:(0,$edje1$marked.marked)($parcel$interopDefault($73170d3dfa3cb4f9$exports))},onWheelCapture:e=>e.stopPropagation()})})}):null};var $c6cd2caeb5a5450d$export$2e2bcd8739ae039=$c6cd2caeb5a5450d$var$HelpModal;const $eabee671d6a9ae8e$export$78bddedbcf2939ac=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.toggleHelp);return(0,$edje1$reactjsxruntime.jsx)($edje1$reactjsxruntime.Fragment,{children:(0,$edje1$reactjsxruntime.jsx)($edje1$xyflowreact.ControlButton,{onClick:e,children:(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsfa.FaQuestion,{})})})},$761795227e3c2557$var$Layout=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
601
606
|
position: fixed;
|
|
602
607
|
z-index: ${({theme:e})=>e.zIndex.resumeContextLayout};
|
|
603
608
|
width: 100%;
|
|
@@ -622,7 +627,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
622
627
|
`,$761795227e3c2557$var$Icon=$parcel$interopDefault($edje1$emotionstyled)($edje1$reacticonsfa.FaVolumeOff)`
|
|
623
628
|
width: 7rem;
|
|
624
629
|
height: 7rem;
|
|
625
|
-
`,$761795227e3c2557$var$ResumeContext=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),t=$19f35bee633995ac$export$2e2bcd8739ae039(({patch:e})=>e).audioContext,[r,o]=(0,$edje1$react.useState)("running"===t.state);return r?null:(0,$edje1$reactjsxruntime.jsxs)($761795227e3c2557$var$Layout,{theme:e,onClick:()=>{t.resume(),o(!0)},children:[(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Message,{theme:e,children:"Click anywhere to resume audio context"})}),(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Icon,{})})]})};var $761795227e3c2557$export$2e2bcd8739ae039=$761795227e3c2557$var$ResumeContext;const $07d50afa1b9774c9$var$ToggleMinimap=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(({setConfig:e})=>e),{showMinimap:t}=$19f35bee633995ac$export$2e2bcd8739ae039(({config:e})=>e);return(0,$edje1$reactjsxruntime.jsx)($edje1$
|
|
630
|
+
`,$761795227e3c2557$var$ResumeContext=()=>{let e=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),t=$19f35bee633995ac$export$2e2bcd8739ae039(({patch:e})=>e).audioContext,[r,o]=(0,$edje1$react.useState)("running"===t.state);return r?null:(0,$edje1$reactjsxruntime.jsxs)($761795227e3c2557$var$Layout,{theme:e,onClick:()=>{t.resume(),o(!0)},children:[(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Message,{theme:e,children:"Click anywhere to resume audio context"})}),(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Row,{children:(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$var$Icon,{})})]})};var $761795227e3c2557$export$2e2bcd8739ae039=$761795227e3c2557$var$ResumeContext;const $07d50afa1b9774c9$var$ToggleMinimap=()=>{let e=$19f35bee633995ac$export$2e2bcd8739ae039(({setConfig:e})=>e),{showMinimap:t}=$19f35bee633995ac$export$2e2bcd8739ae039(({config:e})=>e);return(0,$edje1$reactjsxruntime.jsx)($edje1$xyflowreact.ControlButton,{onClick:()=>e({showMinimap:!t}),children:t?(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsfa.FaMap,{}):(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsfa.FaRegMap,{})})};var $07d50afa1b9774c9$export$2e2bcd8739ae039=$07d50afa1b9774c9$var$ToggleMinimap;const $ebf0a587e54cf53c$var$Wire=({id:e,sourceX:t,sourceY:r,targetX:o,targetY:a,sourcePosition:$,targetPosition:c,style:d={},data:n,markerStart:i,markerEnd:l,source:s,target:f,sourceHandleId:p,targetHandleId:b,selected:u})=>{let x=$9bcd1fc54f3a4589$export$2e2bcd8739ae039(),h=$19f35bee633995ac$export$2e2bcd8739ae039(({getNode:e})=>e),m=h(s),j=h(f),g=m?.selected||j?.selected;(0,$edje1$react.useEffect)(()=>{if(p&&b)return console.log(`connected ${s} to ${f}`),()=>{console.log(`disconnected ${s} from ${f}`)}},[s,p,f,b]);let[v]=(0,$edje1$xyflowreact.getBezierPath)({targetX:o,targetY:a,targetPosition:c,sourceX:t,sourceY:r,sourcePosition:$});return(0,$edje1$reactjsxruntime.jsxs)($edje1$reactjsxruntime.Fragment,{children:[(0,$edje1$reactjsxruntime.jsx)("path",{id:e,style:{...d,stroke:u?x.colors.accent2:g?x.colors.highlight3:x.colors.highlight2},className:"react-flow__edge-path Wire",d:v,markerEnd:l}),(0,$edje1$reactjsxruntime.jsx)("path",{style:{...d,strokeWidth:8,color:"transparent",opacity:0,cursor:"pointer"},d:v,markerEnd:l})]})};var $ebf0a587e54cf53c$export$2e2bcd8739ae039=$ebf0a587e54cf53c$var$Wire;const $6e1a3b09ea6c45ed$var$StyledControls=(0,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled)($edje1$xyflowreact.Controls)`
|
|
626
631
|
&.bottom {
|
|
627
632
|
right: 1rem;
|
|
628
633
|
bottom: 40%;
|
|
@@ -631,7 +636,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
631
636
|
svg {
|
|
632
637
|
color: ${({theme:e})=>e.colors.elevation2};
|
|
633
638
|
}
|
|
634
|
-
`),$6e1a3b09ea6c45ed$var$onNodeDragStop=(e,t)=>console.log("drag stop",t),$6e1a3b09ea6c45ed$var$onNodeClick=(e,t)=>console.log("click",t),$6e1a3b09ea6c45ed$var$snapGrid=[20,20],$6e1a3b09ea6c45ed$export$72cb76f559fbafcf=({editorState:e,plugins:t=[],editorContextMenu:r=[],onChange:o=()=>{},...a})=>{let $=(0,$edje1$react.useMemo)(()=>({wire:$ebf0a587e54cf53c$export$2e2bcd8739ae039}),[]),{nodes:c,edges:d,controlPanel:n,onNodesChange:i,onNodesDelete:l,onEdgesChange:s,onEdgesDelete:f,onConnect:p,setPlugins:
|
|
639
|
+
`),$6e1a3b09ea6c45ed$var$onNodeDragStop=(e,t)=>console.log("drag stop",t),$6e1a3b09ea6c45ed$var$onNodeClick=(e,t)=>console.log("click",t),$6e1a3b09ea6c45ed$var$snapGrid=[20,20],$6e1a3b09ea6c45ed$export$72cb76f559fbafcf=({editorState:e,plugins:t=[],editorContextMenu:r=[],onChange:o=()=>{},...a})=>{let $=(0,$edje1$react.useMemo)(()=>({wire:$ebf0a587e54cf53c$export$2e2bcd8739ae039}),[]),{nodes:c,edges:d,controlPanel:n,onNodesChange:i,onNodesDelete:l,onEdgesChange:s,onEdgesDelete:f,onConnect:p,setPlugins:b,setViewport:u,viewport:x}=$19f35bee633995ac$export$2e2bcd8739ae039(),h=$19f35bee633995ac$export$2e2bcd8739ae039(({config:e})=>e),m=$19f35bee633995ac$export$2e2bcd8739ae039(({nodeTypes:e})=>e);(0,$edje1$react.useEffect)(()=>{console.log(8888,t),b(t)},[t]);let[j,g]=(0,$edje1$react.useState)(null);(0,$edje1$react.useEffect)(()=>{j&&o({nodes:c,edges:d,controlPanel:n,viewport:x})},[c,d,n,x]);let v=(0,$edje1$react.useCallback)(e=>{j||(g(e),console.log("flow loaded:",e))},[j]),{onContextMenu:y}=$cd0ab85c52ef114c$export$59ce2a6808e35a29(),{onContextMenu:w}=$22b4690c38c8b941$export$cbbbfb9fb15f3780(),{onContextMenu:C}=$137f1cfc6118d808$export$8b2e4a15453bac1e();return(0,$edje1$react.useEffect)(()=>{x&&j?.setViewport(x)},[x,j]),(0,$edje1$xyflowreact.useOnViewportChange)({onEnd:u}),(0,$edje1$reactjsxruntime.jsxs)($edje1$xyflowreact.ReactFlow,{nodes:c,edges:d,onNodesChange:i,onNodesDelete:l,onEdgesChange:s,onConnect:p,onNodeDragStop:$6e1a3b09ea6c45ed$var$onNodeDragStop,onEdgesDelete:f,onInit:v,onNodeClick:$6e1a3b09ea6c45ed$var$onNodeClick,onContextMenu:y,onNodeContextMenu:w,onEdgeContextMenu:C,nodeTypes:m,edgeTypes:$,snapGrid:$6e1a3b09ea6c45ed$var$snapGrid,defaultViewport:e?.viewport,defaultEdgeOptions:{type:"wire"},snapToGrid:!0,fitView:!0,disableKeyboardA11y:!0,children:[(0,$edje1$reactjsxruntime.jsx)($edje1$xyflowreact.Background,{variant:$edje1$xyflowreact.BackgroundVariant.Dots,gap:12}),h.showMinimap?(0,$edje1$reactjsxruntime.jsx)($edje1$xyflowreact.MiniMap,{}):null,(0,$edje1$reactjsxruntime.jsxs)($6e1a3b09ea6c45ed$var$StyledControls,{showInteractive:!1,position:"bottom-right",children:[(0,$edje1$reactjsxruntime.jsx)($07d50afa1b9774c9$export$2e2bcd8739ae039,{}),(0,$edje1$reactjsxruntime.jsx)($eabee671d6a9ae8e$export$78bddedbcf2939ac,{})]}),(0,$edje1$reactjsxruntime.jsx)($761795227e3c2557$export$2e2bcd8739ae039,{}),(0,$edje1$reactjsxruntime.jsx)($f51093a35b5dffc7$export$2e2bcd8739ae039,{}),(0,$edje1$reactjsxruntime.jsx)($c6cd2caeb5a5450d$export$2e2bcd8739ae039,{}),(0,$edje1$reactjsxruntime.jsx)($cd0ab85c52ef114c$export$2e2bcd8739ae039,{editorContextMenu:r}),(0,$edje1$reactjsxruntime.jsx)($22b4690c38c8b941$export$2e2bcd8739ae039,{}),(0,$edje1$reactjsxruntime.jsx)($137f1cfc6118d808$export$2e2bcd8739ae039,{})]})},$6e1a3b09ea6c45ed$export$7cda8d932e2f33c0=e=>(0,$edje1$reactjsxruntime.jsx)($edje1$xyflowreact.ReactFlowProvider,{children:(0,$edje1$reactjsxruntime.jsx)($6e1a3b09ea6c45ed$export$72cb76f559fbafcf,{...e})});var $6e1a3b09ea6c45ed$export$2e2bcd8739ae039=$6e1a3b09ea6c45ed$export$7cda8d932e2f33c0;const $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,$edje1$emotionreact.withTheme)($parcel$interopDefault($edje1$emotionstyled).div`
|
|
635
640
|
display: flex;
|
|
636
641
|
flex-direction: column;
|
|
637
642
|
height: 100%;
|
|
@@ -716,7 +721,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
716
721
|
&:hover {
|
|
717
722
|
color: ${({theme:e})=>e.colors.whitePrimary};
|
|
718
723
|
}
|
|
719
|
-
`),$425e92a44a72d3d3$var$generateId=()=>(0,$edje1$nanoid.nanoid)(),$425e92a44a72d3d3$var$generateEmptyFile=()=>({file:$425e92a44a72d3d3$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$425e92a44a72d3d3$var$generateId()}),$425e92a44a72d3d3$export$86fbec116b87613f=({...e})=>{let{projectState:t,theme:r}=e,o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.currentFileIndex),a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),c=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setProject),n=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getProject),i=$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[u
|
|
724
|
+
`),$425e92a44a72d3d3$var$generateId=()=>(0,$edje1$nanoid.nanoid)(),$425e92a44a72d3d3$var$generateEmptyFile=()=>({file:$425e92a44a72d3d3$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$425e92a44a72d3d3$var$generateId()}),$425e92a44a72d3d3$export$86fbec116b87613f=({...e})=>{let{projectState:t,theme:r}=e,o=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.currentFileIndex),a=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),c=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.project),d=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.setProject),n=$19f35bee633995ac$export$2e2bcd8739ae039(e=>e.getProject),i=$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[b,u]=(0,$edje1$react.useState)(!1);return(0,$edje1$react.useEffect)(()=>{d(t||{files:[$425e92a44a72d3d3$var$generateEmptyFile()]});let e=t?.files[0];e?.file&&e?.type!=="audio"&&p(e.file)},[t]),(0,$edje1$react.useEffect)(()=>{let e=async(...e)=>{let t=new Request(...e),r=n().files,o=t.url.replace("project://",""),a=r.find(({id:e})=>e===o);return a?$c1d6493745b51d4a$export$e698b79c63b74136(a)?new Response(JSON.stringify(a.file??null)):"audio"===a.type?fetch(a.file):new Response(null):new Response(`File not found: ${t.url}`,{status:404})};return(0,$edje1$webnoisefetch.registerFetcher)("project://*",e),()=>{}},[n]),(0,$edje1$react.useEffect)(()=>{f()},[o,f]),(0,$edje1$reactjsxruntime.jsxs)($edje1$emotionreact.ThemeProvider,{theme:r||$085a27af3d5bf051$export$2e2bcd8739ae039,children:[(0,$edje1$reactjsxruntime.jsx)($edje1$emotionreact.Global,{styles:(0,$edje1$emotionreact.css)`
|
|
720
725
|
:root {
|
|
721
726
|
--leva-colors-elevation1: #292d39;
|
|
722
727
|
--leva-colors-elevation2: #181c20;
|
|
@@ -773,7 +778,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
773
778
|
--leva-fontWeights-folder: normal;
|
|
774
779
|
--leva-fontWeights-button: normal;
|
|
775
780
|
}
|
|
776
|
-
`}),(0,$edje1$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$6cd5d5c1dae69a36,{onDragOver:e=>{e.preventDefault(),e.stopPropagation(),
|
|
781
|
+
`}),(0,$edje1$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 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({...$425e92a44a72d3d3$var$generateEmptyFile(),file:{...t,controlPanel:{...$425e92a44a72d3d3$export$d31000d36961d6c2.controlPanel,...t.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let t=await $0c1a6d299c94cfbd$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,$edje1$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$2206531ad8592d57,{children:[c.files.map((e,t)=>(0,$edje1$reactjsxruntime.jsxs)($425e92a44a72d3d3$export$3e41faf802a29e71,{onClick:()=>{$(t)},active:t===o,children:[(0,$edje1$reactjsxruntime.jsx)($aa49bccfd9ae8480$export$2e2bcd8739ae039,{onChange:e=>i(t,e),value:e.name||"Unnamed"}),(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&(s(t),1===c.files.length&&(l($425e92a44a72d3d3$var$generateEmptyFile()),$(0),f()))}})]},t)),(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$61e5b3c7bace77b8,{onClick:()=>{l($425e92a44a72d3d3$var$generateEmptyFile()),$(c.files.length)},children:(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$3aef34186a092045,{})})]}),(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$8d546ef2006cd0a2,{children:(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$b38a2fd24b22fb35,{file:a,...e})}),b&&(0,$edje1$reactjsxruntime.jsx)($425e92a44a72d3d3$export$6bc5189622b1f4ec,{children:"Drop file(s) to upload to the project"})]})]})};var $425e92a44a72d3d3$export$2e2bcd8739ae039=$425e92a44a72d3d3$export$86fbec116b87613f;const $2482fab22d0d218d$var$CheckerBox=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
777
782
|
display: flex;
|
|
778
783
|
align-items: center;
|
|
779
784
|
justify-content: center;
|
|
@@ -924,7 +929,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
924
929
|
white-space: nowrap;
|
|
925
930
|
overflow: hidden;
|
|
926
931
|
text-overflow: ellipsis;
|
|
927
|
-
`,$82440d4d9612c9a6$export$7a40489edcbfb3a1=({value:e="",placeholder:t="",onSubmit:r=()=>{},options:o=[],...a})=>{let[$,c]=(0,$edje1$react.useState)(e),[d,n]=(0,$edje1$react.useState)(!1),[i,l]=(0,$edje1$react.useState)(-1),s=(0,$edje1$react.useRef)(null),f=(0,$edje1$react.useRef)(null),p=o.filter(e=>""===$||e.value.toLowerCase().includes($.toLowerCase())||e.label?.toLowerCase().includes($.toLowerCase())),
|
|
932
|
+
`,$82440d4d9612c9a6$export$7a40489edcbfb3a1=({value:e="",placeholder:t="",onSubmit:r=()=>{},options:o=[],...a})=>{let[$,c]=(0,$edje1$react.useState)(e),[d,n]=(0,$edje1$react.useState)(!1),[i,l]=(0,$edje1$react.useState)(-1),s=(0,$edje1$react.useRef)(null),f=(0,$edje1$react.useRef)(null),p=o.filter(e=>""===$||e.value.toLowerCase().includes($.toLowerCase())||e.label?.toLowerCase().includes($.toLowerCase())),b=(0,$edje1$react.useCallback)(()=>{r($),n(!1),l(-1)},[$,r]),u=(0,$edje1$react.useCallback)(e=>{c(e.value),r(e.value),n(!1),l(-1)},[r]),x=(0,$edje1$react.useCallback)(e=>{switch(e.key){case"Escape":n(!1),l(-1);break;case"Enter":d&&i>=0&&p[i]?(e.preventDefault(),u(p[i])):b();break;case"ArrowDown":e.preventDefault(),d?l(e=>e<p.length-1?e+1:e):(n(!0),l(0));break;case"ArrowUp":e.preventDefault(),d&&l(e=>e>0?e-1:e)}},[b,d,i,p,u]);return(0,$edje1$react.useEffect)(()=>{let e=e=>{f.current&&!f.current.contains(e.target)&&s.current&&!s.current.contains(e.target)&&(n(!1),l(-1))};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[]),(0,$edje1$react.useEffect)(()=>{if(i>=0&&f.current){let e=f.current.children[i];e&&e.scrollIntoView({block:"nearest",behavior:"smooth"})}},[i]),(0,$edje1$reactjsxruntime.jsxs)($82440d4d9612c9a6$var$DropdownContainer,{children:[(0,$edje1$reactjsxruntime.jsxs)($c3feef27e7626a0b$export$fb9f58ebe9de6283,{children:[(0,$edje1$reactjsxruntime.jsx)($c3feef27e7626a0b$export$42e20bb2ce90003b,{...a,ref:s,value:$,placeholder:t,onKeyDown:x,onChange:e=>{c(e.target.value),n(!0),l(-1)},onFocus:()=>{o.length>0&&n(!0)},onBlur:()=>{setTimeout(()=>{n(!1),l(-1)},200)},autoComplete:"off"}),(0,$edje1$reactjsxruntime.jsx)($82440d4d9612c9a6$var$InputButton,{onClick:b,children:(0,$edje1$reactjsxruntime.jsx)($edje1$reacticonsfa.FaRegArrowAltCircleRight,{})})]}),o.length>0&&(0,$edje1$reactjsxruntime.jsx)($82440d4d9612c9a6$var$DropdownList,{ref:f,isOpen:d&&p.length>0,children:p.map((e,t)=>(0,$edje1$reactjsxruntime.jsxs)($82440d4d9612c9a6$var$DropdownItem,{isHighlighted:t===i,onClick:()=>u(e),onMouseEnter:()=>l(t),children:[(0,$edje1$reactjsxruntime.jsx)($82440d4d9612c9a6$var$DropdownItemLabel,{children:e.label||e.value}),e.value&&(0,$edje1$reactjsxruntime.jsx)($82440d4d9612c9a6$var$DropdownItemValue,{children:e.value})]},e.value+t))})]})};var $82440d4d9612c9a6$export$2e2bcd8739ae039=$82440d4d9612c9a6$export$7a40489edcbfb3a1;const $1ecf1c618f2a6976$var$StyledInputWrapper=$parcel$interopDefault($edje1$emotionstyled)($c3feef27e7626a0b$export$fb9f58ebe9de6283)`
|
|
928
933
|
gap: 0.5rem;
|
|
929
934
|
`,$1ecf1c618f2a6976$var$StyledInputInner=$parcel$interopDefault($edje1$emotionstyled)($c3feef27e7626a0b$export$42e20bb2ce90003b)`
|
|
930
935
|
padding: 0;
|
|
@@ -1187,7 +1192,7 @@ var $9cc889581bce45fb$export$b0b7b95ee465c83c,$edje1$reactjsxruntime=require("re
|
|
|
1187
1192
|
height: 100%;
|
|
1188
1193
|
width: 100%;
|
|
1189
1194
|
}
|
|
1190
|
-
`,$c3462ff581704bcf$export$2bf7c2638a145e5c=({onChange:e,onMove:t,points:r,type:o="monotonic",textColor:a="red",curveColor:$=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2,gridStep:c=.25,gridColor:d=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.elevation2,controlPointRadius:n=14,controlPointColor:i=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.vivid1})=>{let l=(0,$edje1$react.useRef)(null),[s,f]=(0,$edje1$react.useState)(),p=(0,$edje1$react.useCallback)(t=>{let r=t.getPoints();e?.(r)},[e]),
|
|
1195
|
+
`,$c3462ff581704bcf$export$2bf7c2638a145e5c=({onChange:e,onMove:t,points:r,type:o="monotonic",textColor:a="red",curveColor:$=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.accent2,gridStep:c=.25,gridColor:d=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.elevation2,controlPointRadius:n=14,controlPointColor:i=$085a27af3d5bf051$export$2e2bcd8739ae039.colors.vivid1})=>{let l=(0,$edje1$react.useRef)(null),[s,f]=(0,$edje1$react.useState)(),p=(0,$edje1$react.useCallback)(t=>{let r=t.getPoints();e?.(r)},[e]),b=(0,$edje1$react.useCallback)(e=>{let r=e.getPoints();t?.(r)},[t]);return(0,$edje1$react.useEffect)(()=>s?.update(r),[s,r]),(0,$edje1$react.useEffect)(()=>s?.setSplineType(o),[s,o]),(0,$edje1$react.useEffect)(()=>s?.setGridStep(c),[s,c]),(0,$edje1$react.useEffect)(()=>s?.setGridColor(d),[s,d]),(0,$edje1$react.useEffect)(()=>s?.setControlPointRadius(n),[s,n]),(0,$edje1$react.useEffect)(()=>s?.setTextColor(a),[s,a]),(0,$edje1$react.useEffect)(()=>{s?.setCurveColor("idle",$)},[s,$]),(0,$edje1$react.useEffect)(()=>{s?.setControlPointColor("idle",i)},[s,i]),(0,$edje1$react.useEffect)(()=>{if(s)return s.setCurveThickness(4),s.on("movePoint",b),s.on("releasePoint",p),s.on("pointAdded",p),s.on("pointRemoved",p),s.draw(),()=>{s.off("movePoint",b),s.off("releasePoint",p),s.off("pointAdded",p),s.off("pointRemoved",p)}},[s,p,b]),(0,$edje1$react.useEffect)(()=>{l.current&&f(new $c3462ff581704bcf$var$Spliner(l.current,1024,1024))},[l]),(0,$edje1$reactjsxruntime.jsx)($c3462ff581704bcf$var$WaveShaperInner,{ref:l})};var $c3462ff581704bcf$export$2e2bcd8739ae039=$c3462ff581704bcf$export$2bf7c2638a145e5c;const $ffa36f8855926063$export$555ece15b74b7abc=$parcel$interopDefault($edje1$emotionstyled).div``,$ffa36f8855926063$export$ef9ca7b440c0032c=$parcel$interopDefault($edje1$emotionstyled).div`
|
|
1191
1196
|
font-family: var(--leva-fonts-mono);
|
|
1192
1197
|
font-size: 0.7rem;
|
|
1193
1198
|
color: ${({theme:e})=>e.colors.whitePrimary};
|