angular-three-postprocessing 1.6.1 → 2.0.0-beta.11

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 (101) hide show
  1. package/README.md +4 -12
  2. package/esm2022/angular-three-postprocessing.mjs +1 -1
  3. package/esm2022/index.mjs +2 -1
  4. package/esm2022/lib/effect-composer.mjs +180 -173
  5. package/esm2022/lib/effect.mjs +62 -64
  6. package/esm2022/lib/effects/bloom/bloom.mjs +33 -0
  7. package/esm2022/lib/effects/brightness-contrast/brightness-contrast.mjs +29 -0
  8. package/esm2022/lib/effects/color-depth/color-depth.mjs +29 -0
  9. package/esm2022/lib/effects/depth/depth.mjs +29 -0
  10. package/esm2022/lib/effects/dot-screen/dot-screen.mjs +29 -0
  11. package/esm2022/lib/effects/hue-saturation/hue-saturation.mjs +29 -0
  12. package/esm2022/lib/effects/index.mjs +18 -0
  13. package/esm2022/lib/effects/lut/lut.mjs +70 -0
  14. package/esm2022/lib/effects/noise/noise.mjs +33 -0
  15. package/esm2022/lib/effects/pixelation/pixelation.mjs +33 -0
  16. package/esm2022/lib/effects/scanline/scanline.mjs +33 -0
  17. package/esm2022/lib/effects/sepia/sepia.mjs +29 -0
  18. package/esm2022/lib/effects/shock-wave/shock-wave.mjs +29 -0
  19. package/esm2022/lib/effects/smaa/smaa.mjs +29 -0
  20. package/esm2022/lib/effects/ssao/ssao.mjs +213 -0
  21. package/esm2022/lib/effects/tilt-shift/tilt-shift.mjs +33 -0
  22. package/esm2022/lib/effects/tone-mapping/tone-mapping.mjs +29 -0
  23. package/esm2022/lib/effects/vignette/vignette.mjs +29 -0
  24. package/fesm2022/angular-three-postprocessing.mjs +892 -229
  25. package/fesm2022/angular-three-postprocessing.mjs.map +1 -1
  26. package/index.d.ts +1 -0
  27. package/lib/effect-composer.d.ts +89 -28
  28. package/lib/effect.d.ts +23 -18
  29. package/lib/effects/bloom/bloom.d.ts +13 -0
  30. package/lib/effects/brightness-contrast/brightness-contrast.d.ts +15 -0
  31. package/{effects/lib → lib/effects}/color-depth/color-depth.d.ts +9 -3
  32. package/{effects/lib → lib/effects}/depth/depth.d.ts +9 -3
  33. package/lib/effects/dot-screen/dot-screen.d.ts +15 -0
  34. package/lib/effects/hue-saturation/hue-saturation.d.ts +15 -0
  35. package/lib/effects/index.d.ts +17 -0
  36. package/lib/effects/lut/lut.d.ts +29 -0
  37. package/lib/effects/noise/noise.d.ts +15 -0
  38. package/lib/effects/pixelation/pixelation.d.ts +20 -0
  39. package/lib/effects/scanline/scanline.d.ts +15 -0
  40. package/{effects/lib → lib/effects}/sepia/sepia.d.ts +9 -3
  41. package/lib/effects/shock-wave/shock-wave.d.ts +17 -0
  42. package/lib/effects/smaa/smaa.d.ts +16 -0
  43. package/lib/effects/ssao/ssao.d.ts +42 -0
  44. package/lib/effects/tilt-shift/tilt-shift.d.ts +23 -0
  45. package/lib/effects/tone-mapping/tone-mapping.d.ts +22 -0
  46. package/lib/effects/vignette/vignette.d.ts +17 -0
  47. package/package.json +7 -26
  48. package/effects/README.md +0 -3
  49. package/effects/index.d.ts +0 -14
  50. package/effects/lib/bloom/bloom.d.ts +0 -9
  51. package/effects/lib/brightness-contrast/brightness-contrast.d.ts +0 -8
  52. package/effects/lib/dot-screen/dot-screen.d.ts +0 -8
  53. package/effects/lib/hue-saturation/hue-saturation.d.ts +0 -8
  54. package/effects/lib/lut/lut.d.ts +0 -13
  55. package/effects/lib/noise/noise.d.ts +0 -9
  56. package/effects/lib/scanline/scanline.d.ts +0 -9
  57. package/effects/lib/ssao/ssao.d.ts +0 -13
  58. package/effects/lib/tilt-shift/tilt-shift.d.ts +0 -9
  59. package/effects/lib/tone-mapping/tone-mapping.d.ts +0 -8
  60. package/effects/lib/vignette/vignette.d.ts +0 -8
  61. package/esm2022/effects/angular-three-postprocessing-effects.mjs +0 -5
  62. package/esm2022/effects/index.mjs +0 -15
  63. package/esm2022/effects/lib/bloom/bloom.mjs +0 -44
  64. package/esm2022/effects/lib/brightness-contrast/brightness-contrast.mjs +0 -29
  65. package/esm2022/effects/lib/color-depth/color-depth.mjs +0 -29
  66. package/esm2022/effects/lib/depth/depth.mjs +0 -29
  67. package/esm2022/effects/lib/dot-screen/dot-screen.mjs +0 -29
  68. package/esm2022/effects/lib/hue-saturation/hue-saturation.mjs +0 -29
  69. package/esm2022/effects/lib/lut/lut.mjs +0 -60
  70. package/esm2022/effects/lib/noise/noise.mjs +0 -33
  71. package/esm2022/effects/lib/scanline/scanline.mjs +0 -33
  72. package/esm2022/effects/lib/sepia/sepia.mjs +0 -29
  73. package/esm2022/effects/lib/ssao/ssao.mjs +0 -102
  74. package/esm2022/effects/lib/tilt-shift/tilt-shift.mjs +0 -43
  75. package/esm2022/effects/lib/tone-mapping/tone-mapping.mjs +0 -39
  76. package/esm2022/effects/lib/vignette/vignette.mjs +0 -29
  77. package/esm2022/selection/angular-three-postprocessing-selection.mjs +0 -5
  78. package/esm2022/selection/index.mjs +0 -3
  79. package/esm2022/selection/lib/select.mjs +0 -69
  80. package/esm2022/selection/lib/selection.mjs +0 -44
  81. package/fesm2022/angular-three-postprocessing-effects.mjs +0 -484
  82. package/fesm2022/angular-three-postprocessing-effects.mjs.map +0 -1
  83. package/fesm2022/angular-three-postprocessing-selection.mjs +0 -114
  84. package/fesm2022/angular-three-postprocessing-selection.mjs.map +0 -1
  85. package/plugin/README.md +0 -11
  86. package/plugin/generators.json +0 -19
  87. package/plugin/package.json +0 -9
  88. package/plugin/src/generators/init/compat.d.ts +0 -2
  89. package/plugin/src/generators/init/compat.js +0 -6
  90. package/plugin/src/generators/init/compat.js.map +0 -1
  91. package/plugin/src/generators/init/init.d.ts +0 -4
  92. package/plugin/src/generators/init/init.js +0 -26
  93. package/plugin/src/generators/init/init.js.map +0 -1
  94. package/plugin/src/generators/init/schema.json +0 -6
  95. package/plugin/src/index.d.ts +0 -1
  96. package/plugin/src/index.js +0 -6
  97. package/plugin/src/index.js.map +0 -1
  98. package/selection/README.md +0 -3
  99. package/selection/index.d.ts +0 -2
  100. package/selection/lib/select.d.ts +0 -14
  101. package/selection/lib/selection.d.ts +0 -18
