@xviewer.js/core 1.0.0-alpha.54 → 1.0.0-alpha.56

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@xviewer.js/core",
3
- "version": "1.0.0-alpha.54",
3
+ "version": "1.0.0-alpha.56",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "sideEffects": false,
package/types/Task.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export declare class Task {
2
2
  excute: () => void;
3
3
  name: string;
4
+ static _instanceCount: number;
4
5
  constructor(excute: () => void, name?: string);
6
+ instanceId: number;
5
7
  }
package/types/Viewer.d.ts CHANGED
@@ -1,13 +1,14 @@
1
- import { BufferGeometry, Camera, ColorSpace, DataTexture, DirectionalLightShadow, Euler, Material, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Scene, ShadowMapType, Texture, TextureDataType, ToneMapping, Vector3, WebGLCubeRenderTarget, WebGLRenderer, WebGLRendererParameters, WebGLRenderTarget } from "three";
1
+ import { BufferGeometry, Camera, ColorSpace, DataTexture, DirectionalLightShadow, Euler, LoadingManager, Material, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Scene, 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 { TaskManager } from "./TaskManager";
4
5
  import { DeviceInput } from "./DeviceInput";
5
6
  import { Orientation } from "./enums/Orientation";
6
- import { AssetProperties, LoaderConstructor } from "./asset/ResourceManager";
7
+ import { AssetProperties, LoaderConstructor, ResourceManager } from "./asset/ResourceManager";
7
8
  import { __C, __P } from "./types";
8
9
  import { Component } from "./Component";
9
- import { TextureSettings } from "./TextureSettings";
10
10
  import { Plugin } from "./Plugin";
11
+ import { Task } from "./Task";
11
12
  export declare class Viewer extends EventEmitter {
12
13
  static __target: Vector3;
13
14
  static __worldPos: Vector3;
@@ -62,6 +63,7 @@ export declare class Viewer extends EventEmitter {
62
63
  private _componentManager;
63
64
  private _pluginManager;
64
65
  private _tweenManager;
66
+ private _loadingManager;
65
67
  get instanceId(): number;
66
68
  get root(): HTMLElement;
67
69
  get time(): number;
@@ -84,6 +86,9 @@ export declare class Viewer extends EventEmitter {
84
86
  get input(): DeviceInput;
85
87
  get targetFrameRate(): number;
86
88
  set targetFrameRate(v: number);
89
+ get loadingManager(): LoadingManager;
90
+ get resourceManager(): ResourceManager;
91
+ get taskManager(): TaskManager;
87
92
  constructor({ root, canvas, autoStart, autoResize, shadows, camera, targetFrameRate, fixedFrameTime, colorSpace, toneMapping, toneMappingExposure, maxDPR, path, resourcePath, dracoPath, orientation, loader, tasker, ...webglOpts }?: {
88
93
  root?: HTMLElement;
89
94
  canvas?: HTMLCanvasElement;
@@ -130,9 +135,9 @@ export declare class Viewer extends EventEmitter {
130
135
  start(): this;
131
136
  stop(): this;
132
137
  resize(width?: number, height?: number): void;
133
- loadAsset(props: AssetProperties & TextureSettings): Promise<any>;
138
+ loadAsset(props: AssetProperties): Promise<any>;
139
+ getLoader(ext: string): import(".").aLoader;
134
140
  addLoader(Loader: LoaderConstructor): void;
135
- load({ url, ext, onProgress, castShadow, receiveShadow, ...props }: AssetProperties & __P<Object3D, typeof Object3D>): Promise<any>;
136
141
  timeline(target: Object): import("./tween").TweenChain;
137
142
  killTweensOf(target: Object): void;
138
143
  traverseMaterials(callback: (mat: Material) => void): void;
@@ -149,6 +154,7 @@ export declare class Viewer extends EventEmitter {
149
154
  new (): T;
150
155
  }): T;
151
156
  removeComponent(node: Object3D, component: Component): ComponentManager;
157
+ addTask(task: Task): void;
152
158
  addNode<T, K extends __C<T>>(object: T | K & __C<T>, props?: __P<T, K>): T;
153
159
  removeNode(node: Object3D): void;
154
160
  activeNode(node: Object3D, active: boolean): Object3D<import("three").Object3DEventMap>;
@@ -1,12 +1,10 @@
1
1
  import { LoadingManager } from "three";
2
2
  import { TextureSettings } from "../TextureSettings";
3
3
  import { aLoader } from "./aLoader";
4
- export interface AssetProperties {
4
+ export interface AssetProperties extends TextureSettings {
5
+ url: string;
5
6
  ext?: string;
6
- url?: string | File | {
7
- mainFile: File;
8
- additionalFiles: File[];
9
- };
7
+ buffer?: ArrayBuffer;
10
8
  onProgress?: (event: ProgressEvent) => void;
11
9
  }
12
10
  export type LoaderConstructor = new (manager: ResourceManager) => aLoader;
@@ -14,11 +12,6 @@ export declare class ResourceManager {
14
12
  static extension(path: string): string;
15
13
  static dirname(path: string): string;
16
14
  static basename(path: string, ext?: string): string;
17
- static _parseURL(uri: any): {
18
- url: string;
19
- file: any;
20
- ext: string;
21
- };
22
15
  static _getTextureKey(url: string, settings: TextureSettings): string;
23
16
  static _texSettingKeys: string[];
24
17
  static _splitTextureSettings(props: TextureSettings & {
@@ -37,6 +30,7 @@ export declare class ResourceManager {
37
30
  loadingManager: LoadingManager;
38
31
  });
39
32
  destroy(): void;
33
+ getLoader(ext: string): aLoader;
40
34
  addLoader(Loader: LoaderConstructor): void;
41
- loadAsset<T = any>({ url, ext, onProgress, ...props }: AssetProperties & TextureSettings): Promise<T>;
35
+ loadAsset<T = any>({ url, buffer, ext, onProgress, ...props }: AssetProperties): Promise<T>;
42
36
  }
@@ -3,6 +3,7 @@ import { ResourceManager } from "./ResourceManager";
3
3
  import { TextureSettings } from "../TextureSettings";
4
4
  export interface LoadProperties {
5
5
  url: string;
6
+ buffer?: string | ArrayBuffer;
6
7
  texSettings?: TextureSettings;
7
8
  onLoad: (asset: any) => void;
8
9
  onProgress?: (event: ProgressEvent) => void;
package/types/index.d.ts CHANGED
@@ -16,4 +16,5 @@ export { ObjectInstance } from "./ObjectInstance";
16
16
  export { property, PropertyManager } from "./PropertyManager";
17
17
  export { DeviceInput } from "./DeviceInput";
18
18
  export { Orientation } from "./enums/Orientation";
19
- export * from "./asset/aLoader";
19
+ export { aLoader, type LoadProperties } from "./asset/aLoader";
20
+ export { ResourceManager, type AssetProperties } from "./asset/ResourceManager";
@@ -1,5 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aFBXLoader extends aLoader {
3
3
  extension: string[];
4
- load({ url, onLoad, onProgress, onError }: LoadProperties): void;
4
+ load({ url, buffer, onLoad, onProgress, onError }: LoadProperties): void;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { LoadProperties, aLoader } from "../asset/aLoader";
2
2
  export declare class aGLTFLoader extends aLoader {
3
3
  extension: string[];
4
- load({ url, onLoad, onProgress, onError }: LoadProperties): void;
4
+ load({ url, buffer, onLoad, onProgress, onError }: LoadProperties): void;
5
5
  }