angular-three 2.0.0-beta.4 → 2.0.0-beta.41
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/README.md +4 -147
- package/esm2022/angular-three.mjs +1 -1
- package/esm2022/index.mjs +10 -11
- package/esm2022/lib/before-render.mjs +13 -0
- package/esm2022/lib/canvas.mjs +137 -161
- package/esm2022/lib/directives/args.mjs +13 -11
- package/esm2022/lib/directives/common.mjs +28 -27
- package/esm2022/lib/directives/key.mjs +29 -0
- package/esm2022/lib/directives/parent.mjs +13 -11
- package/esm2022/lib/dom/events.mjs +6 -1
- package/esm2022/lib/events.mjs +77 -60
- package/esm2022/lib/instance.mjs +65 -0
- package/esm2022/lib/loader.mjs +35 -41
- package/esm2022/lib/loop.mjs +6 -3
- package/esm2022/lib/portal.mjs +103 -112
- package/esm2022/lib/ref.mjs +48 -0
- package/esm2022/lib/renderer/catalogue.mjs +7 -0
- package/esm2022/lib/renderer/constants.mjs +21 -0
- package/esm2022/lib/renderer/index.mjs +419 -0
- package/esm2022/lib/renderer/store.mjs +148 -112
- package/esm2022/lib/renderer/utils.mjs +63 -48
- package/esm2022/lib/roots.mjs +249 -0
- package/esm2022/lib/routed-scene.mjs +11 -8
- package/esm2022/lib/store.mjs +207 -0
- package/esm2022/lib/three-types.mjs +2 -2
- package/esm2022/lib/types.mjs +1 -1
- package/esm2022/lib/utils/apply-props.mjs +23 -11
- package/esm2022/lib/utils/attach.mjs +2 -2
- package/esm2022/lib/utils/is.mjs +1 -1
- package/esm2022/lib/utils/make.mjs +1 -1
- package/esm2022/lib/utils/safe-detect-changes.mjs +15 -13
- package/esm2022/lib/utils/signal-store.mjs +99 -0
- package/esm2022/lib/utils/update.mjs +1 -1
- package/fesm2022/angular-three.mjs +2014 -1882
- package/fesm2022/angular-three.mjs.map +1 -1
- package/index.d.ts +9 -10
- package/lib/{di/before-render.d.ts → before-render.d.ts} +1 -1
- package/lib/canvas.d.ts +82 -12
- package/lib/directives/args.d.ts +2 -2
- package/lib/directives/common.d.ts +5 -1
- package/lib/directives/key.d.ts +10 -0
- package/lib/directives/parent.d.ts +5 -5
- package/lib/dom/events.d.ts +3 -2
- package/lib/events.d.ts +78 -2
- package/lib/instance.d.ts +36 -0
- package/lib/loader.d.ts +21 -3
- package/lib/loop.d.ts +68 -6
- package/lib/portal.d.ts +21 -12
- package/lib/{di/ref.d.ts → ref.d.ts} +3 -2
- package/lib/renderer/catalogue.d.ts +13 -0
- package/lib/renderer/constants.d.ts +20 -0
- package/lib/renderer/index.d.ts +5 -0
- package/lib/renderer/store.d.ts +21 -15
- package/lib/renderer/utils.d.ts +29 -19
- package/lib/roots.d.ts +11 -0
- package/lib/routed-scene.d.ts +1 -1
- package/lib/store.d.ts +147 -0
- package/lib/three-types.d.ts +5 -5
- package/lib/types.d.ts +1 -309
- package/lib/utils/apply-props.d.ts +4 -2
- package/lib/utils/attach.d.ts +5 -3
- package/lib/utils/is.d.ts +5 -4
- package/lib/utils/make.d.ts +12 -1
- package/lib/utils/safe-detect-changes.d.ts +2 -2
- package/lib/utils/signal-store.d.ts +17 -0
- package/lib/utils/update.d.ts +1 -1
- package/metadata.json +1 -1
- package/package.json +24 -5
- package/plugin/generators.json +57 -17
- package/plugin/migrations.json +27 -0
- package/plugin/package.json +22 -4
- package/plugin/src/generators/init/compat.d.ts +3 -1
- package/plugin/src/generators/init/compat.js +2 -2
- package/plugin/src/generators/init/compat.js.map +1 -1
- package/plugin/src/generators/init/files/experience/experience.component.html__tmpl__ +4 -0
- package/plugin/src/generators/init/files/experience/experience.component.ts__tmpl__ +18 -0
- package/plugin/src/generators/init/generator.d.ts +6 -0
- package/plugin/src/generators/init/generator.js +160 -0
- package/plugin/src/generators/init/generator.js.map +1 -0
- package/plugin/src/generators/init/schema.json +15 -4
- package/plugin/src/generators/init-cannon/compat.d.ts +2 -0
- package/plugin/src/generators/init-cannon/compat.js +6 -0
- package/plugin/src/generators/init-cannon/compat.js.map +1 -0
- package/plugin/src/generators/init-cannon/generator.d.ts +2 -0
- package/plugin/src/generators/init-cannon/generator.js +23 -0
- package/plugin/src/generators/init-cannon/generator.js.map +1 -0
- package/plugin/src/generators/init-cannon/schema.json +6 -0
- package/plugin/src/generators/init-postprocessing/compat.d.ts +2 -0
- package/plugin/src/generators/init-postprocessing/compat.js +6 -0
- package/plugin/src/generators/init-postprocessing/compat.js.map +1 -0
- package/plugin/src/generators/init-postprocessing/generator.d.ts +2 -0
- package/plugin/src/generators/init-postprocessing/generator.js +21 -0
- package/plugin/src/generators/init-postprocessing/generator.js.map +1 -0
- package/plugin/src/generators/init-postprocessing/schema.json +6 -0
- package/plugin/src/generators/init-rapier/compat.d.ts +2 -0
- package/plugin/src/generators/init-rapier/compat.js +6 -0
- package/plugin/src/generators/init-rapier/compat.js.map +1 -0
- package/plugin/src/generators/init-rapier/generator.d.ts +2 -0
- package/plugin/src/generators/init-rapier/generator.js +22 -0
- package/plugin/src/generators/init-rapier/generator.js.map +1 -0
- package/plugin/src/generators/init-rapier/schema.json +6 -0
- package/plugin/src/generators/init-soba/compat.d.ts +2 -0
- package/plugin/src/generators/init-soba/compat.js +6 -0
- package/plugin/src/generators/init-soba/compat.js.map +1 -0
- package/plugin/src/generators/init-soba/generator.d.ts +2 -0
- package/plugin/src/generators/init-soba/generator.js +27 -0
- package/plugin/src/generators/init-soba/generator.js.map +1 -0
- package/plugin/src/generators/init-soba/schema.json +6 -0
- package/plugin/src/generators/utils.d.ts +2 -0
- package/plugin/src/generators/utils.js +34 -0
- package/plugin/src/generators/utils.js.map +1 -0
- package/plugin/src/generators/versions.d.ts +14 -0
- package/plugin/src/generators/versions.js +18 -0
- package/plugin/src/generators/versions.js.map +1 -0
- package/plugin/src/index.d.ts +5 -1
- package/plugin/src/index.js +11 -3
- package/plugin/src/index.js.map +1 -1
- package/plugin/src/migrations/migrate-to-ngxtension/compat.d.ts +2 -0
- package/plugin/src/migrations/migrate-to-ngxtension/compat.js +6 -0
- package/plugin/src/migrations/migrate-to-ngxtension/compat.js.map +1 -0
- package/plugin/src/migrations/migrate-to-ngxtension/migrate-to-ngxtension.d.ts +2 -0
- package/plugin/src/migrations/migrate-to-ngxtension/migrate-to-ngxtension.js +55 -0
- package/plugin/src/migrations/migrate-to-ngxtension/migrate-to-ngxtension.js.map +1 -0
- package/web-types.json +1 -1
- package/esm2022/lib/di/before-render.mjs +0 -13
- package/esm2022/lib/di/catalogue.mjs +0 -7
- package/esm2022/lib/di/ref.mjs +0 -49
- package/esm2022/lib/directives/repeat.mjs +0 -18
- package/esm2022/lib/renderer/di.mjs +0 -3
- package/esm2022/lib/renderer/enums.mjs +0 -2
- package/esm2022/lib/renderer/provider.mjs +0 -18
- package/esm2022/lib/renderer/renderer.mjs +0 -368
- package/esm2022/lib/stores/signal.store.mjs +0 -79
- package/esm2022/lib/stores/store.mjs +0 -420
- package/esm2022/lib/utils/assert-in-injection-context.mjs +0 -14
- package/esm2022/lib/utils/instance.mjs +0 -63
- package/esm2022/lib/utils/signal.mjs +0 -24
- package/esm2022/lib/utils/timing.mjs +0 -21
- package/lib/di/catalogue.d.ts +0 -3
- package/lib/directives/repeat.d.ts +0 -7
- package/lib/renderer/di.d.ts +0 -2
- package/lib/renderer/enums.d.ts +0 -26
- package/lib/renderer/provider.d.ts +0 -8
- package/lib/renderer/renderer.d.ts +0 -49
- package/lib/stores/signal.store.d.ts +0 -21
- package/lib/stores/store.d.ts +0 -13
- package/lib/utils/assert-in-injection-context.d.ts +0 -2
- package/lib/utils/instance.d.ts +0 -4
- package/lib/utils/signal.d.ts +0 -2
- package/lib/utils/timing.d.ts +0 -4
- package/plugin/src/generators/init/init.d.ts +0 -5
- package/plugin/src/generators/init/init.js +0 -56
- package/plugin/src/generators/init/init.js.map +0 -1
package/lib/utils/is.d.ts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { ElementRef } from '@angular/core';
|
|
2
2
|
import * as THREE from 'three';
|
|
3
|
-
import type {
|
|
3
|
+
import type { NgtRenderer } from '../store';
|
|
4
|
+
import type { NgtEquConfig } from '../types';
|
|
4
5
|
export declare const is: {
|
|
5
6
|
obj: (a: unknown) => a is object;
|
|
6
7
|
material: (a: unknown) => a is THREE.Material;
|
|
7
|
-
geometry: (a: unknown) => a is THREE.BufferGeometry
|
|
8
|
+
geometry: (a: unknown) => a is THREE.BufferGeometry<THREE.NormalBufferAttributes>;
|
|
8
9
|
orthographicCamera: (a: unknown) => a is THREE.OrthographicCamera;
|
|
9
10
|
perspectiveCamera: (a: unknown) => a is THREE.PerspectiveCamera;
|
|
10
11
|
camera: (a: unknown) => a is THREE.Camera;
|
|
11
12
|
renderer: (a: unknown) => a is THREE.WebGLRenderer;
|
|
12
13
|
scene: (a: unknown) => a is THREE.Scene;
|
|
13
|
-
object3D: (a: unknown) => a is THREE.Object3D<THREE.
|
|
14
|
+
object3D: (a: unknown) => a is THREE.Object3D<THREE.Object3DEventMap>;
|
|
14
15
|
instance: (a: unknown) => a is any;
|
|
15
16
|
ref: (a: unknown) => a is ElementRef<any>;
|
|
16
|
-
colorSpaceExist: <T extends object |
|
|
17
|
+
colorSpaceExist: <T extends object | NgtRenderer | THREE.Texture, P = T extends NgtRenderer ? {
|
|
17
18
|
outputColorSpace: string;
|
|
18
19
|
} : {
|
|
19
20
|
colorSpace: string;
|
package/lib/utils/make.d.ts
CHANGED
|
@@ -1,7 +1,18 @@
|
|
|
1
1
|
import * as THREE from 'three';
|
|
2
|
-
import type {
|
|
2
|
+
import type { NgtGLOptions } from '../canvas';
|
|
3
|
+
import type { NgtIntersection } from '../events';
|
|
4
|
+
import type { NgtDpr, NgtSize } from '../store';
|
|
3
5
|
export declare function makeId(event?: NgtIntersection): string;
|
|
4
6
|
export declare function makeDpr(dpr: NgtDpr, window?: Window): number;
|
|
5
7
|
export declare function makeDefaultCamera(isOrthographic: boolean, size: NgtSize): THREE.OrthographicCamera | THREE.PerspectiveCamera;
|
|
6
8
|
export declare function makeDefaultRenderer(glOptions: NgtGLOptions, canvasElement: HTMLCanvasElement): THREE.WebGLRenderer;
|
|
9
|
+
export type NgtObjectMap = {
|
|
10
|
+
nodes: {
|
|
11
|
+
[name: string]: THREE.Object3D;
|
|
12
|
+
};
|
|
13
|
+
materials: {
|
|
14
|
+
[name: string]: THREE.Material;
|
|
15
|
+
};
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
};
|
|
7
18
|
export declare function makeObjectGraph(object: THREE.Object3D): NgtObjectMap;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ChangeDetectorRef } from '@angular/core';
|
|
2
|
-
export declare function safeDetectChanges(
|
|
1
|
+
import type { ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
export declare function safeDetectChanges(...cdrs: (ChangeDetectorRef | undefined | null)[]): void;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type CreateComputedOptions, type CreateSignalOptions, type Signal } from '@angular/core';
|
|
2
|
+
export type NgtSignalStore<State extends object> = {
|
|
3
|
+
select<Key1 extends keyof State, Key2 extends keyof State[Key1], Key3 extends keyof State[Key1][Key2], Key4 extends keyof State[Key1][Key2][Key3]>(key1: Key1, key2: Key2, key3: Key3, key4: Key4, options?: CreateComputedOptions<State[Key1][Key2][Key3][Key4]>): Signal<State[Key1][Key2][Key3][Key4]>;
|
|
4
|
+
select<Key1 extends keyof State, Key2 extends keyof State[Key1], Key3 extends keyof State[Key1][Key2]>(key1: Key1, key2: Key2, key3: Key3, options?: CreateComputedOptions<State[Key1][Key2][Key3]>): Signal<State[Key1][Key2][Key3]>;
|
|
5
|
+
select<Key1 extends keyof State, Key2 extends keyof State[Key1]>(key1: Key1, key2: Key2, options?: CreateComputedOptions<State[Key1][Key2]>): Signal<State[Key1][Key2]>;
|
|
6
|
+
select<Key extends keyof State>(key: Key, options?: CreateComputedOptions<State[Key]>): Signal<State[Key]>;
|
|
7
|
+
select(options?: CreateComputedOptions<State>): Signal<State>;
|
|
8
|
+
get<Key1 extends keyof State, Key2 extends keyof State[Key1], Key3 extends keyof State[Key1][Key2], Key4 extends keyof State[Key1][Key2][Key3]>(key1: Key1, key2: Key2, key3: Key3, key4: Key4): State[Key1][Key2][Key3][Key4];
|
|
9
|
+
get<Key1 extends keyof State, Key2 extends keyof State[Key1], Key3 extends keyof State[Key1][Key2]>(key1: Key1, key2: Key2, key3: Key3): State[Key1][Key2][Key3];
|
|
10
|
+
get<Key1 extends keyof State, Key2 extends keyof State[Key1]>(key1: Key1, key2: Key2): State[Key1][Key2];
|
|
11
|
+
get<Key extends keyof State>(key: Key): State[Key];
|
|
12
|
+
get(): State;
|
|
13
|
+
set(state: Partial<State> | ((previous: State) => Partial<State>)): void;
|
|
14
|
+
patch(state: Partial<State>): void;
|
|
15
|
+
state: Signal<State>;
|
|
16
|
+
};
|
|
17
|
+
export declare function signalStore<State extends object>(initialState?: Partial<State> | ((storeApi: Pick<NgtSignalStore<State>, 'get' | 'set' | 'patch' | 'select'>) => Partial<State>), options?: CreateSignalOptions<State>): NgtSignalStore<State>;
|
package/lib/utils/update.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NgtCameraManual, NgtSize } from '../
|
|
1
|
+
import type { NgtCameraManual, NgtSize } from '../store';
|
|
2
2
|
export declare function checkNeedsUpdate(value: unknown): void;
|
|
3
3
|
export declare function checkUpdate(value: unknown): void;
|
|
4
4
|
export declare function updateCamera(camera: NgtCameraManual, size: NgtSize): void;
|