@@ -1,29 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { HueSaturationEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpHueSaturation extends NgtpEffect {
7
- get effectConstructor() {
8
- return HueSaturationEffect;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpHueSaturation, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpHueSaturation, isStandalone: true, selector: "ngtp-hue-saturation", inputs: { hue: "hue", saturation: "saturation" }, usesInheritance: true, ngImport: i0, template: `
12
- <ngt-primitive *args="[get('effect')]" ngtCompound />
13
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
14
- }
15
- export { NgtpHueSaturation };
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpHueSaturation, decorators: [{
17
- type: Component,
18
- args: [{
19
- selector: 'ngtp-hue-saturation',
20
- standalone: true,
21
- template: `
22
- <ngt-primitive *args="[get('effect')]" ngtCompound />
23
- `,
24
- imports: [NgtArgs],
25
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
26
- inputs: ['hue', 'saturation'],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVlLXNhdHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL2h1ZS1zYXR1cmF0aW9uL2h1ZS1zYXR1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRXJELE1BVWEsaUJBQWtCLFNBQVEsVUFBK0I7SUFDbEUsSUFBYSxpQkFBaUI7UUFDMUIsT0FBTyxtQkFBbUIsQ0FBQztJQUMvQixDQUFDOzhHQUhRLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdKQVBoQjs7S0FFVCw0REFDUyxPQUFPOztTQUlSLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQVY3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5ndEFyZ3MgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IE5ndHBFZmZlY3QgfSBmcm9tICdhbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nJztcbmltcG9ydCB7IEh1ZVNhdHVyYXRpb25FZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1odWUtc2F0dXJhdGlvbicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogWydodWUnLCAnc2F0dXJhdGlvbiddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwSHVlU2F0dXJhdGlvbiBleHRlbmRzIE5ndHBFZmZlY3Q8SHVlU2F0dXJhdGlvbkVmZmVjdD4ge1xuICAgIG92ZXJyaWRlIGdldCBlZmZlY3RDb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgcmV0dXJuIEh1ZVNhdHVyYXRpb25FZmZlY3Q7XG4gICAgfVxufVxuIl19
@@ -1,60 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, Input } from '@angular/core';
2
- import { injectNgtRef, NgtArgs, NgtRxStore, NgtStore, startWithUndefined } from 'angular-three';
3
- import { componentInputsToCombinedStream, simpleChangesToStateObject } from 'angular-three-postprocessing';
4
- import { LUT3DEffect } from 'postprocessing';
5
- import { combineLatest, map } from 'rxjs';
6
- import * as i0 from "@angular/core";
7
- class NgtpLUT extends NgtRxStore {
8
- constructor() {
9
- super(...arguments);
10
- this.store = inject(NgtStore);
11
- this.lutRef = injectNgtRef();
12
- }
13
- set lut(lut) {
14
- this.set({ lut });
15
- }
16
- ngOnChanges(changes) {
17
- this.set((s) => ({ ...s, ...simpleChangesToStateObject(changes, ['lutRef', 'lut']) }));
18
- }
19
- ngOnInit() {
20
- this.connect('effect', combineLatest([
21
- this.select('lut'),
22
- componentInputsToCombinedStream(this, (input) => input.propName !== 'lutRef' && input.propName !== 'lut'),
23
- ]).pipe(map(([lut, props]) => new LUT3DEffect(lut, props))));
24
- this.hold(combineLatest([
25
- this.select('lut'),
26
- this.select('effect'),
27
- this.select('tetrahedralInterpolation').pipe(startWithUndefined()),
28
- ]), ([lut, effect, tetrahedralInterpolation]) => {
29
- const invalidate = this.store.get('invalidate');
30
- if (lut)
31
- effect.lut = lut;
32
- if (tetrahedralInterpolation)
33
- effect.tetrahedralInterpolation = tetrahedralInterpolation;
34
- invalidate();
35
- });
36
- }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpLUT, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
38
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpLUT, isStandalone: true, selector: "ngtp-lut", inputs: { blendFunction: "blendFunction", tetrahedralInterpolation: "tetrahedralInterpolation", lutRef: "lutRef", lut: "lut" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
39
- <ngt-primitive *args="[get('effect')]" [ref]="lutRef" />
40
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
41
- }
42
- export { NgtpLUT };
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpLUT, decorators: [{
44
- type: Component,
45
- args: [{
46
- selector: 'ngtp-lut',
47
- standalone: true,
48
- template: `
49
- <ngt-primitive *args="[get('effect')]" [ref]="lutRef" />
50
- `,
51
- imports: [NgtArgs],
52
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
53
- inputs: ['blendFunction', 'tetrahedralInterpolation'],
54
- }]
55
- }], propDecorators: { lutRef: [{
56
- type: Input
57
- }], lut: [{
58
- type: Input
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL2VmZmVjdHMvc3JjL2xpYi9sdXQvbHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRTFDLE1BVWEsT0FBUSxTQUFRLFVBQVU7SUFWdkM7O1FBV3FCLFVBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFakMsV0FBTSxHQUFHLFlBQVksRUFBZSxDQUFDO0tBb0NqRDtJQWxDRyxJQUFhLEdBQUcsQ0FBQyxHQUFrQjtRQUMvQixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFHLDBCQUEwQixDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FDUixRQUFRLEVBQ1IsYUFBYSxDQUFDO1lBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDbEIsK0JBQStCLENBQzNCLElBQUksRUFDSixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQ3JFO1NBQ0osQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDOUQsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLENBQ0wsYUFBYSxDQUFDO1lBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQ3JFLENBQUMsRUFDRixDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSx3QkFBd0IsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDaEQsSUFBSSxHQUFHO2dCQUFFLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQzFCLElBQUksd0JBQXdCO2dCQUFFLE1BQU0sQ0FBQyx3QkFBd0IsR0FBRyx3QkFBd0IsQ0FBQztZQUN6RixVQUFVLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQ0osQ0FBQztJQUNOLENBQUM7OEdBdENRLE9BQU87a0dBQVAsT0FBTyxnUEFQTjs7S0FFVCw0REFDUyxPQUFPOztTQUlSLE9BQU87MkZBQVAsT0FBTztrQkFWbkIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxlQUFlLEVBQUUsMEJBQTBCLENBQUM7aUJBQ3hEOzhCQUlZLE1BQU07c0JBQWQsS0FBSztnQkFFTyxHQUFHO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbmplY3ROZ3RSZWYsIE5ndEFyZ3MsIE5ndFJ4U3RvcmUsIE5ndFN0b3JlLCBzdGFydFdpdGhVbmRlZmluZWQgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IGNvbXBvbmVudElucHV0c1RvQ29tYmluZWRTdHJlYW0sIHNpbXBsZUNoYW5nZXNUb1N0YXRlT2JqZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBMVVQzREVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25ndHAtbHV0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgW3JlZl09XCJsdXRSZWZcIiAvPlxuICAgIGAsXG4gICAgaW1wb3J0czogW05ndEFyZ3NdLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbiAgICBpbnB1dHM6IFsnYmxlbmRGdW5jdGlvbicsICd0ZXRyYWhlZHJhbEludGVycG9sYXRpb24nXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cExVVCBleHRlbmRzIE5ndFJ4U3RvcmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IGluamVjdChOZ3RTdG9yZSk7XG5cbiAgICBASW5wdXQoKSBsdXRSZWYgPSBpbmplY3ROZ3RSZWY8TFVUM0RFZmZlY3Q+KCk7XG5cbiAgICBASW5wdXQoKSBzZXQgbHV0KGx1dDogVEhSRUUuVGV4dHVyZSkge1xuICAgICAgICB0aGlzLnNldCh7IGx1dCB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIHRoaXMuc2V0KChzKSA9PiAoeyAuLi5zLCAuLi5zaW1wbGVDaGFuZ2VzVG9TdGF0ZU9iamVjdChjaGFuZ2VzLCBbJ2x1dFJlZicsICdsdXQnXSkgfSkpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmNvbm5lY3QoXG4gICAgICAgICAgICAnZWZmZWN0JyxcbiAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0KCdsdXQnKSxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRJbnB1dHNUb0NvbWJpbmVkU3RyZWFtKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICAgICAgICAgICAoaW5wdXQpID0+IGlucHV0LnByb3BOYW1lICE9PSAnbHV0UmVmJyAmJiBpbnB1dC5wcm9wTmFtZSAhPT0gJ2x1dCdcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgXSkucGlwZShtYXAoKFtsdXQsIHByb3BzXSkgPT4gbmV3IExVVDNERWZmZWN0KGx1dCwgcHJvcHMpKSlcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmhvbGQoXG4gICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdCgnbHV0JyksXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3QoJ2VmZmVjdCcpLFxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0KCd0ZXRyYWhlZHJhbEludGVycG9sYXRpb24nKS5waXBlKHN0YXJ0V2l0aFVuZGVmaW5lZCgpKSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgKFtsdXQsIGVmZmVjdCwgdGV0cmFoZWRyYWxJbnRlcnBvbGF0aW9uXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGludmFsaWRhdGUgPSB0aGlzLnN0b3JlLmdldCgnaW52YWxpZGF0ZScpO1xuICAgICAgICAgICAgICAgIGlmIChsdXQpIGVmZmVjdC5sdXQgPSBsdXQ7XG4gICAgICAgICAgICAgICAgaWYgKHRldHJhaGVkcmFsSW50ZXJwb2xhdGlvbikgZWZmZWN0LnRldHJhaGVkcmFsSW50ZXJwb2xhdGlvbiA9IHRldHJhaGVkcmFsSW50ZXJwb2xhdGlvbjtcbiAgICAgICAgICAgICAgICBpbnZhbGlkYXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
@@ -1,33 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { BlendFunction, NoiseEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpNoise extends NgtpEffect {
7
- constructor() {
8
- super(...arguments);
9
- this.defaultBlendMode = BlendFunction.COLOR_DODGE;
10
- }
11
- get effectConstructor() {
12
- return NoiseEffect;
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpNoise, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpNoise, isStandalone: true, selector: "ngtp-noise", inputs: { premultiply: "premultiply" }, usesInheritance: true, ngImport: i0, template: `
16
- <ngt-primitive *args="[get('effect')]" ngtCompound />
17
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
18
- }
19
- export { NgtpNoise };
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpNoise, decorators: [{
21
- type: Component,
22
- args: [{
23
- selector: 'ngtp-noise',
24
- standalone: true,
25
- template: `
26
- <ngt-primitive *args="[get('effect')]" ngtCompound />
27
- `,
28
- imports: [NgtArgs],
29
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
30
- inputs: ['premultiply'],
31
- }]
32
- }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9pc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL25vaXNlL25vaXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFNUQsTUFVYSxTQUFVLFNBQVEsVUFBdUI7SUFWdEQ7O1FBZWEscUJBQWdCLEdBQWtCLGFBQWEsQ0FBQyxXQUFXLENBQUM7S0FDeEU7SUFMRyxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDOzhHQUhRLFNBQVM7a0dBQVQsU0FBUyxxSUFQUjs7S0FFVCw0REFDUyxPQUFPOztTQUlSLFNBQVM7MkZBQVQsU0FBUztrQkFWckIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBCbGVuZEZ1bmN0aW9uLCBOb2lzZUVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLW5vaXNlJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ3ByZW11bHRpcGx5J10sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBOb2lzZSBleHRlbmRzIE5ndHBFZmZlY3Q8Tm9pc2VFZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBOb2lzZUVmZmVjdDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBkZWZhdWx0QmxlbmRNb2RlOiBCbGVuZEZ1bmN0aW9uID0gQmxlbmRGdW5jdGlvbi5DT0xPUl9ET0RHRTtcbn1cbiJdfQ==
@@ -1,33 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { BlendFunction, ScanlineEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpScanline extends NgtpEffect {
7
- constructor() {
8
- super(...arguments);
9
- this.defaultBlendMode = BlendFunction.OVERLAY;
10
- }
11
- get effectConstructor() {
12
- return ScanlineEffect;
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpScanline, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpScanline, isStandalone: true, selector: "ngtp-scanline", inputs: { density: "density" }, usesInheritance: true, ngImport: i0, template: `
16
- <ngt-primitive *args="[get('effect')]" ngtCompound />
17
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
18
- }
19
- export { NgtpScanline };
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpScanline, decorators: [{
21
- type: Component,
22
- args: [{
23
- selector: 'ngtp-scanline',
24
- standalone: true,
25
- template: `
26
- <ngt-primitive *args="[get('effect')]" ngtCompound />
27
- `,
28
- imports: [NgtArgs],
29
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
30
- inputs: ['density'],
31
- }]
32
- }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NhbmxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL3NjYW5saW5lL3NjYW5saW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFL0QsTUFVYSxZQUFhLFNBQVEsVUFBMEI7SUFWNUQ7O1FBZWEscUJBQWdCLEdBQWtCLGFBQWEsQ0FBQyxPQUFPLENBQUM7S0FDcEU7SUFMRyxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLGNBQWMsQ0FBQztJQUMxQixDQUFDOzhHQUhRLFlBQVk7a0dBQVosWUFBWSxnSUFQWDs7S0FFVCw0REFDUyxPQUFPOztTQUlSLFlBQVk7MkZBQVosWUFBWTtrQkFWeEIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUM7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBCbGVuZEZ1bmN0aW9uLCBTY2FubGluZUVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLXNjYW5saW5lJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ2RlbnNpdHknXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cFNjYW5saW5lIGV4dGVuZHMgTmd0cEVmZmVjdDxTY2FubGluZUVmZmVjdD4ge1xuICAgIG92ZXJyaWRlIGdldCBlZmZlY3RDb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgcmV0dXJuIFNjYW5saW5lRWZmZWN0O1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGRlZmF1bHRCbGVuZE1vZGU6IEJsZW5kRnVuY3Rpb24gPSBCbGVuZEZ1bmN0aW9uLk9WRVJMQVk7XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { SepiaEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpSepia extends NgtpEffect {
7
- get effectConstructor() {
8
- return SepiaEffect;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSepia, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpSepia, isStandalone: true, selector: "ngtp-sepia", inputs: { intensity: "intensity" }, usesInheritance: true, ngImport: i0, template: `
12
- <ngt-primitive *args="[get('effect')]" ngtCompound />
13
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
14
- }
15
- export { NgtpSepia };
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSepia, decorators: [{
17
- type: Component,
18
- args: [{
19
- selector: 'ngtp-sepia',
20
- standalone: true,
21
- template: `
22
- <ngt-primitive *args="[get('effect')]" ngtCompound />
23
- `,
24
- imports: [NgtArgs],
25
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
26
- inputs: ['intensity'],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VwaWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL3NlcGlhL3NlcGlhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUU3QyxNQVVhLFNBQVUsU0FBUSxVQUF1QjtJQUNsRCxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDOzhHQUhRLFNBQVM7a0dBQVQsU0FBUyxpSUFQUjs7S0FFVCw0REFDUyxPQUFPOztTQUlSLFNBQVM7MkZBQVQsU0FBUztrQkFWckIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBTZXBpYUVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLXNlcGlhJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ2ludGVuc2l0eSddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwU2VwaWEgZXh0ZW5kcyBOZ3RwRWZmZWN0PFNlcGlhRWZmZWN0PiB7XG4gICAgb3ZlcnJpZGUgZ2V0IGVmZmVjdENvbnN0cnVjdG9yKCkge1xuICAgICAgICByZXR1cm4gU2VwaWFFZmZlY3Q7XG4gICAgfVxufVxuIl19
@@ -1,102 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, Input } from '@angular/core';
2
- import { injectNgtRef, NgtArgs, NgtRxStore } from 'angular-three';
3
- import { componentInputsToCombinedStream, NGTP_EFFECT_COMPOSER_API, simpleChangesToStateObject, } from 'angular-three-postprocessing';
4
- import { BlendFunction, SSAOEffect } from 'postprocessing';
5
- import { combineLatest, map } from 'rxjs';
6
- import * as i0 from "@angular/core";
7
- class NgtpSSAO extends NgtRxStore {
8
- constructor() {
9
- super(...arguments);
10
- this.effectComposerApi = inject(NGTP_EFFECT_COMPOSER_API);
11
- this.ssaoRef = injectNgtRef();
12
- }
13
- initialize() {
14
- super.initialize();
15
- this.set({
16
- blendFunction: BlendFunction.MULTIPLY,
17
- samples: 30,
18
- rings: 4,
19
- distanceThreshold: 1.0,
20
- distanceFalloff: 0.0,
21
- rangeThreshold: 0.5,
22
- rangeFalloff: 0.1,
23
- luminanceInfluence: 0.9,
24
- radius: 20,
25
- scale: 0.5,
26
- bias: 0.5,
27
- intensity: 1.0,
28
- color: null,
29
- depthAwareUpsampling: true,
30
- });
31
- }
32
- ngOnChanges(changes) {
33
- this.set((s) => ({
34
- ...s,
35
- ...simpleChangesToStateObject(changes, ['ssaoRef']),
36
- }));
37
- }
38
- ngOnInit() {
39
- this.connect('effect', combineLatest([
40
- this.effectComposerApi.select('entities'),
41
- this.effectComposerApi.select('activeCamera'),
42
- componentInputsToCombinedStream(this, (input) => input.propName !== 'ssaoRef'),
43
- ]).pipe(map(([[, normalPass, downSamplingPass], camera, props]) => {
44
- const { resolutionScale } = this.effectComposerApi;
45
- if (props['normalDepthBuffer'] === undefined) {
46
- props['normalDepthBuffer'] = downSamplingPass ? downSamplingPass.texture : null;
47
- }
48
- if (props['resolutionScale'] === undefined) {
49
- props['resolutionScale'] = resolutionScale ?? 1;
50
- }
51
- return new SSAOEffect(camera, normalPass && !downSamplingPass ? normalPass.texture : null, props);
52
- })));
53
- }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSSAO, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
55
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpSSAO, isStandalone: true, selector: "ngtp-ssao", inputs: { blendFunction: "blendFunction", distanceScaling: "distanceScaling", depthAwareUpsampling: "depthAwareUpsampling", normalDepthBuffer: "normalDepthBuffer", samples: "samples", rings: "rings", worldDistanceThreshold: "worldDistanceThreshold", worldDistanceFalloff: "worldDistanceFalloff", worldProximityThreshold: "worldProximityThreshold", worldProximityFalloff: "worldProximityFalloff", distanceThreshold: "distanceThreshold", distanceFalloff: "distanceFalloff", rangeThreshold: "rangeThreshold", rangeFalloff: "rangeFalloff", minRadiusScale: "minRadiusScale", luminanceInfluence: "luminanceInfluence", radius: "radius", intensity: "intensity", bias: "bias", fade: "fade", color: "color", resolutionScale: "resolutionScale", resolutionX: "resolutionX", resolutionY: "resolutionY", width: "width", height: "height", ssaoRef: "ssaoRef" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
56
- <ngt-primitive *args="[get('effect')]" [ref]="ssaoRef" />
57
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
58
- }
59
- export { NgtpSSAO };
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSSAO, decorators: [{
61
- type: Component,
62
- args: [{
63
- selector: 'ngtp-ssao',
64
- standalone: true,
65
- template: `
66
- <ngt-primitive *args="[get('effect')]" [ref]="ssaoRef" />
67
- `,
68
- imports: [NgtArgs],
69
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
70
- inputs: [
71
- 'blendFunction',
72
- 'distanceScaling',
73
- 'depthAwareUpsampling',
74
- 'normalDepthBuffer',
75
- 'samples',
76
- 'rings',
77
- 'worldDistanceThreshold',
78
- 'worldDistanceFalloff',
79
- 'worldProximityThreshold',
80
- 'worldProximityFalloff',
81
- 'distanceThreshold',
82
- 'distanceFalloff',
83
- 'rangeThreshold',
84
- 'rangeFalloff',
85
- 'minRadiusScale',
86
- 'luminanceInfluence',
87
- 'radius',
88
- 'intensity',
89
- 'bias',
90
- 'fade',
91
- 'color',
92
- 'resolutionScale',
93
- 'resolutionX',
94
- 'resolutionY',
95
- 'width',
96
- 'height',
97
- ],
98
- }]
99
- }], propDecorators: { ssaoRef: [{
100
- type: Input
101
- }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Nhby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy9lZmZlY3RzL3NyYy9saWIvc3Nhby9zc2FvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFDSCwrQkFBK0IsRUFDL0Isd0JBQXdCLEVBQ3hCLDBCQUEwQixHQUM3QixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRTFDLE1BcUNhLFFBQVMsU0FBUSxVQUFVO0lBckN4Qzs7UUFzQ3FCLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBRTdELFlBQU8sR0FBRyxZQUFZLEVBQWMsQ0FBQztLQXlEakQ7SUF2RFksVUFBVTtRQUNmLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDO1lBQ0wsYUFBYSxFQUFFLGFBQWEsQ0FBQyxRQUFRO1lBQ3JDLE9BQU8sRUFBRSxFQUFFO1lBQ1gsS0FBSyxFQUFFLENBQUM7WUFDUixpQkFBaUIsRUFBRSxHQUFHO1lBQ3RCLGVBQWUsRUFBRSxHQUFHO1lBQ3BCLGNBQWMsRUFBRSxHQUFHO1lBQ25CLFlBQVksRUFBRSxHQUFHO1lBQ2pCLGtCQUFrQixFQUFFLEdBQUc7WUFDdkIsTUFBTSxFQUFFLEVBQUU7WUFDVixLQUFLLEVBQUUsR0FBRztZQUNWLElBQUksRUFBRSxHQUFHO1lBQ1QsU0FBUyxFQUFFLEdBQUc7WUFDZCxLQUFLLEVBQUUsSUFBSztZQUNaLG9CQUFvQixFQUFFLElBQUk7U0FDN0IsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2IsR0FBRyxDQUFDO1lBQ0osR0FBRywwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN0RCxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FDUixRQUFRLEVBQ1IsYUFBYSxDQUFDO1lBQ1YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFDekMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7WUFDN0MsK0JBQStCLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQztTQUNqRixDQUFDLENBQUMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3RELE1BQU0sRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7WUFFbkQsSUFBSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsS0FBSyxTQUFTLEVBQUU7Z0JBQzFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzthQUNuRjtZQUVELElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLEtBQUssU0FBUyxFQUFFO2dCQUN4QyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxlQUFlLElBQUksQ0FBQyxDQUFDO2FBQ25EO1lBRUQsT0FBTyxJQUFJLFVBQVUsQ0FDakIsTUFBTSxFQUNOLFVBQVUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQzNELEtBQW9ELENBQ3ZELENBQUM7UUFDTixDQUFDLENBQUMsQ0FDTCxDQUNKLENBQUM7SUFDTixDQUFDOzhHQTNEUSxRQUFRO2tHQUFSLFFBQVEsKzdCQWxDUDs7S0FFVCw0REFDUyxPQUFPOztTQStCUixRQUFROzJGQUFSLFFBQVE7a0JBckNwQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOztLQUVUO29CQUNELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE1BQU0sRUFBRTt3QkFDSixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLFNBQVM7d0JBQ1QsT0FBTzt3QkFDUCx3QkFBd0I7d0JBQ3hCLHNCQUFzQjt3QkFDdEIseUJBQXlCO3dCQUN6Qix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLFFBQVE7d0JBQ1IsV0FBVzt3QkFDWCxNQUFNO3dCQUNOLE1BQU07d0JBQ04sT0FBTzt3QkFDUCxpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLFFBQVE7cUJBQ1g7aUJBQ0o7OEJBSVksT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0Tmd0UmVmLCBOZ3RBcmdzLCBOZ3RSeFN0b3JlIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQge1xuICAgIGNvbXBvbmVudElucHV0c1RvQ29tYmluZWRTdHJlYW0sXG4gICAgTkdUUF9FRkZFQ1RfQ09NUE9TRVJfQVBJLFxuICAgIHNpbXBsZUNoYW5nZXNUb1N0YXRlT2JqZWN0LFxufSBmcm9tICdhbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nJztcbmltcG9ydCB7IEJsZW5kRnVuY3Rpb24sIFNTQU9FZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLXNzYW8nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5ndC1wcmltaXRpdmUgKmFyZ3M9XCJbZ2V0KCdlZmZlY3QnKV1cIiBbcmVmXT1cInNzYW9SZWZcIiAvPlxuICAgIGAsXG4gICAgaW1wb3J0czogW05ndEFyZ3NdLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbiAgICBpbnB1dHM6IFtcbiAgICAgICAgJ2JsZW5kRnVuY3Rpb24nLFxuICAgICAgICAnZGlzdGFuY2VTY2FsaW5nJyxcbiAgICAgICAgJ2RlcHRoQXdhcmVVcHNhbXBsaW5nJyxcbiAgICAgICAgJ25vcm1hbERlcHRoQnVmZmVyJyxcbiAgICAgICAgJ3NhbXBsZXMnLFxuICAgICAgICAncmluZ3MnLFxuICAgICAgICAnd29ybGREaXN0YW5jZVRocmVzaG9sZCcsXG4gICAgICAgICd3b3JsZERpc3RhbmNlRmFsbG9mZicsXG4gICAgICAgICd3b3JsZFByb3hpbWl0eVRocmVzaG9sZCcsXG4gICAgICAgICd3b3JsZFByb3hpbWl0eUZhbGxvZmYnLFxuICAgICAgICAnZGlzdGFuY2VUaHJlc2hvbGQnLFxuICAgICAgICAnZGlzdGFuY2VGYWxsb2ZmJyxcbiAgICAgICAgJ3JhbmdlVGhyZXNob2xkJyxcbiAgICAgICAgJ3JhbmdlRmFsbG9mZicsXG4gICAgICAgICdtaW5SYWRpdXNTY2FsZScsXG4gICAgICAgICdsdW1pbmFuY2VJbmZsdWVuY2UnLFxuICAgICAgICAncmFkaXVzJyxcbiAgICAgICAgJ2ludGVuc2l0eScsXG4gICAgICAgICdiaWFzJyxcbiAgICAgICAgJ2ZhZGUnLFxuICAgICAgICAnY29sb3InLFxuICAgICAgICAncmVzb2x1dGlvblNjYWxlJyxcbiAgICAgICAgJ3Jlc29sdXRpb25YJyxcbiAgICAgICAgJ3Jlc29sdXRpb25ZJyxcbiAgICAgICAgJ3dpZHRoJyxcbiAgICAgICAgJ2hlaWdodCcsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cFNTQU8gZXh0ZW5kcyBOZ3RSeFN0b3JlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWZmZWN0Q29tcG9zZXJBcGkgPSBpbmplY3QoTkdUUF9FRkZFQ1RfQ09NUE9TRVJfQVBJKTtcblxuICAgIEBJbnB1dCgpIHNzYW9SZWYgPSBpbmplY3ROZ3RSZWY8U1NBT0VmZmVjdD4oKTtcblxuICAgIG92ZXJyaWRlIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmluaXRpYWxpemUoKTtcbiAgICAgICAgdGhpcy5zZXQoe1xuICAgICAgICAgICAgYmxlbmRGdW5jdGlvbjogQmxlbmRGdW5jdGlvbi5NVUxUSVBMWSxcbiAgICAgICAgICAgIHNhbXBsZXM6IDMwLFxuICAgICAgICAgICAgcmluZ3M6IDQsXG4gICAgICAgICAgICBkaXN0YW5jZVRocmVzaG9sZDogMS4wLFxuICAgICAgICAgICAgZGlzdGFuY2VGYWxsb2ZmOiAwLjAsXG4gICAgICAgICAgICByYW5nZVRocmVzaG9sZDogMC41LFxuICAgICAgICAgICAgcmFuZ2VGYWxsb2ZmOiAwLjEsXG4gICAgICAgICAgICBsdW1pbmFuY2VJbmZsdWVuY2U6IDAuOSxcbiAgICAgICAgICAgIHJhZGl1czogMjAsXG4gICAgICAgICAgICBzY2FsZTogMC41LFxuICAgICAgICAgICAgYmlhczogMC41LFxuICAgICAgICAgICAgaW50ZW5zaXR5OiAxLjAsXG4gICAgICAgICAgICBjb2xvcjogbnVsbCEsXG4gICAgICAgICAgICBkZXB0aEF3YXJlVXBzYW1wbGluZzogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICB0aGlzLnNldCgocykgPT4gKHtcbiAgICAgICAgICAgIC4uLnMsXG4gICAgICAgICAgICAuLi5zaW1wbGVDaGFuZ2VzVG9TdGF0ZU9iamVjdChjaGFuZ2VzLCBbJ3NzYW9SZWYnXSksXG4gICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb25uZWN0KFxuICAgICAgICAgICAgJ2VmZmVjdCcsXG4gICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdENvbXBvc2VyQXBpLnNlbGVjdCgnZW50aXRpZXMnKSxcbiAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdENvbXBvc2VyQXBpLnNlbGVjdCgnYWN0aXZlQ2FtZXJhJyksXG4gICAgICAgICAgICAgICAgY29tcG9uZW50SW5wdXRzVG9Db21iaW5lZFN0cmVhbSh0aGlzLCAoaW5wdXQpID0+IGlucHV0LnByb3BOYW1lICE9PSAnc3Nhb1JlZicpLFxuICAgICAgICAgICAgXSkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKFtbLCBub3JtYWxQYXNzLCBkb3duU2FtcGxpbmdQYXNzXSwgY2FtZXJhLCBwcm9wc10pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyByZXNvbHV0aW9uU2NhbGUgfSA9IHRoaXMuZWZmZWN0Q29tcG9zZXJBcGk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb3BzWydub3JtYWxEZXB0aEJ1ZmZlciddID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzWydub3JtYWxEZXB0aEJ1ZmZlciddID0gZG93blNhbXBsaW5nUGFzcyA/IGRvd25TYW1wbGluZ1Bhc3MudGV4dHVyZSA6IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAocHJvcHNbJ3Jlc29sdXRpb25TY2FsZSddID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzWydyZXNvbHV0aW9uU2NhbGUnXSA9IHJlc29sdXRpb25TY2FsZSA/PyAxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBTU0FPRWZmZWN0KFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FtZXJhLFxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsUGFzcyAmJiAhZG93blNhbXBsaW5nUGFzcyA/IG5vcm1hbFBhc3MudGV4dHVyZSA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wcyBhcyBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8dHlwZW9mIFNTQU9FZmZlY3Q+WzJdXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1,43 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { BlendFunction, TiltShiftEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpTiltShift extends NgtpEffect {
7
- constructor() {
8
- super(...arguments);
9
- this.defaultBlendMode = BlendFunction.ADD;
10
- }
11
- get effectConstructor() {
12
- return TiltShiftEffect;
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpTiltShift, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpTiltShift, isStandalone: true, selector: "ngtp-tilt-shift", inputs: { offset: "offset", rotation: "rotation", focusArea: "focusArea", feather: "feather", bias: "bias", kernelSize: "kernelSize", resolutionScale: "resolutionScale", resolutionX: "resolutionX", resolutionY: "resolutionY" }, usesInheritance: true, ngImport: i0, template: `
16
- <ngt-primitive *args="[get('effect')]" ngtCompound />
17
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
18
- }
19
- export { NgtpTiltShift };
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpTiltShift, decorators: [{
21
- type: Component,
22
- args: [{
23
- selector: 'ngtp-tilt-shift',
24
- standalone: true,
25
- template: `
26
- <ngt-primitive *args="[get('effect')]" ngtCompound />
27
- `,
28
- imports: [NgtArgs],
29
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
30
- inputs: [
31
- 'offset',
32
- 'rotation',
33
- 'focusArea',
34
- 'feather',
35
- 'bias',
36
- 'kernelSize',
37
- 'resolutionScale',
38
- 'resolutionX',
39
- 'resolutionY',
40
- ],
41
- }]
42
- }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsdC1zaGlmdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy9lZmZlY3RzL3NyYy9saWIvdGlsdC1zaGlmdC90aWx0LXNoaWZ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFaEUsTUFvQmEsYUFBYyxTQUFRLFVBQTJCO0lBcEI5RDs7UUF5QmEscUJBQWdCLEdBQWtCLGFBQWEsQ0FBQyxHQUFHLENBQUM7S0FDaEU7SUFMRyxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLGVBQWUsQ0FBQztJQUMzQixDQUFDOzhHQUhRLGFBQWE7a0dBQWIsYUFBYSxzVUFqQlo7O0tBRVQsNERBQ1MsT0FBTzs7U0FjUixhQUFhOzJGQUFiLGFBQWE7a0JBcEJ6QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFO3dCQUNKLFFBQVE7d0JBQ1IsVUFBVTt3QkFDVixXQUFXO3dCQUNYLFNBQVM7d0JBQ1QsTUFBTTt3QkFDTixZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYixhQUFhO3FCQUNoQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgQmxlbmRGdW5jdGlvbiwgVGlsdFNoaWZ0RWZmZWN0IH0gZnJvbSAncG9zdHByb2Nlc3NpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25ndHAtdGlsdC1zaGlmdCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogW1xuICAgICAgICAnb2Zmc2V0JyxcbiAgICAgICAgJ3JvdGF0aW9uJyxcbiAgICAgICAgJ2ZvY3VzQXJlYScsXG4gICAgICAgICdmZWF0aGVyJyxcbiAgICAgICAgJ2JpYXMnLFxuICAgICAgICAna2VybmVsU2l6ZScsXG4gICAgICAgICdyZXNvbHV0aW9uU2NhbGUnLFxuICAgICAgICAncmVzb2x1dGlvblgnLFxuICAgICAgICAncmVzb2x1dGlvblknLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBUaWx0U2hpZnQgZXh0ZW5kcyBOZ3RwRWZmZWN0PFRpbHRTaGlmdEVmZmVjdD4ge1xuICAgIG92ZXJyaWRlIGdldCBlZmZlY3RDb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgcmV0dXJuIFRpbHRTaGlmdEVmZmVjdDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBkZWZhdWx0QmxlbmRNb2RlOiBCbGVuZEZ1bmN0aW9uID0gQmxlbmRGdW5jdGlvbi5BREQ7XG59XG4iXX0=
@@ -1,39 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { ToneMappingEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpToneMapping extends NgtpEffect {
7
- get effectConstructor() {
8
- return ToneMappingEffect;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpToneMapping, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpToneMapping, isStandalone: true, selector: "ngtp-tone-mapping", inputs: { adaptive: "adaptive", mode: "mode", resolution: "resolution", maxLuminance: "maxLuminance", whitePoint: "whitePoint", middleGrey: "middleGrey", minLuminance: "minLuminance", averageLuminance: "averageLuminance", adaptationRate: "adaptationRate" }, usesInheritance: true, ngImport: i0, template: `
12
- <ngt-primitive *args="[get('effect')]" ngtCompound />
13
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
14
- }
15
- export { NgtpToneMapping };
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpToneMapping, decorators: [{
17
- type: Component,
18
- args: [{
19
- selector: 'ngtp-tone-mapping',
20
- standalone: true,
21
- template: `
22
- <ngt-primitive *args="[get('effect')]" ngtCompound />
23
- `,
24
- imports: [NgtArgs],
25
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
26
- inputs: [
27
- 'adaptive',
28
- 'mode',
29
- 'resolution',
30
- 'maxLuminance',
31
- 'whitePoint',
32
- 'middleGrey',
33
- 'minLuminance',
34
- 'averageLuminance',
35
- 'adaptationRate',
36
- ],
37
- }]
38
- }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9uZS1tYXBwaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL2VmZmVjdHMvc3JjL2xpYi90b25lLW1hcHBpbmcvdG9uZS1tYXBwaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRW5ELE1Bb0JhLGVBQWdCLFNBQVEsVUFBNkI7SUFDOUQsSUFBYSxpQkFBaUI7UUFDMUIsT0FBTyxpQkFBaUIsQ0FBQztJQUM3QixDQUFDOzhHQUhRLGVBQWU7a0dBQWYsZUFBZSxzV0FqQmQ7O0tBRVQsNERBQ1MsT0FBTzs7U0FjUixlQUFlOzJGQUFmLGVBQWU7a0JBcEIzQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFO3dCQUNKLFVBQVU7d0JBQ1YsTUFBTTt3QkFDTixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixnQkFBZ0I7cUJBQ25CO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBUb25lTWFwcGluZ0VmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLXRvbmUtbWFwcGluZycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogW1xuICAgICAgICAnYWRhcHRpdmUnLFxuICAgICAgICAnbW9kZScsXG4gICAgICAgICdyZXNvbHV0aW9uJyxcbiAgICAgICAgJ21heEx1bWluYW5jZScsXG4gICAgICAgICd3aGl0ZVBvaW50JyxcbiAgICAgICAgJ21pZGRsZUdyZXknLFxuICAgICAgICAnbWluTHVtaW5hbmNlJyxcbiAgICAgICAgJ2F2ZXJhZ2VMdW1pbmFuY2UnLFxuICAgICAgICAnYWRhcHRhdGlvblJhdGUnLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBUb25lTWFwcGluZyBleHRlbmRzIE5ndHBFZmZlY3Q8VG9uZU1hcHBpbmdFZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBUb25lTWFwcGluZ0VmZmVjdDtcbiAgICB9XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
- import { NgtArgs } from 'angular-three';
3
- import { NgtpEffect } from 'angular-three-postprocessing';
4
- import { VignetteEffect } from 'postprocessing';
5
- import * as i0 from "@angular/core";
6
- class NgtpVignette extends NgtpEffect {
7
- get effectConstructor() {
8
- return VignetteEffect;
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpVignette, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpVignette, isStandalone: true, selector: "ngtp-vignette", inputs: { technique: "technique", eskil: "eskil", offset: "offset", darkness: "darkness" }, usesInheritance: true, ngImport: i0, template: `
12
- <ngt-primitive *args="[get('effect')]" ngtCompound />
13
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] }); }
14
- }
15
- export { NgtpVignette };
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpVignette, decorators: [{
17
- type: Component,
18
- args: [{
19
- selector: 'ngtp-vignette',
20
- standalone: true,
21
- template: `
22
- <ngt-primitive *args="[get('effect')]" ngtCompound />
23
- `,
24
- imports: [NgtArgs],
25
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
26
- inputs: ['technique', 'eskil', 'offset', 'darkness'],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlnbmV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL3ZpZ25ldHRlL3ZpZ25ldHRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUVoRCxNQVVhLFlBQWEsU0FBUSxVQUEwQjtJQUN4RCxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLGNBQWMsQ0FBQztJQUMxQixDQUFDOzhHQUhRLFlBQVk7a0dBQVosWUFBWSw0TEFQWDs7S0FFVCw0REFDUyxPQUFPOztTQUlSLFlBQVk7MkZBQVosWUFBWTtrQkFWeEIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUM7aUJBQ3ZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBWaWduZXR0ZUVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLXZpZ25ldHRlJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ3RlY2huaXF1ZScsICdlc2tpbCcsICdvZmZzZXQnLCAnZGFya25lc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cFZpZ25ldHRlIGV4dGVuZHMgTmd0cEVmZmVjdDxWaWduZXR0ZUVmZmVjdD4ge1xuICAgIG92ZXJyaWRlIGdldCBlZmZlY3RDb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgcmV0dXJuIFZpZ25ldHRlRWZmZWN0O1xuICAgIH1cbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy1zZWxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3Npbmcvc2VsZWN0aW9uL3NyYy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,3 +0,0 @@
1
- export * from './lib/select';
2
- export * from './lib/selection';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3Npbmcvc2VsZWN0aW9uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvc2VsZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlbGVjdGlvbic7XG4iXX0=
@@ -1,69 +0,0 @@
1
- import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, Input } from '@angular/core';
2
- import { extend, injectNgtRef, NgtRxStore } from 'angular-three';
3
- import { combineLatest } from 'rxjs';
4
- import { Group } from 'three';
5
- import { NGTP_SELECTION_API } from './selection';
6
- import * as i0 from "@angular/core";
7
- extend({ Group });
8
- class NgtpSelect extends NgtRxStore {
9
- constructor() {
10
- super(...arguments);
11
- this.groupRef = injectNgtRef();
12
- this.selectionApi = inject(NGTP_SELECTION_API);
13
- }
14
- set enabled(enabled) {
15
- this.set({ enabled });
16
- }
17
- initialize() {
18
- super.initialize();
19
- this.set({ enabled: false });
20
- }
21
- ngOnInit() {
22
- this.setSelectEffect();
23
- }
24
- setSelectEffect() {
25
- this.effect(combineLatest([this.select('enabled'), this.groupRef.children$()]), ([enabled]) => {
26
- if (enabled) {
27
- let changed = false;
28
- const current = [];
29
- this.groupRef.nativeElement.traverse((obj) => {
30
- if (obj.type === 'Mesh')
31
- current.push(obj);
32
- if (this.selectionApi.selected.indexOf(obj) === -1)
33
- changed = true;
34
- });
35
- if (changed) {
36
- this.selectionApi.select((state) => ({ selected: [...state.selected, ...current] }));
37
- return () => {
38
- this.selectionApi.select((state) => ({
39
- selected: state.selected.filter((selected) => !current.includes(selected)),
40
- }));
41
- };
42
- }
43
- }
44
- });
45
- }
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSelect, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpSelect, isStandalone: true, selector: "ngtp-select", inputs: { enabled: "enabled" }, usesInheritance: true, ngImport: i0, template: `
48
- <ngt-group ngtCompound [ref]="groupRef">
49
- <ng-content />
50
- </ngt-group>
51
- `, isInline: true }); }
52
- }
53
- export { NgtpSelect };
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSelect, decorators: [{
55
- type: Component,
56
- args: [{
57
- selector: 'ngtp-select',
58
- standalone: true,
59
- template: `
60
- <ngt-group ngtCompound [ref]="groupRef">
61
- <ng-content />
62
- </ngt-group>
63
- `,
64
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
65
- }]
66
- }], propDecorators: { enabled: [{
67
- type: Input
68
- }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL3NlbGVjdGlvbi9zcmMvbGliL3NlbGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM5QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBRWpELE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7QUFFbEIsTUFVYSxVQUFXLFNBQVEsVUFBVTtJQVYxQzs7UUFXYSxhQUFRLEdBQUcsWUFBWSxFQUFlLENBQUM7UUFFL0IsaUJBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQW1DOUQ7SUFqQ0csSUFBYSxPQUFPLENBQUMsT0FBZ0I7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVRLFVBQVU7UUFDZixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxlQUFlO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUMxRixJQUFJLE9BQU8sRUFBRTtnQkFDVCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLE1BQU0sT0FBTyxHQUFxQixFQUFFLENBQUM7Z0JBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUN6QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssTUFBTTt3QkFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUMzQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQUUsT0FBTyxHQUFHLElBQUksQ0FBQztnQkFDdkUsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxPQUFPLEVBQUU7b0JBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDckYsT0FBTyxHQUFHLEVBQUU7d0JBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7NEJBQ2pDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3lCQUM3RSxDQUFDLENBQUMsQ0FBQztvQkFDUixDQUFDLENBQUM7aUJBQ0w7YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FyQ1EsVUFBVTtrR0FBVixVQUFVLDhIQVBUOzs7O0tBSVQ7O1NBR1EsVUFBVTsyRkFBVixVQUFVO2tCQVZ0QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7O0tBSVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDOzhCQU1nQixPQUFPO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBpbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGV4dGVuZCwgaW5qZWN0Tmd0UmVmLCBOZ3RSeFN0b3JlIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ3RocmVlJztcbmltcG9ydCB7IE5HVFBfU0VMRUNUSU9OX0FQSSB9IGZyb20gJy4vc2VsZWN0aW9uJztcblxuZXh0ZW5kKHsgR3JvdXAgfSk7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1zZWxlY3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5ndC1ncm91cCBuZ3RDb21wb3VuZCBbcmVmXT1cImdyb3VwUmVmXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgICA8L25ndC1ncm91cD5cbiAgICBgLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cFNlbGVjdCBleHRlbmRzIE5ndFJ4U3RvcmUgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHJlYWRvbmx5IGdyb3VwUmVmID0gaW5qZWN0Tmd0UmVmPFRIUkVFLkdyb3VwPigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Rpb25BcGkgPSBpbmplY3QoTkdUUF9TRUxFQ1RJT05fQVBJKTtcblxuICAgIEBJbnB1dCgpIHNldCBlbmFibGVkKGVuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5zZXQoeyBlbmFibGVkIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmluaXRpYWxpemUoKTtcbiAgICAgICAgdGhpcy5zZXQoeyBlbmFibGVkOiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXRTZWxlY3RFZmZlY3QoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFNlbGVjdEVmZmVjdCgpIHtcbiAgICAgICAgdGhpcy5lZmZlY3QoY29tYmluZUxhdGVzdChbdGhpcy5zZWxlY3QoJ2VuYWJsZWQnKSwgdGhpcy5ncm91cFJlZi5jaGlsZHJlbiQoKV0pLCAoW2VuYWJsZWRdKSA9PiB7XG4gICAgICAgICAgICBpZiAoZW5hYmxlZCkge1xuICAgICAgICAgICAgICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudDogVEhSRUUuT2JqZWN0M0RbXSA9IFtdO1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JvdXBSZWYubmF0aXZlRWxlbWVudC50cmF2ZXJzZSgob2JqKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvYmoudHlwZSA9PT0gJ01lc2gnKSBjdXJyZW50LnB1c2gob2JqKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uQXBpLnNlbGVjdGVkLmluZGV4T2Yob2JqKSA9PT0gLTEpIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmIChjaGFuZ2VkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uQXBpLnNlbGVjdCgoc3RhdGUpID0+ICh7IHNlbGVjdGVkOiBbLi4uc3RhdGUuc2VsZWN0ZWQsIC4uLmN1cnJlbnRdIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uQXBpLnNlbGVjdCgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHN0YXRlLnNlbGVjdGVkLmZpbHRlcigoc2VsZWN0ZWQpID0+ICFjdXJyZW50LmluY2x1ZGVzKHNlbGVjdGVkKSksXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -1,44 +0,0 @@
1
- import { Component, InjectionToken, Input } from '@angular/core';
2
- import { NgtRxStore } from 'angular-three';
3
- import * as i0 from "@angular/core";
4
- export const NGTP_SELECTION_API = new InjectionToken('NgtpSelection API');
5
- function ngtpSelectionApiFactory(selection) {
6
- const api = {
7
- get selected() {
8
- return selection.get('selected');
9
- },
10
- select: selection.set.bind(selection),
11
- get enabled() {
12
- return selection.get('enabled');
13
- },
14
- };
15
- return api;
16
- }
17
- class NgtpSelection extends NgtRxStore {
18
- set enabled(enabled) {
19
- this.set({ enabled });
20
- }
21
- initialize() {
22
- super.initialize();
23
- this.set({ selected: [], enabled: true });
24
- }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSelection, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgtpSelection, isStandalone: true, selector: "ngtp-selection", inputs: { enabled: "enabled" }, providers: [{ provide: NGTP_SELECTION_API, useFactory: ngtpSelectionApiFactory, deps: [NgtpSelection] }], usesInheritance: true, ngImport: i0, template: `
27
- <ng-content />
28
- `, isInline: true }); }
29
- }
30
- export { NgtpSelection };
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtpSelection, decorators: [{
32
- type: Component,
33
- args: [{
34
- selector: 'ngtp-selection',
35
- standalone: true,
36
- template: `
37
- <ng-content />
38
- `,
39
- providers: [{ provide: NGTP_SELECTION_API, useFactory: ngtpSelectionApiFactory, deps: [NgtpSelection] }],
40
- }]
41
- }], propDecorators: { enabled: [{
42
- type: Input
43
- }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL3NlbGVjdGlvbi9zcmMvbGliL3NlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRM0MsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQW1CLG1CQUFtQixDQUFDLENBQUM7QUFDNUYsU0FBUyx1QkFBdUIsQ0FBQyxTQUF3QjtJQUNyRCxNQUFNLEdBQUcsR0FBcUI7UUFDMUIsSUFBSSxRQUFRO1lBQ1IsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3JDLElBQUksT0FBTztZQUNQLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxDQUFDO0tBQ0osQ0FBQztJQUNGLE9BQU8sR0FBRyxDQUFDO0FBQ2YsQ0FBQztBQUVELE1BUWEsYUFBYyxTQUFRLFVBQVU7SUFDekMsSUFBYSxPQUFPLENBQUMsT0FBZ0I7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVRLFVBQVU7UUFDZixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs4R0FSUSxhQUFhO2tHQUFiLGFBQWEsNkZBRlgsQ0FBQyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUUsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxpREFIOUY7O0tBRVQ7O1NBR1EsYUFBYTsyRkFBYixhQUFhO2tCQVJ6QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQztpQkFDM0c7OEJBRWdCLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdGlvblRva2VuLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUnhTdGF0ZSB9IGZyb20gJ0ByeC1hbmd1bGFyL3N0YXRlJztcbmltcG9ydCB7IE5ndFJ4U3RvcmUgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcblxuZXhwb3J0IGludGVyZmFjZSBOZ3RwU2VsZWN0aW9uQVBJIHtcbiAgICBzZWxlY3RlZDogVEhSRUUuT2JqZWN0M0RbXTtcbiAgICBzZWxlY3Q6IFJ4U3RhdGU8eyBzZWxlY3RlZDogVEhSRUUuT2JqZWN0M0RbXSB9Plsnc2V0J107XG4gICAgZW5hYmxlZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IE5HVFBfU0VMRUNUSU9OX0FQSSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3RwU2VsZWN0aW9uQVBJPignTmd0cFNlbGVjdGlvbiBBUEknKTtcbmZ1bmN0aW9uIG5ndHBTZWxlY3Rpb25BcGlGYWN0b3J5KHNlbGVjdGlvbjogTmd0cFNlbGVjdGlvbikge1xuICAgIGNvbnN0IGFwaTogTmd0cFNlbGVjdGlvbkFQSSA9IHtcbiAgICAgICAgZ2V0IHNlbGVjdGVkKCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbi5nZXQoJ3NlbGVjdGVkJyk7XG4gICAgICAgIH0sXG4gICAgICAgIHNlbGVjdDogc2VsZWN0aW9uLnNldC5iaW5kKHNlbGVjdGlvbiksXG4gICAgICAgIGdldCBlbmFibGVkKCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbi5nZXQoJ2VuYWJsZWQnKTtcbiAgICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBhcGk7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1zZWxlY3Rpb24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICBgLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTkdUUF9TRUxFQ1RJT05fQVBJLCB1c2VGYWN0b3J5OiBuZ3RwU2VsZWN0aW9uQXBpRmFjdG9yeSwgZGVwczogW05ndHBTZWxlY3Rpb25dIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwU2VsZWN0aW9uIGV4dGVuZHMgTmd0UnhTdG9yZSB7XG4gICAgQElucHV0KCkgc2V0IGVuYWJsZWQoZW5hYmxlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnNldCh7IGVuYWJsZWQgfSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuaW5pdGlhbGl6ZSgpO1xuICAgICAgICB0aGlzLnNldCh7IHNlbGVjdGVkOiBbXSwgZW5hYmxlZDogdHJ1ZSB9KTtcbiAgICB9XG59XG4iXX0=