@progress/kendo-angular-icons 2.0.3 → 11.0.0-develop.79

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.
Files changed (47) hide show
  1. package/NOTICE.txt +3 -3
  2. package/common/icon-base.d.ts +1 -1
  3. package/common/icon-settings.d.ts +10 -0
  4. package/common/icon-settings.service.d.ts +40 -0
  5. package/common/icons.service.d.ts +40 -0
  6. package/common/models/flip.d.ts +1 -1
  7. package/common/models/icon-settings.d.ts +14 -0
  8. package/common/models/icon-type.d.ts +5 -0
  9. package/common/models/index.d.ts +3 -1
  10. package/common/models/size.d.ts +1 -1
  11. package/common/models/theme-color.d.ts +1 -1
  12. package/common/util.d.ts +8 -0
  13. package/{esm2015/common/icon-base.js → esm2020/common/icon-base.mjs} +11 -10
  14. package/esm2020/common/icon-settings.mjs +9 -0
  15. package/esm2020/common/icon-settings.service.mjs +50 -0
  16. package/esm2020/common/icons.service.mjs +68 -0
  17. package/{esm2015/common/models/size.js → esm2020/common/models/flip.mjs} +1 -1
  18. package/{esm2015/common/models/theme-color.js → esm2020/common/models/icon-settings.mjs} +1 -1
  19. package/{esm2015/common/models/flip.js → esm2020/common/models/icon-type.mjs} +1 -1
  20. package/esm2020/common/models/index.mjs +6 -0
  21. package/{esm2015/common/models/index.js → esm2020/common/models/size.mjs} +1 -1
  22. package/esm2020/common/models/theme-color.mjs +5 -0
  23. package/esm2020/common/util.mjs +8 -0
  24. package/{esm2015/icon/icon.component.js → esm2020/icon/icon.component.mjs} +12 -11
  25. package/esm2020/icon-wrapper/icon-wrapper.component.mjs +105 -0
  26. package/{esm2015/icon.module.js → esm2020/icon.module.mjs} +6 -6
  27. package/{esm2015/icons.module.js → esm2020/icons.module.mjs} +27 -8
  28. package/{esm2015/main.js → esm2020/index.mjs} +5 -1
  29. package/{esm2015/package-metadata.js → esm2020/package-metadata.mjs} +3 -3
  30. package/{esm2015/kendo-angular-icons.js → esm2020/progress-kendo-angular-icons.mjs} +2 -2
  31. package/{esm2015/svg-icon/svg-icon.component.js → esm2020/svg-icon/svg-icon.component.mjs} +11 -7
  32. package/{esm2015/svg-icon.module.js → esm2020/svg-icon.module.mjs} +5 -5
  33. package/fesm2015/progress-kendo-angular-icons.mjs +619 -0
  34. package/{fesm2015/kendo-angular-icons.js → fesm2020/progress-kendo-angular-icons.mjs} +283 -55
  35. package/icon/icon.component.d.ts +1 -1
  36. package/icon-wrapper/icon-wrapper.component.d.ts +43 -0
  37. package/icon.module.d.ts +2 -2
  38. package/icons.module.d.ts +5 -4
  39. package/{main.d.ts → index.d.ts} +7 -2
  40. package/package-metadata.d.ts +1 -1
  41. package/package.json +27 -54
  42. package/{kendo-angular-icons.d.ts → progress-kendo-angular-icons.d.ts} +2 -2
  43. package/schematics/ngAdd/index.js +1 -5
  44. package/svg-icon/svg-icon.component.d.ts +1 -1
  45. package/svg-icon.module.d.ts +1 -1
  46. package/bundles/kendo-angular-icons.umd.js +0 -5
  47. package/schematics/ngAdd/index.js.map +0 -1
