angular-three 3.6.0 → 3.7.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.
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 | "basic" | "percentage" | "soft" | "variance" | Partial<import("three").WebGLShadowMap> | undefined>, unknown>;
@@ -26,7 +27,6 @@ export declare class NgtCanvas {
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
29
  readonly type?: string | undefined;
29
- viewport?: import("three").Vector4 | undefined;
30
30
  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);
31
31
  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);
32
32
  attach: string | string[] | import("angular-three").NgtAttachFunction;
@@ -36,6 +36,7 @@ export declare class NgtCanvas {
36
36
  projectionMatrix?: import("three").Matrix4 | undefined;
37
37
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
38
38
  coordinateSystem?: import("three").CoordinateSystem | undefined;
39
+ viewport?: import("three").Vector4 | undefined;
39
40
  getWorldDirection?: ((target: Vector3) => Vector3) | undefined;
40
41
  readonly isObject3D?: true | undefined;
41
42
  readonly id?: number | undefined;
@@ -115,17 +116,7 @@ export declare class NgtCanvas {
115
116
  dispose: (() => void) | null;
116
117
  raycast: import("three").Object3D["raycast"] | null;
117
118
  } & {
118
- view?: {
119
- enabled: boolean;
120
- fullWidth: number;
121
- fullHeight: number;
122
- offsetX: number;
123
- offsetY: number;
124
- width: number;
125
- height: number;
126
- } | null | undefined;
127
119
  readonly type?: string | undefined;
128
- viewport?: import("three").Vector4 | undefined;
129
120
  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);
130
121
  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);
131
122
  attach: string | string[] | import("angular-three").NgtAttachFunction;
