@babylonjs/node-geometry-editor 7.25.2 → 7.26.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.
@@ -92,6 +92,7 @@ export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditor
92
92
  private _diagramContainerRef;
93
93
  private _graphCanvas;
94
94
  private _diagramContainer;
95
+ private _historyStack;
95
96
  private _startX;
96
97
  private _moveInProgress;
97
98
  private _leftWidth;
@@ -104,6 +105,7 @@ export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditor
104
105
  private _popUpWindow;
105
106
  appendBlock(dataToAppend: NodeGeometryBlock | INodeData, recursion?: boolean): GraphNode;
106
107
  addValueNode(type: string): GraphNode;
108
+ prepareHistoryStack(): void;
107
109
  componentDidMount(): void;
108
110
  componentWillUnmount(): void;
109
111
  constructor(props: IGraphEditorProps);
@@ -155,6 +157,7 @@ export class GlobalState {
155
157
  stateManager: StateManager;
156
158
  onBuiltObservable: Observable<void>;
157
159
  onResetRequiredObservable: Observable<boolean>;
160
+ onClearUndoStack: Observable<void>;
158
161
  onZoomToFitRequiredObservable: Observable<void>;
159
162
  onReOrganizedRequiredObservable: Observable<void>;
160
163
  onPreviewModeChanged: Observable<void>;
@@ -1098,8 +1101,9 @@ import { IDisposable } from "@babylonjs/core/scene";
1098
1101
  * Class handling undo / redo operations
1099
1102
  */
1100
1103
  export class HistoryStack implements IDisposable {
1101
- private _history;
1104
+ private _historyStack;
1102
1105
  private _redoStack;
1106
+ private _activeData;
1103
1107
  private readonly _maxHistoryLength;
1104
1108
  private _locked;
1105
1109
  private _dataProvider;
@@ -1110,13 +1114,19 @@ export class HistoryStack implements IDisposable {
1110
1114
  * @param applyUpdate defines the code to execute when undo/redo operation is required
1111
1115
  */
1112
1116
  constructor(dataProvider: () => any, applyUpdate: (data: any) => void);
1117
+ /**
1118
+ * Process key event to handle undo / redo
1119
+ * @param evt defines the keyboard event to process
1120
+ * @returns true if the event was processed
1121
+ */
1122
+ processKeyEvent(evt: KeyboardEvent): boolean;
1113
1123
  /**
1114
1124
  * Resets the stack
1115
1125
  */
1116
1126
  reset(): void;
1117
1127
  private _generateJSONDiff;
1118
1128
  private _applyJSONDiff;
1119
- private _rebuildState;
1129
+ private _copy;
1120
1130
  /**
1121
1131
  * Stores the current state
1122
1132
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/node-geometry-editor",
3
- "version": "7.25.2",
3
+ "version": "7.26.0",
4
4
  "main": "dist/babylon.nodeGeometryEditor.max.js",
5
5
  "module": "dist/babylon.nodeGeometryEditor.max.js",
6
6
  "esnext": "dist/babylon.nodeGeometryEditor.max.js",
@@ -23,7 +23,7 @@
23
23
  "@types/react-dom": ">=16.0.9"
24
24
  },
25
25
  "devDependencies": {
26
- "@babylonjs/core": "^7.25.2",
26
+ "@babylonjs/core": "^7.26.0",
27
27
  "react": "^17.0.2",
28
28
  "react-dom": "^17.0.2"
29
29
  },