@wolsok/thanos 3.0.1 → 16.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -107
- package/{esm2020 → esm2022}/index.mjs +10 -10
- package/esm2022/lib/animation.state.mjs +2 -0
- package/esm2022/lib/create-ws-thanos-options.mjs +9 -0
- package/{esm2020 → esm2022}/lib/simplex-noise-options.mjs +1 -1
- package/esm2022/lib/simplex-noise.mjs +194 -0
- package/{esm2020 → esm2022}/lib/ws-thanos-options.token.mjs +13 -13
- package/esm2022/lib/ws-thanos.directive.mjs +76 -0
- package/{esm2020 → esm2022}/lib/ws-thanos.options.mjs +1 -1
- package/esm2022/lib/ws-thanos.service.mjs +253 -0
- package/{esm2020 → esm2022}/wolsok-thanos.mjs +4 -4
- package/index.d.ts +8 -6
- package/index.d.ts.map +1 -0
- package/lib/animation.state.d.ts +7 -0
- package/lib/animation.state.d.ts.map +1 -0
- package/lib/create-ws-thanos-options.d.ts +3 -2
- package/lib/create-ws-thanos-options.d.ts.map +1 -0
- package/lib/simplex-noise-options.d.ts +10 -9
- package/lib/simplex-noise-options.d.ts.map +1 -0
- package/lib/simplex-noise.d.ts +19 -18
- package/lib/simplex-noise.d.ts.map +1 -0
- package/lib/ws-thanos-options.token.d.ts +5 -4
- package/lib/ws-thanos-options.token.d.ts.map +1 -0
- package/lib/ws-thanos.directive.d.ts +36 -18
- package/lib/ws-thanos.directive.d.ts.map +1 -0
- package/lib/ws-thanos.options.d.ts +6 -5
- package/lib/ws-thanos.options.d.ts.map +1 -0
- package/lib/ws-thanos.service.d.ts +27 -32
- package/lib/ws-thanos.service.d.ts.map +1 -0
- package/package.json +16 -17
- package/wolsok-thanos.d.ts.map +1 -0
- package/esm2020/lib/create-ws-thanos-options.mjs +0 -9
- package/esm2020/lib/simplex-noise.mjs +0 -199
- package/esm2020/lib/ws-thanos.directive.mjs +0 -56
- package/esm2020/lib/ws-thanos.service.mjs +0 -260
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wolsok/thanos",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "16.0.1",
|
|
4
|
+
"description": "Wolf Soko's implementation of a cool Thanos snapping vaporizing effect for destroying dom elements",
|
|
5
5
|
"bugs": {
|
|
6
6
|
"url": "https://github.com/WolfSoko/wol-sok-mono/issues"
|
|
7
7
|
},
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
"repository": "https://github.com/WolfSoko/wol-sok-mono/tree/main/libs/public/ws-thanos",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"keywords": [
|
|
12
|
+
"wolf soko",
|
|
12
13
|
"wolsok",
|
|
13
14
|
"angular",
|
|
14
15
|
"angular-lib",
|
|
@@ -19,33 +20,31 @@
|
|
|
19
20
|
"vaporize",
|
|
20
21
|
"vaporizing",
|
|
21
22
|
"Avengers",
|
|
22
|
-
"Marvel"
|
|
23
|
+
"Marvel",
|
|
24
|
+
"npm"
|
|
23
25
|
],
|
|
24
26
|
"peerDependencies": {
|
|
25
|
-
"@angular/common": "^
|
|
26
|
-
"@angular/core": "^
|
|
27
|
+
"@angular/common": "^16.0.0",
|
|
28
|
+
"@angular/core": "^16.0.0",
|
|
27
29
|
"html2canvas": "^1.4.1",
|
|
28
|
-
"@angular/platform-browser": "
|
|
29
|
-
"rxjs": "7.
|
|
30
|
-
"zone.js": "0.
|
|
31
|
-
"@angular/platform-browser-dynamic": "
|
|
30
|
+
"@angular/platform-browser": "16.0.0",
|
|
31
|
+
"rxjs": "7.8.1",
|
|
32
|
+
"zone.js": "0.13.0",
|
|
33
|
+
"@angular/platform-browser-dynamic": "16.0.0"
|
|
32
34
|
},
|
|
33
35
|
"dependencies": {
|
|
34
|
-
"tslib": "2.
|
|
36
|
+
"tslib": "^2.5.0"
|
|
35
37
|
},
|
|
36
|
-
"module": "
|
|
37
|
-
"es2020": "esm2020/wolsok-thanos.mjs",
|
|
38
|
-
"esm2020": "esm2020/wolsok-thanos.mjs",
|
|
38
|
+
"module": "esm2022/wolsok-thanos.mjs",
|
|
39
39
|
"typings": "index.d.ts",
|
|
40
40
|
"exports": {
|
|
41
41
|
"./package.json": {
|
|
42
42
|
"default": "./package.json"
|
|
43
43
|
},
|
|
44
44
|
".": {
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"default": "./esm2020/wolsok-thanos.mjs"
|
|
45
|
+
"esm2022": "./esm2022/wolsok-thanos.mjs",
|
|
46
|
+
"esm": "./esm2022/wolsok-thanos.mjs",
|
|
47
|
+
"default": "./esm2022/wolsok-thanos.mjs"
|
|
49
48
|
}
|
|
50
49
|
},
|
|
51
50
|
"sideEffects": false
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wolsok-thanos.d.ts","sourceRoot":"","sources":["../../../../libs/public/ws-thanos/src/wolsok-thanos.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export function createWsThanosOptions(options) {
|
|
2
|
-
return {
|
|
3
|
-
animationLength: 5000,
|
|
4
|
-
maxParticleCount: 400000,
|
|
5
|
-
particleAcceleration: 30,
|
|
6
|
-
...options,
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXdzLXRoYW5vcy1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wdWJsaWMvd3MtdGhhbm9zL3NyYy9saWIvY3JlYXRlLXdzLXRoYW5vcy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsT0FBa0M7SUFFbEMsT0FBTztRQUNMLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLGdCQUFnQixFQUFFLE1BQU07UUFDeEIsb0JBQW9CLEVBQUUsRUFBRTtRQUN4QixHQUFHLE9BQU87S0FDWCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdzVGhhbm9zT3B0aW9ucyB9IGZyb20gJy4vd3MtdGhhbm9zLm9wdGlvbnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV3NUaGFub3NPcHRpb25zKFxuICBvcHRpb25zPzogUGFydGlhbDxXc1RoYW5vc09wdGlvbnM+XG4pOiBXc1RoYW5vc09wdGlvbnMge1xuICByZXR1cm4ge1xuICAgIGFuaW1hdGlvbkxlbmd0aDogNTAwMCxcbiAgICBtYXhQYXJ0aWNsZUNvdW50OiA0MDAwMDAsXG4gICAgcGFydGljbGVBY2NlbGVyYXRpb246IDMwLFxuICAgIC4uLm9wdGlvbnMsXG4gIH07XG59XG4iXX0=
|
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
export class SimplexNoise {
|
|
2
|
-
constructor(options) {
|
|
3
|
-
this.memScale3D = {};
|
|
4
|
-
const { min, max, random, amplitude, frequency, octaves, persistence } = createOptionsWithDefaults(options);
|
|
5
|
-
this.random = random;
|
|
6
|
-
this.amplitude = amplitude;
|
|
7
|
-
this.frequency = frequency;
|
|
8
|
-
this.octaves = octaves;
|
|
9
|
-
this.persistence = persistence;
|
|
10
|
-
this.scale =
|
|
11
|
-
min === -1 && max === 1
|
|
12
|
-
? (value) => value
|
|
13
|
-
: (value) => min + ((value + 1) / 2) * (max - min);
|
|
14
|
-
const p = new Uint8Array(256);
|
|
15
|
-
for (let i = 0; i < 256; i++) {
|
|
16
|
-
p[i] = i;
|
|
17
|
-
}
|
|
18
|
-
let n;
|
|
19
|
-
let q;
|
|
20
|
-
for (let i = 255; i > 0; i--) {
|
|
21
|
-
n = Math.floor((i + 1) * this.random());
|
|
22
|
-
q = p[i];
|
|
23
|
-
p[i] = p[n];
|
|
24
|
-
p[n] = q;
|
|
25
|
-
}
|
|
26
|
-
this.perm = new Uint8Array(512);
|
|
27
|
-
this.permMod12 = new Uint8Array(512);
|
|
28
|
-
for (let i = 0; i < 512; i++) {
|
|
29
|
-
this.perm[i] = p[i & 255];
|
|
30
|
-
this.permMod12[i] = this.perm[i] % 12;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
dot(gs, coords) {
|
|
34
|
-
return gs
|
|
35
|
-
.slice(0, Math.min(gs.length, coords.length))
|
|
36
|
-
.reduce((total, g, i) => total + g * coords[i], 0);
|
|
37
|
-
}
|
|
38
|
-
raw3D(x, y, z) {
|
|
39
|
-
// Skew the input space to determine which simplex cell we're in
|
|
40
|
-
const s = (x + y + z) / 3.0; // Very nice and simple skew factor for 3D
|
|
41
|
-
const i = Math.floor(x + s);
|
|
42
|
-
const j = Math.floor(y + s);
|
|
43
|
-
const k = Math.floor(z + s);
|
|
44
|
-
const t = (i + j + k) * SimplexNoise.G3;
|
|
45
|
-
const X0 = i - t; // Unskew the cell origin back to (x,y,z) space
|
|
46
|
-
const Y0 = j - t;
|
|
47
|
-
const Z0 = k - t;
|
|
48
|
-
const x0 = x - X0; // The x,y,z distances from the cell origin
|
|
49
|
-
const y0 = y - Y0;
|
|
50
|
-
const z0 = z - Z0;
|
|
51
|
-
// Determine which simplex we are in
|
|
52
|
-
let i1, j1, k1; // Offsets for second corner of simplex in (i,j,k) coords
|
|
53
|
-
let i2, j2, k2; // Offsets for third corner of simplex in (i,j,k) coords
|
|
54
|
-
if (x0 >= y0) {
|
|
55
|
-
if (y0 >= z0) {
|
|
56
|
-
i1 = i2 = j2 = 1;
|
|
57
|
-
j1 = k1 = k2 = 0;
|
|
58
|
-
}
|
|
59
|
-
else if (x0 >= z0) {
|
|
60
|
-
i1 = i2 = k2 = 1;
|
|
61
|
-
j1 = k1 = j2 = 0;
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
k1 = i2 = k2 = 1;
|
|
65
|
-
i1 = j1 = j2 = 0;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
if (y0 < z0) {
|
|
70
|
-
k1 = j2 = k2 = 1;
|
|
71
|
-
i1 = j1 = i2 = 0;
|
|
72
|
-
}
|
|
73
|
-
else if (x0 < z0) {
|
|
74
|
-
j1 = j2 = k2 = 1;
|
|
75
|
-
i1 = k1 = i2 = 0;
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
j1 = i2 = j2 = 1;
|
|
79
|
-
i1 = k1 = k2 = 0;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
const x1 = x0 - i1 + SimplexNoise.G3; // Offsets for second corner in (x,y,z) coords
|
|
83
|
-
const y1 = y0 - j1 + SimplexNoise.G3;
|
|
84
|
-
const z1 = z0 - k1 + SimplexNoise.G3;
|
|
85
|
-
const x2 = x0 - i2 + 2.0 * SimplexNoise.G3; // Offsets for third corner in (x,y,z) coords
|
|
86
|
-
const y2 = y0 - j2 + 2.0 * SimplexNoise.G3;
|
|
87
|
-
const z2 = z0 - k2 + 2.0 * SimplexNoise.G3;
|
|
88
|
-
const x3 = x0 - 1.0 + 3.0 * SimplexNoise.G3; // Offsets for last corner in (x,y,z) coords
|
|
89
|
-
const y3 = y0 - 1.0 + 3.0 * SimplexNoise.G3;
|
|
90
|
-
const z3 = z0 - 1.0 + 3.0 * SimplexNoise.G3;
|
|
91
|
-
// Work out the hashed gradient indices of the four simplex corners
|
|
92
|
-
const ii = i & 255;
|
|
93
|
-
const jj = j & 255;
|
|
94
|
-
const kk = k & 255;
|
|
95
|
-
const gi0 = this.permMod12[ii + this.perm[jj + this.perm[kk]]];
|
|
96
|
-
const gi1 = this.permMod12[ii + i1 + this.perm[jj + j1 + this.perm[kk + k1]]];
|
|
97
|
-
const gi2 = this.permMod12[ii + i2 + this.perm[jj + j2 + this.perm[kk + k2]]];
|
|
98
|
-
const gi3 = this.permMod12[ii + 1 + this.perm[jj + 1 + this.perm[kk + 1]]];
|
|
99
|
-
// Calculate the contribution from the four corners
|
|
100
|
-
const t0 = 0.5 - x0 * x0 - y0 * y0 - z0 * z0;
|
|
101
|
-
const n0 = t0 < 0
|
|
102
|
-
? 0.0
|
|
103
|
-
: Math.pow(t0, 4) * this.dot(SimplexNoise.GRAD3D[gi0], [x0, y0, z0]);
|
|
104
|
-
const t1 = 0.5 - x1 * x1 - y1 * y1 - z1 * z1;
|
|
105
|
-
const n1 = t1 < 0
|
|
106
|
-
? 0.0
|
|
107
|
-
: Math.pow(t1, 4) * this.dot(SimplexNoise.GRAD3D[gi1], [x1, y1, z1]);
|
|
108
|
-
const t2 = 0.5 - x2 * x2 - y2 * y2 - z2 * z2;
|
|
109
|
-
const n2 = t2 < 0
|
|
110
|
-
? 0.0
|
|
111
|
-
: Math.pow(t2, 4) * this.dot(SimplexNoise.GRAD3D[gi2], [x2, y2, z2]);
|
|
112
|
-
const t3 = 0.5 - x3 * x3 - y3 * y3 - z3 * z3;
|
|
113
|
-
const n3 = t3 < 0
|
|
114
|
-
? 0.0
|
|
115
|
-
: Math.pow(t3, 4) * this.dot(SimplexNoise.GRAD3D[gi3], [x3, y3, z3]);
|
|
116
|
-
// Add contributions from each corner to get the final noise value.
|
|
117
|
-
// The result is scaled to stay just inside [-1,1]
|
|
118
|
-
return 94.68493150681972 * (n0 + n1 + n2 + n3);
|
|
119
|
-
}
|
|
120
|
-
scaled3D(x, y, z, resolution) {
|
|
121
|
-
const memIndex = `${Math.round(x * resolution)}${Math.round(y * resolution)}${Math.round(z * resolution)}`;
|
|
122
|
-
const memElem = this.memScale3D[memIndex];
|
|
123
|
-
if (memElem != null) {
|
|
124
|
-
return memElem;
|
|
125
|
-
}
|
|
126
|
-
let amplitude = this.amplitude;
|
|
127
|
-
let frequency = this.frequency;
|
|
128
|
-
let maxAmplitude = 0;
|
|
129
|
-
let noise = 0;
|
|
130
|
-
for (let i = 0; i < this.octaves; i++) {
|
|
131
|
-
noise +=
|
|
132
|
-
this.raw3D(x * frequency, y * frequency, z * frequency) * amplitude;
|
|
133
|
-
maxAmplitude += amplitude;
|
|
134
|
-
amplitude *= this.persistence;
|
|
135
|
-
frequency *= 2;
|
|
136
|
-
}
|
|
137
|
-
const result = this.scale(noise / maxAmplitude);
|
|
138
|
-
this.memScale3D[memIndex] = result;
|
|
139
|
-
return result;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
SimplexNoise.G3 = 1.0 / 6.0;
|
|
143
|
-
SimplexNoise.GRAD3D = [
|
|
144
|
-
[1, 1, 0],
|
|
145
|
-
[-1, 1, 0],
|
|
146
|
-
[1, -1, 0],
|
|
147
|
-
[-1, -1, 0],
|
|
148
|
-
[1, 0, 1],
|
|
149
|
-
[-1, 0, 1],
|
|
150
|
-
[1, 0, -1],
|
|
151
|
-
[-1, 0, -1],
|
|
152
|
-
[0, 1, 1],
|
|
153
|
-
[0, -1, -1],
|
|
154
|
-
[0, 1, -1],
|
|
155
|
-
[0, -1, -1],
|
|
156
|
-
];
|
|
157
|
-
function createOptionsWithDefaults(options) {
|
|
158
|
-
if (options != null) {
|
|
159
|
-
if (options['amplitude'] && typeof options.amplitude !== 'number') {
|
|
160
|
-
throw new Error('options.amplitude must be a number');
|
|
161
|
-
}
|
|
162
|
-
if (options['frequency'] && typeof options.frequency !== 'number') {
|
|
163
|
-
throw new Error('options.frequency must be a number');
|
|
164
|
-
}
|
|
165
|
-
if (options['octaves'] &&
|
|
166
|
-
(typeof options.octaves !== 'number' ||
|
|
167
|
-
!isFinite(options.octaves) ||
|
|
168
|
-
Math.floor(options.octaves) !== options.octaves)) {
|
|
169
|
-
throw new Error('options.octaves must be an integer');
|
|
170
|
-
}
|
|
171
|
-
if (options['persistence'] && typeof options.persistence !== 'number') {
|
|
172
|
-
throw new Error('options.persistence must be a number');
|
|
173
|
-
}
|
|
174
|
-
if (options['random'] && typeof options.random !== 'function') {
|
|
175
|
-
throw new Error('options.random must be a function');
|
|
176
|
-
}
|
|
177
|
-
if (options['min'] && typeof options.min !== 'number') {
|
|
178
|
-
throw new Error('options.min must be a number');
|
|
179
|
-
}
|
|
180
|
-
if (options['max'] && typeof options.max !== 'number') {
|
|
181
|
-
throw new Error('options.max must be a number');
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
const optionsResult = {
|
|
185
|
-
amplitude: 1.0,
|
|
186
|
-
frequency: 1.0,
|
|
187
|
-
max: 1.0,
|
|
188
|
-
min: -1.0,
|
|
189
|
-
octaves: 1,
|
|
190
|
-
persistence: 0.5,
|
|
191
|
-
random: Math.random,
|
|
192
|
-
...options,
|
|
193
|
-
};
|
|
194
|
-
if (optionsResult.min > optionsResult.max) {
|
|
195
|
-
throw new Error('min must be smaller max');
|
|
196
|
-
}
|
|
197
|
-
return optionsResult;
|
|
198
|
-
}
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxleC1ub2lzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcHVibGljL3dzLXRoYW5vcy9zcmMvbGliL3NpbXBsZXgtbm9pc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFBWSxPQUFzQztRQThEMUMsZUFBVSxHQUE4QixFQUFFLENBQUM7UUE3RGpELE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsR0FDcEUseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFFL0IsSUFBSSxDQUFDLEtBQUs7WUFDUixHQUFHLEtBQUssQ0FBQyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSztnQkFDbEIsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUV2RCxNQUFNLENBQUMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzVCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDVjtRQUVELElBQUksQ0FBUyxDQUFDO1FBQ2QsSUFBSSxDQUFTLENBQUM7UUFDZCxLQUFLLElBQUksQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzVCLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ1osQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNWO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBNkJELEdBQUcsQ0FBQyxFQUFZLEVBQUUsTUFBZ0I7UUFDaEMsT0FBTyxFQUFFO2FBQ04sS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzVDLE1BQU0sQ0FBQyxDQUFD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LEVBQUU7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0tBQzVDO0lBQ0QsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2ltcGxleE5vaXNlT3B0aW9ucyB9IGZyb20gJy4vc2ltcGxleC1ub2lzZS1vcHRpb25zJztcblxuZXhwb3J0IGNsYXNzIFNpbXBsZXhOb2lzZSB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM/OiBQYXJ0aWFsPFNpbXBsZXhOb2lzZU9wdGlvbnM+KSB7XG4gICAgY29uc3QgeyBtaW4sIG1heCwgcmFuZG9tLCBhbXBsaXR1ZGUsIGZyZXF1ZW5jeSwgb2N0YXZlcywgcGVyc2lzdGVuY2UgfSA9XG4gICAgICBjcmVhdGVPcHRpb25zV2l0aERlZmF1bHRzKG9wdGlvbnMpO1xuXG4gICAgdGhpcy5yYW5kb20gPSByYW5kb207XG4gICAgdGhpcy5hbXBsaXR1ZGUgPSBhbXBsaXR1ZGU7XG4gICAgdGhpcy5mcmVxdWVuY3kgPSBmcmVxdWVuY3k7XG4gICAgdGhpcy5vY3RhdmVzID0gb2N0YXZlcztcbiAgICB0aGlzLnBlcnNpc3RlbmNlID0gcGVyc2lzdGVuY2U7XG5cbiAgICB0aGlzLnNjYWxlID1cbiAgICAgIG1pbiA9PT0gLTEgJiYgbWF4ID09PSAxXG4gICAgICAgID8gKHZhbHVlKSA9PiB2YWx1ZVxuICAgICAgICA6ICh2YWx1ZSkgPT4gbWluICsgKCh2YWx1ZSArIDEpIC8gMikgKiAobWF4IC0gbWluKTtcblxuICAgIGNvbnN0IHAgPSBuZXcgVWludDhBcnJheSgyNTYpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMjU2OyBpKyspIHtcbiAgICAgIHBbaV0gPSBpO1xuICAgIH1cblxuICAgIGxldCBuOiBudW1iZXI7XG4gICAgbGV0IHE6IG51bWJlcjtcbiAgICBmb3IgKGxldCBpID0gMjU1OyBpID4gMDsgaS0tKSB7XG4gICAgICBuID0gTWF0aC5mbG9vcigoaSArIDEpICogdGhpcy5yYW5kb20oKSk7XG4gICAgICBxID0gcFtpXTtcbiAgICAgIHBbaV0gPSBwW25dO1xuICAgICAgcFtuXSA9IHE7XG4gICAgfVxuXG4gICAgdGhpcy5wZXJtID0gbmV3IFVpbnQ4QXJyYXkoNTEyKTtcbiAgICB0aGlzLnBlcm1Nb2QxMiA9IG5ldyBVaW50OEFycmF5KDUxMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA1MTI7IGkrKykge1xuICAgICAgdGhpcy5wZXJtW2ldID0gcFtpICYgMjU1XTtcbiAgICAgIHRoaXMucGVybU1vZDEyW2ldID0gdGhpcy5wZXJtW2ldICUgMTI7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIEczID0gMS4wIC8gNi4wO1xuXG4gIHN0YXRpYyBHUkFEM0QgPSBbXG4gICAgWzEsIDEsIDBdLFxuICAgIFstMSwgMSwgMF0sXG4gICAgWzEsIC0xLCAwXSxcbiAgICBbLTEsIC0xLCAwXSxcbiAgICBbMSwgMCwgMV0sXG4gICAgWy0xLCAwLCAxXSxcbiAgICBbMSwgMCwgLTFdLFxuICAgIFstMSwgMCwgLTFdLFxuICAgIFswLCAxLCAxXSxcbiAgICBbMCwgLTEsIC0xXSxcbiAgICBbMCwgMSwgLTFdLFxuICAgIFswLCAtMSwgLTFdLFxuICBdO1xuXG4gIHJlYWRvbmx5IGFtcGxpdHVkZTogbnVtYmVyO1xuICByZWFkb25seSBmcmVxdWVuY3k6IG51bWJlcjtcbiAgcmVhZG9ubHkgb2N0YXZlczogbnVtYmVyO1xuICByZWFkb25seSBwZXJtOiBVaW50OEFycmF5O1xuICByZWFkb25seSBwZXJtTW9kMTI6IFVpbnQ4QXJyYXk7XG4gIHJlYWRvbmx5IHBlcnNpc3RlbmNlOiBudW1iZXI7XG4gIHJlYWRvbmx5IHJhbmRvbTogKCkgPT4gbnVtYmVyO1xuICByZWFkb25seSBzY2FsZTogKHZhbHVlOiBudW1iZXIpID0+IG51bWJlcjtcbiAgcHJpdmF0ZSBtZW1TY2FsZTNEOiB7IFtrZXk6IHN0cmluZ106IG51bWJlciB9ID0ge307XG5cbiAgZG90KGdzOiBudW1iZXJbXSwgY29vcmRzOiBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGdzXG4gICAgICAuc2xpY2UoMCwgTWF0aC5taW4oZ3MubGVuZ3RoLCBjb29yZHMubGVuZ3RoKSlcbiAgICAgIC5yZWR1Y2UoKHRvdGFsLCBnLCBpKSA9PiB0b3RhbCArIGcgKiBjb29yZHNbaV0sIDApO1xuICB9XG5cbiAgcmF3M0QoeDogbnVtYmVyLCB5OiBudW1iZXIsIHo6IG51bWJlcik6IG51bWJlciB7XG4gICAgLy8gU2tldyB0aGUgaW5wdXQgc3BhY2UgdG8gZGV0ZXJtaW5lIHdoaWNoIHNpbXBsZXggY2VsbCB3ZSdyZSBpblxuICAgIGNvbnN0IHMgPSAoeCArIHkgKyB6KSAvIDMuMDsgLy8gVmVyeSBuaWNlIGFuZCBzaW1wbGUgc2tldyBmYWN0b3IgZm9yIDNEXG4gICAgY29uc3QgaSA9IE1hdGguZmxvb3IoeCArIHMpO1xuICAgIGNvbnN0IGogPSBNYXRoLmZsb29yKHkgKyBzKTtcbiAgICBjb25zdCBrID0gTWF0aC5mbG9vcih6ICsgcyk7XG4gICAgY29uc3QgdCA9IChpICsgaiArIGspICogU2ltcGxleE5vaXNlLkczO1xuICAgIGNvbnN0IFgwID0gaSAtIHQ7IC8vIFVuc2tldyB0aGUgY2VsbCBvcmlnaW4gYmFjayB0byAoeCx5LHopIHNwYWNlXG4gICAgY29uc3QgWTAgPSBqIC0gdDtcbiAgICBjb25zdCBaMCA9IGsgLSB0O1xuICAgIGNvbnN0IHgwID0geCAtIFgwOyAvLyBUaGUgeCx5LHogZGlzdGFuY2VzIGZyb20gdGhlIGNlbGwgb3JpZ2luXG4gICAgY29uc3QgeTAgPSB5IC0gWTA7XG4gICAgY29uc3QgejAgPSB6IC0gWjA7XG5cbiAgICAvLyBEZXRlcm1pbmUgd2hpY2ggc2ltcGxleCB3ZSBhcmUgaW5cbiAgICBsZXQgaTE6IG51bWJlciwgajE6IG51bWJlciwgazE6IG51bWJlcjsgLy8gT2Zmc2V0cyBmb3Igc2Vjb25kIGNvcm5lciBvZiBzaW1wbGV4IGluIChpLGosaykgY29vcmRzXG4gICAgbGV0IGkyOiBudW1iZXIsIGoyOiBudW1iZXIsIGsyOiBudW1iZXI7IC8vIE9mZnNldHMgZm9yIHRoaXJkIGNvcm5lciBvZiBzaW1wbGV4IGluIChpLGosaykgY29vcmRzXG4gICAgaWYgKHgwID49IHkwKSB7XG4gICAgICBpZiAoeTAgPj0gejApIHtcbiAgICAgICAgaTEgPSBpMiA9IGoyID0gMTtcbiAgICAgICAgajEgPSBrMSA9IGsyID0gMDtcbiAgICAgIH0gZWxzZSBpZiAoeDAgPj0gejApIHtcbiAgICAgICAgaTEgPSBpMiA9IGsyID0gMTtcbiAgICAgICAgajEgPSBrMSA9IGoyID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGsxID0gaTIgPSBrMiA9IDE7XG4gICAgICAgIGkxID0gajEgPSBqMiA9IDA7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh5MCA8IHowKSB7XG4gICAgICAgIGsxID0gajIgPSBrMiA9IDE7XG4gICAgICAgIGkxID0gajEgPSBpMiA9IDA7XG4gICAgICB9IGVsc2UgaWYgKHgwIDwgejApIHtcbiAgICAgICAgajEgPSBqMiA9IGsyID0gMTtcbiAgICAgICAgaTEgPSBrMSA9IGkyID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGoxID0gaTIgPSBqMiA9IDE7XG4gICAgICAgIGkxID0gazEgPSBrMiA9IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgeDEgPSB4MCAtIGkxICsgU2ltcGxleE5vaXNlLkczOyAvLyBPZmZzZXRzIGZvciBzZWNvbmQgY29ybmVyIGluICh4LHkseikgY29vcmRzXG4gICAgY29uc3QgeTEgPSB5MCAtIGoxICsgU2ltcGxleE5vaXNlLkczO1xuICAgIGNvbnN0IHoxID0gejAgLSBrMSArIFNpbXBsZXhOb2lzZS5HMztcbiAgICBjb25zdCB4MiA9IHgwIC0gaTIgKyAyLjAgKiBTaW1wbGV4Tm9pc2UuRzM7IC8vIE9mZnNldHMgZm9yIHRoaXJkIGNvcm5lciBpbiAoeCx5LHopIGNvb3Jkc1xuICAgIGNvbnN0IHkyID0geTAgLSBqMiArIDIuMCAqIFNpbXBsZXhOb2lzZS5HMztcbiAgICBjb25zdCB6MiA9IHowIC0gazIgKyAyLjAgKiBTaW1wbGV4Tm9pc2UuRzM7XG4gICAgY29uc3QgeDMgPSB4MCAtIDEuMCArIDMuMCAqIFNpbXBsZXhOb2lzZS5HMzsgLy8gT2Zmc2V0cyBmb3IgbGFzdCBjb3JuZXIgaW4gKHgseSx6KSBjb29yZHNcbiAgICBjb25zdCB5MyA9IHkwIC0gMS4wICsgMy4wICogU2ltcGxleE5vaXNlLkczO1xuICAgIGNvbnN0IHozID0gejAgLSAxLjAgKyAzLjAgKiBTaW1wbGV4Tm9pc2UuRzM7XG5cbiAgICAvLyBXb3JrIG91dCB0aGUgaGFzaGVkIGdyYWRpZW50IGluZGljZXMgb2YgdGhlIGZvdXIgc2ltcGxleCBjb3JuZXJzXG4gICAgY29uc3QgaWkgPSBpICYgMjU1O1xuICAgIGNvbnN0IGpqID0gaiAmIDI1NTtcbiAgICBjb25zdCBrayA9IGsgJiAyNTU7XG4gICAgY29uc3QgZ2kwID0gdGhpcy5wZXJtTW9kMTJbaWkgKyB0aGlzLnBlcm1bamogKyB0aGlzLnBlcm1ba2tdXV07XG4gICAgY29uc3QgZ2kxID1cbiAgICAgIHRoaXMucGVybU1vZDEyW2lpICsgaTEgKyB0aGlzLnBlcm1bamogKyBqMSArIHRoaXMucGVybVtrayArIGsxXV1dO1xuICAgIGNvbnN0IGdpMiA9XG4gICAgICB0aGlzLnBlcm1Nb2QxMltpaSArIGkyICsgdGhpcy5wZXJtW2pqICsgajIgKyB0aGlzLnBlcm1ba2sgKyBrMl1dXTtcbiAgICBjb25zdCBnaTMgPSB0aGlzLnBlcm1Nb2QxMltpaSArIDEgKyB0aGlzLnBlcm1bamogKyAxICsgdGhpcy5wZXJtW2trICsgMV1dXTtcblxuICAgIC8vIENhbGN1bGF0ZSB0aGUgY29udHJpYnV0aW9uIGZyb20gdGhlIGZvdXIgY29ybmVyc1xuICAgIGNvbnN0IHQwID0gMC41IC0geDAgKiB4MCAtIHkwICogeTAgLSB6MCAqIHowO1xuICAgIGNvbnN0IG4wID1cbiAgICAgIHQwIDwgMFxuICAgICAgICA/IDAuMFxuICAgICAgICA6IE1hdGgucG93KHQwLCA0KSAqIHRoaXMuZG90KFNpbXBsZXhOb2lzZS5HUkFEM0RbZ2kwXSwgW3gwLCB5MCwgejBdKTtcbiAgICBjb25zdCB0MSA9IDAuNSAtIHgxICogeDEgLSB5MSAqIHkxIC0gejEgKiB6MTtcbiAgICBjb25zdCBuMSA9XG4gICAgICB0MSA8IDBcbiAgICAgICAgPyAwLjBcbiAgICAgICAgOiBNYXRoLnBvdyh0MSwgNCkgKiB0aGlzLmRvdChTaW1wbGV4Tm9pc2UuR1JBRDNEW2dpMV0sIFt4MSwgeTEsIHoxXSk7XG4gICAgY29uc3QgdDIgPSAwLjUgLSB4MiAqIHgyIC0geTIgKiB5MiAtIHoyICogejI7XG4gICAgY29uc3QgbjIgPVxuICAgICAgdDIgPCAwXG4gICAgICAgID8gMC4wXG4gICAgICAgIDogTWF0aC5wb3codDIsIDQpICogdGhpcy5kb3QoU2ltcGxleE5vaXNlLkdSQUQzRFtnaTJdLCBbeDIsIHkyLCB6Ml0pO1xuICAgIGNvbnN0IHQzID0gMC41IC0geDMgKiB4MyAtIHkzICogeTMgLSB6MyAqIHozO1xuICAgIGNvbnN0IG4zID1cbiAgICAgIHQzIDwgMFxuICAgICAgICA/IDAuMFxuICAgICAgICA6IE1hdGgucG93KHQzLCA0KSAqIHRoaXMuZG90KFNpbXBsZXhOb2lzZS5HUkFEM0RbZ2kzXSwgW3gzLCB5MywgejNdKTtcblxuICAgIC8vIEFkZCBjb250cmlidXRpb25zIGZyb20gZWFjaCBjb3JuZXIgdG8gZ2V0IHRoZSBmaW5hbCBub2lzZSB2YWx1ZS5cbiAgICAvLyBUaGUgcmVzdWx0IGlzIHNjYWxlZCB0byBzdGF5IGp1c3QgaW5zaWRlIFstMSwxXVxuICAgIHJldHVybiA5NC42ODQ5MzE1MDY4MTk3MiAqIChuMCArIG4xICsgbjIgKyBuMyk7XG4gIH1cblxuICBzY2FsZWQzRCh4OiBudW1iZXIsIHk6IG51bWJlciwgejogbnVtYmVyLCByZXNvbHV0aW9uOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IG1lbUluZGV4ID0gYCR7TWF0aC5yb3VuZCh4ICogcmVzb2x1dGlvbil9JHtNYXRoLnJvdW5kKFxuICAgICAgeSAqIHJlc29sdXRpb25cbiAgICApfSR7TWF0aC5yb3VuZCh6ICogcmVzb2x1dGlvbil9YDtcbiAgICBjb25zdCBtZW1FbGVtID0gdGhpcy5tZW1TY2FsZTNEW21lbUluZGV4XTtcbiAgICBpZiAobWVtRWxlbSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gbWVtRWxlbTtcbiAgICB9XG5cbiAgICBsZXQgYW1wbGl0dWRlID0gdGhpcy5hbXBsaXR1ZGU7XG4gICAgbGV0IGZyZXF1ZW5jeSA9IHRoaXMuZnJlcXVlbmN5O1xuICAgIGxldCBtYXhBbXBsaXR1ZGUgPSAwO1xuICAgIGxldCBub2lzZSA9IDA7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMub2N0YXZlczsgaSsrKSB7XG4gICAgICBub2lzZSArPVxuICAgICAgICB0aGlzLnJhdzNEKHggKiBmcmVxdWVuY3ksIHkgKiBmcmVxdWVuY3ksIHogKiBmcmVxdWVuY3kpICogYW1wbGl0dWRlO1xuICAgICAgbWF4QW1wbGl0dWRlICs9IGFtcGxpdHVkZTtcbiAgICAgIGFtcGxpdHVkZSAqPSB0aGlzLnBlcnNpc3RlbmNlO1xuICAgICAgZnJlcXVlbmN5ICo9IDI7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuc2NhbGUobm9pc2UgLyBtYXhBbXBsaXR1ZGUpO1xuICAgIHRoaXMubWVtU2NhbGUzRFttZW1JbmRleF0gPSByZXN1bHQ7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuXG5mdW5jdGlvbiBjcmVhdGVPcHRpb25zV2l0aERlZmF1bHRzKG9wdGlvbnM/OiBQYXJ0aWFsPFNpbXBsZXhOb2lzZU9wdGlvbnM+KSB7XG4gIGlmIChvcHRpb25zICE9IG51bGwpIHtcbiAgICBpZiAob3B0aW9uc1snYW1wbGl0dWRlJ10gJiYgdHlwZW9mIG9wdGlvbnMuYW1wbGl0dWRlICE9PSAnbnVtYmVyJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcHRpb25zLmFtcGxpdHVkZSBtdXN0IGJlIGEgbnVtYmVyJyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnNbJ2ZyZXF1ZW5jeSddICYmIHR5cGVvZiBvcHRpb25zLmZyZXF1ZW5jeSAhPT0gJ251bWJlcicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3B0aW9ucy5mcmVxdWVuY3kgbXVzdCBiZSBhIG51bWJlcicpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG9wdGlvbnNbJ29jdGF2ZXMnXSAmJlxuICAgICAgKHR5cGVvZiBvcHRpb25zLm9jdGF2ZXMgIT09ICdudW1iZXInIHx8XG4gICAgICAgICFpc0Zpbml0ZShvcHRpb25zLm9jdGF2ZXMpIHx8XG4gICAgICAgIE1hdGguZmxvb3Iob3B0aW9ucy5vY3RhdmVzKSAhPT0gb3B0aW9ucy5vY3RhdmVzKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcHRpb25zLm9jdGF2ZXMgbXVzdCBiZSBhbiBpbnRlZ2VyJyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnNbJ3BlcnNpc3RlbmNlJ10gJiYgdHlwZW9mIG9wdGlvbnMucGVyc2lzdGVuY2UgIT09ICdudW1iZXInKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ29wdGlvbnMucGVyc2lzdGVuY2UgbXVzdCBiZSBhIG51bWJlcicpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zWydyYW5kb20nXSAmJiB0eXBlb2Ygb3B0aW9ucy5yYW5kb20gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3B0aW9ucy5yYW5kb20gbXVzdCBiZSBhIGZ1bmN0aW9uJyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnNbJ21pbiddICYmIHR5cGVvZiBvcHRpb25zLm1pbiAhPT0gJ251bWJlcicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3B0aW9ucy5taW4gbXVzdCBiZSBhIG51bWJlcicpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zWydtYXgnXSAmJiB0eXBlb2Ygb3B0aW9ucy5tYXggIT09ICdudW1iZXInKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ29wdGlvbnMubWF4IG11c3QgYmUgYSBudW1iZXInKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBvcHRpb25zUmVzdWx0ID0ge1xuICAgIGFtcGxpdHVkZTogMS4wLFxuICAgIGZyZXF1ZW5jeTogMS4wLFxuICAgIG1heDogMS4wLFxuICAgIG1pbjogLTEuMCxcbiAgICBvY3RhdmVzOiAxLFxuICAgIHBlcnNpc3RlbmNlOiAwLjUsXG4gICAgcmFuZG9tOiBNYXRoLnJhbmRvbSxcbiAgICAuLi5vcHRpb25zLFxuICB9O1xuICBpZiAob3B0aW9uc1Jlc3VsdC5taW4gPiBvcHRpb25zUmVzdWx0Lm1heCkge1xuICAgIHRocm93IG5ldyBFcnJvcignbWluIG11c3QgYmUgc21hbGxlciBtYXgnKTtcbiAgfVxuICByZXR1cm4gb3B0aW9uc1Jlc3VsdDtcbn1cbiJdfQ==
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, EventEmitter, Inject, NgZone, Output, } from '@angular/core';
|
|
2
|
-
import { WS_THANOS_OPTIONS_TOKEN } from './ws-thanos-options.token';
|
|
3
|
-
import { WsThanosService } from './ws-thanos.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./ws-thanos.service";
|
|
6
|
-
export class WsThanosDirective {
|
|
7
|
-
constructor(vaporizeDomElem, thanosService, thanosOptions, ngZone) {
|
|
8
|
-
this.vaporizeDomElem = vaporizeDomElem;
|
|
9
|
-
this.thanosService = thanosService;
|
|
10
|
-
this.thanosOptions = thanosOptions;
|
|
11
|
-
this.ngZone = ngZone;
|
|
12
|
-
this.wsThanosComplete = new EventEmitter();
|
|
13
|
-
}
|
|
14
|
-
vaporize(removeElem = true) {
|
|
15
|
-
const elem = this.vaporizeDomElem.nativeElement;
|
|
16
|
-
this.subscription = this.thanosService.vaporize(elem).subscribe({
|
|
17
|
-
complete: () => {
|
|
18
|
-
this.ngZone.run(() => {
|
|
19
|
-
if (removeElem) {
|
|
20
|
-
elem.remove();
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
// make visible again
|
|
24
|
-
elem.style.transition = 'opacity 700ms';
|
|
25
|
-
elem.style.opacity = '1';
|
|
26
|
-
}
|
|
27
|
-
this.wsThanosComplete.emit();
|
|
28
|
-
});
|
|
29
|
-
},
|
|
30
|
-
error: (error) => {
|
|
31
|
-
console.error('error emitted by vaporize', error);
|
|
32
|
-
this.wsThanosComplete.emit();
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
return this.wsThanosComplete.asObservable();
|
|
36
|
-
}
|
|
37
|
-
ngOnDestroy() {
|
|
38
|
-
this.subscription?.unsubscribe();
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
WsThanosDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: WsThanosDirective, deps: [{ token: i0.ElementRef }, { token: i1.WsThanosService }, { token: WS_THANOS_OPTIONS_TOKEN }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
-
WsThanosDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.9", type: WsThanosDirective, isStandalone: true, selector: "[wsThanos], ws-thanos", outputs: { wsThanosComplete: "wsThanosComplete" }, exportAs: ["thanos"], ngImport: i0 });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: WsThanosDirective, decorators: [{
|
|
44
|
-
type: Directive,
|
|
45
|
-
args: [{
|
|
46
|
-
standalone: true,
|
|
47
|
-
selector: '[wsThanos], ws-thanos',
|
|
48
|
-
exportAs: 'thanos',
|
|
49
|
-
}]
|
|
50
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.WsThanosService }, { type: undefined, decorators: [{
|
|
51
|
-
type: Inject,
|
|
52
|
-
args: [WS_THANOS_OPTIONS_TOKEN]
|
|
53
|
-
}] }, { type: i0.NgZone }]; }, propDecorators: { wsThanosComplete: [{
|
|
54
|
-
type: Output
|
|
55
|
-
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3MtdGhhbm9zLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcHVibGljL3dzLXRoYW5vcy9zcmMvbGliL3dzLXRoYW5vcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixNQUFNLEVBRU4sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBT3RELE1BQU0sT0FBTyxpQkFBaUI7SUFNNUIsWUFDbUIsZUFBd0MsRUFDeEMsYUFBOEIsRUFFOUIsYUFBOEIsRUFDOUIsTUFBYztRQUpkLG9CQUFlLEdBQWYsZUFBZSxDQUF5QjtRQUN4QyxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFFOUIsa0JBQWEsR0FBYixhQUFhLENBQWlCO1FBQzlCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFQekIscUJBQWdCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFRckUsQ0FBQztJQUVHLFFBQVEsQ0FBQyxVQUFVLEdBQUcsSUFBSTtRQUMvQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQztRQUNoRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM5RCxRQUFRLEVBQUUsR0FBRyxFQUFFO2dCQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbkIsSUFBSSxVQUFVLEVBQUU7d0JBQ2QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO3FCQUNmO3lCQUFNO3dCQUNMLHFCQUFxQjt3QkFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDO3dCQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7cUJBQzFCO29CQUNELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9CLENBQUM7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzs7OEdBeENVLGlCQUFpQiwyRUFTbEIsdUJBQXVCO2tHQVR0QixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFMN0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsUUFBUSxFQUFFLFFBQVE7aUJBQ25COzswQkFVSSxNQUFNOzJCQUFDLHVCQUF1QjtpRUFMekIsZ0JBQWdCO3NCQUR2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFdTX1RIQU5PU19PUFRJT05TX1RPS0VOIH0gZnJvbSAnLi93cy10aGFub3Mtb3B0aW9ucy50b2tlbic7XG5pbXBvcnQgdHlwZSB7IFdzVGhhbm9zT3B0aW9ucyB9IGZyb20gJy4vd3MtdGhhbm9zLm9wdGlvbnMnO1xuaW1wb3J0IHsgV3NUaGFub3NTZXJ2aWNlIH0gZnJvbSAnLi93cy10aGFub3Muc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1t3c1RoYW5vc10sIHdzLXRoYW5vcycsXG4gIGV4cG9ydEFzOiAndGhhbm9zJyxcbn0pXG5leHBvcnQgY2xhc3MgV3NUaGFub3NEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBAT3V0cHV0KClcbiAgcHJpdmF0ZSB3c1RoYW5vc0NvbXBsZXRlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB2YXBvcml6ZURvbUVsZW06IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGhhbm9zU2VydmljZTogV3NUaGFub3NTZXJ2aWNlLFxuICAgIEBJbmplY3QoV1NfVEhBTk9TX09QVElPTlNfVE9LRU4pXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aGFub3NPcHRpb25zOiBXc1RoYW5vc09wdGlvbnMsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZVxuICApIHt9XG5cbiAgcHVibGljIHZhcG9yaXplKHJlbW92ZUVsZW0gPSB0cnVlKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgZWxlbSA9IHRoaXMudmFwb3JpemVEb21FbGVtLm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnRoYW5vc1NlcnZpY2UudmFwb3JpemUoZWxlbSkuc3Vic2NyaWJlKHtcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgaWYgKHJlbW92ZUVsZW0pIHtcbiAgICAgICAgICAgIGVsZW0ucmVtb3ZlKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIG1ha2UgdmlzaWJsZSBhZ2FpblxuICAgICAgICAgICAgZWxlbS5zdHlsZS50cmFuc2l0aW9uID0gJ29wYWNpdHkgNzAwbXMnO1xuICAgICAgICAgICAgZWxlbS5zdHlsZS5vcGFjaXR5ID0gJzEnO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLndzVGhhbm9zQ29tcGxldGUuZW1pdCgpO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2Vycm9yIGVtaXR0ZWQgYnkgdmFwb3JpemUnLCBlcnJvcik7XG4gICAgICAgIHRoaXMud3NUaGFub3NDb21wbGV0ZS5lbWl0KCk7XG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMud3NUaGFub3NDb21wbGV0ZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
|