angular-three-soba 4.0.0-next.9 → 4.0.0-next.91

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 (51) hide show
  1. package/abstractions/README.md +1 -1
  2. package/abstractions/lib/catmull-rom-line.d.ts +16 -15
  3. package/abstractions/lib/edges.d.ts +17 -15
  4. package/abstractions/lib/text-3d.d.ts +1 -1
  5. package/abstractions/lib/text.d.ts +5 -1
  6. package/cameras/lib/camera-content.d.ts +1 -2
  7. package/cameras/lib/cube-camera.d.ts +2 -2
  8. package/cameras/lib/orthographic-camera.d.ts +6 -5
  9. package/cameras/lib/perspective-camera.d.ts +2 -5
  10. package/controls/README.md +28 -28
  11. package/controls/index.d.ts +1 -0
  12. package/controls/lib/camera-controls.d.ts +1 -1
  13. package/controls/lib/orbit-controls.d.ts +11 -6
  14. package/controls/lib/trackball-controls.d.ts +27 -0
  15. package/fesm2022/angular-three-soba-abstractions.mjs +87 -47
  16. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  17. package/fesm2022/angular-three-soba-cameras.mjs +61 -37
  18. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  19. package/fesm2022/angular-three-soba-controls.mjs +128 -36
  20. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  21. package/fesm2022/angular-three-soba-gizmos.mjs +124 -86
  22. package/fesm2022/angular-three-soba-gizmos.mjs.map +1 -1
  23. package/fesm2022/angular-three-soba-loaders.mjs +3 -3
  24. package/fesm2022/angular-three-soba-materials.mjs +82 -86
  25. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  26. package/fesm2022/angular-three-soba-misc.mjs +55 -48
  27. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  28. package/fesm2022/angular-three-soba-performances.mjs +152 -35
  29. package/fesm2022/angular-three-soba-performances.mjs.map +1 -1
  30. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
  31. package/fesm2022/angular-three-soba-staging.mjs +183 -144
  32. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  33. package/fesm2022/angular-three-soba-stats.mjs +3 -3
  34. package/gizmos/lib/gizmo-helper/gizmo-helper.d.ts +4 -3
  35. package/loaders/README.md +39 -39
  36. package/materials/lib/mesh-transmission-material.d.ts +4 -4
  37. package/misc/README.md +16 -16
  38. package/misc/lib/deprecated.d.ts +0 -6
  39. package/misc/lib/depth-buffer.d.ts +1 -1
  40. package/misc/lib/fbo.d.ts +1 -3
  41. package/misc/lib/html/html-content.d.ts +2 -2
  42. package/misc/lib/html/html.d.ts +4 -4
  43. package/package.json +6 -6
  44. package/performances/index.d.ts +1 -0
  45. package/performances/lib/adaptive-dpr.d.ts +1 -1
  46. package/performances/lib/bvh.d.ts +49 -0
  47. package/shaders/lib/mesh-refraction-material.d.ts +2 -2
  48. package/staging/lib/caustics.d.ts +3 -3
  49. package/staging/lib/environment/inject-environment.d.ts +1 -2
  50. package/staging/lib/render-texture.d.ts +5 -4
  51. package/staging/lib/stage.d.ts +12 -11
@@ -1,13 +1,14 @@
1
1
  import { NgTemplateOutlet, DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Directive, input, output, contentChild, TemplateRef, viewChild, computed, effect, Component, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, inject, signal, ElementRef } from '@angular/core';
4
- import { pick, injectStore, extend, injectBeforeRender, hasListener, NgtPortal, NgtPortalAutoRender, NgtPortalContent, NgtArgs, getEmitter, omit, getInstanceState, is, resolveRef } from 'angular-three';
4
+ import * as i1 from 'angular-three';
5
+ import { pick, injectStore, extend, injectBeforeRender, hasListener, NgtPortalAutoRender, NgtPortal, NgtArgs, getEmitter, omit, getInstanceState, is, resolveRef } from 'angular-three';
5
6
  import { NgtsOrthographicCamera } from 'angular-three-soba/cameras';
6
7
  import { mergeInputs } from 'ngxtension/inject-inputs';
7
8
  import * as THREE from 'three';
8
9
  import { Group, MeshBasicMaterial, Mesh, BoxGeometry, Sprite, SpriteMaterial, ConeGeometry, CylinderGeometry, PlaneGeometry, SphereGeometry } from 'three';
9
- import * as i1 from 'angular-three-soba/misc';
10
- import { NgtsHTMLDeclarations, calculateScaleFactor } from 'angular-three-soba/misc';
10
+ import * as i1$1 from 'angular-three-soba/misc';
11
+ import { NgtsHTML, calculateScaleFactor } from 'angular-three-soba/misc';
11
12
  import { NgtsLine } from 'angular-three-soba/abstractions';
12
13
  import { TransformControls } from 'three-stdlib';
13
14
 
