ngx-histaff-alpha 0.2.5 → 0.2.6
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/esm2022/lib/app/libraries/animated-text/animated-text/animated-text.component.mjs +24 -22
- package/fesm2022/ngx-histaff-alpha.mjs +23 -21
- package/fesm2022/ngx-histaff-alpha.mjs.map +1 -1
- package/lib/app/libraries/animated-text/animated-text/animated-text.component.d.ts +0 -1
- package/package.json +1 -1
|
@@ -2,8 +2,6 @@ import { Component, ViewChild } from '@angular/core';
|
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../animated-text.service";
|
|
5
|
-
const d3_select = d3.select;
|
|
6
|
-
const d3_shuffle = d3.shuffle;
|
|
7
5
|
export class AnimatedTextComponent {
|
|
8
6
|
constructor(animatedTextService) {
|
|
9
7
|
this.animatedTextService = animatedTextService;
|
|
@@ -21,12 +19,15 @@ export class AnimatedTextComponent {
|
|
|
21
19
|
}));
|
|
22
20
|
}
|
|
23
21
|
ngAfterViewInit() {
|
|
22
|
+
/*
|
|
24
23
|
this.svg = d3_select(this.letters.nativeElement).append('svg')
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
.attr('width', this.WIDTH)
|
|
25
|
+
.attr('height', this.HEIGHT)
|
|
26
|
+
.append('g')
|
|
27
|
+
.attr('transform', 'translate(0,' + (this.HEIGHT / 2) + ')');
|
|
28
|
+
|
|
29
29
|
this.loop();
|
|
30
|
+
*/
|
|
30
31
|
}
|
|
31
32
|
update(data) {
|
|
32
33
|
const text = this.svg.selectAll('text').data(data, (d) => d.index);
|
|
@@ -40,25 +41,26 @@ export class AnimatedTextComponent {
|
|
|
40
41
|
.transition().duration(1000)
|
|
41
42
|
.attr('x', (d, _) => this.LETTER_WIDTH * d.pos);
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
/*
|
|
45
|
+
loop(): void {
|
|
46
|
+
if (!!!this.allowLoop) return;
|
|
47
|
+
this.update(this.data);
|
|
48
|
+
setTimeout(() => {
|
|
49
|
+
this.data = d3_shuffle(this.data).map((d: ILetterItem, i: number) => {
|
|
50
|
+
d.pos = i;
|
|
51
|
+
return d;
|
|
52
|
+
});
|
|
46
53
|
this.update(this.data);
|
|
47
54
|
setTimeout(() => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
setTimeout(() => {
|
|
54
|
-
this.data = this.data.map((d, _) => {
|
|
55
|
-
d.pos = d.index;
|
|
56
|
-
return d;
|
|
57
|
-
});
|
|
58
|
-
this.loop();
|
|
59
|
-
}, 2000);
|
|
55
|
+
this.data = this.data.map((d: ILetterItem, _: number) => {
|
|
56
|
+
d.pos = d.index;
|
|
57
|
+
return d;
|
|
58
|
+
});
|
|
59
|
+
this.loop();
|
|
60
60
|
}, 2000);
|
|
61
|
+
}, 2000);
|
|
61
62
|
}
|
|
63
|
+
*/
|
|
62
64
|
ngOnDestroy() {
|
|
63
65
|
this.allowLoop = false;
|
|
64
66
|
this.subscriptions.map(x => x?.unsubscribe());
|
|
@@ -73,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
73
75
|
type: ViewChild,
|
|
74
76
|
args: ['letters']
|
|
75
77
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0ZWQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvYW5pbWF0ZWQtdGV4dC9hbmltYXRlZC10ZXh0L2FuaW1hdGVkLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2FuaW1hdGVkLXRleHQvYW5pbWF0ZWQtdGV4dC9hbmltYXRlZC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdDLFNBQVMsRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFHMUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFvQi9DLE1BQU0sT0FBTyxxQkFBcUI7SUFlaEMsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFYNUQsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBR25DLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFFMUIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFFMUIsV0FBTSxHQUFXLEVBQUUsQ0FBQztJQUk0QyxDQUFDO0lBRWpFLFFBQVE7UUFFTixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDakQsTUFBTSxPQUFPLEdBQWtCLEVBQUUsQ0FBQztZQUNsQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUM5RSxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztZQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDcEQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUVKLENBQUM7SUFFRCxlQUFlO1FBQ2I7Ozs7Ozs7O1VBUUU7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQW1CO1FBQ3hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQzthQUN4QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7YUFDNUYsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQWMsRUFBRSxDQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQzthQUNuRSxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQzthQUMxQixLQUFLLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQzthQUNqQyxJQUFJLENBQUMsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7YUFDbEMsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7YUFDM0IsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQWMsRUFBRSxDQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQW1CRTtJQUVGLFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7OEdBL0VVLHFCQUFxQjtrR0FBckIscUJBQXFCLGlMQ3ZCbEMsMEJBQ0EseUREa0JZLFlBQVk7OzJGQUlYLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDO3dGQU1ELE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQW5pbWF0ZWRUZXh0U2VydmljZSB9IGZyb20gJy4uL2FuaW1hdGVkLXRleHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuLyogdXNpbmcgZDMgd2l0aCBTU1Igd2lsbCBjYXVzZSBhbiBlcnJvciAqL1xyXG4vLyBkZWNsYXJlIGxldCBkMzogYW55O1xyXG4vLyBjb25zdCBkM19zZWxlY3QgPSBkMy5zZWxlY3Q7XHJcbi8vIGNvbnN0IGQzX3NodWZmbGUgPSBkMy5zaHVmZmxlO1xyXG5cclxuaW50ZXJmYWNlIElMZXR0ZXJJdGVtIHtcclxuICBsZXR0ZXI6IHN0cmluZztcclxuICBwb3M6IG51bWJlcjtcclxuICBpbmRleDogbnVtYmVyO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1hbmltYXRlZC10ZXh0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hbmltYXRlZC10ZXh0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hbmltYXRlZC10ZXh0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEFuaW1hdGVkVGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbGV0dGVycycpIGxldHRlcnMhOiBFbGVtZW50UmVmO1xyXG5cclxuICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBkYXRhITogSUxldHRlckl0ZW1bXTtcclxuICBhbGxvd0xvb3A6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBMRVRURVJfV0lEVEg6IG51bWJlciA9IDIyO1xyXG4gIFdJRFRIITogbnVtYmVyO1xyXG4gIEhFSUdIVDogbnVtYmVyID0gODA7XHJcblxyXG4gIHN2ZyE6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhbmltYXRlZFRleHRTZXJ2aWNlOiBBbmltYXRlZFRleHRTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgIHRoaXMuYW5pbWF0ZWRUZXh0U2VydmljZS50ZXh0JC5zdWJzY3JpYmUobmV3VGV4dCA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YTogSUxldHRlckl0ZW1bXSA9IFtdO1xyXG4gICAgICAgIG5ld1RleHQuc3BsaXQoJycpLm1hcCgoeCwgaSkgPT4gbmV3RGF0YS5wdXNoKHsgbGV0dGVyOiB4LCBwb3M6IGksIGluZGV4OiBpIH0pKVxyXG4gICAgICAgIHRoaXMuZGF0YSA9IG5ld0RhdGE7XHJcbiAgICAgICAgdGhpcy5XSURUSCA9IHRoaXMuTEVUVEVSX1dJRFRIICogdGhpcy5kYXRhLmxlbmd0aDtcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgLypcclxuICAgIHRoaXMuc3ZnID0gZDNfc2VsZWN0KHRoaXMubGV0dGVycy5uYXRpdmVFbGVtZW50KS5hcHBlbmQoJ3N2ZycpXHJcbiAgICAgIC5hdHRyKCd3aWR0aCcsIHRoaXMuV0lEVEgpXHJcbiAgICAgIC5hdHRyKCdoZWlnaHQnLCB0aGlzLkhFSUdIVClcclxuICAgICAgLmFwcGVuZCgnZycpXHJcbiAgICAgIC5hdHRyKCd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlKDAsJyArICh0aGlzLkhFSUdIVCAvIDIpICsgJyknKTtcclxuXHJcbiAgICB0aGlzLmxvb3AoKTtcclxuICAgICovXHJcbiAgfVxyXG5cclxuICB1cGRhdGUoZGF0YTogSUxldHRlckl0ZW1bXSk6IHZvaWQge1xyXG4gICAgY29uc3QgdGV4dCA9IHRoaXMuc3ZnLnNlbGVjdEFsbCgndGV4dCcpLmRhdGEoZGF0YSwgKGQ6IElMZXR0ZXJJdGVtKSA9PiBkLmluZGV4KTtcclxuICAgIHRleHQuZW50ZXIoKS5hcHBlbmQoJ3RleHQnKVxyXG4gICAgICAuYXR0cignZmlsbCcsIChkOiBJTGV0dGVySXRlbSkgPT4gWychJywgJz8nLCAnLiddLmluY2x1ZGVzKGQubGV0dGVyKSAgPyAndG9tYXRvJyA6ICcjRkZGRkZGJylcclxuICAgICAgLmF0dHIoJ3gnLCAoZDogSUxldHRlckl0ZW0sIF86IG51bWJlcikgPT4gdGhpcy5MRVRURVJfV0lEVEggKiBkLnBvcylcclxuICAgICAgLnN0eWxlKCdmb250LXNpemUnLCAnNDBweCcpXHJcbiAgICAgIC5zdHlsZSgnZm9udC1mYW1pbHknLCAnbW9ub3NwYWNlJylcclxuICAgICAgLnRleHQoKGQ6IElMZXR0ZXJJdGVtKSA9PiBkLmxldHRlcilcclxuICAgICAgLm1lcmdlKHRleHQpXHJcbiAgICAgIC50cmFuc2l0aW9uKCkuZHVyYXRpb24oMTAwMClcclxuICAgICAgLmF0dHIoJ3gnLCAoZDogSUxldHRlckl0ZW0sIF86IG51bWJlcikgPT4gdGhpcy5MRVRURVJfV0lEVEggKiBkLnBvcyk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIGxvb3AoKTogdm9pZCB7XHJcbiAgICBpZiAoISEhdGhpcy5hbGxvd0xvb3ApIHJldHVybjtcclxuICAgIHRoaXMudXBkYXRlKHRoaXMuZGF0YSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5kYXRhID0gZDNfc2h1ZmZsZSh0aGlzLmRhdGEpLm1hcCgoZDogSUxldHRlckl0ZW0sIGk6IG51bWJlcikgPT4ge1xyXG4gICAgICAgIGQucG9zID0gaTtcclxuICAgICAgICByZXR1cm4gZDtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMudXBkYXRlKHRoaXMuZGF0YSk7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5tYXAoKGQ6IElMZXR0ZXJJdGVtLCBfOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgIGQucG9zID0gZC5pbmRleDtcclxuICAgICAgICAgIHJldHVybiBkO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubG9vcCgpO1xyXG4gICAgICB9LCAyMDAwKTtcclxuICAgIH0sIDIwMDApO1xyXG4gIH1cclxuICAqL1xyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuYWxsb3dMb29wID0gZmFsc2U7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKHggPT4geD8udW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2ICNsZXR0ZXJzPjwvZGl2PlxyXG4iXX0=
|
|
@@ -6884,8 +6884,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
6884
6884
|
}]
|
|
6885
6885
|
}], ctorParameters: () => [] });
|
|
6886
6886
|
|
|
6887
|
-
const d3_select = d3.select;
|
|
6888
|
-
const d3_shuffle = d3.shuffle;
|
|
6889
6887
|
class AnimatedTextComponent {
|
|
6890
6888
|
constructor(animatedTextService) {
|
|
6891
6889
|
this.animatedTextService = animatedTextService;
|
|
@@ -6903,12 +6901,15 @@ class AnimatedTextComponent {
|
|
|
6903
6901
|
}));
|
|
6904
6902
|
}
|
|
6905
6903
|
ngAfterViewInit() {
|
|
6904
|
+
/*
|
|
6906
6905
|
this.svg = d3_select(this.letters.nativeElement).append('svg')
|
|
6907
|
-
|
|
6908
|
-
|
|
6909
|
-
|
|
6910
|
-
|
|
6906
|
+
.attr('width', this.WIDTH)
|
|
6907
|
+
.attr('height', this.HEIGHT)
|
|
6908
|
+
.append('g')
|
|
6909
|
+
.attr('transform', 'translate(0,' + (this.HEIGHT / 2) + ')');
|
|
6910
|
+
|
|
6911
6911
|
this.loop();
|
|
6912
|
+
*/
|
|
6912
6913
|
}
|
|
6913
6914
|
update(data) {
|
|
6914
6915
|
const text = this.svg.selectAll('text').data(data, (d) => d.index);
|
|
@@ -6922,25 +6923,26 @@ class AnimatedTextComponent {
|
|
|
6922
6923
|
.transition().duration(1000)
|
|
6923
6924
|
.attr('x', (d, _) => this.LETTER_WIDTH * d.pos);
|
|
6924
6925
|
}
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6926
|
+
/*
|
|
6927
|
+
loop(): void {
|
|
6928
|
+
if (!!!this.allowLoop) return;
|
|
6929
|
+
this.update(this.data);
|
|
6930
|
+
setTimeout(() => {
|
|
6931
|
+
this.data = d3_shuffle(this.data).map((d: ILetterItem, i: number) => {
|
|
6932
|
+
d.pos = i;
|
|
6933
|
+
return d;
|
|
6934
|
+
});
|
|
6928
6935
|
this.update(this.data);
|
|
6929
6936
|
setTimeout(() => {
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
setTimeout(() => {
|
|
6936
|
-
this.data = this.data.map((d, _) => {
|
|
6937
|
-
d.pos = d.index;
|
|
6938
|
-
return d;
|
|
6939
|
-
});
|
|
6940
|
-
this.loop();
|
|
6941
|
-
}, 2000);
|
|
6937
|
+
this.data = this.data.map((d: ILetterItem, _: number) => {
|
|
6938
|
+
d.pos = d.index;
|
|
6939
|
+
return d;
|
|
6940
|
+
});
|
|
6941
|
+
this.loop();
|
|
6942
6942
|
}, 2000);
|
|
6943
|
+
}, 2000);
|
|
6943
6944
|
}
|
|
6945
|
+
*/
|
|
6944
6946
|
ngOnDestroy() {
|
|
6945
6947
|
this.allowLoop = false;
|
|
6946
6948
|
this.subscriptions.map(x => x?.unsubscribe());
|