@xviewer.js/core 1.0.0-alpha.0 → 1.0.0-alpha.10

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.
package/package.json CHANGED
@@ -1,23 +1,25 @@
1
1
  {
2
2
  "name": "@xviewer.js/core",
3
- "version": "1.0.0-alpha.0",
3
+ "version": "1.0.0-alpha.10",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
7
7
  },
8
8
  "license": "MIT",
9
+ "type": "module",
10
+ "sideEffects": false,
9
11
  "main": "dist/main.js",
10
12
  "module": "dist/module.js",
11
13
  "types": "types/index.d.ts",
12
14
  "debug": "src/index.ts",
13
- "scripts": {
14
- "b:types": "tsc"
15
- },
16
15
  "files": [
17
16
  "dist/**/*",
18
17
  "types/**/*"
19
18
  ],
20
19
  "peerDependencies": {
21
20
  "three": ">= 0.164.0 < 0.165.0"
21
+ },
22
+ "scripts": {
23
+ "b:types": "tsc"
22
24
  }
23
- }
25
+ }
package/types/Viewer.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { BufferGeometry, Camera, ColorSpace, DataTexture, DirectionalLightShadow, Euler, Material, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Scene, ShaderMaterial, ShadowMapType, Texture, TextureDataType, ToneMapping, Vector3, WebGLCubeRenderTarget, WebGLRenderer, WebGLRendererParameters, WebGLRenderTarget } from "three";
2
2
  import { EventEmitter } from "./base";
3
3
  import { ComponentManager } from "./ComponentManager";
4
- import { AssetProperties } from "./asset/ResourceManager";
5
- import { __C, __Comp, __P } from "./types";
4
+ import { AssetProperties, LoaderConstructor } from "./asset/ResourceManager";
5
+ import { __C, __P } from "./types";
6
6
  import { Component } from "./Component";
7
7
  import { TextureSettings } from "./TextureSettings";
8
8
  import { Plugin } from "./Plugin";
@@ -96,6 +96,7 @@ export declare class Viewer extends EventEmitter {
96
96
  };
97
97
  } & WebGLRendererParameters);
98
98
  destroy(): void;
99
+ private _addDefaultLoaders;
99
100
  private _frame;
100
101
  loop(dt: number): void;
101
102
  update(dt: number): void;