@@ -21,10 +22,10 @@ class NgtsGizmoHelperContent {
21
22
  static ngTemplateContextGuard(_, ctx) {
22
23
  return true;
23
24
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoHelperContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
25
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.4", type: NgtsGizmoHelperContent, isStandalone: true, selector: "ng-template[gizmoHelperContent]", ngImport: i0 }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoHelperContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
26
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.1", type: NgtsGizmoHelperContent, isStandalone: true, selector: "ng-template[gizmoHelperContent]", ngImport: i0 }); }
26
27
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoHelperContent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoHelperContent, decorators: [{
28
29
  type: Directive,
29
30
  args: [{ selector: 'ng-template[gizmoHelperContent]' }]
30
31
  }] });
@@ -33,7 +34,7 @@ const defaultOptions$2 = {
33
34
  margin: [80, 80],
34
35
  renderPriority: 1,
35
36
  };
36
- class NgtsGizmoHelper {
37
+ class NgtsGizmoHelperImpl {
37
38
  constructor() {
38
39
  this.options = input(defaultOptions$2, { transform: mergeInputs(defaultOptions$2) });
39
40
  this.update = output();
@@ -95,7 +96,11 @@ class NgtsGizmoHelper {
95
96
  // animate position by doing a slerp and then scaling the position on the unit sphere
96
97
  q1.rotateTowards(q2, step);
97
98
  // animate orientation
98
- mainCamera.position.set(0, 0, 1).applyQuaternion(q1).multiplyScalar(this.radius).add(this.focusPoint);
99
+ mainCamera.position
100
+ .set(0, 0, 1)
101
+ .applyQuaternion(q1)
102
+ .multiplyScalar(this.radius)
103
+ .add(this.focusPoint);
99
104
  mainCamera.up.set(0, 1, 0).applyQuaternion(q1).normalize();
100
105
  mainCamera.quaternion.copy(q1);
101
106
  if (this.isCameraControls(defaultControls)) {
@@ -145,8 +150,8 @@ class NgtsGizmoHelper {
145
150
  isCameraControls(controls) {
146
151
  return 'getTarget' in controls;
147
152
  }
148
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoHelper, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
149
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.1.4", type: NgtsGizmoHelper, isStandalone: true, selector: "ngts-gizmo-helper", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { update: "update" }, queries: [{ propertyName: "content", first: true, predicate: NgtsGizmoHelperContent, descendants: true, read: TemplateRef, isSignal: true }], viewQueries: [{ propertyName: "gizmoRef", first: true, predicate: ["gizmo"], descendants: true, isSignal: true }, { propertyName: "virtualCameraRef", first: true, predicate: NgtsOrthographicCamera, descendants: true, isSignal: true }], ngImport: i0, template: `
153
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoHelperImpl, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
154
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.1", type: NgtsGizmoHelperImpl, isStandalone: true, selector: "ngts-gizmo-helper", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { update: "update" }, queries: [{ propertyName: "content", first: true, predicate: NgtsGizmoHelperContent, descendants: true, read: TemplateRef, isSignal: true }], viewQueries: [{ propertyName: "gizmoRef", first: true, predicate: ["gizmo"], descendants: true, isSignal: true }, { propertyName: "virtualCameraRef", first: true, predicate: NgtsOrthographicCamera, descendants: true, isSignal: true }], ngImport: i0, template: `
150
155
  @let _renderPriority = renderPriority();
151
156
 
152
157
  <ngt-portal
@@ -165,9 +170,9 @@ class NgtsGizmoHelper {
165
170
  </ngt-group>
166
171
  </ng-template>
167
172
  </ngt-portal>
168
- `, isInline: true, dependencies: [{ kind: "component", type: NgtPortal, selector: "ngt-portal", inputs: ["container", "state"] }, { kind: "directive", type: NgtPortalAutoRender, selector: "ngt-portal[autoRender]", inputs: ["autoRender"] }, { kind: "directive", type: NgtPortalContent, selector: "ng-template[portalContent]" }, { kind: "component", type: NgtsOrthographicCamera, selector: "ngts-orthographic-camera", inputs: ["options"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
173
+ `, isInline: true, dependencies: [{ kind: "component", type: i1.NgtPortalImpl, selector: "ngt-portal", inputs: ["container", "state"] }, { kind: "directive", type: i1.NgtPortalContent, selector: "ng-template[portalContent]" }, { kind: "directive", type: NgtPortalAutoRender, selector: "ngt-portal[autoRender]", inputs: ["autoRender"] }, { kind: "component", type: NgtsOrthographicCamera, selector: "ngts-orthographic-camera", inputs: ["options"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
169
174
  }
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoHelper, decorators: [{
175
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoHelperImpl, decorators: [{
171
176
  type: Component,
172
177
  args: [{
173
178
  selector: 'ngts-gizmo-helper',
@@ -193,9 +198,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
193
198
  `,
194
199
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
195
200
  changeDetection: ChangeDetectionStrategy.OnPush,
196
- imports: [NgtPortal, NgtPortalAutoRender, NgtPortalContent, NgtsOrthographicCamera, NgTemplateOutlet],
201
+ imports: [NgtPortal, NgtPortalAutoRender, NgtsOrthographicCamera, NgTemplateOutlet],
197
202
  }]
198
203
  }], ctorParameters: () => [] });
204
+ const NgtsGizmoHelper = [NgtsGizmoHelperImpl, NgtsGizmoHelperContent];
199
205
 
200
206
  const colors = { bg: '#f0f0f0', hover: '#999', text: 'black', stroke: 'black' };
201
207
  const defaultFaces = ['Right', 'Left', 'Top', 'Bottom', 'Front', 'Back'];
@@ -251,8 +257,8 @@ class FaceMaterial {
251
257
  });
252
258
  extend({ MeshBasicMaterial });
253
259
  }
254
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: FaceMaterial, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
255
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: FaceMaterial, isStandalone: true, selector: "viewcube-face-material", inputs: { hover: { classPropertyName: "hover", publicName: "hover", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
260
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FaceMaterial, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
261
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.1", type: FaceMaterial, isStandalone: true, selector: "viewcube-face-material", inputs: { hover: { classPropertyName: "hover", publicName: "hover", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
256
262
  <ngt-mesh-basic-material
257
263
  [attach]="['material', index()]"
258
264
  [map]="texture()"
@@ -262,7 +268,7 @@ class FaceMaterial {
262
268
  />
263
269
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
264
270
  }
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: FaceMaterial, decorators: [{
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FaceMaterial, decorators: [{
266
272
  type: Component,
267
273
  args: [{
268
274
  selector: 'viewcube-face-material',
@@ -283,7 +289,7 @@ class FaceCube {
283
289
  constructor() {
284
290
  this.options = input({});
285
291
  this.onClick = input();
286
- this.gizmoHelper = inject(NgtsGizmoHelper);
292
+ this.gizmoHelper = inject(NgtsGizmoHelperImpl);
287
293
  this.hover = signal(-1);
288
294
  this.count = Array.from({ length: 6 });
289
295
  this.Math = Math;
@@ -298,8 +304,8 @@ class FaceCube {
298
304
  this.gizmoHelper.tweenCamera(event.face.normal);
299
305
  }
300
306
  }
301
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: FaceCube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
302
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: FaceCube, isStandalone: true, selector: "viewcube-face-cube", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
307
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FaceCube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
308
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: FaceCube, isStandalone: true, selector: "viewcube-face-cube", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
303
309
  <ngt-mesh
304
310
  (pointerout)="$any($event).stopPropagation(); hover.set(-1)"
305
311
  (pointermove)="$any($event).stopPropagation(); hover.set(Math.floor($any($event).faceIndex / 2))"
@@ -312,7 +318,7 @@ class FaceCube {
312
318
  </ngt-mesh>
313
319
  `, isInline: true, dependencies: [{ kind: "component", type: FaceMaterial, selector: "viewcube-face-material", inputs: ["hover", "index", "options"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
314
320
  }
315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: FaceCube, decorators: [{
321
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FaceCube, decorators: [{
316
322
  type: Component,
317
323
  args: [{
318
324
  selector: 'viewcube-face-cube',
@@ -345,7 +351,7 @@ class EdgeCube {
345
351
  },
346
352
  });
347
353
  this.onClick = input();
348
- this.gizmoHelper = inject(NgtsGizmoHelper);
354
+ this.gizmoHelper = inject(NgtsGizmoHelperImpl);
349
355
  this.hover = signal(false);
350
356
  this.color = computed(() => (this.hover() ? this.hoverColor() : 'white'));
351
357
  extend({ Mesh, BoxGeometry, MeshBasicMaterial });
@@ -359,8 +365,8 @@ class EdgeCube {
359
365
  this.gizmoHelper.tweenCamera(this.position());
360
366
  }
361
367
  }
362
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: EdgeCube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
363
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: EdgeCube, isStandalone: true, selector: "viewcube-edge-cube", inputs: { dimensions: { classPropertyName: "dimensions", publicName: "dimensions", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: true, transformFunction: null }, hoverColor: { classPropertyName: "hoverColor", publicName: "hoverColor", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
368
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: EdgeCube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
369
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.1", type: EdgeCube, isStandalone: true, selector: "viewcube-edge-cube", inputs: { dimensions: { classPropertyName: "dimensions", publicName: "dimensions", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: true, transformFunction: null }, hoverColor: { classPropertyName: "hoverColor", publicName: "hoverColor", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
364
370
  <ngt-mesh
365
371
  [scale]="1.01"
366
372
  [position]="position()"
@@ -368,12 +374,12 @@ class EdgeCube {
368
374
  (pointerover)="$any($event).stopPropagation(); hover.set(true)"
369
375
  (click)="internalOnClick($any($event))"
370
376
  >
371
- <ngt-mesh-basic-material [transparent]="true" [opacity]="0.6" [color]="color()" [visible]="hover()" />
377
+ <ngt-mesh-basic-material transparent [opacity]="0.6" [color]="color()" [visible]="hover()" />
372
378
  <ngt-box-geometry *args="dimensions()" />
373
379
  </ngt-mesh>
374
380
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
375
381
  }
376
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: EdgeCube, decorators: [{
382
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: EdgeCube, decorators: [{
377
383
  type: Component,
378
384
  args: [{
379
385
  selector: 'viewcube-edge-cube',
@@ -385,7 +391,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
385
391
  (pointerover)="$any($event).stopPropagation(); hover.set(true)"
386
392
  (click)="internalOnClick($any($event))"
387
393
  >
388
- <ngt-mesh-basic-material [transparent]="true" [opacity]="0.6" [color]="color()" [visible]="hover()" />
394
+ <ngt-mesh-basic-material transparent [opacity]="0.6" [color]="color()" [visible]="hover()" />
389
395
  <ngt-box-geometry *args="dimensions()" />
390
396
  </ngt-mesh>
391
397
  `,
@@ -435,8 +441,8 @@ class NgtsGizmoViewcube {
435
441
  makePositionVector(xyz) {
436
442
  return new THREE.Vector3(...xyz).multiplyScalar(0.38);
437
443
  }
438
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoViewcube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
439
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsGizmoViewcube, isStandalone: true, selector: "ngts-gizmo-viewcube", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: `
444
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoViewcube, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
445
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsGizmoViewcube, isStandalone: true, selector: "ngts-gizmo-viewcube", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: `
440
446
  <ngt-group [scale]="60">
441
447
  <viewcube-face-cube [options]="options()" [onClick]="onClick" />
442
448
  @for (edge of edges; track $index) {
@@ -458,7 +464,7 @@ class NgtsGizmoViewcube {
458
464
  </ngt-group>
459
465
  `, isInline: true, dependencies: [{ kind: "component", type: FaceCube, selector: "viewcube-face-cube", inputs: ["options", "onClick"] }, { kind: "component", type: EdgeCube, selector: "viewcube-edge-cube", inputs: ["dimensions", "position", "hoverColor", "onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
460
466
  }
461
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoViewcube, decorators: [{
467
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoViewcube, decorators: [{
462
468
  type: Component,
463
469
  args: [{
464
470
  selector: 'ngts-gizmo-viewcube',
@@ -502,8 +508,8 @@ class Axis {
502
508
  this.rotation = input([0, 0, 0]);
503
509
  extend({ Group, Mesh, BoxGeometry, MeshBasicMaterial });
504
510
  }
505
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: Axis, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
506
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: Axis, isStandalone: true, selector: "viewport-axis", inputs: { scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, rotation: { classPropertyName: "rotation", publicName: "rotation", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
511
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: Axis, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
512
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.1", type: Axis, isStandalone: true, selector: "viewport-axis", inputs: { scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, rotation: { classPropertyName: "rotation", publicName: "rotation", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
507
513
  <ngt-group [rotation]="rotation()">
508
514
  <ngt-mesh [position]="[0.4, 0, 0]">
509
515
  <ngt-box-geometry *args="scale()" />
@@ -512,7 +518,7 @@ class Axis {
512
518
  </ngt-group>
513
519
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
514
520
  }
515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: Axis, decorators: [{
521
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: Axis, decorators: [{
516
522
  type: Component,
517
523
  args: [{
518
524
  selector: 'viewport-axis',
@@ -540,7 +546,7 @@ class AxisHead {
540
546
  this.font = input('18px Inter var, Arial, sans-serif');
541
547
  this.onClick = input();
542
548
  this.document = inject(DOCUMENT);
543
- this.gizmoHelper = inject(NgtsGizmoHelper);
549
+ this.gizmoHelper = inject(NgtsGizmoHelperImpl);
544
550
  this.store = injectStore();
545
551
  this.texture = computed(() => {
546
552
  const [arcStyle, label, labelColor, font, gl] = [
@@ -596,8 +602,8 @@ class AxisHead {
596
602
  event.stopPropagation();
597
603
  this.gizmoHelper.tweenCamera(event.object.position);
598
604
  }
599
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: AxisHead, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
600
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: AxisHead, isStandalone: true, selector: "viewport-axis-head", inputs: { arcStyle: { classPropertyName: "arcStyle", publicName: "arcStyle", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelColor: { classPropertyName: "labelColor", publicName: "labelColor", isSignal: true, isRequired: false, transformFunction: null }, axisHeadScale: { classPropertyName: "axisHeadScale", publicName: "axisHeadScale", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
605
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: AxisHead, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
606
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.1", type: AxisHead, isStandalone: true, selector: "viewport-axis-head", inputs: { arcStyle: { classPropertyName: "arcStyle", publicName: "arcStyle", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelColor: { classPropertyName: "labelColor", publicName: "labelColor", isSignal: true, isRequired: false, transformFunction: null }, axisHeadScale: { classPropertyName: "axisHeadScale", publicName: "axisHeadScale", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, onClick: { classPropertyName: "onClick", publicName: "onClick", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
601
607
  <ngt-sprite
602
608
  [scale]="scale()"
603
609
  [position]="position()"
@@ -605,11 +611,16 @@ class AxisHead {
605
611
  (pointerout)="onPointerOut($any($event))"
606
612
  (pointerdown)="onPointerDown($any($event))"
607
613
  >
608
- <ngt-sprite-material [map]="texture()" [alphaTest]="0.3" [opacity]="label() ? 1 : 0.75" [toneMapped]="false" />
614
+ <ngt-sprite-material
615
+ [map]="texture()"
616
+ [alphaTest]="0.3"
617
+ [opacity]="label() ? 1 : 0.75"
618
+ [toneMapped]="false"
619
+ />
609
620
  </ngt-sprite>
610
621
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
611
622
  }
612
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: AxisHead, decorators: [{
623
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: AxisHead, decorators: [{
613
624
  type: Component,
614
625
  args: [{
615
626
  selector: 'viewport-axis-head',
@@ -621,7 +632,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
621
632
  (pointerout)="onPointerOut($any($event))"
622
633
  (pointerdown)="onPointerDown($any($event))"
623
634
  >
624
- <ngt-sprite-material [map]="texture()" [alphaTest]="0.3" [opacity]="label() ? 1 : 0.75" [toneMapped]="false" />
635
+ <ngt-sprite-material
636
+ [map]="texture()"
637
+ [alphaTest]="0.3"
638
+ [opacity]="label() ? 1 : 0.75"
639
+ [toneMapped]="false"
640
+ />
625
641
  </ngt-sprite>
626
642
  `,
627
643
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
@@ -670,8 +686,8 @@ class NgtsGizmoViewport {
670
686
  return getEmitter(this.click);
671
687
  return undefined;
672
688
  }
673
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoViewport, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
674
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsGizmoViewport, isStandalone: true, selector: "ngts-gizmo-viewport", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: `
689
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoViewport, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsGizmoViewport, isStandalone: true, selector: "ngts-gizmo-viewport", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: `
675
691
  @let _axisScale = axisScale();
676
692
  @let _axisHeadScale = axisHeadScale();
677
693
  @let _labels = labels();
@@ -744,7 +760,7 @@ class NgtsGizmoViewport {
744
760
  </ngt-group>
745
761
  `, isInline: true, dependencies: [{ kind: "component", type: Axis, selector: "viewport-axis", inputs: ["scale", "color", "rotation"] }, { kind: "component", type: AxisHead, selector: "viewport-axis-head", inputs: ["arcStyle", "position", "label", "labelColor", "axisHeadScale", "disabled", "font", "onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
746
762
  }
747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsGizmoViewport, decorators: [{
763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsGizmoViewport, decorators: [{
748
764
  type: Component,
749
765
  args: [{
750
766
  selector: 'ngts-gizmo-viewport',
@@ -835,12 +851,10 @@ function calculateOffset$1(clickPoint, normal, rayStart, rayDir) {
835
851
  if (e3 === 0) {
836
852
  return -e2 / e1;
837
853
  }
838
- vec1$1
839
- .copy(rayDir)
854
+ vec1$1.copy(rayDir)
840
855
  .multiplyScalar(e1 / e3)
841
856
  .sub(normal);
842
- vec2$1
843
- .copy(rayDir)
857
+ vec2$1.copy(rayDir)
844
858
  .multiplyScalar(e2 / e3)
845
859
  .add(rayStart)
846
860
  .sub(clickPoint);
@@ -945,8 +959,8 @@ class NgtsAxisArrow {
945
959
  event.stopPropagation();
946
960
  this.hovered.set(false);
947
961
  }
948
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsAxisArrow, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
949
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsAxisArrow, isStandalone: true, selector: "ngts-axis-arrow", inputs: { direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
962
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsAxisArrow, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
963
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsAxisArrow, isStandalone: true, selector: "ngts-axis-arrow", inputs: { direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
950
964
  <ngt-group #group>
951
965
  <ngt-group
952
966
  [matrix]="matrixL()"
@@ -994,7 +1008,11 @@ class NgtsAxisArrow {
994
1008
  }"
995
1009
  />
996
1010
 
997
- <ngt-mesh [raycast]="null" [position]="[0, cylinderLength() + coneLength() / 2.0, 0]" [renderOrder]="500">
1011
+ <ngt-mesh
1012
+ [raycast]="null"
1013
+ [position]="[0, cylinderLength() + coneLength() / 2.0, 0]"
1014
+ [renderOrder]="500"
1015
+ >
998
1016
  <ngt-cone-geometry *args="[coneWidth(), coneLength(), 24, 1]" />
999
1017
  <ngt-mesh-basic-material
1000
1018
  transparent
@@ -1008,9 +1026,9 @@ class NgtsAxisArrow {
1008
1026
  </ngt-mesh>
1009
1027
  </ngt-group>
1010
1028
  </ngt-group>
1011
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }, { kind: "component", type: i1.NgtsHTML, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1029
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }, { kind: "component", type: i1$1.NgtsHTMLImpl, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1$1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1012
1030
  }
1013
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsAxisArrow, decorators: [{
1031
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsAxisArrow, decorators: [{
1014
1032
  type: Component,
1015
1033
  args: [{
1016
1034
  selector: 'ngts-axis-arrow',
@@ -1062,7 +1080,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1062
1080
  }"
1063
1081
  />
1064
1082
 
1065
- <ngt-mesh [raycast]="null" [position]="[0, cylinderLength() + coneLength() / 2.0, 0]" [renderOrder]="500">
1083
+ <ngt-mesh
1084
+ [raycast]="null"
1085
+ [position]="[0, cylinderLength() + coneLength() / 2.0, 0]"
1086
+ [renderOrder]="500"
1087
+ >
1066
1088
  <ngt-cone-geometry *args="[coneWidth(), coneLength(), 24, 1]" />
1067
1089
  <ngt-mesh-basic-material
1068
1090
  transparent
@@ -1079,7 +1101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1079
1101
  `,
1080
1102
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
1081
1103
  changeDetection: ChangeDetectionStrategy.OnPush,
1082
- imports: [NgtArgs, NgtsLine, NgtsHTMLDeclarations],
1104
+ imports: [NgtArgs, NgtsLine, NgtsHTML],
1083
1105
  }]
1084
1106
  }], ctorParameters: () => [] });
1085
1107
 
@@ -1241,8 +1263,8 @@ class NgtsAxisRotator {
1241
1263
  event.stopPropagation();
1242
1264
  this.hovered.set(false);
1243
1265
  }
1244
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsAxisRotator, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1245
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsAxisRotator, isStandalone: true, selector: "ngts-axis-rotator", inputs: { dir1: { classPropertyName: "dir1", publicName: "dir1", isSignal: true, isRequired: true, transformFunction: null }, dir2: { classPropertyName: "dir2", publicName: "dir2", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
1266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsAxisRotator, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1267
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsAxisRotator, isStandalone: true, selector: "ngts-axis-rotator", inputs: { dir1: { classPropertyName: "dir1", publicName: "dir1", isSignal: true, isRequired: true, transformFunction: null }, dir2: { classPropertyName: "dir2", publicName: "dir2", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
1246
1268
  <ngt-group
1247
1269
  #group
1248
1270
  [matrix]="matrixL()"
@@ -1265,7 +1287,11 @@ class NgtsAxisRotator {
1265
1287
 
1266
1288
  <ngts-line
1267
1289
  [points]="arc()"
1268
- [options]="{ lineWidth: pivotControls.lineWidth() * 4, visible: false, userData: pivotControls.userData() }"
1290
+ [options]="{
1291
+ lineWidth: pivotControls.lineWidth() * 4,
1292
+ visible: false,
1293
+ userData: pivotControls.userData(),
1294
+ }"
1269
1295
  />
1270
1296
 
1271
1297
  <ngts-line
@@ -1284,9 +1310,9 @@ class NgtsAxisRotator {
1284
1310
  }"
1285
1311
  />
1286
1312
  </ngt-group>
1287
- `, isInline: true, dependencies: [{ kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }, { kind: "component", type: i1.NgtsHTML, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1313
+ `, isInline: true, dependencies: [{ kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }, { kind: "component", type: i1$1.NgtsHTMLImpl, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1$1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1288
1314
  }
1289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsAxisRotator, decorators: [{
1315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsAxisRotator, decorators: [{
1290
1316
  type: Component,
1291
1317
  args: [{
1292
1318
  selector: 'ngts-axis-rotator',
@@ -1313,7 +1339,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1313
1339
 
1314
1340
  <ngts-line
1315
1341
  [points]="arc()"
1316
- [options]="{ lineWidth: pivotControls.lineWidth() * 4, visible: false, userData: pivotControls.userData() }"
1342
+ [options]="{
1343
+ lineWidth: pivotControls.lineWidth() * 4,
1344
+ visible: false,
1345
+ userData: pivotControls.userData(),
1346
+ }"
1317
1347
  />
1318
1348
 
1319
1349
  <ngts-line
@@ -1335,7 +1365,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1335
1365
  `,
1336
1366
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
1337
1367
  changeDetection: ChangeDetectionStrategy.OnPush,
1338
- imports: [NgtsLine, NgtsHTMLDeclarations],
1368
+ imports: [NgtsLine, NgtsHTML],
1339
1369
  }]
1340
1370
  }], ctorParameters: () => [] });
1341
1371
 
@@ -1483,8 +1513,8 @@ class NgtsPlaneSlider {
1483
1513
  event.stopPropagation();
1484
1514
  this.hovered.set(false);
1485
1515
  }
1486
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsPlaneSlider, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1487
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsPlaneSlider, isStandalone: true, selector: "ngts-plane-slider", inputs: { dir1: { classPropertyName: "dir1", publicName: "dir1", isSignal: true, isRequired: true, transformFunction: null }, dir2: { classPropertyName: "dir2", publicName: "dir2", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
1516
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsPlaneSlider, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1517
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsPlaneSlider, isStandalone: true, selector: "ngts-plane-slider", inputs: { dir1: { classPropertyName: "dir1", publicName: "dir1", isSignal: true, isRequired: true, transformFunction: null }, dir2: { classPropertyName: "dir2", publicName: "dir2", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
1488
1518
  <ngt-group #group [matrix]="matrixL()" [matrixAutoUpdate]="false">
1489
1519
  @if (pivotControls.annotations()) {
1490
1520
  <ngts-html [options]="{ position: [0, 0, 0] }">
@@ -1534,9 +1564,9 @@ class NgtsPlaneSlider {
1534
1564
  />
1535
1565
  </ngt-group>
1536
1566
  </ngt-group>
1537
- `, isInline: true, dependencies: [{ kind: "component", type: i1.NgtsHTML, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }, { kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1567
+ `, isInline: true, dependencies: [{ kind: "component", type: i1$1.NgtsHTMLImpl, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1$1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }, { kind: "component", type: NgtsLine, selector: "ngts-line", inputs: ["points", "options"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1538
1568
  }
1539
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsPlaneSlider, decorators: [{
1569
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsPlaneSlider, decorators: [{
1540
1570
  type: Component,
1541
1571
  args: [{
1542
1572
  selector: 'ngts-plane-slider',
@@ -1593,7 +1623,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1593
1623
  `,
1594
1624
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
1595
1625
  changeDetection: ChangeDetectionStrategy.OnPush,
1596
- imports: [NgtsHTMLDeclarations, NgtsLine],
1626
+ imports: [NgtsHTML, NgtsLine],
1597
1627
  }]
1598
1628
  }], ctorParameters: () => [] });
1599
1629
 
@@ -1606,12 +1636,10 @@ function calculateOffset(clickPoint, normal, rayStart, rayDir) {
1606
1636
  if (e3 === 0) {
1607
1637
  return -e2 / e1;
1608
1638
  }
1609
- vec1
1610
- .copy(rayDir)
1639
+ vec1.copy(rayDir)
1611
1640
  .multiplyScalar(e1 / e3)
1612
1641
  .sub(normal);
1613
- vec2
1614
- .copy(rayDir)
1642
+ vec2.copy(rayDir)
1615
1643
  .multiplyScalar(e2 / e3)
1616
1644
  .add(rayStart)
1617
1645
  .sub(clickPoint);
@@ -1738,8 +1766,8 @@ class NgtsScalingSphere {
1738
1766
  event.stopPropagation();
1739
1767
  this.hovered.set(false);
1740
1768
  }
1741
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsScalingSphere, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1742
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsScalingSphere, isStandalone: true, selector: "ngts-scaling-sphere", inputs: { direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "meshRef", first: true, predicate: ["mesh"], descendants: true, isSignal: true }], ngImport: i0, template: `
1769
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsScalingSphere, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1770
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsScalingSphere, isStandalone: true, selector: "ngts-scaling-sphere", inputs: { direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: true, transformFunction: null }, axis: { classPropertyName: "axis", publicName: "axis", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "annotationRef", first: true, predicate: ["annotation"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "meshRef", first: true, predicate: ["mesh"], descendants: true, isSignal: true }], ngImport: i0, template: `
1743
1771
  <ngt-group #group>
1744
1772
  <ngt-group
1745
1773
  [matrix]="matrixL()"
@@ -1759,22 +1787,27 @@ class NgtsScalingSphere {
1759
1787
  ></div>
1760
1788
  </ngts-html>
1761
1789
  }
1762
- <ngt-mesh #mesh [position]="[0, position(), 0]" [renderOrder]="500" [userData]="pivotControls.userData()">
1790
+ <ngt-mesh
1791
+ #mesh
1792
+ [position]="[0, position(), 0]"
1793
+ [renderOrder]="500"
1794
+ [userData]="pivotControls.userData()"
1795
+ >
1763
1796
  <ngt-sphere-geometry *args="[radius(), 12, 12]" />
1764
1797
  <ngt-mesh-basic-material
1765
- [transparent]="true"
1798
+ transparent
1766
1799
  [depthTest]="pivotControls.depthTest()"
1767
1800
  [color]="color()"
1768
1801
  [opacity]="pivotControls.opacity()"
1769
- [polygonOffset]="true"
1802
+ polygonOffset
1770
1803
  [polygonOffsetFactor]="-10"
1771
1804
  />
1772
1805
  </ngt-mesh>
1773
1806
  </ngt-group>
1774
1807
  </ngt-group>
1775
- `, isInline: true, dependencies: [{ kind: "component", type: i1.NgtsHTML, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }, { kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1808
+ `, isInline: true, dependencies: [{ kind: "component", type: i1$1.NgtsHTMLImpl, selector: "ngts-html", inputs: ["options"] }, { kind: "component", type: i1$1.NgtsHTMLContent, selector: "div[htmlContent]", inputs: ["htmlContent"], outputs: ["occluded"] }, { kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1776
1809
  }
1777
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsScalingSphere, decorators: [{
1810
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsScalingSphere, decorators: [{
1778
1811
  type: Component,
1779
1812
  args: [{
1780
1813
  selector: 'ngts-scaling-sphere',
@@ -1798,14 +1831,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1798
1831
  ></div>
1799
1832
  </ngts-html>
1800
1833
  }
1801
- <ngt-mesh #mesh [position]="[0, position(), 0]" [renderOrder]="500" [userData]="pivotControls.userData()">
1834
+ <ngt-mesh
1835
+ #mesh
1836
+ [position]="[0, position(), 0]"
1837
+ [renderOrder]="500"
1838
+ [userData]="pivotControls.userData()"
1839
+ >
1802
1840
  <ngt-sphere-geometry *args="[radius(), 12, 12]" />
1803
1841
  <ngt-mesh-basic-material
1804
- [transparent]="true"
1842
+ transparent
1805
1843
  [depthTest]="pivotControls.depthTest()"
1806
1844
  [color]="color()"
1807
1845
  [opacity]="pivotControls.opacity()"
1808
- [polygonOffset]="true"
1846
+ polygonOffset
1809
1847
  [polygonOffsetFactor]="-10"
1810
1848
  />
1811
1849
  </ngt-mesh>
@@ -1814,7 +1852,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1814
1852
  `,
1815
1853
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
1816
1854
  changeDetection: ChangeDetectionStrategy.OnPush,
1817
- imports: [NgtsHTMLDeclarations, NgtArgs],
1855
+ imports: [NgtsHTML, NgtArgs],
1818
1856
  }]
1819
1857
  }], ctorParameters: () => [] });
1820
1858
 
@@ -2026,8 +2064,8 @@ class NgtsPivotControls {
2026
2064
  this.dragEnded.emit();
2027
2065
  this.store.snapshot.invalidate();
2028
2066
  }
2029
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsPivotControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2030
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtsPivotControls, isStandalone: true, selector: "ngts-pivot-controls", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dragStarted: "dragStarted", dragEnded: "dragEnded", dragged: "dragged" }, viewQueries: [{ propertyName: "parentRef", first: true, predicate: ["parent"], descendants: true, isSignal: true }, { propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "gizmoRef", first: true, predicate: ["gizmo"], descendants: true, isSignal: true }, { propertyName: "childrenRef", first: true, predicate: ["children"], descendants: true, isSignal: true }], ngImport: i0, template: `
2067
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsPivotControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2068
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: NgtsPivotControls, isStandalone: true, selector: "ngts-pivot-controls", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dragStarted: "dragStarted", dragEnded: "dragEnded", dragged: "dragged" }, viewQueries: [{ propertyName: "parentRef", first: true, predicate: ["parent"], descendants: true, isSignal: true }, { propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }, { propertyName: "gizmoRef", first: true, predicate: ["gizmo"], descendants: true, isSignal: true }, { propertyName: "childrenRef", first: true, predicate: ["children"], descendants: true, isSignal: true }], ngImport: i0, template: `
2031
2069
  <ngt-group #parent>
2032
2070
  <ngt-group #group [matrix]="matrix()" [matrixAutoUpdate]="false" [parameters]="parameters()">
2033
2071
  <ngt-group #gizmo [visible]="visible()" [position]="offset()" [rotation]="rotation()">
@@ -2086,7 +2124,7 @@ class NgtsPivotControls {
2086
2124
  </ngt-group>
2087
2125
  `, isInline: true, dependencies: [{ kind: "component", type: NgtsAxisArrow, selector: "ngts-axis-arrow", inputs: ["direction", "axis"] }, { kind: "component", type: NgtsPlaneSlider, selector: "ngts-plane-slider", inputs: ["dir1", "dir2", "axis"] }, { kind: "component", type: NgtsAxisRotator, selector: "ngts-axis-rotator", inputs: ["dir1", "dir2", "axis"] }, { kind: "component", type: NgtsScalingSphere, selector: "ngts-scaling-sphere", inputs: ["direction", "axis"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2088
2126
  }
2089
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsPivotControls, decorators: [{
2127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsPivotControls, decorators: [{
2090
2128
  type: Component,
2091
2129
  args: [{
2092
2130
  selector: 'ngts-pivot-controls',
@@ -2294,8 +2332,8 @@ class NgtsTransformControls {
2294
2332
  this.store.update({ controls });
2295
2333
  return () => this.store.update(() => ({ controls: oldControls }));
2296
2334
  }
2297
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsTransformControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2298
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.1.4", type: NgtsTransformControls, isStandalone: true, selector: "ngts-transform-controls", inputs: { object: { classPropertyName: "object", publicName: "object", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change", mouseDown: "mouseDown", mouseUp: "mouseUp", objectChange: "objectChange" }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }], ngImport: i0, template: `
2335
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsTransformControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2336
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.1", type: NgtsTransformControls, isStandalone: true, selector: "ngts-transform-controls", inputs: { object: { classPropertyName: "object", publicName: "object", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change", mouseDown: "mouseDown", mouseUp: "mouseUp", objectChange: "objectChange" }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }], ngImport: i0, template: `
2299
2337
  <ngt-primitive *args="[controls()]" [parameters]="controlsOptions()" />
2300
2338
 
2301
2339
  <ngt-group #group [parameters]="parameters()">
@@ -2303,7 +2341,7 @@ class NgtsTransformControls {
2303
2341
  </ngt-group>
2304
2342
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2305
2343
  }
2306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtsTransformControls, decorators: [{
2344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NgtsTransformControls, decorators: [{
2307
2345
  type: Component,
2308
2346
  args: [{
2309
2347
  selector: 'ngts-transform-controls',
@@ -2324,5 +2362,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
2324
2362
  * Generated bundle index. Do not edit.
2325
2363
  */
2326
2364
 
2327
- export { NgtsGizmoHelper, NgtsGizmoHelperContent, NgtsGizmoViewcube, NgtsGizmoViewport, NgtsPivotControls, NgtsTransformControls };
2365
+ export { NgtsGizmoHelper, NgtsGizmoHelperContent, NgtsGizmoHelperImpl, NgtsGizmoViewcube, NgtsGizmoViewport, NgtsPivotControls, NgtsTransformControls };
2328
2366
  //# sourceMappingURL=angular-three-soba-gizmos.mjs.map