• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

atinc / ngx-tethys / d9ae709b-3c27-4b69-b125-b8b80b54f90b

pending completion
d9ae709b-3c27-4b69-b125-b8b80b54f90b

Pull #2757

circleci

mengshuicmq
fix: fix code review
Pull Request #2757: feat(color-picker): color-picker support disabled (#INFR-8645)

98 of 6315 branches covered (1.55%)

Branch coverage included in aggregate %.

1 of 1 new or added line in 1 file covered. (100.0%)

2392 of 13661 relevant lines covered (17.51%)

83.12 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/carousel/engine/carousel-fade.ts
1
import { ChangeDetectorRef, QueryList, Renderer2 } from '@angular/core';
2
import { Platform } from '@angular/cdk/platform';
3
import { Observable, Subject } from 'rxjs';
4
import { ThyCarouselComponent } from '../carousel.component';
5
import { ThyDistanceVector } from '../typings';
×
6
import { ThyCarouselItemDirective } from '../carousel-item.directive';
7
import { ThyCarouselBaseEngine } from '../engine/carousel-base';
8

×
9
export class ThyCarouselFadeEngine extends ThyCarouselBaseEngine {
×
10
    contentsEl: HTMLElement[];
×
11
    constructor(thyCarouselComponent: ThyCarouselComponent, cdr: ChangeDetectorRef, renderer: Renderer2, platform: Platform) {
×
12
        super(thyCarouselComponent, cdr, renderer, platform);
×
13
    }
14

15
    dragging(pointerVector: ThyDistanceVector, rect: DOMRect): void {
×
16
        const { x } = pointerVector;
×
17
        const { width } = rect;
×
18
        const activeIndex = this.carouselComponent!.activeIndex;
×
19
        const currentContent = this.contentsEl[activeIndex];
×
20
        this.renderer.setStyle(currentContent, 'opacity', `${1 - Math.abs(x) / width}`);
×
21
    }
×
22

×
23
    initializeCarouselContents(contents: QueryList<ThyCarouselItemDirective> | null): void {
×
24
        this.initializeContents(contents);
25
        this.contentsEl = [];
26
        contents.forEach((content, index) => {
27
            this.contentsEl.push(content.el);
×
28
            this.renderer.setStyle(content.el, 'opacity', this.carouselComponent!.activeIndex === index ? '1' : '0');
×
29
            this.renderer.setStyle(content.el, 'position', 'absolute');
×
30
            this.renderer.setStyle(content.el, 'left', '0');
×
31
            this.renderer.setStyle(content.el, `transition-property`, 'opacity');
×
32
            this.renderer.setStyle(content.el, `transition-timing-function`, 'ease');
×
33
        });
×
34
    }
×
35

×
36
    switch(to: number, from: number): Observable<void> {
37
        const switch$ = new Subject<void>();
×
38
        const currentEl = this.contentsEl[from];
×
39
        const nextEl = this.contentsEl[(to + this.length) % this.length];
×
40
        this.renderer.setStyle(currentEl, `transition-duration`, `${this.playTime}ms`);
×
41
        this.renderer.setStyle(nextEl, `transition-duration`, `${this.playTime}ms`);
42
        this.renderer.setStyle(currentEl, 'opacity', '0');
×
43
        this.renderer.setStyle(nextEl, 'opacity', '1');
44
        setTimeout(() => {
45
            switch$.next();
46
        }, 0);
47
        setTimeout(() => {
48
            this.renderer.setStyle(currentEl, `transition-duration`, `0s`);
49
            this.renderer.setStyle(nextEl, `transition-duration`, `0s`);
50
            switch$.complete();
51
        }, this.playTime);
52
        return switch$.asObservable();
53
    }
54

55
    correctionOffset(): void {}
56
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc