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

atinc / ngx-tethys / 68ef226c-f83e-44c1-b8ed-e420a83c5d84

28 May 2025 10:31AM UTC coverage: 10.352% (-80.0%) from 90.316%
68ef226c-f83e-44c1-b8ed-e420a83c5d84

Pull #3460

circleci

pubuzhixing8
chore: xxx
Pull Request #3460: refactor(icon): migrate signal input #TINFR-1476

132 of 6823 branches covered (1.93%)

Branch coverage included in aggregate %.

10 of 14 new or added lines in 1 file covered. (71.43%)

11648 existing lines in 344 files now uncovered.

2078 of 14525 relevant lines covered (14.31%)

6.69 hits per line

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

18.75
/src/menu/item/menu-item.component.ts
1
import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, OnInit, Renderer2, inject, input, viewChild } from '@angular/core';
2
import { ThyIcon } from 'ngx-tethys/icon';
3

4
/**
5
 * 菜单项组件
6
 * @name thy-menu-item,[thy-menu-item],[thyMenuItem]
7
 * @order 10
8
 */
9
@Component({
10
    selector: 'thy-menu-item,[thy-menu-item],[thyMenuItem]',
11
    templateUrl: './menu-item.component.html',
1✔
12
    changeDetection: ChangeDetectionStrategy.OnPush,
UNCOV
13
    host: {
×
UNCOV
14
        class: 'thy-menu-item'
×
UNCOV
15
    },
×
16
    imports: [ThyIcon]
17
})
18
export class ThyMenuItem implements OnInit, AfterViewInit {
UNCOV
19
    private renderer = inject(Renderer2);
×
20

21
    readonly content = viewChild('content', { read: ElementRef });
UNCOV
22
    /**
×
UNCOV
23
     * 菜单项的图标
×
UNCOV
24
     */
×
UNCOV
25
    readonly thyIcon = input<string>();
×
UNCOV
26

×
UNCOV
27
    ngOnInit(): void {}
×
UNCOV
28

×
29
    ngAfterViewInit() {
30
        this.wrapSpanForText(this.content().nativeElement.childNodes);
31
    }
32

1✔
33
    private wrapSpanForText(nodes: NodeList): void {
34
        nodes.forEach(node => {
35
            if (node.nodeName === '#text') {
36
                const span = this.renderer.createElement('span');
37
                const parent = this.renderer.parentNode(node);
1✔
38
                this.renderer.addClass(span, 'thy-menu-item-name');
39
                this.renderer.insertBefore(parent, span, node);
40
                this.renderer.appendChild(span, node);
41
            }
42
        });
43
    }
44
}
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