@awesome-flow/noise 0.4.0 → 0.5.0
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/abstract/index.cjs +2 -5
- package/dist/abstract/index.js +9 -7
- package/dist/modules/index.cjs +0 -1
- package/dist/modules/index.js +0 -1
- package/dist/nodes/generators/index.cjs +0 -1
- package/dist/nodes/generators/index.js +0 -1
- package/dist/nodes/groups/index.cjs +2 -5
- package/dist/nodes/groups/index.js +9 -7
- package/dist/nodes/index.cjs +28 -31
- package/dist/nodes/index.js +9 -7
- package/dist/nodes/modifiers/index.cjs +0 -1
- package/dist/nodes/modifiers/index.js +0 -1
- package/dist/nodes/output/index.cjs +0 -2
- package/dist/nodes/output/index.js +7 -4
- package/dist/nodes/selectors/index.cjs +0 -2
- package/dist/nodes/selectors/index.js +7 -4
- package/dist/nodes/transformers/index.cjs +0 -1
- package/dist/nodes/transformers/index.js +0 -1
- package/dist/templates/generators/index.cjs +2 -4
- package/dist/templates/generators/index.js +7 -4
- package/dist/templates/groups/index.cjs +2 -4
- package/dist/templates/groups/index.js +7 -4
- package/dist/templates/index.cjs +2 -4
- package/dist/templates/index.js +7 -4
- package/dist/templates/modifiers/index.cjs +0 -2
- package/dist/templates/modifiers/index.js +7 -4
- package/dist/templates/output/index.cjs +0 -2
- package/dist/templates/output/index.js +7 -4
- package/dist/templates/selectors/index.cjs +0 -2
- package/dist/templates/selectors/index.js +7 -4
- package/dist/templates/transformers/index.cjs +0 -2
- package/dist/templates/transformers/index.js +7 -4
- package/package.json +3 -3
- package/dist/abstract/index.cjs.map +0 -1
- package/dist/abstract/index.js.map +0 -1
- package/dist/modules/index.cjs.map +0 -1
- package/dist/modules/index.js.map +0 -1
- package/dist/nodes/generators/index.cjs.map +0 -1
- package/dist/nodes/generators/index.js.map +0 -1
- package/dist/nodes/groups/index.cjs.map +0 -1
- package/dist/nodes/groups/index.js.map +0 -1
- package/dist/nodes/index.cjs.map +0 -1
- package/dist/nodes/index.js.map +0 -1
- package/dist/nodes/modifiers/index.cjs.map +0 -1
- package/dist/nodes/modifiers/index.js.map +0 -1
- package/dist/nodes/output/index.cjs.map +0 -1
- package/dist/nodes/output/index.js.map +0 -1
- package/dist/nodes/selectors/index.cjs.map +0 -1
- package/dist/nodes/selectors/index.js.map +0 -1
- package/dist/nodes/transformers/index.cjs.map +0 -1
- package/dist/nodes/transformers/index.js.map +0 -1
- package/dist/templates/generators/index.cjs.map +0 -1
- package/dist/templates/generators/index.js.map +0 -1
- package/dist/templates/groups/index.cjs.map +0 -1
- package/dist/templates/groups/index.js.map +0 -1
- package/dist/templates/index.cjs.map +0 -1
- package/dist/templates/index.js.map +0 -1
- package/dist/templates/modifiers/index.cjs.map +0 -1
- package/dist/templates/modifiers/index.js.map +0 -1
- package/dist/templates/output/index.cjs.map +0 -1
- package/dist/templates/output/index.js.map +0 -1
- package/dist/templates/selectors/index.cjs.map +0 -1
- package/dist/templates/selectors/index.js.map +0 -1
- package/dist/templates/transformers/index.cjs.map +0 -1
- package/dist/templates/transformers/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/modules/index.ts","../../src/modules/normalize-noise-module.ts","../../src/modules/simplex-module.ts"],"sourcesContent":["export * from './normalize-noise-module';\nexport * from './simplex-module';\n","import Module from 'libnoise-ts/module/Module';\nimport ModifierModule from 'libnoise-ts/module/modifier';\n\nexport class NormalizeNoiseModule extends ModifierModule {\n constructor(\n source: Module,\n public lowerBound: number,\n public upperBound: number\n ) {\n super(source);\n }\n\n getValue(x: number, y: number, z: number): number {\n return normalize(this.sourceModule.getValue(x, y, z), this.lowerBound, this.upperBound);\n }\n}\n\nfunction normalize(value: number, min: number, max: number) {\n return (value - min) / (max - min);\n}\n","import Module from 'libnoise-ts/module/Module';\nimport { NoiseFunction3D, RandomFn, createNoise3D } from 'simplex-noise';\n\nexport class SimplexModule extends Module {\n private noise: NoiseFunction3D;\n\n constructor(random?: RandomFn) {\n super();\n this.noise = createNoise3D(random);\n }\n\n getValue(x: number, y: number, z: number): number {\n return this.noise(x, y, z);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,sBAA2B;AAEpB,IAAM,uBAAN,cAAmC,gBAAAA,QAAe;AAAA,EACvD,YACE,QACO,YACA,YACP;AACA,UAAM,MAAM;AAHL;AACA;AAAA,EAGT;AAAA,EAEA,SAAS,GAAW,GAAW,GAAmB;AAChD,WAAO,UAAU,KAAK,aAAa,SAAS,GAAG,GAAG,CAAC,GAAG,KAAK,YAAY,KAAK,UAAU;AAAA,EACxF;AACF;AAEA,SAAS,UAAU,OAAe,KAAa,KAAa;AAC1D,UAAQ,QAAQ,QAAQ,MAAM;AAChC;;;ACnBA,oBAAmB;AACnB,2BAAyD;AAElD,IAAM,gBAAN,cAA4B,cAAAC,QAAO;AAAA,EAChC;AAAA,EAER,YAAY,QAAmB;AAC7B,UAAM;AACN,SAAK,YAAQ,oCAAc,MAAM;AAAA,EACnC;AAAA,EAEA,SAAS,GAAW,GAAW,GAAmB;AAChD,WAAO,KAAK,MAAM,GAAG,GAAG,CAAC;AAAA,EAC3B;AACF;","names":["ModifierModule","Module"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/modules/normalize-noise-module.ts","../../src/modules/simplex-module.ts"],"sourcesContent":["import Module from 'libnoise-ts/module/Module';\nimport ModifierModule from 'libnoise-ts/module/modifier';\n\nexport class NormalizeNoiseModule extends ModifierModule {\n constructor(\n source: Module,\n public lowerBound: number,\n public upperBound: number\n ) {\n super(source);\n }\n\n getValue(x: number, y: number, z: number): number {\n return normalize(this.sourceModule.getValue(x, y, z), this.lowerBound, this.upperBound);\n }\n}\n\nfunction normalize(value: number, min: number, max: number) {\n return (value - min) / (max - min);\n}\n","import Module from 'libnoise-ts/module/Module';\nimport { NoiseFunction3D, RandomFn, createNoise3D } from 'simplex-noise';\n\nexport class SimplexModule extends Module {\n private noise: NoiseFunction3D;\n\n constructor(random?: RandomFn) {\n super();\n this.noise = createNoise3D(random);\n }\n\n getValue(x: number, y: number, z: number): number {\n return this.noise(x, y, z);\n }\n}\n"],"mappings":";AACA,OAAO,oBAAoB;AAEpB,IAAM,uBAAN,cAAmC,eAAe;AAAA,EACvD,YACE,QACO,YACA,YACP;AACA,UAAM,MAAM;AAHL;AACA;AAAA,EAGT;AAAA,EAEA,SAAS,GAAW,GAAW,GAAmB;AAChD,WAAO,UAAU,KAAK,aAAa,SAAS,GAAG,GAAG,CAAC,GAAG,KAAK,YAAY,KAAK,UAAU;AAAA,EACxF;AACF;AAEA,SAAS,UAAU,OAAe,KAAa,KAAa;AAC1D,UAAQ,QAAQ,QAAQ,MAAM;AAChC;;;ACnBA,OAAO,YAAY;AACnB,SAAoC,qBAAqB;AAElD,IAAM,gBAAN,cAA4B,OAAO;AAAA,EAChC;AAAA,EAER,YAAY,QAAmB;AAC7B,UAAM;AACN,SAAK,QAAQ,cAAc,MAAM;AAAA,EACnC;AAAA,EAEA,SAAS,GAAW,GAAW,GAAmB;AAChD,WAAO,KAAK,MAAM,GAAG,GAAG,CAAC;AAAA,EAC3B;AACF;","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/nodes/generators/index.ts","../../../src/nodes/generators/noise-billow-node.tsx","../../../src/nodes/generators/noise-checkerboard-node.tsx","../../../src/nodes/generators/noise-const-node.tsx","../../../src/nodes/generators/noise-cylinders-node.tsx","../../../src/nodes/generators/noise-perlin-node.tsx","../../../src/nodes/generators/noise-ridgedmulti-node.tsx","../../../src/nodes/generators/noise-simplex-node.tsx","../../../src/modules/simplex-module.ts","../../../src/nodes/generators/noise-spheres-node.tsx","../../../src/nodes/generators/noise-voronoi-node.tsx","../../../src/nodes/generators/position-const-node.tsx","../../../src/nodes/generators/position-grid-node.tsx"],"sourcesContent":["export { default as NoiseBillowNode } from './noise-billow-node';\nexport { default as NoiseCheckerboardNode } from './noise-checkerboard-node';\nexport { default as NoiseConstNode } from './noise-const-node';\nexport { default as NoiseCylindersNode } from './noise-cylinders-node';\nexport { default as NoisePerlinNode } from './noise-perlin-node';\nexport { default as NoiseRidgedMultiNode } from './noise-ridgedmulti-node';\nexport { default as NoiseSimplexNode } from './noise-simplex-node';\nexport { default as NoiseSpheresNode } from './noise-spheres-node';\nexport { default as NoiseVoronoiNode } from './noise-voronoi-node';\nexport { default as PositionConstNode } from './position-const-node';\nexport { default as PositionGridNode } from './position-grid-node';\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Billow } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Billow(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n\n updateComputedData(id, { module });\n },\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseBillowNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo } from 'react';\nimport { Checkerboard } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData } from '../../abstract/node-props';\n\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new Checkerboard(), []);\n\n useEffect(() => {\n updateComputedData(id, { module });\n }, [id, module, updateComputedData]);\n\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default NoiseCheckerboardNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { Const } from 'libnoise-ts/module/generator';\nimport { ComputedModuleData, NodeConstNoiseData } from '../../abstract/node-props';\n\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\n const [min, setMin] = useState(data.min);\n const [max, setMax] = useState(data.max);\n const [noise, setNoise] = useState(data.noise);\n\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Const(), []);\n\n useEffect(() => {\n module.value = noise;\n\n updateNodeData(id, { noise, min, max });\n updateComputedData(id, { module });\n }, [noise, min, max, module, updateNodeData, id, updateComputedData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\n </Group>\n <Group>\n noise:\n <NumberInput\n size=\"xs\"\n value={noise}\n onChange={(e) => setNoise(Number(e))}\n max={max}\n min={min}\n step={0.1}\n />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default NoiseConstNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Cylinders } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeCylindersNoiseData } from '../../abstract/node-props';\n\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Cylinders(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n updateComputedData(id, { module });\n },\n\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseCylindersNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Perlin } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData, NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Perlin(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n\n updateComputedData(id, { module });\n },\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoisePerlinNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { RidgedMulti } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeRidgedNoiseData } from '../../abstract/node-props';\n\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new RidgedMulti(), []);\n\n const onPropertiesChange = useCallback((properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => (module[k] = properties[k].value));\n updateComputedData(id, { module });\n }, []);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseRidgedMultiNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo } from 'react';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData } from '../../abstract/node-props';\nimport { SimplexModule } from '../../modules/simplex-module';\n\nfunction NoiseSimplexNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new SimplexModule(), []);\n\n useEffect(() => {\n updateComputedData(id, { module });\n }, []);\n\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default NoiseSimplexNode;\n","import Module from 'libnoise-ts/module/Module';\nimport { NoiseFunction3D, RandomFn, createNoise3D } from 'simplex-noise';\n\nexport class SimplexModule extends Module {\n private noise: NoiseFunction3D;\n\n constructor(random?: RandomFn) {\n super();\n this.noise = createNoise3D(random);\n }\n\n getValue(x: number, y: number, z: number): number {\n return this.noise(x, y, z);\n }\n}\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Spheres } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeSpheresNoiseData } from '../../abstract/node-props';\n\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new Spheres(), []);\n\n const onPropertiesChange = useCallback((properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => (module[k] = properties[k].value));\n updateComputedData(id, { module });\n }, []);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseSpheresNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback } from 'react';\nimport { Voronoi } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeVoronoiNoiseData } from '../../abstract/node-props';\n\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue<number & boolean>>) => {\n const module = new Voronoi(\n properties.frequency.value,\n properties.displacement.value,\n properties.distance.value,\n properties.seed.value\n );\n\n updateComputedData(id, { module });\n },\n []\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseVoronoiNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { ComputedPositionsData, NodePositionData } from '../../abstract/node-props';\n\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\n const position = data.position ?? { x: 0, y: 0, z: 0 };\n\n const [x, setX] = useState(position.x);\n const [y, setY] = useState(position.y);\n const [z, setZ] = useState(position.z);\n\n const updateNodeData = useUpdateNodeData<NodePositionData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedPositionsData>();\n\n useEffect(() => {\n const position = { x, y, z };\n\n updateNodeData(id, {\n position,\n });\n\n updateComputedData(id, {\n positions: [position],\n });\n }, [x, y, z]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\n </Group>\n <Group>\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\n </Group>\n <Group>\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default PositionConstNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { ComputedPositionsData, NodeGridData, Position } from '../../abstract/node-props';\n\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\n const [x, setX] = useState(data.center?.x);\n const [y, setY] = useState(data.center?.y);\n const [z, setZ] = useState(data.center?.z);\n\n const [radius, setRadius] = useState(data.radius);\n\n const updateNodeData = useUpdateNodeData<NodeGridData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedPositionsData>();\n\n useEffect(() => {\n updateNodeData(id, {\n center: { x, y, z },\n });\n }, [x, y, z]);\n\n useEffect(() => {\n updateNodeData(id, {\n radius,\n });\n }, [radius]);\n\n useEffect(() => {\n const positions: Position[] = [];\n\n for (let i = -radius; i < radius; i++) {\n for (let j = -radius; j < radius; j++) {\n positions.push({ x: x + i, y: y + j, z });\n }\n }\n\n updateComputedData(id, {\n positions,\n });\n }, [x, y, z, radius]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\n </Group>\n <Group>\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\n </Group>\n <Group>\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\n </Group>\n <Group>\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default PositionGridNode;\n"],"mappings":"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","names":["module","import_layout","import_react","import_generator","import_hooks","import_jsx_runtime","module","import_layout","import_react","import_hooks","import_generator","import_jsx_runtime","module","import_layout","import_react","import_generator","import_hooks","import_components","import_jsx_runtime","module","import_layout","import_react","import_generator","import_hooks","import_components","import_jsx_runtime","module","import_layout","import_react","import_generator","import_hooks","import_components","import_jsx_runtime","module","import_layout","import_react","import_hooks","Module","import_jsx_runtime","module","import_layout","import_react","import_generator","import_hooks","import_components","import_jsx_runtime","module","import_layout","import_react","import_generator","import_hooks","import_components","import_jsx_runtime","module","import_layout","import_react","import_core","import_hooks","import_jsx_runtime","position","import_layout","import_react","import_core","import_hooks","import_jsx_runtime"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/nodes/generators/noise-billow-node.tsx","../../../src/nodes/generators/noise-checkerboard-node.tsx","../../../src/nodes/generators/noise-const-node.tsx","../../../src/nodes/generators/noise-cylinders-node.tsx","../../../src/nodes/generators/noise-perlin-node.tsx","../../../src/nodes/generators/noise-ridgedmulti-node.tsx","../../../src/nodes/generators/noise-simplex-node.tsx","../../../src/modules/simplex-module.ts","../../../src/nodes/generators/noise-spheres-node.tsx","../../../src/nodes/generators/noise-voronoi-node.tsx","../../../src/nodes/generators/position-const-node.tsx","../../../src/nodes/generators/position-grid-node.tsx"],"sourcesContent":["import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Billow } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Billow(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n\n updateComputedData(id, { module });\n },\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseBillowNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo } from 'react';\nimport { Checkerboard } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData } from '../../abstract/node-props';\n\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new Checkerboard(), []);\n\n useEffect(() => {\n updateComputedData(id, { module });\n }, [id, module, updateComputedData]);\n\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default NoiseCheckerboardNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { Const } from 'libnoise-ts/module/generator';\nimport { ComputedModuleData, NodeConstNoiseData } from '../../abstract/node-props';\n\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\n const [min, setMin] = useState(data.min);\n const [max, setMax] = useState(data.max);\n const [noise, setNoise] = useState(data.noise);\n\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Const(), []);\n\n useEffect(() => {\n module.value = noise;\n\n updateNodeData(id, { noise, min, max });\n updateComputedData(id, { module });\n }, [noise, min, max, module, updateNodeData, id, updateComputedData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\n </Group>\n <Group>\n noise:\n <NumberInput\n size=\"xs\"\n value={noise}\n onChange={(e) => setNoise(Number(e))}\n max={max}\n min={min}\n step={0.1}\n />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default NoiseConstNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Cylinders } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeCylindersNoiseData } from '../../abstract/node-props';\n\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Cylinders(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n updateComputedData(id, { module });\n },\n\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseCylindersNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Perlin } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData, NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new Perlin(), []);\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => {\n module[k] = properties[k].value;\n });\n\n updateComputedData(id, { module });\n },\n [id, module, updateComputedData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoisePerlinNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { RidgedMulti } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeRidgedNoiseData } from '../../abstract/node-props';\n\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new RidgedMulti(), []);\n\n const onPropertiesChange = useCallback((properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => (module[k] = properties[k].value));\n updateComputedData(id, { module });\n }, []);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseRidgedMultiNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useMemo } from 'react';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { ComputedModuleData } from '../../abstract/node-props';\nimport { SimplexModule } from '../../modules/simplex-module';\n\nfunction NoiseSimplexNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const module = useMemo(() => new SimplexModule(), []);\n\n useEffect(() => {\n updateComputedData(id, { module });\n }, []);\n\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default NoiseSimplexNode;\n","import Module from 'libnoise-ts/module/Module';\nimport { NoiseFunction3D, RandomFn, createNoise3D } from 'simplex-noise';\n\nexport class SimplexModule extends Module {\n private noise: NoiseFunction3D;\n\n constructor(random?: RandomFn) {\n super();\n this.noise = createNoise3D(random);\n }\n\n getValue(x: number, y: number, z: number): number {\n return this.noise(x, y, z);\n }\n}\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback, useMemo } from 'react';\nimport { Spheres } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeSpheresNoiseData } from '../../abstract/node-props';\n\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n const module = useMemo(() => new Spheres(), []);\n\n const onPropertiesChange = useCallback((properties: Record<string, PropertyValue>) => {\n Object.keys(properties).forEach((k) => (module[k] = properties[k].value));\n updateComputedData(id, { module });\n }, []);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseSpheresNode;\n","import { NodeContainer, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useCallback } from 'react';\nimport { Voronoi } from 'libnoise-ts/module/generator';\nimport { useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { PropertyValue } from '@awesome-flow/core/abstract';\nimport { NodePropertyVariables } from '@awesome-flow/core/components';\nimport { ComputedModuleData, NodeVoronoiNoiseData } from '../../abstract/node-props';\n\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n const onPropertiesChange = useCallback(\n (properties: Record<string, PropertyValue<number & boolean>>) => {\n const module = new Voronoi(\n properties.frequency.value,\n properties.displacement.value,\n properties.distance.value,\n properties.seed.value\n );\n\n updateComputedData(id, { module });\n },\n []\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertyVariables data={data} nodeId={id} onPropertiesChange={onPropertiesChange} />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default NoiseVoronoiNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { ComputedPositionsData, NodePositionData } from '../../abstract/node-props';\n\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\n const position = data.position ?? { x: 0, y: 0, z: 0 };\n\n const [x, setX] = useState(position.x);\n const [y, setY] = useState(position.y);\n const [z, setZ] = useState(position.z);\n\n const updateNodeData = useUpdateNodeData<NodePositionData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedPositionsData>();\n\n useEffect(() => {\n const position = { x, y, z };\n\n updateNodeData(id, {\n position,\n });\n\n updateComputedData(id, {\n positions: [position],\n });\n }, [x, y, z]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\n </Group>\n <Group>\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\n </Group>\n <Group>\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default PositionConstNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { useEffect, useState } from 'react';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { useUpdateNodeComputedData, useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { ComputedPositionsData, NodeGridData, Position } from '../../abstract/node-props';\n\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\n const [x, setX] = useState(data.center?.x);\n const [y, setY] = useState(data.center?.y);\n const [z, setZ] = useState(data.center?.z);\n\n const [radius, setRadius] = useState(data.radius);\n\n const updateNodeData = useUpdateNodeData<NodeGridData>();\n const updateComputedData = useUpdateNodeComputedData<ComputedPositionsData>();\n\n useEffect(() => {\n updateNodeData(id, {\n center: { x, y, z },\n });\n }, [x, y, z]);\n\n useEffect(() => {\n updateNodeData(id, {\n radius,\n });\n }, [radius]);\n\n useEffect(() => {\n const positions: Position[] = [];\n\n for (let i = -radius; i < radius; i++) {\n for (let j = -radius; j < radius; j++) {\n positions.push({ x: x + i, y: y + j, z });\n }\n }\n\n updateComputedData(id, {\n positions,\n });\n }, [x, y, z, radius]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\n </Group>\n <Group>\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\n </Group>\n <Group>\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\n </Group>\n <Group>\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default PositionGridNode;\n"],"mappings":"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","names":["NodeContainer","useMemo","useUpdateNodeComputedData","jsx","NodeContainer","useEffect","useMemo","useUpdateNodeComputedData","jsx","jsxs","NodeContainer","NodeTrackConnections","useCallback","useMemo","useUpdateNodeComputedData","NodePropertyVariables","jsx","jsxs","NodeContainer","NodeTrackConnections","useCallback","useMemo","useUpdateNodeComputedData","NodePropertyVariables","jsx","jsxs","NodeContainer","NodeTrackConnections","useCallback","useMemo","useUpdateNodeComputedData","NodePropertyVariables","jsx","jsxs","NodeContainer","useEffect","useMemo","useUpdateNodeComputedData","jsx","useUpdateNodeComputedData","useMemo","useEffect","NodeContainer","NodeContainer","NodeTrackConnections","useCallback","useMemo","useUpdateNodeComputedData","NodePropertyVariables","jsx","jsxs","NodeContainer","NodeTrackConnections","useCallback","useUpdateNodeComputedData","NodePropertyVariables","jsx","jsxs","NodeContainer","useEffect","useState","Group","NumberInput","Stack","useUpdateNodeComputedData","useUpdateNodeData","jsx","jsxs","position","NodeContainer","useEffect","useState","Group","NumberInput","Stack","useUpdateNodeComputedData","useUpdateNodeData","jsx","jsxs"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/nodes/groups/index.ts","../../../src/nodes/groups/module-group-node.tsx"],"sourcesContent":["export { default as ModuleGroupNode } from './module-group-node';\n","import { NodeContainer, NodeCollapse, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps, NodeResizer, useStore, useUpdateNodeInternals } from '@xyflow/react';\nimport { BasicNodeData, FlowContext } from '@awesome-flow/core/abstract';\nimport { useCallback, useContext, useEffect, useMemo } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { Badge, Group } from '@mantine/core';\nimport { useIncomingComputedData, useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { ComputedModuleData } from '../../abstract/node-props';\n\nfunction ModuleGroupNode({\n id,\n selected,\n data,\n type,\n width,\n height,\n}: NodeProps<Node<BasicNodeData>>) {\n const context = useContext(FlowContext);\n const updateNodeInternals = useUpdateNodeInternals();\n const triggerNodeChanges = useStore((s) => s.triggerNodeChanges);\n\n const { groupNodes, setGroupCollapsed } = context.useFlowStore(\n useCallback(\n (state) => ({ groupNodes: state.groups[id], setGroupCollapsed: state.setGroupCollapsed }),\n []\n )\n );\n\n const intersectingNode = context.useInteractivityStore(\n useCallback((state) => state.nodeIntersectionTargets[id], [id]),\n shallow\n );\n\n useEffect(() => {\n updateNodeInternals(id);\n }, [width, height]);\n\n useEffect(() => {\n triggerNodeChanges([\n {\n id,\n type: 'select',\n selected: !!intersectingNode,\n },\n ]);\n }, [intersectingNode]);\n\n const onCollapsed = useCallback((collapsed: boolean) => {\n setGroupCollapsed(id, collapsed);\n }, []);\n\n const size = useMemo(() => {\n return {\n width: data.initialSize?.width || 100,\n height: data.initialSize?.height || 50,\n };\n }, [data.initialSize]);\n\n const incomingModules = useIncomingComputedData<ComputedModuleData>(id);\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n useEffect(() => {\n if (incomingModules?.length) {\n const { module } = incomingModules[0];\n updateComputedData(id, { module });\n }\n }, [incomingModules]);\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Group justify=\"space-between\">\n <Group gap=\"xs\">\n <Badge size=\"xs\" variant=\"outline\" radius=\"xs\" color=\"gray\">\n {groupNodes?.length || 0}\n </Badge>\n <NodeCollapse nodeId={id} isCollapsed={data.isCollapsed} onCollapsed={onCollapsed} />\n </Group>\n </Group>\n }\n type={type}\n >\n <NodeResizer\n nodeId={id}\n minWidth={size.width}\n minHeight={size.height}\n isVisible={selected && !data.isCollapsed}\n />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default ModuleGroupNode;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,oBAAkE;AAClE,mBAA+E;AAC/E,sBAA2C;AAC3C,IAAAA,gBAA4D;AAC5D,qBAAwB;AACxB,kBAA6B;AAC7B,mBAAmE;AAqEzD;AAlEV,SAAS,gBAAgB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAmC;AACjC,QAAM,cAAU,0BAAW,2BAAW;AACtC,QAAM,0BAAsB,qCAAuB;AACnD,QAAM,yBAAqB,uBAAS,CAAC,MAAM,EAAE,kBAAkB;AAE/D,QAAM,EAAE,YAAY,kBAAkB,IAAI,QAAQ;AAAA,QAChD;AAAA,MACE,CAAC,WAAW,EAAE,YAAY,MAAM,OAAO,EAAE,GAAG,mBAAmB,MAAM,kBAAkB;AAAA,MACvF,CAAC;AAAA,IACH;AAAA,EACF;AAEA,QAAM,mBAAmB,QAAQ;AAAA,QAC/B,2BAAY,CAAC,UAAU,MAAM,wBAAwB,EAAE,GAAG,CAAC,EAAE,CAAC;AAAA,IAC9D;AAAA,EACF;AAEA,+BAAU,MAAM;AACd,wBAAoB,EAAE;AAAA,EACxB,GAAG,CAAC,OAAO,MAAM,CAAC;AAElB,+BAAU,MAAM;AACd,uBAAmB;AAAA,MACjB;AAAA,QACE;AAAA,QACA,MAAM;AAAA,QACN,UAAU,CAAC,CAAC;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACH,GAAG,CAAC,gBAAgB,CAAC;AAErB,QAAM,kBAAc,2BAAY,CAAC,cAAuB;AACtD,sBAAkB,IAAI,SAAS;AAAA,EACjC,GAAG,CAAC,CAAC;AAEL,QAAM,WAAO,uBAAQ,MAAM;AACzB,WAAO;AAAA,MACL,OAAO,KAAK,aAAa,SAAS;AAAA,MAClC,QAAQ,KAAK,aAAa,UAAU;AAAA,IACtC;AAAA,EACF,GAAG,CAAC,KAAK,WAAW,CAAC;AAErB,QAAM,sBAAkB,sCAA4C,EAAE;AACtE,QAAM,yBAAqB,wCAA8C;AAEzE,+BAAU,MAAM;AACd,QAAI,iBAAiB,QAAQ;AAC3B,YAAM,EAAE,QAAAC,QAAO,IAAI,gBAAgB,CAAC;AACpC,yBAAmB,IAAI,EAAE,QAAAA,QAAO,CAAC;AAAA,IACnC;AAAA,EACF,GAAG,CAAC,eAAe,CAAC;AAEpB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,OACE,4CAAC,qBAAM,SAAQ,iBACb,uDAAC,qBAAM,KAAI,MACT;AAAA,oDAAC,qBAAM,MAAK,MAAK,SAAQ,WAAU,QAAO,MAAK,OAAM,QAClD,sBAAY,UAAU,GACzB;AAAA,QACA,4CAAC,8BAAa,QAAQ,IAAI,aAAa,KAAK,aAAa,aAA0B;AAAA,SACrF,GACF;AAAA,MAEF;AAAA,MAEA;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,QAAQ;AAAA,YACR,UAAU,KAAK;AAAA,YACf,WAAW,KAAK;AAAA,YAChB,WAAW,YAAY,CAAC,KAAK;AAAA;AAAA,QAC/B;AAAA,QACA,4CAAC,sCAAqB,SAAS,KAAK,SAAS,QAAQ,IAAI,MAAK,UAAS;AAAA;AAAA;AAAA,EACzE;AAEJ;AAEA,IAAO,4BAAQ;","names":["import_react","module"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/nodes/groups/module-group-node.tsx"],"sourcesContent":["import { NodeContainer, NodeCollapse, NodeTrackConnections } from '@awesome-flow/core/layout';\nimport { Node, NodeProps, NodeResizer, useStore, useUpdateNodeInternals } from '@xyflow/react';\nimport { BasicNodeData, FlowContext } from '@awesome-flow/core/abstract';\nimport { useCallback, useContext, useEffect, useMemo } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { Badge, Group } from '@mantine/core';\nimport { useIncomingComputedData, useUpdateNodeComputedData } from '@awesome-flow/core/hooks';\nimport { ComputedModuleData } from '../../abstract/node-props';\n\nfunction ModuleGroupNode({\n id,\n selected,\n data,\n type,\n width,\n height,\n}: NodeProps<Node<BasicNodeData>>) {\n const context = useContext(FlowContext);\n const updateNodeInternals = useUpdateNodeInternals();\n const triggerNodeChanges = useStore((s) => s.triggerNodeChanges);\n\n const { groupNodes, setGroupCollapsed } = context.useFlowStore(\n useCallback(\n (state) => ({ groupNodes: state.groups[id], setGroupCollapsed: state.setGroupCollapsed }),\n []\n )\n );\n\n const intersectingNode = context.useInteractivityStore(\n useCallback((state) => state.nodeIntersectionTargets[id], [id]),\n shallow\n );\n\n useEffect(() => {\n updateNodeInternals(id);\n }, [width, height]);\n\n useEffect(() => {\n triggerNodeChanges([\n {\n id,\n type: 'select',\n selected: !!intersectingNode,\n },\n ]);\n }, [intersectingNode]);\n\n const onCollapsed = useCallback((collapsed: boolean) => {\n setGroupCollapsed(id, collapsed);\n }, []);\n\n const size = useMemo(() => {\n return {\n width: data.initialSize?.width || 100,\n height: data.initialSize?.height || 50,\n };\n }, [data.initialSize]);\n\n const incomingModules = useIncomingComputedData<ComputedModuleData>(id);\n const updateComputedData = useUpdateNodeComputedData<ComputedModuleData>();\n\n useEffect(() => {\n if (incomingModules?.length) {\n const { module } = incomingModules[0];\n updateComputedData(id, { module });\n }\n }, [incomingModules]);\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Group justify=\"space-between\">\n <Group gap=\"xs\">\n <Badge size=\"xs\" variant=\"outline\" radius=\"xs\" color=\"gray\">\n {groupNodes?.length || 0}\n </Badge>\n <NodeCollapse nodeId={id} isCollapsed={data.isCollapsed} onCollapsed={onCollapsed} />\n </Group>\n </Group>\n }\n type={type}\n >\n <NodeResizer\n nodeId={id}\n minWidth={size.width}\n minHeight={size.height}\n isVisible={selected && !data.isCollapsed}\n />\n <NodeTrackConnections handles={data.handles} nodeId={id} type=\"target\" />\n </NodeContainer>\n );\n}\n\nexport default ModuleGroupNode;\n"],"mappings":";AAAA,SAAS,eAAe,cAAc,4BAA4B;AAClE,SAA0B,aAAa,UAAU,8BAA8B;AAC/E,SAAwB,mBAAmB;AAC3C,SAAS,aAAa,YAAY,WAAW,eAAe;AAC5D,SAAS,eAAe;AACxB,SAAS,OAAO,aAAa;AAC7B,SAAS,yBAAyB,iCAAiC;AAqEzD,SACE,KADF;AAlEV,SAAS,gBAAgB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAmC;AACjC,QAAM,UAAU,WAAW,WAAW;AACtC,QAAM,sBAAsB,uBAAuB;AACnD,QAAM,qBAAqB,SAAS,CAAC,MAAM,EAAE,kBAAkB;AAE/D,QAAM,EAAE,YAAY,kBAAkB,IAAI,QAAQ;AAAA,IAChD;AAAA,MACE,CAAC,WAAW,EAAE,YAAY,MAAM,OAAO,EAAE,GAAG,mBAAmB,MAAM,kBAAkB;AAAA,MACvF,CAAC;AAAA,IACH;AAAA,EACF;AAEA,QAAM,mBAAmB,QAAQ;AAAA,IAC/B,YAAY,CAAC,UAAU,MAAM,wBAAwB,EAAE,GAAG,CAAC,EAAE,CAAC;AAAA,IAC9D;AAAA,EACF;AAEA,YAAU,MAAM;AACd,wBAAoB,EAAE;AAAA,EACxB,GAAG,CAAC,OAAO,MAAM,CAAC;AAElB,YAAU,MAAM;AACd,uBAAmB;AAAA,MACjB;AAAA,QACE;AAAA,QACA,MAAM;AAAA,QACN,UAAU,CAAC,CAAC;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACH,GAAG,CAAC,gBAAgB,CAAC;AAErB,QAAM,cAAc,YAAY,CAAC,cAAuB;AACtD,sBAAkB,IAAI,SAAS;AAAA,EACjC,GAAG,CAAC,CAAC;AAEL,QAAM,OAAO,QAAQ,MAAM;AACzB,WAAO;AAAA,MACL,OAAO,KAAK,aAAa,SAAS;AAAA,MAClC,QAAQ,KAAK,aAAa,UAAU;AAAA,IACtC;AAAA,EACF,GAAG,CAAC,KAAK,WAAW,CAAC;AAErB,QAAM,kBAAkB,wBAA4C,EAAE;AACtE,QAAM,qBAAqB,0BAA8C;AAEzE,YAAU,MAAM;AACd,QAAI,iBAAiB,QAAQ;AAC3B,YAAM,EAAE,OAAO,IAAI,gBAAgB,CAAC;AACpC,yBAAmB,IAAI,EAAE,OAAO,CAAC;AAAA,IACnC;AAAA,EACF,GAAG,CAAC,eAAe,CAAC;AAEpB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,OACE,oBAAC,SAAM,SAAQ,iBACb,+BAAC,SAAM,KAAI,MACT;AAAA,4BAAC,SAAM,MAAK,MAAK,SAAQ,WAAU,QAAO,MAAK,OAAM,QAClD,sBAAY,UAAU,GACzB;AAAA,QACA,oBAAC,gBAAa,QAAQ,IAAI,aAAa,KAAK,aAAa,aAA0B;AAAA,SACrF,GACF;AAAA,MAEF;AAAA,MAEA;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,QAAQ;AAAA,YACR,UAAU,KAAK;AAAA,YACf,WAAW,KAAK;AAAA,YAChB,WAAW,YAAY,CAAC,KAAK;AAAA;AAAA,QAC/B;AAAA,QACA,oBAAC,wBAAqB,SAAS,KAAK,SAAS,QAAQ,IAAI,MAAK,UAAS;AAAA;AAAA;AAAA,EACzE;AAEJ;AAEA,IAAO,4BAAQ;","names":[]}
|