@babylonjs/inspector 5.13.3 → 5.15.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.
@@ -62,12 +62,14 @@ import * as React from "react";
62
62
  import { Observable } from "@babylonjs/core/Misc/observable";
63
63
  import { Quaternion, Vector3 } from "@babylonjs/core/Maths/math.vector";
64
64
  import { PropertyChangedEvent } from "@babylonjs/inspector/components/propertyChangedEvent";
65
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
65
66
  interface IQuaternionLineComponentProps {
66
67
  label: string;
67
68
  target: any;
68
69
  useEuler?: boolean;
69
70
  propertyName: string;
70
71
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
72
+ lockObject: LockObject;
71
73
  }
72
74
  export class QuaternionLineComponent extends React.Component<IQuaternionLineComponentProps, {
73
75
  isExpanded: boolean;
@@ -218,10 +220,12 @@ declare module "@babylonjs/inspector/components/actionTabs/tabs/gradientStepComp
218
220
  import * as React from "react";
219
221
  import { GlobalState } from "@babylonjs/inspector/components/globalState";
220
222
  import { GradientBlockColorStep } from "@babylonjs/core/Materials/Node/Blocks/gradientBlock";
223
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
221
224
  interface IGradientStepComponentProps {
222
225
  globalState: GlobalState;
223
226
  step: GradientBlockColorStep;
224
227
  lineIndex: number;
228
+ lockObject?: LockObject;
225
229
  onDelete: () => void;
226
230
  onUpdateStep: () => void;
227
231
  onCheckForReOrder: () => void;
@@ -2243,6 +2247,7 @@ interface IToolBarState {
2243
2247
  addOpen: boolean;
2244
2248
  }
2245
2249
  export class ToolBar extends React.Component<IToolBarProps, IToolBarState> {
2250
+ private _lockObject;
2246
2251
  constructor(props: IToolBarProps);
2247
2252
  computeRGBAColor(): Color4;
2248
2253
  shouldComponentUpdate(nextProps: IToolBarProps): boolean;
@@ -2397,10 +2402,12 @@ import { Observable } from "@babylonjs/core/Misc/observable";
2397
2402
  import { GlobalState } from "@babylonjs/inspector/components/globalState";
2398
2403
  import { PropertyChangedEvent } from "@babylonjs/inspector/components/propertyChangedEvent";
2399
2404
  import { BoxParticleEmitter } from "@babylonjs/core/Particles/EmitterTypes/boxParticleEmitter";
2405
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
2400
2406
  interface IBoxEmitterGridComponentProps {
2401
2407
  globalState: GlobalState;
2402
2408
  emitter: BoxParticleEmitter;
2403
2409
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
2410
+ lockObject: LockObject;
2404
2411
  }
2405
2412
  export class BoxEmitterGridComponent extends React.Component<IBoxEmitterGridComponentProps> {
2406
2413
  constructor(props: IBoxEmitterGridComponentProps);
@@ -2448,9 +2455,11 @@ import { Observable } from "@babylonjs/core/Misc/observable";
2448
2455
  import { GlobalState } from "@babylonjs/inspector/components/globalState";
2449
2456
  import { PropertyChangedEvent } from "@babylonjs/inspector/components/propertyChangedEvent";
2450
2457
  import { ConeParticleEmitter } from "@babylonjs/core/Particles/EmitterTypes/coneParticleEmitter";
2458
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
2451
2459
  interface IConeEmitterGridComponentProps {
2452
2460
  globalState: GlobalState;
2453
2461
  emitter: ConeParticleEmitter;
2462
+ lockObject: LockObject;
2454
2463
  onSelectionChangedObservable?: Observable<any>;
2455
2464
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
2456
2465
  }
@@ -3022,9 +3031,11 @@ declare module "@babylonjs/inspector/components/actionTabs/tabs/tools/gltfCompon
3022
3031
  import * as React from "react";
3023
3032
  import { Scene } from "@babylonjs/core/scene";
3024
3033
  import { GlobalState } from "@babylonjs/inspector/components/globalState";
3034
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
3025
3035
  interface IGLTFComponentProps {
3026
3036
  scene: Scene;
3027
3037
  globalState: GlobalState;
3038
+ lockObject: LockObject;
3028
3039
  }
3029
3040
  export class GLTFComponent extends React.Component<IGLTFComponentProps> {
3030
3041
  private _onValidationResultsUpdatedObserver;
@@ -4310,6 +4321,7 @@ export class Tools {
4310
4321
  }
4311
4322
  declare module "@babylonjs/inspector/colorPicker/colorComponentEntry" {
4312
4323
  import * as React from "react";
4324
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4313
4325
  export interface IColorComponentEntryProps {
4314
4326
  value: number;
4315
4327
  label: string;
@@ -4317,10 +4329,13 @@ export interface IColorComponentEntryProps {
4317
4329
  min?: number;
4318
4330
  onChange: (value: number) => void;
4319
4331
  disabled?: boolean;
4332
+ lockObject: LockObject;
4320
4333
  }
4321
4334
  export class ColorComponentEntry extends React.Component<IColorComponentEntryProps> {
4322
4335
  constructor(props: IColorComponentEntryProps);
4323
4336
  updateValue(valueString: string): void;
4337
+ lock(): void;
4338
+ unlock(): void;
4324
4339
  render(): JSX.Element;
4325
4340
  }
4326
4341
 
@@ -4328,6 +4343,7 @@ export class ColorComponentEntry extends React.Component<IColorComponentEntryPro
4328
4343
  declare module "@babylonjs/inspector/colorPicker/colorPicker" {
4329
4344
  import * as React from "react";
4330
4345
  import { Color3, Color4 } from "@babylonjs/core/Maths/math.color";
4346
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4331
4347
  import "@babylonjs/inspector/colorPicker/colorPicker.scss";
4332
4348
  /**
4333
4349
  * Interface used to specify creation options for color picker
@@ -4337,6 +4353,7 @@ export interface IColorPickerProps {
4337
4353
  linearhint?: boolean;
4338
4354
  debugMode?: boolean;
4339
4355
  onColorChanged?: (color: Color3 | Color4) => void;
4356
+ lockObject: LockObject;
4340
4357
  }
4341
4358
  /**
4342
4359
  * Interface used to specify creation options for color picker
@@ -4371,10 +4388,12 @@ export class ColorPicker extends React.Component<IColorPickerProps, IColorPicker
4371
4388
  }
4372
4389
  declare module "@babylonjs/inspector/colorPicker/hexColor" {
4373
4390
  import * as React from "react";
4391
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4374
4392
  export interface IHexColorProps {
4375
4393
  value: string;
4376
4394
  expectedLength: number;
4377
4395
  onChange: (value: string) => void;
4396
+ lockObject: LockObject;
4378
4397
  }
4379
4398
  export class HexColor extends React.Component<IHexColorProps, {
4380
4399
  hex: string;
@@ -4383,6 +4402,8 @@ export class HexColor extends React.Component<IHexColorProps, {
4383
4402
  shouldComponentUpdate(nextProps: IHexColorProps, nextState: {
4384
4403
  hex: string;
4385
4404
  }): boolean;
4405
+ lock(): void;
4406
+ unlock(): void;
4386
4407
  updateHexValue(valueString: string): void;
4387
4408
  render(): JSX.Element;
4388
4409
  }
@@ -4515,7 +4536,7 @@ export interface IColor3LineComponentProps {
4515
4536
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
4516
4537
  isLinear?: boolean;
4517
4538
  icon?: string;
4518
- lockObject?: LockObject;
4539
+ lockObject: LockObject;
4519
4540
  iconLabel?: string;
4520
4541
  onChange?: () => void;
4521
4542
  }
@@ -4538,7 +4559,7 @@ export interface IColor4LineComponentProps {
4538
4559
  isLinear?: boolean;
4539
4560
  icon?: string;
4540
4561
  iconLabel?: string;
4541
- lockObject?: LockObject;
4562
+ lockObject: LockObject;
4542
4563
  }
4543
4564
  export class Color4LineComponent extends React.Component<IColor4LineComponentProps> {
4544
4565
  render(): JSX.Element;
@@ -4560,8 +4581,8 @@ export interface IColorLineComponentProps {
4560
4581
  isLinear?: boolean;
4561
4582
  icon?: string;
4562
4583
  iconLabel?: string;
4563
- lockObject?: LockObject;
4564
4584
  disableAlpha?: boolean;
4585
+ lockObject: LockObject;
4565
4586
  }
4566
4587
  interface IColorLineComponentState {
4567
4588
  isExpanded: boolean;
@@ -4591,6 +4612,7 @@ export {};
4591
4612
  declare module "@babylonjs/inspector/lines/colorPickerComponent" {
4592
4613
  import * as React from "react";
4593
4614
  import { Color4, Color3 } from "@babylonjs/core/Maths/math.color";
4615
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4594
4616
  export interface IColorPickerComponentProps {
4595
4617
  value: Color4 | Color3;
4596
4618
  linearHint?: boolean;
@@ -4598,6 +4620,7 @@ export interface IColorPickerComponentProps {
4598
4620
  icon?: string;
4599
4621
  iconLabel?: string;
4600
4622
  shouldPopRight?: boolean;
4623
+ lockObject?: LockObject;
4601
4624
  }
4602
4625
  interface IColorPickerComponentState {
4603
4626
  pickerEnabled: boolean;
@@ -4681,7 +4704,7 @@ interface IFloatLineComponentProps {
4681
4704
  label: string;
4682
4705
  target: any;
4683
4706
  propertyName: string;
4684
- lockObject?: LockObject;
4707
+ lockObject: LockObject;
4685
4708
  onChange?: (newValue: number) => void;
4686
4709
  isInteger?: boolean;
4687
4710
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
@@ -4883,6 +4906,7 @@ import { Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector";
4883
4906
  import { Matrix } from "@babylonjs/core/Maths/math.vector";
4884
4907
  import { Observable } from "@babylonjs/core/Misc/observable";
4885
4908
  import { PropertyChangedEvent } from "@babylonjs/inspector/propertyChangedEvent";
4909
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4886
4910
  interface IMatrixLineComponentProps {
4887
4911
  label: string;
4888
4912
  target: any;
@@ -4892,6 +4916,7 @@ interface IMatrixLineComponentProps {
4892
4916
  onModeChange?: (mode: number) => void;
4893
4917
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
4894
4918
  mode?: number;
4919
+ lockObject: LockObject;
4895
4920
  }
4896
4921
  export class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
4897
4922
  value: Matrix;
@@ -4931,6 +4956,7 @@ export {};
4931
4956
  }
4932
4957
  declare module "@babylonjs/inspector/lines/numericInputComponent" {
4933
4958
  import * as React from "react";
4959
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
4934
4960
  interface INumericInputComponentProps {
4935
4961
  label: string;
4936
4962
  value: number;
@@ -4939,6 +4965,7 @@ interface INumericInputComponentProps {
4939
4965
  precision?: number;
4940
4966
  icon?: string;
4941
4967
  iconLabel?: string;
4968
+ lockObject: LockObject;
4942
4969
  }
4943
4970
  export class NumericInputComponent extends React.Component<INumericInputComponentProps, {
4944
4971
  value: string;
@@ -4948,6 +4975,7 @@ export class NumericInputComponent extends React.Component<INumericInputComponen
4948
4975
  };
4949
4976
  private _localChange;
4950
4977
  constructor(props: INumericInputComponentProps);
4978
+ componentWillUnmount(): void;
4951
4979
  shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
4952
4980
  value: string;
4953
4981
  }): boolean;
@@ -5050,7 +5078,7 @@ interface ISliderLineComponentProps {
5050
5078
  margin?: boolean;
5051
5079
  icon?: string;
5052
5080
  iconLabel?: string;
5053
- lockObject?: LockObject;
5081
+ lockObject: LockObject;
5054
5082
  unit?: React.ReactNode;
5055
5083
  }
5056
5084
  export class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
@@ -5126,7 +5154,7 @@ export class TextInputLineComponent extends React.Component<ITextInputLineCompon
5126
5154
  }): boolean;
5127
5155
  raiseOnPropertyChanged(newValue: string, previousValue: string): void;
5128
5156
  getCurrentNumericValue(value: string): number;
5129
- updateValue(value: string): void;
5157
+ updateValue(value: string, valueToValidate?: string): void;
5130
5158
  incrementValue(amount: number): void;
5131
5159
  onKeyDown(event: React.KeyboardEvent): void;
5132
5160
  render(): JSX.Element;
@@ -5191,6 +5219,7 @@ import * as React from "react";
5191
5219
  import { Vector2 } from "@babylonjs/core/Maths/math.vector";
5192
5220
  import { Observable } from "@babylonjs/core/Misc/observable";
5193
5221
  import { PropertyChangedEvent } from "@babylonjs/inspector/propertyChangedEvent";
5222
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
5194
5223
  interface IVector2LineComponentProps {
5195
5224
  label: string;
5196
5225
  target: any;
@@ -5200,6 +5229,7 @@ interface IVector2LineComponentProps {
5200
5229
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
5201
5230
  icon?: string;
5202
5231
  iconLabel?: string;
5232
+ lockObject: LockObject;
5203
5233
  }
5204
5234
  export class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
5205
5235
  isExpanded: boolean;
@@ -5228,6 +5258,7 @@ import * as React from "react";
5228
5258
  import { Vector3 } from "@babylonjs/core/Maths/math.vector";
5229
5259
  import { Observable } from "@babylonjs/core/Misc/observable";
5230
5260
  import { PropertyChangedEvent } from "@babylonjs/inspector/propertyChangedEvent";
5261
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
5231
5262
  interface IVector3LineComponentProps {
5232
5263
  label: string;
5233
5264
  target: any;
@@ -5239,6 +5270,7 @@ interface IVector3LineComponentProps {
5239
5270
  noSlider?: boolean;
5240
5271
  icon?: string;
5241
5272
  iconLabel?: string;
5273
+ lockObject: LockObject;
5242
5274
  }
5243
5275
  export class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
5244
5276
  isExpanded: boolean;
@@ -5270,6 +5302,7 @@ import * as React from "react";
5270
5302
  import { Vector4 } from "@babylonjs/core/Maths/math.vector";
5271
5303
  import { Observable } from "@babylonjs/core/Misc/observable";
5272
5304
  import { PropertyChangedEvent } from "@babylonjs/inspector/propertyChangedEvent";
5305
+ import { LockObject } from "@babylonjs/inspector/tabs/propertyGrids/lockObject";
5273
5306
  interface IVector4LineComponentProps {
5274
5307
  label: string;
5275
5308
  target?: any;
@@ -5281,6 +5314,7 @@ interface IVector4LineComponentProps {
5281
5314
  icon?: string;
5282
5315
  iconLabel?: string;
5283
5316
  value?: Vector4;
5317
+ lockObject: LockObject;
5284
5318
  }
5285
5319
  export class Vector4LineComponent extends React.Component<IVector4LineComponentProps, {
5286
5320
  isExpanded: boolean;
@@ -5362,6 +5396,7 @@ export interface IGraphCanvasComponentProps {
5362
5396
  onEmitNewNode: (nodeData: INodeData) => GraphNode;
5363
5397
  }
5364
5398
  export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentProps> implements INodeContainer {
5399
+ static readonly NodeWidth: number;
5365
5400
  private readonly _minZoom;
5366
5401
  private readonly _maxZoom;
5367
5402
  private _hostCanvas;
@@ -5398,6 +5433,8 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
5398
5433
  private _oldY;
5399
5434
  _frameIsMoving: boolean;
5400
5435
  _isLoading: boolean;
5436
+ private _copiedNodes;
5437
+ private _copiedFrames;
5401
5438
  get gridSize(): number;
5402
5439
  set gridSize(value: number);
5403
5440
  get stateManager(): StateManager;
@@ -5421,6 +5458,11 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
5421
5458
  get frameContainer(): HTMLDivElement;
5422
5459
  private _selectedFrameAndNodesConflict;
5423
5460
  constructor(props: IGraphCanvasComponentProps);
5461
+ populateConnectedEntriesBeforeRemoval(item: GraphNode, items: GraphNode[], inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
5462
+ automaticRewire(inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
5463
+ handleKeyDown(evt: KeyboardEvent, onRemove: (nodeData: INodeData) => void, mouseLocationX: number, mouseLocationY: number, dataGenerator: (nodeData: INodeData) => any, rootElement: HTMLDivElement): void;
5464
+ pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, dataGenerator: (nodeData: INodeData) => any, selectNew?: boolean): GraphNode[];
5465
+ reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
5424
5466
  getCachedData(): any[];
5425
5467
  removeDataFromCache(data: any): void;
5426
5468
  createNodeFromObject(nodeData: INodeData, onNodeCreated: (data: any) => void, recursion?: boolean): GraphNode;
@@ -5442,6 +5484,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
5442
5484
  zoomToFit(): void;
5443
5485
  processCandidatePort(): void;
5444
5486
  connectNodes(nodeA: GraphNode, pointA: IPortData, nodeB: GraphNode, pointB: IPortData): void;
5487
+ drop(newNode: GraphNode, targetX: number, targetY: number, offsetX: number, offsetY: number): void;
5445
5488
  processEditorData(editorData: IEditorData): void;
5446
5489
  reOrganize(editorData?: Nullable<IEditorData>, isImportingAFrame?: boolean): void;
5447
5490
  addFrame(frameData: IFrameData): void;
@@ -5619,7 +5662,8 @@ export class GraphNode {
5619
5662
  content: INodeData;
5620
5663
  private _visual;
5621
5664
  private _headerContainer;
5622
- private _warning;
5665
+ private _headerIcon;
5666
+ private _headerIconImg;
5623
5667
  private _header;
5624
5668
  private _connections;
5625
5669
  private _inputsContainer;
@@ -5715,7 +5759,7 @@ export interface INodeData {
5715
5759
  uniqueId: number;
5716
5760
  isInput: boolean;
5717
5761
  comments: string;
5718
- getWarningMessage: () => string;
5762
+ prepareHeaderIcon: (iconDiv: HTMLDivElement, img: HTMLImageElement) => void;
5719
5763
  getClassName: () => string;
5720
5764
  dispose: () => void;
5721
5765
  getPortByName: (name: string) => Nullable<IPortData>;
@@ -5776,6 +5820,7 @@ export interface IPortData {
5776
5820
  hasEndpoints: boolean;
5777
5821
  endpoints: Nullable<IPortData[]>;
5778
5822
  updateDisplayName: (newName: string) => void;
5823
+ canConnectTo: (port: IPortData) => boolean;
5779
5824
  connectTo: (port: IPortData) => void;
5780
5825
  disconnectFrom: (port: IPortData) => void;
5781
5826
  checkCompatibilityState(port: IPortData): number;
@@ -5919,7 +5964,7 @@ export class StateManager {
5919
5964
  targetY: number;
5920
5965
  needRepositioning?: boolean | undefined;
5921
5966
  }>;
5922
- exportData: (data: any) => string;
5967
+ exportData: (data: any, frame?: Nullable<GraphFrame>) => string;
5923
5968
  isElbowConnectionAllowed: (nodeA: FrameNodePort | NodePort, nodeB: FrameNodePort | NodePort) => boolean;
5924
5969
  applyNodePortDesign: (data: IPortData, element: HTMLElement, img: HTMLImageElement) => void;
5925
5970
  storeEditorData: (serializationObject: any, frame?: Nullable<GraphFrame>) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/inspector",
3
- "version": "5.13.3",
3
+ "version": "5.15.0",
4
4
  "module": "dist/babylon.inspector.bundle.max.js",
5
5
  "main": "dist/babylon.inspector.bundle.max.js",
6
6
  "typings": "dist/babylon.inspector.module.d.ts",
@@ -32,12 +32,12 @@
32
32
  "@types/react-dom": ">=16.0.9"
33
33
  },
34
34
  "devDependencies": {
35
- "@babylonjs/core": "^5.13.3",
36
- "@babylonjs/gui": "^5.13.3",
37
- "@babylonjs/gui-editor": "^5.13.3",
38
- "@babylonjs/loaders": "^5.13.3",
39
- "@babylonjs/materials": "^5.13.3",
40
- "@babylonjs/serializers": "^5.13.3",
35
+ "@babylonjs/core": "^5.15.0",
36
+ "@babylonjs/gui": "^5.15.0",
37
+ "@babylonjs/gui-editor": "^5.15.0",
38
+ "@babylonjs/loaders": "^5.15.0",
39
+ "@babylonjs/materials": "^5.15.0",
40
+ "@babylonjs/serializers": "^5.15.0",
41
41
  "@lts/gui": "1.0.0",
42
42
  "react": "^17.0.2",
43
43
  "react-dom": "^17.0.2",