@@ -106,6 +107,7 @@ export declare class Viewer extends EventEmitter {
106
107
  stop(): this;
107
108
  resize(width?: number, height?: number): void;
108
109
  loadAsset(props: AssetProperties & TextureSettings): Promise<any>;
110
+ addLoader(Loader: LoaderConstructor): void;
109
111
  load({ url, ext, onProgress, castShadow, receiveShadow, ...props }: AssetProperties & __P<Object3D, typeof Object3D>): Promise<any>;
110
112
  tween(target: Object): import("./tween").Tween<Object>;
111
113
  timeline(target: Object): import("./tween").TweenChain;
@@ -126,8 +128,7 @@ export declare class Viewer extends EventEmitter {
126
128
  removeComponent(node: Object3D, component: Component): ComponentManager;
127
129
  addNode<T, K extends __C<T>>(object: T | K & __C<T>, props?: __P<T, K>): T;
128
130
  removeNode(node: Object3D): void;
129
- activeNode(node: Object3D, active: boolean): void;
130
- createComponent<T extends Component, K extends __C<T>>(comp: T | K & __C<T>, props?: __Comp<T, K>): any;
131
+ activeNode(node: Object3D, active: boolean): Object3D<import("three").Object3DEventMap>;
131
132
  createRenderTarget(width: number, height: number, nearest?: boolean, floatType?: boolean | TextureDataType, msaa?: number, mipmap?: boolean): WebGLRenderTarget<Texture>;
132
133
  createCubeRenderTarget(size: number, nearest?: boolean, floatType?: boolean | TextureDataType, msaa?: number, mipmap?: boolean): WebGLCubeRenderTarget;
133
134
  createDataTexture(data: BufferSource, width: number, height: number, floatType?: boolean, nearest?: boolean): DataTexture;
@@ -9,12 +9,11 @@ export interface AssetProperties {
9
9
  };
10
10
  onProgress?: (event: ProgressEvent) => void;
11
11
  }
12
+ export type LoaderConstructor = new (manager: ResourceManager) => aLoader;
12
13
  export declare class ResourceManager {
13
14
  static extension(path: string): string;
14
15
  static dirname(path: string): string;
15
16
  static basename(path: string, ext?: string): string;
16
- static _loaders: Map<string, aLoader>;
17
- static _addLoader(extNames: string[], Loader: new () => aLoader): void;
18
17
  static _parseURL(uri: any): {
19
18
  url: string;
20
19
  file: any;
@@ -30,6 +29,7 @@ export declare class ResourceManager {
30
29
  dracoPath: string;
31
30
  loadingManager: LoadingManager;
32
31
  private _caches;
32
+ private _loaders;
33
33
  constructor(props: {
34
34
  path: string;
35
35
  resourcePath: string;
@@ -37,6 +37,6 @@ export declare class ResourceManager {
37
37
  loadingManager: LoadingManager;
38
38
  });
39
39
  destroy(): void;
40
+ addLoader(Loader: LoaderConstructor): void;
40
41
  loadAsset<T = any>({ url, ext, onProgress, ...props }: AssetProperties & TextureSettings): Promise<T>;
41
42
  }
42
- export declare function resourceLoader(extNames: string[]): <T extends aLoader>(Loader: new () => T) => void;
@@ -1,4 +1,4 @@
1
- import { LoadingManager, Object3D } from "three";
1
+ import { Object3D } from "three";
2
2
  import { ResourceManager } from "./ResourceManager";
3
3
  import { TextureSettings } from "../TextureSettings";
4
4
  export interface LoadProperties {
@@ -9,8 +9,9 @@ export interface LoadProperties {
9
9
  onError?: (event: ErrorEvent) => void;
10
10
  }
11
11
  export declare abstract class aLoader {
12
- static _setMeshData(node: Object3D): Object3D<import("three").Object3DEventMap>;
13
12
  manager: ResourceManager;
14
- loadingManager: LoadingManager;
13
+ static _setMeshData(node: Object3D): Object3D<import("three").Object3DEventMap>;
14
+ constructor(manager: ResourceManager);
15
+ abstract extension: string[];
15
16
  abstract load(props: LoadProperties): void;
16
17
  }
@@ -1,9 +1,10 @@
1
1
  import { Object3D, Quaternion, Spherical, Vector2, Vector3 } from "three";
2
2
  import { VirtualCamera } from "./VirtualCamera";
3
- export declare enum VCamFreeLookMode {
4
- FREE = 0,
5
- TRANSLATE = 1
6
- }
3
+ export declare const VCamFreeLookMode: {
4
+ FREE: number;
5
+ TRANSLATE: number;
6
+ };
7
+ export type VCamFreeLookMode = typeof VCamFreeLookMode[keyof typeof VCamFreeLookMode];
7
8
  export declare class FreelookVirtualCamera extends VirtualCamera {
8
9
  static __loc0: Vector2;
9
10
  static __loc1: Vector2;
@@ -0,0 +1,5 @@
1
+ import { LoadProperties, aLoader } from "../asset/aLoader";
2
+ export declare class aEXRLoader extends aLoader {
3
+ extension: string[];
4
+ load({ url, onLoad, onProgress, onError, texSettings }: LoadProperties): void;
5
+ }
@@ -1,4 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aFBXLoader extends aLoader {
3
+ extension: string[];
3
4
  load({ url, onLoad, onProgress, onError }: LoadProperties): void;
4
5
  }
@@ -1,4 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aGLTFLoader extends aLoader {
3
+ extension: string[];
3
4
  load({ url, onLoad, onProgress, onError }: LoadProperties): void;
4
5
  }
@@ -1,4 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aHDRLoader extends aLoader {
3
+ extension: string[];
3
4
  load({ url, onLoad, onProgress, onError, texSettings }: LoadProperties): void;
4
5
  }
@@ -0,0 +1,5 @@
1
+ import { LoadProperties, aLoader } from "../asset/aLoader";
2
+ export declare class aJSONLoader extends aLoader {
3
+ extension: string[];
4
+ load({ url, onLoad, onProgress, onError }: LoadProperties): void;
5
+ }
@@ -1,4 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aTextureLoader extends aLoader {
3
+ extension: string[];
3
4
  load({ url, onLoad, onProgress, onError, texSettings }: LoadProperties): void;
4
5
  }
@@ -1,8 +1,6 @@
1
- import "./aGLTFLoader";
2
- import "./aFBXLoader";
3
- import "./aHDRLoader";
4
- import "./aTextureLoader";
5
- export { aGLTFLoader } from "./aGLTFLoader";
1
+ export { aEXRLoader } from "./aEXRLoader";
6
2
  export { aFBXLoader } from "./aFBXLoader";
3
+ export { aGLTFLoader } from "./aGLTFLoader";
7
4
  export { aHDRLoader } from "./aHDRLoader";
5
+ export { aJSONLoader } from "./aJSONLoader";
8
6
  export { aTextureLoader } from "./aTextureLoader";