@awesome-flow/noise 0.12.0 → 0.14.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.
Files changed (159) hide show
  1. package/dist/abstract/index.cjs +1 -1
  2. package/dist/abstract/index.d.cts +2 -2
  3. package/dist/abstract/index.d.mts +2 -2
  4. package/dist/abstract/index.mjs +1 -1
  5. package/dist/{abstract-DQyDnRw-.mjs → abstract-2JON8rzd.mjs} +553 -320
  6. package/dist/abstract-2JON8rzd.mjs.map +1 -0
  7. package/dist/{abstract-ed4ZdB8H.cjs → abstract-B_pVp8sm.cjs} +553 -320
  8. package/dist/abstract-B_pVp8sm.cjs.map +1 -0
  9. package/dist/generators-1ateTPw4.cjs +697 -0
  10. package/dist/generators-1ateTPw4.cjs.map +1 -0
  11. package/dist/generators-C4lV1Acx.mjs +638 -0
  12. package/dist/generators-C4lV1Acx.mjs.map +1 -0
  13. package/dist/{groups-DF2FTSBC.cjs → groups-Bd_YqsSe.cjs} +10 -2
  14. package/dist/groups-Bd_YqsSe.cjs.map +1 -0
  15. package/dist/{groups-BiuJL0DE.mjs → groups-QnZwWs5K.mjs} +10 -2
  16. package/dist/groups-QnZwWs5K.mjs.map +1 -0
  17. package/dist/{index-DQ5-4LVA.d.mts → index-BF4lvH9m.d.mts} +7 -7
  18. package/dist/{index-Bxg8IB-v.d.cts.map → index-BF4lvH9m.d.mts.map} +1 -1
  19. package/dist/index-BbHM1kxc.d.cts.map +1 -1
  20. package/dist/index-Bgmf14d3.d.cts +43 -0
  21. package/dist/{index-BwLhWefF.d.cts.map → index-Bgmf14d3.d.cts.map} +1 -1
  22. package/dist/{index-BhJiS2YS.d.mts → index-Bq5dqoNQ.d.mts} +109 -143
  23. package/dist/index-Bq5dqoNQ.d.mts.map +1 -0
  24. package/dist/{index-CDJdO0Cl.d.mts → index-BvYuyqpe.d.mts} +5 -5
  25. package/dist/index-BvYuyqpe.d.mts.map +1 -0
  26. package/dist/index-C0hF9uhX.d.mts.map +1 -1
  27. package/dist/{index-Bxg8IB-v.d.cts → index-CBbjO4LA.d.cts} +7 -7
  28. package/dist/{index-DQ5-4LVA.d.mts.map → index-CBbjO4LA.d.cts.map} +1 -1
  29. package/dist/{index-BGF1mgi8.d.mts → index-CYv9fQPE.d.mts} +23 -23
  30. package/dist/{index-BGF1mgi8.d.mts.map → index-CYv9fQPE.d.mts.map} +1 -1
  31. package/dist/{index-NvNXQIOG.d.mts → index-C_YCQJAR.d.mts} +21 -21
  32. package/dist/{index-CiHIo5l6.d.cts.map → index-C_YCQJAR.d.mts.map} +1 -1
  33. package/dist/{index-CiHIo5l6.d.cts → index-Cq4cX7_1.d.cts} +21 -21
  34. package/dist/{index-NvNXQIOG.d.mts.map → index-Cq4cX7_1.d.cts.map} +1 -1
  35. package/dist/{index-Rk69VHHb.d.cts → index-CsaYSseO.d.cts} +23 -23
  36. package/dist/{index-Rk69VHHb.d.cts.map → index-CsaYSseO.d.cts.map} +1 -1
  37. package/dist/{index-B09XEo3I.d.cts → index-DD7w4U2L.d.cts} +109 -143
  38. package/dist/index-DD7w4U2L.d.cts.map +1 -0
  39. package/dist/{index-CBvjQM3o.d.cts → index-DGy2GCvU.d.cts} +5 -5
  40. package/dist/index-DGy2GCvU.d.cts.map +1 -0
  41. package/dist/{index-BgWB8f25.d.cts → index-DNxXxhXh.d.cts} +13 -13
  42. package/dist/{index-BgWB8f25.d.cts.map → index-DNxXxhXh.d.cts.map} +1 -1
  43. package/dist/index-PUkjAp6D.d.mts +43 -0
  44. package/dist/{index-CkAu8Jje.d.mts.map → index-PUkjAp6D.d.mts.map} +1 -1
  45. package/dist/{index-aAcFA6x8.d.mts → index-iThYgph-.d.mts} +13 -13
  46. package/dist/{index-aAcFA6x8.d.mts.map → index-iThYgph-.d.mts.map} +1 -1
  47. package/dist/modifiers-Buu-9KXs.cjs +721 -0
  48. package/dist/modifiers-Buu-9KXs.cjs.map +1 -0
  49. package/dist/modifiers-DQcS3gLS.mjs +668 -0
  50. package/dist/modifiers-DQcS3gLS.mjs.map +1 -0
  51. package/dist/{module-group-template-CE4b0J24.d.cts → module-group-template-C6pYnpOd.d.cts} +3 -4
  52. package/dist/module-group-template-C6pYnpOd.d.cts.map +1 -0
  53. package/dist/{module-group-template-D5doDEoa.d.mts → module-group-template-DFt0ldxW.d.mts} +3 -4
  54. package/dist/module-group-template-DFt0ldxW.d.mts.map +1 -0
  55. package/dist/modules/index.cjs +2 -0
  56. package/dist/modules/index.cjs.map +1 -1
  57. package/dist/modules/index.mjs +2 -0
  58. package/dist/modules/index.mjs.map +1 -1
  59. package/dist/node-props-CoXzPLD6.d.cts.map +1 -1
  60. package/dist/node-props-GcUBDDY0.d.mts.map +1 -1
  61. package/dist/nodes/generators/index.cjs +1 -1
  62. package/dist/nodes/generators/index.d.cts +1 -1
  63. package/dist/nodes/generators/index.d.mts +1 -1
  64. package/dist/nodes/generators/index.mjs +1 -1
  65. package/dist/nodes/groups/index.cjs +1 -1
  66. package/dist/nodes/groups/index.d.cts +1 -1
  67. package/dist/nodes/groups/index.d.mts +1 -1
  68. package/dist/nodes/groups/index.mjs +1 -1
  69. package/dist/nodes/index.cjs +6 -6
  70. package/dist/nodes/index.d.cts +6 -6
  71. package/dist/nodes/index.d.mts +6 -6
  72. package/dist/nodes/index.mjs +6 -6
  73. package/dist/nodes/modifiers/index.cjs +1 -1
  74. package/dist/nodes/modifiers/index.d.cts +1 -1
  75. package/dist/nodes/modifiers/index.d.mts +1 -1
  76. package/dist/nodes/modifiers/index.mjs +1 -1
  77. package/dist/nodes/output/index.cjs +1 -1
  78. package/dist/nodes/output/index.d.cts +1 -1
  79. package/dist/nodes/output/index.d.mts +1 -1
  80. package/dist/nodes/output/index.mjs +1 -1
  81. package/dist/nodes/selectors/index.cjs +1 -1
  82. package/dist/nodes/selectors/index.d.cts +1 -1
  83. package/dist/nodes/selectors/index.d.mts +1 -1
  84. package/dist/nodes/selectors/index.mjs +1 -1
  85. package/dist/nodes/transformers/index.cjs +1 -1
  86. package/dist/nodes/transformers/index.d.cts +1 -1
  87. package/dist/nodes/transformers/index.d.mts +1 -1
  88. package/dist/nodes/transformers/index.mjs +1 -1
  89. package/dist/{position-grid-template-FY_7BJcV.d.mts → position-grid-template-BDMWIHUn.d.mts} +9 -10
  90. package/dist/position-grid-template-BDMWIHUn.d.mts.map +1 -0
  91. package/dist/{position-grid-template-Da_-z-NN.d.cts → position-grid-template-DckkGHAX.d.cts} +9 -10
  92. package/dist/position-grid-template-DckkGHAX.d.cts.map +1 -0
  93. package/dist/selectors-BC2RDFCB.mjs +178 -0
  94. package/dist/selectors-BC2RDFCB.mjs.map +1 -0
  95. package/dist/selectors-CRgS2O53.cjs +189 -0
  96. package/dist/selectors-CRgS2O53.cjs.map +1 -0
  97. package/dist/templates/generators/index.cjs +1 -1
  98. package/dist/templates/generators/index.d.cts +1 -1
  99. package/dist/templates/generators/index.d.mts +1 -1
  100. package/dist/templates/generators/index.mjs +1 -1
  101. package/dist/templates/groups/index.cjs +1 -1
  102. package/dist/templates/groups/index.d.cts +1 -1
  103. package/dist/templates/groups/index.d.mts +1 -1
  104. package/dist/templates/groups/index.mjs +1 -1
  105. package/dist/templates/index.cjs +1 -1
  106. package/dist/templates/index.d.cts +3 -3
  107. package/dist/templates/index.d.mts +3 -3
  108. package/dist/templates/index.mjs +1 -1
  109. package/dist/templates/modifiers/index.cjs +1 -1
  110. package/dist/templates/modifiers/index.d.cts +1 -1
  111. package/dist/templates/modifiers/index.d.mts +1 -1
  112. package/dist/templates/modifiers/index.mjs +1 -1
  113. package/dist/templates/output/index.cjs +1 -1
  114. package/dist/templates/output/index.d.cts +1 -1
  115. package/dist/templates/output/index.d.mts +1 -1
  116. package/dist/templates/output/index.mjs +1 -1
  117. package/dist/templates/selectors/index.cjs +1 -1
  118. package/dist/templates/selectors/index.d.cts +1 -1
  119. package/dist/templates/selectors/index.d.mts +1 -1
  120. package/dist/templates/selectors/index.mjs +1 -1
  121. package/dist/templates/transformers/index.cjs +1 -1
  122. package/dist/templates/transformers/index.d.cts +1 -1
  123. package/dist/templates/transformers/index.d.mts +1 -1
  124. package/dist/templates/transformers/index.mjs +1 -1
  125. package/dist/transformers-BvmiSDwZ.mjs +443 -0
  126. package/dist/transformers-BvmiSDwZ.mjs.map +1 -0
  127. package/dist/transformers-ob-K3S2I.cjs +472 -0
  128. package/dist/transformers-ob-K3S2I.cjs.map +1 -0
  129. package/package.json +27 -37
  130. package/dist/abstract-DQyDnRw-.mjs.map +0 -1
  131. package/dist/abstract-ed4ZdB8H.cjs.map +0 -1
  132. package/dist/generators-BF_0y3pd.cjs +0 -337
  133. package/dist/generators-BF_0y3pd.cjs.map +0 -1
  134. package/dist/generators-DSwgPqW2.mjs +0 -278
  135. package/dist/generators-DSwgPqW2.mjs.map +0 -1
  136. package/dist/groups-BiuJL0DE.mjs.map +0 -1
  137. package/dist/groups-DF2FTSBC.cjs.map +0 -1
  138. package/dist/index-B09XEo3I.d.cts.map +0 -1
  139. package/dist/index-BhJiS2YS.d.mts.map +0 -1
  140. package/dist/index-BwLhWefF.d.cts +0 -43
  141. package/dist/index-CBvjQM3o.d.cts.map +0 -1
  142. package/dist/index-CDJdO0Cl.d.mts.map +0 -1
  143. package/dist/index-CkAu8Jje.d.mts +0 -43
  144. package/dist/modifiers-BLV074OG.cjs +0 -406
  145. package/dist/modifiers-BLV074OG.cjs.map +0 -1
  146. package/dist/modifiers-I7YC0m3o.mjs +0 -353
  147. package/dist/modifiers-I7YC0m3o.mjs.map +0 -1
  148. package/dist/module-group-template-CE4b0J24.d.cts.map +0 -1
  149. package/dist/module-group-template-D5doDEoa.d.mts.map +0 -1
  150. package/dist/position-grid-template-Da_-z-NN.d.cts.map +0 -1
  151. package/dist/position-grid-template-FY_7BJcV.d.mts.map +0 -1
  152. package/dist/selectors-35pwVJ7Z.cjs +0 -92
  153. package/dist/selectors-35pwVJ7Z.cjs.map +0 -1
  154. package/dist/selectors-BHPJTidb.mjs +0 -81
  155. package/dist/selectors-BHPJTidb.mjs.map +0 -1
  156. package/dist/transformers-D9B9IjR_.mjs +0 -197
  157. package/dist/transformers-D9B9IjR_.mjs.map +0 -1
  158. package/dist/transformers-D9SfPky8.cjs +0 -226
  159. package/dist/transformers-D9SfPky8.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modifiers-Buu-9KXs.cjs","names":["BasicNodeData","NodeContainer","Node","NodeProps","memo","NoiseAbsNode","t0","$","_c","id","selected","data","type","t1","useUpdateNodeData","NodeContainer","Group","NumberInput","Stack","Node","NodeProps","memo","useEffect","useState","NodeClampNoiseData","NoiseClampNode","t0","$","_c","id","selected","data","type","lowerBound","setLowerBound","upperBound","setUpperBound","updateNodeData","t1","t2","t3","Symbol","for","e","Number","t4","t5","e_0","t6","t7","t8","useUpdateNodeData","NodeCombobox","NodeContainer","IconAsterisk","IconChevronLeft","IconChevronRight","IconChevronUp","IconPlus","Node","NodeProps","memo","ReactNode","useCallback","NodeCombineNoiseData","NoiseCombineType","options","Record","add","min","max","multiply","power","NoiseCombineNode","t0","$","_c","id","selected","data","type","updateNodeData","t1","operation","onChange","t2","t3","NodeState","useUpdateNodeData","NodeContainer","ActionIcon","Button","Group","NumberInput","Space","FORM_INDEX","useForm","randomId","IconX","Node","NodeProps","memo","useCallback","useMemo","useState","ControlPoint","NodeCurveNoiseData","NoiseCurveNode","id","selected","data","type","updateNodeData","initialValues","points","length","map","v","input","output","key","values","setValues","form","mode","validateInputOnChange","clearInputErrorOnChange","validate","value","counts","Record","forEach","x","onValuesChange","isValid","fields","item","index","getInputProps","state","edit","removeListItem","insertListItem","useUpdateNodeData","NodeContainer","Group","NumberInput","Stack","Node","NodeProps","memo","useEffect","useState","NodeExponentNoiseData","NoiseExponentNode","t0","$","_c","id","selected","data","type","exponent","setExponent","updateNodeData","t1","t2","t3","Symbol","for","e","Number","t4","t5","BasicNodeData","NodeContainer","Node","NodeProps","memo","NoiseInvertNode","t0","$","_c","id","selected","data","type","t1","useUpdateNodeData","NodeContainer","Group","NumberInput","Stack","Node","NodeProps","memo","useEffect","useState","NodeNormalizeNoiseData","NoiseNormalizeNode","t0","$","_c","id","selected","data","type","intervalStart","setIntervalStart","intervalEnd","setIntervalEnd","updateNodeData","t1","t2","t3","Symbol","for","e","Number","t4","t5","e_0","t6","t7","t8","useUpdateNodeData","NodeContainer","Group","NumberInput","Stack","Node","NodeProps","memo","useEffect","useState","NodeScaleBiasNoiseData","NoiseScaleBiasNode","t0","$","_c","id","selected","data","type","scale","setScale","bias","setBias","updateNodeData","t1","t2","t3","Symbol","for","e","Number","t4","t5","e_0","t6","t7","t8","NodeState","useUpdateNodeData","NodeContainer","ActionIcon","Button","Group","NumberInput","Space","FORM_INDEX","useForm","randomId","IconX","Node","NodeProps","memo","useMemo","NodeTerraceNoiseData","NoiseTerraceNode","t0","$","_c","id","selected","data","type","updateNodeData","t1","points","length","map","_temp","_temp2","initialValues","t2","t3","Symbol","for","t4","mode","validateInputOnChange","clearInputErrorOnChange","form","watch","values","isValid","value","_temp3","validate","t5","state","_","index","key","getInputProps","edit","removeListItem","fields","t6","insertListItem","t7","v_0","v"],"sources":["../src/nodes/modifiers/noise-abs-node.tsx","../src/nodes/modifiers/noise-clamp-node.tsx","../src/nodes/modifiers/noise-combine-node.tsx","../src/nodes/modifiers/noise-curve-node.tsx","../src/nodes/modifiers/noise-exponent-node.tsx","../src/nodes/modifiers/noise-invert-node.tsx","../src/nodes/modifiers/noise-normalize-node.tsx","../src/nodes/modifiers/noise-scale-bias-node.tsx","../src/nodes/modifiers/noise-terrace-node.tsx"],"sourcesContent":["import { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\n\nfunction NoiseAbsNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default memo(NoiseAbsNode);\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useEffect, useState } from 'react';\nimport { NodeClampNoiseData } from '../../abstract/node-props';\n\nfunction NoiseClampNode({ id, selected, data, type }: NodeProps<Node<NodeClampNoiseData>>) {\n const [lowerBound, setLowerBound] = useState(data.lowerBound);\n const [upperBound, setUpperBound] = useState(data.upperBound);\n\n const updateNodeData = useUpdateNodeData<NodeClampNoiseData>();\n\n useEffect(() => {\n updateNodeData(id, { lowerBound, upperBound });\n }, [lowerBound, upperBound, id, updateNodeData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n <NumberInput size=\"xs\" w={100} value={lowerBound} onChange={(e) => setLowerBound(Number(e))} step={0.1} />\n <NumberInput size=\"xs\" w={100} value={upperBound} onChange={(e) => setUpperBound(Number(e))} step={0.1} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseClampNode);\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeCombobox, NodeContainer } from '@awesome-flow/core/layout';\nimport { IconAsterisk, IconChevronLeft, IconChevronRight, IconChevronUp, IconPlus } from '@tabler/icons-react';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, ReactNode, useCallback } from 'react';\nimport { NodeCombineNoiseData } from '../../abstract/node-props';\nimport { NoiseCombineType } from '../../abstract/operations';\n\nconst options: Record<NoiseCombineType, ReactNode | string> = {\n add: <IconPlus />,\n min: <IconChevronLeft />,\n max: <IconChevronRight />,\n multiply: <IconAsterisk />,\n power: <IconChevronUp />\n};\n\nfunction NoiseCombineNode({ id, selected, data, type }: NodeProps<Node<NodeCombineNoiseData>>) {\n const updateNodeData = useUpdateNodeData<NodeCombineNoiseData>();\n\n const onChange = useCallback(\n (operation: NoiseCombineType) => {\n updateNodeData(id, { operation });\n },\n [id, updateNodeData]\n );\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <NodeCombobox options={options} selected={data.operation} onChange={onChange} width={150} />\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseCombineNode);\n","import { NodeState } from '@awesome-flow/core/abstract';\nimport { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { ActionIcon, Button, Group, NumberInput, Space } from '@mantine/core';\nimport { FORM_INDEX, useForm } from '@mantine/form';\nimport { randomId } from '@mantine/hooks';\nimport { IconX } from '@tabler/icons-react';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useCallback, useMemo, useState } from 'react';\nimport { ControlPoint, NodeCurveNoiseData } from '../../abstract/node-props';\n\nfunction NoiseCurveNode({ id, selected, data, type }: NodeProps<Node<NodeCurveNoiseData>>) {\n const updateNodeData = useUpdateNodeData<NodeCurveNoiseData>();\n\n const initialValues = useMemo(() => {\n return data.points?.length\n ? data.points.map((v) => ({ input: v.input, output: v.output, key: randomId() }))\n : [1, 2, 3, 4].map(() => ({ input: 0, output: 0, key: randomId() }));\n }, [data.points]);\n\n const [values, setValues] = useState(initialValues);\n\n const form = useForm<{ points: (ControlPoint & { key: string })[] }>({\n mode: 'uncontrolled',\n initialValues: {\n points: initialValues\n },\n validateInputOnChange: [`points.${FORM_INDEX}.input`],\n clearInputErrorOnChange: true,\n validate: {\n points: {\n input: (value, values) => {\n const counts: Record<number, number> = {};\n\n values.points.forEach((x) => {\n counts[x.input] = (counts[x.input] || 0) + 1;\n });\n\n return counts[value] > 1;\n }\n }\n },\n onValuesChange: useCallback(\n (values) => {\n form.validate();\n\n if (form.isValid()) {\n setValues(values.points);\n updateNodeData(id, { points: values.points.map((v) => ({ input: v.input, output: v.output })) });\n }\n },\n // eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [id, updateNodeData]\n )\n });\n\n const fields = useMemo(\n () =>\n values.map((item, index) => (\n <Group mt=\"xs\" key={item.key}>\n <NumberInput\n size=\"xs\"\n w={100}\n placeholder=\"Input Value\"\n key={form.key(`points.${index}.input`)}\n {...form.getInputProps(`points.${index}.input`)}\n step={0.1}\n />\n <NumberInput\n size=\"xs\"\n w={100}\n placeholder=\"Output Value\"\n key={form.key(`points.${index}.output`)}\n {...form.getInputProps(`points.${index}.output`)}\n step={0.1}\n />\n {data.state === NodeState.edit && values.length > 4 && (\n <ActionIcon color=\"red\" variant=\"outline\" size=\"sm\" onClick={() => form.removeListItem('points', index)}>\n <IconX size=\"1rem\" />\n </ActionIcon>\n )}\n </Group>\n )),\n [data.state, values, form]\n );\n\n return (\n <NodeContainer id={id} selected={selected} type={type} data={data}>\n {fields}\n {data.state === NodeState.edit && (\n <>\n <Space h={10} />\n <Button\n variant=\"outline\"\n size=\"xs\"\n fullWidth\n onClick={() => form.insertListItem('points', { input: 0, output: 0, key: randomId() })}\n >\n Add control point\n </Button>\n </>\n )}\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseCurveNode);\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useEffect, useState } from 'react';\nimport { NodeExponentNoiseData } from '../../abstract/node-props';\n\nfunction NoiseExponentNode({ id, selected, data, type }: NodeProps<Node<NodeExponentNoiseData>>) {\n const [exponent, setExponent] = useState(data.exponent);\n\n const updateNodeData = useUpdateNodeData<NodeExponentNoiseData>();\n\n useEffect(() => {\n updateNodeData(id, { exponent });\n }, [id, exponent, updateNodeData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n Exponent:\n <NumberInput\n size=\"xs\"\n value={exponent}\n onChange={(e) => setExponent(Number(e))}\n step={0.1}\n // min={1}\n />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseExponentNode);\n","import { BasicNodeData } from '@awesome-flow/core/abstract';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\n\nfunction NoiseInvertNode({ id, selected, data, type }: NodeProps<Node<BasicNodeData>>) {\n return <NodeContainer id={id} selected={selected} data={data} type={type} />;\n}\n\nexport default memo(NoiseInvertNode);\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useEffect, useState } from 'react';\nimport { NodeNormalizeNoiseData } from '../../abstract/node-props';\n\nfunction NoiseNormalizeNode({ id, selected, data, type }: NodeProps<Node<NodeNormalizeNoiseData>>) {\n const [intervalStart, setIntervalStart] = useState(data.intervalStart);\n const [intervalEnd, setIntervalEnd] = useState(data.intervalEnd);\n\n const updateNodeData = useUpdateNodeData<NodeNormalizeNoiseData>();\n\n useEffect(() => {\n updateNodeData(id, { intervalStart, intervalEnd });\n }, [id, intervalStart, intervalEnd, updateNodeData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n <NumberInput size=\"xs\" w={100} value={intervalStart} onChange={(e) => setIntervalStart(Number(e))} />\n <NumberInput size=\"xs\" w={100} value={intervalEnd} onChange={(e) => setIntervalEnd(Number(e))} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseNormalizeNode);\n","import { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { Group, NumberInput, Stack } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useEffect, useState } from 'react';\nimport { NodeScaleBiasNoiseData } from '../../abstract/node-props';\n\nfunction NoiseScaleBiasNode({ id, selected, data, type }: NodeProps<Node<NodeScaleBiasNoiseData>>) {\n const [scale, setScale] = useState(data.scale);\n const [bias, setBias] = useState(data.bias);\n\n const updateNodeData = useUpdateNodeData<NodeScaleBiasNoiseData>();\n\n useEffect(() => {\n updateNodeData(id, { scale, bias });\n }, [id, scale, bias, updateNodeData]);\n\n return (\n <NodeContainer id={id} selected={selected} data={data} type={type}>\n <Stack>\n <Group>\n Scale:\n <NumberInput size=\"xs\" w={100} value={scale} onChange={(e) => setScale(Number(e))} step={0.1} />\n </Group>\n <Group>\n Bias:\n <NumberInput size=\"xs\" w={100} value={bias} onChange={(e) => setBias(Number(e))} step={0.1} />\n </Group>\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(NoiseScaleBiasNode);\n","import { NodeState } from '@awesome-flow/core/abstract';\nimport { useUpdateNodeData } from '@awesome-flow/core/hooks';\nimport { NodeContainer } from '@awesome-flow/core/layout';\nimport { ActionIcon, Button, Group, NumberInput, Space } from '@mantine/core';\nimport { FORM_INDEX, useForm } from '@mantine/form';\nimport { randomId } from '@mantine/hooks';\nimport { IconX } from '@tabler/icons-react';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo, useMemo } from 'react';\nimport { NodeTerraceNoiseData } from '../../abstract/node-props';\n\nfunction NoiseTerraceNode({ id, selected, data, type }: NodeProps<Node<NodeTerraceNoiseData>>) {\n const updateNodeData = useUpdateNodeData<NodeTerraceNoiseData>();\n\n const initialValues = useMemo(\n () =>\n data.points?.length\n ? data.points.map((v) => ({ value: v, key: randomId() }))\n : [1, 2].map(() => ({ value: 0, key: randomId() })),\n [data.points]\n );\n\n const form = useForm<{ points: { value: number; key: string }[] }>({\n mode: 'uncontrolled',\n initialValues: {\n points: initialValues\n },\n validateInputOnChange: [`points.${FORM_INDEX}.input`],\n clearInputErrorOnChange: true\n });\n\n form.watch('points', (values) => {\n if (form.isValid()) {\n const points = values.value.map((v) => v.value);\n updateNodeData(id, { points });\n }\n\n form.validate();\n });\n\n const fields = useMemo(\n () =>\n form.values.points.map((_, index) => (\n <Group mt=\"xs\" key={index}>\n <NumberInput\n size=\"xs\"\n placeholder=\"Input Value\"\n key={form.key(`points.${index}.value`)}\n {...form.getInputProps(`points.${index}.value`)}\n step={0.1}\n />\n {data.state === NodeState.edit && form.values.points.length > 2 && (\n <ActionIcon color=\"red\" variant=\"outline\" size=\"sm\" onClick={() => form.removeListItem('points', index)}>\n <IconX size=\"1rem\" />\n </ActionIcon>\n )}\n </Group>\n )),\n [form, data.state]\n );\n\n return (\n <>\n <NodeContainer id={id} selected={selected} type={type} data={data}>\n {fields}\n {data.state === NodeState.edit && (\n <>\n <Space h={10} />\n <Button\n variant=\"outline\"\n size=\"xs\"\n fullWidth\n onClick={() => form.insertListItem('points', { value: 0, key: randomId() })}\n >\n Add control point\n </Button>\n </>\n )}\n </NodeContainer>\n </>\n );\n}\n\nexport default memo(NoiseTerraceNode);\n"],"mappings":"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"}