angular-three-postprocessing 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -0
- package/effects/README.md +3 -0
- package/effects/index.d.ts +14 -0
- package/effects/lib/bloom/bloom.d.ts +9 -0
- package/effects/lib/brightness-contrast/brightness-contrast.d.ts +8 -0
- package/effects/lib/color-depth/color-depth.d.ts +8 -0
- package/effects/lib/depth/depth.d.ts +8 -0
- package/effects/lib/dot-screen/dot-screen.d.ts +8 -0
- package/effects/lib/hue-saturation/hue-saturation.d.ts +8 -0
- package/effects/lib/lut/lut.d.ts +13 -0
- package/effects/lib/noise/noise.d.ts +9 -0
- package/effects/lib/scanline/scanline.d.ts +9 -0
- package/effects/lib/sepia/sepia.d.ts +8 -0
- package/effects/lib/ssao/ssao.d.ts +13 -0
- package/effects/lib/tilt-shift/tilt-shift.d.ts +9 -0
- package/effects/lib/tone-mapping/tone-mapping.d.ts +8 -0
- package/effects/lib/vignette/vignette.d.ts +8 -0
- package/esm2020/angular-three-postprocessing.mjs +5 -0
- package/esm2020/effects/angular-three-postprocessing-effects.mjs +5 -0
- package/esm2020/effects/index.mjs +15 -0
- package/esm2020/effects/lib/bloom/bloom.mjs +43 -0
- package/esm2020/effects/lib/brightness-contrast/brightness-contrast.mjs +28 -0
- package/esm2020/effects/lib/color-depth/color-depth.mjs +28 -0
- package/esm2020/effects/lib/depth/depth.mjs +28 -0
- package/esm2020/effects/lib/dot-screen/dot-screen.mjs +28 -0
- package/esm2020/effects/lib/hue-saturation/hue-saturation.mjs +28 -0
- package/esm2020/effects/lib/lut/lut.mjs +59 -0
- package/esm2020/effects/lib/noise/noise.mjs +32 -0
- package/esm2020/effects/lib/scanline/scanline.mjs +32 -0
- package/esm2020/effects/lib/sepia/sepia.mjs +28 -0
- package/esm2020/effects/lib/ssao/ssao.mjs +101 -0
- package/esm2020/effects/lib/tilt-shift/tilt-shift.mjs +42 -0
- package/esm2020/effects/lib/tone-mapping/tone-mapping.mjs +38 -0
- package/esm2020/effects/lib/vignette/vignette.mjs +28 -0
- package/esm2020/index.mjs +3 -0
- package/esm2020/lib/effect-composer.mjs +218 -0
- package/esm2020/lib/effect.mjs +79 -0
- package/fesm2015/angular-three-postprocessing-effects.mjs +481 -0
- package/fesm2015/angular-three-postprocessing-effects.mjs.map +1 -0
- package/fesm2015/angular-three-postprocessing.mjs +295 -0
- package/fesm2015/angular-three-postprocessing.mjs.map +1 -0
- package/fesm2020/angular-three-postprocessing-effects.mjs +484 -0
- package/fesm2020/angular-three-postprocessing-effects.mjs.map +1 -0
- package/fesm2020/angular-three-postprocessing.mjs +299 -0
- package/fesm2020/angular-three-postprocessing.mjs.map +1 -0
- package/index.d.ts +2 -0
- package/lib/effect-composer.d.ts +39 -0
- package/lib/effect.d.ts +22 -0
- package/package.json +68 -0
- package/plugin/README.md +11 -0
- package/plugin/generators.json +19 -0
- package/plugin/package.json +10 -0
- package/plugin/src/generators/init/compat.d.ts +2 -0
- package/plugin/src/generators/init/compat.js +6 -0
- package/plugin/src/generators/init/compat.js.map +1 -0
- package/plugin/src/generators/init/init.d.ts +4 -0
- package/plugin/src/generators/init/init.js +26 -0
- package/plugin/src/generators/init/init.js.map +1 -0
- package/plugin/src/generators/init/schema.json +6 -0
- package/plugin/src/index.d.ts +1 -0
- package/plugin/src/index.js +6 -0
- package/plugin/src/index.js.map +1 -0
package/README.md
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Postprocessing for Angular Three using postprocessing
|
|
2
|
+
|
|
3
|
+
## Installation
|
|
4
|
+
|
|
5
|
+
```shell
|
|
6
|
+
ng add angular-three-postprocessing
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Documentations
|
|
10
|
+
|
|
11
|
+
Read more about Angular Three Postprocessing usages in [TBD: Documentations](#)
|
|
12
|
+
|
|
13
|
+
## Contributions
|
|
14
|
+
|
|
15
|
+
Contributions are welcomed
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from './lib/bloom/bloom';
|
|
2
|
+
export * from './lib/brightness-contrast/brightness-contrast';
|
|
3
|
+
export * from './lib/color-depth/color-depth';
|
|
4
|
+
export * from './lib/depth/depth';
|
|
5
|
+
export * from './lib/dot-screen/dot-screen';
|
|
6
|
+
export * from './lib/hue-saturation/hue-saturation';
|
|
7
|
+
export * from './lib/lut/lut';
|
|
8
|
+
export * from './lib/noise/noise';
|
|
9
|
+
export * from './lib/scanline/scanline';
|
|
10
|
+
export * from './lib/sepia/sepia';
|
|
11
|
+
export * from './lib/ssao/ssao';
|
|
12
|
+
export * from './lib/tilt-shift/tilt-shift';
|
|
13
|
+
export * from './lib/tone-mapping/tone-mapping';
|
|
14
|
+
export * from './lib/vignette/vignette';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { BlendFunction, BloomEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpBloom extends NgtpEffect<BloomEffect> {
|
|
5
|
+
get effectConstructor(): typeof BloomEffect;
|
|
6
|
+
defaultBlendMode: BlendFunction;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpBloom, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpBloom, "ngtp-bloom", never, { "mipmapBlur": "mipmapBlur"; "luminanceThreshold": "luminanceThreshold"; "luminanceSmoothing": "luminanceSmoothing"; "intensity": "intensity"; "resolutionScale": "resolutionScale"; "resolutionX": "resolutionX"; "resolutionY": "resolutionY"; "width": "width"; "height": "height"; "kernelSize": "kernelSize"; }, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { BrightnessContrastEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpBrightnessContrast extends NgtpEffect<BrightnessContrastEffect> {
|
|
5
|
+
get effectConstructor(): typeof BrightnessContrastEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpBrightnessContrast, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpBrightnessContrast, "ngtp-brightness-contrast", never, { "brightness": "brightness"; "contrast": "contrast"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { ColorDepthEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpColorDepth extends NgtpEffect<ColorDepthEffect> {
|
|
5
|
+
get effectConstructor(): typeof ColorDepthEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpColorDepth, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpColorDepth, "ngtp-color-depth", never, { "bits": "bits"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { DepthEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpDepth extends NgtpEffect<DepthEffect> {
|
|
5
|
+
get effectConstructor(): typeof DepthEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpDepth, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpDepth, "ngtp-depth", never, { "inverted": "inverted"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { DotScreenEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpDotScreen extends NgtpEffect<DotScreenEffect> {
|
|
5
|
+
get effectConstructor(): typeof DotScreenEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpDotScreen, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpDotScreen, "ngtp-dot-screen", never, { "angle": "angle"; "scale": "scale"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { HueSaturationEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpHueSaturation extends NgtpEffect<HueSaturationEffect> {
|
|
5
|
+
get effectConstructor(): typeof HueSaturationEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpHueSaturation, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpHueSaturation, "ngtp-hue-saturation", never, { "hue": "hue"; "saturation": "saturation"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { NgtRxStore } from 'angular-three';
|
|
3
|
+
import { LUT3DEffect } from 'postprocessing';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class NgtpLUT extends NgtRxStore implements OnInit, OnChanges {
|
|
6
|
+
private readonly store;
|
|
7
|
+
lutRef: import("angular-three").NgtInjectedRef<LUT3DEffect>;
|
|
8
|
+
set lut(lut: THREE.Texture);
|
|
9
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
10
|
+
ngOnInit(): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpLUT, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpLUT, "ngtp-lut", never, { "blendFunction": "blendFunction"; "tetrahedralInterpolation": "tetrahedralInterpolation"; "lutRef": "lutRef"; "lut": "lut"; }, {}, never, never, true, never>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { BlendFunction, NoiseEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpNoise extends NgtpEffect<NoiseEffect> {
|
|
5
|
+
get effectConstructor(): typeof NoiseEffect;
|
|
6
|
+
defaultBlendMode: BlendFunction;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpNoise, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpNoise, "ngtp-noise", never, { "premultiply": "premultiply"; }, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { BlendFunction, ScanlineEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpScanline extends NgtpEffect<ScanlineEffect> {
|
|
5
|
+
get effectConstructor(): typeof ScanlineEffect;
|
|
6
|
+
defaultBlendMode: BlendFunction;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpScanline, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpScanline, "ngtp-scanline", never, { "density": "density"; }, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { SepiaEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpSepia extends NgtpEffect<SepiaEffect> {
|
|
5
|
+
get effectConstructor(): typeof SepiaEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpSepia, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpSepia, "ngtp-sepia", never, { "intensity": "intensity"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { NgtRxStore } from 'angular-three';
|
|
3
|
+
import { SSAOEffect } from 'postprocessing';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class NgtpSSAO extends NgtRxStore implements OnInit, OnChanges {
|
|
6
|
+
private readonly effectComposerApi;
|
|
7
|
+
ssaoRef: import("angular-three").NgtInjectedRef<SSAOEffect>;
|
|
8
|
+
initialize(): void;
|
|
9
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
10
|
+
ngOnInit(): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpSSAO, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpSSAO, "ngtp-ssao", never, { "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"; }, {}, never, never, true, never>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { BlendFunction, TiltShiftEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpTiltShift extends NgtpEffect<TiltShiftEffect> {
|
|
5
|
+
get effectConstructor(): typeof TiltShiftEffect;
|
|
6
|
+
defaultBlendMode: BlendFunction;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpTiltShift, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpTiltShift, "ngtp-tilt-shift", never, { "offset": "offset"; "rotation": "rotation"; "focusArea": "focusArea"; "feather": "feather"; "bias": "bias"; "kernelSize": "kernelSize"; "resolutionScale": "resolutionScale"; "resolutionX": "resolutionX"; "resolutionY": "resolutionY"; }, {}, never, never, true, never>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { ToneMappingEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpToneMapping extends NgtpEffect<ToneMappingEffect> {
|
|
5
|
+
get effectConstructor(): typeof ToneMappingEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpToneMapping, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpToneMapping, "ngtp-tone-mapping", never, { "adaptive": "adaptive"; "mode": "mode"; "resolution": "resolution"; "maxLuminance": "maxLuminance"; "whitePoint": "whitePoint"; "middleGrey": "middleGrey"; "minLuminance": "minLuminance"; "averageLuminance": "averageLuminance"; "adaptationRate": "adaptationRate"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
2
|
+
import { VignetteEffect } from 'postprocessing';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class NgtpVignette extends NgtpEffect<VignetteEffect> {
|
|
5
|
+
get effectConstructor(): typeof VignetteEffect;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgtpVignette, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtpVignette, "ngtp-vignette", never, { "technique": "technique"; "eskil": "eskil"; "offset": "offset"; "darkness": "darkness"; }, {}, never, never, true, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy9zcmMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy1lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL2VmZmVjdHMvc3JjL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmctZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './lib/bloom/bloom';
|
|
2
|
+
export * from './lib/brightness-contrast/brightness-contrast';
|
|
3
|
+
export * from './lib/color-depth/color-depth';
|
|
4
|
+
export * from './lib/depth/depth';
|
|
5
|
+
export * from './lib/dot-screen/dot-screen';
|
|
6
|
+
export * from './lib/hue-saturation/hue-saturation';
|
|
7
|
+
export * from './lib/lut/lut';
|
|
8
|
+
export * from './lib/noise/noise';
|
|
9
|
+
export * from './lib/scanline/scanline';
|
|
10
|
+
export * from './lib/sepia/sepia';
|
|
11
|
+
export * from './lib/ssao/ssao';
|
|
12
|
+
export * from './lib/tilt-shift/tilt-shift';
|
|
13
|
+
export * from './lib/tone-mapping/tone-mapping';
|
|
14
|
+
export * from './lib/vignette/vignette';
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2Jsb29tL2Jsb29tJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2JyaWdodG5lc3MtY29udHJhc3QvYnJpZ2h0bmVzcy1jb250cmFzdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2xvci1kZXB0aC9jb2xvci1kZXB0aCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kZXB0aC9kZXB0aCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb3Qtc2NyZWVuL2RvdC1zY3JlZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaHVlLXNhdHVyYXRpb24vaHVlLXNhdHVyYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbHV0L2x1dCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2lzZS9ub2lzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zY2FubGluZS9zY2FubGluZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXBpYS9zZXBpYSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zc2FvL3NzYW8nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGlsdC1zaGlmdC90aWx0LXNoaWZ0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RvbmUtbWFwcGluZy90b25lLW1hcHBpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdmlnbmV0dGUvdmlnbmV0dGUnO1xuIl19
|
|
@@ -0,0 +1,43 @@
|
|
|
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, BloomEffect } from 'postprocessing';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NgtpBloom extends NgtpEffect {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.defaultBlendMode = BlendFunction.ADD;
|
|
10
|
+
}
|
|
11
|
+
get effectConstructor() {
|
|
12
|
+
return BloomEffect;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
NgtpBloom.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpBloom, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
NgtpBloom.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpBloom, isStandalone: true, selector: "ngtp-bloom", inputs: { mipmapBlur: "mipmapBlur", luminanceThreshold: "luminanceThreshold", luminanceSmoothing: "luminanceSmoothing", intensity: "intensity", resolutionScale: "resolutionScale", resolutionX: "resolutionX", resolutionY: "resolutionY", width: "width", height: "height", kernelSize: "kernelSize" }, usesInheritance: true, ngImport: i0, template: `
|
|
17
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
18
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpBloom, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: 'ngtp-bloom',
|
|
23
|
+
standalone: true,
|
|
24
|
+
template: `
|
|
25
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
26
|
+
`,
|
|
27
|
+
imports: [NgtArgs],
|
|
28
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
29
|
+
inputs: [
|
|
30
|
+
'mipmapBlur',
|
|
31
|
+
'luminanceThreshold',
|
|
32
|
+
'luminanceSmoothing',
|
|
33
|
+
'intensity',
|
|
34
|
+
'resolutionScale',
|
|
35
|
+
'resolutionX',
|
|
36
|
+
'resolutionY',
|
|
37
|
+
'width',
|
|
38
|
+
'height',
|
|
39
|
+
'kernelSize',
|
|
40
|
+
],
|
|
41
|
+
}]
|
|
42
|
+
}] });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL2Jsb29tL2Jsb29tLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUF1QjVELE1BQU0sT0FBTyxTQUFVLFNBQVEsVUFBdUI7SUFyQnREOztRQTBCYSxxQkFBZ0IsR0FBa0IsYUFBYSxDQUFDLEdBQUcsQ0FBQztLQUNoRTtJQUxHLElBQWEsaUJBQWlCO1FBQzFCLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7O3NHQUhRLFNBQVM7MEZBQVQsU0FBUyx1WUFsQlI7O0tBRVQsNERBQ1MsT0FBTzsyRkFlUixTQUFTO2tCQXJCckIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUU7d0JBQ0osWUFBWTt3QkFDWixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsV0FBVzt3QkFDWCxpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixPQUFPO3dCQUNQLFFBQVE7d0JBQ1IsWUFBWTtxQkFDZjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgQmxlbmRGdW5jdGlvbiwgQmxvb21FZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1ibG9vbScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogW1xuICAgICAgICAnbWlwbWFwQmx1cicsXG4gICAgICAgICdsdW1pbmFuY2VUaHJlc2hvbGQnLFxuICAgICAgICAnbHVtaW5hbmNlU21vb3RoaW5nJyxcbiAgICAgICAgJ2ludGVuc2l0eScsXG4gICAgICAgICdyZXNvbHV0aW9uU2NhbGUnLFxuICAgICAgICAncmVzb2x1dGlvblgnLFxuICAgICAgICAncmVzb2x1dGlvblknLFxuICAgICAgICAnd2lkdGgnLFxuICAgICAgICAnaGVpZ2h0JyxcbiAgICAgICAgJ2tlcm5lbFNpemUnLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBCbG9vbSBleHRlbmRzIE5ndHBFZmZlY3Q8Qmxvb21FZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBCbG9vbUVmZmVjdDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBkZWZhdWx0QmxlbmRNb2RlOiBCbGVuZEZ1bmN0aW9uID0gQmxlbmRGdW5jdGlvbi5BREQ7XG59XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
2
|
+
import { NgtArgs } from 'angular-three';
|
|
3
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
4
|
+
import { BrightnessContrastEffect } from 'postprocessing';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NgtpBrightnessContrast extends NgtpEffect {
|
|
7
|
+
get effectConstructor() {
|
|
8
|
+
return BrightnessContrastEffect;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
NgtpBrightnessContrast.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpBrightnessContrast, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
NgtpBrightnessContrast.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpBrightnessContrast, isStandalone: true, selector: "ngtp-brightness-contrast", inputs: { brightness: "brightness", contrast: "contrast" }, usesInheritance: true, ngImport: i0, template: `
|
|
13
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
14
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpBrightnessContrast, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: 'ngtp-brightness-contrast',
|
|
19
|
+
standalone: true,
|
|
20
|
+
template: `
|
|
21
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
22
|
+
`,
|
|
23
|
+
imports: [NgtArgs],
|
|
24
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
25
|
+
inputs: ['brightness', 'contrast'],
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJpZ2h0bmVzcy1jb250cmFzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy9lZmZlY3RzL3NyYy9saWIvYnJpZ2h0bmVzcy1jb250cmFzdC9icmlnaHRuZXNzLWNvbnRyYXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBWTFELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUFvQztJQUM1RSxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLHdCQUF3QixDQUFDO0lBQ3BDLENBQUM7O21IQUhRLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHVLQVByQjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLHNCQUFzQjtrQkFWbEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOztLQUVUO29CQUNELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE1BQU0sRUFBRSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBCcmlnaHRuZXNzQ29udHJhc3RFZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1icmlnaHRuZXNzLWNvbnRyYXN0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ2JyaWdodG5lc3MnLCAnY29udHJhc3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cEJyaWdodG5lc3NDb250cmFzdCBleHRlbmRzIE5ndHBFZmZlY3Q8QnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0PiB7XG4gICAgb3ZlcnJpZGUgZ2V0IGVmZmVjdENvbnN0cnVjdG9yKCkge1xuICAgICAgICByZXR1cm4gQnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
2
|
+
import { NgtArgs } from 'angular-three';
|
|
3
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
4
|
+
import { ColorDepthEffect } from 'postprocessing';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NgtpColorDepth extends NgtpEffect {
|
|
7
|
+
get effectConstructor() {
|
|
8
|
+
return ColorDepthEffect;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
NgtpColorDepth.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpColorDepth, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
NgtpColorDepth.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpColorDepth, isStandalone: true, selector: "ngtp-color-depth", inputs: { bits: "bits" }, usesInheritance: true, ngImport: i0, template: `
|
|
13
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
14
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpColorDepth, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: 'ngtp-color-depth',
|
|
19
|
+
standalone: true,
|
|
20
|
+
template: `
|
|
21
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
22
|
+
`,
|
|
23
|
+
imports: [NgtArgs],
|
|
24
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
25
|
+
inputs: ['bits'],
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItZGVwdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL2NvbG9yLWRlcHRoL2NvbG9yLWRlcHRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBWWxELE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBNEI7SUFDNUQsSUFBYSxpQkFBaUI7UUFDMUIsT0FBTyxnQkFBZ0IsQ0FBQztJQUM1QixDQUFDOzsyR0FIUSxjQUFjOytGQUFkLGNBQWMsNkhBUGI7O0tBRVQsNERBQ1MsT0FBTzsyRkFJUixjQUFjO2tCQVYxQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgQ29sb3JEZXB0aEVmZmVjdCB9IGZyb20gJ3Bvc3Rwcm9jZXNzaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLWNvbG9yLWRlcHRoJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW2dldCgnZWZmZWN0JyldXCIgbmd0Q29tcG91bmQgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ2JpdHMnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cENvbG9yRGVwdGggZXh0ZW5kcyBOZ3RwRWZmZWN0PENvbG9yRGVwdGhFZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBDb2xvckRlcHRoRWZmZWN0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
2
|
+
import { NgtArgs } from 'angular-three';
|
|
3
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
4
|
+
import { DepthEffect } from 'postprocessing';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NgtpDepth extends NgtpEffect {
|
|
7
|
+
get effectConstructor() {
|
|
8
|
+
return DepthEffect;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
NgtpDepth.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpDepth, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
NgtpDepth.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpDepth, isStandalone: true, selector: "ngtp-depth", inputs: { inverted: "inverted" }, usesInheritance: true, ngImport: i0, template: `
|
|
13
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
14
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpDepth, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: 'ngtp-depth',
|
|
19
|
+
standalone: true,
|
|
20
|
+
template: `
|
|
21
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
22
|
+
`,
|
|
23
|
+
imports: [NgtArgs],
|
|
24
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
25
|
+
inputs: ['inverted'],
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL2RlcHRoL2RlcHRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVk3QyxNQUFNLE9BQU8sU0FBVSxTQUFRLFVBQXVCO0lBQ2xELElBQWEsaUJBQWlCO1FBQzFCLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7O3NHQUhRLFNBQVM7MEZBQVQsU0FBUywrSEFQUjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLFNBQVM7a0JBVnJCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDO2lCQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgRGVwdGhFZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1kZXB0aCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogWydpbnZlcnRlZCddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwRGVwdGggZXh0ZW5kcyBOZ3RwRWZmZWN0PERlcHRoRWZmZWN0PiB7XG4gICAgb3ZlcnJpZGUgZ2V0IGVmZmVjdENvbnN0cnVjdG9yKCkge1xuICAgICAgICByZXR1cm4gRGVwdGhFZmZlY3Q7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
2
|
+
import { NgtArgs } from 'angular-three';
|
|
3
|
+
import { NgtpEffect } from 'angular-three-postprocessing';
|
|
4
|
+
import { DotScreenEffect } from 'postprocessing';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NgtpDotScreen extends NgtpEffect {
|
|
7
|
+
get effectConstructor() {
|
|
8
|
+
return DotScreenEffect;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
NgtpDotScreen.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpDotScreen, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
NgtpDotScreen.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpDotScreen, isStandalone: true, selector: "ngtp-dot-screen", inputs: { angle: "angle", scale: "scale" }, usesInheritance: true, ngImport: i0, template: `
|
|
13
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
14
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpDotScreen, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: 'ngtp-dot-screen',
|
|
19
|
+
standalone: true,
|
|
20
|
+
template: `
|
|
21
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
22
|
+
`,
|
|
23
|
+
imports: [NgtArgs],
|
|
24
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
25
|
+
inputs: ['angle', 'scale'],
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90LXNjcmVlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZy9lZmZlY3RzL3NyYy9saWIvZG90LXNjcmVlbi9kb3Qtc2NyZWVuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVlqRCxNQUFNLE9BQU8sYUFBYyxTQUFRLFVBQTJCO0lBQzFELElBQWEsaUJBQWlCO1FBQzFCLE9BQU8sZUFBZSxDQUFDO0lBQzNCLENBQUM7OzBHQUhRLGFBQWE7OEZBQWIsYUFBYSw4SUFQWjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLGFBQWE7a0JBVnpCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7S0FFVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgRG90U2NyZWVuRWZmZWN0IH0gZnJvbSAncG9zdHByb2Nlc3NpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25ndHAtZG90LXNjcmVlbicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogWydhbmdsZScsICdzY2FsZSddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwRG90U2NyZWVuIGV4dGVuZHMgTmd0cEVmZmVjdDxEb3RTY3JlZW5FZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBEb3RTY3JlZW5FZmZlY3Q7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
export class NgtpHueSaturation extends NgtpEffect {
|
|
7
|
+
get effectConstructor() {
|
|
8
|
+
return HueSaturationEffect;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
NgtpHueSaturation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpHueSaturation, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
NgtpHueSaturation.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpHueSaturation, isStandalone: true, selector: "ngtp-hue-saturation", inputs: { hue: "hue", saturation: "saturation" }, usesInheritance: true, ngImport: i0, template: `
|
|
13
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
14
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpHueSaturation, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: 'ngtp-hue-saturation',
|
|
19
|
+
standalone: true,
|
|
20
|
+
template: `
|
|
21
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
22
|
+
`,
|
|
23
|
+
imports: [NgtArgs],
|
|
24
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
25
|
+
inputs: ['hue', 'saturation'],
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVlLXNhdHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL2h1ZS1zYXR1cmF0aW9uL2h1ZS1zYXR1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBWXJELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxVQUErQjtJQUNsRSxJQUFhLGlCQUFpQjtRQUMxQixPQUFPLG1CQUFtQixDQUFDO0lBQy9CLENBQUM7OzhHQUhRLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdKQVBoQjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLGlCQUFpQjtrQkFWN0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOztLQUVUO29CQUNELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUM7aUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RBcmdzIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBOZ3RwRWZmZWN0IH0gZnJvbSAnYW5ndWxhci10aHJlZS1wb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBIdWVTYXR1cmF0aW9uRWZmZWN0IH0gZnJvbSAncG9zdHByb2Nlc3NpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25ndHAtaHVlLXNhdHVyYXRpb24nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5ndC1wcmltaXRpdmUgKmFyZ3M9XCJbZ2V0KCdlZmZlY3QnKV1cIiBuZ3RDb21wb3VuZCAvPlxuICAgIGAsXG4gICAgaW1wb3J0czogW05ndEFyZ3NdLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbiAgICBpbnB1dHM6IFsnaHVlJywgJ3NhdHVyYXRpb24nXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0cEh1ZVNhdHVyYXRpb24gZXh0ZW5kcyBOZ3RwRWZmZWN0PEh1ZVNhdHVyYXRpb25FZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBIdWVTYXR1cmF0aW9uRWZmZWN0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,59 @@
|
|
|
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
|
+
export 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
|
+
}
|
|
38
|
+
NgtpLUT.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpLUT, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
NgtpLUT.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpLUT, isStandalone: true, selector: "ngtp-lut", inputs: { blendFunction: "blendFunction", tetrahedralInterpolation: "tetrahedralInterpolation", lutRef: "lutRef", lut: "lut" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
|
|
40
|
+
<ngt-primitive *args="[get('effect')]" [ref]="lutRef" />
|
|
41
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpLUT, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{
|
|
45
|
+
selector: 'ngtp-lut',
|
|
46
|
+
standalone: true,
|
|
47
|
+
template: `
|
|
48
|
+
<ngt-primitive *args="[get('effect')]" [ref]="lutRef" />
|
|
49
|
+
`,
|
|
50
|
+
imports: [NgtArgs],
|
|
51
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
52
|
+
inputs: ['blendFunction', 'tetrahedralInterpolation'],
|
|
53
|
+
}]
|
|
54
|
+
}], propDecorators: { lutRef: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], lut: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}] } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXBvc3Rwcm9jZXNzaW5nL2VmZmVjdHMvc3JjL2xpYi9sdXQvbHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBWTFDLE1BQU0sT0FBTyxPQUFRLFNBQVEsVUFBVTtJQVZ2Qzs7UUFXcUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqQyxXQUFNLEdBQUcsWUFBWSxFQUFlLENBQUM7S0FvQ2pEO0lBbENHLElBQWEsR0FBRyxDQUFDLEdBQWtCO1FBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsMEJBQTBCLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxDQUNSLFFBQVEsRUFDUixhQUFhLENBQUM7WUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNsQiwrQkFBK0IsQ0FDM0IsSUFBSSxFQUNKLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FDckU7U0FDSixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUM5RCxDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FDTCxhQUFhLENBQUM7WUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDckUsQ0FBQyxFQUNGLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLHdCQUF3QixDQUFDLEVBQUUsRUFBRTtZQUN4QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRCxJQUFJLEdBQUc7Z0JBQUUsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7WUFDMUIsSUFBSSx3QkFBd0I7Z0JBQUUsTUFBTSxDQUFDLHdCQUF3QixHQUFHLHdCQUF3QixDQUFDO1lBQ3pGLFVBQVUsRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7b0dBdENRLE9BQU87d0ZBQVAsT0FBTyxnUEFQTjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLE9BQU87a0JBVm5CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsZUFBZSxFQUFFLDBCQUEwQixDQUFDO2lCQUN4RDs4QkFJWSxNQUFNO3NCQUFkLEtBQUs7Z0JBRU8sR0FBRztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0Tmd0UmVmLCBOZ3RBcmdzLCBOZ3RSeFN0b3JlLCBOZ3RTdG9yZSwgc3RhcnRXaXRoVW5kZWZpbmVkIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBjb21wb25lbnRJbnB1dHNUb0NvbWJpbmVkU3RyZWFtLCBzaW1wbGVDaGFuZ2VzVG9TdGF0ZU9iamVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgTFVUM0RFZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3RwLWx1dCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIFtyZWZdPVwibHV0UmVmXCIgLz5cbiAgICBgLFxuICAgIGltcG9ydHM6IFtOZ3RBcmdzXSxcbiAgICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG4gICAgaW5wdXRzOiBbJ2JsZW5kRnVuY3Rpb24nLCAndGV0cmFoZWRyYWxJbnRlcnBvbGF0aW9uJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBMVVQgZXh0ZW5kcyBOZ3RSeFN0b3JlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBpbmplY3QoTmd0U3RvcmUpO1xuXG4gICAgQElucHV0KCkgbHV0UmVmID0gaW5qZWN0Tmd0UmVmPExVVDNERWZmZWN0PigpO1xuXG4gICAgQElucHV0KCkgc2V0IGx1dChsdXQ6IFRIUkVFLlRleHR1cmUpIHtcbiAgICAgICAgdGhpcy5zZXQoeyBsdXQgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICB0aGlzLnNldCgocykgPT4gKHsgLi4ucywgLi4uc2ltcGxlQ2hhbmdlc1RvU3RhdGVPYmplY3QoY2hhbmdlcywgWydsdXRSZWYnLCAnbHV0J10pIH0pKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb25uZWN0KFxuICAgICAgICAgICAgJ2VmZmVjdCcsXG4gICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdCgnbHV0JyksXG4gICAgICAgICAgICAgICAgY29tcG9uZW50SW5wdXRzVG9Db21iaW5lZFN0cmVhbShcbiAgICAgICAgICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICAgICAgICAgICAgKGlucHV0KSA9PiBpbnB1dC5wcm9wTmFtZSAhPT0gJ2x1dFJlZicgJiYgaW5wdXQucHJvcE5hbWUgIT09ICdsdXQnXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF0pLnBpcGUobWFwKChbbHV0LCBwcm9wc10pID0+IG5ldyBMVVQzREVmZmVjdChsdXQsIHByb3BzKSkpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5ob2xkKFxuICAgICAgICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3QoJ2x1dCcpLFxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0KCdlZmZlY3QnKSxcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdCgndGV0cmFoZWRyYWxJbnRlcnBvbGF0aW9uJykucGlwZShzdGFydFdpdGhVbmRlZmluZWQoKSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIChbbHV0LCBlZmZlY3QsIHRldHJhaGVkcmFsSW50ZXJwb2xhdGlvbl0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnZhbGlkYXRlID0gdGhpcy5zdG9yZS5nZXQoJ2ludmFsaWRhdGUnKTtcbiAgICAgICAgICAgICAgICBpZiAobHV0KSBlZmZlY3QubHV0ID0gbHV0O1xuICAgICAgICAgICAgICAgIGlmICh0ZXRyYWhlZHJhbEludGVycG9sYXRpb24pIGVmZmVjdC50ZXRyYWhlZHJhbEludGVycG9sYXRpb24gPSB0ZXRyYWhlZHJhbEludGVycG9sYXRpb247XG4gICAgICAgICAgICAgICAgaW52YWxpZGF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
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
|
+
export class NgtpNoise extends NgtpEffect {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.defaultBlendMode = BlendFunction.COLOR_DODGE;
|
|
10
|
+
}
|
|
11
|
+
get effectConstructor() {
|
|
12
|
+
return NoiseEffect;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
NgtpNoise.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpNoise, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
NgtpNoise.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpNoise, isStandalone: true, selector: "ngtp-noise", inputs: { premultiply: "premultiply" }, usesInheritance: true, ngImport: i0, template: `
|
|
17
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
18
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpNoise, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: 'ngtp-noise',
|
|
23
|
+
standalone: true,
|
|
24
|
+
template: `
|
|
25
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
26
|
+
`,
|
|
27
|
+
imports: [NgtArgs],
|
|
28
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
29
|
+
inputs: ['premultiply'],
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9pc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL25vaXNlL25vaXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFZNUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxVQUF1QjtJQVZ0RDs7UUFlYSxxQkFBZ0IsR0FBa0IsYUFBYSxDQUFDLFdBQVcsQ0FBQztLQUN4RTtJQUxHLElBQWEsaUJBQWlCO1FBQzFCLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7O3NHQUhRLFNBQVM7MEZBQVQsU0FBUyxxSUFQUjs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLFNBQVM7a0JBVnJCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsYUFBYSxDQUFDO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgQmxlbmRGdW5jdGlvbiwgTm9pc2VFZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1ub2lzZScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogWydwcmVtdWx0aXBseSddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RwTm9pc2UgZXh0ZW5kcyBOZ3RwRWZmZWN0PE5vaXNlRWZmZWN0PiB7XG4gICAgb3ZlcnJpZGUgZ2V0IGVmZmVjdENvbnN0cnVjdG9yKCkge1xuICAgICAgICByZXR1cm4gTm9pc2VFZmZlY3Q7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZGVmYXVsdEJsZW5kTW9kZTogQmxlbmRGdW5jdGlvbiA9IEJsZW5kRnVuY3Rpb24uQ09MT1JfRE9ER0U7XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
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
|
+
export class NgtpScanline extends NgtpEffect {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.defaultBlendMode = BlendFunction.OVERLAY;
|
|
10
|
+
}
|
|
11
|
+
get effectConstructor() {
|
|
12
|
+
return ScanlineEffect;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
NgtpScanline.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpScanline, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
NgtpScanline.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: NgtpScanline, isStandalone: true, selector: "ngtp-scanline", inputs: { density: "density" }, usesInheritance: true, ngImport: i0, template: `
|
|
17
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
18
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "[args]", inputs: ["args"] }] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: NgtpScanline, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: 'ngtp-scanline',
|
|
23
|
+
standalone: true,
|
|
24
|
+
template: `
|
|
25
|
+
<ngt-primitive *args="[get('effect')]" ngtCompound />
|
|
26
|
+
`,
|
|
27
|
+
imports: [NgtArgs],
|
|
28
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
29
|
+
inputs: ['density'],
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NhbmxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcvZWZmZWN0cy9zcmMvbGliL3NjYW5saW5lL3NjYW5saW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFZL0QsTUFBTSxPQUFPLFlBQWEsU0FBUSxVQUEwQjtJQVY1RDs7UUFlYSxxQkFBZ0IsR0FBa0IsYUFBYSxDQUFDLE9BQU8sQ0FBQztLQUNwRTtJQUxHLElBQWEsaUJBQWlCO1FBQzFCLE9BQU8sY0FBYyxDQUFDO0lBQzFCLENBQUM7O3lHQUhRLFlBQVk7NkZBQVosWUFBWSxnSUFQWDs7S0FFVCw0REFDUyxPQUFPOzJGQUlSLFlBQVk7a0JBVnhCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7O0tBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0QXJncyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgTmd0cEVmZmVjdCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtcG9zdHByb2Nlc3NpbmcnO1xuaW1wb3J0IHsgQmxlbmRGdW5jdGlvbiwgU2NhbmxpbmVFZmZlY3QgfSBmcm9tICdwb3N0cHJvY2Vzc2luZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd0cC1zY2FubGluZScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmd0LXByaW1pdGl2ZSAqYXJncz1cIltnZXQoJ2VmZmVjdCcpXVwiIG5ndENvbXBvdW5kIC8+XG4gICAgYCxcbiAgICBpbXBvcnRzOiBbTmd0QXJnc10sXG4gICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIGlucHV0czogWydkZW5zaXR5J10sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHBTY2FubGluZSBleHRlbmRzIE5ndHBFZmZlY3Q8U2NhbmxpbmVFZmZlY3Q+IHtcbiAgICBvdmVycmlkZSBnZXQgZWZmZWN0Q29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJldHVybiBTY2FubGluZUVmZmVjdDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBkZWZhdWx0QmxlbmRNb2RlOiBCbGVuZEZ1bmN0aW9uID0gQmxlbmRGdW5jdGlvbi5PVkVSTEFZO1xufVxuIl19
|