angular-three-postprocessing 4.0.0-next.11 → 4.0.0-next.111

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 (40) hide show
  1. package/fesm2022/angular-three-postprocessing-n8ao.mjs +6 -6
  2. package/fesm2022/angular-three-postprocessing-n8ao.mjs.map +1 -1
  3. package/fesm2022/angular-three-postprocessing.mjs +189 -182
  4. package/fesm2022/angular-three-postprocessing.mjs.map +1 -1
  5. package/index.d.ts +715 -3
  6. package/n8ao/index.d.ts +39 -1
  7. package/package.json +4 -4
  8. package/lib/effect-composer.d.ts +0 -39
  9. package/lib/effect.d.ts +0 -52
  10. package/lib/effects/ascii.d.ts +0 -24
  11. package/lib/effects/bloom.d.ts +0 -11
  12. package/lib/effects/brightness-contrast.d.ts +0 -16
  13. package/lib/effects/chromatic-abberation.d.ts +0 -17
  14. package/lib/effects/color-average.d.ts +0 -12
  15. package/lib/effects/color-depth.d.ts +0 -15
  16. package/lib/effects/depth-of-field.d.ts +0 -20
  17. package/lib/effects/depth.d.ts +0 -15
  18. package/lib/effects/dot-screen.d.ts +0 -16
  19. package/lib/effects/fxaa.d.ts +0 -14
  20. package/lib/effects/glitch.d.ts +0 -32
  21. package/lib/effects/god-rays.d.ts +0 -32
  22. package/lib/effects/grid.d.ts +0 -18
  23. package/lib/effects/hue-saturation.d.ts +0 -16
  24. package/lib/effects/index.d.ts +0 -29
  25. package/lib/effects/lens-flare.d.ts +0 -94
  26. package/lib/effects/lut.d.ts +0 -18
  27. package/lib/effects/noise.d.ts +0 -15
  28. package/lib/effects/outline.d.ts +0 -73
  29. package/lib/effects/pixelation.d.ts +0 -17
  30. package/lib/effects/scanline.d.ts +0 -18
  31. package/lib/effects/selective-bloom.d.ts +0 -42
  32. package/lib/effects/sepia.d.ts +0 -15
  33. package/lib/effects/shock-wave.d.ts +0 -12
  34. package/lib/effects/smaa.d.ts +0 -16
  35. package/lib/effects/tilt-shift-2.d.ts +0 -35
  36. package/lib/effects/tilt-shift.d.ts +0 -23
  37. package/lib/effects/tone-mapping.d.ts +0 -23
  38. package/lib/effects/vignette.d.ts +0 -18
  39. package/lib/effects/water.d.ts +0 -21
  40. package/n8ao/lib/n8ao.d.ts +0 -35
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Component, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, input, Directive, Injector, computed, viewChild, effect, untracked } from '@angular/core';
3
- import { injectStore, pick, extend, getInstanceState, injectBeforeRender, NgtArgs, vector2, omit, resolveRef, vector3, is, NgtSelection } from 'angular-three';
2
+ import { inject, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, Component, input, Directive, computed, viewChild, effect, untracked } from '@angular/core';
3
+ import { injectStore, pick, extend, getInstanceState, beforeRender, NgtArgs, vector2, omit, resolveRef, vector3, is, NgtSelectionApi } from 'angular-three';
4
4
  import { createNoopInjectionToken } from 'ngxtension/create-injection-token';
5
5
  import { mergeInputs } from 'ngxtension/inject-inputs';
6
6
  import { EffectAttribute, EffectComposer, RenderPass, NormalPass, DepthDownsamplingPass, Effect, EffectPass, Pass, BloomEffect, BlendFunction, BrightnessContrastEffect, ChromaticAberrationEffect, ColorAverageEffect, ColorDepthEffect, DepthEffect, DepthOfFieldEffect, MaskFunction, DotScreenEffect, FXAAEffect, GlitchEffect, GlitchMode, GodRaysEffect, GridEffect, HueSaturationEffect, LUT3DEffect, NoiseEffect, OutlineEffect, PixelationEffect, ScanlineEffect, SelectiveBloomEffect, SepiaEffect, ShockWaveEffect, SMAAEffect, TiltShiftEffect, ToneMappingEffect, VignetteEffect } from 'postprocessing';
@@ -14,15 +14,15 @@ class NgtpEffectBlendMode {
14
14
  constructor() {
15
15
  this.effect = inject(NgtpEffect, { optional: true });
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffectBlendMode, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: NgtpEffectBlendMode, isStandalone: true, selector: "ngtp-effect-blend-mode", ngImport: i0, template: `
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffectBlendMode, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: NgtpEffectBlendMode, isStandalone: true, selector: "ngtp-effect-blend-mode", ngImport: i0, template: `
19
19
  @if (effect) {
20
20
  <ngt-value [rawValue]="effect.blendFunction()" attach="blendMode.blendFunction" />
21
21
  <ngt-value [rawValue]="effect.opacity()" attach="blendMode.opacity.value" />
22
22
  }
23
23
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffectBlendMode, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffectBlendMode, decorators: [{
26
26
  type: Component,
27
27
  args: [{
28
28
  selector: 'ngtp-effect-blend-mode',
@@ -39,16 +39,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
39
39
  class NgtpEffect {
40
40
  constructor() {
41
41
  this.defaultEffectOptions = injectDefaultEffectOptions({ optional: true });
42
- this.blendFunction = input(this.defaultEffectOptions?.blendFunction);
43
- this.opacity = input(this.defaultEffectOptions?.opacity);
42
+ this.blendFunction = input(this.defaultEffectOptions?.blendFunction, ...(ngDevMode ? [{ debugName: "blendFunction" }] : []));
43
+ this.opacity = input(this.defaultEffectOptions?.opacity, ...(ngDevMode ? [{ debugName: "opacity" }] : []));
44
44
  this.store = injectStore();
45
45
  this.camera = this.store.camera;
46
46
  this.invalidate = this.store.invalidate;
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffect, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
49
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.1.4", type: NgtpEffect, isStandalone: true, inputs: { blendFunction: { classPropertyName: "blendFunction", publicName: "blendFunction", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffect, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
49
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.4", type: NgtpEffect, isStandalone: true, inputs: { blendFunction: { classPropertyName: "blendFunction", publicName: "blendFunction", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffect, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffect, decorators: [{
52
52
  type: Directive
53
53
  }] });
54
54
 
@@ -64,8 +64,7 @@ function isConvolution(effect) {
64
64
  }
65
65
  class NgtpEffectComposer {
66
66
  constructor() {
67
- this.options = input(defaultOptions$5, { transform: mergeInputs(defaultOptions$5) });
68
- this.injector = inject(Injector);
67
+ this.options = input(defaultOptions$5, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions$5) }] : [{ transform: mergeInputs(defaultOptions$5) }]));
69
68
  this.store = injectStore();
70
69
  this.depthBuffer = pick(this.options, 'depthBuffer');
71
70
  this.stencilBuffer = pick(this.options, 'stencilBuffer');
@@ -75,15 +74,15 @@ class NgtpEffectComposer {
75
74
  this.resolutionScale = pick(this.options, 'resolutionScale');
76
75
  this.enabled = pick(this.options, 'enabled');
77
76
  this.renderPriority = pick(this.options, 'renderPriority');
78
- this.scene = computed(() => this.options().scene ?? this.store.scene());
79
- this.camera = computed(() => this.options().camera ?? this.store.camera());
77
+ this.scene = computed(() => this.options().scene ?? this.store.scene(), ...(ngDevMode ? [{ debugName: "scene" }] : []));
78
+ this.camera = computed(() => this.options().camera ?? this.store.camera(), ...(ngDevMode ? [{ debugName: "camera" }] : []));
80
79
  this.groupRef = viewChild.required('group');
81
80
  this.priority = computed(() => {
82
81
  const enabled = this.enabled();
83
82
  if (!enabled)
84
83
  return 0;
85
84
  return this.renderPriority();
86
- });
85
+ }, ...(ngDevMode ? [{ debugName: "priority" }] : []));
87
86
  this.composerData = computed(() => {
88
87
  const webGL2Available = isWebGL2Available();
89
88
  const [gl, scene, camera, depthBuffer, stencilBuffer, multisampling, frameBufferType, enableNormalPass, resolutionScale,] = [
@@ -120,7 +119,7 @@ class NgtpEffectComposer {
120
119
  }
121
120
  }
122
121
  return { composer, normalPass, downSamplingPass };
123
- });
122
+ }, ...(ngDevMode ? [{ debugName: "composerData" }] : []));
124
123
  this.effectComposer = pick(this.composerData, 'composer');