@@ -0,0 +1,619 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2022 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as i0 from '@angular/core';
6
+ import { Directive, HostBinding, Input, Component, isDevMode, InjectionToken, Injectable, Optional, Inject, NgModule } from '@angular/core';
7
+ import { isDocumentAvailable } from '@progress/kendo-angular-common';
8
+ import { validatePackage } from '@progress/kendo-licensing';
9
+ import * as i1 from '@angular/platform-browser';
10
+ import * as i4 from '@angular/common';
11
+ import { CommonModule } from '@angular/common';
12
+ import { Subject, BehaviorSubject, Subscription } from 'rxjs';
13
+ import { map, tap } from 'rxjs/operators';
14
+
15
+ /**
16
+ * @hidden
17
+ */
18
+ const packageMetadata = {
19
+ name: '@progress/kendo-angular-icons',
20
+ productName: 'Kendo UI for Angular',
21
+ productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
22
+ publishDate: 1672320624,
23
+ version: '',
24
+ licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
25
+ };
26
+
27
+ const sizeClasses = {
28
+ 'default': 'k-icon',
29
+ 'xsmall': 'k-icon-xs',
30
+ 'small': 'k-icon-sm',
31
+ 'medium': 'k-icon-md',
32
+ 'large': 'k-icon-lg',
33
+ 'xlarge': 'k-icon-xl'
34
+ };
35
+ /**
36
+ * @hidden
37
+ */
38
+ class IconBaseDirective {
39
+ constructor(element, renderer) {
40
+ this.element = element;
41
+ this.renderer = renderer;
42
+ validatePackage(packageMetadata);
43
+ }
44
+ get horizontalFlip() {
45
+ return this.flip === 'horizontal' || this.flip === 'both';
46
+ }
47
+ get verticalFlip() {
48
+ return this.flip === 'vertical' || this.flip === 'both';
49
+ }
50
+ /**
51
+ * Specifies the theme color for the Icon.
52
+ *
53
+ * The possible values are:
54
+ * * `inherit` (Default)—Applies coloring based on the current color.
55
+ * * `primary` —Applies coloring based on primary theme color.
56
+ * * `secondary`—Applies coloring based on secondary theme color.
57
+ * * `tertiary`— Applies coloring based on tertiary theme color.
58
+ * * `info`—Applies coloring based on info theme color.
59
+ * * `success`— Applies coloring based on success theme color.
60
+ * * `warning`— Applies coloring based on warning theme color.
61
+ * * `error`— Applies coloring based on error theme color.
62
+ * * `dark`— Applies coloring based on dark theme color.
63
+ * * `light`— Applies coloring based on light theme color.
64
+ * * `inverse`— Applies coloring based on inverse theme color.
65
+ *
66
+ */
67
+ set themeColor(themeColor) {
68
+ const element = this.element.nativeElement;
69
+ this._themeColor = themeColor;
70
+ this.renderer.removeClass(element, `k-color-${themeColor}`);
71
+ if (themeColor) {
72
+ this.renderer.addClass(element, `k-color-${themeColor}`);
73
+ }
74
+ }
75
+ get themeColor() {
76
+ return this._themeColor;
77
+ }
78
+ /**
79
+ * Specifies the size of the Icon.
80
+ *
81
+ * The possible values are:
82
+ * * `default` (Default) (Font-size: 16px; Width: 16px; Height: 16px)
83
+ * * `xsmall` (Font-size: 8px; Width: 8px; Height: 8px;)
84
+ * * `small` (Font-size: 12px; Width: 12px; Height: 12px;)
85
+ * * `medium` (Font-size: 32px; Width: 32px; Height: 32px;)
86
+ * * `large` (Font-size: 48px; Width: 48px; Height: 48px;)
87
+ * * `xlarge` (Font-size: 64px; Width: 64px; Height: 64px;)
88
+ *
89
+ */
90
+ set size(size) {
91
+ const currentClass = sizeClasses[this.size];
92
+ const newClass = sizeClasses[size];
93
+ const element = this.element.nativeElement;
94
+ this.renderer.removeClass(element, currentClass);
95
+ if (size && size !== 'default') {
96
+ this.renderer.addClass(element, newClass);
97
+ }
98
+ this._size = size;
99
+ }
100
+ get size() {
101
+ return this._size;
102
+ }
103
+ }
104
+ IconBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconBaseDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
105
+ IconBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", 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 });
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconBaseDirective, decorators: [{
107
+ type: Directive,
108
+ args: [{
109
+ selector: '[kendoIconBase]'
110
+ }]
111
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { horizontalFlip: [{
112
+ type: HostBinding,
113
+ args: ['class.k-flip-h']
114
+ }], verticalFlip: [{
115
+ type: HostBinding,
116
+ args: ['class.k-flip-v']
117
+ }], flip: [{
118
+ type: Input
119
+ }], themeColor: [{
120
+ type: Input
121
+ }], size: [{
122
+ type: Input
123
+ }] } });
124
+
125
+ /**
126
+ * Represents the Kendo UI Icon component for Angular.
127
+ */
128
+ class IconComponent extends IconBaseDirective {
129
+ constructor(element, renderer) {
130
+ super(element, renderer);
131
+ this.element = element;
132
+ this.renderer = renderer;
133
+ this.hostClass = true;
134
+ }
135
+ /**
136
+ * Defines the name for an existing icon in a Kendo UI theme, which will be rendered.
137
+ * All [Kendo UI Icons]({% slug icons %}#toc-list-of-font-icons) are supported.
138
+ */
139
+ set name(name) {
140
+ if (isDocumentAvailable()) {
141
+ const element = this.element.nativeElement;
142
+ this.renderer.removeClass(element, `k-i-${this.name}`);
143
+ this.renderer.addClass(element, `k-i-${name}`);
144
+ }
145
+ this._name = name;
146
+ }
147
+ get name() {
148
+ return this._name;
149
+ }
150
+ }
151
+ IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
152
+ IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: IconComponent, selector: "kendo-icon", inputs: { name: "name" }, host: { properties: { "class.k-icon": "this.hostClass" } }, exportAs: ["kendoIcon"], usesInheritance: true, ngImport: i0, template: '', isInline: true });
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconComponent, decorators: [{
154
+ type: Component,
155
+ args: [{
156
+ exportAs: 'kendoIcon',
157
+ selector: 'kendo-icon',
158
+ template: ''
159
+ }]
160
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { hostClass: [{
161
+ type: HostBinding,
162
+ args: ['class.k-icon']
163
+ }], name: [{
164
+ type: Input
165
+ }] } });
166
+
167
+ /**
168
+ * Represents the Kendo UI SVG Icon component for Angular.
169
+ */
170
+ class SVGIconComponent extends IconBaseDirective {
171
+ constructor(domSanitizer, element, renderer) {
172
+ super(element, renderer);
173
+ this.domSanitizer = domSanitizer;
174
+ this.element = element;
175
+ this.renderer = renderer;
176
+ this.hostClass = true;
177
+ }
178
+ /**
179
+ * Defines the SVG icon, which will be rendered.
180
+ */
181
+ set icon(icon) {
182
+ const element = this.element.nativeElement;
183
+ const hasDocument = isDocumentAvailable();
184
+ if (this._icon && this._icon.name && hasDocument) {
185
+ this.renderer.removeClass(element, `k-svg-i-${this._icon.name}`);
186
+ }
187
+ this._icon = icon;
188
+ if (hasDocument) {
189
+ this.renderer.addClass(element, `k-svg-i-${this._icon.name}`);
190
+ }
191
+ }
192
+ get icon() {
193
+ return this._icon;
194
+ }
195
+ get content() {
196
+ this.safeContent = this.safeContent || this.domSanitizer.bypassSecurityTrustHtml(this.icon.content);
197
+ return this.safeContent;
198
+ }
199
+ get visible() {
200
+ return this.icon && isDocumentAvailable();
201
+ }
202
+ ngOnInit() {
203
+ this.verifyIconProperty();
204
+ }
205
+ verifyIconProperty() {
206
+ if (!isDevMode()) {
207
+ return;
208
+ }
209
+ if (!this._icon) {
210
+ throw new Error(`
211
+ Invalid configuration.
212
+ The input [icon] is required for the Kendo UI SVG Icon component for Angular.
213
+ See https://www.telerik.com/kendo-angular-ui/components/icons/svg-icon
214
+ `);
215
+ }
216
+ }
217
+ }
218
+ SVGIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconComponent, deps: [{ token: i1.DomSanitizer }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
219
+ SVGIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: SVGIconComponent, selector: "kendo-svg-icon", inputs: { icon: "icon" }, host: { properties: { "class.k-svg-icon": "this.hostClass" } }, exportAs: ["kendoSVGIcon"], usesInheritance: true, ngImport: i0, template: `
220
+ <svg *ngIf="visible" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
221
+ [attr.viewBox]="icon.viewBox" [innerHTML]="content">
222
+ </svg>`, isInline: true, directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconComponent, decorators: [{
224
+ type: Component,
225
+ args: [{
226
+ exportAs: 'kendoSVGIcon',
227
+ selector: 'kendo-svg-icon',
228
+ template: `
229
+ <svg *ngIf="visible" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
230
+ [attr.viewBox]="icon.viewBox" [innerHTML]="content">
231
+ </svg>`
232
+ }]
233
+ }], ctorParameters: function () { return [{ type: i1.DomSanitizer }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { hostClass: [{
234
+ type: HostBinding,
235
+ args: ['class.k-svg-icon']
236
+ }], icon: [{
237
+ type: Input
238
+ }] } });
239
+
240
+ /**
241
+ * @hidden
242
+ */
243
+ const isPresent = (value) => value !== null && value !== undefined;
244
+
245
+ /**
246
+ * A token that specifies the icons [settings ('size', 'themeColor', 'flip')](appearance_svgicon) of Kendo UI for Angular components.
247
+ */
248
+ const ICON_SETTINGS = new InjectionToken('Kendo UI Icon-Settings token');
249
+
250
+ /**
251
+ * A service that returns the current icon settings to be used in subscribers.
252
+ * Use the public `notify` method to change the icon settings dynamically.
253
+ */
254
+ class IconSettingsService {
255
+ constructor() {
256
+ /**
257
+ * @hidden
258
+ */
259
+ this.changes = new Subject();
260
+ }
261
+ /**
262
+ * Notifies subscribers that the icon settings were changed.
263
+ *
264
+ * @param iconSettings - (Optional) A new value for the [icon settings token]({% slug api_icons_icon_settings %}).
265
+ */
266
+ notify(iconSettings) {
267
+ this.changes.next(iconSettings);
268
+ }
269
+ /**
270
+ * Returns the [`SVGIcon`](slug:api_icons_svgicon) object for the provided key.
271
+ * Override in a custom service to provide custom SVG icons.
272
+ *
273
+ * @hidden
274
+ */
275
+ getSvgIcon(_name) {
276
+ return null;
277
+ }
278
+ /**
279
+ * Returns the list of classes to be rendered on the host `SPAN` element of custom font icons.
280
+ * Override in a custom service to provide classes for custom font icons.
281
+ *
282
+ * @hidden
283
+ */
284
+ getCustomFontIconClass(_key) {
285
+ return null;
286
+ }
287
+ }
288
+ IconSettingsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
289
+ IconSettingsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconSettingsService });
290
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconSettingsService, decorators: [{
291
+ type: Injectable
292
+ }] });
293
+
294
+ /**
295
+ * @hidden
296
+ */
297
+ class IconsService {
298
+ constructor(_iconSettings, iconSettingsService) {
299
+ this._iconSettings = _iconSettings;
300
+ this.iconSettingsService = iconSettingsService;
301
+ /**
302
+ * Notifies subscribers of the initial icon settings, and upon each call to `notify`.
303
+ */
304
+ this.changes = new BehaviorSubject(this.iconSettings || { type: 'font' });
305
+ this.subs = new Subscription();
306
+ if (iconSettingsService) {
307
+ this.subs.add(iconSettingsService.changes
308
+ .pipe(map(iconSettings => isPresent(iconSettings) ? iconSettings : this._iconSettings), tap(iconSettings => this._iconSettings = iconSettings))
309
+ .subscribe(iconSettings => this.changes.next(iconSettings)));
310
+ }
311
+ }
312
+ /**
313
+ * @hidden
314
+ */
315
+ get iconSettings() {
316
+ return this._iconSettings;
317
+ }
318
+ ngOnDestroy() {
319
+ this.subs.unsubscribe();
320
+ }
321
+ /**
322
+ * Returns the [`SVGIcon`](slug:api_icons_svgicon) object for the provided key.
323
+ * Override in a custom service to provide custom SVG icons.
324
+ */
325
+ getSvgIcon(name) {
326
+ const customIcon = this.iconSettingsService && this.iconSettingsService.getSvgIcon(name);
327
+ return customIcon;
328
+ }
329
+ /**
330
+ * Returns the list of classes to be rendered on the host `SPAN` element of custom font icons.
331
+ * Override in a custom service to provide classes for custom font icons.
332
+ */
333
+ getCustomFontIconClass(key) {
334
+ const customClass = this.iconSettingsService && this.iconSettingsService.getCustomFontIconClass(key);
335
+ return customClass;
336
+ }
337
+ }
338
+ IconsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsService, deps: [{ token: ICON_SETTINGS, optional: true }, { token: IconSettingsService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
339
+ IconsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsService });
340
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsService, decorators: [{
341
+ type: Injectable
342
+ }], ctorParameters: function () {
343
+ return [{ type: undefined, decorators: [{
344
+ type: Optional
345
+ }, {
346
+ type: Inject,
347
+ args: [ICON_SETTINGS]
348
+ }] }, { type: IconSettingsService, decorators: [{
349
+ type: Optional
350
+ }] }];
351
+ } });
352
+
353
+ /**
354
+ * @hidden
355
+ */
356
+ class IconWrapperComponent {
357
+ constructor(iconsService) {
358
+ this.iconsService = iconsService;
359
+ /**
360
+ * Provided by consuming components in case an additional k-specific class needs to be rendered
361
+ * on the internal Icon component.
362
+ */
363
+ this.innerCssClass = '';
364
+ /**
365
+ * Provided by consuming components in case a custom font icon class is set
366
+ * by the developer using the consuming component through its API.
367
+ */
368
+ this.customFontClass = '';
369
+ this.subs = new Subscription();
370
+ this.subs = iconsService.changes.subscribe(iconSettings => {
371
+ this.iconSettings = iconSettings;
372
+ });
373
+ }
374
+ get customClasses() {
375
+ const classes = [this.customFontClass, this.innerCssClass].filter(cl => !!cl).join(' ');
376
+ return classes;
377
+ }
378
+ get getSvgIcon() {
379
+ return this.iconsService.getSvgIcon(this.name) || this.svgIcon;
380
+ }
381
+ get customFontIconClass() {
382
+ return this.iconsService.getCustomFontIconClass(this.name) || this.customFontClass;
383
+ }
384
+ ngOnDestroy() {
385
+ this.subs.unsubscribe();
386
+ }
387
+ }
388
+ IconWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconWrapperComponent, deps: [{ token: IconsService }], target: i0.ɵɵFactoryTarget.Component });
389
+ IconWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: { name: "name", svgIcon: "svgIcon", innerCssClass: "innerCssClass", customFontClass: "customFontClass" }, exportAs: ["kendoIconWrapper"], ngImport: i0, template: `
390
+ <kendo-svg-icon
391
+ *ngIf="iconSettings?.type === 'svg'; else font"
392
+ [ngClass]="innerCssClass"
393
+ [icon]="getSvgIcon"
394
+ [size]="iconSettings?.size"
395
+ [themeColor]="iconSettings?.themeColor"
396
+ [flip]="iconSettings?.flip"></kendo-svg-icon>
397
+ <ng-template #font>
398
+ <kendo-icon
399
+ *ngIf="!customFontIconClass; else custom"
400
+ [ngClass]="innerCssClass"
401
+ [name]="name"
402
+ [size]="iconSettings?.size"
403
+ [themeColor]="iconSettings?.themeColor"
404
+ [flip]="iconSettings?.flip"></kendo-icon>
405
+ <ng-template #custom>
406
+ <span [ngClass]="customClasses"></span>
407
+ </ng-template>
408
+ </ng-template>
409
+ `, isInline: true, components: [{ type: SVGIconComponent, selector: "kendo-svg-icon", inputs: ["icon"], exportAs: ["kendoSVGIcon"] }, { type: IconComponent, selector: "kendo-icon", inputs: ["name"], exportAs: ["kendoIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
410
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconWrapperComponent, decorators: [{
411
+ type: Component,
412
+ args: [{
413
+ exportAs: 'kendoIconWrapper',
414
+ selector: 'kendo-icon-wrapper',
415
+ template: `
416
+ <kendo-svg-icon
417
+ *ngIf="iconSettings?.type === 'svg'; else font"
418
+ [ngClass]="innerCssClass"
419
+ [icon]="getSvgIcon"
420
+ [size]="iconSettings?.size"
421
+ [themeColor]="iconSettings?.themeColor"
422
+ [flip]="iconSettings?.flip"></kendo-svg-icon>
423
+ <ng-template #font>
424
+ <kendo-icon
425
+ *ngIf="!customFontIconClass; else custom"
426
+ [ngClass]="innerCssClass"
427
+ [name]="name"
428
+ [size]="iconSettings?.size"
429
+ [themeColor]="iconSettings?.themeColor"
430
+ [flip]="iconSettings?.flip"></kendo-icon>
431
+ <ng-template #custom>
432
+ <span [ngClass]="customClasses"></span>
433
+ </ng-template>
434
+ </ng-template>
435
+ `
436
+ }]
437
+ }], ctorParameters: function () { return [{ type: IconsService }]; }, propDecorators: { name: [{
438
+ type: Input
439
+ }], svgIcon: [{
440
+ type: Input
441
+ }], innerCssClass: [{
442
+ type: Input
443
+ }], customFontClass: [{
444
+ type: Input
445
+ }] } });
446
+
447
+ const exportedModules$2 = [
448
+ IconComponent
449
+ ];
450
+ const declarations$2 = [
451
+ ...exportedModules$2
452
+ ];
453
+ /**
454
+ * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
455
+ * definition for the Icon component.
456
+ *
457
+ * @example
458
+ *
459
+ * ```ts-no-run
460
+ * // Import the Icon module
461
+ * import { IconModule } from '@progress/kendo-angular-icons';
462
+ *
463
+ * // The browser platform with a compiler
464
+ * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
465
+ *
466
+ * import { NgModule } from '@angular/core';
467
+ *
468
+ * // Import the app component
469
+ * import { AppComponent } from './app.component';
470
+ *
471
+ * // Define the app module
472
+ * _@NgModule({
473
+ * declarations: [AppComponent], // declare app component
474
+ * imports: [BrowserModule, IconModule], // import Icon module
475
+ * bootstrap: [AppComponent]
476
+ * })
477
+ * export class AppModule {}
478
+ *
479
+ * // Compile and launch the module
480
+ * platformBrowserDynamic().bootstrapModule(AppModule);
481
+ *
482
+ * ```
483
+ */
484
+ class IconModule {
485
+ }
486
+ IconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
487
+ IconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconModule, declarations: [IconComponent], imports: [CommonModule], exports: [IconComponent, CommonModule] });
488
+ IconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconModule, imports: [[CommonModule], CommonModule] });
489
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconModule, decorators: [{
490
+ type: NgModule,
491
+ args: [{
492
+ declarations: [declarations$2],
493
+ exports: [exportedModules$2, CommonModule],
494
+ imports: [CommonModule]
495
+ }]
496
+ }] });
497
+
498
+ const exportedModules$1 = [
499
+ SVGIconComponent
500
+ ];
501
+ const declarations$1 = [
502
+ ...exportedModules$1
503
+ ];
504
+ /**
505
+ * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
506
+ * definition for the SVG Icon component.
507
+ *
508
+ * @example
509
+ *
510
+ * ```ts-no-run
511
+ * // Import the SVG Icon module
512
+ * import { SVGIconModule } from '@progress/kendo-angular-icons';
513
+ *
514
+ * // The browser platform with a compiler
515
+ * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
516
+ *
517
+ * import { NgModule } from '@angular/core';
518
+ *
519
+ * // Import the app component
520
+ * import { AppComponent } from './app.component';
521
+ *
522
+ * // Define the app module
523
+ * _@NgModule({
524
+ * declarations: [AppComponent], // declare app component
525
+ * imports: [BrowserModule, SVGIconModule], // import SVG Icon module
526
+ * bootstrap: [AppComponent]
527
+ * })
528
+ * export class AppModule {}
529
+ *
530
+ * // Compile and launch the module
531
+ * platformBrowserDynamic().bootstrapModule(AppModule);
532
+ *
533
+ * ```
534
+ */
535
+ class SVGIconModule {
536
+ }
537
+ SVGIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
538
+ SVGIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconModule, declarations: [SVGIconComponent], imports: [CommonModule], exports: [SVGIconComponent] });
539
+ SVGIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconModule, imports: [[CommonModule]] });
540
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SVGIconModule, decorators: [{
541
+ type: NgModule,
542
+ args: [{
543
+ declarations: [declarations$1],
544
+ exports: [exportedModules$1],
545
+ imports: [CommonModule]
546
+ }]
547
+ }] });
548
+
549
+ const exportedModules = [
550
+ IconWrapperComponent
551
+ ];
552
+ const declarations = [
553
+ ...exportedModules
554
+ ];
555
+ /**
556
+ * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
557
+ * definition for the Icons components.
558
+ *
559
+ * @example
560
+ *
561
+ * ```ts-no-run
562
+ * // Import the Icons module
563
+ * import { IconsModule } from '@progress/kendo-angular-icons';
564
+ *
565
+ * // The browser platform with a compiler
566
+ * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
567
+ *
568
+ * import { NgModule } from '@angular/core';
569
+ *
570
+ * // Import the app component
571
+ * import { AppComponent } from './app.component';
572
+ *
573
+ * // Define the app module
574
+ * _@NgModule({
575
+ * declarations: [AppComponent], // declare app component
576
+ * imports: [BrowserModule, IconsModule], // import Icons module
577
+ * bootstrap: [AppComponent]
578
+ * })
579
+ * export class AppModule {}
580
+ *
581
+ * // Compile and launch the module
582
+ * platformBrowserDynamic().bootstrapModule(AppModule);
583
+ *
584
+ * ```
585
+ */
586
+ class IconsModule {
587
+ }
588
+ IconsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
589
+ IconsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsModule, declarations: [IconWrapperComponent], imports: [IconModule,
590
+ SVGIconModule], exports: [IconModule,
591
+ SVGIconModule, IconWrapperComponent] });
592
+ IconsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsModule, providers: [IconsService], imports: [[
593
+ IconModule,
594
+ SVGIconModule
595
+ ], IconModule,
596
+ SVGIconModule] });
597
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: IconsModule, decorators: [{
598
+ type: NgModule,
599
+ args: [{
600
+ declarations,
601
+ imports: [
602
+ IconModule,
603
+ SVGIconModule
604
+ ],
605
+ exports: [
606
+ IconModule,
607
+ SVGIconModule,
608
+ exportedModules
609
+ ],
610
+ providers: [IconsService]
611
+ }]
612
+ }] });
613
+
614
+ /**
615
+ * Generated bundle index. Do not edit.
616
+ */
617
+
618
+ export { ICON_SETTINGS, IconComponent, IconModule, IconSettingsService, IconWrapperComponent, IconsModule, IconsService, SVGIconComponent, SVGIconModule };
619
+