angular-three 2.0.0-beta.286 → 2.0.0-beta.287
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/esm2022/index.mjs +3 -1
- package/esm2022/lib/directives/selection.mjs +86 -0
- package/esm2022/lib/pipes/hexify.mjs +67 -0
- package/esm2022/lib/utils/object-events.mjs +65 -2
- package/fesm2022/angular-three.mjs +239 -35
- package/fesm2022/angular-three.mjs.map +1 -1
- package/index.d.ts +2 -0
- package/lib/directives/selection.d.ts +109 -0
- package/lib/pipes/hexify.d.ts +20 -0
- package/lib/utils/object-events.d.ts +25 -0
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export * from './lib/canvas';
|
|
2
2
|
export * from './lib/directives/args';
|
|
3
|
+
export * from './lib/directives/selection';
|
|
3
4
|
export * from './lib/html';
|
|
4
5
|
export * from './lib/instance';
|
|
5
6
|
export * from './lib/loader';
|
|
6
7
|
export * from './lib/loop';
|
|
8
|
+
export * from './lib/pipes/hexify';
|
|
7
9
|
export * from './lib/portal';
|
|
8
10
|
export * from './lib/renderer';
|
|
9
11
|
export * from './lib/roots';
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
|
+
import { Group, Object3D } from 'three';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../utils/object-events";
|
|
5
|
+
export declare class NgtSelection {
|
|
6
|
+
enabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
7
|
+
private selection;
|
|
8
|
+
collection: import("@angular/core").Signal<(Object3D<import("three").Object3DEventMap> | ElementRef<Object3D<import("three").Object3DEventMap>>)[]>;
|
|
9
|
+
select(...objects: Array<ElementRef<Object3D> | Object3D>): void;
|
|
10
|
+
unselect(...objects: Array<ElementRef<Object3D> | Object3D>): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtSelection, never>;
|
|
12
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NgtSelection, "[ngtSelection]", never, { "enabled": { "alias": "ngtSelection"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
13
|
+
}
|
|
14
|
+
export declare class NgtSelect {
|
|
15
|
+
enabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
16
|
+
options: import("@angular/core").InputSignal<Partial<{
|
|
17
|
+
addEventListener: (<TEventKey extends keyof import("../three-types").NgtNodeEventMap<Group<import("three").Object3DEventMap>>>(type: TEventKey, listener: (this: import("../three-types").NgtNodeElement<Group<import("three").Object3DEventMap>, typeof Group>, ev: import("../three-types").NgtNodeEventMap<Group<import("three").Object3DEventMap>>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("../three-types").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("../three-types").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
|
|
18
|
+
removeEventListener: (<TEventKey extends keyof import("../three-types").NgtNodeEventMap<Group<import("three").Object3DEventMap>>>(type: TEventKey, listener: (this: import("../three-types").NgtNodeElement<Group<import("three").Object3DEventMap>, typeof Group>, ev: import("../three-types").NgtNodeEventMap<Group<import("three").Object3DEventMap>>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("../three-types").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("../three-types").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
|
|
19
|
+
clone?: ((recursive?: boolean) => Group<import("three").Object3DEventMap>) | undefined;
|
|
20
|
+
copy?: ((object: Object3D, recursive?: boolean) => Group<import("three").Object3DEventMap>) | undefined;
|
|
21
|
+
add?: ((...object: Object3D[]) => Group<import("three").Object3DEventMap>) | undefined;
|
|
22
|
+
applyMatrix4?: ((matrix: import("three").Matrix4) => void) | undefined;
|
|
23
|
+
applyQuaternion?: ((quaternion: import("three").Quaternion) => Group<import("three").Object3DEventMap>) | undefined;
|
|
24
|
+
attach: string | string[] | import("angular-three").NgtAttachFunction;
|
|
25
|
+
__ngt_args__: [];
|
|
26
|
+
readonly type?: string | undefined;
|
|
27
|
+
readonly id?: number | undefined;
|
|
28
|
+
uuid?: string | undefined;
|
|
29
|
+
name?: string | undefined;
|
|
30
|
+
userData?: Record<string, any> | undefined;
|
|
31
|
+
rotateX?: ((angle: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
32
|
+
rotateY?: ((angle: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
33
|
+
rotateZ?: ((angle: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
34
|
+
lookAt?: {
|
|
35
|
+
(vector: import("three").Vector3): void;
|
|
36
|
+
(x: number, y: number, z: number): void;
|
|
37
|
+
} | undefined;
|
|
38
|
+
toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
|
|
39
|
+
hasEventListener?: {
|
|
40
|
+
<T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, Group<import("three").Object3DEventMap>>): boolean;
|
|
41
|
+
<T extends string>(type: T, listener: import("three").EventListener<{}, T, Group<import("three").Object3DEventMap>>): boolean;
|
|
42
|
+
} | undefined;
|
|
43
|
+
dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
|
|
44
|
+
visible?: boolean | undefined;
|
|
45
|
+
onBeforeRender?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: Group) => void) | undefined;
|
|
46
|
+
readonly isObject3D?: true | undefined;
|
|
47
|
+
parent?: Object3D<import("three").Object3DEventMap> | null | undefined;
|
|
48
|
+
children?: Object3D<import("three").Object3DEventMap>[] | undefined;
|
|
49
|
+
readonly modelViewMatrix?: import("three").Matrix4 | undefined;
|
|
50
|
+
readonly normalMatrix?: import("three").Matrix3 | undefined;
|
|
51
|
+
matrixWorld?: import("three").Matrix4 | undefined;
|
|
52
|
+
matrixAutoUpdate?: boolean | undefined;
|
|
53
|
+
matrixWorldAutoUpdate?: boolean | undefined;
|
|
54
|
+
matrixWorldNeedsUpdate?: boolean | undefined;
|
|
55
|
+
castShadow?: boolean | undefined;
|
|
56
|
+
receiveShadow?: boolean | undefined;
|
|
57
|
+
frustumCulled?: boolean | undefined;
|
|
58
|
+
renderOrder?: number | undefined;
|
|
59
|
+
animations?: import("three").AnimationClip[] | undefined;
|
|
60
|
+
customDepthMaterial?: import("three").Material | undefined;
|
|
61
|
+
customDistanceMaterial?: import("three").Material | undefined;
|
|
62
|
+
onBeforeShadow?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: Group) => void) | undefined;
|
|
63
|
+
onAfterShadow?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: Group) => void) | undefined;
|
|
64
|
+
onAfterRender?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: Group) => void) | undefined;
|
|
65
|
+
setRotationFromAxisAngle?: ((axis: import("three").Vector3, angle: number) => void) | undefined;
|
|
66
|
+
setRotationFromEuler?: ((euler: import("three").Euler) => void) | undefined;
|
|
67
|
+
setRotationFromMatrix?: ((m: import("three").Matrix4) => void) | undefined;
|
|
68
|
+
setRotationFromQuaternion?: ((q: import("three").Quaternion) => void) | undefined;
|
|
69
|
+
rotateOnAxis?: ((axis: import("three").Vector3, angle: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
70
|
+
rotateOnWorldAxis?: ((axis: import("three").Vector3, angle: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
71
|
+
translateOnAxis?: ((axis: import("three").Vector3, distance: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
72
|
+
translateX?: ((distance: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
73
|
+
translateY?: ((distance: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
74
|
+
translateZ?: ((distance: number) => Group<import("three").Object3DEventMap>) | undefined;
|
|
75
|
+
localToWorld?: ((vector: import("three").Vector3) => import("three").Vector3) | undefined;
|
|
76
|
+
worldToLocal?: ((vector: import("three").Vector3) => import("three").Vector3) | undefined;
|
|
77
|
+
remove?: ((...object: Object3D[]) => Group<import("three").Object3DEventMap>) | undefined;
|
|
78
|
+
removeFromParent?: (() => Group<import("three").Object3DEventMap>) | undefined;
|
|
79
|
+
clear?: (() => Group<import("three").Object3DEventMap>) | undefined;
|
|
80
|
+
getObjectById?: ((id: number) => Object3D | undefined) | undefined;
|
|
81
|
+
getObjectByName?: ((name: string) => Object3D | undefined) | undefined;
|
|
82
|
+
getObjectByProperty?: ((name: string, value: any) => Object3D | undefined) | undefined;
|
|
83
|
+
getObjectsByProperty?: ((name: string, value: any, optionalTarget?: Object3D[]) => Object3D[]) | undefined;
|
|
84
|
+
getWorldPosition?: ((target: import("three").Vector3) => import("three").Vector3) | undefined;
|
|
85
|
+
getWorldQuaternion?: ((target: import("three").Quaternion) => import("three").Quaternion) | undefined;
|
|
86
|
+
getWorldScale?: ((target: import("three").Vector3) => import("three").Vector3) | undefined;
|
|
87
|
+
getWorldDirection?: ((target: import("three").Vector3) => import("three").Vector3) | undefined;
|
|
88
|
+
raycast?: ((raycaster: import("three").Raycaster, intersects: import("three").Intersection[]) => void) | undefined;
|
|
89
|
+
traverse?: ((callback: (object: Object3D) => any) => void) | undefined;
|
|
90
|
+
traverseVisible?: ((callback: (object: Object3D) => any) => void) | undefined;
|
|
91
|
+
traverseAncestors?: ((callback: (object: Object3D) => any) => void) | undefined;
|
|
92
|
+
updateMatrix?: (() => void) | undefined;
|
|
93
|
+
updateMatrixWorld?: ((force?: boolean) => void) | undefined;
|
|
94
|
+
updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
|
|
95
|
+
readonly isGroup?: true | undefined;
|
|
96
|
+
position: import("../three-types").NgtVector3;
|
|
97
|
+
up: import("../three-types").NgtVector3;
|
|
98
|
+
scale: import("../three-types").NgtVector3;
|
|
99
|
+
rotation: import("../three-types").NgtEuler;
|
|
100
|
+
matrix: import("../three-types").NgtMatrix4;
|
|
101
|
+
quaternion: import("../three-types").NgtQuaternion;
|
|
102
|
+
layers: import("../three-types").NgtLayers;
|
|
103
|
+
dispose: (() => void) | null;
|
|
104
|
+
}>>;
|
|
105
|
+
groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
|
|
106
|
+
constructor();
|
|
107
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtSelect, never>;
|
|
108
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtSelect, "ngt-select", never, { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NgtObjectEvents; inputs: { "ngtObjectEvents": "ngtObjectEvents"; }; outputs: { "click": "click"; "dblclick": "dblclick"; "contextmenu": "contextmenu"; "pointerup": "pointerup"; "pointerdown": "pointerdown"; "pointerover": "pointerover"; "pointerout": "pointerout"; "pointerenter": "pointerenter"; "pointerleave": "pointerleave"; "pointermove": "pointermove"; "pointermissed": "pointermissed"; "pointercancel": "pointercancel"; "wheel": "wheel"; }; }]>;
|
|
109
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class NgtHexify {
|
|
3
|
+
private document;
|
|
4
|
+
private ctx?;
|
|
5
|
+
/**
|
|
6
|
+
* transforms a:
|
|
7
|
+
* - hex string to a hex number
|
|
8
|
+
* - rgb string to a hex number
|
|
9
|
+
* - rgba string to a hex number
|
|
10
|
+
* - css color string to a hex number
|
|
11
|
+
*
|
|
12
|
+
* always default to black if failed
|
|
13
|
+
* @param value
|
|
14
|
+
*/
|
|
15
|
+
transform(value: string): number;
|
|
16
|
+
private hexStringToNumber;
|
|
17
|
+
private componentToHex;
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtHexify, never>;
|
|
19
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<NgtHexify, "hexify", true>;
|
|
20
|
+
}
|
|
@@ -2,6 +2,31 @@ import { ElementRef, Injector } from '@angular/core';
|
|
|
2
2
|
import { Object3D } from 'three';
|
|
3
3
|
import { supportedEvents } from '../dom/events';
|
|
4
4
|
import { NgtDomEvent, NgtThreeEvent } from '../types';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class NgtObjectEvents {
|
|
7
|
+
click: import("@angular/core").OutputEmitterRef<NgtThreeEvent<MouseEvent>>;
|
|
8
|
+
dblclick: import("@angular/core").OutputEmitterRef<NgtThreeEvent<MouseEvent>>;
|
|
9
|
+
contextmenu: import("@angular/core").OutputEmitterRef<NgtThreeEvent<MouseEvent>>;
|
|
10
|
+
pointerup: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
11
|
+
pointerdown: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
12
|
+
pointerover: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
13
|
+
pointerout: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
14
|
+
pointerenter: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
15
|
+
pointerleave: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
16
|
+
pointermove: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
17
|
+
pointermissed: import("@angular/core").OutputEmitterRef<NgtThreeEvent<MouseEvent>>;
|
|
18
|
+
pointercancel: import("@angular/core").OutputEmitterRef<NgtThreeEvent<PointerEvent>>;
|
|
19
|
+
wheel: import("@angular/core").OutputEmitterRef<NgtThreeEvent<WheelEvent>>;
|
|
20
|
+
ngtObjectEvents: import("@angular/core").ModelSignal<Object3D<import("three").Object3DEventMap> | ElementRef<Object3D<import("three").Object3DEventMap>> | null | undefined>;
|
|
21
|
+
constructor();
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtObjectEvents, never>;
|
|
23
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NgtObjectEvents, "[ngtObjectEvents]", never, { "ngtObjectEvents": { "alias": "ngtObjectEvents"; "required": false; "isSignal": true; }; }, { "click": "click"; "dblclick": "dblclick"; "contextmenu": "contextmenu"; "pointerup": "pointerup"; "pointerdown": "pointerdown"; "pointerover": "pointerover"; "pointerout": "pointerout"; "pointerenter": "pointerenter"; "pointerleave": "pointerleave"; "pointermove": "pointermove"; "pointermissed": "pointermissed"; "pointercancel": "pointercancel"; "wheel": "wheel"; "ngtObjectEvents": "ngtObjectEventsChange"; }, never, never, true, never>;
|
|
24
|
+
}
|
|
25
|
+
export declare const NgtObjectEventsHostDirective: {
|
|
26
|
+
directive: typeof NgtObjectEvents;
|
|
27
|
+
inputs: string[];
|
|
28
|
+
outputs: string[];
|
|
29
|
+
};
|
|
5
30
|
export declare function injectObjectEvents(target: () => ElementRef<Object3D> | Object3D | null | undefined, events: {
|
|
6
31
|
[K in (typeof supportedEvents)[number]]?: (event: NgtThreeEvent<NgtDomEvent>) => void;
|
|
7
32
|
}, { injector }?: {
|