babylonjs-node-editor 5.13.3 → 5.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.
@@ -252,9 +252,11 @@ import * as React from "react";
252
252
  import { GlobalState } from "babylonjs-node-editor/globalState";
253
253
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
254
254
  import "babylonjs-node-editor/components/propertyTab/propertyTab.scss";
255
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
255
256
  interface IInputsPropertyTabComponentProps {
256
257
  globalState: GlobalState;
257
258
  inputs: InputBlock[];
259
+ lockObject: LockObject;
258
260
  }
259
261
  export class InputsPropertyTabComponent extends React.Component<IInputsPropertyTabComponentProps> {
260
262
  constructor(props: IInputsPropertyTabComponentProps);
@@ -269,9 +271,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/color3Pr
269
271
  import * as React from "react";
270
272
  import { GlobalState } from "babylonjs-node-editor/globalState";
271
273
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
274
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
272
275
  interface IColor3PropertyTabComponentProps {
273
276
  globalState: GlobalState;
274
277
  inputBlock: InputBlock;
278
+ lockObject: LockObject;
275
279
  }
276
280
  export class Color3PropertyTabComponent extends React.Component<IColor3PropertyTabComponentProps> {
277
281
  render(): JSX.Element;
@@ -283,9 +287,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/color4Pr
283
287
  import * as React from "react";
284
288
  import { GlobalState } from "babylonjs-node-editor/globalState";
285
289
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
290
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
286
291
  interface IColor4PropertyTabComponentProps {
287
292
  globalState: GlobalState;
288
293
  inputBlock: InputBlock;
294
+ lockObject: LockObject;
289
295
  }
290
296
  export class Color4PropertyTabComponent extends React.Component<IColor4PropertyTabComponentProps> {
291
297
  render(): JSX.Element;
@@ -311,9 +317,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/matrixPr
311
317
  import * as React from "react";
312
318
  import { GlobalState } from "babylonjs-node-editor/globalState";
313
319
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
320
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
314
321
  interface IMatrixPropertyTabComponentProps {
315
322
  globalState: GlobalState;
316
323
  inputBlock: InputBlock;
324
+ lockObject: LockObject;
317
325
  }
318
326
  export class MatrixPropertyTabComponent extends React.Component<IMatrixPropertyTabComponentProps> {
319
327
  render(): JSX.Element;
@@ -325,9 +333,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/vector2P
325
333
  import * as React from "react";
326
334
  import { GlobalState } from "babylonjs-node-editor/globalState";
327
335
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
336
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
328
337
  interface IVector2PropertyTabComponentProps {
329
338
  globalState: GlobalState;
330
339
  inputBlock: InputBlock;
340
+ lockObject: LockObject;
331
341
  }
332
342
  export class Vector2PropertyTabComponent extends React.Component<IVector2PropertyTabComponentProps> {
333
343
  render(): JSX.Element;
@@ -339,9 +349,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/vector3P
339
349
  import * as React from "react";
340
350
  import { GlobalState } from "babylonjs-node-editor/globalState";
341
351
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
352
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
342
353
  interface IVector3PropertyTabComponentProps {
343
354
  globalState: GlobalState;
344
355
  inputBlock: InputBlock;
356
+ lockObject: LockObject;
345
357
  }
346
358
  export class Vector3PropertyTabComponent extends React.Component<IVector3PropertyTabComponentProps> {
347
359
  render(): JSX.Element;
@@ -353,9 +365,11 @@ declare module "babylonjs-node-editor/components/propertyTab/properties/vector4P
353
365
  import * as React from "react";
354
366
  import { GlobalState } from "babylonjs-node-editor/globalState";
355
367
  import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
368
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
356
369
  interface IVector4PropertyTabComponentProps {
357
370
  globalState: GlobalState;
358
371
  inputBlock: InputBlock;
372
+ lockObject: LockObject;
359
373
  }
360
374
  export class Vector4PropertyTabComponent extends React.Component<IVector4PropertyTabComponentProps> {
361
375
  render(): JSX.Element;
@@ -373,8 +387,10 @@ import { GraphNode } from "babylonjs-node-editor/nodeGraphSystem/graphNode";
373
387
  import { GraphFrame } from "babylonjs-node-editor/nodeGraphSystem/graphFrame";
374
388
  import { NodePort } from "babylonjs-node-editor/nodeGraphSystem/nodePort";
375
389
  import { FrameNodePort } from "babylonjs-node-editor/nodeGraphSystem/frameNodePort";
390
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
376
391
  interface IPropertyTabComponentProps {
377
392
  globalState: GlobalState;
393
+ lockObject: LockObject;
378
394
  }
379
395
  interface IPropertyTabComponentState {
380
396
  currentNode: Nullable<GraphNode>;
@@ -488,7 +504,6 @@ interface IInternalPreviewAreaOptions extends IInspectorOptions {
488
504
  embedHostWidth?: string;
489
505
  }
490
506
  export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditorState> {
491
- static readonly NodeWidth: number;
492
507
  private _graphCanvasRef;
493
508
  private _diagramContainerRef;
494
509
  private _graphCanvas;
@@ -498,8 +513,6 @@ export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditor
498
513
  private _leftWidth;
499
514
  private _rightWidth;
500
515
  private _previewManager;
501
- private _copiedNodes;
502
- private _copiedFrames;
503
516
  private _mouseLocationX;
504
517
  private _mouseLocationY;
505
518
  private _onWidgetKeyUpPointer;
@@ -510,8 +523,6 @@ export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditor
510
523
  componentDidMount(): void;
511
524
  componentWillUnmount(): void;
512
525
  constructor(props: IGraphEditorProps);
513
- reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
514
- pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, selectNew?: boolean): GraphNode[] | undefined;
515
526
  zoomToFit(): void;
516
527
  buildMaterial(autoConfigure?: boolean): void;
517
528
  build(ignoreEditorData?: boolean): void;
@@ -1109,7 +1120,7 @@ export class SerializationTools {
1109
1120
  declare module "babylonjs-node-editor/sharedComponents/checkBoxLineComponent" {
1110
1121
  import * as React from "react";
1111
1122
  import { Observable } from "babylonjs/Misc/observable";
1112
- import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
1123
+ import { PropertyChangedEvent } from "babylonjs-node-editor/propertyChangedEvent";
1113
1124
  export interface ICheckBoxLineComponentProps {
1114
1125
  label: string;
1115
1126
  target?: any;
@@ -1209,46 +1220,6 @@ export class FileButtonLineComponent extends React.Component<IFileButtonLineComp
1209
1220
  }
1210
1221
  export {};
1211
1222
 
1212
- }
1213
- declare module "babylonjs-node-editor/sharedComponents/floatLineComponent" {
1214
- import * as React from "react";
1215
- import { Observable } from "babylonjs/Misc/observable";
1216
- import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
1217
- import { GlobalState } from "babylonjs-node-editor/globalState";
1218
- interface IFloatLineComponentProps {
1219
- label: string;
1220
- target: any;
1221
- propertyName: string;
1222
- onChange?: (newValue: number) => void;
1223
- isInteger?: boolean;
1224
- onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
1225
- additionalClass?: string;
1226
- step?: string;
1227
- digits?: number;
1228
- globalState: GlobalState;
1229
- min?: number;
1230
- max?: number;
1231
- smallUI?: boolean;
1232
- onEnter?: (newValue: number) => void;
1233
- }
1234
- export class FloatLineComponent extends React.Component<IFloatLineComponentProps, {
1235
- value: string;
1236
- }> {
1237
- private _localChange;
1238
- private _store;
1239
- private _regExp;
1240
- private _onFocus;
1241
- constructor(props: IFloatLineComponentProps);
1242
- shouldComponentUpdate(nextProps: IFloatLineComponentProps, nextState: {
1243
- value: string;
1244
- }): boolean;
1245
- componentWillUnmount(): void;
1246
- raiseOnPropertyChanged(newValue: number, previousValue: number): void;
1247
- updateValue(valueString: string): void;
1248
- render(): JSX.Element;
1249
- }
1250
- export {};
1251
-
1252
1223
  }
1253
1224
  declare module "babylonjs-node-editor/sharedComponents/lineContainerComponent" {
1254
1225
  import * as React from "react";
@@ -1340,69 +1311,6 @@ export class Popup {
1340
1311
  static _CopyStyles(sourceDoc: HTMLDocument, targetDoc: HTMLDocument): void;
1341
1312
  }
1342
1313
 
1343
- }
1344
- declare module "babylonjs-node-editor/sharedComponents/propertyChangedEvent" {
1345
- export class PropertyChangedEvent {
1346
- object: any;
1347
- property: string;
1348
- value: any;
1349
- initialValue: any;
1350
- }
1351
-
1352
- }
1353
- declare module "babylonjs-node-editor/sharedComponents/sliderLineComponent" {
1354
- import * as React from "react";
1355
- import { Observable } from "babylonjs/Misc/observable";
1356
- import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
1357
- import { GlobalState } from "babylonjs-node-editor/globalState";
1358
- interface ISliderLineComponentProps {
1359
- label: string;
1360
- target?: any;
1361
- propertyName?: string;
1362
- minimum: number;
1363
- maximum: number;
1364
- step: number;
1365
- directValue?: number;
1366
- useEuler?: boolean;
1367
- onChange?: (value: number) => void;
1368
- onInput?: (value: number) => void;
1369
- onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
1370
- decimalCount?: number;
1371
- globalState: GlobalState;
1372
- }
1373
- export class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
1374
- value: number;
1375
- }> {
1376
- private _localChange;
1377
- constructor(props: ISliderLineComponentProps);
1378
- shouldComponentUpdate(nextProps: ISliderLineComponentProps, nextState: {
1379
- value: number;
1380
- }): boolean;
1381
- onChange(newValueString: any): void;
1382
- onInput(newValueString: any): void;
1383
- prepareDataToRead(value: number): number;
1384
- render(): JSX.Element;
1385
- }
1386
- export {};
1387
-
1388
- }
1389
- declare module "babylonjs-node-editor/sharedComponents/textLineComponent" {
1390
- import * as React from "react";
1391
- interface ITextLineComponentProps {
1392
- label: string;
1393
- value: string;
1394
- color?: string;
1395
- underline?: boolean;
1396
- onLink?: () => void;
1397
- }
1398
- export class TextLineComponent extends React.Component<ITextLineComponentProps> {
1399
- constructor(props: ITextLineComponentProps);
1400
- onLink(): void;
1401
- renderContent(): JSX.Element;
1402
- render(): JSX.Element;
1403
- }
1404
- export {};
1405
-
1406
1314
  }
1407
1315
  declare module "babylonjs-node-editor/sharedComponents/textureLineComponent" {
1408
1316
  import * as React from "react";
@@ -1436,6 +1344,7 @@ export {};
1436
1344
  }
1437
1345
  declare module "babylonjs-node-editor/colorPicker/colorComponentEntry" {
1438
1346
  import * as React from "react";
1347
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
1439
1348
  export interface IColorComponentEntryProps {
1440
1349
  value: number;
1441
1350
  label: string;
@@ -1443,10 +1352,13 @@ export interface IColorComponentEntryProps {
1443
1352
  min?: number;
1444
1353
  onChange: (value: number) => void;
1445
1354
  disabled?: boolean;
1355
+ lockObject: LockObject;
1446
1356
  }
1447
1357
  export class ColorComponentEntry extends React.Component<IColorComponentEntryProps> {
1448
1358
  constructor(props: IColorComponentEntryProps);
1449
1359
  updateValue(valueString: string): void;
1360
+ lock(): void;
1361
+ unlock(): void;
1450
1362
  render(): JSX.Element;
1451
1363
  }
1452
1364
 
@@ -1454,6 +1366,7 @@ export class ColorComponentEntry extends React.Component<IColorComponentEntryPro
1454
1366
  declare module "babylonjs-node-editor/colorPicker/colorPicker" {
1455
1367
  import * as React from "react";
1456
1368
  import { Color3, Color4 } from "babylonjs/Maths/math.color";
1369
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
1457
1370
  import "babylonjs-node-editor/colorPicker/colorPicker.scss";
1458
1371
  /**
1459
1372
  * Interface used to specify creation options for color picker
@@ -1463,6 +1376,7 @@ export interface IColorPickerProps {
1463
1376
  linearhint?: boolean;
1464
1377
  debugMode?: boolean;
1465
1378
  onColorChanged?: (color: Color3 | Color4) => void;
1379
+ lockObject: LockObject;
1466
1380
  }
1467
1381
  /**
1468
1382
  * Interface used to specify creation options for color picker
@@ -1497,10 +1411,12 @@ export class ColorPicker extends React.Component<IColorPickerProps, IColorPicker
1497
1411
  }
1498
1412
  declare module "babylonjs-node-editor/colorPicker/hexColor" {
1499
1413
  import * as React from "react";
1414
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
1500
1415
  export interface IHexColorProps {
1501
1416
  value: string;
1502
1417
  expectedLength: number;
1503
1418
  onChange: (value: string) => void;
1419
+ lockObject: LockObject;
1504
1420
  }
1505
1421
  export class HexColor extends React.Component<IHexColorProps, {
1506
1422
  hex: string;
@@ -1509,6 +1425,8 @@ export class HexColor extends React.Component<IHexColorProps, {
1509
1425
  shouldComponentUpdate(nextProps: IHexColorProps, nextState: {
1510
1426
  hex: string;
1511
1427
  }): boolean;
1428
+ lock(): void;
1429
+ unlock(): void;
1512
1430
  updateHexValue(valueString: string): void;
1513
1431
  render(): JSX.Element;
1514
1432
  }
@@ -1641,7 +1559,7 @@ export interface IColor3LineComponentProps {
1641
1559
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
1642
1560
  isLinear?: boolean;
1643
1561
  icon?: string;
1644
- lockObject?: LockObject;
1562
+ lockObject: LockObject;
1645
1563
  iconLabel?: string;
1646
1564
  onChange?: () => void;
1647
1565
  }
@@ -1664,7 +1582,7 @@ export interface IColor4LineComponentProps {
1664
1582
  isLinear?: boolean;
1665
1583
  icon?: string;
1666
1584
  iconLabel?: string;
1667
- lockObject?: LockObject;
1585
+ lockObject: LockObject;
1668
1586
  }
1669
1587
  export class Color4LineComponent extends React.Component<IColor4LineComponentProps> {
1670
1588
  render(): JSX.Element;
@@ -1686,8 +1604,8 @@ export interface IColorLineComponentProps {
1686
1604
  isLinear?: boolean;
1687
1605
  icon?: string;
1688
1606
  iconLabel?: string;
1689
- lockObject?: LockObject;
1690
1607
  disableAlpha?: boolean;
1608
+ lockObject: LockObject;
1691
1609
  }
1692
1610
  interface IColorLineComponentState {
1693
1611
  isExpanded: boolean;
@@ -1717,6 +1635,7 @@ export {};
1717
1635
  declare module "babylonjs-node-editor/lines/colorPickerComponent" {
1718
1636
  import * as React from "react";
1719
1637
  import { Color4, Color3 } from "babylonjs/Maths/math.color";
1638
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
1720
1639
  export interface IColorPickerComponentProps {
1721
1640
  value: Color4 | Color3;
1722
1641
  linearHint?: boolean;
@@ -1724,6 +1643,7 @@ export interface IColorPickerComponentProps {
1724
1643
  icon?: string;
1725
1644
  iconLabel?: string;
1726
1645
  shouldPopRight?: boolean;
1646
+ lockObject?: LockObject;
1727
1647
  }
1728
1648
  interface IColorPickerComponentState {
1729
1649
  pickerEnabled: boolean;
@@ -2009,6 +1929,7 @@ import { Vector3, Vector4 } from "babylonjs/Maths/math.vector";
2009
1929
  import { Matrix } from "babylonjs/Maths/math.vector";
2010
1930
  import { Observable } from "babylonjs/Misc/observable";
2011
1931
  import { PropertyChangedEvent } from "babylonjs-node-editor/propertyChangedEvent";
1932
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
2012
1933
  interface IMatrixLineComponentProps {
2013
1934
  label: string;
2014
1935
  target: any;
@@ -2018,6 +1939,7 @@ interface IMatrixLineComponentProps {
2018
1939
  onModeChange?: (mode: number) => void;
2019
1940
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
2020
1941
  mode?: number;
1942
+ lockObject: LockObject;
2021
1943
  }
2022
1944
  export class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
2023
1945
  value: Matrix;
@@ -2057,6 +1979,7 @@ export {};
2057
1979
  }
2058
1980
  declare module "babylonjs-node-editor/lines/numericInputComponent" {
2059
1981
  import * as React from "react";
1982
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
2060
1983
  interface INumericInputComponentProps {
2061
1984
  label: string;
2062
1985
  value: number;
@@ -2065,6 +1988,7 @@ interface INumericInputComponentProps {
2065
1988
  precision?: number;
2066
1989
  icon?: string;
2067
1990
  iconLabel?: string;
1991
+ lockObject: LockObject;
2068
1992
  }
2069
1993
  export class NumericInputComponent extends React.Component<INumericInputComponentProps, {
2070
1994
  value: string;
@@ -2074,6 +1998,7 @@ export class NumericInputComponent extends React.Component<INumericInputComponen
2074
1998
  };
2075
1999
  private _localChange;
2076
2000
  constructor(props: INumericInputComponentProps);
2001
+ componentWillUnmount(): void;
2077
2002
  shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
2078
2003
  value: string;
2079
2004
  }): boolean;
@@ -2317,6 +2242,7 @@ import * as React from "react";
2317
2242
  import { Vector2 } from "babylonjs/Maths/math.vector";
2318
2243
  import { Observable } from "babylonjs/Misc/observable";
2319
2244
  import { PropertyChangedEvent } from "babylonjs-node-editor/propertyChangedEvent";
2245
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
2320
2246
  interface IVector2LineComponentProps {
2321
2247
  label: string;
2322
2248
  target: any;
@@ -2326,6 +2252,7 @@ interface IVector2LineComponentProps {
2326
2252
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
2327
2253
  icon?: string;
2328
2254
  iconLabel?: string;
2255
+ lockObject: LockObject;
2329
2256
  }
2330
2257
  export class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
2331
2258
  isExpanded: boolean;
@@ -2354,6 +2281,7 @@ import * as React from "react";
2354
2281
  import { Vector3 } from "babylonjs/Maths/math.vector";
2355
2282
  import { Observable } from "babylonjs/Misc/observable";
2356
2283
  import { PropertyChangedEvent } from "babylonjs-node-editor/propertyChangedEvent";
2284
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
2357
2285
  interface IVector3LineComponentProps {
2358
2286
  label: string;
2359
2287
  target: any;
@@ -2365,6 +2293,7 @@ interface IVector3LineComponentProps {
2365
2293
  noSlider?: boolean;
2366
2294
  icon?: string;
2367
2295
  iconLabel?: string;
2296
+ lockObject: LockObject;
2368
2297
  }
2369
2298
  export class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
2370
2299
  isExpanded: boolean;
@@ -2396,6 +2325,7 @@ import * as React from "react";
2396
2325
  import { Vector4 } from "babylonjs/Maths/math.vector";
2397
2326
  import { Observable } from "babylonjs/Misc/observable";
2398
2327
  import { PropertyChangedEvent } from "babylonjs-node-editor/propertyChangedEvent";
2328
+ import { LockObject } from "babylonjs-node-editor/tabs/propertyGrids/lockObject";
2399
2329
  interface IVector4LineComponentProps {
2400
2330
  label: string;
2401
2331
  target?: any;
@@ -2407,6 +2337,7 @@ interface IVector4LineComponentProps {
2407
2337
  icon?: string;
2408
2338
  iconLabel?: string;
2409
2339
  value?: Vector4;
2340
+ lockObject: LockObject;
2410
2341
  }
2411
2342
  export class Vector4LineComponent extends React.Component<IVector4LineComponentProps, {
2412
2343
  isExpanded: boolean;
@@ -2488,6 +2419,7 @@ export interface IGraphCanvasComponentProps {
2488
2419
  onEmitNewNode: (nodeData: INodeData) => GraphNode;
2489
2420
  }
2490
2421
  export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentProps> implements INodeContainer {
2422
+ static readonly NodeWidth: number;
2491
2423
  private readonly _minZoom;
2492
2424
  private readonly _maxZoom;
2493
2425
  private _hostCanvas;
@@ -2524,6 +2456,8 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2524
2456
  private _oldY;
2525
2457
  _frameIsMoving: boolean;
2526
2458
  _isLoading: boolean;
2459
+ private _copiedNodes;
2460
+ private _copiedFrames;
2527
2461
  get gridSize(): number;
2528
2462
  set gridSize(value: number);
2529
2463
  get stateManager(): StateManager;
@@ -2547,6 +2481,9 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2547
2481
  get frameContainer(): HTMLDivElement;
2548
2482
  private _selectedFrameAndNodesConflict;
2549
2483
  constructor(props: IGraphCanvasComponentProps);
2484
+ handleKeyDown(evt: KeyboardEvent, onRemove: (nodeData: INodeData) => void, mouseLocationX: number, mouseLocationY: number, dataGenerator: (nodeData: INodeData) => any, rootElement: HTMLDivElement): void;
2485
+ pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, dataGenerator: (nodeData: INodeData) => any, selectNew?: boolean): GraphNode[];
2486
+ reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
2550
2487
  getCachedData(): any[];
2551
2488
  removeDataFromCache(data: any): void;
2552
2489
  createNodeFromObject(nodeData: INodeData, onNodeCreated: (data: any) => void, recursion?: boolean): GraphNode;
@@ -2568,6 +2505,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2568
2505
  zoomToFit(): void;
2569
2506
  processCandidatePort(): void;
2570
2507
  connectNodes(nodeA: GraphNode, pointA: IPortData, nodeB: GraphNode, pointB: IPortData): void;
2508
+ drop(newNode: GraphNode, targetX: number, targetY: number, offsetX: number, offsetY: number): void;
2571
2509
  processEditorData(editorData: IEditorData): void;
2572
2510
  reOrganize(editorData?: Nullable<IEditorData>, isImportingAFrame?: boolean): void;
2573
2511
  addFrame(frameData: IFrameData): void;
@@ -3612,6 +3550,7 @@ declare module BABYLON.NodeEditor {
3612
3550
  interface IInputsPropertyTabComponentProps {
3613
3551
  globalState: GlobalState;
3614
3552
  inputs: BABYLON.InputBlock[];
3553
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3615
3554
  }
3616
3555
  export class InputsPropertyTabComponent extends React.Component<IInputsPropertyTabComponentProps> {
3617
3556
  constructor(props: IInputsPropertyTabComponentProps);
@@ -3624,6 +3563,7 @@ declare module BABYLON.NodeEditor {
3624
3563
  interface IColor3PropertyTabComponentProps {
3625
3564
  globalState: GlobalState;
3626
3565
  inputBlock: BABYLON.InputBlock;
3566
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3627
3567
  }
3628
3568
  export class Color3PropertyTabComponent extends React.Component<IColor3PropertyTabComponentProps> {
3629
3569
  render(): JSX.Element;
@@ -3633,6 +3573,7 @@ declare module BABYLON.NodeEditor {
3633
3573
  interface IColor4PropertyTabComponentProps {
3634
3574
  globalState: GlobalState;
3635
3575
  inputBlock: BABYLON.InputBlock;
3576
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3636
3577
  }
3637
3578
  export class Color4PropertyTabComponent extends React.Component<IColor4PropertyTabComponentProps> {
3638
3579
  render(): JSX.Element;
@@ -3651,6 +3592,7 @@ declare module BABYLON.NodeEditor {
3651
3592
  interface IMatrixPropertyTabComponentProps {
3652
3593
  globalState: GlobalState;
3653
3594
  inputBlock: BABYLON.InputBlock;
3595
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3654
3596
  }
3655
3597
  export class MatrixPropertyTabComponent extends React.Component<IMatrixPropertyTabComponentProps> {
3656
3598
  render(): JSX.Element;
@@ -3660,6 +3602,7 @@ declare module BABYLON.NodeEditor {
3660
3602
  interface IVector2PropertyTabComponentProps {
3661
3603
  globalState: GlobalState;
3662
3604
  inputBlock: BABYLON.InputBlock;
3605
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3663
3606
  }
3664
3607
  export class Vector2PropertyTabComponent extends React.Component<IVector2PropertyTabComponentProps> {
3665
3608
  render(): JSX.Element;
@@ -3669,6 +3612,7 @@ declare module BABYLON.NodeEditor {
3669
3612
  interface IVector3PropertyTabComponentProps {
3670
3613
  globalState: GlobalState;
3671
3614
  inputBlock: BABYLON.InputBlock;
3615
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3672
3616
  }
3673
3617
  export class Vector3PropertyTabComponent extends React.Component<IVector3PropertyTabComponentProps> {
3674
3618
  render(): JSX.Element;
@@ -3678,6 +3622,7 @@ declare module BABYLON.NodeEditor {
3678
3622
  interface IVector4PropertyTabComponentProps {
3679
3623
  globalState: GlobalState;
3680
3624
  inputBlock: BABYLON.InputBlock;
3625
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3681
3626
  }
3682
3627
  export class Vector4PropertyTabComponent extends React.Component<IVector4PropertyTabComponentProps> {
3683
3628
  render(): JSX.Element;
@@ -3686,6 +3631,7 @@ declare module BABYLON.NodeEditor {
3686
3631
 
3687
3632
  interface IPropertyTabComponentProps {
3688
3633
  globalState: GlobalState;
3634
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
3689
3635
  }
3690
3636
  interface IPropertyTabComponentState {
3691
3637
  currentNode: BABYLON.Nullable<BABYLON.NodeEditor.SharedUIComponents.GraphNode>;
@@ -3775,7 +3721,6 @@ declare module BABYLON.NodeEditor {
3775
3721
  embedHostWidth?: string;
3776
3722
  }
3777
3723
  export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditorState> {
3778
- static readonly NodeWidth = 100;
3779
3724
  private _graphCanvasRef;
3780
3725
  private _diagramContainerRef;
3781
3726
  private _graphCanvas;
@@ -3785,8 +3730,6 @@ declare module BABYLON.NodeEditor {
3785
3730
  private _leftWidth;
3786
3731
  private _rightWidth;
3787
3732
  private _previewManager;
3788
- private _copiedNodes;
3789
- private _copiedFrames;
3790
3733
  private _mouseLocationX;
3791
3734
  private _mouseLocationY;
3792
3735
  private _onWidgetKeyUpPointer;
@@ -3797,8 +3740,6 @@ declare module BABYLON.NodeEditor {
3797
3740
  componentDidMount(): void;
3798
3741
  componentWillUnmount(): void;
3799
3742
  constructor(props: IGraphEditorProps);
3800
- reconnectNewNodes(nodeIndex: number, newNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], sourceNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], done: boolean[]): void;
3801
- pasteSelection(copiedNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], currentX: number, currentY: number, selectNew?: boolean): BABYLON.NodeEditor.SharedUIComponents.GraphNode[] | undefined;
3802
3743
  zoomToFit(): void;
3803
3744
  buildMaterial(autoConfigure?: boolean): void;
3804
3745
  build(ignoreEditorData?: boolean): void;
@@ -4254,7 +4195,7 @@ declare module BABYLON.NodeEditor {
4254
4195
  isSelected?: () => boolean;
4255
4196
  onSelect?: (value: boolean) => void;
4256
4197
  onValueChanged?: () => void;
4257
- onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
4198
+ onPropertyChangedObservable?: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.PropertyChangedEvent>;
4258
4199
  disabled?: boolean;
4259
4200
  }
4260
4201
  export class CheckBoxLineComponent extends React.Component<ICheckBoxLineComponentProps, {
@@ -4335,40 +4276,6 @@ declare module BABYLON.NodeEditor {
4335
4276
  }
4336
4277
 
4337
4278
 
4338
- interface IFloatLineComponentProps {
4339
- label: string;
4340
- target: any;
4341
- propertyName: string;
4342
- onChange?: (newValue: number) => void;
4343
- isInteger?: boolean;
4344
- onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
4345
- additionalClass?: string;
4346
- step?: string;
4347
- digits?: number;
4348
- globalState: GlobalState;
4349
- min?: number;
4350
- max?: number;
4351
- smallUI?: boolean;
4352
- onEnter?: (newValue: number) => void;
4353
- }
4354
- export class FloatLineComponent extends React.Component<IFloatLineComponentProps, {
4355
- value: string;
4356
- }> {
4357
- private _localChange;
4358
- private _store;
4359
- private _regExp;
4360
- private _onFocus;
4361
- constructor(props: IFloatLineComponentProps);
4362
- shouldComponentUpdate(nextProps: IFloatLineComponentProps, nextState: {
4363
- value: string;
4364
- }): boolean;
4365
- componentWillUnmount(): void;
4366
- raiseOnPropertyChanged(newValue: number, previousValue: number): void;
4367
- updateValue(valueString: string): void;
4368
- render(): JSX.Element;
4369
- }
4370
-
4371
-
4372
4279
  interface ILineContainerComponentProps {
4373
4280
  title: string;
4374
4281
  children: any[] | any;
@@ -4445,59 +4352,6 @@ declare module BABYLON.NodeEditor {
4445
4352
  }
4446
4353
 
4447
4354
 
4448
- export class PropertyChangedEvent {
4449
- object: any;
4450
- property: string;
4451
- value: any;
4452
- initialValue: any;
4453
- }
4454
-
4455
-
4456
- interface ISliderLineComponentProps {
4457
- label: string;
4458
- target?: any;
4459
- propertyName?: string;
4460
- minimum: number;
4461
- maximum: number;
4462
- step: number;
4463
- directValue?: number;
4464
- useEuler?: boolean;
4465
- onChange?: (value: number) => void;
4466
- onInput?: (value: number) => void;
4467
- onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
4468
- decimalCount?: number;
4469
- globalState: GlobalState;
4470
- }
4471
- export class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
4472
- value: number;
4473
- }> {
4474
- private _localChange;
4475
- constructor(props: ISliderLineComponentProps);
4476
- shouldComponentUpdate(nextProps: ISliderLineComponentProps, nextState: {
4477
- value: number;
4478
- }): boolean;
4479
- onChange(newValueString: any): void;
4480
- onInput(newValueString: any): void;
4481
- prepareDataToRead(value: number): number;
4482
- render(): JSX.Element;
4483
- }
4484
-
4485
-
4486
- interface ITextLineComponentProps {
4487
- label: string;
4488
- value: string;
4489
- color?: string;
4490
- underline?: boolean;
4491
- onLink?: () => void;
4492
- }
4493
- export class TextLineComponent extends React.Component<ITextLineComponentProps> {
4494
- constructor(props: ITextLineComponentProps);
4495
- onLink(): void;
4496
- renderContent(): JSX.Element;
4497
- render(): JSX.Element;
4498
- }
4499
-
4500
-
4501
4355
  interface ITextureLineComponentProps {
4502
4356
  texture: BABYLON.BaseTexture;
4503
4357
  width: number;
@@ -4534,10 +4388,13 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4534
4388
  min?: number;
4535
4389
  onChange: (value: number) => void;
4536
4390
  disabled?: boolean;
4391
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4537
4392
  }
4538
4393
  export class ColorComponentEntry extends React.Component<IColorComponentEntryProps> {
4539
4394
  constructor(props: IColorComponentEntryProps);
4540
4395
  updateValue(valueString: string): void;
4396
+ lock(): void;
4397
+ unlock(): void;
4541
4398
  render(): JSX.Element;
4542
4399
  }
4543
4400
 
@@ -4556,6 +4413,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4556
4413
  linearhint?: boolean;
4557
4414
  debugMode?: boolean;
4558
4415
  onColorChanged?: (color: BABYLON.Color3 | BABYLON.Color4) => void;
4416
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4559
4417
  }
4560
4418
  /**
4561
4419
  * Interface used to specify creation options for color picker
@@ -4598,6 +4456,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4598
4456
  value: string;
4599
4457
  expectedLength: number;
4600
4458
  onChange: (value: string) => void;
4459
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4601
4460
  }
4602
4461
  export class HexColor extends React.Component<IHexColorProps, {
4603
4462
  hex: string;
@@ -4606,6 +4465,8 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4606
4465
  shouldComponentUpdate(nextProps: IHexColorProps, nextState: {
4607
4466
  hex: string;
4608
4467
  }): boolean;
4468
+ lock(): void;
4469
+ unlock(): void;
4609
4470
  updateHexValue(valueString: string): void;
4610
4471
  render(): JSX.Element;
4611
4472
  }
@@ -4772,7 +4633,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4772
4633
  onPropertyChangedObservable?: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.PropertyChangedEvent>;
4773
4634
  isLinear?: boolean;
4774
4635
  icon?: string;
4775
- lockObject?: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4636
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4776
4637
  iconLabel?: string;
4777
4638
  onChange?: () => void;
4778
4639
  }
@@ -4796,7 +4657,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4796
4657
  isLinear?: boolean;
4797
4658
  icon?: string;
4798
4659
  iconLabel?: string;
4799
- lockObject?: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4660
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4800
4661
  }
4801
4662
  export class Color4LineComponent extends React.Component<IColor4LineComponentProps> {
4802
4663
  render(): JSX.Element;
@@ -4818,8 +4679,8 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4818
4679
  isLinear?: boolean;
4819
4680
  icon?: string;
4820
4681
  iconLabel?: string;
4821
- lockObject?: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4822
4682
  disableAlpha?: boolean;
4683
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4823
4684
  }
4824
4685
  interface IColorLineComponentState {
4825
4686
  isExpanded: boolean;
@@ -4858,6 +4719,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
4858
4719
  icon?: string;
4859
4720
  iconLabel?: string;
4860
4721
  shouldPopRight?: boolean;
4722
+ lockObject?: BABYLON.NodeEditor.SharedUIComponents.LockObject;
4861
4723
  }
4862
4724
  interface IColorPickerComponentState {
4863
4725
  pickerEnabled: boolean;
@@ -5183,6 +5045,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5183
5045
  onModeChange?: (mode: number) => void;
5184
5046
  onPropertyChangedObservable?: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.PropertyChangedEvent>;
5185
5047
  mode?: number;
5048
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
5186
5049
  }
5187
5050
  export class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
5188
5051
  value: BABYLON.Matrix;
@@ -5235,6 +5098,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5235
5098
  precision?: number;
5236
5099
  icon?: string;
5237
5100
  iconLabel?: string;
5101
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
5238
5102
  }
5239
5103
  export class NumericInputComponent extends React.Component<INumericInputComponentProps, {
5240
5104
  value: string;
@@ -5244,6 +5108,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5244
5108
  };
5245
5109
  private _localChange;
5246
5110
  constructor(props: INumericInputComponentProps);
5111
+ componentWillUnmount(): void;
5247
5112
  shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
5248
5113
  value: string;
5249
5114
  }): boolean;
@@ -5518,6 +5383,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5518
5383
  onPropertyChangedObservable?: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.PropertyChangedEvent>;
5519
5384
  icon?: string;
5520
5385
  iconLabel?: string;
5386
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
5521
5387
  }
5522
5388
  export class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
5523
5389
  isExpanded: boolean;
@@ -5557,6 +5423,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5557
5423
  noSlider?: boolean;
5558
5424
  icon?: string;
5559
5425
  iconLabel?: string;
5426
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
5560
5427
  }
5561
5428
  export class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
5562
5429
  isExpanded: boolean;
@@ -5599,6 +5466,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5599
5466
  icon?: string;
5600
5467
  iconLabel?: string;
5601
5468
  value?: BABYLON.Vector4;
5469
+ lockObject: BABYLON.NodeEditor.SharedUIComponents.LockObject;
5602
5470
  }
5603
5471
  export class Vector4LineComponent extends React.Component<IVector4LineComponentProps, {
5604
5472
  isExpanded: boolean;
@@ -5674,6 +5542,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5674
5542
  onEmitNewNode: (nodeData: BABYLON.NodeEditor.SharedUIComponents.INodeData) => BABYLON.NodeEditor.SharedUIComponents.GraphNode;
5675
5543
  }
5676
5544
  export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentProps> implements BABYLON.NodeEditor.SharedUIComponents.INodeContainer {
5545
+ static readonly NodeWidth = 100;
5677
5546
  private readonly _minZoom;
5678
5547
  private readonly _maxZoom;
5679
5548
  private _hostCanvas;
@@ -5710,6 +5579,8 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5710
5579
  private _oldY;
5711
5580
  _frameIsMoving: boolean;
5712
5581
  _isLoading: boolean;
5582
+ private _copiedNodes;
5583
+ private _copiedFrames;
5713
5584
  get gridSize(): number;
5714
5585
  set gridSize(value: number);
5715
5586
  get stateManager(): BABYLON.NodeEditor.SharedUIComponents.StateManager;
@@ -5733,6 +5604,9 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5733
5604
  get frameContainer(): HTMLDivElement;
5734
5605
  private _selectedFrameAndNodesConflict;
5735
5606
  constructor(props: IGraphCanvasComponentProps);
5607
+ handleKeyDown(evt: KeyboardEvent, onRemove: (nodeData: BABYLON.NodeEditor.SharedUIComponents.INodeData) => void, mouseLocationX: number, mouseLocationY: number, dataGenerator: (nodeData: BABYLON.NodeEditor.SharedUIComponents.INodeData) => any, rootElement: HTMLDivElement): void;
5608
+ pasteSelection(copiedNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], currentX: number, currentY: number, dataGenerator: (nodeData: BABYLON.NodeEditor.SharedUIComponents.INodeData) => any, selectNew?: boolean): BABYLON.NodeEditor.SharedUIComponents.GraphNode[];
5609
+ reconnectNewNodes(nodeIndex: number, newNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], sourceNodes: BABYLON.NodeEditor.SharedUIComponents.GraphNode[], done: boolean[]): void;
5736
5610
  getCachedData(): any[];
5737
5611
  removeDataFromCache(data: any): void;
5738
5612
  createNodeFromObject(nodeData: BABYLON.NodeEditor.SharedUIComponents.INodeData, onNodeCreated: (data: any) => void, recursion?: boolean): BABYLON.NodeEditor.SharedUIComponents.GraphNode;
@@ -5754,6 +5628,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
5754
5628
  zoomToFit(): void;
5755
5629
  processCandidatePort(): void;
5756
5630
  connectNodes(nodeA: BABYLON.NodeEditor.SharedUIComponents.GraphNode, pointA: BABYLON.NodeEditor.SharedUIComponents.IPortData, nodeB: BABYLON.NodeEditor.SharedUIComponents.GraphNode, pointB: BABYLON.NodeEditor.SharedUIComponents.IPortData): void;
5631
+ drop(newNode: BABYLON.NodeEditor.SharedUIComponents.GraphNode, targetX: number, targetY: number, offsetX: number, offsetY: number): void;
5757
5632
  processEditorData(editorData: BABYLON.NodeEditor.SharedUIComponents.IEditorData): void;
5758
5633
  reOrganize(editorData?: BABYLON.Nullable<BABYLON.NodeEditor.SharedUIComponents.IEditorData>, isImportingAFrame?: boolean): void;
5759
5634
  addFrame(frameData: BABYLON.NodeEditor.SharedUIComponents.IFrameData): void;