@awesome-flow/noise 0.11.0 → 0.12.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 +1 -1
- package/dist/abstract/index.mjs +1 -1
- package/dist/{abstract-DNmiw2MC.mjs → abstract-DQyDnRw-.mjs} +2 -2
- package/dist/abstract-DQyDnRw-.mjs.map +1 -0
- package/dist/{abstract-3knbwDkz.cjs → abstract-ed4ZdB8H.cjs} +31 -31
- package/dist/abstract-ed4ZdB8H.cjs.map +1 -0
- package/dist/generators-BF_0y3pd.cjs.map +1 -1
- package/dist/generators-DSwgPqW2.mjs.map +1 -1
- package/dist/nodes/index.cjs +1 -1
- package/dist/nodes/index.mjs +1 -1
- package/dist/nodes/output/index.cjs +1 -1
- package/dist/nodes/output/index.mjs +1 -1
- package/dist/templates/generators/index.cjs +1 -1
- package/dist/templates/generators/index.mjs +1 -1
- package/dist/templates/groups/index.cjs +1 -1
- package/dist/templates/groups/index.mjs +1 -1
- package/dist/templates/index.cjs +1 -1
- package/dist/templates/index.mjs +1 -1
- package/dist/templates/modifiers/index.cjs +1 -1
- package/dist/templates/modifiers/index.mjs +1 -1
- package/dist/templates/output/index.cjs +1 -1
- package/dist/templates/output/index.mjs +1 -1
- package/dist/templates/selectors/index.cjs +1 -1
- package/dist/templates/selectors/index.mjs +1 -1
- package/dist/templates/transformers/index.cjs +1 -1
- package/dist/templates/transformers/index.mjs +1 -1
- package/package.json +10 -8
- package/dist/abstract-3knbwDkz.cjs.map +0 -1
- package/dist/abstract-DNmiw2MC.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abstract-ed4ZdB8H.cjs","names":["NodeContainer","Text","Divider","Stack","NodeContainer","HandlesIncomingDataStatus","Text","NodeContainer","Stack","Group","NodeContainer","Text","Divider","Stack","CoreHandleType","IDGenerator","Position","CoreHandleType","PipelineFactory","Billow","Position","PipelineFactory","Checkerboard","Position","PipelineFactory","Const","Position","CoreHandleType","PipelineFactory","Cylinders","Position","CoreHandleType","PipelineFactory","Perlin","Position","CoreHandleType","PipelineFactory","RidgedMulti","Position","CoreHandleType","PipelineFactory","Spheres","Position","CoreHandleType","PipelineFactory","Voronoi","Position","PipelineFactory","Position","PipelineFactory","IDGenerator","CoreTemplateGroup","Position","PipelineFactory","Position","PipelineFactory","Abs","Position","PipelineFactory","Clamp","Add","Max","Min","Multiply","Power","Position","PipelineFactory","Position","PipelineFactory","Curve","Tuple","Position","PipelineFactory","Exponent","Position","PipelineFactory","Invert","IDGenerator","Position","PipelineFactory","NormalizeNoiseModule","Position","PipelineFactory","ScaleBias","Position","PipelineFactory","Terrace","Position","Position","PipelineFactory","Position","PipelineFactory","Position","Position","PipelineFactory","Blend","Position","PipelineFactory","Select","Position","PipelineFactory","Displace","Position","PipelineFactory","RotatePoint","Position","PipelineFactory","ScalePoint","Position","PipelineFactory","TranslatePoint","Position","CoreHandleType","PipelineFactory","Turbulence","ModuleGroupNode","PositionConstNode","PositionGridNode","NoiseOutputNode","NoiseTextureDataNode","NoiseLoggerNode","PositionsLoggerNode","NoiseConstNode","NoiseBillowNode","NoiseCheckerboardNode","NoiseCylindersNode","NoisePerlinNode","NoiseRidgedMultiNode","NoiseSpheresNode","NoiseVoronoiNode","NoiseCombineNode","NoiseClampNode","NoiseAbsNode","NoiseNormalizeNode","NoiseCurveNode","NoiseExponentNode","NoiseInvertNode","NoiseScaleBiasNode","NoiseTerraceNode","NoiseBlendNode","NoiseSelectNode","NoiseDisplaceNode","NoiseRotatePointNode","NoiseScalePointNode","NoiseTranslatePointNode","NoiseTurbulenceNode"],"sources":["../src/abstract/handle-types.ts","../src/nodes/output/noise-logger-node.tsx","../src/nodes/output/noise-output-node.tsx","../src/nodes/output/noise-texture-data-node.tsx","../src/nodes/output/positions-logger-node.tsx","../src/abstract/templates.ts","../src/middleware/incoming-property-value.ts","../src/templates/generators/noise-billow-template.ts","../src/templates/generators/noise-checkerboard-template.ts","../src/templates/generators/noise-const-template.ts","../src/templates/generators/noise-cylinders-template.ts","../src/templates/generators/noise-perlin-template.ts","../src/templates/generators/noise-ridgedmulti-template.ts","../src/templates/generators/noise-spheres-template.ts","../src/templates/generators/noise-voronoi-template.ts","../src/templates/generators/position-const-template.ts","../src/templates/generators/position-grid-template.ts","../src/templates/groups/module-group-template.ts","../src/templates/modifiers/noise-abs-template.ts","../src/templates/modifiers/noise-clamp-template.ts","../src/abstract/operations.ts","../src/templates/modifiers/noise-combine-template.ts","../src/templates/modifiers/noise-curve-template.ts","../src/templates/modifiers/noise-exponent-template.ts","../src/templates/modifiers/noise-invert-template.ts","../src/templates/modifiers/noise-normalize-template.ts","../src/templates/modifiers/noise-scalebias-template.ts","../src/templates/modifiers/noise-terrace-template.ts","../src/templates/output/noise-logger-template.ts","../src/templates/output/noise-output-template.ts","../src/templates/output/noise-texture-data-template.ts","../src/templates/output/position-logger-template.ts","../src/templates/selectors/noise-blend-template.ts","../src/templates/selectors/noise-select-template.ts","../src/templates/transformers/noise-displace-template.ts","../src/templates/transformers/noise-rotate-point-template.ts","../src/templates/transformers/noise-scale-point-template.ts","../src/templates/transformers/noise-translate-point-template.ts","../src/templates/transformers/noise-turbulence-template.ts","../src/abstract/node-types.ts"],"sourcesContent":["import { CustomNodeHandle } from '@awesome-flow/core/abstract';\n\nexport enum NoiseHandleType {\n textureData = 'texture-data',\n noise = 'noise',\n position = 'position',\n module = 'module'\n}\n\nexport enum DisplacementHandle {\n sourceModule = 'source',\n xModule = 'x-module',\n yModule = 'y-module',\n zModule = 'z-module',\n output = 'output'\n}\n\nexport enum NoiseSourceControlHandle {\n source = 'source',\n control = 'control',\n output = 'output'\n}\n\nexport type DisplacementModuleHandle = CustomNodeHandle & {\n dataId: DisplacementHandle;\n};\n\nexport type NoiseSourceControlModuleHandle = CustomNodeHandle & {\n dataId: NoiseSourceControlHandle;\n};\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { useNodeContext } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Divider, Stack, Text } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NoiseHandleType } from '../../abstract';\r\nimport { NoiseLoggerContext } from '../../templates';\r\n\r\nfunction NoiseLoggerNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n const context = useNodeContext<NoiseLoggerContext>(id)?.incoming?.[NoiseHandleType.noise];\r\n const noise = context?.filter((c) => c.computed?.noise).flatMap((c) => c.computed.noise) || [];\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Text>Size: {noise?.length || 0}</Text>\r\n <Divider h={5} />\r\n <Stack>\r\n {noise?.map((v, i) => (\r\n <Text key={i}>\r\n {v.position?.x}:{v.position?.y}:{v.position?.z}: {v.value}\r\n </Text>\r\n ))}\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseLoggerNode);\r\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { HandlesIncomingDataStatus } from '@awesome-flow/core/components';\r\nimport { useNodeContext } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { NoiseOutputContext } from '@awesome-flow/noise/templates';\r\nimport { Text } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseOutputNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n const context = useNodeContext<NoiseOutputContext>(id);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <HandlesIncomingDataStatus nodeId={id} handles={data.handles} />\r\n <Text mt={5}>Noise points: {context?.computed?.noise?.length || 0}</Text>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseOutputNode);\r\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { useNodeContext } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { NoiseTextureDataContext } from '@awesome-flow/noise/templates';\r\nimport { Group, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseTextureDataNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n const context = useNodeContext<NoiseTextureDataContext>(id)?.computed;\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n Resolution: {context?.textureResolutionX}x{context?.textureResolutionY}\r\n </Group>\r\n <Group>Input Length: {context?.textureData?.length || 0}</Group>\r\n <Group>\r\n Output Length ({context?.textureResolutionX}*{context?.textureResolutionY}*4): {context?.textureData?.length || 0}\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseTextureDataNode);\r\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { useNodeContext } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Divider, Stack, Text } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NoiseHandleType } from '../../abstract';\r\nimport { PositionLoggerNodeContext } from '../../templates';\r\n\r\nfunction PositionsLoggerNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n const incoming = useNodeContext<PositionLoggerNodeContext>(id)?.incoming[NoiseHandleType.position];\r\n const positions = incoming\r\n ?.filter((p) => !!p.computed?.positions?.length)\r\n .flatMap((p) => p.computed.positions);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Text>Size: {positions?.length || 0}</Text>\r\n <Divider h={5} />\r\n <Stack>\r\n {positions?.map((v, i) => (\r\n <Text key={i}>\r\n {v.x}:{v.y}:{v.z}\r\n </Text>\r\n ))}\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionsLoggerNode);\r\n","export enum NoiseTemplateGroup {\n positions = 'Positions',\n output = 'Output',\n noiseGenerators = 'Noise Generators',\n noiseModifiers = 'Noise Modifiers',\n noiseSelectors = 'Noise Selectors',\n noiseTransformers = 'Noise Transformers'\n}\n","import { IMiddleware } from '@awesome-ecs/abstract/pipelines';\nimport { CoreHandleType } from '@awesome-flow/core/abstract';\nimport { NoiseGeneratorContext } from '../abstract/node-props';\n\nexport class IncomingPropertyValueMiddleware implements IMiddleware<NoiseGeneratorContext<any>> {\n action(context: NoiseGeneratorContext<any>): void {\n const incoming = context.incoming?.[CoreHandleType.variableProperty] ?? [];\n\n const properties = { ...context.data };\n\n for (const connection of incoming) {\n const overwrite = connection.computed;\n\n if (overwrite) {\n Object.assign(properties, { [overwrite.property]: overwrite.value });\n }\n }\n\n context.properties = properties;\n }\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { IDGenerator } from '@awesome-flow/core/utils';\nimport { Position } from '@xyflow/system';\nimport { Billow } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeFBMNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseBillowContext = NoiseGeneratorContext<NodeFBMNoiseData>;\n\nexport class NoiseBillowNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeFBMNoiseData> = {\n id: IDGenerator.template(),\n type: NoiseNodeType.noiseBillow,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Billow Noise',\n frequency: 0.1,\n lacunarity: 2.0,\n octaves: 5,\n persistence: 0.5,\n seed: 0\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseBillowContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoiseBillowContext) => {\n const { properties } = context;\n\n context.computed = {\n module: new Billow(\n properties.frequency,\n properties.lacunarity,\n properties.octaves,\n properties.persistence,\n properties.seed\n )\n };\n },\n cleanup: (context: NoiseBillowContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { ComputedModuleData } from '@awesome-flow/noise/abstract';\nimport { Position } from '@xyflow/system';\nimport { Checkerboard } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\n\nexport type NoiseCheckerboardContext = NodeContext<BasicNodeData, ComputedModuleData>;\n\nexport class NoiseCheckerboardNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseCheckerboard,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Checkerboard Noise'\n },\n handles: [\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseCheckerboardContext> = PipelineFactory.create({\n action: (context: NoiseCheckerboardContext) => {\n context.computed = {\n module: new Checkerboard()\n };\n },\n cleanup: (context: NoiseCheckerboardContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Const } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeConstNoiseData } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\n\nexport type NoiseConstContext = NodeContext<NodeConstNoiseData, ComputedModuleData>;\n\nexport class NoiseConstNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeConstNoiseData> = {\n type: NoiseNodeType.noiseConst,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Const Value Noise',\n noise: 0,\n min: -1,\n max: 1\n },\n handles: [\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseConstContext> = PipelineFactory.create<NoiseConstContext>({\n shouldRun(context: NoiseConstContext) {\n return context.data.noise !== undefined && context.data.noise !== null;\n },\n action(context: NoiseConstContext) {\n const module = new Const(context.data.noise);\n context.computed = { module };\n },\n cleanup(context: NoiseConstContext) {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/system';\nimport { Cylinders } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeCylindersNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseCylindersContext = NoiseGeneratorContext<NodeCylindersNoiseData>;\n\nexport class NoiseCylindersNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeCylindersNoiseData> = {\n type: NoiseNodeType.noiseCylinders,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Cylinders Noise',\n frequency: 0.1\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseCylindersContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoiseCylindersContext) => {\n const { properties } = context;\n context.computed = {\n module: new Cylinders(properties.frequency)\n };\n },\n cleanup: (context: NoiseCylindersContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/system';\nimport { Perlin } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeFBMNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoisePerlinContext = NoiseGeneratorContext<NodeFBMNoiseData>;\n\nexport class NoisePerlinNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeFBMNoiseData> = {\n type: NoiseNodeType.noisePerlin,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Perlin Noise',\n frequency: 0.1,\n lacunarity: 2.0,\n octaves: 5,\n persistence: 0.5,\n seed: 0\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoisePerlinContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoisePerlinContext) => {\n const { properties } = context;\n context.computed = {\n module: new Perlin(\n properties.frequency,\n properties.lacunarity,\n properties.octaves,\n properties.persistence,\n properties.seed\n )\n };\n },\n cleanup: (context: NoisePerlinContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/system';\nimport { RidgedMulti } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeRidgedNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseRidgedMultiContext = NoiseGeneratorContext<NodeRidgedNoiseData>;\n\nexport class NoiseRidgedMultiNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeRidgedNoiseData> = {\n type: NoiseNodeType.noiseRidgedMulti,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Ridged Multi Noise',\n frequency: 0.1,\n lacunarity: 2.0,\n octaves: 6,\n offset: 1.0,\n gain: 2.0,\n seed: 0\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseRidgedMultiContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoiseRidgedMultiContext) => {\n const { properties } = context;\n context.computed = {\n module: new RidgedMulti(\n properties.frequency,\n properties.lacunarity,\n properties.octaves,\n properties.offset,\n properties.gain,\n properties.seed\n )\n };\n },\n cleanup: (context: NoiseRidgedMultiContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/system';\nimport { Spheres } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeSpheresNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseSpheresContext = NoiseGeneratorContext<NodeSpheresNoiseData>;\n\nexport class NoiseSpheresNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeSpheresNoiseData> = {\n type: NoiseNodeType.noiseSpheres,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Spheres Noise',\n frequency: 0.1\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseSpheresContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoiseSpheresContext) => {\n const { properties } = context;\n context.computed = {\n module: new Spheres(properties.frequency)\n };\n },\n cleanup: (context: NoiseSpheresContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/system';\nimport { Voronoi } from 'libnoise-simplex-ts';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NodeVoronoiNoiseData, NoiseGeneratorContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseVoronoiContext = NoiseGeneratorContext<NodeVoronoiNoiseData>;\n\nexport class NoiseVoronoiNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeVoronoiNoiseData> = {\n type: NoiseNodeType.noiseVoronoi,\n group: NoiseTemplateGroup.noiseGenerators,\n data: {\n title: 'Voronoi Noise',\n frequency: 0.1,\n displacement: 1.0,\n distance: true,\n seed: 0\n },\n handles: [\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseVoronoiContext> = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n action: (context: NoiseVoronoiContext) => {\n const { properties } = context;\n context.computed = {\n module: new Voronoi(properties.frequency, properties.displacement, properties.distance, properties.seed)\n };\n },\n cleanup: (context: NoiseVoronoiContext) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedPositionsData, NodePositionData } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\n\nexport type NodePositionContext = NodeContext<NodePositionData, ComputedPositionsData>;\n\nexport class PositionConstNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodePositionData> = {\n type: NoiseNodeType.position,\n group: NoiseTemplateGroup.positions,\n data: {\n title: 'Position Output',\n position: { x: 0, y: 0, z: 0 }\n },\n handles: [\n {\n position: Position.Right,\n dataType: NoiseHandleType.position,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NodePositionContext>({\n shouldRun(context: NodePositionContext) {\n return context.data.position !== undefined && context.data.position !== null;\n },\n action(context: NodePositionContext) {\n const { data } = context;\n\n context.computed = {\n positions: [data.position]\n };\n },\n cleanup(context: NodePositionContext) {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedPositionsData, Position as GridPosition, NodeGridData } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseTemplateGroup } from '../../abstract/templates';\n\nexport type NodeGridPositionContext = NodeContext<NodeGridData, ComputedPositionsData>;\n\nexport class PositionGridNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeGridData> = {\n type: NoiseNodeType.grid,\n group: NoiseTemplateGroup.positions,\n data: {\n title: 'Grid Output',\n center: { x: 0, y: 0, z: 0 },\n radius: 1\n },\n handles: [\n {\n position: Position.Right,\n dataType: NoiseHandleType.position,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NodeGridPositionContext>({\n shouldRun(context: NodeGridPositionContext) {\n const { center, radius } = context.data;\n return center !== undefined && radius !== undefined;\n },\n action(context: NodeGridPositionContext) {\n const { data } = context;\n const { center, radius } = data;\n\n const positions: GridPosition[] = [];\n\n for (let i = -radius; i < radius; i++) {\n for (let j = -radius; j < radius; j++) {\n positions.push({ x: center.x + i, y: center.y + j, z: center.z });\n }\n }\n\n context.computed = {\n positions\n };\n },\n cleanup(context: NodeGridPositionContext) {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, CoreTemplateGroup, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { IDGenerator } from '@awesome-flow/core/utils';\nimport { ComputedModuleData, NoiseModuleContext } from '@awesome-flow/noise/abstract';\nimport { Position } from '@xyflow/system';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type ModuleGroupNodeContext = NodeContext<\n BasicNodeData,\n ComputedModuleData,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class ModuleGroupNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n id: IDGenerator.template(),\n type: NoiseNodeType.groupModule,\n group: CoreTemplateGroup.groups,\n data: {\n title: 'Modules Group',\n isGroup: true,\n initialSize: {\n width: 300,\n height: 200\n },\n collapsedSize: {\n width: 300,\n height: 80\n }\n },\n handles: [\n {\n position: Position.Bottom,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1,\n hideOnCollapse: true\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<ModuleGroupNodeContext> = PipelineFactory.create({\n shouldRun(context: ModuleGroupNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action: (context: ModuleGroupNodeContext) => {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n context.computed = { module };\n },\n cleanup: (context: ModuleGroupNodeContext) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Abs, ModifierModule } from 'libnoise-simplex-ts';\nimport { ComputedModuleData, NoiseModuleContext, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseAbsNodeContext = NodeContext<\n BasicNodeData,\n ComputedModuleData<ModifierModule>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseAbsNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseAbs,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Abs Noise'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseAbsNodeContext> = PipelineFactory.create({\n shouldRun(context: NoiseAbsNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseAbsNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (module) {\n if (context.computed?.module) {\n context.computed.module.sourceModule = module;\n } else {\n context.computed = { module: new Abs(module) };\n }\n }\n },\n cleanup(context: NoiseAbsNodeContext) {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Clamp, ModifierModule } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeClampNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseClampNodeContext = NodeContext<\n NodeClampNoiseData,\n ComputedModuleData<ModifierModule>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseClampNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeClampNoiseData> = {\n type: NoiseNodeType.noiseClamp,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Clamp Noise',\n lowerBound: -1,\n upperBound: 1\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseClampNodeContext>({\n shouldRun(context: NoiseClampNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseClampNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (module) {\n const clampModule = context.computed?.module as Clamp;\n\n if (clampModule) {\n clampModule.sourceModule = module;\n clampModule.lowerBound = context.data.lowerBound;\n clampModule.upperBound = context.data.upperBound;\n } else {\n context.computed = {\n module: new Clamp(module, context.data.lowerBound, context.data.upperBound)\n };\n }\n }\n },\n cleanup(context: NoiseClampNodeContext) {\n context.computed = null;\n }\n });\n}\n","import { Add, Max, Min, Multiply, Power } from 'libnoise-simplex-ts';\n\nexport enum NoiseCombineType {\n add = 'add',\n max = 'max',\n min = 'min',\n multiply = 'multiply',\n power = 'power'\n}\n\nexport const noiseCombineModuleMap = {\n [NoiseCombineType.add]: Add,\n [NoiseCombineType.max]: Max,\n [NoiseCombineType.min]: Min,\n [NoiseCombineType.multiply]: Multiply,\n [NoiseCombineType.power]: Power\n};\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { CombinerModule } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeCombineNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NoiseCombineType, noiseCombineModuleMap } from '../../abstract/operations';\n\nexport type NoiseCombineNodeContext = NodeContext<\n NodeCombineNoiseData,\n ComputedModuleData<CombinerModule>,\n { [NoiseHandleType.module]: NoiseModuleContext[] }\n>;\n\nexport class NoiseCombineNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeCombineNoiseData> = {\n type: NoiseNodeType.noiseCombine,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Combine Noise',\n operation: NoiseCombineType.add\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n minConnections: 2,\n maxConnections: 2\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseCombineNodeContext>({\n shouldRun(context: NoiseCombineNodeContext): boolean {\n return context.incoming[NoiseHandleType.module]?.length === 2;\n },\n action(context: NoiseCombineNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n\n const ModuleFactory = noiseCombineModuleMap[context.data.operation];\n const module = new ModuleFactory(incoming[0].computed?.module, incoming[1].computed?.module);\n\n context.computed = { module };\n },\n cleanup(context: NoiseCombineNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Curve, ModifierModule, Tuple } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeCurveNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseCurveNodeContext = NodeContext<\n NodeCurveNoiseData,\n ComputedModuleData<ModifierModule>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseCurveNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeCurveNoiseData> = {\n type: NoiseNodeType.noiseCurve,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Noise Curve',\n points: []\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseCurveNodeContext>({\n shouldRun(context: NoiseCurveNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseCurveNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (module) {\n const curve = new Curve(\n module,\n context.data.points.map((p) => new Tuple(p.input, p.output))\n );\n context.computed = { module: curve };\n }\n },\n cleanup(context: NoiseCurveNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Exponent } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeExponentNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseExponentNodeContext = NodeContext<\n NodeExponentNoiseData,\n ComputedModuleData<Exponent>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseExponentNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeExponentNoiseData> = {\n type: NoiseNodeType.noiseExponent,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Noise Exponent',\n exponent: 1\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseExponentNodeContext>({\n shouldRun(context: NoiseExponentNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseExponentNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (context.computed?.module) {\n context.computed.module.exponent = context.data.exponent;\n } else if (module) {\n const exponentModule = new Exponent(module, context.data.exponent);\n context.computed = { module: exponentModule };\n }\n },\n cleanup(context: NoiseExponentNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Invert } from 'libnoise-simplex-ts';\nimport { ComputedModuleData, NoiseModuleContext, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseInvertNodeContext = NodeContext<\n BasicNodeData,\n ComputedModuleData<Invert>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseInvertNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseInvert,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Invert Noise'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseInvertNodeContext>({\n shouldRun(context: NoiseInvertNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseInvertNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = module;\n } else if (module) {\n context.computed = { module: new Invert(module) };\n }\n },\n cleanup(context: NoiseInvertNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { IDGenerator } from '@awesome-flow/core/utils';\nimport { Position } from '@xyflow/system';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeNormalizeNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { NormalizeNoiseModule } from '../../modules';\n\nexport type NoiseNormalizeNodeContext = NodeContext<\n NodeNormalizeNoiseData,\n ComputedModuleData<NormalizeNoiseModule>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseNormalizeNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeNormalizeNoiseData> = {\n id: IDGenerator.template(),\n type: NoiseNodeType.noiseNormalize,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Normalize Noise',\n intervalStart: -1,\n intervalEnd: 1\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseNormalizeNodeContext>({\n shouldRun(context: NoiseNormalizeNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseNormalizeNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (module) {\n const normalizeModule = new NormalizeNoiseModule(module, context.data.intervalStart, context.data.intervalEnd);\n context.computed = { module: normalizeModule };\n }\n },\n cleanup(context: NoiseNormalizeNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { ScaleBias } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeScaleBiasNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseScaleBiasNodeContext = NodeContext<\n NodeScaleBiasNoiseData,\n ComputedModuleData<ScaleBias>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseScaleBiasNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeScaleBiasNoiseData> = {\n type: NoiseNodeType.noiseScaleBias,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Scale/Bias Noise',\n scale: 1.0,\n bias: 0.0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseScaleBiasNodeContext>({\n shouldRun(context: NoiseScaleBiasNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseScaleBiasNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = module;\n context.computed.module.scale = context.data.scale;\n context.computed.module.bias = context.data.bias;\n } else if (module) {\n const scaleBiasModule = new ScaleBias(module, context.data.scale, context.data.bias);\n context.computed = { module: scaleBiasModule };\n }\n },\n cleanup(context: NoiseScaleBiasNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Terrace } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeTerraceNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseTerraceNodeContext = NodeContext<\n NodeTerraceNoiseData,\n ComputedModuleData<Terrace>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseTerraceNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeTerraceNoiseData> = {\n type: NoiseNodeType.noiseTerrace,\n group: NoiseTemplateGroup.noiseModifiers,\n data: {\n title: 'Noise Terrace',\n points: []\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseTerraceNodeContext>({\n shouldRun(context: NoiseTerraceNodeContext): boolean {\n return !!context.incoming[NoiseHandleType.module];\n },\n action(context: NoiseTerraceNodeContext): void {\n const incoming = context.incoming[NoiseHandleType.module];\n const module = incoming.computed?.module;\n\n if (module) {\n const terrace = new Terrace(module, context.data.points);\n context.computed = { module: terrace };\n }\n },\n cleanup(context: NoiseTerraceNodeContext): void {\n context.computed = null;\n }\n });\n}\n","import { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { ComputedNoiseData, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseLoggerContext = NodeContext<\n BasicNodeData,\n never,\n { [NoiseHandleType.noise]: NodeContext<any, ComputedNoiseData>[] }\n>;\n\nexport class NoiseLoggerNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseLogger,\n group: NoiseTemplateGroup.output,\n data: {\n title: 'Noise Logger'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.noise,\n connection: 'target'\n }\n ]\n };\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport {\n ComputedNoiseData,\n ComputedPositionsData,\n NoiseModuleContext,\n NoiseTemplateGroup,\n PositionNoiseValue\n} from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseOutputContext = NodeContext<\n BasicNodeData,\n ComputedNoiseData,\n {\n [NoiseHandleType.position]: NodeContext<any, ComputedPositionsData>[];\n [NoiseHandleType.module]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseOutputNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseOutput,\n group: NoiseTemplateGroup.output,\n data: {\n title: 'Noise Output'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.position,\n connection: 'target'\n },\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.noise,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseOutputContext> = PipelineFactory.create({\n action: (context) => {\n const incomingPositions = context.incoming[NoiseHandleType.position];\n const incomingModule = context.incoming[NoiseHandleType.module];\n\n if (incomingPositions?.length && incomingModule?.computed?.module) {\n const { module } = incomingModule.computed;\n\n const noise: PositionNoiseValue[] = [];\n\n for (const input of incomingPositions) {\n const { positions } = input.computed;\n for (const position of positions) {\n const value = module.getValue(position.x, position.y, position.z);\n\n noise.push({\n position,\n value\n });\n }\n }\n\n context.computed = {\n noise\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { IPipeline } from '@awesome-ecs/abstract/pipelines';\nimport { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { ComputedNoiseData, ComputedNoiseTextureData, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseTextureDataContext = NodeContext<\n BasicNodeData,\n ComputedNoiseTextureData,\n { [NoiseHandleType.noise]: NodeContext<any, ComputedNoiseData> }\n>;\n\nexport class NoiseTextureDataTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.textureData,\n group: NoiseTemplateGroup.output,\n data: {\n title: 'Texture Data'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.noise,\n connection: 'target',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.textureData,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline?: IPipeline<NoiseTextureDataContext> = PipelineFactory.create({\n shouldRun: (context) => {\n const incoming = context.incoming[NoiseHandleType.noise];\n return !!incoming?.computed?.noise.length;\n },\n action: (context) => {\n const incoming = context.incoming[NoiseHandleType.noise];\n const noise = incoming?.computed?.noise;\n\n const size = Math.ceil(Math.sqrt(noise.length));\n\n const colors = noise.flatMap((n) => [n.value * 255, n.value * 255, n.value * 255, 255]);\n const dataArray = new Uint8Array(size * size * 4);\n dataArray.set(colors);\n\n context.computed = {\n textureData: dataArray,\n textureResolutionX: size,\n textureResolutionY: size\n };\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { ComputedPositionsData, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type PositionLoggerNodeContext = NodeContext<\n BasicNodeData,\n never,\n { [NoiseNodeType.position]: NodeContext<any, ComputedPositionsData>[] }\n>;\n\nexport class PositionLoggerNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.positionLogger,\n group: NoiseTemplateGroup.positions,\n data: {\n title: 'Position Logger'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.position,\n connection: 'target'\n }\n ]\n };\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Blend } from 'libnoise-simplex-ts';\nimport { ComputedModuleData, NoiseModuleContext, NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType, NoiseSourceControlHandle } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseBlendNodeContext = NodeContext<\n BasicNodeData,\n ComputedModuleData<Blend>,\n {\n [NoiseSourceControlHandle.source]: NoiseModuleContext[];\n [NoiseSourceControlHandle.control]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseBlendNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData> = {\n type: NoiseNodeType.noiseBlend,\n group: NoiseTemplateGroup.noiseSelectors,\n data: {\n title: 'Noise Blend'\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n label: 'Source Modules',\n dataId: NoiseSourceControlHandle.source,\n groupBy: 'dataId',\n maxConnections: 2,\n minConnections: 2\n },\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n dataId: NoiseSourceControlHandle.control,\n groupBy: 'dataId',\n connection: 'target',\n label: 'Control Module',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n dataId: NoiseSourceControlHandle.output,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseBlendNodeContext>({\n shouldRun: (context) => {\n return (\n context.incoming[NoiseSourceControlHandle.source]?.length === 2 && !!context.incoming[NoiseSourceControlHandle.control]\n );\n },\n action: (context) => {\n const incomingSources = context.incoming[NoiseSourceControlHandle.source];\n const incomingControl = context.incoming[NoiseSourceControlHandle.control];\n\n if (context.computed?.module) {\n context.computed.module.controlModule = incomingControl.computed.module;\n context.computed.module.sourceModuleA = incomingSources[0].computed.module;\n context.computed.module.sourceModuleB = incomingSources[1].computed.module;\n } else {\n context.computed = {\n module: new Blend(\n incomingSources[0].computed.module,\n incomingSources[1].computed.module,\n incomingControl.computed.module\n )\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Select } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType, NoiseSourceControlHandle } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeSelectNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseSelectNodeContext = NodeContext<\n NodeSelectNoiseData,\n ComputedModuleData<Select>,\n {\n [NoiseSourceControlHandle.source]: NoiseModuleContext[];\n [NoiseSourceControlHandle.control]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseSelectNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeSelectNoiseData> = {\n type: NoiseNodeType.noiseSelect,\n group: NoiseTemplateGroup.noiseSelectors,\n data: {\n title: 'Noise Select',\n edgeFalloff: 0.0,\n lowerBound: -1.0,\n upperBound: 1.0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n dataId: NoiseSourceControlHandle.source,\n groupBy: 'dataId',\n connection: 'target',\n label: 'Source Modules',\n maxConnections: 2,\n minConnections: 2\n },\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n dataId: NoiseSourceControlHandle.control,\n groupBy: 'dataId',\n connection: 'target',\n label: 'Control Module',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n dataId: NoiseSourceControlHandle.output,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseSelectNodeContext>({\n shouldRun: (context) => {\n return (\n context.incoming[NoiseSourceControlHandle.source]?.length === 2 && !!context.incoming[NoiseSourceControlHandle.control]\n );\n },\n action: (context) => {\n const incomingSources = context.incoming[NoiseSourceControlHandle.source];\n const incomingControl = context.incoming[NoiseSourceControlHandle.control];\n\n if (context.computed?.module) {\n context.computed.module.controlModule = incomingControl.computed.module;\n context.computed.module.sourceModuleA = incomingSources[0].computed.module;\n context.computed.module.sourceModuleB = incomingSources[1].computed.module;\n context.computed.module.edgeFalloff = context.data.edgeFalloff;\n context.computed.module.lowerBound = context.data.lowerBound;\n context.computed.module.upperBound = context.data.upperBound;\n } else {\n context.computed = {\n module: new Select(\n incomingSources[0].computed.module,\n incomingSources[1].computed.module,\n incomingControl.computed.module,\n context.data.edgeFalloff,\n context.data.lowerBound,\n context.data.upperBound\n )\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { BasicNodeData, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { Displace } from 'libnoise-simplex-ts';\nimport { ComputedModuleData, NoiseModuleContext, NoiseTemplateGroup } from '../../abstract';\nimport { DisplacementHandle, DisplacementModuleHandle, NoiseHandleType } from '../../abstract/handle-types';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseDisplaceNodeContext = NodeContext<\n BasicNodeData,\n ComputedModuleData<Displace>,\n {\n [DisplacementHandle.sourceModule]: NoiseModuleContext;\n [DisplacementHandle.xModule]: NoiseModuleContext;\n [DisplacementHandle.yModule]: NoiseModuleContext;\n [DisplacementHandle.zModule]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseDisplaceNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<BasicNodeData, Omit<DisplacementModuleHandle, 'handleId'>> = {\n type: NoiseNodeType.noiseDisplace,\n group: NoiseTemplateGroup.noiseTransformers,\n data: {\n title: 'Noise Displace'\n },\n handles: [\n {\n position: Position.Left,\n connection: 'target',\n label: 'Source Module',\n dataType: NoiseHandleType.module,\n dataId: DisplacementHandle.sourceModule,\n groupBy: 'dataId',\n maxConnections: 1\n },\n {\n position: Position.Left,\n connection: 'target',\n label: 'X Module',\n dataType: NoiseHandleType.module,\n dataId: DisplacementHandle.xModule,\n groupBy: 'dataId',\n maxConnections: 1\n },\n {\n position: Position.Left,\n connection: 'target',\n label: 'Y Module',\n dataType: NoiseHandleType.module,\n dataId: DisplacementHandle.yModule,\n groupBy: 'dataId',\n maxConnections: 1\n },\n {\n position: Position.Left,\n connection: 'target',\n label: 'Z Module',\n dataType: NoiseHandleType.module,\n dataId: DisplacementHandle.zModule,\n groupBy: 'dataId',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n dataId: DisplacementHandle.output,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseDisplaceNodeContext>({\n shouldRun: (context) => {\n return (\n !!context.incoming[DisplacementHandle.sourceModule]?.computed?.module &&\n !!context.incoming[DisplacementHandle.xModule]?.computed?.module &&\n !!context.incoming[DisplacementHandle.yModule]?.computed?.module &&\n !!context.incoming[DisplacementHandle.zModule]?.computed?.module\n );\n },\n action: (context) => {\n const sourceModule = context.incoming[DisplacementHandle.sourceModule].computed.module;\n const xModule = context.incoming[DisplacementHandle.xModule].computed.module;\n const yModule = context.incoming[DisplacementHandle.yModule].computed.module;\n const zModule = context.incoming[DisplacementHandle.zModule].computed.module;\n\n const hasModules = !!sourceModule && !!xModule && !!yModule && !!zModule;\n\n if (context.computed?.module) {\n if (hasModules) {\n context.computed.module.sourceModule = sourceModule;\n context.computed.module.xModule = xModule;\n context.computed.module.yModule = yModule;\n context.computed.module.zModule = zModule;\n }\n } else {\n context.computed = {\n module: new Displace(sourceModule, xModule, yModule, zModule)\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { RotatePoint } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeRotatePointNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseRotatePointNodeContext = NodeContext<\n NodeRotatePointNoiseData,\n ComputedModuleData<RotatePoint>,\n {\n [NoiseHandleType.module]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseRotatePointNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeRotatePointNoiseData> = {\n type: NoiseNodeType.noiseRotatePoint,\n group: NoiseTemplateGroup.noiseTransformers,\n data: {\n title: 'Noise Rotate Point',\n xAngle: 0.0,\n yAngle: 0.0,\n zAngle: 0.0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n label: 'Source Module',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseRotatePointNodeContext>({\n shouldRun: (context) => {\n return !!context.incoming[NoiseHandleType.module]?.computed?.module;\n },\n action: (context) => {\n const sourceModule = context.incoming[NoiseHandleType.module].computed.module;\n const { xAngle, yAngle, zAngle } = context.data;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = sourceModule;\n context.computed.module.xAngle = xAngle;\n context.computed.module.yAngle = yAngle;\n context.computed.module.zAngle = zAngle;\n } else {\n context.computed = {\n module: new RotatePoint(sourceModule, xAngle, yAngle, zAngle)\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { ScalePoint } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeScalePointNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseScalePointNodeContext = NodeContext<\n NodeScalePointNoiseData,\n ComputedModuleData<ScalePoint>,\n {\n [NoiseHandleType.module]: NoiseModuleContext;\n }\n>;\n\nexport class NoiseScalePointNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeScalePointNoiseData> = {\n type: NoiseNodeType.noiseScalePoint,\n group: NoiseTemplateGroup.noiseTransformers,\n data: {\n title: 'Noise Scale Point',\n xScale: 1.0,\n yScale: 1.0,\n zScale: 1.0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n label: 'Source Module',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseScalePointNodeContext>({\n shouldRun: (context) => {\n return !!context.incoming[NoiseHandleType.module]?.computed?.module;\n },\n action: (context) => {\n const sourceModule = context.incoming[NoiseHandleType.module].computed.module;\n const { xScale, yScale, zScale } = context.data;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = sourceModule;\n context.computed.module.xScale = xScale;\n context.computed.module.yScale = yScale;\n context.computed.module.zScale = zScale;\n } else {\n context.computed = {\n module: new ScalePoint(sourceModule, xScale, yScale, zScale)\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { Position } from '@xyflow/system';\nimport { TranslatePoint } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport { ComputedModuleData, NodeTranslatePointNoiseData, NoiseModuleContext } from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\n\nexport type NoiseTranslatePointNodeContext = NodeContext<\n NodeTranslatePointNoiseData,\n ComputedModuleData<TranslatePoint>,\n { [NoiseHandleType.module]: NoiseModuleContext }\n>;\n\nexport class NoiseTranslatePointNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeTranslatePointNoiseData> = {\n type: NoiseNodeType.noiseTranslatePoint,\n group: NoiseTemplateGroup.noiseTransformers,\n data: {\n title: 'Noise Translate Point',\n translateX: 0.0,\n translateY: 0.0,\n translateZ: 0.0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n label: 'Source Module',\n maxConnections: 1\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create<NoiseTranslatePointNodeContext>({\n shouldRun: (context) => {\n return !!context.incoming[NoiseHandleType.module]?.computed?.module;\n },\n action: (context) => {\n const sourceModule = context.incoming[NoiseHandleType.module].computed.module;\n const { translateX, translateY, translateZ } = context.data;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = sourceModule;\n context.computed.module.translateX = translateX;\n context.computed.module.translateY = translateY;\n context.computed.module.translateZ = translateZ;\n } else {\n context.computed = {\n module: new TranslatePoint(sourceModule, translateX, translateY, translateZ)\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { PipelineFactory } from '@awesome-ecs/core/factories';\nimport { CoreHandleType, ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { NodeContext } from '@awesome-flow/core/abstract/pipelines';\nimport { NodeVariablePropertyContext } from '@awesome-flow/core/templates';\nimport { Position } from '@xyflow/system';\nimport { Turbulence } from 'libnoise-simplex-ts';\nimport { NoiseTemplateGroup } from '../../abstract';\nimport { NoiseHandleType } from '../../abstract/handle-types';\nimport {\n ComputedModuleData,\n NodeTurbulenceNoiseData,\n NoiseGeneratorContext,\n NoiseModuleContext\n} from '../../abstract/node-props';\nimport { NoiseNodeType } from '../../abstract/node-types';\nimport { IncomingPropertyValueMiddleware } from '../../middleware/incoming-property-value';\n\nexport type NoiseTurbulenceNodeContext = NodeContext<\n NodeTurbulenceNoiseData,\n ComputedModuleData<Turbulence>,\n {\n [NoiseHandleType.module]: NoiseModuleContext;\n [CoreHandleType.variableProperty]: NodeVariablePropertyContext[];\n }\n> &\n NoiseGeneratorContext<NodeTurbulenceNoiseData>;\n\nexport class NoiseTurbulenceNodeTemplateFactory implements ITemplateFactory {\n readonly template: NodeTemplate<NodeTurbulenceNoiseData> = {\n type: NoiseNodeType.noiseTurbulence,\n group: NoiseTemplateGroup.noiseTransformers,\n data: {\n title: 'Noise Turbulence',\n frequency: 1.0,\n power: 1.0,\n roughness: 1.0,\n seed: 0\n },\n handles: [\n {\n position: Position.Left,\n dataType: NoiseHandleType.module,\n connection: 'target',\n label: 'Source Module',\n maxConnections: 1\n },\n {\n position: Position.Left,\n dataType: CoreHandleType.variableProperty,\n label: 'Variable Properties',\n connection: 'target'\n },\n {\n position: Position.Right,\n dataType: NoiseHandleType.module,\n connection: 'source'\n }\n ]\n };\n\n readonly pipeline = PipelineFactory.create(new IncomingPropertyValueMiddleware(), {\n shouldRun: (context) => {\n return !!context.incoming[NoiseHandleType.module]?.computed?.module;\n },\n action: (context: NoiseTurbulenceNodeContext) => {\n const { properties } = context;\n const incoming = context.incoming[NoiseHandleType.module].computed.module;\n\n if (context.computed?.module) {\n context.computed.module.sourceModule = incoming;\n context.computed.module.frequency = properties.frequency;\n context.computed.module.power = properties.power;\n context.computed.module.roughness = properties.roughness;\n context.computed.module.seed = properties.seed;\n } else {\n context.computed = {\n module: new Turbulence(incoming, properties.frequency, properties.power, properties.roughness, properties.seed)\n };\n }\n },\n cleanup: (context) => {\n context.computed = null;\n }\n });\n}\n","import { ITemplateFactory } from '@awesome-flow/core/abstract';\nimport { NodeTypes } from '@xyflow/react';\nimport { ModuleGroupNode } from '../nodes';\nimport NoiseBillowNode from '../nodes/generators/noise-billow-node';\nimport NoiseCheckerboardNode from '../nodes/generators/noise-checkerboard-node';\nimport NoiseConstNode from '../nodes/generators/noise-const-node';\nimport NoiseCylindersNode from '../nodes/generators/noise-cylinders-node';\nimport NoisePerlinNode from '../nodes/generators/noise-perlin-node';\nimport NoiseRidgedMultiNode from '../nodes/generators/noise-ridgedmulti-node';\nimport NoiseSpheresNode from '../nodes/generators/noise-spheres-node';\nimport NoiseVoronoiNode from '../nodes/generators/noise-voronoi-node';\nimport PositionConstNode from '../nodes/generators/position-const-node';\nimport PositionGridNode from '../nodes/generators/position-grid-node';\nimport NoiseAbsNode from '../nodes/modifiers/noise-abs-node';\nimport NoiseClampNode from '../nodes/modifiers/noise-clamp-node';\nimport NoiseCombineNode from '../nodes/modifiers/noise-combine-node';\nimport NoiseCurveNode from '../nodes/modifiers/noise-curve-node';\nimport NoiseExponentNode from '../nodes/modifiers/noise-exponent-node';\nimport NoiseInvertNode from '../nodes/modifiers/noise-invert-node';\nimport NoiseNormalizeNode from '../nodes/modifiers/noise-normalize-node';\nimport NoiseScaleBiasNode from '../nodes/modifiers/noise-scale-bias-node';\nimport NoiseTerraceNode from '../nodes/modifiers/noise-terrace-node';\nimport NoiseLoggerNode from '../nodes/output/noise-logger-node';\nimport NoiseOutputNode from '../nodes/output/noise-output-node';\nimport NoiseTextureDataNode from '../nodes/output/noise-texture-data-node';\nimport PositionsLoggerNode from '../nodes/output/positions-logger-node';\nimport NoiseBlendNode from '../nodes/selectors/noise-blend-node';\nimport NoiseSelectNode from '../nodes/selectors/noise-select-node';\nimport NoiseDisplaceNode from '../nodes/transformers/noise-displace-node';\nimport NoiseRotatePointNode from '../nodes/transformers/noise-rotate-point-node';\nimport NoiseScalePointNode from '../nodes/transformers/noise-scale-point-node';\nimport NoiseTranslatePointNode from '../nodes/transformers/noise-translate-point-node';\nimport NoiseTurbulenceNode from '../nodes/transformers/noise-turbulence-node';\nimport { NoiseBillowNodeTemplateFactory } from '../templates/generators/noise-billow-template';\nimport { NoiseCheckerboardNodeTemplateFactory } from '../templates/generators/noise-checkerboard-template';\nimport { NoiseConstNodeTemplateFactory } from '../templates/generators/noise-const-template';\nimport { NoiseCylindersNodeTemplateFactory } from '../templates/generators/noise-cylinders-template';\nimport { NoisePerlinNodeTemplateFactory } from '../templates/generators/noise-perlin-template';\nimport { NoiseRidgedMultiNodeTemplateFactory } from '../templates/generators/noise-ridgedmulti-template';\nimport { NoiseSpheresNodeTemplateFactory } from '../templates/generators/noise-spheres-template';\nimport { NoiseVoronoiNodeTemplateFactory } from '../templates/generators/noise-voronoi-template';\nimport { PositionConstNodeTemplateFactory } from '../templates/generators/position-const-template';\nimport { PositionGridNodeTemplateFactory } from '../templates/generators/position-grid-template';\nimport { ModuleGroupNodeTemplateFactory } from '../templates/groups/module-group-template';\nimport { NoiseAbsNodeTemplateFactory } from '../templates/modifiers/noise-abs-template';\nimport { NoiseClampNodeTemplateFactory } from '../templates/modifiers/noise-clamp-template';\nimport { NoiseCombineNodeTemplateFactory } from '../templates/modifiers/noise-combine-template';\nimport { NoiseCurveNodeTemplateFactory } from '../templates/modifiers/noise-curve-template';\nimport { NoiseExponentNodeTemplateFactory } from '../templates/modifiers/noise-exponent-template';\nimport { NoiseInvertNodeTemplateFactory } from '../templates/modifiers/noise-invert-template';\nimport { NoiseNormalizeNodeTemplateFactory } from '../templates/modifiers/noise-normalize-template';\nimport { NoiseScaleBiasNodeTemplateFactory } from '../templates/modifiers/noise-scalebias-template';\nimport { NoiseTerraceNodeTemplateFactory } from '../templates/modifiers/noise-terrace-template';\nimport { NoiseLoggerNodeTemplateFactory } from '../templates/output/noise-logger-template';\nimport { NoiseOutputNodeTemplateFactory } from '../templates/output/noise-output-template';\nimport { NoiseTextureDataTemplateFactory } from '../templates/output/noise-texture-data-template';\nimport { PositionLoggerNodeTemplateFactory } from '../templates/output/position-logger-template';\nimport { NoiseBlendNodeTemplateFactory } from '../templates/selectors/noise-blend-template';\nimport { NoiseSelectNodeTemplateFactory } from '../templates/selectors/noise-select-template';\nimport { NoiseDisplaceNodeTemplateFactory } from '../templates/transformers/noise-displace-template';\nimport { NoiseRotatePointNodeTemplateFactory } from '../templates/transformers/noise-rotate-point-template';\nimport { NoiseScalePointNodeTemplateFactory } from '../templates/transformers/noise-scale-point-template';\nimport { NoiseTranslatePointNodeTemplateFactory } from '../templates/transformers/noise-translate-point-template';\nimport { NoiseTurbulenceNodeTemplateFactory } from '../templates/transformers/noise-turbulence-template';\n\nexport enum NoiseNodeType {\n position = 'position',\n grid = 'grid',\n textureData = 'texture-data',\n groupModule = 'group-module',\n positionLogger = 'position-logger',\n noiseLogger = 'noise-logger',\n noiseOutput = 'noise-output',\n noiseConst = 'noise-constant',\n noiseBillow = 'noise-billow',\n noiseCheckerboard = 'noise-checkerboard',\n noiseNormalize = 'noise-normalize',\n noiseCylinders = 'noise-cylinders',\n noisePerlin = 'noise-perlin',\n noiseRidgedMulti = 'noise-ridged-multi',\n noiseSpheres = 'noise-spheres',\n noiseVoronoi = 'noise-voronoi',\n noiseCombine = 'noise-combiner',\n noiseClamp = 'noise-clamp',\n noiseAbs = 'noise-abs',\n noiseCurve = 'noise-curve',\n noiseExponent = 'noise-exponent',\n noiseInvert = 'noise-invert',\n noiseScaleBias = 'noise-scale-bias',\n noiseTerrace = 'noise-terrace',\n noiseBlend = 'noise-blend',\n noiseSelect = 'noise-select',\n noiseDisplace = 'noise-displace',\n noiseRotatePoint = 'noise-rotate-point',\n noiseScalePoint = 'noise-scale-point',\n noiseTranslatePoint = 'noise-translate-point',\n noiseTurbulence = 'noise-turbulence'\n}\n\nexport const noiseNodeTypes = {\n [NoiseNodeType.groupModule]: ModuleGroupNode,\n [NoiseNodeType.position]: PositionConstNode,\n [NoiseNodeType.grid]: PositionGridNode,\n [NoiseNodeType.noiseOutput]: NoiseOutputNode,\n [NoiseNodeType.textureData]: NoiseTextureDataNode,\n [NoiseNodeType.noiseLogger]: NoiseLoggerNode,\n [NoiseNodeType.positionLogger]: PositionsLoggerNode,\n [NoiseNodeType.noiseConst]: NoiseConstNode,\n [NoiseNodeType.noiseBillow]: NoiseBillowNode,\n [NoiseNodeType.noiseCheckerboard]: NoiseCheckerboardNode,\n [NoiseNodeType.noiseCylinders]: NoiseCylindersNode,\n [NoiseNodeType.noisePerlin]: NoisePerlinNode,\n [NoiseNodeType.noiseRidgedMulti]: NoiseRidgedMultiNode,\n [NoiseNodeType.noiseSpheres]: NoiseSpheresNode,\n [NoiseNodeType.noiseVoronoi]: NoiseVoronoiNode,\n [NoiseNodeType.noiseCombine]: NoiseCombineNode,\n [NoiseNodeType.noiseClamp]: NoiseClampNode,\n [NoiseNodeType.noiseAbs]: NoiseAbsNode,\n [NoiseNodeType.noiseNormalize]: NoiseNormalizeNode,\n [NoiseNodeType.noiseCurve]: NoiseCurveNode,\n [NoiseNodeType.noiseExponent]: NoiseExponentNode,\n [NoiseNodeType.noiseInvert]: NoiseInvertNode,\n [NoiseNodeType.noiseScaleBias]: NoiseScaleBiasNode,\n [NoiseNodeType.noiseTerrace]: NoiseTerraceNode,\n [NoiseNodeType.noiseBlend]: NoiseBlendNode,\n [NoiseNodeType.noiseSelect]: NoiseSelectNode,\n [NoiseNodeType.noiseDisplace]: NoiseDisplaceNode,\n [NoiseNodeType.noiseRotatePoint]: NoiseRotatePointNode,\n [NoiseNodeType.noiseScalePoint]: NoiseScalePointNode,\n [NoiseNodeType.noiseTranslatePoint]: NoiseTranslatePointNode,\n [NoiseNodeType.noiseTurbulence]: NoiseTurbulenceNode\n} satisfies NodeTypes;\n\nexport const noiseNodeTemplates = {\n [NoiseNodeType.noiseOutput]: new NoiseOutputNodeTemplateFactory(),\n [NoiseNodeType.noiseBillow]: new NoiseBillowNodeTemplateFactory(),\n [NoiseNodeType.noiseCheckerboard]: new NoiseCheckerboardNodeTemplateFactory(),\n [NoiseNodeType.noiseNormalize]: new NoiseNormalizeNodeTemplateFactory(),\n [NoiseNodeType.noiseLogger]: new NoiseLoggerNodeTemplateFactory(),\n [NoiseNodeType.noiseConst]: new NoiseConstNodeTemplateFactory(),\n [NoiseNodeType.position]: new PositionConstNodeTemplateFactory(),\n [NoiseNodeType.positionLogger]: new PositionLoggerNodeTemplateFactory(),\n [NoiseNodeType.grid]: new PositionGridNodeTemplateFactory(),\n [NoiseNodeType.textureData]: new NoiseTextureDataTemplateFactory(),\n [NoiseNodeType.noiseCylinders]: new NoiseCylindersNodeTemplateFactory(),\n [NoiseNodeType.noisePerlin]: new NoisePerlinNodeTemplateFactory(),\n [NoiseNodeType.noiseRidgedMulti]: new NoiseRidgedMultiNodeTemplateFactory(),\n [NoiseNodeType.noiseSpheres]: new NoiseSpheresNodeTemplateFactory(),\n [NoiseNodeType.noiseVoronoi]: new NoiseVoronoiNodeTemplateFactory(),\n [NoiseNodeType.noiseCombine]: new NoiseCombineNodeTemplateFactory(),\n [NoiseNodeType.noiseClamp]: new NoiseClampNodeTemplateFactory(),\n [NoiseNodeType.noiseAbs]: new NoiseAbsNodeTemplateFactory(),\n [NoiseNodeType.noiseCurve]: new NoiseCurveNodeTemplateFactory(),\n [NoiseNodeType.noiseExponent]: new NoiseExponentNodeTemplateFactory(),\n [NoiseNodeType.noiseInvert]: new NoiseInvertNodeTemplateFactory(),\n [NoiseNodeType.noiseScaleBias]: new NoiseScaleBiasNodeTemplateFactory(),\n [NoiseNodeType.noiseTerrace]: new NoiseTerraceNodeTemplateFactory(),\n [NoiseNodeType.noiseBlend]: new NoiseBlendNodeTemplateFactory(),\n [NoiseNodeType.noiseSelect]: new NoiseSelectNodeTemplateFactory(),\n [NoiseNodeType.noiseDisplace]: new NoiseDisplaceNodeTemplateFactory(),\n [NoiseNodeType.noiseRotatePoint]: new NoiseRotatePointNodeTemplateFactory(),\n [NoiseNodeType.noiseScalePoint]: new NoiseScalePointNodeTemplateFactory(),\n [NoiseNodeType.noiseTranslatePoint]: new NoiseTranslatePointNodeTemplateFactory(),\n [NoiseNodeType.noiseTurbulence]: new NoiseTurbulenceNodeTemplateFactory(),\n [NoiseNodeType.groupModule]: new ModuleGroupNodeTemplateFactory()\n} satisfies Record<NoiseNodeType, ITemplateFactory>;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generators-BF_0y3pd.cjs","names":["NodeContainer","NodePropertiesList","NodeContainer","NodeContainer","Stack","Group","NumberInput","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","Stack","Group","NumberInput","NodeContainer","Stack","Group","NumberInput"],"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-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 { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseBillowNode);\r\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\r\n}\r\n\r\nexport default memo(NoiseCheckerboardNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeConstNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\r\n const [min, setMin] = useState(data.min);\r\n const [max, setMax] = useState(data.max);\r\n const [noise, setNoise] = useState(data.noise);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, { noise, min, max });\r\n }, [id, noise, min, max, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\r\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\r\n </Group>\r\n <Group>\r\n Noise:\r\n <NumberInput size=\"xs\" value={noise} onChange={(e) => setNoise(Number(e))} max={max} min={min} step={0.1} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseConstNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeCylindersNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseCylindersNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoisePerlinNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeRidgedNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseRidgedMultiNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeSpheresNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseSpheresNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeVoronoiNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseVoronoiNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodePositionData } from '../../abstract/node-props';\r\n\r\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\r\n const position = data.position ?? { x: 0, y: 0, z: 0 };\r\n\r\n const [x, setX] = useState(position.x);\r\n const [y, setY] = useState(position.y);\r\n const [z, setZ] = useState(position.z);\r\n\r\n const updateNodeData = useUpdateNodeData<NodePositionData>();\r\n\r\n useEffect(() => {\r\n const position = { x, y, z };\r\n\r\n updateNodeData(id, {\r\n position\r\n });\r\n }, [x, y, z, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionConstNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeGridData } from '../../abstract/node-props';\r\n\r\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\r\n const [x, setX] = useState(data.center?.x);\r\n const [y, setY] = useState(data.center?.y);\r\n const [z, setZ] = useState(data.center?.z);\r\n\r\n const [radius, setRadius] = useState(data.radius);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeGridData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, {\r\n center: { x, y, z },\r\n radius\r\n });\r\n }, [x, y, z, radius, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n <Group>\r\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionGridNode);\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generators-BF_0y3pd.cjs","names":["NodeContainer","NodePropertiesList","NodeContainer","NodeContainer","Stack","Group","NumberInput","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","NodePropertiesList","NodeContainer","Stack","Group","NumberInput","NodeContainer","Stack","Group","NumberInput"],"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-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 { NodePropertiesList } from '@awesome-flow/core/components';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertiesList data={data} nodeId={id} />\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseBillowNode);\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\r\n}\r\n\r\nexport default memo(NoiseCheckerboardNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeConstNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\r\n const [min, setMin] = useState(data.min);\r\n const [max, setMax] = useState(data.max);\r\n const [noise, setNoise] = useState(data.noise);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, { noise, min, max });\r\n }, [id, noise, min, max, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\r\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\r\n </Group>\r\n <Group>\r\n Noise:\r\n <NumberInput size=\"xs\" value={noise} onChange={(e) => setNoise(Number(e))} max={max} min={min} step={0.1} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseConstNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeCylindersNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseCylindersNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoisePerlinNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeRidgedNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseRidgedMultiNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeSpheresNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseSpheresNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeVoronoiNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseVoronoiNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodePositionData } from '../../abstract/node-props';\r\n\r\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\r\n const position = data.position ?? { x: 0, y: 0, z: 0 };\r\n\r\n const [x, setX] = useState(position.x);\r\n const [y, setY] = useState(position.y);\r\n const [z, setZ] = useState(position.z);\r\n\r\n const updateNodeData = useUpdateNodeData<NodePositionData>();\r\n\r\n useEffect(() => {\r\n const position = { x, y, z };\r\n\r\n updateNodeData(id, {\r\n position\r\n });\r\n }, [x, y, z, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionConstNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeGridData } from '../../abstract/node-props';\r\n\r\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\r\n const [x, setX] = useState(data.center?.x);\r\n const [y, setY] = useState(data.center?.y);\r\n const [z, setZ] = useState(data.center?.z);\r\n\r\n const [radius, setRadius] = useState(data.radius);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeGridData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, {\r\n center: { x, y, z },\r\n radius\r\n });\r\n }, [x, y, z, radius, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n <Group>\r\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionGridNode);\r\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generators-DSwgPqW2.mjs","names":[],"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-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 { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseBillowNode);\r\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\r\n}\r\n\r\nexport default memo(NoiseCheckerboardNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeConstNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\r\n const [min, setMin] = useState(data.min);\r\n const [max, setMax] = useState(data.max);\r\n const [noise, setNoise] = useState(data.noise);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, { noise, min, max });\r\n }, [id, noise, min, max, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\r\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\r\n </Group>\r\n <Group>\r\n Noise:\r\n <NumberInput size=\"xs\" value={noise} onChange={(e) => setNoise(Number(e))} max={max} min={min} step={0.1} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseConstNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeCylindersNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseCylindersNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoisePerlinNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeRidgedNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseRidgedMultiNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeSpheresNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseSpheresNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeVoronoiNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseVoronoiNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodePositionData } from '../../abstract/node-props';\r\n\r\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\r\n const position = data.position ?? { x: 0, y: 0, z: 0 };\r\n\r\n const [x, setX] = useState(position.x);\r\n const [y, setY] = useState(position.y);\r\n const [z, setZ] = useState(position.z);\r\n\r\n const updateNodeData = useUpdateNodeData<NodePositionData>();\r\n\r\n useEffect(() => {\r\n const position = { x, y, z };\r\n\r\n updateNodeData(id, {\r\n position\r\n });\r\n }, [x, y, z, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionConstNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeGridData } from '../../abstract/node-props';\r\n\r\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\r\n const [x, setX] = useState(data.center?.x);\r\n const [y, setY] = useState(data.center?.y);\r\n const [z, setZ] = useState(data.center?.z);\r\n\r\n const [radius, setRadius] = useState(data.radius);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeGridData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, {\r\n center: { x, y, z },\r\n radius\r\n });\r\n }, [x, y, z, radius, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n <Group>\r\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionGridNode);\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generators-DSwgPqW2.mjs","names":[],"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-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 { NodePropertiesList } from '@awesome-flow/core/components';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\n\nfunction NoiseBillowNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodePropertiesList data={data} nodeId={id} />\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseBillowNode);\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\n\r\nfunction NoiseCheckerboardNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\r\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\r\n}\r\n\r\nexport default memo(NoiseCheckerboardNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeConstNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseConstNode({ id, selected, data, type }: NodeProps<Node<NodeConstNoiseData>>) {\r\n const [min, setMin] = useState(data.min);\r\n const [max, setMax] = useState(data.max);\r\n const [noise, setNoise] = useState(data.noise);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeConstNoiseData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, { noise, min, max });\r\n }, [id, noise, min, max, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n <NumberInput size=\"xs\" w={100} value={min} onChange={(e) => setMin(Number(e))} />\r\n <NumberInput size=\"xs\" w={100} value={max} onChange={(e) => setMax(Number(e))} />\r\n </Group>\r\n <Group>\r\n Noise:\r\n <NumberInput size=\"xs\" value={noise} onChange={(e) => setNoise(Number(e))} max={max} min={min} step={0.1} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseConstNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeCylindersNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseCylindersNode({ id, selected, data, type }: NodeProps<Node<NodeCylindersNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseCylindersNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeFBMNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoisePerlinNode({ id, selected, data, type }: NodeProps<Node<NodeFBMNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoisePerlinNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeRidgedNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseRidgedMultiNode({ id, selected, data, type }: NodeProps<Node<NodeRidgedNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseRidgedMultiNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeSpheresNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseSpheresNode({ id, selected, data, type }: NodeProps<Node<NodeSpheresNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseSpheresNode);\r\n","import { NodePropertiesList } from '@awesome-flow/core/components';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo } from 'react';\r\nimport { NodeVoronoiNoiseData } from '../../abstract/node-props';\r\n\r\nfunction NoiseVoronoiNode({ id, selected, data, type }: NodeProps<Node<NodeVoronoiNoiseData>>) {\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <NodePropertiesList data={data} nodeId={id} />\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(NoiseVoronoiNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodePositionData } from '../../abstract/node-props';\r\n\r\nfunction PositionConstNode({ id, selected, data, type }: NodeProps<Node<NodePositionData>>) {\r\n const position = data.position ?? { x: 0, y: 0, z: 0 };\r\n\r\n const [x, setX] = useState(position.x);\r\n const [y, setY] = useState(position.y);\r\n const [z, setZ] = useState(position.z);\r\n\r\n const updateNodeData = useUpdateNodeData<NodePositionData>();\r\n\r\n useEffect(() => {\r\n const position = { x, y, z };\r\n\r\n updateNodeData(id, {\r\n position\r\n });\r\n }, [x, y, z, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionConstNode);\r\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\r\nimport { NodeContainer } from '@awesome-flow/core/layout';\r\nimport { Group, NumberInput, Stack } from '@mantine/core';\r\nimport { Node, NodeProps } from '@xyflow/react';\r\nimport { memo, useEffect, useState } from 'react';\r\nimport { NodeGridData } from '../../abstract/node-props';\r\n\r\nfunction PositionGridNode({ id, selected, data, type }: NodeProps<Node<NodeGridData>>) {\r\n const [x, setX] = useState(data.center?.x);\r\n const [y, setY] = useState(data.center?.y);\r\n const [z, setZ] = useState(data.center?.z);\r\n\r\n const [radius, setRadius] = useState(data.radius);\r\n\r\n const updateNodeData = useUpdateNodeData<NodeGridData>();\r\n\r\n useEffect(() => {\r\n updateNodeData(id, {\r\n center: { x, y, z },\r\n radius\r\n });\r\n }, [x, y, z, radius, id, updateNodeData]);\r\n\r\n return (\r\n <NodeContainer id={id} selected={selected} data={data} type={type}>\r\n <Stack>\r\n <Group>\r\n x: <NumberInput size=\"xs\" w={100} value={x} onChange={(e) => setX(Number(e))} />\r\n </Group>\r\n <Group>\r\n y: <NumberInput size=\"xs\" w={100} value={y} onChange={(e) => setY(Number(e))} />\r\n </Group>\r\n <Group>\r\n z: <NumberInput size=\"xs\" w={100} value={z} onChange={(e) => setZ(Number(e))} />\r\n </Group>\r\n <Group>\r\n r: <NumberInput size=\"xs\" w={100} value={radius} onChange={(e) => setRadius(Number(e))} />\r\n </Group>\r\n </Stack>\r\n </NodeContainer>\r\n );\r\n}\r\n\r\nexport default memo(PositionGridNode);\r\n"],"mappings":"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"}
|
package/dist/nodes/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../abstract-
|
|
2
|
+
const require_abstract = require('../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
const require_generators = require('../generators-BF_0y3pd.cjs');
|
|
4
4
|
const require_groups = require('../groups-DF2FTSBC.cjs');
|
|
5
5
|
const require_modifiers = require('../modifiers-BLV074OG.cjs');
|
package/dist/nodes/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as noise_output_node_default, R as positions_logger_node_default, V as noise_logger_node_default, z as noise_texture_data_node_default } from "../abstract-
|
|
1
|
+
import { B as noise_output_node_default, R as positions_logger_node_default, V as noise_logger_node_default, z as noise_texture_data_node_default } from "../abstract-DQyDnRw-.mjs";
|
|
2
2
|
import { a as noise_ridgedmulti_node_default, c as noise_const_node_default, i as noise_spheres_node_default, l as noise_checkerboard_node_default, n as position_const_node_default, o as noise_perlin_node_default, r as noise_voronoi_node_default, s as noise_cylinders_node_default, t as position_grid_node_default, u as noise_billow_node_default } from "../generators-DSwgPqW2.mjs";
|
|
3
3
|
import { t as module_group_node_default } from "../groups-BiuJL0DE.mjs";
|
|
4
4
|
import { a as noise_exponent_node_default, c as noise_clamp_node_default, i as noise_invert_node_default, l as noise_abs_node_default, n as noise_scale_bias_node_default, o as noise_curve_node_default, r as noise_normalize_node_default, s as noise_combine_node_default, t as noise_terrace_node_default } from "../modifiers-I7YC0m3o.mjs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseLoggerNode = require_abstract.noise_logger_node_default;
|
|
5
5
|
exports.NoiseOutputNode = require_abstract.noise_output_node_default;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { B as noise_output_node_default, R as positions_logger_node_default, V as noise_logger_node_default, z as noise_texture_data_node_default } from "../../abstract-
|
|
1
|
+
import { B as noise_output_node_default, R as positions_logger_node_default, V as noise_logger_node_default, z as noise_texture_data_node_default } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { noise_logger_node_default as NoiseLoggerNode, noise_output_node_default as NoiseOutputNode, noise_texture_data_node_default as NoiseTextureDataNode, positions_logger_node_default as PositionsLoggerNode };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseBillowNodeTemplateFactory = require_abstract.NoiseBillowNodeTemplateFactory;
|
|
5
5
|
exports.NoiseCheckerboardNodeTemplateFactory = require_abstract.NoiseCheckerboardNodeTemplateFactory;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { A as NoiseSpheresNodeTemplateFactory, D as PositionGridNodeTemplateFactory, F as NoiseCheckerboardNodeTemplateFactory, I as NoiseBillowNodeTemplateFactory, M as NoisePerlinNodeTemplateFactory, N as NoiseCylindersNodeTemplateFactory, O as PositionConstNodeTemplateFactory, P as NoiseConstNodeTemplateFactory, j as NoiseRidgedMultiNodeTemplateFactory, k as NoiseVoronoiNodeTemplateFactory } from "../../abstract-
|
|
1
|
+
import { A as NoiseSpheresNodeTemplateFactory, D as PositionGridNodeTemplateFactory, F as NoiseCheckerboardNodeTemplateFactory, I as NoiseBillowNodeTemplateFactory, M as NoisePerlinNodeTemplateFactory, N as NoiseCylindersNodeTemplateFactory, O as PositionConstNodeTemplateFactory, P as NoiseConstNodeTemplateFactory, j as NoiseRidgedMultiNodeTemplateFactory, k as NoiseVoronoiNodeTemplateFactory } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { NoiseBillowNodeTemplateFactory, NoiseCheckerboardNodeTemplateFactory, NoiseConstNodeTemplateFactory, NoiseCylindersNodeTemplateFactory, NoisePerlinNodeTemplateFactory, NoiseRidgedMultiNodeTemplateFactory, NoiseSpheresNodeTemplateFactory, NoiseVoronoiNodeTemplateFactory, PositionConstNodeTemplateFactory, PositionGridNodeTemplateFactory };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.ModuleGroupNodeTemplateFactory = require_abstract.ModuleGroupNodeTemplateFactory;
|
package/dist/templates/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../abstract-
|
|
2
|
+
const require_abstract = require('../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
require('./generators/index.cjs');
|
|
4
4
|
require('./groups/index.cjs');
|
|
5
5
|
require('./modifiers/index.cjs');
|
package/dist/templates/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as NoiseSpheresNodeTemplateFactory, D as PositionGridNodeTemplateFactory, E as ModuleGroupNodeTemplateFactory, F as NoiseCheckerboardNodeTemplateFactory, I as NoiseBillowNodeTemplateFactory, M as NoisePerlinNodeTemplateFactory, N as NoiseCylindersNodeTemplateFactory, O as PositionConstNodeTemplateFactory, P as NoiseConstNodeTemplateFactory, T as NoiseAbsNodeTemplateFactory, _ as NoiseNormalizeNodeTemplateFactory, a as NoiseTranslatePointNodeTemplateFactory, b as NoiseCurveNodeTemplateFactory, c as NoiseDisplaceNodeTemplateFactory, d as PositionLoggerNodeTemplateFactory, f as NoiseTextureDataTemplateFactory, g as NoiseScaleBiasNodeTemplateFactory, h as NoiseTerraceNodeTemplateFactory, i as NoiseTurbulenceNodeTemplateFactory, j as NoiseRidgedMultiNodeTemplateFactory, k as NoiseVoronoiNodeTemplateFactory, l as NoiseSelectNodeTemplateFactory, m as NoiseLoggerNodeTemplateFactory, o as NoiseScalePointNodeTemplateFactory, p as NoiseOutputNodeTemplateFactory, s as NoiseRotatePointNodeTemplateFactory, u as NoiseBlendNodeTemplateFactory, v as NoiseInvertNodeTemplateFactory, w as NoiseClampNodeTemplateFactory, x as NoiseCombineNodeTemplateFactory, y as NoiseExponentNodeTemplateFactory } from "../abstract-
|
|
1
|
+
import { A as NoiseSpheresNodeTemplateFactory, D as PositionGridNodeTemplateFactory, E as ModuleGroupNodeTemplateFactory, F as NoiseCheckerboardNodeTemplateFactory, I as NoiseBillowNodeTemplateFactory, M as NoisePerlinNodeTemplateFactory, N as NoiseCylindersNodeTemplateFactory, O as PositionConstNodeTemplateFactory, P as NoiseConstNodeTemplateFactory, T as NoiseAbsNodeTemplateFactory, _ as NoiseNormalizeNodeTemplateFactory, a as NoiseTranslatePointNodeTemplateFactory, b as NoiseCurveNodeTemplateFactory, c as NoiseDisplaceNodeTemplateFactory, d as PositionLoggerNodeTemplateFactory, f as NoiseTextureDataTemplateFactory, g as NoiseScaleBiasNodeTemplateFactory, h as NoiseTerraceNodeTemplateFactory, i as NoiseTurbulenceNodeTemplateFactory, j as NoiseRidgedMultiNodeTemplateFactory, k as NoiseVoronoiNodeTemplateFactory, l as NoiseSelectNodeTemplateFactory, m as NoiseLoggerNodeTemplateFactory, o as NoiseScalePointNodeTemplateFactory, p as NoiseOutputNodeTemplateFactory, s as NoiseRotatePointNodeTemplateFactory, u as NoiseBlendNodeTemplateFactory, v as NoiseInvertNodeTemplateFactory, w as NoiseClampNodeTemplateFactory, x as NoiseCombineNodeTemplateFactory, y as NoiseExponentNodeTemplateFactory } from "../abstract-DQyDnRw-.mjs";
|
|
2
2
|
import "./generators/index.mjs";
|
|
3
3
|
import "./groups/index.mjs";
|
|
4
4
|
import "./modifiers/index.mjs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseAbsNodeTemplateFactory = require_abstract.NoiseAbsNodeTemplateFactory;
|
|
5
5
|
exports.NoiseClampNodeTemplateFactory = require_abstract.NoiseClampNodeTemplateFactory;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { T as NoiseAbsNodeTemplateFactory, _ as NoiseNormalizeNodeTemplateFactory, b as NoiseCurveNodeTemplateFactory, g as NoiseScaleBiasNodeTemplateFactory, h as NoiseTerraceNodeTemplateFactory, v as NoiseInvertNodeTemplateFactory, w as NoiseClampNodeTemplateFactory, x as NoiseCombineNodeTemplateFactory, y as NoiseExponentNodeTemplateFactory } from "../../abstract-
|
|
1
|
+
import { T as NoiseAbsNodeTemplateFactory, _ as NoiseNormalizeNodeTemplateFactory, b as NoiseCurveNodeTemplateFactory, g as NoiseScaleBiasNodeTemplateFactory, h as NoiseTerraceNodeTemplateFactory, v as NoiseInvertNodeTemplateFactory, w as NoiseClampNodeTemplateFactory, x as NoiseCombineNodeTemplateFactory, y as NoiseExponentNodeTemplateFactory } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { NoiseAbsNodeTemplateFactory, NoiseClampNodeTemplateFactory, NoiseCombineNodeTemplateFactory, NoiseCurveNodeTemplateFactory, NoiseExponentNodeTemplateFactory, NoiseInvertNodeTemplateFactory, NoiseNormalizeNodeTemplateFactory, NoiseScaleBiasNodeTemplateFactory, NoiseTerraceNodeTemplateFactory };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseLoggerNodeTemplateFactory = require_abstract.NoiseLoggerNodeTemplateFactory;
|
|
5
5
|
exports.NoiseOutputNodeTemplateFactory = require_abstract.NoiseOutputNodeTemplateFactory;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { d as PositionLoggerNodeTemplateFactory, f as NoiseTextureDataTemplateFactory, m as NoiseLoggerNodeTemplateFactory, p as NoiseOutputNodeTemplateFactory } from "../../abstract-
|
|
1
|
+
import { d as PositionLoggerNodeTemplateFactory, f as NoiseTextureDataTemplateFactory, m as NoiseLoggerNodeTemplateFactory, p as NoiseOutputNodeTemplateFactory } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { NoiseLoggerNodeTemplateFactory, NoiseOutputNodeTemplateFactory, NoiseTextureDataTemplateFactory, PositionLoggerNodeTemplateFactory };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseBlendNodeTemplateFactory = require_abstract.NoiseBlendNodeTemplateFactory;
|
|
5
5
|
exports.NoiseSelectNodeTemplateFactory = require_abstract.NoiseSelectNodeTemplateFactory;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { l as NoiseSelectNodeTemplateFactory, u as NoiseBlendNodeTemplateFactory } from "../../abstract-
|
|
1
|
+
import { l as NoiseSelectNodeTemplateFactory, u as NoiseBlendNodeTemplateFactory } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { NoiseBlendNodeTemplateFactory, NoiseSelectNodeTemplateFactory };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_abstract = require('../../abstract-
|
|
2
|
+
const require_abstract = require('../../abstract-ed4ZdB8H.cjs');
|
|
3
3
|
|
|
4
4
|
exports.NoiseDisplaceNodeTemplateFactory = require_abstract.NoiseDisplaceNodeTemplateFactory;
|
|
5
5
|
exports.NoiseRotatePointNodeTemplateFactory = require_abstract.NoiseRotatePointNodeTemplateFactory;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as NoiseTranslatePointNodeTemplateFactory, c as NoiseDisplaceNodeTemplateFactory, i as NoiseTurbulenceNodeTemplateFactory, o as NoiseScalePointNodeTemplateFactory, s as NoiseRotatePointNodeTemplateFactory } from "../../abstract-
|
|
1
|
+
import { a as NoiseTranslatePointNodeTemplateFactory, c as NoiseDisplaceNodeTemplateFactory, i as NoiseTurbulenceNodeTemplateFactory, o as NoiseScalePointNodeTemplateFactory, s as NoiseRotatePointNodeTemplateFactory } from "../../abstract-DQyDnRw-.mjs";
|
|
2
2
|
|
|
3
3
|
export { NoiseDisplaceNodeTemplateFactory, NoiseRotatePointNodeTemplateFactory, NoiseScalePointNodeTemplateFactory, NoiseTranslatePointNodeTemplateFactory, NoiseTurbulenceNodeTemplateFactory };
|