angular-three-soba 3.6.1 → 4.0.0-next.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.
Files changed (109) hide show
  1. package/abstractions/lib/billboard.d.ts +6 -6
  2. package/abstractions/lib/catmull-rom-line.d.ts +173 -563
  3. package/abstractions/lib/cubic-bezier-line.d.ts +7 -7
  4. package/abstractions/lib/edges.d.ts +171 -747
  5. package/abstractions/lib/gradient-texture.d.ts +8 -8
  6. package/abstractions/lib/grid.d.ts +24 -292
  7. package/abstractions/lib/helper.d.ts +5 -5
  8. package/abstractions/lib/line.d.ts +11 -12
  9. package/abstractions/lib/prism-geometry.d.ts +12 -12
  10. package/abstractions/lib/quadratic-bezier-line.d.ts +7 -7
  11. package/abstractions/lib/rounded-box.d.ts +8 -8
  12. package/abstractions/lib/text-3d.d.ts +14 -293
  13. package/abstractions/lib/text.d.ts +12 -13
  14. package/cameras/lib/camera-content.d.ts +2 -2
  15. package/cameras/lib/cube-camera.d.ts +12 -12
  16. package/cameras/lib/orthographic-camera.d.ts +11 -11
  17. package/cameras/lib/perspective-camera.d.ts +10 -10
  18. package/controls/lib/camera-controls.d.ts +1 -6
  19. package/controls/lib/orbit-controls.d.ts +6 -10
  20. package/controls/lib/scroll-controls.d.ts +8 -14
  21. package/fesm2022/angular-three-soba-abstractions.mjs +75 -52
  22. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  23. package/fesm2022/angular-three-soba-cameras.mjs +18 -20
  24. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  25. package/fesm2022/angular-three-soba-controls.mjs +65 -65
  26. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  27. package/fesm2022/angular-three-soba-gizmos.mjs +185 -194
  28. package/fesm2022/angular-three-soba-gizmos.mjs.map +1 -1
  29. package/fesm2022/angular-three-soba-loaders.mjs +21 -16
  30. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
  31. package/fesm2022/angular-three-soba-materials.mjs +90 -93
  32. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  33. package/fesm2022/angular-three-soba-misc.mjs +282 -279
  34. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  35. package/fesm2022/angular-three-soba-performances.mjs +51 -56
  36. package/fesm2022/angular-three-soba-performances.mjs.map +1 -1
  37. package/fesm2022/angular-three-soba-shaders.mjs +5 -6
  38. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
  39. package/fesm2022/angular-three-soba-staging.mjs +253 -277
  40. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  41. package/fesm2022/angular-three-soba-stats.mjs +3 -4
  42. package/fesm2022/angular-three-soba-stats.mjs.map +1 -1
  43. package/gizmos/lib/gizmo-helper/gizmo-helper.d.ts +12 -15
  44. package/gizmos/lib/gizmo-helper/gizmo-viewcube.d.ts +5 -6
  45. package/gizmos/lib/gizmo-helper/gizmo-viewport.d.ts +8 -9
  46. package/gizmos/lib/pivot-controls/axis-arrow.d.ts +11 -13
  47. package/gizmos/lib/pivot-controls/axis-rotator.d.ts +11 -12
  48. package/gizmos/lib/pivot-controls/pivot-controls.d.ts +28 -29
  49. package/gizmos/lib/pivot-controls/plane-slider.d.ts +12 -13
  50. package/gizmos/lib/pivot-controls/scaling-sphere.d.ts +12 -14
  51. package/gizmos/lib/transform-controls.d.ts +15 -20
  52. package/loaders/lib/loader.d.ts +10 -11
  53. package/loaders/lib/texture-loader.d.ts +3 -3
  54. package/materials/lib/custom-shader-material.d.ts +3 -3
  55. package/materials/lib/mesh-distort-material.d.ts +3 -3
  56. package/materials/lib/mesh-portal-material.d.ts +19 -118
  57. package/materials/lib/mesh-reflector-material.d.ts +4 -5
  58. package/materials/lib/mesh-refraction-material.d.ts +13 -14
  59. package/materials/lib/mesh-transmission-material.d.ts +14 -14
  60. package/materials/lib/mesh-wobble-material.d.ts +4 -4
  61. package/materials/lib/point-material.d.ts +3 -3
  62. package/misc/lib/animations.d.ts +12 -12
  63. package/misc/lib/computed-attribute.d.ts +5 -48
  64. package/misc/lib/decal.d.ts +9 -9
  65. package/misc/lib/deprecated.d.ts +2 -2
  66. package/misc/lib/depth-buffer.d.ts +2 -2
  67. package/misc/lib/fbo.d.ts +9 -9
  68. package/misc/lib/html/html-content.d.ts +5 -7
  69. package/misc/lib/html/html.d.ts +15 -14
  70. package/misc/lib/html/utils.d.ts +9 -9
  71. package/misc/lib/intersect.d.ts +2 -2
  72. package/misc/lib/preload.d.ts +3 -6
  73. package/misc/lib/sampler.d.ts +22 -21
  74. package/misc/lib/scale-factor.d.ts +2 -2
  75. package/package.json +141 -141
  76. package/performances/lib/detailed.d.ts +5 -5
  77. package/performances/lib/instances/instances.d.ts +8 -96
  78. package/performances/lib/instances/position-mesh.d.ts +8 -8
  79. package/performances/lib/points/points.d.ts +10 -188
  80. package/performances/lib/points/position-point.d.ts +8 -8
  81. package/performances/lib/segments/segment-object.d.ts +6 -6
  82. package/performances/lib/segments/segments.d.ts +34 -35
  83. package/shaders/lib/grid-material.d.ts +16 -16
  84. package/shaders/lib/mesh-refraction-material.d.ts +2 -2
  85. package/shaders/lib/point-material.d.ts +5 -5
  86. package/staging/lib/accumulative-shadows.d.ts +21 -25
  87. package/staging/lib/backdrop.d.ts +8 -8
  88. package/staging/lib/bb-anchor.d.ts +5 -5
  89. package/staging/lib/bounds.d.ts +13 -17
  90. package/staging/lib/camera-shake.d.ts +0 -2
  91. package/staging/lib/caustics.d.ts +11 -11
  92. package/staging/lib/center.d.ts +10 -350
  93. package/staging/lib/contact-shadows.d.ts +17 -16
  94. package/staging/lib/environment/environment.d.ts +13 -15
  95. package/staging/lib/environment/inject-environment.d.ts +3 -3
  96. package/staging/lib/float.d.ts +5 -5
  97. package/staging/lib/lightformer.d.ts +11 -290
  98. package/staging/lib/mask.d.ts +8 -10
  99. package/staging/lib/matcap-texture.d.ts +5 -5
  100. package/staging/lib/normal-texture.d.ts +5 -5
  101. package/staging/lib/randomized-lights.d.ts +13 -13
  102. package/staging/lib/render-texture.d.ts +21 -17
  103. package/staging/lib/sky.d.ts +13 -13
  104. package/staging/lib/spot-light.d.ts +39 -39
  105. package/staging/lib/stage.d.ts +108 -278
  106. package/vanilla-exports/index.d.ts +6 -7
  107. package/LICENSE +0 -21
  108. package/metadata.json +0 -1
  109. package/web-types.json +0 -1
