@web-noise/core 0.0.10 → 0.0.11-fix2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,1179 +0,0 @@
1
- var $5178a3ce324b2b47$export$b0b7b95ee465c83c,$caozj$reactjsxruntime=require("react/jsx-runtime"),$caozj$emotionstyled=require("@emotion/styled"),$caozj$react=require("react"),$caozj$reactdom=require("react-dom"),$caozj$reacticonsmd=require("react-icons/md"),$caozj$emotionreact=require("@emotion/react"),$caozj$nanoid=require("nanoid"),$caozj$reacticonsfa6=require("react-icons/fa6");require("reactflow/dist/style.css");var $caozj$webnoisefetch=require("@web-noise/fetch"),$caozj$reactflow=require("reactflow"),$caozj$zustand=require("zustand"),$caozj$webnoisepatch=require("@web-noise/patch"),$caozj$jsondiffpatch=require("jsondiffpatch"),$caozj$emotioncss=require("@emotion/css"),$caozj$reactcontexify=require("react-contexify");require("react-contexify/dist/ReactContexify.css");var $caozj$jsfiledownload=require("js-file-download"),$caozj$hotkeysjs=require("hotkeys-js"),$caozj$reactfiledrop=require("react-file-drop"),$caozj$reacticonsfa=require("react-icons/fa"),$caozj$reresizable=require("re-resizable"),$caozj$reactgridlayout=require("react-grid-layout");require("react-grid-layout/css/styles.css");var $caozj$reacticonsai=require("react-icons/ai"),$caozj$reacticonsrx=require("react-icons/rx"),$caozj$reactmoderndrawer=require("react-modern-drawer");require("react-modern-drawer/dist/index.css");var $caozj$marked=require("marked"),$caozj$usedebounce=require("use-debounce"),$caozj$rcslider=require("rc-slider");require("rc-slider/assets/index.css");var $caozj$CanvasSpliner=require("CanvasSpliner");function $parcel$exportWildcard(e,o){return Object.keys(o).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return o[t]}})}),e}function $parcel$export(e,o,t,a){Object.defineProperty(e,o,{get:t,set:a,enumerable:!0,configurable:!0})}function $parcel$interopDefault(e){return e&&e.__esModule?e.default:e}var $e56ee5f7abcdf58a$exports={};$parcel$export($e56ee5f7abcdf58a$exports,"Modal",()=>$31669bd9c7b1334d$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"Checker",()=>$7dda11900de48be2$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"RadioGroup",()=>$49a9900810e9fc76$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"Input",()=>$f8ec1acf67f46dc8$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"DropdownInput",()=>$2c26eea0201e0bee$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"ColorInput",()=>$71f3efd0f53e329c$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"NumberInput",()=>$9c3bb3712f0c697f$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"Button",()=>$661d5014f892bfae$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"Select",()=>$2e5509e4deb374c3$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"Slider",()=>$336343c71d08e372$export$2e2bcd8739ae039),$parcel$export($e56ee5f7abcdf58a$exports,"SplineEditor",()=>$1df3dc42818802fe$export$2e2bcd8739ae039);let $0698271e00ab9da6$var$useTheme=()=>(0,$caozj$emotionreact.useTheme)();var $0698271e00ab9da6$export$2e2bcd8739ae039=$0698271e00ab9da6$var$useTheme;let $31669bd9c7b1334d$var$ModalOuter=$parcel$interopDefault($caozj$emotionstyled).div`
2
- position: fixed;
3
- z-index: ${({theme:e})=>e.zIndex.modal};
4
- width: 100%;
5
- height: 100%;
6
- top: 0;
7
- left: 0;
8
- background: ${({theme:e})=>e.colors.elevation3}cc;
9
- display: flex;
10
- align-items: center;
11
- justify-content: center;
12
- `,$31669bd9c7b1334d$var$ModalInner=$parcel$interopDefault($caozj$emotionstyled).div`
13
- background: ${({theme:e})=>e.colors.elevation2};
14
- box-shadow: 1px 1px 1px 1px ${({theme:e})=>e.colors.elevation1};
15
- color: white;
16
- width: 70%;
17
- height: 80%;
18
- overflow-y: scroll;
19
- position: relative;
20
- `,$31669bd9c7b1334d$var$ModalCloser=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsmd.MdClose)`
21
- position: absolute;
22
- top: 0.2rem;
23
- right: 0.2rem;
24
- cursor: pointer;
25
- `,$31669bd9c7b1334d$var$Modal=({children:e,onClose:o,...t})=>{let a=$0698271e00ab9da6$export$2e2bcd8739ae039();return(0,$caozj$react.useEffect)(()=>{let e=e=>{"Escape"===e.key&&o?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[o]),(0,$caozj$reactdom.createPortal)((0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$var$ModalOuter,{theme:a,onClick:o,children:(0,$caozj$reactjsxruntime.jsxs)($31669bd9c7b1334d$var$ModalInner,{...t,onClick:e=>{e.stopPropagation()},theme:a,children:[e,(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$var$ModalCloser,{theme:a,onClick:o})]})}),document.body)};var $31669bd9c7b1334d$export$2e2bcd8739ae039=$31669bd9c7b1334d$var$Modal;let $5178a3ce324b2b47$export$956b3cf15d7c363="web-noise-drag-handle",$5178a3ce324b2b47$export$21d634b1d5d9bee3=`.${$5178a3ce324b2b47$export$956b3cf15d7c363}`,$5178a3ce324b2b47$export$9f05d3e6ade4c09e={rowHeight:10,cols:4};!function(e){e.Gate="gate",e.Number="number",e.Audio="audio",e.Any="any"}($5178a3ce324b2b47$export$b0b7b95ee465c83c||($5178a3ce324b2b47$export$b0b7b95ee465c83c={}));let $49097eb29535ab95$var$generateNodeId=e=>{let o=+new Date+Math.floor(1e3*Math.random());return e?.type?`${e.type}-${o}`:o.toString()};var $49097eb29535ab95$export$2e2bcd8739ae039=$49097eb29535ab95$var$generateNodeId;let $5885b1961eda60a3$var$nodesStateCreator=(e,o)=>({nodes:[],edges:[],onNodesChange:o=>{e(({nodes:e})=>({nodes:(0,$caozj$reactflow.applyNodeChanges)(o,e).map(e=>({dragHandle:$5178a3ce324b2b47$export$21d634b1d5d9bee3,...e}))}))},onEdgesChange:o=>{e(({edges:e})=>({edges:(0,$caozj$reactflow.applyEdgeChanges)(o,e)}))},onConnect:o=>{e(({edges:e})=>({edges:(0,$caozj$reactflow.addEdge)(o,e)}))},addNode:o=>{e(({nodes:e})=>({nodes:e.concat(o)}))},setNodes:o=>{e({nodes:o})},setEdges:o=>{e({edges:o})},setNodesAndEdges:({nodes:o,edges:t})=>{e({nodes:o,edges:t})},getNodesAndEdges:()=>{let{nodes:e,edges:t}=o();return{nodes:e,edges:t}},clearElements:()=>{e({nodes:[],edges:[]})},getNode:e=>{let{nodes:t}=o();return t.find(o=>o.id===e)||null},updateNodeData:(o,t)=>{e(({nodes:e})=>({nodes:e.map(e=>e.id===o?{...e,data:{...e.data,...t}}:e)}))},nodeTypes:{},setNodeTypes:o=>e({nodeTypes:o})});var $5885b1961eda60a3$export$2e2bcd8739ae039=$5885b1961eda60a3$var$nodesStateCreator;let $331e8cc12b56225f$var$cloneObject=e=>JSON.parse(JSON.stringify(e)),$331e8cc12b56225f$export$b1b92d12d1c2ae0e=(e,o)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:t=>{let{history:a}=o(),{maxHistoryLength:r,skipCollect:c}=a;if(c)return void e({history:{...a,skipCollect:!1}});e(({history:e})=>{if(!e)return{};let{buffer:o,pointer:a}=e,c=o.slice(Math.max(a-r+1,0),a);return{history:{...e,buffer:[...c,t],pointer:Math.min(a+1,r)}}})},back:()=>{let{nodes:t,edges:a,controlPanel:r,history:c}=o(),{buffer:$,pointer:n}=c,i=$[n-1];if(!i)return;let l=$caozj$jsondiffpatch.reverse(i);if(!l)return;let d=$331e8cc12b56225f$var$cloneObject({nodes:t,edges:a,controlPanel:r});e({...$caozj$jsondiffpatch.patch(d,l),history:{...c,pointer:n-1,skipCollect:!0}})},forward:()=>{let{nodes:t,edges:a,controlPanel:r,history:c}=o(),{buffer:$,pointer:n}=c,i=$[n];if(!i)return;let l=$331e8cc12b56225f$var$cloneObject({nodes:t,edges:a,controlPanel:r});e({...$caozj$jsondiffpatch.patch(l,i),history:{...c,pointer:n+1,skipCollect:!0}})},clear:()=>{let{history:t}=o();e({history:{...t,buffer:[],pointer:0,skipCollect:!0}})}}}),$331e8cc12b56225f$var$COLLECT_CHANGES_DEBOUNCE_TIME=500,$331e8cc12b56225f$export$4e64751394766316=(e,o)=>{let t,a=$caozj$jsondiffpatch.create({propertyFilter:(e,o)=>!!(o.parent?.parent?.childName==="controlPanel"||["data","position","controlPanel"].includes(o.parent?.childName))||["controlPanel","size","edges","nodes","data","label","config","values","position","x","y"].includes(e)}),r=o();return(e,c)=>{e.currentFileIndex!==c.currentFileIndex&&o().history.clear(),clearTimeout(t),r||(r=c),t=setTimeout(()=>{let t=a.diff(r,e);r=null,t&&o().history.push(t)},500)}},$331e8cc12b56225f$var$history=e=>(o,t,a)=>{let r=$331e8cc12b56225f$export$4e64751394766316(o,t);return a.subscribe(r),e((...e)=>o(...e),t,a)};var $331e8cc12b56225f$export$2e2bcd8739ae039=$331e8cc12b56225f$var$history;let $da4c6b41b8ae7cde$export$e364ea0c1dfb25e5=(e,o)=>{let t=new Set(e.map(e=>e.id)),a=new Set(o.map(e=>e.id));return{added:o.filter(e=>!t.has(e.id)),removed:e.filter(e=>!a.has(e.id))}},$b211801beda71ba9$export$62647b40ff8aed70=(e,o)=>({patch:(0,$caozj$webnoisepatch.createPatch)(),nodesState:{}}),$b211801beda71ba9$var$audioPatch=e=>(o,t,a)=>{a.subscribe(async(e,o)=>{});let r=new Set,c={...t(),nodes:[],edges:[]};return e(async(...e)=>{let a=t(),[$]=e,n={...c,..."function"==typeof $?$({...c}):$},i=$da4c6b41b8ae7cde$export$e364ea0c1dfb25e5(c.nodes,n.nodes),l=$da4c6b41b8ae7cde$export$e364ea0c1dfb25e5(c.edges,n.edges);c=n;let d=i.added,s=l.added,p=l.removed,f=i.removed,{patch:b}=a;if(d.length){let e=b.registerAudioNodes(d);r.add(e),await e,r.delete(e)}if(!(s.length||p.length||f.length))return void o(...e);if(r.size)try{await Promise.all([...r.values()])}catch(e){console.log("some error",e)}s.length&&b.registerAudioConnections(s),p.length&&b.unregisterAudioConnections(p),f.length&&b.unregisterAudioNodes(f),o(...e)},t,a)};var $b211801beda71ba9$export$2e2bcd8739ae039=$b211801beda71ba9$var$audioPatch;let $1e18e5fb2b00badb$export$e698b79c63b74136=e=>!("type"in e)||"patch"===e.type,$1e18e5fb2b00badb$export$31c2336f657dc59f=e=>"audio"===e.type,$747551d8c11c3c40$var$projectStateCreator=(e,o)=>({project:{files:[]},setProject(o){e({project:o,currentFileIndex:0})},getProject:()=>o().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:t,updateFileContent:a,project:r}=o(),c=r.files[t];"audio"!==c.type&&a(t,{...c,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:t,project:a}=o(),r=a.files[e];if("audio"===r.type)return void console.log("audio file. skipping");t(r.file)},currentFileIndex:0,setCurrentFileIndex(t){let{currentFileIndex:a}=o();t!==a&&e({currentFileIndex:t})},updateFileContent(t,a){let{project:r}=o();e({project:{...r,files:r.files.map((e,o)=>o===t?{...e,...a}:e)}})},updateFileName(t,a){let{project:r}=o();e({project:{...r,files:r.files.map((e,o)=>o===t?{...e,name:a}:e)}})},addFile(t){let{project:a}=o(),r=[...a.files,t];e({project:{...a,files:r}})},deleteFile:t=>{let{project:a,currentFileIndex:r}=o();e({project:{...a,files:a.files.filter((e,o)=>t!==o)}}),t<=r&&e({currentFileIndex:r-1})}});var $747551d8c11c3c40$export$2e2bcd8739ae039=$747551d8c11c3c40$var$projectStateCreator;let $a4b2e20cc96e08f7$export$34c5bc865219488e=(...e)=>{let[o,t]=e;return{...$5885b1961eda60a3$export$2e2bcd8739ae039(...e),...$331e8cc12b56225f$export$b1b92d12d1c2ae0e(...e),...$b211801beda71ba9$export$62647b40ff8aed70(...e),...$747551d8c11c3c40$export$2e2bcd8739ae039(...e),setGraph:async({nodes:e,edges:o})=>{let{patch:a,createNodes:r,createEdges:c,setNodesAndEdges:$,nodes:n,edges:i}=t();$({nodes:[],edges:[]}),await r(e),c(o)},clearGraph:()=>{let{setGraph:e}=t();e({nodes:[],edges:[]})},createNodes:async e=>{let{createNode:o}=t();await Promise.all(e.map(e=>o(e)))},createNode:e=>{let{addNode:o,nodesConfiguration:a}=t(),{type:r,id:c,data:$}=e;if(void 0===r)throw Error(`node type is not defined for node: ${c}`);o({...e,data:{...$,config:{...a[r]?.defaultConfig,...$?.config}}})},removeNode:e=>t().removeNodes([e]),removeNodes:e=>{let{edges:a,nodes:r,onNodesDelete:c,removeEdges:$,removeNodesFromControlPanel:n}=t(),i=e.map(({id:e})=>e),l=[...e,...r.filter(({parentNode:e})=>e&&i.includes(e))];n(l),$((0,$caozj$reactflow.getConnectedEdges)(l,a)),c(l);let d=l.map(({id:e})=>e);o({nodes:r.filter(({id:e})=>!d.includes(e))})},removeEdges:e=>{let{edges:a,onEdgesDelete:r}=t(),c=e.map(({id:e})=>e);r(e),o({edges:a.filter(({id:e})=>!c.includes(e))})},createEdges:e=>{let{patch:o,edges:a,setEdges:r}=t();r(e)},onConnect:async e=>{let{edges:o,createEdges:a}=t();a((0,$caozj$reactflow.addEdge)(e,o))},onEdgesDelete:e=>{let{patch:o}=t()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:o,patch:a}=t();o(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:a}=t();o({plugins:e});let r=e.reduce((e,o)=>({...e,...o.components.reduce((e,o)=>({...e,[o.type]:o}),{})}),{}),c=Object.keys(r).reduce((e,o)=>({...e,[o]:r[o].node}),{}),$=Object.keys(r).reduce((e,o)=>({...e,[o]:r[o].audioNode}),{});(0,$caozj$webnoisepatch.setAudioNodeTypes)($),a(c),o(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...r}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{o(({config:o})=>({config:{...o,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:o,viewport:a}=t();return{...e(),controlPanel:o,viewport:a}},setEditorState:async({nodes:e,edges:a,controlPanel:r,viewport:c})=>{let{setGraph:$}=t();await $({nodes:e,edges:a}),await new Promise(e=>setTimeout(e,1e3)),o({controlPanel:r,viewport:c})},isHelpShown:!1,toggleHelp:()=>{let{isHelpShown:e}=t();o({isHelpShown:!e})},copyBuffer:{nodes:[],edges:[]},copy:e=>{o({copyBuffer:e})},copySelectedItems:()=>{let{nodes:e,edges:o,copy:a}=t(),r=e.filter(({selected:e})=>e),c=o.filter(({selected:e})=>e);r.length&&a({nodes:r,edges:c})},pasteBuffer:(e=0,a=0)=>{let{copyBuffer:r,createNodes:c,setEdges:$,nodes:n,edges:i}=t(),{nodes:l,edges:d}=r;if(!l.length)return;o({nodes:n.map(e=>({...e,selected:!1}))});let s=l.reduce((e,o)=>!e||o.position.x<e.position.x&&o.position.y<e.position.y?o:e),p=s.position.x-e,f=s.position.y-a,{nodes:b,mapping:u}=l.reduce((e,o)=>{let t=$49097eb29535ab95$export$2e2bcd8739ae039(o);return{nodes:[...e.nodes,{...o,id:t,position:{x:o.position.x-p,y:o.position.y-f},selected:!0}],mapping:{...e.mapping,[o.id]:t}}},{nodes:[],mapping:{}});c(b);let h=d.map(e=>{let o=u[e.source]||e.source,t=u[e.target]||e.target;return{...e,id:e.id.replace(e.source,o).replace(e.target,t),source:o,target:t,selected:!0}});$([...i.map(e=>({...e,selected:!1})),...h])},getControlPanelNode:e=>{let{nodesConfiguration:o}=t(),{type:a}=e;if(!a)return null;let r=o[a]?.controlPanelNode;return r||(console.error(`could not find node for type ${a}`),null)},controlPanel:{show:!0,nodes:[],size:{width:200,height:100}},showControlPanel:()=>o(({controlPanel:e})=>({controlPanel:{...e,show:!0}})),hideControlPanel:()=>o(({controlPanel:e})=>({controlPanel:{...e,show:!1}})),addNodeToControlPanel:e=>{let{nodesConfiguration:a}=t(),r=e.type?a[e.type]?.defaultConfig:{},{height:c}=r?.size||{},$={id:e.id,...c?{height:c/$5178a3ce324b2b47$export$9f05d3e6ade4c09e.rowHeight}:{}};o(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,$]}}))},removeNodeFromControlPanel:e=>t().removeNodesFromControlPanel([e]),removeNodesFromControlPanel:e=>{let t=e.map(({id:e})=>e);o(({controlPanel:e})=>{let o=e.nodes.filter(({id:e})=>!t.includes(e));return{controlPanel:{...e,nodes:o}}})},setControlPanelNodes:e=>{o(({controlPanel:o})=>({controlPanel:{...o,nodes:e}}))},setControlPanelSize:e=>{o(({controlPanel:o})=>({controlPanel:{...o,size:e}}))},viewport:{x:0,y:0,zoom:1},setViewport:e=>o({viewport:e})}},$a4b2e20cc96e08f7$var$useStore=(0,$caozj$zustand.create)($b211801beda71ba9$export$2e2bcd8739ae039($331e8cc12b56225f$export$2e2bcd8739ae039($a4b2e20cc96e08f7$export$34c5bc865219488e)));var $a4b2e20cc96e08f7$export$2e2bcd8739ae039=$a4b2e20cc96e08f7$var$useStore;let $568a6d17827a8280$var$LEVA_COLOR_ACCENT2_BLUE="#007bff",$568a6d17827a8280$var$COLOR_GREEN_PRIMARY="#14df42",$568a6d17827a8280$var$COLOR_WHITE_PRIMARY="#ffffff",$568a6d17827a8280$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"},$568a6d17827a8280$var$zIndex={modal:9998,controlPanel:9999,resumeContextLayout:10003},$568a6d17827a8280$var$theme={colors:$568a6d17827a8280$var$colors,zIndex:$568a6d17827a8280$var$zIndex};var $568a6d17827a8280$export$2e2bcd8739ae039=$568a6d17827a8280$var$theme;(0,$caozj$emotioncss.injectGlobal)`
26
- .react-flow {
27
- .react-flow__pane {
28
- /* background: rgb(106 106 106); */
29
- /* background: "white"; */
30
- // background: #292d39;
31
- background: ${$568a6d17827a8280$export$2e2bcd8739ae039.colors.elevation3};
32
- }
33
-
34
- .react-flow__background {
35
- /* background: #efefef; */
36
- stroke: white;
37
- }
38
-
39
- .react-flow__node-default {
40
- background: #292d39;
41
- color: white;
42
- border: none;
43
- /* background: transparent; */
44
- }
45
-
46
- .react-flow__node {
47
- padding: 0;
48
- width: auto;
49
- }
50
-
51
- .react-flow__edge-path {
52
- stroke: ${$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2};
53
- }
54
-
55
- .react-flow__node.selected {
56
- border: 1px solid ${$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2};
57
- box-shadow: 0 0 0 0.5px #${$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2};
58
- }
59
-
60
- .react-flow__node-default.selected, .react-flow__node-default.selected:hover {
61
- box-shadow: 0 0 0 0.5px #${$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2};
62
- }
63
-
64
- /* .react-flow__minimap-mask {
65
- fill: ${$568a6d17827a8280$export$2e2bcd8739ae039.colors.elevation1}
66
- }
67
-
68
- .react-flow__minimap-node {
69
- fill:${$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2}
70
- } */
71
- }
72
-
73
- `;let $b6f26e2fe31b9321$export$ef9839ae55b8ba40=$parcel$interopDefault($caozj$emotionstyled)($caozj$reactcontexify.Item)``,$b6f26e2fe31b9321$export$98eff9c5659394e3=$parcel$interopDefault($caozj$emotionstyled)($caozj$reactcontexify.Menu)`
74
- background: ${({colors:e})=>e.elevation2};
75
- padding: 0;
76
- border-radius: 0;
77
-
78
- .react-contexify__item__content {
79
- color: ${({colors:e})=>e.whitePrimary};
80
- }
81
-
82
- .react-contexify__separator {
83
- background-color: ${({colors:e})=>e.elevation1};
84
- margin: 0;
85
- }
86
- `,$a21c860b5409030f$export$d4cd258d01c03112="editor-edge-menu",$a21c860b5409030f$export$8b2e4a15453bac1e=()=>{let{show:e}=(0,$caozj$reactcontexify.useContextMenu)({id:$a21c860b5409030f$export$d4cd258d01c03112});return{onContextMenu:(0,$caozj$react.useCallback)((o,t)=>{o.stopPropagation(),e(o,{props:{edge:t}})},[e])}},$a21c860b5409030f$var$EdgeContextMenu=()=>{let e=$0698271e00ab9da6$export$2e2bcd8739ae039(),o=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.removeEdges);return(0,$caozj$reactjsxruntime.jsx)($caozj$reactjsxruntime.Fragment,{children:(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$98eff9c5659394e3,{id:$a21c860b5409030f$export$d4cd258d01c03112,animation:!1,colors:e.colors,children:(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:e=>o([e.props.edge]),children:"Delete Edge (DEL)"})})})};var $a21c860b5409030f$export$2e2bcd8739ae039=$a21c860b5409030f$var$EdgeContextMenu;let $5f06888a8c8b5d16$var$PluginsWrapper=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
87
- width: 100%;
88
- `),$5f06888a8c8b5d16$var$PluginWrapper=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
89
- padding: 1rem;
90
- display: flex;
91
- flex-direction: column;
92
- gap: 1rem;
93
- `),$5f06888a8c8b5d16$var$NodesList=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).ul`
94
- list-style: none;
95
- margin: 0;
96
- padding: 0;
97
- padding-bottom: 10px;
98
- columns: 2;
99
-
100
- li {
101
- display: flex;
102
- flex-direction: column;
103
- gap: 8px;
104
- padding: 4px;
105
- overflow: hidden;
106
- border: 1px solid ${({theme:e})=>e.colors.elevation3};
107
- border-radius: 4px;
108
- margin-bottom: 0.5rem;
109
- &:hover {
110
- border-color: ${({theme:e})=>e.colors.accent2};
111
- cursor: pointer;
112
- }
113
- }
114
- `),$5f06888a8c8b5d16$var$NodeTitle=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
115
- white-space: nowrap;
116
- overflow: hidden;
117
- text-overflow: ellipsis;
118
- `),$5f06888a8c8b5d16$var$NodeDescription=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
119
- color: ${({theme:e})=>e.colors.highlight2};
120
- font-size: 12px;
121
- `),$5f06888a8c8b5d16$export$48f6b48a42d49a36=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
122
- display: flex;
123
- gap: 0.2rem;
124
- flex-wrap: wrap;
125
- `),$5f06888a8c8b5d16$export$7129a6e2db131a76=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).span`
126
- cursor: pointer;
127
- font-size: 10px;
128
- background: ${({theme:e,isActive:o})=>o?e.colors.highlight1:e.colors.elevation3};
129
- border-radius: 2px;
130
- padding: 0.1rem 0.2rem;
131
- border: 1px solid;
132
- border-color: ${({theme:e})=>e.colors.elevation2};
133
- &:hover {
134
- border-color: ${({theme:e})=>e.colors.accent2};
135
- }
136
- `),$5f06888a8c8b5d16$var$PluginHeader=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div``),$5f06888a8c8b5d16$var$PluginTitle=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
137
- font-size: 1.1rem;
138
- padding: 0.25rem 0;
139
- color: ${({theme:e})=>e.colors.highlight3};
140
- `),$5f06888a8c8b5d16$var$PluginDescription=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
141
- color: ${({theme:e})=>e.colors.highlight2};
142
- font-size: 12px;
143
- `),$5f06888a8c8b5d16$var$Plugins=({onComponentClick:e,filters:{plugin:o,search:t="",tags:a},onTagClick:r})=>{let c=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({plugins:e})=>e),$=(0,$caozj$react.useMemo)(()=>o?c.filter(({name:e})=>e===o):c,[c,o]),n=(0,$caozj$react.useMemo)(()=>t||a?.length?$.map(e=>({...e,components:a?.length?e.components.filter(e=>a?.every(o=>e.tags?.includes(o))):e.components})).map(e=>({...e,components:e.components.filter(({type:e,name:o})=>e.toLocaleLowerCase().includes(t.toLocaleLowerCase())||o?.toLocaleLowerCase().includes(t.toLocaleLowerCase()))})):$,[$,t,a]);return(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$PluginsWrapper,{children:n.map(({name:o,description:t,components:c},$)=>c.length?(0,$caozj$reactjsxruntime.jsxs)($5f06888a8c8b5d16$var$PluginWrapper,{children:[(0,$caozj$reactjsxruntime.jsxs)($5f06888a8c8b5d16$var$PluginHeader,{children:[(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$PluginTitle,{children:o}),(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$PluginDescription,{children:t})]}),(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$NodesList,{children:c.sort((e,o)=>e.type.toLowerCase()>o.type.toLowerCase()?1:-1).map((o,t)=>(0,$caozj$reactjsxruntime.jsxs)("li",{onClick:()=>e(o),children:[(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$NodeTitle,{children:o.name||o.type}),o.description&&(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$var$NodeDescription,{children:o.description}),(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$export$48f6b48a42d49a36,{children:o.tags?.map((e,o)=>(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$export$7129a6e2db131a76,{isActive:a?.includes(e),onClickCapture:o=>{o.stopPropagation(),r(e)},children:e},o))})]},t))})]},$):null)})};var $5f06888a8c8b5d16$export$2e2bcd8739ae039=$5f06888a8c8b5d16$var$Plugins;let $9ad4f8b44c524320$var$InputWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
144
- display: flex;
145
- position: relative;
146
- `,$9ad4f8b44c524320$var$InputInner=$parcel$interopDefault($caozj$emotionstyled).input`
147
- padding-right: 2rem;
148
- padding-left: 0.3rem;
149
- width: 100%;
150
- appearance: textfield;
151
- font-size: inherit;
152
- background: none;
153
- border: none;
154
- color: var(--leva-colors-highlight1);
155
- font-family: var(--leva-fonts-mono);
156
- cursor: inherit;
157
- text-overflow: ellipsis;
158
- outline: none;
159
- appearance: textfield;
160
- cursor: auto;
161
- background-color: ${({theme:e})=>e.colors.elevation3};
162
- border-radius: 0.1rem;
163
- height: 2rem;
164
- color: ${({theme:e})=>e.colors.highlight2};
165
-
166
- &:focus,
167
- &:hover {
168
- box-shadow: 0 0 0 var(--leva-borderWidths-focus)
169
- ${({theme:e})=>e.colors.accent2};
170
- color: ${({theme:e})=>e.colors.whitePrimary};
171
- }
172
- &::-webkit-inner-spin-button,
173
- &::-webkit-outer-spin-button {
174
- -webkit-appearance: none;
175
- margin-right: 1rem;
176
- }
177
- `,$9ad4f8b44c524320$var$FiltersWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
178
- display: flex;
179
- flex-direction: column;
180
- padding: 0.6rem;
181
- gap: 0.6rem;
182
- border-right: 1px solid ${({theme:e})=>e.colors.elevation3};
183
- min-width: 14rem;
184
- `,$9ad4f8b44c524320$var$PluginName=$parcel$interopDefault($caozj$emotionstyled).label`
185
- user-select: none;
186
- input {
187
- display: none;
188
- }
189
- input:checked + span {
190
- color: ${({theme:e})=>e.colors.accent2};
191
- }
192
- &:hover {
193
- color: ${({theme:e})=>e.colors.accent3};
194
- cursor: pointer;
195
- }
196
- `,$9ad4f8b44c524320$var$StyledPluginTag=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($5f06888a8c8b5d16$export$7129a6e2db131a76)`
197
- font-size: 12px;
198
- padding: 0.2rem 0.4rem;
199
- &:hover {
200
- }
201
- &::after {
202
- content: "×";
203
- margin-left: 0.4rem;
204
- }
205
- `),$9ad4f8b44c524320$var$Filters=({onChange:e,value:o})=>{let t=$0698271e00ab9da6$export$2e2bcd8739ae039(),a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({plugins:e})=>e),r=(0,$caozj$react.useRef)(null);return(0,$caozj$react.useEffect)(()=>{r.current&&r.current.focus()},[r]),(0,$caozj$reactjsxruntime.jsxs)($9ad4f8b44c524320$var$FiltersWrapper,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)($9ad4f8b44c524320$var$InputWrapper,{children:(0,$caozj$reactjsxruntime.jsx)($9ad4f8b44c524320$var$InputInner,{ref:r,theme:t,value:o.search||"",placeholder:"search...",onChange:t=>e({...o,search:t.target.value})})}),(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$export$48f6b48a42d49a36,{children:o.tags?.map((t,a)=>(0,$caozj$reactjsxruntime.jsx)($9ad4f8b44c524320$var$StyledPluginTag,{isActive:!0,onClick:()=>{let a=o.tags?.filter(e=>e!==t)||[];e({...o,tags:a})},children:t},a))}),a.map(({name:a,components:r},c)=>a?(0,$caozj$reactjsxruntime.jsxs)($9ad4f8b44c524320$var$PluginName,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)("input",{type:"checkbox",name:"plugin",value:a,checked:a===o.plugin,onChange:()=>{e({...o,plugin:a===o.plugin?null:a})}}),(0,$caozj$reactjsxruntime.jsx)("span",{children:a})]},c):null)]})};var $9ad4f8b44c524320$export$2e2bcd8739ae039=$9ad4f8b44c524320$var$Filters;let $dacfdcecc6160b7c$var$AddNodeWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
206
- height: 100%;
207
- width: 100%;
208
- display: flex;
209
- gap: 1rem;
210
- `,$dacfdcecc6160b7c$var$PluginsPanel=$parcel$interopDefault($caozj$emotionstyled).div`
211
- flex-grow: 1;
212
- height: 100%;
213
- overflow-y: scroll;
214
- `,$dacfdcecc6160b7c$var$AddNode=({isOpen:e,closeMenu:o,mousePosition:t})=>{let a=$0698271e00ab9da6$export$2e2bcd8739ae039(),{screenToFlowPosition:r}=(0,$caozj$reactflow.useReactFlow)(),{createNode:c}=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({createNode:e})=>({createNode:e})),[$,n]=(0,$caozj$react.useState)({}),i=(0,$caozj$react.useCallback)(({type:e})=>{let{x:a,y:$}=r(t);c({id:`${e}-${+new Date}`,type:e,data:{label:e},position:{x:a,y:$},targetPosition:$caozj$reactflow.Position.Left,sourcePosition:$caozj$reactflow.Position.Right}),o()},[t,r,c,o,t]);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:()=>{o(),n({})},children:(0,$caozj$reactjsxruntime.jsxs)($dacfdcecc6160b7c$var$AddNodeWrapper,{theme:a,children:[(0,$caozj$reactjsxruntime.jsx)($9ad4f8b44c524320$export$2e2bcd8739ae039,{onChange:n,value:$}),(0,$caozj$reactjsxruntime.jsx)($dacfdcecc6160b7c$var$PluginsPanel,{theme:a,children:(0,$caozj$reactjsxruntime.jsx)($5f06888a8c8b5d16$export$2e2bcd8739ae039,{filters:$,onTagClick:e=>{n(o=>({...o,tags:o.tags?.includes(e)?o.tags.filter(o=>o!==e):[...o.tags||[],e]}))},onComponentClick:e=>{i(e),n({})}})})]})}):null};var $dacfdcecc6160b7c$export$2e2bcd8739ae039=$dacfdcecc6160b7c$var$AddNode;let $ba1ef3a14349b06b$var$UploadPatchWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
215
- display: flex;
216
- align-items: center;
217
- justify-content: center;
218
- height: 100%;
219
- width: 100%;
220
-
221
- .drop-zone-wrapper {
222
- width: 80%;
223
- height: 80%;
224
- }
225
-
226
- .drop-zone {
227
- height: 100%;
228
- width: 100%;
229
- border-style: dashed;
230
- border-width: 2px;
231
- border-color: ${({theme:e})=>e.colors.highlight2};
232
- opacity: 0.5;
233
- cursor: pointer;
234
- }
235
-
236
- .drop-zone:hover,
237
- .drop-zone-drag-over {
238
- opacity: 1;
239
- }
240
- `,$ba1ef3a14349b06b$var$DropZoneInner=$parcel$interopDefault($caozj$emotionstyled).div`
241
- display: flex;
242
- flex-wrap: wrap;
243
- align-items: center;
244
- justify-content: center;
245
- height: 100%;
246
- width: 100%;
247
- `,$ba1ef3a14349b06b$var$FileUploadIcon=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsfa.FaFileUpload)`
248
- width: 100%;
249
- height: 8rem;
250
- `,$ba1ef3a14349b06b$var$FileUploadMessage=$parcel$interopDefault($caozj$emotionstyled).div`
251
- font-size: 2rem;
252
- `,$ba1ef3a14349b06b$var$UploadPatch=({isOpen:e,closeMenu:o})=>{let t=$0698271e00ab9da6$export$2e2bcd8739ae039(),a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({setGraph:e})=>e),r=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setEditorState),c=(0,$caozj$react.useRef)(null),$=(0,$caozj$react.useCallback)(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{r(e),o()}).catch(console.error)},[a,o]);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:o,children:(0,$caozj$reactjsxruntime.jsxs)($ba1ef3a14349b06b$var$UploadPatchWrapper,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>$(e),ref:c,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{c.current?.click()},onDrop:e=>$(e),children:(0,$caozj$reactjsxruntime.jsxs)($ba1ef3a14349b06b$var$DropZoneInner,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)($ba1ef3a14349b06b$var$FileUploadIcon,{}),(0,$caozj$reactjsxruntime.jsx)($ba1ef3a14349b06b$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $ba1ef3a14349b06b$export$2e2bcd8739ae039=$ba1ef3a14349b06b$var$UploadPatch;let $b3b3e103952078f0$var$UploadProjectWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
253
- display: flex;
254
- align-items: center;
255
- justify-content: center;
256
- height: 100%;
257
- width: 100%;
258
-
259
- .drop-zone-wrapper {
260
- width: 80%;
261
- height: 80%;
262
- }
263
-
264
- .drop-zone {
265
- height: 100%;
266
- width: 100%;
267
- border-style: dashed;
268
- border-width: 2px;
269
- border-color: ${({theme:e})=>e.colors.highlight2};
270
- opacity: 0.5;
271
- cursor: pointer;
272
- }
273
-
274
- .drop-zone:hover,
275
- .drop-zone-drag-over {
276
- opacity: 1;
277
- }
278
- `,$b3b3e103952078f0$var$DropZoneInner=$parcel$interopDefault($caozj$emotionstyled).div`
279
- display: flex;
280
- flex-wrap: wrap;
281
- align-items: center;
282
- justify-content: center;
283
- height: 100%;
284
- width: 100%;
285
- `,$b3b3e103952078f0$var$FileUploadIcon=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsfa.FaFileUpload)`
286
- width: 100%;
287
- height: 8rem;
288
- `,$b3b3e103952078f0$var$FileUploadMessage=$parcel$interopDefault($caozj$emotionstyled).div`
289
- font-size: 2rem;
290
- `,$b3b3e103952078f0$var$UploadProject=({isOpen:e,closeMenu:o})=>{let t=$0698271e00ab9da6$export$2e2bcd8739ae039(),a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setProject),r=(0,$caozj$react.useRef)(null),c=(0,$caozj$react.useCallback)(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{a(e),o()}).catch(console.error)},[a,o]);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:o,children:(0,$caozj$reactjsxruntime.jsxs)($b3b3e103952078f0$var$UploadProjectWrapper,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>c(e),ref:r,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{r.current?.click()},onDrop:e=>c(e),children:(0,$caozj$reactjsxruntime.jsxs)($b3b3e103952078f0$var$DropZoneInner,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)($b3b3e103952078f0$var$FileUploadIcon,{}),(0,$caozj$reactjsxruntime.jsx)($b3b3e103952078f0$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $b3b3e103952078f0$export$2e2bcd8739ae039=$b3b3e103952078f0$var$UploadProject;let $0ca2c67512b39afe$var$useWorker=e=>{let[o,t]=(0,$caozj$react.useState)(null);return(0,$caozj$react.useEffect)(()=>{let o=new Worker(e);return t(o),()=>{o?.terminate(),t(null)}},[]),o};var $0ca2c67512b39afe$export$2e2bcd8739ae039=$0ca2c67512b39afe$var$useWorker;let $cdaddb391dacbc64$var$useMessageChannel=()=>{let[e,o]=(0,$caozj$react.useState)(null);return(0,$caozj$react.useEffect)(()=>{let e=new MessageChannel;return e.port2.start(),o(e),()=>{o(null),e.port2.close()}},[]),e};var $cdaddb391dacbc64$export$2e2bcd8739ae039=$cdaddb391dacbc64$var$useMessageChannel;let $0423b2b326ba441a$export$cd440e094f060920=(e,o,t)=>{void 0!==o&&e.setValueAtTime(o,t.currentTime)},$0423b2b326ba441a$export$25df2e315be8e003=e=>new Promise((o,t)=>{let a=new FileReader;a.readAsDataURL(e),a.onload=()=>o(a.result?.toString()||""),a.onerror=e=>t(e)}),$e133267101e63970$var$UploadAudioWrapper=$parcel$interopDefault($caozj$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
- `,$e133267101e63970$var$DropZoneInner=$parcel$interopDefault($caozj$emotionstyled).div`
317
- display: flex;
318
- flex-wrap: wrap;
319
- align-items: center;
320
- justify-content: center;
321
- height: 100%;
322
- width: 100%;
323
- `,$e133267101e63970$var$FileUploadIcon=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsfa.FaFileUpload)`
324
- width: 100%;
325
- height: 8rem;
326
- `,$e133267101e63970$var$FileUploadMessage=$parcel$interopDefault($caozj$emotionstyled).div`
327
- font-size: 2rem;
328
- `,$e133267101e63970$var$UploadAudio=({isOpen:e,closeMenu:o})=>{let t=$0698271e00ab9da6$export$2e2bcd8739ae039();$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({setGraph:e})=>e),$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setEditorState);let a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.addFile),r=(0,$caozj$react.useRef)(null),c=(0,$caozj$react.useCallback)(async e=>{let[t]=e||[],r=await $0423b2b326ba441a$export$25df2e315be8e003(t);a({type:"audio",id:`audio-file-${+new Date}`,name:t.name,file:r}),o()},[a,o]);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:o,children:(0,$caozj$reactjsxruntime.jsxs)($e133267101e63970$var$UploadAudioWrapper,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)("input",{onChange:({target:{files:e}})=>c(e),ref:r,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactfiledrop.FileDrop,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{r.current?.click()},onDrop:e=>c(e),children:(0,$caozj$reactjsxruntime.jsxs)($e133267101e63970$var$DropZoneInner,{theme:t,children:[(0,$caozj$reactjsxruntime.jsx)($e133267101e63970$var$FileUploadIcon,{}),(0,$caozj$reactjsxruntime.jsx)($e133267101e63970$var$FileUploadMessage,{children:"click or drop file here"})]})})]})}):null};var $e133267101e63970$export$2e2bcd8739ae039=$e133267101e63970$var$UploadAudio;let $19aed452b4ca6552$export$d4cd258d01c03112="editor-menu",$19aed452b4ca6552$export$59ce2a6808e35a29=()=>{let{show:e}=(0,$caozj$reactcontexify.useContextMenu)({id:$19aed452b4ca6552$export$d4cd258d01c03112});return{onContextMenu:e}},$19aed452b4ca6552$var$EditorContextMenu=({editorContextMenu:e=[]})=>{let o=$0698271e00ab9da6$export$2e2bcd8739ae039(),[t,a]=(0,$caozj$react.useState)({x:0,y:0}),[r,c]=(0,$caozj$react.useState)(!1),[$,n]=(0,$caozj$react.useState)(!1),[i,l]=(0,$caozj$react.useState)(!1),[d,s]=(0,$caozj$react.useState)(!1),p=(0,$caozj$react.useCallback)((e,o)=>{a({x:e,y:o}),c(!0)},[c]),f=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.pasteBuffer),{screenToFlowPosition:b}=(0,$caozj$reactflow.useReactFlow)(),u=(0,$caozj$react.useCallback)(e=>{let{x:o,y:t}=b(e);f(o,t)},[c,b]),h=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({clearGraph:e})=>e),x=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.getEditorState),m=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.getProject),j=(0,$caozj$react.useCallback)(()=>{h()},[h]),g=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.toggleHelp),v=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.history.back),z=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.history.forward),y=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.history.pointer),w=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.history.buffer),C=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.copySelectedItems),k=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.nodes),D=(0,$caozj$react.useMemo)(()=>k.filter(({selected:e})=>e),[k]),P=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.copyBuffer),N=(0,$caozj$reactflow.useReactFlow)(),S=(0,$caozj$react.useCallback)(()=>{let e={...x()};$parcel$interopDefault($caozj$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-patch.json")},[x,N]),I=(0,$caozj$react.useCallback)(()=>{let e={...m()};$parcel$interopDefault($caozj$jsfiledownload)(JSON.stringify(e,null,2),"web-noise-project.json")},[x,N]);return(0,$caozj$react.useEffect)(()=>($parcel$interopDefault($caozj$hotkeysjs)("command+shift+a",()=>(p(200,50),!1)),$parcel$interopDefault($caozj$hotkeysjs)("shift+/",()=>(g(),!1)),$parcel$interopDefault($caozj$hotkeysjs)("command+z",()=>(v(),!1)),$parcel$interopDefault($caozj$hotkeysjs)("command+shift+z",()=>(z(),!1)),$parcel$interopDefault($caozj$hotkeysjs)("command+c",()=>(C(),!1)),$parcel$interopDefault($caozj$hotkeysjs)("command+v",()=>(u({x:200,y:50}),!1)),()=>{$parcel$interopDefault($caozj$hotkeysjs).unbind()}),[p,u]),(0,$caozj$reactjsxruntime.jsxs)($caozj$reactjsxruntime.Fragment,{children:[(0,$caozj$reactjsxruntime.jsx)($dacfdcecc6160b7c$export$2e2bcd8739ae039,{isOpen:r,closeMenu:()=>c(!1),mousePosition:t}),(0,$caozj$reactjsxruntime.jsx)($ba1ef3a14349b06b$export$2e2bcd8739ae039,{isOpen:$,closeMenu:()=>n(!1)}),(0,$caozj$reactjsxruntime.jsx)($b3b3e103952078f0$export$2e2bcd8739ae039,{isOpen:i,closeMenu:()=>l(!1)}),(0,$caozj$reactjsxruntime.jsx)($e133267101e63970$export$2e2bcd8739ae039,{isOpen:d,closeMenu:()=>s(!1)}),(0,$caozj$reactjsxruntime.jsxs)($b6f26e2fe31b9321$export$98eff9c5659394e3,{id:$19aed452b4ca6552$export$d4cd258d01c03112,animation:!1,colors:o.colors,children:[(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:({triggerEvent:{clientX:e,clientY:o}})=>p(e,o),children:"Add Node (⌘+⇧+A)"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:j,children:"Delete All"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:S,children:"Download patch"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:()=>n(!0),children:"Upload patch"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:I,children:"Download project"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:()=>l(!0),children:"Upload project"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:()=>s(!0),children:"Upload Audio File"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{disabled:0===y,onClick:v,children:"Undo (⌘+z)"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{disabled:y===w.length,onClick:z,children:"Redo (⌘+⇧+Z)"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{disabled:!D.length,onClick:C,children:"Copy Selected (⌘+c)"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{disabled:!P.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:o}})=>u({x:e,y:o}),children:"Paste (⌘+v)"}),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),e.map((e,o)=>(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{children:e},o)),(0,$caozj$reactjsxruntime.jsx)($caozj$reactcontexify.Separator,{}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:g,children:"Help (⇧+?)"})]})]})};var $19aed452b4ca6552$export$2e2bcd8739ae039=$19aed452b4ca6552$var$EditorContextMenu;let $1da8729706dfa00a$export$d4cd258d01c03112="editor-node-menu",$1da8729706dfa00a$export$cbbbfb9fb15f3780=()=>{let{show:e}=(0,$caozj$reactcontexify.useContextMenu)({id:$1da8729706dfa00a$export$d4cd258d01c03112});return{onContextMenu:(0,$caozj$react.useCallback)((o,t)=>{o.stopPropagation(),e(o,{props:{node:t}})},[])}},$1da8729706dfa00a$var$NodeContextMenu=e=>{let o=$0698271e00ab9da6$export$2e2bcd8739ae039(),t=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.removeNodes),a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.addNodeToControlPanel),r=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),c=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.copy),$=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.nodesConfiguration),n=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.controlPanel.nodes),i=(0,$caozj$react.useCallback)(({props:e})=>!!e?.node.type&&!!n.find(({id:o})=>o===e.node.id),[n]),l=(0,$caozj$react.useCallback)(({props:e})=>{if(!e?.node.type)return!1;let o=$[e.node.type];return!!o?.controlPanelNode},[$]);return(0,$caozj$reactjsxruntime.jsx)($caozj$reactjsxruntime.Fragment,{children:(0,$caozj$reactjsxruntime.jsxs)($b6f26e2fe31b9321$export$98eff9c5659394e3,{id:$1da8729706dfa00a$export$d4cd258d01c03112,animation:!1,colors:o.colors,children:[(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:e=>t([e.props.node]),children:"Delete Node (DEL)"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{hidden:(...e)=>!l(...e)||i(...e),onClick:e=>a(e.props.node),children:"Add To Control Panel"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{hidden:(...e)=>!l(...e)||!i(...e),onClick:e=>r(e.props.node),children:"Remove From Control Panel"}),(0,$caozj$reactjsxruntime.jsx)($b6f26e2fe31b9321$export$ef9839ae55b8ba40,{onClick:e=>c({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})};var $1da8729706dfa00a$export$2e2bcd8739ae039=$1da8729706dfa00a$var$NodeContextMenu;let $e4411f5b87a3c2d0$var$useAudioNode=e=>$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({patch:e})=>e).audioNodes.get(e);var $e4411f5b87a3c2d0$export$2e2bcd8739ae039=$e4411f5b87a3c2d0$var$useAudioNode;let $6ae666aef4670faa$var$useNode=e=>{let o=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({updateNodeData:e})=>e),t=(0,$caozj$react.useCallback)(t=>o(e,{values:t}),[e,o]);return{updateNodeValues:t,updateNodeConfig:(0,$caozj$react.useCallback)(t=>o(e,{config:t}),[e,o]),updateNodeLabel:(0,$caozj$react.useCallback)(t=>o(e,{label:t}),[e,o])}};var $6ae666aef4670faa$export$2e2bcd8739ae039=$6ae666aef4670faa$var$useNode;let $3940630a90c41953$export$5abe11f802ebd1f2=$parcel$interopDefault($caozj$emotionstyled).input`
329
- width: 100%;
330
- background: none;
331
- border: none;
332
- text-align: center;
333
- color: var(--leva-colors-highlight1);
334
- font-family: var(--leva-fonts-mono);
335
- font-size: var(--leva-fontSizes-root);
336
- cursor: inherit;
337
- text-overflow: ellipsis;
338
- outline: none;
339
-
340
- &:focus {
341
- box-shadow: 0 0 0 green var(--leva-colors-accent2);
342
- }
343
- &:focus-within {
344
- box-shadow: 0 0 0 green var(--leva-colors-accent2);
345
- }
346
- &:focus-vissible {
347
- box-shadow: 0 0 0 green var(--leva-colors-accent2);
348
- }
349
- &:not([readonly]):focus {
350
- color: #fff;
351
- appearance: none;
352
- cursor: auto;
353
- background-color: var(--leva-colors-elevation2);
354
- padding: 0.3rem;
355
- border-radius: 0.2rem;
356
- }
357
- `,$3940630a90c41953$var$EditableLabel=({onChange:e,value:o="",className:t})=>{let a=(0,$caozj$react.useRef)(null),[r,c]=(0,$caozj$react.useState)(!1),$=(0,$caozj$react.useCallback)(e=>{e.target?.select(),c(!0)},[c]),n=(0,$caozj$react.useCallback)(()=>{window.getSelection()?.collapseToEnd(),c(!1)},[c]),i=(0,$caozj$react.useCallback)(()=>{n(),a.current&&e(a.current.value)},[a,n,e]),l=(0,$caozj$react.useCallback)(()=>{n(),a.current&&o&&(a.current.value=o)},[a,n,o]);return(0,$caozj$react.useEffect)(()=>{a.current&&(a.current.value=o)},[o,a]),(0,$caozj$reactjsxruntime.jsx)($3940630a90c41953$export$5abe11f802ebd1f2,{ref:a,type:"text",readOnly:!r,onDoubleClick:e=>$(e),onBlur:i,onKeyDown:e=>{switch(e.key){case"Escape":l();break;case"Enter":i()}},className:t})};var $3940630a90c41953$export$2e2bcd8739ae039=$3940630a90c41953$var$EditableLabel;let $9cb5026027305025$var$NodeInfoWrapper=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
358
- height: 100%;
359
- width: 100%;
360
- overflow: scroll;
361
- padding: 0.6rem;
362
- box-sizing: border-box;
363
-
364
- hr {
365
- border: none;
366
- border-bottom: 1px solid ${({theme:e})=>e.colors.elevation3};
367
- }
368
-
369
- code {
370
- background-color: ${({theme:e})=>e.colors.elevation3};
371
- color: ${({theme:e})=>e.colors.highlight3};
372
- font-family:
373
- source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;
374
- }
375
-
376
- pre {
377
- background-color: ${({theme:e})=>e.colors.elevation3};
378
- padding: 0.2rem 0.3rem;
379
- border-radius: 1px;
380
- }
381
-
382
- a {
383
- color: ${({theme:e})=>e.colors.accent1};
384
- }
385
- `),$9cb5026027305025$var$useNodeManifest=e=>$a4b2e20cc96e08f7$export$2e2bcd8739ae039(o=>o.nodesConfiguration[e]),$9cb5026027305025$var$NodeInfoModal=({isOpen:e,onClose:o,type:t,node:a})=>{let{info:r,portsDescription:c}=$9cb5026027305025$var$useNodeManifest(t),$=(0,$caozj$react.useMemo)(()=>{let e=[],o=a.inputs;if(o)for(let t in e.push("## Inputs"),o){let a=o[t];e.push(`### *${t}*`);let r=c?.inputs?.[t];r&&e.push(r),Array.isArray(a.type)?e.push(`**Types**: \`${a.type.join(", ")}\``):e.push(`**Type**: \`${a.type||"unknown"}\``),a.range&&e.push(`**Range**: \`[${a.range[0]}, ${a.range[1]}]\``),void 0!==a.defaultValue&&e.push(`**Default**: \`${a.defaultValue}\``)}let t=a.outputs;if(t)for(let o in e.push("## Outputs"),t){let a=t[o];e.push(`### *${o}*`);let r=c?.outputs?.[o];r&&e.push(r),Array.isArray(a.type)?e.push(`**Types**: \`${a.type.join(", ")}\``):e.push(`**Type**: \`${a.type||"unknown"}\``),a.range&&e.push(`**Range**: \`[${a.range[0]}, ${a.range[1]}]\``),void 0!==a.defaultValue&&e.push(`**Default**: \`${a.defaultValue}\``)}return e.join("\n\n")},[a,c]);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:o,children:(0,$caozj$reactjsxruntime.jsx)($9cb5026027305025$var$NodeInfoWrapper,{dangerouslySetInnerHTML:{__html:(0,$caozj$marked.marked)((r||"")+"\n\n"+$||"")}})}):null};var $9cb5026027305025$export$2e2bcd8739ae039=$9cb5026027305025$var$NodeInfoModal;let $f2119bbc42462131$var$NodeWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
386
- background-color: var(--leva-colors-elevation1);
387
- `,$f2119bbc42462131$var$NodeLoaderWrapper=$parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$NodeWrapper)`
388
- padding: 2rem 5rem;
389
- `,$f2119bbc42462131$var$NodeErrorWrapper=$parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$NodeWrapper)`
390
- padding: 1rem 2rem;
391
- `,$f2119bbc42462131$var$SettingsIconWrapper=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsmd.MdSettings)`
392
- font-size: 1.2rem;
393
- opacity: 0.4;
394
- width: 1rem;
395
- &:hover {
396
- opacity: 1;
397
- cursor: pointer;
398
- }
399
- `,$f2119bbc42462131$var$InfoIconWrapper=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsmd.MdInfoOutline)`
400
- font-size: 1.2rem;
401
- opacity: 0.4;
402
- width: 1rem;
403
- &:hover {
404
- opacity: 1;
405
- cursor: pointer;
406
- }
407
- `,$f2119bbc42462131$var$Section=$parcel$interopDefault($caozj$emotionstyled).div`
408
- position: relative;
409
- font-family: var(--leva-fonts-mono);
410
- font-size: var(--leva-fontSizes-root);
411
- background-color: var(--leva-colors-elevation1);
412
- `,$f2119bbc42462131$export$1bdb8f2d1fe25c22=$parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$Section)`
413
- display: flex;
414
- height: var(--leva-sizes-titleBarHeight);
415
- touch-action: none;
416
- align-items: center;
417
- justify-content: center;
418
- flex: 1 1 0%;
419
- color: var(--leva-colors-highlight1);
420
- padding: 0 0.4rem;
421
- gap: 0.3rem;
422
- `,$f2119bbc42462131$export$bfd3bd1fa283e3c6=$parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$Section)(({theme:e})=>`
423
- display: grid;
424
- grid-template-areas: "inputs outputs";
425
- background: ${e.colors.elevation2};
426
- border-bottom: 1px solid ${e.colors.elevation1};
427
- color: ${e.colors.highlight3};
428
- font-size: 0.6rem;
429
- `),$f2119bbc42462131$export$f1afba0ff9ea1277=$parcel$interopDefault($caozj$emotionstyled).div`
430
- grid-area: inputs;
431
- text-align: left;
432
- `,$f2119bbc42462131$export$af4f9b41fc32ed9e=$parcel$interopDefault($caozj$emotionstyled).div`
433
- grid-area: outputs;
434
- text-align: right;
435
- `,$f2119bbc42462131$export$a2d375858cc72119=$parcel$interopDefault($caozj$emotionstyled).div`
436
- position: relative;
437
- padding: 5px 10px;
438
- `,$f2119bbc42462131$var$portColors={[$5178a3ce324b2b47$export$b0b7b95ee465c83c.Audio]:"#4ade80",[$5178a3ce324b2b47$export$b0b7b95ee465c83c.Gate]:"#c084fc",[$5178a3ce324b2b47$export$b0b7b95ee465c83c.Number]:"#38bdf8",[$5178a3ce324b2b47$export$b0b7b95ee465c83c.Any]:"#ffffff"},$f2119bbc42462131$var$StyledHandle=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($caozj$reactflow.Handle,{shouldForwardProp:e=>"portType"!==e})`
439
- --port-color: ${e=>{if(!e.portType)return e.theme.colors.highlight2;if(!Array.isArray(e.portType))return $f2119bbc42462131$var$portColors[e.portType];{let o=e.portType.map(e=>$f2119bbc42462131$var$portColors[e]);return`linear-gradient(0.25turn, ${o.join(", ")});`}}};
440
- border-color: var(--port-color);
441
- background: var(--port-color);
442
- box-shadow: 0px 0px 0px 1px ${({theme:e})=>e.colors.elevation2} inset;
443
- `),$f2119bbc42462131$var$StyledInputHandle=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$StyledHandle)`
444
- left: -3px;
445
- `),$f2119bbc42462131$export$9ea0feffc20ee81=({...e})=>(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$StyledInputHandle,{...e,type:"target",position:$caozj$reactflow.Position.Left}),$f2119bbc42462131$export$222539e2a2fac4e0=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$var$StyledHandle)`
446
- right: -3px;
447
- `),$f2119bbc42462131$export$496e5e1ee1696f64=e=>(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$222539e2a2fac4e0,{...e,type:"source",position:$caozj$reactflow.Position.Right}),$f2119bbc42462131$export$7e0b3af1e60a3273=({className:e,...o})=>(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$1bdb8f2d1fe25c22,{...o,className:[e,$5178a3ce324b2b47$export$956b3cf15d7c363].join(" ")}),$f2119bbc42462131$var$useNodeManifest=e=>$a4b2e20cc96e08f7$export$2e2bcd8739ae039(o=>o.nodesConfiguration[e]),$f2119bbc42462131$var$useConfigNode=e=>{let{configNode:o}=$f2119bbc42462131$var$useNodeManifest(e);return{ConfigNode:o}},$f2119bbc42462131$export$361064385d50ec44=e=>{let{id:o,children:t,selected:a,...r}=e,c=$0698271e00ab9da6$export$2e2bcd8739ae039(),$=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({getNode:e})=>e),n=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.nodesConfiguration),[i,l]=(0,$caozj$react.useState)(!1),{info:d}=$f2119bbc42462131$var$useNodeManifest(e.type),s=(0,$caozj$react.useMemo)(()=>n[e.type].resizable??!1,[n,e.type]),{updateNodeLabel:p,updateNodeConfig:f}=$6ae666aef4670faa$export$2e2bcd8739ae039(o),{data:b}=$(o)||{},u=$e4411f5b87a3c2d0$export$2e2bcd8739ae039(o),{ConfigNode:h}=$f2119bbc42462131$var$useConfigNode(r.type),[x,m]=(0,$caozj$react.useState)(!1);if(!u)return(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$NodeLoaderWrapper,{className:$5178a3ce324b2b47$export$956b3cf15d7c363,children:"can't find audio node"});if(u.loading)return(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$NodeLoaderWrapper,{className:$5178a3ce324b2b47$export$956b3cf15d7c363,children:"loading"});if(u.error)return(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$var$NodeErrorWrapper,{className:$5178a3ce324b2b47$export$956b3cf15d7c363,children:["error: ",u.error.toString()]});if(!u.node)return(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$NodeLoaderWrapper,{className:$5178a3ce324b2b47$export$956b3cf15d7c363,children:"can't find audio node"});let j=b?.config?.size,{node:{inputs:g,outputs:v}}=u;return(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$var$NodeWrapper,{children:[(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$export$7e0b3af1e60a3273,{children:[d&&(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$InfoIconWrapper,{onClickCapture:()=>l(!0)}),(0,$caozj$reactjsxruntime.jsx)($3940630a90c41953$export$2e2bcd8739ae039,{value:b?.label??"No Name",onChange:p}),h&&(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$var$SettingsIconWrapper,{onClickCapture:()=>m(e=>!e)})]}),(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$export$bfd3bd1fa283e3c6,{theme:c,children:[(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$f1afba0ff9ea1277,{children:g?Object.keys(g).map((e,o)=>(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$export$a2d375858cc72119,{children:[(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$9ea0feffc20ee81,{id:e,portType:g[e].type}),(0,$caozj$reactjsxruntime.jsx)("span",{children:e})]},o)):null}),(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$af4f9b41fc32ed9e,{children:v?Object.keys(v).map((e,o)=>(0,$caozj$reactjsxruntime.jsxs)($f2119bbc42462131$export$a2d375858cc72119,{children:[(0,$caozj$reactjsxruntime.jsx)($f2119bbc42462131$export$496e5e1ee1696f64,{id:e,portType:v[e].type}),(0,$caozj$reactjsxruntime.jsx)("span",{children:e})]},o)):null})]}),h&&x&&a?(0,$caozj$reactjsxruntime.jsx)(h,{...e}):s?(0,$caozj$reactjsxruntime.jsx)($caozj$reresizable.Resizable,{size:j,minWidth:180,minHeight:30,enable:{bottom:!0,bottomRight:!0,right:!0},onResizeStop:(e,o,t,a)=>{let r=j?{width:j.width+a.width,height:j.height+a.height}:t.getBoundingClientRect();f({...b?.config,size:r})},children:t}):t,(0,$caozj$reactjsxruntime.jsx)($9cb5026027305025$export$2e2bcd8739ae039,{isOpen:i,type:e.type,onClose:()=>l(!1),node:u.node})]})},$03238cfb58890119$export$86de09faaa70680d=$parcel$interopDefault($caozj$emotionstyled).div`
448
- width: 100%;
449
- padding: 0.4rem 0;
450
- white-space: nowrap;
451
- overflow: hidden;
452
- text-overflow: ellipsis;
453
- `,$03238cfb58890119$export$548ca3bae446ddc2=$parcel$interopDefault($caozj$emotionstyled)($f2119bbc42462131$export$7e0b3af1e60a3273)`
454
- display: flex;
455
- gap: 0.1rem;
456
- padding: 0 0.4rem;
457
- justify-content: start;
458
- font-size: 0.6rem;
459
- height: auto;
460
- min-width: 0;
461
- `,$03238cfb58890119$export$9fb15e3cc717240=$parcel$interopDefault($caozj$emotionstyled).div`
462
- display: flex;
463
- align-items: center;
464
- height: 70%;
465
- width: auto;
466
- gap: 0.4rem;
467
- `,$03238cfb58890119$export$be58b4326e23250f=$parcel$interopDefault($caozj$emotionstyled).span`
468
- width: auto;
469
- height: 100%;
470
- cursor: pointer;
471
- svg {
472
- width: auto;
473
- height: 100%;
474
- }
475
- &:hover {
476
- color: ${({theme:e})=>e.colors.highlight2};
477
- cursor: pointer;
478
- }
479
- `,$5b08f9778f5d95ed$var$ControlPanelNodeWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
480
- height: 100%;
481
- display: grid;
482
- grid-template-rows: auto 1fr;
483
- `,$5b08f9778f5d95ed$var$PanelNode=e=>{let{node:o}=e,t=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.getControlPanelNode),a=(0,$caozj$react.useMemo)(()=>t(o),[o]);return a?(0,$caozj$reactjsxruntime.jsx)(a,{...e}):null},$5b08f9778f5d95ed$var$ControlPanelItem=e=>{let{node:o,showControls:t,onDelete:a}=e,r=$0698271e00ab9da6$export$2e2bcd8739ae039(),{id:c}=o,{node:$}=$e4411f5b87a3c2d0$export$2e2bcd8739ae039(c)||{},{updateNodeValues:n}=$6ae666aef4670faa$export$2e2bcd8739ae039(c);return(0,$caozj$reactjsxruntime.jsxs)($5b08f9778f5d95ed$var$ControlPanelNodeWrapper,{theme:r,children:[(0,$caozj$reactjsxruntime.jsxs)($03238cfb58890119$export$548ca3bae446ddc2,{theme:r,children:[(0,$caozj$reactjsxruntime.jsx)($03238cfb58890119$export$86de09faaa70680d,{children:o.data.label}),t&&(0,$caozj$reactjsxruntime.jsxs)($03238cfb58890119$export$9fb15e3cc717240,{children:[(0,$caozj$reactjsxruntime.jsx)($03238cfb58890119$export$be58b4326e23250f,{theme:r,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsmd.MdDragHandle,{className:"grid-item-handle"})}),(0,$caozj$reactjsxruntime.jsx)($03238cfb58890119$export$be58b4326e23250f,{theme:r,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsmd.MdClose,{onClick:()=>a(o)})})]})]}),(0,$caozj$reactjsxruntime.jsx)($5b08f9778f5d95ed$var$PanelNode,{node:o,audioNode:$,updateNodeValues:n})]})};var $5b08f9778f5d95ed$export$2e2bcd8739ae039=$5b08f9778f5d95ed$var$ControlPanelItem;let $4d6e17d60fee0798$var$ControlPanelIconWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
484
- position: fixed;
485
- z-index: 5;
486
- box-shadow: 0px 1px 2px ${({theme:e})=>e.colors.elevation2};
487
- left: 1rem;
488
- top: 4rem;
489
- width: 2rem;
490
- height: 2rem;
491
- border-radius: 50%;
492
- overflow: hidden;
493
- display: flex;
494
- align-items: center;
495
- justify-content: center;
496
- background: ${({theme:e})=>e.colors.elevation1};
497
- color: ${({theme:e})=>e.colors.highlight1};
498
-
499
- :hover {
500
- color: ${({theme:e})=>e.colors.highlight2};
501
- cursor: pointer;
502
- }
503
- `,$4d6e17d60fee0798$var$ControlPanelIconsBar=$parcel$interopDefault($caozj$emotionstyled)($03238cfb58890119$export$9fb15e3cc717240)`
504
- height: 80%;
505
- `,$4d6e17d60fee0798$var$CloseIconWrapper=$parcel$interopDefault($caozj$emotionstyled)($03238cfb58890119$export$be58b4326e23250f)`
506
- font-size: 1rem;
507
- display: flex;
508
- align-items: center;
509
- `,$4d6e17d60fee0798$var$ControlPanelHeader=$parcel$interopDefault($caozj$emotionstyled)($03238cfb58890119$export$548ca3bae446ddc2)`
510
- grid-template-columns: 1fr auto;
511
- border-bottom: 1px solid ${({theme:e})=>e.colors.elevation3};
512
- font-size: 0.7rem;
513
- `,$4d6e17d60fee0798$var$ControlPanelTitle=$parcel$interopDefault($caozj$emotionstyled)($03238cfb58890119$export$86de09faaa70680d)`
514
- text-align: center;
515
- `,$4d6e17d60fee0798$var$ControlPanelWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
516
- height: 100%;
517
- width: 100%;
518
- padding: 0.3rem 0.4rem;
519
- box-sizing: border-box;
520
- `,$4d6e17d60fee0798$var$ControlPanelBody=$parcel$interopDefault($caozj$emotionstyled).div`
521
- height: auto;
522
- padding: 0;
523
- max-height: 95vh;
524
- overflow-y: scroll;
525
- border: 1px solid ${({theme:e})=>e.colors.elevation3};
526
- `,$4d6e17d60fee0798$var$ControlPanelSettings=$parcel$interopDefault($caozj$emotionstyled).div`
527
- padding: 1rem 0;
528
- font-family: var(--leva-fonts-mono);
529
- font-size: 0.8rem;
530
- `,$4d6e17d60fee0798$var$LockGridWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
531
- display: flex;
532
- align-items: center;
533
- gap: 0.5rem;
534
- cursor: pointer;
535
- color: ${({theme:e})=>e.colors.highlight1};
536
- &:hover {
537
- color: ${({theme:e})=>e.colors.highlight2};
538
- }
539
- `,$4d6e17d60fee0798$var$GridResizeHandle=$parcel$interopDefault($caozj$emotionstyled).div`
540
- position: absolute;
541
- height: 1rem;
542
- top: 0;
543
- bottom: 0;
544
- margin: auto;
545
- left: 0.5rem;
546
- border-right: 1px solid ${({theme:e})=>e.colors.whitePrimary};
547
- `,$4d6e17d60fee0798$var$ControlPanelItemWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
548
- box-sizing: border-box;
549
- overflow: hidden;
550
- .react-resizable-handle:after {
551
- border-color: ${({theme:e})=>e.colors.whitePrimary};
552
- border-width: 1px;
553
- }
554
- `,$4d6e17d60fee0798$var$ControlPanel=()=>{let e=$0698271e00ab9da6$export$2e2bcd8739ae039(),o=(0,$caozj$react.useRef)(null),t=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.nodes),{show:a,nodes:r,size:c}=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.controlPanel),{width:$=200,height:n}=c,i=(0,$caozj$react.useMemo)(()=>{let e=r.map(({id:e})=>e);return t.filter(({id:o})=>e.includes(o))},[t,r]),l=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.showControlPanel),d=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.hideControlPanel),s=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setControlPanelNodes),p=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setControlPanelSize),f=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.removeNodeFromControlPanel),[b,u]=(0,$caozj$react.useState)(!0),h=(0,$caozj$react.useMemo)(()=>{let e=r.reduce((e,{height:o=$5178a3ce324b2b47$export$9f05d3e6ade4c09e.rowHeight,x:t,y:a=0})=>{let r=a+o;return r>e?r:e},0);return r.map(({id:o,width:t,height:a,x:r,y:c})=>({i:o,w:t||$5178a3ce324b2b47$export$9f05d3e6ade4c09e.cols,h:a||6,x:r??0,y:c??e}))},[r]);return i.length?(0,$caozj$reactjsxruntime.jsxs)($caozj$reactjsxruntime.Fragment,{children:[(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelIconWrapper,{theme:e,ref:o,onClick:l,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsrx.RxDashboard,{})}),(0,$caozj$reactjsxruntime.jsxs)($parcel$interopDefault($caozj$reactmoderndrawer),{open:a,onClose:d,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[(0,$caozj$reactjsxruntime.jsxs)($4d6e17d60fee0798$var$ControlPanelHeader,{theme:e,children:[(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelTitle,{children:"Control Panel"}),(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelIconsBar,{children:(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$CloseIconWrapper,{onClick:d,theme:e,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsmd.MdClose,{})})})]}),(0,$caozj$reactjsxruntime.jsxs)($4d6e17d60fee0798$var$ControlPanelWrapper,{children:[(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelSettings,{children:b?(0,$caozj$reactjsxruntime.jsxs)($4d6e17d60fee0798$var$LockGridWrapper,{theme:e,onClick:()=>u(!1),children:[(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsai.AiFillLock,{}),"Unlock grid"]}):(0,$caozj$reactjsxruntime.jsxs)($4d6e17d60fee0798$var$LockGridWrapper,{theme:e,onClick:()=>u(!0),children:[(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsai.AiFillUnlock,{}),"Lock grid"]})}),(0,$caozj$reactjsxruntime.jsx)($caozj$reresizable.Resizable,{enable:{top:!1,right:!b,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$GridResizeHandle,{theme:e})},minWidth:120,size:{width:$,height:"auto"},onResizeStop:(e,o,t,a)=>{p({width:$+a.width,height:n+a.height})},children:(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelBody,{theme:e,children:(0,$caozj$reactjsxruntime.jsx)($parcel$interopDefault($caozj$reactgridlayout),{layout:h,className:"layout",cols:$5178a3ce324b2b47$export$9f05d3e6ade4c09e.cols,rowHeight:$5178a3ce324b2b47$export$9f05d3e6ade4c09e.rowHeight,width:$,margin:[0,0],isResizable:!b,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{s(e.map(({i:e,w:o,h:t,x:a,y:r})=>({id:e,width:o,height:t,x:a,y:r})))})},children:i.map(o=>(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$var$ControlPanelItemWrapper,{theme:e,children:(0,$caozj$reactjsxruntime.jsx)($5b08f9778f5d95ed$export$2e2bcd8739ae039,{node:o,showControls:!b,onDelete:f})},o.id))})})})]})]})]}):null};var $4d6e17d60fee0798$export$2e2bcd8739ae039=$4d6e17d60fee0798$var$ControlPanel,$62feb8799b67f160$exports={};$62feb8799b67f160$exports="# Quick start\n\n## Add node\n - Mouse right click\n - Select **'Add Node'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Press `CMD+SHIFT+A`\n\n<br/>\n\n## Connect nodes\n - Mouse left click and hold on source port\n - Drop on target port\n\n<br/>\n\n## Delete Node or Connection\n - Mouse right click on node/connection\n - Select **'Delete Node'**/**'Delete Connection'** from context menu\n\n ### &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or\n\n - Mouse left click on node/connection, then press `Backspace`\n\n<br/>\n\n\n## Move node\n - Drag and Drop\n\n<br/>\n\n## Upload file\n - Drag and drop audio or patch files onto the application\n - Uploaded file appears as a new tab in the tabs bar at the top\n - Click on the tab to view or edit the file\n\n\n";let $d498cede93545ab8$var$MdPreview=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
555
- font-family: var(--leva-fonts-mono);
556
- font-size: 0.7rem;
557
- box-sizing: border-box;
558
- height: 100%;
559
- width: 100%;
560
- overflow: scroll;
561
- color: ${({theme:e})=>e.colors.whitePrimary};
562
- padding: 0 0.5rem;
563
-
564
- code {
565
- color: ${({theme:e})=>e.colors.accent3};
566
- filter: hue-rotate(180deg);
567
- }
568
- `),$d498cede93545ab8$var$ModalContent=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
569
- padding: 1rem;
570
- height: 100%;
571
- width: 100%;
572
- box-sizing: border-box;
573
- overflow: hidden;
574
- `),$d498cede93545ab8$var$HelpModal=()=>{let e=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.isHelpShown),o=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.toggleHelp);return e?(0,$caozj$reactjsxruntime.jsx)($31669bd9c7b1334d$export$2e2bcd8739ae039,{onClose:()=>{o()},children:(0,$caozj$reactjsxruntime.jsx)($d498cede93545ab8$var$ModalContent,{children:(0,$caozj$reactjsxruntime.jsx)($d498cede93545ab8$var$MdPreview,{dangerouslySetInnerHTML:{__html:(0,$caozj$marked.marked)($parcel$interopDefault($62feb8799b67f160$exports))},onWheelCapture:e=>e.stopPropagation()})})}):null};var $d498cede93545ab8$export$2e2bcd8739ae039=$d498cede93545ab8$var$HelpModal;let $b54badcef4eec409$export$78bddedbcf2939ac=()=>{let e=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.toggleHelp);return(0,$caozj$reactjsxruntime.jsx)($caozj$reactjsxruntime.Fragment,{children:(0,$caozj$reactjsxruntime.jsx)($caozj$reactflow.ControlButton,{onClick:e,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsfa.FaQuestion,{})})})},$dc6a1f59db0c3eb0$var$Layout=$parcel$interopDefault($caozj$emotionstyled).div`
575
- position: fixed;
576
- z-index: ${({theme:e})=>e.zIndex.resumeContextLayout};
577
- width: 100%;
578
- height: 100%;
579
- top: 0;
580
- left: 0;
581
- background: rgb(24 28 32 / 90%);
582
- display: flex;
583
- flex-wrap: wrap;
584
- align-items: center;
585
- justify-content: center;
586
- color: ${({theme:e})=>e.colors.whitePrimary};
587
- cursor: pointer;
588
- `,$dc6a1f59db0c3eb0$var$Row=$parcel$interopDefault($caozj$emotionstyled).div`
589
- display: flex;
590
- width: 100%;
591
- align-items: center;
592
- justify-content: center;
593
- `,$dc6a1f59db0c3eb0$var$Message=$parcel$interopDefault($caozj$emotionstyled).div`
594
- font-family: var(--leva-fonts-mono);
595
- font-size: 2rem;
596
- `,$dc6a1f59db0c3eb0$var$Icon=$parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsfa.FaVolumeOff)`
597
- width: 7rem;
598
- height: 7rem;
599
- `,$dc6a1f59db0c3eb0$var$ResumeContext=()=>{let e=$0698271e00ab9da6$export$2e2bcd8739ae039(),o=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({patch:e})=>e).audioContext,[t,a]=(0,$caozj$react.useState)("running"===o.state);return t?null:(0,$caozj$reactjsxruntime.jsxs)($dc6a1f59db0c3eb0$var$Layout,{theme:e,onClick:()=>{o.resume(),a(!0)},children:[(0,$caozj$reactjsxruntime.jsx)($dc6a1f59db0c3eb0$var$Row,{children:(0,$caozj$reactjsxruntime.jsx)($dc6a1f59db0c3eb0$var$Message,{theme:e,children:"Click anywhere to resume audio context"})}),(0,$caozj$reactjsxruntime.jsx)($dc6a1f59db0c3eb0$var$Row,{children:(0,$caozj$reactjsxruntime.jsx)($dc6a1f59db0c3eb0$var$Icon,{})})]})};var $dc6a1f59db0c3eb0$export$2e2bcd8739ae039=$dc6a1f59db0c3eb0$var$ResumeContext;let $9a8d360fa640cd31$var$ToggleMinimap=()=>{let e=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({setConfig:e})=>e),{showMinimap:o}=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({config:e})=>e);return(0,$caozj$reactjsxruntime.jsx)($caozj$reactflow.ControlButton,{onClick:()=>e({showMinimap:!o}),children:o?(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsfa.FaMap,{}):(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsfa.FaRegMap,{})})};var $9a8d360fa640cd31$export$2e2bcd8739ae039=$9a8d360fa640cd31$var$ToggleMinimap;let $5588f0a1f8029d5f$var$Wire=({id:e,sourceX:o,sourceY:t,targetX:a,targetY:r,sourcePosition:c,targetPosition:$,style:n={},data:i,markerStart:l,markerEnd:d,source:s,target:p,sourceHandleId:f,targetHandleId:b,selected:u})=>{let h=$0698271e00ab9da6$export$2e2bcd8739ae039(),x=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({getNode:e})=>e),m=x(s),j=x(p),g=m?.selected||j?.selected;(0,$caozj$react.useEffect)(()=>{if(f&&b)return console.log(`connected ${s} to ${p}`),()=>{console.log(`disconnected ${s} from ${p}`)}},[s,f,p,b]);let[v]=(0,$caozj$reactflow.getBezierPath)({targetX:a,targetY:r,targetPosition:$,sourceX:o,sourceY:t,sourcePosition:c});return(0,$caozj$reactjsxruntime.jsxs)($caozj$reactjsxruntime.Fragment,{children:[(0,$caozj$reactjsxruntime.jsx)("path",{id:e,style:{...n,stroke:u?h.colors.accent2:g?h.colors.highlight3:h.colors.highlight2},className:"react-flow__edge-path Wire",d:v,markerEnd:d}),(0,$caozj$reactjsxruntime.jsx)("path",{style:{...n,strokeWidth:8,color:"transparent",opacity:0,cursor:"pointer"},d:v,markerEnd:d})]})};var $5588f0a1f8029d5f$export$2e2bcd8739ae039=$5588f0a1f8029d5f$var$Wire;let $b2123a1317616dca$var$onNodeDragStop=(e,o)=>console.log("drag stop",o),$b2123a1317616dca$var$onNodeClick=(e,o)=>console.log("click",o),$b2123a1317616dca$var$snapGrid=[20,20],$b2123a1317616dca$export$72cb76f559fbafcf=({editorState:e,plugins:o=[],editorContextMenu:t=[],onChange:a=()=>{},...r})=>{let c=(0,$caozj$react.useMemo)(()=>({wire:$5588f0a1f8029d5f$export$2e2bcd8739ae039}),[]),{nodes:$,edges:n,controlPanel:i,onNodesChange:l,onNodesDelete:d,onEdgesChange:s,onEdgesDelete:p,onConnect:f,setPlugins:b,setViewport:u,viewport:h}=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(),x=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({config:e})=>e),m=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(({nodeTypes:e})=>e);(0,$caozj$react.useEffect)(()=>{b(o)},[o]);let[j,g]=(0,$caozj$react.useState)(null);(0,$caozj$react.useEffect)(()=>{j&&a({nodes:$,edges:n,controlPanel:i,viewport:h})},[$,n,i,h]);let v=(0,$caozj$react.useCallback)(e=>{j||(g(e),console.log("flow loaded:",e))},[j]),{onContextMenu:z}=$19aed452b4ca6552$export$59ce2a6808e35a29(),{onContextMenu:y}=$1da8729706dfa00a$export$cbbbfb9fb15f3780(),{onContextMenu:w}=$a21c860b5409030f$export$8b2e4a15453bac1e();return(0,$caozj$react.useEffect)(()=>{h&&j?.setViewport(h)},[h,j]),(0,$caozj$reactflow.useOnViewportChange)({onEnd:u}),(0,$caozj$reactjsxruntime.jsxs)($parcel$interopDefault($caozj$reactflow),{nodes:$,edges:n,onNodesChange:l,onNodesDelete:d,onEdgesChange:s,onConnect:f,onNodeDragStop:$b2123a1317616dca$var$onNodeDragStop,onEdgesDelete:p,onInit:v,onNodeClick:$b2123a1317616dca$var$onNodeClick,onContextMenu:z,onNodeContextMenu:y,onEdgeContextMenu:w,nodeTypes:m,edgeTypes:c,snapGrid:$b2123a1317616dca$var$snapGrid,defaultViewport:e?.viewport,defaultEdgeOptions:{type:"wire"},snapToGrid:!0,fitView:!0,disableKeyboardA11y:!0,children:[(0,$caozj$reactjsxruntime.jsx)($caozj$reactflow.Background,{variant:$caozj$reactflow.BackgroundVariant.Dots,gap:12}),x.showMinimap?(0,$caozj$reactjsxruntime.jsx)($caozj$reactflow.MiniMap,{}):null,(0,$caozj$reactjsxruntime.jsxs)($caozj$reactflow.Controls,{style:{right:"1rem",left:"initial",bottom:"40%",top:"initial"},showInteractive:!1,children:[(0,$caozj$reactjsxruntime.jsx)($9a8d360fa640cd31$export$2e2bcd8739ae039,{}),(0,$caozj$reactjsxruntime.jsx)($b54badcef4eec409$export$78bddedbcf2939ac,{})]}),(0,$caozj$reactjsxruntime.jsx)($dc6a1f59db0c3eb0$export$2e2bcd8739ae039,{}),(0,$caozj$reactjsxruntime.jsx)($4d6e17d60fee0798$export$2e2bcd8739ae039,{}),(0,$caozj$reactjsxruntime.jsx)($d498cede93545ab8$export$2e2bcd8739ae039,{}),(0,$caozj$reactjsxruntime.jsx)($19aed452b4ca6552$export$2e2bcd8739ae039,{editorContextMenu:t}),(0,$caozj$reactjsxruntime.jsx)($1da8729706dfa00a$export$2e2bcd8739ae039,{}),(0,$caozj$reactjsxruntime.jsx)($a21c860b5409030f$export$2e2bcd8739ae039,{})]})},$b2123a1317616dca$export$7cda8d932e2f33c0=e=>(0,$caozj$reactjsxruntime.jsx)($caozj$reactflow.ReactFlowProvider,{children:(0,$caozj$reactjsxruntime.jsx)($b2123a1317616dca$export$72cb76f559fbafcf,{...e})});var $b2123a1317616dca$export$2e2bcd8739ae039=$b2123a1317616dca$export$7cda8d932e2f33c0;let $fe79cea96e056195$export$d31000d36961d6c2={nodes:[],edges:[],controlPanel:{nodes:[],show:!1,size:{width:200,height:100}},viewport:{x:0,y:0,zoom:1.5}},$fe79cea96e056195$export$6cd5d5c1dae69a36=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
600
- display: flex;
601
- flex-direction: column;
602
- height: 100%;
603
- width: 100%;
604
- `),$fe79cea96e056195$export$6bc5189622b1f4ec=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$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;
614
- `),$fe79cea96e056195$export$8d546ef2006cd0a2=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
615
- height: 100%;
616
- width: 100%;
617
- display: flex;
618
- position: relative;
619
- `),$fe79cea96e056195$export$10efbd348f877f87=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
620
- display: flex;
621
- flex: 1;
622
- align-items: center;
623
- justify-content: center;
624
- background: ${({theme:e})=>e.colors.elevation3};
625
- `),$fe79cea96e056195$export$8c347812506d5ac9=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
626
- background: ${({theme:e})=>e.colors.elevation2};
627
- opacity: 0.7;
628
- position: absolute;
629
- width: 100%;
630
- height: 100%;
631
- left: 0;
632
- top: 0;
633
- z-index: 1;
634
- font-family: var(--leva-fonts-mono);
635
- color: ${({theme:e})=>e.colors.whitePrimary};
636
- display: ${({show:e})=>e?"flex":"none"};
637
- align-items: center;
638
- justify-content: center;
639
- font-size: 6rem;
640
- `),$fe79cea96e056195$export$b38a2fd24b22fb35=e=>{let o=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.pullEditorChanges),t=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.currentFileIndex),[a,r]=(0,$caozj$react.useState)(!0);(0,$caozj$react.useEffect)(()=>{r(!0),setTimeout(()=>{r(!1)},1600)},[t]);let{file:c}=e;return c?"audio"===c.type?(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$10efbd348f877f87,{children:(0,$caozj$reactjsxruntime.jsx)("audio",{src:c.file,controls:!0})}):(0,$caozj$reactjsxruntime.jsxs)($caozj$reactjsxruntime.Fragment,{children:[(0,$caozj$reactjsxruntime.jsx)($b2123a1317616dca$export$7cda8d932e2f33c0,{...e,onChange:e=>{o()},editorState:c.file||$fe79cea96e056195$export$d31000d36961d6c2}),(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$8c347812506d5ac9,{show:a,children:"Loading..."})]}):null},$fe79cea96e056195$export$2206531ad8592d57=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
641
- height: 2rem;
642
- display: flex;
643
- align-items: center;
644
- background: ${({theme:e})=>e.colors.elevation2};
645
- `),$fe79cea96e056195$export$3e41faf802a29e71=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
646
- display: flex;
647
- align-items: center;
648
- cursor: pointer;
649
- height: 100%;
650
- box-sizing: border-box;
651
- padding: 0.3rem 0.4rem;
652
-
653
- border-right: 1px solid ${({theme:e})=>e.colors.elevation1};
654
-
655
- input {
656
- color: ${({theme:e,active:o})=>o?e.colors.whitePrimary:e.colors.highlight1};
657
-
658
- &:not([readonly]):focus {
659
- background-color: ${({theme:e})=>e.colors.elevation1};
660
- }
661
- }
662
- `),$fe79cea96e056195$export$61e5b3c7bace77b8=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
663
- display: flex;
664
- align-items: center;
665
- height: 100%;
666
- padding: 0 0.5rem;
667
- cursor: pointer;
668
-
669
- color: ${({theme:e})=>e.colors.highlight1};
670
- &:hover {
671
- color: ${({theme:e})=>e.colors.whitePrimary};
672
- }
673
- `),$fe79cea96e056195$export$3aef34186a092045=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsfa6.FaPlus)`
674
- height: 40%;
675
- width: auto;
676
- `),$fe79cea96e056195$export$cae179f078f4b4a4=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled)($caozj$reacticonsmd.MdClose)`
677
- height: 70%;
678
- width: auto;
679
- cursor: pointer;
680
- color: ${({theme:e})=>e.colors.highlight1};
681
- &:hover {
682
- color: ${({theme:e})=>e.colors.whitePrimary};
683
- }
684
- `),$fe79cea96e056195$var$generateId=()=>(0,$caozj$nanoid.nanoid)(),$fe79cea96e056195$var$generateEmptyFile=()=>({file:$fe79cea96e056195$export$d31000d36961d6c2,name:"Unnamed",type:"patch",id:$fe79cea96e056195$var$generateId()}),$fe79cea96e056195$export$86fbec116b87613f=({...e})=>{let{projectState:o,theme:t}=e,a=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.currentFileIndex),r=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.project.files[e.currentFileIndex]),c=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setCurrentFileIndex),$=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.project),n=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setProject),i=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.getProject),l=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.updateFileName),d=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.addFile),s=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.deleteFile),p=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.syncEditorWithCurrentFile),f=$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.setEditorState);$a4b2e20cc96e08f7$export$2e2bcd8739ae039(e=>e.pullEditorChanges);let[b,u]=(0,$caozj$react.useState)(!1);return(0,$caozj$react.useEffect)(()=>{n(o||{files:[$fe79cea96e056195$var$generateEmptyFile()]});let e=o?.files[0];e?.file&&e?.type!=="audio"&&f(e.file)},[o]),(0,$caozj$react.useEffect)(()=>{let e=async(...e)=>{let o=new Request(...e),t=i().files,a=o.url.replace("project://",""),r=t.find(({id:e})=>e===a);return r?$1e18e5fb2b00badb$export$e698b79c63b74136(r)?new Response(JSON.stringify(r.file??null)):"audio"===r.type?fetch(r.file):new Response(null):new Response(`File not found: ${o.url}`,{status:404})};return(0,$caozj$webnoisefetch.registerFetcher)("project://*",e),()=>{}},[i]),(0,$caozj$react.useEffect)(()=>{p()},[a,p]),(0,$caozj$reactjsxruntime.jsxs)($caozj$emotionreact.ThemeProvider,{theme:t||$568a6d17827a8280$export$2e2bcd8739ae039,children:[(0,$caozj$reactjsxruntime.jsx)($caozj$emotionreact.Global,{styles:(0,$caozj$emotionreact.css)`
685
- :root {
686
- --leva-colors-elevation1: #292d39;
687
- --leva-colors-elevation2: #181c20;
688
- --leva-colors-elevation3: #373c4b;
689
- --leva-colors-accent1: #0066dc;
690
- --leva-colors-accent2: #007bff;
691
- --leva-colors-accent3: #3c93ff;
692
- --leva-colors-highlight1: #535760;
693
- --leva-colors-highlight2: #8c92a4;
694
- --leva-colors-highlight3: #fefefe;
695
- --leva-colors-vivid1: #ffcc00;
696
- --leva-colors-folderWidgetColor: var(--leva-colors-highlight2);
697
- --leva-colors-folderTextColor: var(--leva-colors-highlight3);
698
- --leva-colors-toolTipBackground: var(--leva-colors-highlight3);
699
- --leva-colors-toolTipText: var(--leva-colors-elevation2);
700
- --leva-radii-xs: 2px;
701
- --leva-radii-sm: 3px;
702
- --leva-radii-lg: 10px;
703
- --leva-space-xs: 3px;
704
- --leva-space-sm: 6px;
705
- --leva-space-md: 10px;
706
- --leva-space-rowGap: 7px;
707
- --leva-space-colGap: 7px;
708
- --leva-fonts-mono:
709
- ui-monospace, SFMono-Regular, Menlo, "Roboto Mono", monospace;
710
- --leva-fonts-sans: system-ui, sans-serif;
711
- --leva-fontSizes-root: 11px;
712
- --leva-fontSizes-toolTip: var(--leva-fontSizes-root);
713
- --leva-sizes-rootWidth: 280px;
714
- --leva-sizes-controlWidth: 160px;
715
- --leva-sizes-numberInputMinWidth: 38px;
716
- --leva-sizes-scrubberWidth: 8px;
717
- --leva-sizes-scrubberHeight: 16px;
718
- --leva-sizes-rowHeight: 24px;
719
- --leva-sizes-folderTitleHeight: 20px;
720
- --leva-sizes-checkboxSize: 16px;
721
- --leva-sizes-joystickWidth: 100px;
722
- --leva-sizes-joystickHeight: 100px;
723
- --leva-sizes-colorPickerWidth: var(--leva-sizes-controlWidth);
724
- --leva-sizes-colorPickerHeight: 100px;
725
- --leva-sizes-imagePreviewWidth: var(--leva-sizes-controlWidth);
726
- --leva-sizes-imagePreviewHeight: 100px;
727
- --leva-sizes-monitorHeight: 60px;
728
- --leva-sizes-titleBarHeight: 39px;
729
- --leva-shadows-level1: 0 0 9px 0 #00000088;
730
- --leva-shadows-level2: 0 4px 14px #00000033;
731
- --leva-borderWidths-root: 0px;
732
- --leva-borderWidths-input: 1px;
733
- --leva-borderWidths-focus: 1px;
734
- --leva-borderWidths-hover: 1px;
735
- --leva-borderWidths-active: 1px;
736
- --leva-borderWidths-folder: 1px;
737
- --leva-fontWeights-label: normal;
738
- --leva-fontWeights-folder: normal;
739
- --leva-fontWeights-button: normal;
740
- }
741
- `}),(0,$caozj$reactjsxruntime.jsxs)($fe79cea96e056195$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 o=JSON.parse(await e.text());if(o.files&&o.files.length){if(!window.confirm("This action will replace your current project. Continue?"))return;n(o),c(0),p();return}d({...$fe79cea96e056195$var$generateEmptyFile(),file:{...o,controlPanel:{...$fe79cea96e056195$export$d31000d36961d6c2.controlPanel,...o.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let o=await $0423b2b326ba441a$export$25df2e315be8e003(e);d({type:"audio",id:`audio-file-${+new Date}`,name:e.name,file:o});return}console.error("Unsupported file type",e)})},children:[(0,$caozj$reactjsxruntime.jsxs)($fe79cea96e056195$export$2206531ad8592d57,{children:[$.files.map((e,o)=>(0,$caozj$reactjsxruntime.jsxs)($fe79cea96e056195$export$3e41faf802a29e71,{onClick:()=>{c(o)},active:o===a,children:[(0,$caozj$reactjsxruntime.jsx)($3940630a90c41953$export$2e2bcd8739ae039,{onChange:e=>l(o,e),value:e.name||"Unnamed"}),(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$cae179f078f4b4a4,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&s(o)}})]},o)),(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$61e5b3c7bace77b8,{onClick:()=>{d($fe79cea96e056195$var$generateEmptyFile()),c($.files.length)},children:(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$3aef34186a092045,{})})]}),(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$8d546ef2006cd0a2,{children:(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$b38a2fd24b22fb35,{file:r,...e})}),b&&(0,$caozj$reactjsxruntime.jsx)($fe79cea96e056195$export$6bc5189622b1f4ec,{children:"Drop file(s) to upload to the project"})]})]})};var $fe79cea96e056195$export$2e2bcd8739ae039=$fe79cea96e056195$export$86fbec116b87613f;let $7dda11900de48be2$var$CheckerBox=$parcel$interopDefault($caozj$emotionstyled).div`
742
- display: flex;
743
- align-items: center;
744
- justify-content: center;
745
- width: 0.6rem;
746
- height: 0.6rem;
747
- background: ${({theme:e})=>e.colors.whitePrimary};
748
- border: 1px solid ${({theme:e})=>e.colors.highlight1};
749
- &::after {
750
- content: "";
751
- background: ${({theme:e})=>e.colors.accent1};
752
- }
753
- `,$7dda11900de48be2$var$CheckerLabel=$parcel$interopDefault($caozj$emotionstyled).div``,$7dda11900de48be2$var$CheckerSubtitle=$parcel$interopDefault($caozj$emotionstyled).div`
754
- font-size: 0.4rem;
755
- color: ${({theme:e})=>e.colors.highlight1};
756
- `,$7dda11900de48be2$var$CheckedInner=$parcel$interopDefault($caozj$emotionstyled).label`
757
- display: flex;
758
- cursor: pointer;
759
- gap: 0.4rem;
760
- line-height: 0.7rem;
761
- input {
762
- display: none;
763
- }
764
- input[type="radio"] ~ .checker-box {
765
- border-radius: 50%;
766
- &::after {
767
- border-radius: 50%;
768
- }
769
- }
770
- input:checked ~ .checker-box:after {
771
- width: 70%;
772
- height: 70%;
773
- }
774
- `,$7dda11900de48be2$var$Checker=({label:e,subtitle:o,name:t,type:a="checkbox",onChange:r,checked:c=!1})=>{let $=$0698271e00ab9da6$export$2e2bcd8739ae039();return(0,$caozj$reactjsxruntime.jsxs)($7dda11900de48be2$var$CheckedInner,{children:[(0,$caozj$reactjsxruntime.jsx)("input",{type:a,name:t,checked:c,onChange:({target:e})=>r?.(e.checked)}),(0,$caozj$reactjsxruntime.jsx)($7dda11900de48be2$var$CheckerBox,{className:"checker-box",theme:$}),(0,$caozj$reactjsxruntime.jsxs)("div",{children:[(0,$caozj$reactjsxruntime.jsx)($7dda11900de48be2$var$CheckerLabel,{children:e}),o?(0,$caozj$reactjsxruntime.jsx)($7dda11900de48be2$var$CheckerSubtitle,{theme:$,children:o}):null]})]})};var $7dda11900de48be2$export$2e2bcd8739ae039=$7dda11900de48be2$var$Checker;let $49a9900810e9fc76$var$RadioGroupWrapper=$parcel$interopDefault($caozj$emotionstyled).div`
775
- display: flex;
776
- flex-direction: column;
777
- gap: 0.5rem;
778
- font-family: var(--leva-fonts-mono);
779
- font-size: 0.7rem;
780
- color: ${({theme:e})=>e.colors.highlight2};
781
- padding: 0.5rem;
782
- `,$49a9900810e9fc76$var$RadioGroup=({options:e,value:o,onChange:t})=>{let a=$0698271e00ab9da6$export$2e2bcd8739ae039();return(0,$caozj$reactjsxruntime.jsx)($49a9900810e9fc76$var$RadioGroupWrapper,{theme:a,children:e.map(({value:e,label:a,subtitle:r},c)=>(0,$caozj$reactjsxruntime.jsx)($7dda11900de48be2$export$2e2bcd8739ae039,{value:o,type:"radio",label:a,subtitle:r,onChange:()=>t(e),checked:e===o},c))})};var $49a9900810e9fc76$export$2e2bcd8739ae039=$49a9900810e9fc76$var$RadioGroup;let $f8ec1acf67f46dc8$export$fb9f58ebe9de6283=$parcel$interopDefault($caozj$emotionstyled).div`
783
- display: flex;
784
- position: relative;
785
- `,$f8ec1acf67f46dc8$export$42e20bb2ce90003b=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).input`
786
- padding-right: 2rem;
787
- padding-left: 0.3rem;
788
- padding-top: 0;
789
- padding-bottom: 0;
790
- width: 100%;
791
- appearance: textfield;
792
- font-size: inherit;
793
- background: none;
794
- border: none;
795
- color: var(--leva-colors-highlight1);
796
- font-family: var(--leva-fonts-mono);
797
- cursor: inherit;
798
- text-overflow: ellipsis;
799
- outline: none;
800
- appearance: textfield;
801
- cursor: auto;
802
- background-color: var(--leva-colors-elevation3);
803
- border-radius: 0.2rem;
804
- height: 1.5rem;
805
- color: var(--leva-colors-highlight2);
806
-
807
- &:focus,
808
- &:hover {
809
- box-shadow: 0 0 0 var(--leva-borderWidths-focus) var(--leva-colors-accent2);
810
- color: ${({theme:e})=>e.colors.whitePrimary};
811
- }
812
- &::-webkit-inner-spin-button,
813
- &::-webkit-outer-spin-button {
814
- -webkit-appearance: none;
815
- margin-right: 1rem;
816
- }
817
- `),$f8ec1acf67f46dc8$var$Input=({type:e,value:o,placeholder:t,onChange:a=()=>{},inputProps:r,...c})=>(0,$caozj$reactjsxruntime.jsx)($f8ec1acf67f46dc8$export$fb9f58ebe9de6283,{...c,children:(0,$caozj$reactjsxruntime.jsx)($f8ec1acf67f46dc8$export$42e20bb2ce90003b,{type:e,value:o,placeholder:t,onKeyDownCapture:e=>{e.stopPropagation()},onChange:e=>{a(e.target.value)},...r})});var $f8ec1acf67f46dc8$export$2e2bcd8739ae039=$f8ec1acf67f46dc8$var$Input;let $2c26eea0201e0bee$var$InputButton=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).button`
818
- position: absolute;
819
- right: 0;
820
- height: 100%;
821
- outline: none;
822
- background: none;
823
- border: none;
824
- color: ${({theme:e})=>e.colors.highlight1};
825
- cursor: pointer;
826
- display: flex;
827
- align-items: center;
828
- z-index: 2;
829
- &:hover {
830
- color: ${({theme:e})=>e.colors.highlight2};
831
- }
832
- &:active {
833
- color: ${({theme:e})=>e.colors.highlight3};
834
- }
835
- `),$2c26eea0201e0bee$var$DropdownContainer=$parcel$interopDefault($caozj$emotionstyled).div`
836
- position: relative;
837
- width: 100%;
838
- `,$2c26eea0201e0bee$var$DropdownList=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
839
- position: absolute;
840
- top: calc(100% + 2px);
841
- left: 0;
842
- right: 0;
843
- max-height: 200px;
844
- overflow-y: auto;
845
- background-color: ${({theme:e})=>e.colors.elevation2};
846
- border: 1px solid ${({theme:e})=>e.colors.elevation3};
847
- border-radius: 0.2rem;
848
- box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
849
- z-index: 1000;
850
- display: ${({isOpen:e})=>e?"block":"none"};
851
-
852
- &::-webkit-scrollbar {
853
- width: 8px;
854
- }
855
-
856
- &::-webkit-scrollbar-track {
857
- background: ${({theme:e})=>e.colors.elevation1};
858
- }
859
-
860
- &::-webkit-scrollbar-thumb {
861
- background: ${({theme:e})=>e.colors.elevation3};
862
- border-radius: 4px;
863
- }
864
-
865
- &::-webkit-scrollbar-thumb:hover {
866
- background: ${({theme:e})=>e.colors.highlight1};
867
- }
868
- `),$2c26eea0201e0bee$var$DropdownItem=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
869
- padding: 0.4rem 0.5rem;
870
- cursor: pointer;
871
- color: ${({theme:e})=>e.colors.highlight1};
872
- background-color: ${({theme:e,isHighlighted:o})=>o?e.colors.elevation3:"transparent"};
873
- font-family: var(--leva-fonts-mono);
874
- font-size: 0.9em;
875
-
876
- &:hover {
877
- background-color: ${({theme:e})=>e.colors.elevation3};
878
- color: ${({theme:e})=>e.colors.highlight2};
879
- }
880
- `),$2c26eea0201e0bee$var$DropdownItemValue=$parcel$interopDefault($caozj$emotionstyled).div`
881
- font-size: 0.85em;
882
- opacity: 0.7;
883
- margin-top: 2px;
884
- white-space: nowrap;
885
- overflow: hidden;
886
- text-overflow: ellipsis;
887
- `,$2c26eea0201e0bee$var$DropdownItemLabel=$parcel$interopDefault($caozj$emotionstyled).div`
888
- font-size: 1em;
889
- white-space: nowrap;
890
- overflow: hidden;
891
- text-overflow: ellipsis;
892
- `,$2c26eea0201e0bee$var$DropdownInput=({value:e="",placeholder:o="",onSubmit:t=()=>{},options:a=[],...r})=>{let[c,$]=(0,$caozj$react.useState)(e),[n,i]=(0,$caozj$react.useState)(!1),[l,d]=(0,$caozj$react.useState)(-1),s=(0,$caozj$react.useRef)(null),p=(0,$caozj$react.useRef)(null),f=a.filter(e=>""===c||e.value.toLowerCase().includes(c.toLowerCase())||e.label?.toLowerCase().includes(c.toLowerCase())),b=(0,$caozj$react.useCallback)(()=>{t(c),i(!1),d(-1)},[c,t]),u=(0,$caozj$react.useCallback)(e=>{$(e.value),t(e.value),i(!1),d(-1)},[t]),h=(0,$caozj$react.useCallback)(e=>{switch(e.key){case"Escape":i(!1),d(-1);break;case"Enter":n&&l>=0&&f[l]?(e.preventDefault(),u(f[l])):b();break;case"ArrowDown":e.preventDefault(),n?d(e=>e<f.length-1?e+1:e):(i(!0),d(0));break;case"ArrowUp":e.preventDefault(),n&&d(e=>e>0?e-1:e)}},[b,n,l,f,u]);return(0,$caozj$react.useEffect)(()=>{let e=e=>{p.current&&!p.current.contains(e.target)&&s.current&&!s.current.contains(e.target)&&(i(!1),d(-1))};return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[]),(0,$caozj$react.useEffect)(()=>{if(l>=0&&p.current){let e=p.current.children[l];e&&e.scrollIntoView({block:"nearest",behavior:"smooth"})}},[l]),(0,$caozj$reactjsxruntime.jsxs)($2c26eea0201e0bee$var$DropdownContainer,{children:[(0,$caozj$reactjsxruntime.jsxs)($f8ec1acf67f46dc8$export$fb9f58ebe9de6283,{children:[(0,$caozj$reactjsxruntime.jsx)($f8ec1acf67f46dc8$export$42e20bb2ce90003b,{...r,ref:s,value:c,placeholder:o,onKeyDown:h,onChange:e=>{$(e.target.value),i(!0),d(-1)},onFocus:()=>{a.length>0&&i(!0)},onBlur:()=>{setTimeout(()=>{i(!1),d(-1)},200)},autoComplete:"off"}),(0,$caozj$reactjsxruntime.jsx)($2c26eea0201e0bee$var$InputButton,{onClick:b,children:(0,$caozj$reactjsxruntime.jsx)($caozj$reacticonsfa.FaRegArrowAltCircleRight,{})})]}),a.length>0&&(0,$caozj$reactjsxruntime.jsx)($2c26eea0201e0bee$var$DropdownList,{ref:p,isOpen:n&&f.length>0,children:f.map((e,o)=>(0,$caozj$reactjsxruntime.jsxs)($2c26eea0201e0bee$var$DropdownItem,{isHighlighted:o===l,onClick:()=>u(e),onMouseEnter:()=>d(o),children:[(0,$caozj$reactjsxruntime.jsx)($2c26eea0201e0bee$var$DropdownItemLabel,{children:e.label||e.value}),e.value&&(0,$caozj$reactjsxruntime.jsx)($2c26eea0201e0bee$var$DropdownItemValue,{children:e.value})]},e.value+o))})]})};var $2c26eea0201e0bee$export$2e2bcd8739ae039=$2c26eea0201e0bee$var$DropdownInput;let $71f3efd0f53e329c$var$StyledInputWrapper=$parcel$interopDefault($caozj$emotionstyled)($f8ec1acf67f46dc8$export$fb9f58ebe9de6283)`
893
- gap: 0.5rem;
894
- `,$71f3efd0f53e329c$var$StyledInputInner=$parcel$interopDefault($caozj$emotionstyled)($f8ec1acf67f46dc8$export$42e20bb2ce90003b)`
895
- padding: 0;
896
- aspect-ratio: 1 / 1;
897
- width: auto;
898
- cursor: pointer;
899
- &::-webkit-color-swatch-wrapper {
900
- padding: 0;
901
- }
902
- &::-webkit-color-swatch {
903
- border-radius: 0.2rem;
904
- border: none;
905
- }
906
- `,$71f3efd0f53e329c$var$ColorInput=({value:e,onChange:o=()=>{},...t})=>(0,$caozj$reactjsxruntime.jsxs)($71f3efd0f53e329c$var$StyledInputWrapper,{...t,children:[(0,$caozj$reactjsxruntime.jsx)($71f3efd0f53e329c$var$StyledInputInner,{type:"color",value:e,onChange:e=>{o(e.target.value)}}),(0,$caozj$reactjsxruntime.jsx)($f8ec1acf67f46dc8$export$42e20bb2ce90003b,{value:e,onChange:e=>{o(e.target.value)}})]});var $71f3efd0f53e329c$export$2e2bcd8739ae039=$71f3efd0f53e329c$var$ColorInput;let $9c3bb3712f0c697f$var$SampleInput=$parcel$interopDefault($caozj$emotionstyled).span`
907
- position: relative;
908
- &:after {
909
- content: "↕";
910
- position: absolute;
911
- top: -1px;
912
- right: 0;
913
- height: 100%;
914
- display: flex;
915
- align-items: center;
916
- font-size: 1.2em;
917
- color: var(--leva-colors-highlight1);
918
- }
919
- `,$9c3bb3712f0c697f$var$SampleInputInner=$parcel$interopDefault($caozj$emotionstyled).input`
920
- width: 100%;
921
- appearance: textfield;
922
- font-size: inherit;
923
- background: none;
924
- border: none;
925
- text-align: right;
926
- color: var(--leva-colors-highlight1);
927
- font-family: var(--leva-fonts-mono);
928
- cursor: inherit;
929
- text-overflow: ellipsis;
930
- outline: none;
931
- appearance: textfield;
932
- cursor: auto;
933
- background-color: var(--leva-colors-elevation3);
934
- border-radius: 0.2rem;
935
- height: 1.5rem;
936
- color: var(--leva-colors-highlight2);
937
-
938
- &:focus,
939
- &:hover {
940
- box-shadow: 0 0 0 var(--leva-borderWidths-focus) var(--leva-colors-accent2);
941
- }
942
- &::-webkit-inner-spin-button,
943
- &::-webkit-outer-spin-button {
944
- -webkit-appearance: none;
945
- margin-right: 1rem;
946
- }
947
- `,$9c3bb3712f0c697f$var$NumberInput=({max:e=1/0,min:o=-1/0,value:t,step:a=1,onChange:r=()=>{},placeholder:c,...$})=>{let n=(0,$caozj$react.useRef)(null),i=(0,$caozj$usedebounce.useThrottledCallback)(c=>{if(void 0===t)return;let $=e<10?5:e/100,n=+(t+Math.round(c.deltaY/$)*a).toFixed(2);n<o||n>e||r(n)},100);return(0,$caozj$react.useEffect)(()=>{n.current&&(n.current.addEventListener("wheel",e=>{e.preventDefault(),e.stopPropagation(),i(e)}),n.current.onchange=e=>{r(+e.target.value)})},[n.current,r]),(0,$caozj$react.useEffect)(()=>{void 0!==t&&n.current&&(n.current.value=t.toString())},[n.current,t]),(0,$caozj$reactjsxruntime.jsx)($9c3bb3712f0c697f$var$SampleInput,{...$,children:(0,$caozj$reactjsxruntime.jsx)($9c3bb3712f0c697f$var$SampleInputInner,{ref:n,type:"number",step:a,min:o,max:e,placeholder:c})})};var $9c3bb3712f0c697f$export$2e2bcd8739ae039=$9c3bb3712f0c697f$var$NumberInput;let $661d5014f892bfae$var$Button=$parcel$interopDefault($caozj$emotionstyled).button`
948
- display: flex;
949
- align-items: center;
950
- justify-content: center;
951
- outline: none;
952
- font-size: inherit;
953
- font-family: inherit;
954
- border: none;
955
- appearance: none;
956
- font-weight: var(--leva-fontWeights-button);
957
- height: var(--leva-sizes-rowHeight);
958
- border-radius: var(--leva-radii-sm);
959
- background-color: ${({theme:e})=>e.colors.elevation1};
960
- color: ${({theme:e})=>e.colors.highlight3};
961
- background-color: ${({theme:e})=>e.colors.accent2};
962
- cursor: pointer;
963
- font-family: var(--leva-fonts-mono);
964
- font-size: var(--leva-fontSizes-root);
965
-
966
- &:hover {
967
- box-shadow: inset 0 0 0 var(--leva-borderWidths-hover)
968
- ${({theme:e})=>e.colors.accent3};
969
- }
970
-
971
- &:active {
972
- box-shadow: inset 0 0 0 var(--leva-borderWidths-active)
973
- ${({theme:e})=>e.colors.accent3};
974
- background-color: ${({theme:e})=>e.colors.accent1};
975
- }
976
- `;var $661d5014f892bfae$export$2e2bcd8739ae039=$661d5014f892bfae$var$Button;let $2e5509e4deb374c3$var$SelectWrapper=(0,$caozj$emotionreact.withTheme)($parcel$interopDefault($caozj$emotionstyled).div`
977
- display: flex;
978
- align-items: center;
979
- position: relative;
980
-
981
- select {
982
- appearance: none;
983
- border: none;
984
- outline: none;
985
- width: 100%;
986
- font-weight: var(--leva-fontWeights-button);
987
- padding: 0.3rem 0.5rem;
988
- padding-right: 1rem;
989
- border-radius: var(--leva-radii-sm);
990
- background-color: ${({theme:e})=>e.colors.elevation1};
991
- color: ${({theme:e})=>e.colors.highlight3};
992
- cursor: pointer;
993
- font-family: var(--leva-fonts-mono);
994
- font-size: var(--leva-fontSizes-root);
995
-
996
- &:hover {
997
- box-shadow: inset 0 0 0 var(--leva-borderWidths-hover)
998
- ${({theme:e})=>e.colors.accent3};
999
- }
1000
-
1001
- &:active {
1002
- box-shadow: inset 0 0 0 var(--leva-borderWidths-active)
1003
- ${({theme:e})=>e.colors.accent3};
1004
- background-color: ${({theme:e})=>e.colors.accent1};
1005
- }
1006
- }
1007
-
1008
- &::after {
1009
- position: absolute;
1010
- right: 0.3rem;
1011
- content: "";
1012
- width: 0.5em;
1013
- height: 0.3em;
1014
- background-color: ${({theme:e})=>e.colors.highlight3};
1015
- clip-path: polygon(100% 0%, 0 0%, 50% 100%);
1016
- }
1017
- `),$2e5509e4deb374c3$var$Select=({options:e,placeholder:o,value:t,onChange:a,...r})=>(0,$caozj$reactjsxruntime.jsx)($2e5509e4deb374c3$var$SelectWrapper,{...r,children:(0,$caozj$reactjsxruntime.jsxs)("select",{value:t||"",onChange:e=>a?.(e.target.value),children:[o&&(0,$caozj$reactjsxruntime.jsx)("option",{value:"",disabled:!0,children:o}),e.map(({value:e,label:o})=>(0,$caozj$reactjsxruntime.jsx)("option",{value:e,children:o},e+o))]})});var $2e5509e4deb374c3$export$2e2bcd8739ae039=$2e5509e4deb374c3$var$Select;let $336343c71d08e372$var$Slider=$parcel$interopDefault($caozj$emotionstyled)($parcel$interopDefault($caozj$rcslider))`
1018
- padding: 0;
1019
- cursor: pointer;
1020
- position: relative;
1021
-
1022
- &:hover {
1023
- filter: brightness(125%);
1024
- }
1025
-
1026
- .rc-slider-dot {
1027
- border-radius: 0;
1028
- box-shadow: none;
1029
- margin: 0;
1030
- border: none;
1031
- background: ${({theme:e})=>e.colors.highlight2};
1032
- }
1033
-
1034
- &.rc-slider-horizontal .rc-slider-dot {
1035
- width: 1px;
1036
- height: 0.25rem;
1037
- bottom: -6px;
1038
- }
1039
-
1040
- &.rc-slider-vertical .rc-slider-dot {
1041
- width: 0.25rem;
1042
- height: 1px;
1043
- left: 3px;
1044
- }
1045
-
1046
- .rc-slider-rail {
1047
- background: ${({theme:e})=>e.colors.elevation1};
1048
- }
1049
-
1050
- .rc-slider-track {
1051
- background: ${({theme:e,color:o})=>o||e.colors.accent2};
1052
- }
1053
-
1054
- .rc-slider-handle {
1055
- border-radius: 0.125rem;
1056
- background: ${({theme:e,color:o})=>o||e.colors.accent2};
1057
- opacity: 1;
1058
- cursor: pointer;
1059
- border: none;
1060
- &:hover {
1061
- filter: brightness(110%);
1062
- }
1063
- }
1064
-
1065
- .rc-slider-handle,
1066
- .rc-slider-handle.rc-slider-handle-dragging {
1067
- box-shadow: 0 0 0 2px ${({theme:e})=>e.colors.elevation2};
1068
- }
1069
-
1070
- &:before {
1071
- content: "";
1072
- position: absolute;
1073
- background: transparent;
1074
- }
1075
-
1076
- &.rc-slider-horizontal {
1077
- height: 2px;
1078
-
1079
- .rc-slider-rail,
1080
- .rc-slider-track,
1081
- .rc-slider-step {
1082
- height: 100%;
1083
- }
1084
-
1085
- .rc-slider-handle {
1086
- width: 0.5rem;
1087
- height: 1rem;
1088
- bottom: -7px;
1089
- }
1090
-
1091
- .rc-slider-handle-dragging {
1092
- cursor: ew-resize;
1093
- }
1094
-
1095
- &:before {
1096
- width: 100%;
1097
- height: 1rem;
1098
- top: -7px;
1099
- }
1100
- }
1101
-
1102
- &.rc-slider-vertical {
1103
- width: 2px;
1104
-
1105
- .rc-slider-rail,
1106
- .rc-slider-track,
1107
- .rc-slider-step {
1108
- width: 100%;
1109
- }
1110
-
1111
- .rc-slider-track {
1112
- left: 0;
1113
- }
1114
-
1115
- .rc-slider-handle {
1116
- width: 1rem;
1117
- height: 0.5rem;
1118
- right: -7px;
1119
- }
1120
-
1121
- .rc-slider-handle-dragging {
1122
- cursor: ns-resize;
1123
- }
1124
-
1125
- &:before {
1126
- height: 100%;
1127
- width: 1rem;
1128
- right: -7px;
1129
- }
1130
- }
1131
-
1132
- &.rc-slider-horizontal .rc-slider-mark {
1133
- top: 1rem;
1134
- }
1135
-
1136
- &.rc-slider-vertical .rc-slider-mark {
1137
- left: 1rem;
1138
- }
1139
-
1140
- .rc-slider-mark-text {
1141
- font-size: 0.4rem;
1142
- }
1143
- `;var $336343c71d08e372$export$2e2bcd8739ae039=$336343c71d08e372$var$Slider;class $1df3dc42818802fe$var$Spliner extends $caozj$CanvasSpliner.CanvasSpliner{_updateMousePosition(e){let o=this._canvas?.getBoundingClientRect(),t=this._canvas.width/o.width,a=this._canvas.height/o.height;this._mouse={x:(e.clientX-o.left)*t,y:this._height-(e.clientY-o.top)*a}}getPoints(){let e=1/this._width,o=1/this._height;return this._pointCollection._points.map(({x:t,y:a})=>({x:t*e,y:a*o}))}removeAll(){let e=this._pointCollection.getNumberOfPoints();for(let o=e;o>0;o--)this._pointCollection.remove(o-1)}update(e){this.removeAll();let o=this._width,t=this._height;e.forEach(({x:e,y:a})=>{this._pointCollection.add({x:e*o,y:a*t})}),this.draw()}off(e,o){}}let $1df3dc42818802fe$var$WaveShaperInner=$parcel$interopDefault($caozj$emotionstyled).div`
1144
- height: 100%;
1145
- width: 100%;
1146
- position: relative;
1147
- canvas {
1148
- border: none !important;
1149
- position: absolute;
1150
- left: 0;
1151
- right: 0;
1152
- height: 100%;
1153
- width: 100%;
1154
- }
1155
- `,$1df3dc42818802fe$export$2bf7c2638a145e5c=({onChange:e,onMove:o,points:t,type:a="monotonic",textColor:r="red",curveColor:c=$568a6d17827a8280$export$2e2bcd8739ae039.colors.accent2,gridStep:$=.25,gridColor:n=$568a6d17827a8280$export$2e2bcd8739ae039.colors.elevation2,controlPointRadius:i=14,controlPointColor:l=$568a6d17827a8280$export$2e2bcd8739ae039.colors.vivid1})=>{let d=(0,$caozj$react.useRef)(null),[s,p]=(0,$caozj$react.useState)(),f=(0,$caozj$react.useCallback)(o=>{let t=o.getPoints();e?.(t)},[e]),b=(0,$caozj$react.useCallback)(e=>{let t=e.getPoints();o?.(t)},[o]);return(0,$caozj$react.useEffect)(()=>s?.update(t),[s,t]),(0,$caozj$react.useEffect)(()=>s?.setSplineType(a),[s,a]),(0,$caozj$react.useEffect)(()=>s?.setGridStep($),[s,$]),(0,$caozj$react.useEffect)(()=>s?.setGridColor(n),[s,n]),(0,$caozj$react.useEffect)(()=>s?.setControlPointRadius(i),[s,i]),(0,$caozj$react.useEffect)(()=>s?.setTextColor(r),[s,r]),(0,$caozj$react.useEffect)(()=>{s?.setCurveColor("idle",c)},[s,c]),(0,$caozj$react.useEffect)(()=>{s?.setControlPointColor("idle",l)},[s,l]),(0,$caozj$react.useEffect)(()=>{if(s)return s.setCurveThickness(4),s.on("movePoint",b),s.on("releasePoint",f),s.on("pointAdded",f),s.on("pointRemoved",f),s.draw(),()=>{s.off("movePoint",b),s.off("releasePoint",f),s.off("pointAdded",f),s.off("pointRemoved",f)}},[s,f,b]),(0,$caozj$react.useEffect)(()=>{d.current&&p(new $1df3dc42818802fe$var$Spliner(d.current,1024,1024))},[d]),(0,$caozj$reactjsxruntime.jsx)($1df3dc42818802fe$var$WaveShaperInner,{ref:d})};var $1df3dc42818802fe$export$2e2bcd8739ae039=$1df3dc42818802fe$export$2bf7c2638a145e5c,$663172ffb668ed36$exports={};$parcel$export($663172ffb668ed36$exports,"ConfigRowLabel",()=>$663172ffb668ed36$export$555ece15b74b7abc),$parcel$export($663172ffb668ed36$exports,"ConfigRowControl",()=>$663172ffb668ed36$export$ef9ca7b440c0032c),$parcel$export($663172ffb668ed36$exports,"ConfigRowSeparator",()=>$663172ffb668ed36$export$bd1dc14d6df7044e),$parcel$export($663172ffb668ed36$exports,"ConfigRow",()=>$663172ffb668ed36$export$d56900fc3755b916),$parcel$export($663172ffb668ed36$exports,"ConfigPanel",()=>$663172ffb668ed36$export$aac584ace4a7b830),$parcel$export($663172ffb668ed36$exports,"ConfigRowInner",()=>$663172ffb668ed36$export$edaba703bd8b8dfa);let $663172ffb668ed36$export$555ece15b74b7abc=$parcel$interopDefault($caozj$emotionstyled).div``,$663172ffb668ed36$export$ef9ca7b440c0032c=$parcel$interopDefault($caozj$emotionstyled).div`
1156
- font-family: var(--leva-fonts-mono);
1157
- font-size: 0.7rem;
1158
- color: ${({theme:e})=>e.colors.whitePrimary};
1159
- `,$663172ffb668ed36$export$bd1dc14d6df7044e=$parcel$interopDefault($caozj$emotionstyled).div`
1160
- border-bottom: 1px solid ${({theme:e})=>e.colors.elevation1};
1161
- `,$663172ffb668ed36$export$d56900fc3755b916=$parcel$interopDefault($caozj$emotionstyled).div`
1162
- padding: 0.2rem 0.4rem;
1163
- font-size: 0.7rem;
1164
- color: ${({theme:e})=>e.colors.highlight2};
1165
- position: relative;
1166
- display: grid;
1167
- align-items: center;
1168
- grid-template-rows: minmax(1.5rem, max-content);
1169
- grid-template-columns: ${({oneLineLabels:e})=>e?"1fr":"auto 10rem"};
1170
- row-gap: 0.1rem;
1171
- column-gap: 0.4rem;
1172
- `,$663172ffb668ed36$export$aac584ace4a7b830=$parcel$interopDefault($caozj$emotionstyled).div`
1173
- display: flex;
1174
- flex-direction: column;
1175
- gap: 0.4rem;
1176
- background: ${({theme:e})=>e.colors.elevation2};
1177
- padding: 0.4rem 0.1rem;
1178
- `,$663172ffb668ed36$export$edaba703bd8b8dfa=$parcel$interopDefault($caozj$emotionstyled).div``;$parcel$exportWildcard($e56ee5f7abcdf58a$exports,$663172ffb668ed36$exports),$parcel$exportWildcard(module.exports,$e56ee5f7abcdf58a$exports);
1179
- //# sourceMappingURL=components.js.map