125
124
  extend({ Group });
126
125
  // NOTE: Disable tone mapping because threejs disallows tonemapping on render targets
@@ -133,7 +132,11 @@ class NgtpEffectComposer {
133
132
  });
134
133
  });
135
134
  effect(() => {
136
- const [{ composer }, width, height] = [this.composerData(), this.store.size.width(), this.store.size.height()];
135
+ const [composer, width, height] = [
136
+ this.effectComposer(),
137
+ this.store.size.width(),
138
+ this.store.size.height(),
139
+ ];
137
140
  if (composer) {
138
141
  composer.setSize(width, height);
139
142
  }
@@ -187,34 +190,30 @@ class NgtpEffectComposer {
187
190
  downSamplingPass.enabled = false;
188
191
  });
189
192
  });
190
- effect((onCleanup) => {
191
- const priority = this.priority();
192
- const sub = injectBeforeRender(({ delta }) => {
193
- const [{ composer }, { enabled, autoClear, stencilBuffer }, gl] = [
194
- this.composerData(),
195
- this.options(),
196
- this.store.snapshot.gl,
197
- ];
198
- if (enabled) {
199
- const currentAutoClear = gl.autoClear;
200
- gl.autoClear = autoClear;
201
- if (stencilBuffer && !autoClear)
202
- gl.clearStencil();
203
- composer.render(delta);
204
- gl.autoClear = currentAutoClear;
205
- }
206
- }, { injector: this.injector, priority });
207
- onCleanup(() => sub());
208
- });
193
+ beforeRender(({ delta }) => {
194
+ const [composer, { enabled, autoClear, stencilBuffer }, gl] = [
195
+ this.effectComposer(),
196
+ this.options(),
197
+ this.store.snapshot.gl,
198
+ ];
199
+ if (enabled) {
200
+ const currentAutoClear = gl.autoClear;
201
+ gl.autoClear = autoClear;
202
+ if (stencilBuffer && !autoClear)
203
+ gl.clearStencil();
204
+ composer.render(delta);
205
+ gl.autoClear = currentAutoClear;
206
+ }
207
+ }, { priority: this.priority });
209
208
  }
210
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffectComposer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
211
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.1.4", type: NgtpEffectComposer, isStandalone: true, selector: "ngtp-effect-composer", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }], ngImport: i0, template: `
209
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffectComposer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
210
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.4", type: NgtpEffectComposer, isStandalone: true, selector: "ngtp-effect-composer", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "groupRef", first: true, predicate: ["group"], descendants: true, isSignal: true }], ngImport: i0, template: `
212
211
  <ngt-group #group>
213
212
  <ng-content />
214
213
  </ngt-group>
215
214
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
216
215
  }