@@ -1,30 +1,31 @@
1
1
  import { ElementRef } from '@angular/core';
2
- import { NgtGroup } from 'angular-three';
3
- import { Group, Mesh, Object3D, PlaneGeometry } from 'three';
2
+ import { NgtThreeElements } from 'angular-three';
3
+ import * as THREE from 'three';
4
+ import { NgtsHTMLContent } from './html-content';
4
5
  import * as i0 from "@angular/core";
5
- export interface NgtsHTMLOptions extends Partial<NgtGroup> {
6
- occlude: ElementRef<Object3D>[] | Object3D[] | boolean | 'raycast' | 'blending';
6
+ export interface NgtsHTMLOptions extends Partial<NgtThreeElements['ngt-group']> {
7
+ occlude: ElementRef<THREE.Object3D>[] | THREE.Object3D[] | boolean | 'raycast' | 'blending';
7
8
  transform: boolean;
8
9
  castShadow: boolean;
9
10
  receiveShadow: boolean;
10
11
  }
11
12
  export declare class NgtsHTML {
12
13
  options: import("@angular/core").InputSignalWithTransform<NgtsHTMLOptions, "" | Partial<NgtsHTMLOptions>>;
13
- parameters: import("@angular/core").Signal<Omit<NgtsHTMLOptions, "castShadow" | "receiveShadow" | "transform" | "occlude">>;
14
- groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>>>;
15
- occlusionMeshRef: import("@angular/core").Signal<ElementRef<Mesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | undefined>;
16
- occlusionGeometryRef: import("@angular/core").Signal<ElementRef<PlaneGeometry> | undefined>;
17
- occlude: import("@angular/core").Signal<boolean | "raycast" | Object3D<import("three").Object3DEventMap>[] | ElementRef<Object3D<import("three").Object3DEventMap>>[] | "blending">;
14
+ protected parameters: import("@angular/core").Signal<Omit<NgtsHTMLOptions, "castShadow" | "receiveShadow" | "transform" | "occlude">>;
15
+ groupRef: import("@angular/core").Signal<ElementRef<THREE.Group<THREE.Object3DEventMap>>>;
16
+ occlusionMeshRef: import("@angular/core").Signal<ElementRef<THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>> | undefined>;
17
+ occlusionGeometryRef: import("@angular/core").Signal<ElementRef<THREE.PlaneGeometry> | undefined>;
18
+ protected castShadow: import("@angular/core").Signal<boolean>;
19
+ protected receiveShadow: import("@angular/core").Signal<boolean>;
20
+ occlude: import("@angular/core").Signal<boolean | "raycast" | THREE.Object3D<THREE.Object3DEventMap>[] | ElementRef<THREE.Object3D<THREE.Object3DEventMap>>[] | "blending">;
18
21
  transform: import("@angular/core").Signal<boolean>;
19
- castShadow: import("@angular/core").Signal<boolean>;
20
- receiveShadow: import("@angular/core").Signal<boolean>;
21
- scale: import("@angular/core").Signal<import("angular-three").NgtVector3 | undefined>;
22
22
  isRaycastOcclusion: import("@angular/core").Signal<boolean | 0>;
23
23
  private shaders;
24
- vertexShader: import("@angular/core").Signal<string | undefined>;
25
- fragmentShader: import("@angular/core").Signal<string>;
24
+ protected vertexShader: import("@angular/core").Signal<string | undefined>;
25
+ protected fragmentShader: import("@angular/core").Signal<string>;
26
26
  constructor();
27
27
  protected readonly DoubleSide: 2;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsHTML, never>;
29
29
  static ɵcmp: i0.ɵɵComponentDeclaration<NgtsHTML, "ngts-html", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["[data-occlusion-geometry]", "[data-occlusion-material]", "*"], true, never>;
30
30
  }
31
+ export declare const NgtsHTMLDeclarations: readonly [typeof NgtsHTML, typeof NgtsHTMLContent];
@@ -1,14 +1,14 @@
1
- import { Camera, Matrix4, Object3D, Raycaster } from 'three';
2
- export declare function defaultCalculatePosition(el: Object3D, camera: Camera, size: {
1
+ import * as THREE from 'three';
2
+ export declare function defaultCalculatePosition(el: THREE.Object3D, camera: THREE.Camera, size: {
3
3
  width: number;
4
4
  height: number;
5
5
  }): number[];
6
6
  export type CalculatePosition = typeof defaultCalculatePosition;
7
- export declare function isObjectBehindCamera(el: Object3D, camera: Camera): boolean;
8
- export declare function isObjectVisible(el: Object3D, camera: Camera, raycaster: Raycaster, occlude: Object3D[]): boolean;
9
- export declare function objectScale(el: Object3D, camera: Camera): number;
10
- export declare function objectZIndex(el: Object3D, camera: Camera, zIndexRange: Array<number>): number | undefined;
7
+ export declare function isObjectBehindCamera(el: THREE.Object3D, camera: THREE.Camera): boolean;
8
+ export declare function isObjectVisible(el: THREE.Object3D, camera: THREE.Camera, raycaster: THREE.Raycaster, occlude: THREE.Object3D[]): boolean;
9
+ export declare function objectScale(el: THREE.Object3D, camera: THREE.Camera): number;
10
+ export declare function objectZIndex(el: THREE.Object3D, camera: THREE.Camera, zIndexRange: Array<number>): number | undefined;
11
11
  export declare function epsilon(value: number): number;
12
- export declare function getCSSMatrix(matrix: Matrix4, multipliers: number[], prepend?: string): string;
13
- export declare const getCameraCSSMatrix: (matrix: Matrix4) => string;
14
- export declare const getObjectCSSMatrix: (matrix: Matrix4, factor: number) => string;
12
+ export declare function getCSSMatrix(matrix: THREE.Matrix4, multipliers: number[], prepend?: string): string;
13
+ export declare const getCameraCSSMatrix: (matrix: THREE.Matrix4) => string;
14
+ export declare const getObjectCSSMatrix: (matrix: THREE.Matrix4, factor: number) => string;
@@ -1,7 +1,7 @@
1
1
  import { ElementRef, Injector, WritableSignal } from '@angular/core';
2
- import { Object3D } from 'three';
2
+ import * as THREE from 'three';
3
3
  import * as i0 from "@angular/core";
4
- export declare function injectIntersect<TObject extends Object3D>(object: () => ElementRef<TObject> | TObject | undefined | null, { injector, source }?: {
4
+ export declare function injectIntersect<TObject extends THREE.Object3D>(object: () => ElementRef<TObject> | TObject | undefined | null, { injector, source }?: {
5
5
  injector?: Injector;
6
6
  source?: WritableSignal<boolean>;
7
7
  }): import("@angular/core").Signal<boolean>;
@@ -1,14 +1,11 @@
1
1
  import { ElementRef } from '@angular/core';
2
- import { Camera, Object3D } from 'three';
2
+ import * as THREE from 'three';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class NgtsPreload {
5
5
  all: import("@angular/core").ModelSignal<boolean | undefined>;
6
- scene: import("@angular/core").ModelSignal<Object3D<import("three").Object3DEventMap> | ElementRef<Object3D<import("three").Object3DEventMap>> | undefined>;
7
- camera: import("@angular/core").ModelSignal<Camera | ElementRef<Camera> | undefined>;
6
+ scene: import("@angular/core").ModelSignal<THREE.Object3D<THREE.Object3DEventMap> | ElementRef<THREE.Object3D<THREE.Object3DEventMap>> | undefined>;
7
+ camera: import("@angular/core").ModelSignal<THREE.Camera | ElementRef<THREE.Camera> | undefined>;
8
8
  private store;
9
- private gl;
10
- private defaultScene;
11
- private defaultCamera;
12
9
  private trueScene;
13
10
  private trueCamera;
14
11
  constructor();
@@ -1,20 +1,20 @@
1
- import { ElementRef, Injector } from '@angular/core';
2
- import { NgtGroup } from 'angular-three';
3
- import { BufferGeometry, Color, Group, InstancedBufferAttribute, InstancedMesh, Mesh, Object3D, Vector3 } from 'three';
1
+ import { ElementRef } from '@angular/core';
2
+ import { NgtThreeElements } from 'angular-three';
3
+ import * as THREE from 'three';
4
4
  import * as i0 from "@angular/core";
5
5
  interface SamplePayload {
6
6
  /**
7
7
  * The position of the sample.
8
8
  */
9
- position: Vector3;
9
+ position: THREE.Vector3;
10
10
  /**
11
11
  * The normal of the mesh at the sampled position.
12
12
  */
13
- normal: Vector3;
13
+ normal: THREE.Vector3;
14
14
  /**
15
15
  * The vertex color of the mesh at the sampled position.
16
16
  */
17
- color: Color;
17
+ color: THREE.Color;
18
18
  }
19
19
  export type TransformFn = (payload: TransformPayload, i: number) => void;
20
20
  interface TransformPayload extends SamplePayload {
@@ -23,23 +23,21 @@ interface TransformPayload extends SamplePayload {
23
23
  * This object's matrix will be updated after transforming & it will be used
24
24
  * to set the instance's matrix.
25
25
  */
26
- dummy: Object3D;
26
+ dummy: THREE.Object3D;
27
27
  /**
28
28
  * The mesh that's initially passed to the sampler.
29
29
  * Use this if you need to apply transforms from your mesh to your instances
30
30
  * or if you need to grab attributes from the geometry.
31
31
  */
32
- sampledMesh: Mesh;
32
+ sampledMesh: THREE.Mesh;
33
33
  }
34
- export declare function injectSurfaceSampler(mesh: () => ElementRef<Mesh> | Mesh | null | undefined, options?: () => {
35
- count?: number;
36
- transform?: TransformFn;
37
- weight?: string;
38
- instanceMesh?: ElementRef<InstancedMesh> | InstancedMesh | null;
39
- }, { injector }?: {
40
- injector?: Injector;
41
- }): import("@angular/core").Signal<InstancedBufferAttribute>;
42
- export interface NgtsSamplerOptions extends Partial<NgtGroup> {
34
+ export declare function surfaceSampler(mesh: () => ElementRef<THREE.Mesh> | THREE.Mesh | null | undefined, { count, transform, weight, instancedMesh, }?: {
35
+ count?: () => number;
36
+ transform?: () => TransformFn | undefined;
37
+ weight?: () => string | undefined;
38
+ instancedMesh?: () => ElementRef<THREE.InstancedMesh> | THREE.InstancedMesh | null | undefined;
39
+ }): import("@angular/core").Signal<THREE.InstancedBufferAttribute>;
40
+ export interface NgtsSamplerOptions extends Partial<NgtThreeElements['ngt-group']> {
43
41
  /**
44
42
  * The NAME of the weight attribute to use when sampling.
45
43
  *
@@ -59,11 +57,14 @@ export interface NgtsSamplerOptions extends Partial<NgtGroup> {
59
57
  count: number;
60
58
  }
61
59
  export declare class NgtsSampler {
62
- mesh: import("@angular/core").InputSignal<Mesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap> | ElementRef<Mesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap>> | null>;
63
- instances: import("@angular/core").InputSignal<InstancedMesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap> | ElementRef<InstancedMesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap>> | null>;
60
+ mesh: import("@angular/core").InputSignal<THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.Object3DEventMap> | ElementRef<THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.Object3DEventMap>> | null>;
61
+ instances: import("@angular/core").InputSignal<THREE.InstancedMesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.InstancedMeshEventMap> | ElementRef<THREE.InstancedMesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.InstancedMeshEventMap>> | null>;
64
62
  options: import("@angular/core").InputSignalWithTransform<NgtsSamplerOptions, "" | Partial<NgtsSamplerOptions>>;
65
- parameters: import("@angular/core").Signal<Omit<NgtsSamplerOptions, "count" | "transform" | "weight">>;
66
- groupRef: import("@angular/core").Signal<ElementRef<Group<import("three").Object3DEventMap>> | undefined>;
63
+ protected parameters: import("@angular/core").Signal<Omit<NgtsSamplerOptions, "count" | "transform" | "weight">>;
64
+ groupRef: import("@angular/core").Signal<ElementRef<THREE.Group<THREE.Object3DEventMap>>>;
65
+ private count;
66
+ private weight;
67
+ private transform;
67
68
  constructor();
68
69
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsSampler, never>;
69
70
  static ɵcmp: i0.ɵɵComponentDeclaration<NgtsSampler, "ngts-sampler", never, { "mesh": { "alias": "mesh"; "required": false; "isSignal": true; }; "instances": { "alias": "instances"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -1,3 +1,3 @@
1
1
  import { NgtSize } from 'angular-three';
2
- import { Camera, Vector3 } from 'three';
3
- export declare function calculateScaleFactor(point3: Vector3, radiusPx: number, camera: Camera, size: NgtSize): number;
2
+ import * as THREE from 'three';
3
+ export declare function calculateScaleFactor(point3: THREE.Vector3, radiusPx: number, camera: THREE.Camera, size: NgtSize): number;
package/package.json CHANGED
@@ -1,142 +1,142 @@
1
1
  {
2
- "name": "angular-three-soba",
3
- "version": "3.6.1",
4
- "publishConfig": {
5
- "access": "public"
6
- },
7
- "repository": {
8
- "type": "git",
9
- "url": "https://github.com/angular-threejs/angular-three/tree/main/libs/soba"
10
- },
11
- "author": {
12
- "name": "Chau Tran",
13
- "email": "nartc7789@gmail.com",
14
- "url": "https://nartc.me"
15
- },
16
- "description": "Utilities for Angular Three",
17
- "keywords": [
18
- "angular",
19
- "threejs",
20
- "renderer",
21
- "utilities",
22
- "shaders"
23
- ],
24
- "license": "MIT",
25
- "exports": {
26
- "./assets/*": "./assets/*",
27
- "./shaders": {
28
- "default": "./fesm2022/angular-three-soba-shaders.mjs",
29
- "types": "./shaders/index.d.ts"
30
- },
31
- "./misc": {
32
- "default": "./fesm2022/angular-three-soba-misc.mjs",
33
- "types": "./misc/index.d.ts"
34
- },
35
- "./vanilla-exports": {
36
- "default": "./fesm2022/angular-three-soba-vanilla-exports.mjs",
37
- "types": "./vanilla-exports/index.d.ts"
38
- },
39
- "./loaders": {
40
- "default": "./fesm2022/angular-three-soba-loaders.mjs",
41
- "types": "./loaders/index.d.ts"
42
- },
43
- "./package.json": {
44
- "default": "./package.json"
45
- },
46
- ".": {
47
- "types": "./index.d.ts",
48
- "default": "./fesm2022/angular-three-soba.mjs"
49
- },
50
- "./abstractions": {
51
- "types": "./abstractions/index.d.ts",
52
- "default": "./fesm2022/angular-three-soba-abstractions.mjs"
53
- },
54
- "./cameras": {
55
- "types": "./cameras/index.d.ts",
56
- "default": "./fesm2022/angular-three-soba-cameras.mjs"
57
- },
58
- "./gizmos": {
59
- "types": "./gizmos/index.d.ts",
60
- "default": "./fesm2022/angular-three-soba-gizmos.mjs"
61
- },
62
- "./controls": {
63
- "types": "./controls/index.d.ts",
64
- "default": "./fesm2022/angular-three-soba-controls.mjs"
65
- },
66
- "./materials": {
67
- "types": "./materials/index.d.ts",
68
- "default": "./fesm2022/angular-three-soba-materials.mjs"
69
- },
70
- "./performances": {
71
- "types": "./performances/index.d.ts",
72
- "default": "./fesm2022/angular-three-soba-performances.mjs"
73
- },
74
- "./staging": {
75
- "types": "./staging/index.d.ts",
76
- "default": "./fesm2022/angular-three-soba-staging.mjs"
77
- },
78
- "./stats": {
79
- "types": "./stats/index.d.ts",
80
- "default": "./fesm2022/angular-three-soba-stats.mjs"
81
- }
82
- },
83
- "peerDependencies": {
84
- "@angular/common": ">=19.0.0 <20.0.0",
85
- "@angular/core": ">=19.0.0 <20.0.0",
86
- "@monogrid/gainmap-js": "^3.0.0",
87
- "@pmndrs/vanilla": "^1.19.0",
88
- "camera-controls": "^2.8.0",
89
- "hls.js": "^1.5.0",
90
- "maath": ">=0.10.0 <0.11.0",
91
- "meshline": "^3.1.0",
92
- "stats-gl": ">=2.0.0",
93
- "three": ">=0.148.0 <0.173.0",
94
- "three-custom-shader-material": ">=5.5.0 <6.3.0",
95
- "three-mesh-bvh": ">=0.5.0 <0.9.0",
96
- "three-stdlib": "^2.0.0",
97
- "troika-three-text": ">=0.47.0 <0.53.0"
98
- },
99
- "peerDependenciesMeta": {
100
- "@monogrid/gainmap-js": {
101
- "optional": true
102
- },
103
- "@pmndrs/vanilla": {
104
- "optional": true
105
- },
106
- "hls.js": {
107
- "optional": true
108
- },
109
- "troika-three-text": {
110
- "optional": true
111
- },
112
- "three-custom-shader-material": {
113
- "optional": true
114
- },
115
- "three-mesh-bvh": {
116
- "optional": true
117
- },
118
- "maath": {
119
- "optional": true
120
- },
121
- "meshline": {
122
- "optional": true
123
- },
124
- "camera-controls": {
125
- "optional": true
126
- },
127
- "stats-gl": {
128
- "optional": true
129
- }
130
- },
131
- "dependencies": {
132
- "tslib": "^2.3.0"
133
- },
134
- "sideEffects": false,
135
- "web-types": [
136
- "../../node_modules/angular-three/web-types.json",
137
- "../../node_modules/angular-three-soba/web-types.json",
138
- "./web-types.json"
139
- ],
140
- "module": "fesm2022/angular-three-soba.mjs",
141
- "typings": "index.d.ts"
142
- }
2
+ "name": "angular-three-soba",
3
+ "version": "4.0.0-next.1",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/angular-threejs/angular-three/tree/main/libs/soba"
10
+ },
11
+ "author": {
12
+ "name": "Chau Tran",
13
+ "email": "nartc7789@gmail.com",
14
+ "url": "https://nartc.me"
15
+ },
16
+ "description": "Utilities for Angular Three",
17
+ "keywords": [
18
+ "angular",
19
+ "threejs",
20
+ "renderer",
21
+ "utilities",
22
+ "shaders"
23
+ ],
24
+ "license": "MIT",
25
+ "exports": {
26
+ "./assets/*": "./assets/*",
27
+ "./package.json": {
28
+ "default": "./package.json"
29
+ },
30
+ ".": {
31
+ "types": "./index.d.ts",
32
+ "default": "./fesm2022/angular-three-soba.mjs"
33
+ },
34
+ "./abstractions": {
35
+ "types": "./abstractions/index.d.ts",
36
+ "default": "./fesm2022/angular-three-soba-abstractions.mjs"
37
+ },
38
+ "./cameras": {
39
+ "types": "./cameras/index.d.ts",
40
+ "default": "./fesm2022/angular-three-soba-cameras.mjs"
41
+ },
42
+ "./controls": {
43
+ "types": "./controls/index.d.ts",
44
+ "default": "./fesm2022/angular-three-soba-controls.mjs"
45
+ },
46
+ "./loaders": {
47
+ "types": "./loaders/index.d.ts",
48
+ "default": "./fesm2022/angular-three-soba-loaders.mjs"
49
+ },
50
+ "./materials": {
51
+ "types": "./materials/index.d.ts",
52
+ "default": "./fesm2022/angular-three-soba-materials.mjs"
53
+ },
54
+ "./misc": {
55
+ "types": "./misc/index.d.ts",
56
+ "default": "./fesm2022/angular-three-soba-misc.mjs"
57
+ },
58
+ "./gizmos": {
59
+ "types": "./gizmos/index.d.ts",
60
+ "default": "./fesm2022/angular-three-soba-gizmos.mjs"
61
+ },
62
+ "./performances": {
63
+ "types": "./performances/index.d.ts",
64
+ "default": "./fesm2022/angular-three-soba-performances.mjs"
65
+ },
66
+ "./shaders": {
67
+ "types": "./shaders/index.d.ts",
68
+ "default": "./fesm2022/angular-three-soba-shaders.mjs"
69
+ },
70
+ "./staging": {
71
+ "types": "./staging/index.d.ts",
72
+ "default": "./fesm2022/angular-three-soba-staging.mjs"
73
+ },
74
+ "./stats": {
75
+ "types": "./stats/index.d.ts",
76
+ "default": "./fesm2022/angular-three-soba-stats.mjs"
77
+ },
78
+ "./vanilla-exports": {
79
+ "types": "./vanilla-exports/index.d.ts",
80
+ "default": "./fesm2022/angular-three-soba-vanilla-exports.mjs"
81
+ }
82
+ },
83
+ "peerDependencies": {
84
+ "@angular/common": ">=19.0.0 <20.0.0",
85
+ "@angular/core": ">=19.0.0 <20.0.0",
86
+ "@monogrid/gainmap-js": "^3.0.0",
87
+ "@pmndrs/vanilla": "^1.19.0",
88
+ "camera-controls": "^2.8.0",
89
+ "hls.js": "^1.5.0",
90
+ "maath": ">=0.10.0 <0.11.0",
91
+ "meshline": "^3.1.0",
92
+ "stats-gl": ">=2.0.0",
93
+ "three": ">=0.148.0 <0.173.0",
94
+ "three-custom-shader-material": ">=5.5.0 <6.3.0",
95
+ "three-mesh-bvh": ">=0.5.0 <0.9.0",
96
+ "three-stdlib": "^2.0.0",
97
+ "troika-three-text": ">=0.47.0 <0.53.0"
98
+ },
99
+ "peerDependenciesMeta": {
100
+ "@monogrid/gainmap-js": {
101
+ "optional": true
102
+ },
103
+ "@pmndrs/vanilla": {
104
+ "optional": true
105
+ },
106
+ "hls.js": {
107
+ "optional": true
108
+ },
109
+ "troika-three-text": {
110
+ "optional": true
111
+ },
112
+ "three-custom-shader-material": {
113
+ "optional": true
114
+ },
115
+ "three-mesh-bvh": {
116
+ "optional": true
117
+ },
118
+ "maath": {
119
+ "optional": true
120
+ },
121
+ "meshline": {
122
+ "optional": true
123
+ },
124
+ "camera-controls": {
125
+ "optional": true
126
+ },
127
+ "stats-gl": {
128
+ "optional": true
129
+ }
130
+ },
131
+ "dependencies": {
132
+ "tslib": "^2.3.0"
133
+ },
134
+ "sideEffects": false,
135
+ "web-types": [
136
+ "../../node_modules/angular-three/web-types.json",
137
+ "../../node_modules/angular-three-soba/web-types.json",
138
+ "./web-types.json"
139
+ ],
140
+ "module": "fesm2022/angular-three-soba.mjs",
141
+ "typings": "index.d.ts"
142
+ }
@@ -1,15 +1,15 @@
1
1
  import { ElementRef } from '@angular/core';
2
- import { NgtLOD } from 'angular-three';
3
- import { LOD } from 'three';
2
+ import { NgtThreeElements } from 'angular-three';
3
+ import * as THREE from 'three';
4
4
  import * as i0 from "@angular/core";
5
- export interface NgtsDetailedOptions extends Partial<NgtLOD> {
5
+ export interface NgtsDetailedOptions extends Partial<NgtThreeElements['ngt-lOD']> {
6
6
  hysteresis: number;
7
7
  }
8
8
  export declare class NgtsDetailed {
9
9
  distances: import("@angular/core").InputSignal<number[]>;
10
10
  options: import("@angular/core").InputSignalWithTransform<NgtsDetailedOptions, "" | Partial<NgtsDetailedOptions>>;
11
- parameters: import("@angular/core").Signal<Omit<NgtsDetailedOptions, "hysteresis">>;
12
- lodRef: import("@angular/core").Signal<ElementRef<LOD<import("three").Object3DEventMap>>>;
11
+ protected parameters: import("@angular/core").Signal<Omit<NgtsDetailedOptions, "hysteresis">>;
12
+ lodRef: import("@angular/core").Signal<ElementRef<THREE.LOD<THREE.Object3DEventMap>>>;
13
13
  private hysteresis;
14
14
  constructor();
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsDetailed, never>;
@@ -1,105 +1,17 @@
1
1
  import { ElementRef } from '@angular/core';
2
- import { NgtInstancedMesh } from 'angular-three';
3
- import { InstancedMesh, Matrix4, Quaternion, Vector3 } from 'three';
4
- import { PositionMesh } from './position-mesh';
2
+ import { NgtThreeElements } from 'angular-three';
3
+ import * as THREE from 'three';
4
+ import { NgtPositionMesh, PositionMesh } from './position-mesh';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class NgtsInstance {
7
- options: import("@angular/core").InputSignal<Partial<{
8
- addEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionMesh>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionMesh, typeof PositionMesh>, ev: import("angular-three").NgtNodeEventMap<PositionMesh>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
9
- removeEventListener: (<TEventKey extends keyof import("angular-three").NgtNodeEventMap<PositionMesh>>(type: TEventKey, listener: (this: import("angular-three").NgtNodeElement<PositionMesh, typeof PositionMesh>, ev: import("angular-three").NgtNodeEventMap<PositionMesh>[TEventKey]) => any) => void) & (<TEventKey extends keyof import("angular-three").NgtAllObject3DEventsMap>(type: TEventKey, listener: (this: any, ev: import("angular-three").NgtAllObject3DEventsMap[TEventKey]) => any) => void);
10
- attach: string | string[] | import("angular-three").NgtAttachFunction;
11
- __ngt_args__: [];
12
- readonly type?: string | undefined;
13
- toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
14
- readonly isObject3D?: true | undefined;
15
- readonly id?: number | undefined;
16
- uuid?: string | undefined;
17
- name?: string | undefined;
18
- parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
19
- children?: import("three").Object3D<import("three").Object3DEventMap>[] | undefined;
20
- readonly modelViewMatrix?: Matrix4 | undefined;
21
- readonly normalMatrix?: import("three").Matrix3 | undefined;
22
- matrixWorld?: Matrix4 | undefined;
23
- matrixAutoUpdate?: boolean | undefined;
24
- matrixWorldAutoUpdate?: boolean | undefined;
25
- matrixWorldNeedsUpdate?: boolean | undefined;
26
- visible?: boolean | undefined;
27
- castShadow?: boolean | undefined;
28
- receiveShadow?: boolean | undefined;
29
- frustumCulled?: boolean | undefined;
30
- renderOrder?: number | undefined;
31
- animations?: import("three").AnimationClip[] | undefined;
32
- userData?: Record<string, any> | undefined;
33
- customDepthMaterial?: import("three").Material | undefined;
34
- customDistanceMaterial?: import("three").Material | undefined;
35
- onBeforeShadow?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: import("three").Group) => void) | undefined;
36
- onAfterShadow?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: import("three").Group) => void) | undefined;
37
- onBeforeRender?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: import("three").Group) => void) | undefined;
38
- onAfterRender?: ((renderer: import("three").WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: import("three").Group) => void) | undefined;
39
- applyMatrix4?: ((matrix: Matrix4) => void) | undefined;
40
- applyQuaternion?: ((quaternion: Quaternion) => PositionMesh) | undefined;
41
- setRotationFromAxisAngle?: ((axis: Vector3, angle: number) => void) | undefined;
42
- setRotationFromEuler?: ((euler: import("three").Euler) => void) | undefined;
43
- setRotationFromMatrix?: ((m: Matrix4) => void) | undefined;
44
- setRotationFromQuaternion?: ((q: Quaternion) => void) | undefined;
45
- rotateOnAxis?: ((axis: Vector3, angle: number) => PositionMesh) | undefined;
46
- rotateOnWorldAxis?: ((axis: Vector3, angle: number) => PositionMesh) | undefined;
47
- rotateX?: ((angle: number) => PositionMesh) | undefined;
48
- rotateY?: ((angle: number) => PositionMesh) | undefined;
49
- rotateZ?: ((angle: number) => PositionMesh) | undefined;
50
- translateOnAxis?: ((axis: Vector3, distance: number) => PositionMesh) | undefined;
51
- translateX?: ((distance: number) => PositionMesh) | undefined;
52
- translateY?: ((distance: number) => PositionMesh) | undefined;
53
- translateZ?: ((distance: number) => PositionMesh) | undefined;
54
- localToWorld?: ((vector: Vector3) => Vector3) | undefined;
55
- worldToLocal?: ((vector: Vector3) => Vector3) | undefined;
56
- lookAt?: {
57
- (vector: Vector3): void;
58
- (x: number, y: number, z: number): void;
59
- } | undefined;
60
- add?: ((...object: import("three").Object3D[]) => PositionMesh) | undefined;
61
- remove?: ((...object: import("three").Object3D[]) => PositionMesh) | undefined;
62
- removeFromParent?: (() => PositionMesh) | undefined;
63
- clear?: (() => PositionMesh) | undefined;
64
- getObjectById?: ((id: number) => import("three").Object3D | undefined) | undefined;
65
- getObjectByName?: ((name: string) => import("three").Object3D | undefined) | undefined;
66
- getObjectByProperty?: ((name: string, value: any) => import("three").Object3D | undefined) | undefined;
67
- getObjectsByProperty?: ((name: string, value: any, optionalTarget?: import("three").Object3D[]) => import("three").Object3D[]) | undefined;
68
- getWorldPosition?: ((target: Vector3) => Vector3) | undefined;
69
- getWorldQuaternion?: ((target: Quaternion) => Quaternion) | undefined;
70
- getWorldScale?: ((target: Vector3) => Vector3) | undefined;
71
- getWorldDirection?: ((target: Vector3) => Vector3) | undefined;
72
- traverse?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
73
- traverseVisible?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
74
- traverseAncestors?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
75
- updateMatrix?: (() => void) | undefined;
76
- updateMatrixWorld?: ((force?: boolean) => void) | undefined;
77
- updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
78
- clone?: ((recursive?: boolean) => PositionMesh) | undefined;
79
- copy?: ((object: import("three").Object3D, recursive?: boolean) => PositionMesh) | undefined;
80
- hasEventListener?: (<T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, PositionMesh>) => boolean) | undefined;
81
- dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
82
- color?: import("three").ColorRepresentation | undefined;
83
- instance?: ElementRef<InstancedMesh> | InstancedMesh | null | undefined;
84
- readonly geometry?: import("three").BufferGeometry<import("three").NormalBufferAttributes> | undefined;
85
- readonly isGroup?: true | undefined;
86
- position: import("angular-three").NgtVector3;
87
- up: import("angular-three").NgtVector3;
88
- scale: import("angular-three").NgtVector3;
89
- rotation: import("angular-three").NgtEuler;
90
- matrix: import("angular-three").NgtMatrix4;
91
- quaternion: import("angular-three").NgtQuaternion;
92
- layers: import("angular-three").NgtLayers;
93
- dispose: (() => void) | null;
94
- raycast: import("three").Object3D["raycast"] | null;
95
- }>>;
96
- instances: NgtsInstances;
7
+ options: import("@angular/core").InputSignal<Partial<NgtPositionMesh>>;
8
+ protected instances: NgtsInstances;
97
9
  positionMeshRef: import("@angular/core").Signal<ElementRef<PositionMesh>>;
98
10
  constructor();
99
11
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtsInstance, never>;
100
12
  static ɵcmp: i0.ɵɵComponentDeclaration<NgtsInstance, "ngts-instance", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
101
13
  }
102
- export interface NgtsInstancesOptions extends Partial<NgtInstancedMesh> {
14
+ export interface NgtsInstancesOptions extends Partial<NgtThreeElements['ngt-instanced-mesh']> {
103
15
  range?: number;
104
16
  limit: number;
105
17
  frames: number;
@@ -107,8 +19,8 @@ export interface NgtsInstancesOptions extends Partial<NgtInstancedMesh> {
107
19
  export declare class NgtsInstances {
108
20
  protected readonly DynamicDrawUsage: 35048;
109
21
  options: import("@angular/core").InputSignalWithTransform<NgtsInstancesOptions, "" | Partial<NgtsInstancesOptions>>;
110
- protected parameters: import("@angular/core").Signal<Omit<NgtsInstancesOptions, "frames" | "range" | "limit">>;
111
- instancedMeshRef: import("@angular/core").Signal<ElementRef<InstancedMesh<import("three").BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").InstancedMeshEventMap>>>;
22
+ protected parameters: import("@angular/core").Signal<Omit<NgtsInstancesOptions, "limit" | "range" | "frames">>;
23
+ instancedMeshRef: import("@angular/core").Signal<ElementRef<THREE.InstancedMesh<THREE.BufferGeometry<THREE.NormalBufferAttributes>, THREE.Material | THREE.Material[], THREE.InstancedMeshEventMap>>>;
112
24
  private limit;
113
25
  protected buffers: import("@angular/core").Signal<{
114
26
  matrices: Float32Array;