@web-noise/core 0.0.8 → 0.0.10
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/components.js +259 -227
- package/dist/components.js.map +1 -1
- package/dist/lib.js +1 -1
- package/dist/lib.js.map +1 -1
- package/dist/main.js +52 -4
- package/dist/main.js.map +1 -1
- package/dist/module.js +117 -69
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -2
package/dist/main.js
CHANGED
|
@@ -287,7 +287,45 @@ var $322b255600739d01$export$b0b7b95ee465c83c,$a7mps$reactjsxruntime=require("re
|
|
|
287
287
|
height: 8rem;
|
|
288
288
|
`,$237d0cf05242d79b$var$FileUploadMessage=$parcel$interopDefault($a7mps$emotionstyled).div`
|
|
289
289
|
font-size: 2rem;
|
|
290
|
-
`,$237d0cf05242d79b$var$UploadProject=({isOpen:e,closeMenu:t})=>{let a=$d0e2724637fe681a$export$2e2bcd8739ae039(),r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setProject),o=(0,$a7mps$react.useRef)(null),$=(0,$a7mps$react.useCallback)(e=>{let[a]=e||[];a.text().then(JSON.parse).then(e=>{r(e),t()}).catch(console.error)},[r,t]);return e?(0,$a7mps$reactjsxruntime.jsx)($129c840746269630$export$2e2bcd8739ae039,{onClose:t,children:(0,$a7mps$reactjsxruntime.jsxs)($237d0cf05242d79b$var$UploadProjectWrapper,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$a7mps$reactjsxruntime.jsxs)($237d0cf05242d79b$var$DropZoneInner,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)($237d0cf05242d79b$var$FileUploadIcon,{}),(0,$a7mps$reactjsxruntime.jsx)($237d0cf05242d79b$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $237d0cf05242d79b$export$2e2bcd8739ae039=$237d0cf05242d79b$var$UploadProject;let $
|
|
290
|
+
`,$237d0cf05242d79b$var$UploadProject=({isOpen:e,closeMenu:t})=>{let a=$d0e2724637fe681a$export$2e2bcd8739ae039(),r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setProject),o=(0,$a7mps$react.useRef)(null),$=(0,$a7mps$react.useCallback)(e=>{let[a]=e||[];a.text().then(JSON.parse).then(e=>{r(e),t()}).catch(console.error)},[r,t]);return e?(0,$a7mps$reactjsxruntime.jsx)($129c840746269630$export$2e2bcd8739ae039,{onClose:t,children:(0,$a7mps$reactjsxruntime.jsxs)($237d0cf05242d79b$var$UploadProjectWrapper,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$a7mps$reactjsxruntime.jsxs)($237d0cf05242d79b$var$DropZoneInner,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)($237d0cf05242d79b$var$FileUploadIcon,{}),(0,$a7mps$reactjsxruntime.jsx)($237d0cf05242d79b$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $237d0cf05242d79b$export$2e2bcd8739ae039=$237d0cf05242d79b$var$UploadProject;let $8a8d15aaf6118539$var$useWorker=e=>{let[t,a]=(0,$a7mps$react.useState)(null);return(0,$a7mps$react.useEffect)(()=>{let t=new Worker(e);return a(t),()=>{t?.terminate(),a(null)}},[]),t};var $8a8d15aaf6118539$export$2e2bcd8739ae039=$8a8d15aaf6118539$var$useWorker;let $22498a338b4f51a5$var$useMessageChannel=()=>{let[e,t]=(0,$a7mps$react.useState)(null);return(0,$a7mps$react.useEffect)(()=>{let e=new MessageChannel;return e.port2.start(),t(e),()=>{t(null),e.port2.close()}},[]),e};var $22498a338b4f51a5$export$2e2bcd8739ae039=$22498a338b4f51a5$var$useMessageChannel;let $a21d1860481dfee5$export$cd440e094f060920=(e,t,a)=>{void 0!==t&&e.setValueAtTime(t,a.currentTime)},$a21d1860481dfee5$export$25df2e315be8e003=e=>new Promise((t,a)=>{let r=new FileReader;r.readAsDataURL(e),r.onload=()=>t(r.result?.toString()||""),r.onerror=e=>a(e)}),$4111e1c8b8b9014d$var$UploadAudioWrapper=$parcel$interopDefault($a7mps$emotionstyled).div`
|
|
291
|
+
display: flex;
|
|
292
|
+
align-items: center;
|
|
293
|
+
justify-content: center;
|
|
294
|
+
height: 100%;
|
|
295
|
+
width: 100%;
|
|
296
|
+
|
|
297
|
+
.drop-zone-wrapper {
|
|
298
|
+
width: 80%;
|
|
299
|
+
height: 80%;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
.drop-zone {
|
|
303
|
+
height: 100%;
|
|
304
|
+
width: 100%;
|
|
305
|
+
border-style: dashed;
|
|
306
|
+
border-width: 2px;
|
|
307
|
+
border-color: ${({theme:e})=>e.colors.highlight2};
|
|
308
|
+
opacity: 0.5;
|
|
309
|
+
cursor: pointer;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
.drop-zone:hover,
|
|
313
|
+
.drop-zone-drag-over {
|
|
314
|
+
opacity: 1;
|
|
315
|
+
}
|
|
316
|
+
`,$4111e1c8b8b9014d$var$DropZoneInner=$parcel$interopDefault($a7mps$emotionstyled).div`
|
|
317
|
+
display: flex;
|
|
318
|
+
flex-wrap: wrap;
|
|
319
|
+
align-items: center;
|
|
320
|
+
justify-content: center;
|
|
321
|
+
height: 100%;
|
|
322
|
+
width: 100%;
|
|
323
|
+
`,$4111e1c8b8b9014d$var$FileUploadIcon=$parcel$interopDefault($a7mps$emotionstyled)($a7mps$reacticonsfa.FaFileUpload)`
|
|
324
|
+
width: 100%;
|
|
325
|
+
height: 8rem;
|
|
326
|
+
`,$4111e1c8b8b9014d$var$FileUploadMessage=$parcel$interopDefault($a7mps$emotionstyled).div`
|
|
327
|
+
font-size: 2rem;
|
|
328
|
+
`,$4111e1c8b8b9014d$var$UploadAudio=({isOpen:e,closeMenu:t})=>{let a=$d0e2724637fe681a$export$2e2bcd8739ae039();$79ad7ccfcef16bee$export$2e2bcd8739ae039(({setGraph:e})=>e),$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setEditorState);let r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.addFile),o=(0,$a7mps$react.useRef)(null),$=(0,$a7mps$react.useCallback)(async e=>{let[a]=e||[],o=await $a21d1860481dfee5$export$25df2e315be8e003(a);r({type:"audio",id:`audio-file-${+new Date}`,name:a.name,file:o}),t()},[r,t]);return e?(0,$a7mps$reactjsxruntime.jsx)($129c840746269630$export$2e2bcd8739ae039,{onClose:t,children:(0,$a7mps$reactjsxruntime.jsxs)($4111e1c8b8b9014d$var$UploadAudioWrapper,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:o,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{o.current?.click()},onDrop:e=>$(e),children:(0,$a7mps$reactjsxruntime.jsxs)($4111e1c8b8b9014d$var$DropZoneInner,{theme:a,children:[(0,$a7mps$reactjsxruntime.jsx)($4111e1c8b8b9014d$var$FileUploadIcon,{}),(0,$a7mps$reactjsxruntime.jsx)($4111e1c8b8b9014d$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $4111e1c8b8b9014d$export$2e2bcd8739ae039=$4111e1c8b8b9014d$var$UploadAudio;let $0c1922ae66a6d15e$export$d4cd258d01c03112="editor-menu",$0c1922ae66a6d15e$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$a7mps$reactcontexify.useContextMenu)({id:$0c1922ae66a6d15e$export$d4cd258d01c03112});return{onContextMenu:e}},$0c1922ae66a6d15e$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let t=$d0e2724637fe681a$export$2e2bcd8739ae039(),[a,r]=(0,$a7mps$react.useState)({x:0,y:0}),[o,$]=(0,$a7mps$react.useState)(!1),[c,n]=(0,$a7mps$react.useState)(!1),[s,d]=(0,$a7mps$react.useState)(!1),[i,l]=(0,$a7mps$react.useState)(!1),p=(0,$a7mps$react.useCallback)((e,t)=>{r({x:e,y:t}),$(!0)},[$]),f=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:m}=(0,$a7mps$reactflow.useReactFlow)(),u=(0,$a7mps$react.useCallback)(e=>{let{x:t,y:a}=m(e);f(t,a)},[$,m]),b=$79ad7ccfcef16bee$export$2e2bcd8739ae039(({clearGraph:e})=>e),x=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.getEditorState),h=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.getProject),g=(0,$a7mps$react.useCallback)(()=>{b()},[b]),v=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.toggleHelp),j=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.history.back),y=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.history.forward),w=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.history.pointer),C=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.history.buffer),N=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.copySelectedItems),k=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.nodes),P=(0,$a7mps$react.useMemo)(()=>k.filter(({selected:e})=>e),[k]),D=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.copyBuffer),z=(0,$a7mps$reactflow.useReactFlow)(),M=(0,$a7mps$react.useCallback)(()=>{let e={...x()};$parcel$interopDefault($a7mps$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-patch.json")},[x,z]),E=(0,$a7mps$react.useCallback)(()=>{let e={...h()};$parcel$interopDefault($a7mps$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-project.json")},[x,z]);return(0,$a7mps$react.useEffect)(()=>($parcel$interopDefault($a7mps$hotkeysjs)("command+shift+a",()=>(p(200,50),!1)),$parcel$interopDefault($a7mps$hotkeysjs)("shift+/",()=>(v(),!1)),$parcel$interopDefault($a7mps$hotkeysjs)("command+z",()=>(j(),!1)),$parcel$interopDefault($a7mps$hotkeysjs)("command+shift+z",()=>(y(),!1)),$parcel$interopDefault($a7mps$hotkeysjs)("command+c",()=>(N(),!1)),$parcel$interopDefault($a7mps$hotkeysjs)("command+v",()=>(u({x:200,y:50}),!1)),()=>{$parcel$interopDefault($a7mps$hotkeysjs).unbind()}),[p,u]),(0,$a7mps$reactjsxruntime.jsxs)($a7mps$reactjsxruntime.Fragment,{children:[(0,$a7mps$reactjsxruntime.jsx)($49e8a6a144973612$export$2e2bcd8739ae039,{isOpen:o,closeMenu:()=>$(!1),mousePosition:a}),(0,$a7mps$reactjsxruntime.jsx)($5333cf562fd11d62$export$2e2bcd8739ae039,{isOpen:c,closeMenu:()=>n(!1)}),(0,$a7mps$reactjsxruntime.jsx)($237d0cf05242d79b$export$2e2bcd8739ae039,{isOpen:s,closeMenu:()=>d(!1)}),(0,$a7mps$reactjsxruntime.jsx)($4111e1c8b8b9014d$export$2e2bcd8739ae039,{isOpen:i,closeMenu:()=>l(!1)}),(0,$a7mps$reactjsxruntime.jsxs)($326d2ec4e7f83800$export$98eff9c5659394e3,{id:$0c1922ae66a6d15e$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:({triggerEvent:{clientX:e,clientY:t}})=>p(e,t),children:"Add Node (⌘+⇧+A)"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:g,children:"Delete All"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:M,children:"Download patch"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:()=>n(!0),children:"Upload patch"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:E,children:"Download project"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:()=>d(!0),children:"Upload project"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:()=>l(!0),children:"Upload Audio File"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{disabled:0===w,onClick:j,children:"Undo (⌘+z)"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{disabled:w===C.length,onClick:y,children:"Redo (⌘+⇧+Z)"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{disabled:!P.length,onClick:N,children:"Copy Selected (⌘+c)"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{disabled:!D.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:t}})=>u({x:e,y:t}),children:"Paste (⌘+v)"}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),e.map((e,t)=>(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{children:e},t)),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactcontexify.Separator,{}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:v,children:"Help (⇧+?)"})]})]})};var $0c1922ae66a6d15e$export$2e2bcd8739ae039=$0c1922ae66a6d15e$var$EditorContextMenu;let $403934f9ca48a72d$export$d4cd258d01c03112="editor-node-menu",$403934f9ca48a72d$export$cbbbfb9fb15f3780=()=>{let{show:e}=(0,$a7mps$reactcontexify.useContextMenu)({id:$403934f9ca48a72d$export$d4cd258d01c03112});return{onContextMenu:(0,$a7mps$react.useCallback)((t,a)=>{t.stopPropagation(),e(t,{props:{node:a}})},[])}},$403934f9ca48a72d$var$NodeContextMenu=e=>{let t=$d0e2724637fe681a$export$2e2bcd8739ae039(),a=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.removeNodes),r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.addNodeToControlPanel),o=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),$=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.copy),c=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.nodesConfiguration),n=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.controlPanel.nodes),s=(0,$a7mps$react.useCallback)(({props:e})=>!!e?.node.type&&!!n.find(({id:t})=>t===e.node.id),[n]),d=(0,$a7mps$react.useCallback)(({props:e})=>{if(!e?.node.type)return!1;let t=c[e.node.type];return!!t?.controlPanelNode},[c]);return(0,$a7mps$reactjsxruntime.jsx)($a7mps$reactjsxruntime.Fragment,{children:(0,$a7mps$reactjsxruntime.jsxs)($326d2ec4e7f83800$export$98eff9c5659394e3,{id:$403934f9ca48a72d$export$d4cd258d01c03112,animation:!1,colors:t.colors,children:[(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:e=>a([e.props.node]),children:"Delete Node (DEL)"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{hidden:(...e)=>!d(...e)||s(...e),onClick:e=>r(e.props.node),children:"Add To Control Panel"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{hidden:(...e)=>!d(...e)||!s(...e),onClick:e=>o(e.props.node),children:"Remove From Control Panel"}),(0,$a7mps$reactjsxruntime.jsx)($326d2ec4e7f83800$export$ef9839ae55b8ba40,{onClick:e=>$({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})};var $403934f9ca48a72d$export$2e2bcd8739ae039=$403934f9ca48a72d$var$NodeContextMenu;let $aa9957b9b5d388f6$var$useAudioNode=e=>$79ad7ccfcef16bee$export$2e2bcd8739ae039(({patch:e})=>e).audioNodes.get(e);var $aa9957b9b5d388f6$export$2e2bcd8739ae039=$aa9957b9b5d388f6$var$useAudioNode;let $fe0857212c4510a0$var$useNode=e=>{let t=$79ad7ccfcef16bee$export$2e2bcd8739ae039(({updateNodeData:e})=>e),a=(0,$a7mps$react.useCallback)(a=>t(e,{values:a}),[e,t]);return{updateNodeValues:a,updateNodeConfig:(0,$a7mps$react.useCallback)(a=>t(e,{config:a}),[e,t]),updateNodeLabel:(0,$a7mps$react.useCallback)(a=>t(e,{label:a}),[e,t])}};var $fe0857212c4510a0$export$2e2bcd8739ae039=$fe0857212c4510a0$var$useNode;let $8ff102452e3139f7$export$5abe11f802ebd1f2=$parcel$interopDefault($a7mps$emotionstyled).input`
|
|
291
329
|
width: 100%;
|
|
292
330
|
background: none;
|
|
293
331
|
border: none;
|
|
@@ -513,7 +551,7 @@ var $322b255600739d01$export$b0b7b95ee465c83c,$a7mps$reactjsxruntime=require("re
|
|
|
513
551
|
border-color: ${({theme:e})=>e.colors.whitePrimary};
|
|
514
552
|
border-width: 1px;
|
|
515
553
|
}
|
|
516
|
-
`,$35554bd755f84c69$var$ControlPanel=()=>{let e=$d0e2724637fe681a$export$2e2bcd8739ae039(),t=(0,$a7mps$react.useRef)(null),a=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.nodes),{show:r,nodes:o,size:$}=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.controlPanel),{width:c=200,height:n}=$,s=(0,$a7mps$react.useMemo)(()=>{let e=o.map(({id:e})=>e);return a.filter(({id:t})=>e.includes(t))},[a,o]),d=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.showControlPanel),i=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.hideControlPanel),l=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setControlPanelNodes),p=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setControlPanelSize),f=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),[m,u]=(0,$a7mps$react.useState)(!0),b=(0,$a7mps$react.useMemo)(()=>{let e=o.reduce((e,{height:t=$322b255600739d01$export$9f05d3e6ade4c09e.rowHeight,x:a,y:r=0})=>{let o=r+t;return o>e?o:e},0);return o.map(({id:t,width:a,height:r,x:o,y:$})=>({i:t,w:a||$322b255600739d01$export$9f05d3e6ade4c09e.cols,h:r||6,x:o??0,y:$??e}))},[o]);return s.length?(0,$a7mps$reactjsxruntime.jsxs)($a7mps$reactjsxruntime.Fragment,{children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelIconWrapper,{theme:e,ref:t,onClick:d,children:(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsrx.RxDashboard,{})}),(0,$a7mps$reactjsxruntime.jsxs)($parcel$interopDefault($a7mps$reactmoderndrawer),{open:r,onClose:i,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$ControlPanelHeader,{theme:e,children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelTitle,{children:"Control Panel"}),(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelIconsBar,{children:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$CloseIconWrapper,{onClick:i,theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsmd.MdClose,{})})})]}),(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$ControlPanelWrapper,{children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelSettings,{children:m?(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$LockGridWrapper,{theme:e,onClick:()=>u(!1),children:[(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$LockGridWrapper,{theme:e,onClick:()=>u(!0),children:[(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reresizable.Resizable,{enable:{top:!1,right:!m,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:c,height:"auto"},onResizeStop:(e,t,a,r)=>{p({width:c+r.width,height:n+r.height})},children:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelBody,{theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($parcel$interopDefault($a7mps$reactgridlayout),{layout:b,className:"layout",cols:$322b255600739d01$export$9f05d3e6ade4c09e.cols,rowHeight:$322b255600739d01$export$9f05d3e6ade4c09e.rowHeight,width:c,margin:[0,0],isResizable:!m,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{l(e.map(({i:e,w:t,h:a,x:r,y:o})=>({id:e,width:t,height:a,x:r,y:o})))})},children:s.map(t=>(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelItemWrapper,{theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($e1c922010658cc13$export$2e2bcd8739ae039,{node:t,showControls:!m,onDelete:f})},t.id))})})})]})]})]}):null};var $35554bd755f84c69$export$2e2bcd8739ae039=$35554bd755f84c69$var$ControlPanel,$fe9d853987c59281$exports={};$fe9d853987c59281$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";let $444f2a1cb1736bcc$var$MdPreview=(0,$a7mps$emotionreact.withTheme)($parcel$interopDefault($a7mps$emotionstyled).div`
|
|
554
|
+
`,$35554bd755f84c69$var$ControlPanel=()=>{let e=$d0e2724637fe681a$export$2e2bcd8739ae039(),t=(0,$a7mps$react.useRef)(null),a=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.nodes),{show:r,nodes:o,size:$}=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.controlPanel),{width:c=200,height:n}=$,s=(0,$a7mps$react.useMemo)(()=>{let e=o.map(({id:e})=>e);return a.filter(({id:t})=>e.includes(t))},[a,o]),d=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.showControlPanel),i=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.hideControlPanel),l=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setControlPanelNodes),p=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setControlPanelSize),f=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),[m,u]=(0,$a7mps$react.useState)(!0),b=(0,$a7mps$react.useMemo)(()=>{let e=o.reduce((e,{height:t=$322b255600739d01$export$9f05d3e6ade4c09e.rowHeight,x:a,y:r=0})=>{let o=r+t;return o>e?o:e},0);return o.map(({id:t,width:a,height:r,x:o,y:$})=>({i:t,w:a||$322b255600739d01$export$9f05d3e6ade4c09e.cols,h:r||6,x:o??0,y:$??e}))},[o]);return s.length?(0,$a7mps$reactjsxruntime.jsxs)($a7mps$reactjsxruntime.Fragment,{children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelIconWrapper,{theme:e,ref:t,onClick:d,children:(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsrx.RxDashboard,{})}),(0,$a7mps$reactjsxruntime.jsxs)($parcel$interopDefault($a7mps$reactmoderndrawer),{open:r,onClose:i,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$ControlPanelHeader,{theme:e,children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelTitle,{children:"Control Panel"}),(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelIconsBar,{children:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$CloseIconWrapper,{onClick:i,theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsmd.MdClose,{})})})]}),(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$ControlPanelWrapper,{children:[(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelSettings,{children:m?(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$LockGridWrapper,{theme:e,onClick:()=>u(!1),children:[(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$a7mps$reactjsxruntime.jsxs)($35554bd755f84c69$var$LockGridWrapper,{theme:e,onClick:()=>u(!0),children:[(0,$a7mps$reactjsxruntime.jsx)($a7mps$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$a7mps$reactjsxruntime.jsx)($a7mps$reresizable.Resizable,{enable:{top:!1,right:!m,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:c,height:"auto"},onResizeStop:(e,t,a,r)=>{p({width:c+r.width,height:n+r.height})},children:(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelBody,{theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($parcel$interopDefault($a7mps$reactgridlayout),{layout:b,className:"layout",cols:$322b255600739d01$export$9f05d3e6ade4c09e.cols,rowHeight:$322b255600739d01$export$9f05d3e6ade4c09e.rowHeight,width:c,margin:[0,0],isResizable:!m,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{l(e.map(({i:e,w:t,h:a,x:r,y:o})=>({id:e,width:t,height:a,x:r,y:o})))})},children:s.map(t=>(0,$a7mps$reactjsxruntime.jsx)($35554bd755f84c69$var$ControlPanelItemWrapper,{theme:e,children:(0,$a7mps$reactjsxruntime.jsx)($e1c922010658cc13$export$2e2bcd8739ae039,{node:t,showControls:!m,onDelete:f})},t.id))})})})]})]})]}):null};var $35554bd755f84c69$export$2e2bcd8739ae039=$35554bd755f84c69$var$ControlPanel,$fe9d853987c59281$exports={};$fe9d853987c59281$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## 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 $444f2a1cb1736bcc$var$MdPreview=(0,$a7mps$emotionreact.withTheme)($parcel$interopDefault($a7mps$emotionstyled).div`
|
|
517
555
|
font-family: var(--leva-fonts-mono);
|
|
518
556
|
font-size: 0.7rem;
|
|
519
557
|
box-sizing: border-box;
|
|
@@ -563,6 +601,16 @@ var $322b255600739d01$export$b0b7b95ee465c83c,$a7mps$reactjsxruntime=require("re
|
|
|
563
601
|
flex-direction: column;
|
|
564
602
|
height: 100%;
|
|
565
603
|
width: 100%;
|
|
604
|
+
`),$bf69f85ff37e07b6$export$6bc5189622b1f4ec=(0,$a7mps$emotionreact.withTheme)($parcel$interopDefault($a7mps$emotionstyled).div`
|
|
605
|
+
position: fixed;
|
|
606
|
+
height: 100%;
|
|
607
|
+
width: 100%;
|
|
608
|
+
background: rgba(0, 0, 0, 0.7);
|
|
609
|
+
color: white;
|
|
610
|
+
display: flex;
|
|
611
|
+
justify-content: center;
|
|
612
|
+
align-items: center;
|
|
613
|
+
font-size: 2rem;
|
|
566
614
|
`),$bf69f85ff37e07b6$export$8d546ef2006cd0a2=(0,$a7mps$emotionreact.withTheme)($parcel$interopDefault($a7mps$emotionstyled).div`
|
|
567
615
|
height: 100%;
|
|
568
616
|
width: 100%;
|
|
@@ -633,7 +681,7 @@ var $322b255600739d01$export$b0b7b95ee465c83c,$a7mps$reactjsxruntime=require("re
|
|
|
633
681
|
&:hover {
|
|
634
682
|
color: ${({theme:e})=>e.colors.whitePrimary};
|
|
635
683
|
}
|
|
636
|
-
`),$bf69f85ff37e07b6$var$generateId=()=>(0,$a7mps$nanoid.nanoid)(),$bf69f85ff37e07b6$var$generateEmptyFile=()=>({file:$bf69f85ff37e07b6$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$bf69f85ff37e07b6$var$generateId()}),$bf69f85ff37e07b6$export$86fbec116b87613f=({...e})=>{let{projectState:t,theme:a}=e,r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.currentFileIndex),o=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),c=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.project),n=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setProject),s=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.getProject),d=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.updateFileName),i=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.addFile),l=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.deleteFile),p=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.syncEditorWithCurrentFile),f=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setEditorState)
|
|
684
|
+
`),$bf69f85ff37e07b6$var$generateId=()=>(0,$a7mps$nanoid.nanoid)(),$bf69f85ff37e07b6$var$generateEmptyFile=()=>({file:$bf69f85ff37e07b6$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$bf69f85ff37e07b6$var$generateId()}),$bf69f85ff37e07b6$export$86fbec116b87613f=({...e})=>{let{projectState:t,theme:a}=e,r=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.currentFileIndex),o=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),$=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),c=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.project),n=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setProject),s=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.getProject),d=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.updateFileName),i=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.addFile),l=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.deleteFile),p=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.syncEditorWithCurrentFile),f=$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.setEditorState);$79ad7ccfcef16bee$export$2e2bcd8739ae039(e=>e.pullEditorChanges);let[m,u]=(0,$a7mps$react.useState)(!1);return(0,$a7mps$react.useEffect)(()=>{n(t||{files:[$bf69f85ff37e07b6$var$generateEmptyFile()]});let e=t?.files[0];e?.file&&e?.type!=="audio"&&f(e.file)},[t]),(0,$a7mps$react.useEffect)(()=>($a1cee8e8b30b93b5$export$9e4ff1580457920e("project://*",async(...e)=>{let t=new Request(...e),a=s().files,r=t.url.replace("project://",""),o=a.find(({id:e})=>e===r);return o?$24d0caaf47b2917f$export$e698b79c63b74136(o)?new Response(JSON.stringify(o.file??null)):$24d0caaf47b2917f$export$31c2336f657dc59f(o)?fetch(o.file):new Response(null):new Response(`File not found: ${t.url}`,{status:404})}),()=>{}),[s]),(0,$a7mps$react.useEffect)(()=>{p()},[r,p]),(0,$a7mps$reactjsxruntime.jsxs)($a7mps$emotionreact.ThemeProvider,{theme:a||$087b434571dfd091$export$2e2bcd8739ae039,children:[(0,$a7mps$reactjsxruntime.jsx)($a7mps$emotionreact.Global,{styles:(0,$a7mps$emotionreact.css)`
|
|
637
685
|
:root {
|
|
638
686
|
--leva-colors-elevation1: #292d39;
|
|
639
687
|
--leva-colors-elevation2: #181c20;
|
|
@@ -690,5 +738,5 @@ var $322b255600739d01$export$b0b7b95ee465c83c,$a7mps$reactjsxruntime=require("re
|
|
|
690
738
|
--leva-fontWeights-folder: normal;
|
|
691
739
|
--leva-fontWeights-button: normal;
|
|
692
740
|
}
|
|
693
|
-
`}),(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$export$6cd5d5c1dae69a36,{children:[(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$export$2206531ad8592d57,{children:[c.files.map((e,t)=>(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$export$3e41faf802a29e71,{onClick:()=>{$(t)},active:t===r,children:[(0,$a7mps$reactjsxruntime.jsx)($8ff102452e3139f7$export$2e2bcd8739ae039,{onChange:e=>d(t,e),value:e.name||"Unnamed"}),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&l(t)}})]},t)),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$61e5b3c7bace77b8,{onClick:()=>{i($bf69f85ff37e07b6$var$generateEmptyFile()),$(c.files.length)},children:(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$3aef34186a092045,{})})]}),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$8d546ef2006cd0a2,{children:(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$b38a2fd24b22fb35,{file:o,...e})})]})]})};var $bf69f85ff37e07b6$export$2e2bcd8739ae039=$bf69f85ff37e07b6$export$86fbec116b87613f;
|
|
741
|
+
`}),(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$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;n(t),$(0),p();return}i({...$bf69f85ff37e07b6$var$generateEmptyFile(),file:{...t,controlPanel:{...$bf69f85ff37e07b6$export$d31000d36961d6c2.controlPanel,...t.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let t=await $a21d1860481dfee5$export$25df2e315be8e003(e);i({type:"audio",id:`audio-file-${+new Date}`,name:e.name,file:t});return}console.error("Unsupported file type",e)})},children:[(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$export$2206531ad8592d57,{children:[c.files.map((e,t)=>(0,$a7mps$reactjsxruntime.jsxs)($bf69f85ff37e07b6$export$3e41faf802a29e71,{onClick:()=>{$(t)},active:t===r,children:[(0,$a7mps$reactjsxruntime.jsx)($8ff102452e3139f7$export$2e2bcd8739ae039,{onChange:e=>d(t,e),value:e.name||"Unnamed"}),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&l(t)}})]},t)),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$61e5b3c7bace77b8,{onClick:()=>{i($bf69f85ff37e07b6$var$generateEmptyFile()),$(c.files.length)},children:(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$3aef34186a092045,{})})]}),(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$8d546ef2006cd0a2,{children:(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$b38a2fd24b22fb35,{file:o,...e})}),m&&(0,$a7mps$reactjsxruntime.jsx)($bf69f85ff37e07b6$export$6bc5189622b1f4ec,{children:"Drop file(s) to upload to the project"})]})]})};var $bf69f85ff37e07b6$export$2e2bcd8739ae039=$bf69f85ff37e07b6$export$86fbec116b87613f;
|
|
694
742
|
//# sourceMappingURL=main.js.map
|