@progress/kendo-angular-icons 21.4.1 → 22.0.0-develop.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/common/icon-base.d.ts +1 -1
- package/fesm2022/progress-kendo-angular-icons.mjs +33 -33
- package/package.json +8 -16
- package/esm2022/common/icon-base.mjs +0 -96
- package/esm2022/common/icon-settings.mjs +0 -20
- package/esm2022/common/icon-settings.service.mjs +0 -59
- package/esm2022/common/icons.service.mjs +0 -96
- package/esm2022/common/models/flip.mjs +0 -5
- package/esm2022/common/models/icon-settings.mjs +0 -5
- package/esm2022/common/models/icon-type.mjs +0 -5
- package/esm2022/common/models/index.mjs +0 -6
- package/esm2022/common/models/size.mjs +0 -5
- package/esm2022/common/models/theme-color.mjs +0 -5
- package/esm2022/common/util.mjs +0 -8
- package/esm2022/directives.mjs +0 -67
- package/esm2022/icon/icon.component.mjs +0 -68
- package/esm2022/icon-wrapper/icon-wrapper.component.mjs +0 -150
- package/esm2022/icon.module.mjs +0 -38
- package/esm2022/icons.module.mjs +0 -46
- package/esm2022/index.mjs +0 -14
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/progress-kendo-angular-icons.mjs +0 -8
- package/esm2022/svg-icon/svg-icon.component.mjs +0 -122
- package/esm2022/svg-icon.module.mjs +0 -38
package/common/icon-base.d.ts
CHANGED
|
@@ -33,5 +33,5 @@ export declare abstract class IconBaseDirective {
|
|
|
33
33
|
_size: IconSize;
|
|
34
34
|
constructor(element: ElementRef, renderer: Renderer2);
|
|
35
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<IconBaseDirective, never>;
|
|
36
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<IconBaseDirective, "[kendoIconBase]", never, { "flip": { "alias": "flip"; "required": false; }; "themeColor": { "alias": "themeColor"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never,
|
|
36
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IconBaseDirective, "[kendoIconBase]", never, { "flip": { "alias": "flip"; "required": false; }; "themeColor": { "alias": "themeColor"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
37
37
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import {
|
|
6
|
+
import { Input, HostBinding, Directive, Component, isDevMode, ChangeDetectionStrategy, Injectable, InjectionToken, Optional, Inject, NgModule } from '@angular/core';
|
|
7
7
|
import { isDocumentAvailable, areObjectsEqual } from '@progress/kendo-angular-common';
|
|
8
8
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
9
9
|
import * as i1_1 from '@angular/platform-browser';
|
|
@@ -19,8 +19,8 @@ const packageMetadata = {
|
|
|
19
19
|
productName: 'Kendo UI for Angular',
|
|
20
20
|
productCode: 'KENDOUIANGULAR',
|
|
21
21
|
productCodes: ['KENDOUIANGULAR'],
|
|
22
|
-
publishDate:
|
|
23
|
-
version: '
|
|
22
|
+
publishDate: 1768395762,
|
|
23
|
+
version: '22.0.0-develop.1',
|
|
24
24
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
25
25
|
};
|
|
26
26
|
|
|
@@ -91,10 +91,10 @@ class IconBaseDirective {
|
|
|
91
91
|
this.renderer = renderer;
|
|
92
92
|
validatePackage(packageMetadata);
|
|
93
93
|
}
|
|
94
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
95
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
94
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconBaseDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
95
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: IconBaseDirective, isStandalone: true, selector: "[kendoIconBase]", inputs: { flip: "flip", themeColor: "themeColor", size: "size" }, host: { properties: { "class.k-flip-h": "this.horizontalFlip", "class.k-flip-v": "this.verticalFlip" } }, ngImport: i0 });
|
|
96
96
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconBaseDirective, decorators: [{
|
|
98
98
|
type: Directive,
|
|
99
99
|
args: [{
|
|
100
100
|
selector: '[kendoIconBase]'
|
|
@@ -150,10 +150,10 @@ class IconComponent extends IconBaseDirective {
|
|
|
150
150
|
this.element = element;
|
|
151
151
|
this.renderer = renderer;
|
|
152
152
|
}
|
|
153
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
154
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
153
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
154
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: IconComponent, isStandalone: true, selector: "kendo-icon", inputs: { name: "name" }, host: { properties: { "class.k-icon": "this.hostClass", "class.k-font-icon": "this.hostClass", "attr.aria-hidden": "this.hostAriaHidden" } }, exportAs: ["kendoIcon"], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
155
155
|
}
|
|
156
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconComponent, decorators: [{
|
|
157
157
|
type: Component,
|
|
158
158
|
args: [{
|
|
159
159
|
exportAs: 'kendoIcon',
|
|
@@ -251,15 +251,15 @@ class SVGIconComponent extends IconBaseDirective {
|
|
|
251
251
|
`);
|
|
252
252
|
}
|
|
253
253
|
}
|
|
254
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
255
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
254
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SVGIconComponent, deps: [{ token: i1_1.DomSanitizer }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
255
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: SVGIconComponent, isStandalone: true, selector: "kendo-svg-icon, kendo-svgicon", inputs: { icon: "icon" }, host: { properties: { "class.k-svg-icon": "this.hostClass", "class.k-icon": "this.hostClass", "attr.aria-hidden": "this.hostAriaHidden" } }, exportAs: ["kendoSVGIcon"], usesInheritance: true, ngImport: i0, template: `
|
|
256
256
|
@if (visible) {
|
|
257
257
|
<svg [style.pointerEvents]="'none'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
258
258
|
[attr.viewBox]="icon.viewBox" [innerHTML]="content">
|
|
259
259
|
</svg>
|
|
260
260
|
}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
261
261
|
}
|
|
262
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
262
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SVGIconComponent, decorators: [{
|
|
263
263
|
type: Component,
|
|
264
264
|
args: [{
|
|
265
265
|
exportAs: 'kendoSVGIcon',
|
|
@@ -338,10 +338,10 @@ class IconSettingsService {
|
|
|
338
338
|
getCustomFontIconClass(_key) {
|
|
339
339
|
return null;
|
|
340
340
|
}
|
|
341
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
342
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
341
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
342
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconSettingsService });
|
|
343
343
|
}
|
|
344
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
344
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconSettingsService, decorators: [{
|
|
345
345
|
type: Injectable
|
|
346
346
|
}] });
|
|
347
347
|
|
|
@@ -428,10 +428,10 @@ class IconsService {
|
|
|
428
428
|
const customClass = this.iconSettingsService && this.iconSettingsService.getCustomFontIconClass(key);
|
|
429
429
|
return customClass;
|
|
430
430
|
}
|
|
431
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
432
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
431
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsService, deps: [{ token: ICON_SETTINGS, optional: true }, { token: IconSettingsService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
432
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsService, providedIn: 'root' });
|
|
433
433
|
}
|
|
434
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
434
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsService, decorators: [{
|
|
435
435
|
type: Injectable,
|
|
436
436
|
args: [{
|
|
437
437
|
providedIn: 'root'
|
|
@@ -517,8 +517,8 @@ https://www.telerik.com/design-system/docs/foundation/iconography/icon-list/
|
|
|
517
517
|
ngOnDestroy() {
|
|
518
518
|
this.subs.unsubscribe();
|
|
519
519
|
}
|
|
520
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
521
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
520
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconWrapperComponent, deps: [{ token: IconsService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
521
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: IconWrapperComponent, isStandalone: true, selector: "kendo-icon-wrapper", inputs: { name: "name", svgIcon: "svgIcon", innerCssClass: "innerCssClass", customFontClass: "customFontClass", size: "size" }, host: { properties: { "class.k-icon-wrapper-host": "this.hostClass" } }, exportAs: ["kendoIconWrapper"], ngImport: i0, template: `
|
|
522
522
|
@if (iconSettings?.type === 'svg' && hasSvgIcon) {
|
|
523
523
|
<kendo-svgicon
|
|
524
524
|
[ngClass]="innerCssClass"
|
|
@@ -540,7 +540,7 @@ https://www.telerik.com/design-system/docs/foundation/iconography/icon-list/
|
|
|
540
540
|
}
|
|
541
541
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "kendo-icon", inputs: ["name"], exportAs: ["kendoIcon"] }, { kind: "component", type: SVGIconComponent, selector: "kendo-svg-icon, kendo-svgicon", inputs: ["icon"], exportAs: ["kendoSVGIcon"] }] });
|
|
542
542
|
}
|
|
543
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
543
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconWrapperComponent, decorators: [{
|
|
544
544
|
type: Component,
|
|
545
545
|
args: [{
|
|
546
546
|
exportAs: 'kendoIconWrapper',
|
|
@@ -604,11 +604,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
604
604
|
* ```
|
|
605
605
|
*/
|
|
606
606
|
class IconModule {
|
|
607
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
608
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
609
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
607
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
608
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: IconModule, imports: [IconComponent], exports: [IconComponent] });
|
|
609
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconModule });
|
|
610
610
|
}
|
|
611
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
611
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconModule, decorators: [{
|
|
612
612
|
type: NgModule,
|
|
613
613
|
args: [{
|
|
614
614
|
exports: [IconComponent],
|
|
@@ -636,11 +636,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
636
636
|
* ```
|
|
637
637
|
*/
|
|
638
638
|
class SVGIconModule {
|
|
639
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
640
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
641
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
639
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SVGIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
640
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: SVGIconModule, imports: [SVGIconComponent], exports: [SVGIconComponent] });
|
|
641
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SVGIconModule });
|
|
642
642
|
}
|
|
643
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
643
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SVGIconModule, decorators: [{
|
|
644
644
|
type: NgModule,
|
|
645
645
|
args: [{
|
|
646
646
|
exports: [SVGIconComponent],
|
|
@@ -730,11 +730,11 @@ const KENDO_ICONS = [
|
|
|
730
730
|
* ```
|
|
731
731
|
*/
|
|
732
732
|
class IconsModule {
|
|
733
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
734
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
735
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
733
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
734
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: IconsModule, imports: [IconComponent, SVGIconComponent], exports: [IconComponent, SVGIconComponent] });
|
|
735
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsModule, providers: [IconsService] });
|
|
736
736
|
}
|
|
737
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
737
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: IconsModule, decorators: [{
|
|
738
738
|
type: NgModule,
|
|
739
739
|
args: [{
|
|
740
740
|
imports: [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-icons",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "22.0.0-develop.1",
|
|
4
4
|
"description": "Kendo UI Angular component starter template",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -13,27 +13,21 @@
|
|
|
13
13
|
"Kendo UI"
|
|
14
14
|
],
|
|
15
15
|
"@progress": {
|
|
16
|
-
"friendlyName": "Icon"
|
|
17
|
-
"package": {
|
|
18
|
-
"productName": "Kendo UI for Angular",
|
|
19
|
-
"productCode": "KENDOUIANGULAR",
|
|
20
|
-
"publishDate": 1768392988,
|
|
21
|
-
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
22
|
-
}
|
|
16
|
+
"friendlyName": "Icon"
|
|
23
17
|
},
|
|
24
18
|
"peerDependencies": {
|
|
25
|
-
"@angular/animations": "
|
|
26
|
-
"@angular/common": "
|
|
27
|
-
"@angular/core": "
|
|
28
|
-
"@angular/platform-browser": "
|
|
19
|
+
"@angular/animations": "19 - 21",
|
|
20
|
+
"@angular/common": "19 - 21",
|
|
21
|
+
"@angular/core": "19 - 21",
|
|
22
|
+
"@angular/platform-browser": "19 - 21",
|
|
29
23
|
"@progress/kendo-licensing": "^1.7.0",
|
|
30
24
|
"@progress/kendo-svg-icons": "^4.0.0",
|
|
31
|
-
"@progress/kendo-angular-common": "
|
|
25
|
+
"@progress/kendo-angular-common": "22.0.0-develop.1",
|
|
32
26
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
33
27
|
},
|
|
34
28
|
"dependencies": {
|
|
35
29
|
"tslib": "^2.3.1",
|
|
36
|
-
"@progress/kendo-angular-schematics": "
|
|
30
|
+
"@progress/kendo-angular-schematics": "22.0.0-develop.1"
|
|
37
31
|
},
|
|
38
32
|
"schematics": "./schematics/collection.json",
|
|
39
33
|
"module": "fesm2022/progress-kendo-angular-icons.mjs",
|
|
@@ -44,8 +38,6 @@
|
|
|
44
38
|
},
|
|
45
39
|
".": {
|
|
46
40
|
"types": "./index.d.ts",
|
|
47
|
-
"esm2022": "./esm2022/progress-kendo-angular-icons.mjs",
|
|
48
|
-
"esm": "./esm2022/progress-kendo-angular-icons.mjs",
|
|
49
41
|
"default": "./fesm2022/progress-kendo-angular-icons.mjs"
|
|
50
42
|
}
|
|
51
43
|
},
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ElementRef, Input, Renderer2, HostBinding, Directive } from '@angular/core';
|
|
6
|
-
import { validatePackage } from '@progress/kendo-licensing';
|
|
7
|
-
import { packageMetadata } from '../package-metadata';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
const sizeClasses = {
|
|
10
|
-
'default': 'k-icon',
|
|
11
|
-
'xsmall': 'k-icon-xs',
|
|
12
|
-
'small': 'k-icon-sm',
|
|
13
|
-
'medium': 'k-icon-md',
|
|
14
|
-
'large': 'k-icon-lg',
|
|
15
|
-
'xlarge': 'k-icon-xl',
|
|
16
|
-
'xxlarge': 'k-icon-xxl',
|
|
17
|
-
'xxxlarge': 'k-icon-xxxl'
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* @hidden
|
|
21
|
-
*/
|
|
22
|
-
export class IconBaseDirective {
|
|
23
|
-
element;
|
|
24
|
-
renderer;
|
|
25
|
-
get horizontalFlip() {
|
|
26
|
-
return this.flip === 'horizontal' || this.flip === 'both';
|
|
27
|
-
}
|
|
28
|
-
get verticalFlip() {
|
|
29
|
-
return this.flip === 'vertical' || this.flip === 'both';
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Flips the icon horizontally, vertically, or in both directions.
|
|
33
|
-
*/
|
|
34
|
-
flip;
|
|
35
|
-
/**
|
|
36
|
-
* Sets the `IconThemeColor` for the icon. Use this property to apply a theme color.
|
|
37
|
-
*/
|
|
38
|
-
set themeColor(themeColor) {
|
|
39
|
-
const element = this.element.nativeElement;
|
|
40
|
-
if (this._themeColor) {
|
|
41
|
-
this.renderer.removeClass(element, `!k-color-${this._themeColor}`);
|
|
42
|
-
}
|
|
43
|
-
this._themeColor = themeColor;
|
|
44
|
-
// needed to ensure the theme color will be always applied; e.g. the class .k-button-icon, specific
|
|
45
|
-
// for icon buttons applies "color: inherit" which overwrites the theme color
|
|
46
|
-
if (themeColor) {
|
|
47
|
-
this.renderer.addClass(element, `!k-color-${themeColor}`);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
get themeColor() {
|
|
51
|
-
return this._themeColor;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Sets the `IconSize` for the icon. Use this property to change the icon size.
|
|
55
|
-
*/
|
|
56
|
-
set size(size) {
|
|
57
|
-
const currentClass = sizeClasses[this.size];
|
|
58
|
-
const newClass = sizeClasses[size];
|
|
59
|
-
const element = this.element.nativeElement;
|
|
60
|
-
this.renderer.removeClass(element, currentClass);
|
|
61
|
-
if (size && size !== 'default') {
|
|
62
|
-
this.renderer.addClass(element, newClass);
|
|
63
|
-
}
|
|
64
|
-
this._size = size;
|
|
65
|
-
}
|
|
66
|
-
get size() {
|
|
67
|
-
return this._size;
|
|
68
|
-
}
|
|
69
|
-
_themeColor;
|
|
70
|
-
_size;
|
|
71
|
-
constructor(element, renderer) {
|
|
72
|
-
this.element = element;
|
|
73
|
-
this.renderer = renderer;
|
|
74
|
-
validatePackage(packageMetadata);
|
|
75
|
-
}
|
|
76
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconBaseDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
77
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: IconBaseDirective, selector: "[kendoIconBase]", inputs: { flip: "flip", themeColor: "themeColor", size: "size" }, host: { properties: { "class.k-flip-h": "this.horizontalFlip", "class.k-flip-v": "this.verticalFlip" } }, ngImport: i0 });
|
|
78
|
-
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconBaseDirective, decorators: [{
|
|
80
|
-
type: Directive,
|
|
81
|
-
args: [{
|
|
82
|
-
selector: '[kendoIconBase]'
|
|
83
|
-
}]
|
|
84
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { horizontalFlip: [{
|
|
85
|
-
type: HostBinding,
|
|
86
|
-
args: ['class.k-flip-h']
|
|
87
|
-
}], verticalFlip: [{
|
|
88
|
-
type: HostBinding,
|
|
89
|
-
args: ['class.k-flip-v']
|
|
90
|
-
}], flip: [{
|
|
91
|
-
type: Input
|
|
92
|
-
}], themeColor: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], size: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}] } });
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { InjectionToken } from '@angular/core';
|
|
6
|
-
/**
|
|
7
|
-
* Represents the token for the `IconSettings` of Kendo UI for Angular components.
|
|
8
|
-
* Use this token to configure icon settings. ([See example.](slug:icon_settings#toc-icons-configuration))
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { NgModule } from '@angular/core';
|
|
13
|
-
*
|
|
14
|
-
* @NgModule({
|
|
15
|
-
* providers: [{ provide: ICON_SETTINGS, useValue: { type: 'svg', size: 'xsmall' } }]
|
|
16
|
-
* })
|
|
17
|
-
* export class AppModule {}
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export const ICON_SETTINGS = new InjectionToken('Kendo UI Icon-Settings token');
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Injectable } from '@angular/core';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Represents the service that manages icon settings.
|
|
10
|
-
* Use the `notify` method to update icon settings dynamically.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* constructor(private iconSettingsService: IconSettingsService) {}
|
|
15
|
-
*
|
|
16
|
-
* this.iconSettingsService.notify({ themeColor: 'primary' });
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export class IconSettingsService {
|
|
20
|
-
/**
|
|
21
|
-
* @hidden
|
|
22
|
-
*/
|
|
23
|
-
changes = new Subject();
|
|
24
|
-
/**
|
|
25
|
-
* Notifies subscribers about changes in the icon settings.
|
|
26
|
-
*
|
|
27
|
-
* @param iconSettings - (Optional) Sets a new value for the [icon settings token]({% slug api_icons_icon_settings %}).
|
|
28
|
-
* @example
|
|
29
|
-
* ```typescript
|
|
30
|
-
* iconSettingsService.notify({ size: 'large' });
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
notify(iconSettings) {
|
|
34
|
-
this.changes.next(iconSettings);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Returns the [`SVGIcon`](slug:api_icons_svgicon) object for the provided key.
|
|
38
|
-
* Override in a custom service to provide custom SVG icons.
|
|
39
|
-
*
|
|
40
|
-
* @hidden
|
|
41
|
-
*/
|
|
42
|
-
getSvgIcon(_name) {
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Returns the list of classes to be rendered on the host `SPAN` element of custom font icons.
|
|
47
|
-
* Override in a custom service to provide classes for custom font icons.
|
|
48
|
-
*
|
|
49
|
-
* @hidden
|
|
50
|
-
*/
|
|
51
|
-
getCustomFontIconClass(_key) {
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
55
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconSettingsService });
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconSettingsService, decorators: [{
|
|
58
|
-
type: Injectable
|
|
59
|
-
}] });
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
6
|
-
import { BehaviorSubject, Subscription } from 'rxjs';
|
|
7
|
-
import { map, tap } from 'rxjs/operators';
|
|
8
|
-
import { isPresent } from './../common/util';
|
|
9
|
-
import { IconSettingsService } from './icon-settings.service';
|
|
10
|
-
import { ICON_SETTINGS } from './icon-settings';
|
|
11
|
-
import { areObjectsEqual } from '@progress/kendo-angular-common';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "./icon-settings.service";
|
|
14
|
-
const DEFAULT_ICON_SETTINGS = { type: 'svg' };
|
|
15
|
-
/**
|
|
16
|
-
* Represents the service that manages icon settings.
|
|
17
|
-
* Add this service to the `providers` array when you use it in a standalone component.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* import { IconsService } from '@progress/kendo-angular-icons';
|
|
22
|
-
*
|
|
23
|
-
* @Component({
|
|
24
|
-
* selector: 'my-component',
|
|
25
|
-
* standalone: true,
|
|
26
|
-
* imports: [ ... ],
|
|
27
|
-
* providers: [IconsService, { provide: ICON_SETTINGS, useValue: { type: 'font' } }],
|
|
28
|
-
* template: `...`
|
|
29
|
-
* })
|
|
30
|
-
* export class AppComponent {}
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
export class IconsService {
|
|
34
|
-
_iconSettings;
|
|
35
|
-
iconSettingsService;
|
|
36
|
-
/**
|
|
37
|
-
* Notifies subscribers of the initial icon settings and on each call to `notify`.
|
|
38
|
-
* @hidden
|
|
39
|
-
*/
|
|
40
|
-
changes = new BehaviorSubject(this.iconSettings || DEFAULT_ICON_SETTINGS);
|
|
41
|
-
subs = new Subscription();
|
|
42
|
-
constructor(_iconSettings, iconSettingsService) {
|
|
43
|
-
this._iconSettings = _iconSettings;
|
|
44
|
-
this.iconSettingsService = iconSettingsService;
|
|
45
|
-
if (iconSettingsService) {
|
|
46
|
-
this.subs.add(iconSettingsService.changes
|
|
47
|
-
.pipe(map(iconSettings => isPresent(iconSettings) ? iconSettings : this._iconSettings), tap(iconSettings => this._iconSettings = iconSettings))
|
|
48
|
-
.subscribe(iconSettings => this.changes.next(iconSettings)));
|
|
49
|
-
}
|
|
50
|
-
if (isPresent(this.iconSettings) && !areObjectsEqual(this.iconSettings, DEFAULT_ICON_SETTINGS)) {
|
|
51
|
-
this.changes.next(this.iconSettings);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* @hidden
|
|
56
|
-
*/
|
|
57
|
-
get iconSettings() {
|
|
58
|
-
return this._iconSettings;
|
|
59
|
-
}
|
|
60
|
-
ngOnDestroy() {
|
|
61
|
-
this.subs.unsubscribe();
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Returns the [`SVGIcon`](slug:api_icons_svgicon) object for the provided key.
|
|
65
|
-
* Override in a custom service to provide custom SVG icons.
|
|
66
|
-
* @hidden
|
|
67
|
-
*/
|
|
68
|
-
getSvgIcon(name) {
|
|
69
|
-
const customIcon = this.iconSettingsService && this.iconSettingsService.getSvgIcon(name);
|
|
70
|
-
return customIcon;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Returns the list of classes to be rendered on the host `SPAN` element of custom font icons.
|
|
74
|
-
* Override in a custom service to provide classes for custom font icons.
|
|
75
|
-
* @hidden
|
|
76
|
-
*/
|
|
77
|
-
getCustomFontIconClass(key) {
|
|
78
|
-
const customClass = this.iconSettingsService && this.iconSettingsService.getCustomFontIconClass(key);
|
|
79
|
-
return customClass;
|
|
80
|
-
}
|
|
81
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsService, deps: [{ token: ICON_SETTINGS, optional: true }, { token: i1.IconSettingsService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
82
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsService, providedIn: 'root' });
|
|
83
|
-
}
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsService, decorators: [{
|
|
85
|
-
type: Injectable,
|
|
86
|
-
args: [{
|
|
87
|
-
providedIn: 'root'
|
|
88
|
-
}]
|
|
89
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
90
|
-
type: Optional
|
|
91
|
-
}, {
|
|
92
|
-
type: Inject,
|
|
93
|
-
args: [ICON_SETTINGS]
|
|
94
|
-
}] }, { type: i1.IconSettingsService, decorators: [{
|
|
95
|
-
type: Optional
|
|
96
|
-
}] }] });
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export * from './icon-type';
|
|
6
|
-
export * from './icon-settings';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
package/esm2022/common/util.mjs
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* @hidden
|
|
7
|
-
*/
|
|
8
|
-
export const isPresent = (value) => value !== null && value !== undefined;
|
package/esm2022/directives.mjs
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { IconComponent } from "./icon/icon.component";
|
|
6
|
-
import { SVGIconComponent } from "./svg-icon/svg-icon.component";
|
|
7
|
-
/**
|
|
8
|
-
* Represents the utility array that contains all `KendoIcon`-related components and directives.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { Component } from '@angular/core';
|
|
13
|
-
* import { KENDO_ICON } from '@progress/kendo-angular-icons';
|
|
14
|
-
*
|
|
15
|
-
* @Component({
|
|
16
|
-
* selector: 'my-app',
|
|
17
|
-
* standalone: true,
|
|
18
|
-
* imports: [KENDO_ICON],
|
|
19
|
-
* template: `...`,
|
|
20
|
-
* })
|
|
21
|
-
* export class AppComponent {}
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export const KENDO_ICON = [
|
|
25
|
-
IconComponent
|
|
26
|
-
];
|
|
27
|
-
/**
|
|
28
|
-
* Represents the utility array that contains all `KendoSVGIcon`-related components and directives.
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* ```typescript
|
|
32
|
-
* import { Component } from '@angular/core';
|
|
33
|
-
* import { KENDO_SVGICON } from '@progress/kendo-angular-icons';
|
|
34
|
-
*
|
|
35
|
-
* @Component({
|
|
36
|
-
* selector: 'my-app',
|
|
37
|
-
* standalone: true,
|
|
38
|
-
* imports: [KENDO_SVGICON],
|
|
39
|
-
* template: `...`,
|
|
40
|
-
* })
|
|
41
|
-
* export class AppComponent {}
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
export const KENDO_SVGICON = [
|
|
45
|
-
SVGIconComponent
|
|
46
|
-
];
|
|
47
|
-
/**
|
|
48
|
-
* Represents the utility array that contains all `@progress/kendo-angular-icons`-related components and directives.
|
|
49
|
-
*
|
|
50
|
-
* @example
|
|
51
|
-
* ```typescript
|
|
52
|
-
* import { Component, ViewEncapsulation } from '@angular/core';
|
|
53
|
-
* import { KENDO_ICONS } from '@progress/kendo-angular-icons';
|
|
54
|
-
*
|
|
55
|
-
* @Component({
|
|
56
|
-
* selector: 'my-app',
|
|
57
|
-
* standalone: true,
|
|
58
|
-
* imports: [KENDO_ICONS],
|
|
59
|
-
* template: `...`,
|
|
60
|
-
* })
|
|
61
|
-
* export class AppComponent {}
|
|
62
|
-
* ```
|
|
63
|
-
*/
|
|
64
|
-
export const KENDO_ICONS = [
|
|
65
|
-
...KENDO_ICON,
|
|
66
|
-
...KENDO_SVGICON
|
|
67
|
-
];
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, ElementRef, Input, Renderer2, HostBinding } from '@angular/core';
|
|
6
|
-
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
7
|
-
import { IconBaseDirective } from '../common/icon-base';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* Represents the [Kendo UI Icon component for Angular](slug:overview_icon).
|
|
11
|
-
* Used to display icons from the [Kendo UI Icons](slug:icon_list) collection.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```html
|
|
15
|
-
* <kendo-icon name="home"></kendo-icon>
|
|
16
|
-
* ```
|
|
17
|
-
*/
|
|
18
|
-
export class IconComponent extends IconBaseDirective {
|
|
19
|
-
element;
|
|
20
|
-
renderer;
|
|
21
|
-
hostClass = true;
|
|
22
|
-
hostAriaHidden = true;
|
|
23
|
-
/**
|
|
24
|
-
* Sets the `Icon` to render. Supports all [Kendo UI Icons](slug:icon_list).
|
|
25
|
-
*/
|
|
26
|
-
set name(name) {
|
|
27
|
-
if (isDocumentAvailable()) {
|
|
28
|
-
const newName = name !== this._name;
|
|
29
|
-
if (newName) {
|
|
30
|
-
const element = this.element.nativeElement;
|
|
31
|
-
this.renderer.removeClass(element, `k-i-${this.name}`);
|
|
32
|
-
this.renderer.addClass(element, `k-i-${name}`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
this._name = name;
|
|
36
|
-
}
|
|
37
|
-
get name() {
|
|
38
|
-
return this._name;
|
|
39
|
-
}
|
|
40
|
-
_name;
|
|
41
|
-
constructor(element, renderer) {
|
|
42
|
-
super(element, renderer);
|
|
43
|
-
this.element = element;
|
|
44
|
-
this.renderer = renderer;
|
|
45
|
-
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: IconComponent, isStandalone: true, selector: "kendo-icon", inputs: { name: "name" }, host: { properties: { "class.k-icon": "this.hostClass", "class.k-font-icon": "this.hostClass", "attr.aria-hidden": "this.hostAriaHidden" } }, exportAs: ["kendoIcon"], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconComponent, decorators: [{
|
|
50
|
-
type: Component,
|
|
51
|
-
args: [{
|
|
52
|
-
exportAs: 'kendoIcon',
|
|
53
|
-
selector: 'kendo-icon',
|
|
54
|
-
template: '',
|
|
55
|
-
standalone: true
|
|
56
|
-
}]
|
|
57
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { hostClass: [{
|
|
58
|
-
type: HostBinding,
|
|
59
|
-
args: ['class.k-icon']
|
|
60
|
-
}, {
|
|
61
|
-
type: HostBinding,
|
|
62
|
-
args: ['class.k-font-icon']
|
|
63
|
-
}], hostAriaHidden: [{
|
|
64
|
-
type: HostBinding,
|
|
65
|
-
args: ['attr.aria-hidden']
|
|
66
|
-
}], name: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}] } });
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, ElementRef, HostBinding, Input, isDevMode } from '@angular/core';
|
|
6
|
-
import { Subscription } from 'rxjs';
|
|
7
|
-
import { IconsService } from '../common/icons.service';
|
|
8
|
-
import { NgClass } from '@angular/common';
|
|
9
|
-
import { IconComponent } from '../icon/icon.component';
|
|
10
|
-
import { SVGIconComponent } from '../svg-icon/svg-icon.component';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "../common/icons.service";
|
|
13
|
-
/**
|
|
14
|
-
* @hidden
|
|
15
|
-
*/
|
|
16
|
-
export class IconWrapperComponent {
|
|
17
|
-
iconsService;
|
|
18
|
-
element;
|
|
19
|
-
hostClass = true;
|
|
20
|
-
/**
|
|
21
|
-
* Sets the name for an existing font icon in a Kendo UI theme to render.
|
|
22
|
-
* Supports all [Kendo UI Icons](slug:icons#icons-list).
|
|
23
|
-
*/
|
|
24
|
-
name;
|
|
25
|
-
/**
|
|
26
|
-
* Sets the [SVGIcon](slug:api_icons_svgicon) to render.
|
|
27
|
-
*/
|
|
28
|
-
svgIcon;
|
|
29
|
-
/**
|
|
30
|
-
* Sets an additional class on the internal Icon component.
|
|
31
|
-
*/
|
|
32
|
-
innerCssClass = '';
|
|
33
|
-
/**
|
|
34
|
-
* Sets a custom font icon class using the API of the consuming component.
|
|
35
|
-
*/
|
|
36
|
-
customFontClass = '';
|
|
37
|
-
/**
|
|
38
|
-
* Sets the `IconSize` for the icon.
|
|
39
|
-
*/
|
|
40
|
-
size;
|
|
41
|
-
get customClasses() {
|
|
42
|
-
const classes = [this.customFontClass, this.innerCssClass, this.customFontIconClass].filter(cl => !!cl).join(' ');
|
|
43
|
-
return classes;
|
|
44
|
-
}
|
|
45
|
-
iconSettings;
|
|
46
|
-
get hasSvgIcon() {
|
|
47
|
-
this.svgIcon = this.iconsService.getSvgIcon(this.name) || this.svgIcon;
|
|
48
|
-
if (this.svgIcon) {
|
|
49
|
-
return true;
|
|
50
|
-
}
|
|
51
|
-
if (isDevMode()) {
|
|
52
|
-
console.groupCollapsed(`Kendo UI for Angular: Icon type is set to 'svg', but only font icon name is provided. The "${this.name}" font icon will be rendered instead.`);
|
|
53
|
-
console.warn(`
|
|
54
|
-
Starting from v7.0.0 (October, 2023) of the Kendo Themes, the font icons will be removed from the theme.
|
|
55
|
-
* To render an SVG icon, update the component configuration by setting the "svgIcon" input to the respective icon definition.
|
|
56
|
-
* To continue to use font icons, install the "@progress/kendo-font-icons" package and import "@progress/kendo-font-icons/dist/index.css".
|
|
57
|
-
|
|
58
|
-
Please note, that font icons are not compatible with a strict Content Security Policy and require the use of the "unsafe-inline" override.
|
|
59
|
-
|
|
60
|
-
For further details, check the following documentation articles:
|
|
61
|
-
https://www.telerik.com/kendo-angular-ui/components/icons/icon-settings
|
|
62
|
-
https://www.telerik.com/kendo-angular-ui/components/styling/icons/
|
|
63
|
-
https://www.telerik.com/kendo-angular-ui/components/styling/svg-icons/
|
|
64
|
-
https://www.telerik.com/design-system/docs/foundation/iconography/font-icons/
|
|
65
|
-
https://www.telerik.com/design-system/docs/foundation/iconography/icon-list/
|
|
66
|
-
`);
|
|
67
|
-
console.groupEnd();
|
|
68
|
-
}
|
|
69
|
-
return false;
|
|
70
|
-
}
|
|
71
|
-
get customFontIconClass() {
|
|
72
|
-
return this.iconsService.getCustomFontIconClass(this.name) || this.customFontClass;
|
|
73
|
-
}
|
|
74
|
-
subs = new Subscription();
|
|
75
|
-
constructor(iconsService, element) {
|
|
76
|
-
this.iconsService = iconsService;
|
|
77
|
-
this.element = element;
|
|
78
|
-
this.subs = iconsService.changes.subscribe(iconSettings => {
|
|
79
|
-
this.iconSettings = iconSettings;
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
ngOnDestroy() {
|
|
83
|
-
this.subs.unsubscribe();
|
|
84
|
-
}
|
|
85
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconWrapperComponent, deps: [{ token: i1.IconsService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: IconWrapperComponent, isStandalone: true, selector: "kendo-icon-wrapper", inputs: { name: "name", svgIcon: "svgIcon", innerCssClass: "innerCssClass", customFontClass: "customFontClass", size: "size" }, host: { properties: { "class.k-icon-wrapper-host": "this.hostClass" } }, exportAs: ["kendoIconWrapper"], ngImport: i0, template: `
|
|
87
|
-
@if (iconSettings?.type === 'svg' && hasSvgIcon) {
|
|
88
|
-
<kendo-svgicon
|
|
89
|
-
[ngClass]="innerCssClass"
|
|
90
|
-
[icon]="svgIcon"
|
|
91
|
-
[size]="size || iconSettings?.size"
|
|
92
|
-
[themeColor]="iconSettings?.themeColor"
|
|
93
|
-
[flip]="iconSettings?.flip"></kendo-svgicon>
|
|
94
|
-
} @else {
|
|
95
|
-
@if (!customFontIconClass) {
|
|
96
|
-
<kendo-icon
|
|
97
|
-
[ngClass]="innerCssClass"
|
|
98
|
-
[name]="name"
|
|
99
|
-
[size]="size || iconSettings?.size"
|
|
100
|
-
[themeColor]="iconSettings?.themeColor"
|
|
101
|
-
[flip]="iconSettings?.flip"></kendo-icon>
|
|
102
|
-
} @else {
|
|
103
|
-
<span [ngClass]="customClasses"></span>
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "kendo-icon", inputs: ["name"], exportAs: ["kendoIcon"] }, { kind: "component", type: SVGIconComponent, selector: "kendo-svg-icon, kendo-svgicon", inputs: ["icon"], exportAs: ["kendoSVGIcon"] }] });
|
|
107
|
-
}
|
|
108
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconWrapperComponent, decorators: [{
|
|
109
|
-
type: Component,
|
|
110
|
-
args: [{
|
|
111
|
-
exportAs: 'kendoIconWrapper',
|
|
112
|
-
selector: 'kendo-icon-wrapper',
|
|
113
|
-
template: `
|
|
114
|
-
@if (iconSettings?.type === 'svg' && hasSvgIcon) {
|
|
115
|
-
<kendo-svgicon
|
|
116
|
-
[ngClass]="innerCssClass"
|
|
117
|
-
[icon]="svgIcon"
|
|
118
|
-
[size]="size || iconSettings?.size"
|
|
119
|
-
[themeColor]="iconSettings?.themeColor"
|
|
120
|
-
[flip]="iconSettings?.flip"></kendo-svgicon>
|
|
121
|
-
} @else {
|
|
122
|
-
@if (!customFontIconClass) {
|
|
123
|
-
<kendo-icon
|
|
124
|
-
[ngClass]="innerCssClass"
|
|
125
|
-
[name]="name"
|
|
126
|
-
[size]="size || iconSettings?.size"
|
|
127
|
-
[themeColor]="iconSettings?.themeColor"
|
|
128
|
-
[flip]="iconSettings?.flip"></kendo-icon>
|
|
129
|
-
} @else {
|
|
130
|
-
<span [ngClass]="customClasses"></span>
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
`,
|
|
134
|
-
standalone: true,
|
|
135
|
-
imports: [NgClass, IconComponent, SVGIconComponent]
|
|
136
|
-
}]
|
|
137
|
-
}], ctorParameters: () => [{ type: i1.IconsService }, { type: i0.ElementRef }], propDecorators: { hostClass: [{
|
|
138
|
-
type: HostBinding,
|
|
139
|
-
args: ['class.k-icon-wrapper-host']
|
|
140
|
-
}], name: [{
|
|
141
|
-
type: Input
|
|
142
|
-
}], svgIcon: [{
|
|
143
|
-
type: Input
|
|
144
|
-
}], innerCssClass: [{
|
|
145
|
-
type: Input
|
|
146
|
-
}], customFontClass: [{
|
|
147
|
-
type: Input
|
|
148
|
-
}], size: [{
|
|
149
|
-
type: Input
|
|
150
|
-
}] } });
|
package/esm2022/icon.module.mjs
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { NgModule } from '@angular/core';
|
|
6
|
-
import { IconComponent } from './icon/icon.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
//IMPORTANT: NgModule export kept for backwards compatibility
|
|
9
|
-
/**
|
|
10
|
-
* Represents the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) definition for the Icon component.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* import { NgModule } from '@angular/core';
|
|
15
|
-
* import { IconModule } from '@progress/kendo-angular-icons';
|
|
16
|
-
* import { BrowserModule } from '@angular/platform-browser';
|
|
17
|
-
* import { AppComponent } from './app.component';
|
|
18
|
-
*
|
|
19
|
-
* @NgModule({
|
|
20
|
-
* declarations: [AppComponent],
|
|
21
|
-
* imports: [BrowserModule, IconModule],
|
|
22
|
-
* bootstrap: [AppComponent]
|
|
23
|
-
* })
|
|
24
|
-
* export class AppModule {}
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
export class IconModule {
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
29
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: IconModule, imports: [IconComponent], exports: [IconComponent] });
|
|
30
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconModule });
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconModule, decorators: [{
|
|
33
|
-
type: NgModule,
|
|
34
|
-
args: [{
|
|
35
|
-
exports: [IconComponent],
|
|
36
|
-
imports: [IconComponent]
|
|
37
|
-
}]
|
|
38
|
-
}] });
|
package/esm2022/icons.module.mjs
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { NgModule } from '@angular/core';
|
|
6
|
-
import { IconsService } from './common/icons.service';
|
|
7
|
-
import { KENDO_ICONS } from './directives';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "./icon/icon.component";
|
|
10
|
-
import * as i2 from "./svg-icon/svg-icon.component";
|
|
11
|
-
//IMPORTANT: NgModule export kept for backwards compatibility
|
|
12
|
-
/**
|
|
13
|
-
* Represents the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) definition for the Icons components.
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```typescript
|
|
17
|
-
* import { NgModule } from '@angular/core';
|
|
18
|
-
* import { IconsModule } from '@progress/kendo-angular-icons';
|
|
19
|
-
* import { BrowserModule } from '@angular/platform-browser';
|
|
20
|
-
* import { AppComponent } from './app.component';
|
|
21
|
-
*
|
|
22
|
-
* @NgModule({
|
|
23
|
-
* declarations: [AppComponent],
|
|
24
|
-
* imports: [BrowserModule, IconsModule],
|
|
25
|
-
* bootstrap: [AppComponent]
|
|
26
|
-
* })
|
|
27
|
-
* export class AppModule {}
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
export class IconsModule {
|
|
31
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
32
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: IconsModule, imports: [i1.IconComponent, i2.SVGIconComponent], exports: [i1.IconComponent, i2.SVGIconComponent] });
|
|
33
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsModule, providers: [IconsService] });
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconsModule, decorators: [{
|
|
36
|
-
type: NgModule,
|
|
37
|
-
args: [{
|
|
38
|
-
imports: [
|
|
39
|
-
...KENDO_ICONS
|
|
40
|
-
],
|
|
41
|
-
exports: [
|
|
42
|
-
...KENDO_ICONS
|
|
43
|
-
],
|
|
44
|
-
providers: [IconsService]
|
|
45
|
-
}]
|
|
46
|
-
}] });
|
package/esm2022/index.mjs
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export { IconComponent } from './icon/icon.component';
|
|
6
|
-
export { SVGIconComponent } from './svg-icon/svg-icon.component';
|
|
7
|
-
export { IconWrapperComponent } from './icon-wrapper/icon-wrapper.component';
|
|
8
|
-
export { IconModule } from './icon.module';
|
|
9
|
-
export { SVGIconModule } from './svg-icon.module';
|
|
10
|
-
export { IconsModule } from './icons.module';
|
|
11
|
-
export { IconsService } from './common/icons.service';
|
|
12
|
-
export { IconSettingsService } from './common/icon-settings.service';
|
|
13
|
-
export { ICON_SETTINGS } from './common/icon-settings';
|
|
14
|
-
export * from './directives';
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* @hidden
|
|
7
|
-
*/
|
|
8
|
-
export const packageMetadata = {
|
|
9
|
-
name: '@progress/kendo-angular-icons',
|
|
10
|
-
productName: 'Kendo UI for Angular',
|
|
11
|
-
productCode: 'KENDOUIANGULAR',
|
|
12
|
-
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate: 1768392988,
|
|
14
|
-
version: '21.4.1',
|
|
15
|
-
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
|
-
};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* Generated bundle index. Do not edit.
|
|
7
|
-
*/
|
|
8
|
-
export * from './index';
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, ElementRef, Input, Renderer2, HostBinding, isDevMode, ChangeDetectionStrategy } from '@angular/core';
|
|
6
|
-
import { DomSanitizer } from "@angular/platform-browser";
|
|
7
|
-
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
8
|
-
import { IconBaseDirective } from '../common/icon-base';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1_1 from "@angular/platform-browser";
|
|
11
|
-
const areSame = (i1, i2) => i1?.name === i2?.name && i1.content === i2.content && i1.viewBox === i2.viewBox;
|
|
12
|
-
/**
|
|
13
|
-
* Represents the [Kendo UI SVG Icon component for Angular](slug:overview_svgicon).
|
|
14
|
-
* Used to display icons from the [Kendo UI SVG Icons](slug:svgicon_list) collection.
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* ```ts
|
|
18
|
-
* import { KENDO_ICONS } from "@progress/kendo-angular-icons";
|
|
19
|
-
* import { paperclipIcon } from "@progress/kendo-svg-icons";
|
|
20
|
-
*
|
|
21
|
-
* @Component({
|
|
22
|
-
* selector: "my-app",
|
|
23
|
-
* imports: [KENDO_ICONS],
|
|
24
|
-
* template: `
|
|
25
|
-
* <kendo-svg-icon [icon]="paperclipIcon"></kendo-svg-icon>
|
|
26
|
-
* `,
|
|
27
|
-
* providers: [],
|
|
28
|
-
* })
|
|
29
|
-
* export class AppComponent {
|
|
30
|
-
* public paperclipIcon = paperclipIcon;
|
|
31
|
-
* }
|
|
32
|
-
* ```
|
|
33
|
-
*/
|
|
34
|
-
export class SVGIconComponent extends IconBaseDirective {
|
|
35
|
-
domSanitizer;
|
|
36
|
-
element;
|
|
37
|
-
renderer;
|
|
38
|
-
hostClass = true;
|
|
39
|
-
hostAriaHidden = true;
|
|
40
|
-
/**
|
|
41
|
-
* Sets the `SVGIcon` to render. Supports all [Kendo UI SVG Icons](slug:svgicon_list).
|
|
42
|
-
*/
|
|
43
|
-
set icon(icon) {
|
|
44
|
-
const element = this.element.nativeElement;
|
|
45
|
-
const hasDocument = isDocumentAvailable();
|
|
46
|
-
const newName = icon?.name && icon.name !== this._icon?.name;
|
|
47
|
-
if (this._icon && this._icon.name && newName && hasDocument) {
|
|
48
|
-
this.renderer.removeClass(element, `k-svg-i-${this._icon.name}`);
|
|
49
|
-
}
|
|
50
|
-
if (!areSame(icon, this._icon)) {
|
|
51
|
-
this._icon = icon;
|
|
52
|
-
}
|
|
53
|
-
if (hasDocument && newName) {
|
|
54
|
-
this.renderer.addClass(element, `k-svg-i-${this._icon.name}`);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
get icon() {
|
|
58
|
-
return this._icon;
|
|
59
|
-
}
|
|
60
|
-
get content() {
|
|
61
|
-
return this.domSanitizer.bypassSecurityTrustHtml(this.icon.content);
|
|
62
|
-
}
|
|
63
|
-
get visible() {
|
|
64
|
-
return this.icon && isDocumentAvailable();
|
|
65
|
-
}
|
|
66
|
-
_icon;
|
|
67
|
-
constructor(domSanitizer, element, renderer) {
|
|
68
|
-
super(element, renderer);
|
|
69
|
-
this.domSanitizer = domSanitizer;
|
|
70
|
-
this.element = element;
|
|
71
|
-
this.renderer = renderer;
|
|
72
|
-
}
|
|
73
|
-
ngOnInit() {
|
|
74
|
-
this.verifyIconProperty();
|
|
75
|
-
}
|
|
76
|
-
verifyIconProperty() {
|
|
77
|
-
if (!isDevMode()) {
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
if (!this._icon) {
|
|
81
|
-
throw new Error(`
|
|
82
|
-
Invalid configuration.
|
|
83
|
-
The input [icon] is required for the Kendo UI SVG Icon component for Angular.
|
|
84
|
-
See https://www.telerik.com/kendo-angular-ui/components/icons/svg-icon
|
|
85
|
-
`);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SVGIconComponent, deps: [{ token: i1_1.DomSanitizer }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SVGIconComponent, isStandalone: true, selector: "kendo-svg-icon, kendo-svgicon", inputs: { icon: "icon" }, host: { properties: { "class.k-svg-icon": "this.hostClass", "class.k-icon": "this.hostClass", "attr.aria-hidden": "this.hostAriaHidden" } }, exportAs: ["kendoSVGIcon"], usesInheritance: true, ngImport: i0, template: `
|
|
90
|
-
@if (visible) {
|
|
91
|
-
<svg [style.pointerEvents]="'none'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
92
|
-
[attr.viewBox]="icon.viewBox" [innerHTML]="content">
|
|
93
|
-
</svg>
|
|
94
|
-
}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
95
|
-
}
|
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SVGIconComponent, decorators: [{
|
|
97
|
-
type: Component,
|
|
98
|
-
args: [{
|
|
99
|
-
exportAs: 'kendoSVGIcon',
|
|
100
|
-
selector: 'kendo-svg-icon, kendo-svgicon',
|
|
101
|
-
template: `
|
|
102
|
-
@if (visible) {
|
|
103
|
-
<svg [style.pointerEvents]="'none'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
104
|
-
[attr.viewBox]="icon.viewBox" [innerHTML]="content">
|
|
105
|
-
</svg>
|
|
106
|
-
}`,
|
|
107
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
108
|
-
standalone: true,
|
|
109
|
-
imports: []
|
|
110
|
-
}]
|
|
111
|
-
}], ctorParameters: () => [{ type: i1_1.DomSanitizer }, { type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { hostClass: [{
|
|
112
|
-
type: HostBinding,
|
|
113
|
-
args: ['class.k-svg-icon']
|
|
114
|
-
}, {
|
|
115
|
-
type: HostBinding,
|
|
116
|
-
args: ['class.k-icon']
|
|
117
|
-
}], hostAriaHidden: [{
|
|
118
|
-
type: HostBinding,
|
|
119
|
-
args: ['attr.aria-hidden']
|
|
120
|
-
}], icon: [{
|
|
121
|
-
type: Input
|
|
122
|
-
}] } });
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { NgModule } from '@angular/core';
|
|
6
|
-
import { SVGIconComponent } from './svg-icon/svg-icon.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
//IMPORTANT: NgModule export kept for backwards compatibility
|
|
9
|
-
/**
|
|
10
|
-
* Represents the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) definition for the SVG Icon component.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* import { NgModule } from '@angular/core';
|
|
15
|
-
* import { SVGIconModule } from '@progress/kendo-angular-icons';
|
|
16
|
-
* import { BrowserModule } from '@angular/platform-browser';
|
|
17
|
-
* import { AppComponent } from './app.component';
|
|
18
|
-
*
|
|
19
|
-
* @NgModule({
|
|
20
|
-
* declarations: [AppComponent],
|
|
21
|
-
* imports: [BrowserModule, SVGIconModule],
|
|
22
|
-
* bootstrap: [AppComponent]
|
|
23
|
-
* })
|
|
24
|
-
* export class AppModule {}
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
export class SVGIconModule {
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SVGIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
29
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SVGIconModule, imports: [SVGIconComponent], exports: [SVGIconComponent] });
|
|
30
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SVGIconModule });
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SVGIconModule, decorators: [{
|
|
33
|
-
type: NgModule,
|
|
34
|
-
args: [{
|
|
35
|
-
exports: [SVGIconComponent],
|
|
36
|
-
imports: [SVGIconComponent]
|
|
37
|
-
}]
|
|
38
|
-
}] });
|