angular-three 3.6.1 → 3.7.1

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/lib/canvas.d.ts CHANGED
@@ -1,17 +1,18 @@
1
- import { ElementRef, Type } from '@angular/core';
1
+ import { ComponentRef, ElementRef, Type } from '@angular/core';
2
2
  import { ResizeResult } from 'ngxtension/resize';
3
3
  import { Raycaster, Scene, Vector3 } from 'three';
4
4
  import { createPointerEvents } from './dom/events';
5
+ import { NgtRoutedScene } from './routed-scene';
5
6
  import { NgtDpr, NgtGLOptions, NgtPerformance, NgtSize, NgtState } from './types';
6
7
  import * as i0 from "@angular/core";
7
- export declare class NgtCanvas {
8
+ export declare class NgtCanvas<TSceneGraph extends Type<any> | 'routed', TSceneCmp = TSceneGraph extends Type<infer Cmp> ? Cmp : NgtRoutedScene> {
8
9
  private store;
9
10
  private initRoot;
10
11
  private host;
11
12
  private zone;
12
13
  private environmentInjector;
13
14
  private injector;
14
- sceneGraph: import("@angular/core").InputSignalWithTransform<Type<any>, Type<any> | "routed">;
15
+ sceneGraph: import("@angular/core").InputSignalWithTransform<Type<TSceneCmp>, TSceneGraph>;
15
16
  gl: import("@angular/core").InputSignal<NgtGLOptions>;
16
17
  size: import("@angular/core").InputSignal<NgtSize | undefined>;
17
18
  shadows: import("@angular/core").InputSignalWithTransform<NonNullable<boolean | Partial<import("three").WebGLShadowMap> | "basic" | "percentage" | "soft" | "variance" | undefined>, unknown>;
@@ -25,24 +26,22 @@ export declare class NgtCanvas {
25
26
  raycaster: import("@angular/core").InputSignal<Partial<Raycaster> | undefined>;
26
27
  scene: import("@angular/core").InputSignal<Scene | Partial<Scene> | undefined>;
27
28
  camera: import("@angular/core").InputSignal<NonNullable<((import("angular-three").NgtCamera | Partial<{
28
- parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
29
- add?: ((...object: import("three").Object3D[]) => import("three").Camera) | undefined;
30
- remove?: ((...object: import("three").Object3D[]) => import("three").Camera) | undefined;
31
- attach: string | string[] | import("angular-three").NgtAttachFunction;
32
- readonly type?: string | undefined;
33
- name?: string | undefined;
34
- viewport?: import("three").Vector4 | undefined;
35
29
  addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").Camera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").Camera, typeof import("three").Camera>, ev: import("angular-three").NgtNodeEventMap<import("three").Camera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
36
30
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").Camera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").Camera, typeof import("three").Camera>, ev: import("angular-three").NgtNodeEventMap<import("three").Camera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
37
31
  clone?: ((recursive?: boolean) => import("three").Camera) | undefined;
38
32
  copy?: ((object: import("three").Object3D, recursive?: boolean) => import("three").Camera) | undefined;
33
+ add?: ((...object: import("three").Object3D[]) => import("three").Camera) | undefined;
39
34
  applyMatrix4?: ((matrix: import("three").Matrix4) => void) | undefined;
40
35
  applyQuaternion?: ((quaternion: import("three").Quaternion) => import("three").Camera) | undefined;
36
+ attach: string | string[] | import("angular-three").NgtAttachFunction;
41
37
  __ngt_args__: [];
38
+ readonly type?: string | undefined;
42
39
  toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
43
40
  readonly isObject3D?: true | undefined;
44
41
  readonly id?: number | undefined;
45
42
  uuid?: string | undefined;
43
+ name?: string | undefined;
44
+ parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
46
45
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
47
46
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
48
47
  readonly normalMatrix?: import("three").Matrix3 | undefined;
@@ -82,6 +81,7 @@ export declare class NgtCanvas {
82
81
  (vector: Vector3): void;
83
82
  (x: number, y: number, z: number): void;
84
83
  } | undefined;
84
+ remove?: ((...object: import("three").Object3D[]) => import("three").Camera) | undefined;
85
85
  removeFromParent?: (() => import("three").Camera) | undefined;
86
86
  clear?: (() => import("three").Camera) | undefined;
87
87
  getObjectById?: ((id: number) => import("three").Object3D | undefined) | undefined;
@@ -105,6 +105,7 @@ export declare class NgtCanvas {
105
105
  projectionMatrix?: import("three").Matrix4 | undefined;
106
106
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
107
107
  coordinateSystem?: import("three").CoordinateSystem | undefined;
108
+ viewport?: import("three").Vector4 | undefined;
108
109
  position: import("angular-three").NgtVector3;
109
110
  up: import("angular-three").NgtVector3;
110
111
  scale: import("angular-three").NgtVector3;
@@ -115,19 +116,14 @@ export declare class NgtCanvas {
115
116
  dispose: (() => void) | null;
116
117
  raycast: import("three").Object3D["raycast"] | null;
117
118
  } & {
118
- parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
119
- add?: ((...object: import("three").Object3D[]) => import("three").PerspectiveCamera) | undefined;
120
- remove?: ((...object: import("three").Object3D[]) => import("three").PerspectiveCamera) | undefined;
121
- attach: string | string[] | import("angular-three").NgtAttachFunction;
122
- readonly type?: string | undefined;
123
- name?: string | undefined;
124
- viewport?: import("three").Vector4 | undefined;
125
119
  addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").PerspectiveCamera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").PerspectiveCamera, typeof import("three").PerspectiveCamera>, ev: import("angular-three").NgtNodeEventMap<import("three").PerspectiveCamera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
126
120
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").PerspectiveCamera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").PerspectiveCamera, typeof import("three").PerspectiveCamera>, ev: import("angular-three").NgtNodeEventMap<import("three").PerspectiveCamera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
127
121
  clone?: ((recursive?: boolean) => import("three").PerspectiveCamera) | undefined;
128
122
  copy?: ((object: import("three").Object3D, recursive?: boolean) => import("three").PerspectiveCamera) | undefined;
123
+ add?: ((...object: import("three").Object3D[]) => import("three").PerspectiveCamera) | undefined;
129
124
  applyMatrix4?: ((matrix: import("three").Matrix4) => void) | undefined;
130
125
  applyQuaternion?: ((quaternion: import("three").Quaternion) => import("three").PerspectiveCamera) | undefined;
126
+ attach: string | string[] | import("angular-three").NgtAttachFunction;
131
127
  __ngt_args__: [fov?: number | undefined, aspect?: number | undefined, near?: number | undefined, far?: number | undefined];
132
128
  view?: {
133
129
  enabled: boolean;
@@ -138,10 +134,13 @@ export declare class NgtCanvas {
138
134
  width: number;
139
135
  height: number;
140
136
  } | null | undefined;
137
+ readonly type?: string | undefined;
141
138
  toJSON?: ((meta?: import("three").JSONMeta) => import("three").PerspectiveCameraJSON) | undefined;
142
139
  readonly isObject3D?: true | undefined;
143
140
  readonly id?: number | undefined;
144
141
  uuid?: string | undefined;
142
+ name?: string | undefined;
143
+ parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
145
144
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
146
145
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
147
146
  readonly normalMatrix?: import("three").Matrix3 | undefined;
@@ -181,6 +180,7 @@ export declare class NgtCanvas {
181
180
  (vector: Vector3): void;
182
181
  (x: number, y: number, z: number): void;
183
182
  } | undefined;
183
+ remove?: ((...object: import("three").Object3D[]) => import("three").PerspectiveCamera) | undefined;
184
184
  removeFromParent?: (() => import("three").PerspectiveCamera) | undefined;
185
185
  clear?: (() => import("three").PerspectiveCamera) | undefined;
186
186
  getObjectById?: ((id: number) => import("three").Object3D | undefined) | undefined;
@@ -204,6 +204,7 @@ export declare class NgtCanvas {
204
204
  projectionMatrix?: import("three").Matrix4 | undefined;
205
205
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
206
206
  coordinateSystem?: import("three").CoordinateSystem | undefined;
207
+ viewport?: import("three").Vector4 | undefined;
207
208
  readonly isPerspectiveCamera?: true | undefined;
208
209
  zoom?: number | undefined;
209
210
  fov?: number | undefined;
@@ -234,19 +235,14 @@ export declare class NgtCanvas {
234
235
  dispose: (() => void) | null;
235
236
  raycast: import("three").Object3D["raycast"] | null;
236
237
  } & {
237
- parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
238
- add?: ((...object: import("three").Object3D[]) => import("three").OrthographicCamera) | undefined;
239
- remove?: ((...object: import("three").Object3D[]) => import("three").OrthographicCamera) | undefined;
240
- attach: string | string[] | import("angular-three").NgtAttachFunction;
241
- readonly type?: string | undefined;
242
- name?: string | undefined;
243
- viewport?: import("three").Vector4 | undefined;
244
238
  addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").OrthographicCamera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").OrthographicCamera, typeof import("three").OrthographicCamera>, ev: import("angular-three").NgtNodeEventMap<import("three").OrthographicCamera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
245
239
  removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<import("three").OrthographicCamera>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<import("three").OrthographicCamera, typeof import("three").OrthographicCamera>, ev: import("angular-three").NgtNodeEventMap<import("three").OrthographicCamera>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
246
240
  clone?: ((recursive?: boolean) => import("three").OrthographicCamera) | undefined;
247
241
  copy?: ((object: import("three").Object3D, recursive?: boolean) => import("three").OrthographicCamera) | undefined;
242
+ add?: ((...object: import("three").Object3D[]) => import("three").OrthographicCamera) | undefined;
248
243
  applyMatrix4?: ((matrix: import("three").Matrix4) => void) | undefined;
249
244
  applyQuaternion?: ((quaternion: import("three").Quaternion) => import("three").OrthographicCamera) | undefined;
245
+ attach: string | string[] | import("angular-three").NgtAttachFunction;
250
246
  __ngt_args__: [left?: number | undefined, right?: number | undefined, top?: number | undefined, bottom?: number | undefined, near?: number | undefined, far?: number | undefined];
251
247
  view?: {
252
248
  enabled: boolean;
@@ -257,10 +253,13 @@ export declare class NgtCanvas {
257
253
  width: number;
258
254
  height: number;
259
255
  } | null | undefined;
256
+ readonly type?: string | undefined;
260
257
  toJSON?: ((meta?: import("three").JSONMeta) => import("three").OrthographicCameraJSON) | undefined;
261
258
  readonly isObject3D?: true | undefined;
262
259
  readonly id?: number | undefined;
263
260
  uuid?: string | undefined;
261
+ name?: string | undefined;
262
+ parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
264
263
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
265
264
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
266
265
  readonly normalMatrix?: import("three").Matrix3 | undefined;
@@ -300,6 +299,7 @@ export declare class NgtCanvas {
300
299
  (vector: Vector3): void;
301
300
  (x: number, y: number, z: number): void;
302
301
  } | undefined;
302
+ remove?: ((...object: import("three").Object3D[]) => import("three").OrthographicCamera) | undefined;
303
303
  removeFromParent?: (() => import("three").OrthographicCamera) | undefined;
304
304
  clear?: (() => import("three").OrthographicCamera) | undefined;
305
305
  getObjectById?: ((id: number) => import("three").Object3D | undefined) | undefined;
@@ -323,6 +323,7 @@ export declare class NgtCanvas {
323
323
  projectionMatrix?: import("three").Matrix4 | undefined;
324
324
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
325
325
  coordinateSystem?: import("three").CoordinateSystem | undefined;
326
+ viewport?: import("three").Vector4 | undefined;
326
327
  zoom?: number | undefined;
327
328
  near?: number | undefined;
328
329
  far?: number | undefined;
@@ -351,6 +352,7 @@ export declare class NgtCanvas {
351
352
  eventPrefix: import("@angular/core").InputSignal<NonNullable<"offset" | "client" | "page" | "layer" | "screen" | undefined>>;
352
353
  lookAt: import("@angular/core").InputSignal<Vector3 | [x: number, y: number, z: number] | undefined>;
353
354
  created: import("@angular/core").OutputEmitterRef<NgtState>;
355
+ rendered: import("@angular/core").OutputEmitterRef<ComponentRef<TSceneCmp>>;
354
356
  pointerMissed: import("@angular/core").OutputRef<MouseEvent>;
355
357
  private glCanvas;
356
358
  private glCanvasViewContainerRef;
@@ -361,6 +363,6 @@ export declare class NgtCanvas {
361
363
  private glRef?;
362
364
  constructor();
363
365
  private noZoneRender;
364
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtCanvas, never>;
365
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvas, "ngt-canvas", never, { "sceneGraph": { "alias": "sceneGraph"; "required": true; "isSignal": true; }; "gl": { "alias": "gl"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "shadows": { "alias": "shadows"; "required": false; "isSignal": true; }; "legacy": { "alias": "legacy"; "required": false; "isSignal": true; }; "linear": { "alias": "linear"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; "orthographic": { "alias": "orthographic"; "required": false; "isSignal": true; }; "frameloop": { "alias": "frameloop"; "required": false; "isSignal": true; }; "performance": { "alias": "performance"; "required": false; "isSignal": true; }; "dpr": { "alias": "dpr"; "required": false; "isSignal": true; }; "raycaster": { "alias": "raycaster"; "required": false; "isSignal": true; }; "scene": { "alias": "scene"; "required": false; "isSignal": true; }; "camera": { "alias": "camera"; "required": false; "isSignal": true; }; "events": { "alias": "events"; "required": false; "isSignal": true; }; "eventSource": { "alias": "eventSource"; "required": false; "isSignal": true; }; "eventPrefix": { "alias": "eventPrefix"; "required": false; "isSignal": true; }; "lookAt": { "alias": "lookAt"; "required": false; "isSignal": true; }; }, { "created": "created"; "pointerMissed": "pointerMissed"; }, never, never, true, never>;
366
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtCanvas<any, any>, never>;
367
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvas<any, any>, "ngt-canvas", never, { "sceneGraph": { "alias": "sceneGraph"; "required": true; "isSignal": true; }; "gl": { "alias": "gl"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "shadows": { "alias": "shadows"; "required": false; "isSignal": true; }; "legacy": { "alias": "legacy"; "required": false; "isSignal": true; }; "linear": { "alias": "linear"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; "orthographic": { "alias": "orthographic"; "required": false; "isSignal": true; }; "frameloop": { "alias": "frameloop"; "required": false; "isSignal": true; }; "performance": { "alias": "performance"; "required": false; "isSignal": true; }; "dpr": { "alias": "dpr"; "required": false; "isSignal": true; }; "raycaster": { "alias": "raycaster"; "required": false; "isSignal": true; }; "scene": { "alias": "scene"; "required": false; "isSignal": true; }; "camera": { "alias": "camera"; "required": false; "isSignal": true; }; "events": { "alias": "events"; "required": false; "isSignal": true; }; "eventSource": { "alias": "eventSource"; "required": false; "isSignal": true; }; "eventPrefix": { "alias": "eventPrefix"; "required": false; "isSignal": true; }; "lookAt": { "alias": "lookAt"; "required": false; "isSignal": true; }; }, { "created": "created"; "rendered": "rendered"; "pointerMissed": "pointerMissed"; }, never, never, true, never>;
366
368
  }
package/lib/portal.d.ts CHANGED
@@ -34,7 +34,7 @@ export type NgtPortalInjectableState = Partial<Omit<NgtState, NgtPortalPrivateKe
34
34
  }>;
35
35
  export declare class NgtPortal {
36
36
  container: import("@angular/core").InputSignal<Object3D<import("three").Object3DEventMap>>;
37
- state: import("@angular/core").InputSignal<Partial<Omit<NgtState, "events" | "size" | "viewport" | "invalidate" | "advance" | "setEvents" | "setSize" | "setDpr" | "setFrameloop"> & {
37
+ state: import("@angular/core").InputSignal<Partial<Omit<NgtState, "viewport" | "size" | "setSize" | "events" | "invalidate" | "advance" | "setEvents" | "setDpr" | "setFrameloop"> & {
38
38
  events?: {
39
39
  enabled?: boolean;
40
40
  priority?: number;
@@ -3,7 +3,7 @@ import { NgtCanvasElement, NgtDpr, NgtGLOptions, NgtIntersection, NgtSize } from
3
3
  export declare function makeId(event?: NgtIntersection): string;
4
4
  export declare function makeDpr(dpr: NgtDpr, window?: Window): number;
5
5
  export declare function makeRendererInstance<TCanvas extends NgtCanvasElement>(glOptions: NgtGLOptions, canvas: TCanvas): WebGLRenderer;
6
- export declare function makeCameraInstance(isOrthographic: boolean, size: NgtSize): OrthographicCamera | PerspectiveCamera;
6
+ export declare function makeCameraInstance(isOrthographic: boolean, size: NgtSize): PerspectiveCamera | OrthographicCamera;
7
7
  export type NgtObjectMap = {
8
8
  nodes: Record<string, Object3D<any>>;
9
9
  materials: Record<string, Material>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "angular-three",
3
- "version": "3.6.1",
3
+ "version": "3.7.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },