@babylonjs/node-editor 7.25.2 → 7.26.1
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.
@@ -316,8 +316,12 @@ import { CurveBlock } from "@babylonjs/core/Materials/Node/Blocks/curveBlock";
|
|
316
316
|
import { PrePassTextureBlock } from "@babylonjs/core/Materials/Node/Blocks/Input/prePassTextureBlock";
|
317
317
|
import { NodeMaterialTeleportInBlock } from "@babylonjs/core/Materials/Node/Blocks/Teleport/teleportInBlock";
|
318
318
|
import { NodeMaterialTeleportOutBlock } from "@babylonjs/core/Materials/Node/Blocks/Teleport/teleportOutBlock";
|
319
|
+
import { ColorConverterBlock } from "@babylonjs/core/Materials/Node/Blocks/colorConverterBlock";
|
320
|
+
import { LoopBlock } from "@babylonjs/core/Materials/Node/Blocks/loopBlock";
|
321
|
+
import { StorageReadBlock } from "@babylonjs/core/Materials/Node/Blocks/storageReadBlock";
|
322
|
+
import { StorageWriteBlock } from "@babylonjs/core/Materials/Node/Blocks/storageWriteBlock";
|
319
323
|
export class BlockTools {
|
320
|
-
static GetBlockFromString(data: string, scene: Scene, nodeMaterial: NodeMaterial): NodeMaterialTeleportInBlock | NodeMaterialTeleportOutBlock | HeightToNormalBlock | ElbowBlock | TwirlBlock | VoronoiNoiseBlock | ScreenSpaceBlock | CloudBlock | MatrixBuilderBlock | DesaturateBlock | RefractBlock | ReflectBlock | DerivativeBlock | Rotate2dBlock | NormalBlendBlock | WorleyNoise3DBlock | SimplexPerlin3DBlock | BonesBlock | InstancesBlock | MorphTargetsBlock | DiscardBlock | PrePassTextureBlock | ImageProcessingBlock | ColorMergerBlock | VectorMergerBlock | ColorSplitterBlock | VectorSplitterBlock | TextureBlock | ReflectionTextureBlock | LightBlock | FogBlock | VertexOutputBlock | FragmentOutputBlock | PrePassOutputBlock | AddBlock | ClampBlock | ScaleBlock | CrossBlock | DotBlock | PowBlock | MultiplyBlock | TransformBlock | TrigonometryBlock | RemapBlock | NormalizeBlock | FresnelBlock | LerpBlock | NLerpBlock | DivideBlock | SubtractBlock | ModBlock | StepBlock | SmoothStepBlock | OneMinusBlock | ReciprocalBlock | ViewDirectionBlock | LightInformationBlock | MaxBlock | MinBlock | LengthBlock | DistanceBlock | NegateBlock | PerturbNormalBlock | TBNBlock | RandomNumberBlock | ReplaceColorBlock | PosterizeBlock | ArcTan2Block | GradientBlock | FrontFacingBlock | MeshAttributeExistsBlock | WaveBlock | InputBlock | PBRMetallicRoughnessBlock | SheenBlock | AnisotropyBlock | ReflectionBlock | ClearCoatBlock | RefractionBlock | SubSurfaceBlock | CurrentScreenBlock | ParticleTextureBlock | ParticleRampGradientBlock | ParticleBlendMultiplyBlock | FragCoordBlock | ScreenSizeBlock | SceneDepthBlock | ConditionalBlock | ImageSourceBlock | ClipPlanesBlock | FragDepthBlock | ShadowMapBlock | TriPlanarBlock | MatrixTransposeBlock | MatrixDeterminantBlock | CurveBlock | null;
|
324
|
+
static GetBlockFromString(data: string, scene: Scene, nodeMaterial: NodeMaterial): StorageWriteBlock | StorageReadBlock | LoopBlock | ColorConverterBlock | NodeMaterialTeleportInBlock | NodeMaterialTeleportOutBlock | HeightToNormalBlock | ElbowBlock | TwirlBlock | VoronoiNoiseBlock | ScreenSpaceBlock | CloudBlock | MatrixBuilderBlock | DesaturateBlock | RefractBlock | ReflectBlock | DerivativeBlock | Rotate2dBlock | NormalBlendBlock | WorleyNoise3DBlock | SimplexPerlin3DBlock | BonesBlock | InstancesBlock | MorphTargetsBlock | DiscardBlock | PrePassTextureBlock | ImageProcessingBlock | ColorMergerBlock | VectorMergerBlock | ColorSplitterBlock | VectorSplitterBlock | TextureBlock | ReflectionTextureBlock | LightBlock | FogBlock | VertexOutputBlock | FragmentOutputBlock | PrePassOutputBlock | AddBlock | ClampBlock | ScaleBlock | CrossBlock | DotBlock | PowBlock | MultiplyBlock | TransformBlock | TrigonometryBlock | RemapBlock | NormalizeBlock | FresnelBlock | LerpBlock | NLerpBlock | DivideBlock | SubtractBlock | ModBlock | StepBlock | SmoothStepBlock | OneMinusBlock | ReciprocalBlock | ViewDirectionBlock | LightInformationBlock | MaxBlock | MinBlock | LengthBlock | DistanceBlock | NegateBlock | PerturbNormalBlock | TBNBlock | RandomNumberBlock | ReplaceColorBlock | PosterizeBlock | ArcTan2Block | GradientBlock | FrontFacingBlock | MeshAttributeExistsBlock | WaveBlock | InputBlock | PBRMetallicRoughnessBlock | SheenBlock | AnisotropyBlock | ReflectionBlock | ClearCoatBlock | RefractionBlock | SubSurfaceBlock | CurrentScreenBlock | ParticleTextureBlock | ParticleRampGradientBlock | ParticleBlendMultiplyBlock | FragCoordBlock | ScreenSizeBlock | SceneDepthBlock | ConditionalBlock | ImageSourceBlock | ClipPlanesBlock | FragDepthBlock | ShadowMapBlock | TriPlanarBlock | MatrixTransposeBlock | MatrixDeterminantBlock | CurveBlock | null;
|
321
325
|
static GetColorFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): string;
|
322
326
|
static GetConnectionNodeTypeFromString(type: string): NodeMaterialBlockConnectionPointTypes.Float | NodeMaterialBlockConnectionPointTypes.Vector2 | NodeMaterialBlockConnectionPointTypes.Vector3 | NodeMaterialBlockConnectionPointTypes.Vector4 | NodeMaterialBlockConnectionPointTypes.Color3 | NodeMaterialBlockConnectionPointTypes.Color4 | NodeMaterialBlockConnectionPointTypes.Matrix | NodeMaterialBlockConnectionPointTypes.AutoDetect;
|
323
327
|
static GetStringFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): "" | "Float" | "Vector2" | "Vector3" | "Vector4" | "Matrix" | "Color3" | "Color4";
|
@@ -974,6 +978,18 @@ export class MeshAttributeExistsDisplayManager implements IDisplayManager {
|
|
974
978
|
updatePreviewContent(): void;
|
975
979
|
}
|
976
980
|
|
981
|
+
}
|
982
|
+
declare module "@babylonjs/node-editor/graphSystem/display/loopDisplayManager" {
|
983
|
+
import { IDisplayManager } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/displayManager";
|
984
|
+
import { INodeData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/nodeData";
|
985
|
+
export class LoopDisplayManager implements IDisplayManager {
|
986
|
+
getHeaderClass(): string;
|
987
|
+
shouldDisplayPortLabels(): boolean;
|
988
|
+
getHeaderText(nodeData: INodeData): string;
|
989
|
+
getBackgroundColor(): string;
|
990
|
+
updatePreviewContent(nodeData: INodeData, contentArea: HTMLDivElement): void;
|
991
|
+
}
|
992
|
+
|
977
993
|
}
|
978
994
|
declare module "@babylonjs/node-editor/graphSystem/display/inputDisplayManager" {
|
979
995
|
import { NodeMaterialBlockConnectionPointTypes } from "@babylonjs/core/Materials/Node/Enums/nodeMaterialBlockConnectionPointTypes";
|
@@ -1458,8 +1474,9 @@ import { IDisposable } from "@babylonjs/core/scene";
|
|
1458
1474
|
* Class handling undo / redo operations
|
1459
1475
|
*/
|
1460
1476
|
export class HistoryStack implements IDisposable {
|
1461
|
-
private
|
1477
|
+
private _historyStack;
|
1462
1478
|
private _redoStack;
|
1479
|
+
private _activeData;
|
1463
1480
|
private readonly _maxHistoryLength;
|
1464
1481
|
private _locked;
|
1465
1482
|
private _dataProvider;
|
@@ -1470,13 +1487,19 @@ export class HistoryStack implements IDisposable {
|
|
1470
1487
|
* @param applyUpdate defines the code to execute when undo/redo operation is required
|
1471
1488
|
*/
|
1472
1489
|
constructor(dataProvider: () => any, applyUpdate: (data: any) => void);
|
1490
|
+
/**
|
1491
|
+
* Process key event to handle undo / redo
|
1492
|
+
* @param evt defines the keyboard event to process
|
1493
|
+
* @returns true if the event was processed
|
1494
|
+
*/
|
1495
|
+
processKeyEvent(evt: KeyboardEvent): boolean;
|
1473
1496
|
/**
|
1474
1497
|
* Resets the stack
|
1475
1498
|
*/
|
1476
1499
|
reset(): void;
|
1477
1500
|
private _generateJSONDiff;
|
1478
1501
|
private _applyJSONDiff;
|
1479
|
-
private
|
1502
|
+
private _copy;
|
1480
1503
|
/**
|
1481
1504
|
* Stores the current state
|
1482
1505
|
*/
|
@@ -1995,6 +2018,8 @@ export class NodeLink {
|
|
1995
2018
|
get nodeB(): GraphNode | undefined;
|
1996
2019
|
intersectsWith(rect: DOMRect): boolean;
|
1997
2020
|
update(endX?: number, endY?: number, straight?: boolean): void;
|
2021
|
+
get path(): SVGPathElement;
|
2022
|
+
get selectionPath(): SVGPathElement;
|
1998
2023
|
constructor(graphCanvas: GraphCanvasComponent, portA: NodePort, nodeA: GraphNode, portB?: NodePort, nodeB?: GraphNode);
|
1999
2024
|
onClick(evt: MouseEvent): void;
|
2000
2025
|
dispose(notify?: boolean): void;
|
@@ -2075,6 +2100,7 @@ export class GraphNode {
|
|
2075
2100
|
set enclosingFrameId(value: number);
|
2076
2101
|
set isSelected(value: boolean);
|
2077
2102
|
setIsSelected(value: boolean, marqueeSelection: boolean): void;
|
2103
|
+
get rootElement(): HTMLDivElement;
|
2078
2104
|
constructor(content: INodeData, stateManager: StateManager);
|
2079
2105
|
isOverlappingFrame(frame: GraphFrame): boolean;
|
2080
2106
|
getPortForPortData(portData: IPortData): NodePort | null;
|
@@ -2125,6 +2151,7 @@ export class GraphFrame {
|
|
2125
2151
|
private _headerTextElement;
|
2126
2152
|
private _headerCollapseElement;
|
2127
2153
|
private _headerCloseElement;
|
2154
|
+
private _headerFocusElement;
|
2128
2155
|
private _commentsElement;
|
2129
2156
|
private _portContainer;
|
2130
2157
|
private _outputPortContainer;
|
@@ -2154,6 +2181,7 @@ export class GraphFrame {
|
|
2154
2181
|
private readonly _closeSVG;
|
2155
2182
|
private readonly _expandSVG;
|
2156
2183
|
private readonly _collapseSVG;
|
2184
|
+
private readonly _focusSVG;
|
2157
2185
|
get id(): number;
|
2158
2186
|
get isCollapsed(): boolean;
|
2159
2187
|
private _createInputPort;
|
@@ -2182,6 +2210,11 @@ export class GraphFrame {
|
|
2182
2210
|
get comments(): string;
|
2183
2211
|
set comments(comments: string);
|
2184
2212
|
constructor(candidate: Nullable<HTMLDivElement>, canvas: GraphCanvasComponent, doNotCaptureNodes?: boolean);
|
2213
|
+
private _isFocused;
|
2214
|
+
/**
|
2215
|
+
* Enter/leave focus mode
|
2216
|
+
*/
|
2217
|
+
switchFocusMode(): void;
|
2185
2218
|
refresh(): void;
|
2186
2219
|
addNode(node: GraphNode): void;
|
2187
2220
|
removeNode(node: GraphNode): void;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@babylonjs/node-editor",
|
3
|
-
"version": "7.
|
3
|
+
"version": "7.26.1",
|
4
4
|
"main": "dist/babylon.nodeEditor.max.js",
|
5
5
|
"module": "dist/babylon.nodeEditor.max.js",
|
6
6
|
"esnext": "dist/babylon.nodeEditor.max.js",
|
@@ -23,7 +23,7 @@
|
|
23
23
|
"@types/react-dom": ">=16.0.9"
|
24
24
|
},
|
25
25
|
"devDependencies": {
|
26
|
-
"@babylonjs/core": "^7.
|
26
|
+
"@babylonjs/core": "^7.26.1",
|
27
27
|
"react": "^17.0.2",
|
28
28
|
"react-dom": "^17.0.2"
|
29
29
|
},
|