@@ -135,6 +126,7 @@ export declare class NgtCanvas {
135
126
  projectionMatrix?: import("three").Matrix4 | undefined;
136
127
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
137
128
  coordinateSystem?: import("three").CoordinateSystem | undefined;
129
+ viewport?: import("three").Vector4 | undefined;
138
130
  getWorldDirection?: ((target: Vector3) => Vector3) | undefined;
139
131
  readonly isObject3D?: true | undefined;
140
132
  readonly id?: number | undefined;
@@ -211,6 +203,15 @@ export declare class NgtCanvas {
211
203
  near?: number | undefined;
212
204
  far?: number | undefined;
213
205
  focus?: number | undefined;
206
+ view?: {
207
+ enabled: boolean;
208
+ fullWidth: number;
209
+ fullHeight: number;
210
+ offsetX: number;
211
+ offsetY: number;
212
+ width: number;
213
+ height: number;
214
+ } | null | undefined;
214
215
  filmGauge?: number | undefined;
215
216
  filmOffset?: number | undefined;
216
217
  getFocalLength?: (() => number) | undefined;
@@ -234,17 +235,7 @@ export declare class NgtCanvas {
234
235
  dispose: (() => void) | null;
235
236
  raycast: import("three").Object3D["raycast"] | null;
236
237
  } & {
237
- view?: {
238
- enabled: boolean;
239
- fullWidth: number;
240
- fullHeight: number;
241
- offsetX: number;
242
- offsetY: number;
243
- width: number;
244
- height: number;
245
- } | null | undefined;
246
238
  readonly type?: string | undefined;
247
- viewport?: import("three").Vector4 | undefined;
248
239
  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);
249
240
  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);
250
241
  attach: string | string[] | import("angular-three").NgtAttachFunction;
@@ -254,6 +245,7 @@ export declare class NgtCanvas {
254
245
  projectionMatrix?: import("three").Matrix4 | undefined;
255
246
  projectionMatrixInverse?: import("three").Matrix4 | undefined;
256
247
  coordinateSystem?: import("three").CoordinateSystem | undefined;
248
+ viewport?: import("three").Vector4 | undefined;
257
249
  getWorldDirection?: ((target: Vector3) => Vector3) | undefined;
258
250
  readonly isObject3D?: true | undefined;
259
251
  readonly id?: number | undefined;
@@ -326,6 +318,15 @@ export declare class NgtCanvas {
326
318
  zoom?: number | undefined;
327
319
  near?: number | undefined;
328
320
  far?: number | undefined;
321
+ view?: {
322
+ enabled: boolean;
323
+ fullWidth: number;
324
+ fullHeight: number;
325
+ offsetX: number;
326
+ offsetY: number;
327
+ width: number;
328
+ height: number;
329
+ } | null | undefined;
329
330
  setViewOffset?: ((fullWidth: number, fullHeight: number, offsetX: number, offsetY: number, width: number, height: number) => void) | undefined;
330
331
  clearViewOffset?: (() => void) | undefined;
331
332
  updateProjectionMatrix?: (() => void) | 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/html.d.ts CHANGED
@@ -11,7 +11,7 @@ export declare abstract class NgtHTML {
11
11
  protected store: import("angular-three").NgtSignalStore<import("angular-three").NgtState>;
12
12
  protected destroyRef: DestroyRef;
13
13
  protected host: ElementRef<HTMLElement>;
14
- protected domElement: "gl" | HTMLElement | null;
14
+ protected domElement: HTMLElement | "gl" | null;
15
15
  constructor();
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtHTML, never>;
17
17
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgtHTML, never, never, {}, {}, never, never, true, never>;
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, "setSize" | "setFrameloop" | "setDpr" | "events" | "setEvents" | "invalidate" | "advance" | "size" | "viewport"> & {
37
+ state: import("@angular/core").InputSignal<Partial<Omit<NgtState, "viewport" | "events" | "size" | "invalidate" | "advance" | "setEvents" | "setSize" | "setDpr" | "setFrameloop"> & {
38
38
  events?: {
39
39
  enabled?: boolean;
40
40
  priority?: number;
@@ -18,6 +18,7 @@ export declare class NgtCanvasNative {
18
18
  raycaster: import("@angular/core").InputSignal<Partial<Raycaster> | undefined>;
19
19
  scene: import("@angular/core").InputSignal<Scene | Partial<Scene> | undefined>;
20
20
  camera: import("@angular/core").InputSignal<NonNullable<((import("angular-three").NgtCamera | Partial<{
21
+ name?: string | undefined;
21
22
  readonly type?: string | undefined;
22
23
  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);
23
24
  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);
@@ -33,7 +34,6 @@ export declare class NgtCanvasNative {
33
34
  readonly isObject3D?: true | undefined;
34
35
  readonly id?: number | undefined;
35
36
  uuid?: string | undefined;
36
- name?: string | undefined;
37
37
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
38
38
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
39
39
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
@@ -108,6 +108,7 @@ export declare class NgtCanvasNative {
108
108
  dispose: (() => void) | null;
109
109
  raycast: import("three").Object3D["raycast"] | null;
110
110
  } & {
111
+ name?: string | undefined;
111
112
  readonly type?: string | undefined;
112
113
  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);
113
114
  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);
@@ -123,7 +124,6 @@ export declare class NgtCanvasNative {
123
124
  readonly isObject3D?: true | undefined;
124
125
  readonly id?: number | undefined;
125
126
  uuid?: string | undefined;
126
- name?: string | undefined;
127
127
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
128
128
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
129
129
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
@@ -227,6 +227,7 @@ export declare class NgtCanvasNative {
227
227
  dispose: (() => void) | null;
228
228
  raycast: import("three").Object3D["raycast"] | null;
229
229
  } & {
230
+ name?: string | undefined;
230
231
  readonly type?: string | undefined;
231
232
  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);
232
233
  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);
@@ -242,7 +243,6 @@ export declare class NgtCanvasNative {
242
243
  readonly isObject3D?: true | undefined;
243
244
  readonly id?: number | undefined;
244
245
  uuid?: string | undefined;
245
- name?: string | undefined;
246
246
  parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
247
247
  children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
248
248
  readonly modelViewMatrix?: import("three").Matrix4 | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "angular-three",
3
- "version": "3.6.0",
3
+ "version": "3.7.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },