babylonjs-editor 5.4.0-alpha.2 → 5.4.1-alpha.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.
Files changed (33) hide show
  1. package/build/src/index.js +2 -1
  2. package/declaration/src/dashboard/main.d.ts +2 -0
  3. package/declaration/src/dashboard/preferences.d.ts +7 -0
  4. package/declaration/src/editor/layout/inspector/fields/switch.d.ts +1 -0
  5. package/declaration/src/editor/layout/inspector/fields/texture.d.ts +2 -2
  6. package/declaration/src/editor/layout/inspector/light/components/cluster.d.ts +7 -0
  7. package/declaration/src/editor/layout/inspector/light/components/pbr.d.ts +5 -0
  8. package/declaration/src/editor/layout/inspector/light/{shadows.d.ts → components/shadows.d.ts} +4 -1
  9. package/declaration/src/editor/layout/inspector/{marketplace-asset.d.ts → marketplace/asset.d.ts} +9 -9
  10. package/declaration/src/editor/layout/inspector/material/multi.d.ts +2 -0
  11. package/declaration/src/editor/layout/inspector/material/pbr.d.ts +5 -1
  12. package/declaration/src/editor/layout/{marketplace-browser → marketplace}/grid.d.ts +1 -1
  13. package/declaration/src/editor/layout/{marketplace-browser → marketplace}/sidebar.d.ts +3 -1
  14. package/declaration/src/editor/layout/{marketplace-browser.d.ts → marketplace.d.ts} +1 -0
  15. package/declaration/src/editor/layout/preview/import/import.d.ts +4 -3
  16. package/declaration/src/editor/layout/preview.d.ts +13 -1
  17. package/declaration/src/editor/layout.d.ts +5 -0
  18. package/declaration/src/editor/menu.d.ts +1 -1
  19. package/declaration/src/project/export/light.d.ts +2 -0
  20. package/declaration/src/tools/guards/nodes.d.ts +6 -1
  21. package/declaration/src/tools/guards/texture.d.ts +6 -1
  22. package/declaration/src/tools/light/cluster.d.ts +3 -0
  23. package/declaration/src/tools/local-storage.d.ts +9 -0
  24. package/declaration/src/tools/marketplaces/polyhaven.d.ts +2 -7
  25. package/declaration/src/tools/marketplaces/sketchfab/settings.d.ts +2 -2
  26. package/declaration/src/tools/marketplaces/sketchfab.d.ts +2 -8
  27. package/declaration/src/tools/node-pty.d.ts +4 -0
  28. package/package.json +18 -16
  29. /package/declaration/src/editor/layout/{marketplace-browser → marketplace}/footer.d.ts +0 -0
  30. /package/declaration/src/editor/layout/{marketplace-browser → marketplace}/import-progress.d.ts +0 -0
  31. /package/declaration/src/editor/layout/{marketplace-browser → marketplace}/item.d.ts +0 -0
  32. /package/declaration/src/editor/layout/{marketplace-browser → marketplace}/settings-dialog.d.ts +0 -0
  33. /package/declaration/src/editor/layout/{marketplace-browser → marketplace}/toolbar.d.ts +0 -0
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const os_1 = require("os");
4
- require("dotenv/config");
5
4
  const electron_updater_1 = require("electron-updater");
6
5
  const posix_1 = require("path/posix");
7
6
  const electron_1 = require("electron");
7
+ require("dotenv/config");
8
8
  const process_1 = require("./tools/process");
9
9
  const menu_1 = require("./editor/menu");
10
10
  const menu_2 = require("./dashboard/menu");
@@ -23,6 +23,7 @@ try {
23
23
  if (!electron_1.app.isPackaged) {
24
24
  process.env.DEBUG ??= "true";
25
25
  }
26
+ process.env.SKETCHFAB_CLIENT_ID ??= "XZVigLIpz1lqWCkAMRWWpZzKIEVaMEIcsBrgQWrD";
26
27
  if (process.env.DEBUG) {
27
28
  require("electron-reloader")(module);
28
29
  }
@@ -7,6 +7,7 @@ export interface IDashboardState {
7
7
  projects: ProjectType[];
8
8
  openedProjects: string[];
9
9
  createProject: boolean;
10
+ preferencesOpen: boolean;
10
11
  closeDashboardOnProjectOpen: boolean;
11
12
  }
12
13
  export declare class Dashboard extends Component<IDashboardProps, IDashboardState> {
@@ -14,6 +15,7 @@ export declare class Dashboard extends Component<IDashboardProps, IDashboardStat
14
15
  render(): ReactNode;
15
16
  componentDidMount(): Promise<void>;
16
17
  private _checkSystemAvailabilities;
18
+ private _handleKeepDashboardChanged;
17
19
  private _handleImportProject;
18
20
  private _tryRemoveProjectFromLocalStorage;
19
21
  }
@@ -0,0 +1,7 @@
1
+ export interface IDashboardPreferencesProps {
2
+ isOpened: boolean;
3
+ onClose: () => void;
4
+ closeDashboardOnProjectOpen: boolean;
5
+ onKeepDashboardChanged: (checked: boolean) => void;
6
+ }
7
+ export declare function DashboardPreferences(props: IDashboardPreferencesProps): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,6 @@
1
1
  import { IEditorInspectorFieldProps } from "./field";
2
2
  export interface IEditorInspectorSwitchFieldProps extends IEditorInspectorFieldProps {
3
+ disabled?: boolean;
3
4
  onChange?: (value: boolean) => void;
4
5
  }
5
6
  export declare function EditorInspectorSwitchField(props: IEditorInspectorSwitchFieldProps): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import { Component, PropsWithChildren, ReactNode } from "react";
2
- import { CubeTexture, Scene, Texture, ColorGradingTexture } from "babylonjs";
2
+ import { CubeTexture, Scene, Texture, ColorGradingTexture, HDRCubeTexture } from "babylonjs";
3
3
  export interface IEditorInspectorTextureFieldProps extends PropsWithChildren {
4
4
  title: string;
5
5
  property: string;
@@ -12,7 +12,7 @@ export interface IEditorInspectorTextureFieldProps extends PropsWithChildren {
12
12
  hideInvert?: boolean;
13
13
  noPopover?: boolean;
14
14
  scene?: Scene;
15
- onChange?: (texture: Texture | CubeTexture | ColorGradingTexture | null) => void;
15
+ onChange?: (texture: Texture | CubeTexture | ColorGradingTexture | HDRCubeTexture | null) => void;
16
16
  }
17
17
  export interface IEditorInspectorTextureFieldState {
18
18
  dragOver: boolean;
@@ -0,0 +1,7 @@
1
+ import { Light } from "babylonjs";
2
+ import { Editor } from "../../../../main";
3
+ export interface IEditorLightClusterInspectorProps {
4
+ light: Light;
5
+ editor: Editor;
6
+ }
7
+ export declare function EditorLightClusterInspector(props: IEditorLightClusterInspectorProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { Light } from "babylonjs";
2
+ export interface IEditorLightPBRInspectorProps {
3
+ object: Light;
4
+ }
5
+ export declare function EditorLightPBRInspector(props: IEditorLightPBRInspectorProps): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,11 @@
1
1
  import { Component, PropsWithChildren, ReactNode } from "react";
2
2
  import { IShadowGenerator, IShadowLight } from "babylonjs";
3
- import { IEditorInspectorListFieldItem } from "../fields/list";
3
+ import { Editor } from "../../../../main";
4
+ import { IEditorInspectorListFieldItem } from "../../fields/list";
4
5
  export interface IEditorLightShadowsInspectorProps extends PropsWithChildren {
6
+ editor: Editor;
5
7
  light: IShadowLight;
8
+ onShadowGeneratorChanged: () => void;
6
9
  }
7
10
  export interface IEditorLightShadowsInspectorState {
8
11
  generator: IShadowGenerator | null;
@@ -1,7 +1,7 @@
1
1
  import { Component, ReactNode } from "react";
2
- import { IMarketplaceAsset } from "../../../tools/marketplaces/types";
3
- import { MarketplaceProvider } from "../../../tools/marketplaces/provider";
4
- import { IEditorInspectorImplementationProps } from "./inspector";
2
+ import { IMarketplaceAsset } from "../../../../tools/marketplaces/types";
3
+ import { MarketplaceProvider } from "../../../../tools/marketplaces/provider";
4
+ import { IEditorInspectorImplementationProps } from "../inspector";
5
5
  export declare class MarketplaceAssetInspectorObject {
6
6
  readonly asset: IMarketplaceAsset;
7
7
  readonly provider: MarketplaceProvider;
@@ -10,12 +10,12 @@ export declare class MarketplaceAssetInspectorObject {
10
10
  constructor(asset: IMarketplaceAsset, provider: MarketplaceProvider, openSettings: () => void);
11
11
  }
12
12
  interface IEditorMarketplaceAssetInspectorState {
13
- selectedDownloadQuality?: string;
14
- selectedDownloadType?: string;
13
+ downloading: boolean;
15
14
  detailsLoading: boolean;
16
- isDownloading: boolean;
17
- details?: IMarketplaceAsset;
15
+ selectedDownloadType?: string;
16
+ selectedDownloadQuality?: string;
18
17
  assetPath?: string;
18
+ details?: IMarketplaceAsset;
19
19
  }
20
20
  export declare class EditorMarketplaceAssetInspector extends Component<IEditorInspectorImplementationProps<MarketplaceAssetInspectorObject>, IEditorMarketplaceAssetInspectorState> {
21
21
  /**
@@ -25,13 +25,13 @@ export declare class EditorMarketplaceAssetInspector extends Component<IEditorIn
25
25
  */
26
26
  static IsSupported(object: any): object is MarketplaceAssetInspectorObject;
27
27
  constructor(props: IEditorInspectorImplementationProps<MarketplaceAssetInspectorObject>);
28
+ render(): ReactNode;
28
29
  componentDidMount(): Promise<void>;
29
- componentWillUnmount(): void;
30
30
  componentDidUpdate(prevProps: IEditorInspectorImplementationProps<MarketplaceAssetInspectorObject>): void;
31
+ componentWillUnmount(): void;
31
32
  private _handleSettingsChanged;
32
33
  private _getAssetPath;
33
34
  private _openAssetFolder;
34
- render(): ReactNode;
35
35
  private _shouldShowLoginAction;
36
36
  private _loadDetails;
37
37
  private _handleImport;
@@ -1,6 +1,8 @@
1
1
  import { Component, ReactNode } from "react";
2
2
  import { Material, MultiMaterial } from "babylonjs";
3
+ import { Editor } from "../../../main";
3
4
  export interface IEditorPBRMaterialInspectorProps {
5
+ editor: Editor;
4
6
  material: MultiMaterial;
5
7
  }
6
8
  export interface IEditorMultiMaterialInspectorState {
@@ -4,7 +4,11 @@ export interface IEditorPBRMaterialInspectorProps {
4
4
  mesh?: AbstractMesh;
5
5
  material: PBRMaterial;
6
6
  }
7
- export declare class EditorPBRMaterialInspector extends Component<IEditorPBRMaterialInspectorProps> {
7
+ export interface IEditorPBRMaterialInspectorState {
8
+ subSurfaceEnabled: boolean;
9
+ }
10
+ export declare class EditorPBRMaterialInspector extends Component<IEditorPBRMaterialInspectorProps, IEditorPBRMaterialInspectorState> {
8
11
  constructor(props: IEditorPBRMaterialInspectorProps);
9
12
  render(): ReactNode;
13
+ private _handleSubSurfaceEnabledChange;
10
14
  }
@@ -6,4 +6,4 @@ export interface IMarketplaceGridProps {
6
6
  selectedAsset: IMarketplaceAsset | null;
7
7
  onAssetClick: (asset: IMarketplaceAsset) => void;
8
8
  }
9
- export declare const MarketplaceGrid: (props: IMarketplaceGridProps) => import("react/jsx-runtime").JSX.Element;
9
+ export declare function MarketplaceGrid(props: IMarketplaceGridProps): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,7 @@
1
1
  import { IMarketplaceAsset } from "../../../tools/marketplaces/types";
2
+ import { Editor } from "../../main";
2
3
  export interface IMarketplaceSidebarProps {
4
+ editor: Editor;
3
5
  asset?: IMarketplaceAsset;
4
6
  detailsLoading: boolean;
5
7
  selectedQuality?: string;
@@ -16,4 +18,4 @@ export interface IMarketplaceSidebarProps {
16
18
  onLogin?: () => void;
17
19
  openAssetFolder: () => void;
18
20
  }
19
- export declare const MarketplaceSidebar: (props: IMarketplaceSidebarProps) => import("react/jsx-runtime").JSX.Element | null;
21
+ export declare function MarketplaceSidebar(props: IMarketplaceSidebarProps): import("react/jsx-runtime").JSX.Element | null;
@@ -31,6 +31,7 @@ export declare class EditorMarketplaceBrowser extends Component<IMarketplaceBrow
31
31
  private _handlePreviousPage;
32
32
  private _handleNextPage;
33
33
  private _handleAssetClicked;
34
+ setSearchQuery(query: string): void;
34
35
  private _handleSearch;
35
36
  private _getDefaultFilters;
36
37
  }
@@ -1,9 +1,10 @@
1
- import { CubeTexture, ISceneLoaderAsyncResult, Material, Node, Scene, Texture, ColorGradingTexture, Sprite, IParticleSystem } from "babylonjs";
1
+ import { CubeTexture, ISceneLoaderAsyncResult, Material, Node, Scene, Texture, ColorGradingTexture, Sprite, IParticleSystem, HDRCubeTexture } from "babylonjs";
2
2
  export declare function tryConvertSceneFile(absolutePath: string, progress?: (percent: number) => void): Promise<string>;
3
3
  export declare function loadImportedSceneFile(scene: Scene, absolutePath: string): Promise<ISceneLoaderAsyncResult | null>;
4
4
  export declare function configureImportedNodeIds(node: Node | Sprite | IParticleSystem): void;
5
5
  export declare function configureImportedMaterial(material: Material): void;
6
- export declare function configureImportedTexture<T extends Texture | CubeTexture | ColorGradingTexture>(texture: T, noCheckInvertY?: boolean): T;
7
- export declare function configureEmbeddedTexture(texture: Texture, absolutePath: string): Promise<unknown>;
6
+ export declare function configureImportedTexture<T extends Texture | CubeTexture | ColorGradingTexture | HDRCubeTexture>(texture: T, noCheckInvertY?: boolean): T;
7
+ export declare function configureEmbeddedTexture(texture: Texture, absolutePath: string): Promise<boolean | void>;
8
+ export declare function cleanTexture(texture: Texture, filename: string): void;
8
9
  export declare function loadImportedMaterial(scene: Scene, absolutePath: string): Promise<Material | null>;
9
10
  export declare function cleanImportedGltf(result: ISceneLoaderAsyncResult): void;
@@ -1,5 +1,5 @@
1
1
  import { Component, ReactNode } from "react";
2
- import { AbstractEngine, Camera, ISceneLoaderAsyncResult, Scene } from "babylonjs";
2
+ import { AbstractEngine, Camera, ISceneLoaderAsyncResult, Scene, PickingInfo, SelectionOutlineLayer, ClusteredLightContainer } from "babylonjs";
3
3
  import { Editor } from "../main";
4
4
  import { EditorCamera } from "../nodes/camera";
5
5
  import { EditorPreviewGizmo } from "./preview/gizmo";
@@ -71,6 +71,18 @@ export declare class EditorPreview extends Component<IEditorPreviewProps, IEdito
71
71
  * Defines the reference to the canvas drawn in the preview.
72
72
  */
73
73
  canvas: HTMLCanvasElement | null;
74
+ /**
75
+ * Defines the reference to the last picking info processed in the preview.
76
+ */
77
+ lastPickingInfo: PickingInfo | null;
78
+ /**
79
+ * Defines the reference to the selection outline layer used to highlight a mesh when, for example, the pointer is over it.
80
+ */
81
+ selectionOutlineLayer: SelectionOutlineLayer;
82
+ /**
83
+ * Defines the reference to the clustered lighting container.
84
+ */
85
+ clusteredLightContainer: ClusteredLightContainer;
74
86
  private _renderScene;
75
87
  private _mouseDownPosition;
76
88
  private _objectUnderPointer;
@@ -7,6 +7,7 @@ import { EditorConsole } from "./layout/console";
7
7
  import { EditorInspector } from "./layout/inspector";
8
8
  import { EditorAnimation } from "./layout/animation";
9
9
  import { EditorAssetsBrowser } from "./layout/assets-browser";
10
+ import { EditorMarketplaceBrowser } from "./layout/marketplace";
10
11
  export interface IEditorLayoutProps {
11
12
  /**
12
13
  * The editor reference.
@@ -45,6 +46,10 @@ export declare class EditorLayout extends Component<IEditorLayoutProps> {
45
46
  * The animation editor of the editor.
46
47
  */
47
48
  animations: EditorAnimation;
49
+ /**
50
+ * The marketplace browser of the editor.
51
+ */
52
+ marketplace: EditorMarketplaceBrowser | null;
48
53
  /**
49
54
  * Observable for when the layout has changed.
50
55
  */
@@ -1,4 +1,4 @@
1
1
  export declare function setupEditorMenu(options: {
2
2
  enableExperimentalFeatures: boolean;
3
- openedTabs: string[];
3
+ openedTabs?: string[];
4
4
  }): void;
@@ -0,0 +1,2 @@
1
+ import { ClusteredLightContainer } from "babylonjs";
2
+ export declare function configureClusteredLights(data: any, clusteredLightContainer: ClusteredLightContainer): void;
@@ -1,4 +1,4 @@
1
- import { Bone, Camera, GroundMesh, Light, Mesh, Node, PointLight, TransformNode, DirectionalLight, InstancedMesh, FreeCamera, ArcRotateCamera, SpotLight, HemisphericLight, Skeleton } from "babylonjs";
1
+ import { Bone, Camera, GroundMesh, Light, Mesh, Node, PointLight, TransformNode, DirectionalLight, InstancedMesh, FreeCamera, ArcRotateCamera, SpotLight, HemisphericLight, Skeleton, ClusteredLightContainer } from "babylonjs";
2
2
  import { EditorCamera } from "../../editor/nodes/camera";
3
3
  import { CollisionMesh } from "../../editor/nodes/collision";
4
4
  /**
@@ -96,6 +96,11 @@ export declare function isHemisphericLight(object: any): object is HemisphericLi
96
96
  * @param object defines the reference to the object to test its class name.
97
97
  */
98
98
  export declare function isLight(object: any): object is Light;
99
+ /**
100
+ * Returns wether or not the given object is a ClusteredLightContainer.
101
+ * @param object defines the reference to the object to test its class name.
102
+ */
103
+ export declare function isClusteredLightContainer(object: any): object is ClusteredLightContainer;
99
104
  /**
100
105
  * Returns wether or not the given object is a Node.
101
106
  * @param object defines the reference to the object to test its class name.
@@ -1,5 +1,5 @@
1
1
  import { AdvancedDynamicTexture } from "babylonjs-gui";
2
- import { CubeTexture, Texture, ColorGradingTexture } from "babylonjs";
2
+ import { CubeTexture, Texture, ColorGradingTexture, HDRCubeTexture } from "babylonjs";
3
3
  /**
4
4
  * Returns wether or not the given object is a Texture.
5
5
  * @param object defines the reference to the object to test its class name.
@@ -10,6 +10,11 @@ export declare function isTexture(object: any): object is Texture;
10
10
  * @param object defines the reference to the object to test its class name.
11
11
  */
12
12
  export declare function isCubeTexture(object: any): object is CubeTexture;
13
+ /**
14
+ * Returns wether or not the given object is a HDRCubeTexture.
15
+ * @param object defines the reference to the object to test its class name.
16
+ */
17
+ export declare function isHDRCubeTexture(object: any): object is HDRCubeTexture;
13
18
  /**
14
19
  * Returns wether or not the given object is a AdvancedDynamicTexture.
15
20
  * @param object defines the reference to the object to test its class name.
@@ -0,0 +1,3 @@
1
+ import { Light } from "babylonjs";
2
+ import { Editor } from "../../editor/main";
3
+ export declare function isClusteredLight(light: Light, editor: Editor): boolean;
@@ -27,3 +27,12 @@ export declare function tryGetCloseDashboardOnProjectOpenFromLocalStorage(): boo
27
27
  * @param enabled defines whether or not the dashboard should be closed when a project is opened.
28
28
  */
29
29
  export declare function trySetCloseDashboardOnProjectOpenInLocalStorage(enabled: boolean): void;
30
+ /**
31
+ * Returns the terminal path stored in the local storage, or null if it fails to access the local storage or if no terminal path is stored.
32
+ */
33
+ export declare function tryGetTerminalFromLocalStorage(): string | null;
34
+ /**
35
+ * Sets the terminal path in the local storage.
36
+ * @param terminalPath defines the terminal path to set in the local storage.
37
+ */
38
+ export declare function trySetTerminalInLocalStorage(terminalPath: string): void;
@@ -1,4 +1,4 @@
1
- import { IMarketplaceAsset, IMarketplaceSearchResult, IMarketplaceFilterDefinition, IMarketplaceSearchFilters } from "./types";
1
+ import { IMarketplaceAsset, IMarketplaceSearchResult, IMarketplaceFilterDefinition, IMarketplaceSearchFilters, IFileToDownload } from "./types";
2
2
  import { MarketplaceProvider } from "./provider";
3
3
  export declare class PolyHavenProvider extends MarketplaceProvider {
4
4
  id: string;
@@ -7,10 +7,5 @@ export declare class PolyHavenProvider extends MarketplaceProvider {
7
7
  getSearchFilters(): IMarketplaceFilterDefinition[];
8
8
  search(query: string, pageToken?: string, filters?: IMarketplaceSearchFilters): Promise<IMarketplaceSearchResult>;
9
9
  getAssetDetails(id: string): Promise<IMarketplaceAsset>;
10
- protected getFilesToDownload(asset: IMarketplaceAsset, selectedQuality: string, selectedType: string): {
11
- url: any;
12
- md5: any;
13
- size: any;
14
- path: string;
15
- }[];
10
+ protected getFilesToDownload(asset: IMarketplaceAsset, selectedQuality: string, selectedType: string): IFileToDownload[];
16
11
  }
@@ -1,8 +1,8 @@
1
1
  import { ISketchfabSettings } from "../sketchfab";
2
2
  interface ISketchfabProviderSettingsProps {
3
- onSettingChanged: (key: string, value: string) => void;
4
3
  settings: ISketchfabSettings;
5
4
  handleOAuthLogin: () => void;
5
+ onSettingChanged: (key: string, value: string) => void;
6
6
  }
7
- export declare const SketchfabProviderSettings: ({ onSettingChanged, handleOAuthLogin, settings }: ISketchfabProviderSettingsProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare function SketchfabProviderSettings(props: ISketchfabProviderSettingsProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -1,5 +1,5 @@
1
- import { IMarketplaceAsset, IMarketplaceSearchResult, IFileToDownload, IMarketplaceSettings, IMarketplaceSearchFilters, IMarketplaceFilterDefinition } from "./types";
2
1
  import { ReactNode } from "react";
2
+ import { IMarketplaceAsset, IMarketplaceSearchResult, IFileToDownload, IMarketplaceSettings, IMarketplaceSearchFilters, IMarketplaceFilterDefinition, IMarketplaceOAuth } from "./types";
3
3
  import { MarketplaceProvider } from "./provider";
4
4
  export interface ISketchfabSettings extends IMarketplaceSettings {
5
5
  token: string;
@@ -12,18 +12,12 @@ export declare class SketchfabProvider extends MarketplaceProvider {
12
12
  private _pendingOAuthState;
13
13
  protected _settings: ISketchfabSettings;
14
14
  renderSettings(): ReactNode;
15
- getOAuth(): {
16
- authorizeUrl: string;
17
- redirectUrl: string;
18
- onRedirect: (url: string) => Promise<void>;
19
- };
15
+ getOAuth(): IMarketplaceOAuth;
20
16
  getSearchFilters(): IMarketplaceFilterDefinition[];
21
17
  search(query: string, pageToken?: string, filters?: IMarketplaceSearchFilters): Promise<IMarketplaceSearchResult>;
22
18
  getAssetDetails(id: string): Promise<IMarketplaceAsset>;
23
19
  protected getFilesToDownload(asset: IMarketplaceAsset, selectedQuality: string, selectedType: string): IFileToDownload[];
24
20
  isAuthenticated(): boolean;
25
21
  login(): void;
26
- private _handleOAuthLogin;
27
22
  private _createOAuthState;
28
- private _resolveOAuthCallbackUrl;
29
23
  }
@@ -12,6 +12,10 @@ export declare class NodePtyInstance {
12
12
  * The id of the node-pty instance.
13
13
  */
14
14
  readonly id: string;
15
+ /**
16
+ * An observable that is triggered when the pty process is killed.
17
+ */
18
+ onKillObservable: Observable<void>;
15
19
  /**
16
20
  * An observable that is triggered when data is received from the pty.
17
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "babylonjs-editor",
3
- "version": "5.4.0-alpha.2",
3
+ "version": "5.4.1-alpha.0",
4
4
  "description": "Babylon.js Editor is a Web Application helping artists to work with Babylon.js",
5
5
  "productName": "Babylon.js Editor",
6
6
  "main": "build/src/index.js",
@@ -31,7 +31,7 @@
31
31
  "@types/react-dom": "18.2.18",
32
32
  "@vitest/coverage-v8": "4.0.17",
33
33
  "concurrently": "9.2.0",
34
- "electron": "39.2.7",
34
+ "electron": "39.8.3",
35
35
  "electron-builder": "26.0.12",
36
36
  "electron-reloader": "1.2.3",
37
37
  "postcss-import": "16.1.0",
@@ -40,8 +40,8 @@
40
40
  "vitest": "4.0.17"
41
41
  },
42
42
  "dependencies": {
43
- "@babylonjs/addons": "8.56.2",
44
- "@babylonjs/core": "8.56.2",
43
+ "@babylonjs/addons": "9.0.0",
44
+ "@babylonjs/core": "9.0.0",
45
45
  "@babylonjs/havok": "1.3.10",
46
46
  "@blueprintjs/core": "^5.10.0",
47
47
  "@blueprintjs/select": "^5.1.2",
@@ -75,18 +75,18 @@
75
75
  "@xterm/xterm": "6.1.0-beta.22",
76
76
  "assimpjs": "0.0.10",
77
77
  "axios": "1.13.5",
78
- "babylonjs": "8.56.2",
79
- "babylonjs-addons": "8.56.2",
78
+ "babylonjs": "9.0.0",
79
+ "babylonjs-addons": "9.0.0",
80
80
  "babylonjs-editor-cli": "latest",
81
81
  "babylonjs-editor-tools": "latest",
82
- "babylonjs-gui": "8.56.2",
83
- "babylonjs-gui-editor": "8.56.2",
84
- "babylonjs-loaders": "8.56.2",
85
- "babylonjs-materials": "8.56.2",
86
- "babylonjs-node-editor": "8.56.2",
87
- "babylonjs-node-particle-editor": "8.56.2",
88
- "babylonjs-post-process": "8.56.2",
89
- "babylonjs-procedural-textures": "8.56.2",
82
+ "babylonjs-gui": "9.0.0",
83
+ "babylonjs-gui-editor": "9.0.0",
84
+ "babylonjs-loaders": "9.0.0",
85
+ "babylonjs-materials": "9.0.0",
86
+ "babylonjs-node-editor": "9.0.0",
87
+ "babylonjs-node-particle-editor": "9.0.0",
88
+ "babylonjs-post-process": "9.0.0",
89
+ "babylonjs-procedural-textures": "9.0.0",
90
90
  "chokidar": "^4.0.3",
91
91
  "class-variance-authority": "^0.7.0",
92
92
  "clsx": "^2.1.0",
@@ -108,17 +108,19 @@
108
108
  "md5": "2.3.0",
109
109
  "motion": "12.23.24",
110
110
  "next-themes": "^0.3.0",
111
- "node-pty": "1.1.0-beta43",
111
+ "node-pty": "1.2.0-beta.12",
112
+ "node-stream-zip": "1.15.0",
112
113
  "pngjs": "7.0.0",
113
114
  "react": "18.2.0",
114
115
  "react-awesome-reveal": "4.2.14",
115
116
  "react-dom": "18.2.0",
116
- "react-icons": "5.5.0",
117
+ "react-icons": "5.6.0",
117
118
  "react-loader-spinner": "6.1.6",
118
119
  "react-resizable-panels": "^2.1.2",
119
120
  "react-selectable": "^2.1.1",
120
121
  "sharp": "0.34.3",
121
122
  "sonner": "^1.4.41",
123
+ "strip-ansi": "7.2.0",
122
124
  "tailwind-merge": "^2.2.1",
123
125
  "tailwindcss-animate": "^1.0.7",
124
126
  "usehooks-ts": "^3.1.0",