|
1 | | -import { ChangeDetectorRef, Component, inject } from '@angular/core'; |
2 | | -import { IBaseChipEventArgs, IChipsAreaReorderEventArgs, IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxPrefixDirective } from 'igniteui-angular'; |
3 | | - |
| 1 | +import { ChangeDetectorRef, Component, inject, OnInit } from '@angular/core'; |
| 2 | +import { facebook, linkedin } from '@igniteui/material-icons-extended'; |
| 3 | +import { |
| 4 | + IgxChipsAreaComponent, |
| 5 | + IgxChipComponent, |
| 6 | + IgxIconComponent, |
| 7 | + IgxPrefixDirective, |
| 8 | + IgxIconService |
| 9 | +} from 'igniteui-angular'; |
| 10 | +import { NgClass } from '@angular/common'; |
4 | 11 |
|
5 | 12 | @Component({ |
6 | | - selector: 'app-chip', |
7 | | - styleUrls: ['./chip-styling.component.scss'], |
8 | | - templateUrl: './chip-styling.component.html', |
9 | | - imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxPrefixDirective] |
| 13 | + selector: 'app-chip', |
| 14 | + styleUrls: ['./chip-styling.component.scss'], |
| 15 | + templateUrl: './chip-styling.component.html', |
| 16 | + imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxPrefixDirective, NgClass] |
10 | 17 | }) |
11 | 18 |
|
12 | | -export class ChipStylingSampleComponent { |
13 | | - changeDetectionRef = inject(ChangeDetectorRef); |
14 | | - |
15 | | - public chipList = [ |
16 | | - { |
17 | | - text: 'Country', |
18 | | - id: '1', |
19 | | - icon: 'place' |
20 | | - }, |
21 | | - { |
22 | | - text: 'City', |
23 | | - id: '2', |
24 | | - icon: 'location_city' |
25 | | - }, |
26 | | - { |
27 | | - text: 'Town', |
28 | | - id: '3', |
29 | | - icon: 'store' |
30 | | - }, |
31 | | - { |
32 | | - text: 'First Name', |
33 | | - id: '4', |
34 | | - icon: 'person_pin' |
35 | | - } |
36 | | - ]; |
37 | | - |
38 | | - |
39 | | - public chipRemoved(event: IBaseChipEventArgs) { |
40 | | - this.chipList = this.chipList.filter((item) => item.id !== event.owner.id); |
41 | | - this.changeDetectionRef.detectChanges(); |
42 | | - } |
| 19 | +export class ChipStylingSampleComponent implements OnInit { |
| 20 | + changeDetectionRef = inject(ChangeDetectorRef); |
| 21 | + private iconService = inject(IgxIconService) |
| 22 | + public ngOnInit() { |
| 23 | + this.iconService.addSvgIconFromText('x', '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-twitter-x" viewBox="0 0 16 16"><path d="M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z"/></svg>'); |
| 24 | + this.iconService.addSvgIconFromText('youtube', '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="currentColor" class="bi bi-youtube" viewBox="0 0 16 13"> <path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z"/> </svg>'); |
| 25 | + this.iconService.addSvgIconFromText(facebook.name, facebook.value); |
| 26 | + this.iconService.addSvgIconFromText(linkedin.name, linkedin.value); |
| 27 | + } |
43 | 28 |
|
44 | | - public chipsOrderChanged(event: IChipsAreaReorderEventArgs) { |
45 | | - const newChipList = []; |
46 | | - for (const chip of event.chipsArray) { |
47 | | - const chipItem = this.chipList.filter((item) => item.id === chip.id)[0]; |
48 | | - newChipList.push(chipItem); |
49 | | - } |
50 | | - this.chipList = newChipList; |
| 29 | + public chipList = [ |
| 30 | + { |
| 31 | + text: 'X.com', |
| 32 | + class: 'xcom', |
| 33 | + icon: 'x' |
| 34 | + }, |
| 35 | + { |
| 36 | + text: 'Youtube', |
| 37 | + class: 'youtube', |
| 38 | + icon: 'youtube' |
| 39 | + }, |
| 40 | + { |
| 41 | + text: 'Facebook', |
| 42 | + class: 'facebook', |
| 43 | + icon: 'facebook' |
| 44 | + }, |
| 45 | + { |
| 46 | + text: 'LinkedIn', |
| 47 | + class: 'linkedin', |
| 48 | + icon: 'linkedin' |
51 | 49 | } |
| 50 | + ]; |
52 | 51 | } |
0 commit comments