@babylonjs/node-editor 7.35.1 → 7.36.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.
@@ -1893,6 +1893,7 @@ import { NodeLink } from "@babylonjs/node-editor/nodeGraphSystem/nodeLink";
1893
1893
  import { FramePortData } from "@babylonjs/node-editor/nodeGraphSystem/types/framePortData";
1894
1894
  export const IsFramePortData: (variableToCheck: any) => variableToCheck is FramePortData;
1895
1895
  export const RefreshNode: (node: GraphNode, visitedNodes?: Set<GraphNode>, visitedLinks?: Set<NodeLink>, canvas?: GraphCanvasComponent) => void;
1896
+ export const BuildFloatUI: (container: HTMLDivElement, document: Document, displayName: string, isInteger: boolean, source: any, propertyName: string, onChange: () => void, min?: number, max?: number, visualPropertiesRefresh?: Array<() => void>) => void;
1896
1897
 
1897
1898
  }
1898
1899
  declare module "@babylonjs/node-editor/nodeGraphSystem/stateManager" {
@@ -2008,7 +2009,7 @@ import { StateManager } from "@babylonjs/node-editor/nodeGraphSystem/stateManage
2008
2009
  import { ISelectionChangedOptions } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/selectionChangedOptions";
2009
2010
  import { FrameNodePort } from "@babylonjs/node-editor/nodeGraphSystem/frameNodePort";
2010
2011
  import { IDisplayManager } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/displayManager";
2011
- import { IPortData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/portData";
2012
+ import { type IPortData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/portData";
2012
2013
  export class NodePort {
2013
2014
  portData: IPortData;
2014
2015
  node: GraphNode;
@@ -2021,6 +2022,7 @@ export class NodePort {
2021
2022
  protected _onCandidateLinkMovedObserver: Nullable<Observer<Nullable<Vector2>>>;
2022
2023
  protected _onSelectionChangedObserver: Nullable<Observer<Nullable<ISelectionChangedOptions>>>;
2023
2024
  protected _exposedOnFrame: boolean;
2025
+ protected _portUIcontainer?: HTMLDivElement;
2024
2026
  delegatedPort: Nullable<FrameNodePort>;
2025
2027
  get element(): HTMLDivElement;
2026
2028
  get container(): HTMLElement;
@@ -2034,7 +2036,7 @@ export class NodePort {
2034
2036
  set exposedPortPosition(value: number);
2035
2037
  private _isConnectedToNodeOutsideOfFrame;
2036
2038
  refresh(): void;
2037
- constructor(portContainer: HTMLElement, portData: IPortData, node: GraphNode, stateManager: StateManager);
2039
+ constructor(portContainer: HTMLElement, portData: IPortData, node: GraphNode, stateManager: StateManager, portUIcontainer?: HTMLDivElement);
2038
2040
  dispose(): void;
2039
2041
  static CreatePortElement(portData: IPortData, node: GraphNode, root: HTMLElement, displayManager: Nullable<IDisplayManager>, stateManager: StateManager): NodePort;
2040
2042
  }
@@ -2057,6 +2059,7 @@ export class NodeLink {
2057
2059
  private _onSelectionChangedObserver;
2058
2060
  private _isVisible;
2059
2061
  private _isTargetCandidate;
2062
+ private _gradient;
2060
2063
  onDisposedObservable: Observable<NodeLink>;
2061
2064
  get isTargetCandidate(): boolean;
2062
2065
  set isTargetCandidate(value: boolean);
@@ -2092,6 +2095,7 @@ import { NodeLink } from "@babylonjs/node-editor/nodeGraphSystem/nodeLink";
2092
2095
  import { StateManager } from "@babylonjs/node-editor/nodeGraphSystem/stateManager";
2093
2096
  import { INodeData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/nodeData";
2094
2097
  import { IPortData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/portData";
2098
+ import { IEditablePropertyOption } from "@babylonjs/core/Decorators/nodeDecorator";
2095
2099
  export class GraphNode {
2096
2100
  content: INodeData;
2097
2101
  private _visual;
@@ -2169,7 +2173,7 @@ export class GraphNode {
2169
2173
  private _onUp;
2170
2174
  private _onMove;
2171
2175
  renderProperties(): Nullable<JSX.Element>;
2172
- private _forceRebuild;
2176
+ _forceRebuild(source: any, propertyName: string, notifiers?: IEditablePropertyOption["notifiers"]): void;
2173
2177
  private _isCollapsed;
2174
2178
  /**
2175
2179
  * Collapse the node
@@ -2560,6 +2564,32 @@ export enum PortDataDirection {
2560
2564
  /** Output */
2561
2565
  Output = 1
2562
2566
  }
2567
+ export enum PortDirectValueTypes {
2568
+ Float = 0,
2569
+ Int = 1
2570
+ }
2571
+ export interface IPortDirectValueDefinition {
2572
+ /**
2573
+ * Gets the source object
2574
+ */
2575
+ source: any;
2576
+ /**
2577
+ * Gets the property name used to store the value
2578
+ */
2579
+ propertyName: string;
2580
+ /**
2581
+ * Gets or sets the min value accepted for this point if nothing is connected
2582
+ */
2583
+ valueMin: Nullable<any>;
2584
+ /**
2585
+ * Gets or sets the max value accepted for this point if nothing is connected
2586
+ */
2587
+ valueMax: Nullable<any>;
2588
+ /**
2589
+ * Gets or sets the type of the value
2590
+ */
2591
+ valueType: PortDirectValueTypes;
2592
+ }
2563
2593
  export interface IPortData {
2564
2594
  data: any;
2565
2595
  name: string;
@@ -2573,6 +2603,7 @@ export interface IPortData {
2573
2603
  needDualDirectionValidation: boolean;
2574
2604
  hasEndpoints: boolean;
2575
2605
  endpoints: Nullable<IPortData[]>;
2606
+ directValueDefinition?: IPortDirectValueDefinition;
2576
2607
  updateDisplayName: (newName: string) => void;
2577
2608
  canConnectTo: (port: IPortData) => boolean;
2578
2609
  connectTo: (port: IPortData) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/node-editor",
3
- "version": "7.35.1",
3
+ "version": "7.36.0",
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.35.1",
26
+ "@babylonjs/core": "^7.36.0",
27
27
  "react": "^17.0.2",
28
28
  "react-dom": "^17.0.2"
29
29
  },