@web-noise/core 0.0.12-fix → 0.0.12-fix2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components.js +1179 -0
- package/dist/cjs/components.js.map +1 -0
- package/dist/cjs/constants.js +2 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/lib.js +2 -0
- package/dist/cjs/lib.js.map +1 -0
- package/dist/esm/components.js +1122 -0
- package/dist/esm/components.js.map +1 -0
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/lib.js +2 -0
- package/dist/esm/lib.js.map +1 -0
- package/dist/main.js +742 -0
- package/dist/main.js.map +1 -0
- package/dist/module.js +742 -0
- package/dist/module.js.map +1 -0
- package/dist/types.d.ts +348 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +1 -1
package/dist/module.js
ADDED
|
@@ -0,0 +1,742 @@
|
|
|
1
|
+
let e,o;import{jsx as t,jsxs as r,Fragment as n}from"react/jsx-runtime";import{withTheme as i,ThemeProvider as l,Global as a,css as s,useTheme as d}from"@emotion/react";import c from"@emotion/styled";import{nanoid as p}from"nanoid";import{useState as h,useEffect as g,useMemo as u,useCallback as m,useRef as f,version as v}from"react";import{FaPlus as y}from"react-icons/fa6";import{MdClose as b,MdDragHandle as w,MdSettings as x,MdInfoOutline as C}from"react-icons/md";import{registerFetcher as $}from"@web-noise/fetch";import k,{getConnectedEdges as P,addEdge as N,applyNodeChanges as z,applyEdgeChanges as j,useOnViewportChange as E,Background as F,BackgroundVariant as S,MiniMap as T,Controls as D,ReactFlowProvider as M,useReactFlow as A,Position as O,Handle as _,ControlButton as I,getBezierPath as L}from"reactflow";import{create as H}from"zustand";import{setAudioNodeTypes as R,createPatch as W}from"@web-noise/patch";import{reverse as B,patch as G,create as V}from"jsondiffpatch";import{injectGlobal as U}from"@emotion/css";import"reactflow/dist/style.css";import{useContextMenu as J,Item as X,Menu as Y,Separator as q}from"react-contexify";import"react-contexify/dist/ReactContexify.css";import K from"js-file-download";import Q from"hotkeys-js";import{createPortal as Z}from"react-dom";import{FileDrop as ee}from"react-file-drop";import{FaFileUpload as eo,FaQuestion as et,FaVolumeOff as er,FaMap as en,FaRegMap as ei}from"react-icons/fa";import{Resizable as el}from"re-resizable";import ea from"react-grid-layout";import"react-grid-layout/css/styles.css";import{AiFillLock as es,AiFillUnlock as ed}from"react-icons/ai";import{RxDashboard as ec}from"react-icons/rx";import ep from"react-modern-drawer";import"react-modern-drawer/dist/index.css";import{marked as eh}from"marked";let eg="web-noise-drag-handle",eu=`.${eg}`,em=10;(ew=ex||(ex={})).Gate="gate",ew.Number="number",ew.Audio="audio",ew.Any="any";let ef=e=>JSON.parse(JSON.stringify(e)),ev=(e,o)=>{let t=new Set(e.map(e=>e.id)),r=new Set(o.map(e=>e.id));return{added:o.filter(e=>!t.has(e.id)),removed:e.filter(e=>!r.has(e.id))}},ey=e=>!("type"in e)||"patch"===e.type,eb=e=>"audio"===e.type;var ew,ex,eC=H((e=(...e)=>{let[o,t]=e;return{...((e,o)=>({nodes:[],edges:[],onNodesChange:o=>{e(({nodes:e})=>({nodes:z(o,e).map(e=>({dragHandle:eu,...e}))}))},onEdgesChange:o=>{e(({edges:e})=>({edges:j(o,e)}))},onConnect:o=>{e(({edges:e})=>({edges:N(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})}))(...e),...((e,o)=>({history:{maxHistoryLength:5,buffer:[],pointer:0,skipCollect:!1,push:t=>{let{history:r}=o(),{maxHistoryLength:n,skipCollect:i}=r;i?e({history:{...r,skipCollect:!1}}):e(({history:e})=>{if(!e)return{};let{buffer:o,pointer:r}=e,i=o.slice(Math.max(r-n+1,0),r);return{history:{...e,buffer:[...i,t],pointer:Math.min(r+1,n)}}})},back:()=>{let{nodes:t,edges:r,controlPanel:n,history:i}=o(),{buffer:l,pointer:a}=i,s=l[a-1];if(!s)return;let d=B(s);d&&e({...G(ef({nodes:t,edges:r,controlPanel:n}),d),history:{...i,pointer:a-1,skipCollect:!0}})},forward:()=>{let{nodes:t,edges:r,controlPanel:n,history:i}=o(),{buffer:l,pointer:a}=i,s=l[a];s&&e({...G(ef({nodes:t,edges:r,controlPanel:n}),s),history:{...i,pointer:a+1,skipCollect:!0}})},clear:()=>{let{history:t}=o();e({history:{...t,buffer:[],pointer:0,skipCollect:!0}})}}}))(...e),...((e,o)=>({patch:W(),nodesState:{}}))(...e),...((e,o)=>({project:{files:[]},setProject(o){e({project:o,currentFileIndex:0})},getProject:()=>o().project,pullEditorChanges(){let{getEditorState:e,currentFileIndex:t,updateFileContent:r,project:n}=o(),i=n.files[t];eb(i)||r(t,{...i,file:e()})},syncEditorWithCurrentFile:()=>{let{currentFileIndex:e,setEditorState:t,project:r}=o(),n=r.files[e];"audio"===n.type?console.log("audio file. skipping"):t(n.file)},currentFileIndex:0,setCurrentFileIndex(t){let{currentFileIndex:r}=o();t!==r&&e({currentFileIndex:t})},updateFileContent(t,r){let{project:n}=o();e({project:{...n,files:n.files.map((e,o)=>o===t?{...e,...r}:e)}})},updateFileName(t,r){let{project:n}=o();e({project:{...n,files:n.files.map((e,o)=>o===t?{...e,name:r}:e)}})},addFile(t){let{project:r}=o(),n=[...r.files,t];e({project:{...r,files:n}})},deleteFile:t=>{let{project:r,currentFileIndex:n}=o();e({project:{...r,files:r.files.filter((e,o)=>t!==o)}}),t<=n&&e({currentFileIndex:n-1})}}))(...e),setGraph:async({nodes:e,edges:o})=>{let{patch:r,createNodes:n,createEdges:i,setNodesAndEdges:l,nodes:a,edges:s}=t();l({nodes:[],edges:[]}),await n(e),i(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:r}=t(),{type:n,id:i,data:l}=e;if(void 0===n)throw Error(`node type is not defined for node: ${i}`);o({...e,data:{...l,config:{...r[n]?.defaultConfig,...l?.config}}})},removeNode:e=>t().removeNodes([e]),removeNodes:e=>{let{edges:r,nodes:n,onNodesDelete:i,removeEdges:l,removeNodesFromControlPanel:a}=t(),s=e.map(({id:e})=>e),d=[...e,...n.filter(({parentNode:e})=>e&&s.includes(e))];a(d),l(P(d,r)),i(d);let c=d.map(({id:e})=>e);o({nodes:n.filter(({id:e})=>!c.includes(e))})},removeEdges:e=>{let{edges:r,onEdgesDelete:n}=t(),i=e.map(({id:e})=>e);n(e),o({edges:r.filter(({id:e})=>!i.includes(e))})},createEdges:e=>{let{patch:o,edges:r,setEdges:n}=t();n(e)},onConnect:async e=>{let{edges:o,createEdges:r}=t();r(N(e,o))},onEdgesDelete:e=>{let{patch:o}=t()},onNodesDelete:async e=>{let{removeNodesFromControlPanel:o,patch:r}=t();o(e)},plugins:[],setPlugins:async e=>{let{setNodeTypes:r}=t();o({plugins:e});let n=e.reduce((e,o)=>({...e,...o.components.reduce((e,o)=>({...e,[o.type]:o}),{})}),{}),i=Object.keys(n).reduce((e,o)=>({...e,[o]:n[o].node}),{});R(Object.keys(n).reduce((e,o)=>({...e,[o]:n[o].audioNode}),{})),r(i),o(({nodesConfiguration:e})=>({nodesConfiguration:{...e,...n}}))},nodesConfiguration:{},config:{showMinimap:!1},setConfig:e=>{o(({config:o})=>({config:{...o,...e}}))},getEditorState:()=>{let{getNodesAndEdges:e,controlPanel:o,viewport:r}=t();return{...e(),controlPanel:o,viewport:r}},setEditorState:async({nodes:e,edges:r,controlPanel:n,viewport:i})=>{let{setGraph:l}=t();await l({nodes:e,edges:r}),await new Promise(e=>setTimeout(e,1e3)),o({controlPanel:n,viewport:i})},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:r}=t(),n=e.filter(({selected:e})=>e),i=o.filter(({selected:e})=>e);n.length&&r({nodes:n,edges:i})},pasteBuffer:(e=0,r=0)=>{let{copyBuffer:n,createNodes:i,setEdges:l,nodes:a,edges:s}=t(),{nodes:d,edges:c}=n;if(!d.length)return;o({nodes:a.map(e=>({...e,selected:!1}))});let p=d.reduce((e,o)=>!e||o.position.x<e.position.x&&o.position.y<e.position.y?o:e),h=p.position.x-e,g=p.position.y-r,{nodes:u,mapping:m}=d.reduce((e,o)=>{let t,r=(t=+new Date+Math.floor(1e3*Math.random()),o?.type?`${o.type}-${t}`:t.toString());return{nodes:[...e.nodes,{...o,id:r,position:{x:o.position.x-h,y:o.position.y-g},selected:!0}],mapping:{...e.mapping,[o.id]:r}}},{nodes:[],mapping:{}});i(u);let f=c.map(e=>{let o=m[e.source]||e.source,t=m[e.target]||e.target;return{...e,id:e.id.replace(e.source,o).replace(e.target,t),source:o,target:t,selected:!0}});l([...s.map(e=>({...e,selected:!1})),...f])},getControlPanelNode:e=>{let{nodesConfiguration:o}=t(),{type:r}=e;if(!r)return null;let n=o[r]?.controlPanelNode;return n||(console.error(`could not find node for type ${r}`),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:r}=t(),n=e.type?r[e.type]?.defaultConfig:{},{height:i}=n?.size||{},l={id:e.id,...i?{height:i/em}:{}};o(({controlPanel:e})=>({controlPanel:{...e,nodes:[...e.nodes,l]}}))},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})}},o=(o,t,r)=>{let n,i,l,a=(i=V({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)}),l=t(),(e,o)=>{e.currentFileIndex!==o.currentFileIndex&&t().history.clear(),clearTimeout(n),l||(l=o),n=setTimeout(()=>{let o=i.diff(l,e);l=null,o&&t().history.push(o)},500)});return r.subscribe(a),e((...e)=>o(...e),t,r)},(e,t,r)=>{r.subscribe(async(e,o)=>{});let n=new Set,i={...t(),nodes:[],edges:[]};return o(async(...o)=>{let r=t(),[l]=o,a={...i,..."function"==typeof l?l({...i}):l},s=ev(i.nodes,a.nodes),d=ev(i.edges,a.edges);i=a;let c=s.added,p=d.added,h=d.removed,g=s.removed,{patch:u}=r;if(c.length){let e=u.registerAudioNodes(c);n.add(e),await e,n.delete(e)}if(!(p.length||h.length||g.length))return void e(...o);if(n.size)try{await Promise.all([...n.values()])}catch(e){console.log("some error",e)}p.length&&u.registerAudioConnections(p),h.length&&u.unregisterAudioConnections(h),g.length&&u.unregisterAudioNodes(g),e(...o)},t,r)})),e$={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"},zIndex:{modal:9998,controlPanel:9999,resumeContextLayout:10003}};U`
|
|
2
|
+
.react-flow {
|
|
3
|
+
.react-flow__pane {
|
|
4
|
+
/* background: rgb(106 106 106); */
|
|
5
|
+
/* background: "white"; */
|
|
6
|
+
// background: #292d39;
|
|
7
|
+
background: ${e$.colors.elevation3};
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.react-flow__background {
|
|
11
|
+
/* background: #efefef; */
|
|
12
|
+
stroke: white;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.react-flow__node-default {
|
|
16
|
+
background: #292d39;
|
|
17
|
+
color: white;
|
|
18
|
+
border: none;
|
|
19
|
+
/* background: transparent; */
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.react-flow__node {
|
|
23
|
+
padding: 0;
|
|
24
|
+
width: auto;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.react-flow__edge-path {
|
|
28
|
+
stroke: ${e$.colors.accent2};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.react-flow__node.selected {
|
|
32
|
+
border: 1px solid ${e$.colors.accent2};
|
|
33
|
+
box-shadow: 0 0 0 0.5px #${e$.colors.accent2};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.react-flow__node-default.selected, .react-flow__node-default.selected:hover {
|
|
37
|
+
box-shadow: 0 0 0 0.5px #${e$.colors.accent2};
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* .react-flow__minimap-mask {
|
|
41
|
+
fill: ${e$.colors.elevation1}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.react-flow__minimap-node {
|
|
45
|
+
fill:${e$.colors.accent2}
|
|
46
|
+
} */
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
`;var ek=()=>d();let eP=c(X)``,eN=c(Y)`
|
|
50
|
+
background: ${({colors:e})=>e.elevation2};
|
|
51
|
+
padding: 0;
|
|
52
|
+
border-radius: 0;
|
|
53
|
+
|
|
54
|
+
.react-contexify__item__content {
|
|
55
|
+
color: ${({colors:e})=>e.whitePrimary};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.react-contexify__separator {
|
|
59
|
+
background-color: ${({colors:e})=>e.elevation1};
|
|
60
|
+
margin: 0;
|
|
61
|
+
}
|
|
62
|
+
`,ez="editor-edge-menu";var ej=()=>{let e=ek(),o=eC(e=>e.removeEdges);return t(n,{children:t(eN,{id:ez,animation:!1,colors:e.colors,children:t(eP,{onClick:e=>o([e.props.edge]),children:"Delete Edge (DEL)"})})})};let eE=c.div`
|
|
63
|
+
position: fixed;
|
|
64
|
+
z-index: ${({theme:e})=>e.zIndex.modal};
|
|
65
|
+
width: 100%;
|
|
66
|
+
height: 100%;
|
|
67
|
+
top: 0;
|
|
68
|
+
left: 0;
|
|
69
|
+
background: ${({theme:e})=>e.colors.elevation3}cc;
|
|
70
|
+
display: flex;
|
|
71
|
+
align-items: center;
|
|
72
|
+
justify-content: center;
|
|
73
|
+
`,eF=c.div`
|
|
74
|
+
background: ${({theme:e})=>e.colors.elevation2};
|
|
75
|
+
box-shadow: 1px 1px 1px 1px ${({theme:e})=>e.colors.elevation1};
|
|
76
|
+
color: white;
|
|
77
|
+
width: 70%;
|
|
78
|
+
height: 80%;
|
|
79
|
+
overflow-y: scroll;
|
|
80
|
+
position: relative;
|
|
81
|
+
`,eS=c(b)`
|
|
82
|
+
position: absolute;
|
|
83
|
+
top: 0.2rem;
|
|
84
|
+
right: 0.2rem;
|
|
85
|
+
cursor: pointer;
|
|
86
|
+
`;var eT=({children:e,onClose:o,...n})=>{let i=ek();return g(()=>{let e=e=>{"Escape"===e.key&&o?.()};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[o]),Z(t(eE,{theme:i,onClick:o,children:r(eF,{...n,onClick:e=>{e.stopPropagation()},theme:i,children:[e,t(eS,{theme:i,onClick:o})]})}),document.body)};let eD=i(c.div`
|
|
87
|
+
width: 100%;
|
|
88
|
+
`),eM=i(c.div`
|
|
89
|
+
padding: 1rem;
|
|
90
|
+
display: flex;
|
|
91
|
+
flex-direction: column;
|
|
92
|
+
gap: 1rem;
|
|
93
|
+
`),eA=i(c.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
|
+
`),eO=i(c.div`
|
|
115
|
+
white-space: nowrap;
|
|
116
|
+
overflow: hidden;
|
|
117
|
+
text-overflow: ellipsis;
|
|
118
|
+
`),e_=i(c.div`
|
|
119
|
+
color: ${({theme:e})=>e.colors.highlight2};
|
|
120
|
+
font-size: 12px;
|
|
121
|
+
`),eI=i(c.div`
|
|
122
|
+
display: flex;
|
|
123
|
+
gap: 0.2rem;
|
|
124
|
+
flex-wrap: wrap;
|
|
125
|
+
`),eL=i(c.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
|
+
`),eH=i(c.div``),eR=i(c.div`
|
|
137
|
+
font-size: 1.1rem;
|
|
138
|
+
padding: 0.25rem 0;
|
|
139
|
+
color: ${({theme:e})=>e.colors.highlight3};
|
|
140
|
+
`),eW=i(c.div`
|
|
141
|
+
color: ${({theme:e})=>e.colors.highlight2};
|
|
142
|
+
font-size: 12px;
|
|
143
|
+
`);var eB=({onComponentClick:e,filters:{plugin:o,search:n="",tags:i},onTagClick:l})=>{let a=eC(({plugins:e})=>e),s=u(()=>o?a.filter(({name:e})=>e===o):a,[a,o]);return t(eD,{children:u(()=>n||i?.length?s.map(e=>({...e,components:i?.length?e.components.filter(e=>i?.every(o=>e.tags?.includes(o))):e.components})).map(e=>({...e,components:e.components.filter(({type:e,name:o})=>e.toLocaleLowerCase().includes(n.toLocaleLowerCase())||o?.toLocaleLowerCase().includes(n.toLocaleLowerCase()))})):s,[s,n,i]).map(({name:o,description:n,components:a},s)=>a.length?r(eM,{children:[r(eH,{children:[t(eR,{children:o}),t(eW,{children:n})]}),t(eA,{children:a.sort((e,o)=>e.type.toLowerCase()>o.type.toLowerCase()?1:-1).map((o,n)=>r("li",{onClick:()=>e(o),children:[t(eO,{children:o.name||o.type}),o.description&&t(e_,{children:o.description}),t(eI,{children:o.tags?.map((e,o)=>t(eL,{isActive:i?.includes(e),onClickCapture:o=>{o.stopPropagation(),l(e)},children:e},o))})]},n))})]},s):null)})};let eG=c.div`
|
|
144
|
+
display: flex;
|
|
145
|
+
position: relative;
|
|
146
|
+
`,eV=c.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
|
+
`,eU=c.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
|
+
`,eJ=c.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
|
+
`,eX=i(c(eL)`
|
|
197
|
+
font-size: 12px;
|
|
198
|
+
padding: 0.2rem 0.4rem;
|
|
199
|
+
&:hover {
|
|
200
|
+
}
|
|
201
|
+
&::after {
|
|
202
|
+
content: "×";
|
|
203
|
+
margin-left: 0.4rem;
|
|
204
|
+
}
|
|
205
|
+
`);var eY=({onChange:e,value:o})=>{let n=ek(),i=eC(({plugins:e})=>e),l=f(null);return g(()=>{l.current&&l.current.focus()},[l]),r(eU,{theme:n,children:[t(eG,{children:t(eV,{ref:l,theme:n,value:o.search||"",placeholder:"search...",onChange:t=>e({...o,search:t.target.value})})}),t(eI,{children:o.tags?.map((r,n)=>t(eX,{isActive:!0,onClick:()=>{let t=o.tags?.filter(e=>e!==r)||[];e({...o,tags:t})},children:r},n))}),i.map(({name:i,components:l},a)=>i?r(eJ,{theme:n,children:[t("input",{type:"checkbox",name:"plugin",value:i,checked:i===o.plugin,onChange:()=>{e({...o,plugin:i===o.plugin?null:i})}}),t("span",{children:i})]},a):null)]})};let eq=c.div`
|
|
206
|
+
height: 100%;
|
|
207
|
+
width: 100%;
|
|
208
|
+
display: flex;
|
|
209
|
+
gap: 1rem;
|
|
210
|
+
`,eK=c.div`
|
|
211
|
+
flex-grow: 1;
|
|
212
|
+
height: 100%;
|
|
213
|
+
overflow-y: scroll;
|
|
214
|
+
`;var eQ=({isOpen:e,closeMenu:o,mousePosition:n})=>{let i=ek(),{screenToFlowPosition:l}=A(),{createNode:a}=eC(({createNode:e})=>({createNode:e})),[s,d]=h({}),c=m(({type:e})=>{let{x:t,y:r}=l(n);a({id:`${e}-${+new Date}`,type:e,data:{label:e},position:{x:t,y:r},targetPosition:O.Left,sourcePosition:O.Right}),o()},[n,l,a,o,n]);return e?t(eT,{onClose:()=>{o(),d({})},children:r(eq,{theme:i,children:[t(eY,{onChange:d,value:s}),t(eK,{theme:i,children:t(eB,{filters:s,onTagClick:e=>{d(o=>({...o,tags:o.tags?.includes(e)?o.tags.filter(o=>o!==e):[...o.tags||[],e]}))},onComponentClick:e=>{c(e),d({})}})})]})}):null};let eZ=c.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
|
+
`,e0=c.div`
|
|
241
|
+
display: flex;
|
|
242
|
+
flex-wrap: wrap;
|
|
243
|
+
align-items: center;
|
|
244
|
+
justify-content: center;
|
|
245
|
+
height: 100%;
|
|
246
|
+
width: 100%;
|
|
247
|
+
`,e1=c(eo)`
|
|
248
|
+
width: 100%;
|
|
249
|
+
height: 8rem;
|
|
250
|
+
`,e2=c.div`
|
|
251
|
+
font-size: 2rem;
|
|
252
|
+
`;var e3=({isOpen:e,closeMenu:o})=>{let n=ek(),i=eC(({setGraph:e})=>e),l=eC(e=>e.setEditorState),a=f(null),s=m(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{l(e),o()}).catch(console.error)},[i,o]);return e?t(eT,{onClose:o,children:r(eZ,{theme:n,children:[t("input",{onChange:({target:{files:e}})=>s(e),ref:a,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),t(ee,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{a.current?.click()},onDrop:e=>s(e),children:r(e0,{theme:n,children:[t(e1,{}),t(e2,{children:"click or drop file here"})]})})]})}):null};let e8=c.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
|
+
`,e9=c.div`
|
|
279
|
+
display: flex;
|
|
280
|
+
flex-wrap: wrap;
|
|
281
|
+
align-items: center;
|
|
282
|
+
justify-content: center;
|
|
283
|
+
height: 100%;
|
|
284
|
+
width: 100%;
|
|
285
|
+
`,e5=c(eo)`
|
|
286
|
+
width: 100%;
|
|
287
|
+
height: 8rem;
|
|
288
|
+
`,e7=c.div`
|
|
289
|
+
font-size: 2rem;
|
|
290
|
+
`;var e6=({isOpen:e,closeMenu:o})=>{let n=ek(),i=eC(e=>e.setProject),l=f(null),a=m(e=>{let[t]=e||[];t.text().then(JSON.parse).then(e=>{i(e),o()}).catch(console.error)},[i,o]);return e?t(eT,{onClose:o,children:r(e8,{theme:n,children:[t("input",{onChange:({target:{files:e}})=>a(e),ref:l,type:"file",className:"hidden",style:{display:"none"},accept:".json"}),t(ee,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{l.current?.click()},onDrop:e=>a(e),children:r(e9,{theme:n,children:[t(e5,{}),t(e7,{children:"click or drop file here"})]})})]})}):null};console.log(888888,`React version: ${v}`);let e4=e=>new Promise((o,t)=>{let r=new FileReader;r.readAsDataURL(e),r.onload=()=>o(r.result?.toString()||""),r.onerror=e=>t(e)}),oe=c.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
|
+
`,oo=c.div`
|
|
317
|
+
display: flex;
|
|
318
|
+
flex-wrap: wrap;
|
|
319
|
+
align-items: center;
|
|
320
|
+
justify-content: center;
|
|
321
|
+
height: 100%;
|
|
322
|
+
width: 100%;
|
|
323
|
+
`,ot=c(eo)`
|
|
324
|
+
width: 100%;
|
|
325
|
+
height: 8rem;
|
|
326
|
+
`,or=c.div`
|
|
327
|
+
font-size: 2rem;
|
|
328
|
+
`;var on=({isOpen:e,closeMenu:o})=>{let n=ek();eC(({setGraph:e})=>e),eC(e=>e.setEditorState);let i=eC(e=>e.addFile),l=f(null),a=m(async e=>{let[t]=e||[],r=await e4(t);i({type:"audio",id:`audio-file-${+new Date}`,name:t.name,file:r}),o()},[i,o]);return e?t(eT,{onClose:o,children:r(oe,{theme:n,children:[t("input",{onChange:({target:{files:e}})=>a(e),ref:l,type:"file",className:"hidden",style:{display:"none"},accept:".wav,.mp3,.ogg"}),t(ee,{className:"drop-zone-wrapper",targetClassName:"drop-zone",draggingOverTargetClassName:"drop-zone-drag-over",onTargetClick:()=>{l.current?.click()},onDrop:e=>a(e),children:r(oo,{theme:n,children:[t(ot,{}),t(or,{children:"click or drop file here"})]})})]})}):null};let oi="editor-menu";var ol=({editorContextMenu:e=[]})=>{let o=ek(),[i,l]=h({x:0,y:0}),[a,s]=h(!1),[d,c]=h(!1),[p,f]=h(!1),[v,y]=h(!1),b=m((e,o)=>{l({x:e,y:o}),s(!0)},[s]),w=eC(e=>e.pasteBuffer),{screenToFlowPosition:x}=A(),C=m(e=>{let{x:o,y:t}=x(e);w(o,t)},[s,x]),$=eC(({clearGraph:e})=>e),k=eC(e=>e.getEditorState),P=eC(e=>e.getProject),N=m(()=>{$()},[$]),z=eC(e=>e.toggleHelp),j=eC(e=>e.history.back),E=eC(e=>e.history.forward),F=eC(e=>e.history.pointer),S=eC(e=>e.history.buffer),T=eC(e=>e.copySelectedItems),D=eC(e=>e.nodes),M=u(()=>D.filter(({selected:e})=>e),[D]),O=eC(e=>e.copyBuffer),_=A(),I=m(()=>{K(JSON.stringify({...k()},null,2),"web-noise-patch.json")},[k,_]),L=m(()=>{K(JSON.stringify({...P()},null,2),"web-noise-project.json")},[k,_]);return g(()=>(Q("command+shift+a",()=>(b(200,50),!1)),Q("shift+/",()=>(z(),!1)),Q("command+z",()=>(j(),!1)),Q("command+shift+z",()=>(E(),!1)),Q("command+c",()=>(T(),!1)),Q("command+v",()=>(C({x:200,y:50}),!1)),()=>{Q.unbind()}),[b,C]),r(n,{children:[t(eQ,{isOpen:a,closeMenu:()=>s(!1),mousePosition:i}),t(e3,{isOpen:d,closeMenu:()=>c(!1)}),t(e6,{isOpen:p,closeMenu:()=>f(!1)}),t(on,{isOpen:v,closeMenu:()=>y(!1)}),r(eN,{id:oi,animation:!1,colors:o.colors,children:[t(eP,{onClick:({triggerEvent:{clientX:e,clientY:o}})=>b(e,o),children:"Add Node (⌘+⇧+A)"}),t(q,{}),t(eP,{onClick:N,children:"Delete All"}),t(q,{}),t(eP,{onClick:I,children:"Download patch"}),t(eP,{onClick:()=>c(!0),children:"Upload patch"}),t(q,{}),t(eP,{onClick:L,children:"Download project"}),t(eP,{onClick:()=>f(!0),children:"Upload project"}),t(q,{}),t(eP,{onClick:()=>y(!0),children:"Upload Audio File"}),t(q,{}),t(eP,{disabled:0===F,onClick:j,children:"Undo (⌘+z)"}),t(eP,{disabled:F===S.length,onClick:E,children:"Redo (⌘+⇧+Z)"}),t(q,{}),t(eP,{disabled:!M.length,onClick:T,children:"Copy Selected (⌘+c)"}),t(eP,{disabled:!O.nodes.length,onClick:({triggerEvent:{clientX:e,clientY:o}})=>C({x:e,y:o}),children:"Paste (⌘+v)"}),t(q,{}),e.map((e,o)=>t(eP,{children:e},o)),t(q,{}),t(eP,{onClick:z,children:"Help (⇧+?)"})]})]})};let oa="editor-node-menu";var os=e=>{let o=ek(),i=eC(e=>e.removeNodes),l=eC(e=>e.addNodeToControlPanel),a=eC(e=>e.removeNodeFromControlPanel),s=eC(e=>e.copy),d=eC(e=>e.nodesConfiguration),c=eC(e=>e.controlPanel.nodes),p=m(({props:e})=>!!e?.node.type&&!!c.find(({id:o})=>o===e.node.id),[c]),h=m(({props:e})=>{if(!e?.node.type)return!1;let o=d[e.node.type];return!!o?.controlPanelNode},[d]);return t(n,{children:r(eN,{id:oa,animation:!1,colors:o.colors,children:[t(eP,{onClick:e=>i([e.props.node]),children:"Delete Node (DEL)"}),t(eP,{hidden:(...e)=>!h(...e)||p(...e),onClick:e=>l(e.props.node),children:"Add To Control Panel"}),t(eP,{hidden:(...e)=>!h(...e)||!p(...e),onClick:e=>a(e.props.node),children:"Remove From Control Panel"}),t(eP,{onClick:e=>s({nodes:[e.props.node],edges:[]}),children:"Copy (⌘+c)"})]})})},od=e=>eC(({patch:e})=>e).audioNodes.get(e),oc=e=>{let o=eC(({updateNodeData:e})=>e);return{updateNodeValues:m(t=>o(e,{values:t}),[e,o]),updateNodeConfig:m(t=>o(e,{config:t}),[e,o]),updateNodeLabel:m(t=>o(e,{label:t}),[e,o])}};let op=c.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
|
+
`;var oh=({onChange:e,value:o="",className:r})=>{let n=f(null),[i,l]=h(!1),a=m(e=>{e.target?.select(),l(!0)},[l]),s=m(()=>{window.getSelection()?.collapseToEnd(),l(!1)},[l]),d=m(()=>{s(),n.current&&e(n.current.value)},[n,s,e]),c=m(()=>{s(),n.current&&o&&(n.current.value=o)},[n,s,o]);return g(()=>{n.current&&(n.current.value=o)},[o,n]),t(op,{ref:n,type:"text",readOnly:!i,onDoubleClick:e=>a(e),onBlur:d,onKeyDown:e=>{switch(e.key){case"Escape":c();break;case"Enter":d()}},className:r})};let og=i(c.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
|
+
`);var ou=({isOpen:e,onClose:o,type:r,node:n})=>{let{info:i,portsDescription:l}=eC(e=>e.nodesConfiguration[r]),a=u(()=>{let e=[],o=n.inputs;if(o)for(let t in e.push("## Inputs"),o){let r=o[t];e.push(`### *${t}*`);let n=l?.inputs?.[t];n&&e.push(n),Array.isArray(r.type)?e.push(`**Types**: \`${r.type.join(", ")}\``):e.push(`**Type**: \`${r.type||"unknown"}\``),r.range&&e.push(`**Range**: \`[${r.range[0]}, ${r.range[1]}]\``),void 0!==r.defaultValue&&e.push(`**Default**: \`${r.defaultValue}\``)}let t=n.outputs;if(t)for(let o in e.push("## Outputs"),t){let r=t[o];e.push(`### *${o}*`);let n=l?.outputs?.[o];n&&e.push(n),Array.isArray(r.type)?e.push(`**Types**: \`${r.type.join(", ")}\``):e.push(`**Type**: \`${r.type||"unknown"}\``),r.range&&e.push(`**Range**: \`[${r.range[0]}, ${r.range[1]}]\``),void 0!==r.defaultValue&&e.push(`**Default**: \`${r.defaultValue}\``)}return e.join("\n\n")},[n,l]);return e?t(eT,{onClose:o,children:t(og,{dangerouslySetInnerHTML:{__html:eh((i||"")+"\n\n"+a||"")}})}):null};let om=c.div`
|
|
386
|
+
background-color: var(--leva-colors-elevation1);
|
|
387
|
+
`,of=c(om)`
|
|
388
|
+
padding: 2rem 5rem;
|
|
389
|
+
`,ov=c(om)`
|
|
390
|
+
padding: 1rem 2rem;
|
|
391
|
+
`,oy=c(x)`
|
|
392
|
+
font-size: 1.2rem;
|
|
393
|
+
opacity: 0.4;
|
|
394
|
+
width: 1rem;
|
|
395
|
+
&:hover {
|
|
396
|
+
opacity: 1;
|
|
397
|
+
cursor: pointer;
|
|
398
|
+
}
|
|
399
|
+
`,ob=c(C)`
|
|
400
|
+
font-size: 1.2rem;
|
|
401
|
+
opacity: 0.4;
|
|
402
|
+
width: 1rem;
|
|
403
|
+
&:hover {
|
|
404
|
+
opacity: 1;
|
|
405
|
+
cursor: pointer;
|
|
406
|
+
}
|
|
407
|
+
`,ow=c.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
|
+
`,ox=c(ow)`
|
|
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
|
+
`,oC=c(ow)(({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
|
+
`),o$=c.div`
|
|
430
|
+
grid-area: inputs;
|
|
431
|
+
text-align: left;
|
|
432
|
+
`,ok=c.div`
|
|
433
|
+
grid-area: outputs;
|
|
434
|
+
text-align: right;
|
|
435
|
+
`,oP=c.div`
|
|
436
|
+
position: relative;
|
|
437
|
+
padding: 5px 10px;
|
|
438
|
+
`,oN={[ex.Audio]:"#4ade80",[ex.Gate]:"#c084fc",[ex.Number]:"#38bdf8",[ex.Any]:"#ffffff"},oz=i(c(_,{shouldForwardProp:e=>"portType"!==e})`
|
|
439
|
+
--port-color: ${e=>{if(!e.portType)return e.theme.colors.highlight2;if(!Array.isArray(e.portType))return oN[e.portType];{let o=e.portType.map(e=>oN[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
|
+
`),oj=i(c(oz)`
|
|
444
|
+
left: -3px;
|
|
445
|
+
`),oE=({...e})=>t(oj,{...e,type:"target",position:O.Left}),oF=i(c(oz)`
|
|
446
|
+
right: -3px;
|
|
447
|
+
`),oS=e=>t(oF,{...e,type:"source",position:O.Right}),oT=({className:e,...o})=>t(ox,{...o,className:[e,eg].join(" ")}),oD=e=>eC(o=>o.nodesConfiguration[e]),oM=e=>{let{id:o,children:n,selected:i,...l}=e,a=ek(),s=eC(({getNode:e})=>e),d=eC(e=>e.nodesConfiguration),[c,p]=h(!1),{info:g}=oD(e.type),m=u(()=>d[e.type].resizable??!1,[d,e.type]),{updateNodeLabel:f,updateNodeConfig:v}=oc(o),{data:y}=s(o)||{},b=od(o),{ConfigNode:w}=(e=>{let{configNode:o}=oD(e);return{ConfigNode:o}})(l.type),[x,C]=h(!1);if(!b)return t(of,{className:eg,children:"can't find audio node"});if(b.loading)return t(of,{className:eg,children:"loading"});if(b.error)return r(ov,{className:eg,children:["error: ",b.error.toString()]});if(!b.node)return t(of,{className:eg,children:"can't find audio node"});let $=y?.config?.size,{node:{inputs:k,outputs:P}}=b;return r(om,{children:[r(oT,{children:[g&&t(ob,{onClickCapture:()=>p(!0)}),t(oh,{value:y?.label??"No Name",onChange:f}),w&&t(oy,{onClickCapture:()=>C(e=>!e)})]}),r(oC,{theme:a,children:[t(o$,{children:k?Object.keys(k).map((e,o)=>r(oP,{children:[t(oE,{id:e,portType:k[e].type}),t("span",{children:e})]},o)):null}),t(ok,{children:P?Object.keys(P).map((e,o)=>r(oP,{children:[t(oS,{id:e,portType:P[e].type}),t("span",{children:e})]},o)):null})]}),w&&x&&i?t(w,{...e}):m?t(el,{size:$,minWidth:180,minHeight:30,enable:{bottom:!0,bottomRight:!0,right:!0},onResizeStop:(e,o,t,r)=>{let n=$?{width:$.width+r.width,height:$.height+r.height}:t.getBoundingClientRect();v({...y?.config,size:n})},children:n}):n,t(ou,{isOpen:c,type:e.type,onClose:()=>p(!1),node:b.node})]})},oA=c.div`
|
|
448
|
+
width: 100%;
|
|
449
|
+
padding: 0.4rem 0;
|
|
450
|
+
white-space: nowrap;
|
|
451
|
+
overflow: hidden;
|
|
452
|
+
text-overflow: ellipsis;
|
|
453
|
+
`,oO=c(oT)`
|
|
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
|
+
`,o_=c.div`
|
|
462
|
+
display: flex;
|
|
463
|
+
align-items: center;
|
|
464
|
+
height: 70%;
|
|
465
|
+
width: auto;
|
|
466
|
+
gap: 0.4rem;
|
|
467
|
+
`,oI=c.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
|
+
`,oL=c.div`
|
|
480
|
+
height: 100%;
|
|
481
|
+
display: grid;
|
|
482
|
+
grid-template-rows: auto 1fr;
|
|
483
|
+
`,oH=e=>{let{node:o}=e,r=eC(e=>e.getControlPanelNode),n=u(()=>r(o),[o]);return n?t(n,{...e}):null};var oR=e=>{let{node:o,showControls:n,onDelete:i}=e,l=ek(),{id:a}=o,{node:s}=od(a)||{},{updateNodeValues:d}=oc(a);return r(oL,{theme:l,children:[r(oO,{theme:l,children:[t(oA,{children:o.data.label}),n&&r(o_,{children:[t(oI,{theme:l,children:t(w,{className:"grid-item-handle"})}),t(oI,{theme:l,children:t(b,{onClick:()=>i(o)})})]})]}),t(oH,{node:o,audioNode:s,updateNodeValues:d})]})};let oW=c.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
|
+
`,oB=c(o_)`
|
|
504
|
+
height: 80%;
|
|
505
|
+
`,oG=c(oI)`
|
|
506
|
+
font-size: 1rem;
|
|
507
|
+
display: flex;
|
|
508
|
+
align-items: center;
|
|
509
|
+
`,oV=c(oO)`
|
|
510
|
+
grid-template-columns: 1fr auto;
|
|
511
|
+
border-bottom: 1px solid ${({theme:e})=>e.colors.elevation3};
|
|
512
|
+
font-size: 0.7rem;
|
|
513
|
+
`,oU=c(oA)`
|
|
514
|
+
text-align: center;
|
|
515
|
+
`,oJ=c.div`
|
|
516
|
+
height: 100%;
|
|
517
|
+
width: 100%;
|
|
518
|
+
padding: 0.3rem 0.4rem;
|
|
519
|
+
box-sizing: border-box;
|
|
520
|
+
`,oX=c.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
|
+
`,oY=c.div`
|
|
527
|
+
padding: 1rem 0;
|
|
528
|
+
font-family: var(--leva-fonts-mono);
|
|
529
|
+
font-size: 0.8rem;
|
|
530
|
+
`,oq=c.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
|
+
`,oK=c.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
|
+
`,oQ=c.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
|
+
`;var oZ=()=>{let e=ek(),o=f(null),i=eC(e=>e.nodes),{show:l,nodes:a,size:s}=eC(e=>e.controlPanel),{width:d=200,height:c}=s,p=u(()=>{let e=a.map(({id:e})=>e);return i.filter(({id:o})=>e.includes(o))},[i,a]),g=eC(e=>e.showControlPanel),m=eC(e=>e.hideControlPanel),v=eC(e=>e.setControlPanelNodes),y=eC(e=>e.setControlPanelSize),w=eC(e=>e.removeNodeFromControlPanel),[x,C]=h(!0),$=u(()=>{let e=a.reduce((e,{height:o=em,x:t,y:r=0})=>{let n=r+o;return n>e?n:e},0);return a.map(({id:o,width:t,height:r,x:n,y:i})=>({i:o,w:t||4,h:r||6,x:n??0,y:i??e}))},[a]);return p.length?r(n,{children:[t(oW,{theme:e,ref:o,onClick:g,children:t(ec,{})}),r(ep,{open:l,onClose:m,direction:"left",className:"",size:"auto",enableOverlay:!1,style:{background:e.colors.elevation1,position:"absolute"},children:[r(oV,{theme:e,children:[t(oU,{children:"Control Panel"}),t(oB,{children:t(oG,{onClick:m,theme:e,children:t(b,{})})})]}),r(oJ,{children:[t(oY,{children:x?r(oq,{theme:e,onClick:()=>C(!1),children:[t(es,{}),"Unlock grid"]}):r(oq,{theme:e,onClick:()=>C(!0),children:[t(ed,{}),"Lock grid"]})}),t(el,{enable:{top:!1,right:!x,bottom:!1,left:!1,topRight:!1,bottomRight:!1,bottomLeft:!1,topLeft:!1},handleComponent:{right:t(oK,{theme:e})},minWidth:120,size:{width:d,height:"auto"},onResizeStop:(e,o,t,r)=>{y({width:d+r.width,height:c+r.height})},children:t(oX,{theme:e,children:t(ea,{layout:$,className:"layout",cols:4,rowHeight:em,width:d,margin:[0,0],isResizable:!x,draggableHandle:".grid-item-handle",onLayoutChange:e=>{requestAnimationFrame(()=>{v(e.map(({i:e,w:o,h:t,x:r,y:n})=>({id:e,width:o,height:t,x:r,y:n})))})},children:p.map(o=>t(oQ,{theme:e,children:t(oR,{node:o,showControls:!x,onDelete:w})},o.id))})})})]})]})]}):null},o0={};o0="# Quick start\n\n## Add node\n - Mouse right click\n - Select **'Add Node'** from context menu\n\n ### or\n\n - Press `CMD+SHIFT+A`\n\n<br/>\n\n## Connect nodes\n - Mouse left click and hold on source port\n - Drop on target port\n\n<br/>\n\n## Delete Node or Connection\n - Mouse right click on node/connection\n - Select **'Delete Node'**/**'Delete Connection'** from context menu\n\n ### or\n\n - Mouse left click on node/connection, then press `Backspace`\n\n<br/>\n\n\n## Move node\n - Drag and Drop\n\n<br/>\n\n## Upload file\n - Drag and drop audio or patch files onto the application\n - Uploaded file appears as a new tab in the tabs bar at the top\n - Click on the tab to view or edit the file\n\n\n";let o1=i(c.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
|
+
`),o2=i(c.div`
|
|
569
|
+
padding: 1rem;
|
|
570
|
+
height: 100%;
|
|
571
|
+
width: 100%;
|
|
572
|
+
box-sizing: border-box;
|
|
573
|
+
overflow: hidden;
|
|
574
|
+
`);var o3=()=>{var e;let o=eC(e=>e.isHelpShown),r=eC(e=>e.toggleHelp);return o?t(eT,{onClose:()=>{r()},children:t(o2,{children:t(o1,{dangerouslySetInnerHTML:{__html:eh((e=o0)&&e.__esModule?e.default:e)},onWheelCapture:e=>e.stopPropagation()})})}):null};let o8=()=>t(n,{children:t(I,{onClick:eC(e=>e.toggleHelp),children:t(et,{})})}),o9=c.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
|
+
`,o5=c.div`
|
|
589
|
+
display: flex;
|
|
590
|
+
width: 100%;
|
|
591
|
+
align-items: center;
|
|
592
|
+
justify-content: center;
|
|
593
|
+
`,o7=c.div`
|
|
594
|
+
font-family: var(--leva-fonts-mono);
|
|
595
|
+
font-size: 2rem;
|
|
596
|
+
`,o6=c(er)`
|
|
597
|
+
width: 7rem;
|
|
598
|
+
height: 7rem;
|
|
599
|
+
`;var o4=()=>{let e=ek(),o=eC(({patch:e})=>e).audioContext,[n,i]=h("running"===o.state);return n?null:r(o9,{theme:e,onClick:()=>{o.resume(),i(!0)},children:[t(o5,{children:t(o7,{theme:e,children:"Click anywhere to resume audio context"})}),t(o5,{children:t(o6,{})})]})},te=()=>{let e=eC(({setConfig:e})=>e),{showMinimap:o}=eC(({config:e})=>e);return t(I,{onClick:()=>e({showMinimap:!o}),children:o?t(en,{}):t(ei,{})})},to=({id:e,sourceX:o,sourceY:i,targetX:l,targetY:a,sourcePosition:s,targetPosition:d,style:c={},data:p,markerStart:h,markerEnd:u,source:m,target:f,sourceHandleId:v,targetHandleId:y,selected:b})=>{let w=ek(),x=eC(({getNode:e})=>e),C=x(m),$=x(f),k=C?.selected||$?.selected;g(()=>{if(v&&y)return console.log(`connected ${m} to ${f}`),()=>{console.log(`disconnected ${m} from ${f}`)}},[m,v,f,y]);let[P]=L({targetX:l,targetY:a,targetPosition:d,sourceX:o,sourceY:i,sourcePosition:s});return r(n,{children:[t("path",{id:e,style:{...c,stroke:b?w.colors.accent2:k?w.colors.highlight3:w.colors.highlight2},className:"react-flow__edge-path Wire",d:P,markerEnd:u}),t("path",{style:{...c,strokeWidth:8,color:"transparent",opacity:0,cursor:"pointer"},d:P,markerEnd:u})]})};let tt=(e,o)=>console.log("drag stop",o),tr=(e,o)=>console.log("click",o),tn=[20,20],ti=({editorState:e,plugins:o=[],editorContextMenu:n=[],onChange:i=()=>{},...l})=>{let a=u(()=>({wire:to}),[]),{nodes:s,edges:d,controlPanel:c,onNodesChange:p,onNodesDelete:f,onEdgesChange:v,onEdgesDelete:y,onConnect:b,setPlugins:w,setViewport:x,viewport:C}=eC(),$=eC(({config:e})=>e),P=eC(({nodeTypes:e})=>e);g(()=>{w(o)},[o]);let[N,z]=h(null);g(()=>{N&&i({nodes:s,edges:d,controlPanel:c,viewport:C})},[s,d,c,C]);let j=m(e=>{N||(z(e),console.log("flow loaded:",e))},[N]),{onContextMenu:M}=(()=>{let{show:e}=J({id:oi});return{onContextMenu:e}})(),{onContextMenu:A}=(()=>{let{show:e}=J({id:oa});return{onContextMenu:m((o,t)=>{o.stopPropagation(),e(o,{props:{node:t}})},[])}})(),{onContextMenu:O}=(()=>{let{show:e}=J({id:ez});return{onContextMenu:m((o,t)=>{o.stopPropagation(),e(o,{props:{edge:t}})},[e])}})();return g(()=>{C&&N?.setViewport(C)},[C,N]),E({onEnd:x}),r(k,{nodes:s,edges:d,onNodesChange:p,onNodesDelete:f,onEdgesChange:v,onConnect:b,onNodeDragStop:tt,onEdgesDelete:y,onInit:j,onNodeClick:tr,onContextMenu:M,onNodeContextMenu:A,onEdgeContextMenu:O,nodeTypes:P,edgeTypes:a,snapGrid:tn,defaultViewport:e?.viewport,defaultEdgeOptions:{type:"wire"},snapToGrid:!0,fitView:!0,disableKeyboardA11y:!0,children:[t(F,{variant:S.Dots,gap:12}),$.showMinimap?t(T,{}):null,r(D,{style:{right:"1rem",left:"initial",bottom:"40%",top:"initial"},showInteractive:!1,children:[t(te,{}),t(o8,{})]}),t(o4,{}),t(oZ,{}),t(o3,{}),t(ol,{editorContextMenu:n}),t(os,{}),t(ej,{})]})},tl=e=>t(M,{children:t(ti,{...e})}),ta={nodes:[],edges:[],controlPanel:{nodes:[],show:!1,size:{width:200,height:100}},viewport:{x:0,y:0,zoom:1.5}},ts=i(c.div`
|
|
600
|
+
display: flex;
|
|
601
|
+
flex-direction: column;
|
|
602
|
+
height: 100%;
|
|
603
|
+
width: 100%;
|
|
604
|
+
`),td=i(c.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
|
+
`),tc=i(c.div`
|
|
615
|
+
height: 100%;
|
|
616
|
+
width: 100%;
|
|
617
|
+
display: flex;
|
|
618
|
+
position: relative;
|
|
619
|
+
`),tp=i(c.div`
|
|
620
|
+
display: flex;
|
|
621
|
+
flex: 1;
|
|
622
|
+
align-items: center;
|
|
623
|
+
justify-content: center;
|
|
624
|
+
background: ${({theme:e})=>e.colors.elevation3};
|
|
625
|
+
`),th=i(c.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
|
+
`),tg=e=>{let o=eC(e=>e.pullEditorChanges),i=eC(e=>e.currentFileIndex),[l,a]=h(!0);g(()=>{a(!0),setTimeout(()=>{a(!1)},1600)},[i]);let{file:s}=e;return s?"audio"===s.type?t(tp,{children:t("audio",{src:s.file,controls:!0})}):r(n,{children:[t(tl,{...e,onChange:e=>{o()},editorState:s.file||ta}),t(th,{show:l,children:"Loading..."})]}):null},tu=i(c.div`
|
|
641
|
+
height: 2rem;
|
|
642
|
+
display: flex;
|
|
643
|
+
align-items: center;
|
|
644
|
+
background: ${({theme:e})=>e.colors.elevation2};
|
|
645
|
+
`),tm=i(c.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
|
+
`),tf=i(c.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
|
+
`),tv=i(c(y)`
|
|
674
|
+
height: 40%;
|
|
675
|
+
width: auto;
|
|
676
|
+
`),ty=i(c(b)`
|
|
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
|
+
`),tb=()=>({file:ta,name:"Unnamed",type:"patch",id:p()});var tw=({...e})=>{let{projectState:o,theme:n}=e,i=eC(e=>e.currentFileIndex),d=eC(e=>e.project.files[e.currentFileIndex]),c=eC(e=>e.setCurrentFileIndex),p=eC(e=>e.project),u=eC(e=>e.setProject),m=eC(e=>e.getProject),f=eC(e=>e.updateFileName),v=eC(e=>e.addFile),y=eC(e=>e.deleteFile),b=eC(e=>e.syncEditorWithCurrentFile),w=eC(e=>e.setEditorState);eC(e=>e.pullEditorChanges);let[x,C]=h(!1);return g(()=>{u(o||{files:[tb()]});let e=o?.files[0];e?.file&&e?.type!=="audio"&&w(e.file)},[o]),g(()=>($("project://*",async(...e)=>{let o=new Request(...e),t=m().files,r=o.url.replace("project://",""),n=t.find(({id:e})=>e===r);return n?ey(n)?new Response(JSON.stringify(n.file??null)):eb(n)?fetch(n.file):new Response(null):new Response(`File not found: ${o.url}`,{status:404})}),()=>{}),[m]),g(()=>{b()},[i,b]),r(l,{theme:n||e$,children:[t(a,{styles:s`
|
|
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
|
+
`}),r(ts,{onDragOver:e=>{e.preventDefault(),e.stopPropagation(),C(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),C(!1)},onDrop:e=>{e.preventDefault(),e.stopPropagation(),C(!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;u(o),c(0),b();return}v({...tb(),file:{...o,controlPanel:{...ta.controlPanel,...o.controlPanel}},name:e.name},e.name);return}if(e.type.match(/^audio\//)){let o=await e4(e);v({type:"audio",id:`audio-file-${+new Date}`,name:e.name,file:o});return}console.error("Unsupported file type",e)})},children:[r(tu,{children:[p.files.map((e,o)=>r(tm,{onClick:()=>{c(o)},active:o===i,children:[t(oh,{onChange:e=>f(o,e),value:e.name||"Unnamed"}),t(ty,{onClick:e=>{e.stopPropagation(),window.confirm("Do you really want to delete this file?")&&y(o)}})]},o)),t(tf,{onClick:()=>{v(tb()),c(p.files.length)},children:t(tv,{})})]}),t(tc,{children:t(tg,{file:d,...e})}),x&&t(td,{children:"Drop file(s) to upload to the project"})]})]})};export{tw as Editor,ta as EDITOR_DEFAULTS,to as Wire,oM as WNNode,oT as TitleBar,oC as PortsPanel,ok as OutputPorts,oS as OutputHandle,o$ as InputPorts,oE as InputHandle,oP as Port,eT as Modal,oh as EditableLabel,od as useAudioNode,oc as useNode,ek as useTheme,eC as useStore,e$ as theme,eb as isAudio,ey as isPatch,ex as PortType};
|
|
742
|
+
//# sourceMappingURL=module.js.map
|