217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpEffectComposer, decorators: [{
216
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpEffectComposer, decorators: [{
218
217
  type: Component,
219
218
  args: [{
220
219
  selector: 'ngtp-effect-composer',
@@ -320,19 +319,19 @@ const defaultOptions$4 = {
320
319
  };
321
320
  class NgtpASCII {
322
321
  constructor() {
323
- this.options = input(defaultOptions$4, { transform: mergeInputs(defaultOptions$4) });
324
- this.effect = computed(() => new ASCIIEffect(this.options()));
322
+ this.options = input(defaultOptions$4, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions$4) }] : [{ transform: mergeInputs(defaultOptions$4) }]));
323
+ this.effect = computed(() => new ASCIIEffect(this.options()), ...(ngDevMode ? [{ debugName: "effect" }] : []));
325
324
  effect((onCleanup) => {
326
325
  const effect = this.effect();
327
326
  onCleanup(() => effect.dispose());
328
327
  });
329
328
  }
330
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpASCII, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
331
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpASCII, isStandalone: true, selector: "ngtp-ascii", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
329
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpASCII, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
330
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpASCII, isStandalone: true, selector: "ngtp-ascii", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
332
331
  <ngt-primitive *args="[effect()]" />
333
332
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
334
333
  }
335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpASCII, decorators: [{
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpASCII, decorators: [{
336
335
  type: Component,
337
336
  args: [{
338
337
  selector: 'ngtp-ascii',
@@ -347,19 +346,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
347
346
 
348
347
  class NgtpBloom {
349
348
  constructor() {
350
- this.options = input({});
349
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
351
350
  this.effect = inject(NgtpEffect, { host: true });
352
351
  extend({ BloomEffect });
353
352
  }
354
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpBloom, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
355
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpBloom, isStandalone: true, selector: "ngtp-bloom", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.ADD })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
353
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpBloom, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
354
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpBloom, isStandalone: true, selector: "ngtp-bloom", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.ADD })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
356
355
  <ngt-bloom-effect *args="[options()]" [camera]="effect.camera()">
357
356
  <ngtp-effect-blend-mode />
358
357
  <ng-content />
359
358
  </ngt-bloom-effect>
360
359
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
361
360
  }
362
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpBloom, decorators: [{
361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpBloom, decorators: [{
363
362
  type: Component,
364
363
  args: [{
365
364
  selector: 'ngtp-bloom',
@@ -379,19 +378,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
379
378
 
380
379
  class NgtpBrightnessContrast {
381
380
  constructor() {
382
- this.options = input({});
381
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
383
382
  this.effect = inject(NgtpEffect, { host: true });
384
383
  extend({ BrightnessContrastEffect });
385
384
  }
386
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpBrightnessContrast, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
387
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpBrightnessContrast, isStandalone: true, selector: "ngtp-brightness-contrast", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
385
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpBrightnessContrast, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
386
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpBrightnessContrast, isStandalone: true, selector: "ngtp-brightness-contrast", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
388
387
  <ngt-brightness-contrast-effect *args="[options()]" [camera]="effect.camera()">
389
388
  <ngtp-effect-blend-mode />
390
389
  <ng-content />
391
390
  </ngt-brightness-contrast-effect>
392
391
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
393
392
  }
394
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpBrightnessContrast, decorators: [{
393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpBrightnessContrast, decorators: [{
395
394
  type: Component,
396
395
  args: [{
397
396
  selector: 'ngtp-brightness-contrast',
@@ -410,19 +409,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
410
409
 
411
410
  class NgtpChromaticAberration {
412
411
  constructor() {
413
- this.options = input({});
412
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
414
413
  this.effect = inject(NgtpEffect, { host: true });
415
414
  extend({ ChromaticAberrationEffect });
416
415
  }
417
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpChromaticAberration, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
418
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpChromaticAberration, isStandalone: true, selector: "ngtp-chromatic-aberration", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
416
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpChromaticAberration, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
417
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpChromaticAberration, isStandalone: true, selector: "ngtp-chromatic-aberration", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
419
418
  <ngt-chromatic-aberration-effect *args="[options()]" [camera]="effect.camera()">
420
419
  <ngtp-effect-blend-mode />
421
420
  <ng-content />
422
421
  </ngt-chromatic-aberration-effect>
423
422
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
424
423
  }
425
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpChromaticAberration, decorators: [{
424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpChromaticAberration, decorators: [{
426
425
  type: Component,
427
426
  args: [{
428
427
  selector: 'ngtp-chromatic-aberration',
@@ -441,17 +440,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
441
440
 
442
441
  class NgtpColorAverage {
443
442
  constructor() {
444
- this.options = input({ blendFunction: BlendFunction.NORMAL }, { transform: mergeInputs({ blendFunction: BlendFunction.NORMAL }) });
443
+ this.options = input({ blendFunction: BlendFunction.NORMAL }, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs({ blendFunction: BlendFunction.NORMAL }) }] : [{ transform: mergeInputs({ blendFunction: BlendFunction.NORMAL }) }]));
445
444
  extend({ ColorAverageEffect });
446
445
  }
447
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpColorAverage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
448
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpColorAverage, isStandalone: true, selector: "ngtp-color-average", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
446
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpColorAverage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
447
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpColorAverage, isStandalone: true, selector: "ngtp-color-average", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
449
448
  <ngt-color-average-effect *args="[options().blendFunction]">
450
449
  <ng-content />
451
450
  </ngt-color-average-effect>
452
451
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
453
452
  }
454
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpColorAverage, decorators: [{
453
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpColorAverage, decorators: [{
455
454
  type: Component,
456
455
  args: [{
457
456
  selector: 'ngtp-color-average',
@@ -468,19 +467,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
468
467
 
469
468
  class NgtpColorDepth {
470
469
  constructor() {
471
- this.options = input({});
470
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
472
471
  this.effect = inject(NgtpEffect, { host: true });
473
472
  extend({ ColorDepthEffect });
474
473
  }
475
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpColorDepth, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
476
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpColorDepth, isStandalone: true, selector: "ngtp-color-depth", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
474
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpColorDepth, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
475
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpColorDepth, isStandalone: true, selector: "ngtp-color-depth", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
477
476
  <ngt-color-depth-effect *args="[options()]" [camera]="effect.camera()">
478
477
  <ngtp-effect-blend-mode />
479
478
  <ng-content />
480
479
  </ngt-color-depth-effect>
481
480
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
482
481
  }
483
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpColorDepth, decorators: [{
482
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpColorDepth, decorators: [{
484
483
  type: Component,
485
484
  args: [{
486
485
  selector: 'ngtp-color-depth',
@@ -499,19 +498,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
499
498
 
500
499
  class NgtpDepth {
501
500
  constructor() {
502
- this.options = input({});
501
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
503
502
  this.effect = inject(NgtpEffect, { host: true });
504
503
  extend({ DepthEffect });
505
504
  }
506
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDepth, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
507
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpDepth, isStandalone: true, selector: "ngtp-depth", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
505
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDepth, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
506
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpDepth, isStandalone: true, selector: "ngtp-depth", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
508
507
  <ngt-depth-effect *args="[options()]" [camera]="effect.camera()">
509
508
  <ngtp-effect-blend-mode />
510
509
  <ng-content />
511
510
  </ngt-depth-effect>
512
511
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
513
512
  }
514
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDepth, decorators: [{
513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDepth, decorators: [{
515
514
  type: Component,
516
515
  args: [{
517
516
  selector: 'ngtp-depth',
@@ -530,7 +529,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
530
529
 
531
530
  class NgtpDepthOfField {
532
531
  constructor() {
533
- this.options = input({});
532
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
534
533
  this.effectComposer = inject(NgtpEffectComposer);
535
534
  this.effect = computed(() => {
536
535
  const [camera, options] = [this.effectComposer.camera(), this.options()];
@@ -547,18 +546,18 @@ class NgtpDepthOfField {
547
546
  const maskPass = effect['maskPass'];
548
547
  maskPass.maskFunction = MaskFunction.MULTIPLY_RGB_SET_ALPHA;
549
548
  return effect;
550
- });
549
+ }, ...(ngDevMode ? [{ debugName: "effect" }] : []));
551
550
  effect((onCleanup) => {
552
551
  const depthOfFieldEffect = this.effect();
553
552
  onCleanup(() => depthOfFieldEffect.dispose());
554
553
  });
555
554
  }
556
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDepthOfField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
557
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpDepthOfField, isStandalone: true, selector: "ngtp-depth-of-field", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
555
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDepthOfField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
556
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpDepthOfField, isStandalone: true, selector: "ngtp-depth-of-field", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
558
557
  <ngt-primitive *args="[effect()]" />
559
558
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
560
559
  }
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDepthOfField, decorators: [{
560
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDepthOfField, decorators: [{
562
561
  type: Component,
563
562
  args: [{
564
563
  selector: 'ngtp-depth-of-field',
@@ -573,19 +572,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
573
572
 
574
573
  class NgtpDotScreen {
575
574
  constructor() {
576
- this.options = input({});
575
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
577
576
  this.effect = inject(NgtpEffect, { host: true });
578
577
  extend({ DotScreenEffect });
579
578
  }
580
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDotScreen, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
581
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpDotScreen, isStandalone: true, selector: "ngtp-dot-screen", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
579
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDotScreen, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
580
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpDotScreen, isStandalone: true, selector: "ngtp-dot-screen", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
582
581
  <ngt-dot-screen-effect *args="[options()]" [camera]="effect.camera()">
583
582
  <ngtp-effect-blend-mode />
584
583
  <ng-content />
585
584
  </ngt-dot-screen-effect>
586
585
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
587
586
  }
588
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpDotScreen, decorators: [{
587
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpDotScreen, decorators: [{
589
588
  type: Component,
590
589
  args: [{
591
590
  selector: 'ngtp-dot-screen',
@@ -604,19 +603,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
604
603
 
605
604
  class NgtpFXAA {
606
605
  constructor() {
607
- this.options = input({});
606
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
608
607
  this.effect = inject(NgtpEffect, { host: true });
609
608
  extend({ FXAAEffect });
610
609
  }
611
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpFXAA, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
612
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpFXAA, isStandalone: true, selector: "ngtp-fxaa", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
610
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpFXAA, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
611
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpFXAA, isStandalone: true, selector: "ngtp-fxaa", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
613
612
  <ngt-fXAA-effect *args="[options()]" [camera]="effect.camera()">
614
613
  <ngtp-effect-blend-mode />
615
614
  <ng-content />
616
615
  </ngt-fXAA-effect>
617
616
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
618
617
  }
619
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpFXAA, decorators: [{
618
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpFXAA, decorators: [{
620
619
  type: Component,
621
620
  args: [{
622
621
  selector: 'ngtp-fxaa',
@@ -635,7 +634,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
635
634
 
636
635
  class NgtpGlitch {
637
636
  constructor() {
638
- this.options = input({ active: true }, { transform: mergeInputs({ active: true }) });
637
+ this.options = input({ active: true }, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs({ active: true }) }] : [{ transform: mergeInputs({ active: true }) }]));
639
638
  this.active = pick(this.options, 'active');
640
639
  this.mode = pick(this.options, 'mode');
641
640
  this.ratio = pick(this.options, 'ratio');
@@ -658,7 +657,7 @@ class NgtpGlitch {
658
657
  duration: this.duration(),
659
658
  chromaticAberrationOffset: this.chromaticAberrationOffset(),
660
659
  strength: this.strength(),
661
- }));
660
+ }), ...(ngDevMode ? [{ debugName: "effect" }] : []));
662
661
  effect(() => {
663
662
  const [glitchEffect, invalidate, mode, active] = [
664
663
  this.effect(),
@@ -674,12 +673,12 @@ class NgtpGlitch {
674
673
  onCleanup(() => effect.dispose());
675
674
  });
676
675
  }
677
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGlitch, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
678
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpGlitch, isStandalone: true, selector: "ngtp-glitch", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
676
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGlitch, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
677
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpGlitch, isStandalone: true, selector: "ngtp-glitch", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
679
678
  <ngt-primitive *args="[effect()]" />
680
679
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
681
680
  }
682
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGlitch, decorators: [{
681
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGlitch, decorators: [{
683
682
  type: Component,
684
683
  args: [{
685
684
  selector: 'ngtp-glitch',
@@ -694,7 +693,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
694
693
 
695
694
  class NgtpGodRays {
696
695
  constructor() {
697
- this.options = input({});
696
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
698
697
  this.effectComposer = inject(NgtpEffectComposer);
699
698
  this.effectOptions = omit(this.options, ['sun']);
700
699
  this.sun = pick(this.options, 'sun');
@@ -703,11 +702,11 @@ class NgtpGodRays {
703
702
  if (typeof sun === 'function')
704
703
  return resolveRef(sun());
705
704
  return resolveRef(sun);
706
- });
705
+ }, ...(ngDevMode ? [{ debugName: "sunElement" }] : []));
707
706
  this.effect = computed(() => {
708
707
  const [camera, sunElement, options] = [this.effectComposer.camera(), this.sunElement(), this.effectOptions()];
709
708
  return new GodRaysEffect(camera, sunElement, options);
710
- });
709
+ }, ...(ngDevMode ? [{ debugName: "effect" }] : []));
711
710
  effect(() => {
712
711
  const sunElement = this.sunElement();
713
712
  if (!sunElement)
@@ -720,12 +719,12 @@ class NgtpGodRays {
720
719
  onCleanup(() => effect.dispose());
721
720
  });
722
721
  }
723
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGodRays, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
724
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpGodRays, isStandalone: true, selector: "ngtp-god-rays", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
722
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGodRays, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
723
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpGodRays, isStandalone: true, selector: "ngtp-god-rays", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
725
724
  <ngt-primitive *args="[effect()]" />
726
725
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
727
726
  }
728
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGodRays, decorators: [{
727
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGodRays, decorators: [{
729
728
  type: Component,
730
729
  args: [{
731
730
  selector: 'ngtp-god-rays',
@@ -740,10 +739,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
740
739
 
741
740
  class NgtpGrid {
742
741
  constructor() {
743
- this.options = input({});
742
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
744
743
  this.effectOptions = omit(this.options, ['size']);
745
744
  this.size = pick(this.options, 'size');
746
- this.effect = computed(() => new GridEffect(this.effectOptions()));
745
+ this.effect = computed(() => new GridEffect(this.effectOptions()), ...(ngDevMode ? [{ debugName: "effect" }] : []));
747
746
  effect(() => {
748
747
  const [size, effect] = [this.size(), this.effect()];
749
748
  if (size) {
@@ -755,12 +754,12 @@ class NgtpGrid {
755
754
  onCleanup(() => effect.dispose());
756
755
  });
757
756
  }
758
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGrid, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
759
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpGrid, isStandalone: true, selector: "ngtp-grid", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
757
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGrid, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
758
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpGrid, isStandalone: true, selector: "ngtp-grid", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
760
759
  <ngt-primitive *args="[effect()]" />
761
760
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
762
761
  }
763
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpGrid, decorators: [{
762
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpGrid, decorators: [{
764
763
  type: Component,
765
764
  args: [{
766
765
  selector: 'ngtp-grid',
@@ -775,19 +774,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
775
774
 
776
775
  class NgtpHueSaturation {
777
776
  constructor() {
778
- this.options = input({});
777
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
779
778
  this.effect = inject(NgtpEffect, { host: true });
780
779
  extend({ HueSaturationEffect });
781
780
  }
782
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpHueSaturation, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
783
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpHueSaturation, isStandalone: true, selector: "ngtp-hue-saturation", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
781
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpHueSaturation, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
782
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpHueSaturation, isStandalone: true, selector: "ngtp-hue-saturation", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
784
783
  <ngt-hue-saturation-effect *args="[options()]" [camera]="effect.camera()">
785
784
  <ngtp-effect-blend-mode />
786
785
  <ng-content />
787
786
  </ngt-hue-saturation-effect>
788
787
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
789
788
  }
790
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpHueSaturation, decorators: [{
789
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpHueSaturation, decorators: [{
791
790
  type: Component,
792
791
  args: [{
793
792
  selector: 'ngtp-hue-saturation',
@@ -894,14 +893,14 @@ const defaultOptions$3 = {
894
893
  };
895
894
  class NgtpLensFlare {
896
895
  constructor() {
897
- this.options = input(defaultOptions$3, { transform: mergeInputs(defaultOptions$3) });
896
+ this.options = input(defaultOptions$3, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions$3) }] : [{ transform: mergeInputs(defaultOptions$3) }]));
898
897
  this.store = injectStore();
899
898
  this.effectComposer = inject(NgtpEffectComposer);
900
899
  this.effectOptions = omit(this.options, ['position', 'followMouse', 'smoothTime']);
901
900
  this.position = vector3(this.options, 'position');
902
901
  this.projectedPosition = new THREE.Vector3();
903
902
  this.mouse2d = new THREE.Vector2();
904
- this.effect = computed(() => new LensFlareEffect(this.effectOptions()));
903
+ this.effect = computed(() => new LensFlareEffect(this.effectOptions()), ...(ngDevMode ? [{ debugName: "effect" }] : []));
905
904
  effect(() => {
906
905
  const [lensFlareEffect, width, height] = [
907
906
  this.effect(),
@@ -918,7 +917,7 @@ class NgtpLensFlare {
918
917
  const effect = this.effect();
919
918
  onCleanup(() => effect.dispose());
920
919
  });
921
- injectBeforeRender(({ delta }) => {
920
+ beforeRender(({ delta }) => {
922
921
  const [effect] = [this.effect()];
923
922
  if (!effect)
924
923
  return;
@@ -975,12 +974,12 @@ class NgtpLensFlare {
975
974
  easing.damp(uOpacity, 'value', target, smoothTime, delta);
976
975
  });
977
976
  }
978
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpLensFlare, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
979
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpLensFlare, isStandalone: true, selector: "ngtp-lens-flare", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
977
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpLensFlare, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
978
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpLensFlare, isStandalone: true, selector: "ngtp-lens-flare", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
980
979
  <ngt-primitive *args="[effect()]" [parameters]="{ dispose: null }" />
981
980
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
982
981
  }
983
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpLensFlare, decorators: [{
982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpLensFlare, decorators: [{
984
983
  type: Component,
985
984
  args: [{
986
985
  selector: 'ngtp-lens-flare',
@@ -995,14 +994,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
995
994
 
996
995
  class NgtpLUT {
997
996
  constructor() {
998
- this.options = input({});
997
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
999
998
  this.lut = pick(this.options, 'lut');
1000
999
  this.tetrahedralInterpolation = pick(this.options, 'tetrahedralInterpolation');
1001
1000
  this.store = injectStore();
1002
1001
  this.effect = computed(() => {
1003
1002
  const { lut, ...options } = this.options();
1004
1003
  return new LUT3DEffect(lut, options);
1005
- });
1004
+ }, ...(ngDevMode ? [{ debugName: "effect" }] : []));
1006
1005
  effect(() => {
1007
1006
  const [effect, lut, tetrahedralInterpolation, invalidate] = [
1008
1007
  this.effect(),
@@ -1021,12 +1020,12 @@ class NgtpLUT {
1021
1020
  onCleanup(() => effect.dispose());
1022
1021
  });
1023
1022
  }
1024
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpLUT, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1025
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpLUT, isStandalone: true, selector: "ngtp-lut", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1023
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpLUT, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1024
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpLUT, isStandalone: true, selector: "ngtp-lut", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1026
1025
  <ngt-primitive *args="[effect()]" [dispose]="null" />
1027
1026
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1028
1027
  }
1029
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpLUT, decorators: [{
1028
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpLUT, decorators: [{
1030
1029
  type: Component,
1031
1030
  args: [{
1032
1031
  selector: 'ngtp-lut',
@@ -1041,19 +1040,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1041
1040
 
1042
1041
  class NgtpNoise {
1043
1042
  constructor() {
1044
- this.options = input({});
1043
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1045
1044
  this.effect = inject(NgtpEffect, { host: true });
1046
1045
  extend({ NoiseEffect });
1047
1046
  }
1048
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpNoise, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1049
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpNoise, isStandalone: true, selector: "ngtp-noise", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.COLOR_DODGE })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1047
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpNoise, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1048
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpNoise, isStandalone: true, selector: "ngtp-noise", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.COLOR_DODGE })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1050
1049
  <ngt-noise-effect *args="[options()]" [camera]="effect.camera()">
1051
1050
  <ngtp-effect-blend-mode />
1052
1051
  <ng-content />
1053
1052
  </ngt-noise-effect>
1054
1053
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1055
1054
  }
1056
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpNoise, decorators: [{
1055
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpNoise, decorators: [{
1057
1056
  type: Component,
1058
1057
  args: [{
1059
1058
  selector: 'ngtp-noise',
@@ -1076,8 +1075,8 @@ const defaultOptions$2 = {
1076
1075
  };
1077
1076
  class NgtpOutline {
1078
1077
  constructor() {
1079
- this.options = input(defaultOptions$2, { transform: mergeInputs(defaultOptions$2) });
1080
- this.ngtSelection = inject(NgtSelection, { optional: true });
1078
+ this.options = input(defaultOptions$2, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions$2) }] : [{ transform: mergeInputs(defaultOptions$2) }]));
1079
+ this.selectionApi = inject(NgtSelectionApi, { optional: true });
1081
1080
  this.effectComposer = inject(NgtpEffectComposer);
1082
1081
  this.store = injectStore();
1083
1082
  this.selection = pick(this.options, 'selection');
@@ -1137,19 +1136,23 @@ class NgtpOutline {
1137
1136
  xRay,
1138
1137
  ...restOptions,
1139
1138
  });
1140
- });
1139
+ }, ...(ngDevMode ? [{ debugName: "effect" }] : []));
1141
1140
  effect((onCleanup) => {
1142
1141
  const effect = this.effect();
1143
1142
  onCleanup(() => effect.dispose());
1144
1143
  });
1145
1144
  effect(() => {
1146
- const [effect, invalidate, selectionLayer] = [this.effect(), this.store.invalidate(), this.selectionLayer()];
1145
+ const [effect, invalidate, selectionLayer] = [
1146
+ this.effect(),
1147
+ this.store.invalidate(),
1148
+ this.selectionLayer(),
1149
+ ];
1147
1150
  effect.selectionLayer = selectionLayer;
1148
1151
  invalidate();
1149
1152
  });
1150
1153
  effect((onCleanup) => {
1151
1154
  // NOTE: we run this effect if declarative NgtSelection is not enabled
1152
- if (!this.ngtSelection) {
1155
+ if (!this.selectionApi) {
1153
1156
  // NOTE: if NgtSelection is not used and selection is not provided, we throw
1154
1157
  if (this.selection() === undefined) {
1155
1158
  throw new Error('[NGT PostProcessing]: ngtp-outline requires selection input or use NgtSelection');
@@ -1161,10 +1164,10 @@ class NgtpOutline {
1161
1164
  return;
1162
1165
  }
1163
1166
  // NOTE: we run this effect if declarative NgtSelection is enabled
1164
- const selectionEnabled = this.ngtSelection.enabled();
1167
+ const selectionEnabled = this.selectionApi.enabled();
1165
1168
  if (!selectionEnabled)
1166
1169
  return;
1167
- const cleanup = this.handleSelectionChangeEffect(this.ngtSelection.selected, this.effect, this.store.invalidate);
1170
+ const cleanup = this.handleSelectionChangeEffect(this.selectionApi.selected, this.effect, this.store.invalidate);
1168
1171
  onCleanup(() => {
1169
1172
  cleanup?.();
1170
1173
  });
@@ -1191,12 +1194,12 @@ class NgtpOutline {
1191
1194
  invalidate();
1192
1195
  };
1193
1196
  }
1194
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpOutline, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1195
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpOutline, isStandalone: true, selector: "ngtp-outline", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1197
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpOutline, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1198
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpOutline, isStandalone: true, selector: "ngtp-outline", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1196
1199
  <ngt-primitive *args="[effect()]" />
1197
1200
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1198
1201
  }
1199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpOutline, decorators: [{
1202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpOutline, decorators: [{
1200
1203
  type: Component,
1201
1204
  args: [{
1202
1205
  selector: 'ngtp-outline',
@@ -1211,20 +1214,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1211
1214
 
1212
1215
  class NgtpPixelation {
1213
1216
  constructor() {
1214
- this.options = input({ granularity: 5 }, { transform: mergeInputs({ granularity: 5 }) });
1217
+ this.options = input({ granularity: 5 }, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs({ granularity: 5 }) }] : [{ transform: mergeInputs({ granularity: 5 }) }]));
1215
1218
  this.granularity = pick(this.options, 'granularity');
1216
- this.effect = computed(() => new PixelationEffect(this.granularity()));
1219
+ this.effect = computed(() => new PixelationEffect(this.granularity()), ...(ngDevMode ? [{ debugName: "effect" }] : []));
1217
1220
  effect((onCleanup) => {
1218
1221
  const effect = this.effect();
1219
1222
  onCleanup(() => effect.dispose());
1220
1223
  });
1221
1224
  }
1222
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpPixelation, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1223
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpPixelation, isStandalone: true, selector: "ngtp-pixelation", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1225
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpPixelation, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1226
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpPixelation, isStandalone: true, selector: "ngtp-pixelation", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1224
1227
  <ngt-primitive *args="[effect()]" />
1225
1228
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1226
1229
  }
1227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpPixelation, decorators: [{
1230
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpPixelation, decorators: [{
1228
1231
  type: Component,
1229
1232
  args: [{
1230
1233
  selector: 'ngtp-pixelation',
@@ -1242,19 +1245,19 @@ const defaultOptions$1 = {
1242
1245
  };
1243
1246
  class NgtpScanline {
1244
1247
  constructor() {
1245
- this.options = input(defaultOptions$1, { transform: mergeInputs(defaultOptions$1) });
1248
+ this.options = input(defaultOptions$1, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions$1) }] : [{ transform: mergeInputs(defaultOptions$1) }]));
1246
1249
  this.effect = inject(NgtpEffect, { host: true });
1247
1250
  extend({ ScanlineEffect });
1248
1251
  }
1249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpScanline, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1250
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpScanline, isStandalone: true, selector: "ngtp-scanline", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.OVERLAY })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1252
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpScanline, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1253
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpScanline, isStandalone: true, selector: "ngtp-scanline", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.OVERLAY })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1251
1254
  <ngt-scanline-effect *args="[options()]" [camera]="effect.camera()">
1252
1255
  <ngtp-effect-blend-mode />
1253
1256
  <ng-content />
1254
1257
  </ngt-scanline-effect>
1255
1258
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1256
1259
  }
1257
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpScanline, decorators: [{
1260
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpScanline, decorators: [{
1258
1261
  type: Component,
1259
1262
  args: [{
1260
1263
  selector: 'ngtp-scanline',
@@ -1281,9 +1284,9 @@ const defaultOptions = {
1281
1284
  };
1282
1285
  class NgtpSelectiveBloom {
1283
1286
  constructor() {
1284
- this.lights = input.required();
1285
- this.selection = input([]);
1286
- this.options = input(defaultOptions, { transform: mergeInputs(defaultOptions) });
1287
+ this.lights = input.required(...(ngDevMode ? [{ debugName: "lights" }] : []));
1288
+ this.selection = input([], ...(ngDevMode ? [{ debugName: "selection" }] : []));
1289
+ this.options = input(defaultOptions, ...(ngDevMode ? [{ debugName: "options", transform: mergeInputs(defaultOptions) }] : [{ transform: mergeInputs(defaultOptions) }]));
1287
1290
  this.blendFunction = pick(this.options, 'blendFunction');
1288
1291
  this.luminanceThreshold = pick(this.options, 'luminanceThreshold');
1289
1292
  this.luminanceSmoothing = pick(this.options, 'luminanceSmoothing');
@@ -1302,20 +1305,20 @@ class NgtpSelectiveBloom {
1302
1305
  this.selectionLayer = pick(this.options, 'selectionLayer');
1303
1306
  this.store = injectStore();
1304
1307
  this.effectComposer = inject(NgtpEffectComposer);
1305
- this.ngtSelection = inject(NgtSelection, { optional: true });
1306
- this.resolvedLights = computed(() => this.lights().map((light) => resolveRef(light)));
1308
+ this.selectionApi = inject(NgtSelectionApi, { optional: true });
1309
+ this.resolvedLights = computed(() => this.lights().map((light) => resolveRef(light)), ...(ngDevMode ? [{ debugName: "resolvedLights" }] : []));
1307
1310
  this.resolvedSelected = computed(() => {
1308
1311
  const selection = this.selection();
1309
1312
  if (!selection)
1310
1313
  return [];
1311
1314
  const array = Array.isArray(selection) ? selection : [selection];
1312
1315
  return array.map((selected) => resolveRef(selected));
1313
- });
1316
+ }, ...(ngDevMode ? [{ debugName: "resolvedSelected" }] : []));
1314
1317
  this.resolvedNgtSelected = computed(() => {
1315
- if (!this.ngtSelection || !this.ngtSelection.enabled)
1318
+ if (!this.selectionApi || !this.selectionApi.enabled)
1316
1319
  return [];
1317
- return this.ngtSelection.selected().map((selected) => resolveRef(selected));
1318
- });
1320
+ return this.selectionApi.selected().map((selected) => resolveRef(selected));
1321
+ }, ...(ngDevMode ? [{ debugName: "resolvedNgtSelected" }] : []));
1319
1322
  this.effect = computed(() => {
1320
1323
  const effect = new SelectiveBloomEffect(this.effectComposer.scene(), this.effectComposer.camera(), {
1321
1324
  blendFunction: this.blendFunction() || BlendFunction.ADD,
@@ -1335,10 +1338,10 @@ class NgtpSelectiveBloom {
1335
1338
  effect.inverted = this.inverted();
1336
1339
  effect.ignoreBackground = this.ignoreBackground();
1337
1340
  return effect;
1338
- });
1341
+ }, ...(ngDevMode ? [{ debugName: "effect" }] : []));
1339
1342
  effect((onCleanup) => {
1340
1343
  // skip input selection altogether if NgtSelection is used
1341
- if (this.ngtSelection)
1344
+ if (this.selectionApi)
1342
1345
  return;
1343
1346
  const selection = this.resolvedSelected();
1344
1347
  if (!selection.length)
@@ -1352,7 +1355,11 @@ class NgtpSelectiveBloom {
1352
1355
  });
1353
1356
  });
1354
1357
  effect(() => {
1355
- const [selectionLayer, invalidate, effect] = [this.selectionLayer(), this.store.invalidate(), this.effect()];
1358
+ const [selectionLayer, invalidate, effect] = [
1359
+ this.selectionLayer(),
1360
+ this.store.invalidate(),
1361
+ this.effect(),
1362
+ ];
1356
1363
  effect.selection.layer = selectionLayer;
1357
1364
  invalidate();
1358
1365
  });
@@ -1387,12 +1394,12 @@ class NgtpSelectiveBloom {
1387
1394
  removeLight(effect, light) {
1388
1395
  light.layers.disable(effect.selection.layer);
1389
1396
  }
1390
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSelectiveBloom, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1391
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpSelectiveBloom, isStandalone: true, selector: "ngtp-selective-bloom", inputs: { lights: { classPropertyName: "lights", publicName: "lights", isSignal: true, isRequired: true, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1397
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSelectiveBloom, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1398
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpSelectiveBloom, isStandalone: true, selector: "ngtp-selective-bloom", inputs: { lights: { classPropertyName: "lights", publicName: "lights", isSignal: true, isRequired: true, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
1392
1399
  <ngt-primitive *args="[effect()]" [dispose]="null" />
1393
1400
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1394
1401
  }
1395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSelectiveBloom, decorators: [{
1402
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSelectiveBloom, decorators: [{
1396
1403
  type: Component,
1397
1404
  args: [{
1398
1405
  selector: 'ngtp-selective-bloom',
@@ -1407,19 +1414,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1407
1414
 
1408
1415
  class NgtpSepia {
1409
1416
  constructor() {
1410
- this.options = input({});
1417
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1411
1418
  this.effect = inject(NgtpEffect, { host: true });
1412
1419
  extend({ SepiaEffect });
1413
1420
  }
1414
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSepia, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1415
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpSepia, isStandalone: true, selector: "ngtp-sepia", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1421
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSepia, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1422
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpSepia, isStandalone: true, selector: "ngtp-sepia", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1416
1423
  <ngt-sepia-effect *args="[options()]" [camera]="effect.camera()">
1417
1424
  <ngtp-effect-blend-mode />
1418
1425
  <ng-content />
1419
1426
  </ngt-sepia-effect>
1420
1427
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1421
1428
  }
1422
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSepia, decorators: [{
1429
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSepia, decorators: [{
1423
1430
  type: Component,
1424
1431
  args: [{
1425
1432
  selector: 'ngtp-sepia',
@@ -1438,19 +1445,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1438
1445
 
1439
1446
  class NgtpShockWave {
1440
1447
  constructor() {
1441
- this.options = input({});
1448
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1442
1449
  this.effect = inject(NgtpEffect, { host: true });
1443
1450
  extend({ ShockWaveEffect });
1444
1451
  }
1445
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpShockWave, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1446
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpShockWave, isStandalone: true, selector: "ngtp-shock-wave", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1452
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpShockWave, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1453
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpShockWave, isStandalone: true, selector: "ngtp-shock-wave", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1447
1454
  <ngt-shock-wave-effect *args="[options()]" [camera]="effect.camera()">
1448
1455
  <ngtp-effect-blend-mode />
1449
1456
  <ng-content />
1450
1457
  </ngt-shock-wave-effect>
1451
1458
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1452
1459
  }
1453
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpShockWave, decorators: [{
1460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpShockWave, decorators: [{
1454
1461
  type: Component,
1455
1462
  args: [{
1456
1463
  selector: 'ngtp-shock-wave',
@@ -1469,19 +1476,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1469
1476
 
1470
1477
  class NgtpSMAA {
1471
1478
  constructor() {
1472
- this.options = input({});
1479
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1473
1480
  this.effect = inject(NgtpEffect, { host: true });
1474
1481
  extend({ SMAAEffect });
1475
1482
  }
1476
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSMAA, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1477
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpSMAA, isStandalone: true, selector: "ngtp-smaa", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1483
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSMAA, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1484
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpSMAA, isStandalone: true, selector: "ngtp-smaa", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1478
1485
  <ngt-sMAA-effect *args="[options()]" [camera]="effect.camera()">
1479
1486
  <ngtp-effect-blend-mode />
1480
1487
  <ng-content />
1481
1488
  </ngt-sMAA-effect>
1482
1489
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1483
1490
  }
1484
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpSMAA, decorators: [{
1491
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpSMAA, decorators: [{
1485
1492
  type: Component,
1486
1493
  args: [{
1487
1494
  selector: 'ngtp-smaa',
@@ -1500,19 +1507,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1500
1507
 
1501
1508
  class NgtpTiltShift {
1502
1509
  constructor() {
1503
- this.options = input({});
1510
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1504
1511
  this.effect = inject(NgtpEffect, { host: true });
1505
1512
  extend({ TiltShiftEffect });
1506
1513
  }
1507
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpTiltShift, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1508
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpTiltShift, isStandalone: true, selector: "ngtp-tilt-shift", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.ADD })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1514
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpTiltShift, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1515
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpTiltShift, isStandalone: true, selector: "ngtp-tilt-shift", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.ADD })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1509
1516
  <ngt-tilt-shift-effect *args="[options()]" [camera]="effect.camera()">
1510
1517
  <ngtp-effect-blend-mode />
1511
1518
  <ng-content />
1512
1519
  </ngt-tilt-shift-effect>
1513
1520
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1514
1521
  }
1515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpTiltShift, decorators: [{
1522
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpTiltShift, decorators: [{
1516
1523
  type: Component,
1517
1524
  args: [{
1518
1525
  selector: 'ngtp-tilt-shift',
@@ -1614,18 +1621,18 @@ class TiltShift2Effect extends Effect {
1614
1621
  extend({ TiltShift2Effect });
1615
1622
  class NgtpTiltShift2 {
1616
1623
  constructor() {
1617
- this.options = input({});
1624
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1618
1625
  this.effect = inject(NgtpEffect, { host: true });
1619
1626
  }
1620
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpTiltShift2, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1621
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpTiltShift2, isStandalone: true, selector: "ngtp-tilt-shift2", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.NORMAL })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1627
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpTiltShift2, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1628
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpTiltShift2, isStandalone: true, selector: "ngtp-tilt-shift2", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.NORMAL })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1622
1629
  <ngt-tilt-shift2-effect *args="[options()]" [camera]="effect.camera()">
1623
1630
  <ngtp-effect-blend-mode />
1624
1631
  <ng-content />
1625
1632
  </ngt-tilt-shift2-effect>
1626
1633
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1627
1634
  }
1628
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpTiltShift2, decorators: [{
1635
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpTiltShift2, decorators: [{
1629
1636
  type: Component,
1630
1637
  args: [{
1631
1638
  selector: 'ngtp-tilt-shift2',
@@ -1645,19 +1652,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1645
1652
 
1646
1653
  class NgtpToneMapping {
1647
1654
  constructor() {
1648
- this.options = input({});
1655
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1649
1656
  this.effect = inject(NgtpEffect, { host: true });
1650
1657
  extend({ ToneMappingEffect });
1651
1658
  }
1652
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpToneMapping, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1653
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpToneMapping, isStandalone: true, selector: "ngtp-tone-mapping", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1659
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpToneMapping, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1660
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpToneMapping, isStandalone: true, selector: "ngtp-tone-mapping", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1654
1661
  <ngt-tone-mapping-effect *args="[options()]" [camera]="effect.camera()">
1655
1662
  <ngtp-effect-blend-mode />
1656
1663
  <ng-content />
1657
1664
  </ngt-tone-mapping-effect>
1658
1665
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1659
1666
  }
1660
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpToneMapping, decorators: [{
1667
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpToneMapping, decorators: [{
1661
1668
  type: Component,
1662
1669
  args: [{
1663
1670
  selector: 'ngtp-tone-mapping',
@@ -1676,19 +1683,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
1676
1683
 
1677
1684
  class NgtpVignette {
1678
1685
  constructor() {
1679
- this.options = input({});
1686
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1680
1687
  this.effect = inject(NgtpEffect, { host: true });
1681
1688
  extend({ VignetteEffect });
1682
1689
  }
1683
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpVignette, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1684
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpVignette, isStandalone: true, selector: "ngtp-vignette", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1690
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpVignette, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1691
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpVignette, isStandalone: true, selector: "ngtp-vignette", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1685
1692
  <ngt-vignette-effect *args="[options()]" [camera]="effect.camera()">
1686
1693
  <ngtp-effect-blend-mode />
1687
1694
  <ng-content />
1688
1695
  </ngt-vignette-effect>
1689
1696
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1690
1697
  }
1691
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpVignette, decorators: [{
1698
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpVignette, decorators: [{
1692
1699
  type: Component,
1693
1700
  args: [{
1694
1701
  selector: 'ngtp-vignette',
@@ -1731,19 +1738,19 @@ class WaterEffect extends Effect {
1731
1738
  }
1732
1739
  class NgtpWater {
1733
1740
  constructor() {
1734
- this.options = input({});
1741
+ this.options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
1735
1742
  this.effect = inject(NgtpEffect, { host: true });
1736
1743
  extend({ WaterEffect });
1737
1744
  }
1738
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpWater, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1739
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.1.4", type: NgtpWater, isStandalone: true, selector: "ngtp-water", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.NORMAL })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1745
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpWater, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1746
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: NgtpWater, isStandalone: true, selector: "ngtp-water", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideDefaultEffectOptions({ blendFunction: BlendFunction.NORMAL })], hostDirectives: [{ directive: NgtpEffect, inputs: ["blendFunction", "blendFunction", "opacity", "opacity"] }], ngImport: i0, template: `
1740
1747
  <ngt-water-effect *args="[options()]" [camera]="effect.camera()">
1741
1748
  <ngtp-effect-blend-mode />
1742
1749
  <ng-content />
1743
1750
  </ngt-water-effect>
1744
1751
  `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "component", type: NgtpEffectBlendMode, selector: "ngtp-effect-blend-mode" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1745
1752
  }
1746
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: NgtpWater, decorators: [{
1753
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: NgtpWater, decorators: [{
1747
1754
  type: Component,
1748
1755
  args: [{
1749
1756
  selector: 'ngtp-water',